*{box-sizing:border-box} :root{--ink:#223e32;--green:#254e3c;--paper:#f5f3ec;--line:#d9ded2;--muted:#647569;--gold:#b7864b}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.5 system-ui,-apple-system,sans-serif}header{display:flex;align-items:center;justify-content:space-between;padding:22px 4%;border-bottom:1px solid var(--line);background:#faf9f4}.brand{color:var(--ink);font-weight:750;text-decoration:none;letter-spacing:2px;display:flex;align-items:center;gap:10px}.brand small{font-size:9px;font-weight:500;letter-spacing:2px;margin-left:14px}.mark{display:grid;place-items:center;background:var(--green);color:#fff;border-radius:50%;width:34px;height:34px;font-size:25px}.local{font-size:11px;color:var(--muted)}button,.filebutton{border:1px solid #bbc8ba;border-radius:5px;padding:10px 14px;background:#fffdf7;color:var(--ink);font:inherit;cursor:pointer;display:inline-block;text-align:center}button:hover,.filebutton:hover{background:#e8eedf}button.primary{background:var(--green);color:white}button:disabled{opacity:.5;cursor:default}input,select,textarea{width:100%;padding:10px;border:1px solid #cbd3c6;border-radius:4px;background:white;font:inherit;color:var(--ink)}input[type=file]{font-size:12px;margin-top:7px}textarea{min-height:76px}label{display:block;font-size:12px;font-weight:600;margin:10px 0}a{color:#356e50}h1,h2,h3{font-family:Georgia,serif;font-weight:400;line-height:1.14;margin:8px 0 18px}h1{font-size:clamp(34px,4vw,58px);letter-spacing:-2px}h2{font-size:29px}h3{font-size:22px}p{margin:10px 0 16px}.eyebrow{font:600 10px/1.5 system-ui;letter-spacing:2px;color:var(--muted)}.intro{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:38px 5% 30px}.intro-note{max-width:300px;border-left:1px solid #bdc7b7;padding-left:28px;font-size:13px}.intro-note b{font-size:10px;letter-spacing:1.5px}#importStat{background:#e1e9d9;padding:7px 10px;font-size:11px}nav{display:flex;gap:4px;padding:0 4%;overflow:auto;border-bottom:1px solid var(--line)}nav button{border:0;background:none;border-radius:0;white-space:nowrap;padding:15px 18px;font-size:13px}nav button.active{border-bottom:3px solid var(--green);font-weight:700}main{padding:26px 4%}.tab{display:none}.tab.active{display:block}.workgrid{display:grid;grid-template-columns:240px minmax(360px,1fr) 230px;gap:20px}.panel{background:#fffdf8;padding:22px;border:1px solid var(--line);border-radius:8px;margin-bottom:18px}.panel.green{background:var(--green);color:#f7f9ed;border-color:var(--green)}.green .eyebrow,.green a{color:#d3e1b6}.green button{width:100%;font-size:12px}.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hint{font-size:11px;color:var(--muted)}.big{font-size:34px;font-family:Georgia,serif;margin:10px 0}.canvas-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.canvas-head h2{font-size:24px;margin:0}.canvas-head span{font-size:11px;color:var(--muted)}.canvas-head button{font-size:11px;padding:7px}.canvas-wrap{position:relative;background:#e9ecdf;border:1px solid #cbd6c5;border-radius:8px;min-height:430px;display:flex;justify-content:center}#yard{display:block;max-height:610px;width:100%;touch-action:none}.canvas-badge{position:absolute;top:14px;right:12px;background:#fffdf9cc;padding:7px;font-size:9px;pointer-events:none;letter-spacing:1px}.tools{display:flex;gap:7px;flex-wrap:wrap;margin:13px 0}.tools button{font-size:12px}.filebutton input{display:block}.panel>button{margin:4px 0}.section-head{display:flex;align-items:center;justify-content:space-between;gap:20px}.filters{display:flex;gap:12px;margin:20px 0}.filters input{flex:2}.filters select{flex:1}.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px;margin:20px 0}.card{border:1px solid var(--line);background:#fffdf8;border-radius:8px;padding:22px;display:flex;flex-direction:column}.card h3{font-size:23px;margin-top:10px}.card p{font-size:13px}.card .price{font:26px Georgia;margin:auto 0 12px;padding-top:10px}.chips{display:flex;gap:6px;flex-wrap:wrap}.chip{font-size:10px;background:#e8eee1;border-radius:15px;padding:4px 8px}.chip.warn{background:#f4e7ca;color:#76521f}.card-actions{display:flex;gap:8px;margin-top:14px}.card-actions button{font-size:12px}.card small{color:var(--muted);font-size:10px}.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;font-size:12px}th,td{padding:12px 9px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}th{font-weight:600;color:var(--muted)}pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:360px;overflow:auto;font-size:11px}#toast{display:none;position:fixed;bottom:25px;left:50%;transform:translateX(-50%);max-width:90vw;padding:12px 22px;border-radius:8px;background:#213e33;color:white;z-index:100}#toast.show{display:block}dialog{border:1px solid #cad4c1;border-radius:12px;padding:30px;max-width:740px;width:90%}dialog::backdrop{background:#17352670}#closeDetail{float:right}#detailBody{clear:both;padding-top:20px}#detailBody img{max-width:200px;border-radius:8px;float:right;margin:0 0 20px 20px}.drop{border:1px dashed #8ca17c;background:#f0f4e9;border-radius:8px;padding:25px;text-align:center;font-size:18px}footer{padding:22px 4%;font-size:10px;color:var(--muted);border-top:1px solid var(--line)}summary{cursor:pointer;font-weight:600}#map{height:0;margin:10px 0}#map.visible{height:380px}#checks p{font-size:12px;border-bottom:1px solid var(--line);padding-bottom:10px}ol{padding-left:20px;font-size:12px}#planStats{font-size:12px}.legend-image{height:65px;width:65px;border-radius:50%;background:#e1e9d7;display:grid;place-items:center;font-size:34px;color:#587347;margin-bottom:8px}.empty{padding:30px;background:#e7ecdf;border-radius:8px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #bc934e;outline-offset:2px}@media(max-width:1150px){.workgrid{grid-template-columns:220px 1fr}.workgrid>aside:last-child{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.brand small,.local{display:none}}@media(max-width:720px){header{padding:15px}.intro{padding:26px 20px}.intro-note{display:none}main{padding:20px 12px}.workgrid{display:flex;flex-direction:column}.workgrid>aside:last-child{display:block}.two{grid-template-columns:1fr 1fr}.filters{flex-wrap:wrap}.filters>*{min-width:140px}.section-head{align-items:flex-start}.section-head button{font-size:11px}.canvas-head .two{gap:4px}h1{font-size:39px}.panel{padding:18px}.cards{grid-template-columns:1fr}.canvas-wrap{min-height:350px}nav{padding:0}nav button{padding:13px 10px;font-size:11px}}@media print{header,nav,.intro,.tools,button,.workgrid>aside{display:none!important}.tab{display:none!important}#plan{display:block!important}.workgrid{display:block}details{display:none}body{background:white}}
.plant-photo{margin:-22px -22px 16px;position:relative;background:#e2e9dc;border-radius:8px 8px 0 0;overflow:hidden}.plant-photo>a{display:block;position:relative}.plant-photo img{display:block;width:100%;height:220px;object-fit:cover;background:#dce7d8}.plant-photo figcaption{padding:10px 14px;background:#edf1e6;color:#425541;font-size:10px;min-height:51px}.photo-fallback{display:none;padding:35px 15px}.plant-photo img.failed{display:none}.plant-photo img.failed+.photo-fallback{display:block}.photo-missing{padding:50px 10px;background:#e8ecdf;text-align:center;margin-bottom:15px}.care-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0}.care-grid>div{background:#f0f2e9;border:1px solid #e1e6d9;padding:10px;border-radius:7px;min-height:86px}.care-grid b{display:block;font-size:12px}.care-grid small,.fit small{display:block;font-size:10px;color:#61725f}.care-icon{font-size:25px;line-height:1.2;color:#68816d;float:right}.care-icon.sun{color:#a87321}.care-icon.water{color:#318198}.light-scale{display:flex;gap:3px;margin-top:7px}.light-scale i{font:9px system-ui;padding:3px;background:#e0e4d9;color:#647160;flex:1;text-align:center;border-radius:3px}.light-scale i.on{background:#d8b55c;color:#263727}.fit{padding:10px 12px;border-left:3px solid #9aa88b;background:#edf0e5;margin:7px 0;font-size:12px}.fit.risk{background:#fbedd6;border-color:#bd8132}.fit-checks p{padding:10px;border-radius:5px;background:#f1f2eb}.fit-checks .risk{background:#faead7}.fit-checks .supported{background:#e5efdc}.source-links{display:flex;flex-wrap:wrap;gap:15px;font-size:12px}.care-site{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:20px}.care-site>div{flex-basis:100%}.care-site label{flex:1;min-width:125px;margin:0}.care-site>a{font-size:12px}.care-site p{margin:5px 0}.card .price{margin-top:auto}#detailBody .plant-photo.large{margin:0 0 20px;border-radius:8px}#detailBody .plant-photo.large img{float:none;max-width:100%;width:100%;height:330px;object-fit:contain;margin:0;background:#e1e8d9}#detailBody .care-grid{grid-template-columns:repeat(4,1fr)}@media(max-width:650px){#detailBody .care-grid{grid-template-columns:1fr 1fr}.plant-photo img{height:260px}}
