*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;tab-size:4;font-family:system-ui,Segoe UI,Roboto,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;line-height:1.15}body{margin:0}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{border-color:currentColor}button,input,optgroup,select,textarea{margin:0;font-family:inherit;font-size:100%;line-height:1.15}button,[type=button],[type=reset],[type=submit]{-webkit-appearance:button}legend{padding:0}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../../../fonts/inter-latin.woff2)format("woff2")}@font-face{font-family:Inter;font-style:italic;font-weight:100 900;font-display:swap;src:url(../../../fonts/inter-latin-italic.woff2)format("woff2")}:root{--white:#fff;--regal-navy:#1f4988;--sage-green:#68a257;--fiery-terracotta:#e94d35;--dark-orange:#ff9233;--royal-purple:#7c3aed;--color-brand:var(--regal-navy);--color-brand-strong:color-mix(in srgb, var(--regal-navy) 85%, black);--color-brand-soft:color-mix(in srgb, var(--regal-navy) 20%, var(--white));--color-on-brand:var(--white);--color-bg:var(--white);--color-surface:#fafafa;--color-surface-strong:#f0f0f0;--color-text:#171717;--color-text-muted:#6b7280;--color-border:#e5e5e5;--color-border-strong:#d4d4d4;--color-spark:#b9b9b9;--color-success:var(--sage-green);--color-warning:var(--dark-orange);--color-danger:var(--fiery-terracotta);--color-info:#2964bc;--color-purple:var(--royal-purple);--color-focus:#2964bc;--color-focus-soft:#2964bc40;--space-0-5:.25rem;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:4rem;--radius-sm:.15rem;--radius-md:.25rem;--radius-lg:.5rem;--radius-full:9999px;--border-1:1px solid var(--color-border);--border-1-strong:1px solid var(--color-border-strong);--border-2:2px solid var(--color-border);--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.25rem;--text-2xl:1.5rem;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 32px #0000001f;--z-modal:100;--z-nav:50;--container-max:80rem;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}html{-webkit-text-size-adjust:100%}body{font-family:var(--font-sans);font-size:var(--text-base);color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;line-height:1.5}h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-1);font-weight:600;line-height:1.25}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}p{margin:0 0 var(--space-2)}a{color:var(--color-brand-strong);text-underline-offset:2px;text-decoration:underline}a:hover{color:var(--color-brand)}button,input,select,textarea{font-family:inherit;font-size:inherit}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px;border-radius:2px}table{border-collapse:collapse;width:100%}th{text-align:left;font-weight:600}.btn{justify-content:center;align-items:center;gap:var(--space-0-5);font-size:var(--text-sm);white-space:nowrap;-webkit-user-select:none;user-select:none;cursor:pointer;padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);border:1px solid #0000;font-weight:500;line-height:1;text-decoration:none;transition:background-color .12s,border-color .12s,color .12s;display:inline-flex}.btn:hover{text-decoration:none}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed}.btn--primary{background:var(--color-brand);border-color:var(--color-brand);color:var(--color-on-brand)}.btn--primary:hover{background:var(--color-brand-strong);border-color:var(--color-brand-strong)}.btn--secondary{background:var(--color-surface);border-color:var(--color-border-strong);color:var(--color-text)}.btn--secondary:hover{background:var(--color-surface-strong)}.btn--ghost{color:var(--color-text);background:0 0;border-color:#0000}.btn--ghost:hover{background:var(--color-surface-strong)}.btn--danger{background:var(--color-danger);border-color:var(--color-danger);color:var(--white)}.btn--danger:hover{filter:brightness(.92)}.btn--sm{padding:var(--space-0-5) var(--space-1);font-size:var(--text-xs)}.btn--md{padding:var(--space-1) var(--space-2);font-size:var(--text-sm)}.btn--lg{padding:var(--space-1) var(--space-3);font-size:var(--text-base)}.btn--icon{width:var(--space-4);height:var(--space-4);flex:none;padding:0}.badge{align-items:center;gap:var(--space-0-5);font-size:var(--text-xs);border-radius:var(--radius-full);white-space:nowrap;border:1px solid #0000;padding:.2em .6em;font-weight:600;line-height:1;display:inline-flex}.badge--neutral{background:var(--color-surface-strong);color:var(--color-text-muted)}.badge--success{background:color-mix(in srgb, var(--color-success) 12%, var(--color-bg));color:var(--color-success)}.badge--warning{background:color-mix(in srgb, var(--color-warning) 12%, var(--color-bg));color:var(--color-warning)}.badge--danger{background:color-mix(in srgb, var(--color-danger) 12%, var(--color-bg));color:var(--color-danger)}.badge--info{background:color-mix(in srgb, var(--color-info) 12%, var(--color-bg));color:var(--color-info)}.card{background:var(--color-bg);border:var(--border-1);border-radius:var(--radius-lg);padding:var(--space-3)}.kpi-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.kpi{gap:var(--space-0-5);flex-direction:column;display:flex}.kpi__label{font-size:var(--text-xs);color:var(--color-text-muted);font-weight:600}.kpi__value{font-size:var(--text-xl);font-weight:600}.table th,.table td{padding:var(--space-2) var(--space-2);border-bottom:var(--border-1);vertical-align:middle;font-size:var(--text-sm)}.table th{font-size:var(--text-sm);color:var(--color-text-muted);font-weight:600}.table tbody tr:hover{background:var(--color-surface)}.input{width:100%;font-size:var(--text-sm);color:var(--color-text);background:var(--color-bg);padding:var(--space-1) var(--space-1);border:var(--border-1-strong);border-radius:var(--radius-md);line-height:1.5;transition:border-color .12s,box-shadow .12s;display:block}.input:focus{border-color:var(--color-focus);box-shadow:0 0 0 3px var(--color-focus-soft);outline:none}.input::placeholder{color:var(--color-text-muted)}.input:disabled{background:var(--color-surface);color:var(--color-text-muted);cursor:not-allowed}.input--invalid{border-color:var(--color-danger)}.input--invalid:focus{border-color:var(--color-danger);box-shadow:0 0 0 3px color-mix(in srgb, var(--color-danger) 20%, transparent)}.field{gap:var(--space-0-5);flex-direction:column;display:flex}.field__label{font-size:var(--text-sm);font-weight:500}.field__hint{font-size:var(--text-xs);color:var(--color-text-muted);margin:0}.field__error{font-size:var(--text-xs);color:var(--color-danger);margin:0}.checkbox{align-items:center;gap:var(--space-1);font-size:var(--text-sm);cursor:pointer;display:inline-flex}.checkbox input{width:1rem;height:1rem;accent-color:var(--color-brand);cursor:pointer}.segmented{border:var(--border-1);border-radius:var(--radius-lg);background:var(--color-surface);gap:2px;padding:2px;display:flex}.segmented__btn{font-size:var(--text-sm);color:var(--color-text-muted);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);appearance:none;text-align:inherit;white-space:nowrap;cursor:pointer;background:0 0;border:none;font-family:inherit;font-weight:500;line-height:1;text-decoration:none}.segmented__btn--active,.segmented__btn--active:hover{background:var(--color-brand);color:var(--color-on-brand);box-shadow:var(--shadow-sm);font-weight:600}.segmented--date{gap:0;padding:1px}.segmented--date .segmented__btn,.segmented--date .segmented__btn--icon{padding-inline:var(--space-1)}.segmented--date .segmented__btn:hover{background:var(--color-bg);color:var(--color-text-muted)}.app{min-height:100dvh}.topbar{justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-1) var(--space-3);border-bottom:var(--border-1);background:var(--color-bg);display:flex}.topbar__brand{color:var(--color-text);font-weight:600;text-decoration:none}.topbar__links{align-items:center;gap:var(--space-1);display:flex}.main{width:100%;max-width:var(--container-max);padding:var(--space-3) var(--space-2) calc(4.25rem + env(safe-area-inset-bottom));margin-inline:auto}.sidenav{display:none}.tabbar{inset-inline:0;z-index:var(--z-nav);background:var(--color-bg);border-top:var(--border-1);padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0}.tabbar__tab{text-align:center;font-size:var(--text-xs);color:var(--color-text-muted);padding:var(--space-2) var(--space-1);flex:1;font-weight:500;line-height:1;text-decoration:none}.tabbar__tab--active{color:var(--color-brand);font-weight:600}@media (width>=48rem){.app:has(.sidenav){grid-template-columns:15rem minmax(0,1fr);display:grid}.sidenav{align-self:start;gap:var(--space-2);height:100dvh;padding:var(--space-3) var(--space-2);border-right:var(--border-1);background:var(--color-bg);flex-direction:column;display:flex;position:sticky;top:0}.sidenav__brand{color:var(--color-text);padding:0 var(--space-1) var(--space-2);font-weight:600;text-decoration:none}.sidenav__links{gap:var(--space-0-5);flex-direction:column;display:flex}.sidenav__link{font-size:var(--text-sm);color:var(--color-text);padding:var(--space-1) var(--space-1);border-radius:var(--radius-md);font-weight:500;text-decoration:none}.sidenav__link:hover,.sidenav__link--active{background:var(--color-surface-strong);color:inherit}.sidenav__logout{margin-top:auto}.tabbar{display:none}.main{padding:var(--space-3) var(--space-4)}}.stack{gap:var(--space-2);flex-direction:column;display:flex}.stack--sm{gap:var(--space-1)}.stack--lg{gap:var(--space-3)}.row{align-items:center;gap:var(--space-1);display:flex}.row--between{justify-content:space-between}.page{gap:var(--space-0-5);flex-direction:column;display:flex}.page-back{width:fit-content;margin-bottom:var(--space-4)}
