:root{--ink:#18201d;--muted:#66706b;--line:#dce2de;--surface:#fff;--soft:#f4f6f4;--green:#176b4d;--green-soft:#e8f4ed;--lime:#cde95b;--red:#c7493a;--ui-text-xs:12px;--ui-text-sm:14px;--ui-text-md:16px;--ui-title-sm:20px;--ui-title-lg:25px;--ui-control-height:42px;--ui-radius:4px}*{box-sizing:border-box}html,body{min-height:100%;color:var(--ink);letter-spacing:0;background:#eef1ef;margin:0;font-family:Arial,Helvetica,sans-serif}button,input,select{font:inherit;letter-spacing:0}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}.public-page{min-height:100vh}.public-header{color:#fff;background:#18201d;align-items:center;gap:16px;min-height:88px;padding:14px max(24px,50vw - 640px);display:flex}.brand-mark{background:var(--lime);color:#18201d;border-radius:4px;flex:none;place-items:center;width:52px;height:52px;font-size:19px;font-weight:900;display:grid}.brand-mark.small{width:38px;height:38px;font-size:14px}.eyebrow{color:#6d7772;text-transform:uppercase;font-size:11px;font-weight:800}.public-header .eyebrow{color:#aab4ae}h1,h2,h3,p{margin-top:0}.public-header h1{margin:3px 0 0;font-size:25px}.public-nav{align-items:center;gap:18px;margin-left:auto;display:flex}.public-nav>a,.admin-link{color:#fff;border-bottom:1px solid #738079;padding-bottom:3px;font-size:14px;text-decoration:none}.admin-link{align-items:center;gap:6px;margin-left:auto;display:flex}.header-back{color:#fff;border:1px solid #4e5a54;border-radius:4px;flex:none;place-items:center;width:38px;height:38px;display:grid}.festival-page{background:#f3f5f3;min-height:100vh}.festival-intro{border-bottom:1px solid var(--line);background:#fff;padding:42px 20px}.festival-intro-inner{grid-template-columns:minmax(0,1.2fr) minmax(480px,.8fr);align-items:end;gap:56px;width:min(1180px,100%);margin:0 auto;display:grid}.festival-intro h2{margin:7px 0 12px;font-size:36px}.festival-intro p{max-width:650px;color:var(--muted);margin:0;font-size:15px;line-height:1.55}.festival-facts{border:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.festival-facts span{border-right:1px solid var(--line);min-width:0;padding:14px}.festival-facts span:last-child{border:0}.festival-facts svg{color:var(--green);margin-bottom:12px}.festival-facts small,.festival-facts strong{display:block}.festival-facts small{color:var(--muted);text-transform:uppercase;margin-bottom:4px;font-size:9px;font-weight:800}.festival-facts strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.category-section{width:min(1180px,100% - 40px);margin:34px auto 70px}.category-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:18px;display:flex}.category-heading h2{margin:6px 0 5px;font-size:26px}.category-heading p{color:var(--muted);margin:0}.festival-totals{gap:24px;display:flex}.festival-totals span{grid-template-columns:auto auto;align-items:center;gap:2px 8px;display:grid}.festival-totals svg{color:var(--green);grid-row:1/3}.festival-totals strong{font-size:19px}.festival-totals small{color:var(--muted);font-size:10px}.category-list{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.category-link{border-bottom:1px solid var(--line);min-height:76px;color:var(--ink);justify-content:space-between;align-items:center;gap:15px;padding:14px 18px;text-decoration:none;display:flex}.category-link:nth-child(odd){border-right:1px solid var(--line)}.category-link:hover{background:#fff}.category-link strong,.category-link small{display:block}.category-link small{color:var(--muted);margin-top:6px;font-size:11px}.category-link svg{color:var(--green);flex:none}.public-results-page,.sets-page{background:linear-gradient(#f7f9f7 0,#eef2ef 100%)}.sets-hero{color:#fff;background:#18201d;border-radius:10px;justify-content:space-between;align-items:end;gap:32px;width:min(1180px,100% - 40px);margin:42px auto 24px;padding:30px 34px;display:flex;box-shadow:0 18px 38px #10231a18}.sets-hero .eyebrow{color:var(--lime)}.sets-hero h2{margin:7px 0 8px;font-size:34px}.sets-hero p{color:#c9d2cd;margin:0;font-size:15px}.sets-event-facts{grid-template-columns:repeat(3,minmax(130px,1fr));gap:10px;display:grid}.sets-event-facts span{color:#dce5df;border:1px solid #425149;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.sets-event-facts svg{color:var(--lime)}.sets-event-facts b{font-weight:700}.sets-board{border:1px solid var(--line);background:#fff;border-radius:10px;width:min(1180px,100% - 40px);margin:0 auto 68px;padding:30px}.sets-summary{border:1px solid var(--line);grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:24px;display:grid}.sets-summary div{border-right:1px solid var(--line);gap:5px;padding:17px 20px;display:grid}.sets-summary div:last-child{border-right:0}.sets-summary small{color:var(--muted);text-transform:uppercase;font-size:10px;font-weight:800}.sets-summary strong{color:var(--green);font-size:28px}.sets-table-wrap{border:1px solid var(--line);overflow:auto}.sets-table{border-collapse:collapse;width:100%;min-width:820px}.sets-table th{color:var(--muted);text-align:left;text-transform:uppercase;background:#edf2ee;padding:11px 14px;font-size:10px;font-weight:850}.sets-table td{border-top:1px solid var(--line);vertical-align:middle;padding:15px 14px;font-size:13px}.sets-table td small{color:var(--muted);margin-top:4px;font-size:10px;display:block}.set-load{align-items:center;gap:10px;display:flex}.set-load>span{background:#e4e9e6;border-radius:8px;width:130px;height:8px;overflow:hidden}.set-load i{background:var(--green);height:100%;display:block}.set-load i.busy{background:#c28d22}.set-load i.full,.set-load i.overflow{background:var(--red)}.set-load strong{min-width:34px;font-size:12px}.set-status{background:var(--green-soft);color:var(--green);border-radius:3px;padding:5px 8px;font-size:10px;font-weight:850;display:inline-flex}.set-status.busy{color:#936c16;background:#fff1d3}.set-status.full,.set-status.overflow{color:#a33b32;background:#ffe9e6}.public-results-hero{color:#fff;background:#18201d;border-radius:10px;justify-content:space-between;align-items:end;gap:32px;width:min(1180px,100% - 40px);margin:42px auto 24px;padding:30px 34px;display:flex;box-shadow:0 18px 38px #10231a18}.public-results-hero .eyebrow{color:var(--lime)}.public-results-hero h2{margin:7px 0 8px;font-size:34px}.public-results-hero p{color:#c9d2cd;margin:0;font-size:15px}.public-event-facts{grid-template-columns:repeat(3,minmax(130px,1fr));gap:10px;display:grid}.public-event-facts span{color:#dce5df;border:1px solid #425149;align-items:center;gap:8px;padding:10px 12px;font-size:12px;display:flex}.public-event-facts svg{color:var(--lime)}.public-event-facts b{font-weight:700}.public-results-board{border:1px solid var(--line);background:#fff;border-radius:10px;width:min(1180px,100% - 40px);margin:0 auto 68px;padding:30px}.discipline-title{align-items:center;gap:12px;display:flex}.discipline-title>span{background:var(--green-soft);width:48px;height:48px;color:var(--green);border-radius:7px;place-items:center;display:grid}.discipline-title h2{margin:3px 0 0;font-size:25px}.public-totals{gap:14px;margin-left:auto;display:flex}.public-totals span{color:var(--muted);background:#f4f7f5;align-items:center;gap:6px;padding:8px 11px;font-size:11px;display:flex}.public-totals svg{color:var(--green)}.public-totals b{color:var(--ink);font-size:14px}.public-stage-flow{border:1px solid var(--line);background:#f8faf8;align-items:center;gap:12px;margin:26px 0 30px;padding:16px;display:flex}.public-stage-flow>svg{color:#a0aaa4}.public-stage{align-items:center;gap:10px;min-width:230px;display:flex}.public-stage>span{color:#65706a;background:#d9dfdb;border-radius:50%;place-items:center;width:28px;height:28px;font-size:12px;font-weight:850;display:grid}.public-stage.active>span{background:var(--green);color:#fff}.public-stage>div{gap:2px;display:grid}.public-stage strong{font-size:14px}.public-stage small{color:var(--muted);font-size:11px}.public-stage.pending{opacity:.58}.public-category-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:16px;display:flex}.public-category-heading h2{margin:5px 0 0;font-size:22px}.public-category-heading p{max-width:360px;color:var(--muted);margin:0;font-size:12px;line-height:1.45}.public-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.public-category-card{border:1px solid var(--line);min-height:82px;color:var(--ink);align-items:center;gap:12px;padding:13px;text-decoration:none;transition:transform .15s,border-color .15s,box-shadow .15s;display:flex}.public-category-card:hover{border-color:#91bba3;transform:translateY(-1px);box-shadow:0 8px 20px #173d2b12}.category-card-icon{background:var(--green-soft);min-width:54px;min-height:45px;color:var(--green);text-align:center;place-items:center;padding:5px;font-size:11px;font-weight:900;display:grid}.category-card-main{gap:5px;min-width:0;display:grid}.category-card-main strong{font-size:15px}.category-card-main small{color:var(--muted);font-size:11px}.public-category-card>svg{color:var(--green);margin-left:auto}.qualification-page{background:#f3f5f3}.qualification-shell{width:min(1440px,100% - 40px)}.qualification-heading{border:1px solid var(--line);background:#fff;border-bottom:0;justify-content:space-between;align-items:end;gap:18px;padding:24px 26px;display:flex}.qualification-heading h2{margin:5px 0 8px;font-size:28px}.qualification-heading p{color:var(--muted);align-items:center;gap:9px;margin:0;font-size:13px;display:flex}.qualification-badge{background:var(--green-soft);color:var(--green);text-transform:uppercase;align-items:center;gap:5px;padding:5px 8px;font-size:10px;font-weight:850;display:inline-flex}.qualification-table-wrap{border:1px solid var(--line);background:#fff;overflow:auto}.qualification-table{border-collapse:collapse;width:100%;min-width:900px}.qualification-table th{z-index:2;color:#5d6a63;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--line);background:#eaf0ec;height:55px;padding:7px 10px;font-size:10px;position:sticky;top:0}.qualification-table th:first-child{width:80px}.qualification-table th:nth-child(2){width:76px}.qualification-table th:nth-child(3){min-width:200px}.qualification-table th:nth-child(4){min-width:150px}.qualification-table th:last-child{width:88px}.qualification-table td{vertical-align:middle;background:#fff;border-bottom:1px solid #e3e8e4;height:64px;padding:8px 10px;font-size:14px}.qualification-table tbody tr{cursor:pointer}.qualification-table tbody tr:hover td{background:#f6faf7}.qualification-table tr.finalist td{background:var(--green-soft)}.qualification-table tr.finalist td:first-child{border-left:4px solid var(--green);padding-left:6px}.route-column{width:48px;min-width:48px;text-align:center!important;padding:4px!important}.route-column span{color:var(--ink);font-size:13px;display:block}.route-column small{color:var(--muted);text-transform:none;margin-top:2px;font-size:8px;display:block}.route-result{text-align:center;width:48px;min-width:48px;padding:5px!important}.route-ascent,.route-empty{place-items:center;width:32px;height:40px;display:inline-grid}.route-ascent{color:#fff;background:#d84b43;box-shadow:inset 0 -3px #b93631}.route-empty{background:#d8e0e9;border:1px solid #c3ccd7}.qualification-total{text-align:right}.qualification-total strong,.qualification-total small{display:block}.qualification-total strong{font-size:16px}.qualification-total small{color:var(--muted);margin-top:3px;font-size:9px}.qualification-legend{color:var(--muted);align-items:center;gap:8px;margin:10px 0 0;font-size:11px;display:flex}.qualification-legend .route-ascent{width:25px;height:28px}.qualification-table.compact{min-width:760px}.qualification-table.compact th:nth-child(3){width:34%}.qualification-table.compact th:nth-child(4){width:30%}.qualification-table.compact th:nth-child(5),.qualification-table.compact th:nth-child(6){text-align:center;width:82px}.qualification-table.compact th:last-child{width:44px}.qualification-table.compact td:last-child{color:var(--muted);text-align:center}.qualification-completed{text-align:center;font-weight:800}.qualification-table.compact .qualification-total{text-align:center}.qualification-badge.final{color:#8a6800;background:#fff0c9}.stage-view-tabs{border:1px solid var(--line);background:#fff;border-bottom:0;gap:0;padding:12px 14px 0;display:flex}.stage-view-tabs button{min-height:35px;color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;padding:0 14px;font-size:12px;font-weight:850}.stage-view-tabs button.active{border-bottom-color:var(--green);color:var(--green)}.stage-view-tabs button.active.final{color:#8a6800;border-bottom-color:#a67b00}.final-public-table-wrap{border:1px solid var(--line);background:#fff;overflow:auto}.final-public-table{border-collapse:collapse;width:100%;min-width:1040px}.final-public-table th{z-index:2;color:#5d6761;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--line);background:#ecefed;height:58px;padding:8px 10px;font-size:10px;position:sticky;top:0}.final-public-table th:first-child,.final-public-table th:nth-child(2){width:76px}.final-public-table th:nth-child(3){min-width:200px}.final-public-table th:nth-child(4){min-width:150px}.final-public-table th:nth-child(5){text-align:center;width:64px}.final-public-table th:nth-last-child(2){text-align:center;width:70px}.final-public-table th:last-child{text-align:center;width:88px}.final-public-table td{vertical-align:middle;background:#fff;border-bottom:1px solid #e3e8e4;height:66px;padding:8px 10px;font-size:14px}.final-public-table tbody tr:hover td{background:#fafbfa}.final-route-head{width:50px;min-width:50px;text-align:center!important;padding:5px!important}.final-route-head span{color:var(--ink);font-size:14px;display:block}.final-route-head small{max-width:44px;color:var(--muted);text-overflow:ellipsis;text-transform:none;white-space:nowrap;margin:3px auto 0;font-size:8px;display:block;overflow:hidden}.final-attempt-cell{text-align:center;width:50px;min-width:50px;padding:5px!important}.attempt-top,.attempt-zone{color:#6e7881;place-items:center;width:32px;height:25px;margin:auto;font-size:12px;font-weight:900;display:grid}.attempt-top{background:#d7e0ea;border-bottom:1px solid #fff}.attempt-zone{background:#d7e0ea}.attempt-top.filled,.attempt-zone.filled{color:#fff;background:#d84b43}.final-counts{text-align:center;white-space:nowrap}.final-score{color:var(--ink);text-align:center;font-weight:900;font-size:17px!important}.category-tabs{gap:6px;margin-bottom:12px;padding-bottom:4px;display:flex;overflow-x:auto}.category-tabs a{min-height:34px;color:var(--muted);background:#fff;border:1px solid #cbd2ce;border-radius:4px;flex:none;align-items:center;padding:0 10px;font-size:11px;font-weight:700;text-decoration:none;display:flex}.category-tabs a.active{border-color:var(--green);background:var(--green);color:#fff}.public-waiting{border:1px solid var(--line);background:#f6f8f6;align-items:center;gap:12px;margin-top:22px;padding:16px;display:flex}.public-waiting svg{color:var(--muted);flex:none}.public-waiting p{color:var(--muted);margin:4px 0 0;font-size:12px}.results-shell{width:min(1280px,100% - 40px);margin:22px auto 60px}.event-meta{color:var(--muted);align-items:center;gap:24px;margin-bottom:18px;font-size:13px;display:flex}.event-meta span{align-items:center;gap:7px;display:flex}.live-dot:before{content:"";background:#2da66f;border-radius:50%;width:7px;height:7px}.results-toolbar{border:1px solid var(--line);background:#fff;border-bottom:0;border-radius:6px 6px 0 0;justify-content:space-between;align-items:end;gap:24px;padding:20px 22px;display:flex}.results-toolbar h2{margin-bottom:4px;font-size:20px}.results-toolbar p,.pane-toolbar p,.routes-heading p{color:var(--muted);margin:0;font-size:13px}.filters{align-items:end;gap:10px;display:flex}.filters label,.login-panel label,.participant-fields label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:11px;font-weight:700;display:grid}select,input{min-height:38px;color:var(--ink);background:#fff;border:1px solid #cbd2ce;border-radius:4px;outline:none;padding:0 11px}select:focus,input:focus{border-color:var(--green);box-shadow:0 0 0 2px #176b4d1f}.icon-button{width:38px;height:38px;color:var(--ink);background:#fff;border:1px solid #cbd2ce;border-radius:4px;place-items:center;display:grid}.table-wrap{border:1px solid var(--line);background:#fff;overflow-x:auto}.results-table{border-collapse:collapse;table-layout:fixed;width:100%;min-width:680px}.results-table th{z-index:2;color:#68716c;text-align:left;text-transform:uppercase;border-bottom:1px solid var(--line);background:#f5f7f5;padding:11px 14px;font-size:11px;position:sticky;top:0}.results-table th:first-child{width:112px}.results-table th:nth-child(2){width:82px}.results-table th:nth-child(3){width:35%}.results-table th:nth-child(4){width:34%}.results-table th:nth-child(5){width:72px}.results-table th:nth-child(6){width:96px}.results-table th:last-child{width:42px}.results-table td{vertical-align:middle;background:#fff;border-bottom:1px solid #e5e9e6;height:58px;padding:9px 14px;font-size:14px}.results-table tbody tr{cursor:pointer}.results-table tbody tr:hover td{background:#f7f9f7}.results-table tr.finalist td{background:var(--green-soft)}.results-table tr.finalist td:first-child{border-left:4px solid var(--green);padding-left:10px}.results-table tr.finalist:hover td{background:#deeee5}.finalist-badge{width:max-content;color:var(--green);text-transform:uppercase;align-items:center;gap:4px;margin-top:3px;font-size:10px;font-weight:800;display:flex}.bib{color:#fff;background:#24312c;border-radius:3px;place-items:center;min-width:44px;min-height:32px;padding:0 8px;font-weight:800;display:inline-grid}.athlete-name,.points{font-weight:800}.athlete-name strong,.athlete-name small{text-overflow:ellipsis;display:block;overflow:hidden}.athlete-name small{color:var(--muted);margin-top:4px;font-size:11px;font-weight:400;display:none}.club{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.empty-state{color:var(--muted);text-align:center;padding:54px}.error-banner,.form-error{color:#8f2f25;background:#fff1ef;border:1px solid #eccbc6;padding:11px 14px;font-size:13px}.modal-backdrop{z-index:10;background:#0f14128c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:6px;width:min(620px,100%);max-height:90vh;padding:28px;position:relative;overflow:auto;box-shadow:0 20px 60px #0000004d}.modal-close{background:#f0f3f1;border:0;border-radius:4px;width:36px;height:36px;position:absolute;top:16px;right:16px}.modal h2{margin:5px 42px 4px 0}.transfer-dialog{background:#fff;border-radius:6px;width:min(520px,100%);padding:26px;position:relative;box-shadow:0 20px 60px #0000004d}.transfer-dialog h2{margin:6px 42px 8px 0;font-size:22px}.transfer-dialog>p{color:var(--muted);margin:0;line-height:1.55}.transfer-dialog>p strong{color:var(--ink)}.dialog-close{background:#f0f3f1;border:0;border-radius:4px;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:16px;right:16px}.dialog-icon{background:var(--green-soft);width:42px;height:42px;color:var(--green);border-radius:4px;place-items:center;margin-bottom:14px;display:grid}.transfer-summary{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:20px 0;display:grid}.transfer-summary span{background:#f8f9f8;min-width:0;padding:12px}.transfer-summary small,.transfer-summary strong{display:block}.transfer-summary small{color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:9px;font-weight:800}.transfer-summary strong{text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.dialog-actions{justify-content:flex-end;gap:8px;display:flex}.confirm-transfer-button{background:var(--green);color:#fff;border:0;border-radius:4px;min-height:40px;padding:0 14px;font-weight:800}.import-dialog{background:#fff;border-radius:6px;width:min(720px,100%);max-height:90vh;padding:26px;position:relative;overflow:auto;box-shadow:0 20px 60px #0000004d}.import-dialog h2,.duplicate-dialog h2{margin:6px 42px 8px 0;font-size:22px}.import-dialog>p{color:var(--muted);margin:0 0 18px}.import-columns{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;display:grid}.import-columns span{text-align:center;background:#f7f9f8;border:1px solid #cbd5cf;border-radius:4px;place-content:center;min-height:42px;padding:6px 8px;font-size:12px;font-weight:800;display:grid}.import-columns .optional-column{color:var(--muted);border-style:dashed}.import-columns small{text-transform:uppercase;margin-top:2px;font-size:8px;font-weight:700}.import-example{color:#fff;background:#202a26;border-radius:4px;margin:14px 0;padding:12px;overflow:auto}.import-example small{color:#aeb9b3;text-transform:uppercase;margin-bottom:7px;font-size:9px;font-weight:800;display:block}.import-example code{white-space:nowrap;font-size:11px}.import-rules{color:var(--muted);grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 22px;margin:0 0 18px;padding-left:18px;font-size:12px;display:grid}.import-set-label{color:var(--muted);text-transform:uppercase;gap:6px;margin-bottom:12px;font-size:10px;font-weight:800;display:grid}.file-upload-button{background:var(--green);color:#fff;cursor:pointer;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:42px;font-weight:800;display:flex}.file-upload-button input{display:none}.file-upload-button.disabled{cursor:not-allowed;opacity:.45}.duplicate-backdrop{z-index:20}.duplicate-dialog{background:#fff;border-radius:6px;width:min(500px,100%);padding:28px;position:relative;box-shadow:0 20px 60px #00000059}.duplicate-dialog>p{color:#7f2d23;background:#fff5f3;border:1px solid #edc5bf;border-radius:4px;max-height:180px;margin:0 0 20px;padding:12px;line-height:1.5;overflow:auto}.duplicate-icon{width:46px;height:46px;color:var(--red);background:#fff0ed;border-radius:4px;place-items:center;margin-bottom:14px;display:grid}.overflow-dialog{background:#fff;border-radius:6px;width:min(600px,100%);max-height:90vh;padding:28px;position:relative;overflow:auto;box-shadow:0 20px 60px #00000059}.overflow-dialog h2{margin:6px 0 8px;font-size:22px}.overflow-dialog>p{color:var(--muted);margin:0 0 18px;line-height:1.5}.overflow-icon{width:46px;height:46px;color:var(--red);background:#fff0ed;border-radius:4px;place-items:center;margin-bottom:14px;display:grid}.overflow-list{border:1px solid #e0b9b3;margin-bottom:20px}.overflow-list>div{background:#fff8f7;border-bottom:1px solid #edd8d4;grid-template-columns:minmax(120px,1fr) auto 110px;align-items:center;gap:14px;min-height:62px;padding:10px 12px;display:grid}.overflow-list>div:last-child{border-bottom:0}.overflow-list span{color:#5f3934;font-size:13px}.overflow-list b{color:var(--red)}.overflow-list small{color:var(--red);text-align:right;text-transform:uppercase;font-size:10px;font-weight:800}.overflow-confirm-button{background:var(--red);color:#fff;border:0;border-radius:4px;min-height:40px;padding:0 14px;font-weight:800}.overflow-confirm-button:disabled{opacity:.5;cursor:not-allowed}.muted{color:var(--muted)}.score-strip{border:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin:22px 0;display:grid}.score-strip div{border-right:1px solid var(--line);gap:4px;padding:14px;display:grid}.score-strip div:last-child{border:0}.score-strip span{color:var(--muted);text-transform:uppercase;font-size:11px}.score-strip strong{font-size:21px}.route-list{border-top:1px solid var(--line)}.route-list>div{border-bottom:1px solid var(--line);grid-template-columns:36px 1fr auto;align-items:center;gap:12px;min-height:54px;display:grid}.route-list small{color:var(--muted);margin-top:3px;display:block}.route-number{color:var(--green);font-weight:900}.login-page{background:#18201d;place-items:center;min-height:100vh;padding:24px;display:grid}.login-panel{background:#fff;border-radius:6px;width:min(420px,100%);padding:34px}.login-panel .brand-mark{margin:34px 0 18px}.login-panel h1{margin:6px 0;font-size:25px}.login-panel>p{color:var(--muted)}.login-panel form{gap:16px;margin-top:28px;display:grid}.login-panel input{width:100%;min-height:44px}.back-link{color:var(--muted);align-items:center;gap:4px;font-size:13px;text-decoration:none;display:flex}.primary-button{background:var(--green);color:#fff;border:0;border-radius:4px;min-height:44px;font-weight:800}.primary-button:disabled{color:#718078;cursor:not-allowed;opacity:1;background:#c7cfca}.admin-page{background:#edf0ee;min-height:100vh}.admin-header{color:#fff;background:#18201d;grid-template-columns:260px 1fr auto;align-items:center;gap:20px;height:66px;padding:0 20px;display:grid}.admin-brand,.admin-brand>div,.header-actions,.set-main{align-items:center;gap:10px;display:flex}.admin-brand>div:last-child{gap:2px;display:grid}.admin-brand span,.admin-title span{color:#aab4ae;font-size:11px;display:block}.admin-title{text-align:center;font-size:13px}.header-actions a{color:#fff;font-size:12px}.sync-status{color:#cbd5d1;white-space:nowrap;align-items:center;gap:6px;font-size:12px;display:inline-flex}.sync-status:before{content:"";background:#50b87a;border-radius:50%;width:7px;height:7px}.sync-status.offline:before{background:#ef6a5b}.icon-button.dark{color:#fff;background:0 0;border-color:#4d5853}.admin-layout{grid-template-columns:240px minmax(310px,400px) minmax(460px,1fr);height:calc(100vh - 66px);min-height:610px;display:grid}.admin-page .pane-toolbar h1,.admin-page .config-header h1,.admin-page .settings-header h1,.admin-page .clubs-pane-head h1,.admin-page .applications-head h1,.admin-page .final-hero h1{font-size:var(--ui-title-lg);margin-top:4px;margin-bottom:5px;line-height:1.1}.admin-page .settings-card-head h2,.admin-page .final-panel-heading h2,.admin-page .final-setup-head h2,.admin-page .club-detail-head h2,.admin-page .routes-heading h3{font-size:var(--ui-title-sm);line-height:1.2}.admin-page .eyebrow,.admin-page label,.admin-page th,.admin-page .sidebar-heading,.admin-page .users-head,.admin-page .audit-head{font-size:var(--ui-text-xs)}.admin-page .pane-toolbar p,.admin-page .config-header p,.admin-page .settings-header p,.admin-page .clubs-pane-head p,.admin-page .applications-head p,.admin-page .final-hero p{font-size:var(--ui-text-sm);line-height:1.45}.admin-page input:not([type=checkbox]):not([type=radio]),.admin-page select{min-height:var(--ui-control-height);border-radius:var(--ui-radius);font-size:var(--ui-text-sm)}.admin-page .primary-action,.admin-page .save-route-button,.admin-page .secondary-button,.admin-page .import-button,.admin-page .danger-outline-button,.admin-page .danger-action-button{min-height:var(--ui-control-height);border-radius:var(--ui-radius);font-size:var(--ui-text-sm);justify-content:center;align-items:center;gap:7px;padding:0 13px;line-height:1;display:inline-flex}.admin-page table td,.admin-page .user-row,.admin-page .audit-row{font-size:var(--ui-text-md)}.sets-sidebar{border-right:1px solid var(--line);background:#f7f8f7;padding:18px 12px;overflow:auto}.sidebar-heading{color:var(--muted);text-transform:uppercase;justify-content:space-between;padding:0 9px 12px;font-size:11px;font-weight:800;display:flex}.sidebar-heading.sets-heading{margin-top:24px}.sets-heading-actions{align-items:center;gap:7px;display:flex}.sets-heading-actions button{width:25px;height:25px;color:var(--green);background:#fff;border:1px solid #cbd2ce;border-radius:3px;place-items:center;padding:0;display:grid}.section-item{width:100%;min-height:42px;color:var(--ink);text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;align-items:center;gap:10px;margin-bottom:5px;padding:0 10px;font-weight:700;display:flex}.section-item:hover,.section-item.active{background:#fff;border-color:#cdd5d0}.section-item.active{box-shadow:inset 3px 0 var(--green);color:var(--green)}.set-item{text-align:left;background:0 0;border:1px solid #0000;border-radius:4px;justify-content:space-between;align-items:center;gap:8px;width:100%;min-height:56px;margin-bottom:5px;padding:9px 10px;display:flex}.set-item:hover,.set-item.active{background:#fff;border-color:#cdd5d0}.set-item.active{box-shadow:inset 3px 0 var(--green)}.set-item.set-completed{color:#a6281a;background:#ffe3df;border-color:#e36a5b}.set-item.set-completed:hover{background:#ffd8d2;border-color:#cf4939}.set-item.set-completed.active{box-shadow:inset 3px 0 var(--red)}.set-item.set-current{color:#0b6a42;background:#dff4e6;border-color:#55aa7e}.set-item.set-current:hover{background:#d2eddb;border-color:#318e61}.set-item.set-current.active{box-shadow:inset 3px 0 var(--green)}.set-item.set-completed .capacity,.set-item.set-current .capacity,.set-item.set-completed small,.set-item.set-current small{color:inherit;opacity:.72}.set-item>span:first-child,.set-main>span{align-items:center;gap:9px;display:flex}.set-main{justify-content:space-between;width:100%}.set-main>span{gap:3px;display:grid}.set-item small{color:var(--muted);font-size:10px;display:block}.capacity{color:var(--muted);white-space:nowrap;font-size:12px}.set-row{border:1px solid #0000;border-radius:4px;grid-template-columns:minmax(0,1fr) 30px;align-items:stretch;min-height:58px;margin-bottom:5px;display:grid;position:relative}.set-row:hover,.set-row.active{background:#fff;border-color:#cdd5d0}.set-row.active{box-shadow:inset 3px 0 var(--green)}.set-select-button{min-width:0;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px 3px 8px 10px;display:grid}.set-row .set-main,.set-row .set-main>span{min-width:0}.set-row .set-main>span:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.set-row small{color:var(--muted);font-size:10px;display:block}.set-row .capacity{text-align:right}.set-menu-button{color:currentColor;background:0 0;border:0;border-radius:3px;align-self:center;place-items:center;width:28px;height:32px;padding:0;display:grid}.set-menu-button:hover{background:#00000012}.set-row.set-completed{color:#a6281a;background:#ffe3df;border-color:#e36a5b}.set-row.set-completed:hover{background:#ffd8d2;border-color:#cf4939}.set-row.set-completed.active{box-shadow:inset 3px 0 var(--red)}.set-row.set-current{color:#0b6a42;background:#dff4e6;border-color:#55aa7e}.set-row.set-current:hover{background:#d2eddb;border-color:#318e61}.set-row.set-current.active{box-shadow:inset 3px 0 var(--green)}.set-row.set-completed .capacity,.set-row.set-current .capacity,.set-row.set-completed small,.set-row.set-current small{color:inherit;opacity:.72}.set-menu-backdrop{z-index:7;background:0 0;border:0;position:fixed;inset:0}.set-actions-menu{z-index:8;width:190px;color:var(--ink);background:#fff;border:1px solid #cbd2ce;border-radius:5px;padding:5px;position:absolute;top:44px;right:3px;box-shadow:0 12px 28px #19231e33}.set-actions-menu button{width:100%;min-height:36px;color:inherit;text-align:left;background:0 0;border:0;border-radius:3px;align-items:center;gap:8px;padding:0 9px;font-size:12px;font-weight:700;display:flex}.set-actions-menu button:hover:not(:disabled){background:#eef4f0}.set-actions-menu button:disabled{color:#aab1ad;cursor:not-allowed}.set-actions-menu .danger-menu-item{color:var(--red)}.participants-pane{border-right:1px solid var(--line);background:#fff;flex-direction:column;min-height:0;display:flex;overflow:hidden}.pane-toolbar{border-bottom:1px solid var(--line);flex:none;min-height:104px;padding:15px 16px}.pane-toolbar>div:first-child{justify-content:space-between;align-items:center;display:flex}.pane-toolbar h1{margin-bottom:4px;font-size:20px}.search-box{height:var(--ui-control-height);color:var(--muted);background:#fff;border:1px solid #cbd2ce;border-radius:4px;align-items:center;gap:8px;margin-top:10px;padding:0 10px;display:flex;overflow:hidden}.search-box input{width:100%;min-height:40px;box-shadow:none;background:0 0;border:0;padding:0}.import-button{cursor:pointer;border:1px solid #cbd2ce;border-radius:4px;align-items:center;gap:5px;min-height:30px;padding:0 9px;font-size:11px;font-weight:700;display:flex}.import-button input{display:none}.participant-list{flex:1;min-height:0;overflow:auto}.participant-row{text-align:left;background:#fff;border:0;border-bottom:1px solid #e7ebe8;grid-template-columns:52px 1fr 74px;align-items:center;gap:10px;width:100%;min-height:66px;padding:8px 14px;display:grid}.participant-row.selected{box-shadow:inset 3px 0 var(--green)}.participant-row.checked-in .small-bib{background:#07834f;box-shadow:0 0 0 2px #bce7ce}.small-bib{min-width:42px;min-height:29px;font-size:12px}.person-main{min-width:0}.person-main strong,.person-main small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.person-main strong{font-size:13px}.person-main small,.person-score small{color:var(--muted);margin-top:4px;font-size:10px}.person-score{text-align:right}.person-score strong,.person-score small{display:block}.person-score strong{font-size:17px}.waiting-mark{color:#b62f20;text-transform:uppercase;background:#ffe7e3;border:1px solid #ef9a90;border-radius:3px;padding:4px 6px;font-size:9px;font-weight:850;display:inline-block}.participant-card{background:#f7f8f7;padding:22px;overflow:auto}.card-head{border-bottom:1px solid var(--line);justify-content:space-between;gap:20px;padding-bottom:18px;display:flex}.card-head h2{margin:5px 0 3px;font-size:22px}.card-head p{color:var(--muted);margin:0}.live-score{color:#087044;text-align:right;background:#ddf6e7;border:1px solid #63bd8b;border-radius:4px;min-width:110px;padding:8px 10px}.live-score strong{font-size:28px;display:block}.live-score span{color:#176b4d;font-size:11px;font-weight:750}.not-checked-in{color:#b62f20;text-transform:uppercase;background:#ffe4e0;border:1px solid #ef8e82;border-radius:4px;align-self:flex-start;padding:7px 9px;font-size:10px;font-weight:850}.participant-fields{border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 28px;padding:18px 0;display:grid}.participant-fields div{min-width:0}.participant-fields span{color:var(--muted);text-transform:uppercase;margin-bottom:5px;font-size:10px;font-weight:700;display:block}.participant-fields strong{text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.participant-fields .wide{grid-column:1/-1}.routes-heading{justify-content:space-between;align-items:center;padding:20px 0 12px;display:flex}.routes-heading h3{margin-bottom:4px}.results-edit-actions{justify-content:flex-end;align-items:center;gap:7px;min-height:38px;display:flex}.edit-results-button,.confirm-results-button{border-radius:4px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 12px;font-size:12px;font-weight:800;display:flex}.edit-results-button{color:var(--ink);background:#fff;border:1px solid #b9c8c0}.confirm-results-button{background:var(--green);color:#fff;border:0}.confirm-results-button:disabled{opacity:.55;cursor:not-allowed}.secondary-button.compact-action{min-height:38px;font-size:12px;font-weight:700}.route-grid{grid-template-columns:repeat(3,minmax(110px,1fr));gap:8px;display:grid}.route-toggle{text-align:left;background:#fff;border:1px solid #ced5d1;border-radius:4px;align-items:center;gap:9px;min-height:58px;padding:8px 10px;display:flex}.route-toggle:hover:not(:disabled){border-color:var(--green)}.route-toggle.completed{background:var(--green-soft);border-color:#8abda5}.route-toggle:disabled{cursor:not-allowed;opacity:.62}.route-grid.viewing .route-toggle:disabled{cursor:default;opacity:1}.route-grid.editing{outline-offset:2px;background:#f5faf7;border-radius:4px;outline:2px solid #9dc8b1;padding:8px}.check-box{border:1px solid #aeb8b2;border-radius:3px;flex:none;place-items:center;width:22px;height:22px;display:grid}.completed .check-box{border-color:var(--green);background:var(--green);color:#fff}.route-toggle strong,.route-toggle small{display:block}.route-toggle strong{font-size:12px}.route-toggle small{color:var(--muted);margin-top:4px;font-size:10px}.no-selection{min-height:100%;color:var(--muted);text-align:center;place-content:center;justify-items:center;display:grid}.no-selection h2{color:var(--ink);margin:14px 0 5px;font-size:18px}.check-in-panel{background:var(--green-soft);border:1px solid #acd0bb;border-radius:5px;margin-top:20px;padding:18px}.check-in-panel>div:first-child{color:var(--green);align-items:center;gap:11px;display:flex}.check-in-panel p{color:var(--muted);margin:3px 0 0;font-size:12px}.check-in-button{background:var(--green);color:#fff;border:0;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:40px;margin-top:16px;padding:0 14px;font-weight:800;display:flex}.check-in-button:disabled{cursor:not-allowed;opacity:.45}.set-editor-dialog,.set-action-dialog{background:#fff;border-radius:6px;width:min(540px,100%);padding:27px;position:relative;box-shadow:0 20px 60px #00000052}.set-editor-dialog h2,.set-action-dialog h2{margin:6px 42px 8px 0;font-size:22px}.set-editor-dialog form{grid-template-columns:1fr 1fr;gap:14px;margin-top:20px;display:grid}.set-editor-dialog label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.set-editor-dialog input{width:100%;min-height:42px}.set-editor-dialog label small{color:var(--muted);text-transform:none;font-size:10px;font-weight:500;line-height:1.4}.set-editor-dialog .wide-field{grid-column:1/-1}.set-action-dialog>p{color:var(--muted);margin:0 0 18px;line-height:1.55}.set-action-summary{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,1fr);margin-bottom:20px;display:grid}.set-action-summary span{color:var(--muted);text-transform:uppercase;background:#f7f9f8;padding:11px;font-size:10px}.set-action-summary strong{color:var(--ink);text-transform:none;margin-top:5px;font-size:13px;display:block}.error-banner.compact{margin:8px}.routes-config-pane,.settings-pane,.applications-section{scrollbar-gutter:stable;background:#f7f8f7;grid-column:2/-1;min-width:0;padding:26px 30px 50px;overflow:auto}.admin-workspace-container{width:min(1120px,100%);min-width:0;margin:0 auto}.settings-header{max-width:1120px;margin:0 auto 18px}.settings-header h1{margin:5px 0;font-size:25px}.settings-header p{color:var(--muted);margin:0}.settings-tabs{border-bottom:1px solid var(--line);gap:6px;max-width:1120px;margin:0 auto 16px;display:flex}.settings-tabs button{color:var(--muted);background:0 0;border:0;border-bottom:3px solid #0000;align-items:center;gap:8px;padding:11px 14px;font-weight:800;display:flex}.settings-tabs button.active{color:var(--green);border-color:var(--green)}.settings-card{border:1px solid var(--line);background:#fff;border-radius:5px;max-width:1120px;margin:0 auto;overflow:hidden}.settings-card-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;padding:18px 20px;display:flex}.settings-card-head h2{margin:0 0 3px}.settings-card-head p{color:var(--muted);margin:0;font-size:12px}.users-head,.user-row{grid-template-columns:minmax(230px,1.5fr) 170px 90px 110px 44px;align-items:center;gap:12px;padding:11px 18px;display:grid}.users-head{color:var(--muted);text-transform:uppercase;background:#f1f4f2;font-size:10px;font-weight:800}.user-row{border-top:1px solid var(--line);min-height:62px}.user-row:first-of-type{border-top:0}.user-row.inactive{opacity:.58}.user-row strong,.user-row small{display:block}.user-row small{color:var(--muted);margin-top:3px}.user-status{background:#f4f5f4;border:1px solid #d0d6d2;border-radius:999px;padding:7px 9px;font-size:11px;font-weight:800}.user-status.active{color:var(--green);background:#e9f5ee;border-color:#a9cbbb}.role-matrix{grid-template-columns:260px 1fr;display:grid}.role-list{border-right:1px solid var(--line);background:#f5f7f6;padding:12px}.role-list button{text-align:left;background:0 0;border:1px solid #0000;width:100%;padding:12px}.role-list button.active{box-shadow:inset 3px 0 var(--green);background:#fff;border-color:#c7d2cc}.role-list strong,.role-list small{display:block}.role-list small{color:var(--muted);margin-top:4px}.permission-list{padding:20px}.permission-list>p{color:var(--muted);margin:4px 0 18px}.permission-list label{border-bottom:1px solid #edf0ee;align-items:flex-start;gap:10px;padding:9px 4px;display:flex}.permission-list input{margin-top:3px}.permission-list span,.permission-list small{display:block}.permission-list small{color:var(--muted);margin-top:2px;font-family:monospace}.permission-list>.save-route-button{margin-top:18px}.audit-filters{border-bottom:1px solid var(--line);grid-template-columns:1fr 1fr 160px auto;gap:9px;padding:14px 18px;display:grid}.audit-filters input,.audit-filters select{background:#fff;border:1px solid #cdd4d0;border-radius:3px;min-width:0;padding:9px}.audit-head,.audit-row{grid-template-columns:150px minmax(180px,1fr) minmax(170px,1fr) minmax(130px,1fr) 90px;align-items:center;gap:12px;padding:10px 18px;display:grid}.audit-head{color:var(--muted);text-transform:uppercase;background:#f1f4f2;font-size:10px;font-weight:800}.audit-row{border-top:1px solid var(--line);font-size:12px}.audit-row strong,.audit-row small{display:block}.audit-row small{color:var(--muted);margin-top:2px}.audit-result{color:var(--red);font-weight:800}.audit-result.success{color:var(--green)}.user-editor{background:#fff;border-radius:6px;width:min(500px,100vw - 32px);padding:24px;position:relative;box-shadow:0 20px 60px #0005}.user-editor h2{margin:5px 0 18px}.user-editor label{color:var(--muted);text-transform:uppercase;margin:12px 0;font-size:11px;font-weight:800;display:block}.user-editor input,.user-editor select{width:100%;color:var(--ink);text-transform:none;background:#fff;border:1px solid #cbd2ce;border-radius:3px;margin-top:5px;padding:10px;font-size:14px}.user-editor label small{text-transform:none;margin-top:4px;font-weight:500;display:block}.user-editor .primary-button{width:100%;margin-top:8px}.config-header{justify-content:space-between;align-items:end;gap:20px;width:100%;max-width:none;margin:0 0 20px;display:flex}.config-header h1{margin:5px 0 3px;font-size:25px}.config-header p{color:var(--muted);margin:0;font-size:13px}.primary-action,.save-route-button{background:var(--green);color:#fff;border:0;border-radius:4px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:0 14px;font-weight:800;display:flex}.routes-config-browser,.new-route-form{border:1px solid var(--line);background:#fff;width:100%;margin:0}.bulk-points-form{background:#eef5f1;border:1px solid #b8c8bf;border-radius:4px;grid-template-columns:minmax(230px,1fr) 120px 120px 140px auto;align-items:end;gap:14px;width:100%;margin:0 0 14px;padding:16px;display:grid}.bulk-points-form>div{align-self:center}.bulk-points-form>div strong{margin-top:5px;font-size:14px;display:block}.bulk-points-form label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.bulk-points-form select,.bulk-points-form input{width:100%}.grade-points-panel{background:#eef5f1;border:1px solid #b8c8bf;margin:0 0 16px}.grade-points-head{border-bottom:1px solid #cbd8d0;justify-content:space-between;align-items:flex-end;gap:20px;padding:16px;display:flex}.grade-points-head h2{margin:4px 0 5px;font-size:18px}.grade-points-head p{color:var(--muted);margin:0;font-size:11px}.grade-points-groups{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.grade-points-groups article{border-right:1px solid #cbd8d0;padding:13px}.grade-points-groups article:last-child{border-right:0}.grade-points-groups article>strong{color:var(--green);margin-bottom:9px;font-size:12px;display:block}.grade-points-groups article>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.grade-points-groups label{background:#fff;border:1px solid #cad7cf;grid-template-columns:1fr 64px;align-items:center;gap:6px;padding:6px 7px;display:grid}.grade-points-groups label>span{gap:2px;font-size:11px;font-weight:850;display:grid}.grade-points-groups label small{color:var(--muted);font-size:8px;font-weight:600}.grade-points-groups input{text-align:right;width:64px;min-width:0;min-height:31px;padding:3px 6px}.route-toast{z-index:30;color:#155b43;background:#f3fbf6;border:1px solid #a9ccb9;border-radius:6px;width:min(480px,100vw - 40px);padding:14px;animation:.18s ease-out toast-in;position:fixed;top:82px;right:20px;box-shadow:0 12px 32px #10201833}.route-toast.error{color:#8f2f25;background:#fff5f3;border-color:#e0aaa3}.toast-main{grid-template-columns:22px 1fr 28px;align-items:center;gap:9px;display:grid}.toast-main strong{font-size:13px;line-height:1.35}.toast-close{color:currentColor;background:0 0;border:0;border-radius:3px;place-items:center;width:28px;height:28px;display:grid}.toast-close:hover{background:#0000000f}.toast-details-button{color:currentColor;background:0 0;border:0;align-items:center;gap:4px;margin:9px 0 0 31px;padding:0;font-size:11px;font-weight:800;display:flex}.toast-details{color:#5f2923;white-space:pre-wrap;word-break:break-word;background:#fff;border:1px solid #8f2f2533;max-height:150px;margin:10px 0 0 31px;padding:9px 10px;font-family:Consolas,monospace;font-size:11px;line-height:1.45;overflow:auto}@keyframes toast-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.routes-config-head,.routes-filter-row,.route-config-row{grid-template-columns:120px 180px 220px 34px;align-items:center;gap:8px;padding:7px 10px;display:grid}.routes-config-head{min-height:40px;color:var(--muted);text-transform:uppercase;background:#eef2ef;font-size:10px;font-weight:800}.route-sort{min-width:0;color:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;background:0 0;border:0;justify-content:flex-start;align-items:center;gap:5px;padding:0;display:flex}.route-sort:hover,.route-sort.active{color:var(--green)}.routes-filter-row{background:#f8faf8;border-top:1px solid #d7ded9;min-height:42px}.routes-filter-row input,.routes-filter-row select{width:100%;min-width:0;min-height:32px;padding:0 7px;font-size:12px}.points-filter{grid-template-columns:1fr 1fr;gap:5px;min-width:0;display:grid}.clear-filters{width:32px;height:32px;color:var(--muted);background:#fff;border:1px solid #cbd2ce;border-radius:4px;place-items:center;display:grid}.clear-filters:hover{color:var(--red);border-color:#d9aaa4}.routes-empty{border-top:1px solid var(--line);color:var(--muted);text-align:center;padding:42px 20px;font-size:13px}.route-config-row{border-top:1px solid var(--line);min-height:62px}.route-config-row.inactive{opacity:.68;background:#f4f5f4}.route-config-row input,.route-config-row select{width:100%;min-width:0}.config-route-number{color:#fff;background:#24312c;border-radius:3px;place-items:center;width:32px;height:32px;display:grid}.route-status{background:var(--green-soft);min-height:36px;color:var(--green);border:1px solid #bad2c5;border-radius:4px;justify-content:center;align-items:center;gap:6px;font-size:11px;font-weight:800;display:flex}.route-config-row.inactive .route-status{color:var(--muted);background:#fff;border-color:#ccd2ce}.route-config-row .icon-button:disabled{cursor:not-allowed;opacity:.35}.routes-config-browser{overflow:hidden}.routes-sort-bar{border-bottom:1px solid var(--line);min-height:36px;color:var(--muted);background:#edf2ef;flex-wrap:wrap;align-items:center;gap:4px;padding:4px 9px;display:flex}.routes-sort-bar>span{font-size:var(--ui-text-xs);text-transform:uppercase;margin-right:4px;font-weight:850}.routes-sort-bar .route-sort{border-radius:var(--ui-radius);text-transform:none;background:0 0;border:1px solid #0000;min-height:26px;padding:0 7px;font-size:10px;font-weight:800}.routes-sort-bar .route-sort:hover,.routes-sort-bar .route-sort.active{background:#fff;border-color:#b9c9c0}.route-card-grid{scrollbar-gutter:stable;background:#f3f6f4;grid-template-columns:repeat(5,minmax(0,1fr));align-content:start;gap:5px;max-height:min(62vh,680px);padding:6px;display:grid;overflow-y:auto}.route-config-card{border-radius:var(--ui-radius);background:#fff;border:1px solid #cbd5cf;gap:10px;min-width:0;padding:12px;display:grid;box-shadow:0 2px 6px #18201d0a}.route-config-card:hover{border-color:#9bb9a9;box-shadow:0 5px 14px #18201d12}.route-config-card.inactive{opacity:.72;background:#f0f2f1}.route-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.route-card-head .config-route-number{width:34px;height:34px;font-size:var(--ui-text-sm);flex:none}.route-card-head .route-status{min-height:30px;font-size:var(--ui-text-xs);padding:0 9px}.route-config-card.inactive .route-status{color:var(--muted);background:#fff;border-color:#c7ceca}.route-config-card label{min-width:0;color:var(--muted);font-size:var(--ui-text-xs);text-transform:uppercase;gap:5px;font-weight:800;display:grid}.route-config-card input,.route-config-card select{width:100%;min-width:0;color:var(--ink);background:#fff;border:1px solid #c8d1cc;padding:0 9px}.route-points-readonly{background:#f1f4f2;border:1px solid #d4dcd7;align-content:center;gap:5px;padding:0 9px;display:grid}.route-points-readonly span{color:var(--muted);font-size:var(--ui-text-xs);text-transform:uppercase;font-weight:800}.route-points-readonly strong{color:var(--green);font-size:18px}.route-card-fields{grid-template-columns:1fr 1fr;gap:8px;display:grid}.route-card-save{border:1px solid var(--green);border-radius:var(--ui-radius);background:var(--green);color:#fff;min-height:34px;font-size:var(--ui-text-sm);justify-content:center;align-items:center;gap:6px;font-weight:800;display:flex}.route-card-save:disabled{color:#89938e;cursor:not-allowed;background:#eef1ef;border-color:#d5dbd7}.route-config-card.compact{grid-template-columns:30px minmax(58px,1fr) 36px 26px;align-items:center;gap:4px;min-height:48px;padding:5px}.route-config-card.compact .config-route-number{width:30px;height:30px;font-size:11px}.route-config-card.compact .route-grade-control{display:block}.route-config-card.compact select{min-height:30px;padding:0 5px;font-size:12px;font-weight:800}.route-config-card.compact .route-points-readonly{place-items:center;min-height:30px;padding:2px 4px;display:grid}.route-config-card.compact .route-points-readonly strong{font-size:12px}.route-config-card .route-delete-button{border-radius:var(--ui-radius);width:26px;height:30px;color:var(--red);cursor:pointer;background:#fff8f7;border:1px solid #e0c7c3;place-items:center;padding:0;display:grid}.route-delete-button{position:relative}.route-config-card .route-delete-button select{opacity:0;cursor:pointer;width:100%;height:100%;min-height:0;padding:0;position:absolute;inset:0}.route-delete-button svg{pointer-events:none}.route-delete-button:hover{border-color:var(--red);background:#fff0ed}.route-delete-button:disabled{cursor:not-allowed;opacity:.45}.new-route-form{border-color:#a9c9b8;grid-template-columns:70px 140px 180px auto auto;align-items:end;gap:12px;margin-bottom:14px;padding:14px;display:grid}.new-route-form label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.route-number-preview{height:38px;color:var(--muted);place-items:center;font-size:11px;font-weight:800;display:grid}.secondary-button{background:#fff;border:1px solid #cbd2ce;border-radius:4px;min-height:40px;padding:0 13px}.participant-toolbar-actions{align-items:center;gap:8px;display:flex}.participant-toolbar-actions button{justify-content:center;align-items:center;gap:7px;min-height:38px;line-height:1;display:inline-flex}.participant-toolbar-actions svg{flex:none}.participant-list-controls{border-radius:var(--ui-radius);background:#f6f8f7;border:1px solid #cbd5cf;margin-top:9px;overflow:hidden}.arrival-visibility-toggle,.alphabet-sort-toggle{color:#52615a;text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;width:100%;min-height:38px;padding:0 10px;font-weight:750;transition:background .15s,color .15s;display:flex}.participant-list-controls button+button{border-top:1px solid #d8dfdb}.arrival-visibility-toggle:hover,.alphabet-sort-toggle:hover{background:#eff5f1}.arrival-visibility-toggle>svg,.alphabet-sort-toggle>svg{color:var(--green);flex:none}.arrival-visibility-toggle>span,.alphabet-sort-toggle>span{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.arrival-visibility-toggle>i,.alphabet-sort-toggle>i{background:#cbd3ce;border-radius:12px;flex:none;width:36px;height:20px;transition:background .15s;position:relative}.arrival-visibility-toggle>i:after,.alphabet-sort-toggle>i:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #18201d33}.arrival-visibility-toggle>b{min-width:25px;color:var(--muted);font-size:var(--ui-text-xs);text-align:center;background:#e3e8e5;border-radius:10px;padding:3px 6px}.arrival-visibility-toggle.active,.alphabet-sort-toggle.active{color:#086c43;background:#e4f4ea}.arrival-visibility-toggle.active>i,.alphabet-sort-toggle.active>i{background:var(--green)}.arrival-visibility-toggle.active>i:after,.alphabet-sort-toggle.active>i:after{transform:translate(16px)}.arrival-visibility-toggle.active>b{color:#086c43;background:#cbe8d6}.participant-list-empty{min-height:180px;color:var(--muted);text-align:center;place-content:center;justify-items:center;gap:7px;padding:24px;display:grid}.participant-list-empty>svg{color:#8da097}.participant-list-empty strong{color:var(--ink)}.participant-list-empty span{max-width:260px;font-size:var(--ui-text-sm);line-height:1.4}.final-lock-note{color:var(--red);margin-top:7px;display:block}.participant-status-strip{flex-wrap:wrap;gap:8px;padding:16px 0 14px;display:flex}.participant-status-strip .status-pill{border:1px solid #c9d2cd;border-radius:4px;padding:7px 10px;font-size:11px;font-weight:850}.participant-status-strip .status-pill.neutral{color:#344a40;background:#f2f5f3;border-color:#bfcac4}.participant-status-strip .status-pill.success{color:#087044;background:#d9f5e4;border-color:#54b47e;box-shadow:inset 3px 0 #0b8b54}.participant-status-strip .status-pill.danger{color:#b52d1e;background:#ffe2de;border-color:#ed8c80;box-shadow:inset 3px 0 #db4938}.participant-status-strip .status-pill.muted{color:#737d78;background:#f1f3f2;border-color:#d3d8d5}.participant-reception-actions{flex-wrap:wrap;gap:7px;margin:0 0 16px;display:flex}.participant-reception-actions button{color:#294b3d;background:#fff;border:1px solid #c8d4cd;border-radius:4px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:11px;font-weight:750;display:flex}.participant-reception-actions button:disabled{cursor:not-allowed;opacity:.45}.clubs-workspace{background:#eef1ef;grid-column:2/4;grid-template-columns:300px minmax(720px,1fr);min-width:0;display:grid;overflow:hidden}.clubs-list-pane,.club-detail-pane{background:#fff;min-height:0}.clubs-pane-head{z-index:2;border-bottom:1px solid var(--line);background:#fff;padding:20px;position:sticky;top:0}.clubs-pane-head h1{margin:0 0 4px;font-size:23px}.clubs-pane-head p{color:var(--muted);margin:0 0 14px;font-size:12px}.clubs-pane-head .search-box{width:100%}.clubs-list{display:grid}.club-list-item{border:0;border-bottom:1px solid var(--line);min-height:72px;color:var(--ink);text-align:left;background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:13px 18px;display:flex}.club-list-item:hover{background:#f7f9f7}.club-list-item.active{background:var(--green-soft);box-shadow:inset 4px 0 var(--green)}.club-list-item>span{gap:5px;min-width:0;display:grid}.club-list-item strong,.club-list-item small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.club-list-item small{color:var(--muted);font-size:10px}.club-list-item b{text-align:right;min-width:30px}.club-detail-head{border-bottom:1px solid var(--line);justify-content:space-between;gap:24px;padding:22px 24px;display:flex}.club-detail-head h2{margin:5px 0;font-size:25px}.club-detail-head p{color:var(--muted);margin:0;font-size:12px}.edit-club-button{min-height:30px;color:var(--green);background:#fff;border:1px solid #c8d4cd;border-radius:4px;align-items:center;gap:5px;margin-top:12px;padding:0 9px;font-size:10px;font-weight:800;display:flex}.club-summary{border:1px solid var(--line);display:flex}.club-summary span{border-right:1px solid var(--line);align-content:center;min-width:92px;padding:10px 14px;display:grid}.club-summary span:last-child{border:0}.club-summary b{font-size:17px}.club-summary small{color:var(--muted);text-transform:uppercase;margin-top:3px;font-size:9px}.club-selection-note{color:#315b49;background:#eff7f2;border-bottom:1px solid #c8dccf;align-items:center;gap:8px;min-height:44px;padding:9px 18px;font-size:11px;display:flex}.club-selection-note strong{white-space:nowrap;margin-left:auto}.club-bulk-actions{border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:7px;padding:12px 18px;display:flex}.club-bulk-actions>span{color:var(--muted);text-transform:uppercase;margin-right:3px;font-size:10px;font-weight:800}.club-bulk-actions button{color:#345045;background:#fff;border:1px solid #cbd5cf;border-radius:4px;align-items:center;gap:5px;min-height:32px;padding:0 9px;font-size:10px;font-weight:750;display:flex}.club-member-search{border-bottom:1px solid var(--line);background:#fafbfa;align-items:center;gap:12px;padding:10px 18px;display:flex}.club-member-search .search-box{width:min(420px,100%)}.club-member-search>span{color:var(--muted);white-space:nowrap;font-size:10px}.club-members-table{min-width:1040px}.club-member-row{border-bottom:1px solid var(--line);grid-template-columns:34px 54px minmax(190px,1.3fr) 90px 110px 100px 100px 130px;align-items:center;gap:10px;min-height:56px;padding:8px 16px;font-size:11px;display:grid}.club-member-row.table-head{z-index:1;min-height:37px;color:var(--muted);text-transform:uppercase;background:#f2f5f3;font-size:9px;font-weight:800;position:sticky;top:0}.club-member-row.table-head button{min-width:0;color:inherit;font-size:inherit;font-weight:inherit;text-transform:inherit;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:flex}.club-member-row.table-head button:hover,.club-member-row.table-head button.active{color:var(--green)}.member-check input{display:none}.member-check span{background:#fff;border:1px solid #aebbb4;border-radius:3px;width:18px;height:18px;display:block}.member-check input:checked+span{border-color:var(--green);background:var(--green);box-shadow:inset 0 0 0 4px #fff}.member-number{color:var(--green)}.member-full-name{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.status-chip{color:#b52d1e;background:#ffe2de;border:1px solid #ed8c80;border-radius:4px;min-height:30px;padding:0 7px;font-size:9px;font-weight:850}.status-chip.success{color:#087044;background:#d9f5e4;border-color:#54b47e}.status-chip:disabled{color:#737d78;cursor:not-allowed;opacity:1;background:#f1f3f2;border-color:#d3d8d5}.club-edit-form{gap:12px;margin-top:16px;display:grid}.club-edit-form label{color:var(--muted);text-transform:uppercase;gap:6px;font-size:10px;font-weight:800;display:grid}.club-edit-form input{width:100%}.stage3-import-dialog{width:min(1180px,96vw)}.application-type-switch{background:#eef2ef;border-radius:5px;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0;padding:5px;display:grid}.application-type-switch button{min-height:42px;color:var(--muted);background:0 0;border:0;border-radius:4px;font-weight:750}.application-type-switch button.active{color:var(--green);background:#fff;box-shadow:0 1px 5px #1432231f}.import-preview{gap:14px;display:grid}.preview-summary{flex-wrap:wrap;gap:8px;display:flex}.preview-summary span{border:1px solid var(--line);background:#f8faf8;border-radius:4px;min-width:110px;padding:9px 11px;font-size:12px}.preview-summary strong{margin-right:4px;font-size:17px}.preview-summary .preview-valid{color:var(--green);border-color:#a9cdb8}.preview-summary .preview-warning{color:#860;border-color:#d9c68f}.preview-summary .preview-error{color:var(--red);border-color:#e4aaa4}.import-blocker{color:var(--red);background:#fff1ef;border:1px solid #e2aaa4;border-radius:4px;align-items:center;gap:9px;padding:10px 12px;font-size:12px;display:flex}.preview-table-wrap{border:1px solid var(--line);max-height:42vh;overflow:auto}.preview-table{border-collapse:collapse;width:max-content;min-width:100%;font-size:11px}.preview-table th{z-index:1;color:#fff;text-align:left;white-space:nowrap;background:#24312c;padding:8px;position:sticky;top:0}.preview-table td{border-right:1px solid var(--line);border-bottom:1px solid var(--line);vertical-align:top;max-width:190px;padding:8px}.preview-table td small{color:var(--red);margin-top:3px;font-weight:750;display:block}.preview-table .invalid-cell{outline-offset:-1px;background:#fff0ee;outline:1px solid #df8e85}.preview-table .duplicate-row td{background:#fff8df}.overflow-approval{background:#fff8df;border:1px solid #d8be70;border-radius:4px;align-items:flex-start;gap:10px;padding:12px;display:flex}.overflow-approval input{margin-top:3px}.overflow-approval span{gap:3px;display:grid}.overflow-approval small{color:#78652d}.participant-editor{width:min(760px,96vw)}.participant-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:16px 0;display:grid}.participant-form-grid label{color:var(--muted);gap:6px;font-size:11px;font-weight:750;display:grid}.participant-form-grid input,.participant-form-grid select{width:100%}.demo-data-grid{grid-template-columns:minmax(0,1.45fr) minmax(300px,.75fr);gap:16px;max-width:1120px;margin:0 auto;display:grid}.demo-data-grid .settings-card{width:100%;margin:0}.demo-actions-column{align-content:start;gap:16px;display:grid}.demo-results-card{align-content:start;gap:10px;padding:22px;display:grid}.demo-results-card h2{margin:0}.demo-results-card p{color:var(--muted);margin:0 0 4px;font-size:12px;line-height:1.45}.demo-results-card .secondary-button{justify-content:center;width:100%}.demo-results-card .secondary-button:disabled{cursor:not-allowed;opacity:.45}.demo-results-card>small{color:var(--muted);font-size:11px}.demo-set-list{display:grid}.demo-set-list>div{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;min-height:58px;padding:10px 20px;display:flex}.demo-set-list span{gap:3px;display:grid}.demo-set-list small{color:var(--muted)}.danger-outline-button{min-height:36px;color:var(--red);background:#fff;border:1px solid #d9aaa4;border-radius:4px;align-items:center;gap:7px;padding:0 11px;font-weight:750;display:flex}.danger-action-button{color:#a3372d;background:#fff0ee;border:1px solid #b64f45;border-radius:4px;justify-content:center;align-items:center;gap:8px;min-height:44px;margin:16px 20px 20px;padding:0 15px;font-weight:800;display:flex}.danger-outline-button:disabled,.danger-action-button:disabled{cursor:not-allowed;opacity:.4}.demo-seed-card{flex-direction:column;align-items:flex-start;padding:22px;display:flex}.demo-seed-card h2{margin:12px 0 8px}.demo-seed-card p{color:var(--muted);margin:0 0 18px;font-size:13px;line-height:1.5}.demo-seed-card>.primary-action{justify-content:center;width:100%}.demo-seed-card>.primary-action:disabled{cursor:not-allowed;opacity:.45}.demo-seed-card>small{color:var(--red);margin-top:9px}.demo-total{align-items:baseline;gap:8px;margin:auto 0 18px;display:flex}.demo-total strong{font-size:32px}.demo-total span{color:var(--muted);font-size:12px}.category-settings{border:1px solid var(--line);background:#fff;width:100%;margin:0 auto}.category-settings-head{align-items:center;padding:11px 13px}.category-settings-head>div:last-child{flex-wrap:wrap;justify-content:flex-end;gap:5px;display:flex}.category-settings-head button{justify-content:center;align-items:center;gap:5px;min-height:32px;padding:0 9px;font-size:11px;display:flex}.category-lock-note{color:#9b3c31;background:#fff1ef;border-top:1px solid #e0b0aa;border-bottom:1px solid #e0b0aa;padding:10px 20px;font-size:12px}.category-config-table{min-width:1080px;overflow:auto}.category-config-head,.category-config-row{grid-template-columns:minmax(145px,1.2fr) 92px 122px 58px repeat(3,minmax(126px,1fr)) 30px;align-items:center;gap:6px;padding:5px 8px;display:grid}.category-config-head{border-top:1px solid var(--line);border-bottom:1px solid var(--line);min-height:30px;color:var(--muted);text-transform:uppercase;background:#eef2ef;font-size:9px;font-weight:850}.category-config-head .bronze-label{color:#9b633d}.category-config-head .silver-label{color:#6f7975}.category-config-head .gold-label{color:#9a7600}.category-config-row{border-bottom:1px solid var(--line);min-height:48px}.category-config-row>label{gap:1px;min-width:0;display:grid}.category-config-row>label small{color:var(--muted);font-size:8px}.category-config-row input,.category-config-row select{width:100%;min-width:0;min-height:30px;padding:0 6px;font-size:11px}.range-inputs{grid-template-columns:1fr 8px 1fr;align-items:center;gap:2px;display:grid}.range-inputs span{color:#9aa39e;text-align:center;font-size:9px}.category-delete{width:30px;height:30px;min-height:30px;color:var(--red);padding:0}.category-delete:disabled{cursor:not-allowed;opacity:.35}.finalist-count-input{text-align:center;color:var(--green);font-weight:800}.category-help{color:#7e6720;background:#f8faf8;align-items:flex-start;gap:7px;padding:8px 11px;display:flex}.category-help>svg{width:15px;height:15px}.category-help>span{gap:2px;display:grid}.category-help strong{font-size:11px}.category-help small{color:var(--muted);font-size:9px;line-height:1.3}.category-preview{gap:10px;margin-top:16px;display:grid}.category-preview>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid}.category-preview>div span{background:#f4f7f5;justify-content:space-between;gap:12px;padding:8px 10px;font-size:11px;display:flex}.category-preview ul{max-height:130px;color:var(--muted);margin:0;padding-left:20px;font-size:11px;line-height:1.6;overflow:auto}.finisher-medal{flex-direction:column;align-items:center;gap:1px;width:max-content;font-weight:800;display:inline-flex}.finisher-medal small{text-transform:uppercase;font-size:8px}.finisher-medal.gold{color:#b68a00}.finisher-medal.silver{color:#75817c}.finisher-medal.bronze{color:#a86538}.score-strip .finisher-medal{margin:0 auto}.score-strip .finisher-medal svg{width:28px;height:28px}.participant-finalist-note{background:var(--green-soft);color:var(--green);border:1px solid #b8d4c4;align-items:center;gap:7px;margin:12px 0 18px;padding:10px 12px;font-size:11px;font-weight:750;display:flex}.final-hero{border:1px solid var(--line);background:#fff;align-items:flex-start;gap:16px;max-width:none;margin:0 0 18px;padding:22px;display:flex}.final-hero h1{margin:3px 0 8px;font-size:25px}.final-hero p{max-width:720px;color:var(--muted);margin:0;font-size:13px;line-height:1.5}.final-stage-icon{width:54px;height:54px;color:var(--green);background:#eef2ef;border-radius:6px;flex:none;place-items:center;display:grid}.final-stage-icon.final{color:#947000;background:#fff1c7}.final-stage-icon.completed{background:var(--green);color:#fff}.final-progress{border:1px solid var(--line);background:#fff;max-width:980px;margin:0 auto 14px;padding:16px 20px}.final-progress>span{align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.final-progress strong{font-size:19px}.final-progress small{color:var(--muted)}.final-progress>div{background:#e5eae6;border-radius:8px;height:7px;overflow:hidden}.final-progress i{background:var(--green);height:100%;transition:width .2s;display:block}.qualification-category-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;max-width:980px;margin:0 auto;display:grid}.qualification-category{border:1px solid var(--line);background:#fff;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;min-height:72px;padding:12px 14px;display:grid}.qualification-category.confirmed{background:#f5fbf7;border-color:#9fc7b0}.qualification-category>div{gap:4px;display:grid}.qualification-category small{color:var(--muted);font-size:10px}.qualification-status-icon{color:#b7862b}.qualification-category.confirmed .qualification-status-icon{color:var(--green)}.qualification-category button{min-height:34px}.qualification-category-actions{align-items:center;gap:6px;display:flex}.qualification-category-actions button{white-space:nowrap}.final-start-card,.final-snapshot-card{background:#f5fbf7;border:1px solid #9fc7b0;max-width:980px;margin:16px auto 0;padding:20px}.final-start-card{justify-content:space-between;align-items:center;gap:18px;display:flex}.final-start-card>span{color:var(--green);align-items:center;gap:12px;display:flex}.final-start-card>span>span{gap:4px;display:grid}.final-start-card small{color:var(--muted)}.final-start-card button:disabled{cursor:not-allowed;opacity:.45}.final-snapshot-card>div:first-child{grid-template-columns:repeat(3,1fr);display:grid}.final-snapshot-card>div:first-child>span{border-right:1px solid #c9ddcf;gap:4px;padding:12px 18px;display:grid}.final-snapshot-card>div:first-child>span:last-child{border-right:0}.final-snapshot-card strong{font-size:24px}.final-snapshot-card small{color:var(--muted)}.final-stage-actions{border-top:1px solid #c9ddcf;justify-content:flex-end;gap:10px;margin-top:20px;padding-top:18px;display:flex}.final-loading{border:1px solid var(--line);max-width:980px;color:var(--muted);background:#fff;margin:0 auto;padding:24px}.snapshot-categories{max-width:980px;margin:24px auto 0}.snapshot-categories>.eyebrow{margin:0 0 10px}.final-workspace{background:#eef1ef;grid-column:2/4;grid-template-columns:300px minmax(720px,1fr);min-width:0;height:100%;display:grid;overflow:hidden}.final-sidebar{border-right:1px solid var(--line);background:#fff;align-content:start;gap:5px;min-height:0;padding:25px 14px;display:grid;overflow:auto}.final-sidebar>.eyebrow{padding:0 10px 10px}.final-sidebar button{color:#53635b;text-align:left;background:0 0;border:1px solid #0000;border-left-width:4px;align-items:center;gap:10px;min-height:48px;padding:9px 11px;font-size:12px;font-weight:800;display:flex}.final-sidebar button:hover{background:#f2f6f3}.final-sidebar button.active{border-color:#d6e2db;border-left-color:var(--green);color:var(--green);background:#eaf4ed}.final-sidebar button:disabled{cursor:not-allowed;opacity:.4}.final-pane>.final-snapshot-card,.final-pane>.final-setup,.final-pane>.snapshot-categories,.final-pane>.final-progress,.final-pane>.qualification-category-list,.final-pane>.final-start-card{max-width:none}.final-pane>.final-snapshot-card,.final-pane>.final-setup,.final-pane>.snapshot-categories{margin-top:0}.final-panel-heading{justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:12px;display:flex}.final-panel-heading h2{margin:4px 0 0;font-size:21px}.final-panel-heading>svg{color:var(--green)}.final-podiums,.final-exports{border:1px solid var(--line);background:#fff;margin-top:18px;padding:20px}.final-podium-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.final-podium-grid article{border:1px solid var(--line);background:#fbfcfb;padding:14px}.final-podium-grid article>div{align-items:center;gap:8px;margin-bottom:10px;display:flex}.final-podium-grid article>div>span{width:34px;height:28px;color:var(--green);background:#e3eee7;border-radius:4px;place-items:center;font-size:10px;font-weight:850;display:grid}.final-podium-grid article>div>strong{font-size:12px}.final-medal{align-items:center;gap:8px;margin:7px 0 0;font-size:11px;display:flex}.final-medal b{border-radius:50%;place-items:center;width:22px;height:22px;font-size:10px;display:grid}.final-medal.place-1 b{color:#786012;background:#f8e6a3}.final-medal.place-2 b{color:#5c6a66;background:#e1e6e5}.final-medal.place-3 b{color:#875332;background:#ecd1bc}.final-medal span{gap:2px;min-width:0;display:grid}.final-medal small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.final-podium-empty{color:var(--muted);text-align:center;border:1px dashed #bcc9c1;padding:24px;font-size:12px}.final-exports p{max-width:540px;color:var(--muted);margin:6px 0 0;font-size:12px;line-height:1.45}.final-exports>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.final-exports button{border:1px solid var(--line);color:#9aa49e;text-align:left;background:#f5f7f5;align-items:center;gap:10px;min-height:62px;padding:11px 13px;display:flex}.final-exports button span{gap:3px;display:grid}.final-exports button small{font-size:10px}.final-exports button:disabled{cursor:not-allowed;opacity:.85}.final-setup{border:1px solid var(--line);background:#fff;max-width:980px;margin:24px auto 0}.final-setup-head{border-bottom:1px solid var(--line);padding:20px}.final-setup-head h2{margin:4px 0 6px;font-size:21px}.final-setup-head p{max-width:650px;color:var(--muted);margin:0;font-size:12px;line-height:1.45}.final-route-overview{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.final-route-overview article{border-right:1px solid var(--line);border-bottom:1px solid var(--line);align-content:center;gap:5px;min-height:70px;padding:11px 14px;display:grid}.final-route-overview article:nth-child(4n){border-right:0}.final-route-overview strong{color:var(--green);font-size:13px}.final-route-overview small{color:var(--muted);font-size:10px;line-height:1.35}.final-category-setup-list{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.final-category-setup{border-right:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:minmax(120px,1fr) auto auto;align-items:center;gap:12px;min-height:114px;padding:14px;display:grid}.final-category-setup:nth-child(2n){border-right:0}.final-category-setup.excluded{background:#f6f7f6}.final-category-title{align-items:center;gap:10px;min-width:0;display:flex}.final-category-title>span{width:40px;height:34px;color:var(--green);background:#e3eee7;border-radius:4px;flex:none;place-items:center;font-size:11px;font-weight:850;display:grid}.excluded .final-category-title>span{color:var(--muted);background:#e5e7e6}.final-category-title>div{gap:4px;min-width:0;display:grid}.final-category-title strong{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.final-category-title small,.final-category-actions small{color:var(--muted);font-size:10px}.final-participation-toggle{color:var(--muted);white-space:nowrap;background:0 0;border:0;align-items:center;gap:6px;padding:0;font-size:9px;font-weight:800;display:flex}.final-participation-toggle i{background:#cfd6d2;border-radius:10px;width:30px;height:17px;position:relative}.final-participation-toggle i:after{content:"";background:#fff;border-radius:50%;width:11px;height:11px;transition:transform .16s;position:absolute;top:3px;left:3px}.final-participation-toggle.active{color:var(--green)}.final-participation-toggle.active i{background:var(--green)}.final-participation-toggle.active i:after{transform:translate(13px)}.final-participation-toggle:disabled{cursor:not-allowed;opacity:.55}.final-route-choice{grid-template-columns:repeat(4,31px);gap:5px;display:grid}.final-route-choice button{color:#53635b;background:#fff;border:1px solid #bcc9c1;border-radius:4px;width:31px;height:31px;min-height:31px;font-size:11px;font-weight:850}.final-route-choice button.active{border-color:var(--green);background:var(--green);color:#fff}.final-route-choice button:disabled{cursor:default}.final-category-actions{grid-column:1/-1;justify-content:space-between;align-items:center;gap:8px;display:flex}.final-category-actions small.ready{color:var(--green);font-weight:800}.final-category-actions button{min-height:31px}.final-results-dialog{background:#fff;flex-direction:column;width:min(1320px,100vw - 40px);height:calc(100vh - 40px);max-height:900px;padding:24px;display:flex;position:relative;overflow:hidden;box-shadow:0 24px 80px #0f241d42}.final-results-dialog h2{flex:none;margin:5px 0 16px;font-size:25px}.final-results-dialog>.eyebrow,.final-results-dialog>.dialog-icon,.final-results-dialog>.dialog-actions{flex:none}.final-results-table-wrap{border:1px solid var(--line);flex:1;min-height:0;overflow:auto}.final-results-table{border-collapse:collapse;width:100%;min-width:1000px;font-size:13px}.final-results-table th{z-index:1;color:var(--muted);text-align:left;text-transform:uppercase;background:#e9eeeb;padding:11px 12px;font-size:10px;position:sticky;top:0}.final-results-table td{border-top:1px solid var(--line);white-space:nowrap;padding:11px 12px}.final-results-table td small{color:var(--muted);margin-top:3px;font-size:10px;display:block}.attempt-kind{font-weight:900}.final-result-editor{background:#f3faf5;border:1px solid #a9cfb9;flex:none;gap:12px;margin-top:16px;padding:16px;display:grid}.final-result-editor>div:first-child{gap:4px;display:grid}.final-result-editor small{color:var(--muted);font-size:11px}.final-attempt-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.final-attempt-fields label{background:#fff;border:1px solid #cddbd1;gap:6px;padding:10px;font-size:11px;display:grid}.final-attempt-fields label>span{color:var(--muted);grid-template-columns:1fr 54px;align-items:center;gap:5px;font-size:10px;display:grid}.final-attempt-fields input{width:54px;min-height:30px;padding:3px 6px}.qualification-review-dialog{background:#fff;width:min(1080px,100vw - 48px);max-height:calc(100vh - 48px);padding:24px;position:relative;overflow:auto;box-shadow:0 24px 80px #0f241d42}.qualification-review-dialog h2{margin:5px 0 16px;font-size:25px}.qualification-review-summary{grid-template-columns:repeat(2,minmax(0,180px));gap:8px;margin-bottom:14px;display:grid}.qualification-review-summary span{background:#f3f6f4;gap:2px;padding:10px 12px;display:grid}.qualification-review-summary strong{font-size:20px}.qualification-review-summary small{color:var(--muted)}.qualification-review-table-wrap{border:1px solid var(--line);max-height:54vh;overflow:auto}.qualification-review-table{border-collapse:collapse;width:100%;font-size:12px}.qualification-review-table th{z-index:1;color:var(--muted);text-align:left;text-transform:uppercase;background:#e9eeeb;padding:9px 10px;font-size:9px;position:sticky;top:0}.qualification-review-table td{border-top:1px solid var(--line);padding:10px}.qualification-review-table tr.review-finalist{background:#eff9f3}.review-finalist-badge{color:var(--green);align-items:center;gap:5px;font-weight:800;display:inline-flex}.qualification-review-empty{color:var(--muted);text-align:center;padding:30px}.qualification-review-dialog .dialog-actions{margin-top:16px}@media (max-width:1000px){.admin-header{grid-template-columns:1fr auto}.admin-title{display:none}.admin-layout{grid-template-columns:190px 330px minmax(430px,1fr);overflow-x:auto}.route-grid{grid-template-columns:repeat(2,minmax(110px,1fr))}.routes-config-pane{min-width:850px}.bulk-points-form{grid-template-columns:minmax(200px,1fr) 100px 100px 120px auto}.demo-data-grid{grid-template-columns:1fr}.clubs-workspace{min-width:1020px}.category-settings{min-width:1120px}.final-pane{min-width:850px}.qualification-category-list{grid-template-columns:1fr}}@media (max-width:700px){.public-header{min-height:76px;padding:12px 16px}.public-header h1{font-size:18px}.public-nav .admin-link{display:none}.public-nav{gap:0}.public-nav>a{font-size:12px}.brand-mark{width:44px;height:44px}.results-shell{width:100%;margin:0 0 40px}.event-meta{white-space:nowrap;margin:0;padding:14px 16px;overflow-x:auto}.results-toolbar{border-radius:0;padding:16px;display:block}.filters{align-items:end;margin-top:15px}.filters label{flex:1;min-width:0}.filters select{width:100%}.results-table{min-width:0}.results-table th{white-space:normal;padding:10px 7px;font-size:9px}.results-table th:first-child{width:58px}.results-table th:nth-child(2){width:60px}.results-table th:nth-child(5){width:50px}.results-table th:nth-child(6){width:62px}.results-table th:last-child{width:28px}.results-table td{height:auto;padding:11px 7px;font-size:13px}.results-table td:last-child{padding-left:2px;padding-right:2px}.results-table td:last-child svg{width:16px}.results-table .club-column{display:none}.athlete-name strong{white-space:normal;line-height:1.25}.athlete-name small{white-space:nowrap;display:block}.bib{min-width:0;min-height:28px;padding:0 5px;font-size:12px}.finalist-badge{gap:2px;font-size:8px}.finalist-badge svg{width:10px}.modal{padding:22px}.score-strip div{padding:10px}.header-actions a,.sync-status{display:none}.admin-header{padding:0 12px}.admin-layout{height:calc(100vh - 66px)}.route-toast{width:calc(100vw - 24px);top:76px;right:12px}.festival-intro{padding:28px 16px}.festival-intro-inner{grid-template-columns:1fr;gap:24px}.festival-intro h2{font-size:28px}.sets-hero{border-radius:0;gap:22px;width:100%;margin:0;padding:28px 16px;display:grid}.sets-hero h2{font-size:28px}.sets-event-facts{grid-template-columns:1fr}.sets-board{border-left:0;border-right:0;border-radius:0;width:100%;margin:0;padding:16px}.sets-summary div{padding:12px}.sets-summary strong{font-size:22px}.festival-facts{grid-template-columns:1fr}.festival-facts span{border-right:0;border-bottom:1px solid var(--line)}.festival-facts span:last-child{border-bottom:0}.category-section{width:calc(100% - 32px);margin-top:26px}.category-heading{display:block}.festival-totals{margin-top:18px}.category-list{grid-template-columns:1fr}.category-link:nth-child(odd){border-right:0}.category-tabs{margin:0;padding:10px 12px}}.festival-page,.sets-page{--black:#0b0806;--coal:#15100c;--stone:#2b241e;--ash:#d9cbb4;--paper:#eee4d1;--muted:#ad9d84;--fire:#c85a20;--fire-dark:#763419;--line:#de9d5647;color:var(--paper);background:var(--black);font-family:Arial,Helvetica,sans-serif}.festival-page:before,.sets-page:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 82% -8%,#76341950,#0000 34%),radial-gradient(circle at 4% 100%,#c85a201f,#0000 28%);position:fixed;inset:0}.festival-page>*,.sets-page>*{z-index:1;position:relative}.festival-page .public-header,.sets-page .public-header{border-bottom:1px solid var(--line);background:#0b0806e8;min-height:86px;padding:15px max(28px,50vw - 640px)}.festival-page .brand-mark,.sets-page .brand-mark{width:48px;height:48px;color:var(--black);letter-spacing:1px;background:linear-gradient(135deg,#e9b45a,#b75b22);border:1px solid #e9a444;border-radius:2px;font-family:Impact,Arial Narrow Bold,sans-serif;font-size:19px}.festival-page .public-header .eyebrow,.sets-page .public-header .eyebrow{color:var(--muted);letter-spacing:1.3px;font-size:9px}.festival-page .public-header h1,.sets-page .public-header h1{color:var(--paper);letter-spacing:.6px;text-transform:uppercase;font-family:Impact,Arial Narrow Bold,sans-serif;font-size:25px;font-weight:400}.festival-page .public-nav,.sets-page .public-nav{gap:24px}.festival-page .public-nav>a,.festival-page .admin-link,.sets-page .admin-link{min-height:38px;color:var(--ash);text-transform:uppercase;letter-spacing:.35px;border:1px solid #0000;align-items:center;padding:0 4px;font-weight:800;display:flex}.festival-page .public-nav>a:hover,.festival-page .admin-link:hover,.sets-page .admin-link:hover{border-color:var(--line);color:#f2b45f}.festival-page .admin-link,.sets-page .admin-link{color:#21160d;background:linear-gradient(135deg,#e4b053,#c58130);border-color:#d2953f;padding:0 14px}.festival-page .admin-link:hover,.sets-page .admin-link:hover{color:#21160d;border-color:#f2c36d}.festival-page .public-results-hero,.sets-page .sets-hero{border:0;border-bottom:1px solid var(--line);width:min(1280px,100% - 48px);min-height:258px;box-shadow:none;background:linear-gradient(104deg,#15100c 0%,#15100cef 58%,#2b241e 100%);border-radius:0;margin:0 auto;padding:54px 58px 42px}.festival-page .public-results-hero>div:first-child,.sets-page .sets-hero>div:first-child{max-width:680px}.festival-page .public-results-hero .eyebrow,.sets-page .sets-hero .eyebrow{color:#e6a046;letter-spacing:1.4px;font-size:11px}.festival-page .public-results-hero h2,.sets-page .sets-hero h2{max-width:790px;color:var(--paper);letter-spacing:.5px;text-transform:uppercase;font-family:Impact,Arial Narrow Bold,sans-serif;font-size:clamp(42px,6.4vw,78px);font-weight:400;line-height:.94}.festival-page .public-results-hero p,.sets-page .sets-hero p{max-width:530px;color:var(--ash);font-size:16px;line-height:1.55}.festival-page .public-event-facts,.sets-page .sets-event-facts{grid-template-columns:1fr;gap:8px;min-width:235px}.festival-page .public-event-facts span,.sets-page .sets-event-facts span{border-color:var(--line);color:var(--ash);background:#0b080650}.festival-page .public-event-facts svg,.sets-page .sets-event-facts svg{color:#e6a046}.festival-page .public-results-board,.sets-page .sets-board{background:0 0;border:0;border-radius:0;width:min(1280px,100% - 48px);margin:0 auto 72px;padding:38px 0 0}.festival-page .discipline-title{border-bottom:1px solid var(--line);gap:14px;padding:0 0 26px}.festival-page .discipline-title>span{border:1px solid var(--line);background:var(--coal);color:#e6a046;border-radius:0;width:54px;height:54px}.festival-page .public-totals{gap:8px}.festival-page .public-totals span{border:1px solid var(--line);background:var(--coal);color:var(--muted);border-radius:0}.festival-page .public-totals svg,.festival-page .public-totals b{color:#e6a046}.festival-page .public-stage-flow{border-color:var(--line);background:linear-gradient(90deg,#15100c,#2b241e);gap:18px;margin:25px 0 48px;padding:17px 20px}.festival-page .public-stage>span{color:var(--ash);background:#40362d;border-radius:2px}.festival-page .public-stage.active>span{background:var(--fire);color:#fff6e8}.festival-page .public-stage strong{color:var(--paper)}.festival-page .public-stage small{color:var(--muted)}.festival-page .public-category-heading h2{font-size:42px}.festival-page .public-category-heading p{color:var(--muted)}.festival-page .public-category-card{border-color:var(--line);min-height:100px;color:var(--paper);background:linear-gradient(120deg,#15100c,#2b241e)}.festival-page .category-card-icon{border:1px solid var(--line);color:#e6a046;text-transform:uppercase;background:#0b0806;min-width:60px;min-height:56px;font-family:Impact,Arial Narrow Bold,sans-serif;font-size:12px}.festival-page .category-card-main small{color:var(--muted)}.festival-page .empty-state,.sets-page .empty-state{color:var(--muted)}.festival-page .error-banner,.sets-page .error-banner{color:#f3b29a;background:#31150f;border-color:#b94929}.sets-page .sets-board{padding-top:34px}.sets-page .sets-summary{border-color:var(--line);margin-bottom:26px}.sets-page .sets-summary strong{color:#edb35a;letter-spacing:.6px;font-family:Impact,Arial Narrow Bold,sans-serif;font-size:38px;font-weight:400}.sets-page .sets-table-wrap{border-color:var(--line);background:var(--coal)}.sets-page .sets-table th{color:#d9cbb4;border-bottom:1px solid var(--line);background:#2b241e}.sets-page .sets-table td{border-color:var(--line);color:var(--paper)}.sets-page .set-load i.busy{background:#d79837}.sets-page .set-load i.full,.sets-page .set-load i.overflow{background:#b74729}.sets-page .set-status{color:#e6b56d;background:#2c251d;border:1px solid #715638;border-radius:0}.sets-page .set-status.busy{color:#f0bd5f;background:#3c2b16}.sets-page .set-status.full,.sets-page .set-status.overflow{color:#f1a08d;background:#3c1a13}@media (max-width:720px){.festival-page .public-header,.sets-page .public-header{gap:10px;min-height:72px;padding:12px 16px}.festival-page .brand-mark,.sets-page .brand-mark{width:38px;height:38px;font-size:15px}.festival-page .public-header h1,.sets-page .public-header h1{font-size:17px}.festival-page .public-nav{gap:5px}.festival-page .public-nav>a:not(.admin-link){display:none}.festival-page .admin-link,.sets-page .admin-link{margin-left:auto;padding:0 9px;font-size:10px}.festival-page .public-results-hero,.sets-page .sets-hero{gap:24px;width:100%;min-height:0;padding:38px 18px 28px;display:grid}.festival-page .public-results-hero h2,.sets-page .sets-hero h2{font-size:44px}.festival-page .public-event-facts,.sets-page .sets-event-facts{min-width:0}.festival-page .public-results-board,.sets-page .sets-board{width:100%;margin-bottom:40px;padding:28px 16px 0}.festival-page .discipline-title{align-items:flex-start}.festival-page .public-totals{display:none}.festival-page .public-stage-flow{gap:12px;margin-bottom:34px;display:grid}.festival-page .public-stage-flow>svg{display:none}.festival-page .public-category-heading{gap:10px;display:grid}.festival-page .public-category-heading h2{font-size:34px}.festival-page .public-category-grid,.sets-page .sets-summary{grid-template-columns:1fr}.sets-page .sets-summary div{border-right:0;border-bottom:1px solid var(--line)}.sets-page .sets-summary div:last-child{border-bottom:0}}:is(html:has(.festival-page),body:has(.festival-page),html:has(.sets-page),body:has(.sets-page)){background:#0b0806}.festival-page,.sets-page{min-height:100vh;overflow:hidden}.public-header-status{color:var(--muted);text-transform:uppercase;white-space:nowrap;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.public-header-status svg{color:var(--fire)}.festival-page .public-results-board,.sets-page .sets-board{margin-bottom:0;padding:22px 0 56px}.festival-page .discipline-title{min-height:54px;padding:0 0 14px}.festival-page .discipline-title>span{width:38px;height:38px}.festival-page .discipline-title>span svg{width:20px}.festival-page .discipline-title .eyebrow{font-size:8px}.festival-page .discipline-title h2{margin-top:1px;font-size:25px}.festival-page .public-totals span{padding:6px 8px;font-size:10px}.festival-page .public-totals b{font-size:13px}.festival-page .public-stage-flow{gap:11px;min-height:48px;margin:14px 0 22px;padding:9px 12px}.festival-page .public-stage{gap:7px;min-width:0}.festival-page .public-stage>span{width:23px;height:23px;font-size:10px}.festival-page .public-stage strong{font-size:12px}.festival-page .public-stage small{display:none}.festival-page .public-stage-flow>svg{width:15px}.festival-page .public-category-heading{align-items:center;margin-bottom:12px}.festival-page .public-category-heading h2{margin-top:2px;font-size:31px}.festival-page .public-category-heading p{display:none}.festival-page .public-category-card{min-height:76px;padding:9px}.festival-page .category-card-icon{min-width:46px;min-height:44px;font-size:10px}.festival-page .category-card-main{gap:3px}.festival-page .category-card-main strong{font-size:14px}.festival-page .category-card-main small{font-size:10px}.festival-page .public-category-card>svg{width:18px}.sets-page .sets-summary{margin-bottom:16px}.sets-page .sets-summary div{padding:10px 15px}.sets-page .sets-summary strong{font-size:29px}.sets-page .sets-table td{padding:11px 14px}.sets-page .sets-table th{padding:9px 14px}@media (max-width:720px){.public-header-status{display:none}.festival-page .public-results-board,.sets-page .sets-board{padding:18px 16px 36px}.festival-page .public-stage-flow{margin:12px 0 18px}.festival-page .public-category-heading h2{font-size:28px}.sets-page .sets-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.sets-page .sets-summary div{border-right:1px solid var(--line);border-bottom:0;padding:9px}.sets-page .sets-summary strong{font-size:24px}}.qualification-page{--black:#0b0806;--coal:#15100c;--stone:#2b241e;--ash:#d9cbb4;--paper:#eee4d1;--muted:#ad9d84;--fire:#c85a20;--fire-dark:#763419;--line:#de9d5647;min-height:100vh;color:var(--paper);background:var(--black);overflow:hidden}.qualification-page:before{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle at 92% 0,#76341942,#0000 33%),radial-gradient(circle at 2% 100%,#c85a2019,#0000 30%);position:fixed;inset:0}.qualification-page>*{z-index:1;position:relative}.qualification-page .public-header{border-bottom:1px solid var(--line);background:#0b0806e8;min-height:86px;padding:15px max(28px,50vw - 640px)}.qualification-page .header-back{border-color:var(--line);color:var(--ash);border-radius:0}.qualification-page .header-back:hover{color:#f0b55d;border-color:#d8943f}.qualification-page .brand-mark{width:48px;height:48px;color:var(--black);letter-spacing:1px;background:linear-gradient(135deg,#e9b45a,#b75b22);border:1px solid #e9a444;border-radius:2px;font-family:Impact,Arial Narrow Bold,sans-serif;font-size:19px}.qualification-page .public-header .eyebrow{color:var(--muted);letter-spacing:1.3px;font-size:9px}.qualification-page .public-header h1{color:var(--paper);letter-spacing:.6px;text-transform:uppercase;font-family:Impact,Arial Narrow Bold,sans-serif;font-size:25px;font-weight:400}.qualification-page .public-nav{gap:24px;margin-left:auto}.qualification-page .public-nav>a{min-height:38px;color:var(--ash);text-transform:uppercase;border:1px solid #0000;align-items:center;padding:0 4px;font-size:14px;font-weight:800;text-decoration:none;display:flex}.qualification-page .public-nav>a:hover{border-color:var(--line);color:#f2b45f}.qualification-page .public-header-status{color:var(--muted);text-transform:uppercase;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.qualification-page .public-header-status svg{color:var(--fire)}.qualification-page .category-tabs a{border-color:var(--line);background:var(--coal);min-height:32px;color:var(--ash);border-radius:0}.qualification-page .category-tabs a:hover{color:var(--paper);border-color:#d8943f}.qualification-page .category-tabs a.active{border-color:var(--fire);background:var(--fire);color:#fff5e8}.qualification-page .qualification-heading{border-color:var(--line);background:linear-gradient(100deg,#15100c,#2b241e);border-bottom:0;padding:18px 20px}.qualification-page .qualification-badge{color:#efb359;background:#3b2817;border:1px solid #a96b2c;border-radius:0}.qualification-page .qualification-badge.final{color:#f0bc58;background:#4b2d13;border-color:#c17a27}.qualification-page .icon-button{border-color:var(--line);color:#e6a046;background:#0b080650;border-radius:0}.qualification-page .stage-view-tabs{border-color:var(--line);background:var(--coal);border-bottom:0;padding:8px 12px 0}.qualification-page .stage-view-tabs button{color:var(--muted)}.qualification-page .stage-view-tabs button.active.final{color:#efad47;border-bottom-color:#efad47}.qualification-page .qualification-table-wrap,.qualification-page .final-public-table-wrap{border-color:var(--line);background:var(--coal)}.qualification-page .qualification-table th,.qualification-page .final-public-table th{background:var(--stone);color:var(--ash);border-color:var(--line)}.qualification-page .qualification-table td,.qualification-page .final-public-table td{border-color:var(--line);background:var(--coal);color:var(--paper)}.qualification-page .bib{color:#efb35b;background:#3a2112;border:1px solid #92521f;border-radius:0}.qualification-page .qualification-legend,.qualification-page .empty-state{color:var(--muted)}.qualification-page .finisher-medal.gold{color:#edb35a}.qualification-page .finisher-medal.silver{color:#d4c8b6}.qualification-page .finisher-medal.bronze{color:#d68b54}.qualification-page .modal-backdrop{background:#050302b8}.qualification-page .modal{border:1px solid var(--line);background:var(--coal);color:var(--paper);border-radius:0}.qualification-page .modal-close{border:1px solid var(--line);background:var(--stone);color:var(--paper);border-radius:0}.qualification-page .score-strip{border-color:var(--line)}.qualification-page .route-list,.qualification-page .route-list>div{border-color:var(--line)}.qualification-page .public-waiting{border-color:var(--line);background:#20160f}.qualification-page .error-banner{color:#f3b29a;background:#31150f;border-color:#b94929}.qualification-page .participant-detail-backdrop{z-index:1000;justify-content:center;align-items:center;padding:24px;display:flex;overflow:auto}.qualification-page .participant-detail-modal{width:min(620px,100vw - 48px);max-height:calc(100vh - 48px);margin:auto;overflow:auto}@media (max-width:720px){.qualification-page .public-header{gap:9px;min-height:72px;padding:12px 16px}.qualification-page .header-back{width:34px;height:34px}.qualification-page .brand-mark{width:38px;height:38px;font-size:15px}.qualification-page .public-header h1{font-size:17px}.qualification-page .public-header-status{display:none}.qualification-page .public-nav{gap:0}.qualification-page .public-nav>a{padding:0;font-size:11px}.qualification-page .qualification-shell{width:100%;padding:16px 0 36px}.qualification-page .category-tabs{margin:0 12px 12px}.qualification-page .qualification-heading{padding:15px 16px}.qualification-page .qualification-heading h2{font-size:29px}.qualification-page .qualification-heading p{font-size:11px}.qualification-page .qualification-table-wrap,.qualification-page .final-public-table-wrap{border-left:0;border-right:0}.qualification-page .qualification-legend{padding:0 16px}.qualification-page .participant-detail-backdrop{padding:12px}.qualification-page .participant-detail-modal{width:calc(100vw - 24px);max-height:calc(100vh - 24px);padding:20px}.grade-points-groups{grid-template-columns:1fr 1fr}.grade-points-groups article:nth-child(2){border-right:0}.grade-points-groups article:nth-child(-n+2){border-bottom:1px solid #cbd8d0}}.applications-section{scrollbar-gutter:stable;background:#f7f8f7;grid-column:2/-1;min-width:0;padding:26px 30px 50px;overflow:auto}.applications-head{border:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px;padding:16px 18px;display:flex}.applications-head h1{margin:4px 0 3px;font-size:25px}.applications-head p{color:var(--muted);margin:0;font-size:13px}.applications-count{background:var(--green-soft);color:var(--green);align-items:center;gap:7px;padding:8px 11px;font-size:13px;font-weight:850;display:flex}.applications-table-wrap{border:1px solid var(--line);background:#fff;overflow:auto}.applications-table{border-collapse:collapse;width:100%;min-width:900px}.applications-table th{color:var(--muted);text-align:left;text-transform:uppercase;background:#e9eeeb;padding:8px 10px;font-size:10px}.applications-table td{border-top:1px solid var(--line);vertical-align:middle;padding:9px 10px;font-size:12px;line-height:1.3}.applications-table td>strong,.applications-table td>small{display:block}.applications-table td small{color:var(--muted);margin-top:3px;font-size:10px}.application-status{color:#936c16;text-transform:uppercase;white-space:nowrap;background:#fff1d3;padding:4px 7px;font-size:10px;font-weight:850;display:inline-flex}.application-status.imported{background:var(--green-soft);color:var(--green)}.application-actions{white-space:nowrap;align-items:center;gap:5px;display:flex}.application-actions button{border:1px solid var(--line);white-space:nowrap;cursor:pointer;background:#fff;justify-content:center;align-items:center;gap:5px;min-height:32px;padding:4px 8px;font-size:12px;font-weight:800;display:inline-flex}.application-actions button.primary{border-color:var(--green);background:var(--green);color:#fff}.application-actions button.danger{width:32px;color:var(--red);padding:4px}.application-actions button:disabled{opacity:.45;cursor:not-allowed}.applications-empty{border:1px solid var(--line);min-height:220px;color:var(--muted);text-align:center;background:#fff;place-items:center;gap:7px;padding:30px;display:grid}.applications-empty strong{color:var(--ink)}.admin-page,.admin-page button,.admin-page input:not([type=checkbox]):not([type=radio]),.admin-page select,.admin-page textarea{font-size:var(--ui-text-md)}.admin-page small{font-size:var(--ui-text-sm);line-height:1.35}.admin-page .pane-toolbar p,.admin-page .config-header p,.admin-page .settings-header p,.admin-page .clubs-pane-head p,.admin-page .club-detail-head p,.admin-page .applications-head p,.admin-page .final-hero p,.admin-page .settings-card-head p,.admin-page .demo-results-card p{font-size:var(--ui-text-sm)}.admin-page .sidebar-heading,.admin-page .eyebrow,.admin-page th,.admin-page .users-head,.admin-page .audit-head,.admin-page label>span:first-child,.admin-page .club-bulk-actions>span,.admin-page .category-config-head,.admin-page .club-member-row.table-head{font-size:var(--ui-text-xs)}.admin-page .participant-row,.admin-page .club-list-item,.admin-page .club-member-row:not(.table-head),.admin-page .applications-table td,.admin-page .user-row,.admin-page .audit-row{font-size:var(--ui-text-md)}.admin-page .club-selection-note,.admin-page .club-member-search>span,.admin-page .club-bulk-actions button,.admin-page .edit-club-button,.admin-page .application-actions button,.admin-page .status-chip,.admin-page .route-card-save{font-size:var(--ui-text-sm)}.admin-page .route-sort,.admin-page .route-status,.admin-page .route-config-card label,.admin-page .category-config-row>label small,.admin-page .final-participation-toggle,.admin-page .final-route-choice button{font-size:var(--ui-text-xs)}.admin-page .route-config-card.compact{gap:4px;padding:5px}.admin-page .route-config-card.compact select{min-height:30px;font-size:12px}.admin-page .route-config-card.compact .route-points-readonly strong{font-size:12px}.admin-page .routes-filter-row input,.admin-page .routes-filter-row select{min-height:32px;font-size:12px}.admin-page .applications-head h1{font-size:25px}.admin-page .applications-head p{font-size:13px}.admin-page .applications-table td{font-size:12px}.admin-page .applications-table td small{font-size:10px}.admin-page .application-actions button{min-height:32px;font-size:12px}.admin-page .category-settings-head button{min-height:32px;font-size:11px}.admin-page .category-config-row input,.admin-page .category-config-row select{min-height:30px;font-size:11px}.admin-page .category-config-row>label small{font-size:8px}.judge-page,.judge-login{color:#15221c;background:#f1f3f2;min-height:100vh;font-family:Arial,sans-serif}.judge-header{color:#fff;background:#173d2c;align-items:center;gap:14px;min-height:72px;padding:10px max(20px,50vw - 520px);display:flex}.judge-route-mark{color:#173d2c;background:#fff;flex:none;place-items:center;width:48px;height:48px;font-size:23px;font-weight:900;display:grid}.judge-header>div:nth-child(3){gap:2px;display:grid}.judge-header span{color:#b9d2c5;font-size:12px}.judge-header strong{font-size:19px}.judge-header-user{align-items:center;gap:12px;margin-left:auto;display:flex}.judge-header-user button{color:#fff;cursor:pointer;background:0 0;border:1px solid #fff5;place-items:center;width:42px;height:42px;display:grid}.judge-shell{width:min(1040px,100% - 32px);margin:0 auto;padding:22px 0 50px}.judge-notice,.judge-error{color:#195b3d;background:#e0f5ea;border:1px solid #9dcbb4;margin-bottom:14px;padding:13px 15px;font-weight:750}.judge-notice{align-items:center;gap:9px;display:flex}.judge-error{color:#8c2f20;background:#fff0ed;border-color:#e1a79b}.judge-offline{color:#805a13;text-align:center;background:#fff4d8;border:1px solid #d7a038;margin-bottom:14px;padding:12px 15px;font-weight:850}.judge-search{align-items:center;gap:16px;margin-bottom:14px;display:flex}.judge-search label{background:#fff;border:2px solid #aebbb4;flex:1;align-items:center;gap:12px;min-height:58px;padding:0 16px;display:flex}.judge-search input{border:0;outline:0;width:100%;font-size:20px}.judge-search>span{color:#52645b;font-size:13px;font-weight:750}.judge-participants{gap:8px;display:grid}.judge-participants>button{text-align:left;cursor:pointer;background:#fff;border:1px solid #c5ceca;grid-template-columns:58px 1fr auto;align-items:center;gap:14px;min-height:68px;padding:9px 14px;display:grid}.judge-participants>button:hover:not(:disabled){border-color:#1f6a49}.judge-participants>button.locked{color:#6e7b74;cursor:default;background:#e8ecea}.judge-participants>button.pending{background:#fff8e6;border-color:#d6a43d}.judge-participants>button.pending .judge-row-status{color:#8a6417}.judge-participants>button>span:nth-child(2){gap:4px;display:grid}.judge-participants small{color:#68776f}.judge-row-status{color:#276746;text-transform:uppercase;align-items:center;gap:6px;font-size:12px;font-weight:850;display:flex}.judge-bib{color:#fff;background:#173d2c;place-items:center;min-width:48px;height:48px;font-size:19px;font-weight:900;display:grid}.judge-bib.large{width:76px;height:76px;font-size:30px}.judge-card{background:#fff;border:1px solid #bcc8c1}.judge-athlete{border-bottom:1px solid #d4dcd8;align-items:center;gap:17px;padding:18px;display:flex}.judge-athlete>button{color:#30684f;cursor:pointer;background:0 0;border:0;align-self:flex-start;font-weight:800}.judge-athlete h1{margin:0 0 5px;font-size:26px}.judge-athlete p{color:#64736b;margin:0}.judge-attempt{place-items:center;gap:2px;padding:18px 0 8px;display:grid}.judge-attempt span{color:#69776f;text-transform:uppercase;font-size:13px;font-weight:800}.judge-attempt strong{font-size:70px;line-height:1}.judge-actions{grid-template-columns:repeat(3,1fr);gap:12px;padding:18px;display:grid}.judge-actions button{color:#fff;cursor:pointer;border:0;min-height:112px;font-size:24px;font-weight:950}.judge-actions .attempt{background:#40554a}.judge-actions .zone{background:#d18b18}.judge-actions .top{background:#16824f}.judge-actions button:disabled{opacity:.35;cursor:not-allowed}.judge-summary,.judge-confirm-grid{border-top:1px solid #d5ddd9;border-bottom:1px solid #d5ddd9;grid-template-columns:repeat(4,1fr);display:grid}.judge-summary>div,.judge-confirm-grid>span{border-right:1px solid #d5ddd9;place-items:center;gap:4px;padding:15px;display:grid}.judge-summary>div:last-child,.judge-confirm-grid>span:last-child{border-right:0}.judge-summary span,.judge-confirm-grid span{color:#65746c;text-transform:uppercase;font-size:12px;font-weight:800}.judge-summary strong,.judge-confirm-grid strong{color:#183d2c;font-size:27px;display:block}.judge-controls{grid-template-columns:1fr 1fr;gap:12px;padding:18px;display:grid}.judge-controls button{cursor:pointer;background:#fff;border:1px solid #8d9b94;justify-content:center;align-items:center;gap:8px;min-height:58px;font-size:15px;font-weight:850;display:flex}.judge-controls .judge-save{color:#fff;background:#176a45;border-color:#176a45}.judge-controls button:disabled{opacity:.4;cursor:not-allowed}.judge-locked-note{color:#236244;text-align:center;background:#e5f3eb;border:1px solid #9ac5ae;justify-content:center;align-items:center;gap:9px;margin:18px;padding:15px;font-weight:800;display:flex}.judge-pending-note{color:#805b16;text-align:center;background:#fff4d5;border:1px solid #d6a43d;margin:18px;padding:15px;font-weight:850}.judge-empty{color:#627168;background:#fff;border:1px solid #cbd3cf;align-content:center;place-items:center;gap:7px;min-height:180px;display:grid}.judge-login{place-items:center;padding:24px;display:grid}.judge-login>section{background:#fff;border:1px solid #b8c4bd;width:min(440px,100%);padding:30px}.judge-login .judge-route-mark{color:#fff;background:#173d2c}.judge-login h1{margin:16px 0 5px}.judge-login p{color:#65746c;margin:0 0 20px}.judge-login form,.judge-login label{gap:7px;display:grid}.judge-login form{gap:14px}.judge-login input{border:1px solid #aebbb4;min-height:48px;padding:0 12px;font-size:16px}.judge-login form button{color:#fff;cursor:pointer;background:#176a45;border:0;min-height:50px;font-weight:850}.judge-login>a{color:#276749;margin-top:18px;display:inline-block}.brand-logo{box-sizing:border-box;object-fit:contain;-webkit-backdrop-filter:blur(14px)saturate(145%);backdrop-filter:blur(14px)saturate(145%);background:#173d2ce0;border:1px solid #ffffff73;border-radius:12px;flex:none;height:auto;padding:7px 10px;display:block;box-shadow:0 8px 20px #172d2121}.public-brand-logo{width:178px;max-height:48px}.admin-brand-logo{width:134px;max-height:40px}.login-brand-logo{width:240px;max-width:100%;margin:34px 0 20px}.loading-brand-logo{width:190px;max-width:calc(100vw - 48px)}.judge-brand-logo{width:144px;max-height:31px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;border-radius:0;padding:0}@media (max-width:720px){.public-brand-logo{border-radius:10px;width:124px;max-height:35px;padding:5px 7px}.judge-brand-logo{width:112px;max-height:25px;padding:0}}@media (max-width:700px){.judge-header{padding:10px 14px}.judge-header-user>span{display:none}.judge-shell{width:calc(100% - 20px);padding-top:12px}.judge-search{display:grid}.judge-search>span{padding:0 3px}.judge-participants>button{grid-template-columns:50px 1fr}.judge-row-status{grid-column:2}.judge-athlete{grid-template-columns:76px 1fr;display:grid}.judge-athlete>button{grid-column:1/-1}.judge-actions{grid-template-columns:1fr}.judge-actions button{min-height:80px}.judge-summary,.judge-confirm-grid{grid-template-columns:repeat(2,1fr)}.judge-summary>div:nth-child(2),.judge-confirm-grid>span:nth-child(2){border-right:0}.judge-controls{grid-template-columns:1fr}}:is(html:has(.festival-page),body:has(.festival-page),html:has(.sets-page),body:has(.sets-page),html:has(.qualification-page),body:has(.qualification-page)){background:#f5f6f3}.festival-page,.sets-page,.qualification-page{--public-ink:#17201c;--public-muted:#5e6a64;--public-line:#dfe4df;--public-green:#176b4d;--public-green-soft:#e9f4ee;--public-fire:#c85a20;--public-fire-soft:#fff0e7;--black:#f5f6f3;--coal:#fff;--stone:#f3f5f2;--ash:#34443c;--paper:#17201c;--muted:#5e6a64;--fire:#c85a20;--line:#dfe4df;min-height:100vh;color:var(--public-ink);font-optical-sizing:auto;background:radial-gradient(circle at 92% 0,#c85a2014,#0000 26rem),radial-gradient(circle at 0 92%,#176b4d12,#0000 30rem),#f5f6f3;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.festival-page:before,.sets-page:before,.qualification-page:before{display:none}.festival-page a,.sets-page a,.qualification-page a,.festival-page button,.sets-page button,.qualification-page button{transition:background-color .2s,border-color .2s,color .2s,box-shadow .24s,transform .12s,opacity .2s}.festival-page a:active,.sets-page a:active,.qualification-page a:active,.festival-page button:active,.sets-page button:active,.qualification-page button:active{transition-duration:80ms;transform:scale(.98)}.festival-page a:focus-visible,.sets-page a:focus-visible,.qualification-page a:focus-visible,.festival-page button:focus-visible,.sets-page button:focus-visible,.qualification-page button:focus-visible{outline-offset:3px;outline:3px solid #c85a2047}.festival-page .public-header,.sets-page .public-header,.qualification-page .public-header{z-index:20;min-height:78px;color:var(--public-ink);-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);background:#ffffffd1;border:0;border-bottom:1px solid #d7ded9e6;padding:12px max(24px,50vw - 640px);position:sticky;top:0;box-shadow:0 8px 30px #182a210d}.festival-page .brand-mark,.sets-page .brand-mark,.qualification-page .brand-mark{color:#173d2c;letter-spacing:-.02em;background:linear-gradient(145deg,#cde95b,#82bd62);border:0;border-radius:15px;width:48px;height:48px;font-family:inherit;font-size:17px;font-weight:900;box-shadow:inset 0 1px #ffffffa6,0 8px 20px #37694329}.festival-page .public-header .eyebrow,.sets-page .public-header .eyebrow,.qualification-page .public-header .eyebrow{color:#6c7872;letter-spacing:.06em;font-size:10px}.festival-page .public-header h1,.sets-page .public-header h1,.qualification-page .public-header h1{color:var(--public-ink);letter-spacing:-.025em;text-transform:none;margin:2px 0 0;font-family:inherit;font-size:21px;font-weight:780}.festival-page .public-nav>a,.sets-page .public-nav>a,.qualification-page .public-nav>a{color:#355145;text-transform:none;border:1px solid #0000;border-radius:11px;align-items:center;min-height:38px;padding:0 12px;font-size:13px;font-weight:720;text-decoration:none;display:flex}.festival-page .public-nav>a:hover,.sets-page .public-nav>a:hover,.qualification-page .public-nav>a:hover{color:var(--public-green);background:#f5f8f6;border-color:#cfd9d2}.festival-page .public-header-status,.sets-page .public-header-status,.qualification-page .public-header-status{color:#64716a;letter-spacing:.035em;font-size:10px}.festival-page .public-header-status svg,.sets-page .public-header-status svg,.qualification-page .public-header-status svg{color:var(--public-fire)}.qualification-page .header-back{color:#345146;background:#fff;border:1px solid #d5ddd8;border-radius:12px;width:40px;height:40px}.qualification-page .header-back:hover{background:var(--public-green-soft);color:var(--public-green);border-color:#a8c5b3}.festival-page .public-results-board,.sets-page .sets-board{background:#ffffffeb;border:1px solid #dae0dcf2;border-radius:26px;width:min(1180px,100% - 40px);margin:32px auto 60px;padding:30px;box-shadow:0 24px 70px #1b342714}.festival-page .discipline-title{border-bottom:1px solid var(--public-line);min-height:64px;padding:0 0 22px}.festival-page .discipline-title>span{background:var(--public-fire-soft);width:48px;height:48px;color:var(--public-fire);border:0;border-radius:15px}.festival-page .discipline-title .eyebrow,.festival-page .public-category-heading .eyebrow{color:var(--public-green);letter-spacing:.07em}.festival-page .discipline-title h2,.festival-page .public-category-heading h2{color:var(--public-ink);letter-spacing:-.035em;text-transform:none;font-family:inherit;font-weight:790}.festival-page .discipline-title h2{font-size:28px}.festival-page .public-totals span{border:1px solid var(--public-line);color:var(--public-muted);background:#f7f9f7;border-radius:12px}.festival-page .public-totals svg{color:var(--public-fire)}.festival-page .public-totals b{color:var(--public-ink)}.festival-page .public-stage-flow{border:1px solid var(--public-line);background:linear-gradient(120deg,#f7faf8,#fff8f3);border-radius:18px;gap:14px;min-height:68px;margin:22px 0 34px;padding:14px 18px}.festival-page .public-stage-flow>svg{color:#9aa69f}.festival-page .public-stage>span{color:#65736c;background:#e3e8e4;border-radius:10px;width:30px;height:30px}.festival-page .public-stage.active>span{background:var(--public-green);color:#fff;box-shadow:0 6px 15px #176b4d2e}.festival-page .public-stage strong{color:var(--public-ink);font-size:13px}.festival-page .public-stage small{color:var(--public-muted);display:block}.festival-page .public-category-heading{margin-bottom:18px}.festival-page .public-category-heading h2{margin-top:3px;font-size:34px;line-height:1.08}.festival-page .public-category-heading p{color:var(--public-muted);display:block}.festival-page .public-category-grid{gap:12px}.festival-page .public-category-card{border:1px solid var(--public-line);min-height:88px;color:var(--public-ink);background:#fff;border-radius:18px;padding:13px 15px;box-shadow:0 6px 18px #1f362a09}.festival-page .public-category-card:hover{background:#fff;border-color:#a8c5b3;transform:translateY(-2px);box-shadow:0 16px 34px #1b432d1c}.festival-page .public-category-card.final-open{background:linear-gradient(120deg,#fff,#fff8f3);border-color:#e7bea7}.festival-page .category-card-icon{background:var(--public-green-soft);min-width:56px;min-height:54px;color:var(--public-green);text-transform:none;border:0;border-radius:14px;font-family:inherit;font-size:11px}.festival-page .category-card-main strong{color:var(--public-ink);font-size:16px}.festival-page .category-card-main small{color:var(--public-muted);font-size:11px}.festival-page .public-category-card>svg{color:var(--public-green)}.category-final-chip{background:var(--public-fire-soft);color:#a64618;white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:6px 9px;font-size:10px;font-weight:800;display:inline-flex}.sets-page .sets-summary{border:1px solid var(--public-line);background:#fff;border-radius:18px;margin-bottom:20px;overflow:hidden}.sets-page .sets-summary div{border-color:var(--public-line);background:#fafbf9}.sets-page .sets-summary small{color:var(--public-muted)}.sets-page .sets-summary strong{color:var(--public-green);letter-spacing:-.03em;font-family:inherit;font-weight:800}.sets-page .sets-table-wrap{border:1px solid var(--public-line);background:#fff;border-radius:18px;overflow:auto}.sets-page .sets-table th{color:#58675f;border-color:var(--public-line);background:#f3f6f3}.sets-page .sets-table td{color:var(--public-ink);border-color:#e7ebe8}.sets-page .sets-table tbody tr:hover{background:#f7faf8}.sets-page .sets-table td small{color:var(--public-muted)}.sets-page .set-load>span{background:#e7ece8;border-radius:999px}.sets-page .set-load i{background:var(--public-green)}.sets-page .set-status{background:var(--public-green-soft);color:var(--public-green);border:0;border-radius:999px}.qualification-page .qualification-shell{width:min(1280px,100% - 40px);margin:24px auto 60px;padding:0}.qualification-page .category-tabs{gap:8px;margin:0 0 14px;padding:4px 1px}.qualification-page .category-tabs a{color:#52645b;background:#ffffffd1;border:1px solid #d8dfda;border-radius:12px;min-height:38px;padding:0 13px;font-weight:720;box-shadow:0 4px 12px #19322408}.qualification-page .category-tabs a:hover{color:var(--public-green);background:#fff;border-color:#aac4b4}.qualification-page .category-tabs a.active{border-color:var(--public-green);background:var(--public-green);color:#fff;box-shadow:0 7px 18px #176b4d2e}.qualification-page .qualification-heading{border:1px solid var(--public-line);background:#fffffff0;border-radius:24px 24px 0 0;padding:24px 26px}.qualification-page .qualification-heading .eyebrow{color:var(--public-green);letter-spacing:.07em}.qualification-page .qualification-heading h2{color:var(--public-ink);letter-spacing:-.035em;text-transform:none;margin:4px 0 8px;font-family:inherit;font-size:34px;font-weight:800}.qualification-page .qualification-heading p{color:var(--public-muted)}.qualification-page .qualification-badge{background:var(--public-green-soft);color:var(--public-green);border:0;border-radius:999px}.qualification-page .qualification-badge.final{background:var(--public-fire-soft);color:#a64618;border:0}.qualification-page .icon-button{color:var(--public-green);background:#fff;border:1px solid #d3dcd6;border-radius:12px}.qualification-page .icon-button:hover{background:var(--public-green-soft);border-color:#a9c5b4}.qualification-page .stage-view-tabs{border:1px solid var(--public-line);background:#fff;border-top:0;border-bottom:0;padding:10px 16px 0}.qualification-page .stage-view-tabs button{color:#65746c;border-radius:10px 10px 0 0;min-height:42px}.qualification-page .stage-view-tabs button:hover{color:var(--public-green);background:#f4f7f5}.qualification-page .stage-view-tabs button.active{border-bottom-color:var(--public-green);color:var(--public-green)}.qualification-page .stage-view-tabs button.active.final{border-bottom-color:var(--public-fire);color:#a64618}.qualification-page .qualification-table-wrap,.qualification-page .final-public-table-wrap{border:1px solid var(--public-line);background:#fff;border-radius:0 0 24px 24px;overflow:auto;box-shadow:0 18px 50px #19352612}.qualification-page .qualification-table th,.qualification-page .final-public-table th{color:#536159;border-color:var(--public-line);letter-spacing:.035em;background:#f3f6f3;font-size:10px}.qualification-page .qualification-table td,.qualification-page .final-public-table td{color:var(--public-ink);background:#fff;border-color:#e7ebe8}.qualification-page .qualification-table tbody tr:hover td,.qualification-page .final-public-table tbody tr:hover td{background:#f7faf8}.qualification-page .qualification-table tr.finalist td{background:#f1f8f4}.qualification-page .qualification-table tr.finalist td:first-child{border-left-color:var(--public-green)}.qualification-page .bib{color:#fff;background:#253b31;border:0;border-radius:10px;box-shadow:inset 0 1px #ffffff1f}.qualification-page .qualification-total strong,.qualification-page .final-score{color:var(--public-green)}.qualification-page .qualification-total small,.qualification-page .route-column small,.qualification-page .final-route-head small{color:var(--public-muted)}.qualification-page .final-route-head span,.qualification-page .route-column span{color:var(--public-ink)}.qualification-page .attempt-top,.qualification-page .attempt-zone{color:#627068;background:#e6ebe7}.qualification-page .attempt-top.filled,.qualification-page .attempt-zone.filled{background:var(--public-fire);color:#fff}.qualification-page .final-public-table tr.waiting-result td{color:#55635c}.qualification-page .final-public-table tr.waiting-result:hover td{background:#fffaf6}.exit-order{background:var(--public-fire-soft);color:#a64618;border-radius:50%;place-items:center;min-width:34px;min-height:34px;font-weight:850;display:inline-grid}.final-start-order-note{color:#713b21;background:#fff7f1;border:1px solid #e8c4af;border-bottom:0;align-items:center;gap:12px;padding:14px 18px;display:flex}.final-start-order-note>svg{color:var(--public-fire);flex:none}.final-start-order-note>div{gap:2px;display:grid}.final-start-order-note strong{font-size:13px}.final-start-order-note span{color:#7b665b;font-size:11px;line-height:1.4}.final-start-order-note+.final-public-table-wrap{border-radius:0 0 24px 24px}.qualification-page .qualification-legend,.qualification-page .empty-state{color:var(--public-muted)}.qualification-page .modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#18201c57}.qualification-page .modal{color:var(--public-ink);background:#fff;border:1px solid #ffffffd9;border-radius:24px;box-shadow:0 30px 90px #12231a38}.qualification-page .modal-close{border:1px solid var(--public-line);color:var(--public-ink);background:#f5f7f5;border-radius:12px}.qualification-page .modal .eyebrow,.qualification-page .modal .muted{color:var(--public-muted)}.qualification-page .score-strip{border-color:var(--public-line);border-radius:16px;overflow:hidden}.qualification-page .score-strip div{border-color:var(--public-line);background:#f7f9f7}.qualification-page .score-strip span{color:var(--public-muted)}.qualification-page .route-list{border-color:var(--public-line);border-radius:16px;overflow:hidden}.qualification-page .route-list>div{border-color:var(--public-line)}.qualification-page .route-number{color:var(--public-fire)}.qualification-page .public-waiting{border-color:var(--public-line);background:#f7f9f7;border-radius:16px}.qualification-page .public-waiting svg{color:var(--public-fire)}.qualification-page .public-waiting p{color:var(--public-muted)}.qualification-page .error-banner{color:#8d3223;background:#fff1ed;border-color:#eccbc1;border-radius:12px}@media (max-width:720px){.festival-page .public-header,.sets-page .public-header,.qualification-page .public-header{min-height:68px;padding:10px 14px}.festival-page .brand-mark,.sets-page .brand-mark,.qualification-page .brand-mark{border-radius:12px;width:40px;height:40px}.festival-page .public-header h1,.sets-page .public-header h1,.qualification-page .public-header h1{font-size:16px}.festival-page .public-results-board,.sets-page .sets-board{border-radius:20px;width:calc(100% - 20px);margin:14px auto 32px;padding:18px}.festival-page .public-stage-flow{margin:15px 0 24px;padding:13px}.festival-page .public-category-heading h2{font-size:28px}.festival-page .public-category-card{border-radius:15px;min-height:78px;padding:11px}.category-final-chip{display:none}.qualification-page .qualification-shell{width:100%;margin-top:14px}.qualification-page .category-tabs{margin:0 12px 12px}.qualification-page .qualification-heading{border-radius:20px 20px 0 0;padding:18px 16px}.qualification-page .qualification-heading h2{font-size:29px}.qualification-page .qualification-table-wrap,.qualification-page .final-public-table-wrap{border-left:0;border-right:0;border-radius:0}.final-start-order-note{border-left:0;border-right:0;margin:0}}@media (prefers-reduced-motion:reduce){.festival-page *,.sets-page *,.qualification-page *{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.festival-page a:active,.sets-page a:active,.qualification-page a:active,.festival-page button:active,.sets-page button:active,.qualification-page button:active{transform:none}}@media (prefers-reduced-transparency:reduce){.festival-page .public-header,.sets-page .public-header,.qualification-page .public-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}.qualification-page .modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-contrast:more){.festival-page,.sets-page,.qualification-page{--public-ink:#090d0b;--public-muted:#39433e;--public-line:#9ca8a1}.festival-page .public-header,.sets-page .public-header,.qualification-page .public-header,.festival-page .public-results-board,.sets-page .sets-board,.qualification-page .qualification-heading{background:#fff}}.festival-page,.sets-page,.qualification-page{--public-muted:#435149}.festival-page small,.sets-page small,.qualification-page small{color:var(--public-muted);font-weight:620;line-height:1.4}.festival-page .eyebrow,.sets-page .eyebrow,.qualification-page .eyebrow,.festival-page th,.sets-page th,.qualification-page th{color:#35443c;font-weight:820}.festival-page .public-header-status,.sets-page .public-header-status,.qualification-page .public-header-status{color:#46554d;font-weight:760}.festival-page .public-nav>a[href=\/sets],.qualification-page .public-nav>a[href=\/sets],.sets-page .public-nav>a[href=\/]{color:#26160d;background:linear-gradient(145deg,#e7a45f,#cf7438);border-color:#d8874b;box-shadow:inset 0 1px #ffffff80,0 7px 18px #a453222b;display:flex!important}.festival-page .public-nav>a[href=\/sets]:hover,.qualification-page .public-nav>a[href=\/sets]:hover,.sets-page .public-nav>a[href=\/]:hover{color:#1d110b;background:linear-gradient(145deg,#efad68,#d97c3e);border-color:#bd642d}.festival-page .category-card-icon{white-space:nowrap;width:72px;min-width:72px;max-width:72px;padding:0 6px}.qualification-page .final-public-table th:first-child{width:58px}.qualification-page .final-public-table th:nth-child(2){width:64px}.qualification-page .final-public-table th:nth-child(3){width:72px;min-width:72px}.qualification-page .final-public-table th:nth-child(4){width:auto;min-width:170px}.qualification-page .final-public-table th:nth-child(5){text-align:left;width:140px;min-width:120px}.qualification-page .final-public-table th:nth-child(6){text-align:center;width:58px;min-width:58px}.qualification-page .final-public-table td{font-weight:540}@media (max-width:720px){.festival-page .category-card-icon{width:62px;min-width:62px;max-width:62px;min-height:48px;padding:0 4px;font-size:10px}.qualification-page .final-start-order-note{padding:11px 12px}.qualification-page .final-start-order-note span{font-size:10px}.qualification-page .final-public-table{table-layout:fixed;width:100%;min-width:476px}.qualification-page .final-public-table th,.qualification-page .final-public-table td{height:45px;padding:4px 3px;font-size:10px;line-height:1.2}.qualification-page .final-public-table th{letter-spacing:.02em;height:42px;font-size:8px}.qualification-page .final-public-table th:first-child{width:30px}.qualification-page .final-public-table th:nth-child(2){width:36px}.qualification-page .final-public-table th:nth-child(3){width:40px;min-width:40px}.qualification-page .final-public-table th:nth-child(4){width:96px;min-width:96px}.qualification-page .final-public-table th:nth-child(5),.qualification-page .final-public-table td:nth-child(5),.qualification-page .final-public-table th:nth-child(6),.qualification-page .final-public-table td:nth-child(6){display:none}.qualification-page .final-public-table th:nth-last-child(2){width:38px;min-width:38px}.qualification-page .final-public-table th:last-child{width:42px;min-width:42px}.qualification-page .final-route-head,.qualification-page .final-attempt-cell{width:28px;min-width:28px;padding:2px!important}.qualification-page .final-route-head span{font-size:11px}.qualification-page .final-route-head small{display:none}.qualification-page .attempt-top,.qualification-page .attempt-zone{width:22px;height:18px;font-size:9px}.qualification-page .bib{border-radius:8px;min-width:30px;min-height:27px;padding:0 3px;font-size:10px}.qualification-page .exit-order{min-width:25px;min-height:25px;font-size:10px}.qualification-page .athlete-name strong{text-overflow:clip;white-space:normal;font-size:10px;line-height:1.2;overflow:visible}.qualification-page .final-counts,.qualification-page .final-score{font-size:10px!important}}.auth-redirect{color:#17201c;background:radial-gradient(circle at 50% 0,#cde95b2e,#0000 24rem),#f4f6f3;place-content:center;justify-items:center;gap:14px;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;display:grid}.auth-redirect .brand-mark{color:#173d2c;background:linear-gradient(145deg,#cde95b,#82bd62);border-radius:16px;box-shadow:0 12px 28px #2e5c3929}.auth-redirect strong{color:#34443c;font-size:14px}.login-page{color:#17201c;background:radial-gradient(circle at 86% 0,#c85a201a,#0000 25rem),radial-gradient(circle at 0 100%,#176b4d17,#0000 28rem),#f4f6f3;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.login-panel{-webkit-backdrop-filter:blur(22px)saturate(150%);backdrop-filter:blur(22px)saturate(150%);background:#fffffff0;border:1px solid #d7dfd9f2;border-radius:28px;width:min(460px,100%);padding:36px;box-shadow:0 30px 90px #18322421}.login-panel .brand-mark{color:#173d2c;background:linear-gradient(145deg,#cde95b,#82bd62);border-radius:16px;margin:34px 0 20px;box-shadow:0 10px 24px #2e5c3929}.login-panel .eyebrow{color:#38594a;letter-spacing:.05em;font-size:11px;font-weight:820}.login-panel h1{color:#141d18;letter-spacing:-.035em;margin:7px 0;font-size:30px;line-height:1.08}.login-panel>p{color:#46554d;font-size:14px;font-weight:570;line-height:1.5}.login-panel label{color:#35443c;letter-spacing:.02em;font-size:12px;font-weight:760}.login-panel input{color:#17201c;border:1px solid #c8d3cc;border-radius:12px;min-height:48px;font-size:15px}.login-panel input:focus{border-color:#2b7b59;box-shadow:0 0 0 4px #176b4d1f}.login-panel .primary-button{background:#176b4d;border-radius:13px;min-height:50px;font-size:15px;box-shadow:0 9px 22px #176b4d33}.login-panel .primary-button:hover{background:#125d42}.login-panel .primary-button:active{transform:scale(.985)}.login-panel .back-link{color:#43574d;font-weight:700}.login-panel .back-link:hover{color:#176b4d}.admin-page{--ink:#17201c;--muted:#46554d;--line:#dce3de;--surface:#fff;--soft:#f4f7f4;--green:#176b4d;--green-soft:#e9f4ee;--red:#b63d32;--ui-radius:11px;color:var(--ink);font-optical-sizing:auto;background:#f3f5f2;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}.admin-page button,.admin-page a,.admin-page input,.admin-page select,.admin-page textarea{transition:background-color .18s,border-color .18s,color .18s,box-shadow .22s,transform .1s,opacity .18s}.admin-page button:active:not(:disabled),.admin-page a:active{transition-duration:70ms;transform:scale(.98)}.admin-page button:focus-visible,.admin-page a:focus-visible,.admin-page input:focus-visible,.admin-page select:focus-visible,.admin-page textarea:focus-visible{outline-offset:2px;outline:3px solid #c85a2040}.admin-page small,.admin-page .muted,.admin-page p{color:var(--muted);font-weight:560;line-height:1.45}.admin-page .eyebrow,.admin-page th,.admin-page .sidebar-heading,.admin-page label{color:#35443c;letter-spacing:.035em;font-weight:800}.admin-header{height:72px;color:var(--ink);-webkit-backdrop-filter:blur(22px)saturate(160%);backdrop-filter:blur(22px)saturate(160%);background:#ffffffe0;border-bottom:1px solid #d7dfdaf2;grid-template-columns:290px 1fr auto;padding:0 22px;box-shadow:0 8px 30px #172d210e}.admin-header .brand-mark.small{color:#173d2c;background:linear-gradient(145deg,#cde95b,#82bd62);border-radius:13px;width:42px;height:42px;box-shadow:0 7px 16px #2e5c3924}.admin-brand>div:last-child strong{color:#15201a;letter-spacing:-.01em;font-size:13px}.admin-brand span,.admin-title span{color:#526159;font-size:11px;font-weight:600}.admin-title{color:#28372f}.header-actions a{color:#26160d;background:linear-gradient(145deg,#e7a45f,#cf7438);border:1px solid #d8874b;border-radius:11px;align-items:center;min-height:38px;padding:0 13px;font-size:12px;font-weight:780;text-decoration:none;display:flex;box-shadow:0 7px 18px #a4532224}.header-actions a:hover{background:linear-gradient(145deg,#efad68,#d97c3e)}.sync-status{color:#3f5047;font-weight:700}.sync-status:before{box-shadow:0 0 0 4px #50b87a1f}.sync-status.offline{color:#9a342b}.admin-page .icon-button.dark{color:#35483e;background:#fff;border-color:#d0d9d3;border-radius:11px}.admin-page .icon-button.dark:hover{color:#a64618;background:#fff5ee;border-color:#db8d5a}.admin-layout{background:#f3f5f2;grid-template-columns:250px minmax(320px,410px) minmax(470px,1fr);height:calc(100vh - 72px)}.sets-sidebar{scrollbar-gutter:stable;background:#fafcfaeb;border-right:1px solid #dce3de;padding:18px 13px}.sidebar-heading{color:#56655d;padding:0 10px 10px;font-size:11px}.sidebar-config-group,.sidebar-system-group{border-top:1px solid #dce3de;margin-top:22px;padding-top:16px}.section-item{color:#2b3a32;border-radius:12px;gap:11px;min-height:44px;margin-bottom:6px;padding:0 12px;font-weight:720}.section-item:hover{background:#fff;border-color:#d6e0d9;box-shadow:0 6px 16px #1e392a0d}.section-item.active{background:var(--green-soft);color:var(--green);border-color:#b9d7c5;box-shadow:inset 0 0 0 1px #176b4d0a,0 7px 18px #176b4d12}.sets-heading-actions button{border-radius:9px}.set-item,.set-row{border-radius:11px}.set-item:hover,.set-item.active,.set-row:hover,.set-row.active{border-color:#d3ddd6;box-shadow:0 5px 14px #1d34280b}.set-item.active,.set-row.active{box-shadow:inset 3px 0 var(--green),0 5px 14px #1d34280b}.set-actions-menu{border-color:#d5ddd8;border-radius:13px;padding:7px;box-shadow:0 18px 44px #15281e2e}.set-actions-menu button{border-radius:8px}.participants-pane,.participant-card,.routes-config-pane,.settings-pane,.applications-section,.clubs-workspace,.final-workspace{background:#f4f6f3}.participants-pane{border-color:#dce3de}.pane-toolbar{background:#fffffff0}.participant-row{border-color:#e3e9e5}.participant-row:hover,.participant-row.selected{background:#f0f7f3}.participant-list-controls{background:#f5f8f6;border-radius:12px}.admin-page input:not([type=checkbox]):not([type=radio]),.admin-page select,.admin-page textarea{color:#17201c;background:#fff;border-color:#c8d3cc;border-radius:10px}.admin-page input:focus,.admin-page select:focus,.admin-page textarea:focus{border-color:#2b7b59;box-shadow:0 0 0 3px #176b4d1c}.admin-page .primary-action,.admin-page .save-route-button,.admin-page .primary-button,.admin-page .confirm-results-button{color:#fff;background:#176b4d;border-radius:11px;box-shadow:0 7px 17px #176b4d21}.admin-page .secondary-button,.admin-page .import-button,.admin-page .compact-action{border-radius:10px}.admin-page .pane-toolbar,.admin-page .config-header,.admin-page .settings-header,.admin-page .clubs-pane-head,.admin-page .applications-head,.admin-page .final-hero{background:#fffffff0;border-color:#dce3de}.admin-page .settings-card,.admin-page .grade-points-panel,.admin-page .final-podiums,.admin-page .final-exports,.admin-page .final-setup,.admin-page .final-start-card,.admin-page .final-snapshot-card,.admin-page .qualification-category,.admin-page .club-detail,.admin-page .routes-heading,.admin-page .applications-table-wrap{background:#fff;border-color:#dce3de;border-radius:16px;box-shadow:0 8px 24px #1c34270b}.admin-page table th{color:#3c4b43;background:#f1f5f2;font-size:11px}.admin-page table td{color:#1c2821;border-color:#e2e8e4}.admin-page table tbody tr:hover{background:#f6faf7}.admin-page .status-chip,.admin-page .application-status,.admin-page .set-status{border-radius:999px}.admin-page .modal-backdrop{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#161f1a57}.admin-page .modal,.admin-page .user-editor,.admin-page .set-action-dialog,.admin-page .set-editor,.admin-page .qualification-review-dialog,.admin-page .final-results-dialog{border:1px solid #ffffffe0;border-radius:22px;box-shadow:0 30px 90px #1122193b}.admin-page .dialog-close,.admin-page .modal-close{border-radius:11px}.admin-page .route-toast{border-radius:16px;box-shadow:0 18px 44px #142a1e2b}@media (max-width:1000px){.admin-header{grid-template-columns:1fr auto}.admin-layout{grid-template-columns:210px 330px minmax(440px,1fr)}}@media (max-width:700px){.login-page{padding:14px}.login-panel{border-radius:22px;padding:26px 22px}.login-panel h1{font-size:27px}.admin-header{height:66px;padding:0 10px}.admin-layout{height:calc(100vh - 66px)}.admin-brand>div:last-child strong{font-size:12px}}@media (prefers-reduced-motion:reduce){.admin-page *,.login-page *,.auth-redirect *{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.admin-page button:active,.admin-page a:active,.login-page button:active{transform:none!important}}@media (prefers-reduced-transparency:reduce){.admin-header,.login-panel{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff}.admin-page .modal-backdrop{-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-contrast:more){.admin-page{--ink:#080d0a;--muted:#303d36;--line:#9ca8a1}.admin-header,.sets-sidebar,.pane-toolbar,.login-panel{background:#fff}}.backups-workspace{background:#f4f6f3;grid-column:2/-1;min-width:0;padding:28px;overflow:auto}.backups-hero{background:#fffffff0;border-bottom:1px solid #dce3de;justify-content:space-between;align-items:flex-start;gap:24px;margin:-28px -28px 24px;padding:30px 32px 26px;display:flex}.backups-hero h1{color:#142019;letter-spacing:-.035em;margin:5px 0 8px;font-size:30px;line-height:1.08}.backups-hero p{max-width:720px;margin:0}.backup-health{color:#176b4d;background:#edf7f1;border:1px solid #cde1d5;border-radius:14px;align-items:center;gap:11px;min-width:165px;padding:13px 15px;display:flex}.backup-health span{flex-direction:column;display:flex}.backup-health strong{font-size:19px;line-height:1}.backup-health small{margin-top:4px;font-size:10px}.backup-actions-card{background:#fff;border:1px solid #dce3de;border-radius:16px;grid-template-columns:minmax(260px,1fr) minmax(220px,1fr) auto auto;align-items:center;gap:12px;padding:18px;display:grid;box-shadow:0 8px 24px #1c34270b}.backup-actions-card h2{align-items:center;gap:8px;margin:0 0 4px;font-size:16px;display:flex}.backup-actions-card p{margin:0;font-size:12px}.backup-actions-card input{min-height:42px}.backup-actions-card button{white-space:nowrap;justify-content:center;align-items:center;gap:7px;min-height:42px;display:flex}.backup-current-strip{color:#24533f;background:#edf3ef;border:1px solid #d7e1da;border-radius:15px;align-items:center;gap:12px;margin:16px 0 26px;padding:15px 18px;display:flex}.backup-current-strip>span{flex-direction:column;min-width:180px;display:flex}.backup-current-strip>span small{margin-top:2px;font-size:10px}.backup-current-strip>div{flex-wrap:wrap;gap:9px;margin-left:auto;display:flex}.backup-current-strip>div span{background:#ffffffbf;border-radius:10px;min-width:78px;padding:7px 10px}.backup-current-strip>div small,.backup-current-strip>div strong{display:block}.backup-current-strip>div small{font-size:9px}.backup-current-strip>div strong{color:#17201c;margin-top:1px;font-size:14px}.backup-list-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:12px;display:flex}.backup-list-head h2{letter-spacing:-.015em;margin:0 0 2px;font-size:19px}.backup-list-head p{margin:0;font-size:11px}.backup-list-head button{align-items:center;gap:7px;display:flex}.backup-grid{grid-template-columns:repeat(2,minmax(300px,1fr));gap:14px;padding-bottom:28px;display:grid}.backup-card{background:#fff;border:1px solid #dce3de;border-radius:17px;min-width:0;padding:18px;transition:border-color .18s,box-shadow .22s,transform .16s;box-shadow:0 8px 24px #1c34270b}.backup-card:hover{border-color:#cbd8d0;transform:translateY(-1px);box-shadow:0 13px 32px #1c342713}.backup-card-head{justify-content:space-between;align-items:center;gap:10px;display:flex}.backup-source,.backup-verified,.backup-unverified{border-radius:999px;align-items:center;gap:6px;min-height:26px;padding:0 9px;font-size:10px;font-weight:780;display:inline-flex}.backup-source{color:#415149;background:#eef2ef}.backup-source.manual{color:#176b4d;background:#e9f4ee}.backup-source.pre-restore{color:#a34d1b;background:#fff2e8}.backup-source.upload{color:#4056a0;background:#eef0fa}.backup-verified{color:#176b4d;background:#e9f6ee}.backup-unverified{color:#9e461a;background:#fff0e6}.backup-card h3{color:#17201c;letter-spacing:-.015em;margin:15px 0 5px;font-size:18px}.backup-card>code{color:#536159;text-overflow:ellipsis;white-space:nowrap;font-size:10px;display:block;overflow:hidden}.backup-meta{grid-template-columns:1fr 1fr;gap:8px;margin:15px 0 10px;display:grid}.backup-meta span{background:#f4f7f5;border-radius:11px;padding:9px 11px}.backup-meta small,.backup-meta strong{display:block}.backup-meta small{font-size:9px}.backup-meta strong{margin-top:2px;font-size:13px}.backup-note{background:#fff8f2;border-left:3px solid #d8874b;border-radius:4px 9px 9px 4px;min-height:34px;margin:10px 0;padding:9px 11px;font-size:11px}.backup-comparison{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:12px 0;display:grid}.backup-comparison>div{border:1px solid #e4e9e6;border-radius:10px;grid-template-columns:1fr auto;gap:2px 8px;padding:8px 9px;display:grid}.backup-comparison span{color:#45534b;text-overflow:ellipsis;white-space:nowrap;font-size:10px;font-weight:680;overflow:hidden}.backup-comparison strong{color:#18221c;font-size:12px}.backup-comparison small{grid-column:1/-1;font-size:9px}.backup-comparison .changed{color:#a04a1d}.backup-comparison .same{color:#397153}.backup-empty-summary{color:#536159;background:#f8faf8;border:1px dashed #cbd6cf;border-radius:11px;margin:12px 0;padding:12px;font-size:11px;line-height:1.45}.backup-checksum{color:#66736c;text-overflow:ellipsis;white-space:nowrap;margin:10px 0;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:9px;overflow:hidden}.backup-card-actions{grid-template-columns:1fr 1fr 1.2fr 38px;gap:6px;margin-top:14px;display:grid}.backup-card-actions button{color:#34463c;background:#fff;border:1px solid #ced8d1;border-radius:10px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:0 8px;font-size:10px;font-weight:750;display:flex}.backup-card-actions button:hover{background:#f5f9f6;border-color:#afc5b7}.backup-card-actions .restore-backup-button{color:#944216;background:#fff5ec;border-color:#d8874b}.backup-card-actions .restore-backup-button:hover{background:#ffead9}.backup-card-actions .delete-backup-button{color:#a43830}.backup-card-actions .delete-backup-button:hover{background:#fff0ef;border-color:#e3b3ae}.backup-empty{color:#526159;border:1px dashed #cbd6cf;border-radius:17px;grid-column:1/-1;place-items:center;min-height:240px;padding:30px;display:grid}.backup-empty h2{color:#26362d;margin:12px 0 2px}.backup-empty p{margin:0}.typed-confirmation{color:#35443c;flex-direction:column;gap:7px;margin-top:15px;font-size:11px;font-weight:760;display:flex}.typed-confirmation code{overflow-wrap:anywhere;color:#792c25;-webkit-user-select:all;user-select:all;background:#f4f6f4;border-radius:9px;padding:9px 10px;font-size:10px}.typed-confirmation input{min-height:44px}@media (max-width:1180px){.backup-actions-card{grid-template-columns:1fr 1fr}.backup-actions-card>div{grid-column:1/-1}.backup-grid{grid-template-columns:1fr}}@media (max-width:760px){.backups-workspace{padding:18px}.backups-hero{flex-direction:column;margin:-18px -18px 18px;padding:22px 20px}.backup-health{min-width:0}.backup-actions-card{grid-template-columns:1fr}.backup-actions-card>div{grid-column:auto}.backup-current-strip{flex-wrap:wrap;align-items:flex-start}.backup-current-strip>div{width:100%;margin-left:0}.backup-card-actions{grid-template-columns:1fr 1fr}.backup-card-actions .delete-backup-button{grid-column:auto}}@media (prefers-reduced-motion:reduce){.backup-card:hover{transform:none}}@media (prefers-reduced-transparency:reduce){.backups-hero{background:#fff}}.routes-config-pane,.settings-pane,.applications-section{padding:28px}.admin-workspace-container{width:min(1180px,100%)}.admin-page .config-header,.admin-page .settings-header,.admin-page .applications-head{max-width:none;box-shadow:none;background:#fffffff0;border:0;border-bottom:1px solid #dce3de;border-radius:0;margin:-28px -28px 24px;padding:30px 32px 26px}.admin-page .config-header h1,.admin-page .settings-header h1,.admin-page .applications-head h1{color:#142019;letter-spacing:-.035em;margin:5px 0 8px;font-size:30px;line-height:1.08}.admin-page .config-header p,.admin-page .settings-header p,.admin-page .applications-head p{max-width:720px;margin:0;font-size:13px}.admin-page .primary-action,.admin-page .save-route-button,.admin-page .primary-button,.admin-page .confirm-results-button{min-height:42px;padding:0 15px}.admin-page .secondary-button,.admin-page .import-button,.admin-page .compact-action,.admin-page .danger-outline-button{border-radius:10px}.participants-pane{background:#fff;border:1px solid #dce3de;border-radius:17px;margin:18px 0 18px 18px;box-shadow:0 8px 24px #1c34270b}.pane-toolbar{background:#fff;border-bottom:1px solid #e1e7e3;min-height:0;padding:20px}.pane-toolbar h1{color:#142019;letter-spacing:-.025em;margin:4px 0 5px;font-size:24px}.pane-toolbar .search-box{margin-top:13px}.search-box{background:#f8faf8;border-color:#cbd6cf;border-radius:11px}.search-box:focus-within{background:#fff;border-color:#2b7b59;box-shadow:0 0 0 3px #176b4d1a}.participant-list-controls{margin:10px 10px 4px;padding:8px}.participant-list{background:#f5f7f5;padding:6px 8px 10px}.participant-row{background:#fff;border:1px solid #0000;border-radius:12px;min-height:68px;margin-bottom:6px;padding:9px 12px}.participant-row:hover{background:#fff;border-color:#d5e0d8;transform:translateY(-1px);box-shadow:0 7px 18px #1c34270f}.participant-row.selected{background:#edf7f1;border-color:#b8d6c4;box-shadow:inset 3px 0 #176b4d,0 7px 18px #176b4d12}.participant-row.checked-in{background:#f1faf5}.waiting-mark,.not-checked-in{border-radius:9px}.participant-card{background:#fff;border:1px solid #dce3de;border-radius:17px;margin:18px 18px 18px 14px;padding:24px;box-shadow:0 8px 24px #1c34270b}.card-head{padding:0 0 20px}.card-head h2{color:#142019;letter-spacing:-.025em;font-size:25px}.live-score{border-radius:13px;box-shadow:0 7px 18px #176b4d12}.participant-status-strip{padding:16px 0 10px}.participant-status-strip .status-pill{box-shadow:none;border-radius:999px}.participant-reception-actions{border-bottom:1px solid #e5eae7;padding-bottom:14px}.participant-reception-actions button{border-radius:10px;min-height:38px}.participant-fields{border:0;gap:10px;margin:16px 0 0;padding:0}.participant-fields div{background:#f4f7f5;border-radius:11px;padding:12px 14px}.routes-heading{border-top:1px solid #e1e7e3;margin-top:18px;padding:18px 0 12px}.route-grid{gap:9px}.route-toggle{border-color:#d5ddd8;border-radius:12px;min-height:62px}.route-toggle:hover:not(:disabled){background:#f7faf8;box-shadow:0 6px 16px #1c34270e}.route-grid.editing{border-radius:14px;outline-color:#9dc8b1;padding:10px}.check-box{border-radius:7px}.check-in-panel{border-radius:15px}.check-in-button{border-radius:11px;box-shadow:0 7px 17px #176b4d21}.no-selection{background:#f8faf8;border:1px dashed #cbd6cf;border-radius:15px;min-height:calc(100% - 2px)}.clubs-workspace{background:#f4f6f3;grid-template-columns:300px minmax(720px,1fr);gap:14px;padding:18px}.clubs-list-pane,.club-detail-pane{background:#fff;border:1px solid #dce3de;border-radius:17px;overflow:hidden;box-shadow:0 8px 24px #1c34270b}.clubs-list-pane{border-right:1px solid #dce3de;overflow:auto}.clubs-pane-head{border-bottom:1px solid #e1e7e3;border-radius:17px 17px 0 0;padding:21px 20px 18px}.clubs-pane-head h1{color:#142019;letter-spacing:-.025em;font-size:25px}.clubs-list{background:#f5f7f5;gap:6px;padding:8px}.club-list-item{border:1px solid #0000;border-radius:11px;min-height:70px;padding:12px 13px}.club-list-item:hover{background:#fff;border-color:#d5e0d8;box-shadow:0 6px 16px #1c34270d}.club-list-item.active{background:#edf7f1;border-color:#b8d6c4;border-radius:11px;box-shadow:inset 3px 0 #176b4d}.club-detail-pane{overflow:auto}.club-detail-head{border-bottom:0;padding:24px}.club-detail-head h2{color:#142019;letter-spacing:-.025em;font-size:27px}.club-summary{background:#f5f8f6;border-color:#dce3de;border-radius:14px;overflow:hidden}.club-summary span{border-color:#dce3de}.club-selection-note{border:1px solid #c8dccf;border-radius:12px;margin:0 18px 12px}.club-bulk-actions{background:#f8faf8;border:1px solid #e0e6e2;border-radius:13px;margin:0 18px 12px;padding:12px}.club-bulk-actions button{border-radius:9px;min-height:36px}.club-member-search{background:#fff;border-bottom:0;margin:0 18px;padding:12px 0}.club-members-table{border:1px solid #dce3de;border-radius:14px;margin:0 18px 18px;overflow:hidden}.club-member-row{border-color:#e4e9e6}.club-member-row.table-head{background:#f1f5f2}.member-check span{border-radius:6px}.applications-count{border-radius:12px;min-height:38px;padding:0 13px}.applications-table-wrap{border-radius:17px;box-shadow:0 8px 24px #1c34270b}.applications-table th{background:#f1f5f2;height:44px;padding:10px 13px}.applications-table td{padding:12px 13px}.application-actions button{border-radius:9px;min-height:35px}.applications-empty{border-style:dashed;border-radius:17px;box-shadow:0 8px 24px #1c342709}.grade-points-panel,.bulk-points-form,.routes-config-browser,.new-route-form{background:#fff;border-color:#dce3de;border-radius:16px;box-shadow:0 8px 24px #1c34270b}.grade-points-panel,.routes-config-browser{overflow:hidden}.grade-points-head{background:#f8faf8;border-color:#e0e6e2;padding:19px 20px}.grade-points-groups{background:#e2e8e4;gap:1px}.grade-points-groups article{background:#fff;border:0}.grade-points-groups label{background:#f8faf8;border-color:#d9e1dc;border-radius:10px}.new-route-form,.bulk-points-form{padding:18px}.routes-sort-bar{background:#f1f5f2;gap:6px;min-height:44px;padding:7px 12px}.routes-sort-bar .route-sort{border-radius:9px;min-height:30px;padding:0 9px}.routes-filter-row{background:#fafcfb;padding:9px 12px}.clear-filters{border-radius:9px}.route-card-grid{background:#f4f7f5;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:10px}.route-config-card,.route-config-card.compact{background:#fff;border-color:#d7dfda;border-radius:12px;box-shadow:0 3px 10px #1c342709}.route-config-card:hover{border-color:#aec7b8;transform:translateY(-1px);box-shadow:0 9px 22px #1c342713}.config-route-number,.route-status,.route-config-card .route-delete-button{border-radius:9px}.settings-tabs{background:#eaf0ec;border:1px solid #dce3de;border-radius:14px;width:max-content;max-width:none;margin:0 0 18px;padding:5px}.settings-tabs button{border:0;border-radius:10px;min-height:38px;padding:0 13px}.settings-tabs button:hover{color:#244b39;background:#ffffffa6}.settings-tabs button.active{color:#176b4d;background:#fff;border:0;box-shadow:0 5px 14px #1c342717}.settings-card,.category-settings{border-color:#dce3de;border-radius:17px;max-width:none;box-shadow:0 8px 24px #1c34270b}.settings-card-head{background:#fff;min-height:76px;padding:19px 21px}.users-head,.audit-head,.category-config-head{background:#f1f5f2}.user-row,.audit-row,.demo-set-list>div,.category-config-row{border-color:#e4e9e6}.user-row:hover,.audit-row:hover,.demo-set-list>div:hover{background:#f8faf8}.role-list{background:#f4f7f5;padding:12px}.role-list button{border-radius:10px;margin-bottom:5px}.role-list button:hover{background:#fff}.role-list button.active{border-color:#c7d8cd;border-radius:10px;box-shadow:inset 3px 0 #176b4d,0 5px 14px #1c34270d}.permission-list label{border-radius:8px}.permission-list label:hover{background:#f7faf8}.audit-filters{background:#f8faf8;padding:16px 18px}.demo-data-grid{gap:14px;max-width:none}.demo-results-card,.demo-seed-card{border-radius:17px}.danger-outline-button,.danger-action-button{border-radius:10px}.category-help{border-radius:0 0 16px 16px}.category-preview>div span{border-radius:9px}.final-workspace{background:#f4f6f3;grid-template-columns:280px minmax(720px,1fr);gap:14px;padding:18px}.final-sidebar{background:#fff;border:1px solid #dce3de;border-radius:17px;padding:18px 10px;box-shadow:0 8px 24px #1c34270b}.final-sidebar button{border:1px solid #0000;border-radius:11px;min-height:46px;margin-bottom:3px}.final-sidebar button:hover{background:#f7faf8;border-color:#dae3dd}.final-sidebar button.active{background:#eaf4ee;border-color:#bcd6c6;border-radius:11px;box-shadow:inset 3px 0 #176b4d}.final-pane{background:0 0;padding:0 0 28px}.final-hero{background:#fff;border:1px solid #dce3de;border-radius:17px;margin:0 0 14px;padding:25px 26px;box-shadow:0 8px 24px #1c34270b}.final-hero h1{color:#142019;letter-spacing:-.03em;font-size:28px}.final-stage-icon{border-radius:15px;width:56px;height:56px}.final-progress,.final-start-card,.final-snapshot-card,.final-podiums,.final-exports,.final-setup,.snapshot-categories{background:#fff;border-color:#dce3de;border-radius:17px;box-shadow:0 8px 24px #1c34270b}.final-progress{padding:18px 20px}.qualification-category-list{gap:12px}.qualification-category{border-radius:14px;min-height:78px;box-shadow:0 4px 14px #1c342709}.qualification-category:hover{border-color:#c6d5cc;box-shadow:0 9px 22px #1c342711}.final-start-card,.final-snapshot-card{padding:21px}.final-podium-grid,.final-exports>div:last-child{gap:12px}.final-podium-grid article,.final-exports button{border-radius:13px}.final-podium-empty{background:#f8faf8;border-radius:13px}.final-setup{overflow:hidden}.final-setup-head{padding:22px}.final-route-overview{background:#e2e8e4;gap:1px;padding:1px}.final-route-overview article{background:#fff;border:0;border-radius:9px}.final-category-setup-list{background:#f5f7f5;gap:10px;padding:12px}.final-category-setup{background:#fff;border:1px solid #dce3de;border-radius:13px}.final-category-title>span,.final-route-choice button{border-radius:9px}.snapshot-categories{padding:20px}.final-loading{border-radius:17px;box-shadow:0 8px 24px #1c34270b}@media (max-width:1180px){.route-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.clubs-workspace,.final-workspace{gap:10px;padding:12px}.participants-pane{margin:12px 0 12px 12px}.participant-card{margin:12px 12px 12px 10px}}@media (max-width:760px){.routes-config-pane,.settings-pane,.applications-section{padding:18px}.admin-page .config-header,.admin-page .settings-header,.admin-page .applications-head{margin:-18px -18px 18px;padding:22px 20px}.settings-tabs{max-width:100%;overflow-x:auto}.route-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){.participant-row:hover,.route-config-card:hover{transform:none}}@media (prefers-reduced-transparency:reduce){.admin-page .config-header,.admin-page .settings-header,.admin-page .applications-head{background:#fff}}.participants-workspace,.clubs-workspace,.final-workspace,.routes-config-pane,.categories-pane,.settings-pane,.applications-section{background:#f4f6f3;grid-column:2/-1;min-width:0;padding:28px;display:block;overflow:auto}.admin-workspace-container{width:100%;max-width:none;margin:0}.admin-page .admin-section-hero{min-height:128px;box-shadow:none;background:#fffffff0;border:0;border-bottom:1px solid #dce3de;border-radius:0;justify-content:space-between;align-items:flex-start;gap:24px;margin:-28px -28px 24px;padding:30px 32px 26px;display:flex}.admin-page .admin-section-hero>div:first-child{min-width:0}.admin-page .admin-section-hero .eyebrow{color:#35443c;letter-spacing:.07em;text-transform:uppercase;font-size:10px;font-weight:820}.admin-page .admin-section-hero h1{color:#142019;letter-spacing:-.035em;margin:5px 0 8px;font-size:30px;font-weight:800;line-height:1.08}.admin-page .admin-section-hero p{color:#46554d;max-width:720px;margin:0;font-size:13px;font-weight:560;line-height:1.45}.admin-page .admin-section-hero .participant-toolbar-actions{align-self:center}.section-health{color:#176b4d;background:#edf7f1;border:1px solid #cde1d5;border-radius:14px;align-items:center;gap:11px;min-width:165px;padding:13px 15px;display:flex}.section-health span{flex-direction:column;display:flex}.section-health strong{font-size:19px;line-height:1}.section-health small{margin-top:4px;font-size:10px}.section-health.final{color:#a34d1b;background:#fff4e9;border-color:#efd4bc}.section-health.completed{color:#415149;background:#eef2ef;border-color:#cbd8d0}.participants-content-grid,.clubs-content-grid,.final-content-grid{gap:14px;min-height:calc(100vh - 242px);display:grid}.participants-content-grid{grid-template-columns:minmax(340px,410px) minmax(470px,1fr)}.clubs-content-grid{grid-template-columns:300px minmax(720px,1fr)}.final-content-grid{grid-template-columns:270px minmax(720px,1fr)}.participants-pane,.participant-card,.clubs-list-pane,.club-detail-pane,.final-sidebar{background:#fff;border:1px solid #dce3de;border-radius:17px;min-height:0;margin:0;overflow:hidden;box-shadow:0 8px 24px #1c34270b}.participant-card,.club-detail-pane,.final-sidebar{overflow:auto}.pane-toolbar,.clubs-pane-head{background:#fff;border-bottom:1px solid #e1e7e3;border-radius:17px 17px 0 0;min-height:auto;padding:18px;position:static}.pane-toolbar .search-box,.clubs-pane-head .search-box{width:100%;margin:0}.participant-list,.clubs-list{min-height:0}.participant-card,.club-detail-head{padding:24px}.final-pane{background:0 0;min-width:0;height:auto;padding:0;overflow:visible}.final-pane>.final-progress,.final-pane>.qualification-category-list,.final-pane>.final-start-card,.final-pane>.final-snapshot-card,.final-pane>.final-setup,.final-pane>.snapshot-categories,.final-pane>.final-podiums,.final-pane>.final-exports{max-width:none}.final-progress,.final-snapshot-card,.final-setup,.snapshot-categories{margin-top:0}.final-podiums,.final-exports{margin-top:14px}.admin-page .settings-card,.admin-page .category-settings,.admin-page .grade-points-panel,.admin-page .routes-config-browser,.admin-page .new-route-form,.admin-page .bulk-points-form,.admin-page .applications-table-wrap,.admin-page .applications-empty,.admin-page .final-progress,.admin-page .final-start-card,.admin-page .final-snapshot-card,.admin-page .final-podiums,.admin-page .final-exports,.admin-page .final-setup,.admin-page .snapshot-categories{background:#fff;border:1px solid #dce3de;border-radius:17px;box-shadow:0 8px 24px #1c34270b}.admin-page .settings-card-head h2,.admin-page .grade-points-head h2,.admin-page .final-panel-heading h2,.admin-page .final-setup-head h2,.admin-page .club-detail-head h2,.admin-page .routes-heading h3{color:#17201c;letter-spacing:-.015em;font-size:19px;font-weight:800;line-height:1.2}.applications-count{justify-content:center;align-self:center;min-width:72px}@media (max-width:1180px){.participants-workspace,.clubs-workspace,.final-workspace{padding:18px}.admin-page .participants-workspace>.admin-section-hero,.admin-page .clubs-workspace>.admin-section-hero,.admin-page .final-workspace>.admin-section-hero{margin:-18px -18px 18px;padding:24px 22px}.participants-content-grid,.clubs-content-grid,.final-content-grid{gap:10px}}@media (max-width:760px){.admin-page .admin-section-hero{flex-direction:column;min-height:0;margin:-18px -18px 18px;padding:22px 20px}.admin-page .admin-section-hero h1{font-size:27px}.section-health{min-width:0}}@media (prefers-reduced-transparency:reduce){.admin-page .admin-section-hero{background:#fff}}.admin-page :is(h1,h2,h3,h4,h5,h6,strong,b,button,th,label,.eyebrow,.sidebar-heading,.status-chip,.status-pill,.application-status,.user-status,.backup-source,.backup-verified,.backup-unverified,.member-number,.route-sort,.route-status,.waiting-mark,.not-checked-in,.sync-status){font-weight:700!important}
