:root{color-scheme:dark;--color-navy:#2b3d4b;--color-navy-raised:#35485a;--color-gold:#ca8d05;--color-cream:#d9d2be;--color-white:#ffffff;--color-signal-red:#c0392b;--color-signal-amber:#e67e22;--color-signal-green:#27ae60;--bg:var(--color-navy);--surface:var(--color-navy-raised);--ink:var(--color-white);--ink-2:var(--color-cream);--accent:var(--color-gold);--on-accent:var(--color-navy);--border-subtle:rgba(217,210,190,0.15);--border-focus:var(--color-gold);--backdrop:rgba(0,0,0,0.4);--font-family:"Segoe UI",-apple-system,system-ui,sans-serif;--font-size-display:28px;--font-size-title:20px;--font-size-body:16px;--font-size-secondary:14px;--font-size-caption:12px;--space-xs:4px;--space-sm:8px;--space-md:12px;--space-lg:16px;--space-xl:24px;--space-xxl:32px;--radius-card:8px;--radius-chip:4px;--radius-round:50%;--warn-wash:rgba(230,126,34,0.09);--motion-state:150ms ease;--motion-sheet:300ms ease;--motion-spin:900ms linear;--motion-skeleton:1400ms;--state-disabled-opacity:0.45;--state-busy-opacity:0.9;--state-press-scale:0.98;--state-stale-opacity:0.55;--spinner-size:16px;--touch-target:44px;--avatar:var(--touch-target);--avatar-lg:96px}:root[data-theme=light]{color-scheme:light;--bg:#f5f2ea;--surface:#ffffff;--ink:var(--color-navy);--ink-2:#5d6e7b;--border-subtle:rgba(43,61,75,0.15)}@media (prefers-reduced-motion:reduce){:root{--motion-state:0ms;--motion-sheet:0ms;--motion-spin:1800ms linear}}*{box-sizing:border-box;margin:0;padding:0}html{height:100%;-webkit-tap-highlight-color:transparent}body{min-height:100svh;background:var(--bg);color:var(--ink);font-family:var(--font-family);font-size:var(--font-size-body);line-height:1.5;-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;transition:background var(--motion-sheet),color var(--motion-sheet)}::selection{background:var(--accent);color:var(--on-accent)}:focus-visible{outline:2px solid var(--border-focus);outline-offset:2px}h1,h2,h3{font-weight:600;line-height:1.2}.screen-centre{min-height:100svh;align-items:center;justify-content:center;padding:calc(env(safe-area-inset-top) + var(--space-xl)) calc(env(safe-area-inset-right) + var(--space-xl)) calc(env(safe-area-inset-bottom) + var(--space-xl)) calc(env(safe-area-inset-left) + var(--space-xl));text-align:center}.page,.screen-centre{display:flex;flex-direction:column;gap:var(--space-xl)}.page{width:100%;max-width:560px;margin:0 auto;padding:var(--space-lg) calc(env(safe-area-inset-right) + var(--space-lg)) var(--space-lg) calc(env(safe-area-inset-left) + var(--space-lg));flex:1 1}.empty-area{flex:1 1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);text-align:center;padding:var(--space-xl) 0}.display{font-size:var(--font-size-display)}.secondary{font-size:var(--font-size-secondary);color:var(--ink-2)}.caption{font-size:var(--font-size-caption);color:var(--ink-2);text-transform:uppercase;letter-spacing:.08em}.btn-primary{min-height:var(--touch-target);padding:var(--space-md) var(--space-xl);background:var(--accent);color:var(--on-accent);font-family:var(--font-family);font-size:var(--font-size-body);font-weight:600;border:1px solid var(--accent);border-radius:var(--radius-card);cursor:pointer}.btn-quiet{color:var(--ink-2);font-size:var(--font-size-secondary);border:none;border-radius:var(--radius-card)}.btn-destructive,.btn-quiet{min-height:var(--touch-target);padding:var(--space-md) var(--space-lg);background:transparent;font-family:var(--font-family);cursor:pointer}.btn-destructive{color:var(--color-signal-red);font-size:var(--font-size-body);border:1px solid var(--color-signal-red);border-radius:var(--radius-card)}.btn-signin{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);width:100%}.card{background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:var(--space-lg)}.narrative-list{display:flex;flex-direction:column}.narrative-item{padding:var(--space-md) 0;border-bottom:1px solid var(--border-subtle)}.narrative-item:last-child{border-bottom:none}.narrative-item-label{font-weight:600}.vision-statement{padding-left:var(--space-lg);border-left:3px solid var(--accent);line-height:1.6}.card-link{display:block;color:inherit;text-decoration:none;border-radius:var(--radius-card);-webkit-tap-highlight-color:transparent}.failure-banner{background:var(--surface);border:1px solid var(--border-subtle);border-left:3px solid var(--color-signal-red);border-radius:var(--radius-card);padding:var(--space-lg);text-align:left}.auth-card{width:100%;max-width:420px;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:var(--space-xxl) var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-lg);text-align:center}.auth-logo{width:200px;height:auto}.logo-dark{display:block}.logo-light,:root[data-theme=light] .logo-dark{display:none}:root[data-theme=light] .logo-light{display:block}.auth-title{margin-top:var(--space-sm)}.auth-card.access-notice{border-left:3px solid var(--color-signal-amber);align-items:flex-start;text-align:left}.auth-footnote{text-transform:none;letter-spacing:normal}.tab-shell{min-height:100svh;display:flex;flex-direction:column}.tab-content{flex:1 1;display:flex;flex-direction:column;padding-bottom:calc(var(--space-xxl) + var(--touch-target) + env(safe-area-inset-bottom))}.bottom-nav{position:fixed;bottom:0;left:0;right:0;z-index:10;display:flex;border-top:1px solid var(--border-subtle);padding:0 env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);background:var(--bg)}.nav-item{flex:1 1;min-height:var(--touch-target);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);padding:var(--space-sm) 0;color:var(--ink-2);text-decoration:none;transition:color var(--motion-state);-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.nav-label{font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.08em;line-height:1.2}.nav-icon{display:block;flex:none}.nav-item-active{color:var(--accent)}.nav-item-active .nav-label{font-weight:600}.top-bar{position:-webkit-sticky;position:sticky;top:0;padding:calc(env(safe-area-inset-top) + var(--space-sm)) calc(env(safe-area-inset-right) + var(--space-sm)) var(--space-sm) calc(env(safe-area-inset-left) + var(--space-sm));background:var(--bg);z-index:10}.masthead,.top-bar{display:flex;align-items:center}.masthead{flex:1 1;justify-content:center;min-height:var(--touch-target);padding:0 var(--space-md);min-width:0}.masthead img{height:22px;width:auto;max-width:100%;object-fit:contain}.menu-button,.top-bar-gutter{width:var(--touch-target);flex:none}.menu-button{height:var(--touch-target);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-xs);background:transparent;border:none;border-radius:var(--radius-card);cursor:pointer}.menu-button span{display:block;width:18px;height:2px;background:var(--ink);border-radius:1px}.option-row{display:flex;align-items:center;justify-content:space-between;min-height:var(--touch-target);padding:var(--space-md);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);color:var(--ink);font-family:var(--font-family);font-size:var(--font-size-body);cursor:pointer;width:100%;text-align:left;transition:border-color var(--motion-state)}.option-row-active{border-color:var(--accent)}.option-tick{color:var(--accent);font-weight:600}.drawer-backdrop{position:fixed;inset:0;background:var(--backdrop);z-index:20}.drawer{position:fixed;top:0;left:0;bottom:0;width:min(300px,80vw);background:var(--surface);border-right:1px solid var(--border-subtle);padding:calc(var(--space-xl) + env(safe-area-inset-top)) var(--space-lg) calc(var(--space-lg) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-xs);z-index:30;animation:drawer-in var(--motion-sheet)}@keyframes drawer-in{0%{transform:translateX(-100%)}to{transform:translateX(0)}}.drawer-identity{display:flex;align-items:center;gap:var(--space-md);min-height:var(--touch-target);padding:var(--space-md);margin-bottom:var(--space-lg);color:var(--ink);text-decoration:none;border-radius:var(--radius-card);border:1px solid var(--border-subtle);transition:border-color var(--motion-state)}.drawer-identity:active,.drawer-identity:has(>.press-pending){border-color:var(--accent)}.drawer-identity-text{display:flex;flex-direction:column;gap:var(--space-xs);min-width:0;flex:1 1}.drawer-identity-name{font-size:var(--font-size-body);font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drawer-chevron{color:var(--ink-2);font-size:var(--font-size-title);flex:none}.avatar{width:var(--avatar);height:var(--avatar);flex:none;border-radius:50%;border:1px solid var(--border-subtle);object-fit:cover;display:inline-flex;align-items:center;justify-content:center;background:var(--bg);color:var(--accent);font-size:var(--font-size-secondary);font-weight:600;letter-spacing:.04em;-webkit-user-select:none;-moz-user-select:none;user-select:none}.avatar-lg{width:var(--avatar-lg);height:var(--avatar-lg);font-size:var(--font-size-display)}.drawer-group{display:flex;flex-direction:column;gap:var(--space-xs);margin-bottom:var(--space-sm)}.drawer-group-caption{padding:0 var(--space-md);margin-top:var(--space-sm)}.drawer-item{display:flex;align-items:center;gap:var(--space-md);min-height:var(--touch-target);padding:var(--space-md);color:var(--ink);font-size:var(--font-size-body);text-decoration:none;border:none;background:transparent;border-radius:var(--radius-card);cursor:pointer;font-family:var(--font-family);text-align:left;transition:color var(--motion-state)}.drawer-item:active{color:var(--accent)}.drawer-icon{display:block;flex:none;color:var(--ink-2)}.drawer-item:active .drawer-icon,.drawer-item:has(>.press-pending) .drawer-icon{color:inherit}.drawer-spacer{flex:1 1}.member-row-identity{min-width:0}.member-row-identity,.profile-card{display:flex;align-items:center;gap:var(--space-md)}.profile-card{flex-direction:column;text-align:center}.profile-actions{display:flex;gap:var(--space-md);flex-wrap:wrap;justify-content:center}.chip{display:inline-block;padding:var(--space-xs) var(--space-sm);font-size:var(--font-size-caption);text-transform:uppercase;letter-spacing:.08em;color:var(--ink-2);border:1px solid var(--border-subtle);border-radius:var(--radius-chip)}.chip-active{color:var(--accent);border-color:var(--accent);font-weight:600}a.chip{text-decoration:none;min-height:var(--touch-target);display:inline-flex;align-items:center;padding:var(--space-xs) var(--space-lg)}.chip-amber{color:var(--color-signal-amber);border-color:var(--color-signal-amber)}.chip-red{color:var(--color-signal-red);border-color:var(--color-signal-red)}.chip-green{border-color:var(--color-signal-green)}.chip-green,.status-ok{color:var(--color-signal-green)}.status-warn{color:var(--color-signal-amber)}.status-off{color:var(--color-signal-red)}.status-neutral{color:var(--ink-2)}.hero-fraction{font-size:calc(var(--font-size-display) * 1.3)}.status-bar{display:flex;height:var(--space-xs);border-radius:var(--radius-chip);overflow:hidden;background:var(--border-subtle)}.status-bar-segment{height:100%}.status-bar-ok{background:var(--accent)}.status-bar-off{background:var(--color-signal-red);opacity:.85}.status-bar-none{background:var(--ink-2);opacity:.4}.scorecard-list{display:flex;flex-direction:column;gap:var(--space-md)}.scorecard-list-fab-clear{padding-bottom:calc(var(--space-xxl) + var(--touch-target))}.scorecard-row{display:flex;flex-direction:column;gap:var(--space-xs);width:100%;min-height:var(--touch-target);padding:var(--space-md) 0;background:transparent;border:none;border-bottom:1px solid var(--border-subtle);text-align:left;font-family:var(--font-family);color:var(--ink);cursor:pointer}.scorecard-row-bottom,.scorecard-row-top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm)}.scorecard-row-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1 1;min-width:0}.status-dot{flex:none;width:var(--space-md);height:var(--space-md);border-radius:50%}.status-dot-ok{background:var(--accent)}.status-dot-off{background:var(--color-signal-red);opacity:.85}.status-dot-none{background:var(--ink-2);opacity:.4}.sparkline{flex:none;display:block}.sparkline-bar{fill:var(--ink-2)}.sparkline-ok{fill:var(--accent)}.sparkline-off{fill:var(--color-signal-red);opacity:.85}.sparkline-none{fill:var(--ink-2);opacity:.4}.sparkline-current{stroke:var(--ink);stroke-width:1}.sparkline-goal{stroke:var(--border-subtle);stroke-width:1;stroke-dasharray:2 2}.bar-chart-wrap{display:flex;flex-direction:column;gap:var(--space-xs)}.bar-chart-axis{display:flex;justify-content:space-between}.fab{position:fixed;right:calc(var(--space-lg) + env(safe-area-inset-right));bottom:calc(var(--space-xxl) + var(--touch-target) + env(safe-area-inset-bottom));z-index:15;min-height:var(--touch-target);padding:var(--space-md) var(--space-xl);background:var(--accent);color:var(--on-accent);font-family:var(--font-family);font-size:var(--font-size-body);font-weight:600;border:1px solid var(--accent);border-radius:var(--radius-card);cursor:pointer}.sheet-backdrop{position:fixed;inset:0;background:var(--backdrop);z-index:40;display:flex;align-items:flex-end}.sheet-panel{width:100%;max-height:85vh;overflow-y:auto;background:var(--surface);border:1px solid var(--border-subtle);border-bottom:none;border-radius:var(--radius-card) var(--radius-card) 0 0;padding:var(--space-lg) var(--space-lg) calc(var(--space-lg) + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:var(--space-md);z-index:41;animation:sheet-in var(--motion-sheet)}@keyframes sheet-in{0%{transform:translateY(100%)}to{transform:translateY(0)}}.sheet-handle{width:36px;height:4px;border-radius:var(--radius-chip);background:var(--border-subtle);margin:0 auto}.stepper-fullscreen{position:fixed;inset:0;z-index:40;background:var(--bg);display:flex;flex-direction:column;padding:calc(var(--space-lg) + env(safe-area-inset-top)) calc(var(--space-lg) + env(safe-area-inset-right)) calc(var(--space-lg) + env(safe-area-inset-bottom)) calc(var(--space-lg) + env(safe-area-inset-left));gap:var(--space-xl)}.stepper-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md)}.stepper-dots{display:flex;gap:var(--space-xs);flex-wrap:wrap}.stepper-dot{width:var(--space-sm);height:var(--space-sm);border-radius:50%;background:var(--border-subtle)}.stepper-dot-done{background:var(--ink-2)}.stepper-dot-active{background:var(--accent)}.stepper-body{flex:1 1;display:flex;flex-direction:column;gap:var(--space-lg);justify-content:flex-start;padding-top:var(--space-xxl)}.stepper-input{min-height:calc(var(--touch-target) * 1.4);padding:var(--space-md);background:var(--surface);color:var(--ink);font-family:var(--font-family);font-size:calc(var(--font-size-display) * 1.2);text-align:center;border:1px solid var(--border-subtle);border-radius:var(--radius-card);width:100%}.stepper-input:focus{outline:none;border-color:var(--border-focus)}.answer-field{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.form-field{display:flex;flex-direction:column;gap:var(--space-xs)}.answer-input{flex:1 1;min-height:var(--touch-target);padding:var(--space-md);background:var(--bg);color:var(--ink);font-family:var(--font-family);border:1px solid var(--border-subtle);border-radius:var(--radius-card);transition:border-color var(--motion-state)}.answer-input:focus{outline:none;border-color:var(--border-focus)}.answer-input::placeholder{color:var(--ink-2);opacity:.6}.filter-panel{display:flex;flex-direction:column;gap:var(--space-md)}.segmented{display:flex;gap:var(--space-xs);padding:var(--space-xs);border:1px solid var(--border-subtle);border-radius:var(--radius-card)}.segment{flex:1 1;min-height:var(--touch-target);display:flex;align-items:center;justify-content:center;padding:0 var(--space-xs);color:var(--ink-2);font-size:var(--font-size-secondary);text-align:center;text-decoration:none;white-space:nowrap;border:1px solid transparent;border-radius:var(--radius-chip);transition:color var(--motion-state),background var(--motion-state),border-color var(--motion-state);-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.segment:active,.segment:has(>.press-pending){color:var(--accent)}.segment:active{transition-duration:0s}.segment-active{background:var(--surface);border-color:var(--accent);color:var(--accent);font-weight:600}.filter-custom{border-top:1px solid var(--border-subtle)}.filter-summary{display:flex;align-items:center;justify-content:space-between;gap:var(--space-sm);min-height:var(--touch-target);color:var(--ink-2);cursor:pointer;list-style:none;transition:color var(--motion-state)}.filter-summary::-webkit-details-marker{display:none}.filter-summary:active{color:var(--accent)}.filter-chevron{flex:none;transition:transform var(--motion-state)}.filter-custom[open] .filter-chevron{transform:rotate(180deg)}.filter-row{display:flex;flex-wrap:wrap;align-items:flex-end;gap:var(--space-sm);padding-bottom:var(--space-sm)}.filter-field{flex:1 1;display:flex;flex-direction:column;gap:var(--space-xs);min-width:calc(var(--space-xxl) * 5)}.filter-input{width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none}.filter-input::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer}.filter-input:focus::-webkit-calendar-picker-indicator{opacity:1}.filter-actions{display:flex;align-items:center;gap:var(--space-sm);flex:1 1 100%}a.btn-quiet{display:inline-flex;align-items:center;text-decoration:none}.archive-day{font-size:var(--font-size-secondary);color:var(--ink-2);padding-top:var(--space-sm)}.client-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-md) 0}.key-figure{font-size:var(--font-size-title);font-weight:600;color:var(--accent)}.skeleton{height:var(--space-xl);border-radius:var(--radius-chip);background:var(--surface);border:1px solid var(--border-subtle);margin-bottom:var(--space-sm);animation:skeleton-breathe var(--motion-skeleton) ease-in-out infinite alternate}@keyframes skeleton-breathe{0%{opacity:.55}to{opacity:1}}@media (prefers-reduced-motion:reduce){.skeleton{animation:none;opacity:var(--state-stale-opacity)}}.skeleton-short{width:60%}.skeleton-card{height:calc(var(--space-xl) * 2.5);border-radius:var(--radius-card)}.skeleton-chip{height:var(--touch-target);width:calc(var(--space-xl) * 2);margin-bottom:0}.brief-md{display:flex;flex-direction:column;gap:var(--space-md);margin-top:var(--space-lg)}.brief-md h1{font-size:var(--font-size-title)}.brief-md h2,.brief-md h3{font-size:var(--font-size-caption);color:var(--accent);text-transform:uppercase;letter-spacing:.08em;margin-top:var(--space-sm)}.brief-md li,.brief-md p{font-size:var(--font-size-secondary);line-height:1.6}.brief-md strong{font-weight:600;color:var(--accent)}.brief-md ul{padding-left:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-xs)}.brief-md hr{border:none;border-top:1px solid var(--border-subtle)}.brief-title{font-size:var(--font-size-title)}.brief-md-tight{margin-top:var(--space-sm)}.brief-footnote{margin-top:0}.brief-footnote p{font-size:var(--font-size-caption);color:var(--ink-2)}.agenda{list-style:none;display:flex;flex-direction:column;margin-top:var(--space-xl)}.agenda:first-child,.caption+.agenda{margin-top:var(--space-sm)}.agenda-row{display:grid;grid-template-columns:3.5rem 1fr;grid-gap:var(--space-md);gap:var(--space-md);align-items:start;padding:var(--space-md) 0;border-top:1px solid var(--border-subtle)}.agenda-row:first-child{border-top:none;padding-top:0}.agenda-row:last-child{padding-bottom:0}.agenda-time{display:flex;flex-direction:column;gap:var(--space-xs);font-feature-settings:"tnum";font-variant-numeric:tabular-nums;line-height:1.3}.agenda-start{font-size:var(--font-size-secondary);font-weight:600}.agenda-end{font-size:var(--font-size-caption);color:var(--ink-2)}.agenda-event{display:flex;flex-direction:column;gap:var(--space-xs);border-left:2px solid var(--accent);padding-left:var(--space-md)}.agenda-title{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-sm);font-weight:600;line-height:1.4}.agenda-detail,.agenda-title{font-size:var(--font-size-secondary)}.agenda-detail{color:var(--ink-2);line-height:1.5}.agenda-place{font-size:var(--font-size-caption);color:var(--ink-2)}.agenda-chip{flex:none}.agenda-row-clear{padding:var(--space-sm) 0}.agenda-row-clear .agenda-event{border-left-color:var(--border-subtle);border-left-style:dashed}.agenda-row-clear .agenda-title{font-weight:400;color:var(--ink-2)}.agenda-row-clear .agenda-detail,.agenda-row-clear .agenda-title{font-size:var(--font-size-caption)}.brief-table-scroll{overflow-x:auto}.brief-table{border-collapse:collapse;width:100%}.brief-table td,.brief-table th{text-align:left;vertical-align:top;padding:var(--space-sm) var(--space-md) var(--space-sm) 0;border-bottom:1px solid var(--border-subtle);font-size:var(--font-size-caption);line-height:1.5}.brief-table th{color:var(--accent);text-transform:uppercase;letter-spacing:.08em}.gallery-section{display:flex;flex-direction:column;gap:var(--space-md)}.gallery-row{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-items:center}.loose-end-actions{margin-top:var(--space-md)}.answer-eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.answer-subject{font-weight:600}.answer-options{display:flex;flex-direction:column;gap:var(--space-md);width:100%}.answer-options .btn-primary{text-decoration:none}.answer-input{font-size:var(--font-size-body)}@media (prefers-reduced-motion:reduce){.drawer{animation:none}}.gallery-nav{position:static;padding:0;border:1px solid var(--border-subtle);border-radius:var(--radius-card)}.conn-header{justify-content:space-between;gap:var(--space-md)}.conn-header,.conn-icon-btn{display:flex;align-items:center}.conn-icon-btn{width:var(--touch-target);height:var(--touch-target);flex-shrink:0;border-radius:var(--radius-round);background:var(--surface);border:1px solid var(--border-subtle);color:var(--ink-2);justify-content:center;cursor:pointer;transition:border-color var(--motion-state),color var(--motion-state)}.conn-icon-btn:active,.conn-icon-btn:has(>.press-pending){border-color:var(--accent);color:var(--accent)}.conn-icon-btn:active{transition-duration:0s}.conn-icon-btn-accent{border-color:var(--accent);color:var(--accent)}.conn-title{font-size:var(--font-size-title);font-weight:600}.conn-header-gutter{width:var(--touch-target);flex-shrink:0}.conn-group{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);overflow:hidden}.conn-row{display:flex;align-items:center;gap:var(--space-md);min-height:var(--touch-target);padding:var(--space-md);background:transparent;border:none;color:var(--ink);font-family:var(--font-family);font-size:var(--font-size-body);text-align:left;text-decoration:none;width:100%;cursor:pointer;transition:background var(--motion-state)}.conn-row:active,.conn-row:has(>.press-pending){background:var(--bg)}.conn-row:active{transition-duration:0s}.conn-row-warn{background:var(--warn-wash)}.conn-tile{width:var(--space-xxl);height:var(--space-xxl);flex-shrink:0;border-radius:var(--radius-chip);background:var(--bg);border:1px solid var(--border-subtle);display:flex;align-items:center;justify-content:center;font-size:var(--font-size-secondary);font-weight:600;color:var(--ink-2)}.conn-tile-warn{border-color:var(--color-signal-amber);color:var(--color-signal-amber)}.conn-tile-lg{width:var(--avatar);height:var(--avatar);border-radius:var(--radius-card);background:var(--surface);font-size:var(--font-size-title)}.conn-row-text{display:flex;flex-direction:column;gap:2px;flex-grow:1;min-width:0}.conn-row-trailing{display:flex;align-items:center;gap:var(--space-sm);flex-shrink:0}.conn-chevron{display:flex;align-items:center;color:var(--ink-2)}.conn-divider{height:1px;background:var(--border-subtle);margin-left:calc(var(--space-xxl) + var(--space-md) + var(--space-md))}.conn-note{font-size:var(--font-size-caption);color:var(--ink-2);line-height:1.45}.conn-state{display:flex;flex-direction:column;gap:var(--space-sm);background:var(--surface);border:1px solid var(--border-subtle);border-radius:var(--radius-card);padding:var(--space-lg)}.conn-state-warn{background:var(--warn-wash);border-color:var(--color-signal-amber)}.conn-state-head{display:flex;align-items:center;gap:var(--space-sm)}.conn-dot{width:var(--space-sm);height:var(--space-sm);border-radius:var(--radius-round);flex-shrink:0;background:var(--ink-2)}.conn-dot-good{background:var(--color-signal-green)}.conn-dot-warn{background:var(--color-signal-amber)}.conn-powers{flex-direction:column}.conn-power,.conn-powers{display:flex;gap:var(--space-sm)}.conn-power{align-items:flex-start;font-size:var(--font-size-secondary)}.conn-power svg{flex-shrink:0;margin-top:2px;color:var(--ink-2)}.conn-action{display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);min-height:var(--touch-target);padding:var(--space-md) var(--space-lg);background:transparent;border:1px solid var(--border-subtle);border-radius:var(--radius-card);color:var(--ink);font-family:var(--font-family);font-size:var(--font-size-body);text-align:left;width:100%;cursor:pointer;transition:border-color var(--motion-state)}.conn-action:active,.conn-action:has(>.press-pending){border-color:var(--accent)}.conn-action:active{transition-duration:0s}.conn-action-danger{justify-content:center;border-color:var(--color-signal-red);color:var(--color-signal-red)}.conn-action-quiet{justify-content:center;border-color:transparent;color:var(--ink-2);font-size:var(--font-size-secondary)}.conn-action-quiet:active{border-color:var(--color-signal-red);color:var(--color-signal-red)}.conn-stop{display:flex;align-items:flex-start;gap:var(--space-sm);font-size:var(--font-size-secondary)}.conn-stop-mark{color:var(--color-signal-red);flex-shrink:0}.btn-destructive,.btn-primary,.btn-quiet,.fab{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);transition:opacity var(--motion-state),color var(--motion-state),border-color var(--motion-state),transform var(--motion-state)}a[aria-disabled=true],button:disabled{opacity:var(--state-disabled-opacity);cursor:default}button:disabled:active{transform:none;opacity:var(--state-disabled-opacity)}input:disabled,select:disabled,textarea:disabled{opacity:var(--state-disabled-opacity);cursor:default}button[data-busy=true],button[data-busy=true]:disabled{opacity:var(--state-busy-opacity);cursor:progress}.spinner{display:inline-block;flex:none;width:var(--spinner-size);height:var(--spinner-size);border:2px solid;border-top:2px solid transparent;border-radius:var(--radius-round);animation:spin var(--motion-spin) infinite;vertical-align:-2px}@keyframes spin{to{transform:rotate(1turn)}}@media (prefers-reduced-motion:reduce){.btn-primary:active,.fab:active{transform:none}.spinner{animation:pulse var(--motion-spin) ease-in-out infinite alternate}@keyframes pulse{0%{opacity:.3}to{opacity:1}}}[data-stale=true]{opacity:var(--state-stale-opacity);transition:opacity var(--motion-state)}.toast-rail{position:fixed;left:0;right:0;bottom:calc(var(--space-lg) + var(--touch-target) + env(safe-area-inset-bottom));z-index:20;flex-direction:column;align-items:center;padding:0 calc(env(safe-area-inset-right) + var(--space-lg)) 0 calc(env(safe-area-inset-left) + var(--space-lg));pointer-events:none}.toast,.toast-rail{display:flex;gap:var(--space-sm)}.toast{align-items:flex-start;width:100%;max-width:480px;padding:var(--space-md) var(--space-lg);background:var(--surface);border:1px solid var(--border-subtle);border-left:3px solid var(--accent);border-radius:var(--radius-card);font-size:var(--font-size-secondary);text-align:left;animation:toast-in var(--motion-state)}.toast-failed{border-left-color:var(--color-signal-red)}.toast-tick{flex:none;color:var(--accent);font-weight:600}.toast-failed .toast-tick{color:var(--color-signal-red)}@keyframes toast-in{0%{opacity:0;transform:translateY(var(--space-sm))}}.boot{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);padding:var(--space-xl);text-align:center}.boot-logo{width:160px;height:auto}.boot-rule{width:160px;height:2px;border-radius:var(--radius-chip);background:var(--border-subtle);overflow:hidden}.boot-rule:after{content:"";display:block;width:40%;height:100%;background:var(--accent);animation:boot-sweep 1.2s ease-in-out infinite}@keyframes boot-sweep{0%{transform:translateX(-100%)}to{transform:translateX(250%)}}@media (prefers-reduced-motion:reduce){.boot-rule:after{width:100%;animation:pulse 1.2s ease-in-out infinite alternate}}.btn-destructive:active,.btn-primary:active,.btn-quiet:active,.card-link:active,.card-link:active>.card,.drawer-item:active,.fab:active,.menu-button:active,.nav-item:active,.option-row:active,.scorecard-row:active,button.chip:active{transition-duration:0s}.btn-primary:active,.btn-primary:has(>.press-pending),.fab:active,.fab:has(>.press-pending){opacity:.9;transform:scale(var(--state-press-scale))}.btn-destructive:active,.btn-quiet:active,.btn-quiet:has(>.press-pending),.drawer-item:active,.drawer-item:has(>.press-pending),.menu-button:active,.nav-item:active,.nav-item:has(>.press-pending),a:not([class]):has(>.press-pending){color:var(--accent)}.masthead:active,.masthead:has(>.press-pending){opacity:.9;transition-duration:0s}.card-link:active>.card,.card-link:has(>.press-pending)>.card,.option-row:active,.option-row:has(>.press-pending),a.chip:has(>.press-pending),button.chip:active{border-color:var(--accent)}.scorecard-row:active{opacity:.85}.press-pending{display:none}