*{box-sizing:border-box}body{color:#eef2ff;background:#08111f;margin:0;font-family:Inter,system-ui,Segoe UI,Arial}.app{max-width:1580px;margin:0 auto;padding:28px}header{justify-content:space-between;align-items:center;gap:18px;margin-bottom:24px;display:flex}h1{margin:0;font-size:34px}h2{margin:0;font-size:20px}h3{margin:8px 0}p{color:#aab3d1}.headerActions,.buttonRow{align-items:center;gap:10px;display:flex}.buttonRow.wrap{flex-wrap:wrap}button{color:#fff;cursor:pointer;background:#7c3aed;border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:800;display:inline-flex}button.secondary{color:#dbeafe;background:#1d2a44;border:1px solid #31466d}input{color:#fff;background:#121a33;border:1px solid #28365f;border-radius:10px;width:100%;padding:10px}.grid{gap:16px;display:grid}.cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}.card,.panel{background:linear-gradient(#121a33,#0f172e);border:1px solid #273456;border-radius:22px;padding:18px;box-shadow:0 20px 60px #00000038}.card.hot{border-color:#f97316}.card svg{color:#a78bfa;width:28px;height:28px}.card h3{color:#cbd5e1;margin:8px 0 0}.card p{color:#fff;margin:8px 0 0;font-size:28px}.panel{margin-top:18px}.statusBar{color:#aab3d1;justify-content:space-between;display:flex}.layout{grid-template-columns:minmax(0,1fr) 420px;gap:18px;display:grid}.panelTop{color:#94a3b8;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.pilotGrid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;display:grid}.pilot{background:#101936;border:1px solid #2b3a64;border-radius:18px;padding:14px}.pilotTop,.reviewTop{justify-content:space-between;align-items:center;gap:10px;display:flex}.badge{color:#fff;text-transform:uppercase;background:#334155;border-radius:999px;padding:4px 8px;font-size:12px}.badge.LIVE,.badge.CONNECTED{background:#166534}.badge.DEGRADED,.badge.warning{background:#92400e}.badge.OFFLINE{background:#7f1d1d}.badge.info{background:#1d4ed8}.timeline{flex-direction:column;gap:8px;display:flex}.timelineItem{text-align:left;color:#fff;background:#0b1328;border:1px solid #26365d;border-radius:16px;grid-template-columns:82px 1fr 250px;gap:14px;width:100%;padding:12px;display:grid}.timelineItem.needsReview{background:#1f1408;border-color:#f97316}.timelineItem.validated{border-color:#166534}.timelineItem.warning{border-color:#ca8a04}.time{color:#94a3b8}.eventMain{flex-direction:column;gap:3px;display:flex}.eventMain span{color:#cbd5e1}.eventMeta{justify-content:flex-end;align-items:center;gap:10px;display:flex}.eventMeta code{background:#17203a;border-radius:999px;padding:4px 8px}.eventMeta b{color:#fed7aa}.eventMeta em{color:#86efac;font-style:normal}.reviewPanel{position:sticky;top:18px}.reviewCard{background:#111b34;border:1px solid #34456c;border-radius:18px;margin-bottom:12px;padding:14px}.reviewCard.incident{border-color:#7c2d12}.reviewCard small{color:#94a3b8}.detailPanel pre,.rawPanel pre{white-space:pre-wrap;color:#c4b5fd;background:#070b16;border-radius:12px;max-height:260px;padding:10px;overflow:auto}.detailPanel dl{grid-template-columns:110px 1fr;gap:8px;display:grid}.detailPanel dt{color:#94a3b8}.detailPanel dd{margin:0}.modalBackdrop{z-index:10;background:#000000a6;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.modal{background:#0f172e;border:1px solid #334155;border-radius:24px;width:min(860px,100%);max-height:88vh;padding:20px;overflow:auto;box-shadow:0 30px 100px #0000008c}.evidenceList{flex-direction:column;gap:8px;display:flex}.evidence{background:#101936;border:1px solid #2b3a64;border-radius:14px;align-items:center;gap:10px;padding:10px;display:flex}.evidence a{color:#c4b5fd}.events{gap:8px;max-height:300px;display:grid;overflow:auto}.rawPanel{margin-top:18px}@media (width<=1100px){.cols-5{grid-template-columns:repeat(2,minmax(0,1fr))}.layout,.timelineItem{grid-template-columns:1fr}.eventMeta{justify-content:flex-start}.reviewPanel{position:static}}@media (width<=720px){.app{padding:16px}header{flex-direction:column;align-items:flex-start}.cols-5{grid-template-columns:1fr}}.miniControls label{color:#94a3b8;align-items:center;gap:6px;font-size:13px;display:flex}.miniControls input[type=checkbox]{width:auto;padding:0}.repeatHint{color:#a78bfa;background:#0b1328;border:1px solid #2b3a64;border-radius:10px;margin:8px 0;padding:7px 8px;font-size:12px}.timelineControls{align-items:flex-start}.reviewCard .buttonRow{margin-top:10px}.evidenceModal{width:min(1120px,96vw)}.modalSub{color:#94a3b8;margin:4px 0 0}.reviewGrid{grid-template-columns:1fr 1fr;gap:14px;margin:14px 0;display:grid}.reviewSection{background:#0b1328;border:1px solid #273456;border-radius:18px;padding:14px}.scoreGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.scoreGrid div{background:#111b34;border:1px solid #2b3a64;border-radius:14px;padding:10px}.scoreGrid span{color:#94a3b8;font-size:12px;display:block}.scoreGrid b{color:#eef2ff;word-break:break-word;margin-top:4px;display:block}.linkedBox{color:#fed7aa;background:#1f1408;border:1px solid #f97316;border-radius:14px;align-items:center;gap:8px;margin-top:12px;padding:10px;display:flex}.decisionRow{background:#111b34;border:1px solid #2b3a64;border-radius:14px;margin-bottom:8px;padding:10px}.decisionRow span{float:right;color:#94a3b8;font-size:12px}.decisionRow p{margin:8px 0 0}.decisionButtons{margin:10px 0}.evidenceGrid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;margin-bottom:16px;display:grid}.evidenceCard{background:#0b1328;border:1px solid #2b3a64;border-radius:18px;padding:12px}.evidenceHead{color:#cbd5e1;align-items:center;gap:8px;display:flex}.evidenceHead span{color:#94a3b8;margin-left:auto;font-size:12px}.evidenceCard img{object-fit:contain;background:#030712;border:1px solid #26365d;border-radius:14px;width:100%;max-height:260px;margin:10px 0;display:block}.openLink{color:#c4b5fd;margin-top:8px;font-weight:800;display:inline-flex}.manifestPreview{white-space:pre-wrap;color:#d8b4fe;background:#030712;border:1px solid #26365d;border-radius:14px;max-height:220px;padding:10px;overflow:auto}.miniTimeline{flex-direction:column;gap:8px;max-height:240px;display:flex;overflow:auto}.miniTimelineItem{background:#0b1328;border:1px solid #26365d;border-radius:12px;grid-template-columns:90px 1fr 1fr;gap:10px;padding:8px;display:grid}.miniTimelineItem.needsReview{border-color:#f97316}.miniTimelineItem.validated{border-color:#166534}.miniTimelineItem span,.miniTimelineItem em{color:#94a3b8;font-style:normal}@media (width<=900px){.reviewGrid,.scoreGrid,.miniTimelineItem{grid-template-columns:1fr}}.eventHelpPanel{min-height:180px}.eventHelpGrid{gap:10px;margin-top:12px;display:grid}.eventHelpGrid div{background:#0b1328;border:1px solid #273456;border-radius:14px;padding:10px}.eventHelpGrid b{color:#eef2ff;display:block}.eventHelpGrid span{color:#94a3b8;margin-top:4px;font-size:13px;display:block}.eventModal{width:min(1180px,96vw)}.eventInspectorGrid{grid-template-columns:1.1fr .9fr;gap:14px;margin:14px 0;display:grid}.rootEventGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.rootEventGrid div{background:#111b34;border:1px solid #2b3a64;border-radius:14px;padding:10px}.rootEventGrid span{color:#94a3b8;font-size:12px;display:block}.rootEventGrid b{color:#eef2ff;word-break:break-word;margin-top:4px;display:block}.eventMessage{color:#cbd5e1;background:#0b1328;border:1px solid #273456;border-radius:14px;padding:12px}.jsonDetails{background:#030712;border:1px solid #26365d;border-radius:14px;margin-top:12px;padding:10px}.jsonDetails summary{cursor:pointer;color:#c4b5fd;font-weight:800}.jsonDetails pre{white-space:pre-wrap;color:#d8b4fe;max-height:420px;overflow:auto}.actionJournal{flex-direction:column;gap:8px;max-height:260px;display:flex;overflow:auto}.eventRootTimeline{max-height:320px}@media (width<=1000px){.eventInspectorGrid,.rootEventGrid{grid-template-columns:1fr}}.marshalNoteBox{background:#0b1328;border:1px solid #7c3aed;border-radius:14px;margin:12px 0;padding:12px 14px}.marshalNoteBox span{color:#a78bfa;margin-bottom:6px;font-size:12px;display:block}.marshalNoteBox p{color:#f8fafc;margin:0;font-weight:700;line-height:1.45}.decisionRow.rootAction{background:linear-gradient(#1b1434,#111b34);border-color:#7c3aed}.decisionRow.rootAction b:before{content:"Root · ";color:#a78bfa}.pilotButton{text-align:left;width:100%;color:inherit;font-weight:inherit;cursor:pointer;background:#101936;border:1px solid #2b3a64;border-radius:18px;padding:14px;display:block}.pilotButton:hover{border-color:#a78bfa;transform:translateY(-1px)}.pilotButton small{color:#94a3b8;margin-top:10px;display:block}.pilotModal{width:min(1180px,96vw)}.pilotSummaryGrid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.pilotSummaryGrid>div{background:#101936;border:1px solid #2b3a64;border-radius:16px;padding:13px}.pilotSummaryGrid span{color:#94a3b8;font-size:12px;display:block}.pilotSummaryGrid b{margin-top:6px;font-size:22px;display:block}.pilotIncidentList{flex-direction:column;gap:12px;display:flex}.pilotIncident{background:#0b1328;border:1px solid #2b3a64;border-radius:16px;padding:13px}.pilotIncident small{color:#94a3b8}.pilotDecisionPills{flex-wrap:wrap;gap:7px;margin-top:10px;display:flex}.decisionPill{color:#dbeafe;background:#1d2a44;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800}.decisionPill.TIME_PENALTY{color:#fed7aa;background:#7c2d12}.decisionPill.WARNING{color:#fef3c7;background:#713f12}.decisionPill.DQ{color:#fecaca;background:#7f1d1d}.decisionRow.TIME_PENALTY,.decisionRow.DQ,.decisionRow.WARNING{border-color:#f97316}.reviewCard.compact{padding:11px}.pilotTimeline .miniTimelineItem{text-align:left;color:#eef2ff;background:#0b1328;border:1px solid #2b3a64;border-radius:12px;grid-template-columns:120px 1fr 1fr;align-items:center;gap:10px;width:100%;margin-bottom:7px;padding:10px;display:grid}.pilotTimeline .miniTimelineItem:hover{border-color:#a78bfa}@media (width<=980px){.pilotSummaryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.pilotTimeline .miniTimelineItem{grid-template-columns:1fr}}.lifecycleBar{justify-content:space-between;align-items:center;gap:16px;display:flex}.lifecycleBar>div:first-child{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.raceStatus{color:#fff;background:#334155;border-radius:999px;padding:5px 10px}.raceStatus.READY{background:#1d4ed8}.raceStatus.LIVE{background:#166534}.raceStatus.PAUSED{background:#92400e}.raceStatus.FINISHED{background:#581c87}.lifecycleBar em{color:#94a3b8;font-style:normal}.lifecycleActions button{padding:8px 12px}.trackStudioPanel{border-color:#4c1d95}.studioGrid{grid-template-columns:360px 1fr;gap:16px;display:grid}.studioColumn{background:#0b1328;border:1px solid #273456;border-radius:18px;padding:14px}.studioColumn.wide{min-width:0}.fieldLabel{color:#94a3b8;margin:10px 0;font-size:13px;display:block}.fieldLabel input,.fieldLabel select,select{color:#fff;background:#121a33;border:1px solid #28365f;border-radius:10px;width:100%;margin-top:6px;padding:10px}.modelList{flex-direction:column;gap:8px;max-height:360px;display:flex;overflow:auto}.modelListItem{text-align:left;color:#eef2ff;background:#101936;border:1px solid #2b3a64;flex-direction:column;align-items:flex-start;display:flex}.modelListItem.active{background:#1b1434;border-color:#a78bfa}.studioHeader{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.inlineInput{width:150px}.qualityGrid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0;display:grid}.qualityGrid div{background:#111b34;border:1px solid #2b3a64;border-radius:14px;padding:10px}.qualityGrid span{color:#94a3b8;font-size:12px;display:block}.qualityGrid b{margin-top:4px;display:block}.warningText{color:#fed7aa;background:#1f1408;border:1px solid #f97316;border-radius:12px;padding:10px}.pointTable{flex-direction:column;gap:6px;margin-top:12px;display:flex}.pointHead,.pointRow{grid-template-columns:50px 120px 110px repeat(4,110px) minmax(150px,1fr);align-items:center;gap:8px;display:grid}.pointHead{color:#94a3b8;padding:0 8px;font-size:12px}.pointRow{background:#101936;border:1px solid #2b3a64;border-radius:14px;padding:8px}.pointRow input{padding:7px}.pointRow code{color:#c4b5fd;text-overflow:ellipsis;font-size:12px;overflow:hidden}@media (width<=1100px){.studioGrid{grid-template-columns:1fr}.qualityGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.pointHead,.pointRow{grid-template-columns:1fr 1fr}.pointHead span:nth-child(n+5){display:none}}.moduleNav{flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0;display:flex}.moduleNav button{color:#cbd5e1;background:#101936;border:1px solid #2b3a64;border-radius:14px;align-items:center;gap:8px;padding:11px 15px;font-weight:900;display:inline-flex}.moduleNav button:hover{border-color:#a78bfa;transform:translateY(-1px)}.moduleNav button.active{color:#fff;background:linear-gradient(#3b1a78,#221543);border-color:#8b5cf6;box-shadow:0 0 0 1px #8b5cf62e,0 18px 55px #7c3aed38}.studioPage{margin-top:0}.studioPage .studioColumn.wide{min-height:420px}@media (width<=900px){.moduleNav{z-index:5;background:#07111f;padding:10px 0;position:sticky;top:0}.studioPage .studioGrid{grid-template-columns:1fr}}.addPointBar select{color:#fff;background:#121a33;border:1px solid #28365f;border-radius:10px;width:150px;padding:10px}.studioHint{color:#c4b5fd;background:#101936;border:1px solid #3b2869;border-radius:12px;margin:10px 0 14px;padding:10px}.pointEditorList{flex-direction:column;gap:12px;margin-top:12px;display:flex}.pointEditorTop b{color:#fff;font-size:15px;display:block}.pointEditorTop span{color:#94a3b8;margin-top:4px;font-size:12px;display:block}.pointEditorGrid input,.pointEditorGrid select{color:#fff;background:#121a33;border:1px solid #28365f;border-radius:10px;width:100%;margin-top:5px;padding:8px}.pointEditorGrid .checkLabel{color:#cbd5e1;background:#101936;border:1px solid #28365f;border-radius:10px;align-items:center;gap:8px;padding:10px;display:flex}.pointEditorGrid .checkLabel input{width:auto;margin:0}.gateState{background:#101936;border:1px solid #28365f;border-radius:10px;padding:10px}.gateState span{color:#94a3b8;font-size:12px;display:block}.gateState b{color:#fff;margin-top:5px;display:block}@media (width<=1200px){.pointEditorGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.pointEditorTop{flex-direction:column}}@media (width<=720px){.pointEditorGrid{grid-template-columns:1fr}.addPointBar select,.inlineInput{width:100%}}.compactField{color:#94a3b8;flex-direction:column;gap:5px;font-size:12px;display:flex}.compactField select{min-width:160px}.studioMessage{color:#dbeafe;background:#102033;border:1px solid #38bdf8;border-radius:12px;margin:10px 0 14px;padding:10px 12px;font-weight:800}.pointEditorCard.dirty{border-color:#38bdf8;box-shadow:0 0 0 1px #38bdf826}.pointEditorCard[draggable=true]{cursor:grab}.pointEditorCard[draggable=true]:active{cursor:grabbing}.pointEditorTop b{align-items:center;gap:6px;display:flex}.pointEditorGrid input[readonly]{opacity:.75;cursor:not-allowed}.pointEditorGrid label{position:relative}.helpIcon{color:#38bdf8;vertical-align:middle;cursor:help;justify-content:center;align-items:center;margin-left:5px;display:inline-flex}.helpIcon:hover{color:#a78bfa}.gateState em{color:#38bdf8;margin-top:5px;font-size:12px;font-style:normal;font-weight:800;display:block}.buttonRow button:disabled{opacity:.45;cursor:not-allowed;transform:none}.sourcePanel{background:#0f172a80;border:1px solid #94a3b82e;border-radius:14px;margin-top:14px;padding:12px}.sourcePanel h3{margin:0 0 6px}.sourceGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:8px 0;display:grid}.sourceGrid input,.fullInput{box-sizing:border-box;width:100%}.sourceList{gap:8px;max-height:280px;margin-top:10px;display:grid;overflow:auto}.sourceItem{background:#02061759;border:1px solid #94a3b824;border-radius:12px;gap:3px;padding:9px;display:grid}.sourceItem span,.sourceItem em{color:#94a3b8;font-size:12px}.sourceItem button{justify-self:start;margin-top:4px}.sourceVideoPanel h3{align-items:center;gap:8px;display:flex}.fileButton{color:#dbeafe;cursor:pointer;background:#1d2a44;border:1px solid #31466d;border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:10px 14px;font-weight:800;display:inline-flex}.fileButton input{display:none}.videoPlayerBox{background:#02061773;border:1px solid #94a3b82e;border-radius:16px;margin-top:12px;padding:10px}.videoPlayerBox video{background:#020617;border-radius:12px;width:100%;max-height:340px;display:block}.videoTimeBar{color:#cbd5e1;flex-wrap:wrap;align-items:center;gap:10px;margin-top:10px;display:flex}.videoTimeBar span{background:#101936;border:1px solid #2b3a64;border-radius:999px;align-items:center;gap:6px;padding:6px 10px;font-size:12px;font-weight:800;display:inline-flex}.sourceItem span:nth-of-type(2){color:#c4b5fd}.sourceItem b{align-items:center;gap:6px;display:flex}.ocrBadge{text-transform:uppercase;color:#e2e8f0;background:#334155;border:1px solid #94a3b840;border-radius:999px;justify-content:center;align-items:center;width:max-content;padding:4px 9px;font-size:11px;font-weight:900;display:inline-flex}.ocrBadge.valid{color:#bbf7d0;background:#14532d;border-color:#22c55e55}.ocrBadge.mismatch{color:#fed7aa;background:#7c2d12;border-color:#fb923c66}.ocrBadge.invalid{color:#fecaca;background:#7f1d1d;border-color:#ef444466}.ocrBadge.not-provided,.ocrBadge.none{color:#cbd5e1;background:#1e293b}.ocrBadge.pending{color:#fde68a;background:#713f12;border-color:#facc1555}.ocrValidationText{color:#94a3b8;font-size:11px;line-height:1.35}.videoOcrFrame{background:#020617;border:1px solid #94a3b838;border-radius:16px;position:relative;overflow:hidden}.videoOcrFrame video{width:100%;display:block}.ocrRegionOverlay{pointer-events:none;background:#facc151f;border:2px solid #facc15;position:absolute;box-shadow:0 0 0 9999px #0206172e}.ocrRegionControls{grid-template-columns:auto repeat(4,minmax(44px,1fr));align-items:center;gap:8px;margin-top:8px;display:grid}.ocrRegionControls span{color:#94a3b8;font-size:12px;font-weight:700}.ocrRegionControls input{min-width:0}.ocrResultBox{background:#0f172ab8;border:1px solid #94a3b82e;border-radius:14px;gap:4px;margin-top:8px;padding:10px 12px;display:grid}.ocrResultBox.valid{background:#14532d40;border-color:#22c55e73}.ocrResultBox.invalid{background:#7f1d1d38;border-color:#f8717173}.ocrResultBox b{color:#e2e8f0}.ocrResultBox span{color:#cbd5e1;font-size:12px}.ocrResultBox em{color:#86efac;font-size:12px;font-style:normal}.ocrResultBox small{color:#94a3b8;word-break:break-word}.ocrReadonlyBox{color:#94a3b8;border:1px dashed #94a3b847;border-radius:12px;gap:4px;padding:9px 10px;display:grid}.ocrReadonlyBox small{color:#e2e8f0;word-break:break-word}.studioPage .studioGrid{grid-template-columns:minmax(560px,660px) minmax(0,1fr)}.sourceVideoPanel{padding:16px}.sourceVideoPanel .videoPlayerBox{padding:14px}.sourceVideoPanel .videoOcrFrame video{object-fit:contain;min-height:300px;max-height:560px}.sourceVideoPanel .videoOcrFrame{min-height:300px}.ocrFrameDetails{border-top:1px solid #94a3b82e;margin-top:8px;padding-top:8px}.ocrFrameDetails summary{cursor:pointer;color:#c4b5fd;font-size:12px;font-weight:800}.ocrFrameLine{border-bottom:1px solid #94a3b81a;grid-template-columns:44px 1fr;gap:4px 8px;padding:6px 0;display:grid}.ocrFrameLine b{color:#e2e8f0}.ocrFrameLine.valid b{color:#86efac}.ocrFrameLine.invalid b,.ocrFrameLine.outlier b{color:#fca5a5}.ocrFrameLine small{color:#94a3b8;grid-column:2}@media (width<=1200px){.studioPage .studioGrid{grid-template-columns:1fr}.sourceVideoPanel .videoOcrFrame video,.sourceVideoPanel .videoOcrFrame{min-height:240px}}.ocrRegionOverlay.editable{pointer-events:auto;cursor:move}.ocrRegionLabel{color:#111827;background:#facc15f2;border-radius:999px;align-items:center;height:18px;padding:0 6px;font-size:10px;font-weight:900;display:inline-flex;position:absolute;top:-22px;left:4px;box-shadow:0 4px 14px #00000059}.ocrRegionHandle{cursor:nwse-resize;background:#facc15;border:2px solid #111827;border-radius:4px;width:14px;height:14px;position:absolute;bottom:-7px;right:-7px;box-shadow:0 4px 14px #00000073}.videoPopoutBackdrop{justify-content:center;align-items:center;padding:18px}.videoPopoutModal{width:min(96vw,1800px);max-height:94vh;overflow:auto}.popoutVideoFrame{min-height:60vh;max-height:72vh}.popoutVideoFrame video{object-fit:contain;background:#020617;max-height:72vh}.popoutControls{grid-template-columns:auto repeat(4,minmax(80px,120px))}.videoOcrFrame{touch-action:none}.ocrRunStatus{color:#cbd5e1;background:#0f172acc;border:1px solid #94a3b838;border-radius:12px;margin-top:10px;padding:10px 12px;font-size:12px;font-weight:800}.ocrRunStatus.running{color:#bae6fd;border-color:#38bdf88c}.ocrRunStatus.done{color:#bbf7d0;border-color:#22c55e73}.ocrLabPage{border-color:#0f766e}.ocrLabGrid{grid-template-columns:420px 1fr;align-items:start;gap:18px;display:grid}.ocrReferenceForm textarea{resize:vertical;width:100%}.ocrReferencePreview{object-fit:contain;background:#020617;border:1px solid #23345f;border-radius:12px;width:100%;max-height:180px;padding:8px}.ocrReferenceList{min-height:360px}.ocrReferenceItem{background:#0d1730;border:1px solid #23345f;border-radius:16px;grid-template-columns:220px 1fr auto;align-items:start;gap:14px;margin-top:10px;padding:12px;display:grid}.ocrReferenceItem img{object-fit:contain;background:#020617;border:1px solid #1f2d50;border-radius:10px;width:220px;max-height:84px}.ocrReferenceBody{flex-direction:column;gap:6px;display:flex}.ocrReferenceBody code{white-space:pre-wrap;color:#dbeafe;background:#050b18;border:1px solid #1f2d50;border-radius:10px;padding:8px}.rowBetween{justify-content:space-between;align-items:center;gap:10px;display:flex}.dangerNotice{color:#fecaca;border-color:#ef4444}.small{padding:8px 10px;font-size:12px}@media (width<=1100px){.ocrLabGrid,.ocrReferenceItem{grid-template-columns:1fr}.ocrReferenceItem img{width:100%}}.ocrCorrectionBadge{color:#fde68a;background:#31200a;border:1px solid #f59e0b;border-radius:10px;margin-top:8px;padding:7px 9px;font-size:12px;font-weight:800;display:block}.studioHint.successHint{color:#bbf7d0;background:#06291f;border-color:#15803d}.moduleNav{flex-wrap:wrap;gap:10px;margin:18px 0;display:flex}.moduleNav button{color:#dbeafe;background:#101936;border:1px solid #31466d}.moduleNav button.active{background:#3b1b72;border-color:#8b5cf6;box-shadow:0 0 0 1px #8b5cf659}.panelTop{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.panelTop p{margin:7px 0 0}.panelSubsection{background:#02061738;border:1px solid #94a3b82e;border-radius:18px;margin-top:16px;padding:16px}.muted{color:#7f8ca8}.notice{color:#dbeafe;background:#101936;border:1px solid #31466d;border-radius:13px;margin:12px 0;padding:11px 13px}.successNotice{color:#bbf7d0;background:#052e22;border-color:#16a34a}.dangerNotice{color:#fecaca;background:#3b1118;border-color:#dc2626}.danger{color:#fff!important;background:#dc2626!important}.tableWrap{background:#0b1429;border:1px solid #273456;border-radius:16px;overflow:auto}.dataTable{border-collapse:collapse;width:100%;min-width:850px}.dataTable th,.dataTable td{text-align:left;vertical-align:top;border-bottom:1px solid #94a3b81f;padding:12px 14px}.dataTable th{color:#aeb9d4;text-transform:uppercase;letter-spacing:.04em;background:#101936;font-size:12px}.dataTable tr:hover td{background:#7c3aed14}.racePage .sourceGrid,.sourceGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.fieldLabel{color:#94a3b8;flex-direction:column;gap:6px;font-size:12px;font-weight:700;display:flex}.fieldLabel input,.fieldLabel select,select,textarea{color:#fff;background:#121a33;border:1px solid #28365f;border-radius:10px;width:100%;padding:10px}.fieldAction{flex-direction:column;justify-content:flex-end;gap:8px;display:flex}.raceStatus{color:#bbf7d0;background:#14532d;border-radius:999px;margin-left:8px;padding:6px 10px;font-size:12px;display:inline-flex}.miniControls{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.small{border-radius:10px;padding:7px 10px;font-size:12px}.twoColumn{grid-template-columns:minmax(360px,520px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.cardLike,.adminCard,.studioCard{background:#0d1730b8;border:1px solid #273456;border-radius:18px;padding:16px}.recordingList{gap:10px;max-height:620px;margin-top:12px;display:grid;overflow:auto}.recordingItem{background:#101936;border:1px solid #2b3a64;border-radius:15px;grid-template-columns:1fr auto;align-items:center;gap:8px;padding:10px;display:grid}.recordingItem.active{background:#2b1854;border-color:#8b5cf6}.recordingSelect{text-align:left;justify-items:start;gap:4px;display:grid;color:#e5edff!important;background:0 0!important;border:0!important;padding:0!important}.recordingSelect b{font-size:14px}.recordingSelect span{color:#c4b5fd;font-size:13px}.recordingSelect small{color:#94a3b8;word-break:break-word}.replayDetails{background:#02061738;border:1px solid #94a3b82e;border-radius:14px;margin-top:12px;padding:10px 12px}.replayDetails summary{cursor:pointer;color:#dbeafe;font-weight:800}.kvLine{border-top:1px solid #94a3b81f;grid-template-columns:1fr auto;gap:10px;padding:7px 0;display:grid}.kvLine code{white-space:normal;overflow-wrap:anywhere}.replayTimeline{gap:6px;max-height:560px;margin-top:10px;display:grid;overflow:auto}.replaySample{background:#0a1224;border:1px solid #94a3b81f;border-radius:10px;grid-template-columns:72px 1fr;gap:5px 10px;padding:8px;display:grid}.replaySample small{color:#94a3b8;overflow-wrap:anywhere;grid-column:2}.replaySample.candidate{border-color:#f59e0b}.suggestionList{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;display:grid}.suggestionCard{background:#0a1224;border:1px solid #94a3b829;border-radius:12px;gap:3px;padding:10px;display:grid}.adminGrid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}.adminCard.fullWidth{grid-column:1/-1;margin-top:16px}.adminFormGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.roleChips{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.roleChip{color:#dbeafe;background:#101936;border:1px solid #31466d;border-radius:999px;align-items:center;gap:8px;padding:8px 10px;font-size:12px;font-weight:800;display:inline-flex}.roleChip input{width:auto}.roleChips.compact{margin:0}.adminUserList{gap:10px;margin-top:10px;display:grid}.adminUserRow{background:#101936;border:1px solid #273456;border-radius:14px;grid-template-columns:minmax(240px,1fr) minmax(300px,1.5fr) minmax(180px,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.adminUserRow small{color:#94a3b8;margin-top:4px;display:block}.userMemberships{color:#aab3d1;flex-wrap:wrap;gap:6px;font-size:12px;display:flex}.keyBanner{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.keyBanner code{color:#e0f2fe;background:#020617;border:1px solid #24405f;border-radius:8px;max-width:min(760px,100%);padding:8px;font-size:13px;overflow:auto}.studioPage{border-color:#6d28d9}.studioShell{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.studioSidebar{gap:14px;display:grid}.studioModelList{gap:10px;display:grid}.studioModelButton{text-align:left;color:#e5edff;background:#101936;border:1px solid #2b3a64;justify-items:start;gap:4px;display:grid}.studioModelButton.active{background:#2b1854;border-color:#8b5cf6}.studioHeader{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.studioTabs{flex-wrap:wrap;gap:8px;margin:14px 0;display:flex}.studioTabs button{background:#1d2a44;border:1px solid #31466d;border-radius:999px;padding:9px 13px}.studioTabs button.active{background:#7c3aed;border-color:#a78bfa}.routeRefsGrid{gap:12px;display:grid}.pointEditorTop{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.pointEditorGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:12px;display:grid}.pointEditorGrid label{color:#94a3b8;font-size:12px}.pointEditorGrid input,.pointEditorGrid select{margin-top:5px}.addPointBar{flex-wrap:wrap;align-items:center;gap:10px;margin:12px 0;display:flex}.inlineInput{max-width:180px}.flowSteps span{color:#cbd5e1;background:#101936;border:1px solid #94a3b829;border-radius:12px;padding:9px}@media (width<=1200px){.twoColumn,.adminGrid,.studioShell,.adminUserRow{grid-template-columns:1fr}.sourceGrid,.racePage .sourceGrid,.adminFormGrid,.pointEditorGrid,.studioMetrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.sourceGrid,.racePage .sourceGrid,.adminFormGrid,.pointEditorGrid,.studioMetrics,.suggestionList{grid-template-columns:1fr}.app{padding:16px}header{flex-direction:column;align-items:flex-start}.cols-5{grid-template-columns:1fr}}.app{max-width:1500px;padding:30px 34px 56px}.panel{padding:22px}.panelTop{align-items:flex-start}.panelTop h2,.sectionHeader h3,.adminCard h3,.cardLike h3{letter-spacing:-.01em}.panelTop p,.sectionHeader p{margin:8px 0 0;line-height:1.45}.moduleNav{margin:18px 0}.moduleNav button{min-height:42px}.trackStudioPanel.studioV3{border-color:#7c3aedb3}.studioV3Layout{grid-template-columns:minmax(320px,390px) minmax(0,1fr);align-items:start;gap:20px;display:grid}.studioV3Sidebar,.studioV3Main{min-width:0}.studioV3Sidebar{align-self:start;gap:14px;display:grid;position:sticky;top:18px}.studioV3Sidebar>h3{margin-top:0}.studioV3Sidebar .fieldLabel,.studioV3Sidebar button,.studioV3Sidebar select,.studioV3Sidebar input{width:100%}.compactModelList,.modelList.compactModelList{gap:10px;max-height:420px;padding-right:4px;display:grid;overflow:auto}.modelListItem{text-align:left;color:#e5edff;background:#101936;border:1px solid #2b3a64;border-radius:16px;justify-items:start;gap:5px;width:100%;padding:13px 14px;display:grid}.modelListItem.active{background:linear-gradient(#2b1854,#17132d);border-color:#a78bfa;box-shadow:inset 0 0 0 1px #a78bfa26}.modelListItem span,.modelListItem em{color:#aab3d1;font-size:12px;font-style:normal}.studioV3Main{gap:14px;display:grid}.studioV3Header{background:#02061738;border:1px solid #94a3b829;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px;display:flex}.studioV3Header h3{margin-top:0;font-size:24px}.studioV3Header p{margin:7px 0 0}.studioV3Header .buttonRow{justify-content:flex-end}.studioV3Tabs{background:#02061740;border:1px solid #94a3b81f;border-radius:18px;flex-wrap:wrap;gap:8px;padding:6px;display:flex}.studioV3Tabs button{background:#1d2a44;border:1px solid #31466d;border-radius:999px;padding:9px 13px}.studioV3Tabs button.active{background:#7c3aed;border-color:#a78bfa}.studioV3Step{background:#0d17308f;border:1px solid #94a3b829;border-radius:18px;padding:16px}.sectionHeader{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.sectionHeader .buttonRow,.sectionHeader>div:last-child{flex-shrink:0}.studioMetrics{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;display:grid}.studioMetrics .card,.studioMetrics .panel{min-height:112px;padding:16px}.studioMetrics .card p{font-size:25px}.hybridFlow,.validationHero{background:#02061742;border:1px solid #94a3b829;border-radius:16px;margin-top:14px;padding:16px}.flowSteps{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.flowSteps span{color:#cbd5e1;background:#101936b8;border:1px solid #94a3b824;border-radius:12px;padding:10px 12px;display:block}.pointEditorList,.routeReferenceList{gap:12px;display:grid}.pointEditorCard{background:#0b1328e0;border:1px solid #273456;border-radius:18px;padding:14px}.pointEditorTop{justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:12px;display:flex}.pointEditorTop .buttonRow{justify-content:flex-end}.pointEditorGrid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.pointEditorGrid label,.checkLabel,.gateState{min-width:0}.legacyDetails{background:#02061733;border:1px solid #94a3b829;border-radius:16px;margin-top:14px;padding:12px}.legacyDetails summary{cursor:pointer;color:#c4b5fd;font-weight:800}.sourceScannerStep{grid-template-columns:minmax(0,1.2fr) minmax(340px,.8fr);gap:14px;display:grid}.sourcePanel{min-width:0}.replayValidationPage .twoColumn{grid-template-columns:minmax(360px,460px) minmax(0,1fr);align-items:start;gap:18px;display:grid}.replayValidationPage .cardLike{min-width:0}.replayValidationPage .recordingList{gap:10px;max-height:560px;margin-top:12px;display:grid;overflow:auto}.replayValidationPage .recordingItem{background:#101936;border:1px solid #2b3a64;border-radius:15px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px;display:grid}.replayValidationPage .recordingItem.active{background:linear-gradient(#2b1854,#15132b);border-color:#a78bfa}.replayValidationPage .recordingSelect{text-align:left;justify-items:start;gap:4px;min-width:0;display:grid;color:#e5edff!important;background:0 0!important;border:0!important;padding:0!important}.replayValidationPage .recordingSelect b,.replayValidationPage .recordingSelect small,.replayValidationPage .recordingSelect span{overflow-wrap:anywhere;white-space:normal;max-width:100%}.replayValidationPage .recordingSelect span{color:#c4b5fd;font-size:13px}.replayValidationPage .recordingSelect small{color:#94a3b8}.replayValidationPage .summaryGrid,.summaryGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:10px 0 14px;display:grid}.replayTimeline{max-height:520px;overflow:auto}.adminPage .adminGrid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:16px;display:grid}.adminPage .adminCard{background:#0d1730b8;border:1px solid #273456;border-radius:18px;padding:16px}.adminPage .adminCard.fullWidth{grid-column:1/-1;margin-top:16px}.adminPage .adminFormGrid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:10px 0;display:grid}.adminPage .roleChips{flex-wrap:wrap;gap:8px;margin:12px 0;display:flex}.adminPage .roleChip{color:#dbeafe;background:#101936;border:1px solid #31466d;border-radius:999px;align-items:center;gap:8px;width:auto;padding:8px 10px;font-size:12px;font-weight:800;display:inline-flex}.adminPage .roleChip input{width:auto;margin:0}.adminPage .adminUserList{gap:10px;margin-top:10px;display:grid}.adminPage .adminUserRow{background:#101936;border:1px solid #273456;border-radius:14px;grid-template-columns:minmax(240px,1fr) minmax(300px,1.5fr) minmax(200px,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.adminPage .successNotice,.keyBanner{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.adminPage .successNotice code{color:#e0f2fe;background:#020617;border:1px solid #24405f;border-radius:8px;max-width:min(760px,100%);padding:8px;display:inline-block;overflow:auto}.panel .tableWrap{margin-top:16px}.dataTable td,.dataTable th{white-space:normal}.dataTable .buttonRow{justify-content:flex-start}.selectedRow td{background:linear-gradient(90deg,#7c3aed4d,#1e293b94);border-top:1px solid #a78bfa8c;border-bottom:1px solid #a78bfa8c}.selectedRow td:first-child{border-left:3px solid #a78bfa}.raceNameCell{justify-content:space-between;align-items:center;gap:12px;display:flex}.selectedPill{color:#fff;letter-spacing:.03em;text-transform:uppercase;background:#7c3aedf2;border-radius:999px;align-items:center;padding:4px 9px;font-size:11px;font-weight:800;display:inline-flex}.ocrReferenceActions{flex-direction:column;align-items:stretch;gap:8px;display:flex}.ocrReferenceItem.editing{background:#111b34;border-color:#a78bfa}.ocrEditForm{gap:9px;display:grid}.ocrEditForm textarea,.ocrEditForm input,.ocrEditForm select{width:100%}@media (width<=1200px){.studioV3Layout,.replayValidationPage .twoColumn,.adminPage .adminGrid,.sourceScannerStep{grid-template-columns:1fr}.studioV3Sidebar{position:static}.studioMetrics,.pointEditorGrid,.adminPage .adminFormGrid,.summaryGrid{grid-template-columns:repeat(2,minmax(0,1fr))}.adminPage .adminUserRow{grid-template-columns:1fr}}@media (width<=760px){.app{padding:18px}.studioMetrics,.pointEditorGrid,.adminPage .adminFormGrid,.summaryGrid,.flowSteps,.sourceGrid{grid-template-columns:1fr}.panelTop,.studioV3Header,.sectionHeader,.pointEditorTop{flex-direction:column}}.ocrReferenceItem.status-candidate{background:linear-gradient(135deg,#f59e0b1c,#0f172aeb);border-color:#f59e0bb3}.ocrReferenceItem.status-active{background:linear-gradient(135deg,#22c55e17,#0f172aeb);border-color:#22c55e94}.ocrReferenceItem.status-disabled{opacity:.62;border-color:#94a3b852}.pill.CANDIDATE,.pill.candidate{color:#fbbf24;background:#f59e0b2e;border-color:#f59e0b8c}.pill.ACTIVE,.pill.active{color:#86efac;background:#22c55e29;border-color:#22c55e80}.pill.DISABLED,.pill.disabled{color:#cbd5e1;background:#94a3b81a;border-color:#94a3b84d}.raceKeyNotice{border-width:2px;gap:10px;display:grid}.raceKeyNoticeTop{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.raceKeyNoticeTop small{color:#bbf7d0;margin-top:4px;display:block}.fullRaceKey{overflow-wrap:anywhere;white-space:normal;color:#dcfce7;background:#020617;border:1px solid #22c55e8c;border-radius:12px;width:100%;padding:12px;font-size:14px;line-height:1.45;display:block}.raceFlagsPanel h2{align-items:center;gap:8px;display:flex}.flagQuickButtons{margin:14px 0 18px}.flagButton.green{background:#16a34a3d;border-color:#4ade8073}.flagButton.yellow{background:#ca8a043d;border-color:#facc1573}.flagButton.fcy{background:#a162074d;border-color:#eab30873}.flagButton.red{background:#be123c47;border-color:#fb718573}.flagButton.black{background:#1e293bcc;border-color:#94a3b880}.flagButton.finish{background:#2563eb47;border-color:#60a5fa73}.activeFlagList{flex-direction:column;gap:10px;display:flex}.activeFlagItem{background:#0f172a73;border:1px solid #94a3b838;border-radius:14px;grid-template-columns:minmax(150px,210px) 1fr auto;align-items:center;gap:12px;padding:12px;display:grid}.activeFlagItem small,.activeFlagItem em{color:#94a3b8;margin-top:3px;display:block}.flagPill{letter-spacing:.05em;text-transform:uppercase;border:1px solid #94a3b84d;border-radius:999px;justify-content:center;align-items:center;padding:8px 12px;font-size:12px;font-weight:800;display:inline-flex}.activeFlagItem.green .flagPill{background:#16a34a40;border-color:#4ade8073}.activeFlagItem.yellow .flagPill{background:#ca8a0440;border-color:#facc1573}.activeFlagItem.full_course_yellow .flagPill{background:#a162074d;border-color:#eab30873}.activeFlagItem.red .flagPill{background:#be123c47;border-color:#fb718573}.activeFlagItem.black .flagPill{background:#1e293bd9;border-color:#94a3b899}.activeFlagItem.finish .flagPill{background:#2563eb47;border-color:#60a5fa73}.flagModal textarea{resize:vertical;width:100%}@media (width<=900px){.activeFlagItem{grid-template-columns:1fr}}body .app{width:100%;max-width:none}.raceControlCustomizePanel{margin-top:18px}.raceControlCustomizePanel .panelTop p{margin:4px 0 0}.racePanelTools{flex-wrap:wrap;gap:10px;display:flex}.racePanelTool{background:#0f172ab3;border:1px solid #60a5fa40;border-radius:14px;align-items:center;gap:10px;padding:8px 10px;display:inline-flex}.racePanelTool.hidden{opacity:.58;border-style:dashed}.racePanelTool label{color:#dbeafe;white-space:nowrap;align-items:center;gap:8px;font-weight:800;display:inline-flex}.racePanelTool input{width:auto}.buttonRow.compact{gap:4px}.buttonRow.compact button.small{min-width:32px;padding:6px 8px}.raceControlLayout{align-items:start;gap:18px;width:100%;display:grid}.raceControlLayout.panelCount1{grid-template-columns:minmax(0,1fr)}.raceControlLayout.panelCount2{grid-template-columns:repeat(2,minmax(360px,1fr))}.raceControlLayout.panelCount3{grid-template-columns:minmax(430px,1.08fr) minmax(520px,1.38fr) minmax(330px,.86fr)}.raceControlPanelSlot,.liveGridPanel,.timelinePanel,.raceControlLayout .sideColumn{min-width:0}.raceControlLayout .reviewPanel{position:sticky;top:18px}.liveGridTableWrap{scrollbar-width:thin;width:100%;overflow:auto hidden}.liveGridTable{border-collapse:separate;border-spacing:0 10px;table-layout:auto;width:100%;min-width:570px}.liveGridTable th{text-align:left;color:#94a3b8;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;padding:0 10px 6px;font-size:11px}.liveGridTable td{vertical-align:middle;background:#101936;border-top:1px solid #2b3a64;border-bottom:1px solid #2b3a64;padding:12px 10px}.liveGridTable tr{cursor:pointer}.liveGridTable tbody tr:hover td,.liveGridTable tbody tr:focus td{background:#132044;border-color:#526aa3}.liveGridTable td:first-child{border-left:1px solid #2b3a64;border-radius:14px 0 0 14px}.liveGridTable td:last-child{border-right:1px solid #2b3a64;border-radius:0 14px 14px 0}.liveGridTable td small{color:#94a3b8;margin-top:3px;font-size:11px;line-height:1.25;display:block}.rankCell{color:#bfdbfe;white-space:nowrap;font-weight:900}.racePositionCell{min-width:180px;max-width:360px}.racePositionCell b{color:#e2e8f0;text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.timelinePanel .timeline{max-height:min(68vh,760px);padding-right:4px;overflow:auto}@media (width<=1380px){.raceControlLayout.panelCount3,.raceControlLayout.panelCount2{grid-template-columns:repeat(2,minmax(340px,1fr))}.raceControlLayout.panelCount3 .raceControlPanelSlot:nth-child(3){grid-column:1/-1}}@media (width<=920px){body .app{padding:16px}.raceControlLayout.panelCount3,.raceControlLayout.panelCount2,.raceControlLayout.panelCount1{grid-template-columns:1fr}.raceControlLayout.panelCount3 .raceControlPanelSlot:nth-child(3){grid-column:auto}.raceControlLayout .reviewPanel{position:static}.timelinePanel .timeline{max-height:none}}.timelineItem.announcement{background:linear-gradient(90deg,#1e40af4d,#0f172aeb);border-color:#60a5fab3}.timelineItem.announcement .eventMeta code{color:#bfdbfe;background:#2563eb4d}.raceAnnouncementPanel textarea{resize:vertical;color:#fff;width:100%;min-height:88px;font:inherit;background:#121a33;border:1px solid #28365f;border-radius:10px;padding:10px}.announcementGrid{grid-template-columns:minmax(220px,1.4fr) minmax(160px,.6fr) minmax(180px,.6fr);align-items:end;gap:12px;margin-bottom:12px;display:grid}.announcementAudible{justify-content:center;min-height:64px}.announcementAudible input{width:auto;margin-right:8px}@media (width<=920px){.announcementGrid{grid-template-columns:1fr}.announcementAudible{justify-content:flex-start;min-height:auto}}.finishClassificationPanel .finishSummary{flex-wrap:wrap;gap:.6rem;margin:.8rem 0;display:flex}.finishClassificationPanel .finishSummary span{border:1px solid var(--border);color:var(--muted);background:#ffffff0a;border-radius:999px;padding:.35rem .7rem;font-weight:700}.finishTable td small{color:var(--muted);margin-top:.15rem;display:block}.badge.FINISH_PENDING{color:#fbbf24;background:#f59e0b3d}.badge.FINISHED,.badge.FORCED_FINISH{color:#86efac;background:#22c55e38}.badge.DQ{color:#fca5a5;background:#ef444438}.badge.DNS{color:#cbd5e1;background:#94a3b82e}.finishAdjustments{flex-direction:column;gap:.22rem;min-width:9rem;display:flex}.finishAdjustments b{color:var(--text);font-size:.9rem}.finishAdjustments small{color:var(--muted);line-height:1.25}.finishTable td:nth-child(7){max-width:18rem}.pilotActionButtons{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.decisionPill.NOTE{color:#dbeafe;background:#1d2a44}.decisionRow.NOTE{border-color:#334155}@media (width<=720px){.pilotActionButtons{justify-content:flex-start}}.reviewCard.pilotClaim{background:linear-gradient(#21133f,#111b34);border-color:#8b5cf6}.reviewCard.pilotClaim .badge{color:#f5f3ff;background:#6d28d9}.reviewCard.nonProgression{background:linear-gradient(#2b1a08,#111b34);border-color:#f59e0b}.reviewCard.nonProgression .badge{color:#fef3c7;background:#92400e}.timelineItem.pilotClaim{background:#1f1238;border-color:#8b5cf6}.nonProgressionQueueSummary{color:#fcd34d;margin-top:8px;font-size:12px;font-weight:800;line-height:1.4}.nonProgressionDetails{background:linear-gradient(#2b1a08db,#0b1328eb);border-color:#f59e0b;margin:14px 0}.panelTop.compact{margin-bottom:10px}.panelTop.compact h3{margin:0}.panelTop.compact span{color:#fcd34d;font-size:12px;font-weight:800}.nonProgressionStats{grid-template-columns:repeat(3,minmax(0,1fr))}.contextRows{gap:8px;margin-top:10px;display:grid}.contextRows>div{background:#111b34;border:1px solid #2b3a64;border-radius:14px;padding:10px}.contextRows b{color:#fef3c7;margin-bottom:4px;display:block}.contextRows span{color:#cbd5e1}.contextRows pre{white-space:pre-wrap;color:#d8b4fe;max-height:140px;margin:6px 0 0;overflow:auto}@media (width<=900px){.nonProgressionStats{grid-template-columns:1fr}}.evidenceViewerV2{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);gap:14px;margin:10px 0 16px;display:grid}.frameTriplet{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.frameCard{color:#e2e8f0;background:#071124;border:1px solid #26365d;border-radius:16px;flex-direction:column;gap:8px;padding:10px;text-decoration:none;display:flex}.frameCard:hover{border-color:#38bdf8;transform:translateY(-1px)}.frameCard.peak{border-color:#a78bfa;box-shadow:0 0 0 1px #a78bfa2e}.frameLabel{justify-content:space-between;align-items:center;gap:8px;display:flex}.frameLabel span{color:#94a3b8;font-size:12px}.frameCard img{object-fit:contain;background:#020617;border:1px solid #1e2c4f;border-radius:12px;width:100%;max-height:320px;display:block}.frameCard small{color:#94a3b8}.emptyFrame{color:#94a3b8;background:#020617;border:1px dashed #334155;border-radius:12px;justify-content:center;align-items:center;min-height:160px;display:flex}.clipManifestBox{background:#071124;border:1px solid #26365d;border-radius:16px;gap:8px;padding:12px;display:grid}.clipManifestBox span{color:#94a3b8;word-break:break-word;font-size:12px}.danger{color:#fecaca!important;background:#7f1d1d!important;border-color:#ef4444!important}@media (width<=980px){.evidenceViewerV2,.frameTriplet{grid-template-columns:1fr}}.mediaViewerLayout{grid-template-columns:minmax(0,2fr) minmax(320px,1fr);align-items:start}.mediaPlayerSection{grid-row:span 2}.mediaPlayer{gap:10px;display:grid}.mediaPlayerHeader{color:#e2e8f0;justify-content:space-between;gap:10px;display:flex}.mediaPlayerHeader span{color:#94a3b8;font-size:12px}.mediaPlayer img,.mediaPlayer video{object-fit:contain;background:#020617;border:1px solid #1e2c4f;border-radius:16px;width:100%;max-height:62vh;display:block}.mediaPlayerEmpty{min-height:360px}.mediaManifest{max-height:520px}.mediaManifest pre{white-space:pre-wrap;margin:10px 0 0}.frameTimeline{grid-template-columns:repeat(auto-fill,minmax(132px,1fr));gap:10px;max-height:620px;padding-right:2px;display:grid;overflow:auto}.frameThumb{text-align:left;color:#e2e8f0;background:#071124;border:1px solid #26365d;border-radius:14px;flex-direction:column;gap:6px;padding:8px;display:flex}.frameThumb:hover{border-color:#38bdf8}.frameThumb.peak{border-color:#a78bfa;box-shadow:0 0 0 1px #a78bfa38}.frameThumb.before{border-color:#38bdf8}.frameThumb.after{border-color:#22c55e}.frameThumb img{object-fit:cover;background:#020617;border:1px solid #1e2c4f;border-radius:10px;width:100%;height:86px}.frameThumb small{color:#94a3b8}.evidenceMediaButton{background:0 0;border:0;border-radius:14px;width:100%;padding:0;display:block;overflow:hidden}.evidenceMediaButton img{margin:0}.clipManifestBox button{justify-self:start}@media (width<=980px){.mediaViewerLayout{grid-template-columns:1fr}.mediaPlayerSection{grid-row:auto}.mediaPlayer img,.mediaPlayer video{max-height:55vh}}.caseFilterControls select{color:#dbeafe;background:#121a33;border:1px solid #31466d;border-radius:10px;width:auto;min-width:118px;padding:7px 10px;font-weight:800}.lastDecisionLine{color:#c4b5fd;background:#0b1328;border:1px solid #31466d;border-radius:10px;margin-top:8px;padding:7px 9px;font-size:12px;font-weight:800}.resolvedCaseHint{color:#bbf7d0;background:#071b13;border:1px solid #166534;border-radius:12px;margin:10px 0;padding:9px 10px;font-weight:800}.decisionPill.TECHNICAL_ISSUE{color:#cffafe;background:#164e63}.decisionRow.TECHNICAL_ISSUE{border-color:#0891b2}.decisionRow.NO_ACTION{border-color:#166534}.decisionRow.MANUAL_REVIEW{border-color:#7c3aed}.badge.DISMISSED{color:#bbf7d0;background:#14532d}.badge.TECHNICAL{color:#cffafe;background:#164e63}.badge.RESOLVED_WARNING,.badge.RESOLVED_PENALTY{color:#fef3c7;background:#713f12}.badge.RESOLVED_DQ{color:#fecaca;background:#7f1d1d}.badge.NEED_REVIEW{color:#f5f3ff;background:#6d28d9}.timelineItem.danger{background:linear-gradient(135deg,#7f1d1d9e,#0b1328);border-color:#ef4444}.timelineItem.danger .eventMeta code{color:#fecaca;background:#7f1d1d;border:1px solid #f8717173}.timelineItem.danger .eventMeta b{color:#fecaca}.miniTimelineItem.danger{background:#7f1d1d47;border-color:#ef4444}.decisionRow.LAP_INVALIDATION{background:#7f1d1d3d;border-color:#ef4444}.decisionRow.LAP_INVALIDATION b{color:#fecaca}.decisionPill.LAP_INVALIDATION{color:#fecaca;background:#7f1d1d;border:1px solid #f8717173}.finishAdjustments.LAP_INVALIDATION{background:#7f1d1d38;border-color:#ef4444}.finishAdjustments.LAP_INVALIDATION b{color:#fecaca}.badge.LAP_INVALIDATION,.badge.RESOLVED_LAP_INVALIDATION{color:#fecaca;background:#7f1d1d}.decisionBanner{background:linear-gradient(135deg,#101936,#0b1328);border:1px solid #334155;border-radius:18px;grid-template-columns:minmax(0,1.5fr) minmax(280px,.9fr);align-items:stretch;gap:12px;margin:12px 0 14px;padding:14px;display:grid;box-shadow:0 12px 28px #0000002e}.decisionBannerMain{flex-direction:column;gap:5px;display:flex}.decisionBannerMain>span,.decisionBannerMeta span{color:#94a3b8;text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:800}.decisionBannerMain strong{color:#f8fafc;font-size:22px;line-height:1.15}.decisionBannerMain p{color:#dbeafe;margin:4px 0 0;font-weight:700;line-height:1.35}.decisionBannerMeta{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.decisionBannerMeta div{background:#0f172abf;border:1px solid #94a3b838;border-radius:14px;padding:9px}.decisionBannerMeta b{color:#f8fafc;word-break:break-word;margin-top:4px;display:block}.decisionBanner.positive{background:linear-gradient(135deg,#14532d94,#0b1328);border-color:#16a34a}.decisionBanner.technical{background:linear-gradient(135deg,#164e63ad,#0b1328);border-color:#0891b2}.decisionBanner.warning,.decisionBanner.penalty{background:linear-gradient(135deg,#7c2d1294,#0b1328);border-color:#f97316}.decisionBanner.danger{background:linear-gradient(135deg,#7f1d1da8,#0b1328);border-color:#ef4444}.decisionBanner.review{background:linear-gradient(135deg,#5b21b68a,#0b1328);border-color:#a78bfa}@media (width<=820px){.decisionBanner,.decisionBannerMeta{grid-template-columns:1fr}}.postRaceReviewPanel{gap:14px;display:grid}.postRaceGate{background:#0b1328;border:1px solid #334155;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:13px 14px;display:flex}.postRaceGate b{color:#f8fafc;display:block}.postRaceGate span{color:#94a3b8;margin-top:3px;display:block}.postRaceGate strong{color:#f8fafc;display:block}.postRaceGate.ready{background:linear-gradient(135deg,#14532d73,#0b1328);border-color:#16a34a}.postRaceGate.blocked{background:linear-gradient(135deg,#7c2d126b,#0b1328);border-color:#f97316}.postRaceKpis{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.postRaceKpis .card h3{color:#94a3b8;margin:0;font-size:13px}.postRaceKpis .card p{color:#f8fafc;margin:4px 0;font-size:28px;font-weight:900}.postRaceKpis .card span{color:#94a3b8;font-size:12px}.postRaceTable td,.postRaceIncidentTable td{vertical-align:top}.needsReviewRow{outline-offset:-1px;background:#7c2d1224;outline:1px solid #f973168c}.retentionInfo{min-width:220px}.retentionInfo strong{white-space:normal;text-align:right;line-height:1.2;display:block}.retentionInfo em{color:#94a3b8;text-align:right;margin-top:3px;font-size:12px;font-style:normal;font-weight:700;display:block}@media (width<=820px){.retentionInfo strong,.retentionInfo em{text-align:left}}.authShell{color:#e2e8f0;background:radial-gradient(circle at 0 0,#7c3aed33,#0000 32%),#07111f;justify-content:center;align-items:center;min-height:100vh;padding:32px;display:flex}.authCard{background:#0f172aeb;border:1px solid #94a3b833;border-radius:28px;gap:16px;width:min(480px,100%);padding:32px;display:grid;box-shadow:0 24px 80px #00000059}.authCard h1{margin:0;font-size:32px}.authCard p{color:#cbd5e1;margin:0;line-height:1.55}.authBrand{color:#c4b5fd;text-transform:uppercase;letter-spacing:.08em;align-items:center;gap:10px;font-weight:950;display:inline-flex}.discordLoginButton{justify-content:center;align-items:center;gap:10px;width:100%;padding:14px 18px;font-size:15px;display:inline-flex}.discordLoginButton:disabled{opacity:.55;cursor:not-allowed}.userPill{color:#dbeafe;background:#101936;border:1px solid #2b3a64;border-radius:999px;align-items:center;gap:8px;max-width:260px;padding:7px 11px;font-weight:900;display:inline-flex}.userPill img{border-radius:999px;width:24px;height:24px}.userPill span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.adminPage .mutedRow{opacity:.62;background:#080f20}.apiKeyList{grid-column:1/-1;gap:8px;margin-top:8px;display:grid}.apiKeyRow{background:#081225;border:1px solid #94a3b829;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:9px;display:flex}.apiKeyRow span{flex-direction:column;gap:4px;display:flex}.apiKeyRow code{color:#dbeafe;background:#020617;border:1px solid #26365d;border-radius:8px;padding:4px 6px;font-size:12px}.apiKeyRow small{color:#94a3b8;overflow-wrap:anywhere}.adminPage select,.adminPage input{min-width:0}.orgPill{color:#c4b5fd;text-overflow:ellipsis;white-space:nowrap;background:#13203a;border:1px solid #3b4f7a;border-radius:999px;align-items:center;gap:8px;max-width:280px;padding:7px 11px;font-weight:900;display:inline-flex;overflow:hidden}.compactNotice{margin:8px 0 14px;display:inline-block}.adminListHeader{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:.75rem;display:flex}.adminListHeader h3{margin:0}.adminListControls{grid-template-columns:minmax(220px,1fr) auto auto auto;align-items:center;gap:.65rem;margin:.8rem 0 1rem;display:grid}.adminListControls input,.adminListControls select{min-height:2.4rem}.paginationPill{color:#d8ccff;white-space:nowrap;background:#8b5cf61f;border:1px solid #8b5cf659;border-radius:999px;padding:.35rem .65rem;font-size:.82rem}.adminPagination{color:#a9b4d0;justify-content:flex-end;align-items:center;gap:.75rem;margin-top:1rem;display:flex}.apiKeyRow.devKey{background:#22d3ee14;border-color:#22d3ee73}.apiKeyRow.streamerKey{background:#a855f714;border-color:#a855f773}@media (width<=900px){.adminListControls{grid-template-columns:1fr}.adminListHeader{flex-direction:column}.adminPagination{justify-content:flex-start}}.accessDeniedCard{border-color:#f8717159;box-shadow:0 24px 80px #7f1d1d2e}.accessDeniedCard h1{color:#fecaca}.forceDeleteButton{color:#fee2e2;background:#7f1d1d;border-color:#b91c1c}.forceDeleteButton:disabled{opacity:.45;cursor:not-allowed}.sectionTitleRow{color:#e2e8f0;justify-content:space-between;align-items:center;gap:12px;margin:14px 0 8px;display:flex}.sectionTitleRow span{color:#94a3b8;font-size:.9rem}
