:root{--ink:#243e32;--muted:#778074;--paper:#f7f6f0;--line:#e0e4d9;--green:#2b533e;--lime:#dfe8c3;--white:#fffefb;--rust:#ac6548}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:15px}button,input,textarea,select{font:inherit}button,a,input,select,textarea{outline-offset:4px}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}a{color:var(--green)}button{border:1px solid var(--line);border-radius:7px;padding:10px 16px;background:var(--white);color:var(--ink);font-weight:600;min-height:42px}button:hover{background:#eef0e5}.primary{background:var(--green);color:white;border-color:var(--green)}.primary:hover{background:#183d2c}.quiet{border-color:transparent;background:transparent}.danger{color:#a13232}.small{font-size:12px;padding:6px 10px;min-height:34px}.shell{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;border-right:1px solid var(--line);padding:36px 24px;background:#f0f1e8;display:flex;flex-direction:column}.brand{font-family:Georgia,serif;font-size:29px;letter-spacing:-1.5px;display:flex;gap:9px;align-items:center}.brand span{font-family:Arial;font-size:25px}.brand-sub{font-size:10px;letter-spacing:2px;text-transform:none;color:var(--muted);margin:10px 0 48px 34px}.sidebar nav{display:grid;gap:9px}.nav{display:flex;text-align:left;align-items:center;gap:12px;border:0;background:transparent;color:#697467;font-size:14px;font-weight:500}.nav.active{background:#dee5d5;color:var(--green)}.nav b{font-size:19px;width:24px;font-weight:400}.side-note{margin-top:auto;padding:20px 0;border-top:1px solid var(--line);line-height:1.6;font-size:12px;color:var(--muted)}.zone{display:inline-block;background:var(--lime);padding:5px 9px;border-radius:20px;color:var(--green);font-size:11px;margin:9px 0}.user{display:flex;align-items:center;gap:10px}.avatar{display:grid;place-items:center;background:#d7ddca;width:35px;height:35px;border-radius:50%;font-weight:600;flex-shrink:0}.user-name{max-width:120px;overflow:hidden;text-overflow:ellipsis}.main{padding:0 48px 60px;min-width:0}.topbar{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);height:79px;color:var(--muted);font-size:12px}.topbar .eyebrow{font-size:10px}.team-chips{display:flex;align-items:center;gap:4px}.team-chips .avatar{width:27px;height:27px;font-size:10px;border:2px solid var(--paper);margin-left:-8px}.heading{display:flex;justify-content:space-between;align-items:center;gap:20px;margin:36px 0 26px}.eyebrow{text-transform:uppercase;letter-spacing:1.8px;font-size:10px;color:var(--muted);font-weight:600}h1{font-family:Georgia,serif;font-size:43px;letter-spacing:-1.5px;font-weight:400;margin:9px 0 10px}h2{font-family:Georgia,serif;font-size:27px;font-weight:400;letter-spacing:-.5px;margin:0 0 14px}h3{font-size:16px;font-weight:500;margin:10px 0 6px}p{line-height:1.65}.subtitle{color:var(--muted);font-size:14px;margin:0}.hero{background:#e9ede0;border:1px solid #dfe5d5;display:grid;grid-template-columns:1fr 40%;border-radius:12px;overflow:hidden;margin:0 0 28px;min-height:195px}.hero-copy{padding:30px 32px}.hero h2{font-size:29px;max-width:380px;line-height:1.18}.hero p{color:#74806b;max-width:430px;font-size:13px;margin:12px 0 0}.hero-art{background:url('/art/garden.svg') center/cover;min-height:190px}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin:23px 0}.filters{display:flex;flex-wrap:wrap;gap:7px}.chip{border-radius:30px;padding:9px 14px;min-height:36px;font-size:12px;font-weight:400}.chip.active{color:white;background:var(--green);border-color:var(--green)}.search{width:220px;background:transparent;border:1px solid var(--line);padding:10px 13px;border-radius:7px;font-size:13px}.masonry{columns:3 230px;column-gap:20px}.idea-card{break-inside:avoid;margin:0 0 20px;display:block;width:100%;padding:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--white);text-align:left;box-shadow:0 2px 3px #243e3203;font-weight:400}.idea-card:hover{background:var(--white);box-shadow:0 8px 20px #243e3214;transform:translateY(-2px)}.idea-card img{display:block;width:100%;max-height:380px;object-fit:cover;min-height:160px;background:#e6ebdf}.card-copy{padding:15px 17px}.card-meta{display:flex;justify-content:space-between;align-items:center;font-size:11px;color:var(--muted);margin-top:13px}.tag{display:inline-block;padding:4px 8px;background:#eef0e7;border-radius:4px;font-size:10px;letter-spacing:.3px;color:#63755b}.empty{border:1px dashed #c8d1bd;border-radius:12px;padding:34px;text-align:center;margin-bottom:22px}.empty p{color:var(--muted);font-size:13px;max-width:400px;margin:8px auto 20px}.empty .leaf{font-size:30px;color:#819774}.examples{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.example{border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--white)}.example img{width:100%;height:190px;object-fit:cover}.example .card-copy{padding:15px}.example p{font-size:12px;color:var(--muted)}.section-label{margin:26px 0 15px;display:flex;justify-content:space-between;font-size:12px;color:var(--muted)}.plant-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:22px}.plant-card{background:var(--white);border:1px solid var(--line);border-radius:10px;overflow:hidden;position:relative}.plant-card img{width:100%;height:225px;object-fit:cover;background:#e9eddf;display:block}.plant-card .image-button{padding:0;border:0;border-radius:0;display:block;width:100%}.plant-card .star{position:absolute;top:12px;right:12px;border-radius:50%;width:38px;height:38px;padding:0;background:#fffefbec;min-height:38px}.star.on{background:var(--lime);color:#507229}.latin{font-style:italic;font-size:12px;color:var(--muted);line-height:1.5}.specs{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin:19px 0 8px;font-size:12px}.specs dt{font-size:10px;color:var(--muted);margin-bottom:5px}.specs dd{margin:0;line-height:1.5}.note{background:#edf0e5;padding:13px 17px;border-radius:7px;font-size:12px;line-height:1.6;color:#68765f}.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1fr 1fr}.auth-art{background:#dfe7d4;display:flex;flex-direction:column;padding:50px;background-image:url('/art/garden.svg');background-position:center bottom;background-repeat:no-repeat;background-size:100% auto}.auth-art .brand{margin-bottom:70px}.auth-art h1{font-size:62px;max-width:480px}.auth-art p{max-width:350px;color:#657457}.auth-panel{display:flex;align-items:center;justify-content:center;padding:32px}.auth-box{width:100%;max-width:380px}.auth-box h2{font-size:34px}.auth-box p{font-size:13px;color:var(--muted)}form{display:grid;gap:16px}label{display:grid;gap:7px;font-size:12px;font-weight:600}input,select,textarea{width:100%;border:1px solid #d9dfd1;padding:11px 12px;border-radius:6px;background:var(--white);color:var(--ink);min-width:0}textarea{resize:vertical;min-height:85px;font-weight:400}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}.error{color:#a43b33;font-size:13px}.help{color:var(--muted);font-size:11px;line-height:1.5}dialog{border:0;border-radius:14px;background:var(--white);color:var(--ink);padding:0;max-width:min(1080px,94vw);max-height:92vh;box-shadow:0 24px 90px #192d3240;width:600px}dialog::backdrop{background:#182b246b;backdrop-filter:blur(3px)}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:22px 26px;border-bottom:1px solid var(--line);gap:15px}.modal-head h2{margin:0;font-size:24px}.modal-body{padding:24px 26px;overflow:auto;max-height:75vh}.close{font-size:23px;line-height:1;padding:4px 12px;font-weight:400}.photo-modal{width:1040px}.photo-layout{display:grid;grid-template-columns:56% 44%;max-height:82vh}.photo-large{background:#e7eade;display:flex;align-items:center;justify-content:center;min-height:400px}.photo-large img{width:100%;max-height:82vh;object-fit:contain}.discussion{padding:27px;overflow:auto}.discussion header{display:flex;justify-content:space-between;gap:12px}.discussion h2{font-size:28px}.comment-list{margin:25px 0}.comment{border-top:1px solid var(--line);padding:16px 0;font-size:13px}.comment p{white-space:pre-wrap;overflow-wrap:anywhere;margin:7px 0}.comment small{color:var(--muted);font-size:10px}.comment strong{font-size:12px;margin-right:10px}.replies{margin-left:19px;border-left:2px solid var(--line);padding-left:13px}.comment .quiet{font-size:11px;padding:0;min-height:24px}.replying{background:#edf0e4;padding:8px;font-size:11px;margin-bottom:10px}.actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.drawing-layout{display:grid;grid-template-columns:1fr 235px;gap:20px}.canvas-wrap{border:1px solid #d5ddc8;border-radius:10px;overflow:hidden;background:#eaf0df;position:relative}.canvas-wrap svg{width:100%;display:block;aspect-ratio:1498 / 1050;touch-action:none;user-select:none}.plan-toolbar{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:16px}.plan-toolbar button{font-size:12px;padding:8px 13px}.plan-toolbar button.active{background:var(--green);color:white}.plan-side{background:var(--white);border:1px solid var(--line);padding:19px;border-radius:10px}.plan-side h3{font-family:Georgia,serif;font-size:21px;margin:0 0 16px}.plan-side label{margin-bottom:15px}.legend{font-size:12px;line-height:2;color:var(--muted);margin-top:18px}.legend span{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:8px}.plan-list{display:grid;gap:7px;margin-top:16px}.plan-list button{text-align:left;font-size:11px;padding:7px 9px;min-height:34px;font-weight:400}.plan-status{font-size:11px;color:var(--muted);margin:12px 0}.members{display:grid;gap:12px;max-width:750px}.member{display:flex;justify-content:space-between;gap:12px;align-items:center;border:1px solid var(--line);border-radius:8px;background:var(--white);padding:17px}.member-info{display:flex;gap:13px;align-items:center;font-size:13px}.member-info small{display:block;color:var(--muted);margin-top:5px}.settings-box{margin-top:25px;max-width:750px;padding:24px;border:1px solid var(--line);border-radius:9px}.settings-box form{max-width:400px}#toast{position:fixed;bottom:24px;left:50%;transform:translateX(-50%);padding:13px 21px;background:#243e32;color:white;border-radius:8px;box-shadow:0 4px 20px #0002;display:none;max-width:90vw;font-size:13px;z-index:10}.tip{font-size:11px;color:var(--muted);margin-top:10px}.link-output{font-size:12px;overflow-wrap:anywhere;background:#eff2e7;padding:15px;border-radius:6px}.mobile-brand{display:none}
@media(min-width:1450px){.main{padding-left:70px;padding-right:70px}.masonry{columns:4 230px}}@media(max-width:1050px){.shell{grid-template-columns:190px 1fr}.sidebar{padding:30px 17px}.main{padding:0 27px 45px}.drawing-layout{grid-template-columns:1fr}.plan-side{display:grid;grid-template-columns:1fr 1fr;gap:10px}.plan-side h3{grid-column:1/-1}.examples{gap:12px}.hero{grid-template-columns:60% 40%}.photo-layout{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.shell{display:block}.sidebar{position:fixed;bottom:0;top:auto;left:0;right:0;height:70px;padding:6px 8px;z-index:3;border-top:1px solid var(--line);border-right:0;background:#f4f5ed}.sidebar>.brand,.brand-sub,.side-note,.sidebar>.user{display:none}.sidebar nav{display:grid;grid-template-columns:repeat(4,1fr);gap:3px}.nav{display:flex;flex-direction:column;justify-content:center;gap:3px;padding:7px 1px;font-size:10px;border-radius:8px;min-height:54px}.nav b{font-size:20px;text-align:center}.main{padding:0 19px 105px}.topbar{height:64px}.topbar>.eyebrow{display:none}.mobile-brand{display:flex;font-size:23px;letter-spacing:-1px}.heading{margin:25px 0 22px;align-items:flex-start;gap:10px}.heading .primary{font-size:12px;padding:10px 12px;white-space:nowrap}h1{font-size:34px}.subtitle{font-size:12px}.hero{grid-template-columns:1fr 33%;min-height:155px}.hero-copy{padding:22px}.hero h2{font-size:24px}.hero p{font-size:11px}.hero-art{min-height:155px}.toolbar{flex-direction:column;align-items:stretch;gap:14px}.search{width:100%}.filters{gap:5px}.chip{font-size:11px;padding:8px 12px}.masonry{columns:2 140px;column-gap:12px}.idea-card{margin-bottom:12px}.card-copy{padding:12px}.card-copy h3{font-size:14px}.card-meta{font-size:10px}.examples{grid-template-columns:1fr}.example{display:grid;grid-template-columns:38% 62%}.example img{height:100%;min-height:160px}.plant-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.plant-card img{height:170px}.plant-card .card-copy{padding:12px}.specs{font-size:11px;gap:9px}.latin{font-size:10px}.auth-wrap{grid-template-columns:1fr}.auth-art{padding:26px;background-size:55%;min-height:215px}.auth-art .brand{margin-bottom:15px}.auth-art h1{font-size:35px;max-width:230px;margin-top:8px}.auth-art p{display:none}.auth-panel{padding:32px 25px}.photo-layout{display:block;max-height:88vh;overflow:auto}.photo-large{min-height:0}.photo-large img{max-height:42vh}.discussion{padding:22px;overflow:visible}.photo-modal{max-height:90vh}.form-row{grid-template-columns:1fr}.modal-body{padding:21px}.modal-head{padding:18px 21px}.drawing-layout{gap:13px}.plan-side{padding:16px;grid-template-columns:1fr}.canvas-wrap svg{aspect-ratio:1498 / 1050}.member{padding:13px}.member-info small{font-size:10px}.team-chips>span{font-size:10px;margin-left:6px}.plan-toolbar{gap:4px}.plan-toolbar button{padding:8px 10px;font-size:11px}}
@media(prefers-reduced-motion:no-preference){button{transition:background .15s,box-shadow .15s,transform .15s}}
.bed-dot{background:#a77b53}.path-dot{background:#c0af8f}.plant-dot{background:#47774f}.detail-image{max-height:280px;object-fit:contain;background:#edf0e5;border-radius:7px}.auth-box form{margin-top:25px}#selection-form{margin-top:20px}.plan-list button:hover{background:#eef1e6}.discussion>p{overflow-wrap:anywhere}
.demo-banner{margin-top:18px;display:flex;gap:12px;justify-content:space-between;padding:10px 13px;border-radius:6px;background:#eee6d5;font-size:11px;color:#7e7054}.demo-banner a{white-space:nowrap}#try-demo{margin-top:15px;width:100%}

.zoom-controls{display:flex;align-items:center;gap:8px;margin-bottom:12px}.zoom-controls button{padding:8px 14px}.zoom-controls output{min-width:55px;text-align:center;font-size:12px;color:var(--muted)}.canvas-wrap svg.panning{cursor:grab}.canvas-wrap svg.panning:active{cursor:grabbing}

.size-scale{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;font-weight:400}input[type=range]{padding:0;accent-color:var(--green);height:32px}.plant-hit{pointer-events:all}

.zoom-controls{flex-wrap:wrap}.label-toggle{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:400;min-height:42px}.label-toggle input{width:17px;height:17px;accent-color:var(--green)}
.saved-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:22px}.saved-card{padding:0;text-align:left;overflow:hidden;font-weight:400}.saved-card img{width:100%;height:180px;object-fit:cover}.saved-card h2{font-size:23px;margin-top:13px}.saved-card p{font-size:12px;color:var(--muted);white-space:pre-wrap}.viewer-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px}.viewer-discussion{padding:22px;background:var(--white);border:1px solid var(--line);border-radius:10px;max-height:80vh;overflow:auto}.version-description{margin-bottom:22px;white-space:pre-wrap}.canvas-wrap svg.annotating{cursor:crosshair}.pinned-body{white-space:pre-wrap;overflow-wrap:anywhere}.pin-link{display:block;margin-top:10px}#version-comments .comment small{display:block;margin-top:6px}@media(max-width:1050px){.viewer-layout{grid-template-columns:1fr}.viewer-discussion{max-height:none}}@media(max-width:700px){.sidebar nav{grid-template-columns:repeat(5,1fr)}.heading>.actions{flex-direction:column;align-items:stretch}.heading>.actions button{font-size:11px;padding:9px}.viewer-discussion{padding:18px}}
.saved-card{background:var(--white);border:1px solid var(--line);border-radius:9px;overflow:hidden}.saved-preview{border:0;padding:0;display:block;width:100%;text-align:left;font-weight:400;border-radius:0}.delete-version{margin:0 17px 17px}

[hidden]{display:none!important}

.planner-save-bar{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:var(--paper);border:1px solid var(--line);border-radius:8px;margin-bottom:16px;box-shadow:0 3px 8px #243e3210}.planner-save-bar span{font-size:12px;color:var(--muted);line-height:1.5}.planner-save-bar button{flex-shrink:0}@media(max-width:600px){.planner-save-bar{align-items:stretch;flex-direction:column}}

.photo-credit{font-size:10px;line-height:1.45;color:var(--muted);margin:0 0 12px}.photo-credit span{display:block;font-size:9px;margin-top:3px}.plant-card .photo-credit span{display:none}.plant-card .photo-credit{margin-bottom:8px}

.designer-link{text-decoration:none;padding:10px 16px;border-radius:7px;min-height:42px}.designer-link:hover{background:#eef0e5}@media(max-width:700px){.designer-link{grid-column:1/-1;flex-direction:row;gap:8px;font-size:12px;min-height:36px;padding:6px 10px}}

.brand-sub{text-transform:none;letter-spacing:1px;line-height:1.6}

.drawing-actions{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:14px 16px;margin:0 0 18px;border:2px solid #c8d5be;border-radius:9px;background:#eef2e7}.drawing-actions[hidden]{display:none}.drawing-actions.in-progress{border-color:#ac6548;background:#fff5e8}.drawing-actions>span{font-size:13px;font-weight:600;line-height:1.5}.drawing-cancel{border-color:#ac6548;color:#85472f;background:#fffefb}#finish:disabled,#cancel-drawing:disabled{cursor:default}@media(max-width:700px){.drawing-actions{align-items:stretch;flex-direction:column}.drawing-actions .actions{display:flex}.drawing-actions button{flex:1}}
