:root{--canvas: #0b0d13;--surface: #161922;--surface-2: #1c2029;--raised: #232734;--track: #252a37;--hairline: #242836;--hairline-strong: #313648;--ink: #f4f5f7;--ink-2: #c3c7d1;--ink-3: #9aa0b0;--ink-4: #8b90a0;--ink-5: #7c8296;--fresh: oklch(.83 .19 150);--warning: oklch(.81 .15 78);--critical: oklch(.67 .22 30);--paused: oklch(.74 .09 242);--breached: oklch(.6 .14 22);--rescued: oklch(.75 .16 300);--completed: oklch(.72 .1 158);--brand: var(--fresh);--gold: oklch(.84 .14 88);--silver: oklch(.82 .02 250);--bronze: oklch(.7 .11 55);--font-ui: "Archivo", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, monospace;--r-sm: 5px;--r-md: 10px;--r-lg: 16px;--r-pill: 999px;--gap-1: 6px;--gap-2: 10px;--gap-3: 16px;--gap-4: 24px;--gap-5: 36px;--gap-6: 56px;--shell-max: 1440px}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{min-height:100%}body{background:var(--canvas);color:var(--ink);font-family:var(--font-ui);font-weight:500;-webkit-font-smoothing:antialiased;font-feature-settings:"tnum" 1}.mono,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;border:none;background:none;cursor:pointer}input,select{font:inherit;color:var(--ink);background:var(--surface-2);border:1px solid var(--hairline-strong);border-radius:var(--r-sm);padding:8px 10px}:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-track{background:var(--canvas)}::-webkit-scrollbar-thumb{background:var(--raised);border-radius:var(--r-pill);border:2px solid var(--canvas)}.eyebrow{font-size:11px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-4)}.card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg)}.hairline{border-bottom:1px solid var(--hairline)}.muted{color:var(--ink-4)}.stack{display:flex;flex-direction:column}.row{display:flex;align-items:center}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 16px;border-radius:var(--r-sm);font-weight:700;font-size:13px;letter-spacing:.2px;background:var(--raised);color:var(--ink);border:1px solid var(--hairline-strong);transition:background .12s ease,border-color .12s ease}.btn:hover{background:var(--surface-2);border-color:var(--ink-5)}.btn-primary{background:var(--brand);color:#0b0d13;border-color:transparent}.btn-primary:hover{background:color-mix(in oklch,var(--brand) 88%,white)}.btn-quiet{background:transparent;border-color:var(--hairline-strong);color:var(--ink-3)}.btn:disabled{opacity:.45;cursor:not-allowed}.skeleton{background:linear-gradient(90deg,var(--surface) 25%,var(--surface-2) 50%,var(--surface) 75%);background-size:200% 100%;animation:shimmer 1.4s infinite;border-radius:var(--r-md)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}.rise{animation:rise .26s cubic-bezier(.2,.7,.3,1) both}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}:root[data-theme=light]{--canvas: #f7f7f9;--surface: #ffffff;--surface-2: #f1f2f5;--raised: #e8eaef;--track: #dfe2e9;--hairline: #e3e5ec;--hairline-strong: #cfd3dd;--ink: #12141a;--ink-2: #33384a;--ink-3: #545a6d;--ink-4: #6c7285;--ink-5: #878da0}.ct-hero{display:inline-flex;flex-direction:column;align-items:center;gap:16px}.ct-ring{position:relative;width:168px;height:168px;border-radius:50%;display:flex;align-items:center;justify-content:center}.ct-ring-inner{width:132px;height:132px;border-radius:50%;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.ct-ring-value{font-weight:700;font-size:38px;line-height:1;letter-spacing:-1px}.ct-ring-caption{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--ink-4);font-weight:600}.ct-hero-meta{display:flex;flex-direction:column;align-items:center;gap:8px}.ct-chip{display:inline-flex;align-items:center;gap:8px;padding:5px 12px;border-radius:var(--r-pill);border:1px solid;font-size:12px;font-weight:700;letter-spacing:1px}.ct-dot{width:9px;height:9px;border-radius:2px;flex:none}.ct-dot.sm{width:7px;height:7px}.ct-secondary{font-size:13px;color:var(--ink-2);font-weight:500}.ct-hero-foot{display:flex;align-items:center;gap:8px}.ct-policy{font-size:11px;font-weight:700;letter-spacing:.5px;padding:3px 8px;border-radius:var(--r-sm);background:var(--raised);color:var(--ink-3)}.ct-sub{font-size:12px;color:var(--ink-5);font-style:italic}.ct-row{display:flex;flex-direction:column;gap:6px;min-width:190px}.ct-row-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.ct-row-left{display:flex;align-items:center;gap:8px}.ct-row-value{font-weight:700;font-size:16px}.ct-row-label{font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;opacity:.85}.ct-bar{height:5px;border-radius:3px;background:var(--track);overflow:hidden}.ct-bar-fill{height:100%;border-radius:3px;transition:width .6s cubic-bezier(.3,.8,.3,1)}.ct-row-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px}.ct-row-due{font-size:11px;color:var(--ink-3)}.ct-compact{display:inline-flex;align-items:center;gap:7px;padding:4px 10px;border-radius:var(--r-pill);border:1px solid;font-size:13px;font-weight:700;white-space:nowrap}.ct-compact-policy{font-size:10px;font-weight:600;color:var(--ink-4);letter-spacing:.3px}.points-chip{display:inline-flex;align-items:baseline;gap:4px;padding:3px 9px;border-radius:var(--r-sm);background:color-mix(in oklch,var(--brand) 12%,var(--surface));border:1px solid color-mix(in oklch,var(--brand) 26%,transparent);color:var(--brand);font-family:var(--font-mono);font-weight:700;font-size:12px}.points-chip .unit{font-size:10px;opacity:.75}.points-chip.earned{background:color-mix(in oklch,var(--completed) 14%,var(--surface));border-color:color-mix(in oklch,var(--completed) 30%,transparent);color:var(--completed)}.points-chip.potential{background:transparent;border-style:dashed;border-color:var(--hairline-strong);color:var(--ink-3)}.avatar{position:relative;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--raised);color:var(--ink-2);font-weight:700;overflow:hidden;flex:none}.avatar img{width:100%;height:100%;object-fit:cover}.avatar-load{position:absolute;right:-2px;bottom:-2px;min-width:16px;height:16px;padding:0 3px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--hairline-strong);font-family:var(--font-mono);font-size:9px;font-weight:700;display:flex;align-items:center;justify-content:center;color:var(--ink-3)}.avatar-load.full{background:color-mix(in oklch,var(--critical) 22%,var(--surface));border-color:var(--critical);color:var(--critical)}.avatar-group{display:flex}.avatar-group .avatar+.avatar{margin-left:-8px;box-shadow:0 0 0 2px var(--surface)}.badge-token{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:var(--r-pill);font-size:11px;font-weight:700;letter-spacing:.3px;border:1px solid}.badge-token.bronze{color:var(--bronze);border-color:color-mix(in oklch,var(--bronze) 35%,transparent);background:color-mix(in oklch,var(--bronze) 10%,var(--surface))}.badge-token.silver{color:var(--silver);border-color:color-mix(in oklch,var(--silver) 30%,transparent);background:color-mix(in oklch,var(--silver) 8%,var(--surface))}.badge-token.gold{color:var(--gold);border-color:color-mix(in oklch,var(--gold) 38%,transparent);background:color-mix(in oklch,var(--gold) 12%,var(--surface))}.receipt{border:1px solid var(--hairline);border-radius:var(--r-md);background:var(--surface-2);overflow:hidden}.receipt-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;cursor:pointer;gap:12px}.receipt-head:hover{background:color-mix(in oklch,var(--raised) 40%,transparent)}.receipt-total{font-family:var(--font-mono);font-weight:700;font-size:20px;color:var(--completed)}.receipt-body{border-top:1px solid var(--hairline);padding:4px 0}.receipt-line{display:grid;grid-template-columns:1fr auto;gap:4px 14px;padding:9px 14px;align-items:baseline}.receipt-line+.receipt-line{border-top:1px dashed var(--hairline)}.receipt-label{font-size:13px;font-weight:600}.receipt-detail{grid-column:1 / 2;font-size:11px;color:var(--ink-4)}.receipt-points{font-family:var(--font-mono);font-weight:700;font-size:13px;grid-row:1 / 3;align-self:center}.receipt-points.pos{color:var(--ink)}.receipt-points.neg{color:var(--breached)}.receipt-points.mult{color:var(--rescued)}.receipt-foot{padding:10px 14px;border-top:1px solid var(--hairline);font-size:11px;color:var(--ink-4);display:flex;justify-content:space-between;gap:10px}.timeline{position:relative;padding-left:26px}.timeline:before{content:"";position:absolute;left:8px;top:6px;bottom:6px;width:2px;background:var(--track);border-radius:2px}.tl-item{position:relative;padding:0 0 20px}.tl-item:last-child{padding-bottom:0}.tl-node{position:absolute;left:-26px;top:3px;width:18px;height:18px;border-radius:50%;background:var(--surface);border:2px solid var(--hairline-strong);display:flex;align-items:center;justify-content:center}.tl-node i{width:6px;height:6px;border-radius:2px;background:var(--ink-4)}.tl-item[data-kind=breached] .tl-node{border-color:var(--breached)}.tl-item[data-kind=breached] .tl-node i{background:var(--breached)}.tl-item[data-kind=completed] .tl-node{border-color:var(--completed)}.tl-item[data-kind=completed] .tl-node i{background:var(--completed)}.tl-item[data-kind=assigned] .tl-node{border-color:var(--fresh)}.tl-item[data-kind=assigned] .tl-node i{background:var(--fresh)}.tl-item[data-kind=paused] .tl-node{border-color:var(--paused)}.tl-item[data-kind=paused] .tl-node i{background:var(--paused)}.tl-title{font-size:13px;font-weight:700}.tl-detail{font-size:12px;color:var(--ink-4);margin-top:2px}.tl-when{font-family:var(--font-mono);font-size:11px;color:var(--ink-5);margin-top:3px}.story-card{display:grid;gap:14px;padding:16px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);transition:border-color .14s ease,transform .14s ease}.story-card:hover{border-color:var(--hairline-strong);transform:translateY(-1px)}.story-card.blocked{border-color:color-mix(in oklch,var(--critical) 55%,transparent);box-shadow:0 0 0 1px color-mix(in oklch,var(--critical) 22%,transparent),0 10px 30px -22px var(--critical)}.story-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.story-key{font-family:var(--font-mono);font-size:12px;font-weight:700;color:var(--ink-4);letter-spacing:.4px}.story-summary{font-size:15px;font-weight:700;line-height:1.35;margin-top:3px}.story-meta{display:flex;align-items:center;gap:10px;font-size:11px;color:var(--ink-5);font-family:var(--font-mono)}.story-reviews{display:grid;gap:10px}.slot{display:grid;grid-template-columns:92px 1fr auto;gap:12px;align-items:center;padding:10px;border-radius:var(--r-md);background:var(--surface-2);border:1px solid var(--hairline)}.slot-name{font-size:11px;font-weight:700;letter-spacing:.4px;text-transform:uppercase;color:var(--ink-4)}.slot-pending{font-size:12px;color:var(--ink-5);font-style:italic}.blocked-flag{display:inline-flex;align-items:center;gap:6px;padding:3px 9px;border-radius:var(--r-sm);background:color-mix(in oklch,var(--critical) 16%,var(--surface));border:1px solid color-mix(in oklch,var(--critical) 40%,transparent);color:var(--critical);font-size:10px;font-weight:700;letter-spacing:.6px;text-transform:uppercase}.lb-row{display:grid;grid-template-columns:54px 1fr repeat(4,minmax(72px,auto)) 34px;gap:14px;align-items:center;padding:13px 16px;border-radius:var(--r-md);border:1px solid transparent;transition:background .12s ease}.lb-row:hover{background:var(--surface-2)}.lb-row.me{border-color:color-mix(in oklch,var(--brand) 40%,transparent);background:color-mix(in oklch,var(--brand) 7%,transparent)}.lb-rank{display:flex;align-items:center;gap:6px;font-family:var(--font-mono);font-weight:700;font-size:17px;color:var(--ink-3)}.lb-rank.top1{color:var(--gold)}.lb-rank.top2{color:var(--silver)}.lb-rank.top3{color:var(--bronze)}.lb-who{display:flex;align-items:center;gap:11px;min-width:0}.lb-name{font-weight:700;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lb-stat{font-family:var(--font-mono);font-size:14px;font-weight:700;text-align:right}.lb-stat small{display:block;font-family:var(--font-ui);font-size:10px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--ink-5);margin-top:2px}.lb-move{font-family:var(--font-mono);font-size:11px;font-weight:700;text-align:right}.lb-move.up{color:var(--fresh)}.lb-move.down{color:var(--breached)}.lb-move.flat{color:var(--ink-5)}.lb-head{display:grid;grid-template-columns:54px 1fr repeat(4,minmax(72px,auto)) 34px;gap:14px;padding:0 16px 10px;border-bottom:1px solid var(--hairline)}.lb-head button{font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-5);text-align:right;white-space:nowrap}.lb-head button.active{color:var(--brand)}.podium{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:end}.podium-slot{display:flex;flex-direction:column;align-items:center;gap:10px;padding:20px 14px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--hairline);text-align:center}.podium-slot.p1{border-color:color-mix(in oklch,var(--gold) 45%,transparent);background:linear-gradient(180deg,color-mix(in oklch,var(--gold) 10%,var(--surface)),var(--surface));padding-top:30px}.podium-slot.p2{border-color:color-mix(in oklch,var(--silver) 30%,transparent)}.podium-slot.p3{border-color:color-mix(in oklch,var(--bronze) 32%,transparent)}.podium-place{font-family:var(--font-mono);font-size:12px;font-weight:700;letter-spacing:1px}.podium-points{font-family:var(--font-mono);font-size:26px;font-weight:700}.shell{min-height:100vh;display:flex;flex-direction:column}.topbar{position:sticky;top:0;z-index:20;background:color-mix(in oklch,var(--canvas) 88%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-bottom:1px solid var(--hairline)}.topbar-inner{max-width:var(--shell-max);margin:0 auto;padding:0 28px;height:60px;display:flex;align-items:center;gap:28px}.brand{display:flex;align-items:center;gap:10px;flex:none}.brand-mark{width:28px;height:28px;border-radius:8px;background:var(--brand);color:#0b0d13;font-weight:800;font-size:17px;display:flex;align-items:center;justify-content:center;transform:skew(-8deg)}.brand-word{font-weight:800;font-size:17px;letter-spacing:-.3px}.nav{display:flex;align-items:center;gap:4px;flex:1;min-width:0;overflow-x:auto;scrollbar-width:none}.nav::-webkit-scrollbar{display:none}.nav-link{padding:7px 12px;border-radius:var(--r-sm);font-size:13px;font-weight:700;color:var(--ink-4);white-space:nowrap;transition:color .12s ease,background .12s ease}.nav-link:hover{color:var(--ink-2);background:var(--surface)}.nav-link.active{color:var(--ink);background:var(--surface-2)}.nav-link.admin{color:var(--ink-5);font-size:12px}.nav-link.admin.active{color:var(--brand)}.nav-divider{width:1px;height:20px;background:var(--hairline-strong);margin:0 6px;flex:none}.topbar-right{display:flex;align-items:center;gap:10px;flex:none}.sprint-pill{font-size:11px;font-weight:700;padding:5px 10px;border-radius:var(--r-pill);background:var(--surface);border:1px solid var(--hairline);color:var(--ink-3);max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rank-pill{font-size:12px;font-weight:700;padding:5px 9px;border-radius:var(--r-pill);background:color-mix(in oklch,var(--brand) 14%,var(--surface));border:1px solid color-mix(in oklch,var(--brand) 30%,transparent);color:var(--brand)}.who{border-radius:50%;line-height:0}.page{max-width:var(--shell-max);width:100%;margin:0 auto;padding:28px 28px 72px;animation:rise .22s cubic-bezier(.2,.7,.3,1) both}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px;flex-wrap:wrap}.page-title{font-size:27px;font-weight:800;letter-spacing:-.5px}.page-sub{font-size:13px;color:var(--ink-4);margin-top:5px;max-width:62ch;line-height:1.5}.section{margin-top:32px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:14px;margin-bottom:14px}.section-title{font-size:15px;font-weight:800;letter-spacing:-.2px}.grid-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.grid-2{display:grid;grid-template-columns:1.55fr 1fr;gap:22px;align-items:start}.grid-cards{display:grid;gap:14px}.paused-banner{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:var(--r-md);background:color-mix(in oklch,var(--paused) 10%,var(--surface));border:1px solid color-mix(in oklch,var(--paused) 32%,transparent);margin-bottom:20px;font-size:13px;color:var(--ink-2)}.paused-banner b{color:var(--paused)}.login{min-height:100vh;display:grid;place-items:center;padding:32px;background:radial-gradient(680px 340px at 50% 12%,color-mix(in oklch,var(--brand) 13%,transparent),transparent 70%),var(--canvas)}.login-card{width:100%;max-width:430px;display:grid;gap:22px;justify-items:center;text-align:center}.login-mark{width:72px;height:72px;border-radius:20px;background:var(--brand);color:#0b0d13;font-weight:800;font-size:40px;display:grid;place-items:center;transform:skew(-8deg);box-shadow:0 0 60px -18px var(--brand)}.login-title{font-size:34px;font-weight:800;letter-spacing:-.9px}.login-line{font-size:14px;color:var(--ink-3);line-height:1.6;max-width:34ch}.login-btn{display:inline-flex;align-items:center;gap:10px;padding:13px 22px;border-radius:var(--r-md);background:var(--brand);color:#0b0d13;font-weight:800;font-size:14px}.login-btn:hover{background:color-mix(in oklch,var(--brand) 88%,white)}.login-foot{font-size:11px;color:var(--ink-5)}.login-states{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:6px}.queue-item{display:grid;grid-template-columns:1fr 210px auto;gap:18px;align-items:center;padding:16px;background:var(--surface);border:1px solid var(--hairline);border-radius:var(--r-lg);transition:border-color .14s ease}.queue-item:hover{border-color:var(--hairline-strong)}.queue-item.urgent{border-color:color-mix(in oklch,var(--critical) 50%,transparent)}.queue-key{font-family:var(--font-mono);font-size:11px;font-weight:700;color:var(--ink-4)}.queue-title{font-size:15px;font-weight:700;margin-top:3px;line-height:1.35}.queue-meta{display:flex;align-items:center;gap:8px;margin-top:9px;flex-wrap:wrap}.queue-actions{display:flex;gap:8px;align-items:center}.feed-item{display:flex;gap:12px;align-items:flex-start;padding:13px 0}.feed-item+.feed-item{border-top:1px solid var(--hairline)}.feed-text{font-size:13px;line-height:1.5}.feed-when{font-family:var(--font-mono);font-size:11px;color:var(--ink-5);margin-top:3px}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-size:10px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--ink-5);padding:0 12px 10px;border-bottom:1px solid var(--hairline)}.table td{padding:12px;border-bottom:1px solid var(--hairline);vertical-align:middle}.table tr:last-child td{border-bottom:none}.heatmap{display:grid;gap:3px;grid-auto-flow:column;overflow-x:auto;padding-bottom:6px}.heat-col{display:grid;gap:3px}.heat-cell{width:15px;height:15px;border-radius:3px;background:var(--surface-2)}.awards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}.award{display:grid;gap:8px;padding:18px;border-radius:var(--r-lg);background:var(--surface);border:1px solid var(--hairline)}.award-title{font-size:11px;font-weight:700;letter-spacing:1.1px;text-transform:uppercase;color:var(--ink-4)}.award-who{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:800}.award-detail{font-size:12px;color:var(--ink-4)}@media (max-width: 1080px){.grid-2{grid-template-columns:1fr}}@media (max-width: 760px){.topbar-inner{padding:0 16px;gap:14px}.brand-word,.sprint-pill{display:none}.page{padding:20px 16px 64px}.page-title{font-size:22px}.queue-item{grid-template-columns:1fr;gap:14px}.queue-actions{justify-content:flex-start}.slot{grid-template-columns:1fr;gap:10px}.lb-row,.lb-head{grid-template-columns:40px 1fr 74px 34px}.lb-row .lb-stat:nth-of-type(n+2),.lb-head button:nth-of-type(n+2){display:none}.podium{grid-template-columns:1fr}}
