.startup-screen{place-items:center;min-height:100dvh;padding:20px;display:grid}.startup-screen-embedded{min-height:12rem}.startup-card{text-align:center;width:min(100%,360px)}.startup-card .auth-loading-mark{justify-content:center}.startup-card h1{font-size:1.25rem}.startup-card p{line-height:1.5}.startup-actions{gap:12px;margin-top:20px;display:grid}.startup-actions button{white-space:normal;justify-content:center;gap:8px;min-height:44px}@media (prefers-reduced-motion:reduce){.startup-card .spin{animation:none}}.i18n-transition-content{display:contents}.i18n-transition-content[hidden]{display:none}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--ink);background:var(--page);--app-header-height:74px;--assistant-measure:46rem;--ink:#17242d;--muted:#5f7079;--muted-green:#799089;--line:#d4dfe4;--line-strong:#a8bdc7;--panel:#fff;--panel-2:#fbfcfd;--panel-3:#eef3f5;--track:#e2ecef;--page:#f4f7f8;--fp-viewer-surface:#f2f7f5;--nav:#123447;--nav-ink:#123447;--green:#247358;--coral:#c86752;--gold:#bd8f22;--gold-bright:#d99a2b;--blue:#246f97;--teal:#1c7f7a;--umber:#7d5535;--danger:#b9423f;--purple:#6554a4;--google-blue:#1a73e8;--navy-chip:#143d59;--slate-surface:#21485d;--media-surface:#17242d;--code-surface:#10202a;--focus-ring:#246f9759;--focus-border:#246f9773;--focus-glow:#246f9724;--tint-green-bg:#f4fbf5;--tint-green-bg-strong:#edf7ef;--tint-green-soft:#f8fbfa;--tint-green-border:#b9dfc4;--tint-green-border-soft:#d8e7df;--tint-green-text:#24563f;--tint-blue-bg:#eef6f8;--tint-blue-border:#c5dce4;--tint-blue-text:#1b5f79;--tint-gold-soft:#fffaf0;--tint-gold-bg:#fff9e7;--tint-gold-bg-strong:#fff7df;--tint-gold-border:#ead8a5;--tint-gold-border-strong:#e4c773;--tint-gold-text:#7a5514;--tint-coral-bg:#fff7f5;--tint-coral-bg-strong:#fff0ed;--tint-coral-border:#efc3bc;--tint-coral-text:#9f4131;--tint-neutral-bg:#f1f4f5;--tint-neutral-border:#d7e0e3;--fp-overlay-ramp-1:color-mix(in srgb, var(--blue) 8%, var(--panel));--fp-overlay-ramp-2:color-mix(in srgb, var(--blue) 22%, var(--panel));--fp-overlay-ramp-3:color-mix(in srgb, var(--blue) 40%, var(--panel));--fp-overlay-ramp-4:color-mix(in srgb, var(--blue) 62%, var(--panel));--fp-overlay-unbound:color-mix(in srgb, var(--muted) 20%, var(--panel));--selection-fill:#dbeafe;--selection-stroke:#1f5fbf;--shadow:0 18px 45px #2334401f;--radius-control:6px;--radius-pill:6px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#dfe8ed;--muted:#93a6b0;--muted-green:#8aa199;--line:#2b3d49;--line-strong:#3d5260;--panel:#16222b;--panel-2:#1a2731;--panel-3:#1e2c34;--track:#24333d;--page:#0f171d;--fp-viewer-surface:#14201d;--nav:#1b4258;--nav-ink:#b8d3e2;--green:#3d9b78;--coral:#d98871;--gold:#d4a83d;--gold-bright:#e0a83f;--blue:#4d9fca;--teal:#52b3ac;--umber:#bb8f60;--danger:#e0716a;--purple:#a795dd;--google-blue:#8ab4f8;--navy-chip:#2a5878;--slate-surface:#1e3d4f;--media-surface:#0b1116;--code-surface:#0b161d;--focus-ring:#6db4d68c;--focus-border:#6db4d699;--focus-glow:#6db4d647;--tint-green-bg:#142a24;--tint-green-bg-strong:#17302a;--tint-green-soft:#172621;--tint-green-border:#2f5544;--tint-green-border-soft:#274038;--tint-green-text:#9ccfb2;--tint-blue-bg:#17303e;--tint-blue-border:#2f4d5f;--tint-blue-text:#7fc4de;--tint-gold-soft:#231f16;--tint-gold-bg:#322913;--tint-gold-bg-strong:#3a2f14;--tint-gold-border:#55451f;--tint-gold-border-strong:#8a6d24;--tint-gold-text:#e8c576;--tint-coral-bg:#311e1a;--tint-coral-bg-strong:#3a201c;--tint-coral-border:#5f342c;--tint-coral-text:#ec9d85;--tint-neutral-bg:#212f36;--tint-neutral-border:#33424b;--fp-overlay-ramp-1:color-mix(in srgb, var(--blue) 14%, var(--panel));--fp-overlay-ramp-2:color-mix(in srgb, var(--blue) 32%, var(--panel));--fp-overlay-ramp-3:color-mix(in srgb, var(--blue) 52%, var(--panel));--fp-overlay-ramp-4:color-mix(in srgb, var(--blue) 74%, var(--panel));--fp-overlay-unbound:color-mix(in srgb, var(--muted) 26%, var(--panel));--selection-fill:#1c3350;--selection-stroke:#6b9fe8;--shadow:0 18px 45px #00000080}[data-theme=dark] body{background:linear-gradient(#11181ee0,#0d1318ed),repeating-linear-gradient(90deg,#ffffff0a 0 1px,#0000 1px 80px)}[data-theme=dark] .app-header{background:#111a21eb;border-bottom-color:#ffffff14}[data-theme=dark] .side-nav{background:#152028fa}[data-theme=dark] .trip-total{background:linear-gradient(180deg, #16222bf5, var(--panel))}[data-theme=dark] .floor-canvas-controls .icon-button{background:#1e262deb}[data-theme=dark] .floor-plan-background{fill:#1d2126;stroke:#3a4741}[data-theme=dark] .floor-room-rect{fill:#182d26}[data-theme=dark] .floor-room-rect.garden-bed{fill:#2d2619;stroke:#c7aa76}[data-theme=dark] .floor-layout-asset{fill:#1c2830;stroke:#8199ad}[data-theme=dark] .floor-import-background{opacity:.4;filter:invert()hue-rotate(180deg)}[data-theme=dark] .floor-import-room{fill:#1c2b23;stroke:#d6e8de40}[data-theme=dark] .floor-import-wall{stroke:#cfd8d3}[data-theme=dark] .floor-zone-rect{stroke:#d9a836}[data-theme=dark] .floor-import-opening.door{fill:#33261c;stroke:#c98a58}[data-theme=dark] .floor-import-opening.window{fill:#16303f;stroke:#5ea3d4}[data-theme=dark] .floor-import-fixture{stroke:#8ba573}[data-theme=dark] .floor-import-room-label,[data-theme=dark] .floor-import-fixture-label,[data-theme=dark] .floor-import-dimension-label{stroke:#14201de6}*{box-sizing:border-box}:where(main,header,nav,section,article,aside,div,form,label,span){min-width:0}body{background:linear-gradient(#ffffffdb,#f4f7f8eb),repeating-linear-gradient(90deg,#1234470a 0 1px,#0000 1px 80px);min-width:320px;max-width:100%;min-height:100vh;margin:0;overflow-x:clip}html,#root{width:100%;max-width:100%;overflow-x:clip}button,input,select,textarea{font:inherit}button,a{min-height:38px}button{border:1px solid var(--line);background:var(--panel);color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}button:hover,a:hover{border-color:var(--blue)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}button:disabled{opacity:.55;cursor:not-allowed}a{color:var(--nav-ink);align-items:center;display:inline-flex}input,select,textarea{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);color:var(--ink);width:100%;min-height:40px;padding:10px 11px}input[type=file]::file-selector-button{border:1px solid var(--line);background:var(--panel-2);color:var(--ink);cursor:pointer;border-radius:6px;margin-right:10px;padding:7px 10px}textarea{resize:vertical;min-height:110px}label{color:var(--muted);gap:6px;font-size:.88rem;display:grid}.inline-checkbox{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.inline-checkbox input[type=checkbox]{flex:none;width:auto;margin:0}.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}h1,h2,p{margin:0}h1{font-size:1.9rem;line-height:1.15}h2{margin-bottom:14px;font-size:1rem}h3{margin:16px 0 10px;font-size:.92rem}.auth-page{place-items:center;min-height:100vh;padding:24px;display:grid}.auth-panel{background:var(--panel);border:1px solid var(--line);width:min(440px,100%);box-shadow:var(--shadow);border-radius:8px;gap:20px;padding:24px;display:grid}.panel-loading{border:1px solid var(--line);background:linear-gradient(100deg, var(--panel) 40%, var(--panel-2) 50%, var(--panel) 60%);background-size:300% 100%;border-radius:12px;min-height:180px;animation:1.4s ease-in-out infinite panel-loading-shimmer}@keyframes panel-loading-shimmer{0%{background-position:100% 0}to{background-position:0 0}}@media (prefers-reduced-motion:reduce){.panel-loading{animation:none}}.skip-link{z-index:40;background:var(--nav);color:#fff;border-radius:8px;padding:10px 14px;font-weight:700;text-decoration:none;position:absolute;top:8px;left:-9999px}.skip-link:focus{outline:3px solid var(--green);outline-offset:2px;left:8px}.workspace:focus{outline:none}html.nav-drawer-open{overflow:hidden}.auth-panel-loading{place-items:center;width:min(260px,100%);min-height:128px}.auth-loading-mark{color:var(--nav-ink);align-items:center;gap:14px;display:flex}.google-auth-button{background:var(--panel);border:1px solid color-mix(in srgb, var(--nav) 18%, var(--line));width:100%;min-height:48px;color:var(--ink);justify-content:center;align-items:center;gap:10px;font-weight:850;display:inline-flex}.google-auth-button:disabled{opacity:.58}.google-auth-mark{background:var(--panel);border:1px solid var(--line);width:24px;height:24px;color:var(--google-blue);border-radius:50%;place-items:center;font-family:Arial,sans-serif;font-size:1rem;font-weight:900;line-height:1;display:inline-grid}.auth-divider{color:var(--muted);grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;font-size:.84rem;font-weight:800;display:grid}.auth-divider:before,.auth-divider:after{content:"";background:var(--line);height:1px}.spin{animation:.9s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.app-shell{grid-template-columns:252px minmax(0,1fr);min-width:0;max-width:100%;min-height:100vh;display:grid}.app-shell.nav-collapsed{grid-template-columns:72px minmax(0,1fr)}.app-main{min-width:0;max-width:100%}.app-header{z-index:40;min-height:var(--app-header-height);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f4f7f8f0;border-bottom:1px solid #1234471f;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 28px;display:grid;position:sticky;top:0;box-shadow:0 10px 28px #2334401a}.header-main{align-items:center;gap:12px;min-width:0;display:flex}.brand{color:var(--nav-ink);white-space:nowrap;align-items:center;gap:10px;font-weight:800;text-decoration:none;display:flex}.brand svg{color:var(--blue);flex:none}.menu-toggle{background:var(--nav);border-color:var(--nav);color:#fff;flex:none;display:none}.current-page{gap:1px;min-width:0;display:grid}.current-page h1{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:1.38rem;line-height:1.12;overflow:hidden}.nav-backdrop{z-index:55;cursor:default;background:#17242d52;border:0;border-radius:0;min-height:0;padding:0;position:fixed;inset:0}.side-nav{z-index:45;background:var(--panel);border-right:1px solid var(--line);flex-direction:column;min-width:0;height:100dvh;display:flex;position:sticky;top:0}.side-nav-head{align-items:center;gap:8px;padding:16px 12px 12px 18px;display:flex}.side-nav-head .brand{flex:1;min-width:0;font-size:1.05rem}.side-nav-head .brand span{text-overflow:ellipsis;overflow:hidden}.nav-collapse-toggle,.nav-close{flex:none;width:34px;min-width:34px;height:34px}.nav-close{display:none}.page-groups{scrollbar-width:thin;flex:1;align-content:start;gap:16px;min-height:0;padding:4px 10px 18px;display:grid;overflow-y:auto}.page-group{gap:2px;display:grid}.nav-group-label{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;margin-bottom:3px;padding:0 8px;font-size:.7rem;font-weight:800}.nav-item{min-height:37px;color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:7px 8px 7px 10px;font-size:.88rem;font-weight:600;text-decoration:none;display:flex;position:relative}.nav-item svg{color:var(--muted);flex:none}.nav-item span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.nav-item:hover{background:var(--panel-3)}.nav-item.active{background:var(--tint-blue-bg);color:var(--tint-blue-text)}.nav-item.active:before{content:"";background:var(--blue);border-radius:999px;width:3px;position:absolute;top:8px;bottom:8px;left:0}.nav-item.active svg{color:var(--blue)}@media (width>=981px){.nav-collapsed .side-nav-head{flex-direction:column;align-items:center;gap:10px;padding:16px 8px 10px}.nav-collapsed .side-nav .brand span,.nav-collapsed .side-nav .nav-item span,.nav-collapsed .side-nav .nav-group-label{display:none}.nav-collapsed .side-nav-head .brand{flex:none}.nav-collapsed .page-groups{gap:8px;padding:4px 8px 18px}.nav-collapsed .page-group{border-top:1px solid var(--line);padding-top:8px}.nav-collapsed .page-group:first-child{border-top:0;padding-top:0}.nav-collapsed .nav-item{justify-content:center;padding:9px 0}}.workspace{min-width:0;max-width:100%;padding:24px 28px 28px}.topbar{justify-content:space-between;align-items:center;gap:16px;margin-bottom:22px;display:flex}.top-actions,.button-row,.scanner-actions,.settings-list{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.settings-field{max-width:320px}.household-switcher select{border:1px solid var(--line);background:var(--panel);max-width:220px;min-height:42px;color:var(--ink);border-radius:8px;font-weight:700}.settings-list input[type=checkbox]{width:auto;min-height:0}.settings-permission-list{gap:10px;display:grid}.settings-permission-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(160px,1fr) auto auto auto;align-items:center;gap:10px;padding-bottom:10px;display:grid}.settings-permission-row label{align-items:center;gap:6px;margin:0;display:inline-flex}.settings-permission-row input[type=checkbox]{width:auto;min-height:0}.settings-permission-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;display:block}.invitation-form,.signup-code-form{align-items:end}.invitation-form{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}.invitation-form>.settings-list{grid-column:1/-1}.signup-code-form{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))}.signup-code-form .primary,.signup-code-revoke{min-height:44px}.settings-token-row{flex-wrap:wrap;align-items:center;gap:10px;padding:10px 0;display:flex}.settings-token-row code{overflow-wrap:anywhere;max-width:100%}.settings-token-list{flex-direction:column;gap:2px;display:flex}.settings-token-list>.settings-token-row+.settings-token-row{border-top:1px solid var(--border,#94a3b833)}.settings-page{grid-template-columns:190px minmax(0,1fr);align-items:start;gap:16px;min-width:0;max-width:100%;display:grid}.settings-nav{gap:6px;display:grid;position:sticky;top:90px}.settings-nav button{background:var(--panel);justify-content:flex-start;align-items:center;gap:10px;min-width:0;min-height:44px;font-weight:700;display:flex}.settings-nav button.active{background:var(--tint-green-bg-strong);border-color:var(--green);color:var(--green)}.settings-page>.settings-section{grid-column:2;gap:16px;min-width:0;max-width:940px;display:grid}.settings-page>.settings-section[hidden]{display:none}.settings-about-row{align-items:baseline;gap:10px;margin-bottom:10px;display:flex}.settings-list a{align-items:center;gap:6px;display:inline-flex}.check-label{color:var(--ink);align-items:center;gap:8px;padding:6px 0;font-size:.95rem;display:flex}.check-label input[type=checkbox]{width:auto;min-height:0;margin:0}.api-key-console,.api-key-client-list,.api-key-list{gap:12px;display:grid}.api-key-console-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.api-key-console-head p{color:var(--muted);flex:260px;margin:0}.api-key-form{border:1px solid var(--line);background:var(--page);border-radius:8px;gap:12px;padding:14px;display:grid}.api-key-form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.api-key-form textarea{resize:vertical}.api-key-form-actions{justify-content:flex-start;display:flex}.api-key-field-error{color:var(--coral);margin:0;font-weight:700}.api-key-expiry{gap:8px;display:grid}.api-key-expiry-label{color:var(--muted);font-size:.82rem;font-weight:800}.api-key-expiry-choices{flex-wrap:wrap;gap:8px;display:flex}.api-key-expiry-chip{border:1px solid var(--line);cursor:pointer;background:var(--panel);border-radius:999px;align-items:center;gap:6px;margin:0;padding:6px 12px;display:inline-flex}.api-key-expiry-chip.selected{border-color:var(--green);background:color-mix(in srgb, var(--green) 12%, var(--panel));font-weight:700}.api-key-expiry-chip input{opacity:0;pointer-events:none;position:absolute}.permission-group{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:8px;padding:10px 12px 12px;display:grid}.permission-group legend{color:var(--muted);padding:0 4px;font-size:.82rem;font-weight:800}.permission-group-hint{color:var(--muted);margin:0;font-size:.86rem}.permission-toggle-all{border-bottom:1px solid var(--line);align-items:center;gap:8px;margin:0;padding-bottom:8px;font-weight:700;display:flex}.permission-toggle-all small{color:var(--muted);margin-left:auto;font-weight:500}.permission-option-list{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:4px 14px;display:grid}.permission-option{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:0 8px;margin:0;padding:5px 2px;display:grid}.permission-option input[type=checkbox]{grid-row:1/span 2}.permission-option strong{font-size:.92rem}.permission-option small{color:var(--muted)}.permission-group input[type=checkbox]{flex:none;width:18px;min-height:18px;margin-top:2px}@media (pointer:coarse){.permission-option,.permission-toggle-all{align-items:center;min-height:44px}}.api-key-advanced summary{cursor:pointer;padding:6px 0;font-weight:700}.api-key-advanced[open]{gap:12px;display:grid}.agent-risk-strip{border:1px solid color-mix(in srgb, var(--coral) 45%, var(--line));background:color-mix(in srgb, var(--coral) 10%, var(--panel));color:var(--ink);border-radius:8px;align-items:center;gap:8px;padding:10px 12px;display:flex}.agent-risk-strip span{overflow-wrap:anywhere}.api-key-client{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:12px;padding:12px;display:grid}.api-key-client-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.api-key-client-head small,.agent-activity-mini small{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;display:block}.api-key-client-actions,.api-key-row-actions{flex-wrap:wrap;justify-content:flex-start;align-items:center;gap:8px;display:flex}.api-key-client-actions.danger-zone{border-top:1px solid var(--line);padding-top:10px}.api-key-client-meta{gap:8px;display:grid}.api-key-client-meta>span{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.api-key-client-meta small{color:var(--muted);min-width:92px;font-size:.8rem;font-weight:800}.chip-row em{border:1px solid var(--line);background:var(--page);overflow-wrap:anywhere;border-radius:999px;padding:2px 8px;font-size:.8rem;font-style:normal}.chip-row.muted{color:var(--muted)}.api-key-row{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding-top:10px;display:flex}.api-key-row-identity{flex:260px;min-width:0}.api-key-row-identity small{color:var(--muted);overflow-wrap:anywhere;margin-top:4px;display:block}.api-key-row-identity code{font-size:.82rem}.agent-activity-mini{border-left:3px solid var(--nav-ink);gap:4px;padding-left:10px;display:grid}.agent-activity-mini strong{align-items:center;gap:6px;display:inline-flex}.api-key-modal .api-key-warning{border:1px solid color-mix(in srgb, var(--coral) 45%, var(--line));background:color-mix(in srgb, var(--coral) 10%, var(--panel));border-radius:8px;align-items:center;gap:8px;margin:0;padding:10px 12px;display:flex}.api-key-secret{border:1px solid var(--green);background:color-mix(in srgb, var(--green) 10%, var(--panel));border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:12px;display:flex}.api-key-secret code{letter-spacing:.01em;overflow-wrap:anywhere;flex:320px;min-width:0;font-size:1.02rem;font-weight:700}.api-key-usage{gap:6px;display:grid}.api-key-usage pre{border:1px solid var(--line);background:var(--page);border-radius:8px;margin:0;padding:10px 12px;font-size:.86rem;overflow-x:auto}.api-key-usage small{color:var(--muted)}.api-key-ack{align-items:center;gap:8px;margin:0;display:flex}.permission-note{grid-column:1/-1}.google-settings-form,.google-step-grid,.google-folder-grid,.google-sheets-grid{gap:12px;display:grid}.google-connection-card{border:1px solid color-mix(in srgb, var(--blue) 24%, var(--line));background:color-mix(in srgb, var(--blue) 6%, var(--panel));border-radius:8px;gap:12px;padding:14px;display:grid}.google-connection-main{grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;display:grid}.google-icon-badge{background:var(--panel);border:1px solid var(--line);width:44px;height:44px;color:var(--blue);border-radius:8px;place-items:center;display:inline-grid}.google-connection-main strong,.google-connection-main small{display:block}.google-connection-main small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px}.google-status-stack,.google-primary-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.google-primary-actions button{min-height:44px}.google-step-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.google-check{border:1px solid var(--line);border-left:4px solid var(--coral);background:var(--page);border-radius:8px;padding:10px 12px}.google-check.ok{border-left-color:var(--green)}.google-check strong,.google-check small{display:block}.google-check small{color:var(--muted);overflow-wrap:anywhere;margin-top:4px}.google-copy-grid,.google-action-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.google-advanced-settings{border:1px solid var(--line);background:var(--page);border-radius:8px;gap:12px;display:grid;overflow:hidden}.google-advanced-settings>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:50px;padding:12px;font-weight:800;list-style:none;display:flex}.google-advanced-settings>summary::-webkit-details-marker{display:none}.google-advanced-settings>summary:after{content:"+";border:1px solid var(--line);background:var(--panel);width:28px;height:28px;color:var(--muted);border-radius:8px;flex:none;place-items:center;display:inline-grid}.google-advanced-settings[open]>summary{border-bottom:1px solid var(--line)}.google-advanced-settings[open]>summary:after{content:"-"}.google-advanced-settings>summary strong,.google-advanced-settings>summary small{display:block}.google-advanced-settings>summary small{color:var(--muted);margin-top:3px;font-weight:600}.google-advanced-settings>:not(summary){margin-inline:12px}.google-advanced-settings>:last-child{margin-bottom:12px}.google-browser-backup-console{border-top:1px solid var(--line);gap:10px;padding-top:12px;display:grid}.google-browser-backup-head,.google-drive-backup-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.google-browser-backup-head strong,.google-browser-backup-head small,.google-drive-backup-row strong,.google-drive-backup-row small{display:block}.google-browser-backup-head small,.google-drive-backup-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px}.google-drive-status{border:1px solid var(--line);color:var(--muted);white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:.84rem;font-weight:800}.google-drive-status.connected{border-color:color-mix(in srgb, var(--green) 45%, var(--line));color:var(--green)}.google-browser-backup-controls{grid-template-columns:minmax(180px,1fr) repeat(3,auto);align-items:end;gap:8px;display:grid}.google-browser-backup-controls label{margin:0}.google-auto-backup-toggle{align-items:center;gap:8px;margin-top:10px;font-size:.9rem;display:flex}.google-drive-backup-list{gap:8px;display:grid}.google-drive-backup-row{border-top:1px solid var(--line);padding-top:8px}.google-drive-backup-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.google-drive-backup-actions a{border:1px solid var(--line);min-height:42px;color:var(--nav-ink);border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 12px;font-weight:800;text-decoration:none;display:inline-flex}.google-folder-grid,.google-sheets-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.google-status-banner{border:1px solid color-mix(in srgb, var(--green) 45%, var(--line));background:color-mix(in srgb, var(--green) 10%, var(--panel));color:var(--nav-ink);border-radius:8px;align-items:center;gap:8px;margin:0 0 12px;padding:10px 12px;font-weight:700;display:flex}.google-status-dismiss{min-height:auto;color:var(--muted);cursor:pointer;background:0 0;border:none;margin-left:auto;padding:4px}.google-backups-card{border:1px solid color-mix(in srgb, var(--green) 30%, var(--line));background:color-mix(in srgb, var(--green) 6%, var(--panel));border-radius:8px;gap:12px;padding:14px;display:grid}.google-subsection-head{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;display:grid}.google-subsection-head strong,.google-subsection-head small{display:block}.google-subsection-head small{color:var(--muted);overflow-wrap:anywhere;margin-top:3px}.google-schedule-row{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.google-schedule-row label{margin:0}.google-schedule-toggle{align-self:center;align-items:center;gap:8px;display:flex}.google-subsection{border:1px solid var(--line);background:var(--page);border-radius:8px;overflow:hidden}.google-subsection>summary{cursor:pointer;align-items:baseline;gap:8px;min-height:44px;padding:10px 12px;font-weight:700;list-style:none;display:flex}.google-subsection>summary::-webkit-details-marker{display:none}.google-subsection>summary small{color:var(--muted);font-weight:500}.google-subsection[open]>summary{border-bottom:1px solid var(--line)}.google-subsection-body{gap:12px;padding:12px;display:grid}.google-field{gap:4px;max-width:440px;display:grid}.google-save-row{margin-top:4px}.google-folder-grid fieldset,.google-sheets-grid fieldset{border:1px solid var(--line);border-radius:8px;gap:8px;min-width:0;padding:10px;display:grid}.google-folder-grid legend,.google-sheets-grid legend{color:var(--muted);padding:0 4px;font-weight:700}.google-folder-grid label,.google-sheets-grid label{align-items:center;gap:6px;margin:0;display:inline-flex}.google-folder-grid input[type=checkbox],.google-sheets-grid input[type=checkbox]{width:auto;min-height:0}.icon-button{width:42px;min-width:42px;height:42px;padding:0}.primary{background:var(--green);border-color:var(--green);color:#fff}.danger-button{background:var(--tint-coral-bg);border-color:var(--tint-coral-border);color:var(--danger)}.danger-button:hover{background:var(--tint-coral-bg-strong)}.eyebrow{color:var(--coral);text-transform:uppercase;letter-spacing:0;font-size:.72rem;font-weight:800}.alert{background:var(--tint-coral-bg-strong);color:var(--danger);border:1px solid var(--tint-coral-border);border-radius:8px;margin-bottom:18px;padding:10px 12px}.alert-dismissable{align-items:flex-start;gap:8px;display:flex}.alert-dismissable .alert-message{overflow-wrap:anywhere;flex:auto;min-width:0}.alert-dismissable .alert-dismiss{color:inherit;cursor:pointer;opacity:.7;background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;min-width:24px;min-height:24px;padding:3px;display:inline-flex}.alert-dismissable .alert-dismiss:hover{opacity:1}.sync-banner{border:1px solid var(--tint-blue-border);background:var(--tint-blue-bg);width:100%;color:var(--nav-ink);border-radius:8px;align-items:center;gap:10px;margin-bottom:18px;padding:10px 12px;font-weight:700;display:flex}.sync-banner.subtle{background:var(--panel-2);color:var(--muted)}.sync-banner-floating{top:calc(var(--app-header-measured,var(--app-header-height)) + 10px);z-index:30;width:auto;max-width:min(460px,100vw - 32px);margin-bottom:0;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 18px 38px #2a313838}.sync-banner.demo{border-color:var(--tint-gold-border);background:var(--tint-gold-bg);color:var(--tint-gold-text)}.sync-banner.reconnecting{opacity:.85;margin-bottom:10px;padding:6px 10px;font-size:.86rem;font-weight:500}.sync-banner.offline,.sync-banner.pending-sync{margin-bottom:10px;padding:6px 10px;font-size:.86rem;font-weight:500}.sync-banner.pending-sync button{min-height:28px;padding:4px 10px}.sync-banner span{flex:auto;min-width:0}.sync-banner button{background:var(--panel);min-height:36px;padding:7px 11px}.sync-banner .sync-banner-dismiss{min-width:24px;min-height:24px;color:inherit;opacity:.7;cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;justify-content:center;align-items:center;padding:3px;display:inline-flex}.sync-banner .sync-banner-dismiss:hover{opacity:1;background:var(--panel)}.inline-note{color:var(--muted);font-size:.92rem}.empty-state{text-align:center;place-items:center;gap:12px;padding:28px 16px;display:grid}.empty-state-icon{color:var(--muted);display:inline-flex}.empty-state-title{margin:0;font-size:1rem;font-weight:700}.empty-state-body{color:var(--muted);max-width:52ch;font-size:.92rem}.empty-state-actions{justify-content:center}.empty-state-inline{background:var(--panel-2);border:1px dashed var(--line-strong);border-radius:10px;gap:8px;padding:16px 14px}.empty-state-inline .empty-state-title{font-size:.92rem;font-weight:600}.content-grid{grid-template-columns:repeat(12,1fr);align-items:start;gap:16px;min-width:0;max-width:100%;display:grid}.content-grid>*,.panel,.metric,.flow{min-width:0;max-width:100%}.dashboard-grid>.panel{grid-column:span 6}.dashboard-grid>.dashboard-priority{grid-column:span 12}.dashboard-grid>.metric{grid-column:span 2;min-height:92px}.content-grid>.panel{grid-column:span 6}.content-grid>.panel.wide,.dashboard-grid>.panel.wide{grid-column:1/-1}.flow{gap:16px;max-width:980px;display:grid}.panel,.metric{background:var(--panel);border:1px solid var(--line);padding:var(--panel-pad,16px);border-radius:8px;box-shadow:0 8px 22px #2a313814}.metric{grid-column:span 2;align-content:space-between;min-height:116px;display:grid}.metric-link{color:var(--ink);text-decoration:none}.metric-link:hover{border-color:var(--blue);transform:translateY(-1px)}.metric svg{color:var(--blue)}.metric span{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;font-size:1.55rem;font-weight:800;overflow:hidden}.metric span.is-long{font-size:1.05rem}@supports (font-size:1cqi){.metric{container-type:inline-size}.metric span.is-long{font-size:clamp(1.05rem,4.6cqi,1.55rem)}}.metric small,.list small{color:var(--muted);margin-top:4px;display:block}.form-grid,.inline-form,.recipe-form{gap:10px;display:grid}.inline-form{grid-template-columns:repeat(auto-fit,minmax(135px,1fr));align-items:end;margin-bottom:14px}.inline-form label,.recipe-form label{min-width:0}.recipe-form{margin-bottom:14px}.inventory-page{gap:14px;min-width:0;max-width:100%;display:grid}.inventory-list-area,.inventory-detail-area{min-width:0;max-width:100%}.inventory-list-area{gap:14px;display:grid}.shopping-page,.active-shopping-page{gap:14px;min-width:0;max-width:100%;display:grid}.active-shopping-page{gap:6px;margin-top:-10px}.content-grid>.shopping-list-panel{grid-column:span 12}.shopping-list-panel-detail>h2{display:none}.shopping-empty-setup{gap:10px;min-width:0;display:grid}.compact-list-create{margin:0}.compact-list-create summary{align-items:center;min-height:44px;display:flex}.compact-list-create .shopping-list-create-form{grid-template-columns:1fr}.shopping-lists-index,.shopping-list-detail{gap:12px;min-width:0;display:grid}.shopping-lists-index-head,.shopping-list-titlebar,.shopping-list-tools,.shopping-list-card{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.shopping-lists-index-head h2,.shopping-list-titlebar h2{min-width:0;margin:0}.shopping-list-card-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;min-width:0;display:grid}.shopping-list-card{background:var(--panel);text-align:left;width:100%;min-height:70px;padding:10px 12px}.shopping-list-card.active{border-color:var(--blue);box-shadow:inset 3px 0 0 var(--blue)}.shopping-list-card-copy{gap:3px;min-width:0;display:grid}.shopping-list-card-copy strong,.shopping-list-card-copy small,.shopping-list-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.shopping-list-card-project{color:var(--muted)}.shopping-list-card-counts{flex:none;gap:8px;display:flex}.shopping-list-card-counts span{text-align:right;min-width:44px;display:grid}.shopping-list-card-counts strong{color:var(--nav-ink);line-height:1}.shopping-return-button{justify-self:start;min-height:40px;padding-inline:0}.shopping-list-titlebar{align-items:end}.shopping-title-actions{flex:none;align-items:center;gap:8px;display:flex}.shopping-start-trip-button{min-height:40px}.shopping-list-titlebar>div{gap:3px;min-width:0;display:grid}.shopping-list-titlebar .icon-button{width:40px;min-width:40px;height:40px}.shopping-list-title{cursor:text;max-width:100%}.shopping-list-title:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px;border-radius:4px}.shopping-list-title-edit{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;width:100%;min-width:0;display:grid}.shopping-list-title-edit input{min-height:44px;font-size:1.1rem;font-weight:800}.shopping-list-tools{align-items:stretch}.shopping-note-editor{min-width:0}.shopping-note-sheet{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0;display:grid;overflow:hidden}.shopping-note-row,.shopping-note-composer{border-bottom:1px solid var(--line);background:var(--panel);min-width:0;display:grid}.shopping-note-row:last-child,.shopping-note-composer:last-child{border-bottom:0}.shopping-note-line,.shopping-note-composer{grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:48px;padding:5px 8px;display:grid}.shopping-note-line-number{color:var(--muted);text-align:right;font-size:.78rem;font-weight:800}.shopping-note-input,.shopping-note-composer textarea{width:100%;min-width:0;min-height:44px;color:var(--ink);font:inherit;background:0 0;border:0;border-radius:0;padding:10px 2px}.shopping-note-input{text-overflow:ellipsis;resize:none;line-height:1.45;overflow:hidden}.shopping-note-composer textarea{resize:none;grid-column:2;line-height:1.45}.shopping-note-composer{z-index:5;border-top:1px solid var(--line);position:sticky;bottom:0;box-shadow:0 -8px 18px #0f172a12}.shopping-note-input:focus-visible,.shopping-note-composer textarea:focus-visible{box-shadow:inset 0 -2px 0 var(--blue);outline:0}.shopping-note-row-actions{justify-content:flex-end;align-items:center;gap:4px;min-width:0;transition:opacity .12s;display:flex}.shopping-note-row-actions .icon-button,.shopping-note-composer .icon-button{width:44px;min-width:44px;height:44px}.shopping-note-row:not(.shopping-note-details-form):not(:hover):not(:focus-within) .shopping-note-row-actions{opacity:0;pointer-events:none}.shopping-note-metadata,.shopping-note-delete-confirm{flex-wrap:wrap;align-items:center;gap:7px;min-width:0;padding:0 10px 8px 42px;display:flex}.shopping-note-metadata small,.shopping-note-metadata a{border:1px solid var(--line);background:var(--panel-2);max-width:220px;min-height:30px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:4px 8px;font-size:.76rem;font-weight:750;text-decoration:none;display:inline-flex;overflow:hidden}.shopping-note-metadata a{color:var(--blue)}.shopping-note-delete-confirm{background:var(--tint-coral-bg);color:var(--muted);justify-content:flex-end;font-size:.86rem}.shopping-note-delete-confirm button{min-height:40px}.shopping-note-details-form{background:var(--panel-2)}.shopping-note-details-form label{gap:4px;min-width:0;display:grid}.shopping-note-details-form label span{color:var(--muted);font-size:.78rem;font-weight:800}.shopping-note-detail-grid{grid-template-columns:minmax(72px,.45fr) minmax(86px,.5fr) minmax(110px,.7fr) minmax(110px,.7fr) minmax(150px,1fr);align-items:end;gap:10px;min-width:0;padding:0 10px 10px 42px;display:grid}.shopping-note-wide-field{grid-column:span 2}.shopping-item-actions{justify-content:flex-end;align-items:center;gap:6px;min-width:0;display:flex}.shopping-item-actions .icon-button{width:40px;min-width:40px;height:40px}.danger-action{background:var(--tint-coral-bg);border-color:var(--tint-coral-border);color:var(--danger)}.shopping-empty-setup{border:1px dashed var(--line);background:var(--panel-2);border-radius:8px;padding:16px}@media (width<=920px){.shopping-list-panel{box-shadow:none;background:0 0;border:0;padding:0}.shopping-list-panel>h2{display:none}.shopping-lists-index,.shopping-list-detail{gap:10px}.shopping-lists-index-head{flex-wrap:wrap;align-items:start}.shopping-lists-index-head>div{min-width:0}.shopping-lists-index-head .compact-list-create{flex:none;max-width:126px}.shopping-lists-index-head .compact-list-create[open]{flex-basis:100%;max-width:none}.shopping-list-card-grid{grid-template-columns:1fr;gap:8px}.shopping-list-card{min-height:58px;padding:8px 10px}.shopping-list-titlebar{align-items:center}.shopping-title-edit-button,.shopping-list-titlebar .icon-button{width:44px;min-width:44px;height:44px}.compact-list-create{align-self:start}.compact-list-create summary{white-space:nowrap;justify-content:center}.shopping-item-actions{grid-column:auto;justify-content:flex-end;gap:4px}.shopping-item-actions .icon-button{width:44px;min-width:44px;height:44px}.shopping-note-line,.shopping-note-composer{grid-template-columns:28px minmax(0,1fr) auto;gap:6px;min-height:52px;padding:4px 6px}.shopping-note-line-number{font-size:.72rem}.shopping-note-metadata,.shopping-note-delete-confirm{padding-left:34px}.shopping-note-metadata small,.shopping-note-metadata a{max-width:100%}.shopping-note-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-left:34px}.shopping-note-wide-field{grid-column:1/-1}}.shopping-trip-home>.shopping-trip-home-panel,.trip-panel{grid-column:span 8}.shopping-trip-home-head,.shopping-trip-list-row,.source-list-row,.cart-row,.trip-total,.active-trip-title,.receipt-upload-row,.saved-list-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.shopping-trip-home-head{border-bottom:1px solid var(--line);padding-bottom:14px}.shopping-trip-home-head div,.shopping-trip-list-row span,.cart-item-main,.saved-list-main{gap:3px;min-width:0;display:grid}.shopping-trip-list,.shopping-cart-list,.trip-source-items,.trip-detail-stack{gap:10px;display:grid}.shopping-trip-list-row{text-align:left;background:var(--panel-2);border-radius:8px;justify-content:space-between;width:100%;min-height:66px;padding:12px}.shopping-trip-list-row strong,.active-trip-title h2,.cart-item-main strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.return-link{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--nav-ink);border-radius:6px;justify-self:start;align-items:center;gap:6px;padding:5px 9px;font-size:.9rem;font-weight:800;text-decoration:none;display:inline-flex}.shopping-trip-title-block{gap:2px;min-width:0;display:grid}.active-trip-title{justify-content:flex-start;width:fit-content;min-width:0;max-width:100%}.active-trip-title h2{flex:0 auto;margin:0;font-size:1.08rem;line-height:1.12}.rename-button{width:36px;min-width:36px;height:36px;color:var(--blue);flex:0 0 36px}.rename-form{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:8px;display:grid}.trip-item-form{gap:8px;display:grid}.trip-item-main-row{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;display:flex}.trip-item-primary-group{flex:999 200px;align-items:center;gap:8px;min-width:0;display:flex}.trip-item-secondary-group{flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.trip-camera-button,.trip-add-item-button{flex:none;justify-content:center;align-items:center;width:44px;height:44px;min-height:44px;padding:0;display:inline-flex}.trip-camera-button{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);overflow:hidden}.trip-camera-button.active{border-color:var(--green);color:var(--green);background:var(--tint-green-bg-strong)}.trip-camera-button img{object-fit:cover;width:100%;height:100%}.trip-item-name-input{flex:120px;min-width:0}.trip-item-qty-input{text-align:center;flex:64px;min-width:52px}.trip-item-price-input{flex:2 116px;min-width:96px;padding-left:8px}.money-input.trip-item-price-input input{padding:9px 6px 9px 4px}.trip-item-price-note{margin:0}.trip-item-optional{border:1px solid var(--line);background:var(--panel);border-radius:8px}.trip-item-optional summary{cursor:pointer;min-height:40px;color:var(--muted);align-items:center;padding:8px 11px;font-weight:700;display:flex}.trip-item-optional-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:end;gap:10px;padding:0 11px 11px;display:grid}.entry-label{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:40px;display:grid}.entry-label>span:first-child{color:var(--muted);white-space:nowrap;font-weight:700}.money-input{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);grid-template-columns:auto minmax(0,1fr);align-items:center;min-height:40px;padding-left:11px;display:grid}.money-input>span{color:var(--muted);font-weight:700}.money-input input{border:0;min-height:38px;padding:9px 11px 9px 5px}.money-input:focus-within{outline:3px solid var(--focus-ring);outline-offset:2px}.money-input input:focus-visible{outline:0}.tax-check{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);min-height:40px;color:var(--ink);white-space:nowrap;flex:none;justify-content:center;align-items:center;gap:7px;padding:9px 10px;font-weight:700;display:inline-flex}.tax-check input[type=checkbox]{width:auto;min-height:0;accent-color:var(--green);margin:0}.receipt-upload-row{flex-wrap:wrap}.receipt-upload-row small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.compact-file-action{white-space:nowrap;min-height:40px;padding:8px 11px}.trip-source-list{border-top:1px solid var(--line);gap:10px;margin-top:16px;padding-top:14px;display:grid}.trip-source-list .list-heading>div{gap:2px;min-width:0;display:grid}.source-list-heading-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.check-off-remaining{white-space:nowrap;align-items:center;gap:6px;min-height:36px;padding:6px 10px;font-size:.82rem;display:inline-flex}.trip-check-off-panel{margin:12px 0}.check-off-rows{max-height:46vh;overflow-y:auto}.check-off-rows input[type=checkbox]{width:auto;min-height:0;accent-color:var(--green);margin:0}.check-off-rows .cart-item-main{flex:1}.source-list-row{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-height:62px;padding:9px 10px 9px 12px}.source-list-row.in-cart{background:var(--tint-green-bg);border-color:var(--tint-green-border)}.source-list-row.in-cart .cart-item-main strong{opacity:.6;text-decoration:line-through}.cart-item-main small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.source-add-button{width:44px;min-width:44px;height:44px;color:var(--blue)}.source-add-button.added{color:var(--green);border-color:var(--tint-green-border);background:var(--tint-green-bg-strong)}.cart-row{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;min-height:68px;padding:12px}.cart-row.has-photo{grid-template-columns:36px minmax(0,1fr) auto auto;justify-content:stretch;align-items:center;display:grid}.cart-price{color:var(--nav-ink);flex:none;font-size:1.02rem;font-weight:800}.cart-remove-button{border-color:var(--tint-coral-border);width:34px;min-width:34px;height:34px;color:var(--danger)}.tax-badge{border:1px solid var(--tint-gold-border);background:var(--tint-gold-bg);min-height:22px;color:var(--tint-gold-text);border-radius:999px;align-items:center;margin-left:7px;padding:2px 7px;font-size:.72rem;font-weight:800;display:inline-flex}.seeded-price-badge{border:1px dashed var(--line);min-height:22px;color:var(--muted);border-radius:999px;align-items:center;margin-left:7px;padding:2px 7px;font-size:.72rem;font-weight:700;display:inline-flex}.empty-cart-note{border:1px dashed var(--line);text-align:center;border-radius:8px;padding:12px 14px}.trip-total{margin:2px calc(-1 * var(--panel-pad,16px)) calc(-1 * var(--panel-pad,16px));padding:12px var(--panel-pad,16px);background:linear-gradient(180deg, #fffffff5, var(--panel));border-top:1px solid var(--line);border-radius:0 0 8px 8px;position:sticky;bottom:0}.trip-total strong{color:var(--green);font-size:1.34rem}.trip-complete-button{justify-content:center;width:100%;margin-top:12px}.grocery-quick-add{gap:10px;display:flex}.grocery-quick-add input{flex:1;min-width:0}.getting-started-steps{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px;margin-top:10px;display:grid}.getting-started-step{border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;padding:12px;display:flex}.getting-started-step-link{min-width:0;color:inherit;flex:1;align-items:center;gap:12px;text-decoration:none;display:flex}.getting-started-step-link span{gap:2px;min-width:0;display:grid}.getting-started-dismiss{color:var(--muted);flex-shrink:0}.getting-started-step.done{opacity:.62}.getting-started-step.done .getting-started-step-link svg{color:var(--green)}.trip-side-panel{grid-column:span 4;gap:14px;display:grid}.metric-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.trip-side-panel .metric{grid-column:auto;min-height:96px}.receipt-upload{border:1px dashed var(--line);background:var(--panel-2);border-radius:8px;gap:10px;padding:12px;display:grid}.receipt-upload h3{margin-bottom:2px}.detail-entry-label{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;grid-template-columns:auto minmax(72px,1fr);width:100%;padding:10px 12px}.saved-list-row{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;padding:12px}.inventory-screen{gap:16px;min-width:0;max-width:100%;display:grid}.inventory-find-grid{grid-template-columns:minmax(0,1fr);align-items:start;gap:16px;display:grid}.inventory-toolbar-panel{gap:10px;display:grid}.inventory-toolbar-header{justify-content:space-between;align-items:center;gap:12px;min-width:0;display:flex}.inventory-toolbar-header h2{margin-bottom:0}.inventory-toolbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;min-width:0;display:flex}.inventory-sort-select{min-width:0;color:var(--muted);text-transform:uppercase;align-items:center;gap:6px;font-size:.78rem;font-weight:800;display:flex}.inventory-sort-select>span{flex:none}.inventory-sort-select select{border-radius:var(--radius-pill);text-transform:none;max-width:190px;min-height:34px;padding:6px 30px 6px 10px;font-size:.84rem;font-weight:800}.inventory-filter-menu{flex:none;position:relative}.inventory-filter-trigger{border-radius:var(--radius-pill);min-height:34px;padding:6px 10px;font-size:.84rem;font-weight:800}.inventory-filter-trigger.active{background:var(--tint-blue-bg);border-color:var(--tint-blue-border);color:var(--tint-blue-text)}.inventory-filter-trigger span{border-radius:var(--radius-pill);background:var(--navy-chip);color:#fff;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:.72rem;line-height:1;display:inline-grid}.inventory-filter-popover{z-index:40;border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:10px;width:min(320px,100vw - 32px);padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 40px #2a31382e}.inventory-filter-popover-header{justify-content:space-between;align-items:center;gap:10px;display:flex}.inventory-filter-popover-header button{min-height:30px;padding:5px 9px;font-size:.78rem;font-weight:800}.inventory-filter-selects{border-bottom:1px solid var(--line);gap:8px;padding-bottom:10px;display:grid}.inventory-filter-selects .inventory-sort-select{justify-content:space-between}.inventory-filter-selects .inventory-sort-select select{flex:auto;min-width:0;max-width:none}.inventory-filter-options{gap:8px;display:grid}.inventory-search-box{margin-bottom:0}.inventory-active-filter-row{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.inventory-filter-pill{border-radius:var(--radius-pill);background:var(--tint-green-bg);border-color:var(--tint-green-border);min-height:28px;color:var(--tint-green-text);padding:4px 8px 4px 10px;font-size:.78rem;font-weight:800}.inventory-filter-pill svg{flex:none}.inventory-filter-chip{border-radius:var(--radius-pill);min-height:34px;padding:6px 10px;font-size:.84rem;font-weight:800}.inventory-filter-chip.active{background:var(--tint-blue-bg);border-color:var(--tint-blue-border);color:var(--tint-blue-text)}.inventory-add-screen,.inventory-labels-screen{max-width:980px}.inventory-add-panel{width:min(760px,100%)}.inventory-add-kind{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:min(760px,100%);margin-bottom:10px;display:grid}.inventory-add-kind button{background:var(--panel);min-height:44px;font-weight:800}.inventory-add-kind button.active{border-color:var(--green);background:var(--tint-green-bg-strong);color:var(--green)}.inventory-place-form{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.inventory-place-next-note{grid-column:1/-1;margin:0}.inventory-transfer-row{flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0;display:flex}.inventory-import-action{min-height:38px}.inventory-transfer-message{border-radius:var(--radius-pill);background:var(--tint-green-bg);border:1px solid var(--tint-green-border);max-width:100%;min-height:34px;color:var(--tint-green-text);align-items:center;padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.settings-inventory-data-panel .inventory-transfer-row{margin-bottom:8px}.settings-inventory-import-warning{color:var(--muted);align-items:flex-start;gap:8px;margin:0 0 10px;font-size:.84rem;display:flex}.settings-inventory-import-warning svg{color:var(--gold);flex:none}.inventory-label-panel{width:min(900px,100%)}.inventory-label-panel>h2{margin-bottom:12px}.inventory-label-intro{border:1px solid var(--tint-blue-border);background:var(--tint-blue-bg);border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px;display:grid}.inventory-label-intro p{color:var(--tint-blue-text);margin:0;font-size:.9rem}.inventory-label-icon{background:var(--panel);width:42px;height:42px;color:var(--blue);border-radius:8px;place-items:center;display:grid}.inventory-label-step{border-top:1px solid var(--line);gap:10px;margin-top:14px;padding-top:14px;display:grid}.inventory-label-step-head{justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.inventory-label-step-head span,.inventory-label-step-head h3,.inventory-label-step-head small{min-width:0}.inventory-label-step-head h3{margin:1px 0 0;font-size:1rem}.inventory-label-step-head small{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.72rem;font-weight:800;display:block}.inventory-label-step-head>strong{border-radius:var(--radius-pill);background:var(--tint-green-bg);color:var(--tint-green-text);flex:none;padding:5px 9px;font-size:.78rem}.inventory-label-step-head>button{min-height:34px;padding:5px 9px}.inventory-label-search{margin:0}.inventory-label-source-grid,.inventory-label-setup{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.inventory-label-picker{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;min-width:0;overflow:hidden}.inventory-label-picker>header{border-bottom:1px solid var(--line);background:var(--panel);justify-content:space-between;align-items:center;gap:8px;padding:9px 10px;display:flex}.inventory-label-picker>header small{color:var(--muted)}.inventory-label-picker>.inline-note{margin:12px}.inventory-label-choice-list{max-height:290px;overflow:auto}.inventory-label-choice{border-bottom:1px solid var(--line);cursor:pointer;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;min-height:48px;padding:7px 10px;display:grid}.inventory-label-choice:last-child{border-bottom:0}.inventory-label-choice.selected{background:var(--tint-green-bg)}.inventory-label-choice.disabled{cursor:not-allowed;opacity:.55}.inventory-label-choice input,.inventory-label-paper-options input,.inventory-label-preset-options input{width:18px;height:18px;accent-color:var(--green);margin:0}.inventory-label-choice span,.inventory-label-choice strong,.inventory-label-choice small{min-width:0}.inventory-label-choice strong,.inventory-label-choice small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inventory-label-choice small{color:var(--muted);margin-top:2px;font-size:.78rem}.inventory-label-selection-message{border:1px solid var(--tint-gold-border);background:var(--tint-gold-bg);color:var(--tint-gold-text);border-radius:8px;margin:0;padding:8px 10px;font-size:.82rem;font-weight:700}.inventory-label-review-list{gap:6px;max-height:260px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.inventory-label-review-list li{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;padding:7px 8px 7px 10px;display:grid}.inventory-label-review-list li>span,.inventory-label-review-list strong,.inventory-label-review-list small{min-width:0}.inventory-label-review-list strong,.inventory-label-review-list small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inventory-label-review-list small{color:var(--muted);margin-top:2px;font-size:.78rem}.inventory-label-paper-options,.inventory-label-preset-options{border:0;align-content:start;gap:7px;min-width:0;margin:0;padding:0;display:grid}.inventory-label-paper-options legend,.inventory-label-preset-options legend{margin-bottom:7px;padding:0;font-size:.84rem;font-weight:800}.inventory-label-paper-options label,.inventory-label-preset-options label{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px;min-width:0;min-height:48px;padding:8px 10px;display:grid}.inventory-label-paper-options label.selected,.inventory-label-preset-options label.selected{border-color:var(--green);background:var(--tint-green-bg)}.inventory-label-paper-options span,.inventory-label-paper-options strong,.inventory-label-paper-options small,.inventory-label-preset-options span,.inventory-label-preset-options strong,.inventory-label-preset-options small{min-width:0}.inventory-label-paper-options strong,.inventory-label-paper-options small,.inventory-label-preset-options strong,.inventory-label-preset-options small{display:block}.inventory-label-paper-options small,.inventory-label-preset-options small{color:var(--muted);margin-top:2px;font-size:.76rem;font-weight:600}.inventory-label-preset-options strong{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 8px;display:flex}.inventory-label-preset-options strong small{color:var(--ink);margin:0;font-size:.76rem;font-weight:800}.inventory-label-layout-summary{border:1px solid var(--tint-blue-border);background:var(--tint-blue-bg);color:var(--tint-blue-text);border-radius:8px;gap:3px;padding:9px 10px;display:grid}.inventory-label-layout-summary span,.inventory-label-layout-summary small{font-size:.78rem}.inventory-label-layout-summary small{color:var(--muted)}.inventory-label-generate-row{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px 10px;margin-top:14px;padding-top:14px;display:flex}.inventory-label-generate-row>button{min-height:44px}.inventory-label-generate-row>small{color:var(--muted);flex:240px}.manual-entry-panel{border-top:4px solid var(--green)}.quick-entry-form{gap:12px;display:grid}.quick-entry-primary,.quick-entry-secondary{align-items:end;gap:10px;display:grid}.quick-entry-primary{grid-template-columns:minmax(220px,1.4fr) minmax(180px,1fr)}.quick-entry-secondary{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.quick-entry-submit{justify-self:start;min-width:160px}.placement-combobox-field{color:var(--muted);gap:6px;font-size:.88rem;display:grid;position:relative}.placement-combobox,.placement-combobox-input-row{position:relative}.placement-combobox-input-row input[type=search]{padding-right:44px}.placement-combobox-clear{width:32px;min-width:32px;height:32px;min-height:32px;color:var(--muted);background:0 0;border-color:#0000;padding:0;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.placement-combobox-clear:hover{border-color:var(--line);background:var(--tint-green-soft);color:var(--ink)}.placement-combobox-results{z-index:45;border:1px solid var(--line);background:var(--panel);border-radius:8px;max-height:min(360px,56vh);padding:4px;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:auto;box-shadow:0 16px 40px #2a31382e}.placement-combobox-option,.placement-combobox-add{background:var(--panel);text-align:left;border-color:#0000;border-radius:6px;justify-content:flex-start;width:100%;min-height:44px;padding:8px 10px}.placement-combobox-option.active,.placement-combobox-option:hover,.placement-combobox-add.active,.placement-combobox-add:hover{border-color:var(--tint-blue-border);background:var(--tint-blue-bg)}.placement-combobox-option>span{gap:2px;min-width:0;display:grid}.placement-combobox-option strong,.placement-combobox-option small{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.placement-combobox-option strong{color:var(--ink);font-size:.9rem}.placement-combobox-option small{color:var(--muted);font-size:.78rem;font-weight:700}.placement-combobox-empty{min-height:44px;color:var(--muted);align-items:center;padding:8px 10px;font-size:.84rem;font-weight:700;display:flex}.placement-combobox-add{border-top:1px solid var(--line);color:var(--green);margin-top:4px;font-weight:850;position:sticky;bottom:0}.store-picker-create-form{border-top:1px solid var(--line);background:var(--panel);gap:8px;margin-top:4px;padding:10px;display:grid}.store-picker-create-actions{gap:8px;display:flex}.shopping-list-create-form .store-picker{min-width:220px}.shopping-list-store-row{gap:4px;max-width:360px;margin:0 0 12px;display:grid}.shopping-list-store-row>small{color:var(--muted)}.shopping-trip-start{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;gap:10px;margin:0 0 12px;padding:12px;display:grid}.shopping-trip-start-copy{gap:2px;display:grid}.shopping-trip-start-copy>small{color:var(--muted)}.shopping-trip-start .store-picker{max-width:360px}.shopping-trip-start-actions{flex-wrap:wrap;gap:8px;display:flex}.shopping-trip-store-row{gap:4px;max-width:360px;margin:0 0 12px;display:grid}.shopping-trip-store-row>small{color:var(--muted)}.shopping-list-card-store{color:var(--muted);font-size:.78rem}.shopping-sort-toggle{gap:6px;margin:0 0 10px;display:flex}.shopping-sort-toggle-button{border:1px solid var(--line);background:var(--panel);min-height:32px;color:var(--muted);cursor:pointer;border-radius:8px;padding:5px 12px;font-size:.82rem;font-weight:700}.shopping-sort-toggle-button.active{background:var(--tint-green-bg-strong);border-color:var(--tint-green-border);color:var(--tint-green-text)}.asset-place-toggle{min-height:34px;color:var(--muted);align-self:end;font-size:.84rem;font-weight:800}.asset-place-toggle input[type=checkbox]{accent-color:var(--green)}.photo-action-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.file-action{border:1px solid var(--line);background:var(--panel);min-height:42px;color:var(--ink);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;padding:8px 12px;display:inline-flex}.file-action:hover{border-color:var(--blue)}.file-action:disabled{cursor:not-allowed;opacity:.58}.file-action:focus-within{outline:3px solid var(--focus-ring);outline-offset:2px}.file-action input{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.photo-count{border-radius:var(--radius-pill);text-overflow:ellipsis;white-space:nowrap;background:var(--tint-blue-bg);max-width:100%;min-height:34px;color:var(--tint-blue-text);border:1px solid var(--tint-blue-border);padding:5px 10px;font-size:.82rem;font-weight:700;display:inline-block;overflow:hidden}.shared-photo-toggle{border:1px solid var(--line);background:var(--tint-green-soft);width:fit-content;min-height:40px;color:var(--tint-green-text);border-radius:8px;padding:8px 10px;font-size:.86rem;font-weight:800}.shared-photo-toggle input[type=checkbox]{accent-color:var(--green)}.shared-photo-draft{border:1px solid var(--tint-blue-border);background:var(--tint-blue-bg);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.shared-photo-draft-icon{background:var(--tint-blue-bg);width:38px;height:38px;color:var(--blue);border-radius:8px;place-items:center;display:grid}.shared-photo-draft strong,.shared-photo-draft small{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.shared-photo-draft small{color:var(--muted);font-weight:700}.shared-photo-draft .ghost-button{border-color:var(--tint-blue-border);background:var(--panel);min-height:36px;color:var(--ink);padding:6px 9px}.queued-photo-grid,.asset-photo-grid{grid-template-columns:repeat(auto-fill,minmax(168px,1fr));gap:10px;margin:0;padding:0;list-style:none;display:grid}.queued-photo-card,.asset-photo-card{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:9px;min-width:0;padding:8px;display:grid}.queued-photo-card.primary,.asset-photo-card.primary{border-color:var(--tint-green-border);background:var(--tint-green-bg-strong);box-shadow:inset 0 0 0 2px #2d7a4a1a}.queued-photo-preview,.asset-photo-card-preview{border:1px solid var(--line);background:var(--panel-3);width:64px;height:64px;color:var(--muted);border-radius:8px;place-items:center;padding:0;display:grid;overflow:hidden}.queued-photo-preview img,.asset-photo-card-preview img{object-fit:cover;width:100%;height:100%}.queued-photo-meta,.asset-photo-card-meta{gap:3px;min-width:0;display:grid}.queued-photo-meta strong,.asset-photo-card-meta strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.86rem;overflow:hidden}.queued-photo-meta small,.asset-photo-card-meta small{color:var(--muted)}.queued-photo-controls,.asset-photo-card-controls{flex-wrap:wrap;grid-column:1/-1;gap:6px;display:flex}.queued-photo-controls button,.asset-photo-card-controls button{border-radius:8px;min-height:32px;padding:5px 8px;font-size:.78rem;font-weight:800}.queued-photo-controls .cover.active,.asset-photo-card-controls .cover.active{border-color:var(--tint-green-border);background:var(--tint-green-bg-strong);color:var(--green)}.queued-photo-controls .remove{color:var(--danger);margin-left:auto}.camera-capture-backdrop{z-index:90;padding:max(14px, env(safe-area-inset-top)) max(14px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(14px, env(safe-area-inset-left));background:#08141bb8;place-items:center;display:grid;position:fixed;inset:0}.camera-capture-modal{background:var(--panel);border:1px solid #ffffff2e;border-radius:8px;gap:12px;width:min(560px,100%);max-height:min(760px,100dvh - 28px);padding:12px;display:grid;overflow:auto;box-shadow:0 24px 60px #00000057}.camera-capture-modal header,.camera-capture-actions{justify-content:space-between;align-items:center;gap:10px;display:flex}.camera-capture-modal h3{margin:0;font-size:1rem}.camera-capture-video{aspect-ratio:4/3;object-fit:contain;background:#000;border-radius:8px;width:100%}.camera-capture-preview{object-fit:contain;background:#000;border-radius:8px;width:100%;max-height:min(52vh,480px)}.camera-capture-result{gap:10px;display:grid}.camera-capture-result-actions{flex-wrap:wrap;gap:8px;display:flex}.camera-capture-discard{color:var(--danger)}.camera-zoom-row{color:var(--muted);align-items:center;gap:10px;display:flex}.camera-zoom-row input[type=range]{flex:auto;min-width:0}.camera-torch-button[aria-pressed=true]{border-color:var(--tint-gold-border-strong);background:var(--tint-gold-bg);color:var(--tint-gold-text)}.camera-controls{color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px;display:flex}.camera-controls .camera-zoom-row{flex:160px;min-width:0}.camera-controls .camera-torch-button{flex:none}.app-toast-anchor{left:50%;bottom:max(18px, env(safe-area-inset-bottom));z-index:90;pointer-events:none;justify-content:center;width:min(720px,100vw - 32px);display:flex;position:fixed;transform:translate(-50%)}.app-toast{border:1px solid var(--tint-green-border);background:var(--tint-green-bg);max-width:100%;min-height:48px;color:var(--ink);pointer-events:none;touch-action:pan-y;opacity:var(--toast-drag-opacity,1);transform:translateX(var(--toast-drag,0px));border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px 10px;padding:12px 16px;font-weight:800;animation:.18s ease-out app-toast-rise;display:grid;box-shadow:0 18px 38px #16312d2e}.app-toast-link,.app-toast-action,.app-toast-dismiss{pointer-events:auto}@media (hover:none){.app-toast{pointer-events:auto}}.app-toast:not(.is-dragging){transition:transform .18s ease-out,opacity .18s ease-out}.app-toast svg{flex:none}.app-toast-icon{color:var(--green);grid-area:1/1}.app-toast-link{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;color:var(--tint-green-text);text-underline-offset:2px;grid-area:1/2;justify-self:start;font-weight:800;text-decoration:underline;overflow:hidden}.app-toast-link:hover,.app-toast-link:focus-visible{color:var(--green)}.app-toast-message{white-space:nowrap;grid-area:1/2;min-width:0;overflow:hidden}.app-toast.has-link .app-toast-message{grid-area:2/1/auto/4}.app-toast-message-text{will-change:transform;display:inline-block}.app-toast.is-marquee .app-toast-message-text{animation:app-toast-marquee var(--toast-marquee-duration,6s) linear var(--toast-marquee-delay,.9s) infinite}.app-toast.is-paused .app-toast-message-text{animation-play-state:paused}.app-toast-actions{grid-area:2/2/auto/4;align-items:center;gap:6px;display:inline-flex}.app-toast.has-link .app-toast-actions{grid-area:3/1/auto/4}.app-toast-dismiss{min-width:32px;min-height:32px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;grid-area:1/3;justify-content:center;align-items:center;padding:0;display:inline-flex}.app-toast-dismiss:hover,.app-toast-dismiss:focus-visible{border-color:var(--tint-green-border);background:var(--tint-green-bg-strong);color:var(--ink)}.app-toast-action{border-color:var(--tint-green-border);background:var(--panel);min-height:32px;color:var(--tint-green-text);padding:6px 10px}.app-toast-action:hover,.app-toast-action:focus-visible{background:var(--tint-green-bg-strong);border-color:#5aa36f}@keyframes app-toast-in{0%{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%)}}@keyframes app-toast-rise{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes app-toast-marquee{0%,12%{transform:translate(0)}50%,62%{transform:translateX(var(--toast-marquee-shift,0px))}to{transform:translate(0)}}@media (prefers-reduced-motion:reduce){.app-toast{transition:none;animation:none}.app-toast-message{white-space:normal}.app-toast-message-text{animation:none}}.advanced-entry-details{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;padding:0}.advanced-entry-details summary{cursor:pointer;align-items:center;min-height:42px;padding:9px 11px;font-weight:800;display:flex}.advanced-entry-details.compact-list-create summary{min-height:44px}.advanced-entry-details>label,.advanced-entry-details>.quick-entry-secondary,.advanced-entry-details>.form-grid,.advanced-entry-details>.inline-form,.advanced-entry-details>.trip-item-form{padding:0 11px 11px}.inline-form>.asset-money-details{grid-column:1/-1}.inline-form>.maintenance-anchor-hint{grid-column:1/-1;margin:0}.columns-3{grid-template-columns:repeat(3,1fr);gap:10px;display:grid}.list{gap:8px;min-width:0;max-width:100%;display:grid}.list article{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0;max-width:100%;min-height:56px;padding:10px 12px;overflow:hidden}.list-content,.list-content>span,.list-content>div{min-width:0;max-width:100%}.list-content small{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;overflow:hidden}.asset-title-line{align-items:center;gap:6px;min-width:0;max-width:100%;display:inline-flex}.asset-title-line strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.asset-photo-indicator{color:var(--green);flex:none;align-items:center;display:inline-flex}.asset-photo-indicator.preview{border:1px solid var(--tint-green-border);background:var(--tint-green-bg-strong);border-radius:8px;width:28px;height:28px;overflow:hidden}.asset-photo-indicator.preview img{object-fit:cover;width:100%;height:100%}.activity-row{gap:2px;display:grid}.activity-row.has-preview{grid-template-columns:42px minmax(0,1fr);align-items:center;gap:9px}.activity-row-copy{gap:2px;min-width:0;display:grid}.activity-summary{text-overflow:ellipsis;white-space:nowrap;min-width:0;max-width:100%;display:block;overflow:hidden}.activity-summary-link,.entity-audit-link{color:inherit;font-weight:700;text-decoration:none}.activity-summary-link:hover,.activity-summary-link:focus-visible,.entity-audit-link:hover,.entity-audit-link:focus-visible{color:var(--blue);text-decoration:underline}.activity-summary-toggle{border-radius:var(--radius-pill);width:100%;min-height:0;color:inherit;text-align:left;background:0 0;border:0;justify-content:start;padding:1px 0}.activity-summary-toggle:hover{background:var(--panel-2);border-color:#0000}.activity-summary-toggle.expanded{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;overflow:visible}.activity-attachment-preview,.entity-audit-preview{border:1px solid var(--line);background:var(--panel-3);border-radius:8px;width:40px;height:40px;display:block;overflow:hidden;box-shadow:0 1px 2px #0f172a14}.activity-attachment-preview:hover,.activity-attachment-preview:focus-visible,.entity-audit-preview:hover,.entity-audit-preview:focus-visible{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-glow);outline:none}.activity-attachment-preview img,.entity-audit-preview img{object-fit:cover;width:100%;height:100%;display:block}.release-notes-page{grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:14px;display:grid}.release-notes-toolbar{grid-column:1/-1}.release-note-main{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:16px;min-width:0;padding:18px;display:grid}.release-note-header{gap:8px;min-width:0;display:grid}.release-note-header h2{letter-spacing:0;margin:0;font-size:clamp(1.35rem,2vw,1.9rem)}.release-note-meta{color:var(--muted);flex-wrap:wrap;gap:8px 14px;display:flex}.release-note-meta span{align-items:center;gap:6px;display:inline-flex}.release-note-body{gap:12px;min-width:0;line-height:1.55;display:grid}.release-note-body h2,.release-note-body h3,.release-note-history h3{letter-spacing:0;margin:0}.release-note-body h2{font-size:1.2rem}.release-note-body h3,.release-note-history h3{font-size:1rem}.release-note-body p,.release-note-body ul{margin:0}.release-note-body ul{padding-left:20px}.release-note-body a{color:var(--blue);font-weight:700}.release-note-body pre{background:var(--code-surface);color:#f4fbff;border-radius:8px;margin:0;padding:12px;overflow:auto}.release-note-history{background:var(--panel);border:1px solid var(--line);border-radius:8px;align-self:start;gap:10px;padding:14px;display:grid}.release-note-history div{gap:8px;display:grid}.release-note-history a{border:1px solid var(--line);color:inherit;border-radius:8px;gap:2px;padding:9px;text-decoration:none;display:grid}.release-note-history a:hover,.release-note-history a:focus-visible{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-glow);outline:none}.release-note-history small{color:var(--muted)}@media (width<=820px){.release-notes-page{grid-template-columns:1fr}.release-note-main,.release-note-history{padding:14px}}.row-actions{justify-content:space-between;align-items:center;gap:12px;display:flex}.attachment-row{flex-wrap:wrap;justify-content:start;row-gap:8px}.attachment-row>.attachment-details{flex:12rem;min-width:0}.attachment-details>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.attachment-row-focused{border-left:3px solid var(--line-strong);background:var(--panel-3);border-radius:6px;padding-left:8px}.attachment-thumb{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;flex:none;place-items:center;width:58px;height:58px;padding:0;text-decoration:none;display:grid;overflow:hidden}.attachment-thumb img{object-fit:cover;width:100%;height:100%}.attachment-thumb.placeholder{color:var(--muted)}.attachment-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.attachment-actions a,.attachment-actions button,.attachment-viewer-actions a,.attachment-viewer-actions button{border:1px solid var(--line);background:var(--panel);white-space:nowrap;border-radius:8px;justify-content:center;gap:8px;padding:8px 12px;text-decoration:none}.attachment-viewer{z-index:80;background:#17242d9e;place-items:center;padding:12px;display:grid;position:fixed;inset:0}.attachment-viewer-panel{background:var(--panel);border:1px solid var(--line);width:min(960px,100%);min-height:0;max-height:min(92vh,900px);box-shadow:var(--shadow);border-radius:8px;grid-template-rows:auto minmax(0,1fr) auto;gap:10px;padding:12px;display:grid}.attachment-viewer-header{grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:10px;display:grid}.attachment-viewer-title{gap:3px;min-width:0;display:grid}.attachment-viewer-title strong{overflow-wrap:anywhere}.attachment-viewer-title small{color:var(--muted)}.attachment-viewer-vision{border-top:1px solid var(--line);gap:6px;max-height:34vh;margin-top:8px;padding-top:8px;display:grid;overflow:auto}.attachment-viewer-vision-desc,.attachment-viewer-ocr{margin:0}.attachment-viewer-vision-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.attachment-viewer-vision-head .eyebrow{margin:0}.attachment-viewer-vision-actions{gap:6px;display:inline-flex}.attachment-viewer-vision-editor{gap:8px;display:grid}.attachment-viewer-vision-editor label{gap:3px;display:grid}.attachment-viewer-vision-editor label span{color:var(--muted);font-size:.78rem;font-weight:700}.attachment-viewer-vision-error{color:var(--danger)}.attachment-vision-caption{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.attachment-document-meta{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.attachment-document-kind select{min-width:5.5rem;min-height:0;padding:2px 6px;font-size:.78rem}.attachment-extraction-status{color:var(--muted)}.attachment-extraction-status[data-extraction-status=extracted]{color:var(--green)}.attachment-extraction-status[data-extraction-status=failed]{color:var(--danger)}.attachment-extraction-retry{flex:none;min-height:0;padding:2px 8px;font-size:.78rem}.attachment-viewer-image-wrap{background:var(--media-surface);border-radius:8px;place-items:center;min-height:0;display:grid;overflow:auto}.attachment-viewer-image{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:calc(92vh - 130px);display:block}.attachment-viewer-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.attachment-viewer-pagination{align-items:center;gap:8px;display:flex}.attachment-viewer-pagination button{width:40px;min-width:40px;min-height:38px;padding:0}.attachment-viewer-pagination small{min-width:54px;color:var(--muted);text-align:center;font-weight:800}.attachment-panel{gap:12px;display:grid}.attachment-panel-chips{flex-wrap:wrap;gap:8px;display:flex}.attachment-panel-chips a,.attachment-panel-chips button{background:var(--panel-2);border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;gap:6px;max-width:100%;min-height:36px;padding:6px 9px;text-decoration:none;display:inline-flex}.attachment-panel-chips a span,.attachment-panel-chips button span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attachment-panel-versions{display:inline-flex;position:relative}.attachment-panel-chip{align-items:stretch;gap:4px;max-width:100%;display:inline-flex}.attachment-versions-modal .attachment-viewer-panel{grid-template-rows:auto minmax(0,1fr)}.attachment-versions-body{align-content:start;gap:10px;min-height:0;display:grid;overflow:auto}.attachment-versions-upload{border:1px dashed var(--line);background:var(--panel-2);border-radius:8px;flex-wrap:wrap;align-items:end;gap:8px;padding:10px;display:flex}.attachment-versions-upload-file{gap:4px;font-size:.85rem;font-weight:700;display:grid}.attachment-versions-upload input[type=text]{flex:180px;min-width:0}.attachment-versions-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.attachment-versions-list>li{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;align-items:flex-start;gap:10px;padding:8px 10px;display:flex}.attachment-versions-list>li.selected{border-color:var(--tint-gold-border);background:var(--tint-gold-bg)}.attachment-versions-select{align-items:center;padding-top:3px;display:inline-flex}.attachment-versions-info{flex:1;gap:2px;min-width:0;display:grid}.attachment-versions-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.8rem;display:flex}.attachment-versions-number{color:var(--ink);font-weight:800}.attachment-versions-current{border-radius:var(--radius-pill);border:1px solid var(--tint-gold-border);background:var(--tint-gold-bg);color:var(--tint-gold-text);padding:1px 8px;font-size:.72rem;font-weight:800}.attachment-versions-name{text-overflow:ellipsis;white-space:nowrap;font-weight:700;overflow:hidden}.attachment-versions-note{color:var(--muted);font-size:.85rem}.attachment-versions-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.attachment-versions-actions a,.attachment-versions-actions button{border:1px solid var(--line);background:var(--panel);min-height:32px;color:var(--ink);border-radius:8px;align-items:center;gap:5px;padding:4px 9px;font-size:.82rem;text-decoration:none;display:inline-flex}.attachment-versions-diff{gap:6px;display:grid}.attachment-versions-diff-title{margin:0;font-size:.92rem}.product-definition-modal .attachment-viewer-panel{grid-template-rows:auto auto;width:min(560px,100%)}.product-definition-form{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:start;gap:10px;display:grid}.product-definition-form label{gap:4px;min-width:0;display:grid}.product-definition-notes{grid-column:1/-1}.product-definition-duplicate-warning{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:6px;display:flex}.product-definition-actions{grid-column:1/-1;justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.attachment-viewer-header-actions{align-items:center;gap:8px;display:flex}.attachment-viewer-action-group{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.attachment-viewer-frame{background:var(--media-surface);border:0;width:100%;height:100%;min-height:min(70vh,640px)}.task-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.task-row-meta.is-overdue{color:var(--danger);font-weight:600}.task-row-meta{display:inline}.priority-bulk-actions{justify-content:flex-end;gap:8px;margin-bottom:10px;display:flex}.priority-show-all{display:none}.task-count-badge{border-radius:var(--radius-pill);border:1px solid var(--tint-gold-border);background:var(--tint-gold-bg);color:var(--tint-gold-text);white-space:nowrap;vertical-align:middle;margin-left:8px;padding:1px 8px;font-size:.72rem;font-weight:800;display:inline-block}@media (width<=700px){.dashboard-priority .task-row{grid-template-columns:minmax(0,1fr);align-items:stretch}.dashboard-priority .task-row-meta{display:block}.dashboard-priority .task-row-copy small{white-space:normal;text-overflow:clip;overflow:visible}.dashboard-priority .task-row .row-actions button{flex:1 1 0;justify-content:center;min-height:44px}.dashboard-priority.is-clamped .list>article:nth-child(n+4){display:none}.priority-show-all{width:100%;min-height:44px;margin-top:10px;display:block}.priority-bulk-actions button{flex:1 1 0;justify-content:center;min-height:44px}}.product-row{grid-template-columns:minmax(0,1fr) minmax(180px,260px);align-items:center;gap:10px;display:grid}.barcode-form{grid-template-columns:minmax(0,1fr) 42px;gap:8px;display:grid}.barcode-form button{width:42px;min-width:42px;padding:0}.chip-row{flex-wrap:wrap;gap:6px;min-width:0;max-width:100%;margin-top:8px;display:flex}.chip-row span{border:1px solid var(--tint-blue-border);background:var(--tint-blue-bg);border-radius:var(--radius-pill);color:var(--tint-blue-text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:3px 7px;font-size:.78rem;display:inline-block;overflow:hidden}.product-row-main{flex-direction:column;gap:2px;min-width:0;display:flex}.product-row-chips{flex-wrap:wrap;gap:6px;min-width:0;margin-top:6px;display:flex}.price-history-toggle{cursor:pointer;font:inherit}.price-history-panel{flex-direction:column;flex-basis:100%;gap:4px;min-width:0;display:flex}.price-history-panel ul{margin:0;padding-left:18px}.price-history-panel li{font-size:.78rem}.price-history-stores li.cheapest{color:var(--tint-green-text);font-weight:700}.chip-typical-price{border:1px solid var(--tint-neutral-border);background:var(--tint-neutral-bg);border-radius:var(--radius-pill);color:var(--muted);white-space:nowrap;align-items:center;gap:4px;padding:3px 8px;font-size:.78rem;font-weight:700;display:inline-flex}.typical-price-note{color:var(--muted);text-overflow:ellipsis;min-width:0;font-size:.78rem;overflow:hidden}.cart-item-main .typical-price-note{white-space:normal}.trip-item-typical-price-note{margin:0}.typical-price-caveat{color:var(--muted);font-size:.72rem;font-weight:400;display:block}.chip-on-hand{border:1px solid var(--tint-green-border);background:var(--tint-green-bg);border-radius:var(--radius-pill);color:var(--tint-green-text);white-space:nowrap;padding:3px 8px;font-size:.78rem;font-weight:700;display:inline-block}.chip-code{border:1px solid var(--tint-blue-border);background:var(--tint-blue-bg);border-radius:var(--radius-pill);color:var(--tint-blue-text);text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:3px 7px;font-size:.78rem;display:inline-block;overflow:hidden}.chip-shelf-life{border:1px solid var(--tint-gold-border);background:var(--tint-gold-bg);border-radius:var(--radius-pill);color:var(--tint-gold-text);white-space:nowrap;align-items:center;gap:4px;padding:3px 8px;font-size:.78rem;font-weight:700;display:inline-flex}.product-row-actions{flex-wrap:wrap;align-items:flex-start;gap:8px;display:flex}.staple-toggle.active{border-color:var(--tint-gold-border-strong);background:var(--tint-gold-bg);color:var(--tint-gold-text)}.staple-toggle.active svg{fill:currentColor}.product-add-hint{align-self:center;max-width:160px}.product-barcode-details{position:relative}.product-barcode-details>summary{cursor:pointer;justify-content:center;align-items:center;list-style:none;display:inline-flex}.product-barcode-details>summary::-webkit-details-marker{display:none}.product-barcode-details[open]>summary{border-color:var(--line-strong)}.product-barcode-details .barcode-form{margin-top:8px}.stock-lot-edit-form{grid-template-columns:76px minmax(0,1fr) 42px;min-width:240px}.stock-lot-edit-form input[name=quantity]{grid-area:1/1}.stock-lot-edit-form input[type=date]{grid-area:1/2/auto/-1}.stock-lot-edit-form select{grid-area:2/1/auto/3}.stock-lot-edit-form button{grid-area:2/3}.stock-lot-adjust-form{grid-template-columns:84px 42px}.stock-lot-row.reconciled{opacity:.6}.stock-lot-confirmed-chip{align-self:center;align-items:center;gap:4px;display:inline-flex}.staples-filter-row{flex-wrap:wrap;gap:8px;margin:4px 0 10px;display:flex}.filter-chip{border:1px solid var(--line);background:var(--panel-2);border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;align-items:center;gap:6px;padding:6px 12px;font-size:.82rem;font-weight:700;display:inline-flex}.filter-chip.active{border-color:var(--tint-gold-border-strong);background:var(--tint-gold-bg);color:var(--tint-gold-text)}.trip-put-away{margin:4px 0}.trip-put-away-button{justify-content:center;align-items:center;gap:8px;width:100%;display:inline-flex}.trip-put-away-panel{margin:0}.put-away-rows{gap:10px;margin:12px 0;display:grid}.put-away-row{border:1px solid var(--line);border-radius:8px;gap:10px;padding:10px 12px;display:grid}.put-away-row.unselected{opacity:.6}.put-away-row-head{cursor:pointer;align-items:center;gap:12px;min-width:0;display:flex}.put-away-fields{gap:8px;display:grid}.put-away-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.detail-section,.attachment-form{align-content:start;gap:10px;display:grid}.detail-section h2{align-items:center;gap:8px;margin:8px 0 0;display:flex}.asset-activity-section{grid-column:1/-1}.entity-activity-section{border-top:1px solid var(--line);padding-top:6px}.entity-activity-heading,.entity-comment-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.entity-activity-heading{justify-content:space-between}.entity-activity-heading h2{margin:0}.entity-activity-heading-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.entity-activity-heading button,.entity-activity-accordion-toolbar button,.entity-comment-actions button{min-height:34px;padding:6px 10px;font-size:.84rem}.entity-activity-accordion-toolbar{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.entity-ask-assistant{border-color:var(--accent,#6366f1);color:var(--accent,#6366f1);align-items:center;gap:6px;display:inline-flex}.entity-activity-alert{margin:0}.entity-activity-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.82fr);align-items:start;gap:14px;display:grid}.entity-comment-panel,.entity-audit-panel,.entity-comment-form,.entity-comment-list,.entity-audit-list,.entity-comment-edit{gap:10px;min-width:0;display:grid}.entity-comment-form{border:1px solid var(--line);background:var(--tint-green-soft);border-radius:8px;padding:12px}.entity-comment-form label{color:var(--ink);font-weight:800}.entity-comment-form textarea,.entity-comment-edit textarea{min-height:86px}.entity-comment-form button{justify-self:start}.entity-comment-card,.entity-audit-row{border:1px solid var(--line);background:var(--panel);border-radius:8px;min-width:0}.entity-comment-card{gap:9px;padding:12px;display:grid}.entity-comment-card p{overflow-wrap:anywhere;white-space:pre-wrap}.entity-comment-meta{color:var(--muted);flex-wrap:wrap;gap:5px 8px;font-size:.82rem;display:flex}.entity-comment-meta span:first-child{color:var(--nav-ink);font-weight:800}.entity-comment-mention,.entity-mention-selected button{color:var(--nav-ink);background:#246f9714;border:1px solid #246f9738;border-radius:999px;align-items:center;gap:4px;font-weight:800;display:inline-flex}.entity-comment-mention{padding:1px 6px}.entity-mention-tools,.entity-mention-menu,.entity-mention-selected,.entity-comment-reactions,.entity-reply-form,.entity-reply-list{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.entity-mention-tools{flex-direction:column}.entity-mention-menu button,.entity-mention-selected button,.entity-comment-reactions button{min-height:30px;padding:5px 8px;font-size:.8rem}.entity-mention-menu button{background:var(--panel)}.entity-mention-selected button{border-radius:999px}.entity-comment-reactions{align-items:center}.entity-comment-reactions button{min-width:34px;color:var(--muted);border-radius:999px;justify-content:center}.entity-comment-reactions button.is-active{border-color:var(--focus-ring);color:var(--nav-ink);background:#246f971a}.entity-comment-reactions span{font-weight:850}.entity-reply-form{border-left:3px solid #246f9733;gap:8px;padding-left:10px;display:grid}.entity-reply-form textarea{min-height:68px}.entity-reply-list{border-left:3px solid #246f9729;gap:9px;padding-left:10px;display:grid}.entity-comment-reply{background:0 0;border:0;border-radius:0;padding:2px 0 2px 2px}.entity-audit-panel h3{align-items:center;gap:8px;margin:0;display:flex}.entity-audit-row{grid-template-columns:18px minmax(0,1fr);gap:9px;padding:10px 12px;display:grid}.entity-audit-row.has-preview{grid-template-columns:18px 42px minmax(0,1fr);align-items:start}.entity-audit-marker{border:2px solid var(--panel);background:var(--blue);width:10px;height:10px;box-shadow:0 0 0 2px var(--tint-blue-border);border-radius:999px;margin-top:5px}.entity-audit-copy{gap:3px;min-width:0;display:grid}.entity-audit-copy strong{overflow-wrap:anywhere}.entity-audit-copy small{color:var(--muted);overflow-wrap:anywhere}.entity-audit-detail{color:var(--ink)!important}.checked{color:var(--muted);text-decoration:line-through}.search-box,.manual-token{background:var(--panel);border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;margin-bottom:14px;padding:0 10px;display:flex}.manual-token{min-width:min(100%,420px);margin-bottom:0}.search-box input,.manual-token input{background:0 0;border:0;flex:1;padding-inline:0}.search-clear-button{width:30px;min-width:30px;min-height:30px;color:var(--muted);background:0 0;border-color:#0000;padding:0}.search-clear-button:hover{border-color:var(--line);background:var(--tint-green-soft);color:var(--ink)}.global-search-box input[type=search]::-webkit-search-cancel-button{appearance:none}.search-page{gap:14px;display:grid}.global-search-panel,.search-admin-panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);border-radius:8px;padding:14px}.global-search-box{min-height:48px;margin-bottom:10px}.search-toolbar,.search-filter-row,.search-admin-panel,.search-result-card{align-items:center;gap:10px;display:flex}.search-toolbar{flex-wrap:wrap;justify-content:space-between}.search-status,.search-result-type{color:var(--muted);font-size:.86rem}.search-result-page{border:1px solid var(--line);background:var(--panel-3);color:var(--ink);white-space:nowrap;border-radius:999px;margin-left:6px;padding:1px 7px;font-size:.78rem}.search-filters{gap:10px;margin-top:12px;display:grid}.search-filter-row{flex-wrap:wrap}.search-chip{min-height:34px;padding:6px 10px}.search-chip.active{border-color:var(--blue);color:var(--blue);background:#246f971f}.toggle-row{color:var(--muted);align-items:center;gap:8px;display:inline-flex}.toggle-row input{width:auto;min-height:0}.search-note{align-items:center;gap:8px;display:inline-flex}.search-truncation{flex-wrap:wrap;align-items:flex-start}.search-filter-toggle.has-filters{border-color:var(--blue);color:var(--blue)}.search-filter-count{background:var(--blue);min-width:20px;height:20px;color:var(--panel);border-radius:999px;justify-content:center;align-items:center;padding:0 6px;font-size:.76rem;font-weight:800;display:inline-flex}.search-filter-fields{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:10px;display:grid}.search-filter-fields label{min-width:0}.search-filter-toggles{flex-wrap:wrap}.search-results,.search-data-group,.search-page-group{gap:10px;display:grid}.search-group-heading{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.78rem;font-weight:700}.search-page-list{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:6px;margin:0;padding:8px;list-style:none;display:grid}.search-page-result{color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;text-decoration:none;display:flex}.search-page-result>svg{color:var(--muted);flex:none}.search-page-result:hover,.search-page-result:focus-visible{background:var(--tint-blue-bg);color:var(--tint-blue-text)}.search-page-result:hover>svg,.search-page-result:focus-visible>svg{color:var(--blue)}.search-page-result-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.9rem;font-weight:600;overflow:hidden}.search-page-result-hint{color:var(--muted);flex:none;font-size:.72rem;font-weight:700}.search-result-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:stretch;padding:0}.search-result-main{overflow-wrap:anywhere;flex:1;gap:5px;min-width:0;display:grid}.search-result-main h2,.search-result-main h3{margin:0;font-size:1rem}.search-result-main p,.search-result-main small{margin:0}.search-result-main small{color:var(--muted);overflow-wrap:anywhere;-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.search-admin-panel{justify-content:space-between}.search-admin-panel h2{margin:0;font-size:1rem}@media (width<=640px){.search-result-card,.search-admin-panel{flex-direction:column;align-items:stretch}.search-admin-panel button{width:100%}}.manual-token button{width:38px;min-height:36px;padding:0}.scanner{gap:12px;display:grid}.scanner-video{aspect-ratio:4/3;object-fit:cover;background:#000;border-radius:8px;width:min(100%,520px)}.hierarchy-tree,.tree-branch,.tree-section,.tree-children{gap:4px;display:grid}.hierarchy-tree{padding-right:2px}.hierarchy-search{margin-bottom:12px}.tree-section{border-top:1px solid var(--line);margin-top:6px;padding-top:10px}.tree-row{text-align:left;border:1px solid #0000;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:100%;min-height:44px;padding:8px 10px;display:grid}summary.tree-row{cursor:pointer;list-style:none}summary.tree-row::-webkit-details-marker{display:none}summary.tree-row:after{content:">";width:24px;height:24px;color:var(--muted);justify-self:end;place-items:center;font-size:.8rem;font-weight:900;display:grid}.tree-branch[open]>summary.tree-row:after{content:"v"}.tree-row.location{background:var(--tint-green-bg);border-color:var(--tint-green-border-soft);grid-template-columns:minmax(0,1fr) auto 24px;min-height:38px;padding:5px 8px}.location-row-lines{gap:2px;min-width:0;display:grid}.location-row-title{align-items:center;gap:6px;min-width:0;display:inline-flex}.tree-row.location .location-row-title strong{text-overflow:clip;white-space:normal;overflow-wrap:anywhere;line-height:1.2;overflow:visible}.tree-row.location .location-row-meta{max-width:100%;color:var(--muted);text-overflow:clip;white-space:normal;justify-self:start;padding-left:22px;font-size:.75rem;line-height:1.2;overflow:visible}.tree-row.asset{background:var(--panel);border-color:var(--line);justify-content:stretch}.tree-row.asset:hover{background:var(--panel-2)}.tree-row.asset.asset-rail-row{border-color:var(--tint-green-border-soft);padding-block:5px;border-width:0 0 1px;border-radius:0;grid-template-columns:16px 36px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:52px;padding-right:4px}.tree-row.asset.asset-rail-row:hover{background:var(--tint-green-soft)}.tree-row.asset.asset-rail-row.active{background:var(--tint-blue-bg);box-shadow:inset 3px 0 0 var(--blue)}.tree-row.asset.asset-rail-row.active .asset-tree-rail:before{background:var(--blue)}.asset-branch{gap:0}.asset-tree-rail{justify-content:center;align-self:stretch}.asset-tree-rail:before{content:"";background:var(--tint-green-border-soft);border-radius:999px;width:2px;min-height:100%}.asset-row-thumb{border:1px solid var(--tint-green-border-soft);background:var(--tint-green-bg-strong);width:36px;height:36px;color:var(--tint-green-text);letter-spacing:0;text-transform:uppercase;border-radius:8px;place-items:center;font-size:.72rem;font-weight:900;display:grid;overflow:hidden}.asset-row-thumb img{object-fit:cover;width:100%;height:100%}.asset-row-thumb span{place-items:center;display:grid}.asset-row-main{gap:3px;min-width:0;display:grid}.asset-row-main .asset-title-line{flex-wrap:wrap;align-items:center;gap:3px 5px;min-width:0;display:flex}.asset-row-main .asset-title-line strong{overflow-wrap:anywhere;white-space:normal;flex:8rem;min-width:0;font-size:.9rem;line-height:1.12;overflow:visible}.asset-row-badge{background:var(--tint-green-bg-strong);color:var(--tint-green-text);border-radius:999px;flex:none;padding:2px 6px;font-size:.75rem;font-weight:900;line-height:1}.asset-status-badge{background:var(--tint-amber-bg,#d9a44129);color:var(--tint-amber-text,#8a6100);text-transform:capitalize}.asset-sale-intent-badge{background:var(--tint-blue-bg);color:var(--tint-blue-text)}.asset-owner-badge{background:var(--tint-green-bg-strong);color:var(--tint-green-text)}.asset-row-meta{min-width:0;max-width:100%;color:var(--muted);white-space:normal;flex-wrap:wrap;align-items:center;gap:4px;font-size:.72rem;line-height:1.2;display:flex;overflow:visible}.asset-row-meta>span:first-child{overflow-wrap:anywhere;text-overflow:clip;flex:0 auto;min-width:0;overflow:visible}.asset-row-meta time,.asset-row-meta>span:not(:first-child){flex:none}.asset-row-open{color:var(--muted-green);justify-self:end;font-size:1rem;font-weight:900}.tree-row span{align-items:center;gap:8px;min-width:0;display:inline-flex}.tree-row.asset.asset-rail-row>.asset-tree-rail{gap:0;display:flex}.tree-row.asset.asset-rail-row>.asset-row-thumb{gap:0;display:grid}.tree-row.asset.asset-rail-row>.asset-row-main{align-items:center;gap:3px;display:grid}.tree-row.asset.asset-rail-row .asset-row-meta{gap:4px;display:flex}.tree-row.asset.asset-rail-row .asset-row-thumb>span{gap:0;display:grid}.tree-row.asset.asset-rail-row>.asset-row-open{gap:0;display:inline-flex}.tree-row strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.tree-row small{max-width:min(42vw,360px);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;justify-self:end;overflow:hidden}.tree-row svg{color:var(--blue);flex:none}.tree-row.location svg,.tree-row .asset-photo-indicator,.tree-row .asset-photo-indicator svg{color:var(--green)}.tree-row.location.inventory-location-row{grid-template-columns:minmax(0,1fr) auto 24px}.asset-row-shell{display:grid;position:relative}.organize-select{z-index:1;opacity:0;pointer-events:none;place-items:center;width:18px;height:18px;transition:opacity .1s;display:grid;position:absolute;top:50%;transform:translateY(-50%)}.asset-row-shell:hover .organize-select,.organize-select:focus-within,.organize-active .organize-select{opacity:1;pointer-events:auto}.organize-select:has(input:checked){opacity:1;pointer-events:auto}.organize-select input{background:var(--panel);width:16px;height:16px;accent-color:var(--green);cursor:pointer;border-radius:4px;margin:0}.organize-row-menu{width:26px;height:26px;color:var(--muted);opacity:0;pointer-events:none;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:6px;place-items:center;padding:0;transition:opacity .1s;display:inline-grid}.inventory-location-row:hover .organize-row-menu,.asset-row-shell:hover .organize-row-menu,.organize-row-menu:focus-visible{opacity:1;pointer-events:auto}.organize-row-menu:hover,.organize-row-menu:focus-visible{border-color:var(--tint-green-border-soft);background:var(--tint-green-bg-strong);color:var(--green)}.location-row-open{border-radius:var(--radius-control);width:100%;min-height:32px;color:inherit;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;justify-content:flex-start;margin:0;padding:0}.location-row-open:hover strong,.location-row-open:focus-visible strong{text-decoration:underline}.organize-row-menu.asset{position:absolute;top:50%;right:18px;transform:translateY(-50%)}.asset-row-place-open{z-index:1;border:1px solid var(--tint-green-border-soft);background:var(--panel);width:26px;height:26px;color:var(--green);cursor:pointer;border-radius:6px;place-items:center;padding:0;display:inline-grid;position:absolute;top:50%;right:46px;transform:translateY(-50%)}.asset-row-place-open:hover,.asset-row-place-open:focus-visible{border-color:var(--green);background:var(--tint-green-bg-strong)}.tree-row.asset.asset-rail-row.has-place-open{padding-right:76px}.tree-row.asset.asset-rail-row.organize-selected{background:var(--tint-green-bg-strong);box-shadow:inset 3px 0 0 var(--green)}.tree-row.asset.asset-rail-row.organize-selected .asset-tree-rail:before{background:var(--green)}.tree-row.location.organize-drop-target{background:color-mix(in srgb, var(--green) 14%, var(--panel));border-color:var(--green);box-shadow:inset 0 0 0 1px var(--green)}.tree-row.asset.asset-rail-row.organize-drop-target{background:color-mix(in srgb, var(--green) 14%, var(--panel));box-shadow:inset 0 0 0 2px var(--green);border-radius:8px}.organize-dragging .tree-row{-webkit-user-select:none;user-select:none}.organize-drag-preview{z-index:1000;background:var(--green);max-width:260px;color:var(--panel);white-space:nowrap;text-overflow:ellipsis;pointer-events:none;border-radius:999px;padding:7px 14px;font-size:.8rem;font-weight:800;position:fixed;top:-100px;left:-100px;overflow:hidden}.organize-selection-bar,.organize-root-dropzone{bottom:max(18px, env(safe-area-inset-bottom));z-index:70;flex-wrap:wrap;justify-content:center;align-items:center;gap:8px;max-width:calc(100vw - 24px);display:flex;position:fixed;left:50%;transform:translate(-50%)}.organize-selection-bar{border:1px solid var(--tint-green-border-soft);background:var(--panel);border-radius:14px;padding:8px 14px;animation:.16s ease-out app-toast-in;box-shadow:0 14px 34px #16312d38}.organize-selection-bar strong{white-space:nowrap;font-size:.85rem}.organize-selection-bar button{border:1px solid var(--tint-green-border-soft);border-radius:var(--radius-control);background:var(--tint-green-bg);color:var(--tint-green-text);cursor:pointer;align-items:center;gap:6px;padding:6px 12px;font-size:.8rem;font-weight:800;display:inline-flex}.organize-selection-bar button:hover:not(:disabled){background:var(--tint-green-bg-strong)}.organize-selection-bar button:disabled{opacity:.5;cursor:default}.organize-selection-bar .organize-selection-clear{color:var(--muted);background:0 0;border-color:#0000}.organize-selection-bar .organize-selection-clear:hover{background:var(--panel-3);color:var(--ink)}@media (width<=640px){.organize-selection-bar{justify-content:flex-start;gap:6px 8px;max-width:none;padding:10px 12px;left:12px;right:12px;transform:none}.organize-selection-bar strong{width:100%}.organize-selection-bar button{flex:auto;justify-content:center;min-height:40px;padding:8px 14px}.organize-selection-bar .organize-selection-clear{flex:0 auto}}.organize-root-dropzone{border:2px dashed color-mix(in srgb, var(--green) 45%, var(--line));background:var(--tint-green-bg);color:var(--tint-green-text);border-radius:14px;padding:16px 26px;font-size:.85rem;font-weight:800;box-shadow:0 14px 34px #16312d2e}.organize-root-dropzone.active{border-color:var(--green);background:color-mix(in srgb, var(--green) 14%, var(--panel))}.organize-root-dropzone svg{color:var(--green);flex:none}.organize-context-menu{z-index:120;border:1px solid var(--line);background:var(--panel);border-radius:10px;gap:2px;min-width:220px;max-width:300px;padding:6px;display:grid;position:fixed;box-shadow:0 12px 32px #16312d3d}.organize-context-menu-heading{border-bottom:1px solid var(--line);color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin-bottom:2px;padding:6px 10px;font-size:.72rem;font-weight:800;overflow:hidden}.organize-context-menu button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:flex-start;align-items:center;gap:9px;width:100%;padding:8px 10px;font-size:.85rem;display:flex}.organize-context-menu button:hover:not(:disabled),.organize-context-menu button:focus-visible{background:var(--tint-green-bg-strong)}.organize-context-menu button:disabled{opacity:.45;cursor:default}.organize-context-menu button svg{color:var(--green);flex:none}.organize-move-dialog-backdrop{z-index:110;background:#0f1e186b;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.organize-move-dialog{border:1px solid var(--line);background:var(--panel);border-radius:14px;grid-template-rows:auto auto minmax(0,1fr);gap:10px;width:min(480px,100%);max-height:min(560px,85vh);padding:14px;display:grid;box-shadow:0 18px 48px #16312d4d}.organize-move-dialog-header{justify-content:space-between;align-items:center;gap:8px;display:flex}.organize-move-dialog-header strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.95rem;overflow:hidden}.organize-move-options{align-content:start;gap:2px;padding-right:2px;display:grid;overflow-y:auto}.organize-move-options button{text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;justify-content:flex-start;align-items:center;gap:10px;width:100%;padding:8px 10px;display:flex}.organize-move-options button:hover:not(:disabled),.organize-move-options button:focus-visible{border-color:var(--tint-green-border-soft);background:var(--tint-green-bg-strong)}.organize-move-options button:disabled{opacity:.5;cursor:default}.organize-move-options button svg{color:var(--green);flex:none}.organize-move-options button span{gap:1px;min-width:0;display:grid}.organize-move-options button strong{text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.organize-move-options button small{color:var(--muted);font-size:.72rem}@media (pointer:coarse),(width<=640px){.organize-select,.organize-row-menu{opacity:1;pointer-events:auto}.organize-select{width:24px;height:24px}.organize-select input{width:18px;height:18px}.organize-row-menu{border-color:var(--line);background:var(--panel);width:44px;height:44px;color:var(--ink)}.organize-context-menu button{min-height:44px}.organize-row-menu.asset{right:6px}.tree-row.asset.asset-rail-row{padding-right:52px}.tree-row.asset.asset-rail-row>.asset-row-open{display:none}}.quick-grid{grid-template-columns:repeat(2,1fr);gap:14px;display:grid}.quick-grid form{align-content:start;gap:10px;display:grid}.scan-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.scan-summary span{border:1px solid var(--line);background:var(--tint-green-soft);border-radius:8px;padding:10px}.scan-summary strong{font-size:1.35rem;display:block}.scan-summary small{color:var(--muted)}.scan-row-actions{flex-wrap:wrap;justify-content:end}.scanner-expander{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px}.scanner-expander summary{cursor:pointer;min-height:38px;font-weight:800}.scanner-expander[open] summary{margin-bottom:12px}.status-expired strong,.status-soon strong{color:var(--danger)}.status-ok strong{color:var(--green)}.status-frozen strong{color:var(--blue)}.frozen-badge{color:var(--blue);align-items:center;gap:4px;font-weight:700;display:inline-flex}.stock-lot-thaw-panel{flex-wrap:wrap;align-items:flex-end;gap:8px;padding:8px 0 4px;display:flex}.meal-page{gap:16px;display:grid}.meal-hero{color:#fff;min-height:142px;box-shadow:var(--shadow);background-color:#0000;background-image:linear-gradient(105deg,#17242df0,#2d6a4fdb),repeating-linear-gradient(135deg,#f5c66b33 0 10px,#0000 10px 28px),linear-gradient(135deg,#17303c 0%,#2d6a4f 62%,#bd8f22 100%);background-position:50%;background-repeat:repeat,repeat,repeat;background-size:cover;background-attachment:scroll,scroll,scroll;background-origin:padding-box,padding-box,padding-box;background-clip:border-box,border-box,border-box;border-radius:8px;grid-template-columns:minmax(0,1.4fr) minmax(260px,.8fr);align-items:end;gap:20px;padding:22px;display:grid}.meal-hero h1{max-width:760px;margin:6px 0 18px;font-size:clamp(1.55rem,2.4vw,2.6rem);line-height:1}.meal-hero .eyebrow{color:#f5c66b}.meal-hero-actions,.meal-actions,.badge-row,.ingredient-chips{flex-wrap:wrap;align-items:center;gap:8px;min-width:0;max-width:100%;display:flex}.meal-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.meal-stats span,.review-metric,.pantry-mini-list span{background:#ffffff21;border:1px solid #ffffff47;border-radius:8px;padding:12px}.meal-stats strong,.review-metric strong{font-size:1.55rem;display:block}.meal-controls{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-columns:repeat(3,minmax(160px,1fr));gap:10px;padding:12px;display:grid}.meal-controls label{color:var(--ink)}.meal-controls label svg{color:var(--blue)}.meal-trust-note{color:var(--tint-gold-text);background:var(--tint-gold-bg);border:1px solid var(--tint-gold-border);border-radius:8px;grid-column:1/-1;padding:9px 10px}.meal-toggles{flex-wrap:wrap;grid-column:1/-1;gap:10px;display:flex}.meal-toggles label,.cook-confirm label{align-items:center;gap:8px;min-height:38px;display:flex}.meal-toggles input,.cook-confirm input{width:auto;min-height:0}.use-soon-rail{gap:10px;padding-bottom:2px;display:flex;overflow-x:auto}.use-soon-rail span{background:var(--tint-gold-bg);border:1px solid var(--tint-gold-border);border-radius:8px;grid-template-columns:auto 1fr;align-items:center;gap:2px 8px;min-width:170px;padding:10px;display:grid}.use-soon-rail small{color:var(--muted);grid-column:2}.meal-layout{grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:16px;display:grid}.meal-card-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px;display:grid}.meal-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 10px 24px #2a313814}.meal-image{background:var(--slate-surface);color:#fffdf7;border:0;border-radius:0;width:100%;min-height:160px;padding:0;overflow:hidden}.meal-image img{object-fit:cover;width:100%;height:180px;display:block}.meal-image span{background:linear-gradient(135deg,#287c9fe0,#d6a94fdb),repeating-linear-gradient(45deg,#ffffff1f 0 10px,#0000 10px 20px);place-items:center;width:100%;height:180px;font-size:3.5rem;font-weight:900;display:grid}.meal-card-body{gap:12px;padding:14px;display:grid}.meal-card-title{justify-content:space-between;align-items:start;gap:10px;display:flex}.meal-card-title h2{margin:2px 0 0;font-size:1.05rem;line-height:1.25}.meal-card-title strong{color:var(--green)}.badge-row span,.ingredient-chips span{border-radius:var(--radius-pill);text-overflow:ellipsis;white-space:nowrap;max-width:100%;padding:5px 9px;font-size:.78rem;line-height:1.2;display:inline-block;overflow:hidden}.badge-row span{background:var(--tint-blue-bg);color:var(--tint-blue-text);border:1px solid var(--tint-blue-border)}.chip-have{background:var(--tint-green-bg-strong);color:var(--tint-green-text);border:1px solid var(--tint-green-border)}.chip-missing{background:var(--tint-coral-bg-strong);color:var(--tint-coral-text);border:1px solid var(--tint-coral-border)}.meal-actions{justify-content:space-between}.meal-actions button{flex:auto}.recipes-layout{align-items:start;gap:20px;min-width:0;display:grid}.recipes-browse{gap:16px;min-width:0;display:grid}.recipes-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.recipes-header-text h1{margin:0 0 2px;font-size:1.7rem;line-height:1.1}.recipes-new-button{flex:none}.recipe-toolbar{flex-wrap:wrap;align-items:center;gap:10px;min-width:0;display:flex}.recipe-search-bar{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex:260px;align-items:center;gap:8px;min-width:0;padding:7px 12px;display:flex}.recipe-search-bar:focus-within{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-glow)}.recipe-search-bar svg{color:var(--muted);flex:none}.recipe-search-bar input{min-width:0;color:inherit;background:0 0;border:0;flex:auto;padding:2px 0;font-size:.95rem}.recipe-search-bar input:focus{outline:none}.recipe-cuisine-select,.recipe-filter-select{border:1px solid var(--line);background:var(--panel);max-width:100%;min-height:40px;color:inherit;cursor:pointer;border-radius:8px;flex:none;padding:6px 10px;font-size:.9rem;font-weight:600}.recipe-filter-select:focus-visible{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-glow);outline:none}.recipe-clear-filters{min-height:40px;color:var(--blue);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:8px;flex:none;padding:6px 12px;font-size:.85rem;font-weight:700}.recipe-clear-filters:hover{text-decoration:underline}.recipe-cuisine-picker{flex:0 200px;min-width:0}.recipe-cuisine-picker input[type=search]{border-radius:8px;min-height:40px;font-size:.9rem;font-weight:600}.recipe-cuisine-picker .placement-combobox-results{width:max-content;min-width:100%;max-width:min(340px,100vw - 32px);right:auto}.recipe-cuisine-group+.recipe-cuisine-group{border-top:1px solid var(--line);margin-top:4px;padding-top:4px}.recipe-cuisine-group-label{z-index:1;background:var(--panel);color:var(--muted);letter-spacing:.06em;text-transform:uppercase;padding:6px 10px 4px;font-size:.72rem;font-weight:850;position:sticky;top:-4px}@media (width<=640px){.recipe-cuisine-picker{flex:100%}.recipe-cuisine-picker .placement-combobox-results{width:auto;max-width:100%}}.recipe-card-cost{color:var(--green);letter-spacing:-.04em;font-weight:800}.recipe-filter-toggle{border:1px solid var(--line);background:var(--panel);min-height:40px;color:var(--muted);cursor:pointer;border-radius:8px;flex:none;padding:6px 14px;font-size:.85rem;font-weight:700}.recipe-filter-toggle.active{background:var(--tint-green-bg-strong);border-color:var(--tint-green-border);color:var(--tint-green-text)}.recipe-tag-chips{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.recipe-tag-chip{border:1px solid var(--line);background:var(--panel);border-radius:var(--radius-pill);min-height:30px;color:var(--muted);cursor:pointer;text-transform:capitalize;padding:3px 12px;font-size:.8rem;font-weight:700}.recipe-tag-chip:hover{border-color:var(--line-strong)}.recipe-tag-chip.active{background:var(--tint-blue-bg);border-color:var(--tint-blue-border);color:var(--tint-blue-text)}.recipe-section{gap:12px;min-width:0;display:grid}.recipe-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.recipe-section-head h2{align-items:center;gap:8px;margin:0;font-size:1.15rem;display:flex}.recipe-section-head h2 svg{color:var(--gold)}.recipe-card-grid{grid-template-columns:repeat(auto-fill,minmax(178px,1fr));gap:14px;min-width:0;display:grid}.recipe-rail{scroll-snap-type:x proximity;scrollbar-width:thin;grid-auto-columns:200px;grid-auto-flow:column;gap:14px;padding-bottom:8px;display:grid;overflow-x:auto}.recipe-rail .recipe-card{scroll-snap-align:start}.recipe-card{border:1px solid var(--line);background:var(--panel);color:inherit;border-radius:10px;flex-direction:column;align-items:stretch;min-width:0;text-decoration:none;transition:border-color .12s,transform .12s,box-shadow .12s;display:flex;overflow:hidden}.recipe-card:hover{border-color:var(--green);transform:translateY(-2px);box-shadow:0 10px 24px #2334401a}.recipe-card-media{aspect-ratio:16/10;background:var(--panel-3);position:relative;overflow:hidden}.recipe-card-media img,.recipe-detail-hero-media img,.recipe-preview-media img{object-fit:cover;width:100%;height:100%;display:block}.recipe-image-placeholder{width:100%;height:100%;min-height:92px;color:var(--muted-green);background:linear-gradient(135deg, var(--tint-green-bg) 0%, var(--panel-3) 100%);justify-content:center;align-items:center;display:flex}.recipe-card-featured{border-radius:var(--radius-pill);background:var(--gold-bright);color:#3a2a05;letter-spacing:.02em;align-items:center;gap:4px;padding:3px 8px;font-size:.68rem;font-weight:800;display:inline-flex;position:absolute;top:8px;left:8px;box-shadow:0 2px 6px #0000002e}.recipe-card-body{gap:6px;min-width:0;padding:11px 12px 13px;display:grid}.recipe-card-name{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-height:2.5em;font-size:.96rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}.recipe-card-meta{white-space:nowrap;min-height:1.25em;color:var(--muted);flex-wrap:nowrap;align-items:center;gap:4px 10px;font-size:.8rem;display:flex;overflow:hidden}.recipe-card-meta span{flex:none;align-items:center;gap:3px;display:inline-flex}.recipe-card-cuisine{color:var(--green);font-weight:700}.recipe-card-meta .recipe-card-cuisine{text-overflow:ellipsis;flex:0 auto;min-width:0;display:block;overflow:hidden}.recipe-card-badges{flex-wrap:nowrap;gap:6px;min-height:21px;margin-top:1px;display:flex;overflow:hidden}.recipe-card-badge{border-radius:var(--radius-pill);padding:2px 8px;font-size:.7rem;font-weight:700;line-height:1.3;display:inline-block}.recipe-card-catalog{background:var(--tint-neutral-bg);color:var(--muted);border:1px solid var(--tint-neutral-border)}.recipe-showmore{justify-content:center;padding:4px 0 2px;display:flex}.recipe-showmore button{min-height:40px;padding:8px 22px;font-weight:700}.recipe-add-details summary{align-items:center;gap:6px;font-weight:800;display:flex}.link-button{color:var(--blue);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:700;text-decoration:underline}.recipe-detail-page{gap:16px;min-width:0;max-width:1080px;display:grid}.recipe-detail-topbar{justify-content:space-between;align-items:center;gap:10px;display:flex}.recipe-back-button,.recipe-print-button{width:fit-content}.recipe-detail-status{color:var(--muted);align-items:center;gap:10px;padding:20px 0;display:flex}.recipe-detail-hero{background:var(--panel);border:1px solid var(--line);border-radius:12px;grid-template-columns:minmax(0,360px) minmax(0,1fr);align-items:start;gap:22px;min-width:0;padding:16px;display:grid}.recipe-detail-hero-media{background:var(--panel-3);aspect-ratio:4/3;border-radius:10px;min-height:200px;overflow:hidden}.recipe-detail-hero-content{align-content:start;gap:12px;min-width:0;display:grid}.recipe-detail-badges{flex-wrap:wrap;gap:7px;display:flex}.recipe-badge{border-radius:var(--radius-pill);letter-spacing:.01em;border:1px solid #0000;align-items:center;gap:4px;padding:3px 10px;font-size:.72rem;font-weight:800;display:inline-flex}.recipe-badge-featured{background:var(--tint-gold-bg-strong);border-color:var(--tint-gold-border-strong);color:var(--tint-gold-text)}.recipe-badge-catalog{background:var(--tint-neutral-bg);border-color:var(--tint-neutral-border);color:var(--muted)}.recipe-badge-yours{background:var(--tint-green-bg-strong);border-color:var(--tint-green-border);color:var(--tint-green-text)}.recipe-badge-cuisine{background:var(--tint-blue-bg);border-color:var(--tint-blue-border);color:var(--tint-blue-text)}.recipe-badge-category{background:var(--tint-neutral-bg);border-color:var(--tint-neutral-border);color:var(--slate-surface)}.recipe-stat-cost{letter-spacing:-.02em;color:var(--green)!important;font-weight:800!important}.recipe-detail-hero-content h1{min-width:0;margin:0;font-size:1.9rem;line-height:1.12}.recipe-detail-description{color:var(--muted);max-width:62ch;margin:0;font-size:1rem;line-height:1.5}.recipe-detail-stats{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:8px 18px;padding:10px 0;display:flex}.recipe-detail-stats span{color:var(--ink);align-items:center;gap:6px;font-size:.9rem;font-weight:600;display:inline-flex}.recipe-detail-stats svg{color:var(--green)}.recipe-stat-total{color:var(--green)!important}.recipe-detail-tags{flex-wrap:wrap;gap:6px;display:flex}.recipe-chip{border-radius:var(--radius-pill);background:var(--panel-3);border:1px solid var(--line);color:var(--slate-surface);text-transform:capitalize;padding:2px 10px;font-size:.76rem;font-weight:600;display:inline-block}.recipe-detail-actions{flex-wrap:wrap;gap:10px;margin-top:2px;display:flex}.recipe-detail-links{flex-wrap:wrap;align-items:center;gap:14px;display:flex}.recipe-readonly-note{margin:-4px 0 0}.recipe-availability-strip{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:12px 16px;display:flex}.recipe-add-to-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recipe-list-picker select{max-width:44vw}.recipe-availability-strip.status-ok{background:var(--tint-green-bg);border-color:var(--tint-green-border)}.recipe-availability-strip.status-soon{background:var(--tint-gold-bg);border-color:var(--tint-gold-border)}.recipe-availability-headline{gap:2px;min-width:0;display:grid}.recipe-availability-headline strong{font-size:.98rem}.recipe-detail-body{grid-template-columns:minmax(0,340px) minmax(0,1fr);align-items:start;gap:18px;min-width:0;display:grid}.recipe-detail-aside{min-width:0}.recipe-detail-aside .panel{position:sticky;top:16px}.recipe-detail-main{min-width:0}.recipe-servings-scaler{align-items:center;gap:6px;display:flex}.recipe-servings-value{text-align:center;min-width:34px;font-weight:800}.recipe-scale-reset{width:fit-content;min-height:30px;padding:3px 10px;font-size:.8rem}.recipe-ingredient-list{gap:0;margin:12px 0 0;padding:0;list-style:none;display:grid}.recipe-ingredient-list li{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:8px;padding:9px 0;display:flex}.recipe-ingredient-list li:last-child{border-bottom:0}.recipe-ingredient-main{font-weight:600}.recipe-ingredient-notes{color:var(--muted);width:100%;font-size:.85rem}.recipe-ingredient-linked{border-radius:var(--radius-pill);background:var(--tint-green-bg-strong);border:1px solid var(--tint-green-border);color:var(--tint-green-text);padding:1px 7px;font-size:.68rem;font-weight:700;display:inline-block}.recipe-step-list{counter-reset:recipe-step;gap:16px;margin:14px 0 0;padding:0;list-style:none;display:grid}.recipe-step-list li{grid-template-columns:30px minmax(0,1fr);align-items:start;gap:14px;line-height:1.55;display:grid}.recipe-step-num{background:var(--tint-green-bg-strong);border:1px solid var(--tint-green-border);width:30px;height:30px;color:var(--tint-green-text);border-radius:50%;justify-content:center;align-items:center;font-size:.9rem;font-weight:800;display:flex}.recipe-step-text{padding-top:3px}.recipe-edit-grid{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:10px;display:grid}.recipe-builder-page{gap:16px;min-width:0;max-width:1100px;display:grid}.recipe-builder-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.recipe-builder-head h1{margin:0 0 2px;font-size:1.6rem}.recipe-builder-save{flex:none}.recipe-builder-grid{grid-template-columns:minmax(0,1fr) minmax(0,320px);align-items:start;gap:18px;min-width:0;display:grid}.recipe-builder-form{gap:14px;min-width:0;display:grid}.recipe-builder-card{border:1px solid var(--line);background:var(--panel);border-radius:10px;gap:12px;min-width:0;margin:0;padding:14px 16px 16px;display:grid}.recipe-builder-card legend{margin-left:-6px;padding:0 6px;font-size:1.02rem;font-weight:800}.recipe-builder-card label{color:var(--slate-surface);gap:5px;min-width:0;font-size:.85rem;font-weight:700;display:grid}.recipe-builder-card .field-full{grid-column:1/-1}.recipe-builder-fields{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px;display:grid}.recipe-ing-head{text-transform:uppercase;letter-spacing:.03em;color:var(--muted);grid-template-columns:72px 88px minmax(0,1fr) 38px;gap:8px;padding:0 2px;font-size:.72rem;font-weight:800;display:grid}.recipe-ing-row{grid-template-columns:72px 88px minmax(0,1fr) 38px;align-items:center;gap:8px;display:grid}.recipe-ing-row input{min-width:0;min-height:38px}.recipe-step-row{grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.recipe-step-index{background:var(--tint-green-bg-strong);border:1px solid var(--tint-green-border);width:26px;height:26px;color:var(--tint-green-text);border-radius:50%;justify-content:center;align-items:center;margin-top:6px;font-size:.82rem;font-weight:800;display:flex}.recipe-step-row textarea{resize:vertical;min-width:0}.recipe-step-controls{flex-direction:column;gap:4px;display:flex}.recipe-row-remove:not(:disabled):hover{color:var(--danger)}.recipe-add-row{border:1px dashed var(--line-strong);background:var(--panel-2);min-height:36px;color:var(--green);cursor:pointer;border-radius:8px;justify-self:start;align-items:center;gap:6px;padding:6px 14px;font-size:.85rem;font-weight:700;display:inline-flex}.recipe-add-row:hover{background:var(--tint-green-bg);border-color:var(--green)}.recipe-builder-preview{min-width:0}.recipe-preview-card{border:1px solid var(--line);background:var(--panel);border-radius:12px;position:sticky;top:16px;overflow:hidden}.recipe-preview-media{aspect-ratio:16/10;background:var(--panel-3)}.recipe-preview-body{gap:9px;min-width:0;padding:14px;display:grid}.recipe-preview-name{font-size:1.1rem;font-weight:800;line-height:1.2}.recipe-preview-desc{color:var(--muted);margin:0;font-size:.88rem;line-height:1.45}.recipe-preview-stats,.recipe-preview-counts{flex-wrap:wrap;gap:6px 14px;display:flex}.recipe-preview-stats span,.recipe-preview-counts span{color:var(--slate-surface);align-items:center;gap:5px;font-size:.84rem;font-weight:600;display:inline-flex}.recipe-preview-stats svg,.recipe-preview-counts svg{color:var(--green)}.recipe-preview-counts{border-top:1px solid var(--line);color:var(--muted);padding-top:8px}.recipe-preview-tags{flex-wrap:wrap;gap:5px;display:flex}.recipe-preview-list{color:var(--ink);gap:5px;margin:4px 0 0;padding:0;font-size:.86rem;list-style:none;display:grid}.recipe-preview-list li{border-bottom:1px solid var(--line);padding-bottom:5px}.recipe-preview-list li:last-child{border-bottom:0}@media (width<=900px){.recipe-detail-body{grid-template-columns:1fr}.recipe-detail-aside .panel{position:static}.recipe-builder-grid{grid-template-columns:1fr}.recipe-preview-card{position:static}}@media (width<=620px){.recipe-detail-hero{grid-template-columns:1fr}.recipe-detail-hero-media{max-height:240px}.recipe-detail-hero-content h1{font-size:1.5rem}.recipe-card-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}}@media print{.navigation,.app-header,.recipe-detail-topbar,.recipe-detail-actions,.recipe-availability-strip button,.recipe-showmore{display:none!important}.recipe-detail-hero,.recipe-detail-aside .panel,.recipe-detail-main .panel{box-shadow:none;border:0}.recipe-detail-body{grid-template-columns:1fr}.recipe-detail-page{max-width:none}}.meal-review{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:10px;padding:14px;display:grid;position:sticky;top:18px}.meal-review h2{margin:4px 0 0}.review-metric{border-color:var(--line);background:var(--panel-2)}.review-metric span,.pantry-mini-list small{color:var(--muted)}.pantry-mini-list{gap:8px;display:grid}.pantry-mini-list span{border-color:var(--line);background:var(--panel)}.meal-empty{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-column:1/-1;justify-items:start;gap:10px;padding:24px;display:grid}.meal-drawer{z-index:60;background:#17242d61;align-items:end;padding:18px;display:grid;position:fixed;inset:0}.meal-drawer-panel{background:var(--panel);border:1px solid var(--line);width:min(1100px,100%);max-height:min(88vh,900px);box-shadow:var(--shadow);border-radius:8px;justify-self:center;gap:16px;padding:18px;display:grid;overflow:auto}.drawer-header{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.drawer-header>div{min-width:0}.drawer-header h1{overflow-wrap:anywhere}.asset-detail-title{grid-template-columns:58px minmax(0,1fr);align-items:start;gap:12px;display:grid}.asset-detail-title .asset-row-thumb{width:58px;height:58px;font-size:.9rem}.drawer-header .icon-button,.attachment-viewer-header .icon-button{flex:none;align-self:start}.drawer-actions{justify-content:end;align-items:center;gap:8px;display:flex}.drawer-grid{grid-template-columns:minmax(0,1fr) minmax(260px,360px);gap:16px;display:grid}.asset-detail-panel{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:16px;min-width:0;padding:16px;display:grid;box-shadow:0 8px 22px #2a313814}.asset-detail-empty{align-content:center;min-height:220px}.asset-detail-return{min-height:42px;color:var(--nav-ink);justify-self:start;font-weight:800;display:none}.asset-detail-panel .drawer-grid{grid-template-columns:minmax(0,1fr)}.detail-accordion{border:1px solid var(--line);background:var(--panel-2);border-radius:8px}.detail-accordion>summary{cursor:pointer;align-items:center;gap:8px;min-height:44px;padding:9px 12px;list-style:none;display:flex}.detail-accordion>summary::-webkit-details-marker{display:none}.detail-accordion>summary:after{content:">";color:var(--muted);margin-left:auto;font-size:.8rem;font-weight:900}.detail-accordion[open]>summary:after{content:"v"}.detail-accordion>summary h2{align-items:center;gap:8px;margin:0;font-size:1rem;display:flex}.detail-accordion-body{align-content:start;gap:10px;padding:2px 12px 12px;display:grid}.asset-consumables{gap:12px;margin:0;padding:0;list-style:none;display:grid}.asset-consumables>li{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;justify-items:start;gap:4px;padding:8px 10px;display:grid}.asset-consumable-head{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.asset-consumable-head>span{color:var(--muted)}.asset-consumable-buys{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.asset-consumable-buys-note{color:var(--muted);flex-basis:100%}.asset-consumable-buys>select{max-width:100%}.asset-consumable-override{flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;display:flex}.asset-consumable-override-note{color:var(--muted);flex-basis:100%}.asset-consumable-override>select{max-width:100%}.detail-subheading{align-items:center;gap:8px;margin:8px 0 0;font-size:.95rem;display:flex}.attachment-upload-toggle{justify-self:start;align-items:center;gap:8px;display:inline-flex}.detail-danger-zone.detail-danger-zone{border:1px solid var(--tint-coral-border);background:var(--tint-coral-bg);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;padding:12px;display:flex}.detail-danger-zone .inline-note{margin:2px 0 0}.detail-danger-zone .danger-button{background:var(--panel)}.asset-breadcrumb{flex-wrap:wrap;align-items:center;gap:2px;margin-top:2px;font-size:.8rem;display:flex}.asset-breadcrumb-segment{align-items:center;gap:2px;display:inline-flex}.asset-breadcrumb button{min-height:30px;color:var(--blue);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 5px;font-weight:700}.asset-breadcrumb button:hover,.asset-breadcrumb button:focus-visible{background:var(--tint-blue-bg);text-decoration:underline}.asset-breadcrumb-separator,.asset-breadcrumb-empty{color:var(--muted)}.asset-contains-row{flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;display:flex}.asset-contains-label{color:var(--muted);letter-spacing:.03em;text-transform:uppercase;font-size:.68rem;font-weight:900}.asset-contains-chip{border:1px solid var(--tint-green-border-soft);background:var(--tint-green-bg);border-radius:999px;min-height:30px;padding:3px 10px;font-size:.78rem}.asset-contains-chip:hover{background:var(--tint-green-bg-strong)}.quick-entry-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.place-screen{gap:12px;display:grid}.place-back{justify-self:start;align-items:center;gap:4px;display:inline-flex}.place-meta{gap:6px;display:grid}.place-trail{color:var(--muted);margin:0;font-size:.8rem}.place-facts{color:var(--muted);flex-wrap:wrap;gap:6px 12px;margin:0;font-size:.85rem;display:flex}.place-type{text-transform:capitalize}.place-type.place-type-phrase{text-transform:none}.place-description{margin:0;font-size:.9rem}.place-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.place-actions .button-link{border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--panel);min-height:44px;color:var(--ink);align-items:center;gap:8px;padding:0 16px;font-size:15px;font-weight:600;text-decoration:none}.place-actions .button-link:hover{border-color:var(--green)}.place-children{gap:6px;display:grid}.property-record,.property-record-empty{gap:10px;display:grid}.property-record-facts{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:0;display:grid}.property-record-facts>div{gap:2px;display:grid}.property-record-facts dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.property-record-facts dd{gap:2px;margin:0;display:grid}.property-record-facts dd small{color:var(--muted);font-size:.8rem}.property-record-notes{margin:0}.property-improvements{border-top:1px solid var(--line);gap:8px;padding-top:10px;display:grid}.property-improvement-totals{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;margin:0;display:grid}.property-improvement-totals>div{gap:2px;display:grid}.property-improvement-totals dt{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.78rem}.property-improvement-totals dd{margin:0}.property-improvement-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.property-improvement-list>li{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;gap:4px;padding:8px 10px;display:grid}.property-improvement-row{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.property-improvement-row small{color:var(--muted);margin-left:auto}.property-improvement-diverged{color:var(--gold)}.property-improvement-form{margin:0}.property-improvement-list .property-improvement-form{padding:2px 0}.property-record-empty button{justify-self:start}.place-child-row{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);width:100%;min-height:44px;color:var(--ink);text-align:left;cursor:pointer;align-items:center;gap:10px;padding:8px 12px;display:flex}.place-child-row:hover{border-color:var(--line-strong);background:var(--panel-3,var(--panel))}.place-child-main{flex:auto;gap:2px;min-width:0;display:grid}.place-child-main small{color:var(--muted);font-size:.78rem}.quick-entry-fieldset{border:0;gap:12px;min-width:0;margin:0;padding:0;display:grid}.quick-entry-fieldset:disabled{opacity:.7}.quick-entry-saved{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel-3,var(--panel));flex-wrap:wrap;align-items:center;gap:10px;padding:10px 12px;display:flex}.quick-entry-saved-note{color:var(--ink);flex:240px;align-items:center;gap:8px;margin:0;font-size:.85rem;display:flex}.quick-entry-saved-note svg{color:var(--green,#2f6a52);flex:none}.destination-cue,.placement-unplaced-note,.inventory-flow-note,.inventory-draft-restored{flex-wrap:wrap;align-items:center;gap:4px 8px;margin:0;display:flex}.destination-cue-clear{min-height:24px;color:var(--muted);cursor:pointer;background:0 0;border:none;align-items:center;padding:2px 4px;display:inline-flex}.inventory-draft-restored .link-button{min-height:24px;padding:0 4px}.inventory-unsaved-entry{border:1px solid var(--tint-coral-border);background:var(--tint-coral-bg);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:10px;display:grid}.inventory-unsaved-entry-icon{width:38px;height:38px;color:var(--danger);border-radius:8px;place-items:center;display:grid}.inventory-unsaved-entry-body{gap:2px;min-width:0;display:grid}.inventory-unsaved-entry-body strong{color:var(--danger)}.inventory-unsaved-entry-body small{color:var(--muted);font-weight:700}.inventory-unsaved-entry-actions{flex-wrap:wrap;gap:8px;display:flex}.inventory-unsaved-entry-actions button{min-height:36px;padding:6px 10px}.inventory-draft-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.inventory-draft-list li{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.inventory-draft-list li>span:first-child{gap:2px;min-width:0;display:grid}.inventory-draft-list li small{color:var(--muted)}.inventory-draft-actions{align-items:center;gap:6px;display:inline-flex}.inventory-definition-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.inventory-definition-list li{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.inventory-definition-list li>span:first-child{gap:2px;min-width:0;display:grid}.inventory-definition-list li small{color:var(--muted)}.inventory-template-suggestion,.inventory-scan-code,.inventory-scan-note{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.inventory-catalog-filters{flex-wrap:wrap;align-items:flex-end;gap:10px;margin-bottom:10px;display:flex}.inventory-catalog-filters>label{gap:4px;min-width:0;display:grid}.inventory-catalog-filters>label:first-child{flex:220px}.inventory-catalog-filters>label:first-child input{width:100%}.inventory-definition-properties{gap:8px;display:grid}.inventory-definition-property-row{grid-template-columns:minmax(90px,1fr) minmax(110px,1.2fr) auto minmax(80px,1fr) auto auto;align-items:center;gap:6px;display:grid}@media (width<=700px){.inventory-definition-property-row{grid-template-columns:1fr 1fr}}.inventory-definition-property-row>.inventory-definition-property-constraints{border-left:2px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));align-items:end;gap:6px 10px;padding-left:10px;display:grid}.inventory-definition-property-row>.inventory-definition-property-visibility{border-left:2px solid var(--line);grid-column:1/-1;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));align-items:end;gap:6px 10px;padding-left:10px;display:grid}.definition-property-fields{display:contents}.input-with-unit{align-items:center;gap:6px;display:flex}.input-with-unit>input{flex:auto;min-width:0}.input-unit{color:var(--muted);white-space:nowrap;font-size:.85rem}.inventory-definition-category-path{gap:4px;margin:10px 0;display:grid}.inventory-definition-category-path>.inline-label{font-weight:600}.inventory-definition-category-levels{flex-wrap:wrap;gap:6px;display:flex}.inventory-definition-category-levels>span{flex:150px;min-width:0}.inventory-sync-preview{border:1px solid var(--tint-gold-border-strong,var(--line));background:var(--tint-gold-bg,var(--panel-2));border-radius:8px;gap:8px;padding:10px 12px;display:grid}.inventory-sync-preview ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.inventory-sync-preview small{color:var(--muted);padding-left:24px;display:block}.inventory-sync-schedules{border-top:1px solid var(--line);gap:6px;padding-top:8px;display:grid}.inventory-sync-schedules ul{gap:6px;margin:0;padding:0;list-style:none;display:grid}.add-maintenance-offer{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;gap:6px;margin:0;padding:8px 12px 10px;display:grid}.add-maintenance-offer-line{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.add-maintenance-offer-line>.checkbox-line{flex:220px;min-width:0}.add-maintenance-offer-line>input[type=date]{flex:none;width:auto}.add-maintenance-offer>legend{color:var(--muted);padding:0 4px;font-size:.85rem}.asset-attributes{border-top:1px solid var(--line);gap:8px;padding-top:8px;display:grid}.asset-attributes-extra{gap:4px;margin:0;display:grid}.asset-attributes-extra div{gap:8px;display:flex}.asset-attributes-extra dt{color:var(--muted);font-weight:700}.asset-attributes-extra dd{overflow-wrap:anywhere;margin:0}.asset-split-row{border-top:1px solid var(--line);gap:6px;padding-top:10px;display:grid}.asset-split-row input[type=number]{width:90px}.service-record-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.service-record-row{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.service-record-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.service-record-cost{font-variant-numeric:tabular-nums;white-space:nowrap}.service-record-form input[name=currency]{text-transform:uppercase;width:5.5em}.asset-valuation-history{margin-top:12px}.asset-valuation-history ul{gap:6px;margin:6px 0 0;padding:0;list-style:none;display:grid}.asset-valuation-history li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:4px 10px;padding-top:6px;font-size:.9em;display:flex}.asset-valuation-history li>span:first-child{color:var(--muted);white-space:nowrap}.asset-valuation-history li>span:not(:first-child){color:var(--muted)}.asset-depreciation-details .asset-effective-value{color:var(--ink);margin-top:10px}.asset-loan-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.asset-loan-row,.asset-loan-open{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.asset-loan-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.asset-loan-state{white-space:nowrap;color:var(--muted);font-size:.85em}.asset-loan-state.overdue{color:var(--danger);font-weight:600}.asset-loan-state.due_today{font-weight:600}.asset-loan-row.is-overdue,.asset-loan-open.is-overdue{border-left:3px solid var(--danger);padding-left:8px}.inventory-loans-panel .asset-loan-list{margin-top:0}.inventory-loans-panel .asset-loan-head{justify-content:flex-start}.maintenance-schedule-list,.maintenance-due-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.maintenance-schedule-row,.maintenance-due-row{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.maintenance-schedule-head,.maintenance-due-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.maintenance-state{white-space:nowrap;color:var(--muted);font-size:.85em}.maintenance-state.overdue{color:var(--danger);font-weight:600}.maintenance-state.due_today{font-weight:600}.maintenance-schedule-row.is-overdue,.maintenance-due-row.is-overdue{border-left:3px solid var(--danger);padding-left:8px}.inventory-maintenance-panel .maintenance-due-list{margin-top:0}.inventory-maintenance-panel .maintenance-due-head{justify-content:flex-start}.maintenance-service-offer{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.asset-listing-list,.asset-sale-board-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.asset-listing-row{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.asset-listing-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.asset-listing-state{white-space:nowrap;color:var(--muted);font-size:.85em}.asset-listing-state.active,.asset-listing-state.pending{color:var(--ink);font-weight:600}.asset-listing-state.sold{font-weight:600}.asset-listing-row.status-sold{border-left:3px solid var(--green);padding-left:8px}.asset-sale-record{gap:6px;margin-top:6px;display:grid}.asset-sale-figures{flex-wrap:wrap;gap:4px 18px;display:flex}.asset-sale-figures>span{gap:2px;display:grid}.asset-sale-figures small{color:var(--muted)}.asset-sale-figures .is-gain strong,.is-gain{color:var(--green)}.asset-sale-figures .is-loss strong,.is-loss{color:var(--danger)}.asset-sale-totals{flex-wrap:wrap;gap:6px 24px;margin:10px 0 0;padding:0;list-style:none;display:flex}.asset-sale-totals li{gap:2px;display:grid}.asset-sale-totals small{color:var(--muted)}.asset-sale-board-panel .asset-listing-head{justify-content:flex-start}.inventory-loans-panel>.inline-note:last-child{margin-top:12px}.asset-warranty-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.asset-warranty-row,.asset-warranty-summary{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.asset-warranty-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.asset-warranty-state{white-space:nowrap;color:var(--muted);font-size:.85em}.asset-warranty-state.expired{color:var(--danger);font-weight:600}.asset-warranty-state.expiring{font-weight:600}.asset-warranty-row.is-expired,.asset-warranty-summary.is-expired{border-left:3px solid var(--danger);padding-left:8px}.asset-warranty-receipt{align-items:center;gap:6px;display:flex}.inventory-warranties-panel .asset-warranty-list{margin-top:0}.inventory-warranties-panel .asset-warranty-head{justify-content:flex-start}.inventory-warranties-panel>.inline-note:last-child{margin-top:12px}.asset-warranty-lead-form{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.asset-warranty-lead-form input[name=warrantyReminderLeadDays]{width:6em}.asset-recall-list{gap:14px;margin:10px 0 0;padding:0;list-style:none;display:grid}.asset-recall-row{border-top:1px solid var(--line);border-left:3px solid var(--danger);gap:4px;padding-top:10px;padding-left:8px;display:grid}.asset-recall-row.is-dismissed{border-left-color:var(--line);opacity:.72}.asset-recall-head{flex-wrap:wrap;justify-content:flex-start;align-items:baseline;gap:10px;display:flex}.asset-recall-strategy{white-space:nowrap;color:var(--muted);font-size:.85em}.asset-recall-strategy.brand_model{font-style:italic}.asset-recall-title{margin:0;font-weight:600}.asset-recall-hazard,.asset-recall-remedy{margin:0;font-size:.92em}.asset-recall-hazard{color:var(--danger)}.asset-recall-remedy{color:var(--muted)}.asset-recall-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.asset-recall-enable{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.asset-recall-feed{margin-top:6px}.inventory-recalls-panel .asset-recall-list{margin-top:0}.inventory-recalls-panel>.inline-note:last-child{margin-top:12px}.asset-documentation-list{gap:14px;margin:10px 0 0;padding:0;list-style:none;display:grid}.asset-documentation-row{border-top:1px solid var(--line);border-left:3px solid var(--gold);gap:4px;padding-top:10px;padding-left:8px;display:grid}.asset-documentation-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px;display:flex}.asset-documentation-value{white-space:nowrap;color:var(--muted);font-size:.92em}.asset-documentation-meta{color:var(--muted)}.asset-documentation-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.asset-documentation-fix{align-items:center;gap:6px;display:inline-flex}.asset-documentation-threshold input{max-width:10rem}.asset-documentation-counts,.asset-documentation-truncated,.asset-documentation-unvalued{margin-top:8px}.inventory-documentation-panel .asset-documentation-list{margin-top:0}.inventory-documentation-panel>.inline-note:last-child{margin-top:12px}.asset-documentation-currency+.asset-documentation-currency{margin-top:18px}.inventory-belongings-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.inventory-claim-bundle-controls{flex-wrap:wrap;align-items:flex-end;gap:10px;margin:10px 0;display:flex}.inventory-claim-bundle-controls .inventory-sort-select{flex-direction:column;flex:0 auto;align-items:stretch;gap:4px;min-width:0}.inventory-claim-bundle-controls .inventory-sort-select select{max-width:100%}.inventory-search-combobox{min-width:0;position:relative}.jump-to-results{z-index:45}.jump-to-results-heading{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:6px;margin:0;padding:6px 10px 2px;font-size:.72rem;font-weight:800;display:flex}@keyframes inventory-reveal-flash{0%{box-shadow:0 0 0 3px var(--blue)}70%{box-shadow:0 0 0 3px var(--blue)}to{box-shadow:0 0 0 3px #0000}}.tree-row.reveal-flash{animation:1.8s ease-out inventory-reveal-flash}.asset-photo-manager{border:1px solid var(--line);background:var(--tint-green-soft);border-radius:8px;gap:10px;padding:12px;display:grid}.asset-photo-manager-header{gap:2px;display:grid}.asset-photo-manager-header small{color:var(--muted)}.drawer-grid section,.cooking-mode-preview{align-content:start;gap:10px;display:grid}.cook-confirm{background:var(--panel);border:1px solid var(--line);border-radius:8px;padding:12px}.cooking-mode-preview{background:var(--media-surface);color:#fffdf7;white-space:pre-wrap;border-radius:8px;padding:18px;font-size:1.05rem;line-height:1.6}.chores-page{gap:14px;display:grid}.chore-view-tabs{flex-wrap:wrap;gap:8px;display:flex}.chore-view-tabs button{min-height:42px}.chore-view-tabs .active,.status-pill{background:var(--nav);color:#fff;border-color:var(--nav)}.section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.chore-stats-strip{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-wrap:wrap;align-items:center;gap:8px 18px;padding:9px 14px;display:flex}.chore-stat{min-width:0;color:var(--muted);align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:inline-flex}.chore-stat strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;max-width:18ch;font-size:.92rem;overflow:hidden}.chore-stat svg{color:var(--muted-green);flex:none}.chore-screen{gap:16px;min-width:0;max-width:100%;display:grid}.chore-layout{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px;display:grid}.chore-create-layout{grid-template-columns:minmax(0,1fr);justify-self:center;align-items:start;gap:14px;width:100%;max-width:780px;display:grid}.chore-detail-layout{grid-template-columns:minmax(0,7fr) minmax(300px,5fr);align-items:start;gap:16px;width:100%;max-width:1200px;display:grid}.chore-detail-main,.chore-detail-side{align-items:start;gap:16px;min-width:0;display:grid}.chore-back-button{min-height:40px;color:var(--nav-ink);background:0 0;border-color:#0000;grid-column:1/-1;justify-self:start;padding-inline:0;font-weight:800}.chore-back-button:hover{color:var(--blue);background:0 0;border-color:#0000}.chore-main,.chore-side,.chore-list,.chore-template-column{gap:12px;display:grid}.chore-form{grid-template-columns:repeat(2,minmax(0,1fr))}.chore-side .chore-form{grid-template-columns:1fr}.chore-create-attachments{border-block:1px solid var(--line);gap:9px;padding:12px 0;display:grid}.chore-attachment-heading{color:var(--nav-ink);align-items:center;gap:8px;font-size:.9rem;display:inline-flex}.compact-form{margin-bottom:12px}.wide{grid-column:1/-1}.chore-toolbar-count{color:var(--muted);margin-top:3px;font-size:.78rem;font-weight:700;display:block}.chore-queue-tree{gap:5px}.chore-group-row{background:var(--tint-green-bg)}.chore-row{min-height:54px}.chore-row.today .chore-state-rail:before{background:var(--gold)}.chore-row.overdue .chore-state-rail:before{background:var(--coral)}.chore-row.completed .chore-state-rail:before{background:var(--green)}.chore-row.skipped .chore-state-rail:before{background:var(--muted)}.chore-row-thumb.today{background:var(--tint-gold-bg-strong);border-color:var(--tint-gold-border);color:var(--tint-gold-text)}.chore-row-thumb.overdue{background:var(--tint-coral-bg-strong);border-color:var(--tint-coral-border);color:var(--danger)}.chore-row-thumb.upcoming{background:var(--tint-blue-bg);border-color:var(--tint-blue-border);color:var(--tint-blue-text)}.chore-row-thumb.completed{background:var(--tint-green-bg-strong);border-color:var(--tint-green-border);color:var(--green)}.chore-row-thumb.skipped{background:var(--tint-neutral-bg);border-color:var(--tint-neutral-border);color:var(--muted)}.chore-row-main-button{text-align:left;background:0 0;border:0;border-radius:0;justify-content:stretch;width:100%;min-width:0;min-height:0;padding:0}.chore-row-main-button:hover{background:0 0;border-color:#0000}.chore-row-main-button .asset-row-main{gap:3px;width:100%;min-width:0;display:grid}.chore-row-main-button .asset-title-line{flex-wrap:wrap;align-items:center;gap:5px;min-width:0;display:flex}.chore-row-main-button .asset-title-line strong{overflow-wrap:anywhere;white-space:normal;flex:8rem;min-width:0;overflow:visible}.chore-row-main-button .asset-row-meta{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.chore-row-badge{text-transform:capitalize}.chore-row-badge.overdue{background:var(--tint-coral-bg-strong);color:var(--danger)}.chore-row-badge.today{background:var(--tint-gold-bg-strong);color:var(--tint-gold-text)}.chore-row-badge.completed{background:var(--tint-green-bg-strong);color:var(--green)}.chore-row-badge.skipped{background:var(--tint-neutral-bg);color:var(--muted)}.chore-row-actions{justify-content:flex-end;align-items:center;gap:4px;min-width:max-content;display:flex}.chore-row-open-button,.chore-actions.compact button{width:34px;min-width:34px;height:34px;min-height:34px;padding:0}.chore-row-open-button{color:var(--muted-green)}.chore-detail-summary{gap:10px;margin-bottom:14px;display:grid}.chore-detail-summary p{color:var(--muted)}.chore-detail-summary small{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chore-card{background:var(--tint-gold-soft);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:8px;gap:10px;padding:12px;display:grid}.chore-card.overdue{border-left-color:var(--coral)}.chore-card.today{border-left-color:var(--gold)}.chore-card-main,.template-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.chore-card h3{margin:6px 0;font-size:1.05rem}.chore-card p{color:var(--muted);margin:0}.chore-card small{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.chore-actions{flex-wrap:wrap;gap:6px;display:flex}.chore-actions button{gap:5px;min-height:42px;padding:6px 8px;font-size:.78rem}.chore-list-screen{gap:12px}.chore-list-action-row{grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:8px;display:grid}.chore-list-action-row .search-box{min-width:0;min-height:44px;margin-bottom:0}.chore-list-action-row .primary{white-space:nowrap;min-width:96px;min-height:44px}.chore-tree-panel{padding:12px}.chore-tree-panel>h2:empty{display:none}.chore-list-heading-row{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex;position:relative}.chore-list-heading-row h2{margin:0;font-size:1.12rem;line-height:1.12}.list-filter{flex:none;position:relative}.list-filter-trigger{min-height:38px;color:var(--nav-ink);padding:7px 10px;font-weight:750}.list-filter-trigger.has-filters{background:var(--tint-green-bg-strong);border-color:var(--tint-green-border);color:var(--green)}.list-filter-panel{z-index:30;border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:10px;width:min(292px,100vw - 36px);padding:12px;display:grid;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 34px #1229332e}.filter-chip-grid{gap:7px;display:grid}.filter-chip-grid label{border:1px solid var(--line);background:var(--panel-2);min-height:38px;color:var(--ink);border-radius:8px;grid-template-columns:none;align-items:center;gap:8px;padding:7px 9px;font-weight:700;display:flex}.filter-chip-grid input{width:auto;min-height:0;accent-color:var(--green)}.filter-field{gap:5px;display:grid}.filter-result-note{color:var(--muted);margin:0;font-size:.78rem;font-weight:700}.chore-row{cursor:pointer;grid-template-columns:16px 38px minmax(0,1fr) auto}.chore-row:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.chore-row-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:3px 12px;font-size:.76rem;font-weight:700;line-height:1.3;display:flex}.chore-row-meta>span{align-items:center;gap:4px;min-width:0;display:inline-flex}.chore-about-chip{border:1px solid var(--tint-green-border,var(--line));background:var(--tint-green-bg,transparent);min-width:0;max-width:220px;color:inherit;font:inherit;white-space:nowrap;text-overflow:ellipsis;border-radius:999px;align-items:center;gap:4px;min-height:0;padding:1px 8px;display:inline-flex;overflow:hidden}.chore-about-chip:hover{color:var(--nav-ink)}.chore-row-due.overdue{color:var(--danger)}.chore-row-due.today{color:var(--tint-gold-text)}.chore-repeat-mark{color:var(--muted);align-items:center;display:inline-flex}.chore-priority-badge.high,.chore-priority-badge.urgent{background:var(--tint-coral-bg-strong);color:var(--danger)}.chore-priority-badge.low{background:var(--tint-neutral-bg);color:var(--muted)}.chore-more-badge{background:var(--tint-blue-bg);color:var(--tint-blue-text)}.chore-complete-button{border:2px solid var(--tint-green-border);background:var(--panel);width:38px;min-width:38px;height:38px;min-height:38px;color:var(--muted-green);border-radius:50%;align-self:center;padding:0}.chore-complete-button:hover,.chore-complete-button:focus-visible{border-color:var(--green);background:var(--tint-green-bg-strong);color:var(--green)}.row-updated-time,.activity-time{min-height:0;color:var(--muted);font:inherit;font-weight:800;line-height:inherit;background:0 0;border:0;border-radius:0;padding:0}.row-updated-time:hover,.activity-time:hover{color:var(--nav-ink);border-color:#0000;text-decoration:underline}.chore-category-photo-icon{object-fit:cover;width:100%;height:100%}.chore-create-panel,.chore-detail-panel{padding:12px}.chore-create-panel>h2,.chore-detail-panel>h2{margin-bottom:10px}.chore-form{gap:9px}.chore-form textarea{min-height:82px}.due-picker-field,.category-picker-field{color:var(--muted);gap:6px;font-size:.88rem;display:grid;position:relative}.due-picker-label,.category-picker-field>span{font-weight:700}.due-picker-trigger,.category-picker-trigger{border-color:var(--line);background:var(--panel);min-height:44px;color:var(--ink);justify-content:space-between;padding-inline:10px}.due-picker-trigger-main,.category-trigger-main{align-items:center;gap:8px;min-width:0;font-weight:800;display:inline-flex}.due-picker-trigger.invalid{border-color:var(--danger);background:var(--tint-coral-bg-strong)}.due-picker-hint{color:var(--danger);font-size:.78rem;font-weight:700}.due-picker-time{color:var(--muted);font-weight:800}.due-picker-panel,.category-picker-panel{z-index:35;border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:10px;padding:10px;display:grid;position:absolute;top:calc(100% + 7px);left:0;right:0;box-shadow:0 16px 34px #1229332e}.due-picker-input-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;display:grid}.category-picker-panel{grid-template-rows:auto minmax(0,1fr) auto;max-height:min(430px,76dvh);overflow:hidden}.category-search-box{border:1px solid var(--line);background:var(--panel);border-radius:8px;grid-template-columns:none;align-items:center;gap:7px;min-height:38px;padding:0 9px;display:flex}.category-search-box input{background:0 0;border:0;padding-inline:0}.category-option-list{gap:5px;padding-right:2px;display:grid;overflow:auto}.category-option-row,.category-create-button{text-align:left;justify-content:flex-start;gap:9px;min-height:42px}.category-option-row[aria-pressed=true]{background:var(--tint-blue-bg);border-color:var(--blue);color:var(--nav-ink)}.category-option-icon{border:1px solid var(--tint-green-border-soft);background:var(--tint-green-soft);width:30px;height:30px;color:var(--nav-ink);border-radius:8px;flex:0 0 30px;place-items:center;display:grid;overflow:hidden}.material-symbol-icon{letter-spacing:0;text-transform:none;white-space:nowrap;font-variation-settings:"FILL" 0, "wght" 400, "GRAD" 0, "opsz" 24;font-family:Material Symbols Rounded,sans-serif;font-size:21px;font-weight:400;line-height:1}.category-create-button{background:var(--panel);color:var(--green);font-weight:800;position:sticky;bottom:0}.category-modal-backdrop,.draft-modal-backdrop,.delete-modal-backdrop{z-index:80;background:#12293357;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.category-modal,.draft-modal,.delete-modal{border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:12px;width:min(100%,440px);max-height:min(88dvh,620px);padding:16px;display:grid;overflow:auto;box-shadow:0 20px 48px #1229333d}.category-modal h3,.draft-modal h3,.delete-modal h3{margin:0}.category-create-form{gap:10px;display:grid}.google-icon-status{color:var(--muted);margin:0;font-size:.8rem}.google-icon-grid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:7px;max-height:210px;display:grid;overflow:auto}.google-icon-option{min-width:0;min-height:44px;padding:0}.google-icon-option[aria-pressed=true]{background:var(--tint-blue-bg);border-color:var(--blue);color:var(--nav-ink)}.category-modal-actions,.draft-modal-actions,.delete-modal-actions,.create-action-row{gap:8px;display:grid}.create-action-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.draft-status{color:var(--green);margin:0;font-size:.82rem;font-weight:800}.recurrence-builder{border:0;gap:8px;margin:0;padding:0;display:grid}.recurrence-builder legend{color:var(--muted);padding:0;font-size:.88rem;font-weight:700}.recurrence-panel{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;gap:9px;padding:10px;display:grid}.recurrence-inline{color:var(--muted);grid-template-columns:auto 74px minmax(0,1fr);align-items:center;gap:7px;display:grid}.recurrence-label{color:var(--muted);margin-bottom:6px;font-size:.88rem;font-weight:700;display:block}.weekday-chip-row{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;display:grid}.weekday-chip{min-width:0;display:block}.weekday-chip input{opacity:0;pointer-events:none;position:absolute}.weekday-chip span{border:1px solid var(--line);background:var(--panel);min-height:34px;color:var(--ink);border-radius:8px;place-items:center;font-size:.78rem;font-weight:800;display:grid}.weekday-chip input:checked+span{background:var(--tint-blue-bg);border-color:var(--blue);color:var(--nav-ink)}.ends-radio-group{gap:6px;display:grid}.ends-option{min-height:34px;color:var(--ink);grid-template-columns:none;align-items:center;gap:8px;display:flex}.ends-option input{width:auto;min-height:0;accent-color:var(--green)}.recurrence-preview{color:var(--nav-ink);margin:0;font-size:.84rem;font-weight:800;line-height:1.35}.chore-detail-summary{border-bottom:1px solid var(--line);padding-bottom:12px}.detail-field-list{display:grid}.detail-field{border-bottom:1px solid var(--line)}.detail-field-read{grid-template-columns:minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:56px;padding:9px 0;display:grid}.detail-field-main{gap:3px;min-width:0;display:grid}.detail-label{color:var(--muted);font-size:.78rem;font-weight:800}.detail-value{color:var(--ink);overflow-wrap:anywhere;font-size:.98rem;font-weight:650;line-height:1.35}.detail-category-value{align-items:center;gap:6px;display:inline-flex}.detail-category-value svg{color:var(--muted-green)}.detail-edit-button{width:34px;min-width:34px;min-height:34px;color:var(--muted);background:0 0;border-color:#0000;padding:0}.detail-edit-button:hover{background:var(--tint-blue-bg);border-color:var(--tint-blue-border);color:var(--nav-ink)}.detail-field-edit{gap:8px;padding:9px 0;display:grid}.detail-field-actions{justify-content:flex-end;display:flex}.attachment-form{gap:8px;margin-bottom:10px;display:grid}.attachment-upload-stack{gap:10px;margin-bottom:10px;display:grid}.attachment-upload-stack .attachment-form{margin-bottom:0}.manual-pages-form{border-top:1px solid var(--line);padding-top:10px}.manual-page-label{flex:190px;min-width:min(100%,190px)}.manual-page-queue{gap:6px;margin:0;padding:0;list-style:none;display:grid}.manual-page-queue li{border:1px solid var(--line);background:var(--panel-2);border-radius:8px;grid-template-columns:auto minmax(0,1fr) 34px;align-items:center;gap:8px;min-height:38px;padding:5px 6px 5px 10px;display:grid}.manual-page-queue span{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:800}.manual-page-queue strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.86rem;overflow:hidden}.manual-page-remove{width:32px;min-width:32px;min-height:32px;padding:0}.chore-activity-section{gap:10px;display:grid}.chore-activity-section h2{margin:0}.chore-comment-form{gap:7px;display:grid}.comment-composer-shell{grid-template-columns:minmax(0,1fr) 44px;align-items:end;gap:8px;display:grid;position:relative}.comment-input-pill{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:end;gap:6px;min-height:44px;padding:5px 6px 5px 11px;display:flex}.comment-input-pill textarea{resize:none;background:0 0;border:0;border-radius:0;flex:1;min-height:32px;max-height:104px;padding:5px 0}.comment-attach-button{width:34px;min-width:34px;min-height:34px;color:var(--muted);background:0 0;border-color:#0000;padding:0}.comment-send-button{border-color:var(--green);background:var(--green);color:#fff;width:44px;min-width:44px;min-height:44px;padding:0}.comment-send-button[hidden]{display:none}.comment-composer-shell:not(.has-send){grid-template-columns:minmax(0,1fr)}.comment-attach-menu{z-index:25;border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:6px;width:min(230px,78vw);padding:8px;display:grid;position:absolute;top:calc(100% + 7px);right:0;box-shadow:0 14px 28px #1229332e}.comment-attach-menu label{min-height:38px;color:var(--ink);cursor:pointer;grid-template-columns:none;align-items:center;gap:8px;font-weight:750;display:flex}.comment-attach-menu .file-action{border:0;justify-content:flex-start;min-height:38px;padding:0}.comment-attach-menu input{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.comment-attachment-note{color:var(--muted);margin:0;font-size:.78rem;font-weight:700}.activity-feed{border-top:1px solid var(--line);gap:0;display:grid}.activity-line{border-bottom:1px solid var(--line);min-height:42px;color:var(--ink);cursor:pointer;background:0 0;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;gap:8px;padding:8px 0;display:grid}.activity-line:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.activity-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;min-width:0;line-height:1.35;display:-webkit-box;overflow:hidden}.activity-line.expanded .activity-text{display:block;overflow:visible}.status-pill{border-radius:var(--radius-pill);text-transform:capitalize;text-overflow:ellipsis;white-space:nowrap;width:fit-content;max-width:100%;padding:4px 8px;font-size:.78rem;font-weight:700;display:inline-block;overflow:hidden}.projects-page,.project-main,.project-side{gap:10px;display:grid}.project-layout{grid-template-columns:minmax(270px,320px) minmax(0,1fr);align-items:start;gap:12px;display:grid}.project-selector,.project-overview,.project-section,.project-action-form{background:var(--panel);border:1px solid var(--line);border-radius:6px;box-shadow:0 6px 16px #2a313812}.project-selector{gap:8px;padding:10px;display:grid}.project-selector-head,.project-titlebar,.project-section-head{justify-content:space-between;align-items:start;gap:10px;display:flex}.project-selector-head{align-items:center}.project-selector-head h2,.project-titlebar h2{margin:0}.compact-action{min-height:36px;padding:7px 10px}.project-list{gap:6px;display:grid}.project-list-item{background:var(--panel-2);border:1px solid var(--line);border-radius:6px;padding:0}.project-list-item.active{border-color:var(--green);box-shadow:inset 3px 0 0 var(--green)}.project-list-item button{text-align:left;background:0 0;border:0;border-radius:5px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:6px 8px;width:100%;padding:8px;display:grid}.project-list-main,.project-list-stats,.project-context-line,.project-row-meta{flex-wrap:wrap;align-items:center;gap:5px 8px;min-width:0;display:flex}.project-list-main{gap:2px;display:grid}.project-list-main strong,.project-titlebar h2,.project-data-row strong{overflow-wrap:anywhere}.project-list-main small,.project-list-stats small,.project-context-line,.project-row-meta,.project-data-row small,.project-empty{color:var(--muted)}.project-overview{gap:10px;padding:12px;display:grid}.project-titlebar h2{margin:2px 0 4px;font-size:1.5rem;line-height:1.15}.project-context-line span{align-items:center;gap:4px;display:inline-flex}.project-cost-line{flex-wrap:wrap}.project-cost-seg{white-space:nowrap}.project-section-actions,.project-form-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.project-section-actions button,.project-section-head>button{min-height:40px;padding:7px 10px}.project-overview-settings{border-top:1px solid var(--line);padding-top:8px}.project-overview-settings summary{width:fit-content;min-height:38px;color:var(--nav-ink);cursor:pointer;align-items:center;gap:6px;font-weight:800;display:inline-flex}.project-overview-controls{grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:8px;margin-top:8px;display:grid}.project-sections{gap:10px;display:grid}.project-section{gap:8px;padding:10px;display:grid}.project-section-head{align-items:center}.project-section-head h3{align-items:start;gap:7px;margin:0;font-size:.95rem;display:inline-flex}.project-section-head h3 span{background:var(--tint-blue-bg);min-width:24px;min-height:22px;color:var(--nav-ink);border-radius:6px;place-items:center;font-size:.75rem;display:inline-grid}.project-table{border-top:1px solid var(--line);display:grid}.project-data-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:48px;padding:8px 0;display:grid}.project-row-link,.project-row-buttons{flex-wrap:wrap;justify-content:end;align-items:center;gap:6px;display:inline-flex}.project-row-link{min-height:36px;color:var(--nav-ink);font-weight:800;text-decoration:none}.project-row-link.inline{justify-content:start;margin-top:5px}.project-row-buttons button{min-height:34px;padding:6px 8px}.project-row-meta{margin-top:4px;font-size:.78rem}.project-row-meta span{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;align-items:center;min-height:24px;padding:2px 6px;display:inline-flex}.project-empty{border-top:1px solid var(--line);padding-top:8px;font-size:.88rem}.project-form{grid-template-columns:repeat(2,minmax(0,1fr))}.project-action-form{gap:12px;padding:12px;display:grid}.project-form-actions{border-top:1px solid var(--line);justify-content:end;padding-top:10px}.feature-tabs{background:var(--panel);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;grid-column:1/-1;gap:8px;padding:8px;display:flex}.feature-tabs button.active{background:var(--nav);border-color:var(--nav);color:#fff}@media (width<=560px){.feature-tabs{overscroll-behavior-x:contain;scrollbar-width:none;flex-wrap:nowrap;overflow-x:auto}.feature-tabs::-webkit-scrollbar{display:none}.feature-tabs button{white-space:nowrap;flex:none}}.feedback-page,.feedback-layout,.feedback-form,.feedback-list{gap:16px;display:grid}.feedback-layout{grid-template-columns:minmax(300px,420px) minmax(0,1fr);align-items:start}.feedback-form{gap:12px}.feedback-type-grid{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0;padding:0;display:grid}.feedback-type-grid legend{color:var(--muted);margin-bottom:7px;font-size:.88rem;font-weight:800}.feedback-type-grid label{border:1px solid var(--line);cursor:pointer;text-align:center;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:46px;padding:9px 10px;display:flex}.feedback-type-grid label.active{border-color:var(--blue);color:var(--nav-ink);background:#246f971a}.feedback-type-grid input{opacity:0;pointer-events:none;width:1px;position:absolute}.feedback-form textarea{min-height:168px}.feedback-upload{border:1px dashed var(--line);color:var(--ink);cursor:pointer;border-radius:8px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-height:58px;padding:12px;display:grid}.feedback-upload input{grid-column:1/-1}.feedback-file-list,.feedback-file-list span{background:var(--panel-2);border:1px solid var(--line);color:var(--ink);border-radius:8px;align-items:center;gap:6px;max-width:100%;min-height:36px;padding:6px 9px;text-decoration:none;display:inline-flex}.feedback-file-list span span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.feedback-file-list small{color:var(--muted);font-weight:700}.feedback-result{border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;display:flex}.feedback-result.success,.feedback-sync-pill.success{color:var(--green);background:#2473581a}.feedback-result.failed,.feedback-sync-pill.failed{color:var(--danger);background:#b9423f1a}.feedback-result.pending,.feedback-sync-pill.pending{color:var(--tint-gold-text);background:#bd8f221f}.feedback-result.muted,.feedback-sync-pill.muted{background:var(--panel-3);color:var(--muted)}.feedback-row{border-bottom:1px solid var(--line);gap:10px;padding:0 0 14px;display:grid}.feedback-row:last-child{border-bottom:0;padding-bottom:0}.feedback-row-main{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px;display:grid}.feedback-row h3{color:var(--ink);overflow-wrap:anywhere;margin:6px 0 2px;font-size:1rem}.feedback-row p{color:var(--muted);overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.feedback-row small{color:var(--muted)}.feedback-row-description.is-folded{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.feedback-row-fold{margin-top:4px}.feedback-sync-pill{white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:6px 9px;font-size:.78rem;font-weight:800;display:inline-flex}.feedback-github-link{justify-self:start;gap:6px}.feedback-sync-error{overflow-wrap:anywhere}.floor-plan-page{grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px;display:grid}.floor-plan-side{flex-direction:column;gap:16px;width:clamp(280px,26vw,360px);min-width:0;display:flex}.floor-plan-side-toggle{display:none}.floor-plan-side-body{flex-direction:column;gap:16px;min-width:0;display:flex}.floor-plan-main{background:var(--fp-viewer-surface);gap:0;min-width:0;display:grid}.floor-plan-stage,.fp-editor-body{grid-template-columns:minmax(0,1fr);align-items:start;gap:12px;display:grid}.floor-plan-stage{gap:0}.floor-plan-rail{flex-direction:column;gap:10px;min-width:0;display:flex}.floor-plan-rail-toggle{display:none}.floor-plan-rail-body{flex-direction:column;gap:10px;min-width:0;min-height:0;display:flex}.fp-3d-stage{border:1px solid var(--line);border-radius:8px;height:min(70dvh,720px);min-height:min(480px,60dvh);position:relative;overflow:hidden}.fp-3d-canvas-host{position:absolute;inset:0}.fp-3d-stage canvas{touch-action:none;width:100%;height:100%;display:block}.fp-3d-pick{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:center;gap:10px;max-width:calc(100% - 20px);padding:6px 10px;display:flex;position:absolute;top:10px;left:10px;box-shadow:0 2px 8px #0000001f}.fp-3d-pick-label{flex-direction:column;gap:1px;min-width:0;font-size:.9rem;display:flex}.fp-3d-pick-level{color:var(--muted);font-size:.75rem}.fp-3d-pick-connects,.fp-stair-goto,.fp-stair-pair{border:1px solid var(--line);color:inherit;cursor:pointer;white-space:nowrap;background:0 0;border-radius:6px;padding:4px 10px;font-size:.85rem}.fp-3d-pick-connects:hover:not(:disabled),.fp-stair-goto:hover:not(:disabled),.fp-stair-pair:hover:not(:disabled){border-color:var(--blue)}.fp-stair-goto:disabled{opacity:.5;cursor:default}.fp-stair-link{flex-direction:column;align-items:stretch;gap:6px;margin-top:4px;display:flex}.fp-3d-hint{color:var(--muted);pointer-events:none;margin:0;font-size:.78rem;position:absolute;bottom:8px;left:12px}.fp-3d-unsupported,.fp-3d-loading{padding:24px}.fp-elev-panel{flex-direction:column;min-height:0;display:flex;overflow:hidden}.fp-elev-controls{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:10px;display:flex}.fp-elev-views,.fp-elev-modes{flex-wrap:wrap;gap:6px;display:flex}.fp-elev-cut{color:var(--muted);flex-direction:column;gap:4px;margin-bottom:10px;font-size:.85rem;display:flex}.fp-elev-cut input[type=range]{width:min(100%,420px)}.fp-elev-stage{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex:auto;min-height:200px;overflow:hidden}.fp-elev-canvas{width:100%;height:100%;display:block}.fp-elev-empty{padding:24px}.fp-elev-wall{fill:#46524cd9;stroke:none}.fp-elev-wall.exterior{fill:#303a36eb}.fp-elev-wall.bearing{fill:#5a4a3ae0}.fp-elev-slab{fill:#96a39c8c;stroke:none}.fp-elev-stair{fill:#b59a72c7;stroke:none}.fp-elev-wall.cut,.fp-elev-slab.cut{fill:#78857eb3}.fp-elev-stair.cut{fill:#c5ac86d9}.fp-elev-furniture{fill:#7d8aa8c7;stroke:none}.fp-elev-furniture.cut{fill:#96a1bbd9}.fp-elev-poche-line{stroke:#1c2621d9;stroke-width:3px}.fp-elev-ruler-axis,.fp-elev-tick{stroke:var(--muted);stroke-width:1.5px;vector-effect:non-scaling-stroke}.fp-elev-datum-line{stroke:var(--muted);stroke-width:1px;stroke-dasharray:12 10;opacity:.65;vector-effect:non-scaling-stroke}.fp-elev-datum-label{fill:var(--muted);font-size:26px}.fp-elev-gaps{color:var(--muted);margin-top:10px;font-size:.85rem}.fp-elev-gaps ul{margin:6px 0 0;padding-left:20px}[data-theme=dark] .fp-elev-wall{fill:#96a69ed1}[data-theme=dark] .fp-elev-wall.exterior{fill:#bacac1e0}[data-theme=dark] .fp-elev-wall.bearing{fill:#c6a884d9}[data-theme=dark] .fp-elev-slab{fill:#68797199}[data-theme=dark] .fp-elev-wall.cut,[data-theme=dark] .fp-elev-slab.cut{fill:#788a81bf}[data-theme=dark] .fp-elev-stair{fill:#a08857cc}[data-theme=dark] .fp-elev-stair.cut{fill:#b89e6ae0}[data-theme=dark] .fp-elev-furniture{fill:#8d99b5cc}[data-theme=dark] .fp-elev-furniture.cut{fill:#a3afc8e0}[data-theme=dark] .fp-elev-poche-line{stroke:#e2eee8e0}.fp-sheets-panel{flex-direction:column;min-height:0;display:flex;overflow:auto}.fp-sheets-controls{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:10px;display:flex}.fp-sheets-controls label{color:var(--muted);flex-direction:column;gap:3px;font-size:.8rem;display:flex}.fp-sheets-actions{flex-wrap:wrap;gap:8px;margin-bottom:10px;display:flex}.fp-sheets-warning,.fp-stair-warning{color:#9a5b16}[data-theme=dark] .fp-sheets-warning,[data-theme=dark] .fp-stair-warning{color:#e0a86a}.fp-sheets-preview{background:var(--line);border-radius:8px;justify-content:center;align-items:flex-start;padding:12px;display:flex;overflow:auto}.fp-sheets-hint{margin-top:10px}.fp-sheet{width:auto;max-width:100%;height:auto;max-height:min(58dvh,520px);box-shadow:0 2px 10px #00000040}.fp-sheet-paper{fill:#fff}.fp-sheet-title-frame{fill:none;stroke:#1c2621;stroke-width:.3px}.fp-sheet-title-name{fill:#1c2621;font-size:4px;font-weight:700}.fp-sheet-title-scale{fill:#1c2621;font-size:4.5px;font-weight:700}.fp-sheet-title-sub{fill:#43514a;font-size:2.8px}.fp-sheet-legend-frame{fill:#fff;stroke:#1c2621;stroke-width:.3px}.fp-sheet-legend-title{fill:#1c2621;font-size:3px;font-weight:700}.fp-sheet-legend-row{fill:#1c2621;font-size:2.6px}.fp-sheet-legend-panel{fill:#43514a;font-size:2.6px;font-weight:700}.fp-sheet-legend-swatch{fill:#fff;stroke:#1c2621;stroke-width:.25px}.fp-sheet .fp-sheet-symbol-key-mark .floor-symbol-body{fill:#fff;stroke:#1c2621;stroke-width:.25px;vector-effect:none}.fp-sheet .fp-sheet-symbol-key-mark .floor-symbol-text{fill:#1c2621;font-weight:600}.fp-sheet .fp-sheet-symbol-key-mark .floor-symbol-glyph line{stroke:#1c2621;stroke-width:.2px;vector-effect:none}.fp-sheet .fp-sheet-drawing .floor-symbol-body,.fp-sheet .fp-sheet-drawing .fp-symbol-body{fill:#fff;stroke:#1c2621}.fp-sheet .fp-sheet-drawing .floor-symbol-text,.fp-sheet .fp-sheet-drawing .fp-symbol-text{fill:#1c2621}.fp-sheet .fp-sheet-drawing .floor-symbol-glyph line,.fp-sheet .fp-sheet-drawing .fp-symbol-glyph line,.fp-sheet .fp-sheet-drawing .fp-symbol-glyph circle,.fp-sheet .fp-sheet-drawing .fp-symbol-glyph ellipse,.fp-sheet .fp-sheet-drawing .fp-symbol-glyph rect{stroke:#1c2621}.fp-sheet .fp-sheet-drawing .fp-symbol-arrow-head{fill:#1c2621}.fp-sheet .fp-sheet-drawing .floor-furniture-body,.fp-sheet .fp-sheet-drawing .fp-furniture-body{fill:none;stroke:#1c2621}.fp-sheet-scale-fill{fill:#1c2621}.fp-sheet-scale-open{fill:#fff;stroke:#1c2621;stroke-width:.2px}.fp-sheet-north-arrow{fill:#1c2621}.fp-sheet-north-label{fill:#1c2621;font-size:3px;font-weight:700}@media print{body *{visibility:hidden}.fp-sheets-preview,.fp-sheets-preview *{visibility:visible}.fp-sheets-preview{background:0 0;margin:0;padding:0;position:absolute;inset:0;overflow:visible}.fp-sheet{box-shadow:none;width:auto;max-width:none;height:auto;max-height:none}}.floor-plan-toolbar{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;flex-wrap:nowrap;align-items:center;gap:8px;min-width:0;padding:6px 10px;display:flex}.floor-plan-title{flex:auto;align-items:baseline;gap:10px;min-width:0;margin-right:auto;display:flex;overflow:hidden}.floor-plan-toolbar>:not(.floor-plan-title):not(select){flex:none}.floor-plan-toolbar>button:not(.icon-button){flex:0 auto;min-width:42px;overflow:hidden}.floor-plan-action-label{white-space:nowrap}.floor-plan-toolbar button:not(.primary),.floor-plan-toolbar select{box-shadow:none;background:0 0;border-color:#0000}.floor-plan-toolbar button:not(.primary):hover,.floor-plan-toolbar button:not(.primary):focus-visible,.floor-plan-toolbar select:hover,.floor-plan-toolbar select:focus-visible{background:var(--panel);border-color:var(--blue)}.floor-plan-toolbar h2{text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:1.15rem;overflow:hidden}.floor-plan-title .eyebrow{flex:none;margin:0}.floor-plan-toolbar select{flex:0 auto;width:auto;min-width:0;max-width:220px}.floor-plan-modes{flex-wrap:nowrap;gap:0;min-width:0;display:flex}.floor-plan-modes>*+*{margin-left:-1px}.floor-plan-modes>button,.floor-plan-modes>.fp-toolbar-popover-wrap>button{border-radius:0}.floor-plan-modes>button:first-child{border-top-left-radius:8px;border-bottom-left-radius:8px}.floor-plan-modes>:last-child>button,.floor-plan-modes>button:last-child{border-top-right-radius:8px;border-bottom-right-radius:8px}.floor-plan-modes>button:hover,.floor-plan-modes>button:focus-visible,.floor-plan-modes>button.primary,.floor-plan-modes>.fp-toolbar-popover-wrap:hover{z-index:1;position:relative}.floor-plan-modes>.fp-toolbar-popover-wrap>.fp-toolbar-menu-button{width:auto;min-width:30px;padding-inline:4px}.fp-toolbar-menu-caret{opacity:.75;flex:none}.fp-toolbar-menu-list{gap:4px;min-width:168px;display:grid}.fp-toolbar-menu-list button{justify-content:flex-start;width:100%}.floor-plan-canvas-wrap{background:var(--fp-viewer-surface);border:1px solid var(--line);overscroll-behavior:contain;touch-action:none;border-radius:8px;min-width:0;max-width:100%;min-height:0;padding:12px;position:relative;overflow:hidden}.floor-plan-canvas-wrap:not(.fp-editor-canvas-wrap){border:0;border-radius:0;padding:0}.floor-plan-canvas{cursor:grab;touch-action:none;width:100%;min-width:0;height:100%;min-height:240px;display:block}html[data-app-frame=floor-plan-edit],html[data-app-frame=floor-plan-edit] body{overscroll-behavior:none;height:100%;min-height:0;overflow:hidden}html[data-app-frame=floor-plan-edit] .app-shell,html[data-app-frame=floor-plan-edit] .app-main{min-height:0}html[data-app-frame=floor-plan-edit] .workspace{height:calc(100vh - var(--app-header-measured,var(--app-header-height)));height:calc(100dvh - var(--app-header-measured,var(--app-header-height)));flex-direction:column;min-height:0;display:flex;overflow:hidden}html[data-app-frame=floor-plan-edit] .floor-plan-page{flex:1;align-items:stretch;min-height:0}html[data-app-frame=floor-plan-edit] .floor-plan-main{grid-template-rows:minmax(0,1fr);min-height:0}html[data-app-frame=floor-plan-edit] .floor-plan-main>.panel{align-self:start}html[data-app-frame=floor-plan-edit] .fp-editor{min-height:0}html[data-app-frame=floor-plan-edit] .fp-editor-body{flex:1;grid-template-rows:minmax(0,1fr);align-items:stretch;min-height:0}@media (width>=1000px){html[data-app-frame=floor-plan],html[data-app-frame=floor-plan] body{overscroll-behavior:none;height:100%;min-height:0;overflow:hidden}html[data-app-frame=floor-plan] .app-shell,html[data-app-frame=floor-plan] .app-main{min-height:0}html[data-app-frame=floor-plan] .workspace{height:calc(100vh - var(--app-header-measured,var(--app-header-height)));height:calc(100dvh - var(--app-header-measured,var(--app-header-height)));flex-direction:column;min-height:0;padding:0;display:flex;overflow:hidden}html[data-app-frame=floor-plan] .floor-plan-page{flex:1;align-items:stretch;gap:0;min-height:0}html[data-app-frame=floor-plan] .floor-plan-main{grid-template-rows:auto minmax(0,1fr);min-height:0}html[data-app-frame^=floor-plan] .floor-plan-stage,html[data-app-frame^=floor-plan] .fp-editor-body{grid-template-columns:minmax(0,1fr) 300px;align-items:stretch;min-height:0}html[data-app-frame=floor-plan] .floor-plan-stage.rail-collapsed,html[data-app-frame^=floor-plan] .floor-plan-page.side-collapsed{grid-template-columns:minmax(0,1fr)}html[data-app-frame^=floor-plan] .floor-plan-side{overscroll-behavior:contain;min-height:0;overflow-y:auto}html[data-app-frame^=floor-plan] .floor-plan-rail{min-height:0}.floor-plan-side-toggle,.floor-plan-rail-toggle{flex:none;display:inline-flex}.floor-plan-side.is-collapsed,.floor-plan-rail.is-collapsed{display:none}html[data-app-frame=floor-plan] .floor-plan-side{border-right:1px solid var(--line);padding:12px}html[data-app-frame=floor-plan] .floor-plan-rail{border-left:1px solid var(--line);padding:12px}}.fp-editor-side,.fp-editor-side-body{grid-template-rows:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.fp-editor-side-body>.panel{overscroll-behavior:contain;flex-direction:column;min-height:0;display:flex;overflow-y:auto}.fp-editor-side-body>.fp-furniture-panel{overflow:hidden}.fp-editor-side-body>.fp-furniture-panel .fp-furniture-grid{flex:1;max-height:none}.fp-sheet-handle{display:none}@media (width<=999px){.floor-plan-canvas-wrap:not(.fp-editor-canvas-wrap){height:min(72dvh,560px);min-height:240px}.floor-plan-page{grid-template-columns:minmax(0,1fr)}.floor-plan-side,.floor-plan-side.is-collapsed{width:auto}.floor-plan-main{order:1}.floor-plan-side{order:2}.fp-editor-body{position:relative}.fp-editor-side{background:var(--panel);border-top:1px solid var(--line);z-index:4;border-radius:14px 14px 0 0;grid-template-rows:auto minmax(0,1fr);max-height:112px;transition:max-height .18s;display:grid;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -12px 32px #121c1824}.fp-editor-side.is-open{max-height:70%}.fp-sheet-handle{background:0 0;border:0;border-radius:14px 14px 0 0;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:100%;padding:8px 12px 6px;font-size:.86rem;font-weight:600;display:flex}.fp-sheet-grip{background:var(--line);border-radius:999px;width:40px;height:4px;display:block}.fp-editor-side-body{padding:0 10px 10px}.fp-editor-side-body>.panel>h2{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}}@media (width<=720px){.fp-toolbar-plan-name{display:none}}@media (width<=999px) and (prefers-reduced-motion:reduce){.fp-editor-side{transition:none}}.floor-canvas-controls{z-index:2;gap:6px;display:flex;position:absolute;top:12px;right:12px}.floor-canvas-controls .icon-button{background:#ffffffeb;box-shadow:0 8px 22px #121c181f}.floor-plan-canvas.is-panning{cursor:grabbing}.floor-plan-background{fill:#fffdf7;stroke:#d7ded9;stroke-width:2px}.floor-room-rect{fill:#e6f0ec;stroke:var(--green);stroke-width:3px}.floor-room-rect.garden-bed{fill:#efe6d4;stroke:#7c6033}.floor-zone-rect{fill:#eebe593d;stroke:#b98418;stroke-dasharray:10 7;stroke-width:2px}.floor-layout-asset{cursor:grab;fill:#fff;stroke:#30445a;stroke-width:3px}.floor-layout-asset.selected{fill:var(--selection-fill);stroke:var(--selection-stroke)}.floor-layout-asset.highlighted{fill:var(--tint-coral-bg-strong);stroke:var(--coral);stroke-width:5px}.floor-import-background{opacity:.26}.floor-import-room{fill:#e5f0e5;stroke:#18201c38;stroke-width:2px}.floor-import-wall{stroke:#101412;stroke-width:2.25px;stroke-linecap:butt;vector-effect:non-scaling-stroke}.floor-import-opening{stroke-width:2px}.floor-import-opening.door{fill:#fff7ef;stroke:#a95f30}.floor-import-opening.window{fill:#edf7ff;stroke:#2870a6}.floor-import-fixture{fill:#5c774929;stroke:#596f48;stroke-width:2px}.floor-import-fixture.stair{fill:#879c7838}.floor-import-dimension{stroke:var(--purple);stroke-dasharray:7 6;stroke-width:1.6px;vector-effect:non-scaling-stroke}.floor-import-room-label,.floor-import-fixture-label,.floor-import-dimension-label{paint-order:stroke;stroke:#ffffffe6;stroke-width:4px;dominant-baseline:middle;text-anchor:middle}.floor-import-room-label{font-size:18px}.floor-import-fixture-label{fill:var(--tint-green-text);font-size:11px}.floor-import-dimension-label{fill:var(--purple);font-size:13px}.floor-plan-canvas text{pointer-events:none;fill:var(--ink);-webkit-user-select:none;user-select:none;font-size:18px;font-weight:700}.floor-plan-canvas .floor-import-fixture-label{fill:var(--tint-green-text);font-size:11px}.floor-plan-canvas .floor-import-dimension-label{fill:var(--purple);font-size:13px}.fp-annotation-hit{cursor:pointer;stroke:#0000}.fp-annotation,.floor-annotation-line{stroke:var(--purple);stroke-dasharray:12 8;stroke-width:2.5px;vector-effect:non-scaling-stroke}.fp-annotation.selected{stroke-width:4.5px}.fp-draft-line{stroke:var(--purple);stroke-dasharray:6 6;stroke-width:2px;vector-effect:non-scaling-stroke;pointer-events:none}.fp-annotation-handle{cursor:grab;fill:#fff;stroke:var(--purple);stroke-width:2px}.floor-plan-canvas .fp-annotation-label,.floor-plan-canvas .floor-annotation-label{fill:var(--purple);paint-order:stroke;stroke:#ffffffe6;stroke-width:4px;text-anchor:middle;font-size:14px;font-weight:600}[data-theme=dark] .fp-annotation-handle{fill:#18201c}[data-theme=dark] .floor-plan-canvas .fp-annotation-label,[data-theme=dark] .floor-plan-canvas .floor-annotation-label{stroke:#18201ce6}.floor-plan-canvas .fp-text-note-body,.floor-plan-canvas .floor-annotation-text{fill:var(--text,#1c2320);paint-order:stroke;stroke:#ffffffd9;stroke-width:3px;text-anchor:start;font-weight:500}.floor-plan-canvas .fp-text-note-hit{fill:#0000;cursor:pointer}.floor-plan-canvas .fp-text-note.selected .fp-text-note-body{fill:var(--purple)}.floor-plan-canvas .fp-text-note.selected .fp-text-note-hit{fill:#785ac81f}[data-theme=dark] .floor-plan-canvas .fp-text-note-body,[data-theme=dark] .floor-plan-canvas .floor-annotation-text{fill:#e2ece7;stroke:#18201cd9}.fp-sheet .floor-annotation-text,[data-theme=dark] .fp-sheet .floor-annotation-text{fill:#101010;stroke:none}.floor-plan-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:10px;display:grid}.floor-plan-actions button{justify-content:center;min-height:40px}.floor-plan-new-form{border-top:1px solid var(--line);margin-top:12px;padding-top:12px}.floor-plan-collapse{background:var(--panel);border:1px solid var(--line);border-radius:8px;min-width:0;padding:12px 14px}.floor-plan-collapse>summary{cursor:pointer;font-weight:700}.floor-plan-collapse[open]>summary{margin-bottom:10px}.floor-plan-collapse-heading{margin:12px 0 6px;font-size:1rem}.floor-layers-popover-wrap{position:relative}.floor-layers-popover{background:var(--panel);border:1px solid var(--line);z-index:3;overscroll-behavior:contain;border-radius:8px;min-width:210px;max-height:min(52dvh,280px);padding:10px 12px;position:absolute;top:calc(100% + 6px);right:0;overflow-y:auto;box-shadow:0 12px 28px #121c182e}.fp-editor{flex-direction:column;gap:10px;min-height:0;display:flex}.fp-editor-toolbar{background:#ffffffeb;border:1px solid #182a221a;border-radius:12px;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 10px;display:flex}.fp-tool-group{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.fp-toolbar-header{align-items:center;gap:8px;min-width:0;display:flex}.fp-toolbar-plan-name{text-overflow:ellipsis;white-space:nowrap;max-width:16ch;margin:0;font-size:.94rem;overflow:hidden}.fp-toolbar-header select,.fp-toolbar-field select{width:auto;min-width:108px;max-width:168px}.fp-toolbar-header button{flex:none}.fp-toolbar-field{align-items:center;gap:6px;min-width:0;display:flex}.fp-toolbar-field>span{color:var(--muted);white-space:nowrap;font-size:.78rem}.fp-toolbar-gate>span{white-space:normal;max-width:30ch}.fp-toolbar-popover-wrap{position:relative}.fp-editor-toolbar .fp-toolbar-menu-button{gap:6px;width:auto;min-width:0;padding-inline:10px}.fp-toolbar-menu-label{white-space:nowrap;font-size:.82rem}.fp-toolbar-badge{color:#7a5010;background:#9e691629;border-radius:999px;padding:3px 6px;font-size:.72rem;font-weight:700;line-height:1}.fp-toolbar-popover{background:var(--panel);border:1px solid var(--line);overscroll-behavior:contain;z-index:6;border-radius:12px;gap:10px;width:min(340px,100vw - 32px);max-height:min(64dvh,520px);padding:10px;display:grid;position:absolute;top:calc(100% + 6px);overflow-y:auto;box-shadow:0 18px 40px #121c182e}.fp-toolbar-popover.align-start{left:0}.fp-toolbar-popover.align-end{right:0}.fp-toolbar-popover .panel{box-shadow:none;background:0 0;border:0;padding:0}.fp-toolbar-popover .panel+.panel{border-top:1px solid var(--line);padding-top:10px}.fp-conflict-banner{background:#fff4de;border:1px solid #9e691666;border-radius:10px;align-items:center;gap:10px;padding:8px 12px;display:flex}.fp-conflict-banner span{margin-right:auto}.fp-convert-modal{max-width:460px}.fp-convert-warnings{background:#fff4de;border-radius:10px;padding:8px 12px;font-size:13px}[data-theme=dark] .fp-convert-warnings{background:#40341a}[data-theme=dark] .fp-conflict-banner{background:#40341a;border-color:#9e691699}.fp-editor-toolbar .icon-button{min-width:44px;min-height:44px}@media (pointer:fine) and (width>=1000px){.fp-editor-toolbar .icon-button{width:36px;min-width:36px;height:36px;min-height:36px}.fp-editor-toolbar .fp-toolbar-menu-button{width:auto}.fp-editor-toolbar{gap:6px}}.fp-editor-toolbar .icon-button.active{color:#1f6f4a;background:#1f6f4a24}.fp-save-state{opacity:.85;align-items:center;gap:6px;margin-left:auto;font-size:13px;display:inline-flex}.fp-save-state.is-error{color:#b02a2a}.fp-save-state.is-pending-offline,.fp-save-state.is-conflict{color:#9e6916}.fp-editor-canvas.tool-draw-room,.fp-editor-canvas.tool-line,.fp-editor-canvas.tool-dimension,.fp-editor-canvas.tool-furniture{cursor:crosshair}.fp-editor-canvas.tool-pan{cursor:grab}.fp-grid-line{stroke:#182a2212;stroke-width:1px;vector-effect:non-scaling-stroke}.fp-reference-layer{opacity:.45;pointer-events:none}.fp-wall{fill:#46524cd9;stroke:none}.fp-wall-exterior{fill:#303a36eb}.fp-wall-bearing{fill:#5a4a3ae0}.fp-envelope rect{fill:none;stroke:#46524c99;stroke-width:1.5px;stroke-dasharray:4 6;vector-effect:non-scaling-stroke}.fp-envelope-label{fill:#46524c;text-anchor:middle;font-size:18px;font-weight:600}.fp-room{cursor:move;fill:#d5e8dcd9;stroke:#305442;stroke-width:2px;vector-effect:non-scaling-stroke}.fp-room.garden-bed{fill:#e2d5bad9;stroke:#7c6033}.fp-room.selected{fill:#c4e3d0eb;stroke:#1f6f4a}.fp-room.has-issue{stroke:#c55420;stroke-dasharray:8 4}.fp-virtual-edge{stroke:var(--line);stroke-width:1px;stroke-dasharray:5 6;vector-effect:non-scaling-stroke}.fp-check-highlight{pointer-events:none}.fp-check-region{fill:var(--coral);fill-opacity:.18;stroke:var(--coral);stroke-dasharray:6 4;stroke-width:2px;vector-effect:non-scaling-stroke}.fp-check-arrow{fill:var(--coral)}.fp-plan-bounds{fill:none;stroke:#78827d8c;stroke-dasharray:12 8;stroke-width:1px;vector-effect:non-scaling-stroke}.fp-levels-list{flex-direction:column;gap:2px;margin:0 0 .5rem;padding:0;list-style:none;display:flex}.fp-levels-row{border-radius:6px;flex-wrap:wrap;align-items:center;gap:4px;padding:2px 4px;display:flex}.fp-levels-row.active{background:color-mix(in srgb, var(--blue) 14%, transparent)}.fp-levels-name{text-align:left;cursor:pointer;min-width:0;color:inherit;background:0 0;border:none;flex-direction:column;flex:auto;align-items:flex-start;gap:1px;padding:4px 6px;display:flex}.fp-levels-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.9rem;overflow:hidden}.fp-levels-meta{color:var(--muted);font-size:.75rem}.fp-levels-kind{text-transform:uppercase;letter-spacing:.04em;color:#6d5527;background:#e2d5bab3;border-radius:999px;margin-left:6px;padding:0 6px;font-size:.65rem;font-weight:600;display:inline-block}[data-theme=dark] .fp-levels-kind{color:#d9c193;background:#4e422dcc}.fp-levels-beds-note{margin:0 0 6px}.fp-inspector-garden-bed{border-left:3px solid #7c603399;margin:6px 0;padding-left:8px}[data-theme=dark] .fp-inspector-garden-bed{border-left-color:#c7aa7699}.fp-levels-name-input{flex:auto;min-width:0}.fp-levels-actions{flex:none;gap:2px;display:flex}.fp-levels-actions .icon-button.danger{color:var(--danger,#b3261e)}.fp-levels-confirm{border:1px solid var(--line);border-radius:6px;flex:100%;margin-top:4px;padding:6px 8px}.fp-levels-warning{color:#9a5b16;margin:0 0 6px}[data-theme=dark] .fp-levels-warning{color:#e0a86a}.fp-levels-confirm-actions{flex-wrap:wrap;gap:6px;display:flex}.fp-levels-add{align-items:center;gap:6px;display:inline-flex}.fp-topology-issues{flex-direction:column;gap:.25rem;margin:.5rem 0 0;padding:0;list-style:none;display:flex}.fp-topology-issue button{color:#963c14;cursor:pointer;text-align:left;background:0 0;border:none;align-items:flex-start;gap:.35rem;width:100%;padding:.2rem 0;font-size:.85rem;display:flex}.fp-topology-issue button:hover{text-decoration:underline}.fp-topology-issue.overlap button,.form-error{color:#aa2828}.fp-room-sublabel,.floor-room-sublabel{fill:#465a50;font-size:12px}.fp-room-area{margin-top:.15rem}.fp-opening-swing line,.fp-opening-swing path{fill:none;stroke:#5a6e64;stroke-width:1px;vector-effect:non-scaling-stroke}.fp-opening-swing path{stroke-dasharray:4 3}.fp-opening-glazing,.floor-opening-glazing{stroke:#3c78aa;stroke-width:1.5px;vector-effect:non-scaling-stroke}.fp-symbol-body,.floor-symbol-body{fill:#ffffff8c;stroke:#5a6e64;stroke-width:1px;vector-effect:non-scaling-stroke}.fp-symbol.selected .fp-symbol-body{stroke:#1f6f4a;stroke-width:2px}.fp-symbol-glyph line,.fp-symbol-glyph circle,.fp-symbol-glyph ellipse,.fp-symbol-glyph rect,.floor-symbol-glyph line{fill:none;stroke:#5a6e64;stroke-width:1px;vector-effect:non-scaling-stroke}.fp-symbol-arrow-head{fill:#5a6e64;stroke:none}.fp-symbol-text,.floor-symbol-text{fill:#465a50;text-anchor:middle;font-size:11px;font-weight:600}.fp-furniture-body,.floor-furniture-body{fill:#ffffff1f;stroke:#606884;stroke-width:1px;stroke-dasharray:4 2;vector-effect:non-scaling-stroke}.fp-furniture.selected .fp-furniture-body{stroke:#1f6f4a;stroke-width:2px;stroke-dasharray:none}.fp-furniture-icon,.floor-furniture-icon{opacity:.85}.floor-plan-canvas image{-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.fp-furniture-ghost-body{fill:#1f6f4a1a;stroke:#1f6f4a;stroke-width:1.5px;stroke-dasharray:2 3;vector-effect:non-scaling-stroke;pointer-events:none}.fp-furniture-ghost-icon{opacity:.45;pointer-events:none}.fp-editor-canvas[data-placing=true]{cursor:crosshair}.fp-placing-banner{z-index:2;color:#fff;text-align:center;pointer-events:none;background:#1f6f4aeb;border:1px solid #1f6f4a73;border-radius:999px;max-width:min(92%,460px);margin:0;padding:6px 12px;font-size:.82rem;font-weight:600;line-height:1.3;position:absolute;top:10px;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #00000038}@media (width<=560px){.fp-placing-banner{padding:5px 10px;font-size:.76rem}}.fp-furniture-filters{gap:.4rem;display:grid}.fp-editor-side-body .fp-furniture-filters{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.35rem .4rem}.fp-editor-side-body .fp-furniture-filters .fp-inspector-name{color:var(--muted);gap:2px;font-size:.74rem}.fp-furniture-grid{overscroll-behavior:contain;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:.35rem;min-height:0;max-height:42dvh;margin:.5rem 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.fp-furniture-item{border:1px solid var(--border,#0000001f);text-align:center;cursor:pointer;background:0 0;border-radius:8px;flex-direction:column;align-items:center;gap:.2rem;width:100%;padding:.3rem .2rem;font-size:.72rem;line-height:1.15;display:flex}.fp-furniture-item img{object-fit:contain;width:56px;height:56px}.fp-furniture-item.selected{border-color:#1f6f4a;box-shadow:inset 0 0 0 1px #1f6f4a}.fp-furniture-selected{margin-top:.4rem}.fp-dimension-extension,.fp-dimension-line,.fp-dimension-tick,.floor-dimension-extension,.floor-dimension-line,.floor-dimension-tick{stroke:#785a3c;stroke-width:1px;vector-effect:non-scaling-stroke}.fp-dimension-extension,.floor-dimension-extension{stroke-dasharray:3 3;opacity:.7}.fp-dimension-string.selected .fp-dimension-line{stroke:#c55420;stroke-width:2px}.fp-dimension-string-label,.floor-dimension-string-label{fill:#785a3c;text-anchor:middle;font-size:13px;font-weight:600}[data-theme=dark] .fp-opening-swing line,[data-theme=dark] .fp-opening-swing path,[data-theme=dark] .fp-symbol-body,[data-theme=dark] .floor-symbol-body,[data-theme=dark] .fp-symbol-glyph line,[data-theme=dark] .fp-symbol-glyph circle,[data-theme=dark] .fp-symbol-glyph ellipse,[data-theme=dark] .fp-symbol-glyph rect,[data-theme=dark] .floor-symbol-glyph line{stroke:#aabeb4}[data-theme=dark] .fp-symbol-body,[data-theme=dark] .floor-symbol-body{fill:#141e1a73}[data-theme=dark] .fp-symbol-arrow-head{fill:#aabeb4}[data-theme=dark] .fp-symbol-text,[data-theme=dark] .floor-symbol-text{fill:#c8d7d0}[data-theme=dark] .fp-furniture-body,[data-theme=dark] .floor-furniture-body{fill:#141e1a4d;stroke:#a0accd}[data-theme=dark] .fp-furniture-ghost-body{fill:#5cd69c24;stroke:#5cd69c}[data-theme=dark] .fp-placing-banner{color:#e2f5ec;background:#144a34f0;border-color:#5cd69c73}[data-theme=dark] .fp-dimension-extension,[data-theme=dark] .fp-dimension-line,[data-theme=dark] .fp-dimension-tick,[data-theme=dark] .floor-dimension-extension,[data-theme=dark] .floor-dimension-line,[data-theme=dark] .floor-dimension-tick,[data-theme=dark] .fp-dimension-string-label,[data-theme=dark] .floor-dimension-string-label{stroke:#e6be96;fill:#e6be96}[data-theme=dark] .fp-dimension-string-label,[data-theme=dark] .floor-dimension-string-label{stroke:none}.fp-display-system{flex-direction:column;gap:.25rem;margin-top:.6rem;display:flex}[data-theme=dark] .fp-room-sublabel,[data-theme=dark] .floor-room-sublabel{fill:#aabeb4}[data-theme=dark] .fp-plan-bounds{stroke:#a0aca673}[data-theme=dark] .fp-topology-issue button{color:#f0aa78}[data-theme=dark] .fp-topology-issue.overlap button,[data-theme=dark] .form-error{color:#f59696}.fp-room-label{font-size:15px;font-weight:600}.fp-draft-room{fill:#1f6f4a1f;stroke:#1f6f4a;stroke-dasharray:6 4;stroke-width:1.5px;vector-effect:non-scaling-stroke}.fp-snap-guide{stroke:#c55420;stroke-dasharray:6 5;stroke-width:1px;vector-effect:non-scaling-stroke}.floor-plan-canvas .fp-size-readout{dominant-baseline:middle;fill:var(--green);paint-order:stroke;stroke:var(--fp-viewer-surface);stroke-linejoin:round;font-weight:700}.fp-selection-outline{fill:none;stroke:#1f6f4a;stroke-width:2px;vector-effect:non-scaling-stroke}.fp-edge-hit{cursor:ew-resize;stroke:#0000}.fp-edge-handle,.fp-vertex-handle{cursor:grab;fill:#fff;stroke:#1f6f4a;stroke-width:1.5px;vector-effect:non-scaling-stroke}.fp-edge-handle.active,.fp-vertex-handle.active{fill:#1f6f4a}.fp-box-handle{cursor:nwse-resize;fill:#fff;stroke:#1f6f4a;stroke-width:1.5px;vector-effect:non-scaling-stroke}.fp-box-handle[data-corner=ne],.fp-box-handle[data-corner=sw]{cursor:nesw-resize}.fp-rotate-stem{stroke:#1f6f4a;stroke-width:1.5px;vector-effect:non-scaling-stroke}.fp-rotate-handle{fill:#fff;stroke:#1f6f4a;stroke-width:1.5px;vector-effect:non-scaling-stroke}.fp-rotate-hit{cursor:grab;fill:#0000}.fp-editor-canvas.tool-furniture .fp-furniture-body,.fp-editor-canvas.tool-symbol .fp-symbol-body{cursor:move}.fp-inspector-name{flex-direction:column;gap:4px;display:flex}.fp-inspector-check{align-items:center;gap:8px;display:flex}.fp-inspector-check input[type=checkbox]{flex:none;width:18px;height:18px;margin:0}.fp-inspector-advanced{margin-top:4px}.fp-inspector-advanced>summary{min-height:36px;padding:7px 10px;font-size:.84rem;font-weight:700}.fp-inspector-advanced-body{gap:8px;padding:0 10px 10px;display:grid}.fp-opening{fill:#fff;stroke:#305442;stroke-width:1.5px;cursor:grab;vector-effect:non-scaling-stroke}.fp-opening.window{fill:#bedcf4}.fp-opening.selected{stroke:#c55420;stroke-width:2.5px}.fp-opening-target{cursor:copy}.fp-wall-target{cursor:crosshair;stroke:#0000}.fp-wall-target:hover{cursor:pointer;stroke:#1f6f4a33}.fp-wall-target.picked{stroke:#c5542073}.fp-wall-target.picked.pick-1{stroke:#1f6f4a73}.fp-driven-preview .fp-dimension-line,.fp-driven-preview .fp-dimension-tick,.fp-driven-preview .fp-dimension-extension{stroke:#c55420;stroke-width:1.5px}.fp-driven-preview .fp-dimension-string-label{fill:#c55420}.fp-driving-dimension.violated .fp-dimension-line,.fp-driving-dimension.violated .fp-dimension-tick,.fp-driving-dimension.violated .fp-dimension-extension,.floor-driving-dimension.violated .floor-dimension-line,.floor-driving-dimension.violated .floor-dimension-tick,.floor-driving-dimension.violated .floor-dimension-extension{stroke:#be2d2d;stroke-width:2px}.fp-driving-dimension.violated .fp-dimension-string-label,.floor-driving-dimension.violated .floor-dimension-string-label{fill:#be2d2d}.fp-driving-dimension .fp-dimension-line,.floor-driving-dimension .floor-dimension-line{stroke-width:1.5px}[data-theme=dark] .fp-driving-dimension.violated .fp-dimension-line,[data-theme=dark] .fp-driving-dimension.violated .fp-dimension-tick,[data-theme=dark] .fp-driving-dimension.violated .fp-dimension-extension,[data-theme=dark] .floor-driving-dimension.violated .floor-dimension-line,[data-theme=dark] .floor-driving-dimension.violated .floor-dimension-tick,[data-theme=dark] .floor-driving-dimension.violated .floor-dimension-extension{stroke:#f88282}[data-theme=dark] .fp-driving-dimension.violated .fp-dimension-string-label,[data-theme=dark] .floor-driving-dimension.violated .floor-dimension-string-label{fill:#f88282;stroke:none}.fp-driven-icon{transform:rotate(90deg)}.fp-driving-violated{color:#a02020;font-weight:600}[data-theme=dark] .fp-driving-violated{color:#f89696}.fp-dimension-inline-box{background:var(--surface,#fff);border:1px solid #3c64aa;align-items:center;width:max-content;display:inline-flex;box-shadow:0 1px 4px #00000040}.fp-dimension-inline-box.has-error{border-color:#be2d2d}.fp-text-note-inline-box{background:var(--surface,#fff);border:1px solid #3c64aa;align-items:center;width:max-content;display:inline-flex;box-shadow:0 1px 4px #00000040}.fp-text-note-inline-box input{color:inherit;font:inherit;background:0 0;border:0;min-width:0;padding:0}.fp-text-note-inline-box input:focus{outline:none}.fp-dimension-inline-box input{color:inherit;font:inherit;text-align:right;background:0 0;border:0;min-width:0;padding:0}.fp-dimension-inline-box input:focus{outline:none}.fp-dimension-inline-box.has-error input{color:#a02020}[data-theme=dark] .fp-dimension-inline-box.has-error input{color:#f89696}.fp-dimension-inline-box button{cursor:pointer;color:inherit;background:0 0;border:0;justify-content:center;align-items:center;padding:0;display:inline-flex}.fp-dimension-inline-ok{color:#188038}.fp-dimension-inline-cancel{color:#b42828}.fp-dimension-inline-error{color:#fff;background:#be2d2d;border-radius:.25em;width:max-content;padding:.25em .4em}.fp-room.measured{fill:#bfe7c9eb}.fp-room.unmeasured{fill:#f5e3bbe0}.fp-dimension-label{cursor:pointer;fill:#42524a;text-anchor:middle;font-size:13px}.floor-plan-canvas .fp-dimension-label{pointer-events:auto}.fp-dimension-label.measured{fill:#1f6f4a;font-weight:700}.fp-inspector-subhead{margin:12px 0 4px;font-size:.95rem}.fp-extrude-form{border-top:1px solid var(--line);gap:8px;margin-top:10px;display:grid}.fp-extrude-direction{flex-wrap:wrap;gap:4px 14px;display:flex}.fp-extrude-direction label{align-items:center;gap:6px;min-height:32px;display:inline-flex}.fp-extrude-direction input[type=radio],.fp-restore-list input[type=radio]{flex:none;width:auto}.fp-circuits{border-top:1px solid var(--tint-neutral-border);gap:10px;margin-top:10px;padding-top:10px;display:grid}.fp-circuits-title{margin:0;font-size:14px}.fp-circuit-list{gap:10px;margin:0;padding:0;list-style:none;display:grid}.fp-circuit{background:var(--tint-neutral-bg);border:1px solid var(--tint-neutral-border);border-radius:8px;gap:8px;padding:8px;display:grid}.fp-circuit-head{align-items:center;gap:6px;display:flex}.fp-circuit-number{flex:1;min-width:0;font-size:13px;font-weight:600}.fp-circuit-head .icon-button.is-active{background:var(--tint-gold-bg-strong);border-color:var(--tint-gold-border-strong);color:var(--tint-gold-text)}.fp-circuit-fields{grid-template-columns:minmax(0,2fr) minmax(0,1fr);gap:8px;display:grid}.fp-circuit-fields label{gap:3px;min-width:0;font-size:13px;display:grid}.fp-circuit-fields input{width:100%;min-width:0;min-height:44px}.fp-circuit-rooms{border:0;gap:6px;min-width:0;margin:0;padding:0;display:grid}.fp-circuit-rooms legend{opacity:.75;padding:0;font-size:12px}.fp-circuit-room-group{gap:2px;min-width:0;display:grid}.fp-circuit-level{letter-spacing:.04em;opacity:.7;text-transform:uppercase;font-size:11px}.fp-circuit-room{align-items:center;gap:8px;min-width:0;min-height:40px;font-size:13px;display:flex}.fp-circuit-room input[type=checkbox]{flex:none;width:20px;height:20px;min-height:0}.fp-circuit-room span{overflow-wrap:anywhere;min-width:0}.fp-circuits-add{justify-content:center;align-items:center;gap:6px;min-height:44px;display:flex}.fp-room-circuits{overflow-wrap:anywhere}.fp-extrude-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.fp-extrude-fields label{gap:3px;min-width:0;font-size:13px;display:grid}.fp-extrude-fields input{width:100%;min-width:0;min-height:40px}.fp-extrude-form>button{min-height:44px}.fp-extrude-error{color:var(--coral)}.fp-dimension-sheet{flex-direction:column;gap:10px;display:flex}.fp-dimension-rows{flex-direction:column;gap:6px;display:flex}.fp-dimension-rows label{align-items:center;gap:8px;display:flex}.fp-dimension-rows label span{flex:1;font-size:13px}.fp-dimension-rows input{width:90px}.fp-dimension-rows input.measured{border-color:#1f6f4a}.fp-dimension-rows label.focused span{font-weight:700}[data-theme=dark] .fp-opening{fill:#18201c;stroke:#97c5ac}[data-theme=dark] .fp-room.measured{fill:#2e5c3eeb}[data-theme=dark] .fp-room.unmeasured{fill:#5c4c28e0}[data-theme=dark] .fp-dimension-label{fill:#becdc4}[data-theme=dark] .fp-editor-toolbar{background:#18201ceb;border-color:#ffffff1f}[data-theme=dark] .fp-room{fill:#344e40d9;stroke:#97c5ac}[data-theme=dark] .fp-room.garden-bed{fill:#4e422dd9;stroke:#c7aa76}[data-theme=dark] .fp-room.selected{fill:#3c604ceb}[data-theme=dark] .fp-edge-handle,[data-theme=dark] .fp-vertex-handle{fill:#18201c}@media (width<=900px){.fp-editor-body,.floor-plan-stage{grid-template-columns:minmax(0,1fr)}.fp-editor{flex-direction:column-reverse}main:has(.fp-editor) .app-toast-anchor{bottom:calc(72px + env(safe-area-inset-bottom,0px))}.fp-editor-toolbar{z-index:5;flex-wrap:wrap;order:2;gap:6px 8px;position:sticky;bottom:8px}.fp-save-state{margin-left:0}}@media (width<=420px){.fp-extrude-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.fp-circuit-fields{grid-template-columns:minmax(0,1fr)}.fp-extrude-fields label:last-child{grid-column:1/-1}}.fp-help-modal,.fp-restore-modal{max-width:520px}.fp-restore-list{gap:6px;max-height:min(45dvh,340px);margin:0;padding:0;list-style:none;display:grid;overflow-y:auto}.fp-restore-list label{border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;min-height:44px;padding:10px;display:flex}.fp-restore-list label:hover{border-color:var(--green)}.fp-restore-list span{gap:2px;min-width:0;display:grid}.fp-restore-confirm{background:var(--tint-coral-bg-strong);border:1px solid var(--coral);border-radius:8px;margin:0;padding:8px 10px}.fp-help-body{gap:16px;max-height:min(60dvh,520px);display:grid;overflow-y:auto}.fp-help-body h3{margin:0 0 8px;font-size:1rem}.fp-help-list{gap:6px;margin:0;padding-left:18px;display:grid}.fp-help-grid{grid-template-columns:minmax(0,auto) minmax(0,1fr);gap:6px 14px;margin:0;display:grid}.fp-help-grid dt{white-space:nowrap}.fp-help-grid dd{margin:0}.fp-help-key{background:var(--panel);border:1px solid var(--line);text-align:center;border-bottom-width:2px;border-radius:5px;min-width:20px;padding:1px 6px;font-family:inherit;font-size:12px;line-height:1.4;display:inline-block}.floor-layer-toggles{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.floor-layer-toggles label{text-transform:capitalize;align-items:center;gap:8px;min-width:0;display:flex}.floor-layer-toggles input[type=checkbox]{flex:none;width:auto}.floor-layers-popover .floor-layer-toggles{grid-template-columns:minmax(0,1fr);gap:6px}.floor-layers-popover .floor-layer-toggles label{min-height:32px}.floor-model-stats{grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;margin:0;display:grid}.floor-model-stats dt{color:var(--muted);align-items:center;gap:6px;display:flex}.floor-model-stats dd{margin:0;font-weight:800}.floor-list-row{gap:4px;display:grid}.floor-list-row button{justify-content:flex-start;width:100%}.floor-list-row .active{border-color:var(--green);background:var(--tint-green-bg-strong)}.floor-asset-search{gap:8px;display:grid}.floor-asset-search article{border-bottom:1px solid var(--line);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding-bottom:8px;display:grid}.floor-asset-search small{color:var(--muted);margin-top:4px;display:block}.visually-hidden{clip:rect(0 0 0 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.modal-backdrop{z-index:40;background:#121c1885;justify-content:center;align-items:center;padding:18px;display:flex;position:fixed;inset:0}.modal{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:14px;width:min(760px,100%);max-height:min(760px,100vh - 36px);padding:16px;display:grid;overflow:auto;box-shadow:0 24px 70px #121c1847}.modal header,.modal footer{justify-content:space-between;align-items:center;gap:12px;display:flex}.floor-import-summary{flex-wrap:wrap;gap:8px;display:flex}.floor-import-summary span{background:var(--tint-green-bg-strong);border:1px solid var(--line);border-radius:6px;padding:6px 8px;font-size:.86rem;font-weight:700}.floor-import-modal>label{gap:6px;display:grid}.floor-import-select-all{align-items:center;gap:8px!important;display:flex!important}.floor-import-room-list{border:1px solid var(--line);border-radius:8px;max-height:320px;display:grid;overflow:auto}.floor-import-room-list label{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.floor-import-room-list label+label{border-top:1px solid var(--line)}.floor-import-room-list small{color:var(--muted);margin-top:3px;display:block}.amount{font-weight:800}.amount.negative{color:var(--danger)}.amount.positive{color:var(--green)}.list-switcher{gap:8px;margin:0 0 12px;padding-bottom:6px;display:flex;overflow-x:auto}.list-switcher button{flex:none;justify-content:flex-start}.list-switcher .active{background:var(--tint-blue-bg);border-color:var(--blue);color:var(--nav-ink)}.list-heading{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.list-heading h3{margin:0}.bms-page{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.setup-panel{border-left:4px solid var(--green)}.bms-side,.bms-main,.bms-workbench{gap:16px;display:grid}.bms-toolbar{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.bms-toolbar h2{margin:4px 0 0;font-size:1.4rem}.bms-device-grid{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px;display:grid}.bms-device-card{background:var(--tint-green-soft);border:1px solid var(--line);border-left:4px solid var(--green);border-radius:8px;gap:12px;padding:14px;display:grid}.bms-device-head,.bms-command-form{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;display:grid}.bms-device-head span:first-child,.bms-list-row strong{align-items:center;gap:6px;min-width:0;display:inline-flex}.bms-readings{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.bms-readings span{background:var(--tint-gold-soft);border:1px solid var(--line);border-radius:8px;gap:2px;min-width:0;padding:10px;display:grid}.bms-readings strong{font-size:1.1rem}.bms-command-form label{margin:0}.bms-workbench{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start}.bms-connector-row,.bms-list-row{gap:4px;display:grid}.network-page{grid-template-columns:minmax(260px,340px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.network-side,.network-main,.network-workbench{gap:16px;min-width:0;display:grid}.network-toolbar{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:14px;display:flex}.network-toolbar h2{margin:4px 0 0;font-size:1.4rem}.network-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0;display:grid}.network-summary-grid span{background:var(--tint-green-soft);border:1px solid var(--line);border-radius:8px;gap:2px;min-width:0;padding:10px;display:grid}.network-summary-grid strong{color:var(--ink);font-size:1.16rem}.network-summary-grid small,.network-list-row small{color:var(--muted)}.network-tabs{gap:8px;display:grid}.network-tabs button{text-transform:capitalize;justify-content:flex-start}.network-tabs button.active{background:var(--nav);border-color:var(--nav);color:#fff}.network-workbench{grid-template-columns:minmax(280px,.8fr) minmax(340px,1.2fr);align-items:start}.network-list-row{gap:5px;display:grid}.network-list-row strong,.network-inline-form{flex-wrap:wrap;align-items:center;gap:7px;display:flex}.network-inline-form{margin-top:4px}.network-inline-form input,.network-inline-form select{flex:120px;min-width:120px}.checkbox-line{grid-template-columns:auto minmax(0,1fr);align-items:center}.checkbox-line input[type=checkbox]{width:auto;min-height:0}.status-pill.online,.status-pill.healthy,.status-pill.enabled{background:var(--green);border-color:var(--green)}.status-pill.offline,.status-pill.unhealthy,.status-pill.degraded,.status-pill.down,.status-pill.disabled{background:var(--coral);border-color:var(--coral)}.status-pill.unknown{background:var(--tint-blue-bg);border-color:var(--line);color:var(--muted)}.assistant-page{gap:12px;min-width:0;display:grid}.assistant-page-layer{flex-direction:column;gap:12px;min-width:0;display:flex;position:relative}.assistant-history-scrim{z-index:6;background:#161f276b;border-radius:12px;position:absolute;inset:0}.assistant-history-panel{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);visibility:hidden;z-index:7;border-radius:12px;grid-template-rows:auto auto auto minmax(0,1fr);gap:10px;width:min(320px,86vw);padding:12px;transition:transform .22s,visibility 0s .22s;display:grid;position:absolute;top:0;bottom:0;left:0;transform:translate(-100%)}.assistant-history-panel.open{visibility:visible;transition:transform .22s;transform:none}.assistant-history-panel .assistant-chats-search,.assistant-history-panel .assistant-chats-archived-toggle{margin:0}.assistant-history-panel .assistant-chats-list{padding:0}.assistant-history-panel .assistant-chats-archived-toggle input{flex:none;width:16px;height:16px;min-height:0}@media (prefers-reduced-motion:reduce){.assistant-history-panel,.assistant-history-panel.open{transition:none}}.proposal-group-head{background:var(--panel);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;min-width:0;padding:14px;display:flex}.proposal-group-head h3,.proposal-card h3,.proposal-card h4{margin:0}.assistant-access-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assistant-chat-header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;min-width:0;display:flex}.assistant-chat-heading{align-items:center;gap:10px;min-width:0;display:flex}.assistant-chat-heading h2{margin:0;font-size:1.2rem}.assistant-status-pill{border-radius:var(--radius-pill,999px);white-space:nowrap;gap:6px;min-height:30px;padding:4px 11px;font-size:.8rem;font-weight:700}.assistant-status-dot{background:var(--green);border-radius:50%;flex:none;width:8px;height:8px}.assistant-status-pill.warn .assistant-status-dot{background:var(--gold-bright)}.assistant-status-pill.off .assistant-status-dot{background:var(--muted)}.assistant-status-pill.training .assistant-status-dot{background:var(--gold-bright)}.assistant-enable-callout.training{background:var(--tint-amber-bg,#d9a44114);border-color:var(--tint-amber-border,#d9a44166)}.assistant-enable-callout.training>svg{color:var(--gold-bright)}.assistant-chat-header-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.assistant-chat-header-actions select{width:auto;min-height:38px}.assistant-chat-header-actions button{white-space:nowrap;gap:6px}.assistant-proposal-banner{background:var(--tint-gold-bg);border:1px solid var(--tint-gold-border);color:var(--ink);cursor:pointer;text-align:left;border-radius:8px;justify-content:flex-start;align-items:center;gap:8px;width:100%;min-height:42px;padding:8px 12px;font-weight:700;text-decoration:none;display:flex}.assistant-proposal-banner-cta{background:var(--nav);color:#fff;white-space:nowrap;border-radius:6px;margin-left:auto;padding:4px 10px;font-size:.8rem}.assistant-chat{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;gap:10px;min-width:0;padding:12px;display:flex;position:relative;box-shadow:0 8px 22px #2a313814}.assistant-jump-latest{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius-pill,999px);box-shadow:var(--shadow);color:var(--ink);z-index:5;justify-content:center;align-items:center;min-width:36px;height:36px;min-height:36px;padding:0 10px;display:inline-flex;position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%)}.assistant-jump-latest:hover{border-color:var(--nav)}.assistant-transcript{grid-template-columns:min(100%, var(--assistant-measure));scrollbar-gutter:stable both-edges;place-content:start center;gap:22px;min-height:320px;max-height:min(62dvh,680px);padding:2px;display:grid;overflow:auto}.assistant-empty{color:var(--muted);text-align:center;align-content:center;justify-items:center;gap:7px;padding:4px 0 8px;display:grid}.assistant-empty-mark{color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.assistant-empty strong{color:var(--ink);letter-spacing:-.01em;font-size:1.75rem;font-weight:800;line-height:1.2}.assistant-empty-model{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.85rem;overflow:hidden}.assistant-chat-idle .assistant-transcript{flex:none;min-height:0;max-height:none;margin-top:auto;overflow:visible}.assistant-chat-idle>:last-child{margin-bottom:auto}.assistant-chat-idle .assistant-composer,.assistant-chat-idle .assistant-enable-callout,.assistant-chat-idle .assistant-idle-history,.assistant-chat-idle .assistant-suggestions{max-width:var(--assistant-measure);width:100%;margin-inline:auto}.assistant-chat-idle .assistant-composer{background:0 0;padding-top:0;padding-bottom:0;position:relative}.assistant-suggestions{gap:2px;min-width:0;margin-top:14px;display:grid}.assistant-suggestions .eyebrow{margin:0 0 2px;padding-left:16px}.assistant-suggestion{text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;flex-wrap:wrap;justify-content:flex-start;align-items:baseline;column-gap:8px;width:100%;min-width:0;padding:9px 16px;display:flex}.assistant-suggestion:hover{background:var(--panel-2);border-color:var(--line)}.assistant-suggestion strong{color:var(--ink);font-weight:700}.assistant-suggestion span{color:var(--muted);min-width:0;font-size:.88rem}.assistant-idle-history{flex-direction:column;gap:6px;min-height:0;margin-top:10px;display:flex}.assistant-idle-history .eyebrow{margin:0 0 2px}.assistant-idle-history-more{color:var(--muted);background:0 0;border:0;border-radius:10px;justify-content:flex-start;align-items:center;gap:8px;padding:8px;display:flex}.assistant-idle-history-more:hover{color:var(--ink)}.app-main-assistant{height:var(--assistant-vvh,100dvh);flex-direction:column;min-height:0;display:flex;overflow:hidden}.app-main-assistant>.app-header{flex:none}.workspace-assistant{flex-direction:column;flex:auto;gap:12px;min-height:0;padding:16px 28px 14px;display:flex;overflow:hidden}.workspace-assistant>.sync-banner,.workspace-assistant>.alert{flex:none;margin-bottom:0}.assistant-page{flex-direction:column;flex:auto;min-height:0;display:flex}.assistant-page-layer{flex:1;min-height:0}.assistant-chat{box-shadow:none;background:0 0;border:0;border-radius:0;flex-direction:column;flex:1;min-height:0;padding:0;display:flex}.assistant-transcript{flex:1;min-height:0;max-height:none;overflow-y:auto}.assistant-chat-idle{min-height:0}.assistant-idle-history{flex:0 auto;overflow-y:auto}.assistant-message{min-width:0;display:flex}.assistant-message.user{justify-content:flex-end}.assistant-message-bubble{background:var(--panel-2);border:1px solid var(--line);border-radius:14px;gap:8px;min-width:0;max-width:100%;padding:10px 12px;display:grid;position:relative}.assistant-message.assistant .assistant-message-bubble.assistant-message-plain{background:0 0;border:0;border-radius:0;padding:0}.assistant-message.user .assistant-message-bubble{background:var(--track);color:var(--ink);border-color:#0000;border-radius:18px 18px 6px;max-width:84%;padding:10px 14px}.assistant-message-bubble small{color:var(--muted);font-weight:700}.assistant-message-bubble.assistant-thinking{align-items:center;gap:10px;display:flex}.assistant-thinking p{color:var(--muted);margin:0}.assistant-typing{gap:4px;display:inline-flex}.assistant-typing i{background:var(--muted);border-radius:50%;width:7px;height:7px;animation:1.1s ease-in-out infinite assistant-typing}.assistant-send .assistant-typing i{background:#fff}.assistant-typing i:nth-child(2){animation-delay:.18s}.assistant-typing i:nth-child(3){animation-delay:.36s}@keyframes assistant-typing{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.assistant-message-bubble.assistant-thinking-feed{gap:8px;min-width:min(420px,88%);display:grid}.assistant-turn-progress{border-left:2px solid var(--line);gap:6px;margin:0;padding:2px 0 2px 10px;list-style:none;display:grid}.assistant-turn-progress li{gap:2px;min-width:0;font-size:.84rem;display:grid}.assistant-turn-progress-label{color:var(--ink);font-weight:700}.assistant-turn-progress li.thought .assistant-turn-progress-label{color:var(--muted);font-style:italic;font-weight:600}.assistant-turn-progress li.tool-ok .assistant-turn-progress-label{color:var(--green)}.assistant-turn-progress li.tool-fail .assistant-turn-progress-label{color:var(--danger)}.assistant-turn-progress-meta{color:var(--muted);font-style:normal;font-weight:600}.assistant-turn-progress-detail{color:var(--muted);overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem}.assistant-turn-trace{border:1px solid var(--line);border-radius:8px;justify-self:start;max-width:min(680px,92%);overflow:hidden}.assistant-turn-trace summary{color:var(--muted);cursor:pointer;align-items:center;gap:6px;min-height:36px;padding:6px 10px;font-size:.84rem;font-weight:700;display:flex}.assistant-turn-trace summary::-webkit-details-marker{display:none}.assistant-turn-trace .assistant-turn-progress{border-left:0;border-top:1px solid var(--line);padding:8px 10px}.assistant-thoughts{border:1px dashed var(--line);border-radius:8px;overflow:hidden}.assistant-turn-trace .assistant-thoughts,.assistant-turn-trace .assistant-tool-calls{border-left:0;border-right:0;border-top:1px solid var(--line);border-radius:0}.assistant-thoughts>summary{color:var(--muted);cursor:pointer;align-items:center;gap:6px;padding:6px 10px;font-size:.82rem;font-weight:700;display:flex}.assistant-thoughts>summary::-webkit-details-marker{display:none}.assistant-thoughts-live{background:var(--tint-blue-bg,#4a7bd914);gap:4px;padding:6px 10px;display:grid}.assistant-thoughts-title{color:var(--muted);align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.assistant-thoughts-body{color:var(--muted);white-space:pre-wrap;word-break:break-word;max-height:260px;margin:0;padding:6px 10px 8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.78rem;line-height:1.45;overflow:auto}.assistant-thoughts-live .assistant-thoughts-body{max-height:200px;padding:0}.assistant-tool-calls{gap:6px;padding:8px 10px;display:grid}.assistant-tool-call{border:1px solid var(--line);border-radius:8px;overflow:hidden}.assistant-tool-call>summary{cursor:pointer;flex-wrap:wrap;align-items:center;gap:6px;padding:6px 10px;font-size:.82rem;display:flex}.assistant-tool-call>summary::-webkit-details-marker{display:none}.assistant-tool-call-name{font-weight:700}.assistant-tool-call-id{color:var(--muted);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.74rem}.assistant-tool-call-status{text-transform:lowercase;border-radius:999px;padding:1px 8px;font-size:.72rem;font-weight:700}.assistant-tool-call-status.ok{background:var(--tint-green-bg,#3a9a6a1f);color:var(--green)}.assistant-tool-call-status.fail{background:var(--tint-coral-bg,#d95f541f);color:var(--danger)}.assistant-tool-call-meta{color:var(--muted);font-size:.76rem;font-weight:600}.assistant-tool-call-summary{color:var(--muted);margin:0;padding:0 10px 6px;font-size:.8rem}.assistant-tool-io{border-top:1px solid var(--line);gap:2px;padding:6px 10px;display:grid}.assistant-tool-io-label{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:700}.assistant-tool-io pre{background:var(--surface-2,#0f172a0a);white-space:pre-wrap;word-break:break-word;border-radius:6px;max-height:320px;margin:0;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.76rem;line-height:1.4;overflow:auto}.assistant-message-trace{max-width:100%;margin-top:8px}.assistant-message-trace>summary{min-height:30px;font-size:.8rem}.assistant-message-trace .inline-note{margin:0;padding:8px 10px}.assistant-trace-error{color:var(--danger,#b91c1c)}.assistant-tool-call-facts{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:4px 12px;padding:6px 10px;font-size:.74rem;display:flex}.assistant-tool-call-facts strong{color:var(--ink);font-weight:700}.assistant-trace-interventions{border-top:1px solid var(--line);gap:8px;padding:8px 10px;display:grid}.assistant-trace-intervention{border-left:3px solid var(--warn,#d97706);gap:2px;padding-left:8px;display:grid}.assistant-trace-intervention>span{color:var(--muted);font-size:.8rem}.assistant-trace-intervention pre{background:var(--surface-2,#0f172a0a);white-space:pre-wrap;word-break:break-word;border-radius:6px;max-height:200px;margin:4px 0 0;padding:8px 10px;font-size:.76rem;overflow:auto}.assistant-trace-replaced{border-top:1px solid var(--line);padding:6px 10px}.assistant-trace-replaced>summary{color:var(--muted);cursor:pointer;font-size:.76rem;font-weight:700}.assistant-trace-replaced pre{background:var(--surface-2,#0f172a0a);white-space:pre-wrap;word-break:break-word;border-radius:6px;max-height:200px;margin:6px 0 0;padding:8px 10px;font-size:.76rem;overflow:auto}.assistant-trace-diagnostics{border-top:1px solid var(--line);color:var(--muted);flex-wrap:wrap;gap:4px 12px;padding:6px 10px;font-size:.74rem;display:flex}.assistant-trace-diagnostics strong{color:var(--ink);font-weight:700}.assistant-tool-catalog{gap:6px;display:grid}.assistant-tool-catalog-group{border:1px solid var(--line);border-radius:8px;overflow:hidden}.assistant-tool-catalog-group>summary{cursor:pointer;align-items:center;gap:8px;min-height:36px;padding:6px 10px;font-size:.86rem;font-weight:700;display:flex}.assistant-tool-catalog-group>summary::-webkit-details-marker{display:none}.assistant-tool-catalog-count{background:var(--surface-2,#0f172a0f);color:var(--muted);border-radius:999px;margin-left:auto;padding:1px 8px;font-size:.72rem}.assistant-tool-catalog-group ul{border-top:1px solid var(--line);gap:4px;margin:0;padding:8px 10px;list-style:none;display:grid}.assistant-tool-catalog-group li{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.assistant-tool-catalog-name{font-size:.84rem}.assistant-tool-catalog-group code{color:var(--muted);font-size:.72rem}.assistant-tool-catalog-tag{text-transform:uppercase;border-radius:999px;margin-left:auto;padding:1px 8px;font-size:.7rem;font-weight:700}.assistant-tool-catalog-tag.read{background:var(--surface-2,#0f172a0f);color:var(--muted)}.assistant-tool-catalog-tag.write{background:color-mix(in srgb, var(--warn,#d97706) 16%, transparent);color:var(--warn,#b45309)}.assistant-message-bubble.assistant-message-error{background:var(--tint-coral-bg);border-color:var(--tint-coral-border)}.assistant-message-error strong{color:var(--danger)}.assistant-error-hint{color:var(--muted);font-size:.85rem}.assistant-error-unsaved{color:var(--danger);font-size:.9rem}.assistant-message-bubble.assistant-approval-card{background:var(--tint-amber-bg,#d9a44114);border-color:var(--tint-amber-border,#d9a44166);gap:8px;display:grid}.assistant-message-bubble.assistant-approval-resolved{background:var(--tint-neutral-bg);border-color:var(--tint-neutral-border);gap:8px;display:grid}.assistant-message-bubble.assistant-approval-resolved[data-outcome=executed]{background:var(--tint-green-bg);border-color:var(--tint-green-border)}.assistant-message-bubble.assistant-approval-resolved[data-outcome=failed]{background:var(--tint-coral-bg);border-color:var(--tint-coral-border)}.assistant-approval-resolved-line{color:var(--nav-ink);align-items:center;gap:6px;min-width:0;margin:0;font-weight:700;display:flex}.assistant-approval-resolved-line span{overflow-wrap:anywhere}.assistant-approval-resolved[data-outcome=executed] .assistant-approval-resolved-line{color:var(--tint-green-text)}.assistant-approval-resolved[data-outcome=failed] .assistant-approval-resolved-line{color:var(--tint-coral-text)}.assistant-approval-head{display:contents}.assistant-approval-meta{color:var(--muted);font-size:.85rem}.assistant-approval-actions{flex-wrap:wrap;gap:8px;display:flex}.assistant-approval-actions button{flex:140px;min-height:44px}.assistant-approval-item{gap:2px;min-width:0;margin:0;display:grid}.assistant-approval-item-name{color:var(--nav-ink);overflow-wrap:anywhere;font-size:1.02rem;font-weight:800}.assistant-approval-item-meta{color:var(--muted);overflow-wrap:anywhere;font-size:.88rem}.assistant-approval-item-list{color:var(--nav-ink);overflow-wrap:anywhere;font-size:.88rem;font-weight:700}.assistant-approval-attachment{min-width:0;margin:4px 0}.assistant-approval-attachment-preview{border:1px solid var(--divider,#0000001f);object-fit:contain;border-radius:10px;width:auto;max-width:100%;max-height:220px;display:block}.assistant-approval-attachment-file{background:var(--surface-2,#0000000d);color:var(--nav-ink);overflow-wrap:anywhere;border-radius:8px;padding:6px 10px;font-size:.9rem;font-weight:600;display:inline-block}.assistant-approval-links{flex-wrap:wrap;gap:12px;display:flex}.assistant-approval-link{box-shadow:none;color:var(--blue);cursor:pointer;background:0 0;border:0;align-items:center;gap:5px;min-height:36px;padding:4px 2px;font-size:.85rem;font-weight:700;display:inline-flex}.assistant-approval-link:hover{text-decoration:underline}.assistant-approval-link-disabled{color:var(--muted);align-items:center;gap:5px;min-height:36px;padding:4px 2px;font-size:.85rem;display:inline-flex}.assistant-approvals-badge{background:var(--danger);color:#fff;text-align:center;border-radius:999px;min-width:16px;padding:3px 4px;font-size:.66rem;font-weight:800;line-height:1;position:absolute;top:2px;right:2px}.assistant-approval-refine{gap:8px;display:grid}.assistant-approval-refine label{gap:4px;font-size:.85rem;font-weight:700;display:grid}.assistant-approval-refine input{width:100%;min-height:40px}.assistant-approval-refine-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.assistant-approval-diff summary{cursor:pointer;color:var(--muted);font-size:.85rem}.assistant-approval-diff pre{max-height:220px;margin:6px 0 0;font-size:.78rem;overflow:auto}.assistant-message-bubble p{overflow-wrap:anywhere;white-space:pre-wrap;margin:0}.assistant-answer-text{gap:8px;min-width:0;display:grid}.assistant-answer-list{gap:6px;margin:0;padding-left:18px;display:grid}.assistant-answer-list li{overflow-wrap:anywhere;padding-left:2px}.assistant-sources{gap:7px;display:grid}.assistant-source-strip{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.assistant-source-chip{background:var(--panel);border:1px solid var(--line);color:var(--nav-ink);border-radius:6px;gap:1px;max-width:100%;min-height:32px;padding:5px 7px;display:inline-grid}.assistant-source-chip strong,.assistant-source-chip small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-source-chip small{color:var(--muted);font-size:.72rem}.assistant-links{flex-wrap:wrap;align-items:center;gap:6px;min-width:0;margin-top:7px;display:flex}.assistant-links-label{color:var(--muted);font-size:.72rem}.assistant-link-chip{background:var(--panel);border:1px solid var(--line);color:var(--blue);cursor:pointer;text-overflow:ellipsis;white-space:nowrap;border-radius:6px;max-width:100%;min-height:28px;padding:4px 9px;font-size:.78rem;text-decoration:none;overflow:hidden}.assistant-link-chip:hover{border-color:var(--blue);text-decoration:underline}.assistant-message-head{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.assistant-message-menu-button{color:var(--muted);background:0 0;border:0;border-radius:6px;flex:none;width:26px;min-width:26px;height:26px;min-height:26px;padding:0}.assistant-message-menu-button:hover{color:var(--ink);background:#12344714}.assistant-menu-backdrop{z-index:70;background:0 0;position:fixed;inset:0}.assistant-message-menu{background:var(--panel);border:1px solid var(--line);z-index:75;border-radius:8px;min-width:220px;display:grid;position:absolute;top:36px;right:8px;overflow:hidden;box-shadow:0 10px 26px #00000029}.assistant-message-menu button{background:var(--panel);text-align:left;border:0;border-radius:0;justify-content:flex-start;gap:8px;min-height:44px;padding:9px 12px}.assistant-message-menu button+button{border-top:1px solid var(--line)}.assistant-message-menu button:hover{background:#f2f7f5}.assistant-dialog-backdrop{justify-content:center;align-items:center}.assistant-message-dialog{background:var(--panel);border:1px solid var(--line);border-radius:12px;gap:12px;width:100%;max-width:min(540px,100%);max-height:min(80dvh,640px);padding:14px;display:grid;overflow:auto;box-shadow:0 18px 42px #00000038}.assistant-dialog-body{gap:9px;min-height:0;display:grid;overflow:auto}.assistant-dialog-body article{border:1px solid var(--line);border-radius:8px;gap:3px;padding:10px;display:grid}.assistant-dialog-body article small{color:var(--muted)}.assistant-dialog-body article p{color:var(--muted);margin:0}.assistant-dialog-form{gap:10px;display:grid}.assistant-dialog-form label{gap:4px;display:grid}.assistant-dialog-actions{justify-content:flex-end;gap:8px;display:flex}.assistant-activity-counts{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.assistant-activity-counts span{background:var(--tint-green-soft);border:1px solid var(--line);border-radius:8px;gap:2px;min-width:0;padding:9px;display:grid}.assistant-activity-counts strong{color:var(--nav-ink);font-size:1.1rem}.assistant-activity-counts small{color:var(--muted)}.assistant-enable-callout{border:1px solid var(--tint-green-border);background:var(--tint-green-bg);border-radius:8px;align-items:center;gap:12px;margin-top:10px;padding:12px 14px;display:flex}.assistant-enable-callout.blocked{background:var(--tint-coral-bg);border-color:var(--tint-coral-border)}.assistant-enable-callout.blocked>svg{color:var(--coral)}.assistant-enable-callout>svg{color:var(--green);flex:none}.assistant-enable-copy{flex:auto;gap:2px;min-width:0;display:grid}.assistant-enable-copy strong{font-weight:800}.assistant-enable-copy span{color:var(--muted);font-size:.88rem}.assistant-enable-callout button{flex:none}.assistant-composer{grid-template-columns:minmax(0,1fr);gap:8px;padding-top:10px;display:grid;position:relative}.assistant-composer-field,.assistant-staged-uploads,.assistant-staged-error,.assistant-queue-dock{max-width:var(--assistant-measure);width:100%;margin-inline:auto}.assistant-composer-field{background:var(--panel);border:1px solid var(--line);border-radius:20px;grid-template-columns:minmax(0,1fr);gap:2px;padding:6px 8px 8px;transition:border-color .15s,box-shadow .15s;display:grid}.assistant-composer-field:focus-within{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-glow)}@media (prefers-reduced-motion:reduce){.assistant-composer-field{transition:none}}.assistant-composer textarea{resize:none;background:0 0;border:0;border-radius:0;min-height:40px;max-height:200px;padding:8px 8px 4px}.assistant-composer textarea:focus-visible{outline:none}.assistant-composer textarea::placeholder{color:var(--muted)}.assistant-composer-field .assistant-attach,.assistant-composer-field .assistant-stop,.assistant-composer-field .assistant-voice,.assistant-composer-field .assistant-voice-cancel,.assistant-send{border-radius:12px;width:36px;min-width:36px;height:36px;min-height:36px;padding:0}.assistant-send:disabled{opacity:.55}.assistant-composer-actions{justify-self:end;align-items:center;gap:6px;display:flex}.assistant-file-input{display:none}.assistant-attach{border-radius:12px;min-width:44px;height:44px}.assistant-stop{background:var(--tint-neutral-bg);border-color:var(--tint-neutral-border);color:var(--ink)}.assistant-staged-uploads{flex-wrap:wrap;grid-column:1/-1;gap:6px;margin:0;padding:0;list-style:none;display:flex}.assistant-staged-chip{background:var(--surface-2,var(--panel));border:1px solid var(--line);border-radius:10px;align-items:center;gap:6px;max-width:240px;padding:4px 6px 4px 4px;display:inline-flex}.assistant-staged-thumb{object-fit:cover;border-radius:6px;flex:none;width:28px;height:28px}.assistant-staged-thumb-file{background:var(--line);color:var(--muted);justify-content:center;align-items:center;display:inline-flex}.assistant-staged-name{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.assistant-staged-remove{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex:none;align-items:center;padding:2px;display:inline-flex}.assistant-staged-remove:hover:not(:disabled){background:var(--line);color:var(--ink)}.assistant-staged-uploading{color:var(--muted)}.assistant-staged-error{color:var(--danger);grid-column:1/-1;margin:0;font-size:.82rem}.assistant-queue-dock{grid-column:1/-1;gap:6px;display:grid}.assistant-queue{gap:6px;margin:0;padding:0;list-style:none;display:grid}.assistant-queue-item{background:var(--surface-2,var(--panel));border:1px solid var(--line);border-radius:12px;align-items:center;gap:8px;padding:6px 8px;display:flex}.assistant-queue-position{background:var(--line);color:var(--muted);border-radius:999px;flex:none;justify-content:center;align-items:center;min-width:20px;height:20px;padding:0 5px;font-size:.72rem;display:inline-flex}.assistant-queue-text{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.86rem;overflow:hidden}.assistant-queue-files{color:var(--muted);flex:none;align-items:center;gap:2px;font-size:.76rem;display:inline-flex}.assistant-queue-action{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;flex:none;justify-content:center;align-items:center;min-width:28px;min-height:28px;padding:4px;display:inline-flex}.assistant-queue-action:hover:not(:disabled){background:var(--line);color:var(--ink)}@media (width<=980px){.assistant-queue-action{min-width:40px;min-height:40px}}.assistant-queue-promote:hover:not(:disabled){color:var(--blue)}.assistant-queue-remove:hover:not(:disabled){color:var(--danger)}.assistant-queue-edit{gap:6px;width:100%;display:grid}.assistant-queue-edit textarea{background:var(--panel);border:1px solid var(--line);resize:vertical;border-radius:10px;width:100%;padding:6px 8px;font-size:.86rem}.assistant-queue-edit-actions{justify-content:flex-end;gap:6px;display:flex}.assistant-queue-edit-actions button{min-height:30px;padding:0 10px;font-size:.8rem}.assistant-queue-held{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:.8rem;display:flex}.assistant-queue-held button{min-height:30px;padding:0 10px;font-size:.8rem}.assistant-composer-dragging{outline:2px dashed var(--accent,var(--brand,#6366f1));outline-offset:4px;border-radius:12px}.assistant-composer-drop{background:color-mix(in srgb, var(--panel) 88%, transparent);color:var(--muted);pointer-events:none;z-index:3;border-radius:12px;justify-content:center;align-items:center;gap:8px;font-size:.9rem;display:flex;position:absolute;inset:0}.assistant-voice,.assistant-voice-cancel{border-radius:12px;min-width:44px;height:44px;padding:0}.assistant-voice.recording{border-color:var(--danger);color:var(--danger)}.assistant-voice-elapsed{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;font-size:.85rem;display:inline-flex}.assistant-voice-dot{background:var(--danger);border-radius:50%;width:9px;height:9px;animation:1.2s ease-in-out infinite assistant-voice-pulse;display:inline-block}@keyframes assistant-voice-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.75)}}@media (prefers-reduced-motion:reduce){.assistant-voice-dot{animation:none}}.assistant-voice-note{background:var(--panel);border:1px solid var(--line);box-shadow:var(--shadow);color:var(--muted);z-index:5;border-radius:8px;margin:0;padding:7px 10px;font-size:.85rem;position:absolute;bottom:calc(100% + 6px);left:0;right:0}.assistant-details-drawer{grid-template-rows:auto minmax(0,1fr)}.assistant-details-body{gap:14px;min-height:0;display:grid;overflow:auto}.assistant-details-body h3{margin:0 0 8px;font-size:.95rem}.assistant-details-list{gap:8px;display:grid}.assistant-details-list>div{border:1px solid var(--line);border-radius:8px;gap:2px;min-width:0;padding:9px 10px;display:grid}.assistant-details-list small{color:var(--muted);font-weight:700}.assistant-details-list strong{overflow-wrap:anywhere}.assistant-model-picker{gap:6px;display:grid}.assistant-model-picker select{width:100%;min-height:38px}.assistant-model-picker small{color:var(--muted)}.assistant-model-picker .assistant-model-switching{color:var(--tint-gold-text);font-weight:700}.assistant-model-picker .assistant-model-warning{color:var(--gold);font-weight:700}.assistant-details-body .inline-note{margin:8px 0 0}.assistant-activity-backdrop{z-index:80;background:#161f276b;justify-content:flex-end;align-items:stretch;padding:12px;display:flex;position:fixed;inset:0}.assistant-activity-drawer{background:var(--panel);border:1px solid var(--line);border-radius:8px;grid-template-rows:auto auto minmax(0,1fr);gap:12px;min-width:min(460px,100%);max-width:min(520px,100%);padding:14px;display:grid;box-shadow:0 18px 42px #00000038}.assistant-activity-list{gap:9px;min-height:0;display:grid;overflow:auto}.assistant-activity-row{border:1px solid var(--line);border-left:4px solid var(--tint-blue-border);border-radius:8px;gap:7px;padding:10px;display:grid}.assistant-activity-row.success{border-left-color:var(--green)}.assistant-activity-row.warning,.assistant-activity-row.blocked{border-left-color:var(--tint-gold-border-strong)}.assistant-activity-row.failed{border-left-color:var(--danger)}.assistant-activity-row strong,.assistant-activity-row small{display:block}.assistant-activity-row small{color:var(--muted)}.assistant-activity-row p{overflow-wrap:anywhere;margin:0}.proposal-group{gap:10px;min-width:0;display:grid}.assistant-approvals-drawer{max-width:min(640px,100%)}.assistant-approvals-count{align-items:center;gap:6px;display:inline-flex}.assistant-approvals-list{gap:16px;min-height:0;padding-right:2px;display:grid;overflow-y:auto}.proposal-examples{flex-wrap:wrap;gap:7px;min-width:0;display:flex}.proposal-examples span{background:var(--tint-blue-bg);border:1px solid var(--line);color:var(--nav-ink);overflow-wrap:anywhere;border-radius:6px;max-width:100%;padding:6px 8px;font-size:.82rem;font-weight:700}.proposal-card-list{gap:12px;min-width:0;display:grid}.proposal-card{background:var(--panel);border:1px solid var(--line);border-radius:8px;gap:13px;min-width:0;padding:14px;display:grid;box-shadow:0 8px 22px #2a313814}.proposal-card-resolved{box-shadow:none;opacity:.85;gap:9px}.proposal-history>summary{color:var(--muted);cursor:pointer;padding:4px 0;font-size:13px}.proposal-history[open]>summary{margin-bottom:10px}.proposal-card-head{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;display:grid}.proposal-card-head h3{overflow-wrap:anywhere;font-size:1.12rem}.proposal-status{border:1px solid var(--line);text-transform:capitalize;white-space:nowrap;border-radius:6px;padding:5px 7px;font-size:.78rem;font-weight:800}.proposal-status.pending,.proposal-status.approved{background:var(--tint-gold-bg);border-color:var(--tint-gold-border-strong);color:var(--tint-gold-text)}.proposal-status.executed{background:var(--tint-green-bg-strong);border-color:var(--tint-green-border);color:var(--green)}.proposal-status.rejected,.proposal-status.failed,.proposal-status.expired,.proposal-status.cancelled{background:var(--tint-coral-bg-strong);border-color:var(--tint-coral-border);color:var(--danger)}.proposal-fact-line{color:var(--muted);flex-wrap:wrap;gap:6px 14px;min-width:0;margin:0;font-size:.85rem;display:flex}.proposal-fact-line span{overflow-wrap:anywhere}.proposal-card-item{color:var(--nav-ink);overflow-wrap:anywhere;margin:0;font-weight:700}.proposal-source-list small{color:var(--muted)}.proposal-details{border:1px solid var(--line);border-radius:8px;overflow:hidden}.proposal-details summary{cursor:pointer;min-height:44px;padding:11px 12px;font-weight:800;list-style:none}.proposal-details summary::-webkit-details-marker{display:none}.proposal-detail-grid{border-top:1px solid var(--line);grid-template-columns:minmax(280px,1.15fr) minmax(220px,.85fr) minmax(180px,.65fr);gap:12px;padding:12px;display:grid}.proposal-detail-grid section,.proposal-source-list{gap:8px;min-width:0;display:grid}.proposal-detail-grid pre{background:var(--panel-2);border:1px solid var(--line);white-space:pre-wrap;border-radius:6px;max-width:100%;margin:0;padding:10px;font-size:.82rem;overflow:auto}.proposal-source-list span{border-bottom:1px solid var(--line);gap:3px;min-width:0;padding-bottom:7px;display:grid}.proposal-source-list strong{overflow-wrap:anywhere}.proposal-review-warning{background:var(--tint-gold-bg);border:1px solid var(--tint-gold-border-strong);color:var(--tint-gold-text);border-radius:8px;align-items:center;gap:7px;padding:8px 10px;display:inline-flex}.proposal-review-actions{flex-wrap:wrap;align-items:end;gap:10px;display:flex}.proposal-review-actions label{flex:190px;min-width:0}.proposal-review-actions button{flex:none;min-height:42px}.proposal-secondary{border-top:1px solid var(--line);padding-top:8px}.proposal-secondary summary{color:var(--muted);cursor:pointer;min-height:36px;padding:6px 0;font-size:.85rem;font-weight:700}.proposal-secondary-actions{grid-template-columns:minmax(220px,1fr) minmax(260px,1.35fr);gap:10px;padding-top:8px;display:grid}.proposal-secondary-actions form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:10px;min-width:0;display:grid}.proposal-secondary-actions form:last-child{grid-template-columns:minmax(0,1fr) minmax(140px,.55fr) auto}.proposal-item-form{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;gap:10px;min-width:0;padding:12px;display:grid}.proposal-item-form label{gap:4px;min-width:0;font-size:.85rem;font-weight:700;display:grid}.proposal-item-form input{width:100%;min-height:40px}.proposal-item-form-list{color:var(--muted);margin:0;font-size:.85rem}.proposal-item-form-picker{gap:4px;display:grid}.assistant-list-combobox .placement-combobox-add{border-top:0;border-bottom:1px solid var(--line);margin:0 0 4px;position:sticky;top:0;bottom:auto}.assistant-list-combobox .placement-combobox-option{justify-content:space-between}.proposal-item-form-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;display:grid}.proposal-item-form-error{color:var(--danger);margin:0;font-size:.85rem}.proposal-item-form-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.proposal-item-form-actions button{min-height:42px}@media (width>=981px){.project-side{position:sticky;top:92px}.inventory-page.has-asset-detail{grid-template-columns:minmax(360px,.88fr) minmax(420px,1.12fr);align-items:start}.inventory-page.has-asset-detail .inventory-list-area,.inventory-page.has-asset-detail .inventory-detail-area{max-height:calc(100dvh - 112px);position:sticky;top:92px;overflow:auto}}@media (width>=1360px){.inventory-page.has-asset-detail .asset-detail-panel .drawer-grid{grid-template-columns:minmax(0,1fr) minmax(280px,.85fr)}}@media (width<=980px){:root{--app-header-height:66px}.app-shell{display:block}.app-header{gap:10px;padding:10px 14px}.header-main{gap:8px}.menu-toggle{display:inline-flex}.current-page h1{font-size:1.08rem}.current-page .eyebrow{font-size:.66rem}.top-actions{gap:6px}.workspace{padding:16px 14px calc(16px + env(safe-area-inset-bottom))}.side-nav{z-index:60;width:min(300px,86vw);height:100dvh;box-shadow:var(--shadow);visibility:hidden;transition:transform .22s,visibility .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.nav-open .side-nav{visibility:visible;transform:none}.nav-collapse-toggle{display:none}.nav-close{display:inline-flex}.page-groups{gap:12px}.nav-item{min-height:42px}@media (prefers-reduced-motion:reduce){.side-nav{transition:none}}.content-grid>.panel,.metric{grid-column:span 12}.inventory-screen-tabs{z-index:20;position:sticky;top:66px}.settings-page{grid-template-columns:minmax(0,1fr)}.settings-nav{z-index:20;background:var(--page);scrollbar-width:none;padding:2px 0 8px;display:flex;position:sticky;top:66px;overflow-x:auto}.settings-nav::-webkit-scrollbar{display:none}.settings-nav button{flex:none;min-height:44px}.settings-page>.settings-section{grid-column:1}.google-subsection-head{grid-template-columns:minmax(0,1fr)}.shopping-trip-home>.shopping-trip-home-panel,.trip-panel,.trip-side-panel{grid-column:span 12}.trip-side-panel .metric{grid-column:auto;min-height:84px}.active-shopping-page .content-grid{gap:12px}.active-shopping-page .panel{--panel-pad:12px}.trip-side-panel{gap:12px}.trip-item-main-row,.trip-item-primary-group,.trip-item-secondary-group{gap:6px}.trip-item-qty-input{flex-basis:52px;min-width:44px;padding-left:4px;padding-right:4px}.trip-item-price-input{flex-basis:96px;min-width:88px}.trip-item-optional-grid{grid-template-columns:minmax(0,1fr)}.inventory-find-grid{grid-template-columns:1fr}.inventory-toolbar-header,.inventory-toolbar-actions{flex-wrap:wrap;align-items:stretch}.inventory-sort-select{flex:190px}.inventory-sort-select select{width:100%;max-width:none}.inventory-page.has-asset-detail{display:block}.inventory-page.has-asset-detail .inventory-list-area{display:none}.inventory-page.has-asset-detail .inventory-detail-area{max-height:none;position:static;overflow:visible}.asset-detail-panel{box-shadow:none;background:0 0;border:0;padding:0}.asset-detail-return{background:var(--panel);margin-bottom:2px;display:inline-flex}.asset-detail-close{display:none}.inventory-filter-chip{width:100%}.inventory-add-screen,.inventory-labels-screen,.inventory-add-panel{width:100%;max-width:100%}.inventory-add-kind,.inventory-label-panel{width:100%}.inventory-place-form,.inventory-label-source-grid,.inventory-label-setup{grid-template-columns:1fr}.inventory-place-form>button,.inventory-label-generate-row>button,.settings-inventory-data-panel .inventory-transfer-row>button,.settings-inventory-data-panel .inventory-transfer-row>.file-action{justify-content:center;width:100%;min-height:44px}.inventory-label-step-head{align-items:flex-start}.inventory-label-choice-list{max-height:240px}.dashboard-grid>.metric{grid-column:span 6}.quick-entry-primary,.quick-entry-secondary{grid-template-columns:1fr}.quick-entry-submit{justify-self:stretch;width:100%}.photo-action-row{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.inventory-transfer-row{grid-template-columns:1fr;display:grid}.file-action,.manual-page-label,.photo-count,.inventory-transfer-row button,.inventory-transfer-message,.photo-action-row button{width:100%}.photo-count{grid-column:1/-1}.shared-photo-toggle{width:100%}.shared-photo-draft{grid-template-columns:auto minmax(0,1fr)}.shared-photo-draft .ghost-button{grid-column:1/-1;width:100%}.inventory-unsaved-entry{grid-template-columns:auto minmax(0,1fr)}.inventory-unsaved-entry-actions{grid-column:1/-1}.inventory-unsaved-entry-actions button{flex:140px;justify-content:center}.google-browser-backup-head,.google-browser-backup-controls,.google-drive-backup-row,.google-connection-main{grid-template-columns:1fr;align-items:stretch}.google-drive-status{justify-self:start;width:100%}.google-primary-actions,.google-status-stack{grid-template-columns:1fr;display:grid}.google-primary-actions button,.google-copy-grid button,.google-action-row button,.google-browser-backup-controls button,.google-drive-backup-actions,.google-drive-backup-actions a,.google-drive-backup-actions button{width:100%}.google-drive-backup-actions{grid-template-columns:1fr;justify-content:stretch;display:grid}.camera-capture-modal{max-height:calc(100dvh - 28px)}.camera-capture-actions{grid-template-columns:1fr 1fr;display:grid}.camera-capture-actions button{width:100%}.camera-capture-result-actions{grid-template-columns:1fr 1fr;display:grid}.camera-capture-result-actions button{width:100%}.camera-capture-result-actions button.primary,.manual-page-label{grid-column:1/-1}.attachment-row{grid-template-columns:58px minmax(0,1fr);align-items:center;display:grid}.attachment-actions{grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));justify-content:stretch;display:grid}.attachment-actions a,.attachment-actions button{width:100%}.attachment-viewer{align-items:end;padding:8px}.attachment-viewer-panel{max-height:96vh;padding:10px}.attachment-viewer-header{align-items:center}.attachment-viewer-image{max-height:calc(96vh - 122px)}.quick-grid,.columns-3,.product-row,.scan-summary,.meal-hero,.meal-layout,.chore-layout,.chore-create-layout,.chore-detail-layout,.chore-form,.project-layout,.feedback-layout,.floor-plan-page,.floor-plan-toolbar,.floor-plan-workbench,.bms-page,.bms-workbench,.network-page,.network-workbench,.project-form,.drawer-grid,.entity-activity-grid,.meal-controls{grid-template-columns:1fr}.floor-plan-side,.floor-plan-side.is-collapsed{width:auto}.floor-plan-main,.bms-main,.network-main{order:1}.floor-plan-side,.bms-side,.network-side{order:2}.project-switcher-bar{order:1}.project-main{order:2}.project-side{order:3}.chore-stats-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;display:grid}.chore-card-main,.template-row,.settings-permission-row,.feedback-row-main,.floor-asset-search article,.bms-device-head,.network-toolbar,.bms-command-form{grid-template-columns:1fr}.feedback-form-panel,.feedback-recent-panel{width:100%}.feedback-sync-pill{white-space:normal;justify-self:start}.floor-plan-canvas-wrap{padding:8px;overflow:hidden}.floor-canvas-controls{top:10px;right:10px}.floor-plan-canvas{aspect-ratio:auto;min-width:0}html[data-app-frame=floor-plan-edit] .fp-editor-canvas-wrap{min-height:0}.floor-plan-toolbar h2{overflow-wrap:anywhere}.api-key-client-head,.api-key-client-actions,.api-key-row{align-items:stretch}.api-key-client-actions button,.api-key-row-actions button,.api-key-form-actions button{justify-content:center;width:100%;min-height:44px}.permission-option-list,.api-key-form-row{grid-template-columns:1fr;display:grid}.tree-row{grid-template-columns:minmax(0,1fr);align-items:start}.tree-row.location{grid-template-columns:minmax(0,1fr) auto 24px;align-items:center}.tree-row.asset.asset-rail-row{grid-template-columns:14px 34px minmax(0,1fr) auto;align-items:center;min-height:52px;padding-block:5px}.asset-row-thumb{border-radius:8px;width:34px;height:34px}.asset-row-main .asset-title-line strong{font-size:.86rem}.asset-row-meta{font-size:.75rem}.tree-row small{justify-self:start;max-width:100%}.chore-actions{overflow-x:auto}.chore-actions button{min-width:72px}.project-layout{gap:10px}.project-selector,.project-overview,.project-section,.project-action-form{border-radius:6px;padding:9px}.project-selector-head,.project-titlebar,.project-section-head{align-items:stretch}.project-selector-head{grid-template-columns:minmax(0,1fr) auto;display:grid}.project-list{gap:7px;padding-bottom:2px;display:flex;overflow-x:auto}.project-list-item{min-width:min(280px,82vw)}.project-section-actions button,.project-section-head>button,.project-form-actions button{width:100%}.project-overview-controls{grid-template-columns:1fr}.project-section-head{grid-template-columns:minmax(0,1fr);display:grid}.project-section-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.project-data-row{grid-template-columns:1fr}.project-row-link,.project-row-buttons{justify-content:start}.project-form-actions{z-index:8;background:var(--panel);padding:9px 0 calc(9px + env(safe-area-inset-bottom));grid-template-columns:repeat(2,minmax(0,1fr));display:grid;position:sticky;bottom:0}.chore-row-actions .chore-actions,.chore-actions.compact{overflow-x:visible}.chore-row-actions .chore-actions button,.chore-actions.compact button{min-width:34px}.meal-review{position:static}.meal-hero{align-items:start;min-height:0;padding:16px}.meal-hero h1{font-size:1.75rem;line-height:1.08}.meal-stats{grid-template-columns:repeat(4,minmax(90px,1fr));overflow-x:auto}.meal-stats span{min-width:110px}.meal-card-grid{scroll-snap-type:x mandatory;padding-bottom:8px;display:flex;overflow-x:auto}.meal-card{scroll-snap-align:start;min-width:min(88vw,360px)}.meal-drawer{padding:8px}.proposal-group-head,.proposal-card-head,.proposal-review-actions,.proposal-secondary-actions,.proposal-secondary-actions form,.proposal-secondary-actions form:last-child,.proposal-detail-grid{grid-template-columns:1fr}.proposal-group-head{align-items:stretch;display:grid}.assistant-chat-header{gap:8px}.assistant-chat-header-actions button span{display:none}.workspace-assistant{gap:8px;padding:10px 10px 0}.assistant-page,.assistant-page-layer{gap:8px}.assistant-message-bubble{max-width:100%}.assistant-message.user .assistant-message-bubble{max-width:94%}.assistant-turn-trace{justify-self:stretch;max-width:100%}.assistant-message-bubble.assistant-approval-card,.assistant-message-bubble.assistant-approval-resolved{gap:6px}.assistant-approval-head{flex-wrap:wrap;align-items:baseline;column-gap:6px;display:flex}.assistant-approval-item{display:block}.assistant-approval-item-meta,.assistant-approval-item-list{margin-left:6px}.assistant-approval-card>.assistant-error-hint{display:none}.assistant-approval-link,.assistant-approval-link-disabled{min-height:30px}.assistant-approval-card .proposal-item-form{gap:8px;padding:10px}.assistant-approval-card .proposal-item-form-actions{flex-direction:row}.assistant-approval-card .proposal-item-form-actions button{flex:auto;width:auto}.assistant-composer{background:var(--page);padding-bottom:max(10px, env(safe-area-inset-bottom));z-index:4;position:sticky;bottom:0}.assistant-transcript{scrollbar-gutter:auto;gap:16px}.assistant-composer-field{border-radius:18px;padding:4px 6px 6px}.assistant-composer-field .assistant-attach,.assistant-composer-field .assistant-stop,.assistant-composer-field .assistant-voice,.assistant-composer-field .assistant-voice-cancel,.assistant-send{width:44px;min-width:44px;height:44px;min-height:44px}.assistant-empty strong{font-size:1.4rem}.assistant-suggestion{flex-direction:column;align-items:flex-start;row-gap:1px}.assistant-activity-backdrop{padding:8px}.assistant-activity-drawer{width:100%;min-width:0}.assistant-activity-counts{grid-template-columns:repeat(2,minmax(0,1fr))}.proposal-review-actions button,.proposal-secondary-actions button,.proposal-item-form-actions button{width:100%}.proposal-item-form-actions{flex-direction:column-reverse}}@media (width<=430px){.app-header{gap:8px;padding:9px 10px}.assistant-enable-callout{grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.assistant-enable-callout button{grid-column:1/-1;width:100%}.project-titlebar{flex-wrap:wrap}.project-titlebar>div{flex:100%;min-width:0}.icon-button{width:40px;min-width:40px;height:40px}.drawer-header{grid-template-columns:minmax(0,1fr)}.drawer-actions{justify-content:space-between}.current-page h1{font-size:1rem}.side-nav{width:min(288px,88vw)}.floor-plan-canvas-wrap:not(.fp-editor-canvas-wrap){height:min(62dvh,460px)}.floor-plan-canvas-wrap{padding:6px}.fp-3d-stage{height:min(62dvh,460px);min-height:240px}.floor-canvas-controls{top:8px;right:8px}html[data-app-frame=floor-plan-edit] .fp-editor-canvas-wrap{min-height:0}.floor-plan-toolbar h2{font-size:1.2rem}.chore-list-action-row{grid-template-columns:minmax(0,1fr) auto;gap:7px}.chore-list-action-row .primary{min-width:92px;padding-inline:10px}.chore-tree-panel,.chore-create-panel,.chore-detail-panel{padding:10px}.chore-list-heading-row{align-items:start}.list-filter-panel{width:min(300px,100vw - 32px);right:-2px}.due-picker-input-row,.create-action-row{grid-template-columns:1fr}.recurrence-inline{grid-template-columns:auto 64px minmax(0,1fr)}.chore-detail-summary .chore-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid;overflow-x:visible}.chore-detail-summary .chore-actions button{width:100%;min-width:0}.category-modal,.draft-modal,.delete-modal{padding:14px}}@media print{.app-header,.side-nav,.nav-backdrop,.inline-form,.search-box,.alert{display:none!important}.app-shell{display:block}:root,:root[data-theme=dark]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#17242d;--muted:#5f7079;--line:#d4dfe4;--line-strong:#a8bdc7;--panel:#fff;--panel-2:#fbfcfd;--page:#fff;--nav-ink:#123447}body{background:#fff}.workspace{padding:0}.panel{box-shadow:none;border:0}}.list-sheet{gap:10px;min-width:0;display:grid}.list-sheet:focus{outline:none}.list-sheet-toolbar{justify-content:flex-end;align-items:center;display:flex}.list-sheet-columns{position:relative}.list-sheet-columns summary{background:var(--panel);border:1px solid var(--line);color:var(--muted);cursor:pointer;border-radius:6px;align-items:center;gap:6px;padding:4px 9px;font-size:.85rem;font-weight:600;list-style:none;display:inline-flex}.list-sheet-columns summary::-webkit-details-marker{display:none}.list-sheet-columns[open] summary{border-color:var(--line-strong);color:var(--ink)}.list-sheet-columns-menu{background:var(--panel);border:1px solid var(--line);z-index:30;border-radius:8px;gap:2px;min-width:150px;padding:8px;display:grid;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 14px 40px #121c182e}.list-sheet-columns-menu label{border-radius:6px;align-items:center;gap:8px;padding:4px 6px;font-size:.88rem;display:flex}.list-sheet-columns-menu label:hover{background:var(--panel-3)}.list-sheet-scroll{background:var(--panel);border:1px solid var(--line);border-radius:8px;overflow-x:auto}.list-sheet-row{border-bottom:1px solid var(--line);display:grid}.list-sheet-grid>.list-sheet-row:last-child{border-bottom:none}.list-sheet-head{background:var(--panel-3);color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.76rem;font-weight:700}.list-sheet-head span{border-right:1px solid var(--line);padding:7px 10px}.list-sheet-head span:last-child{border-right:none}.list-sheet-head span[data-key=quantity],.list-sheet-head span[data-key=price]{text-align:right}.list-sheet-cell{border-right:1px solid var(--line);align-items:center;min-width:0;display:flex;position:relative}.list-sheet-cell input{font:inherit;background:0 0;border:none;border-radius:0;width:100%;min-width:0;padding:7px 10px;font-size:.92rem}.list-sheet-cell input:focus{background:var(--panel);outline:2px solid var(--focus-border);outline-offset:-2px}.list-sheet-cell[data-key=quantity] input,.list-sheet-cell[data-key=price] input{text-align:right}.list-sheet-cell.sel{background:var(--tint-blue-bg);box-shadow:inset 0 0 0 1px var(--tint-blue-border)}.list-sheet.dragging{cursor:cell;-webkit-user-select:none;user-select:none}.list-sheet.dragging .list-sheet-cell input{pointer-events:none;-webkit-user-select:none;user-select:none}.list-sheet-cell-link{color:var(--blue);flex:none;align-items:center;padding:0 8px 0 2px;display:inline-flex}.sheet-cell-cataloged input{color:var(--tint-green-text);font-weight:600}.sheet-cell-cataloged-icon{color:var(--tint-green-text);pointer-events:none;flex:none;margin-right:6px}.sheet-cell-results{z-index:65;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;width:max-content;min-width:240px;max-width:min(360px,92vw);top:calc(100% + 2px);left:0;right:auto;overflow-y:auto}.sheet-cell-results .placement-combobox-option{align-items:center;gap:6px;display:flex}.sheet-cell-results .placement-combobox-option>span:first-child{min-width:0;overflow:hidden}.sheet-cell-results .placement-combobox-option>span:first-child strong,.sheet-cell-results .placement-combobox-option>span:first-child small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}@media (width<=640px){.sheet-cell-results{width:max(240px,80vw);min-width:0;max-width:calc(100vw - 24px)}.sheet-cell-results .placement-combobox-option,.sheet-cell-results .placement-combobox-add{min-height:40px}}.list-sheet-row-action{justify-content:center;align-items:center;gap:4px;display:flex}.list-sheet-row-action-stock{justify-content:flex-end;min-width:0;overflow:hidden}.list-sheet-onhand{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:0 0;border-radius:999px;flex:0 auto;align-items:center;gap:3px;min-width:0;padding:3px 7px;font-size:.74rem;line-height:1;display:inline-flex}.list-sheet-onhand>span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.list-sheet-onhand:hover,.list-sheet-onhand:focus-visible{border-color:var(--danger);color:var(--danger)}.list-sheet-row .icon-button.danger-armed{background:var(--danger);border-color:var(--danger);color:#fff}.list-sheet-row.draft input::placeholder{color:var(--muted-green)}.list-sheet-footer{background:var(--panel);border:1px solid var(--line);z-index:3;border-radius:8px;justify-content:space-between;align-items:center;gap:12px;padding:9px 12px;font-size:.92rem;display:flex;position:sticky;bottom:8px;box-shadow:0 -8px 24px #121c180f}.list-sheet-footer .list-sheet-total strong{margin-left:4px;font-size:1.02rem}.list-sheet-status{color:var(--muted);text-align:center;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;font-weight:600;overflow:hidden}.list-sheet-status.offline{color:var(--coral)}.list-sheet-offline{top:max(10px, env(safe-area-inset-top));z-index:80;border:1px solid var(--coral);background:var(--panel);max-width:calc(100vw - 24px);color:var(--coral);pointer-events:none;border-radius:999px;align-items:center;gap:8px;padding:8px 14px;font-size:.86rem;font-weight:700;animation:.18s ease-out app-toast-in;display:inline-flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 10px 30px #121c1829}.list-sheet-offline svg{flex:none}.list-sheet-dialog{align-content:start;width:min(980px,100%)}.list-sheet-dialog h3{margin:0}@media (width<=640px){.list-sheet-cell input{padding:8px 9px;font-size:16px}.list-sheet-footer{flex-wrap:wrap;gap:2px 12px;bottom:4px}.list-sheet-status{text-align:left;flex-basis:100%;order:3}}.shopping-home-actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.shopping-home-section{gap:10px;display:grid}.shopping-home-section-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.shopping-home-section-head .compact-list-create[open]{flex-basis:100%}.shopping-home-section-head h3{margin:0;font-size:1.02rem}.shopping-home-section-head>small{color:var(--muted);text-align:right;font-weight:600}.shopping-resume-strip{gap:8px;display:grid}.shopping-resume-trip{background:var(--tint-green-bg-strong);border:1px solid var(--tint-green-border);text-align:left;border-radius:8px;align-items:center;gap:12px;width:100%;padding:10px 12px;display:flex}.shopping-resume-live{background:var(--green);border-radius:50%;flex:none;width:9px;height:9px;box-shadow:0 0 0 4px #2473582e}.shopping-resume-copy{flex:1;gap:2px;min-width:0;display:grid}.shopping-resume-copy strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shopping-resume-copy small{color:var(--muted)}.shopping-resume-cta{color:var(--green);flex:none;font-size:.86rem;font-weight:700}.shopping-trip-more{border-top:1px dashed var(--line);padding-top:8px}.shopping-trip-more summary{color:var(--muted);cursor:pointer;padding:4px 2px;font-size:.88rem;font-weight:600}.shopping-trip-more[open] summary{margin-bottom:8px}.content-grid>.shopping-metrics-panel{grid-column:span 12}.shopping-metrics-panel{gap:16px;max-width:980px;display:grid}.shopping-metrics-head h2{margin:2px 0 0}.shopping-metric-grid{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px;display:grid}.shopping-metric-card{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;gap:4px;padding:12px;display:grid}.shopping-metric-card>span{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:6px;font-size:.8rem;font-weight:700;display:flex}.shopping-metric-card strong{font-size:1.28rem}.shopping-metric-card small{color:var(--muted)}.shopping-metric-section{gap:10px;display:grid}.shopping-metric-section h3{margin:0;font-size:1.02rem}.shopping-metric-columns{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.shopping-spend-chart{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:8px;padding:14px 12px 10px;display:grid}.shopping-spend-col{justify-items:center;gap:4px;display:grid}.shopping-spend-amount{color:var(--muted);white-space:nowrap;min-height:.9rem;font-size:.72rem;font-weight:700}.shopping-spend-track{align-items:end;width:100%;height:110px;display:flex}.shopping-spend-bar{background:var(--green);border-radius:4px 4px 0 0;width:min(34px,70%);min-height:0;margin:0 auto;transition:height .2s;display:block}.shopping-spend-month{color:var(--muted);font-weight:600}.shopping-metric-list{align-content:start;gap:6px;display:grid}.shopping-metric-row{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;display:flex}.shopping-metric-row-main{gap:1px;min-width:0;display:grid}.shopping-metric-row-main strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shopping-metric-row-main small{color:var(--muted)}.shopping-metric-row>strong{flex:none;align-items:center;gap:5px;display:inline-flex}.shopping-price-up{color:var(--danger)}.shopping-price-down{color:var(--green)}@media (width<=640px){.shopping-lists-index-head .shopping-home-actions{width:100%}.shopping-home-actions button{flex:1;justify-content:center}.shopping-metric-grid{grid-template-columns:repeat(2,1fr)}.shopping-metric-columns{grid-template-columns:1fr}.shopping-spend-track{height:84px}.shopping-spend-amount{font-size:.62rem}.shopping-home-section-head>small{font-size:.78rem}}.project-description{border-top:1px solid var(--line);padding-top:8px}.project-task-composer{gap:8px;display:grid}.project-task-composer-main{grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:6px;display:grid}.project-task-composer-main input[name=title]{min-height:40px}.project-task-composer-main input[type=date]{max-width:150px;min-height:40px}.project-composer-more{align-items:center;gap:5px;min-height:40px;padding:7px 10px;display:inline-flex}.project-task-composer-extra{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;padding:8px;display:grid}.project-task-row.overdue strong{color:var(--danger)}.project-task-state{text-transform:uppercase;font-size:.7rem;font-weight:800}.project-task-state.overdue{color:var(--danger)}.project-show-done{width:fit-content;min-height:36px;padding:6px 10px}.project-table-done{opacity:.75}.project-doc-pin{opacity:.55;min-height:34px;padding:4px 8px}.project-doc-pin.pinned{opacity:1;color:var(--blue)}.project-doc-pinned-tag{color:var(--blue);align-items:center;gap:3px;display:inline-flex}.project-delete-button{width:fit-content;margin-top:10px}.project-link-list-form{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.project-link-list-form label{align-items:center;gap:6px;display:inline-flex}.project-link-list-form select{min-width:180px;min-height:38px}.project-doc-row{grid-template-columns:minmax(0,1fr) auto}.project-doc-open{text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:9px;width:100%;min-height:46px;padding:0;display:flex}.project-doc-open span{gap:2px;display:grid}.project-doc-page .project-overview{gap:10px}.project-doc-toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.project-doc-title{flex:240px;min-height:42px;font-size:1.05rem;font-weight:800}.project-doc-toolbar-actions{align-items:center;gap:6px;display:flex}.project-doc-mode-toggle{border:1px solid var(--line);border-radius:6px;display:inline-flex;overflow:hidden}.project-doc-mode-toggle button{background:var(--panel-2);border:none;border-radius:0;align-items:center;gap:5px;min-height:38px;padding:6px 10px;display:inline-flex}.project-doc-mode-toggle button.active{background:var(--tint-blue-bg);color:var(--nav-ink);font-weight:800}.project-doc-content{resize:vertical;width:100%;min-height:50vh;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.9rem;line-height:1.5}.project-doc-attachments{margin-top:12px}.project-doc-attachments h3,.shopping-list-attachments h3{align-items:center;gap:7px;margin:0;font-size:1.02rem;display:inline-flex}.markdown-body{overflow-wrap:anywhere;gap:10px;display:grid}.markdown-body h1{margin:6px 0 0;font-size:1.3rem}.markdown-body h2{margin:6px 0 0;font-size:1.12rem}.markdown-body h3{margin:4px 0 0;font-size:1rem}.markdown-body h4,.markdown-body h5,.markdown-body h6{margin:4px 0 0;font-size:.92rem}.markdown-body p,.markdown-body li{line-height:1.55}.markdown-body ul,.markdown-body ol{gap:4px;margin:0;padding-left:22px;display:grid}.markdown-body blockquote{border-left:3px solid var(--line);color:var(--muted);margin:0;padding:2px 0 2px 12px}.markdown-body pre{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;padding:10px;overflow-x:auto}.markdown-body code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85em}.markdown-body p code,.markdown-body li code,.markdown-body td code{border:1px solid var(--line);background:var(--panel-2);border-radius:4px;padding:1px 4px}.markdown-body table{border-collapse:collapse;width:100%}.markdown-body th,.markdown-body td{border:1px solid var(--line);text-align:left;padding:6px 8px}.markdown-body th{background:var(--panel-2)}.markdown-body hr{border:none;border-top:1px solid var(--line);width:100%}.markdown-task-item{align-items:baseline;gap:7px;margin-left:-18px;list-style:none;display:flex}.markdown-task-item input{pointer-events:none}.markdown-task-done{color:var(--muted);text-decoration:line-through}.tag-input-label{gap:6px;display:grid}.tag-input-field{position:relative}.tag-input-shell{border:1px solid var(--line);background:var(--panel);cursor:text;border-radius:8px;flex-wrap:wrap;align-items:center;gap:6px;min-height:44px;padding:6px 8px;display:flex}.tag-input-shell:focus-within{border-color:var(--blue);box-shadow:0 0 0 3px var(--focus-ring)}.tag-pill{border:1px solid var(--tint-blue-border);background:var(--tint-blue-bg);min-height:26px;color:var(--nav-ink);border-radius:999px;align-items:center;gap:3px;padding:2px 4px 2px 10px;font-size:.82rem;font-weight:700;display:inline-flex}.tag-pill-label{overflow-wrap:anywhere}.tag-pill-remove{width:20px;min-width:20px;height:20px;min-height:0;color:var(--muted);background:0 0;border:0;border-radius:50%;justify-content:center;align-items:center;padding:0;display:inline-flex}.tag-pill-remove:hover{background:var(--tint-coral-bg-strong);color:var(--danger);border-color:#0000}.tag-pill-static{padding:2px 10px}.detail-tag-pills{flex-wrap:wrap;gap:6px;display:inline-flex}.tag-input-entry{background:0 0;border:0;flex:90px;min-width:90px;min-height:0;padding:4px 2px}.tag-input-entry:focus{box-shadow:none;outline:none}.tag-suggestions{z-index:35;border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:2px;max-height:232px;padding:5px;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 16px 34px #1229332e}.tag-suggestion{text-align:left;background:0 0;border:0;border-radius:6px;justify-content:flex-start;min-height:36px;padding:7px 10px;font-weight:650}.tag-suggestion:hover{background:var(--tint-blue-bg);border-color:#0000}.tag-suggestion-new{color:var(--green);font-weight:800}.chore-project-chip{border:1px solid var(--tint-blue-border,var(--line));background:var(--tint-blue-bg);width:fit-content;min-height:34px;color:var(--nav-ink);border-radius:999px;align-items:center;gap:6px;padding:5px 12px;font-weight:800;display:inline-flex}@media (width<=720px){.project-task-composer-main{grid-template-columns:minmax(0,1fr) auto}.project-task-composer-main input[type=date]{max-width:none}.project-doc-content{min-height:40vh}}.markdown-toolbar{flex-wrap:wrap;gap:4px;margin-bottom:6px;display:flex}.markdown-toolbar button{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;justify-content:center;align-items:center;min-width:34px;min-height:34px;padding:4px 8px;display:inline-flex}.markdown-toolbar button:hover{border-color:var(--nav-ink)}.markdown-toolbar-glyph{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.8rem;font-weight:800}.markdown-template-strip{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:8px;display:flex}.markdown-template-label{color:var(--muted);text-transform:uppercase;font-size:.8rem;font-weight:800}.markdown-template-chip{border:1px solid var(--line);background:var(--panel-2);border-radius:999px;min-height:34px;padding:5px 12px}.markdown-template-chip:hover{border-color:var(--nav-ink)}.markdown-task-interactive input{pointer-events:auto;cursor:pointer}.markdown-task-interactive{cursor:default}.household-docs-panel{background:var(--panel);border:1px solid var(--line);border-radius:6px;gap:8px;padding:10px;display:grid;box-shadow:0 6px 16px #2a313812}.household-docs-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.household-docs-head h2{align-items:center;gap:6px;margin:0;font-size:1rem;display:inline-flex}.household-docs-search{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;align-items:center;gap:6px;padding:0 8px;display:flex}.household-docs-search input{background:0 0;border:none;flex:1;min-height:36px;padding:0}.household-docs-list{gap:6px;display:grid}.household-doc-item{text-align:left;border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:6px;gap:3px;padding:8px 10px;display:grid}.household-doc-item:hover{border-color:var(--nav-ink)}.household-doc-item.active{border-color:var(--nav-ink);background:var(--tint-blue-bg)}.household-doc-title{align-items:center;gap:6px;display:inline-flex}.household-doc-preview{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.household-doc-meta{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:800}.project-doc-move{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;align-items:center;gap:5px;padding:0 8px;display:inline-flex}.project-doc-move select{background:0 0;border:none;max-width:160px;min-height:36px;padding:0 4px}.project-file-row{gap:10px}.project-file-thumb{border:1px solid var(--line);background:var(--panel-2);cursor:pointer;border-radius:8px;flex:none;place-items:center;width:52px;height:52px;padding:0;display:grid;overflow:hidden}.project-file-thumb img{object-fit:cover;width:100%;height:100%}.project-file-thumb.placeholder{color:var(--muted);cursor:default}.project-file-main{flex:auto;min-width:0}.project-file-main strong{overflow-wrap:anywhere}.project-file-readonly{color:var(--muted);align-items:center;gap:3px;font-weight:700;display:inline-flex}.project-section-actions .file-action{min-height:40px}.chore-composer-compact .due-picker-field{gap:0;min-width:0}.chore-composer-compact .due-picker-label{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.chore-composer-compact .due-picker-trigger{max-width:170px;min-height:40px}.chore-composer-full-link{justify-self:start;align-items:center;gap:6px;min-height:36px;padding:6px 10px;display:inline-flex}.project-task-row-open{cursor:pointer}.project-task-row-open:hover{border-color:var(--brand,var(--line))}.project-task-row-open:focus-visible{outline:2px solid var(--brand,var(--line));outline-offset:2px}.assistant-error-retry{justify-self:start;align-items:center;gap:6px;display:inline-flex}.assistant-message-bubble.assistant-message-failed{border-color:var(--tint-coral-border,#d95f5459);background:0 0;border-style:dashed}.assistant-message-bubble.assistant-message-failed p{color:var(--muted)}.assistant-message-bubble.assistant-message-stopped{border-color:var(--tint-neutral-border)}.assistant-message-bubble.assistant-message-stopped-card{background:var(--tint-neutral-bg);border-color:var(--tint-neutral-border)}.assistant-chats-search{border:1px solid var(--line);border-radius:8px;align-items:center;gap:8px;margin:0 16px 8px;padding:6px 10px;display:flex}.assistant-chats-search input{font:inherit;background:0 0;border:none;outline:none;flex:1}.assistant-chats-archived-toggle{color:var(--muted);align-items:center;gap:6px;margin:0 16px 8px;font-size:.82rem;display:inline-flex}.assistant-chats-list{flex-direction:column;gap:6px;padding:0 16px 16px;display:flex;overflow-y:auto}.assistant-chats-row{border:1px solid var(--line);border-radius:10px;align-items:center;gap:6px;padding:6px 8px;display:flex}.assistant-chats-row.active{border-color:var(--brand,var(--line))}.assistant-chats-row.archived .assistant-chats-open strong{color:var(--muted)}.assistant-chats-open{cursor:pointer;text-align:left;background:0 0;border:none;flex-direction:column;flex:1;align-items:stretch;gap:2px;min-width:0;padding:2px 4px;display:flex}.assistant-chats-open strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.assistant-chats-open strong svg{vertical-align:-2px;margin-right:5px}.assistant-chats-open small{color:var(--muted);font-size:.76rem}.assistant-chats-snippet{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.assistant-chats-actions{gap:2px;display:inline-flex}.assistant-chats-row input{border:1px solid var(--line);font:inherit;border-radius:6px;flex:1;padding:4px 6px}.assistant-header-more{flex:none;display:block;position:relative}.assistant-header-more summary{cursor:pointer;justify-content:center;align-items:center;list-style:none;display:inline-flex;position:relative}.assistant-header-more summary::-webkit-details-marker{display:none}.assistant-header-more-menu{background:var(--panel);border:1px solid var(--line);z-index:30;border-radius:10px;flex-direction:column;gap:2px;min-width:190px;max-width:min(320px,100vw - 20px);padding:6px;display:flex;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 8px 22px #0f172a2e}.assistant-header-more-menu button,.assistant-header-more-menu label{cursor:pointer;font:inherit;text-align:left;background:0 0;border:none;border-radius:8px;justify-content:flex-start;align-items:center;gap:8px;padding:8px 10px;display:flex}.assistant-header-more-menu button:hover{background:var(--tint,#0f172a0f)}.assistant-header-more-menu label{color:var(--muted);justify-content:space-between;font-size:.82rem}.assistant-header-more-menu label.assistant-thinking-toggle{color:inherit;font-size:inherit;justify-content:flex-start}.assistant-header-more-menu label.assistant-thinking-toggle:hover{background:var(--tint,#0f172a0f)}.assistant-header-more-menu label.assistant-thinking-toggle input{margin:0}@media (width<=640px){.assistant-chat-heading h2{display:none}}.doc-conflict-banner{border:1px solid var(--tint-coral-border);background:var(--tint-coral-bg);color:var(--tint-coral-text);border-radius:8px;gap:8px;padding:10px 12px;display:grid}.doc-conflict-banner p{margin:0;line-height:1.45}.doc-conflict-actions{flex-wrap:wrap;gap:6px;display:flex}.doc-conflict-actions button{min-height:36px;padding:6px 11px}.doc-history{gap:10px;display:grid}.doc-history-scope-note{align-items:center;gap:5px;display:inline-flex}.doc-history-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.doc-history-list li{border:1px solid var(--line);background:var(--panel);border-radius:8px;flex-wrap:wrap;align-items:center;gap:10px;padding:8px 10px;display:flex}.doc-history-list li.selected{border-color:var(--tint-blue-border);background:var(--tint-blue-bg)}.doc-history-select{cursor:pointer;align-items:center;gap:7px;display:inline-flex}.doc-history-version{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:800}.doc-history-info{flex:220px;gap:2px;min-width:0;display:grid}.doc-history-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:6px;font-size:.88rem;display:inline-flex}.doc-history-badge{border:1px solid var(--tint-neutral-border);background:var(--tint-neutral-bg);border-radius:999px;padding:1px 7px;font-size:.78rem;font-weight:700}.doc-history-badge.create{border-color:var(--tint-green-border);background:var(--tint-green-bg);color:var(--tint-green-text)}.doc-history-badge.update{border-color:var(--tint-blue-border);background:var(--tint-blue-bg);color:var(--tint-blue-text)}.doc-history-badge.revert{border-color:var(--tint-gold-border);background:var(--tint-gold-bg);color:var(--tint-gold-text)}.doc-history-current{color:var(--tint-green-text);font-size:.78rem;font-weight:700}.doc-history-note{overflow-wrap:anywhere;font-size:.9rem}.doc-history-actions{gap:6px;display:inline-flex}.doc-history-actions button{align-items:center;gap:5px;min-height:34px;padding:5px 10px;display:inline-flex}.doc-history-diff{gap:8px;display:grid}.doc-history-diff-title{margin:4px 0 0;font-size:.98rem}.doc-history-title-change{margin:0;font-size:.92rem}.doc-history-title-change del{color:var(--tint-coral-text);background:var(--tint-coral-bg);border-radius:3px;padding:0 3px;text-decoration:line-through}.doc-history-title-change ins{color:var(--tint-green-text);background:var(--tint-green-bg-strong);border-radius:3px;padding:0 3px;text-decoration:none}.doc-history-snapshot-bar{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:8px;padding-bottom:8px;display:flex}.doc-history-snapshot-bar button{align-items:center;gap:5px;min-height:36px;padding:6px 10px;display:inline-flex}.doc-history-snapshot-label{color:var(--muted);flex:220px;font-size:.9rem}.text-diff{gap:8px;display:grid}.text-diff-toolbar{justify-content:flex-end;display:flex}.text-diff-mode-toggle{border:1px solid var(--line);border-radius:6px;display:inline-flex;overflow:hidden}.text-diff-mode-toggle button{background:var(--panel-2);border:none;border-radius:0;align-items:center;gap:5px;min-height:32px;padding:4px 9px;font-size:.85rem;display:inline-flex}.text-diff-mode-toggle button.active{background:var(--tint-blue-bg);color:var(--nav-ink);font-weight:800}.text-diff-hunk{border:1px solid var(--line);border-radius:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.84rem;line-height:1.5;overflow:hidden}.text-diff-hunk-header{background:var(--tint-blue-bg);color:var(--tint-blue-text);padding:4px 10px;font-weight:700}.text-diff-lines{display:grid}.text-diff-line{grid-template-columns:3.2em 3.2em 1.2em minmax(0,1fr);align-items:start;display:grid}.text-diff-gutter{text-align:right;color:var(--muted);background:var(--panel-2);-webkit-user-select:none;user-select:none;padding:0 6px}.text-diff-marker{text-align:center;-webkit-user-select:none;user-select:none;color:var(--muted)}.text-diff-text{white-space:pre-wrap;overflow-wrap:anywhere;padding-right:8px}.text-diff-line.added{background:var(--tint-green-bg-strong)}.text-diff-line.added .text-diff-marker{color:var(--tint-green-text);font-weight:700}.text-diff-line.removed{background:var(--tint-coral-bg-strong)}.text-diff-line.removed .text-diff-marker{color:var(--tint-coral-text);font-weight:700}.text-diff-line.meta,.text-diff-cell.meta{color:var(--muted);font-style:italic}.text-diff-split{display:grid}.text-diff-split-row{grid-template-columns:1fr 1fr;display:grid}.text-diff-split-row>:first-child{border-right:1px solid var(--line)}.text-diff-cell{grid-template-columns:3.2em 1.2em minmax(0,1fr);align-items:start;min-width:0;display:grid}.text-diff-cell.added{background:var(--tint-green-bg-strong)}.text-diff-cell.added .text-diff-marker{color:var(--tint-green-text);font-weight:700}.text-diff-cell.removed{background:var(--tint-coral-bg-strong)}.text-diff-cell.removed .text-diff-marker{color:var(--tint-coral-text);font-weight:700}.text-diff-cell.empty{background:var(--panel-2)}.text-diff-empty{padding:6px 0}.finance-page>.finance-overview-layout{grid-column:1/-1}.finance-overview-head{gap:2px;margin-bottom:12px;display:grid}.finance-overview-head h2{margin:0;font-size:1.2rem}.finance-metric-grid{grid-template-columns:repeat(auto-fill,minmax(165px,1fr));gap:10px;margin-bottom:18px;display:grid}.finance-metric-card{background:var(--panel-2);border:1px solid var(--line);text-align:left;border-radius:8px;gap:4px;padding:12px;display:grid}.finance-metric-card.accent-net{border-color:var(--brand,var(--blue))}.finance-metric-action{cursor:pointer;font:inherit;color:inherit}.finance-metric-action:hover{border-color:var(--brand,var(--line))}.finance-metric-card>span{color:var(--muted);letter-spacing:.02em;text-transform:uppercase;align-items:center;gap:6px;font-size:.76rem;font-weight:700;display:flex}.finance-metric-card strong{font-size:1.3rem}.finance-metric-card small{color:var(--muted)}.finance-overview-section{gap:10px;display:grid}.finance-overview-section h3{margin:0;font-size:1.02rem}.finance-flow-chart{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;grid-auto-columns:1fr;grid-auto-flow:column;align-items:end;gap:8px;height:150px;padding:14px 12px 10px;display:grid}.finance-flow-col{flex-direction:column;align-items:center;gap:6px;height:100%;display:flex}.finance-flow-bars{flex:1 1 0;justify-content:center;align-items:end;gap:3px;width:100%;min-height:0;display:flex}.finance-flow-bar{border-radius:3px 3px 0 0;width:46%;min-height:2px}.finance-flow-bar.income{background:var(--green)}.finance-flow-bar.expense{background:var(--danger)}.finance-flow-month{color:var(--muted);font-size:.74rem;font-weight:700}.finance-flow-legend{color:var(--muted);gap:16px;font-size:.78rem;display:flex}.finance-flow-legend span{align-items:center;gap:6px;display:flex}.finance-flow-legend i{border-radius:2px;width:10px;height:10px}.finance-flow-legend i.income{background:var(--green)}.finance-flow-legend i.expense{background:var(--danger)}.finance-budget-list,.finance-bill-list,.finance-category-list{gap:12px;margin-bottom:10px;display:grid}.finance-budget-row{gap:5px;display:grid}.finance-budget-head,.finance-bill-row{justify-content:space-between;align-items:center;gap:10px;display:flex}.finance-budget-state{color:var(--muted);white-space:nowrap;font-size:.82rem;font-weight:700}.finance-budget-state.over{color:var(--danger)}.finance-budget-track,.finance-category-track{background:var(--line);border-radius:999px;width:100%;height:8px;overflow:hidden}.finance-budget-fill{background:var(--green);border-radius:999px;height:100%;display:block}.finance-budget-fill.near{background:#c9922b}.finance-budget-fill.over{background:var(--danger)}.finance-budget-row small,.finance-budget-manage small{color:var(--muted)}.finance-bill-row.overdue{border-left:3px solid var(--danger);padding-left:8px}.finance-bill-main,.finance-recurring-main,.finance-account-main,.finance-txn-main{gap:2px;min-width:0;display:grid}.finance-bill-main small,.finance-recurring-main small,.finance-txn-main small,.finance-account-main small{color:var(--muted);align-items:center;gap:5px;font-size:.8rem;display:flex}.finance-bill-actions,.finance-recurring-side,.finance-account-side,.finance-txn-side{flex-shrink:0;align-items:center;gap:8px;display:flex}.finance-pay-button{white-space:nowrap;align-items:center;gap:5px;display:inline-flex}.finance-category-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.finance-category-main{flex:1;gap:4px;min-width:0;display:grid}.finance-category-name{align-items:center;gap:6px;font-weight:600;display:flex}.finance-category-fill{background:var(--blue);border-radius:999px;height:100%;display:block}.finance-inline-link{color:var(--brand,var(--blue));cursor:pointer;text-align:left;background:0 0;border:none;padding:4px 0;font-weight:700}.finance-account-row,.finance-txn-row{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.finance-account-row.archived{opacity:.6}.finance-recurring-row{justify-content:space-between;align-items:center;gap:12px;width:100%;display:flex}.finance-recurring-row.inactive{opacity:.6}.finance-recurring-row.overdue .finance-recurring-main strong,.finance-bill-row.overdue .finance-bill-main strong{color:var(--danger)}.finance-txn-category{max-width:150px}.finance-txn-edit{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px;width:100%;display:grid}.finance-txn-edit .button-row{grid-column:1/-1}.finance-filter-bar{flex-wrap:wrap;align-items:center;gap:10px;margin:4px 0 12px;display:flex}.finance-search{flex:1;align-items:center;gap:6px;min-width:180px;display:flex}.finance-search input{width:100%}.finance-budget-manage{gap:5px;width:100%;display:grid}.finance-budget-actions{align-items:center;gap:8px;display:flex}.finance-check{align-items:center;gap:6px;flex-direction:row!important}@media (width<=640px){.finance-txn-row,.finance-recurring-row{flex-direction:column;align-items:stretch;gap:8px}.finance-txn-row .finance-txn-main strong,.finance-recurring-row .finance-recurring-main strong{overflow-wrap:anywhere}.finance-txn-row .finance-txn-main small,.finance-recurring-row .finance-recurring-main small{overflow-wrap:anywhere;text-overflow:clip;white-space:normal;flex-wrap:wrap;overflow:visible}.finance-txn-row .finance-txn-side,.finance-recurring-row .finance-recurring-side{flex-wrap:wrap;flex-shrink:1;justify-content:flex-end;width:100%;min-width:0}.finance-txn-row .finance-txn-category{flex:100%;width:100%;min-width:0;max-width:none}}.finance-networth-hero{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;grid-template-columns:minmax(200px,260px) minmax(0,1fr);align-items:center;gap:18px;margin-bottom:14px;padding:16px;display:grid}.finance-networth-figures{align-content:center;gap:6px;display:grid}.finance-networth-value{letter-spacing:-.02em;font-size:1.9rem;line-height:1.1}.finance-networth-delta{align-items:center;gap:5px;font-size:.82rem;font-weight:700;display:inline-flex}.finance-networth-delta.positive{color:var(--green)}.finance-networth-delta.negative{color:var(--danger)}.finance-networth-split{gap:3px;margin:6px 0 0;display:grid}.finance-networth-split div{border-top:1px solid var(--line);justify-content:space-between;gap:12px;padding-top:3px;display:flex}.finance-networth-split dt{color:var(--muted);font-size:.8rem}.finance-networth-split dd{margin:0;font-size:.85rem;font-weight:700}.finance-networth-chart-wrap{min-width:0}.finance-networth-chart{width:100%;height:auto;display:block}.finance-networth-grid{stroke:var(--line);stroke-width:1px;stroke-dasharray:2 4}.finance-networth-line{fill:none;stroke:var(--blue);stroke-width:2px;stroke-linejoin:round;stroke-linecap:round}.finance-networth-area{fill:color-mix(in srgb, var(--blue) 14%, transparent);stroke:none}.finance-networth-dot{fill:var(--blue)}.finance-networth-label{fill:var(--muted);font-size:10px;font-weight:700}.finance-groups-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:22px;display:grid}.finance-group-col{align-content:start;gap:8px;display:grid}.finance-group-head{border-bottom:1px solid var(--line-strong);align-items:center;gap:12px;padding-bottom:4px;display:flex}.finance-group-head h3{margin:0;font-size:.98rem}.finance-group-head strong{font-size:1.15rem}.finance-donut{flex-shrink:0;width:64px;height:64px}.finance-donut-track{fill:none;stroke:var(--track);stroke-width:6px}.finance-donut-segment{fill:none;stroke-width:6px}.finance-group{border:1px solid var(--line);background:var(--panel-2);border-radius:8px}.finance-group summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;padding:9px 12px;list-style:none;display:flex}.finance-group summary::-webkit-details-marker{display:none}.finance-group-name{align-items:center;gap:8px;font-weight:600;display:flex}.finance-group-name small{color:var(--muted);font-weight:700}.finance-group-swatch{border-radius:3px;width:11px;height:11px;display:inline-block}.fin-g-cash{stroke:var(--green);background:var(--green)}.fin-g-investment{stroke:var(--blue);background:var(--blue)}.fin-g-property{stroke:var(--coral);background:var(--coral)}.fin-g-other{stroke:var(--gold);background:var(--gold)}.fin-g-credit{stroke:var(--purple);background:var(--purple)}.fin-g-loan{stroke:var(--gold-bright);background:var(--gold-bright)}.fin-g-personal_property{stroke:var(--teal);background:var(--teal)}.fin-g-real_property{stroke:var(--umber);background:var(--umber)}.finance-group-col-stack{align-content:start;gap:14px;display:grid}.finance-personal-property,.finance-real-property{border:1px solid var(--line);border-radius:10px;gap:6px;padding:10px 12px;display:grid}.finance-group.is-uncounted>summary strong{opacity:.6;text-decoration:line-through}.finance-group.is-uncounted>.inline-note{padding:4px 12px 0}.asset-listing-proceeds{border:1px solid var(--line);border-radius:10px;grid-column:1/-1;gap:8px;padding:10px 12px;display:grid}.asset-listing-proceeds legend{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;padding:0 4px;font-size:.82rem}.finance-personal-property-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.finance-group-accounts{border-top:1px solid var(--line);padding:4px 12px 8px;display:grid}.finance-group-account{justify-content:space-between;gap:10px;padding:4px 0;font-size:.86rem;display:flex}.finance-group-account span:first-child{color:var(--muted)}.finance-groups-hint{align-items:center;gap:6px;margin-top:12px;display:flex}.finance-metric-row{border-top:1px solid var(--line);color:var(--muted);justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding-top:8px;font-size:.82rem;display:flex}.finance-metric-row span{align-items:center;gap:6px;display:flex}.finance-import-pickers{gap:10px;margin-top:10px;display:grid}.finance-file-drop{background:var(--panel-2);border:1.5px dashed var(--line-strong);cursor:pointer;color:var(--muted);border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:22px 16px;font-weight:600;display:flex}.finance-file-drop:hover{border-color:var(--blue);color:var(--ink)}.finance-file-drop input{display:none}.finance-paste-fallback{color:var(--muted)}.finance-paste-fallback summary{cursor:pointer;font-size:.85rem}.finance-paste-fallback textarea{width:100%;min-height:120px;margin:8px 0;display:block}.finance-import-preview{gap:10px;margin-top:14px;display:grid}.finance-import-preview h4{margin:6px 0 0;font-size:.92rem}.finance-import-counts{flex-wrap:wrap;gap:6px;display:flex}.finance-import-chip{background:var(--tint-neutral-bg);border:1px solid var(--tint-neutral-border);color:var(--muted);white-space:nowrap;border-radius:999px;flex-shrink:0;padding:2px 9px;font-size:.76rem;font-weight:700}.finance-import-chip.new{background:var(--tint-green-bg);border-color:var(--tint-green-border);color:var(--tint-green-text)}.finance-import-accounts{gap:6px;display:grid}.finance-import-account{background:var(--panel-2);border:1px solid var(--line);border-radius:8px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.finance-import-account-name{display:grid}.finance-import-account-name small{color:var(--muted)}.finance-import-account-create{align-items:center;gap:8px;display:flex}.finance-import-row{justify-content:space-between;align-items:center;gap:10px;width:100%;display:flex}.finance-import-row.skipped{opacity:.55}.finance-import-result{background:var(--tint-green-bg);border:1px solid var(--tint-green-border);color:var(--tint-green-text);border-radius:8px;flex-wrap:wrap;align-items:center;gap:12px;padding:14px 16px;display:flex}.finance-import-result div{flex:1;gap:2px;min-width:200px;display:grid}.finance-balance-form{align-items:center;gap:6px;display:flex}.finance-balance-form input{width:120px}.finance-balance-label{color:var(--muted);font-size:.78rem;font-weight:700}@media (width<=700px){.finance-account-row{flex-wrap:wrap}.finance-account-side{flex-wrap:wrap;flex-shrink:1;justify-content:flex-end;min-width:0}.finance-balance-form{flex-wrap:wrap;justify-content:flex-end;min-width:0}.finance-balance-form input{flex:110px;width:auto;min-width:0}}@media (width<=860px){.finance-networth-hero{grid-template-columns:1fr}}.projects-page,.project-dashboard{gap:8px}.project-layout{grid-template-columns:minmax(220px,250px) minmax(0,1fr);gap:10px}.project-side{align-content:start;position:sticky;top:10px}.project-selector,.household-docs-panel,.project-dashboard-header,.project-workspace-panel{border:1px solid var(--line);background:var(--panel);box-shadow:none;border-radius:8px}.project-selector{gap:5px;padding:8px}.project-selector-head h2{font-size:1rem}.project-switcher-bar{display:none}.project-list{gap:2px}.project-list-item{background:0 0;border:0;border-radius:6px}.project-list-item.active{background:var(--tint-blue-bg);box-shadow:inset 3px 0 0 var(--green);border:0}.project-list-item button{grid-template-columns:18px minmax(0,1fr) auto;align-items:center;gap:7px;min-height:44px;padding:6px 8px}.project-list-item button>strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-list-stats{white-space:nowrap;flex-wrap:nowrap;grid-column:auto;justify-content:end;gap:7px;font-size:.7rem}.project-list-stats small{align-items:center;gap:3px;display:inline-flex}.project-list-stats .overdue{color:var(--danger);font-weight:800}.project-list-item.finished>button{color:var(--muted)}.project-list-item.finished>button>strong{font-weight:600}.project-finished-toggle{border:1px dashed var(--line);width:100%;min-height:32px;color:var(--muted);background:0 0;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:5px 8px;font-size:.76rem;font-weight:700;display:inline-flex}.project-finished-toggle:hover{border-style:solid;border-color:var(--line-strong);color:var(--ink)}.project-selector-empty{gap:8px;padding:18px 8px}.project-selector-empty .empty-state-body{font-size:.84rem}.project-selector-empty .empty-state-actions{flex-wrap:wrap}.household-docs-panel{padding:0;display:block}.household-docs-panel>summary{cursor:pointer;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:7px;min-height:44px;padding:7px 10px;font-weight:800;list-style:none;display:grid}.household-docs-panel>summary::-webkit-details-marker{display:none}.project-explorer-menu>summary::-webkit-details-marker{display:none}.household-docs-panel>summary small{min-width:22px;color:var(--muted);text-align:center}.household-docs-panel[open]>summary>svg:last-child{transform:rotate(180deg)}.household-docs-tools{grid-template-columns:minmax(0,1fr) auto;gap:6px;padding:0 8px 7px;display:grid}.household-docs-search{min-width:0}.household-docs-list{border-top:1px solid var(--line);gap:0}.household-doc-item{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;min-height:42px;padding:5px 9px}.household-doc-item strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.household-doc-item time{color:var(--muted);font-size:.72rem}.project-dashboard-header{gap:8px;padding:10px 12px;display:grid}.project-dashboard-titlebar,.project-dashboard-title,.project-dashboard-facts,.project-settings-actions{align-items:center;display:flex}.project-dashboard-titlebar{justify-content:space-between;gap:10px;position:relative}.project-dashboard-title{gap:8px;min-width:0}.project-dashboard-title h2{text-overflow:ellipsis;white-space:nowrap;min-width:0;margin:0;font-size:1.3rem;line-height:1.15;overflow:hidden}.project-dashboard-title .status-pill{background:var(--panel-2);color:var(--ink);padding:3px 7px;font-size:.7rem}.project-dashboard-actions{flex:none;align-items:center;gap:6px;display:flex}.project-lifecycle-action{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.project-lifecycle-note{border:1px solid var(--tint-green-border);background:var(--tint-green-bg);color:var(--tint-green-text);border-radius:6px;align-items:center;gap:7px;margin:0;padding:7px 10px;font-size:.84rem;display:flex}.project-lifecycle-note>svg{flex:none}.project-dashboard.project-finished .project-dashboard-title h2{color:var(--muted)}.project-finished-hint{margin:0 0 8px;font-size:.84rem}.project-dashboard-facts{scrollbar-width:thin;gap:5px;min-width:0;overflow-x:auto}.project-dashboard-facts>button,.project-dashboard-facts>span{border:1px solid var(--line);background:var(--panel-2);min-height:34px;color:var(--muted);white-space:nowrap;border-radius:6px;flex:none;align-items:center;gap:5px;padding:4px 8px;font-size:.78rem;display:inline-flex}.project-dashboard-facts>button{cursor:pointer}.project-dashboard-facts>button:hover{border-color:var(--line-strong)}.project-dashboard-facts strong{color:var(--ink);font-size:.9rem}.project-dashboard-facts .overdue,.project-dashboard-facts .overdue strong{color:var(--danger)}.project-overview-settings{border:0;padding:0}.project-overview-settings>summary{border:1px solid var(--line);border-radius:6px;align-items:center;gap:5px;min-height:40px;padding:5px 9px;display:inline-flex}.project-settings-popover{z-index:30;border:1px solid var(--line);background:var(--panel);border-radius:8px;width:min(760px,100vw - 48px);padding:10px;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 18px 44px #14232d2e}.project-overview-controls{grid-template-columns:repeat(4,minmax(0,1fr));margin:0}.project-settings-actions{border-top:1px solid var(--line);justify-content:space-between;gap:8px;padding-top:8px}.project-dashboard-notes{border-top:1px solid var(--line);padding-top:5px}.project-dashboard-notes>summary{width:fit-content;min-height:32px;color:var(--muted);cursor:pointer;align-items:center;font-size:.78rem;font-weight:800;display:flex}.project-dashboard-notes .project-description{margin-top:4px;padding-top:7px}.project-workspace-tabs{border-bottom:1px solid var(--line);gap:3px;padding:0 4px;display:flex}.project-workspace-tabs button{min-height:44px;color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;border-radius:0;align-items:center;gap:6px;padding:7px 12px 5px;display:inline-flex}.project-workspace-tabs button.active{border-bottom-color:var(--green);color:var(--ink);font-weight:800}.project-workspace-tabs button span{background:var(--panel-2);border-radius:999px;min-width:22px;padding:1px 6px;font-size:.7rem}.project-workspace-panel{min-width:0;overflow:visible}.project-workspace-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;min-height:54px;padding:6px 8px;display:flex}.project-workspace-search{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;flex:260px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px;min-width:180px;max-width:360px;padding:0 8px;display:grid}.project-workspace-search input{background:0 0;border:0;min-width:0;min-height:38px;padding:0}.project-workspace-search>button{background:0 0;border:0;min-width:32px;min-height:32px;padding:0}.project-workspace-actions{align-items:center;gap:5px;display:flex}.project-workspace-actions>button{white-space:nowrap;align-items:center;gap:5px;min-height:40px;padding:6px 9px;display:inline-flex}.project-workspace-actions .project-camera-action{justify-content:center;min-width:40px;padding:0}.project-shopping-toolbar .project-shopping-link{border:1px solid var(--line);background:var(--panel-2);min-width:180px;max-width:340px;color:var(--muted);border-radius:6px;flex:220px;align-items:center;gap:6px;padding:0 8px;display:inline-flex}.project-shopping-toolbar .project-shopping-link select{background:0 0;border:0;flex:auto;min-width:0;min-height:38px;padding:0}.project-shopping-toolbar-spacer{flex:auto}.project-shopping-create{border-bottom:1px solid var(--line);background:var(--panel-2);align-items:center;gap:7px;padding:8px 9px;display:flex}.project-shopping-create input{flex:auto;min-width:0;min-height:38px}.project-shopping-workspace .shopping-list-card-grid{padding:10px 8px}.project-shopping-card{cursor:default;flex-direction:column;align-items:stretch;gap:8px}.project-shopping-progress{gap:4px;display:grid}.project-shopping-progress-track{background:var(--panel-2);border-radius:999px;height:6px;overflow:hidden}.project-shopping-progress-fill{background:var(--green);border-radius:999px;min-width:0;height:100%;transition:width .2s}.project-shopping-progress-meta{color:var(--muted);justify-content:space-between;gap:8px;font-size:.76rem;display:flex}.project-shopping-card-actions{align-items:center;gap:5px;display:flex}.project-shopping-card-actions button{align-items:center;gap:5px;min-height:34px;padding:6px 8px;font-size:.82rem;display:inline-flex}.project-shopping-card-actions .project-shopping-unlink{min-width:34px;color:var(--muted);justify-content:center;margin-left:auto;padding:6px}.project-shopping-trips{border-top:1px solid var(--line);padding:8px}.project-shopping-trips>summary{cursor:pointer;color:var(--muted);align-items:center;gap:6px;padding:4px 4px 8px;font-size:.82rem;display:flex}.project-shopping-trips>summary span{background:var(--panel-2);text-align:center;border-radius:999px;min-width:20px;padding:1px 6px;font-size:.7rem}.project-shopping-trip-list{gap:4px;display:grid}.project-shopping-trip-row{border:1px solid var(--line);background:var(--panel);text-align:left;border-radius:6px;justify-content:space-between;align-items:center;gap:10px;padding:8px 10px;display:flex}.project-shopping-trip-title{align-items:center;gap:8px;min-width:0;display:inline-flex}.project-shopping-trip-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.project-shopping-trip-status{background:var(--panel-2);color:var(--muted);text-transform:capitalize;border-radius:999px;padding:1px 8px;font-size:.68rem}.project-shopping-trip-status.trip-open{background:var(--tint-green-bg,var(--panel-2));color:var(--green)}.project-shopping-trip-meta{color:var(--muted);flex:none;align-items:center;gap:12px;font-size:.8rem;display:inline-flex}.project-new-folder-form{border-bottom:1px solid var(--line);background:var(--panel-2);grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:7px;min-height:50px;padding:6px 9px;display:grid}.project-new-folder-form input{min-height:38px}.project-folder-breadcrumbs{border-bottom:1px solid var(--line);white-space:nowrap;align-items:center;gap:1px;min-height:42px;padding:3px 7px;display:flex;overflow-x:auto}.project-folder-breadcrumbs>span,.project-folder-breadcrumbs button{align-items:center;display:inline-flex}.project-folder-breadcrumbs>span{gap:1px}.project-folder-breadcrumbs button{min-height:34px;color:var(--muted);background:0 0;border:0;gap:5px;padding:4px 6px}.project-folder-breadcrumbs button.active{color:var(--ink);font-weight:800}.project-explorer-layout{grid-template-columns:minmax(180px,225px) minmax(0,1fr);min-height:440px;display:grid}.project-folder-tree{border-right:1px solid var(--line);min-width:0;padding:6px 5px;overflow-x:hidden}.project-folder-tree-root,.project-folder-tree-row{min-height:40px}.project-folder-tree-root{text-align:left;background:0 0;border:0;align-items:center;gap:7px;width:100%;padding:5px 7px;display:flex}.project-folder-tree-root.active,.project-folder-tree-row.active{background:var(--tint-blue-bg);color:var(--nav-ink);border-radius:6px}.project-folder-tree-row{grid-template-columns:28px minmax(0,1fr);align-items:center;display:grid}.project-folder-expand,.project-folder-tree-select{background:0 0;border:0;padding:0}.project-folder-expand{place-items:center;min-width:28px;min-height:38px;display:grid}.project-folder-expand:disabled{opacity:1}.project-folder-tree-select{text-align:left;align-items:center;gap:6px;min-width:0;min-height:40px;display:flex}.project-folder-tree-select span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-folder-tree-children{border-left:1px solid var(--line);margin-left:15px;padding-left:3px}.project-explorer-details{min-width:0}.project-explorer-heading,.project-explorer-row{grid-template-columns:minmax(0,1fr) 132px 42px;align-items:center;display:grid}.project-explorer-heading{border-bottom:1px solid var(--line);background:var(--panel-2);min-height:34px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;padding:0 4px 0 10px;font-size:.72rem;font-weight:800}.project-explorer-row{border-bottom:1px solid var(--line);min-height:44px;padding:0 3px 0 8px}.project-explorer-row:hover{background:var(--panel-2)}.project-explorer-open{min-width:0;min-height:43px;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:22px minmax(0,auto) minmax(0,1fr);align-items:center;gap:7px;padding:0 4px;text-decoration:none;display:grid;overflow:hidden}.project-explorer-open svg{color:var(--nav-ink)}.project-explorer-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-weight:700;overflow:hidden}.project-explorer-open small{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.project-explorer-mobile-meta{display:none}.project-explorer-row>time{color:var(--muted);white-space:nowrap;font-size:.76rem}.project-explorer-menu{justify-self:end;position:relative}.project-explorer-menu>summary{cursor:pointer;border-radius:6px;place-items:center;width:40px;min-height:40px;list-style:none;display:grid}.project-explorer-menu[open]>summary,.project-explorer-menu>summary:hover{background:var(--tint-blue-bg)}.project-explorer-menu-popover{z-index:35;border:1px solid var(--line);background:var(--panel);border-radius:8px;gap:6px;width:230px;padding:8px;display:grid;position:absolute;top:calc(100% + 2px);right:0;box-shadow:0 14px 32px #14232d2e}.project-explorer-menu-popover label{color:var(--muted);gap:4px;font-size:.75rem;display:grid}.project-explorer-menu-popover select{width:100%;min-height:38px}.project-explorer-menu-popover button{justify-content:flex-start;min-height:38px}.project-task-add-panel{border-bottom:1px solid var(--line);background:var(--panel-2);padding:8px}.project-task-filters{border-bottom:1px solid var(--line)}.project-task-filters>summary{cursor:pointer;align-items:center;gap:6px;min-height:42px;padding:5px 9px;font-weight:800;list-style:none;display:flex}.project-task-filters>summary>span{background:var(--tint-blue-bg);text-align:center;border-radius:999px;min-width:22px;padding:1px 6px;font-size:.72rem}.project-task-filters>summary>svg:last-child{margin-left:auto}.project-task-filters[open]>summary>svg:last-child{transform:rotate(180deg)}.project-filter-groups{border-top:1px solid var(--line);background:var(--panel-2);gap:8px;padding:8px 9px;display:grid}.project-filter-group{grid-template-columns:82px minmax(0,1fr);align-items:start;gap:8px;min-width:0;display:grid}.project-filter-group>strong{align-items:center;gap:5px;min-height:34px;font-size:.78rem;display:flex}.project-filter-chips{flex-wrap:wrap;gap:4px;min-width:0;display:flex}.project-filter-chips button{background:var(--panel);border-radius:999px;min-height:34px;padding:4px 10px;font-size:.76rem}.project-filter-chips button.active{border-color:var(--nav-ink);background:var(--tint-blue-bg);color:var(--nav-ink);font-weight:800}.project-task-result-bar{border-bottom:1px solid var(--line);min-height:36px;color:var(--muted);align-items:center;gap:4px;padding:4px 9px;font-size:.76rem;display:flex}.project-task-result-actions{align-items:center;gap:2px;margin-left:auto;display:flex}.project-task-result-bar button{min-height:30px;color:var(--nav-ink);background:0 0;border:0;padding:3px 6px;font-size:.76rem}.project-task-table-head,.project-task-table-row{grid-template-columns:92px minmax(180px,1fr) 112px 90px minmax(100px,150px) 44px;align-items:center;gap:7px;padding:0 6px 0 9px;display:grid}.project-task-table-head{border-bottom:1px solid var(--line);background:var(--panel-2);min-height:34px;color:var(--muted);text-transform:uppercase;letter-spacing:.03em;font-size:.7rem;font-weight:800}.project-task-table-row{border-bottom:1px solid var(--line);min-height:48px}.project-task-table-row:hover{background:var(--panel-2)}.project-task-table-row.completed{opacity:.72}.project-phase-group{min-width:0;display:block}.project-phase-heading{top:calc(var(--app-header-measured,var(--app-header-height)) + 4px);z-index:3;border-bottom:1px solid var(--line);background:var(--panel-2);cursor:pointer;align-items:center;gap:8px;min-height:40px;padding:4px 9px;list-style:none;display:flex;position:sticky}.project-phase-heading::-webkit-details-marker{display:none}.project-phase-caret{color:var(--muted);flex:none;transition:transform .12s}.project-phase-group[open]>.project-phase-heading .project-phase-caret{transform:rotate(90deg)}.project-phase-heading strong{text-transform:uppercase;letter-spacing:.03em;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.78rem;font-weight:800;overflow:hidden}.project-phase-open,.project-phase-overdue{background:var(--panel);border:1px solid var(--line);color:var(--muted);border-radius:999px;flex:none;padding:1px 8px;font-size:.72rem;font-weight:700}.project-phase-overdue{border-color:var(--danger);color:var(--danger)}.project-phase-progress{background:var(--line);border-radius:999px;flex:none;width:64px;height:6px;margin-left:auto;overflow:hidden}.project-phase-progress-fill{background:var(--green);border-radius:999px;height:100%;display:block}.project-phase-heading small{color:var(--muted);font-variant-numeric:tabular-nums;flex:none;font-size:.72rem}.project-phase-tasks{display:grid}.project-task-status-text{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.74rem;font-weight:800;overflow:hidden}.project-task-status-text.overdue{color:var(--danger)}.project-task-status-text.today{color:var(--blue)}.project-task-title-button{text-align:left;background:0 0;border:0;align-items:center;min-width:0;min-height:44px;padding:0;display:flex}.project-task-title-button strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.project-task-mobile-meta{display:none}.project-task-owner,.project-task-due{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.76rem;overflow:hidden}.project-task-tags{align-items:center;gap:4px;min-width:0;display:flex;overflow:hidden}.project-task-tags>span{background:var(--panel-2);max-width:96px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;padding:2px 7px;font-size:.7rem;overflow:hidden}.project-task-tags small{color:var(--muted);font-size:.7rem}.project-task-complete{place-items:center;width:40px;min-width:40px;min-height:40px;padding:0;display:grid}@media (width<=980px){.project-layout{grid-template-columns:1fr;gap:7px}.project-switcher-bar{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;display:grid}.project-side{gap:6px;position:static}.project-selector{display:none}.project-mobile-switcher{border:1px solid var(--line);background:var(--panel-2);border-radius:6px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:7px;min-width:0;min-height:44px;padding:0 8px;display:grid}.project-mobile-switcher select{background:0 0;border:0;min-width:0;min-height:42px;padding:0;font-weight:600}.project-switcher-bar .compact-action{min-width:44px;min-height:44px}.household-docs-panel{width:100%}.project-dashboard-header{padding:9px}.project-dashboard-title h2{font-size:1.1rem}.project-overview-settings>summary{justify-content:center;min-width:44px;min-height:44px}.project-overview-settings>summary span{display:none}.project-lifecycle-action{justify-content:center;min-width:44px;min-height:44px;padding:5px 9px}.project-lifecycle-action span{display:none}.project-settings-popover{width:100%;box-shadow:none;margin-top:7px;position:static}.project-dashboard-titlebar:has(.project-overview-settings[open]){grid-template-columns:minmax(0,1fr) auto;display:grid}.project-dashboard-titlebar:has(.project-overview-settings[open]) .project-dashboard-actions{flex-wrap:wrap;grid-column:1/-1;justify-content:end}.project-dashboard-titlebar:has(.project-overview-settings[open]) .project-overview-settings{flex:1 0 100%}.project-overview-controls{grid-template-columns:repeat(2,minmax(0,1fr))}.project-explorer-layout{grid-template-columns:1fr;min-height:360px}.project-folder-tree{display:none}.project-explorer-heading,.project-explorer-row{grid-template-columns:minmax(0,1fr) 104px 44px}.project-explorer-menu>summary{width:44px;min-height:44px}.project-task-table-head,.project-task-table-row{grid-template-columns:84px minmax(0,1fr) 44px;gap:5px}.project-task-table-head span:nth-child(3),.project-task-table-head span:nth-child(4),.project-task-table-head span:nth-child(5),.project-task-owner,.project-task-due,.project-task-tags{display:none}.project-task-table-head span:nth-child(6),.project-task-complete,.project-task-complete-placeholder{grid-column:3}.project-task-title-button{align-content:center;gap:2px;min-height:50px;display:grid}.project-task-mobile-meta{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;font-weight:500;display:block;overflow:hidden}}@media (width<=620px){.project-phase-progress{display:none}.project-phase-heading small{margin-left:auto}.project-dashboard-facts{flex-wrap:wrap;overflow-x:visible}.project-dashboard-facts>button,.project-dashboard-facts>span{flex:70px;justify-content:center;min-width:0;min-height:38px;padding-inline:6px;overflow:hidden}.project-workspace-toolbar{grid-template-columns:1fr;display:grid}.project-workspace-search{width:100%;max-width:none;min-height:44px}.project-workspace-actions{flex-wrap:wrap;min-width:0;padding-bottom:1px;overflow-x:visible}.project-workspace-actions>button{min-height:44px}.project-explorer-heading span:nth-child(2),.project-explorer-row>time{display:none}.project-explorer-heading,.project-explorer-row{grid-template-columns:minmax(0,1fr) 44px}.project-explorer-heading{padding-left:8px}.project-explorer-open{grid-template-columns:22px minmax(0,1fr);align-content:center;row-gap:1px;min-height:52px;padding-block:6px}.project-explorer-open>svg{grid-row:1/span 2;align-self:center}.project-explorer-name{-webkit-line-clamp:2;line-clamp:2;white-space:normal;overflow-wrap:anywhere;-webkit-box-orient:vertical;grid-column:2;display:-webkit-box}.project-explorer-mobile-meta{min-width:0;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;grid-column:2;font-size:.7rem;font-weight:500;display:block;overflow:hidden}.project-explorer-open small{display:none}.project-explorer-menu-popover{right:8px;bottom:calc(70px + env(safe-area-inset-bottom));width:min(280px,100vw - 16px);position:fixed;top:auto}.project-explorer-menu-popover select,.project-explorer-menu-popover button{min-height:44px}.project-filter-group{grid-template-columns:1fr;gap:3px}.project-filter-chips{flex-wrap:wrap;overflow-x:visible}.project-filter-chips button{flex:none;min-height:40px}.project-task-composer-main{grid-template-columns:minmax(0,1fr) auto}.project-task-composer-main>*{min-width:0}}@media (width<=430px){.project-dashboard-title .status-pill{display:none}.project-overview-controls{grid-template-columns:1fr}.project-settings-actions{flex-direction:column;align-items:stretch}.project-settings-actions button{justify-content:center;width:100%;min-height:44px}.project-workspace-tabs{scrollbar-width:thin;overflow-x:auto}.project-workspace-tabs button{flex:50%;justify-content:center;gap:4px;padding-inline:5px}.project-workspace-tabs button span{min-width:18px;padding-inline:4px}.project-workspace-tabs button:focus-visible{outline-offset:-3px}.project-workspace-actions>button{justify-content:center;width:44px;min-width:44px;padding:0}.project-workspace-actions>button span{display:none}.project-new-folder-form{grid-template-columns:auto minmax(0,1fr) 44px}.project-new-folder-form .primary{grid-column:2}.project-new-folder-form button:last-child{grid-area:1/3;min-width:44px;min-height:44px;padding:0}.project-task-table-head,.project-task-table-row{grid-template-columns:70px minmax(0,1fr) 44px;padding-left:7px}.project-task-status-text{font-size:.68rem}}.user-avatar{letter-spacing:.02em;-webkit-user-select:none;user-select:none;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-weight:800;line-height:1;display:inline-flex}img.user-avatar{object-fit:cover;background:var(--tint-neutral-bg)}.account-avatar-row{flex-wrap:wrap;align-items:center;gap:16px;display:flex}.account-avatar-upload input[type=file]{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.account-avatar-upload{cursor:pointer;position:relative}.account-avatar-upload:focus-within>span{outline:2px solid var(--focus-border);outline-offset:2px}.avatar-crop-modal{width:min(420px,100%)}.avatar-crop-layout{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:flex}.avatar-crop-window{background:var(--tint-neutral-bg);border:1px solid var(--line);cursor:grab;touch-action:none;border-radius:8px;flex:none;max-width:100%;position:relative;overflow:hidden}.avatar-crop-window:focus-visible{outline:2px solid var(--focus-border);outline-offset:2px}.avatar-crop-window:active{cursor:grabbing}.avatar-crop-image{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;max-width:none;position:absolute}.avatar-crop-mask{pointer-events:none;border-radius:50%;position:absolute;inset:0;box-shadow:0 0 0 9999px #121c1873}.avatar-crop-side{flex-direction:column;align-items:center;gap:6px;display:flex}.avatar-crop-preview{background:var(--tint-neutral-bg);border-radius:50%;flex:none;position:relative;overflow:hidden}.avatar-crop-zoom{align-items:center;gap:10px;display:flex}.avatar-crop-zoom input[type=range]{flex:1;min-width:0}.account-form{gap:12px;max-width:420px;display:grid}.account-form label{gap:4px;display:grid}.avatar-button{border-radius:50%}.header-menu{display:inline-flex}.header-menu>button{position:relative}.header-menu-badge{background:var(--danger);color:#fff;text-align:center;min-width:16px;box-shadow:0 0 0 2px var(--panel);border-radius:999px;padding:0 4px;font-size:.62rem;font-weight:700;line-height:16px;position:absolute;top:-2px;right:-2px}.header-menu-item-badge{background:var(--panel-3);color:var(--muted);border-radius:999px;margin-left:auto;padding:2px 7px;font-size:.72rem;font-weight:700;line-height:1}.header-menu-panel{z-index:120;border:1px solid var(--line);background:var(--panel);border-radius:10px;gap:2px;min-width:200px;max-width:min(280px,100vw - 16px);padding:6px;display:grid;position:fixed;box-shadow:0 12px 32px #16312d3d}.header-menu-item{width:100%;min-height:40px;color:var(--ink);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;justify-content:flex-start;align-items:center;gap:10px;padding:8px 10px;font-weight:600;display:flex}.header-menu-item>svg{color:var(--muted);flex:none}.header-menu-item:hover,.header-menu-item:focus-visible{background:var(--panel-3)}.header-menu-item.danger{color:var(--danger)}.header-menu-item.danger>svg{color:currentColor}.header-menu-item.is-disabled{color:var(--muted);cursor:default}.header-menu-item.is-disabled:hover{background:0 0}.command-palette-overlay{z-index:130;background:#17242d9e;place-items:start center;padding:12vh 12px 12px;display:grid;position:fixed;inset:0}.command-palette-panel{background:var(--panel);border:1px solid var(--line);width:min(640px,100%);min-height:0;max-height:min(72vh,620px);box-shadow:var(--shadow);border-radius:10px;grid-template-rows:auto minmax(0,1fr) auto;display:grid;overflow:hidden}.command-palette-search{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:10px 12px;display:flex}.command-palette-search>svg{color:var(--muted);flex:none}.command-palette-search input{min-width:0;color:var(--ink);background:0 0;border:0;flex:1;padding:4px 0;font-size:.95rem}.command-palette-search input:focus{outline:none}.command-palette-close{width:30px;min-width:30px;min-height:30px;color:var(--muted);background:0 0;border-color:#0000;padding:0}.command-palette-close:hover{border-color:var(--line);background:var(--panel-3);color:var(--ink)}.command-palette-list{min-height:0;margin:0;padding:6px;list-style:none;overflow-y:auto}.command-palette-group-label{letter-spacing:.04em;text-transform:uppercase;color:var(--muted);padding:8px 8px 4px;font-size:.68rem;font-weight:800}.command-palette-option{cursor:pointer;color:var(--ink);border-radius:8px;align-items:center;gap:10px;padding:8px 10px;scroll-margin:6px;display:flex}.command-palette-option>svg{color:var(--muted);flex:none}.command-palette-option.active{background:var(--tint-blue-bg);color:var(--tint-blue-text)}.command-palette-option.active>svg{color:var(--blue)}.command-palette-option-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:.9rem;font-weight:600;overflow:hidden}.command-palette-option-hint{color:var(--muted);flex:none;font-size:.72rem;font-weight:700}.command-palette-empty{text-align:center;color:var(--muted);margin:0;padding:24px 16px}.command-palette-footer{border-top:1px solid var(--line);background:var(--panel-2);justify-content:space-between;align-items:center;gap:10px;padding:8px 12px;display:flex}.command-palette-hints{color:var(--muted);align-items:center;gap:5px;font-size:.72rem;display:flex}.command-palette-hints kbd{border:1px solid var(--line);background:var(--panel);min-width:18px;height:18px;color:var(--muted);border-radius:4px;align-items:center;padding:0 5px;font-family:inherit;font-size:.7rem;display:inline-flex}.command-palette-status{color:var(--tint-blue-text);font-size:.72rem;font-weight:700}@media (width<=620px){.command-palette-overlay{padding-top:8vh}.command-palette-panel{max-height:min(72dvh,620px)}.command-palette-search input{font-size:1rem}.command-palette-option{min-height:44px;padding:10px}.command-palette-close{width:40px;min-width:40px;min-height:40px}}.meals-hub{gap:18px;min-width:0;display:grid}.meals-hub-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;display:flex}.meals-hub-title h1{margin:0 0 2px;font-size:1.7rem;line-height:1.1}.meals-sections{background:var(--panel-3);border:1px solid var(--line);border-radius:10px;gap:4px;padding:4px;display:flex}.meals-section-tab{min-height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;padding:6px 14px;font-size:.9rem;font-weight:700;display:inline-flex}.meals-section-tab.active{background:var(--panel);color:inherit;box-shadow:0 1px 4px #0000001a}.meal-plan-section{gap:18px;min-width:0;display:grid}.meal-plan-form-panel h2{align-items:center;gap:8px;display:flex}.meal-plan-form{grid-template-columns:minmax(220px,2.2fr) minmax(140px,1fr) minmax(110px,1fr) minmax(90px,1fr);align-items:end;gap:10px 12px;display:grid}.meal-plan-form label{min-width:0}.meal-plan-form-notes{grid-column:1/-2}.meal-recipe-picker{min-width:0;position:relative}.meal-recipe-picker-input{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:center;gap:7px;padding:0 10px;display:flex}.meal-recipe-picker-input svg{color:var(--muted);flex:none}.meal-recipe-picker-input input{min-width:0;color:inherit;background:0 0;border:0;flex:auto;padding:9px 0}.meal-recipe-picker-input input:focus{outline:none}.meal-recipe-picker-input:focus-within{border-color:var(--focus-border);box-shadow:0 0 0 3px var(--focus-glow)}.meal-recipe-picker-list{z-index:30;background:var(--panel);border:1px solid var(--line-strong);overscroll-behavior:contain;border-radius:10px;grid-template-columns:minmax(0,1fr);gap:2px;max-height:min(60vh,440px);margin:0;padding:4px;list-style:none;display:grid;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:hidden auto;box-shadow:0 12px 28px #141e282e}.meal-recipe-picker-empty{color:var(--muted);padding:12px;font-size:.88rem}.meal-recipe-picker-list button{text-align:left;cursor:pointer;width:100%;color:inherit;background:0 0;border:0;border-radius:7px;align-items:center;gap:9px;padding:6px 8px;display:flex}.meal-recipe-picker-list button:hover,.meal-recipe-picker-list button:focus-visible{background:var(--tint-blue-bg)}.meal-recipe-picker-list img,.meal-recipe-picker-fallback{object-fit:cover;border-radius:5px;flex:none;width:40px;height:28px}.meal-recipe-picker-fallback{background:var(--tint-green-bg);color:var(--muted-green);justify-content:center;align-items:center;display:inline-flex}.meal-recipe-picker-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.9rem;font-weight:600;overflow:hidden}.meal-recipe-picker-tag{border-radius:var(--radius-pill);background:var(--tint-neutral-bg);border:1px solid var(--tint-neutral-border);color:var(--muted);flex:none;padding:1px 7px;font-size:.68rem;font-weight:700}.meal-recipe-picked{border:1px solid var(--tint-green-border);background:var(--tint-green-bg);border-radius:8px;align-items:center;gap:8px;min-height:38px;padding:5px 6px 5px 12px;display:flex}.meal-recipe-picked-name{text-overflow:ellipsis;white-space:nowrap;flex:auto;min-width:0;font-size:.9rem;font-weight:700;overflow:hidden}.meal-week{gap:12px;min-width:0;display:grid}.meal-week-nav{justify-content:space-between;align-items:center;gap:10px;display:flex}.meal-week-range{flex-wrap:wrap;justify-content:center;align-items:baseline;gap:10px;display:flex}.meal-week-range strong{font-size:1.05rem}.meal-week-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;min-width:0;display:grid}.meal-week-day{border:1px solid var(--line);background:var(--panel);border-radius:10px;grid-template-rows:auto 1fr;align-content:start;gap:8px;min-width:0;min-height:150px;padding:9px;display:grid;container-type:inline-size}.meal-week-day.today{border-color:var(--tint-green-border);background:var(--tint-green-bg)}.meal-week-day-head{flex-wrap:wrap;align-items:baseline;gap:6px;display:flex}.meal-week-day-name{font-size:.85rem;font-weight:800}.meal-week-day-date{color:var(--muted);font-size:.8rem}.meal-week-today-chip{border-radius:var(--radius-pill);background:var(--tint-green-bg-strong);border:1px solid var(--tint-green-border);color:var(--tint-green-text);margin-left:auto;padding:1px 7px;font-size:.66rem;font-weight:800}.meal-week-day-entries{align-content:start;gap:7px;min-width:0;display:grid}.meal-week-day-add{border:1px dashed var(--line-strong);color:var(--muted);cursor:pointer;background:0 0;border-radius:8px;justify-content:center;align-items:center;gap:4px;padding:5px 8px;font-size:.78rem;font-weight:700;display:inline-flex}.meal-week-day-add:hover{border-color:var(--green);color:var(--green)}.meal-plan-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;align-items:flex-start;gap:8px;min-width:0;padding:7px;display:flex}.meal-plan-card-thumb{object-fit:cover;border-radius:6px;flex:none;width:44px;height:33px}.meal-plan-card-fallback{background:var(--tint-green-bg);color:var(--muted-green);justify-content:center;align-items:center;display:inline-flex}.meal-plan-card-body{flex:auto;gap:3px;min-width:0;display:grid}.meal-plan-card-name{text-align:left;color:inherit;-webkit-line-clamp:2;background:0 0;border:0;-webkit-box-orient:vertical;padding:0;font-size:.85rem;font-weight:700;line-height:1.25;display:-webkit-box;overflow:hidden}button.meal-plan-card-name{cursor:pointer}button.meal-plan-card-name:hover{color:var(--green);text-decoration:underline}@container (width<=220px){.meal-plan-card{grid-template-columns:minmax(0,1fr) auto;display:grid}.meal-plan-card-thumb{display:none}}.meal-plan-card-body small{color:var(--muted);font-size:.72rem}.meal-plan-card-missing{border:1px solid var(--tint-amber-border,var(--line));background:var(--tint-amber-bg,var(--panel-3));color:var(--tint-amber-text,var(--muted));border-radius:var(--radius-pill);cursor:pointer;justify-self:start;align-items:center;gap:4px;padding:2px 8px;font-size:.7rem;font-weight:700;display:inline-flex}.meal-plan-card-missing.is-static{cursor:default}.meal-plan-card-delete{flex:none}.meal-plan-overflow-list{gap:8px;display:grid}.meal-plan-overflow-row{grid-template-columns:64px minmax(0,1fr);align-items:center;gap:10px;display:grid}.meal-plan-overflow-date{color:var(--muted);font-size:.8rem;font-weight:700}.dinner-tonight{gap:14px;min-width:0;display:grid}.dinner-hero{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:14px;display:flex}.dinner-hero-text h2{margin:2px 0 4px;font-size:1.3rem;line-height:1.15}.dinner-ask-button{flex:none;align-items:center;gap:8px;min-height:44px;font-size:.95rem;display:inline-flex}.dinner-plan-panel h3,.dinner-kitchen-panel h3{align-items:center;gap:8px;margin:0 0 10px;font-size:1.02rem;display:flex}.dinner-plan-list{gap:8px;margin:0;padding:0;list-style:none;display:grid}.dinner-plan-row{border:1px solid var(--line);background:var(--panel-3);border-radius:9px;align-items:center;gap:11px;min-width:0;padding:8px 10px;display:flex}.dinner-plan-thumb{object-fit:cover;border-radius:6px;flex:none;width:48px;height:36px}.dinner-plan-fallback{background:var(--tint-green-bg);color:var(--muted-green);justify-content:center;align-items:center;display:inline-flex}.dinner-plan-row-body{gap:2px;min-width:0;display:grid}.dinner-plan-name{text-align:left;text-overflow:ellipsis;white-space:nowrap;font-size:.95rem;font-weight:700;overflow:hidden}button.dinner-plan-name{cursor:pointer}button.dinner-plan-name:hover{color:var(--green);text-decoration:underline}.dinner-plan-row-body small{color:var(--muted);font-size:.78rem}.dinner-kitchen-cta{text-align:left;border:1px solid var(--tint-green-border);background:var(--tint-green-bg);width:100%;color:var(--tint-green-text);cursor:pointer;border-radius:9px;align-items:center;gap:8px;padding:10px 12px;font-size:.9rem;font-weight:700;display:inline-flex}.dinner-kitchen-cta:hover{background:var(--tint-green-bg-strong)}.dinner-use-soon{flex-wrap:wrap;align-items:center;gap:7px;margin-top:10px;display:flex}.dinner-use-soon-label{color:var(--muted);font-size:.85rem;font-weight:700}.dinner-use-soon-chip{border-radius:var(--radius-pill);background:var(--tint-amber-bg,var(--panel-3));border:1px solid var(--tint-amber-border,var(--line));color:var(--tint-amber-text,var(--ink));padding:2px 9px;font-size:.78rem;font-weight:600}.dinner-use-soon-ask{font-size:.82rem}@media (width<=1150px){.meal-week-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.meal-week-day{min-height:120px}}@media (width<=760px){.meal-plan-form{grid-template-columns:repeat(2,minmax(0,1fr))}.meal-plan-form-recipe,.meal-plan-form-notes{grid-column:1/-1}.meal-week-grid{grid-template-columns:1fr;gap:8px}.meal-week-day{min-height:0}.meals-hub-head{flex-direction:column;align-items:stretch}.meals-sections{align-self:stretch}.meals-section-tab{flex:1 1 0;justify-content:center}.dinner-hero{flex-direction:column;align-items:stretch}.dinner-ask-button{justify-content:center}}.cooking-mode{z-index:120;background:var(--panel);padding:max(14px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));grid-template-rows:auto 1fr auto;display:grid;position:fixed;inset:0}.cooking-mode-head{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.cooking-mode-title h1{margin:0;font-size:1.3rem;line-height:1.2}.cooking-step{text-align:center;align-content:center;justify-items:center;gap:18px;min-height:0;padding:12px;display:grid;overflow-y:auto}.cooking-step-count{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;margin:0;font-size:.9rem;font-weight:700}.cooking-step-text{max-width:760px;margin:0;font-size:clamp(1.3rem,3.4vw,2rem);line-height:1.45}.cooking-timer{border:1px solid var(--line-strong);border-radius:var(--radius-pill);background:var(--panel-3);font-variant-numeric:tabular-nums;align-items:center;gap:10px;padding:8px 16px;display:inline-flex}.cooking-timer-clock{min-width:4ch;font-size:1.35rem;font-weight:800}.cooking-timer.done{border-color:var(--tint-green-border);background:var(--tint-green-bg-strong);color:var(--tint-green-text);animation:1s ease-in-out 3 cooking-timer-pulse}@keyframes cooking-timer-pulse{50%{transform:scale(1.06)}}.cooking-finish{text-align:center;align-content:center;justify-items:center;gap:14px;min-height:0;padding:12px;display:grid;overflow-y:auto}.cooking-finish h2{align-items:center;gap:8px;margin:0;display:flex}.cooking-consume-list{text-align:left;gap:8px;width:min(100%,440px);margin:0;padding:0;list-style:none;display:grid}.cooking-consume-list label{border:1px solid var(--line);background:var(--panel-3);cursor:pointer;border-radius:8px;align-items:center;gap:10px;padding:9px 12px;display:flex}.cooking-consume-list small{color:var(--muted);display:block}.cooking-finish-actions{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.cooking-mode-nav{justify-content:space-between;gap:10px;display:flex}.cooking-mode-nav button{justify-content:center;align-items:center;gap:6px;min-width:110px;min-height:48px;font-size:1rem;display:inline-flex}.meals-section-status{align-items:center;gap:8px;display:flex}.meal-review-queue{gap:14px;min-width:0;display:grid}.meal-review-toolbar{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.meal-review-select-all{color:var(--muted);align-items:center;gap:6px;font-size:.85rem;font-weight:700;display:inline-flex}.meal-review-bulk{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.meal-review-empty{text-align:center;border:1px dashed var(--line-strong);color:var(--muted);border-radius:12px;justify-items:center;gap:8px;padding:28px 16px;display:grid}.meal-review-empty h3{color:inherit;margin:0}.meal-review-list{gap:10px;display:grid}.meal-review-item{border:1px solid var(--line);background:var(--panel);border-radius:10px}.meal-review-item>summary{cursor:pointer;align-items:center;gap:10px;min-width:0;padding:10px 12px;list-style:none;display:flex}.meal-review-item>summary::-webkit-details-marker{display:none}.meal-review-item-title{flex:auto;gap:2px;min-width:0;display:grid}.meal-review-item-title small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.meal-review-item-actions{flex:none;align-items:center;gap:6px;display:inline-flex}.meal-review-caret{color:var(--muted);transition:transform .15s}.meal-review-item[open] .meal-review-caret{transform:rotate(180deg)}.meal-review-detail{border-top:1px solid var(--line);padding:12px}.meal-review-columns{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:16px;display:grid}.meal-review-columns h4{margin:0 0 8px}.meal-review-ingredients{gap:8px;margin:0;padding:0;list-style:none;display:grid}.meal-review-ingredients li{border-bottom:1px solid var(--line);gap:3px;padding-bottom:8px;display:grid}.meal-review-ingredients li:last-child{border-bottom:0}.meal-review-ingredient-raw{font-weight:600}.meal-review-ingredient-parsed{color:var(--muted);font-size:.82rem}.meal-review-ingredient-link{color:var(--muted);align-items:center;gap:6px;display:flex}.meal-review-ingredient-link select{flex:auto;min-width:0;padding:4px 8px;font-size:.82rem}.meal-review-steps{gap:6px;margin:0;padding-left:20px;font-size:.9rem;display:grid}.meal-manage{gap:12px;min-width:0;display:grid}.meal-manage-panel>summary{cursor:pointer;align-items:center;gap:8px;font-weight:800;display:flex}.meal-manage-count{border-radius:var(--radius-pill);background:var(--tint-neutral-bg);border:1px solid var(--tint-neutral-border);color:var(--muted);padding:1px 8px;font-size:.72rem;font-weight:800}.meal-manage-panel form{margin-top:12px}.meal-manage-list{gap:6px;margin:0;padding:0;list-style:none;display:grid}.meal-manage-list li{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:10px;padding:6px 0;display:flex}.meal-manage-list li:last-child{border-bottom:0}.meal-manage-list small{color:var(--muted);display:block}.meal-template-ingredients{grid-column:1/-1}.meal-enrich-controls{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;align-items:end;gap:10px;display:grid}.meal-enrich-proposal{justify-items:start;gap:10px;margin-top:12px;display:grid}.meal-enrich-field{border:1px solid var(--line);background:var(--panel-3);cursor:pointer;border-radius:8px;align-items:flex-start;gap:10px;width:100%;padding:8px 12px;display:flex}.meal-enrich-field small{color:var(--muted);display:block}.recipe-nutrition-panel>summary{cursor:pointer;align-items:center;gap:8px;font-weight:800;display:flex}.recipe-nutrition{gap:10px;margin-top:10px;display:grid}.recipe-nutrition-grid{text-align:center;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.recipe-nutrition-grid span{border:1px solid var(--line);background:var(--panel-3);border-radius:8px;gap:2px;padding:8px 4px;display:grid}.recipe-nutrition-grid strong{font-size:1.05rem}.recipe-nutrition-grid small{color:var(--muted);font-size:.72rem}.recipe-nutrition-issues{gap:4px;margin:0;padding:0;font-size:.82rem;list-style:none;display:grid}.recipe-nutrition-issues li{justify-content:space-between;gap:10px;display:flex}.recipe-nutrition-issues small{color:var(--muted)}.recipe-nutrition-provenance{font-size:.75rem}@media (width<=760px){.meal-review-columns{grid-template-columns:1fr}.meal-review-item>summary{flex-wrap:wrap}.meal-review-item-actions{margin-left:auto}.meal-enrich-controls{grid-template-columns:1fr}.recipe-nutrition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.inventory-label-source-tabs{flex-wrap:wrap;gap:6px;margin-bottom:10px;display:flex}.inventory-label-source-tabs button{border:1px solid var(--line);background:var(--panel);border-radius:999px;padding:6px 12px;font-size:.85rem}.inventory-label-source-tabs button.selected{background:var(--accent-soft,#2563eb1f);border-color:var(--accent,#2563eb);font-weight:600}.inventory-label-pattern{gap:8px;max-width:420px;display:grid}.inventory-label-pattern-range{grid-template-columns:1fr 1fr;gap:8px;display:grid}.inventory-label-csv{gap:8px;display:grid}.inventory-label-csv-upload,.bulk-add-csv-upload{border:1px solid var(--line);cursor:pointer;border-radius:8px;align-items:center;gap:6px;width:fit-content;padding:7px 12px;font-size:.88rem;display:inline-flex}.inventory-label-precreate{margin-top:10px}.inventory-label-designer{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;display:grid}.inventory-label-designer label{gap:4px;font-size:.85rem;display:grid}.inventory-label-designer label.checkbox-line{align-self:end;align-items:center;gap:8px;display:flex}.inventory-label-template-store{gap:8px;margin-top:10px;display:grid}.inventory-label-template-list{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.inventory-label-template-list li{border:1px solid var(--line);border-radius:999px;align-items:center;gap:2px;padding:2px 4px 2px 10px;display:inline-flex}.inventory-label-template-list li>button:first-child{background:0 0;border:none;padding:4px 2px;font-size:.85rem}.inventory-label-template-save{gap:8px;max-width:420px;display:flex}.inventory-label-template-save input{flex:1;min-width:0}.asset-product-code{gap:6px;padding:8px 0;display:grid}.asset-product-code>button{align-items:center;gap:6px;width:fit-content;display:inline-flex}.upc-scan-dialog{border:1px solid var(--line);background:var(--panel);border-radius:10px;gap:10px;padding:10px;display:grid}.upc-scan-head{justify-content:space-between;align-items:center;display:flex}.upc-scan-head strong{align-items:center;gap:6px;display:inline-flex}.upc-scan-video{object-fit:cover;background:#000;border-radius:8px;width:100%;max-height:240px}.upc-scan-manual{gap:8px;display:flex}.upc-scan-manual input{flex:1;min-width:0}.upc-scan-review{gap:8px;display:grid}.upc-scan-fields{gap:6px;margin:0;padding:0;list-style:none;display:grid}.upc-scan-overwrite{color:var(--warning,#b45309);display:block}.upc-scan-warning{color:var(--warning,#b45309);background:#b453091f;border-radius:8px;margin:0;padding:6px 10px;font-size:.85rem}.upc-scan-actions{flex-wrap:wrap;gap:8px;display:flex}.upc-scan-feedback{margin:0;font-size:.85rem}.upc-scan-feedback.error{color:var(--danger,#b91c1c)}.upc-scan-feedback.success{color:var(--success,#15803d)}.bulk-add-section{margin-top:14px}.bulk-add-body{gap:10px;padding-top:8px;display:grid}.bulk-add-paste{gap:8px;display:grid}.bulk-add-paste textarea{resize:vertical;width:100%}.bulk-add-paste-actions{flex-wrap:wrap;gap:8px;display:flex}.bulk-add-grid{gap:6px;display:grid}.bulk-add-grid-head,.bulk-add-grid-row{grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(0,1fr) 64px 32px;align-items:center;gap:6px;display:grid}.bulk-add-grid-head{color:var(--muted,#6b7280);font-size:.78rem}.bulk-add-grid-row input{min-width:0}.bulk-add-grid-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}@media (width<=560px){.bulk-add-grid-head{display:none}.bulk-add-grid-row{grid-template-columns:minmax(0,1fr) 64px 32px;grid-template-areas:"name qty remove""category category category""condition condition condition"}.bulk-add-grid-row input:first-child{grid-area:name}.bulk-add-grid-row input:nth-child(2){grid-area:category}.bulk-add-grid-row input:nth-child(3){grid-area:condition}.bulk-add-grid-row input:nth-child(4){grid-area:qty}.bulk-add-grid-row button{grid-area:remove}}.expiry-input{flex-basis:100%;grid-column:1/-1;gap:6px;min-width:0;display:grid}.expiry-chip-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.expiry-chip{border:1px solid var(--line);background:var(--panel-2);border-radius:var(--radius-pill);color:var(--muted);cursor:pointer;white-space:nowrap;align-items:center;padding:4px 10px;font-size:.78rem;font-weight:700;display:inline-flex}.expiry-chip:hover:not(:disabled){border-color:var(--line-strong)}.expiry-chip.active{border-color:var(--tint-gold-border-strong);background:var(--tint-gold-bg);color:var(--tint-gold-text)}.expiry-custom-days{color:var(--muted);align-items:center;gap:6px;font-size:.82rem;display:inline-flex}.expiry-custom-days input{width:72px}.cart-item-editor{border:1px solid var(--line-strong);border-radius:8px;flex-wrap:wrap;align-items:flex-end;gap:10px;margin-top:8px;padding:8px;display:flex}.cart-item-editor .entry-label input[type=number]{width:84px}.cart-item-editor-actions{gap:6px;display:inline-flex}.cart-item-product-offer{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.cart-item-offer-dismiss{width:22px;min-width:22px;height:22px}.food-grid-toolbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.food-grid-toolbar-spacer{flex:auto}.food-grid-search{border:1px solid var(--line);background:var(--panel);min-width:160px;color:var(--muted);border-radius:8px;flex:200px;align-items:center;gap:6px;padding:0 10px;display:inline-flex}.food-grid-search input{min-width:0;color:var(--ink);background:0 0;border:none;flex:auto;padding:8px 0}.food-grid-search input:focus{outline:none}.food-sections{flex-wrap:wrap;grid-column:1/-1;gap:8px;display:flex}.food-dashboard{flex-direction:column;gap:14px;min-width:0;display:flex}.food-dashboard-headline{color:var(--ink);margin:0;font-size:1rem;font-weight:600}.food-card-grid{grid-template-columns:repeat(auto-fit,minmax(132px,1fr));gap:8px;display:grid}.food-card{border:1px solid var(--line);background:var(--panel);min-height:84px;color:var(--muted);text-align:left;cursor:pointer;border-radius:10px;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 12px;display:flex}.food-card:hover{border-color:var(--line-strong)}.food-card.expanded{border-color:var(--blue);box-shadow:inset 0 -2px 0 0 var(--blue)}.food-card-value{color:var(--ink);font-size:1.5rem;font-weight:700;line-height:1.1}.food-card small{letter-spacing:.02em;font-size:.76rem;font-weight:600}.food-card-good{box-shadow:inset 3px 0 0 0 var(--green)}.food-card-warn{box-shadow:inset 3px 0 0 0 var(--gold)}.food-card-bad{box-shadow:inset 3px 0 0 0 var(--danger)}.food-card-neutral{box-shadow:inset 3px 0 0 0 var(--line-strong)}.food-drilldown{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.food-drilldown h3{margin:0;font-size:.94rem}.food-drilldown-list{overscroll-behavior:contain;flex-direction:column;gap:4px;max-height:min(45vh,320px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.food-drilldown-list li{background:var(--panel);border-radius:6px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px;padding:5px 6px;display:flex}.food-drilldown-meta{flex-wrap:wrap;align-items:center;gap:6px;display:inline-flex}.food-quick-actions{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;display:grid}.food-quick-action{border:1px solid var(--line);background:var(--panel);border-radius:10px;flex-direction:column;gap:6px;min-width:0;padding:12px;display:flex}.food-quick-action h3{align-items:center;gap:6px;margin:0;font-size:.9rem;display:flex}.food-quick-row{flex-wrap:wrap;gap:6px;min-width:0;display:flex}.food-quick-row select{flex:140px;min-width:0}.food-quick-row input{flex:0 110px;min-width:0}.food-quick-row button{flex:none}@media (width<=640px){.food-quick-row select,.food-quick-row input,.food-quick-row button{flex:100%;min-height:44px;font-size:16px}}.food-sheet .list-sheet-scroll{max-height:min(70vh,640px);overflow-y:auto}.food-sheet .list-sheet-head{z-index:2;position:sticky;top:0}.food-grid-heading{border:none;border-right:1px solid var(--line);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);text-align:left;cursor:pointer;background:0 0;align-items:center;gap:4px;min-width:0;padding:7px 10px;font-size:.76rem;font-weight:700;display:inline-flex}.food-grid-heading:last-of-type{border-right:none}.food-grid-row.dirty{box-shadow:inset 3px 0 0 0 var(--gold)}.food-grid-row.has-error{box-shadow:inset 3px 0 0 0 var(--danger);background:#b9423f0f}.food-grid-row.draft{box-shadow:inset 3px 0 0 0 var(--green)}.food-grid-row.draft.spare{box-shadow:none}.food-grid-row.pending{box-shadow:inset 3px 0 0 0 var(--muted-green);opacity:.75}.food-name-cell{position:relative}.food-name-pending{color:var(--muted-green);flex:none;align-items:center;display:inline-flex}.food-suggestion-tag{white-space:nowrap;color:var(--muted);flex-shrink:0;align-items:center;gap:4px;margin-left:auto;padding-left:10px;font-size:.72rem;display:inline-flex}.food-suggestion-tag.owned{color:var(--muted-green)}.food-sheet .list-sheet-cell select{text-overflow:ellipsis;width:100%;min-width:0;color:var(--ink);background:0 0;border:1px solid #0000;border-radius:5px;padding:5px 18px 5px 6px;font-size:.86rem}.food-sheet .list-sheet-cell select:hover{border-color:var(--line)}.food-sheet .list-sheet-cell select:focus{border-color:var(--blue);background:var(--panel);outline:2px solid var(--focus-ring);outline-offset:-1px}.food-grid-onhand{min-width:0;color:var(--muted);align-items:center;gap:6px;padding:5px 6px;font-size:.84rem;display:inline-flex}.food-grid-cell-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:2px;display:flex}.food-grid-row-error{color:var(--danger);grid-column:1/-1;margin:0;padding:2px 8px 6px;font-size:.8rem}.food-grid-savebar-actions{align-items:center;gap:8px;margin-left:auto;display:inline-flex}.food-grid-savebar-error{color:var(--danger);flex:100%;font-size:.82rem}.stock-chip{letter-spacing:.02em;text-transform:uppercase;white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;padding:1px 7px;font-size:.72rem;font-weight:700;display:inline-flex}.stock-chip-in-stock{color:var(--green);background:#3c8a5c24;border-color:#3c8a5c52}.stock-chip-low{color:var(--gold);background:#bf8f2a29;border-color:#bf8f2a57}.stock-chip-out{color:var(--danger);background:#b9423f24;border-color:#b9423f52}.stock-chip-unknown,.stock-chip-paused{background:var(--panel-3);border-color:var(--line);color:var(--muted)}.starter-catalog-teaser{flex-direction:column;align-items:flex-start;gap:6px;display:flex}.starter-catalog{flex-direction:column;gap:10px;min-width:0;display:flex}.starter-catalog-toolbar,.starter-catalog-bulkbar{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.starter-catalog-bulkbar{background:var(--panel-2);color:var(--muted);border-radius:8px;padding:6px 8px;font-size:.86rem}.starter-catalog-bulkbar>span:first-child{flex:auto}.starter-catalog-list{overscroll-behavior:contain;flex-direction:column;gap:2px;max-height:min(60vh,520px);margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.starter-catalog-item{border-radius:6px;align-items:center;gap:8px;min-width:0;padding:5px 6px;display:flex}.starter-catalog-item:hover{background:var(--panel-2)}.starter-catalog-item.activated{opacity:.7}.starter-catalog-item.hidden-item{opacity:.55}.starter-catalog-item-main{cursor:pointer;flex:auto;align-items:center;gap:8px;min-width:0;display:flex}.starter-catalog-item-copy{flex-direction:column;min-width:0;display:flex}.starter-catalog-item-copy small{color:var(--muted);font-size:.76rem}.starter-catalog-aliases{font-style:italic}.starter-catalog-item-actions{flex:none;align-items:center;gap:4px;display:inline-flex}@media (width<=720px){.food-sheet .list-sheet-scroll{max-height:min(60vh,460px);overflow:auto}.food-sheet .list-sheet-head{z-index:2;background:var(--panel);position:sticky;top:0}.food-sheet .food-grid-toolbar{gap:6px}.food-sheet .food-grid-toolbar-spacer{display:none}.food-sheet .food-grid-search{flex:100%}.food-sheet .food-grid-toolbar>select{flex:130px;min-height:40px}.food-sheet .food-grid-toolbar>button,.food-sheet .food-grid-toolbar .list-sheet-columns>summary{flex:0 auto;min-height:40px;padding-left:10px;padding-right:10px;font-size:.86rem}.food-sheet .food-grid-row{border-radius:0;margin:0;padding:0}.food-sheet .list-sheet-cell input,.food-sheet .list-sheet-cell select{border-color:var(--line);background:var(--panel-2);min-height:40px;padding:9px 8px;font-size:16px}.food-sheet .list-sheet-cell select{padding-right:22px}.food-sheet .list-sheet-cell[data-key=isStaple] .icon-button,.food-sheet .food-grid-cell-actions .icon-button{width:40px;min-width:40px;height:40px}.food-sheet .list-sheet-footer{z-index:3;background:var(--panel);border-radius:0;flex-wrap:wrap;padding:10px 12px;position:sticky;bottom:0;box-shadow:0 -2px 8px #00000014}.food-grid-savebar-actions{flex:100%}.food-grid-savebar-actions button{flex:auto;min-height:44px}.starter-catalog-item{flex-wrap:wrap}.starter-catalog-item-actions .icon-button{width:40px;min-width:40px;height:40px}.starter-catalog-bulkbar button{flex:auto;min-height:40px}}.assistant-model-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.assistant-model-status strong{color:var(--ink)}.assistant-model-status-ok strong{color:var(--green)}.assistant-model-status-warn strong{color:var(--gold)}.assistant-connection-report{border:1px solid var(--line);border-radius:10px;margin-top:.75rem;padding:.75rem .9rem}.assistant-connection-report ul{gap:.35rem;margin:0;padding:0;list-style:none;display:grid}.assistant-connection-report li{font-size:.95rem}.assistant-connection-report li span[aria-hidden=true]{width:1.1rem;font-weight:700;display:inline-block}.assistant-connection-ok span[aria-hidden=true]{color:var(--green)}.assistant-connection-warn span[aria-hidden=true]{color:var(--gold)}.assistant-connection-fail span[aria-hidden=true]{color:var(--danger)}.assistant-connection-skip span[aria-hidden=true]{color:var(--muted)}p.assistant-connection-fail{color:var(--danger)}p.assistant-connection-warn{color:var(--gold)}.assistant-named-models{border:1px solid var(--line);border-radius:10px;gap:.6rem;margin:.75rem 0 0;padding:.75rem .9rem;display:grid}.assistant-named-models legend{padding:0 .35rem;font-weight:700}.assistant-named-model{border-top:1px solid var(--line);grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);align-items:end;gap:.6rem;padding-top:.6rem;display:grid}.assistant-named-model:first-of-type{border-top:0;padding-top:0}.assistant-named-model-actions{flex-wrap:wrap;grid-column:1/-1;align-items:center;gap:.5rem;display:flex}.assistant-named-model-tools{color:var(--muted);margin-right:auto;font-size:.9rem}.assistant-named-model-tools-supported{color:var(--green)}.assistant-named-model-tools-unsupported{color:var(--gold)}@media (width<=620px){.assistant-named-model{grid-template-columns:minmax(0,1fr)}}.fp-sheet .floor-plan-background{fill:#fff;stroke:#c9d2cc}.fp-sheet .floor-room-rect,.fp-sheet .floor-room-polygon{fill:#d5e8dcb3;stroke:#305442}.fp-sheet .floor-zone-rect{fill:#e2e8f08c;stroke:#5a6876}.fp-sheet .floor-import-background{opacity:.26;filter:none}.fp-sheet .floor-import-wall,.fp-sheet .fp-wall{fill:#303a36eb}.fp-sheet .floor-import-opening{fill:#fff;stroke:#303a36}.fp-sheet text{fill:#1c2621}.fp-sheet .fp-sheet-title-sub{fill:#43514a}.fp-sheet .floor-room-rect.garden-bed{fill:#d5e8dcb3;stroke:#305442}.fp-sheet .floor-room-sublabel{fill:#1c2621}.fp-sheet .floor-layout-asset{fill:#fff;stroke:#30445a}.fp-sheet .fp-opening-swing line,.fp-sheet .fp-opening-swing path{stroke:#5a6e64}.fp-sheet .floor-dimension-extension,.fp-sheet .floor-dimension-line,.fp-sheet .floor-dimension-tick{stroke:#785a3c;fill:none}.fp-sheet .floor-dimension-string-label{fill:#1c2621}.fp-sheet .floor-driving-dimension.violated .floor-dimension-line,.fp-sheet .floor-driving-dimension.violated .floor-dimension-tick,.fp-sheet .floor-driving-dimension.violated .floor-dimension-extension{stroke:#be2d2d}.fp-sheet .floor-driving-dimension.violated .floor-dimension-string-label{fill:#be2d2d}.fp-sheet .floor-import-room{fill:#e5f0e5;stroke:#18201c38}.fp-sheet .floor-import-wall{stroke:#101412}.fp-sheet .floor-import-opening.door,.fp-sheet .floor-import-opening.window{fill:#fff;stroke:#303a36}.fp-sheet .floor-import-fixture{stroke:#596f48}.fp-sheet .floor-import-dimension,.fp-sheet .floor-annotation-line{stroke:#6554a4}.fp-sheet .floor-import-room-label,.fp-sheet .floor-import-fixture-label,.fp-sheet .floor-import-dimension-label{stroke:#ffffffe6}.fp-schedule-panel{flex-direction:column;min-height:0;display:flex;overflow:auto}.fp-schedule-actions{gap:8px;margin-bottom:10px;display:flex}.fp-schedule-scroll{border:1px solid var(--line);border-radius:8px;overflow:auto}.fp-schedule-table{border-collapse:collapse;width:100%;font-size:.9rem}.fp-schedule-table th,.fp-schedule-table td{text-align:left;border-bottom:1px solid var(--line);padding:6px 10px}.fp-schedule-number{text-align:right;font-variant-numeric:tabular-nums}.fp-schedule-level th{background:var(--panel);z-index:1;font-weight:700;position:sticky;top:0}.fp-schedule-subtotal td,.fp-schedule-total td{background:color-mix(in srgb, var(--line) 35%, transparent);font-weight:700}.fp-schedule-empty{color:var(--muted);font-style:italic}.fp-schedule-caveat{margin-top:10px}.fp-sheet-schedule-body{font-family:inherit}.fp-sheet-schedule text{fill:#1c2621;font-size:3px}.fp-sheet-schedule-rule{fill:#9fb0a7}.fp-sheet-schedule-head text,.fp-sheet-schedule-level text,.fp-sheet-schedule-subtotal text,.fp-sheet-schedule-total text{font-weight:700}.fp-sheet-schedule .fp-sheet-schedule-caveat{fill:#43514a;font-size:2.4px}.fp-sheet-schedule .fp-sheet-schedule-overflow{fill:#8a4b12;font-size:2.6px}.reconcile-walkthrough{flex-direction:column;gap:10px;display:flex}.reconcile-progress{background:var(--panel);border-bottom:1px solid var(--line);z-index:2;justify-content:space-between;align-items:baseline;gap:10px;padding:8px 2px;display:flex;position:sticky;top:0}.reconcile-sync{color:var(--muted);white-space:nowrap;font-size:.78rem}.reconcile-sync[data-sync-state=offline],.reconcile-sync[data-sync-state=error]{color:var(--gold)}.reconcile-rows{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.reconcile-row{border:1px solid var(--line);border-radius:10px;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;display:flex}.reconcile-row.confirmed{border-color:var(--ok,var(--line));opacity:.72}.reconcile-row-main{flex-direction:column;min-width:0;display:flex}.reconcile-row-main small{color:var(--muted)}.reconcile-conflict{color:var(--gold)}.reconcile-row-actions{gap:6px;display:flex}.reconcile-adjust,.reconcile-quick-add{flex-wrap:wrap;gap:8px;width:100%;display:flex}.reconcile-footer{background:var(--panel);border-top:1px solid var(--line);z-index:2;justify-content:flex-end;gap:8px;padding:8px 2px;display:flex;position:sticky;bottom:0}.food-grid-onhand-value{color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;align-items:center;gap:6px;min-width:0;padding:0;display:inline-flex}.food-grid-onhand-value:disabled{cursor:default}.food-grid-stale-chip{background:var(--panel-3);color:var(--muted);white-space:nowrap;border-radius:999px;padding:1px 6px;font-size:.7rem}.food-grid-onhand-value[data-verification=never] .food-grid-stale-chip,.food-grid-onhand-value[data-verification=stale] .food-grid-stale-chip{color:var(--gold)}.food-grid-verify-popover{background:var(--panel);border:1px solid var(--line);z-index:5;border-radius:8px;flex-direction:column;gap:2px;padding:4px;display:flex;position:absolute;box-shadow:0 8px 24px #121c181f}.food-grid-last-checked{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:5px 6px;font-size:.82rem;overflow:hidden}.food-grid-last-checked[data-verification=never],.food-grid-last-checked[data-verification=stale]{color:var(--gold)}.definition-link{flex-wrap:wrap;align-items:center;gap:6px;margin-top:4px;display:inline-flex}.definition-link-chip,.definition-link-suggestion{border:1px solid var(--line);border-radius:999px;align-items:center;gap:4px;padding:3px 8px;font-size:.74rem;line-height:1;display:inline-flex}.definition-link-suggestion{color:var(--accent,inherit);cursor:pointer;background:0 0}.definition-link-note{display:block}.fp-link-rooms{width:min(760px,96vw)}.fp-link-rooms-warning{color:var(--warn,#a15c00)}.fp-link-rooms-list{gap:6px;max-height:min(60vh,520px);margin:12px 0 0;padding:0;list-style:none;display:grid;overflow-y:auto}.fp-link-rooms-list>li{border:1px solid var(--line);border-radius:var(--radius-control);background:var(--panel);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 10px;display:flex}.fp-link-rooms-list>li.bound{opacity:.75;border-style:dashed}.fp-link-rooms-room{flex-direction:column;flex:160px;min-width:0;display:flex}.fp-link-rooms-room small{color:var(--muted)}.fp-link-rooms-state,.fp-link-rooms-actions{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.fp-room-popover{z-index:6;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--panel);width:min(280px,80vw);max-width:calc(100% - 16px);padding:10px 12px;position:absolute;box-shadow:0 8px 24px #0000002e}.fp-room-popover header{justify-content:space-between;align-items:center;gap:8px;display:flex}.fp-room-popover-place{align-items:center;gap:6px;margin:6px 0 0;font-weight:600;display:flex}.fp-room-popover-things{margin:6px 0;padding-left:18px}.fp-room-popover-things .more{color:var(--muted);margin-left:-18px;list-style:none}.fp-room-popover button.primary{width:100%;margin-top:8px}.fp-overlay-legend{z-index:5;border:1px solid var(--line-strong);border-radius:var(--radius-control);background:var(--panel);width:min(260px,100% - 20px);padding:8px 10px;font-size:.85rem;position:absolute;bottom:10px;left:10px;box-shadow:0 8px 24px #0000002e}.fp-overlay-legend header{color:var(--muted);align-items:center;gap:6px;margin-bottom:4px;display:flex}.fp-overlay-legend p{margin:4px 0 0}.fp-overlay-legend .is-error{color:var(--danger)}.fp-overlay-bands{flex-wrap:wrap;gap:4px 10px;margin:6px 0 0;padding:0;list-style:none;display:flex}.fp-overlay-bands li{align-items:center;gap:5px;display:flex}.fp-overlay-swatch{border:1px solid var(--line-strong);vertical-align:-2px;border-radius:3px;flex:none;width:14px;height:14px;display:inline-block}.fp-overlay-swatch.is-unbound{background:var(--fp-overlay-unbound);margin-right:5px}.fp-overlay-circuit-pick{flex-direction:column;gap:4px;margin-top:6px;display:flex}.dashboard-asset-value .asset-value-headline{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 4px;display:flex}.dashboard-asset-value .asset-value-headline strong{font-size:1.5rem;line-height:1.2}.dashboard-asset-value .asset-value-headline small{color:var(--muted)}.asset-value-estimate,.asset-value-other-currencies{margin:0 0 8px}.asset-value-breakdown{align-items:center;gap:14px;margin:10px 0 4px;display:flex}.asset-value-donut{flex-shrink:0;width:78px;height:78px}.asset-value-donut-track{fill:none;stroke:var(--track);stroke-width:6px}.asset-value-donut-segment{fill:none;stroke-width:6px}.asset-value-legend{flex:1;gap:3px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.asset-value-legend li{grid-template-columns:11px minmax(0,1fr) auto;align-items:center;gap:8px;display:grid}.asset-value-legend-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.asset-value-legend-amount{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.asset-value-swatch{border-radius:3px;width:11px;height:11px;display:inline-block}.asset-value-tone-0{stroke:var(--blue);background:var(--blue)}.asset-value-tone-1{stroke:var(--green);background:var(--green)}.asset-value-tone-2{stroke:var(--gold);background:var(--gold)}.asset-value-tone-3{stroke:var(--purple);background:var(--purple)}.asset-value-tone-4{stroke:var(--coral);background:var(--coral)}.asset-value-tone-5{stroke:var(--slate-surface);background:var(--slate-surface)}.asset-value-tone-6{stroke:var(--muted);background:var(--muted)}.asset-value-nudge,.asset-value-cta{color:var(--blue);min-height:0;font-weight:600;display:inline-block}.dashboard-asset-value.is-empty .inline-note{margin:0 0 8px}.dashboard-coverage.needs-attention{border-left:3px solid var(--danger)}.dashboard-coverage .coverage-headline{align-items:center;gap:6px;margin:0 0 6px;font-weight:600;display:flex}.dashboard-coverage .coverage-rows{gap:6px;margin:0 0 10px;padding:0;list-style:none;display:grid}.dashboard-coverage .coverage-rows li{font-variant-numeric:tabular-nums;flex-direction:column;display:flex}.dashboard-coverage .coverage-rows li small{color:var(--muted)}.dashboard-coverage .coverage-gone{font-style:italic}.dashboard-coverage .coverage-headline.is-incomplete{color:var(--muted);font-weight:500}.inventory-value-sort{flex-wrap:wrap;gap:6px;margin:0 0 12px;display:flex}.inventory-value-sort button.active{border-color:var(--blue);color:var(--blue);font-weight:600}.inventory-value-currency{border-top:1px solid var(--line);margin-top:14px;padding-top:12px}.inventory-value-currency:first-of-type{border-top:0;margin-top:0;padding-top:0}.inventory-value-currency h3{flex-wrap:wrap;align-items:baseline;gap:8px;margin:0 0 4px;font-size:1.35rem;display:flex}.inventory-value-currency h3 small{color:var(--muted);font-size:.85rem;font-weight:400}.inventory-value-table{border-collapse:collapse;width:100%;margin:10px 0 4px}.inventory-value-table th,.inventory-value-table td{border-bottom:1px solid var(--line);text-align:left;padding:6px 8px}.inventory-value-table thead th{color:var(--muted);font-size:.85rem;font-weight:600}.inventory-value-table .numeric{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.inventory-value-table td small{color:var(--muted);display:block}.inventory-value-top{margin-top:12px}.inventory-value-top h4{margin:0 0 6px}.inventory-value-top ol{gap:4px;margin:0;padding-left:20px;display:grid}.inventory-value-top small{color:var(--muted);display:block}.inventory-value-for-sale{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.inventory-value-for-sale h3{margin:0 0 4px;font-size:1.05rem}.inventory-value-for-sale-currency{background:var(--tint-blue-bg);border:1px solid var(--tint-blue-border);border-radius:10px;margin-top:10px;padding:10px 12px}.inventory-value-for-sale-total{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;font-size:1.2rem;font-weight:700;display:flex}.inventory-value-for-sale-total small{color:var(--muted);font-size:.82rem;font-weight:400}.inventory-value-for-sale-intents{gap:2px;margin:6px 0 0;padding:0;list-style:none;display:grid}.inventory-value-for-sale-intents li{flex-wrap:wrap;gap:8px;font-size:.88rem;display:flex}.inventory-value-for-sale-intents small{color:var(--muted);font-variant-numeric:tabular-nums}.inventory-value-donations{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.inventory-value-donations h3{margin:0 0 4px;font-size:1.05rem}.inventory-value-donations-year{gap:4px;max-width:220px;margin-top:10px;display:grid}.inventory-value-donations-currency{background:var(--tint-blue-bg);border:1px solid var(--tint-blue-border);border-radius:10px;margin-top:10px;padding:10px 12px}.inventory-value-donations-total{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:8px;margin:0;font-size:1.2rem;font-weight:700;display:flex}.inventory-value-donations-total small{color:var(--muted);font-size:.82rem;font-weight:400}.inventory-value-donations-recipients{gap:2px;margin:6px 0 0;padding:0;list-style:none;display:grid}.inventory-value-donations-recipients li{flex-wrap:wrap;gap:8px;font-size:.88rem;display:flex}.inventory-value-donations-recipients small{color:var(--muted);font-variant-numeric:tabular-nums}.inventory-value-donations .inventory-value-table small{color:var(--muted);font-size:.78rem;font-weight:400;display:block}.inventory-value-maintenance{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.inventory-value-maintenance h3{margin:0 0 4px;font-size:1.05rem}.inventory-maintenance-currency{background:var(--tint-blue-bg);border:1px solid var(--tint-blue-border);border-radius:10px;margin-top:10px;padding:10px 12px}.inventory-maintenance-half{margin-top:10px}.inventory-maintenance-half+.inventory-maintenance-half{border-top:1px dashed var(--line);padding-top:10px}.inventory-maintenance-half h4{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin:0 0 6px;font-size:.92rem;display:flex}.inventory-maintenance-half h4 span{font-variant-numeric:tabular-nums;font-weight:700}.inventory-value-maintenance .inventory-value-table small{color:var(--muted);font-size:.78rem;font-weight:400;display:block}.inventory-value-forecast{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.inventory-forecast-currency{background:var(--tint-blue-bg);border:1px solid var(--tint-blue-border);border-left:3px dashed var(--tint-blue-border);border-radius:10px;margin-top:10px;padding:10px 12px}.inventory-forecast-currency h4{margin:0 0 6px;font-size:.92rem}.inventory-value-forecast .inventory-value-table small{color:var(--muted);font-size:.78rem;font-weight:400;display:block}.inventory-forecast-things{gap:2px;margin:8px 0 0;padding:0;list-style:none;display:grid}.inventory-forecast-things li{flex-wrap:wrap;gap:8px;font-size:.88rem;display:flex}.inventory-forecast-things small{color:var(--muted);font-variant-numeric:tabular-nums}.inventory-age-categories{gap:2px;margin:8px 0 0;padding:0;list-style:none;display:grid}.inventory-age-category{flex-wrap:wrap;align-items:baseline;gap:8px;font-size:.88rem;display:flex}.inventory-age-category-name{font-weight:600}.inventory-age-category small,.inventory-age-thing small{color:var(--muted);font-variant-numeric:tabular-nums}.inventory-age-things{gap:6px;margin:10px 0 0;padding:0;list-style:none;display:grid}.inventory-age-thing{grid-template-columns:minmax(0,12rem) minmax(4rem,1fr) minmax(0,14rem);align-items:center;gap:4px 10px;font-size:.88rem;display:grid}.inventory-age-thing-name{overflow-wrap:anywhere}.inventory-age-track{background:var(--track);border-radius:999px;width:100%;height:8px;display:block;overflow:hidden}.inventory-age-fill{background:var(--green);border-radius:inherit;height:100%;display:block}.inventory-age-thing[data-band=soon] .inventory-age-fill{background:var(--gold)}.inventory-age-thing[data-band=due] .inventory-age-fill{background:var(--danger)}.inventory-age-thing[data-band=due] small{color:var(--ink)}@media (width<=640px){.inventory-age-thing{grid-template-columns:minmax(0,1fr);gap:2px}}.asset-depreciation-details .asset-replacement-outlook{color:var(--ink);margin-top:6px}.service-record-spend{flex-wrap:wrap;gap:12px;margin:0 0 6px;display:flex}.service-record-spend span{font-variant-numeric:tabular-nums;flex-wrap:wrap;align-items:baseline;gap:6px;font-weight:700;display:flex}.service-record-spend small{color:var(--muted);font-size:.8rem;font-weight:400}.asset-disposal-list{gap:10px;margin:10px 0 0;padding:0;list-style:none;display:grid}.asset-disposal-row{border-top:1px solid var(--line);gap:4px;padding-top:10px;display:grid}.asset-disposal-headline{flex-wrap:wrap;align-items:baseline;gap:8px;display:flex}.asset-disposal-headline small{color:var(--muted);margin-left:auto}.insurance-policy-list{gap:14px;margin:12px 0 0;padding:0;list-style:none;display:grid}.insurance-policy-row{border-top:1px solid var(--line);gap:4px;padding-top:12px;display:grid}.insurance-policy-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.insurance-policy-type{color:var(--muted);font-size:.85em}.insurance-policy-state{white-space:nowrap;color:var(--muted);font-size:.85em}.insurance-policy-state.renewing{font-weight:600}.insurance-policy-state.lapsed{color:var(--danger);font-weight:600}.insurance-policy-row.is-lapsed{border-left:3px solid var(--danger);padding-left:8px}.insurance-coverage-list{gap:6px;margin:8px 0 0;padding:0;list-style:none;display:grid}.insurance-coverage-row{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.insurance-coverage-label{align-items:center;gap:6px;min-width:8em;display:flex}.insurance-coverage-amount{font-variant-numeric:tabular-nums;margin-inline-start:auto}.insurance-total{color:var(--muted)}.insurance-lead-form{flex-wrap:wrap;align-items:flex-end;gap:10px;display:flex}.insurance-lead-form input[name=insuranceRenewalLeadDays]{width:6em}.inventory-insurance-panel>.inline-note:last-child{margin-top:12px}.insurance-coverage-gone{color:var(--muted);font-style:italic}.insurance-coverage-compare{color:var(--muted);flex-wrap:wrap;flex-basis:100%;align-items:baseline;gap:2px 10px;font-size:.85em;display:flex}.insurance-coverage-compare.is-short .insurance-coverage-verdict{color:var(--danger);font-weight:600}.insurance-coverage-compare.is-within .insurance-coverage-verdict{color:var(--green)}.insurance-coverage-compare.is-partial .insurance-coverage-verdict,.insurance-coverage-compare.is-within.is-unmeasured .insurance-coverage-verdict{color:var(--gold)}.insurance-coverage-compare.is-subject_gone .insurance-coverage-verdict{font-style:italic}.insurance-coverage-aside{color:var(--muted)}.insurance-uncovered{border-top:1px solid var(--line);margin-top:12px;padding-top:10px}.insurance-uncovered h4{margin:0 0 4px}.insurance-uncovered ul{gap:4px;margin:0;padding:0;list-style:none;display:grid}.insurance-uncovered li{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.insurance-uncovered li small{color:var(--muted);font-variant-numeric:tabular-nums;margin-inline-start:auto}.vendor-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:10px;display:flex}.vendor-trade-filter{color:var(--muted);gap:4px;font-size:.85rem;display:grid}.vendor-list{gap:14px;margin:12px 0 0;padding:0;list-style:none;display:grid}.vendor-row{border-top:1px solid var(--line);gap:4px;padding-top:12px;display:grid}.vendor-identity{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.vendor-trade{color:var(--muted);font-size:.85em}.vendor-contact{flex-wrap:wrap;align-items:baseline;gap:10px;font-size:.9em;display:flex}.vendor-contact small{color:var(--muted)}.vendor-notes{margin:2px 0 0;font-size:.9em}.vendor-usage{color:var(--muted)}.vendor-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.vendor-delete:hover{color:var(--danger)}.vendor-work-table{border-collapse:collapse;width:100%;margin:8px 0 4px}.vendor-work-table th,.vendor-work-table td{border-bottom:1px solid var(--line);text-align:left;padding:6px 8px}.vendor-work-table thead th{color:var(--muted);font-size:.85rem;font-weight:600}.vendor-work-table .numeric{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.vendor-footnote{align-items:center;gap:6px;margin-top:16px;display:flex}.vendor-form label{min-width:0}.acquisition-toolbar{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-top:10px;display:flex}.acquisition-list{gap:14px;margin:12px 0 0;padding:0;list-style:none;display:grid}.acquisition-row{border-top:1px solid var(--line);gap:4px;padding-top:12px;display:grid}.acquisition-identity{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.acquisition-state,.acquisition-budget,.acquisition-needed,.acquisition-project,.acquisition-link{color:var(--muted);font-size:.85em}.acquisition-budget,.acquisition-needed{font-variant-numeric:tabular-nums}.acquisition-notes{margin:2px 0 0;font-size:.9em}.acquisition-options{border-collapse:collapse;width:100%;margin:8px 0 4px}.acquisition-options th,.acquisition-options td{border-bottom:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 8px}.acquisition-options thead th{color:var(--muted);font-size:.85rem;font-weight:600}.acquisition-options .numeric{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.acquisition-options td small{color:var(--muted);display:block}.acquisition-option-chosen>td{font-weight:600}.acquisition-comparison{flex-wrap:wrap;gap:12px;margin-bottom:4px;display:flex}.acquisition-comparison small{color:var(--muted);font-variant-numeric:tabular-nums}.acquisition-comparison .acquisition-over-budget{color:var(--danger)}.acquisition-actions{flex-wrap:wrap;gap:8px;margin-top:4px;display:flex}.acquisition-form label,.acquisition-candidate-form label,.acquisition-handoff-form label{min-width:0}.garden-planner-modal{width:min(900px,96vw);max-height:92dvh;overflow:auto}.garden-planner{flex-direction:column;gap:12px;padding:16px;display:flex}.garden-planner-header{justify-content:space-between;align-items:center;gap:12px;display:flex}.garden-planner-header h3{margin:0}.garden-planner-tools{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.garden-planner-variety{flex-direction:column;flex:220px;gap:4px;min-width:0;display:flex}.garden-canvas-wrap{flex-direction:column;gap:6px;display:flex;position:relative}.garden-bed-canvas{background:var(--panel-2);border:1px solid var(--line);touch-action:none;border-radius:10px;width:100%;max-height:52dvh}.garden-bed-outline{fill:#e2d5bad9;stroke:#7c6033;stroke-width:2px;vector-effect:non-scaling-stroke}.garden-planting rect{fill:color-mix(in srgb, var(--green) 45%, var(--panel));stroke:var(--green);stroke-width:1.5px;vector-effect:non-scaling-stroke;cursor:grab}.garden-planting text{fill:var(--ink);pointer-events:none}.garden-planting.resident rect{fill:color-mix(in srgb, var(--gold) 38%, var(--panel));stroke:var(--gold);stroke-dasharray:6 3}.garden-planting.terminal rect{fill:color-mix(in srgb, var(--muted) 18%, var(--panel));stroke:var(--muted);stroke-dasharray:3 4;cursor:default}.garden-planting.terminal text{fill:var(--muted)}.garden-planting.selected rect{stroke:var(--blue);stroke-width:3px}.garden-planting-handle{fill:var(--panel);stroke:var(--blue);stroke-width:1.5px;vector-effect:non-scaling-stroke;cursor:nwse-resize}.garden-planting-draft{fill:color-mix(in srgb, var(--green) 20%, transparent);stroke:var(--green);stroke-width:2px;stroke-dasharray:6 4;vector-effect:non-scaling-stroke;pointer-events:none}.garden-planting-draft.refused{fill:color-mix(in srgb, var(--coral) 20%, transparent);stroke:var(--coral)}.garden-canvas-hint{min-height:1.2em}.garden-planner-selection{border:1px solid var(--line);background:var(--panel-2);border-radius:10px;flex-direction:column;gap:8px;padding:12px;display:flex}.garden-planner-selection h4{margin:0}.garden-planner-count{align-items:center;gap:8px;display:flex}.garden-planner-count input{width:7rem}.garden-planner-list{flex-direction:column;gap:4px;margin:0;padding:0;list-style:none;display:flex}.garden-planner-list li{border-radius:8px;flex-wrap:wrap;align-items:baseline;gap:8px;padding:4px 6px;display:flex}.garden-planner-list li.selected{background:var(--tint-blue-bg)}[data-theme=dark] .garden-bed-outline{fill:#2d2619;stroke:#c7aa76}[data-theme=dark] .garden-planting text{fill:var(--ink)}[data-theme=dark] .garden-planner-list li.selected{background:color-mix(in srgb, var(--blue) 24%, transparent)}@media (width<=620px){.garden-planner-modal{border-radius:0;width:100vw;max-height:100dvh}.garden-bed-canvas{max-height:44dvh}}.garden-page{gap:14px;min-width:0;max-width:100%;display:grid}.garden-empty{border:1px dashed var(--line-strong);border-radius:var(--radius-control);background:var(--panel-2);justify-items:start;gap:8px;padding:14px;display:grid}.garden-empty p{margin:0}.garden-season-name{align-items:center;gap:8px;margin:0 0 4px;font-weight:800;display:flex}.garden-agenda-row{align-items:center;gap:8px;min-width:0;display:flex}.garden-unmapped-note{color:var(--umber);align-items:center;gap:8px;display:flex}.garden-bed-row,.garden-variety-row{gap:6px;min-width:0;display:grid}.garden-bed-head,.garden-variety-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.garden-bed-crops{margin:0}.garden-variety-cultivar{color:var(--muted);margin-left:6px;font-style:italic}.garden-variety-badges{flex-wrap:wrap;gap:6px;display:flex}.status-pill.starter{background:var(--tint-green-bg-strong);border-color:var(--tint-green-border);color:var(--tint-green-text)}.status-pill.archived{background:var(--tint-neutral-bg);border-color:var(--tint-neutral-border);color:var(--muted)}.garden-variety-summary{margin:0}.garden-variety-actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.garden-variety-detail{border-top:1px solid var(--line);gap:10px;padding-top:8px;display:grid}.garden-variety-detail h4{margin:0}.garden-variety-detail dl{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px 14px;margin:0;display:grid}.garden-variety-detail dt{color:var(--muted);font-size:.82rem}.garden-variety-detail dd{margin:0;font-weight:700}.garden-variety-notes{white-space:pre-wrap;margin:0}.garden-variety-placements{margin:0;padding-left:18px}.garden-catalog-filters,.garden-variety-form{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:10px;min-width:0;display:grid}.garden-catalog-filters{margin-bottom:12px}.garden-variety-form .catalog-notes-field,.garden-variety-form-actions{grid-column:1/-1}.garden-variety-form-actions{gap:8px;display:flex}@media (width<=720px){.garden-screen-tabs{z-index:20;position:sticky;top:66px}.garden-catalog-filters,.garden-variety-form,.garden-calendar-filters,.garden-frost-form,.garden-season-form{grid-template-columns:minmax(0,1fr)}.garden-season-copy{grid-template-columns:minmax(0,1fr);align-items:stretch}}.garden-season-picker,.garden-calendar-filters,.garden-frost-form,.garden-season-form,.garden-season-copy{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));align-items:end;gap:10px;min-width:0;display:grid}.garden-season-picker{grid-template-columns:minmax(0,320px);margin-bottom:12px}.garden-season-actions{flex-wrap:wrap;gap:8px;margin:10px 0;display:flex}.garden-season-copy{border:1px solid var(--line);border-radius:10px;margin:12px 0;padding:10px}.garden-season-copy .inline-note,.garden-season-form-actions,.garden-frost-actions,.garden-frost-form .garden-frost-suggestion{grid-column:1/-1}.garden-season-form{border-top:1px solid var(--line);margin-top:14px;padding-top:14px}.garden-season-form-actions,.garden-frost-actions{gap:8px;display:flex}.garden-copy-conflicts{margin-top:10px}.garden-copy-conflicts .inline-note,.garden-frost-missing,.garden-frost-line{color:var(--umber);align-items:center;gap:8px;display:flex}.garden-calendar-group{min-width:0;margin-top:14px}.garden-calendar-group h3{color:var(--muted);margin:0 0 6px;font-size:.95rem}.garden-calendar-row{align-items:center;gap:10px;min-width:0;display:flex}.garden-calendar-row>div{flex:1;min-width:0}.garden-calendar-row p{margin:2px 0 0}.garden-frost-suggestion{color:var(--muted-green)}.garden-rotation-warning{color:var(--umber);align-items:center;gap:8px;display:flex}.memory-warning{border:1px solid var(--tint-gold-border);background:var(--tint-gold-bg);color:var(--tint-gold-text);border-radius:8px;align-items:flex-start;gap:8px;margin:10px 0 0;padding:8px 10px;font-size:.92rem;display:flex}.memory-sparkline{border:1px solid var(--line);background:var(--track);border-radius:8px;width:100%;height:64px;margin:10px 0;display:block}.memory-sparkline polyline{fill:none;stroke-width:1.5px;vector-effect:non-scaling-stroke}.memory-sparkline-rss{stroke:var(--blue)}.memory-sparkline-heap{stroke:var(--green)}.memory-sparkline-external{stroke:var(--umber)}.memory-legend{color:var(--muted);flex-wrap:wrap;gap:6px 16px;margin:0 0 12px;padding:0;font-size:.88rem;list-style:none;display:flex}.memory-legend li:before{content:"";vertical-align:middle;border-radius:2px;width:14px;height:3px;margin-right:6px;display:inline-block}.memory-legend-rss:before{background:var(--blue)}.memory-legend-heap:before{background:var(--green)}.memory-legend-external:before{background:var(--umber)}
