@import"https://fonts.googleapis.com/css2?family=Manrope:wght@400;600;700;800&family=Orbitron:wght@600;700;800&family=Rajdhani:wght@600;700&display=swap";:root{--bg-1: #08131d;--bg-2: #0f232f;--panel: rgba(11, 22, 33, .9);--line: #1f3a4d;--line-soft: #27475c;--text: #e7f2fb;--muted: #9bb2c4;--accent: #ffa93a;--accent-2: #52c0ff;--good: #54d28f;--bad: #ff7676}html{scrollbar-gutter:stable}*{box-sizing:border-box}body{margin:0;overflow-x:hidden;overflow-y:scroll;color:var(--text);background:radial-gradient(700px 320px at 10% -10%,#1f4b6f 0%,transparent 60%),radial-gradient(700px 300px at 100% 10%,#4f3f1d 0%,transparent 62%),linear-gradient(180deg,var(--bg-2),var(--bg-1));font-family:Manrope,Segoe UI,sans-serif;user-select:none;-webkit-user-select:none}input,textarea,select{user-select:text;-webkit-user-select:text}input[type=number]{-moz-appearance:textfield;-webkit-appearance:textfield;appearance:textfield}input[type=number]::-webkit-outer-spin-button,input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.page{width:100%;max-width:1240px;margin:0 auto;padding:20px}.topbar{border:1px solid var(--line);background:linear-gradient(150deg,#09151feb,#081019e6);border-radius:16px;padding:12px 14px 12px 18px;display:grid;gap:0;overflow:visible}.topbar-brand-row{min-width:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.topbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.topbar-right{min-width:0;display:grid;justify-items:end;gap:6px}.topbar-clock{min-width:136px;display:grid;gap:1px;line-height:1;text-align:right;justify-items:end}.clock-time{font-family:Orbitron,Manrope,sans-serif;display:inline-flex;align-items:baseline;justify-content:flex-end;width:8.6ch;font-size:20px;font-weight:700;letter-spacing:.02em;color:#eef7ff}.clock-part{display:inline-block;width:2ch;text-align:center;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.clock-sep{display:inline-block;width:.8ch;text-align:center;opacity:.92}.clock-date{font-size:12px;font-weight:700;color:#b7ccdc;font-variant-numeric:tabular-nums lining-nums;font-feature-settings:"tnum" 1,"lnum" 1}.clock-region{font-size:11px;font-weight:700;color:var(--accent-2);letter-spacing:.02em}.topbar-brand{min-width:0}.topbar-brand-lockup{position:relative;min-height:86px;max-width:min(780px,100%);padding-left:4px}.topbar-brand-text{min-height:86px;display:grid;align-content:center;gap:5px;padding:10px 6px 10px 100px}.topbar-emblem{position:absolute;left:-102px;top:-72px;width:210px;height:210px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 8px 14px rgba(0,0,0,.34));z-index:2}.topbar-committee{font-family:Orbitron,Manrope,sans-serif;font-size:13px;font-weight:600;letter-spacing:.02em;line-height:1.2;text-transform:uppercase;color:#bed6e7;white-space:normal;overflow:visible}.auth-mini{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.title{font-size:34px;font-weight:700;font-family:Orbitron,Manrope,sans-serif;letter-spacing:.02em;text-transform:uppercase;line-height:1}.subtitle{margin-top:2px;color:var(--muted);font-size:14px}.chip{border:1px solid var(--line-soft);padding:6px 9px;border-radius:999px;font-size:12px;font-weight:700}.chip.online{background:#112a2173;color:var(--good)}.chip.warn{background:#4a39187a;color:#ffd18e}.chip.offline{background:#4116167a;color:#ff9f9f}.field-mode-chip{border-color:#2f6f4a;background:#14402b8c;color:#95f0b5}.tabs{margin-top:12px;display:flex;flex-wrap:nowrap;gap:10px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin}.main-nav{border:1px solid var(--line);background:linear-gradient(150deg,#09151feb,#0a1722e6);border-radius:14px;padding:8px;display:flex;flex-wrap:nowrap;align-items:stretch;gap:8px;overflow-x:auto;overflow-y:hidden}.public-nav{display:flex}.tab{border:1px solid var(--line);border-radius:999px;background:#081520e6;color:var(--muted);padding:8px 10px;cursor:pointer;font-weight:700;flex:1 1 0;min-width:102px;white-space:pre-line;line-height:1.12;text-align:center;font-size:12px}.tab.active{color:#101b26;border-color:#ffbb5d;background:linear-gradient(140deg,#ffbf66,#ffa93a)}.layout{margin-top:12px;display:grid;grid-template-columns:1.2fr 1fr;gap:12px}.field-season-layout{grid-template-columns:1fr}.trophy-grid{display:grid;gap:8px}.trophy-card{border:1px solid #234153;border-radius:12px;padding:10px;display:grid;grid-template-columns:26px 1fr auto;gap:10px;align-items:center}.trophy-score{font-weight:800;color:var(--accent)}.system-state{margin-bottom:10px;display:flex;flex-wrap:wrap;gap:8px}.public-rating,.auth-screen{margin-top:12px}.auth-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#030a1194;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:flex-start;padding:84px 16px 16px;overflow:hidden;overscroll-behavior:contain}.auth-dialog{width:min(680px,100%);max-height:none;overflow:visible}.auth-head{display:flex;justify-content:space-between;align-items:center;gap:8px}.auth-head h2{margin:0}.card{border:1px solid var(--line);border-radius:16px;background:var(--panel);padding:16px}.wide{grid-column:1 / -1}.card h2{margin:0 0 10px;font-size:19px}.public-rating h2{font-family:Rajdhani,Manrope,sans-serif;font-size:34px;letter-spacing:.02em;line-height:1}.muted{margin:0;color:var(--muted)}.calendar-list{display:grid;gap:8px}.row-btn{border:0;padding:0;margin:0;background:transparent;text-align:left;color:inherit;cursor:pointer}.row{border:1px solid #1d3749;border-radius:12px;padding:8px 10px;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr) minmax(122px,auto);gap:8px;align-items:center}.row.active{border-color:#ffbb5d;outline:2px solid rgba(255,187,93,.92);outline-offset:1px;box-shadow:0 0 0 1px #ffbb5d66 inset,0 0 14px #ffbb5d33}.row.stage-live.active,.row.closed.active,.row.cancelled.active,.row.archived.active{border-color:#ffbb5d;outline:2px solid rgba(255,187,93,.92);outline-offset:1px;box-shadow:0 0 0 1px #ffbb5d6b inset,0 0 14px #ffbb5d38}.row.stage-live{border-color:#2c7e52;box-shadow:0 0 0 1px #54d18d57 inset;background:#184d3338}.row.cup{border-color:#1d3749;background:transparent}.row.cup.active{border-color:#ffbb5d;box-shadow:0 0 0 1px #ffbb5d52 inset}.row.closing{border-color:#2c5d71;background:#0e2e3d73}.row.closed{border-color:#7f2f39;background:#5c1e2857;color:#ffd1d7}.row.cancelled{border-color:#7c2f35;background:#601a2066;color:#ffd3d7}.row.archived{border-color:#d9a13b;background:#6f511242;color:#ffe3ad}.row-btn:disabled{cursor:not-allowed}.row-btn:disabled .row{opacity:.72}.row-stage{min-width:0;display:grid;gap:6px}.row-stage-title{font-weight:800;font-size:17px;line-height:1.2;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}.row-stage-badges{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.row-stage-calendar{grid-template-columns:minmax(0,1.8fr) minmax(0,1.65fr) minmax(0,1.05fr) 176px;align-items:start}.row-disciplines{color:#d8e7f4;font-size:12px;line-height:1.25;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word;border-left:1px dashed rgba(102,149,179,.42);padding-left:8px}.row-place{color:#d7e9f8;font-size:14px;white-space:normal;overflow:visible;text-overflow:clip;word-break:break-word}.row-dates{text-align:right;color:var(--accent-2);font-weight:700;white-space:nowrap;font-size:13px;justify-self:end}.badge-non-score{border:1px solid #2f6f8a;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;color:#8dd3f6;background:#16435966}.badge-track{border:1px solid #2d5d76;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.badge-track.official{border-color:#5f6d78;color:#d2dde6;background:#37424b57}.badge-track.traditional{border-color:#8a6a33;color:#ffd991;background:#5b3f1659}.badge-track.international{border-color:#2f6f8a;color:#9ddcfb;background:#163e5861}.badge-level{border:1px solid #466f8a;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;color:#d7e8ff;background:#2f597a4d}.badge-toggle-active,.badge-toggle-inactive{border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.badge-level,.badge-toggle-active,.badge-toggle-inactive,.badge-track,.badge-non-score,.stage-state-badge{min-height:24px;display:inline-flex;align-items:center}.badge-toggle-active{border:1px solid #8a6a33;color:#ffd991;background:#5b3f1659}.badge-toggle-inactive{border:1px solid #5f6d78;color:#d2dde6;background:#37424b57}.stage-state-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700}.stage-state-dot{width:8px;height:8px;border-radius:999px}.stage-state-badge.state-draft{border:1px solid #5f6d78;color:#d2dde6;background:#37424b66}.stage-state-badge.state-draft .stage-state-dot{background:#96a5b3;box-shadow:0 0 8px #96a5b359}.stage-state-badge.state-active{border:1px solid #2c7e52;color:#9ae2be;background:#184d335c}.stage-state-badge.state-active .stage-state-dot{background:#54d18d;box-shadow:0 0 8px #54d18d73}.stage-state-badge.state-closed{border:1px solid #8a323b;color:#ffcad0;background:#5a1a2366}.stage-state-badge.state-closed .stage-state-dot{background:#ff4f63;box-shadow:0 0 8px #ff4f6373}.stage-state-badge.state-closing{border:1px solid #2f6f8a;color:#8dd3f6;background:#16435966}.stage-state-badge.state-closing .stage-state-dot{background:#60c7f4}.stage-state-badge.state-cancelled{border:1px solid #8b2d35;color:#ffc7ce;background:#651c246b}.stage-state-badge.state-cancelled .stage-state-dot{background:#ff5f72;box-shadow:0 0 8px #ff5f7273}.stage-state-badge.state-archived{border:1px solid #d9a13b;color:#ffe3ad;background:#6f511252}.stage-state-badge.state-archived .stage-state-dot{background:#ffcb6b;box-shadow:0 0 6px #ffcb6b73}.calendar-hint{margin-top:10px;color:var(--muted);font-size:13px}.stage-open-line{margin-top:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.results-anchor{scroll-margin-top:92px}.discipline-switch{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}.base-stage-discipline-list{display:grid;gap:10px}.base-stage-discipline-item{display:grid;gap:8px;padding:10px 12px;border:1px solid rgba(40,80,105,.5);border-radius:12px;background:#0818236b}.base-stage-discipline-item.active{border-color:#ffbb5d7a;box-shadow:0 0 0 1px #ffbb5d24}.base-stage-discipline-item>.discipline-pill{justify-self:start}.base-stage-class-wrap{display:grid;gap:8px}.base-stage-class-label,.base-stage-class-note{margin:0}.base-stage-class-switch{margin-bottom:0}.discipline-switch-inline{display:grid;gap:10px}.discipline-choice-group{border:1px solid rgba(40,80,105,.55);border-radius:12px;background:#0718235c;padding:10px}.discipline-choice-group.active{border-color:#ffbb5da6;box-shadow:0 0 0 1px #ffbb5d1f}.discipline-choice-group>.discipline-pill{margin-bottom:0}.discipline-class-inline{margin-top:10px;border-top:1px solid rgba(42,70,89,.8);padding-top:10px}.discipline-class-label{margin-bottom:8px;color:var(--muted);font-size:12px;font-weight:700}.discipline-class-switch{margin-bottom:0}.discipline-pill{border:1px solid #285069;border-radius:999px;background:#091e2cd1;color:#c9deed;font-size:12px;font-weight:700;padding:6px 10px;cursor:pointer}.discipline-pill.active{border-color:#ffbb5d;color:#11202d;background:linear-gradient(140deg,#ffbf66,#ffa93a)}.discipline-pill-neutral.active{border-color:#ffbb5d;color:#d7e7f3;background:#091e2ceb;box-shadow:0 0 0 1px #ffbb5d47,inset 0 1px #ffffff0a}.discipline-summary{margin-top:2px}.discipline-summary .discipline-pill{cursor:default;pointer-events:none}.discipline-summary.admin-season-legacy-hidden{display:flex!important}.discipline-pill-success{border-color:#285069;color:#c9deed;background:#091e2cd1}.discipline-pill-success.active{border-color:#2c7e52;color:#9ae2be;background:#184d335c;box-shadow:0 0 0 1px #2c7e524d,0 0 0 3px #54d18d24,inset 0 1px #ffffff14}.base-reset-btn{margin-left:auto;border-color:#3f5666;background:#102330e6;color:#c7d5df}.base-reset-btn:hover{border-color:#6f8797}.row-clickable{cursor:pointer}.row-clickable:hover{background:#ffbb5d14}.stage-detail-hint{margin-top:10px}.athlete-detail-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;background:#030a119e;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:flex-start;padding:28px 16px 16px;overflow-y:auto}.athlete-detail-card{width:min(840px,100%)}.athlete-detail-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.athlete-detail-head-actions{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:start;justify-content:flex-end;gap:8px 10px}.athlete-detail-export-controls{display:flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0;grid-column:1}.athlete-detail-export-buttons{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;flex:0 0 auto;grid-column:2}.athlete-detail-export-buttons .ghost-btn{min-height:40px}.season-history-picker{width:min(250px,100%)}.season-history-event-picker{width:min(320px,100%)}.season-history-picker .role-picker-btn{min-height:40px}.season-history-picker .role-picker-btn>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.season-history-picker .role-picker-menu{max-height:280px;overflow-y:auto}.season-history-picker .role-picker-item{white-space:normal;line-height:1.3}.season-history-picker .role-picker-btn:disabled{opacity:.65;cursor:not-allowed}.season-history-export-status{margin:8px 0 0}@media (max-width: 1120px){.athlete-detail-head-actions{grid-template-columns:1fr;justify-content:stretch}.athlete-detail-export-controls,.athlete-detail-export-buttons{grid-column:1;justify-content:stretch}.athlete-detail-export-buttons{flex-wrap:wrap}}.athlete-detail-head h2{margin:0 0 4px}.athlete-detail-kpis{margin-top:12px;display:flex;gap:8px;flex-wrap:wrap}.athlete-detail-block{margin-top:14px;border:1px solid #214059;border-radius:12px;padding:10px;background:#0819269e}.athlete-detail-block h3{margin:0 0 8px;font-size:15px}.athlete-log-row{display:grid;grid-template-columns:72px 1fr;gap:10px;align-items:start;border:1px solid #23475f;border-radius:10px;padding:8px;background:#091f2da6;margin-bottom:8px}.athlete-log-row:last-child{margin-bottom:0}.athlete-log-row.participation{border-color:#2e6f4d;background:#11372666}.athlete-log-row.penalty{border-color:#7e2f37;background:#4a181f66}.athlete-log-row.bonus{border-color:#2d6f4a;background:#14382766}.athlete-log-row.note{border-color:#2e5f78;background:#102a3b6b}.athlete-log-points{font-weight:800;font-size:18px;line-height:1.2;color:var(--accent)}.athlete-log-main{min-width:0}.athlete-log-main strong{display:block}.athlete-log-meta{margin-top:2px;font-size:12px;color:var(--muted)}.season-history-group{border:1px solid #23475f;border-radius:10px;background:#091d2b94;margin-bottom:8px;overflow:hidden}.season-history-group:last-child{margin-bottom:0}.season-history-group-toggle{width:100%;border:0;border-bottom:1px solid #23475f;background:#0a1e2bb8;color:var(--text);cursor:pointer;text-align:left;padding:10px;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.season-history-group-toggle.expanded{border-bottom-color:#2f5f7a;background:#0f2536d6}.season-history-group-title{font-weight:700;line-height:1.25}.season-history-group-meta{color:var(--muted);font-size:12px;white-space:nowrap}.season-history-group .athlete-log-row{margin:8px}.kpis{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(90px,1fr));gap:8px}.kpis div{border:1px solid #21425a;border-radius:12px;padding:10px;background:#0a1d2ab3}.kpis span{color:var(--muted);font-size:12px}.kpis strong{display:block;margin-top:6px;color:var(--accent);font-size:24px}.table-toolbar{margin:10px 0 8px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.table-toolbar .ghost-btn{min-height:36px;display:inline-flex;align-items:center;justify-content:center;line-height:1}.table-filter{width:min(420px,100%)}.table-meta{font-size:12px;color:var(--muted)}.base-prepare-meta{border:1px solid #2c3f4d;border-radius:999px;padding:4px 10px}.base-prepare-meta.is-neutral{color:#b8c5cf;background:#15242f8c;border-color:#3b4b57}.base-prepare-meta.is-error{color:#ffd7d2;background:#6d241c59;border-color:#bd534699}table{width:100%;border-collapse:collapse}th,td{text-align:left;border-bottom:1px solid #1f3646;padding:9px 8px}.season-rating-table .season-col-base{width:96px;white-space:nowrap}.season-rating-table .season-col-penalty{width:110px;white-space:nowrap}.season-rating-table .season-col-total{width:132px;white-space:nowrap}th{color:var(--muted);font-size:13px;font-weight:700}td{font-size:14px}.table-empty{text-align:center;color:var(--muted);padding:14px 8px}.place-cell{width:92px;white-space:nowrap}.place-badge{display:inline-grid;grid-template-columns:30px 22px;align-items:center;column-gap:8px}.place-medal-slot{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center}.place-medal{width:30px;height:30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;font-size:20px;line-height:1;background:#0b1c2999;border:1px solid #2a4659}.place-medal.gold{background:linear-gradient(145deg,#ffdf86,#e6b845);box-shadow:0 0 0 1px #ffe69c73 inset,0 4px 14px #e6b8452e}.place-medal.silver{background:linear-gradient(145deg,#edf2fc,#b3c0d6);box-shadow:0 0 0 1px #e7effc6b inset,0 4px 14px #b3c0d626}.place-medal.bronze{background:linear-gradient(145deg,#e0ae88,#9f6745);box-shadow:0 0 0 1px #e0ae886b inset,0 4px 14px #9f674529}.place-number{font-weight:800;color:#d9e7f3;width:22px;text-align:center}.ok{color:var(--good);font-weight:700;white-space:nowrap}.negative{color:var(--bad);font-weight:800;white-space:nowrap}.stub{margin-top:12px;border:1px dashed #31536b;border-radius:16px;padding:24px 18px;background:#091621d9}.stub h2{margin:0 0 8px}.stub p{margin:0;color:var(--muted)}.auth-form{margin-top:10px;display:grid;gap:8px}.auth-wizard{gap:12px}.auth-wizard-grid{display:grid;grid-template-columns:1fr;gap:8px}.auth-step-card{border:1px solid #21425a;border-radius:12px;padding:10px 12px;background:#0a1d2a94;display:grid;gap:6px;align-content:start}.auth-step-card h3{margin:0;font-size:15px}.role-picker{position:relative}.role-picker-btn{width:100%;border:1px solid #3d5d70;border-radius:10px;padding:9px 10px;background:linear-gradient(180deg,#0d1c28f5,#0a1824f5);color:var(--text);font:inherit;display:flex;justify-content:space-between;align-items:center;cursor:pointer}.role-picker-btn:hover,.role-picker-btn.open{border-color:#ffbb5d;box-shadow:0 0 0 2px #ffbb5d33}.role-picker-chevron{color:#ffcf85;font-size:11px}.role-picker-menu{position:absolute;left:0;right:0;top:calc(100% + 6px);z-index:12;border:1px solid #355469;border-radius:10px;overflow:hidden;background:#0e2434;box-shadow:0 10px 24px #02070c59}.role-picker-item{width:100%;border:0;border-bottom:1px solid #1a3a4f;background:transparent;color:#dce8f2;text-align:left;padding:9px 10px;font:inherit;cursor:pointer}.role-picker-item:last-child{border-bottom:0}.role-picker-item:hover{background:#ffbf66;color:#1a2732}.role-picker-item.selected{background:#ffbf6638;color:#ffe2b1}.password-field{position:relative}.password-field .input{width:100%;padding-right:96px}.password-toggle{position:absolute;top:50%;right:8px;transform:translateY(-50%);border:1px solid #2d4d62;background:#0a1d2ae6;color:var(--text);border-radius:8px;padding:4px 8px;font:inherit;font-size:12px;cursor:pointer}.bootstrap-password-toggle{position:static;transform:none;justify-self:start}.input,.select,.textarea{border:1px solid #264358;border-radius:10px;padding:9px 10px;background:#0b1a25f2;color:var(--text);font:inherit}.select{margin-top:10px;width:100%}.season-select{margin-top:0;width:min(320px,100%)}.season-picker{width:min(320px,100%)}.season-picker .role-picker-menu{max-height:260px;overflow-y:auto}.textarea{min-height:84px;resize:vertical}.action-btn,.ghost-btn,.mini-btn{border-radius:10px;padding:8px 10px;border:1px solid #2d4d62;font-weight:700;cursor:pointer;font:inherit}.action-btn{color:#132330;border-color:#ffbb5d;background:linear-gradient(140deg,#ffbf66,#ffa93a)}.action-btn.compact{padding:7px 10px;font-size:13px}.ghost-btn,.mini-btn{color:var(--text);background:#0a1d2abf}.danger-outline{border-color:#a8424d;color:#ffd9de;background:#58172299}.danger-btn{border-color:#ff6b7d;color:#2a0c11;background:linear-gradient(140deg,#ff8a98,#ff5b70)}.status-line{margin-top:10px;font-size:13px;color:var(--muted)}.kpis.compact strong{font-size:20px}.bootstrap-box{margin-top:10px}.bootstrap-box summary{cursor:pointer;color:var(--accent-2)}.race-grid{margin-top:12px;display:grid;grid-template-columns:340px minmax(0,1fr);gap:12px;align-items:start}.race-card-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.race-card-head h2{margin:0}.race-tree-scroll{margin-top:10px;border:1px solid #21425a;border-radius:12px;background:#0917229e;padding:8px;max-height:68vh;overflow:auto}.race-current-btn{min-height:34px!important;border-color:#ffbb5d;box-shadow:0 0 0 1px #ffbb5d4d inset}.race-tree-group{margin:8px 0 6px;padding:6px 8px;border-radius:8px;font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.03em}.race-tree-group.a{color:#0ad4ab;background:#0d423961}.race-tree-group.b{color:#ffbf66;background:#462c0c61}.race-tree-group.sf{color:#ffe19a;background:#5343186b}.race-tree-match{border:1px solid #28465b;border-radius:10px;padding:8px;margin-bottom:8px;background:#0d1c27d9}.race-tree-match.current{border-color:#ffd270;box-shadow:0 0 0 1px #ffd27042 inset}.race-tree-match.past{border-color:#2d5c78}.race-tree-match.future{opacity:.78}.race-tree-match-head{color:#b7d7ea;font-size:12px;margin-bottom:6px;font-weight:700}.race-tree-lane{display:grid;grid-template-columns:14px 1fr;gap:8px;align-items:center;padding:4px 0}.race-lamp{width:12px;height:12px;border-radius:50%;border:1px solid #2a3f4e;background:#3e4f5a}.race-lamp.current{background:#39a7ff}.race-lamp.win{background:#42d77b}.race-lamp.lose{background:#ff6f6f}.race-lamp.idle{background:#3f4f59}.race-tree-name{font-size:13px}.race-control-card{display:grid;gap:10px}.race-control-top{display:flex;gap:8px;flex-wrap:wrap}.race-status-panel{border:1px solid #24445b;border-radius:12px;background:#0a1c28c7;padding:10px;display:grid;gap:5px;font-size:13px}.race-banner{border-radius:10px;padding:9px 10px;display:grid;gap:4px;border:1px solid #24445b}.race-banner strong{font-size:13px}.race-banner.aqua{border-color:#0ab4948f;background:#08363059}.race-banner.bronze{border-color:#e99d3a8f;background:#3f2b0b59}.race-round-list{display:grid;gap:10px}.race-match-card{border:1px solid #24445b;border-radius:12px;background:#0a1c28c7;padding:10px;display:grid;gap:8px}.race-match-card.played{opacity:.84}.race-match-head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:13px;color:#b7d7ea}.race-lane-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.race-lane-btn{border:1px solid #2d4d62;background:#091a25f2;color:var(--text);border-radius:10px;padding:8px;text-align:left;display:grid;gap:4px;cursor:pointer;min-height:62px}.race-lane-btn.winner{border-color:#3fad67;background:#123a2785}.race-lane-btn.loser{border-color:#9f4747;background:#3c191985}.race-lane-btn:disabled{cursor:not-allowed;opacity:.82}.lane-label{font-size:11px;text-transform:uppercase;color:var(--muted)}.race-superfinal{border:1px solid rgba(255,194,84,.6);border-radius:12px;background:#43321147;padding:10px;display:grid;gap:10px}.race-superfinal h3{margin:0}.race-superfinal-score{display:grid;grid-template-columns:1fr auto 1fr;gap:10px;align-items:center}.race-superfinal-score strong{font-size:26px;color:#ffd17d}.race-podium{border:1px solid #3d5160;border-radius:12px;background:#10202ed1;padding:10px;display:grid;gap:8px}.race-podium h3{margin:0}.race-podium-row{border-radius:8px;padding:8px}.race-podium-row.gold{background:#5f4d1580}.race-podium-row.silver{background:#3e444c8c}.race-podium-row.bronze{background:#5734148c}.race-advance-btn{width:100%;min-height:48px}.race-ranking-box{border:1px solid #24445b;border-radius:12px;background:#0a1c28c7;padding:10px}.race-ranking-box h3{margin-top:0}.race-win-card{max-width:460px}.race-pilots-card{max-width:980px;width:100%;position:relative}.race-pilots-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.race-pilot-list{margin-top:8px;border:1px solid #24445b;border-radius:10px;background:#0a1c28b3;max-height:260px;overflow:auto;padding:8px;display:grid;gap:6px}.race-pilot-row{border:1px solid #2f5168;border-radius:8px;padding:8px;display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center}.race-pilot-row.withdrawn{grid-template-columns:1fr;background:#461e1e47}.modal-overlay.nested,.modal-overlay.confirm-overlay.nested{position:fixed;top:0;right:0;bottom:0;left:0;background:#040b128c;border-radius:0;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);z-index:99999;display:flex;align-items:center;justify-content:center;overflow-y:auto;padding:20px}.race-withdraw-confirm{max-width:540px}.race-withdraw-form{margin-top:10px;display:grid;gap:8px}.actor-card-btn{width:100%;text-align:left;background:#0a1d2a85;color:inherit;cursor:pointer}.actor-card-btn.selected{border-color:#ffbb5d;box-shadow:0 0 0 1px #ffbb5d3d inset;background:#46300f4d}.log-actor-panel .log-actor-search-input{display:block;width:100%;margin:10px 0 12px}.log-actor-panel .admin-log-actor-empty{margin:0 0 10px}.note-time{color:var(--accent-2);font-size:12px;font-weight:700}.log-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.log-head h2{margin:0}.log-reset-btn{border-color:#ffbb5d;box-shadow:0 0 0 1px #ffbb5d47 inset}.log-reset-btn.disabled{opacity:.55;box-shadow:none}.closing-grid{margin-top:12px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px}.closing-grid>.card{min-width:0}.note-list{display:grid;gap:8px}.note-item{border:1px solid #23475e;border-radius:10px;background:#0a1e2b9e;padding:8px 10px;display:grid;gap:4px;text-align:left;word-break:break-word}.log-filter-grid{display:grid;grid-template-columns:minmax(0,220px) minmax(0,1fr) minmax(0,1.3fr);gap:8px;margin:8px 0}.log-stage-head{display:flex;align-items:baseline;justify-content:space-between;gap:8px}.docs-grid{margin-top:12px;display:grid;gap:12px;grid-template-columns:1fr}.admin-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.admin-grid>.admin-card{min-width:0}.admin-card-manage{order:1;grid-column:1 / -1;grid-row:1}.admin-manage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.admin-manage-head .muted{margin-top:6px}.admin-filter-toggle{position:relative;min-width:112px;white-space:nowrap}.admin-filter-toggle.selected{border-color:#ffbb5d;box-shadow:0 0 0 1px #ffbb5d47 inset}.admin-filter-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;margin-left:8px;border-radius:999px;background:linear-gradient(140deg,#ffbf66,#ffa93a);color:#132330;font-size:12px;font-weight:800}.admin-filter-panel{border:1px solid #2f5369;border-radius:12px;padding:12px;background:#091b279e;display:grid;gap:12px}.admin-filter-group{display:grid;gap:8px}.admin-filter-overlay{z-index:1250}.admin-filter-card,.modal-card.judge-confirm-card.admin-filter-card{width:auto;max-width:min(760px,calc(100vw - 28px))}.admin-filter-card h3{font-size:22px}.admin-filter-meta-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.admin-filter-meta{margin:0;font-size:14px;font-weight:700;color:#c5d9e9}.admin-filter-clear-btn{min-height:30px;padding:4px 10px;font-size:12px;transform:translateY(-1px)}.admin-filter-label{margin:0;font-size:15px;font-weight:800;color:#d7e7f4}.admin-filter-card .discipline-switch{margin-bottom:0;gap:8px}.admin-filter-card .discipline-pill{font-size:12px;padding:0 10px;line-height:1.15;min-height:34px}.admin-filter-row{display:flex;flex-wrap:wrap;gap:8px;align-items:stretch;justify-content:flex-start;overflow:visible}.admin-filter-grid{width:auto;display:flex;flex-wrap:wrap;gap:8px;overflow:visible;padding-bottom:0}.admin-filter-grid-1,.admin-filter-grid-2,.admin-filter-grid-3,.admin-filter-grid-4,.admin-filter-grid-5{justify-content:flex-start;width:auto}.admin-filter-pill{width:auto;flex:0 0 auto;min-height:34px;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:10px;white-space:nowrap;word-break:normal;overflow-wrap:normal;-webkit-hyphens:none;hyphens:none}.admin-filter-pill-nowrap{white-space:nowrap;overflow-wrap:normal}.admin-card-manage .base-list{max-height:380px}.admin-event-row{grid-template-columns:minmax(0,1fr) minmax(260px,38%);align-items:start;gap:6px;padding:7px}.admin-event-main .athlete-name{line-height:1.18}.admin-event-main .athlete-meta{line-height:1.24}.admin-card-seasons{order:2;grid-column:1;grid-row:2}.admin-card-newevent{order:3;grid-column:2;grid-row:2}.admin-card-docsfaq{order:4;grid-column:1;grid-row:3}.admin-card-roles{order:5;grid-column:2;grid-row:4}.admin-card-redzone{order:6;grid-column:1;grid-row:4}.admin-user-list{max-height:210px;overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin}.admin-user-list::-webkit-scrollbar{width:8px}.admin-user-list::-webkit-scrollbar-track{background:#12293a80;border-radius:999px}.admin-user-list::-webkit-scrollbar-thumb{background:#6e99b8bf;border-radius:999px}.admin-user-row-actions{display:grid;justify-items:end;align-content:start;gap:6px}.admin-card-registry{order:7;grid-column:1 / -1;grid-row:5}.video-review-launcher{position:fixed;right:18px;bottom:18px;z-index:60;border:1px solid rgba(255,169,58,.48);border-radius:999px;padding:12px 18px;background:linear-gradient(180deg,#ffa93af5,#e2761bf5);color:#09131b;font-weight:800;font-family:Orbitron,Manrope,sans-serif;letter-spacing:.02em;box-shadow:0 18px 40px #00000052,inset 0 1px #ffffff6b;cursor:pointer}.video-review-launcher:hover{transform:translateY(-1px);filter:saturate(1.04)}.video-review-overlay{z-index:80;padding:20px;background:#030a10cc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.video-review-modal{width:min(1280px,calc(100vw - 24px));max-height:calc(100vh - 24px);overflow:auto;border:1px solid rgba(83,129,160,.34);border-radius:22px;background:radial-gradient(700px 240px at 0% -10%,rgba(82,192,255,.16),transparent 58%),radial-gradient(520px 220px at 100% 0%,rgba(255,169,58,.16),transparent 60%),linear-gradient(180deg,#07121cfa,#061018fc);box-shadow:0 28px 90px #00000073}.video-review-topbar{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 22px 0}.video-review-topbar h2{margin:0}.video-review-topbar-actions{display:flex;gap:8px;flex-wrap:wrap}.video-review-layout{display:grid;grid-template-columns:minmax(280px,.9fr) minmax(260px,.8fr) minmax(360px,1.2fr);gap:16px;padding:18px 22px 22px}.video-review-pane{border:1px solid rgba(43,78,103,.82);border-radius:18px;background:#081824c7;padding:16px;min-width:0}.video-review-pane h3,.video-review-report-section h4{margin-top:0}.video-review-mode-switch{margin-bottom:12px}.video-review-form{gap:12px}.video-review-source-group{display:grid;gap:6px}.video-review-source-group[hidden]{display:none}.video-review-notes{width:100%;min-height:110px;resize:vertical}.video-review-help{border:1px solid rgba(53,84,105,.74);border-radius:14px;background:#091c29a8;padding:12px;display:grid;gap:8px}.video-review-help p{margin:0;line-height:1.45}.video-review-form-message{min-height:18px;margin:0}.video-review-form-message.tone-success{color:#8be4a5}.video-review-form-message.tone-error{color:#ff9d9d}.video-review-jobs-list{max-height:min(64vh,760px);overflow-y:auto;scrollbar-width:thin}.video-review-job-row{width:100%;text-align:left;background:#091c29bd;color:var(--text)}.video-review-job-row.selected{border-color:#ffa93a9e;box-shadow:0 0 0 1px #ffa93a33 inset}.video-review-job-meta{line-height:1.35}.video-review-status-badge{display:inline-flex;align-items:center;justify-content:center;min-width:98px;text-align:center}.video-review-status-badge.status-completed{background:#16a34a33;color:#ddffe9}.video-review-status-badge.status-processing,.video-review-status-badge.status-queued{background:#52c0ff33;color:#ddf3ff}.video-review-status-badge.status-failed{background:#ef444433;color:#ffe1e1}.video-review-report-body{display:grid;gap:14px}.video-review-report-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.video-review-report-head h3{margin:0}.video-review-kpis{margin-top:0}.video-review-report-meta{display:grid;gap:4px}.video-review-report-meta p{margin:0}.video-review-alert-card,.video-review-note-card{display:grid;gap:8px}.video-review-alert-card p,.video-review-note-card p{margin:0}.video-review-alert-card.danger{border-color:#a43e3ee6;background:#58151c52}.video-review-simple-list{margin:0;padding-left:18px;display:grid;gap:6px}.video-review-report-section{display:grid;gap:10px}.video-review-marker-row,.video-review-segment-row{border:1px solid #23475f;border-radius:12px;background:#0a1d2ab8;padding:12px;display:grid;gap:6px}.video-review-marker-reason,.video-review-segment-text{margin:0;line-height:1.45;white-space:pre-wrap}.video-review-time{color:#7ec7ff}.video-review-transcript-preview{margin:0;border:1px solid rgba(36,66,87,.86);border-radius:14px;background:#07151fe6;padding:12px;white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:12px;line-height:1.45;overflow-x:auto}@media (max-width: 1120px){.video-review-layout{grid-template-columns:1fr}.video-review-jobs-list{max-height:280px}}@media (max-width: 720px){.video-review-overlay{padding:10px}.video-review-modal{width:calc(100vw - 8px);max-height:calc(100vh - 8px)}.video-review-topbar{flex-direction:column}.video-review-topbar-actions{width:100%}.video-review-topbar-actions .ghost-btn{flex:1 1 auto}.video-review-launcher{right:12px;bottom:12px;padding:11px 15px;font-size:12px}}.admin-season-list{max-height:320px}.admin-season-row{grid-template-columns:minmax(0,1fr) auto;cursor:pointer}.admin-season-row-hidden{border-style:dashed;opacity:.82}.admin-season-row-focused{border-color:#52c0ff;box-shadow:0 0 0 1px #52c0ff47 inset}.admin-season-legacy-hidden{display:none!important}.admin-season-compact-block{margin-top:10px;border:1px solid #355469;border-radius:14px;background:linear-gradient(180deg,#0a1c29eb,#081621f5);padding:14px;display:grid;gap:12px}.admin-season-compact-current{display:grid;gap:8px}.admin-season-compact-value{font-size:20px;font-weight:800;color:#f4fbff;line-height:1.2}.admin-season-compact-meta{margin:0;line-height:1.35}.admin-season-compact-actions{display:flex;flex-wrap:wrap;gap:8px}.admin-season-compact-intro{margin-bottom:2px}.admin-season-selector-card{max-width:720px}.admin-season-selector-list{max-height:min(55vh,420px);overflow-y:auto}.admin-season-selector-item{width:100%;text-align:left;background:#0a1d2ad1;color:var(--text)}.admin-season-selector-item .docs-actions{justify-content:flex-end}.admin-season-selector-item .mini-btn{cursor:default}.admin-season-selector-state{color:#7ec7ff}.admin-delete-warning{margin-top:10px;border:1px solid #8a323b;border-radius:10px;background:#621c2452;padding:10px;display:grid;gap:8px}.docs-type-select{min-width:220px}.docs-list{max-height:none;overflow:visible}.docs-row{align-items:flex-start;gap:12px}.docs-actions{margin-left:auto;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.admin-event-actions{margin-left:0;display:grid;justify-items:end;align-content:start;gap:6px}.admin-event-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.admin-event-gp-line{color:#b9cadc}.admin-event-gp-visual-badge,.admin-event-nongp-visual-badge{border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:4px 10px;font-size:11px;line-height:1.2}.admin-event-gp-visual-badge.is-on{background:#16a34a2e;color:#d9ffe7;border-color:#4ade8061}.admin-event-gp-visual-badge.is-off{background:#7f1d1d38;color:#ffd2d2;border-color:#f8717157}.admin-event-nongp-visual-badge.is-neutral{background:#94a3b81f;color:#d9e7f5;border-color:#94a3b842}.admin-gp-snapshot{margin-top:10px;padding:12px 14px;border-radius:14px;border:1px solid rgba(92,168,255,.22);background:linear-gradient(180deg,#091e35e0,#061627f0);box-shadow:inset 0 1px #ffffff08}.admin-gp-snapshot-title{font-size:12px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#7ec7ff;margin-bottom:6px}.admin-gp-snapshot-body{color:#e4eef9;font-size:13px;line-height:1.45}.admin-gp-snapshot-note{margin-top:8px;color:#9eb3c8;font-size:12px;line-height:1.4}.admin-event-buttons{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px;max-width:340px}.admin-event-buttons .mini-btn{min-height:30px;padding:4px 7px}.admin-event-buttons-ops{width:100%;max-width:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.admin-event-buttons-ops .mini-btn{width:100%;white-space:normal;overflow-wrap:normal;min-height:32px}.admin-season-buttons-ops{width:100%;max-width:none;display:grid;grid-template-columns:repeat(3,minmax(140px,1fr));gap:6px}.admin-season-buttons-ops .mini-btn{width:100%;white-space:normal;min-height:32px}.admin-edit-ops{margin-top:8px;border:1px solid #39546a;border-radius:10px;padding:10px;background:#081823a6;display:grid;gap:8px}.modal-overlay.confirm-overlay.danger-confirm-overlay{-webkit-backdrop-filter:blur(5px) saturate(1.05);backdrop-filter:blur(5px) saturate(1.05);z-index:1400}.red-zone-overlay{z-index:1300}.danger-confirm-card{border:1px solid #b44d5a;box-shadow:0 0 0 1px #ff607557 inset,0 12px 28px #0a020485}.danger-confirm-blink{margin:0;border:1px solid #d85769;border-radius:9px;padding:8px 10px;background:#801c2c7a;color:#ffdfe4;font-weight:800;letter-spacing:.03em;animation:danger-blink 1s steps(2,end) infinite}@keyframes danger-blink{0%,45%{opacity:1;box-shadow:0 0 0 1px #ff677c61 inset,0 0 16px #ff677c3d}46%,to{opacity:.35;box-shadow:0 0 0 1px #ff677c24 inset}}@media (max-width: 900px){.admin-manage-head{flex-direction:column;align-items:stretch}.admin-filter-toggle{align-self:flex-start}.admin-event-buttons-ops,.admin-season-buttons-ops{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-season-compact-actions{flex-direction:column}.admin-season-compact-actions .action-btn,.admin-season-compact-actions .ghost-btn{width:100%}.admin-filter-card{width:min(100%,100%)}.admin-filter-row,.admin-filter-grid{flex-wrap:wrap;overflow-x:visible;overflow-y:visible;padding-bottom:0}.admin-filter-pill{width:auto;flex:0 1 auto;min-width:0;white-space:normal;overflow-wrap:break-word}}@media (max-width: 640px){.admin-filter-pill{width:100%;flex:1 1 100%;min-width:0}}.docs-faq-list{max-height:none;overflow:visible}.file-picker{padding:8px;background:#091a27e6;border:1px solid #2a4f67}.file-picker::file-selector-button{margin-right:10px;border:1px solid #3d6a84;border-radius:8px;padding:6px 10px;background:#0f2a3bf2;color:#d5e7f5;font-weight:700;cursor:pointer}.closing-note{margin-top:10px;display:grid;gap:8px}.closing-list{margin:0;padding-left:18px;display:grid;gap:8px}.base-grid{margin-top:12px;display:grid;grid-template-columns:.68fr 1.52fr;gap:12px}.base-headline{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.base-headline h2{margin:0}.base-headline-note{max-width:920px}.secretariat-headline{align-items:flex-start}.secretariat-headline-main{min-width:0;max-width:780px}.secretariat-mode-tabs{margin-left:auto;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.secretariat-mode-btn{border:1px solid #2c566f;border-radius:10px;background:#0b1d2ac7;color:#b8d3e6;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.secretariat-mode-btn.active{border-color:#66c8ff;color:#e9f8ff;background:#1d58755c}.base-grid-pending{grid-template-columns:1fr}.base-stage-list{max-height:none;overflow:visible;padding-right:0}.base-grid-pending .base-stage-list{grid-template-columns:1fr}.base-grid-pending .base-stage-list .row:not(.row-stage-calendar){grid-template-columns:minmax(0,1.55fr) minmax(0,1fr) minmax(120px,auto);gap:10px;align-items:start}.base-grid-pending .base-stage-list .row:not(.row-stage-calendar) .row-dates{text-align:right}.base-stage-list .row:not(.row-stage-calendar){grid-template-columns:1fr;gap:4px;align-items:start}.base-stage-list .row:not(.row-stage-calendar) .row-place,.base-stage-list .row:not(.row-stage-calendar) .row-dates{text-align:left}.base-active-stage-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}.base-confirm-badge{border:1px solid #2c7e52;border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;color:#9ae2be;background:#184d335c}.base-confirm-line{margin-top:10px;display:flex;flex-wrap:wrap;align-items:center;gap:8px}.admin-create-key-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);width:100%;gap:8px}.admin-create-key-actions .ghost-btn{width:100%}.copy-key-btn.copied{border-color:#3da16c;color:#b7f3d0;background:#194a3194}.reset-draft-btn{border-color:#3d7ea1;color:#b6e1f7;background:#14384d8c}.copy-feedback-ok{font-size:12px;font-weight:700;color:#9fe3bd}.second-stage-picker-card{max-width:980px;max-height:min(86vh,820px);display:flex;flex-direction:column;overflow:hidden}.second-stage-track-switch{margin-bottom:8px}.second-stage-picker-list{display:grid;flex:1 1 auto;min-height:0;gap:10px;max-height:none;overflow-y:auto;padding-right:4px}.second-stage-picker-item{border:1px solid #28485d;border-radius:12px;background:#0a1d2ad9;color:inherit;text-align:left;padding:10px;display:grid;gap:6px;cursor:pointer;transition:border-color .15s ease,background .15s ease}.second-stage-picker-item:hover{border-color:#f0b45e}.second-stage-picker-item.active{border-color:#f0b45e;background:#51351273}.second-stage-picker-item.disabled{opacity:.6;cursor:not-allowed}.second-stage-overlay{align-items:center;overflow:hidden}.draw-preview-overlay{align-items:flex-start;padding:22px 16px 16px;overflow-y:auto}.draw-preview-card{width:min(1080px,100%);max-height:none;display:grid;gap:14px;background:#08141ff5}.draw-preview-toolbar{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}.draw-doc-sheet{width:min(210mm,100%);margin:0 auto;padding:18mm 14mm;background:#fff;color:#102030;border-radius:18px;box-shadow:0 24px 60px #030a1259}.draw-doc-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding-bottom:12px;border-bottom:2px solid #102030}.draw-doc-brand{display:flex;gap:14px;align-items:flex-start}.draw-doc-logo{width:56px;height:56px;border:1px solid #d5dde6;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:800;color:#5d6b78;background:#f5f7fa}.draw-doc-title{font-size:26px;font-weight:800;line-height:1.1;letter-spacing:.04em;text-transform:uppercase}.draw-doc-committee{margin-top:4px;font-size:12px;font-weight:700;line-height:1.35;color:#395063;text-transform:uppercase}.draw-doc-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 18px;margin:16px 0 20px}.draw-doc-meta-item{display:grid;gap:4px;padding:10px 12px;border:1px solid #d8dfe7;border-radius:10px;background:#f8fafc}.draw-doc-meta-item-compact{min-width:220px}.draw-doc-meta-label{font-size:11px;font-weight:700;color:#5b6b78;text-transform:uppercase}.draw-doc-meta-value{font-size:15px;font-weight:700;line-height:1.35;color:#102030}.draw-doc-series{margin-top:18px}.draw-doc-series-head{margin-bottom:8px;font-size:18px;font-weight:800;color:#102030;text-transform:uppercase}.draw-doc-table{width:100%;border-collapse:collapse;font-size:13px}.draw-doc-table th,.draw-doc-table td{border:1px solid #1f3547;padding:8px 10px;vertical-align:top}.draw-doc-table th{background:#dfe8f0;font-size:12px;font-weight:800;text-transform:uppercase}.draw-doc-table td strong{display:inline-block;min-width:42px;margin-right:8px}.draw-doc-report{display:grid;grid-template-columns:1.2fr .8fr;gap:16px;margin-top:22px}.draw-doc-report-card{border:1px solid #d8dfe7;border-radius:12px;padding:12px 14px;background:#f8fafc}.draw-doc-report-card h3{margin:0 0 8px;font-size:14px;font-weight:800;color:#102030;text-transform:uppercase}.draw-doc-report-card ul{margin:0;padding-left:18px;display:grid;gap:6px}.draw-doc-balance{width:100%;border-collapse:collapse;font-size:12px}.draw-doc-balance th,.draw-doc-balance td{border:1px solid #cfd8e3;padding:6px 8px;text-align:left}.draw-doc-balance th{background:#e7eef5;font-weight:800}body.modal-scroll-lock{overflow:hidden}.base-hint-alert{margin-top:8px;border:1px solid rgba(189,83,70,.6);border-radius:10px;background:#6d241c59;color:#ffd7d2;padding:8px 10px;font-size:13px}.base-hint-note{margin-top:8px;font-size:13px}.base-hint-match{margin-top:8px;border:1px solid rgba(229,181,94,.5);border-radius:10px;background:#543e194d;color:#ffdfa2;padding:8px 10px;font-size:13px}.access-help-header{margin-top:8px;display:flex;align-items:center;justify-content:space-between;gap:8px;flex-wrap:wrap}.access-help-btn{border-color:#4a6a86;background:#102b3dd1}.access-help-btn.active{border-color:#ffbf66;color:#ffdfac;background:#5f431a6b}.access-help-card{margin-top:8px;border:1px solid #2f4f66;border-radius:10px;background:#0b21309e;padding:10px 12px}.access-help-list{margin:4px 0 0 18px;padding:0;display:grid;gap:4px;color:var(--muted);font-size:13px}.base-suggest-list{margin-top:0;max-height:240px}.base-check-grid,.base-manual-form{margin-top:10px;display:grid;gap:8px}.base-check-item{border:1px solid #21425a;border-radius:10px;padding:8px 10px;display:grid;grid-template-columns:auto 1fr;gap:8px;align-items:center;background:#0a1d2a94}.base-assign-grid{margin-top:8px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.base-single-grid{margin-top:8px;display:grid;grid-template-columns:1fr;gap:10px}.access-key-grid{grid-template-columns:minmax(0,1fr) auto;align-items:center;margin-bottom:4px}.access-key-grid .ghost-btn{margin-right:1px}.base-list{margin-top:8px;border:1px solid #21425a;border-radius:12px;background:#0a1d2a80;padding:8px;display:grid;gap:8px;max-height:420px;overflow:auto;overscroll-behavior:contain}.quiz-question-list,.quiz-batch-list,.quiz-batch-pages{overflow:auto;overscroll-behavior:contain}.quiz-generation-panel{margin-top:8px}.quiz-bank-panel{margin-top:8px;align-self:start;display:grid;gap:10px}.quiz-bank-input{min-height:158px}.quiz-current-batch-card{border-color:#409960b3;box-shadow:0 0 0 1px #4099602e inset}.quiz-batch-headline{display:flex;align-items:center;justify-content:space-between;gap:10px}.quiz-batch-headline h3{margin:0}.quiz-question-list{max-height:360px}.quiz-batch-archive-list{max-height:260px;border:none;background:transparent;padding:0;margin-top:4px}.quiz-batch-pages{max-height:240px}.quiz-question-row{padding:6px 8px}.quiz-question-row .athlete-name{font-size:13px;line-height:1.3}.quiz-edit-modal-card{max-width:760px}.quiz-edit-textarea{width:100%;min-height:220px;resize:none;overflow:hidden;line-height:1.45}.quiz-batch-modal-card{max-width:720px}.base-athlete-row{border:1px solid #21425a;border-radius:10px;padding:8px;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}.base-athlete-row.selected{border-color:#ffbb5d;box-shadow:0 0 0 1px #ffbb5d47 inset;background:#432f1147}.mini-btn.selected{border-color:#ffbb5d;background:linear-gradient(140deg,#ffbf66,#ffa93a);color:#132330}.page.mode-tablet{max-width:1080px;padding:16px}.page.mode-tablet .tab{padding:10px;font-size:13px}.page.mode-auto{padding:12px 12px 112px;overflow-x:hidden}.page.mode-auto .title{font-size:24px}.page.mode-auto .topbar-committee{font-size:14px}.page.mode-auto .clock-time{font-size:21px}.page.mode-auto .subtitle{font-size:12px}.page.mode-auto .tab{padding:12px 8px;font-size:12px}.page.mode-auto .main-nav{position:fixed;left:10px;right:10px;bottom:10px;z-index:30;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 8px 24px #00000059}.page.mode-auto .topbar{overflow:hidden}@media (max-width: 1200px){.admin-event-row{grid-template-columns:1fr}.admin-event-actions{justify-items:start}.admin-event-badges,.admin-event-buttons{justify-content:flex-start;max-width:none}.secretariat-mode-tabs{margin-left:0;justify-content:flex-start}}@media (max-width: 900px){.layout,.race-grid,.race-pilots-grid,.closing-grid,.base-grid,.admin-grid{grid-template-columns:1fr}.admin-card-manage,.admin-card-seasons,.admin-card-newevent,.admin-card-docsfaq,.admin-card-roles,.admin-card-redzone,.admin-card-registry{grid-column:1 / -1;grid-row:auto}.base-assign-grid,.base-active-stage-grid{grid-template-columns:1fr}.docs-row{flex-direction:column}.docs-actions{margin-left:0;width:100%}.admin-event-actions{width:100%}.docs-type-select{min-width:0;width:100%}.log-filter-grid,.row{grid-template-columns:1fr}.row-dates{text-align:left;white-space:normal}table{display:block;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}th,td{white-space:normal;word-break:break-word}.kpis,.race-lane-grid{grid-template-columns:1fr}.topbar{gap:10px}.topbar-brand-row{grid-template-columns:minmax(0,1fr) auto}.topbar-right{justify-items:end}.topbar-clock{min-width:0}.clock-time{font-size:21px}.topbar-committee{font-size:15px}.topbar-brand-text{padding-left:124px}.topbar-emblem{left:-54px;top:-34px;width:184px;height:184px}.athlete-detail-overlay{padding:10px}.athlete-detail-card{width:100%}.athlete-log-row{grid-template-columns:1fr;gap:6px}}@media (min-width: 681px) and (max-width: 1024px) and (orientation: portrait){.topbar{gap:8px;padding:12px}.topbar-brand-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.topbar-brand{text-align:left}.topbar-brand-text{min-height:78px;padding:8px 12px 8px 116px}.topbar-emblem{left:-48px;top:-30px;width:172px;height:172px}.topbar-clock{min-width:0}.topbar-actions{justify-content:flex-end}.auth-mini{justify-content:flex-end;gap:8px}.topbar-committee{text-align:left;font-size:14px;line-height:1.25}.title{font-size:32px}.clock-time{font-size:20px}}@media (max-width: 600px){.public-rating h2{font-size:28px}.public-rating th,.public-rating td{font-size:13px;padding:8px 6px}.place-cell{width:72px}.auth-overlay{padding:72px 10px 10px}.auth-dialog{max-height:calc(100vh - 86px)}.auth-head{align-items:flex-start}}@media (max-width: 680px) and (orientation: portrait){.topbar{gap:8px;padding:11px}.topbar-brand-row{grid-template-columns:1fr;gap:4px}.topbar-brand{text-align:left}.topbar-brand-lockup{min-height:72px;padding-left:0}.topbar-brand-text{min-height:72px;padding:8px 10px 8px 92px}.topbar-emblem{left:-28px;top:-18px;width:132px;height:132px}.topbar-clock{justify-self:end;min-width:0}.topbar-right{justify-items:end;gap:6px}.topbar-actions{justify-content:flex-end}.auth-mini{justify-content:flex-end;gap:6px}.topbar-committee{text-align:left;font-size:11px;line-height:1.25;white-space:normal;overflow:visible}.title{font-size:26px}.clock-time{font-size:20px}.chip{padding:6px 9px;font-size:12px}.action-btn.compact,.ghost-btn{padding:7px 9px;font-size:12px}}@media (pointer: coarse) and (max-height: 500px) and (orientation: landscape){.auth-overlay{padding:10px;align-items:flex-start;overflow-y:auto;-webkit-overflow-scrolling:touch}.auth-dialog{width:min(760px,100%);max-height:calc(100vh - 20px);overflow:auto}.auth-wizard-grid{gap:6px}.auth-step-card{padding:9px 10px}.auth-step-card h3{font-size:14px}.topbar{gap:8px;padding:10px 12px}.topbar-brand-row{grid-template-columns:minmax(0,1fr) auto;gap:8px}.topbar-actions{justify-content:flex-end}.topbar-clock{min-width:0}.topbar-committee{text-align:left;font-size:11px;line-height:1.25;white-space:normal;overflow:visible}.title{font-size:24px}.topbar-brand-text{min-height:70px;padding:8px 10px 8px 90px}.topbar-emblem{left:-28px;top:-18px;width:128px;height:128px}.clock-time{font-size:20px}.auth-mini{gap:6px}.chip{padding:6px 9px;font-size:12px}.action-btn.compact,.ghost-btn{padding:7px 9px;font-size:12px}}@media (pointer: coarse){.tab,.action-btn,.ghost-btn,.mini-btn{min-height:42px}.password-toggle{min-height:34px}}.judge-grid{display:grid;grid-template-columns:340px 1fr;gap:20px;align-items:start}.secretariat-scoring-grid{display:grid;gap:20px}.draw-panel-grid{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start}.draw-overview-card{grid-column:1 / -1;display:grid;gap:10px}.draw-overview-card.compact{padding:12px 16px;gap:6px}.draw-overview-card.compact h2{margin:0;font-size:1.25rem}.registry-stage-row{display:flex;gap:12px;overflow-x:auto;padding:8px 0}.registry-stage-row .draw-stage-card{min-width:200px;flex-shrink:0}.registry-fullscreen-panel{width:100%}.registry-breadcrumbs{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.registry-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.registry-participants-table{width:100%;border-collapse:collapse}.registry-participants-table th,.registry-participants-table td{padding:8px 12px;text-align:left;border-bottom:1px solid var(--border, #e0e0e0)}.registry-participants-table th{font-weight:600;font-size:.85rem;text-transform:uppercase;color:var(--muted, #888)}.registry-participants-table tr:hover{background:var(--hover-bg, rgba(0,0,0,.03))}.draw-stage-panel,.draw-current-panel,.draw-live-sheet{display:grid;align-content:start;gap:12px;min-height:100%}.draw-stage-panel .base-active-stage-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.draw-panel-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:8px}.draw-panel-kpi{border:1px solid #27475c;border-radius:10px;padding:10px 12px;background:#081520b8;display:grid;gap:4px}.draw-panel-kpi span{color:var(--muted);font-size:12px}.draw-panel-kpi strong{color:#eaf4fb;font-size:14px;line-height:1.35}.draw-live-sheet{grid-column:1 / -1}.draw-live-sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.draw-live-sheet-head h3,.draw-stage-panel h3,.draw-current-panel h3{margin:0 0 4px}.draw-live-sheet-head .muted{margin:0}.draw-stage-card{min-height:132px}.draw-current-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.draw-current-stage{display:grid;gap:4px}.draw-current-stage .muted{margin:0}.draw-panel-actions{flex-wrap:wrap}.registry-stage-participant-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:12px}.registry-stage-participant-card{display:grid;align-content:start;gap:12px}.registry-stage-participant-head{display:grid;gap:8px}.registry-stage-participant-title{margin:0}.registry-stage-participant-list{max-height:420px;overflow:auto}@media (max-width: 900px){.draw-current-head,.draw-live-sheet-head{flex-direction:column}.registry-stage-participant-grid{grid-template-columns:1fr}}.judge-empty-state{text-align:center;padding:60px 20px}.judge-empty-state h2{font-size:28px;margin-bottom:10px;color:#ffd7d2}.judge-disciplines,.judge-stage,.judge-pilots{min-height:400px}.judge-discipline-list{display:flex;flex-direction:column;gap:12px}.discipline-btn{width:100%;padding:16px 20px;border:1px solid #2d4d62;background:#0a1d2abf;color:#c9deed;border-radius:8px;cursor:pointer;transition:all .2s;text-align:left;font-size:14px}.discipline-btn:hover{border-color:#ffbb5d;background:#ffbb5d1f;color:#ffcf85}.judge-stage-card{padding:20px;border:2px solid #285069;background:#091e2cd1;border-radius:12px;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.judge-stage-card.stage-active{border-color:#2e6f4d;background:#11372666;box-shadow:0 0 20px #2a7e4d4d}.judge-stage-card .stage-state-badge{align-self:flex-start;margin-bottom:0}.judge-stage-card .stage-info{width:100%}.judge-stage-card .stage-info h3{margin:0 0 8px;font-size:18px;color:#d7e9f8}.judge-stage-card .stage-info p{margin:0}.judge-search-section{margin-bottom:16px}.judge-search-section label{display:block;margin-bottom:6px;font-size:12px}.judge-stage-compact{padding:20px}.judge-stage-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.judge-stage-head h3{margin:0 0 6px}.judge-stage-sync{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.judge-stage-tabs{margin-bottom:12px;grid-template-columns:repeat(auto-fit,minmax(320px,420px));justify-content:flex-start}.judge-stage-tab-card{border:1px solid #2c546c;background:#0c1e2cb8;display:grid;grid-template-rows:minmax(112px,auto) minmax(72px,auto) auto;align-content:start;gap:10px}.judge-stage-tab-card.current{border-color:#ffbb5d;box-shadow:0 0 0 1px #ffbb5d38 inset;background:#2e1f0c57}.judge-stage-tab-card .mini-btn{margin-top:8px}.judge-stage-tab-header{display:grid;grid-template-rows:28px minmax(72px,auto);align-content:start;gap:8px;min-height:112px}.judge-stage-tab-card .row-stage-badges{display:flex;justify-content:flex-start;align-items:stretch;align-self:start;justify-self:start;margin:0;padding:0;width:max-content;max-width:100%}.judge-stage-tab-meta{display:grid;align-content:start;gap:6px;min-height:0}.judge-stage-tab-meta h3,.judge-stage-tab-meta p{margin:0}.judge-stage-tab-meta h3{line-height:1.22}.judge-stage-tab-meta p{line-height:1.35}.judge-stage-tab-card .row-stage-badges,.judge-stage-current-summary .row-stage-badges{flex-wrap:nowrap;align-items:stretch;gap:6px;min-height:28px;overflow-x:hidden;padding-bottom:2px;scrollbar-width:thin}.judge-stage-tab-card .row-stage-badges>*,.judge-stage-current-summary .row-stage-badges>*{flex:0 0 auto;min-height:28px;height:28px;line-height:1;white-space:nowrap}.judge-stage-tab-card .badge-level,.judge-stage-tab-card .badge-toggle-active,.judge-stage-tab-card .badge-toggle-inactive,.judge-stage-tab-card .stage-state-badge,.judge-stage-current-summary .badge-level,.judge-stage-current-summary .badge-toggle-active,.judge-stage-current-summary .badge-toggle-inactive,.judge-stage-current-summary .stage-state-badge{padding:0 10px}.judge-stage-current-summary{border-color:#315970;background:#0b1c28cc}.judge-stage-current-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.judge-stage-current-head h3{margin:8px 0 6px}.judge-stage-meta-grid{margin-top:10px;display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.judge-stage-meta-card{border:1px solid #27475c;border-radius:10px;padding:10px 12px;background:#081520b8;display:grid;gap:4px}.judge-stage-meta-card strong{color:#eaf4fb;font-size:14px;line-height:1.35}.judge-stage-compact .stage-state-badge{align-self:flex-start;margin-bottom:12px}.judge-stage-compact h3{margin:0 0 8px;font-size:18px;color:#d7e9f8}.judge-stage-compact p{margin:4px 0;font-size:14px}.judge-disciplines-main{padding:20px}.judge-search-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.judge-search-head .muted{margin:0}.judge-search-toolbar{display:grid;grid-template-columns:1fr;gap:10px}.judge-search-reset{white-space:nowrap}.judge-discipline-section{margin-bottom:24px;padding-bottom:24px;border-bottom:1px solid rgba(45,77,98,.4)}.judge-discipline-section:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.judge-discipline-title{margin:0 0 12px;font-size:16px;color:#ffcf85;font-weight:600}.judge-search-inline{margin-bottom:12px}.judge-search-inline input{width:100%}.judge-athletes-list{display:flex;flex-direction:column;gap:8px}.judge-athlete-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;border:1px solid #2c5d71;background:#102a3b6b;border-radius:8px;transition:all .2s}.judge-athlete-row:hover{border-color:#3d7a94;background:#102a3b99}.judge-athlete-context{margin-top:4px;line-height:1.35;color:#b7d2e4}.athlete-info{display:flex;align-items:center;gap:12px;flex:1}.athlete-name{font-size:15px;font-weight:500;color:#d7e9f8}.athlete-bib{font-size:13px;color:#7da8c9;font-family:monospace}.athlete-name .athlete-bib,.athlete-name .judge-action-inline-bib{font-size:inherit;color:inherit;font-family:inherit;font-weight:inherit}.action-btn.small{padding:6px 12px;font-size:13px}.judge-athlete-list{max-height:300px;overflow-y:auto;border:1px solid #21425a;background:#0a1d2a94;border-radius:8px}.judge-athlete-list.compact{max-height:400px}.judge-athlete-item{padding:12px 16px;border-bottom:1px solid rgba(33,66,90,.5);cursor:pointer;transition:background .2s}.judge-athlete-item:hover{background:#ffbb5d1a}.judge-athlete-item:last-child{border-bottom:none}.judge-athlete-item.compact{padding:10px 12px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#030a11d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.confirm-overlay{z-index:1100;align-items:flex-start;overflow-y:auto;overscroll-behavior:contain;padding-top:24px;padding-bottom:24px}.confirm-overlay.judge-confirm-overlay{align-items:center;padding-top:20px;padding-bottom:20px}.confirm-overlay.registry-confirm-overlay,.confirm-overlay.second-stage-overlay{align-items:center;overflow:hidden;padding-top:20px;padding-bottom:20px}.modal-card{background:var(--panel);border:1px solid #355469;border-radius:12px;max-width:600px;width:100%;max-height:80vh;overflow-y:auto;overscroll-behavior:contain;padding:24px;box-shadow:0 10px 40px #00000080}.admin-user-edit-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-user-edit-head>h3{margin:0!important}.admin-access-overlay{z-index:1300}.admin-access-card{max-width:640px;width:min(640px,calc(100vw - 24px));max-height:min(84vh,760px);overflow-y:auto;overscroll-behavior:contain;display:flex;flex-direction:column;gap:8px}.admin-access-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.admin-access-head>h3{margin:0!important}.admin-access-copy-wrap{display:grid;justify-items:end;gap:4px}.admin-access-copy-btn{padding:5px 10px;min-height:30px;font-size:13px;white-space:nowrap}.admin-access-copy-status{margin:0!important;text-align:right}.admin-access-identity{margin-top:2px;display:grid;gap:2px}.admin-access-card .athlete-meta{margin:0;line-height:1.3}.admin-access-card .access-help-card{margin-top:4px;padding:8px 10px}.admin-access-card .access-help-list{margin-top:2px;gap:2px}.admin-access-card .modal-actions{margin-top:4px;position:sticky;bottom:0;background:var(--panel);padding-top:10px}.modal-card h3{margin-top:0;margin-bottom:16px;color:#d7e9f8}.modal-card.penalty-modal{width:min(640px,calc(100vw - 24px));max-width:640px;display:flex;flex-direction:column;max-height:min(88vh,820px);padding:20px 24px 18px}.modal-card.penalty-modal .penalty-note-section{width:100%}.modal-card.penalty-modal .penalty-note-section .textarea{display:block;width:100%;min-width:0;min-height:96px;resize:vertical;box-sizing:border-box}.modal-card.judge-confirm-card{max-width:560px;max-height:calc(100vh - 48px);overflow-y:auto;overscroll-behavior:contain;padding:20px 24px 18px}.modal-card.judge-confirm-card .base-manual-form{margin-top:8px;gap:10px}.modal-card.judge-confirm-card .role-picker-menu{max-height:240px;overflow-y:auto}.modal-card.judge-confirm-card .textarea{margin-top:0}.modal-card.judge-confirm-card .modal-actions{margin-top:10px;border-top:1px solid #23475f;padding-top:10px}.admin-user-edit-modal{max-width:600px}.admin-user-edit-modal .base-manual-form{gap:8px}.admin-user-edit-modal .athlete-meta{margin:0;line-height:1.22}.admin-user-edit-modal .discipline-switch{margin-bottom:4px}.admin-user-edit-modal .access-help-header{margin-top:2px}.admin-user-edit-modal .base-single-grid{margin-top:0;gap:8px}.admin-user-edit-modal .admin-user-edit-actions{margin-top:2px}.admin-user-delete-btn{border-color:#a8424d;color:#ffd9de;background:#58172299}.judge-correction-penalty-btn{width:100%}.modal-card.judge-penalty-picker-card{max-width:620px;max-height:calc(100vh - 48px);display:grid;gap:10px}.judge-penalty-picker-list{max-height:min(56vh,420px);overflow-y:auto}.judge-penalty-picker-list .base-athlete-row{width:100%;text-align:left;background:#0a1d2a99;color:var(--text);border:1px solid #21425a}.judge-penalty-picker-list .base-athlete-row strong{justify-self:end;color:var(--accent)}.judge-search-mode{margin-bottom:16px}.judge-mode-buttons{display:flex;gap:8px;margin-top:8px}.judge-search-section{margin-bottom:20px}.penalty-categories{margin-bottom:20px;max-height:none;overflow:visible;padding-right:0}.penalty-category{margin-bottom:20px}.penalty-category-header{font-size:14px;color:#f9d07e;margin:0 0 12px;padding-bottom:8px;border-bottom:1px solid rgba(255,187,93,.3)}.penalty-item{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;margin-bottom:8px;border:1px solid #2c5d71;background:#102a3b6b;border-radius:8px;cursor:pointer;transition:all .2s}.penalty-item:hover{border-color:#ffbb5d;background:#ffbb5d26}.penalty-item.selected{border-color:#ffbb5d;background:#ffbb5d40;box-shadow:0 0 10px #ffbb5d4d}.penalty-item.disabled{opacity:.55;cursor:not-allowed;border-color:#355a6d;background:#0c1e2b73}.penalty-item.disabled:hover{border-color:#355a6d;background:#0c1e2b73}.penalty-label{flex:1;color:#d2dde6}.penalty-points{font-weight:700;color:#ffd1d7;font-size:14px}.penalty-availability{margin-top:3px;font-weight:600}.penalty-availability.allowed{color:#9fe3bd}.penalty-availability.blocked{color:#ffb7b7}.penalty-status-error{margin:0 0 10px;color:#ffd1d6;font-size:13px;border:1px solid rgba(170,66,77,.7);border-radius:8px;padding:8px 10px;background:#50171f6b}.penalty-note-section{margin-bottom:20px}.penalty-note-section label{display:block;margin-bottom:8px;font-size:12px;color:#b8c5cf}.modal-actions{display:flex;gap:12px;justify-content:flex-end;padding-top:16px;border-top:1px solid #2a4659}.admin-user-edit-actions{flex-wrap:wrap;row-gap:8px;padding-right:1px;margin-top:6px}@media (max-width: 1024px){.judge-grid{grid-template-columns:1fr}.judge-disciplines,.judge-stage,.judge-pilots{min-height:auto}.modal-card{margin:0;max-height:90vh}}@media (max-width: 768px){.judge-grid{gap:16px}.judge-stage-head,.judge-stage-current-head,.judge-search-head{flex-direction:column;align-items:stretch}.judge-stage-sync{justify-content:flex-start}.judge-search-toolbar{grid-template-columns:1fr}.judge-stage-card{flex-direction:column;text-align:center}.judge-athlete-row{flex-direction:column;align-items:stretch;gap:10px}.judge-athlete-row .action-btn.small{width:100%}.modal-actions{flex-direction:column}.modal-actions button{width:100%}.modal-card.judge-confirm-card,.modal-card.judge-penalty-picker-card{max-height:calc(100vh - 24px);padding:14px 14px 12px}.athlete-detail-head-actions{width:100%;justify-content:stretch;flex-wrap:wrap}.athlete-detail-export-controls,.athlete-detail-export-buttons{width:100%;justify-content:stretch}.athlete-detail-head-actions .ghost-btn,.athlete-detail-head-actions .action-btn,.season-history-picker{width:100%;max-width:none}.season-history-group-toggle{flex-direction:column;align-items:flex-start}.season-history-group-meta{white-space:normal}.access-key-grid{grid-template-columns:1fr}.access-key-grid .ghost-btn{margin-right:0}.admin-access-head{flex-direction:column;align-items:stretch}.admin-access-copy-wrap{justify-items:stretch}.admin-access-copy-btn{width:100%}.admin-access-copy-status{text-align:left}}.red-zone-panel{border:1px solid rgba(255,118,118,.35);background:linear-gradient(180deg,#42121257,#220a0a38);box-shadow:0 18px 34px #18070738}.red-zone-panel h2{text-transform:uppercase;letter-spacing:.04em}.red-zone-form{gap:10px}.red-zone-warning{border:1px solid rgba(255,118,118,.4);background:#5c161659;color:#ffd2d2;line-height:1.42;padding:10px 12px}.red-zone-fields{display:grid;gap:10px}.red-zone-subsection{display:grid;gap:10px;padding:12px;border:1px solid rgba(255,131,131,.16);border-radius:14px;background:linear-gradient(180deg,#2a0f1294,#140a0ead),#09070a6b}.red-zone-section-title{margin:0;color:#ffe1e1;font-size:14px;font-weight:800;letter-spacing:.02em}.red-zone-field{display:grid;gap:6px}.red-zone-scope-switch{display:flex;flex-wrap:wrap;gap:8px}.red-zone-scope-btn{min-width:120px}.red-zone-field-label{color:#f6d5d5;font-size:12px;font-weight:800;letter-spacing:.03em;text-transform:uppercase}.red-zone-picker{width:100%}.red-zone-entry-btn{border-color:#ff7c7c6b;color:#ffd9d9}.admin-red-zone-hint{margin-top:8px;color:#ffd3d3;line-height:1.4}.event-red-zone-card{max-width:680px}.event-red-zone-actions{justify-content:flex-start;flex-wrap:wrap}.red-zone-picker .role-picker-btn,.red-zone-password-input{margin-top:0;min-height:44px;border-color:#ff95954d;background:linear-gradient(180deg,#150b10f0,#0d080cf5);box-shadow:inset 0 1px #ffffff0a}.red-zone-picker .role-picker-btn{color:#f4dde0}.red-zone-picker .role-picker-btn>span:first-child{min-width:0;flex:1 1 auto;text-align:left;white-space:normal}.red-zone-picker .role-picker-btn:hover,.red-zone-picker .role-picker-btn.open{border-color:#ff9d9dad;box-shadow:0 0 0 1px #ff9d9d52,0 0 0 4px #9123232e}.red-zone-picker .role-picker-chevron{color:#ffc4c4}.red-zone-picker-menu{max-height:240px;overflow-y:auto;border-color:#763232e6;background:linear-gradient(180deg,#1c0d12fa,#11090dfa);z-index:24}.red-zone-picker-menu .role-picker-item{display:grid;gap:4px;align-items:start;color:#f0d9dc;border-bottom-color:#6c2c2c80;white-space:normal}.red-zone-picker-menu .role-picker-item:hover{background:#9f3c3c42;color:#fff2f2}.red-zone-picker-menu .role-picker-item.selected{background:linear-gradient(140deg,#c2505061,#6f222257);color:#fff0f0}.red-zone-picker-item-main{display:block;line-height:1.35}.red-zone-picker-item-meta{display:block;color:#c9a9a9;font-size:12px;line-height:1.3}.red-zone-picker .role-picker-btn:focus,.red-zone-password-input:focus{outline:none;border-color:#ff9d9dad;box-shadow:0 0 0 1px #ff9d9d52,0 0 0 4px #9123232e}.red-zone-password-input::placeholder{color:#b89494}.red-zone-password-input:-webkit-autofill,.red-zone-password-input:-webkit-autofill:hover,.red-zone-password-input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);-webkit-box-shadow:0 0 0 1000px rgba(18,10,15,.96) inset;transition:background-color 9999s ease-in-out 0s}.red-zone-preview{display:grid;gap:8px;margin-top:2px}.red-zone-preview-line{margin:0;color:#f4dfe2;line-height:1.45}.red-zone-preview-line.strong{color:#fff0f0;font-weight:800}.red-zone-preview-line.note{color:#ffd2d2}.red-zone-backup{line-height:1.35}.red-zone-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.red-zone-action-card{display:grid;gap:8px;align-items:start;padding:12px;border:1px solid rgba(255,148,148,.22);border-radius:12px;background:linear-gradient(180deg,#160c10f5,#0e090cfa);color:#f6dede;text-align:left;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease,background .18s ease}.red-zone-action-card:hover{border-color:#ffa8a885;box-shadow:0 0 0 1px #ffa8a82e,0 10px 24px #0b050638;transform:translateY(-1px)}.red-zone-action-card.active{border-color:#ff9c9cd1;background:linear-gradient(180deg,#4e1a1aeb,#301012f5);box-shadow:0 0 0 1px #ff9c9c3d,0 0 0 4px #84232324}.red-zone-action-card.disabled,.red-zone-action-card:disabled{opacity:.55;cursor:not-allowed;transform:none;box-shadow:none}.red-zone-action-title{color:#fff2f2;font-size:14px;font-weight:800;line-height:1.25}.red-zone-action-description{color:#e2c7c7;font-size:13px;line-height:1.45}.red-zone-action-hint{color:#ffd7d7;line-height:1.42}.red-zone-confirm-section{gap:12px}.red-zone-password-wrap{max-width:420px}.red-zone-confirm-btn{width:100%;justify-content:center}.red-zone-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.red-zone-danger-btn{border-color:#ff8a8a;background:linear-gradient(140deg,#ff9d8f,#ff6767);color:#2b0b0b}.red-zone-danger-btn,.red-zone-logs-btn{min-height:42px}.red-zone-danger-btn:disabled{opacity:.55;cursor:not-allowed}.red-zone-logs-btn{border-color:#ffb86b73}.red-zone-secondary-danger-btn{border-color:#ff8a8a6b;color:#ffd3d3}.red-zone-secondary-danger-btn:hover{border-color:#ff9999c7;box-shadow:0 0 0 1px #ff999938,0 0 0 4px #6f22221f}.red-zone-logs-hint{color:#ffd39c;line-height:1.4}.red-zone-status.error{color:#ff9f9f}@media (max-width: 900px){.red-zone-action-grid,.red-zone-actions{grid-template-columns:1fr}}

/* GP compact stage cards */
.judge-stage-tabs .judge-stage-tab-card:not(.current){max-height:60px;overflow:hidden;opacity:0.6;transition:all 0.2s}
.judge-stage-tabs .judge-stage-tab-card:not(.current):hover{max-height:none;opacity:1}
.judge-stage-tabs .judge-stage-tab-card.current{border-color:#3b82f6}

/* GP redesign v2 — horizontal stage cards */
.gp-stage-cards-row{display:flex;gap:16px;overflow-x:auto;padding:4px 0}
.gp-stage-card{flex:1 1 0;min-width:280px;max-width:420px;border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--panel)}
.gp-stage-card-header h4{margin:0 0 4px}
.gp-discipline-name{color:#ffcf85;font-weight:600;font-size:.9em}
.gp-class-list{list-style:none;margin:2px 0 0 12px;padding:0}
.gp-class-list li{font-size:.85em;color:var(--text-muted)}
.gp-class-list li::before{content:"• ";color:var(--accent)}
.gp-stage-search{margin:8px 0;width:100%}
.gp-penalties-table-wrap{max-height:260px;overflow-y:auto;border:1px solid var(--line);border-radius:8px}
.gp-penalties-table{width:100%;border-collapse:collapse}
.gp-penalties-table th,.gp-penalties-table td{padding:6px 10px;text-align:left;border-bottom:1px solid var(--line);font-size:.88em}
.gp-penalties-table thead{position:sticky;top:0;z-index:2;background:var(--panel)}
@media(max-width:768px){.gp-stage-cards-row{flex-direction:column}.gp-stage-card{max-width:100%}}

/* GP v5: overflow fixes */
.gp-stage-card{overflow:hidden}
.card.wide{overflow:hidden}
.gp-penalties-table td,.gp-penalties-table th{word-break:break-word}
/* GP v6: context pills in penalty modal */
.gp-ctx-pills{margin:8px 0 12px}
.gp-ctx-pill{background:transparent;border:1.5px solid var(--accent,#ffcf85);color:var(--accent,#ffcf85);border-radius:20px;padding:5px 14px;font-size:0.82em;cursor:pointer;transition:all .15s;font-family:inherit;line-height:1.3}
.gp-ctx-pill:hover{background:var(--accent,#ffcf85);color:#1a1a1a}
.gp-ctx-pill.selected{background:var(--accent,#ffcf85);color:#1a1a1a;font-weight:600;box-shadow:0 0 0 2px rgba(255,207,133,0.3)}
