@import url("https://fonts.googleapis.com/css2?family=Barlow+Condensed:wght@600;700;800;900&family=Inter:wght@400;500;600;700;800&display=swap");:root{color-scheme:dark;--bg:#090a0d;--panel:#14161c;--panel2:#1b1d24;--line:#2e3039;--muted:#a9abb3;--red:#ed1825;--white:#f8f8fa}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:radial-gradient(ellipse at 50% 24%,#2b0e12 0,transparent 38%),var(--bg);color:var(--white);font-family:Inter,system-ui,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #ff616b;outline-offset:3px}a{color:inherit}.site{min-height:100vh;padding-bottom:116px;overflow:hidden}.public-header{height:84px;display:grid;place-items:center;padding:12px}.public-header img{width:210px;height:58px;object-fit:contain}.hero{max-width:1080px;text-align:center;padding:4px 18px 18px}.hero,.ride{margin:0 auto}.ride{width:min(560px,91vw);height:clamp(280px,48vh,530px);position:relative;filter:drop-shadow(0 0 28px #ed182522)}.ride canvas{width:100%;height:100%;display:block}.hero-kicker{font-weight:800;letter-spacing:.22em;color:#f53b45;font-size:12px;margin:0 0 4px}.hero h1{margin:0 auto 10px;font-size:clamp(26px,4vw,48px);letter-spacing:-.045em;line-height:1}.hero p{color:#c5c6cb;margin:8px auto 16px;max-width:590px}.countdown{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:18px auto 22px}.countdown-unit{width:104px;background:#14161d;border:1px solid #272a33;border-radius:13px;padding:10px 8px 8px}.countdown-unit b{font:800 40px Barlow Condensed,Inter,sans-serif;display:block;line-height:1}.countdown-unit span{font-size:9px;letter-spacing:.19em;color:#89909e;font-weight:800}.countdown-placeholder{font:800 clamp(21px,4vw,35px) Barlow Condensed,sans-serif;letter-spacing:.08em;color:white;margin:18px auto 24px}.fundraiser{max-width:590px;min-height:132px;margin:14px auto;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:2px solid var(--red);border-radius:23px;background:#15171d;box-shadow:0 0 24px #ed182544}.fundraiser-label{text-align:left;color:#ddd;font-weight:600}.fundraiser-amount{text-align:left;font-size:clamp(35px,6vw,55px);font-weight:900;letter-spacing:-.05em;line-height:1}.fundraiser-meta{font-size:11px;color:#a7a9b2;margin-top:6px}.demo-tag{font-size:9px;color:#ffb0b4;letter-spacing:.08em;font-weight:800;text-transform:uppercase}.donate{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;color:white!important;font-size:clamp(17px,3vw,26px);font-weight:900;letter-spacing:.01em;padding:15px 24px;border-radius:14px;background:linear-gradient(105deg,#4b2225,#ed1825 72%);box-shadow:0 5px 20px #0008;min-width:200px}.donate:hover{filter:brightness(1.13)}.updates{max-width:900px;margin:44px auto 28px;padding:0 20px}.section-title{text-align:center;color:#f33943;font-weight:900;letter-spacing:.1em;font-size:17px;margin:0 0 18px}.update-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));grid-gap:16px;gap:16px}.update-card{background:#111318;border:1px solid #eee;border-radius:20px;padding:14px;box-shadow:0 0 18px #ffffff26;display:grid;grid-template-columns:minmax(120px,1.1fr) minmax(125px,.9fr);grid-gap:14px;gap:14px;min-height:176px}.update-card img,.update-placeholder{width:100%;height:100%;min-height:145px;max-height:230px;object-fit:cover;border-radius:14px;background:#2a2c33}.update-copy{display:flex;flex-direction:column;gap:9px;min-width:0}.update-source{font-size:10px;color:#ff646c;font-weight:800;text-transform:uppercase;letter-spacing:.1em}.update-copy p{margin:0;line-height:1.5;overflow-wrap:anywhere}.update-date{margin-top:auto;color:#a2a4aa;font-size:11px}.update-link{font-size:11px;color:#ff747b;font-weight:700}.empty-state{text-align:center;color:var(--muted);border:1px dashed #353840;padding:30px;border-radius:16px}.site-footer{max-width:900px;margin:38px auto 0;padding:20px;color:#a5a6ac;text-align:center;border-top:1px solid #292b31;font-size:12px;line-height:1.8}.site-footer p{max-width:720px;margin:8px auto}.donate-dock{position:fixed;z-index:10;bottom:0;left:0;right:0;padding:13px 18px calc(13px + env(safe-area-inset-bottom));display:grid;place-items:center;background:linear-gradient(180deg,transparent,#740a10 40%,#e31520);pointer-events:none}.donate-dock a{pointer-events:auto;width:min(580px,100%);text-align:center;padding:12px 20px}.race{min-height:100vh;padding:18px 20px 126px;position:relative;isolation:isolate;overflow:hidden}.race-bg{position:absolute;z-index:-2;inset:0;opacity:.16;filter:saturate(.7)}.race-bg canvas{width:100%;height:100%;display:block}.race:before{content:"";position:absolute;inset:0;background:#08090bf0;z-index:-1}.race-head{max-width:900px;margin:0 auto 28px;display:flex;justify-content:space-between;align-items:center}.race-head img{max-width:210px;width:34vw;height:72px;object-fit:contain}.race-main{max-width:850px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;grid-gap:26px;gap:26px;align-items:center}.cycle-block{text-align:center}.cycle-label{font-weight:900;letter-spacing:.08em;font-size:30px}.cycle-number{font:900 clamp(100px,19vw,210px)/.86 Inter,sans-serif;letter-spacing:-.09em}.status-block{text-align:center}.status-prefix{font-size:clamp(18px,3vw,32px);font-weight:800;color:#ff1d28}.status-text{font-size:clamp(34px,6vw,70px);font-weight:900;color:#ff1d28;line-height:1.02;overflow-wrap:anywhere}.race-total{margin:20px auto 0;width:max-content;max-width:100%;border:2px solid var(--red);border-radius:17px;padding:9px 26px;text-align:center;box-shadow:0 0 22px #ed182544;background:#101116}.race-total span{display:block;font-size:13px;font-weight:700;letter-spacing:.08em}.race-total b{font-size:43px;font-weight:900}.race .updates{margin-top:33px}.race .fundraiser{display:none}.admin-shell{max-width:1280px;margin:auto;padding:24px 20px 70px}.admin-header{justify-content:space-between;gap:18px;border-bottom:1px solid var(--line);padding-bottom:18px}.admin-brand,.admin-header{display:flex;align-items:center}.admin-brand{gap:14px}.admin-brand img{width:150px;height:50px;object-fit:contain}.admin-brand h1{font-size:21px;margin:0}.admin-badge{font-size:10px;color:#ff686f;border:1px solid #6b262b;padding:5px 8px;border-radius:20px}.admin-nav{display:flex;gap:7px;overflow:auto;padding:15px 0}.admin-nav button,.button{background:#1b1d24;border:1px solid #363943;color:white;padding:10px 13px;border-radius:9px;font-weight:700;font-size:12px;white-space:nowrap}.admin-nav button.active,.button.primary{background:linear-gradient(110deg,#572225,#e71925);border-color:#df343c}.admin-content{display:grid;grid-template-columns:1.25fr .75fr;grid-gap:18px;gap:18px}.admin-card{background:#13151a;border:1px solid var(--line);border-radius:15px;padding:18px;margin-bottom:16px}.admin-card h2{font-size:15px;margin:0 0 14px}.admin-card h3{font-size:12px;color:#c2c4ca;margin:18px 0 8px}.admin-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:11px;gap:11px}.field{display:flex;flex-direction:column;gap:6px;color:#c8c9ce;font-size:11px}.field input,.field select,.field textarea{width:100%;background:#0b0c0f;color:white;border:1px solid #383b44;border-radius:8px;padding:10px}.field textarea{min-height:84px;resize:vertical}.checkrow{display:flex;gap:12px;flex-wrap:wrap;margin:10px 0;color:#c7c8cc;font-size:12px}.checkrow label{display:flex;gap:6px;align-items:center}.admin-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.danger{border-color:#7e252b!important;color:#ff8e94!important}.cycle-admin{font:900 64px Barlow Condensed,sans-serif}.quick-status{display:flex;gap:8px;flex-wrap:wrap}.notice{font-size:12px;color:#b4b6bd;line-height:1.6}.save-status{font-size:11px;color:#8de0a3;margin-top:10px}.login{max-width:460px;margin:10vh auto;padding:28px;background:#14161c;border:1px solid var(--line);border-radius:18px;text-align:center}.login img{width:190px;max-height:72px;object-fit:contain}.login h1{font-size:23px}.login button{margin-top:15px}.status-pill{display:inline-block;padding:5px 9px;border-radius:999px;background:#1b251d;color:#a3e4b0;font-size:10px;font-weight:800}.error{color:#ff8c93;font-size:12px}.success{color:#a1e7ae;font-size:12px}.integration{padding:12px;background:#0e1014;border:1px solid var(--line);border-radius:10px;margin:8px 0}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:700px){.public-header{height:70px}.public-header img{width:172px;height:48px}.hero{padding-top:0}.ride{height:310px}.fundraiser{min-height:110px;padding:14px;gap:8px}.donate{min-width:140px;padding:12px 13px}.updates{margin-top:34px}.update-card{grid-template-columns:1fr 1fr;min-height:150px}.race{padding:12px 12px 116px}.race-head{margin-bottom:24px}.race-head img{height:54px}.race-main{grid-template-columns:1fr;gap:17px}.cycle-label{font-size:22px}.cycle-number{font-size:clamp(92px,26vw,150px)}.status-block{padding:0 10px}.race-total{margin-top:14px}.race-total b{font-size:36px}.admin-shell{padding:14px 12px 50px}.admin-header{align-items:flex-start}.admin-brand img{width:90px}.admin-brand h1{font-size:16px}.admin-content{grid-template-columns:1fr}.admin-grid{grid-template-columns:1fr 1fr}}@media(max-width:420px){.countdown-unit{width:72px;padding:9px 5px}.countdown-unit b{font-size:33px}.countdown{gap:5px}.fundraiser{flex-direction:column;align-items:stretch}.fundraiser-label{display:flex;justify-content:space-between;align-items:center}.fundraiser-meta{margin-top:2px}.donate{width:100%}.update-card{grid-template-columns:1fr}.update-card img,.update-placeholder{height:150px}.admin-grid{grid-template-columns:1fr}.admin-brand .admin-badge{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.race-bg canvas,.ride canvas{animation:none}}.social-links{display:flex;justify-content:center;gap:10px 22px;flex-wrap:wrap;margin:14px auto}.social-links a{color:#c5c6cb;font-size:13px;text-decoration:none}.social-links a:hover{color:#fff;text-decoration:underline}