
:root{--brand-violet:#5a34d6;--brand-gold:#e0a458;--brand-green:#5fd87f;--brand-ink:#14161c;--brand-canvas:#fafaf7;--brand-plum:#211042;--violet-50:#f2eefc;--violet-100:#e4dbfa;--violet-200:#c9b8f4;--violet-300:#a98fec;--violet-400:#8460e3;--violet-500:#5a34d6;--violet-600:#4a29b8;--violet-700:#3b2196;--violet-800:#2c1870;--violet-900:#211042;--gold-50:#fbf4e9;--gold-100:#f6e7d0;--gold-200:#efd0a3;--gold-300:#e7ba7c;--gold-400:#e0a458;--gold-500:#ce8c3c;--gold-600:#ac722d;--gold-700:#855622;--green-50:#eaf9ee;--green-100:#d3f3dc;--green-200:#a9e9bc;--green-300:#7fdf9c;--green-400:#5fd87f;--green-500:#35bc5b;--green-600:#269247;--green-700:#1e7239;--neutral-0:#fff;--neutral-50:#fafaf7;--neutral-100:#f2f1ec;--neutral-200:#e5e3dc;--neutral-300:#d2cfc6;--neutral-400:#aba89e;--neutral-500:#7c7a72;--neutral-600:#57564f;--neutral-700:#3c3b36;--neutral-800:#26262a;--neutral-900:#14161c;--red-50:#fbedea;--red-100:#f6d7cf;--red-400:#d5543f;--red-500:#c1402c;--red-600:#9e3222;--surface-canvas:var(--neutral-50);--surface-card:var(--neutral-0);--surface-subtle:var(--neutral-100);--surface-hover:var(--neutral-100);--surface-inverse:var(--brand-plum);--surface-tint-violet:var(--violet-50);--surface-tint-gold:var(--gold-50);--surface-tint-green:var(--green-50);--text-primary:var(--neutral-900);--text-secondary:var(--neutral-600);--text-muted:var(--neutral-500);--text-disabled:var(--neutral-400);--text-on-primary:var(--neutral-0);--text-on-accent:var(--brand-ink);--text-on-dark:var(--neutral-50);--text-on-dark-muted:#fafaf7a8;--text-link:var(--violet-600);--border-hairline:var(--neutral-200);--border-strong:var(--neutral-300);--border-on-dark:#fafaf729;--border-focus:var(--brand-violet);--primary:var(--violet-500);--primary-hover:var(--violet-600);--primary-active:var(--violet-700);--primary-subtle:var(--violet-50);--primary-on:var(--neutral-0);--accent:var(--brand-gold);--accent-hover:var(--gold-500);--accent-active:var(--gold-600);--accent-subtle:var(--gold-50);--accent-on:var(--brand-ink);--success:var(--green-500);--success-fill:var(--brand-green);--success-subtle:var(--green-50);--success-text:var(--green-700);--warning:var(--gold-500);--warning-subtle:var(--gold-50);--warning-text:var(--gold-700);--danger:var(--red-500);--danger-hover:var(--red-600);--danger-subtle:var(--red-50);--danger-text:var(--red-600);--focus-ring:0 0 0 3px #5a34d652;--focus-ring-on-dark:0 0 0 3px #e0a4588c}.opspot-dark,[data-theme=dark]{--surface-canvas:var(--brand-plum);--surface-card:#2a1652;--surface-subtle:#1a0d36;--surface-hover:#fafaf70f;--text-primary:var(--neutral-50);--text-secondary:#fafaf7bd;--text-muted:#fafaf78f;--text-disabled:#fafaf757;--border-hairline:#fafaf724;--border-strong:#fafaf742;--primary:var(--brand-gold);--primary-hover:var(--gold-300);--primary-active:var(--gold-500);--primary-subtle:#e0a45829;--primary-on:var(--brand-ink);--accent:var(--violet-400);--accent-hover:var(--violet-300);--accent-on:var(--neutral-0);--text-link:var(--gold-300);--success-text:var(--green-300);--focus-ring:var(--focus-ring-on-dark)}
:root{--font-sans:"Libre Franklin", "Helvetica Neue", Helvetica, Arial, system-ui, -apple-system, "Segoe UI", sans-serif;--font-display:var(--font-sans);--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--weight-black:800;--text-display-2xl:4rem;--text-display-xl:3.25rem;--text-display-lg:2.5rem;--text-h1:2rem;--text-h2:1.5rem;--text-h3:1.25rem;--text-body-lg:1.125rem;--text-body:1rem;--text-body-sm:.875rem;--text-label:.8125rem;--text-overline:.75rem;--leading-tight:1.05;--leading-snug:1.2;--leading-normal:1.4;--leading-relaxed:1.6;--tracking-tight:-.02em;--tracking-snug:-.01em;--tracking-normal:0;--tracking-wide:.08em;--numeric-tabular:tabular-nums;--measure:66ch}
:root{--space-0:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:2rem;--space-8:2.5rem;--space-9:3rem;--space-10:4rem;--space-11:5rem;--space-12:6rem;--space-13:8rem;--gap-inline:var(--space-2);--gap-tight:var(--space-3);--gap-default:var(--space-4);--gap-loose:var(--space-6);--section-y:var(--space-12);--container-px:var(--space-6);--container-max:1200px;--container-narrow:760px}
:root{--radius-xs:6px;--radius-sm:8px;--radius-md:10px;--radius-lg:14px;--radius-xl:20px;--radius-2xl:28px;--radius-pill:999px;--border-width:1px;--border-width-strong:1.5px;--border:var(--border-width) solid var(--border-hairline);--border-strong-rule:var(--border-width) solid var(--border-strong);--shadow-none:none;--shadow-xs:0 1px 2px #14161c0d;--shadow-sm:0 1px 3px #14161c0f, 0 1px 2px #14161c0a;--shadow-md:0 6px 20px #14161c12;--shadow-lg:0 14px 40px #14161c1a;--shadow-accent:0 8px 28px #e0a45847;--ease-standard:cubic-bezier(.2, 0, 0, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--duration-fast:.12s;--duration-base:.2s;--duration-slow:.32s;--transition-base:all var(--duration-base) var(--ease-standard);--z-base:1;--z-sticky:100;--z-dropdown:200;--z-overlay:300;--z-modal:400;--z-toast:500;--z-tooltip:600}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-body-lg);font-weight:var(--weight-regular);line-height:var(--leading-relaxed);color:var(--text-primary);background-color:var(--surface-canvas);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:var(--weight-black);line-height:var(--leading-snug);letter-spacing:var(--tracking-snug);color:var(--text-primary);text-wrap:balance;margin:0}p{text-wrap:pretty;margin:0}a{color:var(--text-link);text-underline-offset:2px;text-decoration-thickness:1px}[data-numeric],.tabular{font-variant-numeric:var(--numeric-tabular)}:where(a,button,input,select,textarea,[tabindex]):focus-visible{box-shadow:var(--focus-ring);border-radius:var(--radius-sm);outline:none}::selection{background:var(--violet-200);color:var(--brand-ink)}.opspot-wordmark{font-family:var(--font-display);font-weight:var(--weight-black);letter-spacing:-.02em;color:var(--text-primary)}img,svg{max-width:100%}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--rail-width:17rem;--page-max:74rem}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}body{min-height:100vh}.skip-link{left:-9999px;top:var(--space-2);z-index:var(--z-toast);padding:var(--space-3) var(--space-4);background:var(--surface-card);border:var(--border);border-radius:var(--radius-md);font-weight:var(--weight-bold);position:absolute}.skip-link:focus{left:var(--space-4)}.shell{grid-template-columns:var(--rail-width) minmax(0, 1fr);min-height:100vh;display:grid}.rail{gap:var(--space-6);padding:var(--space-6) var(--space-5);background:var(--surface-card);border-right:var(--border);flex-direction:column;align-self:start;max-height:100vh;display:flex;position:sticky;top:0;overflow-y:auto}.rail__brand{gap:var(--space-1);flex-direction:column;text-decoration:none;display:flex}.rail__wordmark{font-family:var(--font-display);font-weight:var(--weight-black);font-size:var(--text-h2);letter-spacing:var(--tracking-tight);color:var(--text-primary)}.rail__tenant{font-size:var(--text-body-sm);color:var(--text-secondary)}.rail__nav{gap:var(--space-1);flex-direction:column;display:flex}.rail__footer{gap:var(--space-2);font-size:var(--text-label);color:var(--text-muted);flex-direction:column;margin-top:auto;display:flex}.nav-link{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:3rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-body);font-weight:var(--weight-medium);transition:background-color var(--duration-fast) var(--ease-standard);text-decoration:none;display:flex}.nav-link:hover{background:var(--surface-hover)}.nav-link[aria-current=page]{background:var(--primary-subtle);color:var(--text-primary);font-weight:var(--weight-bold)}.nav-link__count{min-width:1.75rem;padding:0 var(--space-2);border-radius:var(--radius-pill);background:var(--danger);color:var(--primary-on);font-size:var(--text-label);font-weight:var(--weight-bold);text-align:center;font-variant-numeric:var(--numeric-tabular)}.main{min-width:0;padding:var(--space-7) var(--container-px) var(--space-11)}.main__inner{max-width:var(--page-max);gap:var(--space-6);flex-direction:column;margin:0 auto;display:flex}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--space-4);flex-wrap:wrap;display:flex}.page-head__text{gap:var(--space-2);max-width:var(--measure);flex-direction:column;display:flex}.page-head h1{font-size:var(--text-h1)}.page-head__lede{font-size:var(--text-body-lg);color:var(--text-secondary)}.eyebrow{font-size:var(--text-overline);font-weight:var(--weight-bold);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--text-muted)}.panel{background:var(--surface-card);border:var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-xs);overflow:hidden}.panel__head{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-bottom:var(--border);flex-wrap:wrap;display:flex}.panel__title{font-size:var(--text-h3);font-weight:var(--weight-bold)}.panel__note{font-size:var(--text-body-sm);color:var(--text-secondary)}.panel__body{padding:var(--space-6);gap:var(--space-4);flex-direction:column;display:flex}.panel--alert{border-color:var(--danger);border-width:var(--border-width-strong)}.records{margin:0;padding:0;list-style:none}.record{align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-6);border-top:var(--border);grid-template-columns:minmax(0,1fr) auto;display:grid}.records>.record:first-child{border-top:none}a.record{color:inherit;text-decoration:none}a.record:hover{background:var(--surface-hover)}.record__main{gap:var(--space-1);flex-direction:column;min-width:0;display:flex}.record__title{font-size:var(--text-body-lg);font-weight:var(--weight-semibold);color:var(--text-primary);overflow-wrap:anywhere}.record__meta{gap:var(--space-1) var(--space-3);font-size:var(--text-body-sm);color:var(--text-secondary);flex-wrap:wrap;display:flex}.record__side{align-items:center;gap:var(--space-3);text-align:right;justify-self:end;display:flex}.record__amount{font-size:var(--text-body-lg);font-weight:var(--weight-bold);font-variant-numeric:var(--numeric-tabular);white-space:nowrap}.badge{align-items:center;gap:var(--gap-inline);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);font-size:var(--text-label);font-weight:var(--weight-bold);white-space:nowrap;background:var(--surface-subtle);color:var(--text-secondary);display:inline-flex}.badge--good{background:var(--success-subtle);color:var(--success-text)}.badge--warn{background:var(--warning-subtle);color:var(--warning-text)}.badge--bad{background:var(--danger-subtle);color:var(--danger-text)}.badge--note{background:var(--primary-subtle);color:var(--text-primary)}.stats{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));display:grid}.stat{gap:var(--space-1);padding:var(--space-5);background:var(--surface-card);border:var(--border);border-radius:var(--radius-lg);flex-direction:column;display:flex}.stat__label{font-size:var(--text-body-sm);color:var(--text-secondary)}.stat__value{font-size:var(--text-display-lg);font-weight:var(--weight-black);line-height:var(--leading-tight);font-variant-numeric:var(--numeric-tabular)}.stat--attention{border-color:var(--danger);background:var(--danger-subtle)}.stat--attention .stat__value{color:var(--danger-text)}.empty{align-items:flex-start;gap:var(--space-3);padding:var(--space-8) var(--space-6);text-align:left;flex-direction:column;display:flex}.empty__title{font-size:var(--text-h3);font-weight:var(--weight-bold)}.empty__body{font-size:var(--text-body);color:var(--text-secondary);max-width:var(--measure)}.btn{justify-content:center;align-items:center;gap:var(--gap-inline);min-height:2.875rem;padding:var(--space-3) var(--space-5);border:var(--border-width-strong) solid transparent;border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--text-body);font-weight:var(--weight-bold);cursor:pointer;transition:background-color var(--duration-fast) var(--ease-standard);text-decoration:none;display:inline-flex}.btn:disabled{cursor:not-allowed;color:var(--text-disabled)}.btn--primary{background:var(--primary);color:var(--primary-on)}.btn--primary:hover:not(:disabled){background:var(--primary-hover)}.btn--primary:disabled{background:var(--surface-subtle)}.btn--quiet{border-color:var(--border-strong)}.btn--quiet:hover:not(:disabled){background:var(--surface-hover)}.btn--danger{border-color:var(--danger);color:var(--danger-text);background:var(--surface-card)}.btn--danger:hover:not(:disabled){background:var(--danger-subtle)}.btn-row{gap:var(--space-3);flex-wrap:wrap;display:flex}.form{gap:var(--space-5);flex-direction:column;max-width:34rem;display:flex}.field{gap:var(--space-2);flex-direction:column;display:flex}.field>label{font-size:var(--text-body);font-weight:var(--weight-semibold)}.field__help{font-size:var(--text-body-sm);color:var(--text-secondary)}.field input,.field select,.field textarea{min-height:3rem;padding:var(--space-3) var(--space-4);border:var(--border-width-strong) solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--text-body-lg)}.field textarea{min-height:8rem;line-height:var(--leading-relaxed);resize:vertical}.field-row{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));display:grid}.search{gap:var(--space-3);align-items:stretch;display:flex}.search input{min-width:0;min-height:3rem;padding:var(--space-3) var(--space-4);border:var(--border-width-strong) solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface-card);color:var(--text-primary);font-family:inherit;font-size:var(--text-body-lg);flex:auto}.notice{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);border:var(--border);background:var(--surface-subtle);font-size:var(--text-body)}.notice--error{border-color:var(--danger);background:var(--danger-subtle);color:var(--danger-text)}.notice--good{border-color:var(--success);background:var(--success-subtle);color:var(--success-text)}.proposal{gap:var(--space-5);padding:var(--space-6);border-top:var(--border);flex-direction:column;display:flex}.proposals>.proposal:first-child{border-top:none}.proposal__head{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.proposal__what{font-size:var(--text-h3);font-weight:var(--weight-bold);margin-right:auto}.proposal__why{font-size:var(--text-body-lg);color:var(--text-secondary);max-width:var(--measure)}.proposal__draft{padding:var(--space-5);background:var(--surface-subtle);border:var(--border);border-left:4px solid var(--accent);border-radius:var(--radius-md);gap:var(--space-3);flex-direction:column;display:flex}.proposal__draft-subject{font-weight:var(--weight-bold);font-size:var(--text-body-lg)}.proposal__draft-body{white-space:pre-wrap;font-size:var(--text-body-lg);line-height:var(--leading-relaxed)}.proposal__evidence{gap:var(--space-2);font-size:var(--text-body-sm);color:var(--text-secondary);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.proposal__decide{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.detail{gap:var(--space-6);grid-template-columns:minmax(0,2fr) minmax(0,1fr);align-items:start;display:grid}.definition{gap:var(--space-3) var(--space-5);font-size:var(--text-body);grid-template-columns:max-content minmax(0,1fr);margin:0;display:grid}.definition dt{color:var(--text-secondary)}.definition dd{overflow-wrap:anywhere;margin:0}.timeline{gap:var(--space-4);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.auth-shell{min-height:100vh;padding:var(--space-6);place-items:center;display:grid}.auth-card{gap:var(--space-4);width:min(30rem,100%);padding:var(--space-8);background:var(--surface-card);border:var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);flex-direction:column;display:flex}.auth-card h1{font-size:var(--text-h1)}.auth-card p{color:var(--text-secondary);font-size:var(--text-body)}.stack{gap:var(--space-4);flex-direction:column;display:flex}.row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.muted{color:var(--text-secondary)}.visually-hidden{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:60rem){.shell{grid-template-columns:minmax(0,1fr)}.rail{border-right:none;border-bottom:var(--border);max-height:none;position:static}.rail__nav{flex-flow:wrap}.nav-link{flex:auto;justify-content:center}.detail,.record{grid-template-columns:minmax(0,1fr)}.record__side{text-align:left;justify-self:start}}@media (prefers-reduced-motion:reduce){*{transition-duration:1ms!important;animation-duration:1ms!important}}.record__actions{align-items:center;gap:var(--space-2);padding:0 var(--space-6) var(--space-4);flex-wrap:wrap;display:flex}.btn--small{min-height:2.25rem;padding:var(--space-2) var(--space-4);font-size:var(--text-body-sm)}.record__actions-note{color:var(--text-secondary);font-size:var(--text-body-sm)}.record__actions-note--error{color:var(--danger-text)}.checklist{gap:var(--space-4);padding:var(--space-5) var(--space-6) var(--space-6);counter-reset:checklist;flex-direction:column;margin:0;list-style:none;display:flex}.checklist__step{gap:var(--space-2);flex-direction:column;align-items:flex-start;display:flex}.checklist__step:before{counter-increment:checklist;content:counter(checklist);border-radius:var(--radius-full,999px);background:var(--surface-hover);width:1.75rem;height:1.75rem;font-weight:var(--weight-bold);justify-content:center;align-items:center;display:inline-flex}.checklist__title{font-weight:var(--weight-bold)}.checklist__body{color:var(--text-secondary);margin:0}fieldset.field{border:0;min-inline-size:0;margin:0;padding:0}.field__legend{font-size:var(--text-body);font-weight:var(--weight-semibold);padding:0}.choice{align-items:center;gap:var(--space-3);font-size:var(--text-body-lg);display:flex}.field .choice input[type=radio],.field .choice input[type=checkbox]{width:1.25rem;height:1.25rem;min-height:0;accent-color:var(--primary);padding:0}.hours{gap:var(--space-3);flex-direction:column;display:flex}.hours__row{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.hours__day{min-width:6.5rem;font-weight:var(--weight-semibold)}.field .hours__row input[type=time]{min-height:2.75rem;padding:var(--space-2) var(--space-3);font-size:var(--text-body);flex:none}
