:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--font-body:"Proxima Nova", "ProximaNova", proxima-nova, "Avenir Next", Avenir, "Helvetica Neue", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-display:Iowan Old Style, Baskerville, "Times New Roman", Times, serif;font-family:var(--font-body);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--color-background:#f7f8f3;--color-surface:#fff;--color-surface-muted:#edf3ee;--color-surface-strong:#fbfcf7;--color-text:#122019;--color-text-muted:#5b6b62;--color-border:#dfe7dd;--color-border-strong:#cbd8ca;--color-drawer:#082219;--color-drawer-surface:#0f3426;--color-drawer-text:#f7fbf3;--color-drawer-muted:#abc0b2;--color-drawer-border:#245140;--color-brand-mark:#003f2d;--color-primary:#003f2d;--color-primary-text:#fff;--color-primary-hover:#062f23;--color-primary-soft:#dcecdf;--color-accent:#0fbd2d;--color-accent-warm:#c99b37;--color-success:#229d45;--color-warning:#ad6b1d;--color-danger:#b42318;--color-focus:#0fbd2d;--color-link:#075f49;--color-feature-surface:#003f2d;--color-feature-surface-soft:#155b45;--color-feature-text:#f7fbf3;--color-feature-muted:#b8d3c5;--color-feature-border:#2b6b55;--shadow-soft:0 1px 2px #003f2d0f, 0 18px 42px #003f2d1a;--shadow-crisp:0 1px 0 #153f2c14;--shadow-lifted:0 1px 2px #003f2d14, 0 22px 50px #003f2d24;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.625rem;--radius-pill:999px;--duration-fast:.14s;--duration-medium:.22s;--ease-smooth:cubic-bezier(.2, .8, .2, 1);color:var(--color-text);background:var(--color-background);line-height:1.5}@media (prefers-color-scheme:dark){:root:not([data-theme]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-background:#0e1511;--color-surface:#151f19;--color-surface-muted:#1f2b23;--color-surface-strong:#111a15;--color-text:#edf5ed;--color-text-muted:#b0beb4;--color-border:#2d3b32;--color-border-strong:#45574a;--color-drawer:#07120d;--color-drawer-surface:#10251a;--color-drawer-text:#f3f8ef;--color-drawer-muted:#a7b8a8;--color-drawer-border:#294634;--color-brand-mark:#0fbd2d;--color-primary:#86d98f;--color-primary-text:#0b130e;--color-primary-hover:#a1e2a9;--color-primary-soft:#223b29;--color-accent:#58d86b;--color-accent-warm:#f0c264;--color-success:#62c96f;--color-warning:#f2b84b;--color-danger:#ff8a80;--color-focus:#7fd28a;--color-link:#91d99a;--color-feature-surface:#0b2a1f;--color-feature-surface-soft:#173e30;--color-feature-text:#f3f8ef;--color-feature-muted:#b7cabd;--color-feature-border:#35604b;--shadow-soft:0 1px 2px #00000047, 0 12px 30px #0000004d;--shadow-lifted:0 1px 2px #00000052, 0 22px 48px #00000061}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-background:#0e1511;--color-surface:#151f19;--color-surface-muted:#1f2b23;--color-surface-strong:#111a15;--color-text:#edf5ed;--color-text-muted:#b0beb4;--color-border:#2d3b32;--color-border-strong:#45574a;--color-drawer:#07120d;--color-drawer-surface:#10251a;--color-drawer-text:#f3f8ef;--color-drawer-muted:#a7b8a8;--color-drawer-border:#294634;--color-brand-mark:#0fbd2d;--color-primary:#86d98f;--color-primary-text:#0b130e;--color-primary-hover:#a1e2a9;--color-primary-soft:#223b29;--color-accent:#58d86b;--color-accent-warm:#f0c264;--color-success:#62c96f;--color-warning:#f2b84b;--color-danger:#ff8a80;--color-focus:#7fd28a;--color-link:#91d99a;--color-feature-surface:#0b2a1f;--color-feature-surface-soft:#173e30;--color-feature-text:#f3f8ef;--color-feature-muted:#b7cabd;--color-feature-border:#35604b;--shadow-soft:0 1px 2px #00000047, 0 12px 30px #0000004d;--shadow-lifted:0 1px 2px #00000052, 0 22px 48px #00000061}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}body{background:linear-gradient(145deg, color-mix(in srgb, var(--color-accent-warm), transparent 94%), transparent 22rem), linear-gradient(180deg, var(--color-surface-strong), var(--color-background) 18rem), var(--color-background);flex-direction:column;min-height:100vh;margin:0;display:flex}main{width:100%;max-width:82rem;margin:0 auto;padding:2rem}h1{color:var(--color-text);font-size:3.1rem;font-weight:var(--font-weight-semibold);letter-spacing:0;margin-top:0;line-height:1}h2,h3,strong,b{font-weight:var(--font-weight-semibold)}a{color:var(--color-link)}button{cursor:pointer;border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text);border-radius:var(--radius-md);font:inherit;font-weight:var(--font-weight-semibold);box-shadow:var(--shadow-crisp);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), color var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);padding:.5rem 1rem}button:hover{background:var(--color-surface-muted);transform:translateY(-1px)}button:active{transform:translateY(0)}button:disabled{cursor:not-allowed;opacity:.55}button:disabled:hover{transform:none}button.primary{background:var(--color-primary);color:var(--color-primary-text);border-color:var(--color-primary);box-shadow:0 10px 22px color-mix(in srgb, var(--color-primary), transparent 78%)}button.primary:hover{background:var(--color-primary-hover);box-shadow:0 14px 30px color-mix(in srgb, var(--color-primary), transparent 74%)}button.success{color:var(--color-primary-text);background:var(--color-success);border-color:var(--color-success)}button.success:hover{background:color-mix(in srgb, var(--color-success), #000 12%)}button.danger{color:#fff;background:var(--color-danger);border-color:var(--color-danger)}button.danger:hover{background:color-mix(in srgb, var(--color-danger), #000 12%)}input,select,textarea{font:inherit;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth);padding:.625rem .75rem;box-shadow:inset 0 1px #ffffff6b}input[type=file]{padding:.45rem}input[type=file]::file-selector-button{color:var(--color-text);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-sm);font:inherit;margin-right:.75rem;padding:.45rem .7rem;font-weight:600}input:focus-visible,select:focus-visible,textarea:focus-visible,button:focus-visible,a:focus-visible{outline:3px solid color-mix(in srgb, var(--color-focus), transparent 55%);outline-offset:2px}input:focus-visible,select:focus-visible,textarea:focus-visible{border-color:color-mix(in srgb, var(--color-focus), var(--color-border) 35%);box-shadow:0 0 0 4px color-mix(in srgb, var(--color-focus), transparent 84%)}code,pre{background:var(--color-surface-muted);border-radius:.25rem;padding:.1rem .3rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}pre{padding:.75rem 1rem;overflow-x:auto}.app-shell{min-height:100vh;transition:grid-template-columns var(--duration-medium) var(--ease-smooth);grid-template-columns:18.5rem minmax(0,1fr);display:grid}.app-shell.drawer-collapsed{grid-template-columns:5.25rem minmax(0,1fr)}.app-drawer{z-index:10;height:100vh;color:var(--color-drawer-text);background:linear-gradient(180deg, color-mix(in srgb, var(--color-drawer-surface), #fff 3%), var(--color-drawer) 16rem), var(--color-drawer);border-right:1px solid var(--color-drawer-border);flex-direction:column;align-self:start;gap:1.75rem;padding:1.15rem 1rem;display:flex;position:sticky;top:0;overflow-y:auto;box-shadow:16px 0 46px #08221929}.drawer-header{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.5rem;min-width:0;display:grid}.brand-link{min-width:0;color:var(--color-drawer-text);align-items:center;gap:.72rem;font-size:1.25rem;font-weight:700;text-decoration:none;display:inline-flex}.brand-name{text-overflow:ellipsis;overflow:hidden}.brand-mark{border:1px solid color-mix(in srgb, var(--color-drawer-border), #fff 18%);border-radius:var(--radius-lg);background:#fff;width:2.55rem;height:2.55rem;padding:.3rem;display:block;box-shadow:inset 0 -1px #003f2d1f,0 10px 24px #0000002e}.drawer-utility-links{align-items:center;gap:.25rem;display:flex}.drawer-icon-link{width:2.25rem;height:2.25rem;color:var(--color-drawer-muted);border-radius:var(--radius-lg);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), color var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);background:0 0;border:1px solid #0000;place-items:center;font-size:1.2rem;line-height:1;text-decoration:none;display:grid}.drawer-icon-link.account-icon span{clip-path:polygon(50% 0,72% 8%,82% 27%,72% 44%,62% 50%,84% 62%,100% 100%,0 100%,16% 62%,38% 50%,28% 44%,18% 27%,28% 8%);background:radial-gradient(circle at 50% 22%,currentColor 0 .28rem,#0000 .29rem),radial-gradient(at 50% 100%,currentColor 0 .58rem,#0000 .59rem);width:1.1rem;height:1.15rem;display:block}.drawer-icon-link:hover,.drawer-icon-link.active{color:var(--color-drawer-text);background:color-mix(in srgb, var(--color-drawer-surface), #fff 6%);border-color:var(--color-drawer-border);transform:translateY(-1px)}.drawer-toggle{width:2rem;height:2rem;color:var(--color-drawer-text);background:var(--color-drawer-surface);border-color:var(--color-drawer-border);flex:none;place-items:center;padding:0;font-size:1.15rem;line-height:1;display:grid}.app-nav{align-items:stretch;gap:.8rem;min-width:0;display:grid}.drawer-account-nav{border-top:1px solid var(--color-drawer-border);gap:.3rem;margin-top:auto;padding-top:1rem;display:grid}.drawer-account-link{min-height:2.7rem;color:var(--color-drawer-muted);border-radius:var(--radius-md);font-size:.9rem;font-weight:var(--font-weight-semibold);transition:color var(--duration-fast) var(--ease-smooth), background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth);border:1px solid #0000;align-items:center;gap:.7rem;padding:.55rem .7rem;text-decoration:none;display:flex}button.drawer-account-link{text-align:left;width:100%;box-shadow:none;background:0 0;border-color:#0000}button.drawer-account-link:hover{transform:none}.guide-nav-badge{color:#082219;background:var(--color-accent);border-radius:var(--radius-pill);place-items:center;min-width:1.35rem;height:1.35rem;margin-left:auto;font-size:.72rem;font-weight:800;display:grid}.drawer-account-link:hover,.drawer-account-link.active{color:var(--color-drawer-text);background:color-mix(in srgb, var(--color-drawer-surface), #fff 5%);border-color:var(--color-drawer-border)}.drawer-account-link .nav-icon{width:1.15rem;height:1.15rem}.nav-section{gap:.4rem;display:grid}.nav-section-toggle{text-align:left;width:100%;min-height:3.35rem;box-shadow:none;transition:background var(--duration-fast) var(--ease-smooth), color var(--duration-fast) var(--ease-smooth);background:0 0;border-color:#0000;grid-template-columns:1.65rem minmax(0,1fr) auto;align-items:center;gap:.65rem;padding:.58rem .7rem;display:grid}.nav-section-toggle:hover{background:color-mix(in srgb, var(--color-drawer-surface), transparent 35%);transform:none}.nav-section-toggle[aria-expanded=false] .nav-section-caret{transform:rotate(-90deg)}.nav-section-text{gap:.1rem;min-width:0;display:grid}.nav-section-title{color:var(--color-drawer-text);letter-spacing:.01em;margin:0;font-size:.9rem;font-weight:650}.nav-section-description{color:var(--color-drawer-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.78rem;overflow:hidden}.nav-section-caret{color:var(--color-drawer-muted);transition:transform .14s}.nav-section-items{gap:.25rem;display:grid}.nav-section-compact-items{display:none}.nav-link-standalone{margin-block:.125rem}.nav-link.nav-link-overview{min-height:3.2rem;color:var(--color-drawer-text);font-size:.95rem;font-weight:650}.nav-link{color:var(--color-drawer-muted);border-radius:var(--radius-lg);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), color var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);border:1px solid #0000;grid-template-columns:1.65rem minmax(0,1fr);align-items:center;gap:.65rem;padding:.68rem .72rem;font-size:.95rem;font-weight:600;line-height:1.2;text-decoration:none;display:grid}.nav-link-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.nav-section-items .nav-link{margin-left:2.3rem;padding-block:.52rem;font-size:.88rem;display:flex}.nav-icon{width:1.35rem;height:1.35rem;color:var(--color-drawer-muted);transition:color var(--duration-fast) var(--ease-smooth)}.nav-link:hover .nav-icon,.nav-link.active .nav-icon,.nav-section-toggle:hover .nav-icon{color:var(--color-drawer-text)}.nav-link:hover{color:var(--color-drawer-text);background:color-mix(in srgb, var(--color-drawer-surface), transparent 20%);transform:translate(2px)}.nav-link.active{color:var(--color-drawer-text);background:color-mix(in srgb, var(--color-drawer-surface), #fff 7%);border-color:color-mix(in srgb, var(--color-drawer-border), #fff 18%);box-shadow:inset 3px 0 0 var(--color-accent), 0 10px 22px #00000014}.nav-link.urgent{color:var(--color-drawer-text);border-color:color-mix(in srgb, var(--color-accent), transparent 54%);background:color-mix(in srgb, var(--color-accent), transparent 88%)}.nav-link.urgent.active,.nav-link.urgent:hover{color:var(--color-drawer-text);background:color-mix(in srgb, var(--color-accent), var(--color-drawer-surface) 82%);border-color:color-mix(in srgb, var(--color-accent), transparent 36%)}.drawer-collapsed .app-drawer{align-items:stretch;padding-inline:.75rem}.drawer-collapsed .brand-link{justify-content:center}.drawer-collapsed .brand-name,.drawer-collapsed .drawer-utility-links,.drawer-collapsed .app-nav,.drawer-collapsed .drawer-account-nav{display:none}.drawer-collapsed .drawer-header{grid-template-columns:1fr;justify-items:center}.drawer-collapsed .drawer-toggle{width:2rem}.app-actions{border-top:1px solid var(--color-drawer-border);flex-wrap:wrap;align-items:center;gap:.625rem;min-width:0;margin-top:auto;padding-top:1rem;display:flex}.app-actions>div{flex-wrap:wrap;min-width:0}.app-actions select{max-width:12rem;color:var(--color-drawer-text);background:var(--color-drawer-surface);border-color:var(--color-drawer-border)}.app-actions label{color:var(--color-drawer-muted)}.app-actions .button-link,.app-actions button{color:var(--color-drawer-text);background:var(--color-drawer-surface);border-color:var(--color-drawer-border)}.app-actions .button-link:hover,.app-actions button:hover{background:color-mix(in srgb, var(--color-drawer-surface), #fff 8%)}.theme-toggle{min-width:6.5rem;padding-inline:.75rem}.app-content{min-width:0;padding:1.5rem}.auth-page{background:linear-gradient(135deg, color-mix(in srgb, var(--color-accent), transparent 92%), transparent 24rem), linear-gradient(180deg, var(--color-surface-strong), var(--color-background));align-items:center;width:100%;max-width:none;min-height:100vh;padding:2rem;display:grid}.auth-shell{grid-template-columns:minmax(0,1.05fr) minmax(23rem,28rem);align-items:stretch;gap:1rem;width:min(100%,68rem);margin:0 auto;display:grid}.auth-brand-card,.auth-panel{border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-lifted)}.auth-brand-card{min-height:37rem;color:var(--color-drawer-text);background:linear-gradient(150deg, color-mix(in srgb, var(--color-accent), transparent 74%), transparent 28rem), linear-gradient(180deg, #073223, #061811);place-items:center;padding:3rem;display:grid;position:relative;overflow:hidden}.auth-brand-card:before{content:"";border-radius:var(--radius-lg);pointer-events:none;border:1px solid #ffffff14;position:absolute;inset:1rem}.auth-brand-lockup{z-index:1;justify-items:start;gap:1.35rem;width:min(100%,27rem);display:grid;position:relative}.auth-brand-wordmark{border-radius:var(--radius-lg);background:#fff;width:min(15rem,72%);height:auto;padding:.85rem 1rem;display:block;box-shadow:0 18px 44px #0003}.auth-brand-lockup p{color:#f7fbf3db;max-width:24rem;margin:0;font-size:clamp(1.35rem,2.2vw,2rem);font-weight:600;line-height:1.16}.auth-panel{background:var(--color-surface);align-content:center;gap:1.25rem;min-height:37rem;padding:2.25rem;display:grid}.auth-panel-header{gap:.5rem;display:grid}.auth-panel-mark{border:1px solid var(--color-border);border-radius:var(--radius-lg);width:3rem;height:3rem;box-shadow:var(--shadow-crisp);background:#fff;padding:.35rem}.auth-eyebrow{color:var(--color-primary);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:600}.auth-panel h1{margin:0;font-size:2.45rem}.auth-panel p{color:var(--color-text-muted);margin:0}.auth-form{gap:.625rem;margin-top:.25rem;display:flex}.auth-form input{min-height:3rem}.auth-form-stack{gap:.95rem;display:grid}.auth-form-stack label{color:var(--color-text-muted);gap:.4rem;font-size:.9rem;font-weight:600;display:grid}.auth-form-stack button{width:100%;min-height:3rem;margin-top:.25rem}.password-requirements{color:var(--color-text-muted);gap:.45rem;margin:-.25rem 0 0;padding:0;font-size:.86rem;list-style:none;display:grid}.password-requirements li{min-height:1.35rem;transition:color var(--duration-fast) var(--ease-smooth), opacity var(--duration-fast) var(--ease-smooth);align-items:center;gap:.5rem;display:flex}.password-requirements li.met{color:var(--color-success)}.password-requirement-marker{border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);background:var(--color-surface);width:1rem;height:1rem;transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth);flex:none;place-items:center;display:inline-grid;position:relative}.password-requirements li.met .password-requirement-marker{background:var(--color-success);border-color:var(--color-success)}.password-requirements li.met .password-requirement-marker:after{content:"";border-bottom:2px solid var(--color-primary-text);border-left:2px solid var(--color-primary-text);width:.42rem;height:.24rem;margin-top:-.08rem;transform:rotate(-45deg)}.auth-actions{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-top:.1rem;display:flex}.auth-actions button{color:var(--color-primary);cursor:pointer;font:inherit;box-shadow:none;background:0 0;border:0;padding:.25rem .125rem;font-weight:600}.auth-actions button:hover{color:var(--color-primary-hover);background:0 0;transform:none}.form-error,.form-notice{border-radius:var(--radius-md);margin:0;padding:.7rem .8rem;font-size:.92rem}.form-error{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 91%);border:1px solid color-mix(in srgb, var(--color-danger), transparent 62%)}.form-notice{color:var(--color-text-muted);background:var(--color-surface-muted);border:1px solid var(--color-border)}@media (prefers-reduced-motion:no-preference){@keyframes surface-enter{0%{opacity:0;transform:translateY(.5rem)}to{opacity:1;transform:translateY(0)}}.auth-brand-card,.auth-panel{animation:surface-enter var(--duration-medium) var(--ease-smooth) both}.auth-panel{animation-delay:55ms}}.button-link{min-height:2.5rem;color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-crisp);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), color var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);justify-content:center;align-items:center;padding:.5rem 1rem;font-weight:600;text-decoration:none;display:inline-flex}.button-link:hover{background:var(--color-surface-muted);transform:translateY(-1px)}.button-link.primary{color:var(--color-primary-text);background:var(--color-primary);border-color:var(--color-primary)}.page-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:1.5rem;padding:.25rem 0 1.25rem;display:flex}.page-header h1{margin-bottom:.25rem}.app-content h1{font-family:var(--font-display);letter-spacing:-.035em;font-weight:400}.page-header p{max-width:44rem;color:var(--color-text-muted);margin:0;font-size:1rem}.page-header-actions{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.page-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;display:flex}.section-stack{gap:.75rem;display:grid}.section-stack>h2,.section-stack>h3{margin:0}.section-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;display:grid}.project-board{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}.utility-chart-grid{grid-template-columns:repeat(auto-fit,minmax(19rem,1fr))}.outdoor-zone-grid{grid-template-columns:repeat(auto-fit,minmax(18rem,1fr))}.metric-strip{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:.875rem;display:grid}.metric-card{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);transition:border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);gap:.25rem;padding:1rem 1.125rem;display:grid}.metric-card:hover{border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 64%);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.metric-card span{color:var(--color-text-muted);letter-spacing:0;text-transform:uppercase;font-size:.82rem;font-weight:600}.metric-card strong{color:var(--color-text);font-size:1.6rem;line-height:1.1}.alert{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-crisp);padding:.75rem 1rem}.alert.danger{color:var(--color-danger);border-color:color-mix(in srgb, var(--color-danger), var(--color-border) 55%)}.alert.success{color:var(--color-success);border-color:color-mix(in srgb, var(--color-success), var(--color-border) 55%)}.home-page{gap:1.25rem;display:grid}.daily-briefing{gap:1.5rem}.briefing-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:1.5rem;padding:.25rem 0 1.4rem;display:flex}.briefing-header h1{font-family:var(--font-display);letter-spacing:-.045em;margin:.12rem 0 .3rem;font-size:clamp(2.65rem,5vw,4.5rem);font-weight:400;line-height:.98}.briefing-header p{color:var(--color-text-muted);margin:0;font-size:1.05rem}.briefing-header .button-link{white-space:nowrap}.briefing-eyebrow{color:var(--color-primary);letter-spacing:.12em;text-transform:uppercase;font-size:.74rem;font-weight:700;line-height:1.2;display:block}.briefing-primary-grid{grid-template-columns:minmax(0,1.12fr) minmax(19rem,.88fr);gap:1rem;display:grid}.briefing-card,.home-record-strip,.secondary-panel{border:1px solid var(--color-border-strong);border-radius:calc(var(--radius-lg) + .2rem);box-shadow:var(--shadow-soft)}.briefing-card{background:var(--color-surface);align-content:start;min-height:25rem;display:grid;overflow:hidden}.coming-up-card{grid-template-rows:auto 1fr auto;padding:1.5rem}.briefing-card-header{justify-content:space-between;align-items:flex-start;gap:1rem;padding-bottom:1.1rem;display:flex}.briefing-card h2,.home-record-strip h2,.secondary-panel h2{margin:.25rem 0 0;font-size:1.35rem}.attention-count{color:var(--color-primary);background:var(--color-primary-soft);border-radius:var(--radius-pill);white-space:nowrap;padding:.4rem .72rem;font-size:.78rem;font-weight:700}.attention-list{align-content:start;display:grid}.attention-row{color:var(--color-text);border-top:1px solid var(--color-border);transition:color var(--duration-fast) var(--ease-smooth), padding var(--duration-fast) var(--ease-smooth);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.85rem;padding:.85rem .25rem;text-decoration:none;display:grid}.attention-row:hover{color:var(--color-primary);padding-inline:.45rem .05rem}.attention-indicator{border-radius:var(--radius-pill);background:var(--color-border-strong);width:.7rem;height:.7rem;box-shadow:0 0 0 .25rem color-mix(in srgb, var(--color-border), transparent 55%)}.attention-indicator.warning{background:var(--color-warning);box-shadow:0 0 0 .25rem color-mix(in srgb, var(--color-warning), transparent 82%)}.attention-indicator.danger{background:var(--color-danger);box-shadow:0 0 0 .25rem color-mix(in srgb, var(--color-danger), transparent 82%)}.attention-copy{min-width:0;display:grid}.attention-copy strong,.attention-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.attention-copy small{color:var(--color-text-muted);font-size:.84rem}.attention-kind{color:var(--color-text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:700}.row-arrow{color:var(--color-text-muted);font-size:1.1rem}.briefing-card-link{color:var(--color-link);border-top:1px solid var(--color-border);justify-content:space-between;padding-top:1rem;font-size:.88rem;font-weight:700;text-decoration:none;display:flex}.briefing-empty{color:var(--color-text);background:var(--color-surface-muted);border-radius:var(--radius-lg);align-self:center;align-items:center;gap:1rem;padding:1.5rem;display:flex}.briefing-empty p{color:var(--color-text-muted);margin:.15rem 0 0}.briefing-empty-mark{width:2.5rem;height:2.5rem;color:var(--color-primary-text);background:var(--color-success);border-radius:var(--radius-pill);flex:none;place-items:center;font-weight:700;display:grid}.quick-find-card{color:var(--color-feature-text);background:radial-gradient(circle at 100% 0, color-mix(in srgb, var(--color-accent), transparent 78%), transparent 15rem), var(--color-feature-surface);border-color:var(--color-feature-border);gap:1.2rem;padding:1.5rem}.quick-find-card .briefing-eyebrow{color:var(--color-feature-muted)}.quick-find-card h2{color:var(--color-feature-text);font-size:clamp(1.6rem,2.5vw,2.2rem)}.quick-find-card>div>p,.quick-find-results>p{color:var(--color-feature-muted);margin:.4rem 0 0}.quick-find-search{min-height:3rem;color:var(--color-feature-surface);background:var(--color-feature-text);border-radius:var(--radius-lg);border:2px solid #0000;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.55rem;padding:0 .9rem;display:grid}.quick-find-search:focus-within{border-color:var(--color-accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-focus), transparent 68%)}.quick-find-search input{width:100%;min-height:auto;color:var(--color-feature-surface);box-shadow:none;background:0 0;border:0;padding:.75rem 0}.quick-find-search input:focus{box-shadow:none;outline:0}.quick-find-search input::placeholder{color:color-mix(in srgb, var(--color-feature-surface), transparent 35%)}.quick-find-results{align-content:start;gap:.6rem;display:grid}.quick-find-result{color:var(--color-feature-text);background:var(--color-feature-surface-soft);border:1px solid var(--color-feature-border);border-radius:var(--radius-lg);transition:background var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.85rem;text-decoration:none;display:grid}.quick-find-result:hover{background:color-mix(in srgb, var(--color-feature-surface-soft), var(--color-feature-text) 8%);transform:translateY(-1px)}.quick-find-result>span:nth-child(2){min-width:0;display:grid}.quick-find-result strong,.quick-find-result small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.quick-find-result small{color:var(--color-feature-muted)}.quick-find-result-icon{width:2.25rem;height:2.25rem;color:var(--color-feature-surface);background:var(--color-feature-text);border-radius:var(--radius-md);place-items:center;display:grid}.home-record-strip{background:var(--color-surface);grid-template-columns:minmax(14rem,1fr) minmax(0,1.5fr);align-items:center;gap:1.5rem;padding:1.35rem 1.5rem;display:grid}.home-record-stats{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.home-stat{color:var(--color-text);border-left:1px solid var(--color-border);gap:.08rem;padding:.15rem 1rem;text-decoration:none;display:grid}.home-stat strong{color:var(--color-primary);font-family:var(--font-display);font-size:1.65rem;font-weight:400;line-height:1}.home-stat span{color:var(--color-text-muted);font-size:.82rem}.briefing-secondary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.secondary-panel{background:var(--color-surface);align-content:start;gap:1rem;min-height:12rem;padding:1.25rem;display:grid}.secondary-panel-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.secondary-panel-header>a{width:2rem;height:2rem;color:var(--color-link);background:var(--color-surface-muted);border-radius:var(--radius-pill);place-items:center;text-decoration:none;display:grid}.secondary-panel-list{align-content:start;gap:.6rem;display:grid}.secondary-row{border-top:1px solid var(--color-border);padding-top:.65rem}.secondary-row>div{display:grid}.secondary-row span{color:var(--color-text-muted);font-size:.82rem}.secondary-shortcut{color:var(--color-text);background:var(--color-surface-muted);border-radius:var(--radius-md);justify-content:space-between;padding:.65rem .75rem;font-weight:600;text-decoration:none;display:flex}.empty-dashboard-state{color:var(--color-text-muted);margin:0}.settings-page,.account-page{gap:1rem;width:min(100%,54rem);margin:2.25rem auto 0;display:grid}.account-page-header{margin-bottom:.8rem}.account-page-header .section-kicker{color:var(--color-primary);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .55rem;font-size:.75rem;font-weight:800}.account-page-header h1{font-family:var(--font-display);font-size:clamp(3rem,6vw,4.3rem);font-weight:var(--font-weight-regular);letter-spacing:-.045em;margin:0;line-height:.95}.account-page-header>p:last-child{color:var(--color-text-muted);margin:.75rem 0 0;font-size:1rem}.account-card,.settings-card{background:var(--color-surface);border:1px solid var(--color-border-strong);box-shadow:var(--shadow-soft);border-radius:1.1rem;overflow:hidden}.account-card-section{display:grid}.account-card-section+.account-card-section{border-top:1px solid var(--color-border)}.account-section-heading{background:color-mix(in srgb, var(--color-primary) 7%, var(--color-surface));border-bottom:1px solid var(--color-border);gap:.25rem;padding:1rem 1.7rem 1.05rem;display:grid;position:relative}.account-section-heading:before{content:"";background:var(--color-primary);border-radius:0 999px 999px 0;width:3px;position:absolute;top:.8rem;bottom:.8rem;left:0}.account-section-heading h2{color:var(--color-primary);letter-spacing:.11em;text-transform:uppercase;margin:0;font-size:.76rem;font-weight:800}.account-section-heading p,.appearance-setting p{color:var(--color-text-muted);margin:0;font-size:.88rem}.account-detail-row,.household-switcher{grid-template-columns:minmax(12rem,1fr) minmax(18rem,1.2fr);align-items:center;gap:1.5rem;padding:1.35rem 1.7rem 1.5rem;display:grid}.account-detail-row>div{gap:.2rem;display:grid}.account-detail-row>div span{color:var(--color-text-muted);font-size:.8rem}.account-detail-row p{margin:0}.account-email{overflow-wrap:anywhere;font-weight:var(--font-weight-semibold)}.account-email.muted{color:var(--color-text-muted);font-weight:var(--font-weight-regular)}.household-switcher>label{font-weight:var(--font-weight-semibold)}.household-switcher-controls{grid-template-columns:minmax(0,1fr) auto;gap:.6rem;display:grid}.household-switcher-controls select{width:100%}.household-switcher .field-error{grid-column:2}.household-create-form label{font-weight:var(--font-weight-semibold);gap:.4rem;display:grid}.account-session{color:var(--color-text-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);justify-content:space-between;align-items:center;gap:1rem;padding:.95rem 1.25rem;font-size:.85rem;display:flex}.account-logout{color:var(--color-danger);box-shadow:none;background:0 0;border:0;padding:0}.account-logout:hover{color:color-mix(in srgb, var(--color-danger), #000 18%);background:0 0;transform:none}.settings-card{display:grid}.appearance-setting{grid-template-columns:minmax(12rem,1fr) minmax(24rem,1.45fr);align-items:start;gap:2rem;padding:1.4rem 1.7rem 1.65rem;display:grid}.appearance-setting>div:first-child{gap:.3rem;display:grid}.settings-note{color:var(--color-text-muted);margin:.1rem 0 0;font-size:.8rem}.theme-choice-field{border:0;min-width:0;margin:0;padding:0}.theme-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.theme-choice{cursor:pointer;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);min-width:0;transition:border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);gap:.55rem;padding:.7rem;display:grid;position:relative}.theme-choice:hover{border-color:var(--color-border-strong);transform:translateY(-1px)}.theme-choice.selected{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-primary), transparent 84%)}.theme-choice input{opacity:0;width:1px;height:1px;position:absolute}.theme-preview{background:#f5f7f2;border:1px solid #d7ded6;border-radius:.45rem;grid-template-columns:1.35rem minmax(0,1fr);height:3rem;display:grid;overflow:hidden}.theme-preview-drawer{background:#064631}.theme-preview-content{align-content:start;gap:.35rem;padding:.7rem .55rem;display:grid}.theme-preview-content span{background:#d6ded7;border-radius:999px;height:.28rem;display:block}.theme-preview-content span:last-child{width:68%}.theme-preview-dark{background:#15251f;border-color:#3b5046}.theme-preview-dark .theme-preview-drawer{background:#061e16}.theme-preview-dark .theme-preview-content span{background:#64776e}.theme-preview-system{background:linear-gradient(90deg,#f5f7f2 50%,#15251f 50%)}.theme-preview-system .theme-preview-content span{background:linear-gradient(90deg,#d6ded7 40%,#64776e 40%)}.theme-choice-label{font-size:.78rem;font-weight:var(--font-weight-semibold)}.theme-choice-check{width:1.25rem;height:1.25rem;color:var(--color-primary-text);background:var(--color-primary);border-radius:50%;place-items:center;font-size:.7rem;display:grid;position:absolute;top:.42rem;right:.42rem}.utility-summary-grid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:1rem;margin-bottom:1rem;display:grid}.utility-summary-card{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);transition:border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);gap:.5rem;padding:.875rem;display:grid}.utility-summary-card:hover{border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 62%);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.utility-summary-card h3{margin-top:0}.utility-summary-card p{margin:0}.utility-empty-reading{color:var(--color-text-muted);margin:0}.utility-chart{margin:0}.utility-chart svg{width:100%;max-width:32.5rem;height:auto;color:var(--color-text-muted);background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);display:block}.utility-chart-axis{stroke:var(--color-border-strong)}.utility-chart-line{stroke:var(--color-text-muted)}.utility-chart-empty{color:var(--color-text-muted);margin:0}.segmented-field{border:0;gap:.5rem;min-width:0;margin:0;padding:0;display:grid}.segmented-field legend{color:var(--color-text-muted);padding:0;font-size:.875rem;font-weight:600}.segmented-control{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(3,minmax(0,1fr));gap:.25rem;padding:.25rem;display:grid}.segmented-option{min-width:0}.segmented-option input{opacity:0;pointer-events:none;position:absolute}.segmented-option span{min-height:2.25rem;color:var(--color-text-muted);border-radius:var(--radius-md);place-items:center;padding-inline:.625rem;font-weight:600;display:grid}.segmented-option input:checked+span{color:var(--color-primary);background:var(--color-surface);box-shadow:var(--shadow-soft)}.segmented-option input:focus-visible+span{outline:3px solid color-mix(in srgb, var(--color-focus), transparent 55%);outline-offset:2px}.list-page{gap:1rem;display:grid}.search-panel{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);max-width:42rem;box-shadow:var(--shadow-soft);gap:.5rem;padding:1rem 1.125rem;display:grid}.search-panel label,.page-toolbar label{color:var(--color-text-muted);font-size:.875rem;font-weight:600}.search-panel input{min-height:2.75rem;font-size:1.05rem}.page-toolbar,.inline-form{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.page-toolbar{margin-top:-.25rem}.inline-form>input,.inline-form>select{min-width:10rem}.inline-form .input-narrow{width:5.75rem;min-width:5.75rem}.inline-form .input-medium{width:8rem;min-width:8rem}.inline-form .input-grow{flex:14rem;min-width:12rem}.form-actions{flex-wrap:wrap;gap:.5rem;display:flex}.inline-check{color:var(--color-text-muted);align-items:center;gap:.45rem;font-size:.9rem;font-weight:600;display:inline-flex}.inline-check input{width:1rem;height:1rem}.data-table-wrap{overflow-x:auto}.data-table{border-spacing:0;border-collapse:separate;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-crisp);overflow:hidden}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--color-border);padding:.7rem .875rem}.data-table th{color:var(--color-text-muted);background:var(--color-surface-muted);letter-spacing:0;text-transform:uppercase;font-size:.8rem;font-weight:600}.data-table tr:last-child td{border-bottom:0}.record-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.record-row{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);min-height:4.75rem;box-shadow:var(--shadow-crisp);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);justify-content:space-between;align-items:center;gap:1rem;padding:1rem 1.125rem;display:flex}.record-row:hover{border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 64%);background:var(--color-surface-strong);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.record-row.compact{min-height:0;padding:.75rem .875rem}.room-card-grid{grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.room-card-item{min-width:0}.room-card{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);min-height:7rem;box-shadow:var(--shadow-crisp);color:var(--color-text);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);align-items:center;gap:1rem;padding:1rem 1.125rem;text-decoration:none;display:flex}.room-card:hover{border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 64%);background:var(--color-surface-strong);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.room-card-main{align-items:center;gap:1rem;min-width:0;display:flex}.room-card-topline{flex:none;align-items:center;display:flex}.room-card-icon{width:4rem;height:4rem;color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:1.25rem;flex:none;justify-content:center;align-items:center;font-size:1.9rem;font-weight:700;display:inline-flex}.room-icon-svg{flex:none;width:1.25em;height:1.25em}.room-card-copy{flex:auto;gap:.55rem;min-width:0;display:grid}.room-card-copy .record-title{max-width:100%;font-family:var(--font-display);letter-spacing:-.03em;text-overflow:ellipsis;white-space:nowrap;font-size:clamp(1.25rem,1.55vw,1.5rem);font-weight:400;line-height:1;overflow:hidden}.room-status{width:fit-content;min-height:1.5rem;color:var(--color-text-muted);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-pill);align-items:center;gap:.35rem;padding:.28rem .6rem .32rem;font-size:.78rem;font-weight:700;line-height:1.15;display:inline-flex}.room-status.strong{color:var(--color-primary);background:var(--color-primary-soft);border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 72%)}.room-card-edit{flex:1;align-content:center}.record-main{gap:.35rem;min-width:0;display:grid}.record-title{width:fit-content;color:var(--color-text);transition:color var(--duration-fast) var(--ease-smooth);font-weight:600;text-decoration:none}.record-title:hover{color:var(--color-primary)}.record-meta{flex-wrap:wrap;gap:.375rem;display:flex}.meta-chip{min-height:1.625rem;color:var(--color-text-muted);background:color-mix(in srgb, var(--color-surface-muted), var(--color-surface) 30%);border:1px solid color-mix(in srgb, var(--color-border), transparent 20%);border-radius:var(--radius-pill);align-items:center;padding:.15rem .55rem;font-size:.825rem;line-height:1.1;text-decoration:none;display:inline-flex;box-shadow:inset 0 1px #ffffff5c}.meta-chip.overdue,.meta-chip.expired{color:var(--color-danger);background:color-mix(in srgb, var(--color-danger), transparent 88%);border-color:color-mix(in srgb, var(--color-danger), transparent 55%)}.meta-chip.due,.meta-chip.due.soon,.meta-chip.expiring,.meta-chip.attention{color:var(--color-warning);background:color-mix(in srgb, var(--color-warning), transparent 88%);border-color:color-mix(in srgb, var(--color-warning), transparent 55%)}.meta-chip.active,.meta-chip.later,.meta-chip.completed{color:var(--color-success);background:color-mix(in srgb, var(--color-success), transparent 88%);border-color:color-mix(in srgb, var(--color-success), transparent 55%)}a.meta-chip:hover{color:var(--color-primary)}.record-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.5rem;display:flex}.record-edit-form{flex:1}.record-notes,.empty-state{color:var(--color-text-muted);margin:0}.status-group-list{gap:1rem;display:grid}.status-group{gap:.625rem;display:grid}.status-group h2{color:var(--color-text-muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.85rem}.page-kicker{color:var(--color-primary);letter-spacing:.14em;text-transform:uppercase;margin:0 0 .35rem;font-size:.78rem;font-weight:800}.reference-page{gap:1.125rem}.reference-tabs{flex-wrap:wrap;align-items:center;gap:.5rem;display:flex}.reference-tabs button,.document-category-nav button{color:var(--color-text-muted);background:var(--color-surface)}.reference-tabs button.active,.document-category-nav button.active{color:var(--color-primary-text);background:var(--color-primary);border-color:var(--color-primary)}.reference-filter{color:var(--color-text-muted);align-items:center;gap:.5rem;margin-left:auto;font-size:.875rem;font-weight:700;display:inline-flex}.reference-filter select:disabled{opacity:.55}.reference-search-panel{max-width:none}.reference-content-grid{grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);align-items:start;gap:1rem;display:grid}.reference-panel{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);gap:.875rem;padding:1rem;display:grid}.reference-panel h2{margin:0;font-size:1.05rem}.compact-panel{gap:.65rem}.compact-panel p{color:var(--color-text-muted);margin:0}.reference-side-stack{gap:1rem;display:grid}.reference-record-list{gap:.875rem}.reference-record{border-radius:calc(var(--radius-lg) + .25rem);align-items:flex-start;min-height:0;padding:0;overflow:hidden}.reference-record-link{width:100%;color:inherit;align-items:center;gap:1rem;padding:1rem;text-decoration:none;display:flex}.reference-record-link:hover{color:inherit;background:var(--color-surface-strong)}.card-chevron{color:var(--color-text-muted);font-family:var(--font-display);flex:none;margin-left:auto;font-size:2rem;font-weight:400;line-height:1}.reference-record-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.reference-record-title{font-family:var(--font-display);letter-spacing:-.025em;font-size:1.35rem;font-weight:400;line-height:1.05}.reference-quick-link{min-height:2.75rem;color:var(--color-text);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.7rem .8rem;font-weight:700;display:flex}.reference-quick-link span{color:var(--color-primary)}.vendor-card-grid{grid-template-columns:repeat(auto-fill,minmax(16rem,1fr));gap:1rem;margin:0;padding:0;list-style:none;display:grid}.vendor-contact-card{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);min-height:14rem;box-shadow:var(--shadow-crisp);transition:background var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth), transform var(--duration-fast) var(--ease-smooth);padding:0;display:grid;overflow:hidden}.vendor-card-link{height:100%;color:inherit;align-content:start;gap:.85rem;padding:1rem 2.25rem 1rem 1rem;text-decoration:none;display:grid;position:relative}.vendor-card-link:hover{color:inherit}.vendor-card-link .card-chevron{position:absolute;bottom:.75rem;right:.9rem}.vendor-card-flags{margin-top:auto}.vendor-contact-card:hover{border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 64%);background:var(--color-surface-strong);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.vendor-card-top{align-items:flex-start;gap:.8rem;display:flex}.vendor-avatar{width:3rem;height:3rem;color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:1rem;flex:none;justify-content:center;align-items:center;font-weight:800;display:inline-flex}.vendor-rating{color:var(--color-accent-warm);letter-spacing:.08em;font-size:.9rem;font-weight:800}.star-rating-field{color:var(--color-text-muted);gap:.35rem;font-size:.875rem;font-weight:600;display:grid}.star-rating-control{align-items:center;gap:.15rem;min-height:2.75rem;display:flex}.star-rating-control button{min-width:2.3rem;min-height:2.3rem;color:color-mix(in srgb, var(--color-text-muted), transparent 45%);box-shadow:none;background:0 0;border-color:#0000;padding:.2rem;font-size:1.55rem;line-height:1}.star-rating-control button:hover,.star-rating-control button:focus-visible,.star-rating-control button.selected{color:var(--color-accent-warm);background:color-mix(in srgb, var(--color-accent-warm), transparent 88%)}.star-rating-control .star-rating-clear{width:auto;color:var(--color-text-muted);margin-left:.35rem;padding-inline:.55rem;font-size:.8rem}.vendor-contact-actions{color:var(--color-text-muted);flex-wrap:wrap;gap:.5rem;font-size:.9rem;font-weight:700;display:flex}.vendor-contact-actions a,.vendor-contact-actions span{min-height:2rem;color:var(--color-link);background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-pill);padding:.35rem .6rem;text-decoration:none}.documents-layout{grid-template-columns:minmax(13rem,17rem) minmax(0,1fr);align-items:start;gap:1rem;display:grid}.document-category-nav{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);gap:.5rem;padding:.75rem;display:grid}.document-category-nav button{text-align:left;justify-content:space-between;gap:.75rem;width:100%;min-height:2.75rem;padding-inline:.8rem;display:flex}.document-category-nav span{color:inherit;opacity:.8}.document-record{justify-content:stretch;display:block}.document-record .reference-record-link{grid-template-columns:auto minmax(0,1fr) auto;display:grid}.document-file-icon{width:3.25rem;height:3.75rem;color:var(--color-primary);background:linear-gradient(150deg, var(--color-surface-muted), var(--color-surface) 64%);border:1px solid var(--color-border);letter-spacing:.08em;border-radius:.85rem;justify-content:center;align-items:center;font-size:.78rem;font-weight:800;display:inline-flex}.document-file-icon.large{width:4.25rem;height:5rem;font-size:.9rem}.reference-resource-form{gap:1rem}.form-intro{color:var(--color-text-muted);margin:0;line-height:1.5}.form-section{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin:0;padding:1rem;display:grid}.form-section legend{color:var(--color-text);font-family:var(--font-display);padding-inline:.35rem;font-size:1.15rem}.form-section label:has(textarea){grid-column:1/-1}.form-section .full-width-field{grid-column:1/-1}.field-help{color:var(--color-text-muted);font-size:.8rem;font-weight:400}.form-section textarea{resize:vertical;min-height:6rem}.reference-detail-page{max-width:72rem}.reference-detail-hero{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);justify-content:space-between;align-items:center;gap:1.25rem;padding:1.25rem;display:flex}.reference-detail-hero h1{margin:.1rem 0 .3rem}.reference-detail-hero p:last-child{color:var(--color-text-muted);margin:0}.reference-detail-identity{align-items:center;gap:1rem;display:flex}.reference-detail-identity .vendor-avatar{width:4.25rem;height:4.25rem;font-size:1.2rem}.reference-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:1rem;display:grid}.fact-grid .fact-wide{grid-column:1/-1}.danger-zone{grid-template-columns:none;justify-content:space-between;align-items:center;gap:1rem;display:flex}.danger-zone p{color:var(--color-text-muted);margin:.25rem 0 0}.inline-empty-state{color:var(--color-text-muted);background:var(--color-surface-muted);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);gap:.25rem;padding:1rem;display:grid}.inline-empty-state strong{color:var(--color-text)}.attachment-list{gap:.5rem;margin:0;padding:0;list-style:none;display:grid}.attachment-list li{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.attachment-list li>div{gap:.15rem;display:grid}.attachment-list span{color:var(--color-text-muted);font-size:.85rem}.attachment-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;gap:.4rem;display:flex}.direct-upload-panel,.attachment-picker{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem;display:grid}.direct-upload-panel{background:var(--color-primary-soft);border:1px solid color-mix(in srgb, var(--color-primary), var(--color-border) 70%);border-radius:var(--radius-md);padding:.85rem}.direct-upload-panel label,.attachment-picker label{color:var(--color-text-muted);gap:.35rem;font-size:.875rem;font-weight:600;display:grid}@media (width<=56rem){.reference-content-grid,.documents-layout,.reference-detail-grid{grid-template-columns:1fr}.reference-filter{width:100%;margin-left:0}.document-category-nav{grid-template-columns:repeat(auto-fit,minmax(9rem,1fr))}.reference-detail-hero,.danger-zone{flex-direction:column;align-items:flex-start}.form-section,.direct-upload-panel,.attachment-picker{grid-template-columns:1fr}}.section-heading{justify-content:space-between;align-items:center;gap:1rem;margin-top:2rem;margin-bottom:.75rem;display:flex}.section-heading:first-of-type{margin-top:0}.detail-section .section-heading,.field-card .section-heading,.task-library-heading{margin-block:0}.section-heading h2,.section-heading h3{margin:0}.section-heading p{color:var(--color-text-muted);margin:.25rem 0 0}.completed-panel{gap:.75rem;padding-top:.25rem;display:grid}.completed-panel summary{cursor:pointer;width:fit-content;color:var(--color-text-muted);font-weight:600}.completed-panel[open] summary{color:var(--color-text)}.work-page-header h1{margin-top:.08rem}.work-metric-strip{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.875rem;display:grid}.work-metric-card{background:linear-gradient(180deg, var(--color-surface), color-mix(in srgb, var(--color-surface-muted), var(--color-surface) 42%));border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);gap:.25rem;padding:1rem 1.125rem;display:grid}.work-metric-card span{color:var(--color-text-muted);letter-spacing:.07em;text-transform:uppercase;font-size:.78rem;font-weight:700}.work-metric-card strong{font-family:var(--font-display);color:var(--color-text);letter-spacing:-.045em;font-size:2rem;font-weight:400;line-height:1}.maintenance-briefing-grid{grid-template-columns:minmax(0,1.05fr) minmax(19rem,.95fr);gap:1rem;display:grid}.maintenance-attention-card,.maintenance-month-card,.work-support-card{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:calc(var(--radius-lg) + .25rem);box-shadow:var(--shadow-soft)}.maintenance-attention-card{color:var(--color-feature-text);background:radial-gradient(circle at 100% 0, color-mix(in srgb, var(--color-accent), transparent 78%), transparent 15rem), var(--color-feature-surface);border-color:var(--color-feature-border);align-content:start;gap:1rem;padding:1.35rem;display:grid}.maintenance-attention-card .briefing-eyebrow{color:var(--color-feature-muted)}.maintenance-attention-card h2{color:var(--color-feature-text)}.maintenance-card-empty{color:var(--color-feature-muted);margin:0}.maintenance-month-card,.work-support-card{padding:1.35rem}.work-card-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.work-card-heading h2{margin:0}.work-card-heading p{color:var(--color-text-muted);margin:.25rem 0 0}.compact-select{min-width:8.5rem;color:var(--color-text-muted);gap:.3rem;font-size:.78rem;font-weight:700;display:grid}.compact-select select{min-height:2.4rem}.maintenance-task-list,.maintenance-calendar-list,.project-card-list{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.maintenance-task-card{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-feature-border);border-radius:var(--radius-lg);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.8rem;padding:.9rem;display:grid}.maintenance-calendar-row{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;display:grid}.maintenance-calendar-row.completed{opacity:.72}.maintenance-calendar-row.completed strong{text-decoration:line-through;text-decoration-thickness:.12em;-webkit-text-decoration-color:color-mix(in srgb, var(--color-text-muted), transparent 28%);text-decoration-color:color-mix(in srgb, var(--color-text-muted), transparent 28%)}.maintenance-calendar-divider{color:var(--color-text-muted);border-top:1px solid var(--color-border);letter-spacing:.08em;text-transform:uppercase;margin-top:.2rem;padding-top:.75rem;font-size:.75rem;font-weight:800}.maintenance-calendar-row strong,.maintenance-calendar-row small{display:block}.maintenance-calendar-row small{color:var(--color-text-muted)}.maintenance-date-badge{width:3.6rem;min-height:3.6rem;color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:var(--radius-md);place-items:center;font-size:1.1rem;font-weight:800;line-height:1.05;display:grid}.maintenance-date-badge small{color:inherit;letter-spacing:.08em;text-transform:uppercase;font-size:.65rem;font-weight:800}.maintenance-date-badge.completed{color:var(--color-success);background:color-mix(in srgb, var(--color-success), transparent 88%);border-color:color-mix(in srgb, var(--color-success), transparent 58%)}.maintenance-support-grid{grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));gap:1rem;display:grid}.work-support-card{min-height:8rem}.work-support-card h3{margin:0}.work-support-card p{color:var(--color-text-muted);margin:.45rem 0 0}.maintenance-all-list{margin-top:.5rem}.library-search-panel{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);max-width:52rem;box-shadow:var(--shadow-soft);padding:1rem 1.125rem;display:grid}.library-search-panel label{color:var(--color-text-muted);gap:.45rem;font-size:.875rem;font-weight:700;display:grid}.library-search-panel input{min-height:2.9rem;font-size:1.02rem}.library-tabs{flex-wrap:wrap;gap:.5rem;display:flex}.library-tabs button{min-height:2.55rem;color:var(--color-text-muted);background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-pill);font-weight:800}.library-tabs button.active{color:var(--color-primary-text);background:var(--color-primary);border-color:var(--color-primary)}.library-section{gap:1rem;display:grid}.library-task-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.875rem;display:grid}.library-card,.library-task-card{position:relative;overflow:hidden}.library-card:before,.library-task-card:before{content:"";background:color-mix(in srgb, var(--color-primary), var(--color-border) 18%);width:100%;height:.25rem;position:absolute;inset:0 auto auto 0}.library-task-card{min-height:12rem;color:var(--color-text);text-align:left;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);cursor:pointer;align-content:start;gap:.875rem;padding:1rem;display:grid}.library-task-card:hover,.library-task-card:focus-visible{border-color:var(--color-primary);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.library-card-action{color:var(--color-primary);justify-self:start;margin-top:auto;font-size:.86rem;font-weight:800}.routine-preview-hero{color:var(--color-feature-text);background:radial-gradient(circle at 100% 0, color-mix(in srgb, var(--color-accent), transparent 78%), transparent 12rem), var(--color-feature-surface);border:1px solid var(--color-feature-border);border-radius:var(--radius-lg);gap:.85rem;padding:1.1rem;display:grid}.routine-preview-hero .briefing-eyebrow,.routine-preview-hero p{color:var(--color-feature-muted)}.routine-preview-hero p{margin:0}.routine-preview-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem;display:grid}.routine-preview-stats span{min-height:4.2rem;color:var(--color-feature-muted);background:var(--color-feature-surface-soft);border:1px solid var(--color-feature-border);border-radius:var(--radius-md);gap:.15rem;padding:.75rem;font-size:.78rem;font-weight:700;display:grid}.routine-preview-stats strong{color:var(--color-feature-text);font-family:var(--font-display);font-size:1.75rem;font-weight:400;line-height:1}.routine-preview-grid{grid-template-columns:minmax(0,1fr) minmax(13rem,.48fr);gap:.875rem;display:grid}.routine-preview-notes,.routine-start-card{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:.9rem}.routine-start-card{align-content:start}.routine-start-card small{color:var(--color-text-muted);font-weight:500;line-height:1.35}.library-detail-heading{gap:.2rem;display:grid}.library-detail-heading h3,.library-detail-heading p{margin:0}.library-detail-heading p{color:var(--color-text-muted)}.project-board{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.project-column{background:color-mix(in srgb, var(--color-surface-muted), var(--color-surface) 42%);border:1px solid var(--color-border);border-radius:calc(var(--radius-lg) + .25rem);align-content:start;gap:.875rem;min-height:28rem;padding:1rem;transition:background .14s,border-color .14s;display:grid}.project-column.drop-target{background:color-mix(in srgb, var(--color-primary-soft), var(--color-surface) 32%);border-color:var(--color-primary)}.project-column-heading{justify-content:space-between;align-items:center;gap:.75rem;display:flex}.project-column-heading h2{margin:0;font-size:1rem}.project-card{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);gap:.85rem;padding:1rem;display:grid}.project-card.featured{border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 48%)}.project-card-draggable{padding:0;transition:transform .14s,box-shadow .14s,opacity .14s;position:relative}.project-card-draggable:hover{box-shadow:var(--shadow-soft);transform:translateY(-2px)}.project-card-draggable.dragging{z-index:3;opacity:.58}.project-card-link{color:inherit;border-radius:inherit;gap:.85rem;padding:1rem 3.75rem 1rem 1rem;text-decoration:none;display:grid}.project-card-link:focus-visible{outline:3px solid var(--color-focus);outline-offset:3px}.project-card-drag-handle{z-index:2;cursor:grab;touch-action:none;min-width:2.25rem;padding-inline:.45rem;position:absolute;top:.75rem;right:.75rem}.project-card-top{gap:.45rem;display:grid}.project-card-title{font-family:var(--font-display);color:var(--color-text);letter-spacing:-.04em;font-size:clamp(1.35rem,2vw,1.65rem);font-weight:400;line-height:1}.project-budget-block{gap:.45rem;display:grid}.project-budget-row{color:var(--color-text-muted);justify-content:space-between;align-items:baseline;gap:.75rem;font-size:.9rem;display:flex}.project-budget-row strong{color:var(--color-text)}.project-progress-bar{background:var(--color-border);border-radius:var(--radius-pill);height:.65rem;display:block;overflow:hidden}.project-progress-bar span{background:var(--color-primary);border-radius:inherit;height:100%;display:block}.project-progress-bar.steps span{background:var(--color-success)}.project-progress-bar.over-budget span{background:var(--color-danger)}.project-note{color:var(--color-text-muted);background:var(--color-surface-muted);border-radius:var(--radius-md);margin:0;padding:.75rem}.project-detail-page{gap:1.25rem;display:grid}.project-edit-form{grid-template-columns:repeat(2,minmax(0,1fr))}.project-steps-section{gap:1rem;display:grid}.project-step-add{grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;align-items:start;gap:.75rem;display:grid}.project-step-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.project-step-row{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);grid-template-columns:auto auto minmax(0,1fr) auto;align-items:start;gap:.75rem;padding:.8rem;display:grid}.project-step-row.dragging{z-index:2;box-shadow:var(--shadow-soft)}.project-step-row.completed .project-step-fields input{color:var(--color-text-muted);text-decoration:line-through}.step-drag-handle{cursor:grab;touch-action:none;min-width:2.25rem;padding-inline:.45rem}.step-checkbox{width:1.25rem;height:1.25rem;margin-top:.65rem}.project-step-fields,.project-step-actions{gap:.5rem;display:grid}.project-step-actions{grid-template-columns:repeat(2,auto)}@media (width<=720px){.project-step-add,.project-edit-form{grid-template-columns:1fr}.project-step-row{grid-template-columns:auto auto minmax(0,1fr)}.project-step-actions{grid-column:3}}.field-page{gap:1rem;display:grid}.emergency-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem;display:grid}.field-card{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);gap:.5rem;padding:1.125rem;display:grid}.field-card.priority{border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 55%)}.field-card-wide{grid-column:1/-1}.field-card h2,.field-label{color:var(--color-text-muted);letter-spacing:0;text-transform:uppercase;margin:0;font-size:.85rem;font-weight:600}.field-card p{margin:0;font-size:1.35rem;font-weight:600}.field-card .section-heading p,.field-card .empty-state,.field-card .record-notes{font-size:.95rem;font-weight:500}.code-list{gap:.375rem;margin:0;padding:0;font-size:1.15rem;list-style:none;display:grid}.field-edit-form{max-width:36rem}.scanner-video{aspect-ratio:4/3;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:#000;width:min(100%,34rem)}.breaker-slot{width:3rem;height:3rem;color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:var(--radius-lg);flex:none;place-items:center;font-weight:600;display:grid}.breaker-panel-card{align-content:start}.breaker-box-field{border:0;gap:.625rem;margin:0;padding:0;display:grid}.breaker-box-field legend{color:var(--color-text-muted);padding:0;font-size:.875rem;font-weight:600}.breaker-box{background:linear-gradient(90deg, transparent calc(50% - 1px), var(--color-border-strong) calc(50% - 1px), var(--color-border-strong) calc(50% + 1px), transparent calc(50% + 1px)), var(--color-surface-muted);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem .5rem;padding:.875rem;display:grid}.breaker-box button{min-height:2.1rem;color:var(--color-text);background:var(--color-surface);border-color:var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-crisp);grid-template-columns:2rem minmax(0,1fr);place-items:center start;padding:.25rem .5rem;display:grid}.breaker-box button:nth-child(odd){border-top-right-radius:.25rem;border-bottom-right-radius:.25rem}.breaker-box button:nth-child(2n){border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.breaker-box button span{font-weight:600}.breaker-box button small{color:var(--color-text-muted);text-transform:uppercase;font-size:.7rem;font-weight:600}.breaker-box button.selected{color:var(--color-primary);background:var(--color-primary-soft);border-color:color-mix(in srgb, var(--color-primary), var(--color-border) 30%)}.breaker-box button:disabled{color:var(--color-text-muted);background:color-mix(in srgb, var(--color-surface-muted), var(--color-surface) 50%);opacity:.78}.detail-page{gap:1rem;display:grid}.back-link{width:fit-content;color:var(--color-text-muted);text-decoration:none}.back-link:hover{color:var(--color-primary)}.detail-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.detail-header h1,.detail-header h2{margin-bottom:.25rem}.detail-header p{color:var(--color-text-muted);margin:0}.detail-section{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);gap:.75rem;padding:1.125rem;display:grid}.detail-section h2{margin:0;font-size:1rem}.detail-section h3,.detail-section h4{margin:0}.room-record-section{position:relative;overflow:hidden}.room-record-section:before{content:"";background:var(--color-primary);width:.28rem;position:absolute;inset:0 auto 0 0}.room-record-section-fixtures:before{background:var(--color-warning)}.room-record-section-appliances:before{background:var(--color-success)}.room-record-list{gap:0;margin:0;padding:0;list-style:none;display:grid}.room-record-row{border-bottom:1px solid var(--color-border);padding:.75rem 0}.room-record-row:last-child{border-bottom:0}.room-detail-page{gap:1rem;display:grid}.room-detail-hero,.room-panel{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft)}.room-detail-hero{grid-template-columns:minmax(0,1.3fr) minmax(18rem,.9fr);align-items:stretch;gap:1.25rem;padding:1.25rem;display:grid}.room-detail-title{align-content:center;gap:.55rem;display:grid}.room-detail-title h1{margin:0}.room-detail-title p,.room-panel .section-heading p,.room-card-row p,.room-care-card p{color:var(--color-text-muted);margin:0}.room-detail-pills,.room-detail-actions,.room-row-actions{flex-wrap:wrap;gap:.45rem;display:flex}.room-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem;display:grid}.room-stat-card{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);align-content:center;gap:.15rem;min-height:5rem;padding:.875rem;display:grid}.room-stat-card strong{font-family:var(--font-display);color:var(--color-primary);font-size:2rem;font-weight:400;line-height:1}.room-stat-card span{color:var(--color-text-muted);font-size:.85rem;font-weight:700}.room-detail-grid,.room-record-grid{gap:1rem;display:grid}.room-detail-grid{grid-template-columns:minmax(0,1.5fr) minmax(16rem,.8fr)}.room-record-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.room-panel{align-content:start;gap:.875rem;padding:1rem;display:grid}.room-panel .section-heading{align-items:flex-start}.room-card-list{gap:.6rem;margin:0;padding:0;list-style:none;display:grid}.room-card-row{background:var(--color-surface-strong);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:.75rem;padding:.75rem;display:flex}.room-card-row.nested{background:0 0;border:0;border-radius:0;padding:0}.room-card-row a{color:var(--color-text);text-decoration:none}.room-card-row a:hover{color:var(--color-primary)}.room-card-row>div:first-child{gap:.2rem;min-width:0;display:grid}.room-care-card{background:radial-gradient(circle at 100% 0, color-mix(in srgb, var(--color-primary), transparent 84%), transparent 34%), var(--color-surface)}.room-care-card .button-link{width:fit-content}.bulb-summary-list{color:var(--color-text-muted);gap:.2rem;margin:.4rem 0 0;padding:0;font-size:.9rem;list-style:none;display:grid}.plain-record-row{justify-content:space-between;align-items:center;gap:1rem;display:flex}.fact-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.875rem;margin:0;display:grid}.fact-grid div{gap:.25rem;display:grid}.fact-grid dt{color:var(--color-text-muted);letter-spacing:0;text-transform:uppercase;font-size:.8rem;font-weight:600}.fact-grid dd{margin:0;font-size:1.05rem}.qr-output{overflow-wrap:anywhere;margin:0}.modal-backdrop{z-index:30;background:#0000006b;place-items:center;padding:1rem;display:grid;position:fixed;inset:0}.modal-panel{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);width:min(100%,42rem);max-height:min(42rem,100vh - 2rem);box-shadow:var(--shadow-soft);gap:1rem;padding:1.125rem;display:grid;overflow-y:auto}.modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.modal-header h2{margin:0;font-size:1.15rem}.modal-form{gap:.75rem;display:grid}.modal-mode-switch{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:repeat(2,minmax(0,1fr));gap:.25rem;padding:.25rem;display:grid}.modal-mode-switch button{background:0 0;border-color:#0000}.modal-mode-switch button.active{color:var(--color-primary);background:var(--color-surface);border-color:var(--color-border);box-shadow:var(--shadow-soft)}.modal-form label{color:var(--color-text-muted);gap:.35rem;font-size:.875rem;font-weight:600;display:grid}.modal-actions{flex-wrap:wrap;justify-content:flex-end;gap:.5rem;margin-top:.25rem;display:flex}.guide-backdrop{z-index:40;background:#0006;position:fixed;inset:0}.guide-drawer{width:min(100%,34rem);height:100%;color:var(--color-text);background:var(--color-background);border-left:1px solid var(--color-border-strong);flex-direction:column;gap:1rem;padding:1.4rem;display:flex;position:absolute;top:0;right:0;overflow-y:auto;box-shadow:-18px 0 48px #0000002e}.guide-drawer-header,.guide-card-heading,.guide-step-actions,.feature-announcement-actions{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.guide-drawer-header .section-kicker{color:var(--color-primary);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .25rem;font-size:.72rem;font-weight:800}.guide-drawer-header h2,.guide-card h3,.guide-steps h4,.feature-announcement h2{margin:0}.guide-error,.guide-empty{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1rem}.guide-error{justify-content:space-between;align-items:center;gap:1rem;display:flex}.guide-error p,.guide-empty{color:var(--color-text-muted);margin:0}.guide-list{gap:1rem;display:grid}.guide-card{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-soft);gap:1rem;padding:1.1rem;display:grid}.guide-card-inactive{box-shadow:none}.guide-card-heading>div{gap:.3rem;display:grid}.guide-card-heading p,.guide-steps p,.feature-announcement p{color:var(--color-text-muted);margin:0}.guide-kind{color:var(--color-primary);letter-spacing:.1em;text-transform:uppercase;font-size:.7rem;font-weight:800}.guide-progress{color:var(--color-primary);background:var(--color-primary-soft);border-radius:var(--radius-pill);flex:none;padding:.2rem .55rem;font-size:.75rem;font-weight:800}.guide-steps{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.guide-steps li{border-top:1px solid var(--color-border);grid-template-columns:1.8rem minmax(0,1fr);gap:.7rem;padding-top:.8rem;display:grid}.guide-step-marker{width:1.7rem;height:1.7rem;color:var(--color-primary);background:var(--color-primary-soft);border-radius:var(--radius-pill);place-items:center;font-size:.75rem;font-weight:800;display:grid}.guide-step-complete .guide-step-marker{color:var(--color-primary-text);background:var(--color-success)}.guide-step-complete h4{color:var(--color-text-muted)}.guide-steps li>div{gap:.4rem;display:grid}.guide-step-actions{align-items:center;margin-top:.25rem}.guide-step-actions a{font-size:.85rem;font-weight:700}.guide-step-actions button{padding:.38rem .7rem;font-size:.82rem}.guide-dismiss{color:var(--color-text-muted);box-shadow:none;background:0 0;border:0;justify-self:start;padding:0;font-size:.82rem}.guide-dismiss:hover{color:var(--color-danger);background:0 0;transform:none}.feature-announcement{z-index:35;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);width:min(100% - 2rem,24rem);box-shadow:var(--shadow-lifted);gap:.6rem;padding:1.2rem;display:grid;position:fixed;bottom:1.25rem;right:1.25rem}.feature-announcement-close{color:var(--color-text-muted);box-shadow:none;background:0 0;border:0;padding:.1rem .5rem;font-size:1.3rem;position:absolute;top:.55rem;right:.55rem}.feature-announcement-actions{justify-content:flex-end;margin-top:.35rem}@media (width<=36rem){.guide-drawer{padding:1rem}.guide-step-actions{flex-direction:column;align-items:flex-start}.feature-announcement{bottom:1rem;right:1rem}}.outdoor-page{gap:1.25rem;display:grid}.outdoor-page-header{align-items:center;margin-bottom:0}.outdoor-page-header h1{margin:.18rem 0 .35rem;font-size:clamp(3rem,5vw,4.5rem)}.outdoor-add-control{z-index:3;position:relative}.outdoor-add-control>.primary{align-items:center;gap:1rem;min-height:3rem;padding-inline:1.1rem;display:flex}.outdoor-add-control>.primary span{font-size:1.2rem;line-height:1}.outdoor-add-menu{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);width:min(22rem,100vw - 2rem);box-shadow:var(--shadow-lifted);gap:.35rem;padding:.5rem;display:grid;position:absolute;top:calc(100% + .5rem);right:0}.outdoor-add-menu button{text-align:left;width:100%;box-shadow:none;border-color:#0000;justify-items:start;gap:.1rem;padding:.75rem;display:grid}.outdoor-add-menu button span{color:var(--color-text-muted);font-size:.8rem;font-weight:400}.outdoor-metric-strip{background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:calc(var(--radius-lg) + .2rem);box-shadow:var(--shadow-crisp);grid-template-columns:repeat(4,minmax(0,1fr));gap:0;padding:.8rem 0;display:grid}.outdoor-metric-card{border-left:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem;min-width:0;padding:.45rem 1.2rem;display:grid}.outdoor-metric-card:first-child{border-left:0}.outdoor-metric-card span{color:var(--color-text-muted);letter-spacing:.07em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.74rem;font-weight:800;overflow:hidden}.outdoor-metric-card strong{font-family:var(--font-display);font-size:2rem;font-weight:400;line-height:1}.outdoor-metric-card.attention strong{color:var(--color-warning)}.outdoor-briefing-grid{grid-template-columns:minmax(0,1.08fr) minmax(20rem,.92fr);gap:1rem;display:grid}.outdoor-attention-card,.outdoor-season-card{border:1px solid var(--color-border-strong);border-radius:calc(var(--radius-lg) + .25rem);min-height:22rem;box-shadow:var(--shadow-soft);align-content:start;gap:1rem;padding:1.35rem;display:grid}.outdoor-attention-card{color:var(--color-feature-text);background:radial-gradient(circle at 94% 0, color-mix(in srgb, var(--color-accent), transparent 74%), transparent 13rem), var(--color-feature-surface);border-color:var(--color-feature-border)}.outdoor-attention-card .briefing-eyebrow{color:var(--color-feature-muted)}.outdoor-attention-card h2{color:var(--color-feature-text)}.outdoor-season-card{background:linear-gradient(155deg, color-mix(in srgb, var(--color-accent-warm), transparent 91%), transparent 14rem), var(--color-surface)}.outdoor-card-heading{justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.outdoor-card-heading h2{font-family:var(--font-display);letter-spacing:-.025em;margin:.28rem 0 0;font-size:1.8rem;font-weight:400;line-height:1.05}.outdoor-card-heading>a{white-space:nowrap;font-size:.86rem;font-weight:700}.outdoor-count-badge{width:2.5rem;height:2.5rem;color:var(--color-feature-text);background:var(--color-feature-surface-soft);border:1px solid var(--color-feature-border);border-radius:var(--radius-pill);place-items:center;font-weight:800;display:grid}.outdoor-attention-list,.outdoor-season-list,.outdoor-detail-list{gap:.65rem;margin:0;padding:0;list-style:none;display:grid}.outdoor-attention-list li{color:var(--color-feature-text);background:var(--color-feature-surface-soft);border:1px solid var(--color-feature-border);border-radius:var(--radius-lg);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.75rem;padding:.8rem;display:grid}.outdoor-attention-list strong,.outdoor-attention-list span,.outdoor-season-list strong,.outdoor-season-list span{display:block}.outdoor-attention-list li div>span{color:var(--color-feature-muted);margin-top:.08rem;font-size:.8rem}.outdoor-check{color:#0000;border-color:var(--color-feature-muted);border-radius:var(--radius-pill);width:2.25rem;height:2.25rem;box-shadow:none;background:0 0;place-items:center;padding:0;display:grid}.outdoor-check:hover,.outdoor-check:focus-visible{color:var(--color-primary-text);background:var(--color-accent);border-color:var(--color-accent)}.outdoor-feature-empty{max-width:24rem;color:var(--color-feature-muted);margin:0}.outdoor-feature-action{color:var(--color-feature-text);box-shadow:none;background:0 0;border-color:#0000;justify-self:start;margin-top:auto;padding-inline:0}.outdoor-feature-action:hover{color:var(--color-accent);background:0 0}.outdoor-season-list{position:relative}.outdoor-season-list:before{content:"";background:var(--color-border-strong);width:1px;position:absolute;top:1.2rem;bottom:1.2rem;left:1.2rem}.outdoor-season-list li{grid-template-columns:auto minmax(0,1fr);align-items:center;gap:.8rem;min-height:3.3rem;display:grid;position:relative}.outdoor-season-marker{z-index:1;width:2.4rem;height:2.4rem;color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-border-strong);border-radius:var(--radius-pill);place-items:center;font-size:.76rem;font-weight:800;display:grid!important}.outdoor-season-list li div>span{color:var(--color-text-muted);font-size:.82rem}.outdoor-season-empty{justify-items:start;gap:.75rem;display:grid}.outdoor-season-empty p{color:var(--color-text-muted);margin:0}.outdoor-areas-section{gap:.9rem;display:grid}.outdoor-areas-section>.section-heading{margin:0}.outdoor-areas-section>.section-heading>button{white-space:nowrap}.outdoor-areas-section h2{font-family:var(--font-display);margin-top:.15rem;font-size:2rem;font-weight:400}.outdoor-area-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.875rem;display:grid}.outdoor-area-card{text-align:left;background:linear-gradient(145deg, var(--color-surface), color-mix(in srgb, var(--color-surface-muted), var(--color-surface) 58%));border-color:var(--color-border-strong);border-radius:calc(var(--radius-lg) + .2rem);min-height:9.5rem;box-shadow:var(--shadow-crisp);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1.15rem;display:grid;position:relative;overflow:hidden}.outdoor-area-card:before{content:"";background:color-mix(in srgb, var(--color-primary), var(--color-accent) 30%);width:.28rem;position:absolute;inset:0 auto 0 0}.outdoor-area-card:hover,.outdoor-area-card:focus-visible{border-color:var(--color-primary);box-shadow:var(--shadow-soft)}.outdoor-area-icon,.outdoor-type-icon,.outdoor-empty-icon{width:4.25rem;height:4.25rem;color:var(--color-primary);background:var(--color-primary-soft);border:1px solid var(--color-border);border-radius:1.1rem;flex:none;place-items:center;display:grid}.outdoor-area-icon svg,.outdoor-type-icon svg,.outdoor-empty-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2.4px;width:2.7rem;height:2.7rem}.outdoor-area-icon.large{width:4.75rem;height:4.75rem}.outdoor-area-copy{min-width:0;display:grid}.outdoor-area-type{color:var(--color-text-muted);letter-spacing:.09em;text-transform:uppercase;font-size:.7rem;font-weight:800}.outdoor-area-copy>strong{font-family:var(--font-display);letter-spacing:-.02em;text-overflow:ellipsis;margin:.05rem 0 .25rem;font-size:1.45rem;font-weight:400;line-height:1.1;overflow:hidden}.outdoor-area-meta,.outdoor-area-status{color:var(--color-text-muted);font-size:.8rem}.outdoor-area-status{color:var(--color-success);margin-top:.5rem;font-weight:700}.outdoor-area-status.attention{color:var(--color-warning)}.outdoor-area-arrow{color:var(--color-text-muted);font-size:1.15rem}.outdoor-empty-state{text-align:center;background:var(--color-surface);border:1px dashed var(--color-border-strong);border-radius:var(--radius-lg);justify-items:center;gap:.6rem;padding:3rem 1rem;display:grid}.outdoor-empty-state h3,.outdoor-empty-state p{margin:0}.outdoor-empty-state p{max-width:30rem;color:var(--color-text-muted)}.outdoor-detail-hero{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1rem;padding:1rem;display:grid}.outdoor-detail-hero p{color:var(--color-text-muted);margin:.25rem 0 0}.outdoor-detail-section{gap:.65rem;display:grid}.outdoor-detail-section .section-heading{margin:0}.outdoor-detail-list li{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);justify-content:space-between;align-items:center;gap:1rem;padding:.75rem;display:flex}.outdoor-detail-list li>div:first-child{min-width:0}.outdoor-detail-list li strong,.outdoor-detail-list li span{display:block}.outdoor-detail-list li span{color:var(--color-text-muted);font-size:.8rem}.outdoor-detail-list li>div:last-child{flex-wrap:wrap;gap:.35rem;display:flex}.outdoor-detail-list button{padding:.35rem .6rem;font-size:.8rem}.outdoor-detail-empty{color:var(--color-text-muted);background:var(--color-surface-muted);border-radius:var(--radius-md);margin:0;padding:.8rem}.outdoor-detail-danger{border-top:1px solid var(--color-border);padding-top:.75rem}.outdoor-detail-danger button{color:var(--color-danger)}.outdoor-resource-form{gap:1rem}.outdoor-type-picker{border:0;gap:.55rem;margin:0;padding:0;display:grid}.outdoor-type-picker legend{color:var(--color-text);font-family:var(--font-display);margin-bottom:.55rem;font-size:1.15rem}.outdoor-type-picker>div{grid-template-columns:repeat(4,minmax(0,1fr));gap:.6rem;display:grid}.outdoor-type-picker label{min-width:0;color:var(--color-text-muted);text-align:center;background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-lg);cursor:pointer;justify-items:center;gap:.45rem;padding:.75rem .35rem;display:grid;position:relative}.outdoor-type-picker label:hover,.outdoor-type-picker label.selected{color:var(--color-primary);background:var(--color-primary-soft);border-color:var(--color-primary)}.outdoor-type-picker input{opacity:0;pointer-events:none;position:absolute}.outdoor-type-icon{background:var(--color-surface);border-radius:.75rem;width:3rem;height:3rem}.outdoor-type-icon svg{width:2rem;height:2rem}.outdoor-type-picker strong{text-overflow:ellipsis;white-space:nowrap;max-width:100%;font-size:.78rem;overflow:hidden}.outdoor-library-hint{color:var(--color-text-muted);margin:0;font-size:.86rem}@media (width<=70rem){.outdoor-area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=52rem){.outdoor-metric-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.outdoor-metric-card:nth-child(3){border-left:0}.outdoor-metric-card:nth-child(n+3){border-top:1px solid var(--color-border);padding-top:.8rem}.outdoor-briefing-grid,.outdoor-area-grid{grid-template-columns:1fr}.outdoor-attention-card,.outdoor-season-card{min-height:auto}.outdoor-type-picker>div{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=36rem){.outdoor-metric-card{grid-template-columns:1fr}.outdoor-area-card{grid-template-columns:auto minmax(0,1fr)}.outdoor-area-arrow{display:none}.outdoor-detail-hero{grid-template-columns:auto minmax(0,1fr)}.outdoor-detail-hero>button{grid-column:1/-1}.outdoor-detail-list li{flex-direction:column;align-items:stretch}}.confirm-message{color:var(--color-text-muted);margin:0}.task-library{gap:1rem;display:grid}.task-library-section{padding:1rem}.task-library-heading{align-items:flex-start}.library-start-date{max-width:14rem;color:var(--color-text-muted);gap:.35rem;font-size:.875rem;font-weight:600;display:grid}.library-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.875rem;display:grid}.library-card{min-height:11rem;color:var(--color-text);text-align:left;background:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);box-shadow:var(--shadow-crisp);cursor:pointer;align-content:start;gap:.875rem;padding:1rem;display:grid}.library-card:hover,.library-card:focus-visible{border-color:var(--color-primary);box-shadow:var(--shadow-soft);transform:translateY(-1px)}.library-card h3{margin:0 0 .25rem}.library-card-heading{justify-content:space-between;align-items:flex-start;gap:.75rem;display:flex}.library-card p,.library-card dd{color:var(--color-text-muted);margin:0}.library-card-title{font-size:1rem;font-weight:600;line-height:1.2}.library-card-summary{color:var(--color-text-muted);line-height:1.45}.library-modal{gap:1rem;display:grid}.library-modal>p{color:var(--color-text-muted);margin:0}.library-notes{gap:.625rem;margin:0;display:grid}.library-notes div{gap:.15rem;display:grid}.library-notes dt{color:var(--color-text);font-weight:600}.library-task-list{gap:.45rem;margin:.375rem 0 0;padding-left:1.25rem;display:grid}.library-task-list li{padding-left:.125rem}.library-task-list span,.library-task-list small{display:block}.library-task-list small{color:var(--color-text-muted);margin-top:.1rem}.library-details{background:var(--color-surface-muted);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:.75rem;padding:.75rem;display:grid}.library-details summary{cursor:pointer;width:fit-content;font-weight:600}.library-detail-list{gap:.75rem;margin-top:.75rem;display:grid}.library-task-detail{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);gap:.5rem;padding:.75rem;display:grid}.library-task-detail p,.library-detail-note{color:var(--color-text-muted);margin:0}.library-task-select{color:var(--color-text);align-items:flex-start;gap:.5rem;font-weight:600;display:flex}.library-task-select input{margin-top:.2rem}.library-steps{color:var(--color-text-muted);gap:.25rem;margin:0;padding-left:1.25rem;display:grid}.library-references{gap:.25rem;display:grid}.library-references a{overflow-wrap:anywhere;color:var(--color-primary);font-size:.9rem;font-weight:600;text-decoration:none}.library-references a:hover{text-decoration:underline}@media (width<=52rem){.library-grid,.library-task-grid,.maintenance-briefing-grid,.maintenance-support-grid,.project-board{grid-template-columns:1fr}.maintenance-task-card button{justify-self:start}.work-card-heading{flex-direction:column}.routine-preview-grid,.routine-preview-stats{grid-template-columns:1fr}.auth-page{padding:1rem}.auth-shell{grid-template-columns:1fr;gap:.75rem}.auth-brand-card{min-height:auto;padding:1.25rem}.auth-brand-card:before{display:none}.auth-brand-lockup{text-align:center;justify-items:center;gap:.75rem}.auth-brand-wordmark{width:10rem;padding:.55rem .7rem}.auth-brand-lockup p{max-width:18rem;font-size:1rem}.auth-panel{min-height:auto;padding:1.5rem}.auth-panel h1{font-size:2rem}.app-shell,.app-shell.drawer-collapsed{grid-template-columns:1fr}.app-drawer,.drawer-collapsed .app-drawer{border-right:0;border-bottom:1px solid var(--color-border);align-items:stretch;height:auto;padding:1rem;position:static}.drawer-toggle{display:none}.drawer-collapsed .brand-link{justify-content:flex-start}.drawer-collapsed .drawer-header{grid-template-columns:minmax(0,1fr) auto;justify-items:stretch}.drawer-collapsed .brand-name{display:initial}.drawer-collapsed .drawer-utility-links{display:flex}.drawer-collapsed .app-nav,.drawer-collapsed .drawer-account-nav{display:grid}.app-nav{grid-template-columns:repeat(2,minmax(0,1fr))}.drawer-account-nav{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}.nav-section{align-content:start}.app-content{padding:1rem}.auth-form,.page-header{flex-direction:column}.briefing-header{align-items:flex-start}.briefing-primary-grid,.briefing-secondary-grid{grid-template-columns:1fr}.briefing-card{min-height:auto}.home-record-strip{grid-template-columns:1fr}.home-record-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem 0}.home-stat:nth-child(odd){border-left:0;padding-left:0}h1{font-size:2.35rem;line-height:1}.detail-header{flex-direction:column}.page-actions{justify-content:flex-start}.emergency-grid,.fact-grid,.settings-section{grid-template-columns:1fr}.settings-page,.account-page{margin-top:.75rem}.account-detail-row,.household-switcher,.appearance-setting{grid-template-columns:1fr;gap:.85rem}.household-switcher .field-error{grid-column:1}.theme-choice-grid{grid-template-columns:repeat(3,minmax(6.5rem,1fr));padding:.2rem;overflow-x:auto}.record-row,.room-card{flex-direction:column;align-items:stretch}.room-detail-hero,.room-detail-grid,.room-record-grid{grid-template-columns:1fr}.room-detail-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.record-actions{justify-content:flex-start}.inline-form>input,.inline-form>select{flex:12rem;min-width:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}button:hover,.button-link:hover,.drawer-icon-link:hover,.nav-link:hover,.utility-summary-card:hover,.metric-card:hover,.record-row:hover,.quick-find-result:hover{transform:none}}@media (width<=36rem){.account-section-heading,.account-detail-row,.household-switcher,.appearance-setting{padding-inline:1.15rem}.household-switcher-controls{grid-template-columns:1fr}.household-switcher-controls button{justify-self:start}.account-session{align-items:flex-start}}.storage-page,.storage-detail-page{gap:1.35rem;max-width:92rem;margin:0 auto;display:grid}.storage-page-header{justify-content:space-between;align-items:flex-start;gap:2rem;display:flex}.storage-page-header h1,.storage-detail-hero h1,.storage-item-hero h1{font-family:var(--font-display);font-size:clamp(3rem,5vw,4.75rem);font-weight:var(--font-weight-regular);letter-spacing:-.045em;margin:0;line-height:.95}.storage-page-header>div>p:last-child{color:var(--color-text-muted);margin:.65rem 0 0;font-size:1.05rem}.storage-add-menu{position:relative}.storage-add-popover{z-index:20;border:1px solid var(--color-border);background:var(--color-surface);width:19rem;box-shadow:var(--shadow-lifted);border-radius:.9rem;padding:.45rem;display:grid;position:absolute;top:calc(100% + .65rem);right:0;overflow:hidden}.storage-add-popover>button{text-align:left;background:0 0;border:0;grid-template-columns:auto 1fr;align-items:center;gap:.75rem;padding:.75rem;display:grid}.storage-add-popover>button:hover{background:var(--color-surface-muted)}.storage-add-popover>button:disabled{cursor:not-allowed;opacity:.55}.storage-add-popover strong,.storage-add-popover small{display:block}.storage-add-popover small{color:var(--color-text-muted);margin-top:.15rem}.storage-action-icon,.storage-bin-icon{width:3rem;height:3rem;color:var(--color-success);background:var(--color-primary-soft);border-radius:.8rem;flex:none;place-items:center;display:grid}.storage-action-icon.item{color:#157883;background:#dceff0;font-size:1.55rem}.storage-action-icon svg,.storage-bin-icon svg,.storage-empty-state>svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:1.7rem}.storage-search{border:1px solid var(--color-border);background:var(--color-surface);min-height:4rem;box-shadow:var(--shadow-soft);border-radius:1.1rem;align-items:center;padding:0 1.25rem;display:flex}.storage-search svg{fill:none;width:1.45rem;stroke:var(--color-text-muted);stroke-width:1.8px;stroke-linecap:round;margin-right:.8rem}.storage-search input{width:100%;box-shadow:none;background:0 0;outline:0;padding:0;font-size:1.02rem;border:0!important}.storage-toolbar,.storage-section-heading,.storage-panel-heading{justify-content:space-between;align-items:center;gap:1rem;display:flex}.storage-toolbar>p{color:var(--color-text-muted);margin:0;font-size:.88rem}.storage-toolbar>p strong{color:var(--color-text)}.storage-view-switch{background:var(--color-surface-muted);border-radius:.75rem;gap:.2rem;padding:.25rem;display:flex}.storage-view-switch button{font-size:.82rem;font-weight:var(--font-weight-semibold);background:0 0;border:0;border-radius:.55rem;padding:.5rem .8rem}.storage-view-switch button.active{background:var(--color-surface);box-shadow:var(--shadow-crisp)}.storage-room-filters{flex-wrap:wrap;gap:.5rem;display:flex}.storage-room-filters button{border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-size:.82rem;font-weight:var(--font-weight-semibold);padding:.48rem .8rem}.storage-room-filters button.active{color:var(--color-link);border-color:color-mix(in srgb, var(--color-success) 45%, var(--color-border));background:var(--color-primary-soft)}.storage-room-groups{gap:1.6rem;display:grid}.storage-room-group{gap:.8rem;display:grid}.storage-section-heading h2,.storage-panel-heading h2{font-family:var(--font-display);font-size:1.85rem;font-weight:var(--font-weight-regular);letter-spacing:-.025em;margin:0}.storage-section-heading a{color:var(--color-link);font-size:.83rem;font-weight:var(--font-weight-semibold);text-decoration:none}.storage-section-heading>span,.storage-panel-heading p{color:var(--color-text-muted);margin:0;font-size:.8rem}.storage-bin-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.storage-bin-card{border:1px solid var(--color-border);min-height:13rem;color:var(--color-text);background:var(--color-surface);box-shadow:var(--shadow-crisp);transition:transform var(--duration-fast) var(--ease-smooth), border-color var(--duration-fast) var(--ease-smooth), box-shadow var(--duration-fast) var(--ease-smooth);border-radius:1rem;padding:1.2rem;text-decoration:none;display:grid;position:relative;overflow:hidden}.storage-bin-card:hover{border-color:var(--color-border-strong);box-shadow:var(--shadow-soft);transform:translateY(-2px)}.storage-bin-card.needs-location{border-color:color-mix(in srgb, var(--color-accent-warm) 70%, var(--color-border))}.storage-bin-card.needs-location:before{background:var(--color-accent-warm);content:"";border-radius:0 .2rem .2rem 0;width:.25rem;position:absolute;inset:1rem auto 1rem 0}.storage-bin-card h3{font-family:var(--font-display);font-size:1.5rem;font-weight:var(--font-weight-regular);letter-spacing:-.02em;align-self:end;margin:1rem 0 .25rem;line-height:1.1}.storage-bin-location,.storage-bin-preview{min-width:0;color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;margin:0;font-size:.82rem;overflow:hidden}.storage-bin-preview{align-self:end;margin-top:1rem;padding-right:4.5rem}.storage-count-pill{border-radius:var(--radius-pill);background:var(--color-surface-muted);width:max-content;font-size:.75rem;font-weight:var(--font-weight-semibold);white-space:nowrap;align-items:center;padding:.28rem .55rem;display:inline-flex}.storage-bin-card>.storage-count-pill{position:absolute;bottom:1rem;right:1rem}.storage-empty-state{border:1px dashed var(--color-border-strong);background:var(--color-surface);text-align:center;border-radius:1rem;justify-items:center;padding:4rem 1.5rem;display:grid}.storage-empty-state>svg{width:2.5rem;color:var(--color-success)}.storage-empty-state h2{font-family:var(--font-display);font-size:1.8rem;font-weight:var(--font-weight-regular);margin:1rem 0 .3rem}.storage-empty-state p{max-width:32rem;color:var(--color-text-muted);margin:0 0 1.2rem}.storage-items-panel,.storage-detail-panel{border:1px solid var(--color-border);background:var(--color-surface);box-shadow:var(--shadow-crisp);border-radius:1rem;padding:1.4rem}.storage-item-list,.storage-detail-item-list,.storage-attachment-list{margin-top:.8rem;display:grid}.storage-item-row,.storage-detail-item-row{border-top:1px solid var(--color-border);color:var(--color-text);grid-template-columns:auto minmax(12rem,1fr) minmax(8rem,.6fr) auto;align-items:center;gap:.8rem;padding:.9rem .15rem;text-decoration:none;display:grid}.storage-item-row:first-child,.storage-detail-item-row:first-child{border-top:0}.storage-item-row:hover strong,.storage-detail-item-row:hover strong{color:var(--color-link)}.storage-item-monogram{width:2.7rem;height:2.7rem;color:var(--color-success);background:var(--color-surface-muted);font-weight:var(--font-weight-semibold);border-radius:.7rem;place-items:center;display:grid}.storage-item-copy,.storage-detail-item-row>span:nth-child(2){display:grid}.storage-item-copy small,.storage-detail-item-row small{color:var(--color-text-muted);margin-top:.1rem}.storage-item-notes{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.85rem;overflow:hidden}.storage-form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.storage-resource-form{padding-top:.2rem}.storage-resource-form textarea{resize:vertical;min-height:6rem}.storage-resource-form label small{color:var(--color-text-muted);font-weight:var(--font-weight-regular)}.modal-intro{color:var(--color-text-muted);margin:-.25rem 0 .3rem}.storage-file-drop{border:1px dashed var(--color-border-strong);background:var(--color-surface-strong);text-align:center;cursor:pointer;border-radius:.8rem;justify-items:center;padding:1.1rem;display:grid!important}.storage-file-drop span{color:var(--color-text-muted);font-size:.82rem;font-weight:var(--font-weight-regular)}.storage-file-drop input{background:0 0;border:0;max-width:100%;margin-top:.7rem;padding:0}.storage-file-drop.compact{width:100%}.storage-selected-file{color:var(--color-text-muted);background:var(--color-surface-muted);border-radius:.65rem;margin:-.4rem 0 0;padding:.65rem .8rem;font-size:.82rem}.storage-breadcrumb{color:var(--color-text-muted);flex-wrap:wrap;align-items:center;gap:.45rem;font-size:.85rem;display:flex}.storage-breadcrumb a{color:var(--color-link);font-weight:var(--font-weight-semibold);text-decoration:none}.storage-detail-hero,.storage-item-hero{color:var(--color-feature-text);background:var(--color-feature-surface);border-radius:1.2rem;justify-content:space-between;align-items:center;gap:2rem;padding:1.75rem;display:flex}.storage-detail-identity{align-items:center;gap:1rem;display:flex}.storage-detail-hero .storage-bin-icon{color:var(--color-feature-text);background:var(--color-feature-surface-soft)}.storage-detail-hero h1{color:var(--color-feature-text);font-size:clamp(2.25rem,4vw,3.5rem)}.storage-detail-hero p:last-child{color:var(--color-feature-muted);margin:.45rem 0 0}.storage-detail-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:.6rem;display:flex}.storage-detail-actions>button{border-color:var(--color-border-strong);background:var(--color-surface)}.storage-detail-actions>button.primary{border-color:var(--color-primary);color:var(--color-primary-text);background:var(--color-primary)}.storage-detail-count{justify-items:center;min-width:4rem;margin-right:.5rem;display:grid}.storage-detail-count strong{font-family:var(--font-display);font-size:1.8rem;font-weight:var(--font-weight-regular)}.storage-detail-count small{color:var(--color-feature-muted);text-transform:uppercase;letter-spacing:.08em}.storage-detail-grid{grid-template-columns:minmax(0,1.7fr) minmax(18rem,.72fr);align-items:start;gap:1rem;display:grid}.storage-panel-heading{margin-bottom:.8rem}.storage-panel-heading>button{padding:.45rem .65rem}.storage-panel-actions{align-items:center;gap:.55rem;display:flex}.storage-panel-heading input,.storage-panel-actions input{width:min(14rem,45%)}.storage-detail-item-row{grid-template-columns:auto minmax(0,1fr) auto}.storage-detail-facts{margin:0;display:grid}.storage-detail-facts>div{border-top:1px solid var(--color-border);padding:.9rem 0}.storage-detail-facts>div:first-child{border-top:0}.storage-detail-facts dt,.storage-item-facts dt{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem;font-size:.72rem}.storage-detail-facts dd,.storage-item-facts dd{font-weight:var(--font-weight-semibold);margin:0}.storage-attachments-heading{margin-top:1.5rem}.storage-attachment-row{border:1px solid var(--color-border);background:var(--color-surface-strong);text-align:left;border-radius:.7rem;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;width:100%;padding:.65rem;display:grid}.storage-attachment-row+.storage-attachment-row{margin-top:.55rem}.storage-attachment-row>span:first-child{width:2.35rem;height:2.6rem;color:var(--color-link);background:var(--color-surface-muted);font-size:.64rem;font-weight:var(--font-weight-semibold);border-radius:.5rem;place-items:center;display:grid}.storage-attachment-row>span:nth-child(2){min-width:0;display:grid}.storage-attachment-row strong{text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.storage-attachment-row small{color:var(--color-text-muted);font-size:.72rem}.storage-attachment-actions{gap:.35rem;display:flex}.storage-attachment-actions button{color:var(--color-link);background:0 0;border:0;padding:.35rem .45rem;font-size:.72rem}.storage-delete-link{border-color:color-mix(in srgb, var(--color-danger) 35%, var(--color-border));width:100%;color:var(--color-danger);background:0 0;margin-top:1.5rem}.storage-item-hero{color:var(--color-text);background:var(--color-surface);border:1px solid var(--color-border);box-shadow:var(--shadow-crisp);grid-template-columns:auto minmax(0,1fr) auto;display:grid}.storage-item-hero h1{color:var(--color-text);font-size:clamp(2.25rem,4vw,3.5rem)}.storage-item-hero-icon{width:6.5rem;height:6.5rem;color:var(--color-success);background:var(--color-primary-soft);font-family:var(--font-display);border-radius:1rem;place-items:center;font-size:3rem;display:grid}.storage-location-link{width:max-content;max-width:100%;color:var(--color-link);background:var(--color-primary-soft);font-size:.82rem;font-weight:var(--font-weight-semibold);border-radius:.55rem;margin-top:.55rem;padding:.45rem .65rem;text-decoration:none;display:inline-flex}.storage-item-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin:0;display:grid}.storage-item-facts>div{border:1px solid var(--color-border);background:var(--color-surface-strong);border-radius:.75rem;padding:1rem}.storage-notes{margin-top:1.4rem}.storage-notes>p:last-child{color:var(--color-text-muted);margin-bottom:0}@media (width<=72rem){.storage-bin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.storage-detail-hero,.storage-item-hero{align-items:flex-start}.storage-item-hero{grid-template-columns:auto minmax(0,1fr)}.storage-item-hero .storage-detail-actions{grid-column:1/-1;justify-content:flex-start}}@media (width<=52rem){.storage-page-header,.storage-toolbar,.storage-detail-hero{flex-direction:column;align-items:stretch}.storage-page-header .page-actions{width:100%}.storage-add-menu,.storage-add-menu>button{flex:1}.storage-add-popover{width:min(19rem,100vw - 2rem);left:0;right:auto}.storage-view-switch{align-self:flex-start}.storage-bin-grid,.storage-detail-grid,.storage-item-facts,.storage-form-row{grid-template-columns:1fr}.storage-item-row{grid-template-columns:auto minmax(0,1fr) auto}.storage-item-notes{display:none}.storage-detail-actions{justify-content:flex-start}.storage-detail-count{justify-items:start}.storage-item-hero{grid-template-columns:1fr}.storage-item-hero-icon{width:4.5rem;height:4.5rem;font-size:2rem}.storage-panel-heading{align-items:flex-start}.storage-panel-heading input{width:50%}.storage-panel-actions{flex-wrap:wrap;width:100%}.storage-panel-actions input{flex:12rem;width:min(100%,16rem)}.storage-attachment-row{grid-template-columns:auto minmax(0,1fr)}.storage-attachment-actions{grid-column:1/-1}}
