:root{--bg:#f5f0e5;--panel:#fffdf6;--panel2:#f5f2e8;--border:rgba(17,24,39,0.1);--text:#243d31;--muted:rgba(15,23,42,0.65);--asphalt:#2b2f36;--asphalt2:#3a4049;--green:#357754;--green2:#24543e;--yellow:#d8b35c;--red:#ac5144;--blue:#547f83;--shadow:0 10px 30px rgba(15,23,42,0.1);--radius:18px}.welcome{min-height:100vh;display:grid;grid-template-columns:1fr 1fr;background:#f6f7f5}.welcome-story{padding:clamp(28px,6vw,90px);background:#163e30;color:#f4f8ee;display:flex;flex-direction:column;justify-content:space-between;gap:60px;overflow:hidden}.welcome-brand{font-size:25px;font-weight:900;letter-spacing:2px}.welcome-brand span{display:block;font-size:10px;letter-spacing:3px;font-weight:500;margin-top:5px;color:#b7cebd}.welcome-eyebrow{font-size:11px;font-weight:800;letter-spacing:2px;color:#698776}.welcome-story .welcome-eyebrow{color:#b7db94}.welcome-story h1{font-size:clamp(40px,5vw,72px);line-height:1.04;letter-spacing:-2px;margin:20px 0}.welcome-story p{max-width:360px;line-height:1.7}.welcome-profile{color:#b7db94;max-width:480px}.welcome-profile span{font-size:10px;letter-spacing:3px}.welcome-profile svg{width:100%;display:block;margin-bottom:15px}.welcome-form{display:flex;align-items:center;justify-content:center;padding:40px 28px}.welcome-card{width:100%;max-width:430px}.welcome-card h2{font-size:34px;line-height:1.12;letter-spacing:-1px;margin:16px 0}.welcome-intro{color:#52645b;line-height:1.65}.welcome-fields{display:grid;grid-gap:18px;gap:18px;margin-top:26px}.welcome-fields label{display:grid;grid-gap:8px;gap:8px;font-size:14px;font-weight:700}.welcome-fields input{width:100%;padding:14px;border:1px solid #cdd6cd;border-radius:10px;font:inherit;background:white;color:#152f24}.welcome-fields input:focus{outline:2px solid #247c49;outline-offset:2px}.welcome-fields .btn{min-height:48px}.welcome-fields .small{margin:0}.welcome-error{color:#a52222;line-height:1.6}.welcome-footer{font-size:14px;margin-top:26px;color:#52645b}.welcome-footer a{color:#126b3a;font-weight:700;text-decoration:underline;text-underline-offset:3px}.welcome-text-button{border:0;background:transparent;color:#126b3a;text-decoration:underline;cursor:pointer;font:inherit}.welcome .btn.primary{background:#176b3f;color:#fff;border-color:#176b3f}.welcome .btn.primary:hover{background:#125432}.welcome .btn:disabled{opacity:.65;cursor:wait}.starter-summary{display:flex;gap:20px;justify-content:space-between;padding:20px 0;border-block:1px solid #dce3dc;margin:26px 0}.starter-summary span,.starter-summary strong{display:block}.starter-summary strong{font-size:24px;color:#163e30}.starter-summary span{font-size:11px;margin-top:5px;color:#52645b}@media (max-width:760px){.welcome{grid-template-columns:1fr}.welcome-story{padding:28px;gap:24px}.welcome-story h1{font-size:38px;margin:12px 0}.welcome-profile,.welcome-story>div>p:last-child{display:none}.welcome-form{padding:32px 24px}.welcome-card h2{font-size:29px}}*{box-sizing:border-box}body,html{padding:0;margin:0;background:var(--bg);color:var(--text);font-family:DM Sans,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,Apple Color Emoji,Segoe UI Emoji}a{color:inherit;text-decoration:none}main{width:100%}.container{max-width:1100px;margin:0 auto;padding:22px}.card{background:linear-gradient(180deg,var(--panel) 0,var(--panel2) 120%);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.card:hover{border-color:rgba(31,175,90,.25)}.small{font-size:13px;color:var(--muted)}.pill{gap:8px;padding:6px 10px;border-radius:999px;border:1px solid rgba(17,24,39,.1);background:rgba(255,255,255,.65);font-size:12px;font-weight:700;color:rgba(15,23,42,.82)}.btn,.pill{display:inline-flex;align-items:center}.btn{justify-content:center;gap:10px;padding:10px 14px;border-radius:999px;border:1px solid rgba(17,24,39,.14);background:#fff;box-shadow:0 8px 20px rgba(15,23,42,.08);cursor:pointer;font-weight:800}.btn:hover{border-color:rgba(31,175,90,.35);transform:translateY(-1px)}.btnPrimary{background:linear-gradient(180deg,var(--green) 0,var(--green2) 100%);color:#fff;border-color:rgba(14,143,70,.5)}.btnPrimary:hover{filter:brightness(1.02)}hr{border:none;border-top:1px solid rgba(17,24,39,.08);margin:18px 0}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-400.ttf) format("truetype");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:DM Sans;src:url(/fonts/dm-sans-700.ttf) format("truetype");font-style:normal;font-weight:600 900;font-display:swap}@font-face{font-family:Bricolage;src:url(/fonts/bricolage-700.ttf) format("truetype");font-style:normal;font-weight:600 900;font-display:swap}:root{--accent:#b38b37;--forest:#24543e;--sage:#dce4ce;--paper:#fffdf6;--muted:#6d7566;--border:#dedfce;--shadow:0 5px 20px #36483209}body{font-size:15px;line-height:1.55}button,input,select,textarea{font:inherit;color:inherit}a,button,input,select{touch-action:manipulation}button:disabled{opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #b58e3a;outline-offset:4px}.h1,.h2,h1,h2,h3{font-family:Bricolage,DM Sans,sans-serif;font-weight:700;line-height:1.12;letter-spacing:-.035em}.h1,h1{font-size:clamp(28px,3.5vw,42px);margin:0 0 12px}.h2,h2{font-size:23px;margin:0 0 8px}h3{font-size:19px}p{margin:0 0 14px}.eyebrow{font-size:10px;letter-spacing:.14em;text-transform:uppercase;font-weight:700;color:#728169;margin-bottom:10px}.small{font-size:12px;line-height:1.5}.btn,.pillBtn{font-size:13px;line-height:1.3;min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 17px;background:var(--paper);border:1px solid var(--border);border-radius:12px;font-weight:700;box-shadow:none;cursor:pointer;text-decoration:none}.btn.primary,.btnPrimary{background:var(--forest);color:#fffdf6;border-color:var(--forest)}.btn:hover,.pillBtn:hover{background:#e9eedf;transform:none}.btn.primary:hover,.btnPrimary:hover{background:#173d2c}.pillBtn[aria-pressed=true]{background:#dce7d4;border-color:#819d78}.text-button{font-size:12px;border:0;background:none;color:var(--forest);text-decoration:underline;text-underline-offset:4px;cursor:pointer;padding:8px 0}.badge,.pill{display:inline-flex;align-items:center;gap:5px;border:1px solid #dce1d1;border-radius:7px;padding:4px 8px;font-size:10px;font-weight:700;background:#eef1e4;color:#42604a}.hr{height:1px;background:var(--border);margin:18px 0}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.game-shell{max-width:1440px;margin:0 auto;padding:22px 36px 50px}.game-header{justify-content:space-between;gap:24px;padding:5px 0 22px;border-bottom:1px solid var(--border);margin-bottom:30px}.game-brand,.game-header{display:flex;align-items:center}.game-brand{gap:12px;min-width:190px}.brand-mark{display:grid;place-items:center;width:40px;height:40px;background:var(--forest);color:#e6dbb9;border-radius:50%}.brand-word{font-family:Bricolage,sans-serif;font-size:23px;letter-spacing:-.05em;line-height:1.1}.brand-word small{display:block;font:9px DM Sans,sans-serif;text-transform:uppercase;letter-spacing:.16em;margin-top:5px;color:var(--muted)}.game-nav{display:flex;align-items:center;gap:5px;flex-wrap:wrap}.game-nav a{font-size:12px;font-weight:700;padding:10px 13px;border-radius:10px;color:#6e7969}.game-nav a[aria-current=page]{background:#e0e8d4;color:var(--forest)}.game-nav a:hover{background:#e9edde}.game-date{font-size:10px;color:var(--muted);text-align:right}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:flex-end;margin:0 0 24px}.page-heading h1{margin:0}.replay-layout{display:grid;grid-template-columns:minmax(0,1fr) 272px;grid-gap:24px;gap:24px;align-items:start}.replay-main{min-width:0;display:grid;grid-gap:18px;gap:18px}.race-titlebar{display:flex;justify-content:space-between;gap:20px;align-items:center}.race-titlebar h1{font-size:clamp(28px,3vw,39px);margin:0}.distance-display{display:grid;text-align:right;flex-shrink:0}.distance-display strong{font-family:Bricolage,sans-serif;font-size:44px;line-height:1.1;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.distance-display span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted)}.race-conditions{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;color:#687661}.race-conditions span+span:before{content:"·";margin-right:18px;color:#a2ab94}.race-scene{border:1px solid #d4dcc4;border-radius:20px;overflow:hidden;background:#e7ecd9}.race-scene svg{display:block;width:100%;height:auto}.scene-caption{display:flex;justify-content:space-between;gap:8px;padding:11px 17px;font-size:10px;color:#536b51;background:#e8eddd}.scene-caption span:first-child{font-weight:700}.replay-controls{padding:0 2px}.control-row{gap:10px;flex-wrap:wrap}.control-row,.speed-control{display:flex;align-items:center}.speed-control{margin-left:auto;gap:8px;font-size:11px;color:var(--muted)}.speed-control select{background:var(--paper);border:1px solid var(--border);border-radius:9px;padding:8px}.replay-range{width:100%;accent-color:var(--forest);margin:16px 0 0;cursor:pointer}.control-footnote{display:flex;justify-content:space-between;gap:10px;font-size:9px;color:var(--muted)}.control-footnote span:nth-child(2){text-align:center}.resume-button{display:block;margin-top:8px}.commentary-panel,.groups-panel,.profile-panel,.roster-panel{padding:20px}.panel-heading{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:17px}.panel-heading h2{font-size:19px;margin:0}.panel-heading>span{font-size:10px;color:var(--muted)}.race-feed{padding:0;margin:0;list-style:none;display:grid;grid-gap:0;gap:0}.race-feed li{display:flex;align-items:center;gap:14px;border-top:1px solid #e7e6d9;padding:15px 0}.race-feed li:first-child{border:0}.race-feed li.latest p{font-weight:700}.race-feed p{font-size:13px;line-height:1.5;margin:0;flex:1 1}.feed-km{display:grid;min-width:34px;text-align:center;font-family:Bricolage,sans-serif;font-size:20px;color:#3c6749;line-height:1.1}.feed-km small{font:9px DM Sans,sans-serif;margin-top:3px;color:var(--muted)}.own-chip{font-size:9px;background:#e0e9d4;padding:4px 7px;border-radius:7px;white-space:nowrap;color:var(--forest)}.replay-sidebar{display:grid;grid-gap:18px;gap:18px}.captain-panel{padding:22px;display:flex;flex-direction:column;align-items:center;text-align:center}.captain-panel h2{font-size:22px;margin:14px 0 7px}.captain-gap{font-weight:700;font-size:13px;margin:0 0 4px;color:var(--forest)}.captain-panel .text-button{margin-top:8px}.replay-rider{display:grid;grid-template-columns:14px 1fr auto;align-items:center;grid-gap:8px;gap:8px;width:100%;background:none;border:0;border-radius:9px;text-align:left;padding:10px 4px;cursor:pointer;font-size:11px}.replay-rider.active{background:#e7eddb}.replay-rider small{display:block;font-size:9px;color:var(--muted);margin-top:2px}.replay-rider strong{font-size:10px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.rider-dot{color:#aa882f}.group-row{display:grid;grid-template-columns:1fr 25px 60px;grid-gap:8px;gap:8px;padding:7px 0;font-size:11px}.group-row span:last-child{text-align:right;color:var(--muted)}.finish-panel{background:#e4ecd7;padding:30px}.finish-panel h2{font-size:30px}.empty-state{padding:50px;text-align:center;max-width:760px;margin:30px auto}.empty-state .btn{margin:8px}.empty-state .race-feed{text-align:left;margin-top:24px}.loading-wheel{width:28px;height:28px;border:3px solid #d6ddc8;border-top:3px solid var(--forest);border-radius:50%;margin:0 auto 20px;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}.welcome{background:var(--bg)}.welcome-story{background:#28523d;color:#f6f0dc}.welcome-brand,.welcome-card h2,.welcome-story h1{font-family:Bricolage,DM Sans,sans-serif}.welcome-story .welcome-eyebrow{color:#d8c289}.welcome-profile{color:#c2cfaa}.welcome-fields input{background:var(--paper)}@media (max-width:1050px){.game-shell{padding:20px}.game-header{flex-wrap:wrap;gap:16px}.game-nav{order:3;width:100%;overflow-x:auto;flex-wrap:nowrap}.game-nav a{white-space:nowrap}.replay-layout{grid-template-columns:minmax(0,1fr) 235px;gap:16px}.commentary-panel,.groups-panel,.profile-panel,.roster-panel{padding:16px}}@media (max-width:760px){.game-shell{padding:15px}.game-header{margin-bottom:22px}.replay-layout{grid-template-columns:1fr}.replay-sidebar{grid-template-columns:1fr 1fr}.captain-panel{grid-row:span 2}.roster-panel{grid-column:1/-1;grid-row:1}.replay-rider{padding:10px}.groups-panel{padding:14px}.race-titlebar h1{font-size:28px}.distance-display strong{font-size:34px}.race-conditions{gap:8px;font-size:10px}.race-conditions span+span:before{margin-right:8px}.scene-caption{font-size:9px;padding:9px 12px}.control-row{gap:7px}.control-row .btn{font-size:11px;padding:10px 12px}.control-row>.text-button{display:none}.control-footnote{font-size:8px}.control-footnote span:nth-child(2){max-width:200px}.race-feed p{font-size:12px}.own-chip{display:none}.empty-state{padding:28px 18px}.brand-word{font-size:22px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.profile-scale{display:flex;justify-content:space-between;font-size:9px;color:var(--muted);gap:10px}.route-advice{font-size:12px;color:#617259;margin:18px 0}.route-keypoints{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.route-keypoints .pillBtn{font-size:11px}.route-keypoints span{font-weight:400;color:var(--muted)}.page-intro{max-width:700px;color:var(--muted);line-height:1.6;margin:-10px 0 26px}.calendar-toolbar,.rider-selection-toolbar{display:flex;align-items:center;gap:20px;flex-wrap:wrap;margin:24px 0}.segmented{display:flex;background:#e7e9da;padding:4px;border-radius:14px}.calendar-tabs button,.segmented button{border:0;background:transparent;padding:11px 17px;border-radius:10px;color:var(--forest);font:inherit;font-weight:700;cursor:pointer}.segmented button[aria-pressed=true]{background:var(--forest);color:#fffaf0}.calendar-tabs{display:flex;gap:4px;flex:1 1;flex-wrap:wrap}.calendar-tabs button{font-size:12px;color:var(--muted)}.calendar-tabs button[aria-pressed=true]{background:#fffaf0;box-shadow:0 2px 8px #244a3510;color:var(--forest)}.event-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));grid-gap:18px;gap:18px}.event-card{display:flex;flex-direction:column;align-items:flex-start;text-align:left;padding:25px;border:1px solid var(--border);border-radius:22px;background:#fffcf4;color:var(--text);cursor:pointer;font:inherit;transition:transform .15s,border-color .15s}.event-card:hover{transform:translateY(-3px);border-color:#739273}.event-card.selected{border:2px solid var(--forest);padding:24px;background:#edf0df}.event-card h2{margin:10px 0;font-size:23px}.event-date{color:var(--muted);font-size:13px}.event-meta{display:flex;justify-content:space-between;gap:10px;width:100%;font-size:11px;margin:22px 0 16px;flex-wrap:wrap}.event-action{font-size:12px;font-weight:700;color:var(--forest);padding-top:16px;width:100%}.event-action,.race-preparation{border-top:1px solid var(--border)}.race-preparation{margin-top:38px;padding-top:26px}.deadline-badge,.save-badge{font-size:12px;padding:9px 13px;border-radius:12px;background:#efe3c8;color:#775624;white-space:nowrap}.save-badge.saved{background:#e1ebd8;color:#335638}.lineup-summary,.race-ready{padding:25px;margin:22px 0}.race-ready .btn{margin-right:18px}.lineup-slots{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));grid-gap:10px;gap:10px;margin:24px 0}.lineup-slot{position:relative;min-height:150px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;border:1px dashed #c4c9b5;border-radius:15px;padding:12px 5px;text-align:center;font-size:10px;color:var(--muted)}.lineup-slot:has(svg){border-style:solid;background:#f6f3e9}.lineup-slot.captain{border:2px solid #c5a153;background:#f4ecd6}.lineup-slot strong{color:var(--forest);max-width:100%;overflow-wrap:anywhere}.lineup-slot .text-button{font-size:9px}.empty-slot{font-family:Bricolage,sans-serif;font-size:29px;color:#a8b59d}.remove-rider{position:absolute;right:3px;top:2px;border:0;background:transparent;color:#7e8575;cursor:pointer;font-size:21px;padding:2px 6px}.lineup-save{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;font-size:13px}.rider-selection-toolbar>div{flex:1 1}.rider-selection-toolbar h2{margin-bottom:5px}.rider-selection-toolbar label{font-size:12px}.rider-selection-toolbar select{margin-left:8px}.lineup-riders{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));grid-gap:12px;gap:12px}.lineup-rider{display:flex;align-items:center;gap:12px;padding:13px;background:#fffcf4;border:1px solid var(--border);border-radius:16px;color:var(--text);text-align:left;font:inherit;cursor:pointer}.lineup-rider.selected{border:2px solid #628862;background:#e8eedc;padding:12px}.lineup-rider>div:not([role=img]){flex:1 1;min-width:0}.lineup-rider strong{font-size:12px;display:block}.lineup-rider div>span{font-size:10px;color:var(--muted);display:block;margin-top:7px}.selection-mark{font-size:22px;color:var(--forest)}.lineup-rider:disabled{cursor:default;opacity:.55}.lineup-presets{margin:25px 0}.lineup-presets summary{cursor:pointer;color:var(--forest);font-size:13px;padding:15px 0}.lineup-summary>.small{margin-bottom:0}@media (max-width:1050px){.lineup-slots{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (max-width:760px){.calendar-toolbar{gap:12px}.calendar-tabs{order:3;flex-basis:100%}.calendar-tabs button{padding:10px}.event-grid{grid-template-columns:1fr}.event-card{padding:21px}.lineup-slots{gap:6px}.lineup-slot{min-height:130px}.lineup-slot svg{max-width:48px}.lineup-slot .text-button{padding:0;font-size:8px}.lineup-summary{padding:15px}.lineup-save .btn{width:100%}.deadline-badge{white-space:normal}.lineup-riders{grid-template-columns:1fr}.rider-selection-toolbar{align-items:flex-start}.rider-selection-toolbar>div{flex-basis:100%}.race-preparation .page-heading{align-items:flex-start;flex-direction:column}}.result-overview{padding:25px;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.result-overview h2{margin:5px 0}.result-overview label{font-size:12px}.result-summary{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:16px;gap:16px;margin:22px 0}.result-summary>div{background:#e6ecd8;border-radius:18px;padding:22px}.result-summary span{display:block;font-size:12px;color:var(--muted)}.result-summary strong{font-family:Bricolage,sans-serif;font-size:38px;color:var(--forest)}.results-table{padding:24px;margin:22px 0}.table-scroll{overflow-x:auto}.own-result{background:#e8eedc}.own-result .own-chip{margin-left:10px}.results-table .table td{white-space:nowrap}@media (max-width:760px){.result-summary{gap:8px}.result-summary>div{padding:13px}.result-summary strong{font-size:27px}.result-summary span{font-size:10px}.results-table{padding:14px}}.spoiler-choice{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--muted);margin:20px 0}.spoiler-choice input{width:auto;accent-color:var(--forest)}.history-list{display:grid;grid-gap:15px;gap:15px}.history-race{padding:25px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}.history-race h2{margin:6px 0}.history-race p{font-size:12px}.admin-calendar{margin-top:28px;padding-top:24px;border-top:1px solid var(--border)}.calendar-form{border:0;padding:0;margin:20px 0;display:grid;grid-template-columns:1fr 1fr;grid-gap:18px;gap:18px}.calendar-form label{display:flex;flex-direction:column;gap:8px;font-size:12px}.calendar-form input,.calendar-form select{padding:12px;border:1px solid var(--border);border-radius:10px;background:#fffdf6;color:var(--text);font:inherit}.calendar-form .btn{align-self:end}@media (max-width:760px){.calendar-form{grid-template-columns:1fr}}.race-scene-canvas{position:relative;background:#dce3d0}.race-scene-art{object-fit:cover}.race-scene-canvas>svg{position:relative;z-index:1;display:block;width:100%;height:auto}.experience-welcome{background:var(--bg);padding:20px;gap:20px;min-height:100svh;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.experience-welcome .welcome-story{position:relative;padding:40px 44px 24px;border-radius:24px;background:#e9e6d5;color:#263e32;gap:24px;justify-content:flex-start}.experience-welcome .welcome-brand{font-family:Bricolage,sans-serif;font-size:34px;letter-spacing:-1.7px;line-height:1;text-decoration:none}.experience-welcome .welcome-brand span{font-size:9px;letter-spacing:3px;color:#546749;margin-top:9px}.experience-welcome .welcome-story-copy{position:relative;z-index:1;margin-top:30px}.experience-welcome .welcome-story h2{font-family:Bricolage,sans-serif;font-size:clamp(38px,4.3vw,65px);line-height:1.05;letter-spacing:-2px;margin:16px 0}.experience-welcome .welcome-story h2 em{color:#778751;font-style:normal}.experience-welcome .welcome-story .welcome-eyebrow{color:#586a43}.experience-welcome .welcome-story-copy>p:last-child{display:block;font-size:15px;line-height:1.7;max-width:290px}.welcome-art{position:relative;min-height:320px;flex:1 1;margin:15px -44px -70px;overflow:hidden}.welcome-art>img{object-fit:cover;object-position:40% 50%}.welcome-art:after{content:"";position:absolute;inset:0;background:linear-gradient(#e9e6d5,transparent 35%,#1e3c2bbb)}.welcome-art-portrait{position:absolute;z-index:1;width:220px;aspect-ratio:320/338;left:10%;bottom:65px;transform:rotate(-7deg);border:solid #fff8e8;border-width:8px 8px 24px;border-radius:6px;overflow:hidden;box-shadow:0 15px 30px #182d2940}.welcome-art-portrait>div{position:absolute;width:320%;height:454.44%;left:-109.375%;top:-17.7515%}.welcome-art-note{position:absolute;z-index:1;bottom:100px;right:8%;writing-mode:vertical-rl;color:#fff8e8;font-size:10px;letter-spacing:3px}.experience-welcome .welcome-story-foot{position:relative;z-index:1;color:#fff8e8;font-size:11px;letter-spacing:.3px;max-width:none}.experience-welcome .welcome-form{padding:45px 36px}.experience-welcome .welcome-card{max-width:420px}.experience-welcome .welcome-card h1{font-family:Bricolage,sans-serif;font-size:clamp(34px,3.2vw,46px);letter-spacing:-1.6px;line-height:1.1;margin:16px 0}.experience-welcome .welcome-eyebrow{color:#65734f}.experience-welcome .welcome-fields{gap:18px;margin-top:28px}.experience-welcome .welcome-fields input{background:#fffdf4;border-color:#cbd0b9;border-radius:12px;min-height:52px;font-size:16px}.experience-welcome .btn.primary{border:1px solid #27513d;border-radius:12px;background:#27513d;color:#fff9e9;min-height:52px;box-shadow:0 5px 0 #d5dcc9;font-size:15px}.experience-welcome .btn.primary:hover{background:#193e2b}.experience-welcome .welcome-status:empty{display:none}.experience-welcome .welcome-status{font-size:13px;margin:0}.experience-welcome .welcome-error{background:#f3e4d8;border-left:3px solid #9c4937;border-radius:6px;padding:12px;margin:0;color:#853c2f}.experience-welcome .welcome-footer{border-top:1px solid #dbdecb;padding-top:24px}.welcome-back{display:inline-block;font-size:12px;color:#52664d;padding:8px 0}.experience-welcome .starter-summary{background:#e9ead9;border:1px solid #d4d9c1;border-radius:16px}.experience-welcome a:focus-visible,.experience-welcome button:focus-visible,.race-calendar a:focus-visible,.race-calendar button:focus-visible{outline:3px solid #9c752e;outline-offset:4px}.calendar-hero{position:relative;overflow:hidden;min-height:300px;border-radius:24px;margin:26px 0 0;color:#fff9e8;background:#274934}.calendar-hero>img{object-fit:cover;object-position:center 55%}.calendar-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#183d2df5,#183d2d80 60%,#183d2d18)}.calendar-hero>div{position:relative;z-index:1;padding:35px 42px;max-width:600px}.calendar-hero h1{font-family:Bricolage,sans-serif;font-size:clamp(38px,4vw,58px);line-height:1.05;letter-spacing:-2px;margin:16px 0;color:inherit}.calendar-hero h1 em{font-style:normal;color:#d7dfb0}.calendar-hero p{font-size:14px;line-height:1.6;max-width:330px}.calendar-hero .eyebrow{color:#e5d6a9;font-size:10px}.calendar-hero-note{position:absolute;z-index:1;right:30px;bottom:26px;font-size:9px;letter-spacing:1.5px}.race-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:20px;gap:20px;padding:22px 0;list-style:none;border-bottom:1px solid #d6dbc4;margin:0 0 24px}.race-steps li{display:flex;align-items:center;gap:14px;color:#53634e}.race-steps li>span{font-family:Bricolage,sans-serif;font-size:25px;color:#8f9a75}.race-steps li[aria-current=step]>span{color:#2f5b41}.race-steps strong{display:block;font-size:14px}.race-steps small{display:block;margin-top:4px;font-size:11px}.race-calendar .calendar-toolbar{padding:8px 0}.race-calendar .event-card{border-radius:18px;border-color:#d0d7bd;border-top:4px solid #80936d;min-height:236px;box-shadow:0 4px 0 #d4d9c329}.race-calendar .event-card.selected{border:2px solid #2f5b41;border-top:4px solid #2f5b41;padding:24px;background:#e8edda}.race-calendar .event-card h2{font-size:26px;letter-spacing:-.8px}.race-calendar .event-card .event-meta{margin-top:auto;padding-top:20px}.race-calendar .event-meta strong{background:#e5e9d7;padding:4px 8px;border-radius:5px}.race-calendar .empty-state{background:#eeebdc;border:1px solid #d5dbc4;padding:42px 25px}.race-calendar .race-preparation{scroll-margin-top:24px}.race-calendar .lineup-summary{background:#fffdf4;border:1px solid #d2d9c1;border-radius:22px;scroll-margin-top:20px}.lineup-jump{display:flex;justify-content:space-between;padding:18px 22px;margin:16px 0;text-decoration:none;background:#e6e9d6;border:1px solid #d0d7bd;border-radius:12px;color:#2b553c;font-size:14px;font-weight:700}.race-calendar .lineup-slot{background:#f0efdf;border-color:#cad2b7;padding:22px 6px 8px}.race-calendar .lineup-slot.captain{background:#f3e8c9;border-color:#a8873d}.race-calendar .lineup-slot strong{font-size:12px}.race-calendar .lineup-slot .text-button{font-size:11px;min-height:44px;padding:5px 2px;line-height:1.3}.race-calendar .remove-rider{min-width:32px;min-height:32px;background:#fffdf4;border-radius:50%;font-size:20px;line-height:1}.race-calendar .lineup-rider{min-height:96px;border-color:#d2d9c1;background:#fffdf4}.race-calendar .lineup-rider strong{font-size:15px}.race-calendar .lineup-rider div>span{font-size:12px;line-height:1.5}.race-calendar .lineup-rider.selected{border-color:#3f6d47;background:#e6ebd6}.race-calendar .lineup-save{background:#f0efdf;padding:17px;border-radius:14px}.race-calendar .lineup-save .btn.primary{min-height:48px;border-radius:10px}.race-calendar .rider-selection-toolbar select{background:#fffdf4;border:1px solid #d2d9c1;border-radius:10px;min-height:44px;padding:8px;color:#294631}@media(max-width:1000px){.experience-welcome .welcome-story{padding:30px 26px 20px}.welcome-art{margin-left:-26px;margin-right:-26px}.welcome-art-portrait{width:180px}.experience-welcome .welcome-form{padding:30px 18px}.calendar-hero-note{display:none}}@media(max-width:760px){.experience-welcome{padding:0;gap:0;grid-template-columns:1fr}.experience-welcome .welcome-story{padding:23px 25px;border-radius:0;min-height:190px;gap:16px;background:#e9e6d5}.experience-welcome .welcome-story-copy{margin-top:0;max-width:65%}.experience-welcome .welcome-story h2{font-size:26px;letter-spacing:-.8px;margin:8px 0}.experience-welcome .welcome-story-copy>p:last-child,.experience-welcome .welcome-story-foot,.welcome-art-note{display:none}.experience-welcome .welcome-brand{font-size:29px}.experience-welcome .welcome-story .welcome-eyebrow{font-size:8px;letter-spacing:1px}.welcome-art{position:absolute;right:0;bottom:0;width:35%;height:160px;min-height:0;margin:0;background:transparent;overflow:visible}.welcome-art:after,.welcome-art>img{display:none}.welcome-art-portrait{width:115px;max-width:90%;left:0;bottom:12px;border-width:5px 5px 15px}.experience-welcome .welcome-form{padding:34px 25px 40px}.experience-welcome .welcome-card h1{font-size:36px}.experience-welcome .welcome-card{max-width:460px}.calendar-hero{min-height:260px;margin-top:20px;border-radius:19px}.calendar-hero>div{padding:28px 25px}.calendar-hero h1{font-size:42px}.calendar-hero p{font-size:13px;max-width:260px}.race-steps{gap:12px;padding:20px 0}.race-steps li{display:block}.race-steps li>span{font-size:21px}.race-steps strong{font-size:12px;margin-top:8px;line-height:1.4}.race-steps small{display:none}.race-calendar .lineup-slots{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.race-calendar .lineup-slot{min-height:165px}.race-calendar .lineup-slot svg{max-width:none}.race-calendar .lineup-slot .text-button{font-size:12px}.race-calendar .lineup-summary{padding:16px}.race-calendar .lineup-save{padding:13px}.race-calendar .lineup-rider strong{font-size:14px}.race-calendar .event-card{min-height:215px}}@media(prefers-reduced-motion:reduce){.race-calendar .event-card{transition:none}.race-calendar .event-card:hover{transform:none}}.race-orders{border:1px solid #d6dcc8;border-radius:18px;padding:20px;margin:24px 0;background:#f8f7ee;min-width:0}.race-orders legend{font-size:1.3rem;font-weight:800;padding:0 8px}.race-orders label{display:grid;grid-gap:6px;gap:6px;font-size:.85rem}.race-orders select{width:100%;min-height:44px;padding:8px;border:1px solid #aab69a;border-radius:8px;background:#fffdf5;color:#173f33}.race-order-row{display:grid;grid-template-columns:1fr 1fr 1fr;grid-gap:12px;gap:12px;padding:12px 0;border-top:1px solid #d6dcc8;align-items:center}.race-orders:disabled{opacity:.75}@media(max-width:600px){.race-order-row{grid-template-columns:1fr 1fr}.race-order-row strong{grid-column:1/-1}.race-orders{padding:12px}}.club-badge{width:46px;height:52px;flex-shrink:0}.game-shell .game-date{display:flex;align-items:center;gap:12px}.studio-skip{position:fixed;top:-100px;left:16px;z-index:100;padding:14px;background:#fff9eb;color:#283f35;border:2px solid #285440;border-radius:10px}.studio-skip:focus{top:12px}.studio-dialog-heading{position:-webkit-sticky;position:sticky;top:-28px;background:var(--studio-paper);z-index:2}.studio-table .studio-best-value{background:#dce9cf;box-shadow:inset 3px 0 #527247}.studio-table th:first-child{position:-webkit-sticky;position:sticky;left:0;background:var(--studio-paper);z-index:1}.atlas-directory{padding:20px 24px;background:var(--studio-paper);border:1px solid var(--studio-line);border-radius:16px;margin:18px 0}.atlas-directory summary{cursor:pointer;min-height:44px;font-weight:700;display:list-item}.atlas-directory-controls{display:flex;gap:20px;flex-wrap:wrap}.atlas-directory-controls label{display:grid;grid-gap:8px;gap:8px;flex:1 1;min-width:180px;font-size:13px}.atlas-directory-controls input,.atlas-directory-controls select{min-height:44px;border:1px solid var(--studio-line);border-radius:9px;padding:10px;background:#fffdf6;color:var(--studio-ink);width:100%;box-sizing:border-box}.atlas-directory-results{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:10px;gap:10px}.atlas-directory-results button{text-align:left;padding:16px;border:1px solid var(--studio-line);border-radius:12px;background:#f4ecd9;color:var(--studio-ink);cursor:pointer;min-height:64px}.atlas-directory-results button span{display:block;margin-top:8px;font-size:11px;text-transform:capitalize}.atlas-place-notes{border-left:3px solid var(--studio-honey);padding-left:15px;margin:20px 0;line-height:1.7;font-size:13px}.atlas-place-notes:empty{display:none}.identity-questions{display:grid;grid-template-columns:1fr 1.3fr;grid-gap:40px;gap:40px;padding:0 0 60px}.identity-questions h2{font:700 clamp(32px,4vw,48px) Bricolage,sans-serif;line-height:1.1;margin:18px 0}.identity-questions p{line-height:1.7;max-width:500px;color:#596451}.identity-questions details{padding:20px;margin-bottom:12px;background:var(--studio-paper);border:1px solid var(--studio-line);border-radius:14px}.identity-questions summary{cursor:pointer;font-weight:700;min-height:44px}@media(max-width:700px){.atlas-directory-results,.identity-questions{grid-template-columns:1fr}.identity-questions{gap:16px}.studio-dialog-heading{top:-16px}.game-shell .game-date{gap:6px}.club-badge{width:35px;height:40px}}.supporter-kit-studio{border-top:1px solid #d6cdb7;margin:24px 0;padding:20px 0}.supporter-kit-studio summary{cursor:pointer;font-weight:700;min-height:44px}.supporter-kit-studio .studio-jersey{display:block;max-width:240px;margin:auto}.studio-custom-colors{display:flex;gap:20px;flex-wrap:wrap}.studio-custom-colors label{display:grid;grid-gap:8px;gap:8px}.studio-custom-colors input{width:80px;height:44px;padding:4px;border:1px solid #d6cdb7;border-radius:8px}:root{--studio-paper:#fff9eb;--studio-cream:#f2ead8;--studio-ink:#283f35;--studio-forest:#285440;--studio-honey:#dfb665;--studio-clay:#ad6349;--studio-line:#d6cdb7;--studio-shadow:0 5px 0 #c9baa32b,0 14px 35px #423c2510;--bg:var(--studio-cream);--panel:var(--studio-paper);--text:var(--studio-ink)}body{background:radial-gradient(ellipse at 15% 0,#fffcf0 0,transparent 60%),var(--studio-cream)}.game-shell{max-width:1500px}.game-shell .game-header{border-bottom:2px solid var(--studio-line);padding-bottom:22px}.game-shell .game-brand .brand-mark{background:var(--studio-forest);color:var(--studio-paper);border-radius:16px 8px 16px 8px;box-shadow:3px 3px 0 var(--studio-honey)}.game-shell .game-nav{flex-wrap:wrap}.game-shell .game-nav a{border-radius:9px;min-height:44px;display:inline-flex;align-items:center}.game-shell .game-nav a[aria-current=page]{background:var(--studio-forest);color:var(--studio-paper);box-shadow:0 3px 0 #142e24}.experience-welcome .btn,.game-shell .btn,.identity-home .btn{border-radius:10px;min-height:44px;font-weight:700;transition:background .15s,box-shadow .15s}.experience-welcome .btn.primary,.game-shell .btn.primary,.identity-home .btn.primary{background:var(--studio-forest);color:var(--studio-paper);border-color:var(--studio-forest);box-shadow:0 3px 0 #153729}button:disabled{cursor:not-allowed;opacity:.55}[tabindex]:focus-visible,a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ac6b30;outline-offset:3px}.game-shell .club-heading{padding:30px 0 12px;margin-top:0}.game-shell .club-heading h1{font-size:clamp(36px,4vw,62px);line-height:1.04}.game-shell .club-overview{gap:24px}.game-shell .club-race{border-radius:24px 8px 24px 8px;box-shadow:var(--studio-shadow)}.game-shell .club-stats{background:#e6dcc5;border-color:var(--studio-line);box-shadow:inset 0 0 0 5px #f2ead8}.game-shell .club-toolbar{padding:20px;border:1px solid var(--studio-line);border-radius:16px;background:#fff9ebc9}.game-shell .club-roster{gap:22px}.game-shell .club-roster .club-rider{border-color:#cfc2a8;border-radius:18px 18px 10px 10px;background:var(--studio-paper);box-shadow:var(--studio-shadow)}.game-shell .club-roster .club-rider-art{background:radial-gradient(ellipse at 50% 70%,#cbd2b6,#e8dfc8);border-bottom:4px solid #d8bf86}.game-shell .club-roster .club-rider-body{padding:20px}.game-shell .club-roster .club-rider h3{font-size:25px}.studio-rider-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}.studio-rider-actions .btn{font-size:12px;padding:9px 12px;flex:1 1;white-space:nowrap}.studio-rider-actions [aria-pressed=true]{background:var(--studio-forest);color:white}.studio-compare-bar{position:-webkit-sticky;position:sticky;bottom:12px;z-index:20;margin:24px auto 0;width:-moz-fit-content;width:fit-content;max-width:100%;padding:14px 20px;border:1px solid var(--studio-line);background:var(--studio-paper);border-radius:16px;display:flex;align-items:center;gap:12px;flex-wrap:wrap;box-shadow:0 6px 30px #233a3340}.studio-dialog{color:var(--studio-ink);background:var(--studio-paper);border:1px solid var(--studio-line);border-radius:24px;width:min(1000px,calc(100vw - 32px));max-height:calc(100dvh - 32px);padding:28px;box-sizing:border-box}.studio-dialog::-webkit-backdrop{background:#172c26b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.studio-dialog::backdrop{background:#172c26b8;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.studio-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--studio-line);padding-bottom:18px}.studio-dialog-heading h2{font:700 34px Bricolage,sans-serif;margin:8px 0}.studio-dialog .btn{min-height:44px}.studio-dossier-cast{display:grid;grid-template-columns:repeat(var(--rider-count),minmax(0,1fr));grid-gap:18px;gap:18px;margin:22px 0}.studio-dossier-cast article{text-align:center;min-width:0}.studio-dossier-cast .rider-avatar{margin:auto;width:100%!important;max-width:240px;height:auto!important;aspect-ratio:1;border-radius:50% 50% 12px 12px!important}.studio-dossier-cast h3{font:700 24px Bricolage,sans-serif;margin:14px 0 8px;overflow-wrap:anywhere}.studio-caption,.studio-dossier-cast p{font-size:12px;color:#5b6557;line-height:1.6}.studio-table-wrap{overflow-x:auto;border:1px solid var(--studio-line);border-radius:12px}.studio-table{width:100%;border-collapse:collapse;text-align:left}.studio-table td,.studio-table th{padding:14px 18px;border-bottom:1px solid var(--studio-line);min-width:130px}.studio-table thead{background:#e9dfc8}.studio-table tbody tr:nth-child(2n){background:#f6efdd}.studio-table small{display:block;font-weight:400;font-size:11px;margin-top:5px;max-width:250px}.studio-table meter{display:block;width:100%;max-width:160px;height:10px;margin-top:5px;accent-color:var(--studio-forest)}.studio-kit-layout{display:grid;grid-template-columns:1fr 1fr;grid-gap:28px;gap:28px}.studio-kit-display{text-align:center;background:radial-gradient(ellipse,#fdf5df,#dfd2b6);border:1px solid var(--studio-line);border-radius:26px 8px 26px 8px;padding:30px}.studio-kit-display h2{font:700 clamp(28px,3vw,44px) Bricolage,sans-serif;overflow-wrap:anywhere}.studio-jersey{width:100%;max-width:390px;filter:drop-shadow(8px 15px 8px #3f432329)}.studio-panel{border:1px solid var(--studio-line);border-radius:20px;background:var(--studio-paper);padding:30px}.studio-panel h2{font:700 36px Bricolage,sans-serif}.studio-panel p{line-height:1.6}.studio-panel fieldset{border:0;padding:0;margin:24px 0}.studio-panel legend{font-weight:700;margin-bottom:12px}.studio-palette-options{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.studio-palette-options button{display:flex;gap:6px;align-items:center;padding:14px 10px;min-height:48px;border:2px solid var(--studio-line);border-radius:10px;background:#fffaf0;color:var(--studio-ink);text-align:left}.studio-palette-options [aria-pressed=true]{border-color:var(--studio-forest);box-shadow:0 0 0 1px var(--studio-forest)}.studio-palette-options span{width:16px;height:24px;flex-shrink:0;border-radius:4px}.studio-field{display:grid;grid-gap:10px;gap:10px;margin:20px 0}.studio-field select{padding:12px;background:var(--studio-paper);color:var(--studio-ink);border:1px solid var(--studio-line);border-radius:8px}.studio-panel>.btn{margin:4px 8px 4px 0}.studio-note{padding:18px;margin:20px 0;background:#eee5cf;border-left:3px solid var(--studio-clay);font-size:13px;line-height:1.7}.experience-welcome .welcome-brand,.identity-home .identity-logo{color:var(--studio-forest)}.identity-home .identity-nav{border-bottom:2px solid var(--studio-line)}.experience-welcome .welcome-story h2 em,.identity-home .identity-copy h1 em{color:#a15e43}.identity-home .identity-portrait{border-color:var(--studio-paper);box-shadow:0 18px 38px #473b292e}.identity-home .identity-steps article{background:#fff9ebbd;padding:26px;border:1px solid var(--studio-line);border-radius:16px 16px 5px 16px;box-shadow:var(--studio-shadow)}.identity-home .identity-steps{gap:22px}.experience-welcome .welcome-card{background:var(--studio-paper);padding:34px;border:1px solid var(--studio-line);border-radius:24px 8px 24px 8px;box-shadow:var(--studio-shadow);width:100%;box-sizing:border-box}.experience-welcome .welcome-art-portrait{border-color:var(--studio-paper)}.studio-atlas-discover{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 30px;margin:20px 0;border:1px solid var(--studio-line);border-radius:16px;background:linear-gradient(110deg,#fdf5df,#e5ddc4)}.studio-atlas-discover h2{font:700 28px Bricolage,sans-serif;margin:8px 0}.studio-atlas-discover p{font-size:13px;line-height:1.6;max-width:470px}.studio-atlas-picks{display:flex;gap:10px;flex-wrap:wrap}.game-shell .atlas-map-wrap{border:7px solid #fdf5e1;border-radius:18px;box-shadow:var(--studio-shadow)}@media(max-width:1000px){.studio-kit-layout{grid-template-columns:1fr}.studio-kit-display .studio-jersey{max-width:270px}}@media(max-width:700px){.game-shell .club-toolbar{padding:14px}.game-shell .club-roster{gap:12px}.game-shell .club-roster .club-rider-body{padding:12px}.game-shell .club-roster .club-rider h3{font-size:21px}.studio-rider-actions{flex-direction:column}.studio-rider-actions .btn{white-space:normal}.studio-dialog{padding:16px}.studio-dialog-heading h2{font-size:26px}.studio-dossier-cast{gap:8px}.studio-dossier-cast h3{font-size:17px}.studio-dossier-cast p{font-size:10px}.studio-compare-bar{bottom:5px;padding:10px;gap:8px;font-size:12px}.studio-panel{padding:20px}.studio-palette-options{grid-template-columns:1fr}.experience-welcome .welcome-form{padding:14px 0}.experience-welcome .welcome-card{padding:24px}.studio-atlas-discover{flex-direction:column;align-items:flex-start;padding:20px}}@media(prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.account-settings{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;grid-gap:24px;gap:24px;max-width:1100px}.account-settings .studio-panel h2{margin-top:8px}.account-settings .studio-field input{width:100%;min-height:44px;box-sizing:border-box;padding:12px;background:#fffdf6;color:var(--studio-ink);border:1px solid var(--studio-line);border-radius:8px}.account-settings .studio-field{max-width:470px}.account-settings-note{color:#596451}.account-settings-error{color:#8d2d24}.account-settings-success{color:var(--studio-forest);font-weight:700}@media(max-width:1000px){.account-settings{grid-template-columns:1fr}}