@charset "UTF-8";@font-face{font-family:Fraunces;font-style:normal;font-weight:400 500;font-display:swap;src:url(/assets/fonts/fraunces-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Geist;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/geist-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 600;font-display:swap;src:url(/assets/fonts/jetbrains-mono-latin.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Material Icons;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/fonts/material-icons.woff2) format("woff2")}.material-icons{font-family:Material Icons;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;-webkit-font-feature-settings:"liga";-webkit-font-smoothing:antialiased}:root{--bg-0: #0a0a0b;--bg-1: #111114;--bg-2: #16161a;--bg-3: #1e1e24;--line: #26262e;--line-2: #33333d;--ink-0: #f4f4f5;--ink-1: #c7c7cc;--ink-2: #8e8e93;--ink-3: #5a5a60;--red: #ff2d2d;--red-bright: #ff4747;--red-deep: #c81818;--red-soft: rgba(255, 45, 45, .1);--good: #4ade80;--good-ink: #4ade80;--good-soft: rgba(74, 222, 128, .12);--warn: #facc15;--warn-ink: #facc15;--warn-soft: rgba(250, 204, 21, .12);--info: #60a5fa;--info-soft: rgba(96, 165, 250, .12);--baseline: rgba(199, 199, 204, .22);--series-spend: #ff2d2d;--series-work: #3b8ef0;--font-display: "Fraunces", Georgia, serif;--font-sans: "Geist", "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", system-ui, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, "SF Mono", Menlo, monospace;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--nav-w: 232px;--ease-out: cubic-bezier(.2, .8, .2, 1);--ease-spring: cubic-bezier(.34, 1.56, .64, 1);--glow: rgba(255, 255, 255, .045);--gold-ink: #f5c542;--shadow-1: 0 1px 2px rgba(0, 0, 0, .3), 0 4px 14px rgba(0, 0, 0, .18);--shadow-2: 0 2px 4px rgba(0, 0, 0, .3), 0 14px 34px rgba(0, 0, 0, .3);--shadow-3: 0 6px 12px rgba(0, 0, 0, .35), 0 30px 70px rgba(0, 0, 0, .45);--edge: inset 0 1px 0 rgba(255, 255, 255, .045);--safe-b: env(safe-area-inset-bottom, 0px);color-scheme:dark}[data-theme=light]{--bg-0: #faf9f6;--bg-1: #f2f1ed;--bg-2: #eae9e4;--bg-3: #deddd7;--line: #d4d2cb;--line-2: #b8b6ae;--ink-0: #0e0e12;--ink-1: #2b2b33;--ink-2: #5a5a62;--ink-3: #8e8e93;--red-soft: rgba(255, 45, 45, .07);--good-ink: #047857;--warn-ink: #a16207;--baseline: rgba(43, 43, 51, .16);--series-spend: #e11d1d;--series-work: #2563eb;--glow: rgba(255, 45, 45, .06);--gold-ink: #8a5a00;--shadow-1: 0 1px 2px rgba(40, 30, 10, .06), 0 4px 14px rgba(40, 30, 10, .06);--shadow-2: 0 2px 4px rgba(40, 30, 10, .08), 0 14px 34px rgba(40, 30, 10, .12);--shadow-3: 0 6px 12px rgba(40, 30, 10, .1), 0 30px 70px rgba(40, 30, 10, .18);--edge: inset 0 1px 0 rgba(255, 255, 255, .7);color-scheme:light}*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg-0);color:var(--ink-0);font-family:var(--font-sans);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}*{scrollbar-width:thin;scrollbar-color:var(--line-2) transparent}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}::selection{background:var(--red);color:#fff}.material-icons{font-size:20px;vertical-align:middle;-webkit-user-select:none;user-select:none}.page{max-width:1280px;margin:0 auto;padding:24px 24px 48px}@media(max-width:720px){.page{padding:16px 12px 32px}}.page-head{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:20px}.page-head h1{font-family:var(--font-display);font-weight:500;font-size:clamp(26px,4vw,34px);line-height:1.1;margin:0;letter-spacing:-.01em}.page-head .sub{color:var(--ink-2);margin:6px 0 0;font-size:14px}.page-head .actions{display:flex;flex-wrap:wrap;gap:8px}.eyebrow{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-2)}.grid{display:grid;gap:16px}.grid.kpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid.two{grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr))}.stack{display:flex;flex-direction:column;gap:16px}.row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.spacer{flex:1}.muted{color:var(--ink-2)}.small{font-size:13px}.mono{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.good{color:var(--good-ink)}.warn{color:var(--warn-ink)}.bad{color:var(--red)}.card{background:var(--bg-1);background-image:radial-gradient(420px circle at var(--mx, -1000px) var(--my, -1000px),var(--glow),transparent 45%);border:1px solid var(--line);border-radius:var(--radius-lg);padding:18px;min-width:0;box-shadow:var(--shadow-1),var(--edge);transition:border-color .25s,transform .35s var(--ease-out),box-shadow .35s var(--ease-out)}.card>h2,.card .card-title{font-size:15px;font-weight:600;margin:0 0 12px;display:flex;align-items:center;gap:8px}.card.flush{padding:0;overflow:hidden}.card.alert-over{border-color:color-mix(in srgb,var(--red) 55%,var(--line))}.card.alert-warn{border-color:color-mix(in srgb,var(--warn) 45%,var(--line))}.kpi .label{font-size:12px;color:var(--ink-2)}.kpi .value{font-family:var(--font-mono);font-size:24px;font-weight:500;margin-top:4px;font-variant-numeric:tabular-nums}.kpi .hint{font-size:12px;color:var(--ink-2);margin-top:2px}.banner{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;border-radius:var(--radius-md);border:1px solid var(--line);background:var(--bg-2);font-size:14px}.banner .material-icons{margin-top:1px}.banner.over{background:var(--red-soft);border-color:color-mix(in srgb,var(--red) 40%,transparent)}.banner.over .material-icons{color:var(--red)}.banner.warn{background:var(--warn-soft);border-color:color-mix(in srgb,var(--warn) 40%,transparent)}.banner.warn .material-icons{color:var(--warn-ink)}.banner.info{background:var(--info-soft);border-color:color-mix(in srgb,var(--info) 40%,transparent)}.banner.info .material-icons{color:var(--info)}.banner.good{color:inherit;background:var(--good-soft);border-color:color-mix(in srgb,var(--good) 40%,transparent)}.banner.good .material-icons{color:var(--good-ink)}.btn{position:relative;overflow:hidden;isolation:isolate;display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:36px;padding:0 14px;border-radius:var(--radius-sm);border:1px solid var(--line-2);background:var(--bg-2);color:var(--ink-0);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:background .12s,border-color .12s,box-shadow .2s,transform .18s var(--ease-spring)}.btn:hover{background:var(--bg-3)}.btn:active:not(:disabled){transform:scale(.96);transition-duration:.06s}.btn .material-icons{transition:transform .3s var(--ease-spring)}.btn:hover:not(:disabled) .material-icons{transform:scale(1.12) rotate(-6deg)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn.primary{position:relative;overflow:hidden;background:var(--red);border-color:var(--red);color:#fff}.btn.primary:hover:not(:disabled){background:var(--red-bright);box-shadow:0 6px 20px color-mix(in srgb,var(--red) 35%,transparent)}.btn.primary:after{content:"";position:absolute;inset:0;background:linear-gradient(105deg,transparent 35%,rgba(255,255,255,.28) 50%,transparent 65%);transform:translate(-120%);pointer-events:none}.btn.primary:hover:not(:disabled):after{transform:translate(120%);transition:transform .7s var(--ease-out)}.btn.ghost{background:transparent;border-color:transparent}.btn.ghost:hover{background:var(--bg-2)}.btn.danger{color:var(--red)}.btn.sm{min-height:28px;padding:0 10px;font-size:13px}.btn.icon{padding:0;width:36px}.btn.sm.icon{width:28px}.btn.big{min-height:48px;font-size:15px;padding:0 18px}.field{display:flex;flex-direction:column;gap:4px;min-width:0}.field>span{font-size:12px;color:var(--ink-2)}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]),select,textarea{width:100%;min-height:36px;padding:7px 10px;border-radius:var(--radius-sm);border:1px solid var(--line-2);background:var(--bg-0);outline:none}input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=file]):not([type=color]):focus,select:focus,textarea:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-soft)}textarea{resize:vertical;min-height:72px}input[type=range]{width:100%;accent-color:var(--red)}input[type=checkbox]{accent-color:var(--red);width:18px;height:18px;transition:transform .2s var(--ease-spring)}input[type=checkbox]:checked{animation:tick .4s var(--ease-spring)}input[type=checkbox]:active{transform:scale(.85)}.form-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.form-grid .wide{grid-column:1/-1}.chip{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:999px;font-size:12px;font-weight:500;background:var(--bg-3);color:var(--ink-1);white-space:nowrap}.chip.good{background:var(--good-soft);color:var(--good-ink)}.chip.warn{background:var(--warn-soft);color:var(--warn-ink)}.chip.over,.chip.bad{background:var(--red-soft);color:var(--red)}.chip.info{background:var(--info-soft);color:var(--info)}.chip .material-icons{font-size:14px}.seg{display:inline-flex;border:1px solid var(--line-2);border-radius:var(--radius-sm);overflow:hidden}.seg button{border:0;background:transparent;padding:6px 12px;font-size:13px;cursor:pointer;color:var(--ink-2)}.seg button.on{background:var(--bg-3);color:var(--ink-0)}.table-wrap{overflow-x:auto}table.data{width:100%;border-collapse:collapse;font-size:14px}table.data th,table.data td{padding:9px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}table.data th{font-size:11px;font-weight:500;text-transform:uppercase;letter-spacing:.06em;color:var(--ink-2);background:var(--bg-2);position:sticky;top:0}table.data th.num,table.data td.num{text-align:right}table.data tr.group td{background:var(--bg-2);font-weight:600}table.data tr.clickable{cursor:pointer}table.data tr.clickable:hover td{background:var(--bg-2)}table.data tfoot td{font-weight:600;border-bottom:0}.meter{position:relative;height:8px;border-radius:999px;background:var(--bg-3);overflow:hidden}.meter>i{position:absolute;inset:0 auto 0 0;border-radius:999px;transform-origin:left;animation:meter-grow 1s var(--ease-out) backwards;transition:width .7s var(--ease-out);background:var(--good)}.meter>i.committed{background:color-mix(in srgb,var(--info) 55%,transparent)}.meter>i.warn{background:var(--warn)}.meter>i.over{background:var(--red)}dialog.sheet{border:1px solid var(--line-2);border-radius:var(--radius-lg);background:var(--bg-1);color:var(--ink-0);padding:0;width:min(640px,100vw - 24px);max-height:calc(100dvh - 32px)}dialog.sheet::backdrop{background:#0009;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}dialog.sheet .sheet-head{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid var(--line)}dialog.sheet .sheet-head h2{margin:0;font-size:17px;flex:1}dialog.sheet .sheet-body{padding:18px;overflow:auto}dialog.sheet .sheet-foot{display:flex;gap:8px;justify-content:flex-end;padding:12px 18px;border-top:1px solid var(--line);flex-wrap:wrap}.empty{padding:28px 12px;text-align:center;color:var(--ink-2);font-size:14px}.empty .e-ico{display:grid;place-items:center;width:56px;height:56px;margin:0 auto 12px;border-radius:16px;color:var(--red);background:radial-gradient(circle at 30% 25%,color-mix(in srgb,var(--red) 22%,transparent),transparent 70%),var(--bg-2);border:1px solid color-mix(in srgb,var(--red) 25%,var(--line));box-shadow:0 10px 24px color-mix(in srgb,var(--red) 14%,transparent),var(--edge);animation:float 3.2s ease-in-out infinite}.empty .e-ico .material-icons{font-size:28px}.empty>b{display:block;color:var(--ink-0);font-size:16px;margin-bottom:4px}.empty>p{max-width:460px;margin:0 auto 14px;line-height:1.55}.empty.card:has(.e-ico){padding:36px 18px;border-style:dashed;background:radial-gradient(60% 90% at 50% 0%,var(--red-soft),transparent 70%),var(--bg-1)}@keyframes float{50%{transform:translateY(-6px) rotate(-3deg)}}.legend{display:flex;flex-wrap:wrap;gap:14px;font-size:12px;color:var(--ink-2)}.legend .sw{display:inline-block;width:14px;height:8px;border-radius:2px;margin-right:6px;vertical-align:middle}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}a.card:hover,a.card.kpi.link:hover,label.card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #00000038}.counting{color:var(--ink-0);text-shadow:0 0 18px color-mix(in srgb,var(--red) 35%,transparent);transition:text-shadow .4s}.page>*,.grid>*,.stack>*{animation:rise .55s var(--ease-out) backwards}.page>:nth-child(1){animation-delay:0ms}.grid>:nth-child(1){animation-delay:80ms}.page>:nth-child(2){animation-delay:45ms}.grid>:nth-child(2){animation-delay:.12s}.page>:nth-child(3){animation-delay:90ms}.grid>:nth-child(3){animation-delay:.16s}.page>:nth-child(4){animation-delay:135ms}.grid>:nth-child(4){animation-delay:.2s}.page>:nth-child(5){animation-delay:.18s}.grid>:nth-child(5){animation-delay:.24s}.page>:nth-child(6){animation-delay:225ms}.grid>:nth-child(6){animation-delay:.28s}.page>:nth-child(7){animation-delay:.27s}.grid>:nth-child(7){animation-delay:.32s}.page>:nth-child(8){animation-delay:315ms}.grid>:nth-child(8){animation-delay:.36s}.page>:nth-child(9){animation-delay:.36s}.grid>:nth-child(9){animation-delay:.4s}.page>:nth-child(10){animation-delay:405ms}.grid>:nth-child(10){animation-delay:.44s}dialog.sheet[open]{animation:rise .35s var(--ease-spring) backwards}dialog.sheet[open]::backdrop{animation:fade .25s ease both}@keyframes rise{0%{opacity:0;transform:translateY(14px)}}@keyframes fade{0%{opacity:0}}@keyframes meter-grow{0%{transform:scaleX(0)}}@keyframes tick{40%{transform:scale(1.35) rotate(-8deg)}}canvas.confetti{position:fixed;inset:0;width:100vw;height:100dvh;z-index:100;pointer-events:none}.shell>.main>main{view-transition-name:page}::view-transition-old(root),::view-transition-new(root){animation:none}::view-transition-old(page){animation:vt-out .16s ease-in both}::view-transition-new(page){animation:vt-in .34s var(--ease-out) both}html[data-nav=fwd]::view-transition-old(page){animation:vt-out-fwd .2s ease-in both}html[data-nav=fwd]::view-transition-new(page){animation:vt-in-fwd .42s var(--ease-out) both}html[data-nav=back]::view-transition-old(page){animation:vt-out-back .2s ease-in both}html[data-nav=back]::view-transition-new(page){animation:vt-in-back .42s var(--ease-out) both}::view-transition-group(nav-pill),::view-transition-group(tab-pill){animation-duration:.42s;animation-timing-function:var(--ease-spring)}@keyframes vt-out{to{opacity:0;transform:translateY(-6px);filter:blur(2px)}}@keyframes vt-in{0%{opacity:0;transform:translateY(10px)}}@keyframes vt-out-fwd{to{opacity:0;transform:translate(-28px) scale(.985);filter:blur(3px)}}@keyframes vt-in-fwd{0%{opacity:0;transform:translate(36px)}}@keyframes vt-out-back{to{opacity:0;transform:translate(28px) scale(.985);filter:blur(3px)}}@keyframes vt-in-back{0%{opacity:0;transform:translate(-36px)}}html.theme-flip .shell>.main>main,html.theme-flip .pill{view-transition-name:none!important}html.theme-flip::view-transition-old(root),html.theme-flip::view-transition-new(root){animation:none;mix-blend-mode:normal}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}}body{background:radial-gradient(900px 420px at 18% -8%,color-mix(in srgb,var(--red) 7%,transparent),transparent 70%),radial-gradient(700px 360px at 92% -12%,color-mix(in srgb,#f59e0b 6%,transparent),transparent 70%),var(--bg-0);background-attachment:fixed}.page-head h1{background:linear-gradient(180deg,var(--ink-0) 40%,color-mix(in srgb,var(--ink-0) 72%,var(--ink-2)));-webkit-background-clip:text;background-clip:text;color:transparent}.page-head .eyebrow:before{content:"";display:inline-block;width:16px;height:2px;margin-right:8px;vertical-align:middle;border-radius:2px;background:var(--red);transform-origin:left;animation:accent .7s .15s var(--ease-out) backwards}@keyframes accent{0%{transform:scaleX(0)}}a.card:hover,a.card.kpi.link:hover,label.card:hover{box-shadow:var(--shadow-2),var(--edge)}dialog.sheet{box-shadow:var(--shadow-3)}table.data tbody tr{animation:row-in .45s var(--ease-out) backwards}table.data tbody tr:nth-child(1){animation-delay:142ms}table.data tbody tr:nth-child(2){animation-delay:164ms}table.data tbody tr:nth-child(3){animation-delay:186ms}table.data tbody tr:nth-child(4){animation-delay:208ms}table.data tbody tr:nth-child(5){animation-delay:.23s}table.data tbody tr:nth-child(6){animation-delay:252ms}table.data tbody tr:nth-child(7){animation-delay:274ms}table.data tbody tr:nth-child(8){animation-delay:296ms}table.data tbody tr:nth-child(9){animation-delay:318ms}table.data tbody tr:nth-child(10){animation-delay:.34s}table.data tbody tr:nth-child(11){animation-delay:362ms}table.data tbody tr:nth-child(12){animation-delay:384ms}table.data tbody tr:nth-child(13){animation-delay:406ms}table.data tbody tr:nth-child(14){animation-delay:428ms}table.data tbody tr:nth-child(15){animation-delay:.45s}table.data tbody tr:nth-child(16){animation-delay:472ms}@keyframes row-in{0%{opacity:0;transform:translateY(6px)}}.ripple{position:absolute;z-index:-1;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:currentColor;opacity:.25;pointer-events:none;animation:ripple .6s var(--ease-out) forwards}@keyframes ripple{to{transform:scale(26);opacity:0}}.coach-pulse{position:relative;z-index:2;animation:coach-pulse 1.3s ease-out 4!important;border-color:var(--red)!important}@keyframes coach-pulse{0%{box-shadow:0 0 color-mix(in srgb,var(--red) 70%,transparent)}to{box-shadow:0 0 0 16px transparent}}.pre-reveal{opacity:0;translate:0 36px;scale:.97}.revealing{transition:opacity .6s ease-out,translate .75s var(--ease-out),scale .75s var(--ease-out)!important}@media(hover:hover)and (prefers-reduced-motion:no-preference){.grid.kpis>.card.card:hover{transform:perspective(900px) rotateX(var(--rx, 0deg)) rotateY(var(--ry, 0deg)) translateY(-2px);box-shadow:var(--shadow-2),var(--edge);transition:border-color .25s,transform .12s linear,box-shadow .35s var(--ease-out)}}
