@import"https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800&family=Inter:wght@400;500;600;700;800&display=swap";:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#102435;background:#f4f0e8;font-synthesis:none;--ink: #071b2d;--ink-2: #102f43;--paper: #f4f0e8;--white: #fffefa;--line: #d8d3ca;--muted: #6e7780;--blue: #0b6f84;--blue-bright: #11a6b8;--lime: #b8e14a;--coral: #f06b4f;--yellow: #ffd44a;--danger: #bb2f2f;--radius: 14px;--shadow: 0 14px 36px rgba(7, 27, 45, .1)}*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper)}button,input,select,textarea{font:inherit}button{border:0;cursor:pointer}button:disabled{cursor:not-allowed;opacity:.45}h1,h2,h3,p{margin-top:0}h1,h2,.start-number,.live-total strong,.count-badge strong,.last-score strong{font-family:Barlow Condensed,Impact,sans-serif}h1{margin-bottom:8px;font-size:clamp(2.6rem,5vw,4.7rem);line-height:.9;letter-spacing:-.025em;text-transform:uppercase}h2{margin-bottom:8px;font-size:2rem;line-height:1}.splash{min-height:100vh;display:grid;place-content:center;justify-items:center;gap:12px;background:var(--ink);color:#fff}.splash-mark{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:var(--lime);color:var(--ink);font:800 1.5rem Barlow Condensed;transform:rotate(-8deg)}.splash strong{font:800 2rem Barlow Condensed;text-transform:uppercase}.splash span{color:#9db0be}.app-shell{min-height:100vh;display:grid;grid-template-columns:244px minmax(0,1fr)}.sidebar{position:sticky;top:0;height:100vh;padding:22px 18px;display:flex;flex-direction:column;gap:24px;color:#fff;background:var(--ink);z-index:20}.brand{padding:2px;display:flex;align-items:center;gap:13px;color:#fff;background:transparent;text-align:left}.brand-paddle{display:grid;place-items:center;width:48px;height:48px;border-radius:50% 50% 48% 52%;color:var(--ink);background:var(--lime);font:800 1.12rem Barlow Condensed;transform:rotate(-8deg)}.brand>span:last-child{display:grid;font-family:Barlow Condensed;text-transform:uppercase;line-height:.82}.brand strong{font-size:1.7rem;letter-spacing:.02em}.brand small{color:var(--lime);font-size:1.15rem;letter-spacing:.14em}.competition-switcher{display:grid;gap:7px}.competition-switcher label{color:#8ea3b2;font-size:.7rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.competition-switcher select{width:100%;padding:11px 34px 11px 12px;border:1px solid #264255;border-radius:9px;color:#fff;background:#102a3d}.sidebar nav{display:grid;gap:5px}.nav-item{display:flex;align-items:center;gap:14px;padding:14px;border-radius:9px;color:#b2c0ca;background:transparent;text-align:left;font-weight:700}.nav-item span{color:#658094;font:700 .72rem Barlow Condensed}.nav-item:hover{color:#fff;background:#102a3d}.nav-item.active{color:var(--ink);background:var(--lime)}.nav-item.active span{color:#42621d}.sidebar-spacer{flex:1}.offline-note{padding:12px 4px;display:flex;align-items:center;gap:9px;color:#9db0be;font-size:.78rem}.status-light{width:8px;height:8px;flex:0 0 auto;display:inline-block;border-radius:50%;background:#71d077;box-shadow:0 0 0 4px #71d07721}.main{min-width:0}.page{width:min(1480px,100%);margin:0 auto;padding:36px clamp(22px,4vw,64px) 80px}.page-header{margin-bottom:30px;display:flex;justify-content:space-between;align-items:flex-start;gap:24px}.page-header .lead{max-width:760px;margin:0;color:var(--muted);line-height:1.55}.eyebrow{margin-bottom:8px;color:var(--blue);font-size:.71rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}.meta-row,.header-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.meta-row{color:var(--muted);font-size:.86rem}.meta-row span+span:before{content:"·";margin-right:12px;color:#aaa49b}.meta-row .feature-badge{padding:6px 10px;border-radius:99px;background:var(--ink);color:#fff;font-weight:800;text-transform:uppercase}.meta-row .feature-badge+span:before{content:none}.button{min-height:44px;padding:10px 17px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;font-weight:800;transition:transform .12s,box-shadow .12s,background .12s}.button:hover:not(:disabled){transform:translateY(-1px)}.button.primary{color:#fff;background:var(--blue);box-shadow:0 7px 16px #0b6f8433}.button.primary:hover:not(:disabled){background:#075c6d}.button.secondary{border:1px solid var(--line);color:var(--ink);background:var(--white)}.button.ghost{color:var(--blue);background:transparent}.button.full{width:100%}.notice{margin-bottom:18px;padding:13px 15px;border-radius:9px}.notice.error{border:1px solid #e7b8b0;color:#7d2828;background:#fff0ed}.text-danger{padding:8px 0;color:var(--danger);background:transparent;font-weight:700;text-decoration:underline}.danger-zone{margin-top:36px;text-align:right}.mobile-nav,.mobile-competition-bar{display:none}.dashboard-header h1{max-width:900px}.score-launch{margin-bottom:22px;min-height:220px;display:grid;grid-template-columns:150px 1fr minmax(240px,330px);align-items:stretch;overflow:hidden;border-radius:18px;color:#fff;background:var(--ink);box-shadow:var(--shadow)}.launch-phase{padding:30px 24px;display:flex;flex-direction:column;justify-content:space-between;border-right:1px solid #284255;color:#9db0be;font-size:.7rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.launch-phase strong{color:var(--lime);font:800 2rem Barlow Condensed;letter-spacing:.02em;writing-mode:vertical-rl;transform:rotate(180deg)}.next-athlete{padding:32px clamp(24px,4vw,52px);display:flex;flex-direction:column;justify-content:center}.next-athlete>span{margin-bottom:20px;color:#94a7b6;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.next-athlete>div{display:flex;align-items:center;gap:22px}.next-athlete h2{margin:0;font-size:clamp(2.1rem,4vw,4rem);text-transform:uppercase}.next-athlete p{margin:5px 0 0;color:#a9bac6}.start-number{display:grid;place-items:center;min-width:112px;height:112px;border-radius:50%;color:var(--ink);background:var(--lime);font-size:3rem;transform:rotate(-4deg)}.start-scoring{margin:16px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:space-between;border-radius:13px;color:var(--ink);background:var(--lime);font:800 1.5rem Barlow Condensed;text-transform:uppercase;text-align:left}.start-scoring b{align-self:flex-end;font-size:3rem;line-height:1}.start-scoring:hover:not(:disabled){background:#c9ee61}.dashboard-grid{display:grid;grid-template-columns:1.5fr .7fr;gap:20px}.progress-card,.leader-card{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--white)}.section-title{margin-bottom:20px;display:flex;justify-content:space-between;align-items:flex-start;gap:20px}.section-title h2{margin:0;text-transform:uppercase}.section-title>strong{color:var(--blue);font:800 3rem Barlow Condensed}.progress-track{height:12px;overflow:hidden;border-radius:99px;background:#e5e1d8}.progress-track span{height:100%;display:block;border-radius:inherit;background:linear-gradient(90deg,var(--blue),var(--blue-bright))}.progress-stats{margin-top:22px;display:flex;gap:28px;color:var(--muted);font-size:.85rem}.progress-stats b{color:var(--ink)}.last-score{display:grid;grid-template-columns:auto 1fr;align-items:end}.last-score strong{color:var(--blue);font-size:5rem;line-height:.78}.last-score>span{margin-left:6px;color:var(--muted);font-weight:700}.last-score p{grid-column:1 / -1;margin:16px 0 0;font-weight:700}.quick-actions{margin-top:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.quick-actions button{min-height:128px;padding:20px;display:grid;grid-template-columns:auto 1fr auto;grid-template-rows:auto auto;gap:4px 14px;border:1px solid var(--line);border-radius:12px;color:var(--ink);background:var(--white);text-align:left}.quick-actions button>span{grid-row:1 / 3;color:var(--blue);font:800 .8rem Barlow Condensed}.quick-actions button strong{align-self:end;font-size:1rem}.quick-actions button small{color:var(--muted)}.quick-actions button b{grid-column:3;grid-row:1 / 3;align-self:center;font-size:1.7rem}.quick-actions button:hover{border-color:var(--blue);transform:translateY(-2px);box-shadow:var(--shadow)}.field{display:grid;gap:7px;color:#53616b;font-size:.75rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}input,select,textarea{width:100%;min-width:0;height:44px;padding:9px 11px;border:1px solid #cbc6bd;border-radius:8px;outline:none;color:var(--ink);background:#fff}input:focus,select:focus,textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #0b6f841f}.wizard-page{max-width:1260px}.wizard-top{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:24px}.wizard-top h1{margin:0;font-size:3.5rem}.wizard-top>span{color:var(--muted);font-weight:700}.stepper{margin:34px 0 20px;display:grid;grid-template-columns:repeat(4,1fr)}.stepper>div{position:relative;display:grid;justify-items:center;gap:7px;color:#9b9994}.stepper>div:before{content:"";position:absolute;top:17px;right:50%;width:100%;height:2px;background:#d6d1c8;z-index:-1}.stepper>div:first-child:before{display:none}.stepper span{display:grid;place-items:center;width:34px;height:34px;border:2px solid #d1ccc3;border-radius:50%;background:var(--paper);font:800 .8rem Barlow Condensed}.stepper small{font-weight:700}.stepper .done{color:var(--ink)}.stepper .done span{border-color:var(--blue);color:#fff;background:var(--blue)}.wizard-card{min-height:390px;padding:clamp(24px,5vw,62px);border:1px solid var(--line);border-radius:16px;background:var(--white);box-shadow:var(--shadow)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-grid .span-2{grid-column:1 / -1}.form-grid input{height:56px;font-size:1.05rem}.choice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.ruleset-choices{grid-template-columns:1fr 1fr}.choice-card{position:relative;min-height:250px;padding:26px;display:flex;flex-direction:column;align-items:flex-start;gap:12px;border:2px solid var(--line);border-radius:13px;color:var(--ink);background:#fff;text-align:left}.choice-card:hover{border-color:#88adad}.choice-card.selected{border-color:var(--blue);box-shadow:0 0 0 4px #0b6f841a;background:#f1fbfb}.choice-card strong{font:800 2.2rem Barlow Condensed;text-transform:uppercase}.choice-card small{color:var(--muted);line-height:1.5}.choice-card b{margin-top:auto;color:var(--blue)}.choice-icon{font-size:3.4rem;color:var(--blue);line-height:1}.choice-kicker{padding:5px 8px;border-radius:5px;color:var(--blue);background:#e2f4f5;font-size:.65rem;font-weight:800;letter-spacing:.14em}.wizard-footer{margin-top:22px;display:flex;justify-content:space-between}.format-intro{margin-bottom:18px;display:flex;justify-content:space-between;gap:20px}.format-intro p{margin:0;color:var(--muted)}.phase-row{margin-bottom:10px;padding:14px;display:grid;grid-template-columns:1.3fr .65fr .75fr .9fr .7fr auto;align-items:end;gap:10px;border:1px solid var(--line);border-radius:10px;background:#faf9f5}.icon-button{width:36px;height:36px;display:inline-grid;place-items:center;border-radius:7px;color:var(--ink);background:#ede9e1;font-size:1.25rem}.icon-button.danger{color:var(--danger);background:#fff0ed}.count-badge{min-width:125px;padding:15px 20px;display:flex;flex-direction:column;align-items:center;border-radius:12px;color:#fff;background:var(--ink)}.count-badge strong{color:var(--lime);font-size:2.6rem;line-height:.9}.count-badge span{color:#aab8c2;font-size:.72rem;text-transform:uppercase}.quick-add{margin-bottom:28px;padding:20px;display:grid;grid-template-columns:110px 1.4fr 1.2fr .8fr auto;align-items:end;gap:12px;border-radius:13px;background:var(--ink);box-shadow:var(--shadow)}.quick-add .field{color:#aebdc7}.quick-add input{border-color:#385164;color:#fff;background:#102a3d}.quick-add input::placeholder{color:#728997}.quick-add .number-field input{font:800 1.5rem Barlow Condensed;color:var(--lime)}.add-athlete{min-width:124px;background:var(--lime)!important;color:var(--ink)!important;box-shadow:none!important}.competitor-list{overflow:hidden;border:1px solid var(--line);border-radius:13px;background:var(--white)}.list-header,.competitor-row{display:grid;grid-template-columns:76px 100px minmax(210px,1.5fr) minmax(110px,.7fr) 90px minmax(180px,auto);align-items:center;gap:14px}.list-header{padding:11px 18px;color:#7f8588;background:#eae6de;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.competitor-row{min-height:78px;padding:12px 18px;border-top:1px solid #e4e0d8}.competitor-row>div:nth-child(3),.competitor-row>div:nth-child(2){min-width:0}.competitor-row small{display:block;margin-top:4px;color:var(--muted)}.competitor-number{color:var(--blue);font:800 1.8rem Barlow Condensed}.reorder{display:flex;gap:4px}.reorder button{width:29px;height:29px;border-radius:6px;background:#ece8e0}.category-chip{width:fit-content;padding:6px 9px;border-radius:99px;color:#40515c;background:#e9f0ef;font-size:.75rem;font-weight:700}.row-actions{display:flex;justify-content:flex-end;gap:6px}.mini-button{min-height:32px;padding:6px 9px;border:1px solid var(--line);border-radius:6px;color:var(--ink);background:#fff;font-size:.74rem;font-weight:700}.mini-button.primary{border-color:var(--blue);color:#fff;background:var(--blue)}.competitor-row.editing input{height:38px}.edit-name{display:grid;grid-template-columns:1.2fr .8fr;gap:6px}.empty-state{padding:56px 22px;text-align:center;color:var(--muted)}.empty-state strong{display:block;margin-bottom:8px;color:var(--ink);font-size:1.1rem}.app-shell.scoring-active{display:block}.scoring-main{min-height:100vh;background:#eae6de}.scoring-page{min-height:100vh;display:flex;flex-direction:column}.scoring-header{min-height:104px;padding:12px 18px;display:grid;grid-template-columns:auto minmax(300px,1fr) auto auto auto auto;align-items:center;gap:14px;color:#fff;background:var(--ink);box-shadow:0 5px 18px #071b2d2e;z-index:10}.score-exit{min-height:48px;padding:10px 12px;border-radius:8px;color:#b7c5ce;background:#132d40;font-weight:800}.athlete-strip{display:flex;align-items:center;gap:14px;min-width:0}.athlete-strip>strong{color:var(--lime);font:800 2.7rem Barlow Condensed;white-space:nowrap}.athlete-strip h1{overflow:hidden;margin:0;font-size:clamp(1.7rem,3vw,2.6rem);white-space:nowrap;text-overflow:ellipsis}.athlete-strip p{margin:2px 0 0;color:#9db0be;font-size:.84rem}.ride-timer,.live-total{min-width:96px;display:grid;grid-template-columns:auto auto;align-items:baseline;column-gap:5px;text-align:right}.ride-timer span,.live-total span{grid-column:1 / -1;color:#8298a8;font-size:.62rem;font-weight:800;letter-spacing:.12em}.ride-timer strong{font:800 2rem Barlow Condensed}.ride-timer.urgent strong{color:var(--yellow);animation:pulse .8s infinite alternate}@keyframes pulse{to{opacity:.55}}.live-total{min-width:130px;padding-left:16px;border-left:1px solid #2c4557}.live-total strong{color:var(--lime);font-size:3.2rem;line-height:.85}.live-total small{color:#aebdc7;font-weight:800}.undo-button,.finish-button{min-height:62px;padding:12px 17px;border-radius:9px;font-weight:900}.undo-button{color:var(--ink);background:var(--yellow);font-size:1rem}.undo-button:first-letter{font-size:1.6rem}.finish-button{color:#fff;background:var(--blue)}.scoring-workspace{flex:1;min-height:0;display:grid;grid-template-columns:minmax(0,1fr) 355px}.trick-zone{min-width:0;padding:14px}.filter-bar{min-height:44px;margin-bottom:10px;display:flex;align-items:center;justify-content:space-between;gap:12px}.filter-scroll{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.filter-scroll button{min-height:38px;padding:8px 13px;border:1px solid #cbc6bd;border-radius:99px;color:#4b5963;background:#f8f6f1;font-size:.76rem;font-weight:800;white-space:nowrap}.filter-scroll button.active{border-color:var(--ink);color:#fff;background:var(--ink)}.replace-notice{padding:8px 12px;border-radius:8px;color:var(--ink);background:var(--yellow);font-size:.76rem;font-weight:800}.replace-notice button{margin-left:10px;padding:0;background:transparent;text-decoration:underline}.bonus-dock{margin-bottom:12px;padding:10px;display:grid;grid-template-columns:minmax(175px,.75fr) minmax(300px,2fr) auto;gap:10px;align-items:center;border:2px solid var(--blue);border-radius:12px;background:#fff;box-shadow:0 8px 20px #071b2d1a}.selected-summary{padding:4px 9px;border-right:1px solid var(--line)}.selected-summary>span{color:var(--blue);font-size:.6rem;font-weight:900;letter-spacing:.14em}.selected-summary>strong{display:block;margin-top:2px;font:800 1.25rem Barlow Condensed;text-transform:uppercase}.selected-summary p{margin:3px 0 0;color:var(--muted);font-size:.72rem}.selected-summary p b{color:var(--ink)}.bonus-buttons{display:flex;gap:6px;overflow-x:auto}.bonus-buttons button{min-width:78px;min-height:52px;padding:7px 9px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:1px solid #b9c7ca;border-radius:7px;color:var(--ink);background:#edf4f3;font-size:.72rem;font-weight:900;white-space:nowrap}.bonus-buttons button small{margin-top:3px;color:var(--muted);font-size:.58rem}.bonus-buttons button.active{border-color:var(--blue);color:#fff;background:var(--blue);box-shadow:inset 0 -4px 0 var(--lime)}.bonus-buttons button.active small{color:#d9edef}.edit-tools{display:grid;grid-template-columns:repeat(2,auto);gap:5px}.edit-tools>span{grid-column:1 / -1;color:var(--muted);font-size:.58rem;font-weight:900;text-transform:uppercase}.edit-tools button{min-height:29px;padding:4px 7px;border-radius:5px;background:#eae6de;font-size:.65rem;font-weight:800}.edit-tools button.active{color:#fff;background:var(--ink)}.edit-tools button.danger{color:var(--danger);background:#fff0ed}.trick-matrix{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;align-content:start}.trick-card{min-height:92px;display:grid;grid-template-columns:minmax(92px,.75fr) 1.6fr;overflow:hidden;border:1px solid #cfc9bf;border-radius:10px;background:var(--white)}.trick-label{padding:12px 10px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid #ddd8cf}.trick-label strong{font:800 1rem Barlow Condensed;line-height:1;text-transform:uppercase}.trick-label small{margin-top:7px;color:var(--muted);font-size:.58rem;font-weight:700;text-transform:uppercase}.direction-grid{min-width:0;display:grid;grid-template-columns:repeat(2,1fr)}.direction-grid.directions-1{grid-template-columns:1fr}.trick-button{position:relative;min-height:90px;padding:8px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-left:1px solid #e0dcd4;color:var(--ink);background:#f8f6f1;transition:transform .08s,background .08s;touch-action:manipulation}.trick-button:active{transform:scale(.96);background:#d8efef}.trick-button>span{color:var(--blue);font-size:.62rem;font-weight:900;letter-spacing:.1em}.trick-button>strong{margin:1px 0;font:800 1.8rem Barlow Condensed;line-height:1}.trick-button>small{max-width:100%;overflow:hidden;color:#8b8d8d;font-size:.52rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.trick-button.registered{color:#fff;background:var(--blue);box-shadow:inset 0 -7px 0 var(--lime)}.trick-button.registered>span,.trick-button.registered>small{color:#d9f0f1}.trick-button.registered>strong{color:var(--lime)}.event-log{min-height:0;display:flex;flex-direction:column;border-left:1px solid #c8c2b8;background:var(--white)}.event-log-head{min-height:70px;padding:15px 17px 10px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.event-log-head h2{margin:0;font-size:1.45rem;text-transform:uppercase}.event-log-head>strong{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;color:var(--ink);background:var(--lime)}.event-list{flex:1;min-height:220px;overflow-y:auto;padding:8px}.event-row{width:100%;min-height:64px;padding:9px;display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:8px;border:2px solid transparent;border-bottom-color:#ece8e1;border-radius:7px;color:var(--ink);background:#fff;text-align:left}.event-row.selected{border-color:var(--blue);background:#eef8f8}.event-index{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;color:#6f7b82;background:#eae6de;font:800 .72rem Barlow Condensed}.event-row strong{font-size:.82rem}.event-row small{display:block;margin-top:4px;color:var(--muted);font-size:.65rem}.event-row>b{color:var(--blue);font:800 1.15rem Barlow Condensed}.empty-log{padding:55px 28px;display:grid;justify-items:center;text-align:center;color:var(--muted)}.empty-log>span{display:grid;place-items:center;width:44px;height:44px;margin-bottom:12px;border-radius:50%;color:var(--blue);background:#e4f3f3;font-size:1.5rem}.empty-log strong{color:var(--ink)}.empty-log p{margin:6px 0 0;font-size:.76rem;line-height:1.45}.score-warnings{padding:8px 12px;max-height:90px;overflow-y:auto;border-top:1px solid #edd0c8;color:#8b3434;background:#fff2ef;font-size:.68rem}.score-warnings p{margin:3px 0}.event-total{min-height:86px;padding:12px 16px;display:grid;grid-template-columns:.7fr .7fr 1fr;align-items:end;gap:10px;color:#fff;background:var(--ink)}.event-total span,.event-total>strong{display:grid}.event-total small{color:#8197a7;font-size:.58rem;font-weight:900;letter-spacing:.1em}.event-total b{font:800 1.3rem Barlow Condensed}.event-total>strong{padding-left:12px;border-left:1px solid #385164;color:var(--lime);font:800 2.4rem Barlow Condensed;line-height:.9}.trick-button.selected{outline:3px solid var(--yellow);outline-offset:-3px}.inline-bonus-dock{grid-column:1 / -1;padding:5px 7px 7px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 7px;align-items:center;border-top:2px solid var(--blue);background:#edf5f4;box-shadow:inset 0 3px 0 var(--lime)}.inline-bonus-dock .selected-summary{min-width:0;padding:1px 0;border:0}.inline-bonus-dock .selected-summary>span{display:none}.inline-bonus-dock .selected-summary>strong{display:inline;margin:0;font-size:.86rem;line-height:1;white-space:nowrap}.inline-bonus-dock .selected-summary p{display:inline;margin:0 0 0 5px;font-size:.61rem;white-space:nowrap}.inline-bonus-dock .bonus-buttons{grid-column:1 / -1;display:grid;grid-template-columns:repeat(auto-fit,minmax(50px,1fr));gap:4px;overflow:visible}.inline-bonus-dock .bonus-buttons button{min-width:0;min-height:36px;padding:3px;border-radius:6px;background:#fff;font-size:.55rem;line-height:1}.inline-bonus-dock .bonus-buttons button small{margin-top:2px;font-size:.5rem}.inline-bonus-dock .bonus-buttons button.active{background:var(--blue);box-shadow:inset 0 -3px 0 var(--lime)}.inline-bonus-dock .edit-tools{display:flex;gap:3px;align-items:center}.inline-bonus-dock .edit-tools>span{display:none}.inline-bonus-dock .edit-tools button{min-height:21px;padding:2px 4px;font-size:.52rem}.live-pill{padding:10px 13px;display:flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:99px;background:var(--white);font-size:.7rem;font-weight:800}.class-results-list{display:grid;gap:30px}.class-results{display:grid;gap:10px}.class-results-header{padding:0 4px;display:flex;align-items:end;justify-content:space-between;gap:16px}.class-results-header span{color:var(--blue);font-size:.66rem;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.class-results-header h2{margin:2px 0 0;font-size:2.4rem;text-transform:uppercase}.class-results-header>strong{padding:7px 10px;border-radius:99px;color:#40515c;background:#e2eceb;font-size:.72rem}.ranking-list{overflow:hidden;border:1px solid var(--line);border-radius:14px;background:var(--white)}.ranking-header,.ranking-row{display:grid;grid-template-columns:75px minmax(240px,1.2fr) minmax(260px,1fr) 150px;align-items:center;gap:12px}.ranking-header{padding:12px 18px;color:var(--muted);background:#e9e5dd;font-size:.68rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.ranking-item+.ranking-item{border-top:1px solid var(--line)}.ranking-row{width:100%;min-height:94px;padding:15px 18px;color:var(--ink);background:#fff;text-align:left}.ranking-row:hover{background:#fbfaf6}.rank{display:grid;place-items:center;width:45px;height:45px;border-radius:50%;background:#ede9e1;font:800 1.5rem Barlow Condensed}.rank-1{background:var(--yellow)}.rank-2{background:#d9e0e3}.rank-3{background:#e8b98a}.rank-athlete{min-width:0;display:flex;align-items:center;gap:13px}.rank-athlete>b{color:var(--blue);font:800 1.6rem Barlow Condensed}.rank-athlete small{display:block;margin-top:3px;color:var(--muted)}.ride-dots{display:flex;gap:7px}.ride-dots span{min-width:62px;padding:7px 9px;display:grid;border-radius:7px;background:#eeeae3}.ride-dots span.counting{color:#fff;background:var(--blue);box-shadow:inset 0 -4px 0 var(--lime)}.ride-dots small{font-size:.55rem;font-weight:800}.ride-dots b{margin-top:2px;font:800 1rem Barlow Condensed}.counting-score{color:var(--blue);font:800 2.25rem Barlow Condensed;text-align:right}.counting-score small{color:var(--muted);font:700 .7rem Inter}.result-breakdown{padding:0 18px 18px 105px;display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:10px;background:#f8f6f1}.ride-detail{padding:14px;border:1px solid var(--line);border-radius:9px;background:#fff}.ride-detail.counts{border:2px solid var(--blue)}.ride-detail header{margin-bottom:8px;display:flex;justify-content:space-between}.ride-detail header span{font-size:.7rem;font-weight:900;letter-spacing:.1em}.ride-detail header b{margin-left:7px;padding:3px 5px;border-radius:4px;color:var(--ink);background:var(--lime);font-size:.55rem}.ride-detail header>strong{color:var(--blue)}.breakdown-row{padding:7px 0;display:grid;grid-template-columns:1fr auto;gap:3px 8px;border-top:1px solid #eeeae3;font-size:.72rem}.breakdown-row small{grid-column:1;color:var(--muted)}.breakdown-row b{grid-column:2;grid-row:1 / 3;align-self:center}.guide-header{align-items:flex-end}.guide-header h1{margin-bottom:12px}.guide-header-actions{display:flex;justify-content:flex-end;gap:9px;flex-wrap:wrap}.guide-header-actions a{text-decoration:none}.guide-caveat{margin-bottom:22px;padding:18px 20px;display:grid;grid-template-columns:minmax(180px,.35fr) 1fr;gap:22px;border-left:6px solid var(--yellow);border-radius:10px;color:#fff;background:var(--ink)}.guide-caveat strong{font:800 1.25rem Barlow Condensed;text-transform:uppercase}.guide-caveat p{margin:0;color:#c3ced5;font-size:.84rem;line-height:1.55}.guide-tools{display:grid;grid-template-columns:1fr auto;align-items:end;gap:14px}.guide-search{display:grid;gap:7px;color:#53616b;font-size:.72rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.guide-search input{height:56px;padding-left:16px;font-size:1rem}.guide-count{min-width:116px;height:56px;padding:7px 13px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:9px;color:#fff;background:var(--blue)}.guide-count strong{color:var(--lime);font:800 2.25rem Barlow Condensed;line-height:1}.guide-count span{font-size:.63rem;font-weight:800;line-height:1.15;text-transform:uppercase}.guide-filters{margin:13px 0 22px;display:flex;gap:7px;overflow-x:auto;scrollbar-width:none}.guide-filters button{min-height:38px;padding:8px 14px;flex:0 0 auto;border:1px solid #c8c2b8;border-radius:99px;color:#52616b;background:var(--white);font-size:.73rem;font-weight:800}.guide-filters button.active{border-color:var(--ink);color:#fff;background:var(--ink)}.guide-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(315px,1fr));gap:13px;align-items:stretch}.guide-card{min-height:390px;padding:19px;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:13px;background:var(--white);box-shadow:0 8px 22px #071b2d0e}.guide-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:13px}.guide-card>header span{color:var(--blue);font-size:.62rem;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.guide-card h2{margin:4px 0 0;font-size:1.75rem;text-transform:uppercase}.guide-card>header>strong{flex:0 0 auto;color:var(--blue);font:800 1.85rem Barlow Condensed;white-space:nowrap}.guide-card>header>strong small{color:var(--muted);font:700 .63rem Inter}.guide-direction{width:fit-content;margin-top:11px;padding:5px 8px;border-radius:5px;color:#41565d;background:#e4efed;font-size:.63rem;font-weight:900;text-transform:uppercase}.guide-summary{margin:18px 0 15px;color:#364956;font-size:.88rem;line-height:1.55}.guide-focus{padding:12px 13px;border-left:3px solid var(--blue-bright);background:#eef6f5}.guide-focus span{color:var(--blue);font-size:.58rem;font-weight:900;letter-spacing:.11em;text-transform:uppercase}.guide-focus p{margin:5px 0 0;font-size:.77rem;line-height:1.45}.guide-card footer{margin-top:auto;padding-top:17px;display:grid;gap:8px}.guide-video{min-height:59px;padding:9px 11px;display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:9px;border:1px solid #b8c9ca;border-radius:8px;color:var(--ink);background:#edf4f3;text-decoration:none}.guide-video>span:first-child{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;color:#fff;background:var(--blue);font-weight:900}.guide-video strong,.guide-video small{display:block}.guide-video strong{font-size:.72rem}.guide-video small{margin-top:3px;color:var(--muted);font-size:.58rem}.guide-video>b{color:var(--blue)}.guide-video.direct{border-color:var(--blue);background:#e2f3f2;box-shadow:inset 4px 0 0 var(--lime)}.guide-rule-link{color:var(--blue);font-size:.68rem;font-weight:800;text-align:right}.guide-rule-only{min-height:52px;padding:10px 12px;display:flex;align-items:center;border-radius:8px;color:#695519;background:#fff4c6;font-size:.7rem;font-weight:800;line-height:1.35}.guide-empty{min-height:220px;display:grid;place-content:center;justify-items:center;color:var(--muted)}.rule-section{margin-bottom:26px;padding:22px;border:1px solid var(--line);border-radius:13px;background:var(--white)}.rule-add-row{margin-bottom:14px;display:grid;grid-template-columns:1.2fr 90px 160px 135px 110px auto;gap:8px}.rule-table{overflow-x:auto}.rule-table-head,.rule-row{min-width:1050px;display:grid;grid-template-columns:70px minmax(150px,1fr) 80px 130px 110px 100px 48px 240px;align-items:center;gap:8px}.rule-table-head{padding:9px 10px;color:var(--muted);background:#eae6de;font-size:.62rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.rule-row-wrap{min-width:1050px;border-bottom:1px solid #e8e4dc}.rule-row{min-height:62px;padding:8px 10px}.rule-row input,.rule-row select{height:37px}.rule-actions{display:flex;justify-content:flex-end;gap:5px}.toggle{position:relative;width:42px;height:24px;padding:3px;border-radius:99px;background:#c8c6c0}.toggle span{width:18px;height:18px;display:block;border-radius:50%;background:#fff;transition:transform .15s}.toggle.on{background:var(--blue)}.toggle.on span{transform:translate(18px)}.eligibility-row{padding:12px 90px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;background:#eff5f4}.eligibility-row>strong{margin-right:8px;font-size:.74rem}.bonus-chip{min-height:31px;padding:6px 9px;border:1px solid #c9d2d2;border-radius:99px;color:var(--muted);background:#fff;font-size:.68rem;font-weight:800}.bonus-chip.active{border-color:var(--blue);color:#fff;background:var(--blue)}.bonus-add{margin-bottom:12px;padding:12px;display:grid;grid-template-columns:1fr 130px auto;align-items:end;gap:9px;border-radius:9px;background:#eff5f4}.bonus-add label{display:grid;gap:4px;color:var(--muted);font-size:.65rem;font-weight:800;text-transform:uppercase}.bonus-list{display:grid;gap:7px}.bonus-list article{padding:10px 12px;display:grid;grid-template-columns:1fr minmax(130px,auto) 50px 40px;align-items:center;gap:14px;border:1px solid var(--line);border-radius:8px}.bonus-list p{margin:4px 0 0;color:var(--muted);font-size:.72rem}.bonus-name-input{max-width:260px;height:35px;font-weight:800}.bonus-list article>label{display:grid;grid-template-columns:auto 70px;align-items:center;gap:7px;color:var(--muted);font-size:.7rem;font-weight:800}.bonus-list article>label input{height:35px}.formula{display:grid;gap:3px}.formula small{color:var(--muted);font-size:.65rem}@media (max-width: 1180px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.score-launch{grid-template-columns:110px 1fr 250px}.quick-add{grid-template-columns:90px 1fr 1fr}.quick-add .field:nth-of-type(4),.quick-add .add-athlete{grid-row:2}.scoring-header{grid-template-columns:auto minmax(260px,1fr) auto auto auto}.score-exit span,.ride-timer{display:none}.scoring-workspace{grid-template-columns:minmax(0,1fr) 310px}.bonus-dock,.inline-bonus-dock{grid-template-columns:170px 1fr}.edit-tools{grid-column:1 / -1;display:flex;align-items:center}.edit-tools>span{grid-column:auto}.list-header,.competitor-row{grid-template-columns:64px 82px minmax(180px,1.4fr) 100px 70px 150px}.rule-add-row{grid-template-columns:1fr 90px 150px}}@media (max-width: 800px){body{padding-bottom:142px}.app-shell{display:block}.sidebar{display:none}.page{padding:24px 15px 45px}.page-header{flex-direction:column}.mobile-competition-bar{position:fixed;right:0;bottom:66px;left:0;min-height:76px;padding:9px 12px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;border-top:1px solid #2c4557;color:#fff;background:#102a3d;z-index:99;box-shadow:0 -7px 18px #071b2d24}.mobile-competition-field{min-width:0;display:grid;gap:4px;color:#a9bac6;font-size:.57rem;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.mobile-competition-field select{height:39px;padding:7px 31px 7px 10px;border-color:#355267;color:#fff;background:#0b2032;font-size:.77rem;font-weight:700}.mobile-new-competition{min-height:39px;padding:8px 12px;border-radius:8px;color:var(--ink);background:var(--lime);font-size:.75rem;font-weight:900;white-space:nowrap}.mobile-nav{position:fixed;bottom:0;left:0;right:0;height:66px;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #2c4557;color:#fff;background:var(--ink);z-index:100}.mobile-nav button{display:grid;place-items:center;align-content:center;gap:3px;color:#9eb0bc;background:transparent;font-size:.62rem;font-weight:800}.mobile-nav button span{font:800 .66rem Barlow Condensed}.mobile-nav button.active{color:var(--lime)}.score-launch{grid-template-columns:1fr}.launch-phase{padding:14px 18px;flex-direction:row;border-right:0;border-bottom:1px solid #284255}.launch-phase strong{writing-mode:initial;transform:none}.next-athlete{padding:24px 20px}.next-athlete>div{align-items:flex-start}.start-number{min-width:74px;height:74px;font-size:2.1rem}.start-scoring{min-height:92px}.dashboard-grid,.quick-actions,.form-grid,.choice-grid,.ruleset-choices{grid-template-columns:1fr}.wizard-top{grid-template-columns:1fr auto}.wizard-top>.button{grid-column:1 / -1;justify-self:start}.stepper small{display:none}.phase-row{grid-template-columns:1fr 1fr}.quick-add{grid-template-columns:90px 1fr}.quick-add .field:nth-of-type(3),.quick-add .field:nth-of-type(4){grid-column:1 / -1}.quick-add .add-athlete{grid-column:1 / -1;grid-row:auto}.list-header{display:none}.competitor-row{grid-template-columns:54px 76px 1fr;gap:8px}.competitor-row>:nth-child(4),.competitor-row>:nth-child(5){grid-row:2}.competitor-row>:nth-child(4){grid-column:2}.competitor-row>:nth-child(5){grid-column:3}.competitor-row>:nth-child(6){grid-column:2 / -1}.competitor-row.editing{grid-template-columns:50px 80px 1fr}.scoring-page{height:auto}.scoring-header{position:sticky;top:0;grid-template-columns:auto 1fr auto;padding:8px;min-height:82px}.athlete-strip>strong{font-size:1.8rem}.athlete-strip h1{font-size:1.35rem}.athlete-strip p{font-size:.66rem}.live-total{min-width:72px;padding-left:7px}.live-total strong{font-size:2.35rem}.undo-button,.finish-button{grid-row:2;min-height:42px}.undo-button{grid-column:1 / 3}.finish-button{grid-column:3}.scoring-workspace{display:flex;flex-direction:column}.event-log{order:-1;max-height:340px;border-left:0;border-bottom:1px solid var(--line)}.event-list{min-height:90px;max-height:160px}.bonus-dock,.inline-bonus-dock{grid-template-columns:1fr}.inline-bonus-dock .selected-summary,.selected-summary{border-right:0;border-bottom:1px solid var(--line)}.trick-zone{padding:9px}.trick-matrix{grid-template-columns:1fr}.ranking-header{display:none}.ranking-row{grid-template-columns:46px 1fr auto;padding:12px}.ride-dots{grid-column:2 / -1}.counting-score{grid-column:3;grid-row:1}.result-breakdown{padding:10px;grid-template-columns:1fr}.rule-section{padding:12px}.rule-add-row{grid-template-columns:1fr 90px}.rule-add-row>*:nth-child(n+3){grid-column:1 / -1}.bonus-add{grid-template-columns:1fr}.bonus-list article{grid-template-columns:1fr auto auto}.bonus-list article>div:first-child{grid-column:1 / -1}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}@media (max-width: 800px){.guide-header-actions{width:100%;justify-content:flex-start}.guide-header-actions .button{flex:1 1 210px}.guide-caveat{grid-template-columns:1fr;gap:8px}.guide-grid{grid-template-columns:1fr}.guide-card{min-height:0}}@media (max-width: 480px){.guide-tools{grid-template-columns:1fr}.guide-count{width:100%}.mobile-nav button{font-size:.56rem}}
