:root{--ds-page: #f5f8f1;--ds-ink: #243c30;--ds-ink-2: #51665a;--ds-hairline: #d7e2d9;--ds-teal: #3d7863;--ds-font-text: ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--ds-font-display: Georgia, serif}body{margin:0}button,input,select,textarea{font:inherit;color:inherit}button:disabled{opacity:.5;cursor:default}a{color:#376b55}button:focus-visible,a:focus-visible{outline:3px solid #5a9dc9;outline-offset:3px}.file-card{padding:24px;margin:auto;max-width:1280px}.file-button{background:#fff;border:1px solid #d5e1d7;border-radius:8px;padding:10px 14px;font-size:13px;min-height:44px}.file-button.ghost{background:transparent;border-color:transparent}.file-button.primary{background:#e8f2e7}.caption{font-size:11px;line-height:1.5;color:#53665b}.callout{border-radius:14px;padding:15px;background:#edf4eb;font-size:13px;border:1px solid #dae7d8}.close-button{position:absolute;right:15px;top:12px;border:0;background:transparent;font-size:26px;width:40px;height:40px;z-index:3}.pg-app{margin:-24px}.app-head .eyebrow{font-size:10px}.bottom-nav a[aria-current=page]{background:#dbece1;border-radius:40px}.file-card .clock-ring{fill:none}details summary{cursor:pointer}@media(min-width:768px){.pg-app{margin:-24px!important}}.app-main{width:100%}html,body,#root{margin:0;min-height:100%}body{background:var(--ds-page)}*{box-sizing:border-box}.pg-app{margin:-24px;padding:18px 16px 0;height:100dvh;min-height:500px;display:flex;flex-direction:column;position:relative;overflow:hidden;font-family:var(--ds-font-text);color:var(--ds-ink);background:radial-gradient(620px 420px at 8% -6%,rgba(150,210,188,.55),transparent 62%),radial-gradient(520px 400px at 104% 6%,rgba(245,208,176,.55),transparent 60%),radial-gradient(560px 520px at 55% 112%,rgba(170,194,232,.45),transparent 65%),linear-gradient(165deg,#f8f5f0,#f0ede7)}.app-head{display:flex;align-items:center;justify-content:space-between;padding:0 2px 12px;flex-shrink:0}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.12em;margin:0;color:var(--ds-ink-2)}h1,h2{font-family:var(--ds-font-display);font-weight:400;letter-spacing:-.025em}h1{font-size:28px;margin:2px 0}h2{font-size:23px;margin:0 0 8px}h3{font-size:17px;line-height:1.3;margin:14px 0 8px}p{font-size:14px;line-height:1.55;margin:8px 0;overflow-wrap:anywhere}.brand-leaf{font-size:30px;padding:10px;background:#ffffff80;border-radius:50%}.app-main{overflow:auto;flex:1;min-height:0;padding:1px 1px 100px;scrollbar-width:thin}.view{display:flex;flex-direction:column;gap:14px}.view>*{animation:rise .4s ease both}.glass{background:linear-gradient(135deg,#ffffffc7,#ffffff7a);backdrop-filter:blur(18px) saturate(1.5);border:1px solid rgba(255,255,255,.7);border-radius:22px;box-shadow:0 12px 26px #42363014,inset 0 1px #ffffffd9;padding:16px;min-width:0}.summary{display:flex;align-items:center;gap:10px;min-height:144px}.summary>div{flex:1;min-width:0}.summary h2{margin-top:8px;font-size:26px}.summary p{font-size:12px}.summary img{width:100px;height:110px;object-fit:cover;border-radius:18px}.heading-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.heading-row h2{margin:0;font-size:22px}.heading-row p{font-size:12px;margin:2px 0}small{font-family:var(--ds-font-text);font-size:12px;color:var(--ds-ink-2);margin-left:6px}.empty{text-align:center;padding:26px 16px}.empty>span{display:block;font-size:42px}.empty p{max-width:340px;margin:10px auto 16px}.bottom-nav{position:absolute;bottom:calc(12px + env(safe-area-inset-bottom));left:50%;transform:translate(-50%);display:flex;gap:4px;padding:6px;background:#ffffffb3;backdrop-filter:blur(22px) saturate(1.6);border-radius:999px;border:1px solid rgba(255,255,255,.8);box-shadow:0 14px 38px #42363033;z-index:20}.bottom-nav a{min-width:76px;min-height:50px;padding:7px 12px;color:var(--ds-ink-2);text-decoration:none;font-size:11px;font-weight:600;border-radius:999px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:1px;transition:.2s}.bottom-nav a span{font-size:20px;line-height:1.1}.bottom-nav a.active{color:#416b5f;background:#73a89a2e}button,input,textarea,select{font:inherit}button{cursor:pointer}.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.actions>*{max-width:100%}.field{display:flex;flex-direction:column;gap:6px;margin:12px 0;font-size:13px;min-width:0}.field span{font-weight:600;overflow-wrap:anywhere}.field input,.field textarea,select{width:100%;min-width:0;border:1px solid rgba(80,100,90,.2);border-radius:12px;background:#ffffffb3;padding:11px 12px;color:var(--ds-ink);font-size:16px;min-height:44px}.field textarea{min-height:105px;resize:vertical}.field input[type=range]{padding:0;accent-color:var(--ds-teal)}.field input:focus,.field textarea:focus{outline:2px solid var(--ds-teal);outline-offset:2px}.chips{border:0;padding:0;display:flex;flex-wrap:wrap;gap:6px;min-width:0;margin:12px 0}.chips legend{font-size:13px;font-weight:600;margin-bottom:8px}.chips button{border:1px solid rgba(80,100,90,.15);background:#ffffff80;border-radius:12px;padding:9px 11px;min-height:44px;font-size:12px;color:var(--ds-ink-2)}.chips .chosen{color:#416b5f;font-weight:600;background:#73a89a30;border-color:#73a89a66}.check{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.6;margin:14px 0}.check input{flex:none;width:20px;height:20px;accent-color:var(--ds-teal)}.photo-controls{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0}.photo-button{min-height:44px;padding:11px 15px;display:inline-flex;align-items:center;border-radius:14px;background:#73a89a29;border:1px solid rgba(115,168,154,.3);font-size:14px;font-weight:600;position:relative;overflow:hidden;cursor:pointer}.photo-button input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.uploaded{display:block;width:100%;max-height:280px;object-fit:contain;border-radius:16px;background:#ffffff80;margin:12px 0}.muted{font-size:12px;color:var(--ds-ink-2)}.notice,.undo{background:#ffffffe6;padding:10px 12px;border-radius:14px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:10px;max-height:120px;overflow:auto;font-size:13px;flex-shrink:0}.notice p{font-size:12px;margin:0;white-space:pre-wrap}.notice button{background:none;border:0;min-width:32px;min-height:32px}.undo button{background:none;border:0;text-decoration:underline;font-weight:600}.sheet{position:fixed;inset:auto 0 0;margin:0 auto;border:1px solid rgba(255,255,255,.8);border-radius:26px 26px 0 0;padding:0;width:min(100%,640px);max-height:92dvh;background:#f6f7f1;color:var(--ds-ink);overflow:auto;box-shadow:0 -20px 70px #1e282333;z-index:100}.sheet::backdrop{background:#1e282345;backdrop-filter:blur(6px)}.sheet-body{padding:28px 20px 40px}.sheet-body>h2{padding-right:34px}.sheet [aria-label=Close]{position:absolute;right:12px;top:12px}.sheet hr{border:0;border-top:1px solid rgba(80,100,90,.12);margin:24px 0}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.result{padding:14px;background:#73a89a1a;border-radius:16px;margin:14px 0}.result p{font-size:13px}.plant-top{display:flex;align-items:center;gap:10px}.plant-top>div{flex:1;min-width:0}.plant-icon{font-size:30px}.plant-name{border:0;background:none;text-align:left;padding:0;font-size:17px;font-weight:600;color:var(--ds-ink);overflow-wrap:anywhere}.plant-top p{font-size:11px;color:var(--ds-ink-2);margin:2px 0}.edit{min-width:44px;min-height:44px;border:0;border-radius:50%;background:#ffffff80;color:var(--ds-ink-2)}.plant-status{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px;font-size:12px;margin:14px 0 8px}.plant-status span:first-child{color:#416b5f;font-weight:600}.track{height:5px;background:#73a89a26;border-radius:8px;overflow:hidden}.track i{height:100%;display:block;background:var(--ds-teal);border-radius:8px;transition:width .5s}.plant-grid{display:grid;gap:12px}.feed{font-size:12px;font-weight:600;color:#416b5f}.floor{position:relative;aspect-ratio:1.2;border:3px solid rgba(115,168,154,.3);border-radius:18px;background:linear-gradient(90deg,rgba(115,168,154,.07) 1px,transparent 1px),linear-gradient(rgba(115,168,154,.07) 1px,transparent 1px),#ffffff8c;background-size:25px 25px;margin:12px 0;overflow:hidden}.floor-label{position:absolute;top:10px;left:12px;font-size:12px;color:var(--ds-ink-2)}.furniture{position:absolute;transform:translate(-50%,-50%);border-radius:10px;border:1px solid rgba(80,100,90,.18);background:#a0a09126;display:grid;place-content:center;font-size:10px;text-align:center;padding:3px;overflow:hidden}.pin{position:absolute;transform:translate(-50%,-50%);border:1px solid rgba(115,168,154,.2);border-radius:13px;background:#ffffffe6;box-shadow:0 3px 10px #2846321f;min-height:44px;min-width:44px;max-width:90px;padding:4px 6px;display:flex;flex-direction:column;align-items:center}.pin span{font-size:22px;line-height:1.2}.pin b{font-size:9px;line-height:1.2;max-width:75px;overflow-wrap:anywhere}.pin.active{outline:2px solid var(--ds-teal);z-index:5}.position{display:grid;grid-template-columns:1fr 1fr;gap:8px}.position button{grid-column:1/-1}.mapping{border-top:1px solid rgba(80,100,90,.15);padding:8px 0}.badge{font-size:11px;padding:7px 10px;border-radius:12px;background:#ffffffa6}.diagnostic{font-size:11px;white-space:pre-wrap;overflow-wrap:anywhere;background:#fff9;padding:12px;border-radius:12px;max-height:220px;overflow:auto}.source-links{display:flex;flex-wrap:wrap;gap:12px;font-size:12px}.large-icon{font-size:40px}.label-note{padding:10px;background:#fff9;border-radius:12px}@keyframes rise{0%{transform:translateY(10px)}to{transform:translateY(0)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}@media(min-width:768px){.pg-app{margin:-36px;padding:24px 28px 0}.plant-grid{grid-template-columns:1fr 1fr}.summary img{width:140px;height:130px}.view{max-width:850px;margin:auto}.sheet{inset:5vh 0 auto;border-radius:26px;max-height:90vh}}@media(max-width:350px){.pg-app{padding:16px 12px 0}.summary img{width:80px;height:100px}.summary h2{font-size:23px}.heading-row h2{font-size:20px}.bottom-nav a{min-width:70px}.two-col{gap:0 8px}.sheet-body{padding:24px 16px 36px}}.board-v2{aspect-ratio:.94;min-height:320px;max-height:620px;overflow:visible;margin:12px 8px 18px;background-size:22px 22px;isolation:isolate}.board-v2 .floor-label{pointer-events:none;font-size:10px}.map-node{touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none;min-width:64px;min-height:68px;max-width:78px;border:2px solid white;border-radius:20px;transition:box-shadow .25s,background .25s;z-index:3;padding:7px 5px}.map-node>span{font-size:28px}.map-node b{font-size:10px}.halo-blue{box-shadow:0 0 0 5px #4297e238,0 0 19px 5px #3c96eb3d!important;border-color:#54a3e6d9!important}.halo-red{box-shadow:0 0 0 5px #e5585c30,0 0 20px 5px #e84b5740!important;border-color:#e35f64d9!important}.halo-unknown{box-shadow:0 0 0 4px #8c979129!important;border-color:#8c979180!important}.map-node.dragging{z-index:12;cursor:grabbing;scale:1.08;opacity:.95}.map-node.drop-target{scale:1.13;outline:3px dashed var(--ds-teal)}.map-legend{display:flex;flex-wrap:wrap;gap:7px 13px;font-size:10px;color:var(--ds-ink-2)}.map-legend span{display:flex;gap:5px;align-items:center}.dot{width:8px;height:8px;border-radius:50%;display:inline-block}.dot.blue{background:#589ad6}.dot.red{background:#d97076}.dot.grey{background:#9aa59f}.map-room-tabs{display:flex;align-items:center;gap:8px}.map-room-tabs .chips{flex:1;margin:2px 0}.round-plus{width:44px;height:44px;border-radius:50%;background:#fff9;border:1px solid white;flex:none}.folder-mini{display:grid!important;grid-template-columns:1fr 1fr;gap:1px;width:35px;height:34px}.folder-mini i{font-size:14px;line-height:1.1;font-style:normal}.folder-node{background:#f6fbf8ed;border-radius:20px}.folder-node small{position:absolute;right:-7px;top:-7px;font-size:10px;border-radius:50%;margin:0;width:21px;height:21px;background:#fff;display:grid;place-content:center;border:1px solid var(--ds-hairline)}.map-window{position:absolute;background:#49a2da61;border:2px solid rgba(74,154,203,.7);border-radius:4px;z-index:1;display:grid;place-content:center;color:#4e8fb5;pointer-events:none}.map-window.horizontal{height:10px;transform:translateY(-50%)}.map-window.vertical{width:10px;transform:translate(-50%)}.map-window span{font-size:10px;line-height:1}.privacy-note{font-size:11px;align-self:center;color:var(--ds-ink-2)}.light-note{margin-top:18px;padding:12px;background:#fff9;border-radius:16px}.light-note p{font-size:12px}.window-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center;border-top:1px solid var(--ds-hairline);padding:8px 0}.window-row p{flex:1;min-width:120px;font-size:13px}.remove-small{border:0;background:none;font-size:12px;color:var(--ds-ink-2);min-height:44px}.folder-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px 12px;padding:24px 4px}.folder-item{display:flex;flex-direction:column;align-items:center;gap:10px;animation:folder-bloom .38s cubic-bezier(.2,.8,.2,1) both}.folder-plant{width:76px;min-height:82px;border:2px solid white;border-radius:20px;background:#fffc;padding:8px 5px;display:flex;flex-direction:column;gap:5px;align-items:center}.folder-plant span{font-size:32px}.folder-plant b{font-size:11px;line-height:1.3;overflow-wrap:anywhere;max-width:68px}.ungroup{background:none;border:0;text-decoration:underline;min-height:44px;font-size:10px}.water-action{min-height:52px;border:1px solid rgba(81,161,209,.3);background:linear-gradient(135deg,#99d6f566,#d8eff8b3);border-radius:15px;padding:9px 14px;display:flex;gap:10px;align-items:center;position:relative;overflow:hidden;color:#315e78;font-weight:600;font-size:13px}.watering-can{width:30px;height:26px;transform-origin:65% 65%;flex:none}.water-drops{position:absolute;left:38px;top:19px;font-size:9px;opacity:0;letter-spacing:1px}.is-watering .watering-can{animation:can-pour 1.1s ease both}.is-watering .water-drops{animation:drop-pour .7s .2s ease both}.is-watering{pointer-events:none}.map-empty p{font-size:13px}.detail-sheet .large-icon{display:inline-block;margin-bottom:12px}@keyframes can-pour{0%,to{transform:rotate(0)}25%,75%{transform:rotate(-28deg)}}@keyframes drop-pour{0%{opacity:0;transform:translateY(-4px)}30%{opacity:1}to{opacity:0;transform:translateY(17px)}}@keyframes folder-bloom{0%{opacity:0;transform:scale(.75) translateY(15px)}to{opacity:1;transform:scale(1) translateY(0)}}@media(min-width:768px){.board-v2{aspect-ratio:1.6;max-height:540px;min-height:400px}.map-node{min-width:76px;min-height:76px}.folder-sheet{max-width:540px}}@media(max-width:350px){.map-node{min-width:56px;min-height:62px;max-width:65px}.map-node b{font-size:9px}.board-v2{margin-left:5px;margin-right:5px}.folder-grid{gap:20px 8px}}.pg-app{background:radial-gradient(600px 500px at 5% 0%,rgba(155,208,176,.5),transparent 70%),radial-gradient(550px 600px at 100% 90%,rgba(167,214,188,.4),transparent 70%),linear-gradient(155deg,#e8f2e6,#f1f6ed 55%,#deedde)}.board-v2{aspect-ratio:1.5;min-height:0;max-height:none;margin:24px 16px 28px;background-color:#fafdf7c2}.board-v2 .floor-label{font-size:9px;left:10px;top:9px}.map-node{min-width:54px;min-height:58px;max-width:66px;padding:6px 4px;border-radius:50%;border:0;background:#fffffff2}.map-node>span{font-size:25px}.map-node b{font-size:9px;max-width:57px}.map-node.halo-blue,.map-node.halo-red,.map-node.halo-unknown,.folder-plant.halo-blue,.folder-plant.halo-red,.folder-plant.halo-unknown{box-shadow:0 3px 12px #2d5a3c14!important;border-color:transparent!important}.map-node.selected{outline:none}.clock-ring{position:absolute;inset:-7px;width:calc(100% + 14px);height:calc(100% + 14px);overflow:visible;pointer-events:none;z-index:-1;fill:none;stroke-width:5}.clock-track{stroke:#63917729}.clock-progress{stroke:#549fe0;stroke-linecap:round;transition:stroke-dasharray .6s}.ring-red .clock-progress{stroke:#dc7e83}.ring-grey .clock-progress{stroke:#a7b8ab}.folder-plant{position:relative;isolation:isolate;border-radius:22px}.window-wrap{position:absolute;z-index:5;overflow:visible}.window-wrap.horizontal{height:14px;transform:translateY(-50%)}.window-wrap.vertical{width:14px;transform:translate(-50%)}.window-wrap .map-window{position:absolute;inset:0;width:100%;height:100%;transform:none;display:flex;gap:3px;padding:3px;background:#f7e7a3;border:1px solid #d9c77c;border-radius:6px;box-shadow:0 2px 9px #aa934329;pointer-events:auto;cursor:pointer}.window-wrap.vertical .map-window{flex-direction:column}.window-pane{flex:1;background:#fffcd8d9;border-radius:2px;border:1px solid rgba(202,177,85,.35)}.window-wrap .map-window:after{content:"";position:absolute;inset:-14px -3px}.window-wrap.vertical .map-window:after{inset:-3px -14px}.window-active .map-window{outline:2px solid #bca84a;outline-offset:3px}.window-handle{position:absolute;width:44px;height:44px;border:0;background:transparent;display:grid;place-content:center;touch-action:none;z-index:10;padding:0;user-select:none}.window-handle i{width:15px;height:25px;border:2px solid white;background:#d6bb62;border-radius:8px;box-shadow:0 2px 7px #50461433}.horizontal .window-handle{top:50%;transform:translate(-50%,-50%)}.horizontal .edge-start{left:0}.horizontal .edge-end{left:100%}.vertical .window-handle{left:50%;transform:translate(-50%,-50%)}.vertical .edge-start{top:0}.vertical .edge-end{top:100%}.vertical .window-handle i{width:25px;height:15px}.window-selected p{font-size:12px}.window-selected h3{margin:0}.wall-picker{display:grid;grid-template-columns:1fr 1fr;gap:8px}.notice{animation:toast-in .3s ease both;box-shadow:0 10px 24px #2d4b321a}.notice.is-leaving{animation:toast-out .3s ease both}.inline-notice{position:sticky;top:0;z-index:5}.edit-section{border-top:1px solid rgba(80,110,90,.15);margin:14px 0;padding-top:14px}.edit-section summary,details.glass>summary{cursor:pointer;font-size:16px;font-weight:600;min-height:44px;display:list-item;list-style-position:inside;padding:8px 0}.edit-section p{font-size:12px}.input-wrap{position:relative;display:flex;min-width:0}.input-wrap input[type=date]{padding-right:44px}.clear-date{position:absolute;right:0;top:0;height:44px;width:44px;border:0;background:transparent;color:var(--ds-ink-2);font-size:24px}.sheet{top:var(--sheet-top, auto);bottom:auto;max-height:var(--sheet-height, 90dvh);scroll-padding:65px 0 30px;overscroll-behavior:contain}.sheet[open]{top:var(--sheet-top, 5dvh)}.sheet-body{padding-bottom:40px}.sheet input,.sheet textarea{scroll-margin:70px 0 35px}.simple-care{text-align:center;padding:34px 24px}.care-icon{position:relative;isolation:isolate;width:76px;height:76px;display:grid;place-content:center;font-size:42px;margin:0 auto 18px}.simple-care h2{font-size:29px;padding:0 26px;overflow-wrap:anywhere}.care-countdown{display:flex;flex-direction:column;margin:14px 0 24px;gap:6px}.care-countdown strong{font-size:38px;font-weight:600;color:#385d4b}.care-countdown small{font-size:20px;margin:0}.care-countdown>span{font-size:12px;color:var(--ds-ink-2)}.care-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px}.care-actions .water-action{grid-column:1/-1;justify-content:center;min-height:56px}.care-actions>a,.care-actions>button{width:100%;justify-content:center}.water-fill{isolation:isolate;min-width:130px;justify-content:center;background:#f5fbf7;border-color:#b8d4c5;color:#315a48}.water-fill-wave{position:absolute;inset:-10px;background:linear-gradient(0deg,#77bbdf,#b2dcee);transform:translateY(110%);z-index:-1;border-radius:30% 34% 0 0;pointer-events:none}.water-fill-label{position:relative;z-index:1}.is-watering .water-fill-wave{animation:water-rise 1.65s ease-in-out both}.is-watering .water-fill-label{animation:water-label 1.65s ease both}.water-done{position:absolute;opacity:0;font-size:25px;z-index:2}.is-watering .water-done{animation:water-check 1.65s ease both}.water-fill.is-watering{animation:water-finish 1.65s ease both}.undo{font-size:11px;padding:7px 12px}.photo-button{position:relative}.photo-button input{height:100%;top:0;left:0}.map-legend{font-size:10px}@keyframes toast-in{0%{opacity:0;transform:translateY(-15px)}to{opacity:1;transform:translateY(0)}}@keyframes toast-out{to{opacity:0;transform:translateY(-15px)}}@keyframes water-rise{0%{transform:translateY(110%) rotate(0)}65%,82%{transform:translateY(0) rotate(-3deg)}to{transform:translateY(110%) rotate(0)}}@keyframes water-label{0%,55%,to{opacity:1}70%,88%{opacity:0}}@keyframes water-check{0%,60%,to{opacity:0;transform:scale(.6)}70%,85%{opacity:1;transform:scale(1)}}@keyframes water-finish{0%,60%,to{scale:1}75%{scale:1.03}85%{scale:.98}}@media(min-width:768px){.board-v2{aspect-ratio:1.5;min-height:0}.map-node{min-width:68px;min-height:72px;max-width:78px}.map-node b{font-size:10px;max-width:70px}.map-node>span{font-size:30px}}@media(max-width:350px){.board-v2{margin-left:16px;margin-right:16px}.map-node{min-width:48px;min-height:52px;max-width:56px}.map-node b{font-size:8px}.map-node>span{font-size:23px}.care-actions{gap:7px}.simple-care{padding:30px 16px}.care-actions button{font-size:13px}}.map-node{isolation:isolate}.simple-care .clock-ring{z-index:-1}.notice{flex-shrink:0}@media(prefers-reduced-motion:reduce){.notice,.notice.is-leaving,.water-fill,.is-watering .water-fill-wave,.is-watering .water-fill-label,.is-watering .water-done{animation:none!important}.is-watering .water-fill-wave{transform:translateY(0)}}.board-v2{margin-left:24px;margin-right:24px}.app-main{overflow-x:hidden}.water-fill-wave{border-radius:28% 30% 0 0}.water-action{isolation:isolate}@media(max-width:350px){.board-v2{margin-left:24px;margin-right:24px}}.sheet[open]{max-height:min(var(--sheet-height, 90dvh),var(--instinct-modal-height, 90dvh));scrollbar-gutter:stable}.map-home{margin-left:-17px;margin-right:-17px}.map-home>.heading-row,.map-home>.map-room-tabs,.map-home>.map-legend,.map-home>.actions,.map-home>.glass,.map-home>.muted,.map-home>p{margin-left:17px;margin-right:17px}.map-home>.board-v2{margin:24px 8px 28px;width:calc(100% - 16px);align-self:center;border-radius:14px}.map-node{width:54px;height:54px;min-width:54px;min-height:54px;border-radius:15px;padding:6px;display:grid;place-items:center}.map-node>span{font-size:29px}.map-node .clock-ring{inset:-4px;width:calc(100% + 8px);height:calc(100% + 8px)}.clock-progress{transition:stroke-dasharray .6s,stroke-dashoffset .6s}.plan-note{text-align:left;border-top:1px solid #d9e5dc;margin-top:14px;padding-top:12px;font-size:12px}.plan-note summary{cursor:pointer}.plan-note p,.weather-panel p{font-size:12px}.weather-panel summary{font-size:12px;cursor:pointer}.weather-panel a{display:block;font-size:11px;margin:7px 0}.care-actions{margin-top:20px}.simple-care{padding-bottom:12px}.pg-app{padding-left:0;padding-right:0}.app-head{padding-left:17px;padding-right:17px}.app-main{padding-left:0;padding-right:0}.view{padding-left:17px;padding-right:17px}.map-home{margin-left:0;margin-right:0;padding-left:0;padding-right:0}.map-home>.board-v2{width:calc(100% - 16px);margin-left:8px;margin-right:8px;aspect-ratio:1.5}.brand-leaf.app-icon{width:54px;height:54px;border-radius:16px;object-fit:cover;padding:0}.map-home>.board-v2{max-width:none;max-height:none;flex-shrink:0}.map-node{background:#fff;border:1px solid #deeadf}.map-node .clock-ring{inset:-5px;width:calc(100% + 10px);height:calc(100% + 10px)}.map-home{max-width:none!important;width:100%}.map-home>.board-v2{max-width:none!important}.sheet-body{position:relative}.sheet-grabber{display:block;width:38px;height:5px;border-radius:99px;background:#344a3f38;margin:0 auto 20px}.notice{position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);left:16px;right:16px;margin:0 auto;max-width:440px;z-index:90;border:1px solid rgba(255,255,255,.75);backdrop-filter:blur(16px) saturate(1.4)}.undo{position:fixed;bottom:calc(88px + env(safe-area-inset-bottom));left:16px;right:16px;margin:0 auto;max-width:440px;z-index:90;border:1px solid rgba(255,255,255,.75);backdrop-filter:blur(16px) saturate(1.4);align-items:center;animation:toast-in .3s ease both}.sheet .notice.inline-notice{position:absolute;top:8px;left:14px;right:14px;margin:0;z-index:6}.simple-care{padding:14px 20px 26px}.care-avatar{position:relative;isolation:isolate;width:104px;height:104px;margin:4px auto 16px;border-radius:32px;display:grid;place-items:center;font-size:52px;box-shadow:0 16px 32px #3250412e,inset 0 1px #ffffffbf}.care-avatar.st-blue{background:linear-gradient(150deg,#e6f4ec,#c9e9db)}.care-avatar.st-red{background:linear-gradient(150deg,#fde7de,#f7cfc0)}.care-avatar.st-unknown{background:linear-gradient(150deg,#eef0ea,#dfe4da)}.care-avatar .clock-ring{position:absolute;inset:-8px;width:calc(100% + 16px);height:calc(100% + 16px);z-index:-1}.care-sub{font-size:13px;color:var(--ds-ink-2);margin:2px 0 0}.simple-care h2{margin-bottom:2px}.care-countdown{background:#ffffffb8;border:1px solid rgba(255,255,255,.85);border-radius:22px;padding:18px 14px;margin:16px 0 6px;box-shadow:0 10px 24px #42363012;display:flex;flex-direction:column;gap:6px}.care-countdown strong{font-size:44px;line-height:1;font-family:var(--ds-font-display);font-weight:500;color:#2f5343}.care-countdown.st-red strong{color:#a34a35}.care-countdown.st-unknown strong{color:#5c6a60}.care-countdown small{font-size:18px}.care-countdown>span{font-size:12.5px;color:var(--ds-ink-2)}.care-list{grid-column:1 / -1;display:flex;flex-direction:column;background:#ffffffb8;border:1px solid rgba(255,255,255,.85);border-radius:18px;overflow:hidden;box-shadow:0 10px 24px #42363012}.care-list button{background:transparent;border:0;border-top:1px solid rgba(80,100,90,.1);padding:13px 16px;min-height:50px;font-size:14px;font-weight:600;color:var(--ds-ink);display:flex;align-items:center;justify-content:space-between;gap:10px}.care-list button:first-child{border-top:0}.care-list button:after{content:"\203a";color:#9db3a7;font-size:17px}.care-list button:disabled{opacity:.5}.care-list .care-list-sub{font-weight:500;font-size:12px;color:var(--ds-ink-2);margin-left:auto}.water-confirm{text-align:center;padding:14px 20px 30px}.water-confirm h2{padding:0 30px}.water-confirm .check{display:inline-flex;gap:8px;margin:12px auto 0}.water-confirm .care-actions{display:grid;gap:10px;margin-top:18px}.pour-can{position:absolute;top:0;left:27%;width:46px;height:46px;margin-left:-23px;z-index:3;opacity:0;transform:translateY(-18px);pointer-events:none}.is-watering .pour-can{animation:can-pour-in 1.65s ease-in-out both}.pour-drops{position:absolute;left:0;right:0;top:20px;height:0;z-index:2;pointer-events:none}.pour-drops i{position:absolute;top:0;width:6px;height:9px;border-radius:60% 60% 70% 70%;background:#2f8fd0;opacity:0}.is-watering .pour-drops i{animation:drop-fall .55s ease-in both}.is-watering .pour-drops i:nth-child(1){left:calc(27% - 17px);animation-delay:.32s}.is-watering .pour-drops i:nth-child(2){left:calc(27% - 10px);animation-delay:.58s}.is-watering .pour-drops i:nth-child(3){left:calc(27% - 22px);animation-delay:.74s}.is-watering .pour-drops i:nth-child(4){left:calc(27% - 4px);animation-delay:.9s}.is-watering .pour-drops i:nth-child(5){left:calc(27% - 14px);animation-delay:1.04s}@keyframes can-pour-in{0%{opacity:0;transform:translateY(-18px) rotate(0)}13%{opacity:1;transform:translateY(0) rotate(0)}26%{transform:translateY(1px) rotate(-26deg)}74%{transform:translateY(1px) rotate(-26deg);opacity:1}84%{transform:translateY(0) rotate(0);opacity:1}94%,to{opacity:0;transform:translateY(-12px) rotate(0)}}@keyframes drop-fall{0%{opacity:0;transform:translateY(0) scale(.8)}20%{opacity:1}to{opacity:0;transform:translateY(34px) scale(1)}}@keyframes water-rise{0%{transform:translateY(110%) rotate(0)}58%,82%{transform:translateY(0) rotate(-2.5deg)}to{transform:translateY(110%) rotate(0)}}@keyframes water-label{0%,60%,to{opacity:1}72%,90%{opacity:0}}@keyframes water-check{0%,66%,to{opacity:0;transform:scale(.6)}74%,88%{opacity:1;transform:scale(1)}}@media(prefers-reduced-motion:reduce){.is-watering .pour-can,.is-watering .pour-drops i{animation:none!important}.pour-can,.pour-drops{display:none}}.file-button{border-radius:14px}.callout,.notice,.undo{border-radius:16px}.chips button{border-radius:12px}*{-webkit-tap-highlight-color:transparent}.pg-app{padding-top:calc(18px + env(safe-area-inset-top,0px))}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid transparent;outline-offset:2px;box-shadow:0 0 0 3px #ffffffe6,0 0 0 6px #5a9dc9b3}button:focus:not(:focus-visible),a:focus:not(:focus-visible),summary:focus:not(:focus-visible){box-shadow:none}.field input:focus,.field textarea:focus,.field select:focus{outline:none;border-color:#3d7863a6;box-shadow:0 0 0 3px #3d786340}.map-node:focus-visible{outline:2px solid transparent;box-shadow:0 0 0 3px #fffffff2,0 0 0 6px #5a9dc9cc!important}.window-handle:focus-visible{outline:2px solid transparent;box-shadow:none}.window-handle:focus-visible i{box-shadow:0 0 0 3px #5a9dc9cc}.sheet:focus{outline:none}.close-button{position:absolute;right:14px;top:14px;width:34px;height:34px;min-width:34px;min-height:34px;border:0;border-radius:50%;background:#344a3f17;color:#243c30bf;font-size:19px;font-weight:500;line-height:1;padding:0 0 1px;display:grid;place-items:center;z-index:3;transition:transform .18s cubic-bezier(.32,.72,0,1),background .18s}.close-button:before{content:"";position:absolute;inset:-6px}.close-button:active{transform:scale(.88);background:#344a3f29}.sheet{left:10px;right:10px;width:auto;max-width:min(640px,calc(100% - 20px));margin:0 auto;border:0;border-radius:26px;background:#f7f8f2;box-shadow:0 24px 70px #1e282347,0 2px 8px #1e28231a}.sheet[open]{animation:sheet-in .42s cubic-bezier(.32,.72,0,1) both}.sheet::backdrop{background:#1e282352;backdrop-filter:blur(8px)}@keyframes sheet-in{0%{opacity:0;transform:translateY(-14px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@media(min-width:768px){.sheet{left:0;right:0;width:min(640px,calc(100% - 32px));border-radius:26px}}.view>*{animation:rise .5s cubic-bezier(.32,.72,0,1) both}.notice{animation:toast-in .42s cubic-bezier(.3,1.15,.45,1) both;box-shadow:0 14px 34px #2d4b3229,0 2px 6px #2d4b3214}.undo{animation:undo-in .42s cubic-bezier(.3,1.15,.45,1) both;box-shadow:0 14px 34px #2d4b3229,0 2px 6px #2d4b3214}@keyframes undo-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.file-button,.chips button,.photo-button,.bottom-nav a,.edit,.remove-small{transition:transform .18s cubic-bezier(.32,.72,0,1),background .18s,box-shadow .18s}.file-button:active{transform:scale(.97)}.chips button:active{transform:scale(.95)}.photo-button:active{transform:scale(.97)}.bottom-nav a:active{transform:scale(.94)}.edit:active{transform:scale(.9)}.care-list button{transition:background .15s}.care-list button:active{background:#506e5f12}.track i{transition:width .55s cubic-bezier(.32,.72,0,1)}.clock-progress{transition:stroke-dasharray .6s cubic-bezier(.32,.72,0,1),stroke-dashoffset .6s cubic-bezier(.32,.72,0,1)}@media(prefers-reduced-motion:reduce){.sheet[open],.notice,.undo{animation:none!important}.file-button,.chips button,.photo-button,.bottom-nav a,.edit,.remove-small{transition:none!important}}.sheet,.sheet[open]{top:var(--sheet-mid, 50dvh);bottom:auto}.sheet[open]{transform:translateY(-50%)}@keyframes sheet-in{0%{opacity:0;transform:translateY(calc(-50% - 14px)) scale(.98)}to{opacity:1;transform:translateY(-50%) scale(1)}}.folder-grid{align-items:start}.folder-plant{width:78px;height:96px;min-height:0;justify-content:flex-start;padding:10px 5px 8px}.folder-plant span{font-size:30px;line-height:1.1}.folder-plant b{font-size:11px;line-height:1.25;max-width:70px;min-height:28px;text-align:center;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.ungroup{background:#ffffffd1;border:1px solid rgba(80,100,90,.18);border-radius:999px;box-shadow:0 1px 4px #4236301a;padding:6px 12px;min-height:44px;font-size:11px;font-weight:600;color:var(--ds-ink-2);text-decoration:none;white-space:nowrap;transition:transform .18s cubic-bezier(.32,.72,0,1),background .18s}.ungroup:active{transform:scale(.95);background:#fffffff2}.folder-foot{display:flex;flex-direction:column;align-items:stretch;gap:12px;margin-top:4px}.folder-foot .caption{text-align:center;margin:0}.file-button.ghost{background:#ffffffa6;border:1px solid rgba(80,100,90,.16)}.undo button{background:var(--ds-teal);color:#fff;border:0;border-radius:999px;padding:7px 14px;min-height:34px;font-size:12px;font-weight:600;text-decoration:none;flex-shrink:0;transition:transform .18s cubic-bezier(.32,.72,0,1)}.undo button:active{transform:scale(.95)}.remove-small{border:1px solid rgba(80,100,90,.16);background:#ffffffa6;border-radius:999px;padding:6px 14px;min-height:36px;font-size:12px;font-weight:600}.notice button{background:#344a3f17;border:0;border-radius:50%;width:28px;height:28px;min-width:28px;min-height:28px;font-size:15px;line-height:1;color:#243c30bf;flex-shrink:0}a.text-link{display:inline-flex;align-items:center;gap:6px;background:#ffffffbf;border:1px solid rgba(80,100,90,.18);border-radius:999px;padding:8px 14px;min-height:40px;box-sizing:border-box;font-size:12px;font-weight:600;color:#376b55;text-decoration:none;transition:transform .18s cubic-bezier(.32,.72,0,1),background .18s}a.text-link:active{transform:scale(.97);background:#fffffff2}.weather-panel a.text-link{display:inline-flex;margin:6px 6px 0 0;font-size:11px}details.glass[open]>summary{margin-bottom:6px;padding-bottom:10px;border-bottom:1px solid rgba(80,100,90,.1)}.water-action.water-fill{overflow:visible}.water-clip{position:absolute;inset:0;border-radius:inherit;overflow:hidden;pointer-events:none}.water-fill-wave{position:absolute;inset:auto 0 0;height:170%;border-radius:0;background:none;z-index:0;transform:translateY(103%);opacity:1}.water-fill-wave svg{position:absolute;left:-20%;bottom:0;width:140%;height:100%}.water-fill-wave .wave-back{fill:#8ec7e8}.water-fill-wave .wave-front{fill:#4ba3dd}.water-fill-wave .bubble{fill:#ffffffd9;opacity:0;transform-box:fill-box;transform-origin:center}.is-watering .water-fill-wave{animation:pour8-rise 2s ease-in-out both}.is-watering .water-fill-wave svg{animation:pour8-slosh 2s ease-in-out both}.is-watering .water-fill-wave .bubble{animation:pour8-bubble 2s ease-out both}.pour-can{top:-36px;left:50%;width:42px;height:42px;margin-left:-21px;z-index:3;opacity:0;transform:translateY(-16px) rotate(0);transform-origin:50% 50%}.is-watering .pour-can{animation:pour8-can 2s ease-in-out both}.pour-drops{top:-2px;z-index:2}.pour-drops i{width:6px;height:9px;border-radius:55% 55% 65% 65%;background:#2f8fd0}.is-watering .pour-drops i{animation:pour8-drop .5s ease-in both}.is-watering .pour-drops i:nth-child(1){left:calc(50% - 14px);animation-delay:.42s}.is-watering .pour-drops i:nth-child(2){left:calc(50% - 8px);animation-delay:.54s}.is-watering .pour-drops i:nth-child(3){left:calc(50% - 11px);animation-delay:.66s}.is-watering .pour-drops i:nth-child(4){left:calc(50% - 5px);animation-delay:.78s}.is-watering .pour-drops i:nth-child(5){left:calc(50% - 9px);animation-delay:.9s}.is-watering .pour-drops i:nth-child(6){left:calc(50% - 13px);animation-delay:1.02s}.is-watering .water-fill-label{animation:pour8-label 2s ease both;color:#fff;text-shadow:0 1px 3px rgba(12,70,110,.35);transition:color .2s}.is-watering .water-done{animation:pour8-check 2s ease both;color:#fff;text-shadow:0 1px 3px rgba(12,70,110,.35)}.water-fill.is-watering{animation:pour8-finish 2s ease both}@keyframes pour8-can{0%{opacity:0;transform:translateY(-16px) rotate(0)}10%{opacity:1;transform:translateY(0) rotate(0)}22%,68%{opacity:1;transform:translateY(1px) rotate(-25deg)}78%{opacity:1;transform:translateY(0) rotate(0)}92%,to{opacity:0;transform:translateY(-10px) rotate(0)}}@keyframes pour8-drop{0%{opacity:0;transform:translateY(0) scale(.7)}15%{opacity:1}to{opacity:0;transform:translateY(52px) scale(1)}}@keyframes pour8-rise{0%,18%{opacity:1;transform:translateY(103%) rotate(0)}60%,82%{opacity:1;transform:translateY(0) rotate(-2deg)}90%{opacity:1}to{opacity:0;transform:translateY(0) rotate(0)}}@keyframes pour8-slosh{0%,to{transform:translate(0)}50%{transform:translate(-4%)}}@keyframes pour8-bubble{0%,55%{opacity:0;transform:scale(.3)}68%{opacity:1;transform:scale(1.15)}78%{opacity:1;transform:scale(1)}92%,to{opacity:0;transform:scale(.8) translateY(-6px)}}@keyframes pour8-label{0%,60%,to{opacity:1}72%,90%{opacity:0}}@keyframes pour8-check{0%,64%,to{opacity:0;transform:scale(.6)}74%,88%{opacity:1;transform:scale(1)}}@keyframes pour8-finish{0%,68%,to{scale:1}78%{scale:1.04}88%{scale:.98}}@media(prefers-reduced-motion:reduce){.is-watering .water-fill-wave svg,.is-watering .water-fill-wave .bubble{animation:none!important}.water-fill-wave .bubble{display:none}}body{font-family:var(--ds-font-text)}.folder-grid{gap:18px 8px}.folder-plant b{overflow-wrap:normal;word-break:keep-all;font-size:10.5px}.ungroup{font-size:10.5px;padding:5px 10px;min-height:36px}
