:root{--color-forest:#013f22;--color-mint:#69ff93;--color-focus:#04a56a;--color-light-grey:#e6e6e6;--color-white:#fff;--color-black:#000;--color-bg:#fbfbfa;--color-surface:var(--color-white);--color-surface-muted:#edf1ee;--color-surface-subtle:#f0f3f1;--color-mint-soft:#e1f5ea;--color-favorite:#d9381e;--color-leaf-dark:#2f5b33;--color-leaf:#3f7d3a;--color-leaf-light:#6fa84b;--color-danger:#b8321c;--color-divider:#013f2214;--color-dropzone-border:#9fd9bc;--color-dropzone-bg:#f8fbf9;--color-dropzone-hover:#f1faf4;--color-footer-glass:#ffffffeb;--color-on-forest-muted:#ffffffb8;--color-on-forest-hover:#ffffff1f;--color-tag-neutral:#ececec;--color-tag-neutral-text:#1f2a24;--color-tag-outline:#b9c6be;--color-skeleton:#edf1ee;--color-warning-soft:#fff4d6;--color-warning-text:#5c4300;--color-staircase-floor:#d5ded8;--color-staircase-bg:#f6f8f6;--color-sun-glow:#69ff9359;--color-text:var(--color-forest);--color-text-strong:#0b1f14;--color-text-muted:#4a5e53;--color-text-subtle:#5b6e63;--color-placeholder:#6b7c72;--color-checker-light:#f3f5f3;--color-checker-dark:#ebefec;--checker-size:14px;--color-glass:#ffffffb8;--color-header-glass:#d6e4dbdb;--color-header-divider:#013f221f;--glass-filter:saturate(180%) blur(20px);--badge-filter:blur(8px);--color-overlay:#0b1f144d;--shadow-sm:0 1px 2px #013f220a, 0 8px 24px #013f220f;--shadow-md:0 2px 6px #0000000a, 0 12px 40px #013f221a;--shadow-lift:0 2px 6px #013f220d, 0 20px 48px #013f221f;--shadow-modal:0 30px 80px #013f2238;--shadow-control:0 1px 3px #00000014, 0 4px 12px #013f221a;--shadow-field-focus:inset 0 0 0 var(--border-width) var(--color-focus), 0 0 0 5px #69ff9373;--shadow-search-focus:0 0 0 5px #69ff9373, 0 12px 40px #013f221a;--border-width:1px;--border-dashed-width:2px;--footer-filter:blur(12px);--opacity-disabled:.5;--opacity-updating:.55;--radius:6px;--space-3xs:2px;--space-2xs:4px;--space-xs:6px;--space-sm:10px;--space-md:14px;--space-lg:16px;--space-xl:24px;--space-2xl:28px;--space-3xl:48px;--space-4xl:64px;--font-display:var(--font-archivo), "Arial Black", sans-serif;--font-body:var(--font-archivo), -apple-system, BlinkMacSystemFont, sans-serif;--font-mono:var(--font-jetbrains-mono), ui-monospace, "SF Mono", monospace;--font-scientific:var(--font-instrument-serif), Georgia, serif;--display-stretch:125%;--display-weight:900;--leading-display:.9;--leading-tight:1.15;--tracking-display:-.03em;--tracking-label:.1em;--tracking-button:.12em;--text-3xs:11px;--text-2xs:12px;--text-xs:13px;--text-sm:14px;--text-md:15px;--text-lg:17px;--text-xl:19px;--text-2xl:21px;--text-3xl:24px;--text-4xl:32px;--text-display-md:40px;--text-display-xl:clamp(48px, 8vw, 88px);--weight-medium:500;--weight-semibold:600;--weight-bold:700;--control-sm:28px;--control-md:40px;--control-lg:44px;--control-xl:52px;--icon-sm:16px;--icon-md:20px;--icon-lg:28px;--icon-xl:40px;--add-tile-icon:46px;--drop-icon:88px;--snackbar-icon:36px;--content-max:1240px;--header-height:64px;--modal-max:900px;--confirm-max:440px;--organize-modal-max:1040px;--organize-nav-min:220px;--organize-nav-max:300px;--organize-nav-icon:32px;--organize-section-min:420px;--organize-row-min:64px;--organize-name-min:200px;--organize-description-min:140px;--plant-image-min:200px;--modal-viewport-gap:var(--space-xl);--dropzone-min-height:360px;--dropzone-viewport-share:55dvh;--dropzone-copy-max:280px;--search-max:720px;--search-height:60px;--plant-card-min:220px;--collection-card-min:280px;--collection-row-min:300px;--collection-thumb:72px;--picker-width:300px;--staircase-min:90px;--staircase-max:250px;--staircase-column-min:104px;--staircase-floor-width:2px;--staircase-grow-from:.4;--filter-tile-min:120px;--filter-panel-offset:-8px;--select-trigger-min:200px;--select-list-max:260px;--size-option-width:40px;--size-bar-width:10px;--size-bar-min:6px;--size-bar-max:22px;--light-arc-width:320px;--light-arc-width-compact:240px;--light-stop-size:var(--control-lg);--light-track-width:2px;--light-range-width:4px;--light-track-dash:4 6;--light-glow-spread:6px;--light-sun-turn:45deg;--light-sun-scale:1.15;--light-meter-tick-width:8px;--light-meter-tick-height:3px;--viewfinder-corner:8px;--viewfinder-corner-width:2px;--viewfinder-corner-from:.6;--filter-badge-size:22px;--image-tile-min:170px;--field-min:240px;--type-columns:4;--snackbar-max:400px;--snackbar-progress:3px;--auth-card-max:400px;--tutorial-max:420px;--vine-top-right-size:280px;--vine-bottom-left-size:300px;--vine-top-left-size:170px;--vine-header-width:240px;--vine-header-viewport-share:40vw;--vine-header-lift:26px;--vine-title-width:260px;--vine-title-gap:var(--space-xs);--vine-stem-width:2.5;--gutter:var(--space-xl);--ease-out:cubic-bezier(.2, .8, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--duration-fast:.2s;--duration-base:.25s;--duration-slow:.3s;--duration-vine:1.4s;--duration-reveal:.6s;--duration-pulse:1.2s;--reveal-step:80ms;--reveal-distance:18px;--modal-enter-scale:.96;--hover-scale:1.015;--card-lift:-4px;--sprout-tilt:-35deg;--z-popover:2;--z-header:3;--z-snackbar:4;--focus-ring-width:3px;--focus-ring-offset:3px}
*,:before,:after{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);min-height:100vh;color:var(--color-text);font-family:var(--font-body);font-size:var(--text-md);-webkit-font-smoothing:antialiased}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3{font-family:var(--font-display);font-stretch:var(--display-stretch);font-weight:var(--display-weight);line-height:var(--leading-display);letter-spacing:var(--tracking-display);text-transform:uppercase;text-wrap:balance}img,svg{max-width:100%;display:block}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--color-forest)}a:hover{color:var(--color-focus)}input::placeholder,textarea::placeholder{color:var(--color-placeholder)}
:focus-visible{outline:var(--focus-ring-width) solid var(--color-focus);outline-offset:var(--focus-ring-offset)}:focus:not(:focus-visible){outline:none}
@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:1ms!important;animation-duration:1ms!important;animation-iteration-count:1!important}}
.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.checker{background-color:var(--color-checker-light);background-image:conic-gradient(var(--color-checker-dark) 25%, transparent 0 50%, var(--color-checker-dark) 0 75%, transparent 0);background-size:var(--checker-size) var(--checker-size)}.glass{background:var(--color-glass);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter)}html:has(dialog[open]){overflow:hidden}
