:root{--bg: #f3f5f4;--bg-grad: radial-gradient(900px 500px at 100% -10%, #dff1ec 0%, transparent 60%), radial-gradient(700px 400px at -10% 110%, #fdeee9 0%, transparent 60%);--surface: #ffffff;--surface-2: #f0f3f1;--surface-3: #e6ebe8;--fg: #17201c;--muted: #5a6761;--faint: #8a968f;--line: #dde4e0;--accent: #0B6E63;--accent-2: #14907F;--coral: #F2644B;--saffron: #F6B43C;--accent-fg: #ffffff;--accent-soft: #dcf0eb;--gold: #c88a12;--crit: #b4322a;--crit-soft: #fbe5e2;--warn: #8a560a;--warn-soft: #fbefd6;--info: #2a5f8f;--info-soft: #e2edf8;--ok: #0B6E63;--ok-soft: #dff0e8;--shadow-sm: 0 1px 2px rgba(16, 32, 24, .06);--shadow: 0 1px 2px rgba(16, 32, 24, .05), 0 8px 24px -8px rgba(16, 32, 24, .12);--shadow-lg: 0 24px 64px -12px rgba(10, 24, 18, .35);--f-display: "Poppins", "Inter", system-ui, sans-serif;--f-body: "Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--f-mono: "Inter", system-ui, sans-serif;--f-code: ui-monospace, "SF Mono", Menlo, monospace;--radius: 12px;--radius-sm: 8px;--ease: cubic-bezier(.22, 1, .36, 1);--sidebar: 248px;color-scheme:light}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--bg: #0f1412;--bg-grad: radial-gradient(900px 500px at 100% -10%, #0f2a25 0%, transparent 60%), radial-gradient(700px 400px at -10% 110%, #2a1612 0%, transparent 60%);--surface: #161d1a;--surface-2: #1c2421;--surface-3: #25302b;--fg: #e6ece9;--muted: #9eaca5;--faint: #6e7c75;--line: #2a3430;--accent: #3FC9AE;--accent-2: #6FDCC5;--coral: #FF7A62;--saffron: #F6B43C;--accent-fg: #07130e;--accent-soft: #123530;--gold: #f0b54a;--crit: #ff8f84;--crit-soft: #3a1c19;--warn: #f2b65c;--warn-soft: #352611;--info: #8fc0ec;--info-soft: #172a3c;--ok: #3FC9AE;--ok-soft: #183328;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 8px 24px -8px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 64px -12px rgba(0, 0, 0, .7);color-scheme:dark}}:root[data-theme=dark]{--bg: #0f1412;--bg-grad: radial-gradient(900px 500px at 100% -10%, #0f2a25 0%, transparent 60%), radial-gradient(700px 400px at -10% 110%, #2a1612 0%, transparent 60%);--surface: #161d1a;--surface-2: #1c2421;--surface-3: #25302b;--fg: #e6ece9;--muted: #9eaca5;--faint: #6e7c75;--line: #2a3430;--accent: #3FC9AE;--accent-2: #6FDCC5;--coral: #FF7A62;--saffron: #F6B43C;--accent-fg: #07130e;--accent-soft: #123530;--gold: #f0b54a;--crit: #ff8f84;--crit-soft: #3a1c19;--warn: #f2b65c;--warn-soft: #352611;--info: #8fc0ec;--info-soft: #172a3c;--ok: #3FC9AE;--ok-soft: #183328;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .4);--shadow: 0 1px 2px rgba(0, 0, 0, .35), 0 8px 24px -8px rgba(0, 0, 0, .5);--shadow-lg: 0 24px 64px -12px rgba(0, 0, 0, .7);color-scheme:dark}*{box-sizing:border-box}html,body{margin:0}body{background:var(--bg-grad),var(--bg);background-attachment:fixed;color:var(--fg);font:15px/1.55 var(--f-body);-webkit-font-smoothing:antialiased;transition:background-color .3s,color .3s}a{color:var(--accent);text-underline-offset:2px}h1,h2,h3{text-wrap:balance;margin:0}h1{font-family:var(--f-display);font-weight:600;font-size:clamp(1.6rem,2.4vw,2.05rem);line-height:1.15;letter-spacing:-.01em}h2{font-size:1.02rem;font-weight:650;letter-spacing:-.005em}h3{font-size:.95rem;font-weight:600}p{margin:0}.muted{color:var(--muted)}.small{font-size:.85rem}.prewrap{white-space:pre-wrap}.spacer{flex:1}.tabnum,.num{font-variant-numeric:tabular-nums}.eyebrow{font-family:var(--f-mono);font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-bottom:2px}.loading{padding:64px 16px;text-align:center;color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.icon{flex:none;display:block}kbd{font-family:var(--f-mono);font-size:.7rem;padding:1px 6px;border-radius:5px;border:1px solid var(--line);background:var(--surface);color:var(--muted);box-shadow:0 1px 0 var(--line)}::selection{background:var(--accent-soft)}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes pop{0%{opacity:0;transform:scale(.96) translateY(-6px)}to{opacity:1;transform:none}}@keyframes slideIn{0%{transform:translate(100%)}to{transform:none}}@keyframes slideOut{0%{transform:none}to{transform:translate(100%)}}@keyframes sheetUp{0%{transform:translateY(100%)}to{transform:none}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{box-shadow:0 0 color-mix(in srgb,var(--accent) 45%,transparent)}50%{box-shadow:0 0 0 6px transparent}}@keyframes growY{0%{transform:scaleY(0)}to{transform:scaleY(1)}}@keyframes draw{0%{stroke-dashoffset:48}to{stroke-dashoffset:0}}.shell{display:grid;grid-template-columns:var(--sidebar) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;overflow-y:auto;background:color-mix(in srgb,var(--surface) 82%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-right:1px solid var(--line);padding:18px 12px 14px;display:flex;flex-direction:column;gap:14px}.brand{display:flex;align-items:center;gap:10px;text-decoration:none;padding:2px 8px;color:var(--fg)}.brand-logo{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;color:#fff;background:linear-gradient(140deg,var(--accent-2),var(--accent));box-shadow:var(--shadow-sm);flex:none}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-mark{font-family:var(--f-display);font-weight:600;font-size:1.18rem;color:var(--fg)}.brand-sub{font-family:var(--f-mono);font-size:.66rem;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.search-trigger{display:flex;align-items:center;gap:8px;width:100%;background:var(--surface-2);border:1px solid var(--line);border-radius:10px;padding:8px 10px;color:var(--muted);font:inherit;font-size:.88rem;cursor:pointer;text-align:left;transition:border-color .2s,background .2s}.search-trigger:hover{border-color:var(--accent);background:var(--surface)}.search-trigger span{flex:1}.nav-group{display:flex;flex-direction:column;gap:2px;margin-bottom:8px}.nav-label{font-family:var(--f-mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:6px 10px 4px}.sidebar ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.nav-link{position:relative;display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border-radius:9px;color:var(--muted);text-decoration:none;font:inherit;font-weight:500;background:none;border:0;cursor:pointer;text-align:left;transition:background .18s,color .18s,transform .18s var(--ease)}.nav-link span:not(.badge){flex:1}.nav-link:hover{background:var(--surface-2);color:var(--fg)}.nav-link:hover .icon{transform:translate(1px)}.nav-link .icon{transition:transform .2s var(--ease)}.nav-link[aria-current=page]{background:var(--accent-soft);color:var(--accent);font-weight:600}.nav-link[aria-current=page]:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--accent);animation:fadeIn .3s}.sidebar-foot{margin-top:auto;display:flex;flex-direction:column;gap:2px;border-top:1px solid var(--line);padding-top:10px}.badge{min-width:20px;text-align:center;background:var(--crit);color:#fff;border-radius:999px;font-size:.7rem;font-weight:700;padding:1px 6px;font-variant-numeric:tabular-nums;animation:pop .3s var(--ease)}.badge-warn{background:var(--gold);color:#1a1205}.mode-note{font-size:.78rem;color:var(--warn);background:var(--warn-soft);padding:8px 10px;border-radius:9px;display:flex;gap:6px;align-items:flex-start;margin-bottom:6px}.mode-note .icon{margin-top:2px}.workspace{min-width:0;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:10px;padding:12px max(24px,env(safe-area-inset-right,0px)) 12px 28px;background:color-mix(in srgb,var(--bg) 78%,transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid transparent}.topbar-brand,.topbar-search,.topbar-theme{display:none}.main{padding:8px max(24px,env(safe-area-inset-right,0px)) 72px 28px;max-width:1220px;width:100%}.page{display:flex;flex-direction:column;gap:20px;animation:fadeUp .35s var(--ease)}.icon-btn{display:inline-grid;place-items:center;width:38px;height:38px;border-radius:10px;border:1px solid var(--line);background:var(--surface);color:var(--fg);cursor:pointer;transition:background .2s,transform .15s}.icon-btn:hover{background:var(--surface-2)}.icon-btn:active{transform:scale(.94)}.quick-add{position:relative}.click-away{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40}.menu{position:absolute;right:0;top:calc(100% + 8px);z-index:41;min-width:230px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow-lg);padding:6px;transform-origin:top right;animation:pop .18s var(--ease)}.menu-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 10px;border:0;background:none;color:var(--fg);font:inherit;border-radius:8px;cursor:pointer;text-align:left;animation:fadeUp .25s var(--ease) both;animation-delay:calc(var(--i) * 25ms)}.menu-item:hover,.menu-item:focus-visible{background:var(--surface-2)}.menu-item .icon{color:var(--accent)}.tabbar,.sheet-backdrop{display:none}@media (max-width: 900px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.topbar{padding:10px max(16px,env(safe-area-inset-right,0px)) 10px max(16px,env(safe-area-inset-left,0px));top:env(safe-area-inset-top,0px);border-bottom-color:var(--line)}.topbar-brand{display:flex;padding:0;gap:8px}.topbar-brand .brand-logo{width:30px;height:30px;border-radius:9px}.topbar-brand .brand-mark{font-size:1.05rem}.topbar-search{display:grid;place-items:center;width:38px;height:38px;padding:0}.topbar-search span,.topbar-search kbd{display:none}.topbar-theme{display:inline-grid}.hide-sm{display:none}.main{padding:16px max(16px,env(safe-area-inset-right,0px)) calc(96px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}.tabbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:35;background:color-mix(in srgb,var(--surface) 88%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--line);padding:6px max(8px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}.tab{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 0;font:inherit;font-size:.7rem;font-weight:600;color:var(--muted);text-decoration:none;background:none;border:0;cursor:pointer;border-radius:10px}.tab-icon{position:relative;display:grid;place-items:center;width:44px;height:28px;border-radius:999px;transition:background .25s var(--ease)}.tab-icon .badge{position:absolute;top:-4px;right:-2px;font-size:.62rem;padding:0 5px;min-width:16px}.tab[aria-current=page],.tab[aria-expanded=true]{color:var(--accent)}.tab[aria-current=page] .tab-icon,.tab[aria-expanded=true] .tab-icon{background:var(--accent-soft)}.sheet-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:45;background:#08100c66;animation:fadeIn .2s}.sheet{position:absolute;left:0;right:0;bottom:0;background:var(--surface);border-radius:20px 20px 0 0;padding:10px 16px calc(84px + env(safe-area-inset-bottom,0px));box-shadow:var(--shadow-lg);animation:sheetUp .32s var(--ease)}.sheet-grip{width:40px;height:4px;border-radius:4px;background:var(--line);margin:0 auto 14px}.sheet-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.sheet-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px;border-radius:14px;background:var(--surface-2);color:var(--fg);text-decoration:none;font:inherit;font-size:.82rem;font-weight:600;border:0;cursor:pointer;animation:fadeUp .3s var(--ease) both;animation-delay:calc(var(--i, 6) * 30ms)}.sheet-item .icon{color:var(--accent)}}.page-head{display:flex;flex-wrap:wrap;gap:12px 24px;align-items:flex-end;justify-content:space-between;padding-top:6px}.page-head-text{display:flex;flex-direction:column;gap:6px;min-width:0;max-width:72ch}.intro{color:var(--muted)}.page-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.crumb{font-size:.88rem;margin-bottom:-10px}.crumb a{text-decoration:none;display:inline-flex;gap:4px;align-items:center}.crumb a:hover{text-decoration:underline}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:14px;min-width:0;box-shadow:var(--shadow-sm)}.panel-head{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;justify-content:space-between}.banner{background:var(--info-soft);color:var(--fg);border-radius:var(--radius-sm);padding:12px 14px;border-left:3px solid var(--info);animation:fadeUp .3s var(--ease)}.banner-error{background:var(--crit-soft);border-left-color:var(--crit)}.empty{border:1.5px dashed var(--line);border-radius:var(--radius);padding:32px 20px;text-align:center;color:var(--muted);display:flex;flex-direction:column;gap:12px;align-items:center;background:color-mix(in srgb,var(--surface) 70%,transparent)}.row-gap{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.skeleton{display:flex;flex-direction:column;gap:16px;padding-top:8px}.sk{border-radius:12px;background:linear-gradient(90deg,var(--surface-2) 0,var(--surface-3) 50%,var(--surface-2) 100%);background-size:800px 100%;animation:shimmer 1.3s linear infinite}.sk-title{height:34px;width:40%}.sk-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.sk-card{height:96px}.sk-panel{height:320px}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.stat{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:16px 18px;display:flex;flex-direction:column;gap:4px;min-width:0;box-shadow:var(--shadow-sm);transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s;animation:fadeUp .4s var(--ease) both}.stats>:nth-child(2){animation-delay:40ms}.stats>:nth-child(3){animation-delay:80ms}.stats>:nth-child(4){animation-delay:.12s}.stats>:nth-child(5){animation-delay:.16s}.stats>:nth-child(6){animation-delay:.2s}.stat:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.stat:after{content:"";position:absolute;inset:auto 0 0 0;height:3px;background:var(--accent);opacity:0;transition:opacity .25s}.stat:hover:after{opacity:.6}.stat-label{font-family:var(--f-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.stat-value{font-size:1.55rem;font-weight:650;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;letter-spacing:-.01em}.stat-sub{font-size:.84rem;color:var(--muted)}.stat-warning:after,.stat-critical:after{opacity:.8}.stat-warning:after{background:var(--gold)}.stat-critical .stat-value{color:var(--crit)}.stat-critical:after{background:var(--crit)}.chip{display:inline-flex;align-items:center;gap:5px;font-size:.76rem;font-weight:650;padding:2px 9px;border-radius:999px;white-space:nowrap;line-height:1.55}.chip:before{content:"";width:6px;height:6px;border-radius:50%;background:currentColor;opacity:.8}.chip-critical{background:var(--crit-soft);color:var(--crit)}.chip-critical:before{animation:pulse 2s infinite}.chip-warning{background:var(--warn-soft);color:var(--warn)}.chip-info{background:var(--info-soft);color:var(--info)}.chip-ok{background:var(--ok-soft);color:var(--ok)}.hello{display:flex;flex-wrap:wrap;gap:16px;align-items:flex-end;justify-content:space-between;padding-top:6px}.hello-date{font-family:var(--f-mono);font-size:.74rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent)}.hello h1{margin-top:4px}.health{display:inline-flex;align-items:center;gap:8px;padding:8px 12px;border-radius:999px;background:var(--surface);border:1px solid var(--line);font-weight:600;font-size:.9rem;box-shadow:var(--shadow-sm)}.health-dot{width:10px;height:10px;border-radius:50%;background:var(--ok)}.health-dot.warning{background:var(--gold)}.health-dot.critical{background:var(--crit);animation:pulse 2s infinite}.quick{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px}.quick-btn{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:12px;border:1px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;font-weight:600;font-size:.9rem;cursor:pointer;text-align:left;transition:transform .2s var(--ease),box-shadow .2s,border-color .2s;animation:fadeUp .4s var(--ease) both;animation-delay:calc(var(--i) * 35ms)}.quick-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow);border-color:color-mix(in srgb,var(--accent) 50%,var(--line))}.quick-btn:active{transform:scale(.98)}.quick-ic{display:grid;place-items:center;width:32px;height:32px;border-radius:9px;background:var(--accent-soft);color:var(--accent);flex:none}.dash-grid{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);gap:20px;align-items:start}@media (max-width: 1080px){.dash-grid{grid-template-columns:minmax(0,1fr)}}.dash-col{display:flex;flex-direction:column;gap:20px;min-width:0}.filter-chips{display:flex;flex-wrap:wrap;gap:6px}.filter-chips button{font:inherit;font-size:.8rem;font-weight:600;padding:4px 10px;border-radius:999px;border:1px solid var(--line);background:var(--surface);color:var(--muted);cursor:pointer;transition:all .18s}.filter-chips button.on{background:var(--fg);color:var(--bg);border-color:var(--fg)}.filter-chips button .n{opacity:.7;margin-left:4px}.rent-chart{display:flex;flex-direction:column;gap:10px}.rent-chart svg{width:100%;height:auto;overflow:visible}.chart-legend{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:.82rem;color:var(--muted);align-items:center}.chart-legend .sw{display:inline-block;width:10px;height:10px;border-radius:3px;margin-right:4px;vertical-align:-1px}.sw-exp{background:var(--surface-3)}.chart-readout{margin-left:auto;color:var(--fg)}.chart-readout em{font-style:normal;font-weight:700}.chart-readout em.ok{color:var(--ok)}.chart-readout em.short{color:var(--warn)}.rent-chart .grid{stroke:var(--line);stroke-dasharray:3 4}.rent-chart .axis{fill:var(--muted);font-size:11px;font-family:var(--f-mono)}.bar{transform-box:fill-box;transform-origin:bottom;animation:growY .7s var(--ease) both;animation-delay:calc(var(--i) * 60ms);transition:opacity .2s}.bar-exp{fill:var(--surface-3)}.bar-group{cursor:pointer;outline:none}.bar-group:not(.on) .bar{opacity:.55}.ring-wrap{display:flex;flex-direction:column;align-items:center;gap:6px}.ring-track{fill:none;stroke:var(--surface-3);stroke-width:10}.ring-val{fill:none;stroke-width:10;stroke-linecap:round;transition:stroke-dashoffset 1s var(--ease)}.ring-ok{stroke:var(--ok)}.ring-warning{stroke:var(--gold)}.ring-critical{stroke:var(--crit)}.ring-num{font-size:24px;font-weight:700;fill:var(--fg);font-family:var(--f-body)}.ring-cap{font-size:9.5px;fill:var(--muted);font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.06em}.ring-sub{font-size:.84rem;color:var(--muted);text-align:center}.split{display:grid;grid-template-columns:auto minmax(0,1fr);gap:18px;align-items:center}@media (max-width: 520px){.split{grid-template-columns:minmax(0,1fr);justify-items:center}}.mini-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px;width:100%}.mini-list li{display:flex;justify-content:space-between;gap:10px;font-size:.88rem}.alerts{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.alert{animation:fadeUp .35s var(--ease) both;animation-delay:calc(var(--i, 0) * 35ms)}.alert a{display:grid;grid-template-columns:4px minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:11px 12px 11px 0;border-radius:10px;color:inherit;text-decoration:none;background:var(--surface-2);overflow:hidden;transition:transform .2s var(--ease),background .2s}.alert a:before{content:"";align-self:stretch;border-radius:0 3px 3px 0;background:var(--info)}.alert-critical a:before{background:var(--crit)}.alert-warning a:before{background:var(--gold)}.alert a:hover{transform:translate(3px);background:var(--surface-3)}.alert .chip{justify-self:end}.alert-text{display:flex;flex-direction:column;min-width:0}.alert-text strong{font-weight:600}.alert-text .muted{font-size:.86rem}.alert-go{color:var(--faint);transition:transform .2s var(--ease)}.alert a:hover .alert-go{transform:translate(3px);color:var(--accent)}@media (max-width: 520px){.alert a{grid-template-columns:4px minmax(0,1fr)}.alert .chip,.alert-go{display:none}}.all-clear{display:flex;flex-direction:column;align-items:center;gap:10px;padding:28px 10px;color:var(--muted)}.all-clear svg path{stroke-dasharray:48;animation:draw .8s var(--ease) both .2s}.plain-list{list-style:none;margin:0;padding:0}.plain-list li{display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:10px 0;border-bottom:1px solid var(--line)}.plain-list li:last-child{border-bottom:0}.list-end{margin-left:auto;font-variant-numeric:tabular-nums}button,.btn-primary,.btn-secondary,.btn-small{font:inherit;cursor:pointer}.btn-primary,.btn-secondary,.btn-danger,.btn-small{display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;padding:9px 15px;font-weight:600;text-decoration:none;border:1px solid transparent;white-space:nowrap;transition:transform .15s var(--ease),box-shadow .2s,background .2s,filter .2s}.btn-primary{background:linear-gradient(180deg,var(--accent-2),var(--accent));color:var(--accent-fg);box-shadow:0 1px #ffffff26 inset,0 4px 12px -4px color-mix(in srgb,var(--accent) 60%,transparent)}.btn-primary:hover{filter:brightness(1.06);transform:translateY(-1px);box-shadow:0 6px 18px -6px color-mix(in srgb,var(--accent) 70%,transparent)}.btn-secondary{background:var(--surface);color:var(--fg);border-color:var(--line);box-shadow:var(--shadow-sm)}.btn-secondary:hover{background:var(--surface-2);transform:translateY(-1px)}.btn-danger{background:var(--crit);color:#fff}.btn-small{padding:5px 11px;font-size:.84rem;background:var(--surface-2);color:var(--fg);border-color:var(--line);border-radius:8px}.btn-small:hover{background:var(--surface-3)}.btn-primary:active,.btn-secondary:active,.btn-small:active,.btn-danger:active{transform:scale(.97)}.btn-ghost{display:inline-flex;align-items:center;gap:6px;background:none;border:0;color:var(--muted);padding:8px 12px;border-radius:8px;font-weight:500}.btn-ghost:hover{background:var(--surface-2);color:var(--fg)}.danger-text{color:var(--crit)}.link{background:none;border:0;color:var(--accent);padding:0;text-decoration:underline}button:disabled{opacity:.55;cursor:default;transform:none!important}.spinner{width:16px;height:16px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:spin .7s linear infinite;display:inline-block}input,select,textarea{font:inherit;color:var(--fg);background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:9px 11px;width:100%;min-width:0;transition:border-color .18s,box-shadow .18s}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--accent) 35%,var(--line))}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 20%,transparent)}textarea{resize:vertical}input[type=checkbox],input[type=radio]{width:18px;height:18px;accent-color:var(--accent);padding:0;flex:none;box-shadow:none}.file-btn{position:relative;overflow:hidden}.file-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.segmented{display:inline-flex;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:var(--surface-2);padding:3px;gap:2px}.segmented button{border:0;background:none;padding:6px 12px;color:var(--muted);font-weight:600;border-radius:7px;font-size:.86rem;transition:background .2s var(--ease),color .2s,box-shadow .2s}.segmented button:hover{color:var(--fg)}.segmented button.on{background:var(--surface);color:var(--fg);box-shadow:var(--shadow-sm)}.table-block{display:flex;flex-direction:column;gap:12px;min-width:0}.toolbar{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.toolbar .search{width:240px;padding-left:34px;background:var(--surface) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%238a968f' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E") no-repeat 11px center}.toolbar select{width:auto;max-width:240px}.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-sm)}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th,td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--line);vertical-align:middle}th{font-family:var(--f-mono);font-size:.68rem;font-weight:500;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);background:var(--surface-2);white-space:nowrap;position:sticky;top:0}th button{background:none;border:0;padding:0;font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit}th button:hover{color:var(--fg)}tbody tr{cursor:pointer;transition:background .15s;animation:fadeIn .35s both}tbody tr:hover{background:color-mix(in srgb,var(--accent-soft) 45%,transparent)}tbody tr:last-child td{border-bottom:0}td[data-label=Ref]{white-space:nowrap;font-family:var(--f-mono);font-size:.85rem;color:var(--accent)}.num{text-align:right}.strong{font-weight:650}.detail-row,.detail-row:hover{background:var(--surface-2);cursor:default}.detail-row td{animation:fadeUp .3s var(--ease)}.statement{display:flex;flex-direction:column;gap:8px;padding:6px 0}.statement table{background:var(--surface);border:1px solid var(--line);border-radius:8px}.statement tbody tr{cursor:default}table.compact td{padding:7px 4px}table.compact tr{cursor:default}@media (max-width: 720px){.toolbar .search,.toolbar select{width:100%;max-width:none}.table-wrap:not(:has(.matrix)){border:0;background:none;box-shadow:none;overflow:visible}.table-wrap:not(:has(.matrix)) table,.table-wrap:not(:has(.matrix)) tbody,.table-wrap:not(:has(.matrix)) tr,.table-wrap:not(:has(.matrix)) td{display:block}.table-wrap:not(:has(.matrix)) thead{display:none}.table-wrap:not(:has(.matrix)) tbody{display:flex;flex-direction:column;gap:8px}.table-wrap:not(:has(.matrix)) tr{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:var(--shadow-sm)}.table-wrap:not(:has(.matrix)) td{border:0;padding:3px 0;display:flex;gap:12px;justify-content:space-between;align-items:center;text-align:right}.table-wrap:not(:has(.matrix)) td:before{content:attr(data-label);color:var(--muted);font-size:.82rem;text-align:left;flex:none}.table-wrap:not(:has(.matrix)) td:not([data-label]):before,.table-wrap:not(:has(.matrix)) td[data-label=""]:before{content:none}.detail-row td{display:block!important;text-align:left!important}.statement table,.statement tbody,.statement tr,.statement td,.statement thead{display:revert!important}.statement td:before{content:none!important}}.matrix td,.matrix th{white-space:nowrap}.cell-btn{background:none;border:0;padding:4px;margin:-4px;border-radius:8px;display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;color:inherit;transition:background .15s}.cell-btn:hover{background:var(--surface-2)}.cell-date{font-size:.78rem;color:var(--muted)}.matrix tbody tr{cursor:default}.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px 24px;margin:0}.facts dt{font-size:.78rem;color:var(--muted)}.facts dd{margin:2px 0 0;overflow-wrap:anywhere}.facts.single{grid-template-columns:minmax(0,1fr);gap:10px}.facts dd .chip{margin-left:6px}.cert-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px}.cert-card{display:flex;flex-direction:column;gap:7px;align-items:flex-start;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:14px;color:inherit;transition:transform .2s var(--ease),box-shadow .2s,border-color .2s}.cert-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow)}.cert-card.add{border-style:dashed;justify-content:center;color:var(--muted);background:transparent}.cert-type{font-weight:650}.rules summary{cursor:pointer;font-weight:600;list-style:none;display:flex;gap:8px;align-items:center}.rules summary::-webkit-details-marker{display:none}.rules summary:before{content:"›";font-size:1.3rem;line-height:1;transition:transform .2s var(--ease);color:var(--accent)}.rules[open] summary:before{transform:rotate(90deg)}.rules ul{margin:0;padding-left:20px;display:flex;flex-direction:column;gap:6px;max-width:80ch;animation:fadeUp .3s var(--ease)}.board{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(220px,1fr);gap:12px;overflow-x:auto;padding-bottom:10px;scroll-snap-type:x proximity}.column{background:var(--surface-2);border:1.5px dashed transparent;border-radius:var(--radius);padding:10px;display:flex;flex-direction:column;gap:8px;min-height:160px;scroll-snap-align:start;transition:background .2s,border-color .2s}.column.drop{background:var(--accent-soft);border-color:var(--accent)}.column h3{display:flex;justify-content:space-between;align-items:center;font-size:.82rem;padding:2px 4px}.column h3 .count{font-family:var(--f-mono);font-size:.72rem;background:var(--surface);border-radius:999px;padding:0 8px;color:var(--muted)}.card{display:flex;flex-direction:column;gap:6px;align-items:flex-start;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:12px;color:inherit;box-shadow:var(--shadow-sm);cursor:grab;transition:transform .2s var(--ease),box-shadow .2s,border-color .2s,opacity .2s;animation:fadeUp .3s var(--ease) both}.card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow)}.card.dragging{opacity:.4;transform:rotate(2deg) scale(.98)}.card-top{display:flex;justify-content:space-between;width:100%;gap:8px;align-items:center}.card-top .icon{color:var(--faint)}.card-tags{display:flex;flex-wrap:wrap;gap:4px}.drop-hint{font-size:.78rem;color:var(--faint);text-align:center;padding:10px 4px;border-radius:8px}.range{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.range input{width:auto}.summary-grid{display:flex;flex-direction:column;max-width:460px}.summary-line{display:flex;justify-content:space-between;padding:7px 0;border-bottom:1px solid var(--line);font-variant-numeric:tabular-nums}.summary-line.total{border-bottom:0;font-size:1.05rem}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#08100c6b;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);display:flex;justify-content:flex-end;animation:fadeIn .2s}.modal{background:var(--surface);width:min(640px,100%);height:100%;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;animation:slideIn .32s var(--ease)}.modal-backdrop.closing{animation:fadeIn .2s reverse forwards}.modal-backdrop.closing .modal{animation:slideOut .2s ease-in forwards}.modal-head,.modal-foot{display:flex;align-items:center;gap:8px;padding:16px 22px}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;padding-top:max(16px,env(safe-area-inset-top,0px))}.modal-head h2{font-family:var(--f-display);font-size:1.35rem;font-weight:600}.modal-foot{border-top:1px solid var(--line);flex-wrap:wrap;padding-bottom:max(16px,env(safe-area-inset-bottom,0px));background:var(--surface)}.modal-body{padding:8px 22px 22px;overflow-y:auto;flex:1;display:flex;flex-direction:column;gap:6px}fieldset{border:0;padding:0;margin:14px 0 0;min-width:0;animation:fadeUp .35s var(--ease) both}fieldset:nth-of-type(2){animation-delay:50ms}fieldset:nth-of-type(3){animation-delay:.1s}fieldset:nth-of-type(4){animation-delay:.15s}legend{font-family:var(--f-mono);font-size:.68rem;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);padding:0;margin-bottom:10px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.form-field{display:flex;flex-direction:column;gap:5px;min-width:0}.form-field.wide{grid-column:1 / -1}.form-field.is-bool{justify-content:center}.form-field label{font-size:.86rem;font-weight:550}.check{display:flex;gap:9px;align-items:center;font-weight:500;cursor:pointer}.req{color:var(--crit)}.help{color:var(--muted);font-size:.78rem}.form-error{color:var(--crit);background:var(--crit-soft);padding:9px 12px;margin:0 22px;border-radius:8px;animation:fadeUp .25s var(--ease)}.form-error.inline{margin:0}.form-ok{color:var(--ok);background:var(--ok-soft);padding:9px 12px;border-radius:8px}@media (max-width: 600px){.form-grid{grid-template-columns:minmax(0,1fr)}.modal-backdrop{align-items:flex-end}.modal{height:94%;border-radius:18px 18px 0 0;animation:sheetUp .34s var(--ease)}.modal-backdrop.closing .modal{animation:sheetUp .2s ease-in reverse forwards}}.toaster{position:fixed;z-index:70;right:max(16px,env(safe-area-inset-right,0px));bottom:max(20px,env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:8px;align-items:flex-end;pointer-events:none}.toast-item{pointer-events:auto;display:flex;align-items:center;gap:10px;background:var(--fg);color:var(--bg);padding:10px 10px 10px 12px;border-radius:12px;box-shadow:var(--shadow-lg);font-weight:550;font-size:.9rem;max-width:min(420px,calc(100vw - 32px));animation:pop .28s var(--ease)}.toast-item.leaving{animation:fadeIn .2s reverse forwards}.toast-icon{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--accent);color:var(--accent-fg);flex:none}.toast-error .toast-icon{background:var(--crit);color:#fff}.toast-info .toast-icon{background:var(--info);color:#fff}.toast-x{background:none;border:0;color:inherit;opacity:.6;padding:4px;display:grid;place-items:center;border-radius:6px}.toast-x:hover{opacity:1}@media (max-width: 900px){.toaster{bottom:calc(84px + env(safe-area-inset-bottom,0px));left:16px;right:16px;align-items:stretch}}.toast{position:fixed;bottom:max(20px,env(safe-area-inset-bottom,0px));left:50%;transform:translate(-50%);background:var(--fg);color:var(--bg);padding:10px 16px;border-radius:10px;z-index:60;max-width:calc(100% - 32px);animation:pop .25s var(--ease)}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#08100c73;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);display:flex;justify-content:center;align-items:flex-start;padding:12vh 16px 16px;animation:fadeIn .15s}.palette{width:min(640px,100%);background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);overflow:hidden;display:flex;flex-direction:column;max-height:70vh;animation:pop .22s var(--ease)}.palette-input{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--muted)}.palette-input input{border:0;padding:4px 0;font-size:1.05rem;background:none;box-shadow:none!important}.palette-list{list-style:none;margin:0;padding:6px;overflow-y:auto}.palette-group{font-family:var(--f-mono);font-size:.66rem;text-transform:uppercase;letter-spacing:.08em;color:var(--faint);padding:10px 10px 4px}.palette-item{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:9px;cursor:pointer}.palette-item.on{background:var(--accent-soft)}.palette-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:var(--surface-2);color:var(--accent);flex:none}.palette-item.on .palette-icon{background:var(--surface)}.palette-label{font-weight:550;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.palette-hint{color:var(--muted);font-size:.82rem;margin-left:auto;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:45%}.palette-go{color:var(--accent)}.palette-empty{padding:24px;text-align:center;color:var(--muted)}.palette-foot{display:flex;flex-wrap:wrap;gap:14px;padding:9px 14px;border-top:1px solid var(--line);font-size:.76rem;color:var(--muted);background:var(--surface-2)}.palette-foot span{display:inline-flex;gap:3px;align-items:center}@media (max-width: 600px){.palette-backdrop{padding-top:16px}.palette-hint,.palette-foot{display:none}}.stepper{list-style:none;margin:0;padding:14px 16px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm);position:relative}.stepper li{display:flex;flex-direction:column;align-items:center;gap:6px;font-size:.78rem;color:var(--muted);text-align:center;position:relative;min-width:0}.stepper li:after{content:"";position:absolute;top:6px;left:calc(50% + 10px);right:calc(-50% + 10px);height:2px;background:var(--line)}.stepper li:last-child:after{display:none}.stepper li.done:after{background:var(--accent);animation:fadeIn .6s}.stepper .dot{width:14px;height:14px;border-radius:50%;border:2px solid var(--line);background:var(--surface);flex:none;position:relative;z-index:1;transition:all .3s var(--ease)}.stepper li.done{color:var(--fg)}.stepper li.done .dot{background:var(--accent);border-color:var(--accent)}.stepper li.current{color:var(--accent);font-weight:650}.stepper li.current .dot{border-color:var(--accent);background:var(--accent-soft);animation:pulse 2s infinite}.stepper li.muted-step{opacity:.5}@media (max-width: 640px){.stepper li span:not(.dot){font-size:.66rem}.stepper{padding:12px 8px}}.case-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:20px;align-items:start}.case-main,.case-side{display:flex;flex-direction:column;gap:20px;min-width:0}.case-side{position:sticky;top:76px}@media (max-width: 1000px){.case-grid{grid-template-columns:minmax(0,1fr)}.case-side{position:static}}.action-form{border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:12px;animation:fadeUp .3s var(--ease)}.timeline{list-style:none;margin:0;padding:0 0 0 18px;border-left:2px solid var(--line);display:flex;flex-direction:column;gap:16px}.tl{position:relative;display:flex;flex-direction:column;gap:5px;min-width:0;animation:fadeUp .35s var(--ease) both}.tl:before{content:"";position:absolute;left:-26px;top:4px;width:14px;height:14px;border-radius:50%;background:var(--surface);border:2px solid var(--faint)}.tl-tenant:before{border-color:var(--info);background:var(--info-soft)}.tl-landlord:before{border-color:var(--accent);background:var(--accent-soft)}.tl:last-child:before{box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent)}.tl-meta{display:flex;flex-wrap:wrap;gap:4px 10px;align-items:baseline;font-size:.86rem}.tl-body{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-2);border-radius:4px 12px 12px;padding:10px 12px}.tl-tenant .tl-body{background:var(--info-soft)}.vis{font-size:.66rem;font-family:var(--f-mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:1px 6px;border-radius:4px;border:1px solid var(--line)}.vis-on{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,transparent)}.thumbs{display:flex;flex-wrap:wrap;gap:6px}.thumbs img,.thumb-ph{width:92px;height:92px;object-fit:cover;border-radius:10px;border:1px solid var(--line);display:grid;place-items:center;font-size:.75rem;color:var(--muted);transition:transform .2s var(--ease)}.thumbs a:hover img{transform:scale(1.04)}.composer{display:flex;flex-direction:column;gap:10px;border-top:1px solid var(--line);padding-top:16px}.stars{color:var(--gold);letter-spacing:2px}.portal-box{display:flex;flex-direction:column;gap:10px}.portal-head{display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline}.copy-row{display:flex;gap:6px;flex-wrap:wrap}.copy-row input{flex:1 1 220px;font-family:var(--f-mono);font-size:.78rem}.qr{margin:0;display:flex;flex-direction:column;gap:6px;align-items:flex-start;animation:pop .3s var(--ease)}.qr img{background:#fff;border-radius:10px;border:1px solid var(--line)}.auth{min-height:100vh;display:grid;place-items:center;padding:24px 16px}.auth-card{width:min(400px,100%);background:var(--surface);border:1px solid var(--line);border-radius:18px;padding:32px 26px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-lg);animation:pop .4s var(--ease)}.auth-card .brand-mark{font-size:1rem;color:var(--accent)}.auth-card h1{font-size:1.6rem;margin-bottom:8px}.auth-card label{font-size:.86rem;font-weight:550;margin-top:4px}.auth-card .btn-primary{margin-top:12px;padding:11px}.auth-links{display:flex;flex-wrap:wrap;gap:6px 16px;margin-top:8px;font-size:.86rem}.portal{max-width:640px;margin:0 auto;padding:0 max(16px,env(safe-area-inset-right,0px)) 56px max(16px,env(safe-area-inset-left,0px));display:flex;flex-direction:column;gap:16px}.portal-hero{margin:0 calc(-1*max(16px,env(safe-area-inset-left,0px)));padding:28px max(20px,env(safe-area-inset-left,0px)) 22px;background:linear-gradient(150deg,#2b8a69,#17573f);color:#fff;border-radius:0 0 26px 26px;display:flex;flex-direction:column;gap:4px;position:relative;overflow:hidden;animation:fadeIn .4s}.portal-hero:after{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:#ffffff14}.portal-hero .eyebrow{color:#fffc}.portal-hero h1{color:#fff}.portal-hero p{color:#ffffffd9}.portal-top{display:flex;flex-direction:column;gap:4px}.portal-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow);animation:fadeUp .35s var(--ease)}.emergency{background:var(--crit-soft);border-radius:14px;padding:14px 16px;display:flex;flex-direction:column;gap:6px;font-size:.92rem}.emergency summary{cursor:pointer;font-weight:700;color:var(--crit);list-style:none;display:flex;align-items:center;gap:8px}.emergency summary::-webkit-details-marker{display:none}.emergency>strong{color:var(--crit)}.receipt{background:var(--ok-soft);color:var(--fg);border-radius:14px;padding:16px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 14px;align-items:center;animation:pop .4s var(--ease)}.receipt svg{grid-row:span 2}.receipt svg circle{fill:var(--accent)}.receipt svg path{stroke-dasharray:48;animation:draw .6s var(--ease) both .15s}.btn-primary.big{padding:15px;font-size:1.04rem;border-radius:14px}.nudge{background:var(--warn-soft);color:var(--warn);border-radius:12px;padding:11px 14px;font-weight:650;display:flex;align-items:center;gap:8px;animation:fadeUp .3s var(--ease)}.segmented.full{display:flex}.segmented.full button{flex:1;padding:10px 6px}.type-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.type-card{display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 6px;border-radius:12px;border:1.5px solid var(--line);background:var(--surface);color:var(--fg);font:inherit;font-size:.82rem;font-weight:600;cursor:pointer;text-align:center;transition:all .2s var(--ease)}.type-card .icon{color:var(--muted)}.type-card[aria-checked=true]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);transform:translateY(-1px)}.type-card[aria-checked=true] .icon{color:var(--accent)}.radios{display:flex;flex-direction:column;gap:8px}.pri-option{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border-radius:10px;border:1.5px solid var(--line);cursor:pointer;transition:all .18s}.pri-option:has(input:checked){border-color:var(--accent);background:var(--accent-soft)}.pri-option.emergency-opt:has(input:checked){border-color:var(--crit);background:var(--crit-soft)}.pri-option input{margin-top:2px}.pri-option strong{display:block}.warn-box{background:var(--warn-soft);color:var(--warn);padding:9px 12px;border-radius:9px;font-weight:600;animation:fadeUp .25s var(--ease)}.photo-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.photo-prev{width:56px;height:56px;border-radius:10px;object-fit:cover;border:1px solid var(--line);animation:pop .25s var(--ease)}.portal-list{display:flex;flex-direction:column;gap:10px}.portal-list h2{font-family:var(--f-display);font-size:1.25rem;font-weight:600;margin-top:8px}.req-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;color:var(--fg);box-shadow:var(--shadow-sm);transition:box-shadow .25s,border-color .25s;animation:fadeUp .35s var(--ease) both}.req-card:hover{box-shadow:var(--shadow)}.req-attn{border-color:var(--gold);box-shadow:0 0 0 3px color-mix(in srgb,var(--gold) 20%,transparent)}.req-head{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;align-items:center;text-align:left;background:none;border:0;padding:16px;color:inherit}.req-ref{font-family:var(--f-mono);font-size:.74rem;color:var(--muted);grid-column:1 / -1}.req-title{font-weight:650;overflow-wrap:anywhere}.req-status{font-size:.76rem;font-weight:650;padding:3px 10px;border-radius:999px;background:var(--info-soft);color:var(--info);white-space:nowrap}.st-awaiting-tenant-confirmation{background:var(--warn-soft);color:var(--warn)}.st-closed{background:var(--ok-soft);color:var(--ok)}.st-cancelled{background:var(--surface-2);color:var(--muted)}.req-track{grid-column:1 / -1;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;margin-top:8px}.req-track span{height:5px;border-radius:4px;background:var(--surface-3);position:relative;overflow:hidden}.req-track span.on:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:var(--accent);transform-origin:left;animation:growX .6s var(--ease) both;animation-delay:calc(var(--i) * 90ms)}@keyframes growX{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.req-track-labels{grid-column:1 / -1;display:flex;justify-content:space-between;font-size:.68rem;color:var(--muted)}.req-body{padding:0 16px 16px;display:flex;flex-direction:column;gap:14px;animation:fadeUp .3s var(--ease)}.timeline.compact .tl-body{font-size:.92rem}.confirm-box{background:var(--surface-2);border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:10px}.star-input{display:flex;gap:4px}.star-input button{background:none;border:0;font-size:2rem;line-height:1;color:var(--surface-3);padding:2px;transition:transform .15s var(--ease),color .15s}.star-input button:hover{transform:scale(1.15)}.star-input button.on{color:var(--gold);animation:pop .25s var(--ease)}.reply{display:flex;flex-direction:column;gap:8px}.portal-foot{text-align:center}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-delay:0ms!important;transition-duration:.001ms!important}}.rules:not([open]){gap:0;padding-block:16px}:root{--c: var(--accent)}.tint{background:color-mix(in srgb,var(--c) 14%,var(--surface));color:color-mix(in srgb,var(--c) 78%,var(--fg))}.logo{display:inline-flex;align-items:center;gap:10px}.logo-mark{flex:none;display:block;border-radius:26%;box-shadow:0 4px 14px -6px #0b6e6399}.logo-mark .logo-sun{transform-origin:51.5px 12.5px;animation:sunrise 1.1s var(--ease) both .2s}@keyframes sunrise{0%{transform:translateY(10px) scale(.4);opacity:0}to{transform:none;opacity:1}}.logo-text{display:flex;flex-direction:column;line-height:1.1}.logo-word{font-family:var(--f-display);font-weight:650;font-size:1.2rem;color:var(--fg);letter-spacing:-.01em}.logo-tag{font-family:var(--f-body);font-weight:600;font-size:.64rem;letter-spacing:.24em;text-transform:uppercase;color:var(--coral);margin-top:2px}.brand{padding:4px 6px}.brand:hover .logo-mark{transform:rotate(-4deg) scale(1.04)}.logo-mark{transition:transform .3s var(--ease)}.legal{font-size:.7rem;color:var(--faint);padding:6px 10px 0}.sidebar{background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 6%,var(--surface)) 0%,var(--surface) 40%)}.nav-ic{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;flex:none;background:color-mix(in srgb,var(--c) 13%,var(--surface));color:color-mix(in srgb,var(--c) 82%,var(--fg));transition:transform .25s var(--ease),background .2s}.nav-link .icon{transition:none}.nav-link:hover .nav-ic{transform:scale(1.08) rotate(-3deg)}.nav-link[aria-current=page]{background:color-mix(in srgb,var(--c) 12%,var(--surface));color:color-mix(in srgb,var(--c) 80%,var(--fg))}.nav-link[aria-current=page]:before{background:var(--c)}.nav-link[aria-current=page] .nav-ic{background:var(--c);color:#fff;box-shadow:0 4px 10px -4px var(--c)}.search-trigger:hover{border-color:var(--accent)}.topbar-section{display:inline-flex;align-items:center;gap:8px;font-weight:650;font-size:.95rem;color:color-mix(in srgb,var(--c) 80%,var(--fg));animation:fadeUp .3s var(--ease)}.topbar-section .nav-ic{width:26px;height:26px}.topbar-word{font-family:var(--f-display);font-weight:650;font-size:1.05rem;color:var(--fg)}@media (max-width: 900px){.topbar-section{display:none}}.sec-eyebrow{display:inline-flex;align-items:center;gap:6px;color:color-mix(in srgb,var(--c) 80%,var(--fg))}.sec-ic{display:grid;place-items:center;width:20px;height:20px;border-radius:6px;background:var(--c);color:#fff}.sec-badge{display:grid;place-items:center;width:44px;height:44px;border-radius:13px;background:linear-gradient(140deg,color-mix(in srgb,var(--c) 75%,white),var(--c));color:#fff;box-shadow:0 8px 20px -10px var(--c);margin-bottom:4px;animation:pop .4s var(--ease)}.page-head h1{position:relative}.page-head h1:after{content:"";display:block;width:44px;height:4px;border-radius:4px;margin-top:8px;background:linear-gradient(90deg,var(--c),color-mix(in srgb,var(--c) 30%,var(--saffron)))}.panel{border-top:3px solid color-mix(in srgb,var(--c) 55%,var(--line))}.segmented button.on{color:color-mix(in srgb,var(--c) 80%,var(--fg))}.toolbar .btn-primary,.page-actions .btn-primary{background:linear-gradient(180deg,color-mix(in srgb,var(--c) 84%,black),color-mix(in srgb,var(--c) 68%,black));box-shadow:0 4px 12px -4px color-mix(in srgb,var(--c) 70%,transparent);color:#fff}tbody tr:hover{background:color-mix(in srgb,var(--c) 7%,var(--surface))}th{border-bottom:2px solid color-mix(in srgb,var(--c) 35%,var(--line))}input:focus,select:focus,textarea:focus{border-color:var(--c);box-shadow:0 0 0 3px color-mix(in srgb,var(--c) 22%,transparent)}.stat-top{display:flex;align-items:center;justify-content:space-between;gap:8px}.stat-ic{display:grid;place-items:center;width:32px;height:32px;border-radius:10px;background:color-mix(in srgb,var(--c) 14%,var(--surface));color:color-mix(in srgb,var(--c) 82%,var(--fg));transition:transform .3s var(--ease)}.stat:hover .stat-ic{transform:rotate(-8deg) scale(1.1)}.stat:after{background:var(--c)}.stat-colored:before{content:"";position:absolute;right:-30px;top:-30px;width:90px;height:90px;border-radius:50%;background:radial-gradient(circle,color-mix(in srgb,var(--c) 16%,transparent),transparent 70%);pointer-events:none}.stat-warning .stat-value{color:var(--warn)}.quick-ic{background:linear-gradient(140deg,color-mix(in srgb,var(--c) 70%,white),var(--c));color:#fff;box-shadow:0 6px 14px -8px var(--c)}.quick-btn:hover{border-color:color-mix(in srgb,var(--c) 55%,var(--line))}.quick-btn:after{content:"→";margin-left:auto;color:color-mix(in srgb,var(--c) 80%,var(--fg));opacity:0;transform:translate(-6px);transition:all .25s var(--ease)}.quick-btn:hover:after{opacity:1;transform:none}.menu-item .icon{color:var(--c)}.palette-icon{background:color-mix(in srgb,var(--c, var(--accent)) 14%,var(--surface));color:color-mix(in srgb,var(--c, var(--accent)) 82%,var(--fg))}.palette-item.on{background:color-mix(in srgb,var(--accent) 10%,var(--surface))}@media (max-width: 900px){.tab[aria-current=page]{color:color-mix(in srgb,var(--c) 82%,var(--fg))}.tab[aria-current=page] .tab-icon{background:color-mix(in srgb,var(--c) 16%,var(--surface))}.sheet-item .icon{color:var(--c)}.sheet-item{background:color-mix(in srgb,var(--c) 9%,var(--surface))}}.area-tag{justify-self:end;font-size:.74rem;font-weight:700;padding:3px 9px;border-radius:999px;white-space:nowrap;background:color-mix(in srgb,var(--c) 15%,var(--surface));color:color-mix(in srgb,var(--c) 82%,var(--fg))}.filter-chips button{border-color:color-mix(in srgb,var(--c) 30%,var(--line))}.filter-chips button.on{background:color-mix(in srgb,var(--c) 72%,black);border-color:transparent;color:#fff}.hello h1{background:linear-gradient(90deg,var(--fg),color-mix(in srgb,var(--accent) 80%,var(--fg)));-webkit-background-clip:text;background-clip:text;color:transparent}.hello-date{color:var(--coral)}.bar-exp{fill:color-mix(in srgb,var(--saffron) 35%,var(--surface-2))}.bar-rec{fill:var(--accent)}.sw-exp{background:color-mix(in srgb,var(--saffron) 45%,var(--surface-2))}.sw-rec{background:var(--accent)}.chip-info{background:color-mix(in srgb,#2F7DE1 14%,var(--surface));color:color-mix(in srgb,#2F7DE1 80%,var(--fg))}.auth{position:relative;overflow:hidden}.auth-art{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.blob{position:absolute;border-radius:50%;filter:blur(2px);opacity:.9;animation:float 12s ease-in-out infinite}.auth-art .b1{width:420px;height:420px;left:-120px;top:-120px;background:radial-gradient(circle at 30% 30%,#14907f,#0b6e63 70%);opacity:.25}.auth-art .b2{width:300px;height:300px;right:-80px;bottom:-60px;background:radial-gradient(circle,#F2644B,transparent 70%);opacity:.35;animation-delay:-4s}.auth-art .b3{width:160px;height:160px;right:18%;top:12%;background:radial-gradient(circle,#F6B43C,transparent 70%);opacity:.45;animation-delay:-8s}@keyframes float{0%,to{transform:translate(0)}50%{transform:translate(14px,-18px)}}.auth-card{position:relative;z-index:1;border-top:4px solid var(--accent)}.auth-logo{margin-bottom:10px}.portal-hero{background:linear-gradient(150deg,#14907f,#0b6e63 55%,#07443d);padding-top:20px}.portal-hero:after{display:none}.portal-hero .blob.b1{width:220px;height:220px;right:-70px;top:-80px;background:radial-gradient(circle,rgba(246,180,60,.55),transparent 70%)}.portal-hero .blob.b2{width:180px;height:180px;left:-60px;bottom:-90px;background:radial-gradient(circle,rgba(242,100,75,.45),transparent 70%);animation-delay:-6s}.portal-brand{position:relative;display:flex;align-items:center;gap:10px;margin-bottom:14px}.portal-brand .logo-mark{box-shadow:0 0 0 2px #ffffff40}.portal-brand span{display:flex;flex-direction:column;line-height:1.15}.portal-brand strong{font-family:var(--f-display);font-size:1.05rem}.portal-brand small{font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:#ffd58a}.portal-hero h1,.portal-hero p{position:relative}.type-ic{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:color-mix(in srgb,var(--c) 14%,var(--surface));color:color-mix(in srgb,var(--c) 85%,var(--fg));transition:all .25s var(--ease)}.type-card[aria-checked=true]{border-color:var(--c);background:color-mix(in srgb,var(--c) 9%,var(--surface));color:color-mix(in srgb,var(--c) 85%,var(--fg))}.type-card[aria-checked=true] .type-ic{background:var(--c);color:#fff;transform:scale(1.08)}.req-track span.on:after{background:linear-gradient(90deg,#14907f,#f6b43c)}.portal-foot{display:flex;align-items:center;justify-content:center;gap:8px}.portal-foot .logo-mark{box-shadow:none}.btn-primary.big{background:linear-gradient(135deg,#f2644b,#e04e8a);color:#fff;box-shadow:0 10px 24px -10px #f2644b}.nav-link span.nav-ic{flex:0 0 28px}h1{font-weight:600;letter-spacing:-.025em}h2{font-family:var(--f-display);font-weight:600;letter-spacing:-.01em}.logo-word,.topbar-word,.portal-brand strong,.stat-value{font-family:var(--f-display);font-weight:600;letter-spacing:-.02em}.stat-label,.nav-label,th,legend,.palette-group,.eyebrow,.hello-date,.ring-cap,.vis{letter-spacing:.06em;font-weight:600}.req-ref,td[data-label=Ref],.copy-row input{font-family:var(--f-code)}.modal-head h2,.portal-list h2{font-family:var(--f-display);font-weight:600}.stars-row{display:inline-flex;align-items:center;gap:2px;vertical-align:middle}.star .star-empty{fill:color-mix(in srgb,var(--saffron) 22%,var(--surface-3))}.star .star-full{fill:var(--saffron)}.stars-num{margin-left:6px;font-weight:700;font-family:var(--f-display)}.stat-value .stars-row{gap:3px}.star-input-row{display:inline-flex;align-items:center;gap:12px;flex-wrap:wrap}.star-input{display:inline-flex;gap:2px}.star-input button{background:none;border:0;padding:3px;line-height:0;border-radius:8px;cursor:pointer;transition:transform .15s var(--ease)}.star-input button svg path{fill:color-mix(in srgb,var(--saffron) 18%,var(--surface-3));transition:fill .15s}.star-input button.on svg path{fill:var(--saffron)}.star-input button:hover{transform:scale(1.18) rotate(-6deg)}.star-input button.on{animation:pop .25s var(--ease)}.star-word{font-size:.86rem;font-weight:600;color:var(--muted);min-width:7em}.tl-body .stars-row{margin-bottom:2px}.file-field{display:flex;flex-direction:column;gap:8px;padding:12px;border:1.5px dashed var(--line);border-radius:12px;background:var(--surface-2)}.file-chip{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;font-weight:600;overflow-wrap:anywhere}.file-chip small{color:var(--accent);font-weight:600}.file-chip.new{color:var(--fg)}.file-ic{display:inline-grid;place-items:center;min-width:34px;height:22px;padding:0 5px;border-radius:5px;background:var(--coral);color:#fff;font-size:.66rem;font-weight:800;letter-spacing:.04em}.icon.flip{transform:rotate(180deg)}.has-file{display:inline-flex;margin-left:6px;color:var(--accent);vertical-align:-1px}.cert-file{display:inline-flex;align-items:center;gap:5px;font-size:.8rem;font-weight:600;color:var(--accent);cursor:pointer;padding:3px 8px;border-radius:6px;background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.cert-file:hover{background:color-mix(in srgb,var(--accent) 18%,var(--surface))}.cert-file.missing{color:var(--muted);background:var(--surface-2);cursor:default}.access{display:flex;flex-direction:column;gap:14px;border-top:1px solid var(--line);padding-top:16px}.access-head{display:flex;gap:12px;align-items:flex-start}.access-ic{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#7b5cf0;color:#fff;flex:none;box-shadow:0 6px 14px -8px #7b5cf0}.access-head h3{font-family:var(--f-display)}.access-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.access-list li{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:6px 12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);animation:fadeUp .3s var(--ease)}.access-avatar{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:linear-gradient(140deg,#9c85f5,#7b5cf0);color:#fff;font-weight:700;font-family:var(--f-display)}.access-who{display:flex;flex-direction:column;min-width:0}.access-who>*{overflow-wrap:anywhere}.access-status{font-size:.74rem;font-weight:700;padding:3px 10px;border-radius:999px;background:var(--info-soft);color:var(--info);white-space:nowrap}.access-status.st-active{background:var(--ok-soft);color:var(--ok)}.access-status.st-disabled{background:var(--crit-soft);color:var(--crit)}.access-actions{grid-column:2 / -1;display:flex;flex-wrap:wrap;gap:6px}.access-form{display:flex;flex-direction:column;gap:10px;padding:14px;border-radius:12px;background:color-mix(in srgb,#7B5CF0 6%,var(--surface));border:1px solid color-mix(in srgb,#7B5CF0 25%,var(--line));animation:fadeUp .3s var(--ease)}.access-form .btn-primary{background:linear-gradient(180deg,#8a6ef2,#6a4be0);color:#fff}.link-fallback{border-top:1px dashed var(--line);padding-top:12px}.link-fallback summary{cursor:pointer;font-size:.88rem;font-weight:600;color:var(--muted)}.link-fallback[open] summary{margin-bottom:12px}@media (max-width: 520px){.access-list li{grid-template-columns:auto minmax(0,1fr)}.access-status{grid-column:2;justify-self:start}.access-actions{grid-column:1 / -1}}.hero-signout{margin-left:auto;display:inline-flex;align-items:center;gap:6px;background:#ffffff24;border:1px solid rgba(255,255,255,.25);color:#fff;padding:6px 12px;border-radius:999px;font:inherit;font-size:.8rem;font-weight:600;cursor:pointer}.hero-signout:hover{background:#ffffff38}.portal-brand{width:100%}.hero-acct{display:inline-flex;align-items:center;gap:6px;font-size:.8rem;opacity:.85;margin-top:4px}.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.home-card{display:flex;gap:12px;align-items:flex-start;padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-sm);animation:fadeUp .35s var(--ease) both}.home-ic{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:var(--c);color:#fff;flex:none;box-shadow:0 6px 14px -8px var(--c)}.home-card dl{margin:0;display:flex;flex-direction:column;gap:8px}.home-card dt{font-size:.76rem;color:var(--muted)}.home-card dd{margin:0;font-weight:600}.certs{display:flex;flex-direction:column;gap:8px;flex:1;min-width:0}.cert-line{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:8px;border-top:1px solid var(--line)}.cert-line>span{display:flex;flex-direction:column;min-width:0}.auth-form{display:flex;flex-direction:column;gap:10px}.legend-count{margin-left:10px;font-family:var(--f-body);text-transform:none;letter-spacing:0;font-weight:500;color:var(--muted);font-size:.75rem}.docs-head{display:flex;align-items:center;gap:12px;margin:18px 0 10px;flex-wrap:wrap}.docs-head h3{margin:0;font-size:1rem}.docs-meter{flex:1;min-width:120px;max-width:220px;height:8px;border-radius:99px;background:var(--line);overflow:hidden}.docs-meter>span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--c, #7B5CF0),#14907F);transition:width .5s cubic-bezier(.2,.8,.2,1)}.doc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px}.doc-item{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-align:left;font:inherit;color:inherit;cursor:pointer;transition:transform .15s,border-color .15s,box-shadow .15s}.doc-item:hover{transform:translateY(-1px);border-color:var(--c, #7B5CF0);box-shadow:0 4px 14px #0000000f}.doc-item .doc-ic{flex:0 0 30px;height:30px;border-radius:9px;display:grid;place-items:center;font-size:.62rem;font-weight:700;letter-spacing:.03em}.doc-item.has .doc-ic{background:color-mix(in srgb,#4E9A35 16%,transparent);color:#3c7d28}.doc-item.missing .doc-ic{background:color-mix(in srgb,#F2644B 14%,transparent);color:#c9432c}.doc-item.optional .doc-ic{background:var(--line);color:var(--muted)}.doc-item span.doc-txt{display:flex;flex-direction:column;min-width:0}.doc-item span.doc-txt strong{font-size:.86rem;font-weight:600}.doc-item span.doc-txt small{color:var(--muted);font-size:.75rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insp-card{display:grid;gap:10px;padding:14px;border:1px solid var(--line);border-left:4px solid #4E9A35;border-radius:12px;background:var(--surface)}.insp-card+.insp-card{margin-top:10px}.insp-top{display:flex;gap:12px;align-items:baseline;flex-wrap:wrap}.insp-top .when{font-family:var(--f-display);font-weight:600;font-size:1.02rem}.insp-top .actions{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap}.notice-steps{display:flex;flex-wrap:wrap;gap:6px}.notice-step{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;font-size:.76rem;border:1px solid var(--line);background:var(--bg)}.notice-step:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--muted)}.notice-step.sent:before{background:#4e9a35}.notice-step.scheduled:before{background:#2f7de1}.notice-step.due:before{background:#f6b43c}.notice-step.skipped{opacity:.6;text-decoration:line-through}.visit-card{display:flex;gap:14px;align-items:flex-start;border-left:4px solid #4E9A35}.visit-card h2{margin:2px 0 4px;font-size:1.1rem}.visit-card .btn-small{margin-top:8px}.send-to{display:flex;gap:8px;align-items:center;padding:10px 12px;border-radius:10px;background:var(--surface-2);font-size:.9rem;margin:6px 0 4px}.btn-primary-soft{background:color-mix(in srgb,var(--c, var(--accent)) 14%,var(--surface));color:var(--fg);border-color:color-mix(in srgb,var(--c, var(--accent)) 35%,transparent);display:inline-flex;align-items:center;gap:6px}.btn-primary-soft:hover{background:color-mix(in srgb,var(--c, var(--accent)) 22%,var(--surface))}.plain-list .list-end{display:inline-flex;gap:8px;align-items:center;flex-wrap:wrap;justify-content:flex-end}.review-row{gap:10px}.panel.reminders{border-top-color:#f2644b}.rent-balance{display:flex;flex-direction:column;gap:2px}.rent-balance>span:first-child{font-family:var(--f-display);font-weight:600;font-size:1.4rem}.rent-balance .owed{color:var(--crit)}.rent-balance .clear{color:var(--ok)}.mini-statement{width:100%;border-collapse:collapse;font-size:.8rem;margin-top:6px}.mini-statement th,.mini-statement td{padding:5px 4px;border-bottom:1px solid var(--line);text-align:left}.mini-statement .num{text-align:right;white-space:nowrap}.moveout{border-top-color:#e04e8a}.moveout-steps{list-style:none;margin:4px 0 14px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px}.moveout-steps li{display:flex;align-items:center;gap:10px;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);animation:fadeUp .3s var(--ease) both;animation-delay:calc(var(--i) * 30ms)}.moveout-steps .tick{flex:0 0 24px;height:24px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:700;background:var(--surface-2);color:var(--muted)}.moveout-steps li.done .tick{background:#4e9a35;color:#fff}.moveout-steps li.done strong{color:var(--muted);font-weight:500}.moveout-steps li.lvl-critical{border-color:var(--crit);background:var(--crit-soft)}.moveout-steps li.lvl-warning{border-color:#e0a63c;background:var(--warn-soft)}.moveout-steps .txt{display:flex;flex-direction:column;flex:1;min-width:0;font-size:.88rem}.moveout-steps .txt small{color:var(--muted);font-size:.76rem}.deposit-sum{display:flex;flex-wrap:wrap;gap:8px 22px;padding:10px 14px;border-radius:12px;background:var(--surface-2);margin-bottom:12px;font-size:.9rem;align-items:center}.end-hint{margin:12px 0 0}.money-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:10px}.money-card{border:1px solid var(--line);border-radius:14px;padding:12px 14px;background:var(--surface)}.money-card h3{margin:0 0 8px;font-size:.92rem}.money-card dl{margin:0;display:grid;gap:6px}.money-card dl>div{display:flex;justify-content:space-between;gap:10px;font-size:.88rem}.money-card dt{color:var(--muted)}.money-card dd{margin:0;text-align:right}.money-card small{color:var(--muted)}.finance-controls{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.finance-controls .form-field{min-width:180px}.cat-bars{list-style:none;margin:0;padding:0;display:grid;gap:8px}.cat-bars li{display:grid;grid-template-columns:minmax(120px,210px) 1fr auto;gap:12px;align-items:center;font-size:.9rem}.cat-bars .bar{height:10px;border-radius:99px;background:var(--surface-2);overflow:hidden}.cat-bars .bar>span{display:block;height:100%;width:var(--w);border-radius:inherit;background:linear-gradient(90deg,#5a6ca8,#2f7de1);animation:growX .6s var(--ease) both;animation-delay:calc(var(--i) * 40ms);transform-origin:left}@keyframes growX{0%{transform:scaleX(0)}}@media (max-width: 560px){.cat-bars li{grid-template-columns:1fr auto}.cat-bars .bar{grid-column:1 / -1}}.finance-controls .segmented{flex-wrap:wrap;max-width:100%}.plan-list{list-style:none;margin:0;padding:0;display:grid;gap:8px}.plan{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);animation:fadeUp .3s var(--ease) both;animation-delay:calc(var(--i) * 25ms);flex-wrap:wrap}.plan-ic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;background:color-mix(in srgb,#C2410C 14%,transparent);color:#c2410c;flex:none}.plan-main{display:flex;flex-direction:column;flex:1;min-width:200px}.plan.state-paused{opacity:.6}.message-body{white-space:pre-wrap;font:inherit;background:var(--surface-2);border-radius:12px;padding:14px 16px;margin:8px 0 0;max-height:420px;overflow:auto}.mfa-enrol{display:flex;gap:20px;flex-wrap:wrap;align-items:flex-start;margin-top:10px}.mfa-enrol img{background:#fff;border-radius:12px;padding:8px;border:1px solid var(--line)}.mfa-enrol ol{padding-left:18px;margin:0 0 10px;display:grid;gap:4px}.mfa-enrol .secret{word-break:break-all;font-size:.8rem}.mfa-enrol input{max-width:160px;letter-spacing:.2em;font-size:1.1rem}.test-accounts{margin-top:18px;padding-top:14px;border-top:1px dashed var(--line);display:grid;gap:8px}.test-accounts .eyebrow{margin:0}.test-acct{display:flex;align-items:center;gap:10px;text-align:left;padding:9px 12px;border:1px solid var(--line);border-radius:12px;background:var(--surface);font:inherit;color:inherit;cursor:pointer;transition:border-color .15s,transform .15s}.test-acct:hover{border-color:var(--accent);transform:translateY(-1px)}.test-acct span:last-child{display:flex;flex-direction:column;min-width:0}.test-acct small{color:var(--muted);font-size:.76rem;overflow-wrap:anywhere}.ta-ic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:#fff;flex:none}.ta-ic.admin{background:linear-gradient(135deg,#0b6e63,#14907f)}.ta-ic.tenant{background:linear-gradient(135deg,#7b5cf0,#e04e8a)}.letting-checks{border:1px solid var(--line);border-radius:14px;padding:12px 14px;margin-top:10px;background:var(--surface);display:grid;gap:8px}.letting-checks.has-fails{border-color:#e0a63c}.letting-checks.all-ok{border-color:color-mix(in srgb,#4E9A35 50%,var(--line))}.lc-head{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.letting-checks ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.letting-checks li{display:flex;gap:10px;align-items:flex-start;font-size:.88rem}.letting-checks li span:last-child{display:flex;flex-direction:column}.letting-checks li small{color:var(--muted)}.letting-checks li b{font-weight:600}.letting-checks li.ok b{font-weight:500;color:var(--muted)}.lc-ic{flex:0 0 20px;height:20px;border-radius:50%;display:grid;place-items:center;font-size:.72rem;font-weight:700}.letting-checks li.ok .lc-ic{background:#4e9a35;color:#fff}.letting-checks li.no .lc-ic{background:var(--warn-soft);color:var(--warn)}.lc-override{display:grid;gap:8px;padding-top:8px;border-top:1px dashed var(--line)}.lc-override label{font-size:.86rem;font-weight:600}.legal.signed-in{overflow-wrap:anywhere;margin-top:0}.auth-tenant{margin:14px 0 0;text-align:center}.shell{transition:grid-template-columns .25s var(--ease)}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:6px}.collapse-btn{width:32px;height:32px;flex:none;color:var(--muted)}.shell.collapsed{grid-template-columns:76px minmax(0,1fr)}.shell.collapsed .sidebar{padding-left:10px;padding-right:10px;overflow-x:hidden}.shell.collapsed .sidebar-top{flex-direction:column;gap:10px}.shell.collapsed .collapse-btn .icon{transform:scaleX(-1)}.shell.collapsed .logo-text,.shell.collapsed .nav-text,.shell.collapsed .legal,.shell.collapsed .search-trigger span,.shell.collapsed .search-trigger kbd{display:none}.shell.collapsed .brand{padding:0;justify-content:center}.shell.collapsed .search-trigger{justify-content:center;padding:9px 0}.shell.collapsed .nav-label{font-size:0;padding:0;margin:4px 12px 6px;height:1px;background:var(--line)}.shell.collapsed .nav-link{justify-content:center;padding:8px 0}.shell.collapsed .nav-link[aria-current=page]:before{left:-10px}.shell.collapsed .nav-link .badge{position:absolute;top:2px;right:6px;min-width:16px;padding:0 4px;font-size:.62rem}.shell.collapsed .mode-note{font-size:0;padding:8px;justify-content:center}.shell.collapsed .mode-note .icon{margin:0}@media (prefers-reduced-motion: reduce){.shell{transition:none}}.help-fab{position:fixed;z-index:45;right:max(20px,env(safe-area-inset-right,0px));bottom:max(20px,env(safe-area-inset-bottom,0px));display:inline-flex;align-items:center;gap:8px;padding:11px 16px;border-radius:999px;border:0;cursor:pointer;font:600 .92rem var(--f-body);color:#fff;background:linear-gradient(135deg,#14907f,#0b6e63);box-shadow:0 10px 28px -10px #0b6e63b3;transition:transform .2s var(--ease),box-shadow .2s}.help-fab:hover{transform:translateY(-2px)}.help-fab.is-open{background:var(--fg);color:var(--bg)}.help-panel{position:fixed;z-index:46;right:max(20px,env(safe-area-inset-right,0px));bottom:calc(max(20px,env(safe-area-inset-bottom,0px)) + 58px);width:min(400px,calc(100vw - 32px));height:min(600px,calc(100vh - 120px));display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:20px;box-shadow:var(--shadow-lg);overflow:hidden;animation:fadeUp .25s var(--ease)}.help-head{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,color-mix(in srgb,var(--accent) 8%,var(--surface)),var(--surface))}.help-head>div{display:flex;flex-direction:column;flex:1;min-width:0}.help-head small{color:var(--muted);font-size:.76rem}.help-ic{width:32px;height:32px;border-radius:10px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#14907f,#0b6e63);flex:none}.help-body{flex:1;overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:10px}.help-empty p{color:var(--muted);font-size:.9rem;margin:0 0 10px}.help-suggest{display:flex;flex-direction:column;gap:6px}.help-suggest button{text-align:left;border:1px solid var(--line);background:var(--surface-2);color:var(--fg);border-radius:12px;padding:9px 12px;font:inherit;font-size:.88rem;cursor:pointer}.help-suggest button:hover{border-color:var(--accent)}.help-msg{max-width:88%;font-size:.9rem;line-height:1.5;border-radius:14px;padding:9px 12px;overflow-wrap:anywhere}.help-msg p{margin:0 0 6px}.help-msg p:last-child{margin:0}.help-msg ol,.help-msg ul{margin:4px 0 6px;padding-left:20px;display:grid;gap:3px}.help-msg.user{align-self:flex-end;background:var(--accent);color:#fff;border-bottom-right-radius:4px}.help-msg.assistant{align-self:flex-start;background:var(--surface-2);border-bottom-left-radius:4px}.help-msg.assistant a{color:var(--accent);font-weight:600}.help-msg em{color:var(--muted);font-size:.82rem}.help-msg.typing{display:flex;gap:4px;padding:12px 14px}.help-msg.typing span{width:7px;height:7px;border-radius:50%;background:var(--muted);animation:blink 1s infinite}.help-msg.typing span:nth-child(2){animation-delay:.15s}.help-msg.typing span:nth-child(3){animation-delay:.3s}@keyframes blink{0%,80%,to{opacity:.25}40%{opacity:1}}.help-input{display:flex;gap:8px;padding:10px;border-top:1px solid var(--line);align-items:flex-end}.help-input textarea{flex:1;resize:none;max-height:120px;border:1px solid var(--line);border-radius:12px;padding:9px 11px;font:inherit;font-size:.9rem;background:var(--surface);color:var(--fg)}.help-input .btn-primary{padding:9px 11px}.help-foot{margin:0;padding:0 12px 10px;font-size:.7rem;color:var(--faint);text-align:center}@media (max-width: 900px){.help-fab.landlord{bottom:calc(84px + env(safe-area-inset-bottom,0px));padding:10px 13px}.help-fab.landlord+.help-panel{bottom:calc(140px + env(safe-area-inset-bottom,0px));height:min(560px,calc(100vh - 170px))}}@media (max-width: 520px){.help-fab span{display:none}.help-fab{padding:12px}}@media (prefers-reduced-motion: reduce){.help-msg.typing span{animation:none}}@media (min-width: 901px){.toaster{bottom:calc(max(20px,env(safe-area-inset-bottom,0px)) + 60px)}}@media (max-width: 900px){.shell~.toaster,.toaster{bottom:calc(140px + env(safe-area-inset-bottom,0px))}}body:has(.help-panel) .toaster{bottom:auto;top:calc(76px + env(safe-area-inset-top,0px))}.cal-controls{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.cal-controls select{max-width:260px}.cal-kinds{display:flex;flex-wrap:wrap;gap:6px;width:100%}.cal-kind{border:1px solid color-mix(in srgb,var(--k) 45%,var(--line));background:color-mix(in srgb,var(--k) 12%,var(--surface));color:var(--fg);border-radius:99px;padding:4px 11px;font:500 .8rem var(--f-body);cursor:pointer;display:inline-flex;align-items:center;gap:6px}.cal-kind:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--k)}.cal-kind[aria-pressed=false]{background:var(--surface);opacity:.55;text-decoration:line-through}.cal-overdue{border-top-color:var(--crit)}.cal-overdue h2 .count{font-size:.8rem;background:var(--crit-soft);color:var(--crit);border-radius:99px;padding:1px 8px;margin-left:6px;vertical-align:middle}.cal-list{list-style:none;margin:0;padding:0;display:grid;gap:6px}.cal-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:10px;background:var(--surface);border:1px solid var(--line);border-left:4px solid var(--k)}.cal-item.done{opacity:.6}.cal-item.done strong{text-decoration:line-through;font-weight:500}.cal-dot{width:10px;height:10px;border-radius:50%;background:var(--k);flex:none}.cal-check{width:20px;height:20px;border-radius:6px;border:2px solid var(--k);background:var(--surface);display:grid;place-items:center;color:#fff;cursor:pointer;flex:none;padding:0}.cal-check[aria-pressed=true]{background:var(--k)}.cal-text{display:flex;flex-direction:column;flex:1;min-width:0;color:inherit;text-decoration:none}.cal-text strong{font-size:.9rem;font-weight:600}.cal-text small{color:var(--muted);font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cal-agenda-day{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.cal-agenda-day:last-child{border-bottom:0}.cal-date{display:flex;flex-direction:column;padding-top:6px}.cal-date small{color:var(--muted);font-size:.76rem}.cal-date.today strong{color:var(--accent)}.cal-month-head{display:flex;align-items:center;gap:8px;margin-bottom:10px}.cal-month-head h2{min-width:170px;text-align:center;margin:0}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}.cal-wd{font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;color:var(--faint);text-align:center;padding:4px 0}.cal-day{min-height:96px;display:flex;flex-direction:column;gap:3px;align-items:stretch;text-align:left;padding:5px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:inherit;font:inherit;cursor:pointer;min-width:0}.cal-day:hover{border-color:var(--accent)}.cal-day.out{opacity:.45}.cal-day.today .cal-num{background:var(--accent);color:#fff}.cal-day.picked{outline:2px solid var(--accent);outline-offset:-1px}.cal-num{align-self:flex-start;font-size:.78rem;font-weight:600;border-radius:99px;min-width:22px;height:22px;display:grid;place-items:center;padding:0 5px}.cal-pills{display:flex;flex-direction:column;gap:2px;min-width:0}.cal-pill{font-size:.7rem;line-height:1.25;padding:2px 5px;border-radius:5px;background:color-mix(in srgb,var(--k) 16%,var(--surface));border-left:3px solid var(--k);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cal-pill.lvl-critical{background:var(--crit-soft)}.cal-pill.done{opacity:.55;text-decoration:line-through}.cal-more{font-size:.68rem;color:var(--muted);padding-left:4px}.cal-dots{display:none;gap:3px;justify-content:center;margin-top:auto}.cal-dots i{width:6px;height:6px;border-radius:50%}.cal-picked{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.cal-picked h3{margin:0}@media (max-width: 720px){.cal-day{min-height:52px;align-items:center}.cal-pills{display:none}.cal-dots{display:flex}.cal-num{align-self:center}.cal-agenda-day{grid-template-columns:minmax(0,1fr);gap:6px}.cal-date{flex-direction:row;gap:8px;align-items:baseline;padding:0}}.scan-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:12px;margin:10px 0 4px;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent) 5%,var(--surface))}.scan-btn{position:relative;overflow:hidden;padding:8px 14px;border-radius:10px;cursor:pointer;font-weight:600;border:1px solid}.scan-btn input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.scan-msg{flex:1;min-width:180px;font-size:.86rem;color:var(--muted);display:inline-flex;gap:8px;align-items:center}.scan-done{border-style:solid;border-color:color-mix(in srgb,#4E9A35 55%,var(--line))}.scan-done .scan-msg{color:var(--fg)}.scan-error{border-style:solid;border-color:#e0a63c}.spinner.small{width:13px;height:13px}.send-docs{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:grid;gap:6px}.bulk-grid{display:grid;grid-template-columns:minmax(220px,300px) minmax(0,1fr);gap:18px}.bulk-list{list-style:none;margin:8px 0 0;padding:0;display:grid;gap:4px;max-height:420px;overflow-y:auto}.bulk-list li .check span{display:flex;flex-direction:column}.bulk-list small{color:var(--muted);font-size:.76rem}.bulk-compose{display:grid;gap:10px;min-width:0}.tag-row{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}.tag-btn{border:1px dashed var(--accent);background:var(--accent-soft);color:var(--accent);border-radius:7px;padding:2px 8px;font:600 .76rem var(--f-body);cursor:pointer}.bulk-preview{background:var(--surface-2);border-radius:12px;padding:12px 14px;display:grid;gap:6px}.bulk-preview pre{white-space:pre-wrap;font:inherit;margin:0}@media (max-width: 760px){.bulk-grid{grid-template-columns:minmax(0,1fr)}}.cal-controls{justify-content:flex-start}.cal-controls>*{margin:0}
