:root,:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--ink:#0f1222;--paper:#f7f8fb;--blueprint:#dfe3ee;--brass:#b45309;--signal:#12805c;--rust:#d92d20;--accent:#3d5afe;--accent-hover:#2f47d6;--teal:var(--accent);--teal-hover:var(--accent-hover);--indigo:var(--accent);--violet:var(--accent);--blue:var(--accent);--cyan:#0ea5b7;--emerald:var(--signal);--amber:var(--brass);--rose:var(--rust);--fuchsia:var(--accent);--ink-tint-05:#0f12220a;--ink-tint-10:#0f122214;--brass-tint-10:#b453091a;--signal-tint-10:#12805c1a;--rust-tint-10:#d92d2017;--indigo-tint-10:#3d5afe1a;--blueprint-tint-08:#dfe3ee80;--signal-tint:var(--signal-tint-10);--brass-tint:var(--brass-tint-10);--rust-tint:var(--rust-tint-10);--bg-page:var(--paper);--bg-surface:#fff;--bg-elevated:#fff;--bg-muted:#eef1f8;--surface-2:var(--bg-muted);--border-hairline:#e3e7f0;--border-subtle:#edf0f6;--border-strong:#c9d0e0;--border-input:#8993aa;--text-primary:var(--ink);--text-secondary:#4a5170;--text-tertiary:#656d8a;--ink-muted:var(--text-secondary);--text-on-ink:#f7f8fb;--text-on-accent:#fff;--accent-tint:var(--indigo-tint-10);--success:var(--signal);--success-tint:var(--signal-tint-10);--danger:var(--rust);--danger-tint:var(--rust-tint-10);--row-hover:#3d5afe0a;--shadow-sm:0 1px 2px #0f12220f;--shadow-md:0 1px 2px #0f12220a, 0 4px 12px #0f12220f;--shadow-lg:0 2px 6px #0f12220f, 0 12px 32px #0f12221f;--shadow-accent:0 1px 2px #3d5afe4d, 0 4px 12px #3d5afe38;--overlay:#0f122280;--ring:0 0 0 3px #3d5afe38;--rail-bg:var(--bg-surface);--rail-border:var(--border-hairline);--rail-link:var(--text-secondary);--rail-link-active:var(--accent);--rail-link-active-bg:var(--accent-tint);--rail-link-hover-bg:var(--bg-muted);--topbar-bg:#ffffffdb;--font-ui:ui-sans-serif, system-ui, "Segoe UI", sans-serif;--font-display:var(--font-ui);--font-mono:ui-monospace, Menlo, monospace;--text-2xs:11px;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:16px;--text-lg:20px;--text-xl:28px;--text-2xl:32px;--text-3xl:40px;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--line-tight:1.25;--line-snug:1.4;--line-normal:1.5;--line-relaxed:1.6;--tracking-tight:-.022em;--tracking-title:-.015em;--tracking-body:-.003em;--tracking-normal:0em;--tracking-wide:.04em;--tracking-wider:.06em;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-sm:8px;--radius-md:10px;--radius-card:12px;--radius-pill:999px;--radius-none:0px;--border-width:1px;--topbar-height:56px;--sidebar-width:84px;--sidebar-collapsed:56px;--gutter:24px;--content-max:none;--ease-out:cubic-bezier(.25, .1, .25, 1);--duration-fast:.12s;--duration-normal:.22s}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--ink:#eef0fa;--paper:#0a0d1a;--blueprint:#262c4a;--brass:#fbab3c;--signal:#34d399;--rust:#f87171;--accent:#8393ff;--accent-hover:#a0adff;--teal:var(--accent);--teal-hover:var(--accent-hover);--ink-tint-05:#ffffff0f;--ink-tint-10:#ffffff1a;--brass-tint-10:#fbab3c29;--signal-tint-10:#34d39929;--rust-tint-10:#f8717129;--indigo-tint-10:#8393ff2e;--blueprint-tint-08:#262c4a80;--bg-page:#0a0d1a;--bg-surface:#12162b;--bg-elevated:#1a1f38;--bg-muted:#1c2140;--surface-2:var(--bg-muted);--border-hairline:#262c4a;--border-subtle:#1e2340;--border-strong:#3a4266;--border-input:#5a6490;--text-primary:#eef0fa;--text-secondary:#aab1cf;--text-tertiary:#8089ab;--ink-muted:var(--text-secondary);--text-on-ink:#0f1222;--text-on-accent:#0a0d1a;--row-hover:#8393ff12;--shadow-sm:0 1px 2px #0006;--shadow-md:0 1px 2px #0006, 0 4px 12px #0006;--shadow-lg:0 2px 6px #0006, 0 12px 32px #0000008c;--shadow-accent:0 1px 2px #8393ff40, 0 4px 12px #8393ff2e;--overlay:#0000009e;--ring:0 0 0 3px #8393ff4d;--rail-bg:#0d1020;--rail-link-active-bg:#8393ff2e;--topbar-bg:#12162bdb}*{box-sizing:border-box}[hidden]{display:none!important}.visually-hidden{clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}html,body{max-width:100vw}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){html{--lightningcss-light: ;--lightningcss-dark:initial}}body{min-height:100vh;font-family:var(--font-ui);font-weight:var(--weight-regular);font-size:var(--text-base);line-height:var(--line-normal);letter-spacing:var(--tracking-body);color:var(--text-primary);background:var(--bg-page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1, "calt" 1;touch-action:manipulation;-webkit-tap-highlight-color:transparent;margin:0}button,input,select,textarea{font-family:inherit;font-size:inherit;letter-spacing:inherit}h1,h2,h3,h4,h5,h6,p{margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);line-height:var(--line-tight);color:var(--text-primary)}h1{font-size:var(--text-xl);letter-spacing:var(--tracking-tight);font-weight:600}h2{font-size:var(--text-lg);letter-spacing:var(--tracking-title)}h3{font-size:var(--text-md);letter-spacing:var(--tracking-normal)}h4{font-size:var(--text-base);letter-spacing:var(--tracking-body)}p{line-height:var(--line-normal);letter-spacing:var(--tracking-body)}a{color:var(--ink);transition:color var(--duration-fast) var(--ease-out);text-decoration:none}a:hover{color:var(--accent)}.mono{font-family:var(--font-geist-mono), ui-monospace, Menlo, monospace;font-variant-numeric:tabular-nums;font-size:.9286em}.text-2xs{font-size:var(--text-2xs);line-height:var(--line-snug)}.text-xs{font-size:var(--text-xs);line-height:var(--line-snug)}.text-sm{font-size:var(--text-sm);line-height:var(--line-normal)}.text-base{font-size:var(--text-base);line-height:var(--line-normal)}.text-md{font-size:var(--text-md);line-height:var(--line-snug)}.text-lg{font-size:var(--text-lg);line-height:var(--line-tight)}.text-xl{font-size:var(--text-xl);line-height:var(--line-tight)}.text-label{font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:0;text-transform:none;color:var(--text-tertiary)}.text-caption{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--line-snug)}.text-secondary{color:var(--text-secondary)}.text-tertiary{color:var(--text-tertiary)}.text-medium{font-weight:var(--weight-medium)}.text-semibold{font-weight:var(--weight-semibold)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app-skip{z-index:100;background:var(--accent);color:var(--text-on-accent);font-size:var(--text-sm);font-weight:var(--weight-medium);border-radius:var(--radius-md);padding:8px 14px;text-decoration:none;position:absolute;top:-100px;left:12px}.app-skip:focus{color:var(--text-on-accent);top:12px}.app-logo{background:var(--accent);width:28px;height:28px;color:var(--text-on-accent);letter-spacing:var(--tracking-tight);border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;font-size:13px;font-weight:600;display:flex}::selection{background:var(--accent-tint)}::placeholder{color:var(--text-tertiary);opacity:1}@media (max-width:720px){:root[data-theme]{--gutter:var(--space-4)}}.shell{grid-template-columns:var(--sidebar-width) 1fr;height:100dvh;font-family:var(--font-ui);background:var(--bg-page);display:grid;overflow:hidden}.shell-main{background:var(--bg-page);flex-direction:column;min-width:0;min-height:0;display:flex}.shell-content{overscroll-behavior:contain;min-width:0;min-height:0;padding:var(--gutter);flex:1;width:100%;overflow:auto}.shell-content:focus{outline:none}.app-fonts{--font-ui:var(--font-geist-sans), ui-sans-serif, system-ui, "Segoe UI", sans-serif;--font-display:var(--font-ui);--font-mono:var(--font-geist-mono), ui-monospace, Menlo, monospace;font-family:var(--font-ui)}.shell-rail{height:100dvh;max-height:100dvh;width:var(--sidebar-width);background:var(--rail-bg);border-right:1px solid var(--rail-border);z-index:15;flex-direction:column;display:flex;overflow:hidden}.shell-rail-brand{height:var(--topbar-height);border-bottom:1px solid var(--rail-border);flex-shrink:0;align-items:stretch;display:flex}.shell-rail-brand-link{color:inherit;flex:1;justify-content:center;align-items:center;gap:10px;min-width:0;padding:0;text-decoration:none;display:flex}.shell-rail-logo{object-fit:contain;border-radius:7px;flex-shrink:0;width:28px;height:28px;display:block}:root[data-theme=dark] .shell-rail-logo{filter:brightness(1.6)}.shell-rail-brand-text{flex-direction:column;flex:1;min-width:0;display:none}.shell-rail-brand-name,.shell-rail-brand-sub{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.shell-rail-brand-name{letter-spacing:.04em;color:var(--text-primary);font-size:15px;font-weight:700;line-height:1.2}.shell-rail-brand-sub{color:var(--text-tertiary);font-size:11px;line-height:1.25}.shell-rail-nav{flex-direction:column;flex:1;min-height:0;padding:12px 8px;display:flex}.shell-rail-nav-scroll{scrollbar-width:none;flex-direction:column;flex:1;gap:4px;min-height:0;display:flex;overflow:hidden auto}.shell-rail-nav-scroll::-webkit-scrollbar{display:none}.shell-rail-link{min-height:60px;color:var(--rail-link);text-align:center;transition:background var(--duration-fast) var(--ease-out), color var(--duration-fast) var(--ease-out);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:4px;padding:8px 4px;text-decoration:none;display:flex;position:relative}.shell-rail-link:hover{background:var(--rail-link-hover-bg);color:var(--text-primary)}.shell-rail-link--active,.shell-rail-link--active:hover{background:var(--rail-link-active-bg);color:var(--rail-link-active)}.shell-rail-link--active .shell-rail-link-label{font-weight:600}.shell-rail-link-icon{justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.shell-rail-icon{width:22px;height:22px;display:block}.shell-rail-link-label{letter-spacing:.01em;white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:100%;font-size:11px;font-weight:500;line-height:1.2;overflow:hidden}.shell-rail-avatar{background:var(--accent-tint);width:28px;height:28px;color:var(--accent);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;font-size:11px;font-weight:600;display:inline-flex}.shell-rail-avatar--sm{width:26px;height:26px;font-size:10px}.shell-rail-backdrop{appearance:none;cursor:pointer;border:none;padding:0;display:none}.shell-topbar{height:var(--topbar-height);align-items:center;gap:var(--space-3);padding:0 var(--gutter);padding-top:env(safe-area-inset-top,0px);height:calc(var(--topbar-height) + env(safe-area-inset-top,0px));background:var(--topbar-bg);-webkit-backdrop-filter:saturate(180%)blur(20px);border-bottom:1px solid var(--border-hairline);z-index:10;flex-shrink:0;display:flex}.shell-topbar-crumbs{flex:1;min-width:0}.shell-topbar-crumbs .breadcrumb{margin-bottom:0}.shell-topbar-crumbs .breadcrumb-current{color:var(--text-primary);font-weight:600}.shell-topbar-title{font-size:var(--text-md);letter-spacing:var(--tracking-tight);color:var(--text-primary);font-weight:600;line-height:var(--line-tight);white-space:nowrap;text-overflow:ellipsis;margin:0;overflow:hidden}.shell-topbar-actions{flex-shrink:0;align-items:center;gap:6px;display:flex}.shell-icon-btn{border-radius:var(--radius-md);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:background var(--duration-fast), color var(--duration-fast);background:0 0;border:none;justify-content:center;align-items:center;padding:0;text-decoration:none;display:inline-flex}.shell-icon-btn:hover{background:var(--ink-tint-05);color:var(--text-primary)}.shell-btn{border-radius:var(--radius-md);border:1px solid var(--border-hairline);background:var(--bg-surface);min-height:36px;color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:background var(--duration-fast), border-color var(--duration-fast);align-items:center;gap:6px;padding:0 12px;font-weight:500;display:inline-flex}.shell-btn:hover{background:var(--bg-muted)}.shell-btn--new{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.shell-btn--new:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--text-on-accent)}.shell-topbar-profile{border-radius:var(--radius-pill);min-width:36px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;align-items:center;gap:4px;padding:0 6px 0 2px;display:inline-flex}.shell-topbar-profile:hover{background:var(--ink-tint-05);color:var(--text-primary)}.shell-dropdown-wrap{position:relative}.shell-dropdown{background:var(--bg-elevated);border:1px solid var(--border-hairline);border-radius:var(--radius-card);min-width:200px;box-shadow:var(--shadow-lg);z-index:40;padding:4px;position:absolute;top:calc(100% + 6px);left:0}.shell-dropdown--right{left:auto;right:0}.shell-dropdown-hd{border-bottom:1px solid var(--border-hairline);margin-bottom:4px;padding:10px 12px}.shell-dropdown-name{color:var(--text-primary);font-size:13px;font-weight:600}.shell-dropdown-meta{color:var(--text-tertiary);margin-top:2px;font-size:11px}.shell-dropdown-item{width:100%;min-height:40px;color:var(--text-primary);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;padding:8px 12px;font-size:13px;text-decoration:none;display:flex}.shell-dropdown-item:hover{background:var(--ink-tint-05)}.shell-dropdown-item--danger{color:var(--danger)}.shell-subheader{background:var(--bg-surface);border-bottom:1px solid var(--border-hairline);padding:8px var(--gutter);z-index:4;flex-shrink:0;align-items:center;min-height:48px;display:flex}.shell-subheader-inner{align-items:center;gap:16px;width:100%;min-width:0;display:flex}.shell-subheader-module{border-right:1px solid var(--border-hairline);color:var(--text-tertiary);-webkit-user-select:none;user-select:none;pointer-events:none;flex-shrink:0;align-items:center;padding-right:12px;font-size:12px;font-weight:600;display:none}.shell-subheader-tabs{scrollbar-width:none;flex:1;align-items:center;gap:4px;min-width:0;display:flex;overflow-x:auto}.shell-subheader-tabs::-webkit-scrollbar{display:none}.shell-subheader-tab{border-radius:var(--radius-pill);min-height:32px;font-size:var(--text-sm);letter-spacing:var(--tracking-normal);color:var(--text-secondary);white-space:nowrap;transition:color var(--duration-fast), background var(--duration-fast);align-items:center;padding:6px 12px;font-weight:500;text-decoration:none;display:inline-flex;position:relative}.shell-subheader-tab:hover{color:var(--text-primary);background:var(--bg-muted)}.shell-subheader-tab--active,.shell-subheader-tab--active:hover{color:var(--accent);background:var(--accent-tint);font-weight:600}.app-tabs{padding:0 var(--space-6);border-bottom:1px solid var(--border-hairline);background:var(--bg-surface);gap:2px;display:flex;overflow-x:auto}.app-tab{padding:12px var(--space-4);font-size:var(--text-sm);white-space:nowrap;color:var(--text-secondary);transition:color var(--duration-fast), border-color var(--duration-fast);line-height:var(--line-snug);border-bottom:2px solid #0000;margin-bottom:-1px}.app-tab:hover{color:var(--ink)}.app-tab--active{color:var(--ink);font-weight:var(--weight-medium);border-bottom-color:var(--accent)}.app-portal-content{width:100%;max-width:none;margin:0}@media (max-width:1024px){.shell{grid-template-columns:1fr}.shell-rail{width:min(280px,86vw);padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);transition:transform var(--duration-normal) var(--ease-out);box-shadow:var(--shadow-lg);z-index:30;position:fixed;top:0;left:0;transform:translate(-105%)}.shell-rail--open{transform:translate(0)}.shell-rail-brand-text{flex-direction:column;flex:1;min-width:0;display:flex}.shell-rail-brand-link{justify-content:flex-start;padding:0 14px}.shell-rail-link{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:10px;min-height:44px;padding:8px 12px}.shell-rail-link-label{font-size:14px;font-weight:500}.shell-rail-backdrop{background:var(--overlay);z-index:25;display:block;position:fixed;inset:0}.shell-subheader{padding:0 16px}.shell-content{padding:var(--space-5);padding-bottom:max(var(--space-5), env(safe-area-inset-bottom,0px))}.shell-icon-btn,.shell-topbar-profile{width:44px;height:44px}.shell-btn--new{min-width:44px;height:44px;padding:0 12px}}@media (max-width:720px){.shell-btn--new span,.shell-btn--new .shell-btn-chevron,.shell-btn--new svg:last-of-type{display:none}.shell-btn--new{justify-content:center;width:44px;padding:0}.shell-btn--new svg:first-of-type{display:block}.shell-topbar{gap:8px;padding-left:12px;padding-right:10px}.shell-topbar-actions{gap:2px}.shell-topbar-profile svg{display:none}.shell-topbar-title{font-size:var(--text-base)}.shell-subheader-inner{flex-direction:column;gap:0}.shell-subheader-module{border-right:none;border-bottom:1px solid var(--border-hairline);text-transform:uppercase;letter-spacing:var(--tracking-wider);padding:8px 0 4px;font-size:11px;display:flex}.shell-subheader{min-height:0;padding-bottom:0}.shell-subheader-tabs{-webkit-overflow-scrolling:touch;padding-bottom:0}.shell-content{padding:var(--space-4);padding-bottom:max(var(--space-4), env(safe-area-inset-bottom,0px));overflow-x:clip}}@media (max-width:480px){.shell-content{padding:var(--space-4);padding-bottom:max(var(--space-4), env(safe-area-inset-bottom,0px))}}.portal-home{gap:var(--space-5);display:grid}.portal-hero{gap:var(--space-4);grid-template-columns:minmax(0,1.35fr) minmax(260px,.9fr);align-items:stretch;display:grid}.portal-plan-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);padding:var(--space-5);gap:var(--space-2);flex-direction:column;min-height:100%;display:flex}.portal-plan-card-top{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.portal-plan-name{font-family:var(--font-ui);font-size:var(--text-xl);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--line-tight);color:var(--ink);margin-top:var(--space-1)}.portal-plan-meta{font-size:var(--text-md);color:var(--text-primary);margin-top:var(--space-1);align-items:baseline;gap:6px;display:flex}.portal-plan-meta span:last-child{color:var(--text-secondary);font-size:var(--text-sm)}.portal-plan-expiry{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-1)}.portal-plan-link{padding-top:var(--space-4);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--accent);margin-top:auto}.portal-plan-link:hover{color:var(--accent-hover)}.portal-quick-actions{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.portal-quick-action{padding:var(--space-4);background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);color:var(--ink);transition:border-color var(--duration-fast), background var(--duration-fast), color var(--duration-fast);flex-direction:column;gap:4px;min-height:78px;text-decoration:none;display:flex}.portal-quick-action:hover{border-color:color-mix(in srgb, var(--accent) 35%, var(--border-hairline));background:var(--accent-tint);color:var(--ink)}.portal-quick-action--primary{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.portal-quick-action--primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--text-on-accent)}.portal-quick-action-label{font-size:var(--text-sm);font-weight:var(--weight-semibold);line-height:var(--line-tight)}.portal-quick-action-hint{font-size:var(--text-xs);color:var(--text-tertiary);line-height:var(--line-snug)}.portal-quick-action--primary .portal-quick-action-hint{color:color-mix(in srgb, var(--text-on-accent) 72%, transparent)}.portal-credits{gap:var(--space-3);display:grid}.portal-credit-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (max-width:900px){.portal-hero{grid-template-columns:1fr}.portal-quick-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-credit-grid{grid-template-columns:1fr}}@media (max-width:520px){.portal-quick-actions{grid-template-columns:1fr}}.page-header{margin-bottom:var(--space-6);justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-header-actions{align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.soon-switch{color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:8px;font-size:13px;display:inline-flex}.soon-switch input{appearance:none;background:var(--bg-muted);border:1px solid var(--border-hairline);cursor:pointer;border-radius:999px;flex-shrink:0;width:36px;height:22px;margin:0;position:relative}.soon-switch input:after{content:"";background:var(--bg-surface);border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #0003}.soon-switch input:checked{background:var(--accent);border-color:var(--accent)}.soon-switch input:checked:after{transform:translate(14px)}.soon-switch input:disabled{opacity:.6}.breadcrumb{margin-bottom:var(--space-3)}.breadcrumb-list{font-size:var(--text-xs);color:var(--text-tertiary);flex-wrap:wrap;align-items:center;gap:0;margin:0;padding:0;list-style:none;display:flex}.breadcrumb-item{align-items:center;display:inline-flex}.breadcrumb-sep{color:var(--text-tertiary);margin:0 6px}.breadcrumb-link{color:var(--text-secondary);text-decoration:none}.breadcrumb-link:hover{color:var(--text-primary);text-decoration:underline}.entity-link{color:var(--accent,var(--text-primary));font-weight:500;text-decoration:none}.entity-link:hover{text-decoration:underline}.breadcrumb-current{color:var(--text-secondary)}.page-title{font-family:var(--font-display);font-size:var(--text-xl);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-2);color:var(--ink);font-weight:600;line-height:var(--line-tight);text-wrap:balance}.page-title:last-child{margin-bottom:0}.page-subtitle{font-family:var(--font-ui);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--weight-regular);line-height:var(--line-normal);letter-spacing:var(--tracking-body);max-width:62ch}.section-title{font-family:var(--font-display);font-size:var(--text-md);margin-bottom:var(--space-3);color:var(--ink);letter-spacing:var(--tracking-title);font-weight:600;line-height:var(--line-tight)}.ui-card,.panel,.stat-tile,.portal-plan-card,.member-hero,.dash-attention,.dash-toolbar{box-shadow:var(--shadow-sm)}.ui-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);padding:var(--space-5)}.ui-card-kicker{font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--text-secondary);letter-spacing:0;text-transform:none;margin-bottom:6px}.ui-card-title{font-size:var(--text-base);font-weight:var(--weight-semibold);color:var(--text-primary);line-height:var(--line-tight)}.ui-card-body{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-2);line-height:var(--line-normal)}.stat-tile{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);padding:var(--space-4) var(--space-5);position:relative}.stat-tile--hero{padding:var(--space-5)}.stat-value{font-family:var(--font-display);font-size:var(--text-xl);color:var(--ink);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--line-tight);font-variant-numeric:tabular-nums}.stat-tile--hero .stat-value{font-size:var(--text-2xl)}.stat-highlight{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--line-tight);color:var(--ink);font-variant-numeric:tabular-nums}.dash-section{margin-bottom:var(--space-6)}.dash-section-head{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-3);display:flex}.dash-section-head>a{flex-shrink:0}.dash-section-head .section-title{margin-bottom:0}.dashboard{gap:var(--space-8);display:grid}.dash-top{gap:var(--space-3);display:grid}.dash-top .page-header{margin-bottom:0}.dash-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);flex-wrap:wrap;padding:10px 14px;display:flex}.dash-toolbar .filter-bar--inline{flex:auto;margin-bottom:0}.dash-toolbar .filter-bar .filter-control,.dash-toolbar .filter-bar .filter-control:first-child{flex:180px;max-width:280px}.dash-block{gap:var(--space-3);display:grid}.dash-block-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.dash-block-title{font-size:var(--text-base);letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--line-tight);color:var(--ink);margin:0}.dash-block-subtitle{font-size:var(--text-sm);color:var(--text-tertiary);line-height:var(--line-normal);max-width:56ch;margin:2px 0 0}.dash-attention{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);gap:10px;padding:14px 16px;display:grid}.dash-attention--clear{border-left:3px solid var(--signal);padding:10px 16px}.dash-attention-label{font-size:var(--text-xs);letter-spacing:.02em;text-transform:uppercase;color:var(--text-tertiary);margin:0;font-weight:600}.dash-attention-list{flex-wrap:wrap;gap:0;margin:0;padding:0;list-style:none;display:flex}.dash-attention-li{align-items:stretch;display:flex}.dash-attention-li:not(:last-child):after{content:"";background:var(--border-hairline);align-self:stretch;width:1px;margin:4px 14px}.dash-attention-item{color:inherit;transition:color var(--duration-fast);background:0 0;border:none;border-radius:0;align-items:baseline;gap:8px;padding:2px 0;text-decoration:none;display:inline-flex}.dash-attention-item:hover .dash-attention-text{color:var(--accent)}.dash-attention-item--warn .dash-attention-value,.dash-attention-item--danger .dash-attention-value{color:var(--ink)}.dash-attention-item--danger .dash-attention-value{color:var(--rust)}.dash-attention-value{font-size:var(--text-base);font-variant-numeric:tabular-nums;color:var(--ink);letter-spacing:var(--tracking-tight);font-weight:600}.dash-attention-text{font-size:var(--text-sm);color:var(--text-secondary)}.stat-hint{font-size:var(--text-xs);color:var(--text-secondary);line-height:var(--line-snug);margin-top:6px}.stat-tile--ok:before,.stat-tile--neutral:before{display:none}.stat-tile--warn:before,.stat-tile--danger:before{content:"";border-radius:1px;width:2px;position:absolute;top:14px;bottom:14px;left:0}.stat-tile--warn:before{background:var(--brass)}.stat-tile--danger:before{background:var(--rust)}.kpi-delta{font-size:var(--text-xs);font-weight:400}.kpi-delta--up{color:var(--text-secondary)}.kpi-delta--down{color:var(--rust)}.kpi-delta--neutral{color:var(--text-tertiary)}.insight-list{margin:var(--space-3) 0 0;gap:10px;display:grid}.insight-list-row{border-top:1px solid var(--border-subtle);grid-template-columns:1fr auto;align-items:baseline;gap:2px 12px;padding-top:10px;display:grid}.insight-list-row:first-child{border-top:none;padding-top:0}.insight-list-label{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.insight-list-value{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--ink);text-align:right;font-variant-numeric:tabular-nums;margin:0}.insight-list-hint{font-size:var(--text-xs);color:var(--text-tertiary);grid-column:1/-1;margin:0}.text-danger{color:var(--rust);font-weight:var(--weight-medium)}.text-warn{color:var(--brass);font-weight:var(--weight-medium)}.metric-row{align-items:center;gap:10px;display:flex}.metric-row-label{width:120px;font-size:var(--text-sm);color:var(--text-secondary);flex-shrink:0}.metric-row-value{white-space:nowrap;text-align:right;min-width:72px;font-size:var(--text-xs);color:var(--text-secondary);flex-shrink:0}.grid-stats-hero{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stat-strip{grid-template-columns:repeat(var(--cols,5), minmax(0, 1fr));background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);display:grid;overflow:hidden}.stat-strip .stat-tile{box-shadow:none;border:none;border-right:1px solid var(--border-hairline);padding:var(--space-4) var(--space-4);background:0 0;border-radius:0}.stat-strip .stat-tile:last-child{border-right:none}.stat-strip .stat-tile--warn:before,.stat-strip .stat-tile--danger:before{display:none}.dash-split{gap:var(--space-4);grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);align-items:stretch;display:grid}.dash-split-main{min-width:0}.dash-split-main>.stat-tile{height:100%}.dash-split-side{min-width:0}.dash-footer{align-items:center;gap:var(--space-4);padding-top:var(--space-2);border-top:1px solid var(--border-hairline);font-size:var(--text-sm);flex-wrap:wrap;display:flex}.dash-footer a{color:var(--text-secondary);text-decoration:none}.dash-footer a:hover{color:var(--accent)}.grid-cards--flush,.grid-tables--flush{margin-bottom:0}@media (max-width:1100px){.grid-stats-hero,.stat-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-strip .stat-tile:nth-child(2n){border-right:none}.stat-strip .stat-tile{border-bottom:1px solid var(--border-hairline)}.stat-strip .stat-tile:nth-last-child(-n+2){border-bottom:none}.dash-split{grid-template-columns:1fr}}@media (max-width:560px){.grid-stats-hero,.stat-strip{grid-template-columns:1fr}.stat-strip .stat-tile{border-right:none;border-bottom:1px solid var(--border-hairline)}.stat-strip .stat-tile:last-child{border-bottom:none}.dash-attention-li:not(:last-child):after{display:none}.dash-attention-list{flex-direction:column;gap:10px}}.progress-track{background:var(--bg-muted);border-radius:var(--radius-pill);flex:1;height:6px;overflow:hidden}.progress-fill{border-radius:var(--radius-pill);height:100%;transition:width var(--duration-normal) var(--ease-out)}.progress-fill--accent{background:var(--accent)}.progress-fill--brass{background:var(--brass)}.progress-fill--signal{background:var(--signal)}.progress-fill--rust{background:var(--rust)}.ui-input,.ui-select,.ui-textarea{font-family:var(--font-ui);font-size:var(--text-base);border:1px solid var(--border-input);border-radius:var(--radius-md);background-color:var(--bg-surface);height:40px;color:var(--text-primary);width:100%;line-height:var(--line-normal);transition:border-color var(--duration-fast), box-shadow var(--duration-fast), background-color var(--duration-fast);padding:0 12px}.ui-select{appearance:none;background-image: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='%238b949e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-position:right 10px center;background-repeat:no-repeat;background-size:14px;padding-right:30px}.ui-textarea{height:auto;min-height:80px;line-height:var(--line-normal);padding:8px 12px}.ui-input:hover,.ui-select:hover,.ui-textarea:hover{border-color:var(--text-tertiary)}.ui-input:focus-visible,.ui-select:focus-visible,.ui-textarea:focus-visible{border-color:var(--accent);box-shadow:var(--ring);outline:none}.ui-input:disabled,.ui-select:disabled,.ui-textarea:disabled{background-color:var(--bg-muted);border-color:var(--border-hairline);color:var(--text-tertiary);cursor:not-allowed}.ui-input[aria-invalid=true],.ui-select[aria-invalid=true],.ui-textarea[aria-invalid=true]{border-color:var(--danger);box-shadow:0 0 0 3px var(--danger-tint)}.ui-field-label{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-primary);line-height:var(--line-snug)}.ui-field-req{color:var(--rust)}.ui-field-hint{font-size:var(--text-xs);color:var(--text-tertiary);line-height:var(--line-snug)}.ui-field-error{font-size:var(--text-xs);color:var(--rust);font-weight:var(--weight-medium);line-height:var(--line-snug)}.ui-btn{font-family:var(--font-ui);font-weight:var(--weight-medium);font-size:var(--text-base);border-radius:var(--radius-md);cursor:pointer;white-space:nowrap;transition:background var(--duration-fast), border-color var(--duration-fast), color var(--duration-fast), box-shadow var(--duration-fast), transform var(--duration-fast);justify-content:center;align-items:center;gap:6px;line-height:1;display:inline-flex}.ui-btn:disabled{opacity:1;cursor:default;pointer-events:none}.ui-btn--block{width:100%;display:flex}.ui-btn--sm{font-size:var(--text-sm);height:auto;min-height:36px;padding:0 12px}.ui-btn--slot{min-width:76px}.ui-btn--md{font-size:var(--text-base);height:auto;min-height:40px;padding:0 16px}.ui-btn:active:not(:disabled){transform:translateY(.5px)scale(.99)}.ui-btn:focus-visible{box-shadow:var(--ring);outline:none}.ui-btn--primary{background:var(--accent);color:var(--text-on-accent);border:1px solid var(--accent);box-shadow:var(--shadow-accent)}.ui-btn--primary:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.ui-btn--primary:focus-visible{box-shadow:var(--shadow-accent), var(--ring)}.ui-btn--primary:disabled{background:color-mix(in srgb, var(--accent) 35%, var(--bg-muted));color:var(--text-on-accent);box-shadow:none;border-color:#0000}.ui-btn--secondary{background:var(--bg-surface);color:var(--ink);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm)}.ui-btn--secondary:hover:not(:disabled){background:var(--bg-muted);border-color:var(--text-tertiary)}.ui-btn--secondary:disabled{color:var(--text-tertiary);box-shadow:none;background:var(--bg-muted)}.ui-btn--tertiary{color:var(--ink);background:0 0;border:1px solid #0000}.ui-btn--tertiary:hover:not(:disabled){background:var(--ink-tint-05)}.ui-btn--tertiary:disabled{color:var(--text-tertiary)}.ui-btn--danger{background:var(--rust);color:var(--text-on-accent);border:1px solid var(--rust)}.ui-btn--danger:hover:not(:disabled){background:color-mix(in srgb, var(--rust) 85%, #000);border-color:color-mix(in srgb, var(--rust) 85%, #000)}.ui-btn--danger:focus-visible{box-shadow:0 0 0 3px var(--danger-tint)}.page-subnav{justify-content:space-between;align-items:stretch;gap:var(--space-3);margin:calc(-1 * var(--gutter)) calc(-1 * var(--gutter)) var(--space-5);padding:0 var(--gutter);background:var(--bg-surface);border-bottom:1px solid var(--border-hairline);flex-wrap:wrap;min-height:40px;display:flex}.page-subnav-tabs{scrollbar-width:none;flex:1;align-items:center;min-width:0;display:flex;overflow-x:auto}.page-subnav:not(.page-subnav--inset):has(.ui-seg--tabs){margin:0 0 var(--space-5);background:0 0;border-bottom:0;align-items:center;min-height:0;padding:0}.stack>.page-subnav:has(.ui-seg--tabs){margin-bottom:0}.page-subnav-tabs::-webkit-scrollbar{display:none}.page-subnav-actions{align-self:center;align-items:center;gap:var(--space-2);flex-shrink:0;display:flex}.page-subnav>.toolbar{flex:1;align-self:center;margin-bottom:0;padding-block:6px}.page-subnav--inset{margin:0 0 var(--space-4);background:0 0;border-bottom:0;min-height:0;padding:0}.ui-seg{border-radius:var(--radius-md);background:var(--bg-muted);border:none;gap:1px;padding:2px;display:inline-flex;overflow:hidden}.ui-seg-option{min-height:32px;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--text-secondary);cursor:pointer;border-radius:calc(var(--radius-md) - 1px);transition:color var(--duration-fast), background var(--duration-fast), box-shadow var(--duration-fast);line-height:var(--line-snug);justify-content:center;align-items:center;padding:6px 12px;display:inline-flex;position:relative}.ui-seg-option input{clip-path:inset(50%);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.ui-seg-option:has(input:focus-visible){outline:2px solid var(--accent);outline-offset:2px}.ui-seg-option--active{color:var(--ink);background:var(--bg-surface);box-shadow:var(--shadow-md);border:none}.ui-seg--tabs{background:var(--bg-muted);border-radius:var(--radius-pill);scrollbar-width:none;align-items:center;gap:2px;width:auto;max-width:100%;padding:3px;display:inline-flex;overflow-x:auto}.ui-seg--tabs::-webkit-scrollbar{display:none}.ui-seg--tabs .ui-seg-option{border-radius:var(--radius-pill);min-height:32px;box-shadow:none;font-size:var(--text-sm);letter-spacing:var(--tracking-normal);white-space:nowrap;background:0 0;padding:6px 14px;font-weight:500}.ui-seg--tabs .ui-seg-option:hover{color:var(--text-primary);background:0 0}.ui-seg--tabs .ui-seg-option--active,.ui-seg--tabs .ui-seg-option--active:hover{color:var(--accent);background:var(--bg-surface);box-shadow:var(--shadow-sm);font-weight:600}@media (max-width:1024px){.page-subnav:not(.page-subnav--inset):not(:has(.ui-seg--tabs)){margin-left:calc(-1 * var(--space-5));margin-right:calc(-1 * var(--space-5));margin-top:calc(-1 * var(--space-5));padding-left:var(--space-5);padding-right:var(--space-5)}}@media (max-width:720px){.page-subnav:not(.page-subnav--inset):not(:has(.ui-seg--tabs)){margin-left:calc(-1 * var(--space-4));margin-right:calc(-1 * var(--space-4));margin-top:calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4)}.page-header{flex-direction:column;align-items:stretch}.page-header-actions{flex-direction:column;align-items:stretch;width:100%}.page-header-actions>*,.page-header-actions .ui-btn{width:100%}.filter-bar{flex-direction:column;align-items:stretch}.filter-bar>*,.filter-bar .ui-field,.filter-bar .ui-input,.filter-bar .ui-select,.filter-bar .filter-control,.filter-control{flex:none;width:100%;min-width:0;max-width:none}.page-subnav{flex-direction:column;align-items:stretch}.page-subnav-actions{width:100%;padding-bottom:8px}.page-subnav-actions .ui-btn{width:100%}.page-subnav-tabs{-webkit-overflow-scrolling:touch}.toolbar{flex-direction:column;align-items:stretch}.toolbar-start,.toolbar-end,.toolbar-end .ui-btn{width:100%}.dash-toolbar{flex-direction:column;align-items:stretch}.ui-seg:not(.ui-seg--tabs){flex-wrap:wrap;width:100%;display:flex}.ui-seg:not(.ui-seg--tabs) .ui-seg-option{text-align:center;flex:auto;min-width:0}.ui-table-pager{flex-direction:column;align-items:stretch}.ui-table-pager-controls{justify-content:space-between;width:100%}.ui-table-page-size{flex:1;min-width:0}.member-actions{flex-direction:column;align-items:stretch}.member-actions-main{flex-direction:column}.member-actions .ui-btn{width:100%}.page-subtitle{max-width:none}.ui-table-toolbar{flex-direction:column;align-items:stretch}.ui-table-search{width:100%;min-width:0;max-width:none}.ui-table-wrap{background:0 0;border:none;overflow:visible}.ui-table thead{display:none}.ui-table,.ui-table tbody{width:100%;display:block}.ui-table tbody tr{margin-bottom:var(--space-3);background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);gap:6px;padding:12px 14px;display:grid}.ui-table tbody tr:last-child{margin-bottom:0}.ui-table tbody tr:hover td{background:0 0}.ui-table td{font-size:var(--text-sm);border:none;justify-content:space-between;align-items:baseline;gap:12px;padding:0;display:flex}.ui-table td.ui-table-index,.ui-table td[data-priority=hide]{display:none}.ui-table td[data-priority=primary]{font-size:var(--text-md);color:var(--ink);font-weight:600;line-height:var(--line-tight);order:-1;display:block}.ui-table tbody tr:not(:has([data-priority=primary])) td:nth-child(2):not([data-priority=hide]):not([data-priority=actions]){font-size:var(--text-md);color:var(--ink);font-weight:600;line-height:var(--line-tight);order:-1;display:block}.ui-table td[data-priority=primary]:before{display:none}.ui-table tbody tr:not(:has([data-priority=primary])) td:nth-child(2):not([data-priority=hide]):not([data-priority=actions]):before{display:none}.ui-table td[data-label]:not([data-priority=primary]):not([data-priority=actions]):before{content:attr(data-label);color:var(--text-tertiary);font-size:var(--text-xs);flex-shrink:0}.ui-table td[data-priority=actions]{border-top:1px solid var(--border-subtle);flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-top:4px;padding-top:8px;display:flex}.ui-table td[data-priority=actions] .action-row,.ui-table td[data-priority=actions]>div{flex-wrap:nowrap;justify-content:flex-end;gap:6px;width:100%;display:flex}.ui-table td[data-priority=actions]>.action-row>.ui-btn,.ui-table td[data-priority=actions]>div:not(.row-actions)>.ui-btn{flex:auto;min-width:calc(50% - 4px)}.ui-table td.ui-table-empty{text-align:center;padding:32px 16px;display:block}.booking-day-timeline{display:none}.booking-day-agenda{display:grid}.floor-plan--canvas{display:none}.floor-plan-list{display:grid}.access-hours-week{display:none}.access-hours-days{display:grid}}@media (min-width:721px) and (max-width:1024px){.ui-table th.ui-table-index-col,.ui-table td.ui-table-index{z-index:2;background:var(--bg-surface);box-shadow:1px 0 0 var(--border-hairline);position:sticky;left:0}.ui-table th.ui-table-index-col{z-index:3;background:var(--bg-muted);box-shadow:1px 0 0 var(--border-hairline), inset 0 -1px 0 var(--border-hairline)}.ui-table th:nth-child(2),.ui-table td:nth-child(2){z-index:2;background:var(--bg-surface);box-shadow:1px 0 0 var(--border-hairline);position:sticky;left:2.5rem}.ui-table th:nth-child(2){z-index:3;background:var(--bg-muted);box-shadow:1px 0 0 var(--border-hairline), inset 0 -1px 0 var(--border-hairline)}}@media (min-width:721px){.booking-day-agenda,.floor-plan-list,.access-hours-days{display:none}}.booking-day-agenda,.floor-plan-list,.access-hours-days{gap:var(--space-2)}.booking-agenda-row{justify-content:space-between;gap:var(--space-2);border:1px solid var(--border-hairline);background:var(--bg-surface);font-size:var(--text-sm);border-bottom:none;flex-wrap:wrap;padding:10px 12px;display:flex}.booking-agenda-row:first-child{border-radius:var(--radius-card) var(--radius-card) 0 0}.booking-agenda-list .booking-agenda-row:last-child{border-bottom:1px solid var(--border-hairline);border-radius:0 0 var(--radius-card) var(--radius-card)}.booking-agenda-list:only-child .booking-agenda-row,.booking-agenda-list .booking-agenda-row:only-child{border-radius:var(--radius-card);border-bottom:1px solid var(--border-hairline)}.floor-plan-list{gap:var(--space-2)}.floor-plan-list-btn{border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--bg-surface);width:100%;min-height:44px;color:var(--text-primary);font-size:var(--text-sm);text-align:left;cursor:pointer;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-weight:500;display:flex}.floor-plan-list-btn:disabled{opacity:.55;cursor:default}.floor-plan-list-btn--selected{border-color:var(--brass);background:var(--brass-tint)}.floor-plan-list-btn--booked{color:var(--text-tertiary)}.floor-plan-list-status{font-size:var(--text-xs);color:var(--text-tertiary)}.access-hours-days{gap:var(--space-2)}.access-hours-day{border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--bg-surface);grid-template-columns:72px auto 1fr 1fr;align-items:center;gap:8px;padding:10px 12px;display:grid}.access-hours-day-label{font-size:var(--text-sm);font-weight:500}.roles-matrix-wrap{border:1px solid var(--border-hairline);border-radius:var(--radius-card);background:var(--bg-surface);overflow-x:auto}.roles-matrix-title{margin:var(--space-8) 0 var(--space-4);font-size:var(--text-md)}.roles-matrix{border-collapse:collapse;width:100%;min-width:720px;font-size:var(--text-xs)}.roles-matrix caption{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}.roles-matrix th,.roles-matrix td{border-bottom:1px solid var(--border-hairline);text-align:left;padding:10px 12px}.roles-matrix th{color:var(--text-primary);background:var(--bg-muted);font-weight:600}.permission{white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.permission--edit{color:var(--signal)}.permission--view{color:var(--brass)}.permission--none{color:var(--text-secondary)}.roles-matrix th:first-child,.roles-matrix td:first-child{z-index:1;background:var(--bg-surface);box-shadow:1px 0 0 var(--border-hairline);position:sticky;left:0}.roles-matrix thead th:first-child{background:var(--bg-muted)}.floor-plan-scroll{-webkit-overflow-scrolling:touch;overflow-x:auto}@media (max-width:720px){.floor-plan-scroll .floor-plan{min-width:480px;min-height:280px}.access-hours-day{grid-template-columns:1fr}}@media (max-width:480px){.page-subnav:not(.page-subnav--inset):not(:has(.ui-seg--tabs)){margin-left:calc(-1 * var(--space-4));margin-right:calc(-1 * var(--space-4));margin-top:calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4)}}.ui-table-wrap{border:1px solid var(--border-hairline);border-radius:var(--radius-card);background:var(--bg-surface);overflow:visible}.row-actions{flex-wrap:nowrap;justify-content:flex-end;align-items:center;gap:6px;display:flex}.row-actions>.ui-btn--tertiary{border-color:var(--border-hairline);background:var(--bg-surface)}.row-menu{position:relative}.row-menu>summary{cursor:pointer;border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--bg-surface);width:36px;height:36px;color:var(--ink);justify-content:center;align-items:center;list-style:none;display:inline-flex}.row-menu>summary::-webkit-details-marker{display:none}.row-menu>div{z-index:3;background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);min-width:9rem;box-shadow:var(--shadow-lg);gap:4px;margin-top:4px;padding:4px;display:none;position:absolute;right:0}.row-menu[open]>div{display:grid}.ui-table tbody tr:nth-last-child(-n+3) .row-menu>div{margin-top:0;bottom:calc(100% + 4px)}.row-menu>div .ui-btn{justify-content:flex-start;width:100%}.ui-table{border-collapse:separate;border-spacing:0;width:100%;font-family:var(--font-ui);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.ui-table th{text-align:left;color:var(--text-primary);font-weight:600;font-size:var(--text-xs);letter-spacing:.01em;white-space:nowrap;background:var(--bg-muted);line-height:var(--line-snug);z-index:2;box-shadow:inset 0 -1px 0 var(--border-hairline);background-clip:padding-box;border-bottom:0;padding:11px 14px;position:sticky;top:0}.ui-table th:first-child{border-top-left-radius:calc(var(--radius-card) - 1px)}.ui-table th:last-child{border-top-right-radius:calc(var(--radius-card) - 1px)}.ui-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);font-size:var(--text-sm);line-height:var(--line-snug);vertical-align:middle;padding:12px 14px}.ui-table tbody tr:last-child td{border-bottom:none}.ui-table tbody tr:hover td{background:var(--row-hover)}.ui-table-empty{color:var(--text-tertiary);text-align:center;padding:48px 16px}.ui-table-empty .empty-state{padding:0}.ui-table-empty:has(.ui-skeleton-stack){padding:var(--space-4)}.ui-skeleton-stack{gap:var(--space-3);display:grid}.ui-skeleton{background:linear-gradient(90deg, var(--bg-muted) 25%, var(--border-subtle) 50%, var(--bg-muted) 75%);background-size:200% 100%;border-radius:6px;height:16px;animation:1.4s ease-in-out infinite ui-skeleton;display:block}.ui-skeleton:nth-child(odd){width:92%}@keyframes ui-skeleton{0%{background-position:100% 0}to{background-position:-100% 0}}.app-toast{top:max(16px, env(safe-area-inset-top,0px));right:max(16px, env(safe-area-inset-right,0px));z-index:80;background:var(--ink);max-width:min(360px,100vw - 32px);color:var(--text-on-ink);font-size:var(--text-sm);line-height:var(--line-snug);border-radius:var(--radius-md);box-shadow:var(--shadow-md);align-items:center;gap:10px;padding:10px 12px 10px 14px;display:flex;position:fixed}.app-toast--error{background:var(--rust)}.app-toast--ok,.app-toast--neutral{background:var(--ink)}.app-toast-dismiss{width:36px;height:36px;color:inherit;opacity:.7;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;flex-shrink:0;font-size:18px;line-height:1}.app-toast-dismiss:hover{opacity:1;background:#ffffff1f}.ui-table-search{min-width:260px;max-width:320px;font-size:var(--text-sm);background-image: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='%238b949e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cline x1='21' y1='21' x2='16.65' y2='16.65'/%3E%3C/svg%3E");background-position:10px;background-repeat:no-repeat;background-size:14px;padding-left:32px}.ui-table-panel{gap:var(--space-3);flex-direction:column;display:flex}.ui-table-toolbar{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.ui-table-toolbar .filter-control{flex:none;width:auto;min-width:10rem;max-width:16rem}.filter-control{flex:160px;min-width:0;max-width:320px}.search-clear-wrap{position:relative}.search-clear-wrap:has(.search-clear) .ui-input{padding-right:32px}.search-clear{width:28px;height:36px;color:var(--text-secondary);cursor:pointer;background:0 0;border:0;font-size:16px;line-height:1;position:absolute;top:0;right:4px}.filter-bar .filter-control:first-child{flex:2 280px;max-width:none}.ui-table-th--sortable{-webkit-user-select:none;user-select:none}.ui-table-th-btn{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.ui-table-th-btn:hover{color:var(--ink)}.ui-table-th-label{align-items:center;gap:4px;display:inline-flex}.ui-table-sort-indicator{font-size:var(--text-2xs);color:var(--accent)}.ui-table-pager{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-1);flex-wrap:wrap;display:flex}.ui-table-pager-meta{font-size:var(--text-xs);color:var(--text-secondary)}.ui-table-pager-controls{align-items:center;gap:var(--space-2);display:flex}.ui-table-pager-page{font-size:var(--text-xs);color:var(--text-secondary);text-align:center;min-width:48px}.ui-table-page-size{min-width:110px;font-size:var(--text-xs)}.login-page{background:var(--bg-page);min-height:100dvh;font-family:var(--font-ui);grid-template-columns:1fr 1fr;display:grid}.login-brand-panel{color:#f7f8fb;padding:var(--space-10);background:radial-gradient(60% 50% at 15% 0,#3d5afe61,#0000 70%),radial-gradient(50% 40% at 100% 100%,#0ea5b738,#0000 70%),#0d1226;flex-direction:column;justify-content:space-between;display:flex}.login-brand-mark{align-items:center;gap:var(--space-3);display:flex}.login-brand-mark img{width:auto;height:36px;display:block}.login-brand-mark .app-logo{background:var(--accent);color:var(--text-on-accent)}.login-brand-mark .app-logo:after{display:none}.login-brand-word{font-family:var(--font-ui);font-size:var(--text-lg);letter-spacing:var(--tracking-tight);color:#fff;flex-direction:column;font-weight:600;line-height:1.1;display:flex}.login-brand-sub{letter-spacing:.14em;text-transform:uppercase;color:#ffffffb3;font-size:11px;font-weight:500}.login-brand-hero{max-width:360px}.login-brand-hero h1{font-family:var(--font-ui);font-size:clamp(var(--text-2xl), 4vw, var(--text-3xl));letter-spacing:var(--tracking-tight);font-weight:600;line-height:var(--line-tight);margin-bottom:var(--space-4);color:#fff}.login-brand-hero p{color:#ffffffc2;font-size:var(--text-md);line-height:var(--line-relaxed)}.login-brand-foot{font-size:var(--text-2xs);color:#ffffff80;letter-spacing:var(--tracking-wide);text-transform:uppercase}.login-form-panel{padding:var(--space-8);justify-content:center;align-items:center;display:flex}.login-card{background:var(--bg-surface);width:100%;max-width:400px;padding:var(--space-8);border:1px solid var(--border-hairline);border-radius:var(--radius-card);box-shadow:var(--shadow-md)}.login-title{font-family:var(--font-ui);font-weight:600;font-size:var(--text-xl);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-1);line-height:var(--line-tight)}.login-subtitle{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--line-normal);margin-bottom:var(--space-6)}@media (max-width:860px){.login-page{grid-template-rows:auto 1fr;grid-template-columns:1fr}.login-brand-panel{padding:var(--space-6);gap:var(--space-6);min-height:auto}.login-brand-hero{max-width:none}.login-brand-hero h1{font-size:var(--text-2xl)}.login-brand-foot{display:none}.login-form-panel{padding:var(--space-6);align-items:flex-start}.login-card{max-width:440px}}@media (max-width:480px){.login-card{padding:var(--space-5)}}.grid-stats{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));display:grid}.grid-cards{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(280px,1fr));display:grid}.grid-tables{gap:var(--space-4);margin-bottom:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(320px,1fr));display:grid}.filter-bar{gap:var(--space-2);margin-bottom:var(--space-3);background:0 0;border:none;flex-wrap:wrap;align-items:center;padding:0;display:flex}.inventory-search{flex:0 16rem;width:16rem;margin-left:auto}.filter-bar .ui-input,.filter-bar .ui-select{width:100%;min-width:0}@media (min-width:721px){.page-header-actions .filter-bar{flex-wrap:nowrap;width:max-content;margin-bottom:0}.page-header-actions .filter-bar .filter-control,.page-header-actions .filter-bar .filter-control:first-child{flex:none;width:auto;max-width:11rem}.page-header-actions .filter-bar .ui-select{width:11rem}}@media (max-width:720px){.filter-bar{flex-direction:column;align-items:stretch}.filter-bar>*,.filter-bar .ui-field,.filter-bar .ui-input,.filter-bar .ui-select,.filter-bar .filter-control,.filter-control,.page-header-actions .ui-select,.page-header-actions .ui-input,.toolbar .ui-field,.toolbar .ui-input,.toolbar .ui-select{flex:none;width:100%;min-width:0;max-width:none}}.toolbar{gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.toolbar-start,.toolbar-end{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.form-grid{gap:var(--space-4);display:grid}.form-section{gap:var(--space-3);padding:var(--space-4) 0 0;border-top:1px solid var(--border-hairline);margin:0;display:grid}.form-grid>.form-section:first-child{border-top:0;padding-top:0}.form-section-title{font-family:var(--font-ui);font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-title);color:var(--text-primary);line-height:var(--line-snug);margin:0}.form-grid--2{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;display:grid}.form-grid--3{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;display:grid}.quote-line-row,.visitor-bulk-row{align-items:end;gap:var(--space-2);display:grid}.quote-line-row{grid-template-columns:minmax(0,1fr) 90px 120px 44px}.quote-who-name{font-weight:var(--weight-medium);align-items:baseline;gap:8px;display:flex}.quote-who-type,.quote-who-detail,.quote-who-meta{color:var(--text-tertiary);font-size:var(--text-xs);font-weight:var(--weight-regular)}.quote-who-name>:first-child,.quote-who-detail,.quote-who-meta{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.quote-who-type{flex-shrink:0}.quote-pdf-frame{border:1px solid var(--border-hairline);background:#f3f3f3;width:100%;height:calc(85dvh - 168px);min-height:420px;display:block;overflow:auto}.quote-pdf-frame canvas{background:#fff;width:100%;height:auto;display:block}.quote-pdf-frame canvas+canvas{margin-top:12px}.quote-pdf-status{color:var(--text-secondary);margin:0;padding:24px}.quote-table .ui-table{table-layout:fixed;width:100%}.quote-table td:has(.row-actions){width:10.5rem}.visitor-bulk-row{grid-template-columns:repeat(3,minmax(0,1fr)) 44px}.detail-grid{margin:0 0 var(--space-6)}.detail-field dt{margin-bottom:var(--space-1);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--weight-medium)}.detail-field dd{color:var(--text-primary);font-size:var(--text-sm);margin:0}.invoice-lines{margin-bottom:var(--space-4)}.invoice-totals{gap:var(--space-2);width:min(100%,320px);padding:var(--space-4);border-top:1px solid var(--border-hairline);font-size:var(--text-sm);margin-left:auto;display:grid}.invoice-totals>div{justify-content:space-between;gap:var(--space-4);display:flex}.invoice-totals .invoice-total{padding-top:var(--space-2);border-top:1px solid var(--border-subtle);font-weight:var(--weight-semibold)}@media (max-width:720px){.form-grid--2,.form-grid--3,.quote-line-row,.visitor-bulk-row{grid-template-columns:1fr}.quote-line-row,.visitor-bulk-row{padding:var(--space-3);border:1px solid var(--border-subtle);border-radius:var(--radius-md);background:var(--bg-surface)}.quote-line-row+.quote-line-row,.visitor-bulk-row+.visitor-bulk-row{margin-top:var(--space-3)}.quote-line-row>.ui-btn,.visitor-bulk-row>.ui-btn{width:100%}}.portal-cafe-layout{gap:var(--space-6);grid-template-columns:1.3fr 1fr;align-items:start;display:grid}@media (max-width:860px){.portal-cafe-layout{grid-template-columns:1fr}}.form-error{color:var(--rust);font-size:var(--text-xs);font-weight:var(--weight-medium)}.form-success{color:var(--signal);font-size:var(--text-xs);font-weight:var(--weight-medium)}.add-member{gap:var(--space-5);display:grid}.add-member-steps{flex-wrap:wrap;gap:8px 16px;margin:0;padding:0;list-style:none;display:flex}.add-member-steps li{font-size:var(--text-xs);color:var(--text-tertiary);align-items:center;gap:6px;display:flex}.add-member-steps li span{border:1px solid;border-radius:999px;justify-content:center;align-items:center;width:18px;height:18px;font-size:11px;display:inline-flex}.add-member-steps li.is-current{color:var(--ink);font-weight:var(--weight-semibold)}.add-member-steps li.is-current span{background:var(--accent);border-color:var(--accent);color:var(--text-on-accent)}.add-member-steps li.is-done{color:var(--text-secondary)}.add-member-steps li.is-done span{background:var(--signal-tint);border-color:var(--signal);color:var(--signal)}.add-member-section-title{margin:0 0 var(--space-3);font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--ink);letter-spacing:var(--tracking-tight)}.add-member-who{gap:var(--space-4);grid-template-columns:120px 1fr;align-items:start;display:grid}@media (max-width:560px){.add-member-who{grid-template-columns:1fr}}.add-member-photo{justify-items:center;gap:6px;display:grid}.add-member-photo-btn{border:1px dashed var(--border-strong);background:var(--bg-muted);width:112px;height:112px;color:var(--text-secondary);cursor:pointer;text-align:center;border-radius:999px;justify-content:center;align-items:center;padding:0;display:flex;overflow:hidden}.add-member-photo-btn span{font-size:var(--text-xs);font-weight:var(--weight-medium);gap:2px;padding:8px;display:grid}.add-member-photo-btn small{font-weight:var(--weight-regular);color:var(--text-tertiary)}.add-member-photo-btn.has-photo{border-style:solid}.add-member-photo-btn img{object-fit:cover;width:100%;height:100%}.add-member-photo-btn:hover{border-color:var(--accent);color:var(--ink)}.add-member-photo-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.add-member-photo-actions{gap:4px;display:flex}.add-member-doors{gap:8px;margin:0;padding:0;list-style:none;display:grid}.add-member-door{border:1px solid var(--border-hairline);border-radius:var(--radius-md);cursor:pointer;background:var(--bg-surface);align-items:center;gap:10px;padding:10px 12px;display:flex}.add-member-door.is-on{border-color:var(--accent);background:var(--accent-tint,color-mix(in srgb, var(--accent) 8%, transparent))}.add-member-door-body{gap:2px;min-width:0;display:grid}.add-member-door-name{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink)}.add-member-door-meta{font-size:var(--text-xs);color:var(--text-tertiary);align-items:center;gap:6px;display:inline-flex}.add-member-dot{background:var(--text-tertiary);border-radius:999px;width:7px;height:7px}.add-member-dot.is-online{background:var(--signal)}.add-member-more{border:1px solid var(--border-hairline);border-radius:var(--radius-md);padding:10px 12px}.add-member-more>summary{cursor:pointer;font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--ink);list-style:none}.add-member-more>summary::-webkit-details-marker{display:none}.add-member-more>summary:before{content:"▸ ";color:var(--text-tertiary)}.add-member-more[open]>summary:before{content:"▾ "}.add-member-consent-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.add-member-consents{gap:8px;margin-top:8px;display:grid}.add-member-consents label{font-size:var(--text-sm);color:var(--ink);align-items:flex-start;gap:8px;display:flex}.add-member-partial{margin-top:4px}.banner{align-items:flex-start;gap:var(--space-3);border-radius:var(--radius-md);background:var(--bg-muted);font-size:var(--text-sm);margin-bottom:var(--space-4);line-height:var(--line-snug);border:1px solid #0000;padding:10px 14px;display:flex}.banner--error{border-color:color-mix(in srgb, var(--rust) 35%, transparent);background:var(--rust-tint);color:var(--rust)}.banner--ok{border-color:color-mix(in srgb, var(--signal) 35%, transparent);background:var(--signal-tint);color:var(--signal)}.banner--warn{border-color:color-mix(in srgb, var(--brass) 35%, transparent);background:var(--brass-tint);color:var(--brass)}.action-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.stack{gap:var(--space-6);display:grid}.stack-sm{gap:var(--space-4);display:grid}.empty-state{padding:var(--space-10) var(--space-6);text-align:center;color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--line-normal)}.empty-state-title{margin-bottom:var(--space-2);color:var(--text-primary);font-size:var(--text-base);font-weight:var(--weight-semibold);display:block}.empty-state-action{margin-top:var(--space-4);justify-content:center;display:flex}.route-state{justify-content:center;align-items:center;gap:var(--space-4);min-height:50vh;padding:var(--space-6);text-align:center;flex-direction:column;display:flex}.route-state--page{min-height:100dvh}.route-state-title{font-size:var(--text-lg);margin:0;line-height:1.3}.route-state-copy{max-width:48ch;color:var(--text-secondary);font-size:var(--text-sm);margin:0}.route-state-actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.panel{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-card);padding:var(--space-5)}.panel-title{font-size:var(--text-base);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);margin-bottom:var(--space-3);color:var(--ink);line-height:var(--line-tight)}.muted{color:var(--text-secondary);font-size:var(--text-sm);line-height:var(--line-normal)}.checkbox-row{font-size:var(--text-sm);color:var(--text-primary);align-items:center;gap:8px;display:flex}.checkbox-row input{accent-color:var(--accent)}.ui-field{gap:6px;display:grid}.form-grid .ui-field{align-self:start}.ui-dialog-overlay{z-index:50;padding:max(var(--space-4), env(safe-area-inset-top,0px)) var(--space-4) max(var(--space-4), env(safe-area-inset-bottom,0px));isolation:isolate;animation:fade-in .15s var(--ease-out);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ui-dialog-backdrop{background:var(--overlay);cursor:pointer;border:none;padding:0;position:absolute;inset:0}.ui-dialog-panel{z-index:1;background:var(--bg-surface);border-radius:var(--radius-card);border:1px solid var(--border-hairline);box-shadow:var(--shadow-lg);padding:var(--space-6) var(--space-6) var(--space-5);overscroll-behavior:contain;width:420px;max-width:90vw;max-height:85dvh;animation:dialog-in .18s var(--ease-out);flex-direction:column;display:flex;position:relative;overflow:hidden}.ui-dialog-title{font-size:var(--text-lg);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--ink);line-height:var(--line-tight);flex:1;min-width:0;margin:0}.ui-dialog-header{align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-4);flex-shrink:0;display:flex}.ui-dialog-x{width:44px;height:44px;color:var(--text-secondary);cursor:pointer;border-radius:var(--radius-md);background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;margin:-8px -12px 0 0;font-size:22px;line-height:1;display:inline-flex}.ui-dialog-x:hover{background:var(--bg-muted);color:var(--ink)}.ui-dialog-x:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.ui-dialog-body{margin-bottom:var(--space-4);font-size:var(--text-sm);line-height:var(--line-normal);color:var(--text-secondary);flex:1;min-height:0;overflow-y:auto}.ui-dialog-actions{justify-content:flex-end;gap:var(--space-2);padding-top:var(--space-4);border-top:1px solid var(--border-subtle);flex-wrap:wrap;flex-shrink:0;display:flex}@media (max-width:720px){.ui-dialog-overlay{align-items:flex-end;padding:0}.ui-dialog-panel{border-radius:var(--radius-card) var(--radius-card) 0 0;width:100%;max-width:100%;max-height:100dvh;padding:var(--space-5) var(--space-4) max(var(--space-4), env(safe-area-inset-bottom,0px))}.ui-dialog-body{-webkit-overflow-scrolling:touch;overscroll-behavior:contain}.ui-dialog-actions{flex-direction:column-reverse;align-items:stretch}.ui-dialog-actions .ui-btn{width:100%}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes dialog-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.status-pill{border-radius:var(--radius-pill);font-family:var(--font-ui);font-weight:var(--weight-medium);font-size:var(--text-xs);text-transform:none;white-space:nowrap;border:none;align-items:center;gap:6px;padding:2px 10px 2px 8px;line-height:1.4;display:inline-flex}.status-pill:before{content:"";background:currentColor;border-radius:50%;flex-shrink:0;width:6px;height:6px}.status-pill--ok{color:var(--signal);background:var(--signal-tint)}.status-pill--warn{color:var(--brass);background:var(--brass-tint)}.status-pill--danger{color:var(--rust);background:var(--rust-tint)}.status-pill--neutral{color:var(--text-secondary);background:var(--ink-tint-10)}.badge-card{border:1px solid var(--border-hairline);background:var(--bg-surface);border-radius:var(--radius-card);width:100%;display:flex;overflow:hidden}.badge-card-avatar{width:64px;height:64px;margin:var(--space-5);background:linear-gradient(135deg, var(--accent), var(--accent-hover));color:var(--text-on-accent);font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;display:flex}.badge-card-body{padding:var(--space-5) 0;flex-direction:column;flex:1;justify-content:center;min-width:0;display:flex}.badge-card-name{font-family:var(--font-display);font-weight:700;font-size:var(--text-lg);line-height:var(--line-tight);letter-spacing:var(--tracking-tight)}.badge-card-meta{font-size:var(--text-sm);color:var(--text-secondary);margin-top:4px}.badge-card-id{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:6px}.badge-card-stub{background:var(--bg-muted);border-left:1px dashed var(--border-hairline);width:112px;padding:var(--space-4);flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:8px;display:flex}.badge-card-stub-label{font-size:var(--text-2xs);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-tertiary)}.credit-gauge{border:1px solid var(--border-hairline);border-radius:var(--radius-card);background:var(--bg-surface);display:flex;overflow:hidden}.credit-gauge-spine{background:var(--brass);flex-shrink:0;width:4px}.credit-gauge--signal .credit-gauge-spine{background:var(--signal)}.credit-gauge--brass .credit-gauge-spine{background:var(--brass)}.credit-gauge--rust .credit-gauge-spine{background:var(--rust)}.credit-gauge-hint{font-size:var(--text-xs);color:var(--text-tertiary);line-height:var(--line-snug);margin-bottom:8px}.credit-gauge-body{padding:var(--space-4);flex-direction:column;flex:1;display:flex}.credit-gauge-label{font-size:var(--text-2xs);color:var(--text-tertiary);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;margin-bottom:6px}.credit-gauge-value{font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;line-height:var(--line-tight);margin-bottom:4px}.credit-gauge-total{font-size:var(--text-sm);color:var(--text-tertiary);font-weight:var(--weight-regular)}.credit-gauge .progress-track{background:color-mix(in srgb, var(--ink) 10%, var(--bg-muted));height:8px;margin-top:auto}.credit-gauge--signal .progress-fill--signal{background:var(--accent)}.member-profile-tags{margin-top:var(--space-3);flex-wrap:wrap;gap:6px;display:flex}.member-profile-tag{font-size:var(--text-xs);border-radius:var(--radius-pill);background:var(--ink-tint-05);border:1px solid var(--border-hairline);color:var(--text-secondary);padding:2px 8px}.member-hero{gap:var(--space-5);padding:var(--space-5);border:1px solid var(--border-hairline);border-radius:var(--radius-card);background:var(--bg-surface);grid-template-columns:auto minmax(0,1fr);align-items:start;display:grid}.member-hero-nav{min-width:0;margin:0 calc(-1 * var(--space-5)) calc(-1 * var(--space-5));padding:var(--space-3) var(--space-5);border-top:1px solid var(--border-hairline);grid-column:1/-1}.member-hero-nav .page-subnav{background:0 0;border-bottom:0;flex-wrap:nowrap;margin:0;padding:0}@media (max-width:720px){.member-hero-nav .page-subnav-actions{width:auto;padding-bottom:var(--space-3);align-self:stretch}.member-hero-nav .page-subnav-actions .ui-btn{width:100%}}.member-hero-avatar{background:linear-gradient(135deg, var(--accent), var(--accent-hover));width:96px;height:96px;color:var(--text-on-accent);font-weight:var(--weight-semibold);font-size:var(--text-xl);border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;display:flex;overflow:hidden}.member-hero-avatar img{object-fit:cover;width:100%;height:100%}.member-hero-photo{flex-direction:column;align-items:center;gap:6px;display:flex}button.member-hero-photo{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}button.member-hero-photo:hover .member-hero-photo-label,button.member-hero-photo:focus-visible .member-hero-photo-label{text-decoration:underline}button.member-hero-photo:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--radius-md)}button.member-hero-photo:disabled{cursor:default;opacity:.7}.member-hero-photo-label{font:inherit;font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0}.member-hero-photo-label:hover:not(:disabled){text-decoration:underline}.member-hero-photo-label:disabled{color:var(--text-tertiary);cursor:default}.member-hero-title-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.member-hero-title-row .member-hero-name{min-width:0;margin:0}.member-hero-title-actions{flex-shrink:0;align-items:center;gap:8px;display:flex}.member-identity-edit{gap:var(--space-3);max-width:360px;margin:var(--space-4) 0 0;padding:var(--space-4);border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--bg-muted);display:grid}.member-identity-actions{gap:8px;display:flex}.member-facts{gap:var(--space-3) var(--space-6);margin:var(--space-3) 0 0;flex-wrap:wrap;display:flex}.member-facts div{flex-direction:column;gap:1px;display:flex}.member-facts dt{font-size:var(--text-2xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary);font-weight:var(--weight-medium)}.member-facts dd{font-size:var(--text-sm);margin:0}.org-mark{border-radius:var(--radius-md);background:var(--accent-tint);width:72px;height:72px;color:var(--accent);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);flex-shrink:0;justify-content:center;align-items:center;font-size:22px;display:flex;overflow:hidden}.org-mark img{object-fit:contain;background:var(--bg-surface);width:100%;height:100%}.org-fact-wide{flex-basis:100%}.org-contact{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-subtle)}.org-logo-edit{margin-top:var(--space-4);grid-template-columns:minmax(0,1fr) auto auto;align-items:end;gap:8px;max-width:520px;display:grid}.org-snapshot{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}button.org-snap{text-align:left;cursor:pointer;font:inherit;color:inherit;width:100%}button.org-snap:hover{border-color:color-mix(in srgb, var(--accent) 40%, var(--border-hairline))}.member-access{gap:var(--space-4) var(--space-6);margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--border-subtle);grid-template-columns:repeat(2,minmax(0,240px));display:grid}.member-profile-tabs{flex-wrap:wrap;align-items:center;gap:12px 20px;width:100%;min-width:0;display:flex}.member-profile-activity{border-left:1px solid var(--border-hairline);align-items:center;gap:8px;min-width:0;padding-left:20px;display:flex}.member-profile-activity-label{font-size:var(--text-2xs);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary);flex-shrink:0;font-weight:600}@media (max-width:900px){.member-profile-activity{border-left:0;flex-basis:100%;padding-left:0}}.member-cap{font-size:var(--text-xs);color:var(--text-tertiary);margin:0}.member-today{justify-content:space-between;align-items:flex-end;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border-hairline);border-radius:var(--radius-card);background:var(--bg-surface);flex-wrap:wrap;display:flex}.member-today--closed{background:var(--brass-tint-10)}.member-today-kicker{font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary)}.member-today-line{font-size:var(--text-md);font-weight:var(--weight-semibold);margin-top:2px}.member-today-source{font-size:var(--text-xs);color:var(--text-secondary)}.member-week{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;display:grid}.member-week-day{border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--bg-surface);flex-direction:column;gap:4px;min-height:72px;padding:10px;display:flex}.member-week-day--off{background:var(--bg-muted)}.member-week-day--today{border-color:var(--accent)}.member-week-label{font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary)}.member-week-hours{font-size:var(--text-sm);font-weight:var(--weight-medium)}.member-week-day--off .member-week-hours{color:var(--text-tertiary)}@media (max-width:720px){.member-week{grid-template-columns:1fr}.member-week-day{flex-direction:row;justify-content:space-between;align-items:center;min-height:0}}.member-access-item{flex-direction:column;flex:none;align-items:flex-start;gap:2px;min-width:0;display:flex}.member-access-label{font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary)}.member-access-value{font-size:var(--text-sm);font-weight:var(--weight-medium)}.member-access-item--warn .member-access-value{color:var(--brass)}.member-access-hint{font-size:var(--text-xs);color:var(--text-secondary);margin:0}.member-location-select{width:100%;max-width:100%;margin-top:4px}.member-location-select--missing{border-color:var(--brass);background-color:var(--brass-tint-10)}.face-thumb{cursor:zoom-in;background:var(--ink);border:none;border-radius:6px;flex-shrink:0;padding:0;display:block;overflow:hidden}.face-thumb img{object-fit:cover;width:100%;height:100%;display:block}.face-thumb--empty{color:var(--ink-muted);background:var(--surface-2);cursor:default;justify-content:center;align-items:center;font-size:12px;font-weight:600;display:flex}.face-thumb--fill,.member-hero-avatar .face-thumb{border-radius:inherit;width:100%;height:100%}.photo-viewer{z-index:60;padding:var(--space-6);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.photo-viewer-backdrop{cursor:zoom-out;background:#0c0c0ce0;border:none;padding:0;position:absolute;inset:0}.photo-viewer-close{top:max(12px, env(safe-area-inset-top,0px));z-index:2;color:#fff;border-radius:var(--radius-md);cursor:pointer;min-height:32px;font-family:inherit;font-size:var(--text-xs);appearance:none;background:0 0;border:1px solid #ffffff59;padding:0 10px;font-weight:500;line-height:1;position:absolute;right:12px}.photo-viewer-figure{z-index:1;align-items:center;gap:var(--space-3);flex-direction:column;max-width:min(640px,100%);margin:0;display:flex;position:relative}.photo-viewer-figure img{object-fit:contain;border-radius:var(--radius-md);background:#111;width:min(560px,92vw);height:auto;max-height:calc(100dvh - 140px)}.photo-viewer-figure figcaption{color:#fff;font-size:var(--text-sm);border-radius:var(--radius-pill);background:#000000b8;padding:6px 14px}.member-hero-name{font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);line-height:var(--line-tight);margin:0 0 var(--space-1)}.member-hero-line{font-size:var(--text-sm);color:var(--text-secondary);margin:0 0 var(--space-2)}.member-hero-org{font-size:var(--text-sm);color:var(--ink);font-weight:var(--weight-medium);text-decoration:none}.member-hero-org:hover{text-decoration:underline}.member-actions{justify-content:space-between;align-items:center;gap:var(--space-2);margin-bottom:var(--space-5);flex-wrap:wrap;display:flex}.member-actions-main{gap:var(--space-2);flex-wrap:wrap;display:flex}.member-actions .member-action-freeze{color:var(--rust)}.member-actions .member-action-freeze:hover:not(:disabled){color:var(--rust);background:var(--rust-tint-10)}.member-section-nav{margin-bottom:var(--space-5)}.member-section-panel{gap:var(--space-5);flex-direction:column;display:flex}.member-stat-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.member-section-panel>.member-section-head{margin-bottom:0}.member-plan-line{font-size:var(--text-sm);color:var(--text-secondary);margin:0}.member-overview{gap:var(--space-3);grid-template-columns:repeat(6,minmax(0,1fr));align-items:stretch;display:grid}.member-overview-head{grid-column:1/-1;margin-bottom:0}.member-overview .member-stat-grid,.member-overview .member-overview-side{display:contents}.member-overview .credit-gauge{grid-column:span 2}.member-overview .ui-card{height:100%;padding:var(--space-4);flex-direction:column;grid-column:span 3;display:flex}.member-overview .ui-card-body{margin-top:auto}.member-metric{font-size:var(--text-xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);font-variant-numeric:tabular-nums;line-height:var(--line-tight)}.member-dues--open{color:var(--rust)}.member-dues--clear{color:var(--signal)}.member-text-btn{font:inherit;color:var(--accent);cursor:pointer;background:0 0;border:0;padding:0}.member-text-btn:hover{text-decoration:underline}.member-section-head{justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.member-section-head .ui-card-kicker,.member-section-panel>div>.ui-card-kicker{font-size:var(--text-sm);color:var(--text-primary);margin-bottom:0;font-weight:600}.member-section-head .member-plan-line{margin-top:2px}.member-active-plan{padding:var(--space-4);border:1px solid var(--border-hairline);border-radius:var(--radius-card);background:linear-gradient(135deg, var(--ink-tint-05) 0%, var(--bg-surface) 100%)}.member-active-plan-title{font-size:var(--text-sm);font-weight:var(--weight-medium);margin-bottom:4px}.member-active-plan-meta{font-size:var(--text-xs);color:var(--text-secondary)}.member-toast{z-index:100;max-width:min(360px,100vw - 32px);position:fixed;top:16px;right:16px}.member-doc-stack,.member-note-stack{border:1px solid var(--border-hairline);border-radius:var(--radius-md);background:var(--bg-surface);overflow:hidden}.member-note-stack{margin-bottom:var(--space-3)}.member-doc-row,.member-note-row,.member-list-empty{background:var(--bg-surface);border-bottom:1px solid var(--border-subtle);font-size:var(--text-sm);padding:12px 14px}.member-doc-row:last-child,.member-note-row:last-child,.member-list-empty:last-child{border-bottom:0}.member-doc-row{justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.member-list-empty{color:var(--text-tertiary)}.member-note-meta{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:4px}@media (max-width:1100px){.member-overview{grid-template-columns:1fr 1fr}.member-overview .credit-gauge,.member-overview .ui-card{grid-column:span 1}}@media (max-width:720px){.member-hero,.member-overview,.member-overview .credit-gauge,.member-overview .ui-card,.org-snapshot,.org-logo-edit{grid-template-columns:1fr}.member-access-item{flex-basis:100%}.member-location-select{width:100%}.grid-cards,.grid-tables,.board{grid-template-columns:1fr}.list-row{flex-wrap:wrap;align-items:flex-start}.action-row{width:100%}.action-row .ui-btn{flex:calc(50% - 4px)}.page-header-actions .filter-bar{width:100%;margin-bottom:0}}.ui-seg-option:hover:not(.ui-seg-option--active){color:var(--ink)}.ui-seg-option input{opacity:0;pointer-events:none;position:absolute}.activity-timeline-title{font-size:var(--text-sm);color:var(--text-primary);margin:0 0 12px;font-weight:600}.activity-timeline ol{margin:0;padding:0;list-style:none}.activity-timeline-item{padding:0 0 14px 26px;position:relative}.activity-timeline-item:last-child{padding-bottom:0}.activity-timeline-item:not(:last-child):before{content:"";background:var(--border-hairline);width:2px;position:absolute;top:14px;bottom:0;left:4px}.activity-timeline-item:after{content:"";background:var(--text-tertiary);border-radius:50%;width:10px;height:10px;position:absolute;top:4px;left:0}.activity-timeline-item--ok:after{background:var(--signal)}.activity-timeline-item--warn:after{background:var(--brass)}.activity-timeline-item--danger:after{background:var(--rust)}.activity-timeline-copy{min-width:0}.activity-timeline-head{justify-content:space-between;align-items:center;gap:8px;display:flex}.activity-timeline-head strong{font-size:var(--text-sm);font-weight:600}.activity-timeline-head .status-pill{text-transform:none;flex-shrink:0}.activity-timeline-copy time{font-size:var(--text-xs);color:var(--text-tertiary);white-space:nowrap;margin-top:2px;display:block}.ui-table tbody tr.ui-table-row--clickable{cursor:pointer}.ui-table tbody tr.ui-table-row--clickable:hover td{background:var(--row-hover)}.ui-table tbody tr.ui-table-row--clickable:focus-visible td{background:var(--accent-tint)}@media (pointer:coarse){.ui-btn--md,.ui-btn--sm,.ui-input,.ui-select,.app-nav-link,.app-signout,.ui-seg-option,.shell-icon-btn,.shell-topbar-profile,.row-menu>summary,.app-toast-dismiss{min-width:44px;min-height:44px}}@media (max-width:720px){.ui-input,.ui-select,.ui-textarea,.ui-table-search{font-size:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-contrast:more){:root,:root[data-theme=light]{--text-secondary:#333a57;--text-tertiary:#474f6e;--border-hairline:#8993aa}:root[data-theme=dark]{--text-secondary:#d3d8ee;--text-tertiary:#b0b7d4;--border-hairline:#8089ab}.app-nav-link{color:#ffffffeb}}.board{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));align-items:start;display:grid}.board-col{background:var(--ink-tint-05);border:1px solid var(--border-hairline);border-radius:var(--radius-card);padding:var(--space-3);min-height:120px}.board-col-title{font-size:var(--text-2xs);font-weight:var(--weight-medium);letter-spacing:var(--tracking-wider);text-transform:uppercase;color:var(--text-tertiary);padding:var(--space-2) var(--space-2) var(--space-3)}.board-card{background:var(--bg-surface);border:1px solid var(--border-hairline);border-radius:var(--radius-md);padding:var(--space-3);margin-bottom:var(--space-2)}.board-card:last-child{margin-bottom:0}.list-row{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) 0;border-bottom:1px solid var(--border-subtle);display:flex}.list-row:last-child{border-bottom:none}.floor-plan{border:1px solid var(--border-hairline);border-radius:var(--radius-card);background:linear-gradient(var(--ink-tint-05) 1px, transparent 1px), linear-gradient(90deg, var(--ink-tint-05) 1px, transparent 1px), var(--bg-surface);background-size:24px 24px,24px 24px,auto;width:100%;height:320px;position:relative;overflow:hidden}.floor-plan-room{font-family:var(--font-ui);font-size:var(--text-xs);font-weight:var(--weight-medium);border-radius:var(--radius-sm);transition:border-color var(--duration-fast), background var(--duration-fast), box-shadow var(--duration-fast);text-align:center;justify-content:center;align-items:center;padding:4px;line-height:1.2;display:flex;position:absolute;overflow:hidden}.floor-plan-room--available{border:1px solid var(--border-hairline);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer}.floor-plan-room--available:hover{border-color:var(--brass);color:var(--ink);box-shadow:var(--shadow-sm)}.floor-plan-room--booked{border:1px dashed var(--text-tertiary);background:repeating-linear-gradient(-45deg, var(--ink-tint-10), var(--ink-tint-10) 4px, var(--bg-surface) 4px, var(--bg-surface) 8px);color:var(--text-tertiary);cursor:default}.floor-plan-room--waitlistable{cursor:pointer}.floor-plan-room--selected{border:2px solid var(--brass);background:var(--brass-tint);color:var(--ink);cursor:pointer;box-shadow:0 0 0 3px var(--brass-tint)}.dash-charts{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.chart-card--wide{grid-column:span 2}.chart-card--full{grid-column:1/-1}.chart-head{justify-content:space-between;align-items:flex-start;gap:var(--space-3);margin-bottom:var(--space-3);display:flex}.chart-head .ui-card-kicker{margin-bottom:0}.chart-sub{font-size:var(--text-xs);color:var(--text-tertiary);margin:2px 0 0}.chart-empty{margin:var(--space-6) 0;text-align:center;font-size:var(--text-sm);color:var(--text-tertiary)}.chart-donut{align-items:center;gap:var(--space-4);flex-wrap:wrap;display:flex}.chart-donut svg{flex-shrink:0;width:140px;height:140px;transform:none}.chart-donut-value{fill:var(--ink);font-variant-numeric:tabular-nums;font-size:6px;font-weight:600}.chart-donut-label{fill:var(--text-tertiary);font-size:2.6px}.chart-legend{flex:140px;gap:6px;min-width:0;margin:0;padding:0;list-style:none;display:grid}.chart-legend li{font-size:var(--text-xs);color:var(--text-secondary);align-items:center;gap:8px;min-width:0;display:flex}.chart-legend-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.chart-legend-value{font-variant-numeric:tabular-nums;color:var(--ink);white-space:nowrap}.chart-legend--inline{gap:var(--space-3);margin-bottom:var(--space-2);flex-wrap:wrap;display:flex}.chart-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}.chart-bars{padding-top:14px;position:relative}.chart-ymax{color:var(--text-tertiary);font-variant-numeric:tabular-nums;font-size:10px;position:absolute;top:0;left:0}.chart-plot{height:var(--chart-h,150px);border-bottom:1px solid var(--border-hairline);background:repeating-linear-gradient(to bottom, transparent 0, transparent calc(25% - 1px), var(--border-hairline) calc(25% - 1px), var(--border-hairline) 25%);align-items:flex-end;gap:3px;display:flex}.chart-col{flex:1;justify-content:center;align-items:flex-end;gap:1px;min-width:0;height:100%;display:flex}.chart-col:hover{background:var(--accent-tint)}.chart-bar{border-radius:3px 3px 0 0;flex:1;max-width:22px}.chart-axis{gap:3px;margin-top:4px;display:flex}.chart-axis span{text-align:center;min-width:0;color:var(--text-tertiary);white-space:nowrap;flex:1;font-size:10px;overflow:visible}@media (max-width:1100px){.dash-charts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.dash-charts{grid-template-columns:1fr}.chart-card--wide,.chart-card--full{grid-column:auto}}.chart-kpi{margin-bottom:var(--space-3);flex-wrap:wrap;align-items:baseline;gap:4px 12px;display:flex}.chart-kpi-value{font-family:var(--font-display);font-size:var(--text-2xl);font-weight:var(--weight-semibold);letter-spacing:var(--tracking-tight);color:var(--ink);font-variant-numeric:tabular-nums}.chart-kpi-hint{font-size:var(--text-xs);color:var(--text-secondary)}.chart-foot{justify-content:space-between;align-items:baseline;gap:var(--space-3);margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-hairline);font-size:var(--text-sm);color:var(--text-secondary);display:flex}.chart-foot strong{font-size:var(--text-base);color:var(--ink);font-variant-numeric:tabular-nums}.chart-foot--warn strong{color:var(--rust)}.dash-tiles2{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (max-width:560px){.dash-tiles2{grid-template-columns:1fr}}
