:root {
  --fx-accent:#f27622;
  --fx-bg:#111114;
  --fx-text:#fff;
  --fx-size:72px;
  --fx-font:Inter,Arial,sans-serif;
  color-scheme:dark;
}
* { box-sizing:border-box; }
html,body { width:100%; height:100%; margin:0; background:transparent; overflow:hidden; }
body { display:flex; align-items:center; justify-content:center; padding:18px; font-family:var(--fx-font); color:var(--fx-text); }
.subathon { position:relative; width:min(1000px,calc(100vw - 36px)); min-height:300px; padding:24px 30px 22px; overflow:hidden; border:1px solid color-mix(in srgb,var(--fx-accent) 42%,transparent); border-radius:24px; background:linear-gradient(145deg,color-mix(in srgb,var(--fx-bg) 96%,transparent),color-mix(in srgb,var(--fx-bg) 86%,#000)); box-shadow:0 28px 80px rgba(0,0,0,.42),inset 0 1px rgba(255,255,255,.08); }
html[data-transparent="1"] .subathon { background:linear-gradient(145deg,color-mix(in srgb,var(--fx-bg) 72%,transparent),color-mix(in srgb,var(--fx-bg) 55%,transparent)); backdrop-filter:blur(10px); }
.subathon:before { content:""; position:absolute; inset:0; pointer-events:none; background:linear-gradient(105deg,transparent 0 36%,rgba(255,255,255,.055) 47%,transparent 58%); transform:translateX(-100%); animation:scan 7s ease-in-out infinite; }
.subathon-glow { position:absolute; right:-120px; top:-170px; width:420px; height:420px; border-radius:50%; background:radial-gradient(circle,color-mix(in srgb,var(--fx-accent) 32%,transparent),transparent 68%); filter:blur(6px); }
.subathon-head,.subathon-foot { position:relative; z-index:2; display:flex; align-items:center; justify-content:space-between; gap:18px; }
.subathon-brand { display:flex; align-items:center; gap:10px; font-size:13px; font-weight:900; letter-spacing:.18em; }
.subathon-brand img { width:38px; height:38px; object-fit:contain; filter:drop-shadow(0 5px 8px rgba(0,0,0,.35)); }
.subathon-custom-image { display:none; position:absolute; z-index:3; left:34px; top:96px; width:132px; height:132px; object-fit:contain; border-radius:18px; filter:drop-shadow(0 14px 24px rgba(0,0,0,.48)); }
.subathon-custom-image[hidden] { display:none!important; }
html[data-subathon-mode="full"] .subathon-custom-image:not([hidden]) { display:block; }
html[data-subathon-mode="full"] .subathon.has-custom-image .subathon-content { padding-left:150px; padding-right:150px; }
.subathon-brand span span,.subathon-kicker { color:var(--fx-accent); }
.subathon-status { display:flex; align-items:center; gap:8px; padding:8px 12px; border:1px solid rgba(255,255,255,.11); border-radius:999px; background:rgba(0,0,0,.25); font-size:11px; font-weight:900; letter-spacing:.13em; }
.subathon-status i { width:8px; height:8px; border-radius:50%; background:#777; box-shadow:0 0 0 5px rgba(255,255,255,.05); }
.subathon-status.is-running i { background:#43d884; box-shadow:0 0 14px #43d884; }
.subathon-status.is-paused i { background:#ffd15b; box-shadow:0 0 14px #ffd15b; }
.subathon-status.is-finished i { background:#ff5f68; box-shadow:0 0 14px #ff5f68; }
.subathon-content { position:relative; z-index:2; text-align:center; padding:24px 0 20px; }
.subathon-kicker { margin:0 0 4px; font-size:13px; font-weight:900; letter-spacing:.24em; }
.subathon-time { display:block; font-size:var(--fx-size); font-weight:950; line-height:1.05; letter-spacing:.045em; font-variant-numeric:tabular-nums; text-shadow:0 7px 28px rgba(0,0,0,.38); }
.subathon-subtitle { margin:7px 0 16px; color:color-mix(in srgb,var(--fx-text) 68%,transparent); font-size:14px; }
.subathon-progress { height:7px; overflow:hidden; border-radius:99px; background:rgba(255,255,255,.09); }
.subathon-progress i { display:block; width:0; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--fx-accent),color-mix(in srgb,var(--fx-accent) 65%,#fff)); box-shadow:0 0 18px var(--fx-accent); transition:width .5s ease; }
.subathon-foot { padding-top:15px; border-top:1px solid rgba(255,255,255,.08); color:color-mix(in srgb,var(--fx-text) 65%,transparent); font-size:11px; font-weight:800; letter-spacing:.1em; }
.subathon-event { position:absolute; z-index:5; right:24px; bottom:22px; display:flex; align-items:center; gap:10px; padding:11px 14px; border:1px solid color-mix(in srgb,var(--fx-accent) 55%,transparent); border-radius:13px; background:color-mix(in srgb,var(--fx-bg) 94%,transparent); opacity:0; transform:translateY(18px) scale(.96); pointer-events:none; }
.subathon-event b { color:var(--fx-accent); font-size:18px; }
.subathon-event span { font-size:10px; font-weight:900; letter-spacing:.12em; }
.subathon-event.is-visible { animation:event-pop 4s ease both; }
.subathon-turbo { position:absolute; z-index:12; inset:0; display:none; overflow:hidden; align-items:center; justify-content:center; background:radial-gradient(circle at 50% 55%,rgba(255,187,46,.28),rgba(243,77,12,.14) 34%,transparent 70%); isolation:isolate; }
.subathon-turbo[hidden] { display:none!important; }
.subathon-turbo.is-visible { display:flex; animation:turbo-enter .42s cubic-bezier(.18,.9,.25,1) both; }
.turbo-content { position:relative; z-index:4; display:grid; justify-items:center; gap:7px; padding:28px 44px; text-align:center; transform:skewX(-4deg); }
.turbo-content span,.turbo-content small { font-size:12px; font-weight:950; letter-spacing:.25em; text-shadow:0 3px 15px #310500; }
.turbo-content span { color:#ffd36a; }.turbo-content small { color:#fff5d7; }
.turbo-content strong { color:#fff8df; font-size:clamp(54px,10vw,150px); font-weight:950; line-height:.9; letter-spacing:-.04em; font-variant-numeric:tabular-nums; text-shadow:0 0 8px #fff,0 0 26px #ffb000,0 0 65px #ef3f06,0 12px 0 #7d1700; animation:turbo-number .42s ease-in-out infinite alternate; }
.turbo-content b { color:#1d0800; padding:8px 15px; border:2px solid #ffe36e; border-radius:7px; background:linear-gradient(90deg,#ffec91,#ff9d15 52%,#ff5714); box-shadow:0 0 30px #ff7a0d; font-size:clamp(13px,2vw,24px); font-weight:950; letter-spacing:.11em; }
.turbo-burst { position:absolute; z-index:1; inset:-45%; background:repeating-conic-gradient(from 0deg,transparent 0 8deg,rgba(255,220,106,.82) 9deg 10deg,transparent 11deg 21deg); filter:blur(.5px); animation:turbo-spin 2.8s linear infinite; opacity:.75; }
.turbo-fire { position:absolute; z-index:2; bottom:-5%; display:flex; align-items:end; gap:clamp(8px,1.2vw,22px); width:35%; height:80%; opacity:.98; filter:drop-shadow(0 0 18px #ff6a00); }.turbo-fire-left{left:-5%;transform:skewX(-12deg)}.turbo-fire-right{right:-5%;transform:scaleX(-1) skewX(-12deg)}
.turbo-fire i { display:block; width:clamp(34px,7vw,108px); height:clamp(120px,31vw,400px); border-radius:65% 35% 62% 38%/78% 44% 56% 22%; background:radial-gradient(circle at 55% 75%,#fff9bf 0 7%,#ffd22c 8% 18%,#ff7a00 28% 50%,#ed2607 68%,transparent 70%); transform-origin:bottom center; animation:turbo-flame 1.1s ease-in-out infinite alternate; }.turbo-fire i:nth-child(2){height:70%;animation-delay:-.4s}.turbo-fire i:nth-child(3){height:52%;animation-delay:-.75s}
.subathon-kickstats { display:none; position:relative; z-index:2; }
.subathon-kickstats[hidden],.subathon-subgoal[hidden],.kick-stat[hidden] { display:none!important; }
.subathon-kickstats-head { display:flex; align-items:center; justify-content:space-between; gap:16px; color:var(--fx-accent); font-size:13px; font-weight:950; letter-spacing:.2em; }
.subathon-kickstats-head small { color:color-mix(in srgb,var(--fx-text) 52%,transparent); font-size:10px; letter-spacing:.14em; }
.subathon-subgoal { margin-top:15px; }
.subathon-subgoal>div:first-child { display:flex; align-items:end; justify-content:space-between; gap:18px; margin-bottom:8px; }
.subathon-subgoal span { font-size:11px; font-weight:900; letter-spacing:.13em; }
.subathon-subgoal b { font-size:16px; font-variant-numeric:tabular-nums; }
.subathon-subgoal b strong { color:var(--fx-accent); font-size:26px; }
.subathon-subgoal-track { height:10px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.1); }
.subathon-subgoal-track i { display:block; width:0; height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--fx-accent),color-mix(in srgb,var(--fx-accent) 55%,#fff)); box-shadow:0 0 18px color-mix(in srgb,var(--fx-accent) 72%,transparent); transition:width .5s ease; }
.subathon-subgoal.is-reached .subathon-subgoal-track i { animation:goal-glow 1.25s ease-in-out infinite alternate; }
.subathon-kickstats-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin-top:15px; }
.kick-stat { position:relative; display:grid; gap:2px; padding:11px 13px; overflow:hidden; border:1px solid rgba(255,255,255,.08); border-radius:12px; background:rgba(0,0,0,.2); }
.kick-stat:before { content:""; position:absolute; left:0; top:0; bottom:0; width:3px; background:var(--fx-accent); }
.kick-stat span { color:color-mix(in srgb,var(--fx-text) 58%,transparent); font-size:9px; font-weight:900; letter-spacing:.12em; }
.kick-stat strong { font-size:23px; font-variant-numeric:tabular-nums; }
html[data-subathon-mode="compact"] .subathon { min-height:172px; padding:18px 22px; border-radius:18px; }
html[data-subathon-mode="compact"] .subathon-content { padding:8px 0 12px; text-align:left; }
html[data-subathon-mode="compact"] .subathon-time { font-size:min(var(--fx-size),60px); }
html[data-subathon-mode="compact"] .subathon-kicker,html[data-subathon-mode="compact"] .subathon-subtitle { display:inline; margin-right:12px; }
html[data-subathon-mode="compact"] .subathon-foot { padding-top:10px; }
html[data-subathon-mode="minimal"] .subathon { width:auto; min-width:430px; min-height:150px; padding:18px 24px; }
html[data-subathon-mode="minimal"] .subathon-head,html[data-subathon-mode="minimal"] .subathon-foot,html[data-subathon-mode="minimal"] .subathon-subtitle,html[data-subathon-mode="minimal"] .subathon-progress { display:none; }
html[data-subathon-mode="minimal"] .subathon-content { padding:4px 0; text-align:center; }
html[data-subathon-mode="minimal"] .subathon-time { font-size:min(var(--fx-size),64px); }
html[data-subathon-mode="timer"] body { padding:0; }
html[data-subathon-mode="timer"] .subathon { width:100%; min-height:100%; padding:0; border:0; border-radius:0; background:transparent!important; box-shadow:none; backdrop-filter:none; display:grid; place-items:center; }
html[data-subathon-mode="timer"] .subathon:before,html[data-subathon-mode="timer"] .subathon-glow,html[data-subathon-mode="timer"] .subathon-head,html[data-subathon-mode="timer"] .subathon-kicker,html[data-subathon-mode="timer"] .subathon-subtitle,html[data-subathon-mode="timer"] .subathon-progress,html[data-subathon-mode="timer"] .subathon-foot,html[data-subathon-mode="timer"] .subathon-event,html[data-subathon-mode="timer"] .subathon-kickstats { display:none!important; }
html[data-subathon-mode="timer"] .subathon-content { padding:0; text-align:center; }
html[data-subathon-mode="timer"] .subathon-time { font-size:min(var(--fx-size),42vh); filter:drop-shadow(0 5px 16px rgba(0,0,0,.7)); }
html[data-subathon-mode="kickstats"] body,html[data-subathon-mode="subgoal"] body,html[data-subathon-mode="subgoalcompact"] body { padding:0; }
html[data-subathon-mode="kickstats"] .subathon,html[data-subathon-mode="subgoal"] .subathon { width:100%; min-height:100%; padding:20px 24px; border-radius:18px; }
html[data-subathon-mode="kickstats"] .subathon-content,html[data-subathon-mode="kickstats"] .subathon-foot,html[data-subathon-mode="kickstats"] .subathon-event,html[data-subathon-mode="subgoal"] .subathon-content,html[data-subathon-mode="subgoal"] .subathon-head,html[data-subathon-mode="subgoal"] .subathon-foot,html[data-subathon-mode="subgoal"] .subathon-event { display:none!important; }
html[data-subathon-mode="kickstats"] .subathon-head { margin-bottom:12px; }
html[data-subathon-mode="kickstats"] .subathon-kickstats,html[data-subathon-mode="subgoal"] .subathon-kickstats { display:block; }
html[data-subathon-mode="subgoal"] .subathon-kickstats { width:100%; margin:auto; }
html[data-subathon-mode="subgoal"] .subathon-kickstats-head,html[data-subathon-mode="subgoal"] .subathon-kickstats-grid { display:none; }
html[data-subathon-mode="subgoal"] .subathon-subgoal { margin:0; }
html[data-subathon-mode="subgoalcompact"] .subathon { width:100%; min-height:100%; padding:0; border:0; border-radius:0; background:transparent!important; box-shadow:none; backdrop-filter:none; display:grid; place-items:center; }
html[data-subathon-mode="subgoalcompact"] .subathon:before,html[data-subathon-mode="subgoalcompact"] .subathon-glow,html[data-subathon-mode="subgoalcompact"] .subathon-content,html[data-subathon-mode="subgoalcompact"] .subathon-head,html[data-subathon-mode="subgoalcompact"] .subathon-foot,html[data-subathon-mode="subgoalcompact"] .subathon-event,html[data-subathon-mode="subgoalcompact"] .subathon-kickstats-head,html[data-subathon-mode="subgoalcompact"] .subathon-kickstats-grid,html[data-subathon-mode="subgoalcompact"] [data-subathon-goal-label] { display:none!important; }
html[data-subathon-mode="subgoalcompact"] .subathon-kickstats { display:block; width:100%; }
html[data-subathon-mode="subgoalcompact"] .subathon-subgoal { margin:0; text-align:center; }
html[data-subathon-mode="subgoalcompact"] .subathon-subgoal>div:first-child { display:block; margin:0; }
html[data-subathon-mode="subgoalcompact"] .subathon-subgoal b { display:block; color:var(--fx-text); font-size:min(52vh,150px); font-weight:950; line-height:1; letter-spacing:.01em; filter:drop-shadow(0 7px 22px rgba(0,0,0,.78)); }
html[data-subathon-mode="subgoalcompact"] .subathon-subgoal b strong,html[data-subathon-mode="subgoalcompact"] .subathon-subgoal b span { color:inherit; font-size:inherit; font-weight:inherit; letter-spacing:inherit; }
html[data-subathon-mode="subgoalcompact"] .subathon-subgoal b strong { color:var(--fx-accent); }
html[data-subathon-mode="subgoalcompact"] .subathon-subgoal-track { display:none!important; }
html[data-subathon-mode="turbo"] body { padding:0; }
html[data-subathon-mode="turbo"] .subathon { width:100%; min-height:100%; padding:0; border:0; border-radius:0; background:transparent!important; box-shadow:none; backdrop-filter:none; }
html[data-subathon-mode="turbo"] .subathon:before,html[data-subathon-mode="turbo"] .subathon-glow,html[data-subathon-mode="turbo"] .subathon-head,html[data-subathon-mode="turbo"] .subathon-content,html[data-subathon-mode="turbo"] .subathon-kickstats,html[data-subathon-mode="turbo"] .subathon-foot,html[data-subathon-mode="turbo"] .subathon-event,html[data-subathon-mode="turbo"] .subathon-custom-image { display:none!important; }
html[data-subathon-mode="turbo"] .subathon-turbo { position:relative; z-index:8; display:grid; width:min(1180px,94vw); gap:14px; padding:25px 32px 21px; overflow:visible; border:1px solid rgba(255,155,43,.78); border-radius:20px; background:linear-gradient(115deg,rgba(18,12,10,.96),rgba(70,21,5,.94) 54%,rgba(20,12,9,.96)); box-shadow:0 0 0 1px rgba(255,228,150,.12) inset,0 24px 76px rgba(0,0,0,.62),0 0 42px rgba(255,82,0,.22); isolation:isolate; }
html[data-subathon-mode="turbo"] .subathon-turbo:before { content:""; position:absolute; z-index:-1; inset:-1px; border-radius:inherit; background:linear-gradient(90deg,transparent 0 10%,rgba(255,224,92,.68) 28%,transparent 46% 62%,rgba(255,98,0,.74) 78%,transparent); background-size:220% 100%; animation:turbo-edge 3.2s linear infinite; opacity:.8; }
html[data-subathon-mode="turbo"] .turbo-topline,html[data-subathon-mode="turbo"] .turbo-bottom { display:flex; align-items:center; justify-content:space-between; gap:16px; font-size:11px; font-weight:950; letter-spacing:.18em; }
html[data-subathon-mode="turbo"] .turbo-topline span { color:#ffcc5d; }html[data-subathon-mode="turbo"] .turbo-topline b { color:#fff4d7; text-align:right; }
html[data-subathon-mode="turbo"] .turbo-values { display:flex; align-items:baseline; gap:10px; font-variant-numeric:tabular-nums; }html[data-subathon-mode="turbo"] .turbo-values strong:first-child { color:#fff5d7; font-size:clamp(44px,8vw,112px); line-height:.9; text-shadow:0 0 16px #ff6a00,0 5px 0 #5f1500; }html[data-subathon-mode="turbo"] .turbo-values strong:last-child,html[data-subathon-mode="turbo"] .turbo-values span { color:#ffc15c; font-size:clamp(18px,3vw,36px); }
html[data-subathon-mode="turbo"] .turbo-track { position:relative; height:32px; overflow:visible; border:1px solid rgba(255,213,121,.38); border-radius:999px; background:repeating-linear-gradient(90deg,rgba(255,255,255,.03) 0 28px,rgba(0,0,0,.17) 29px 30px),rgba(0,0,0,.48); box-shadow:inset 0 3px 12px #0009; }html[data-subathon-mode="turbo"] .turbo-track>i { position:relative; display:block; width:2%; height:100%; min-width:28px; border-radius:inherit; background:linear-gradient(90deg,#f13906,#ff8614 54%,#ffe78c); box-shadow:0 0 14px #f64608,0 0 34px rgba(255,115,0,.7); transition:width .85s cubic-bezier(.22,.8,.2,1); }html[data-subathon-mode="turbo"] .turbo-track>i:after { content:""; position:absolute; inset:5px 12px 5px 8px; border-radius:inherit; background:linear-gradient(90deg,#ff9b18aa,rgba(255,255,255,.88),#ffd538aa); filter:blur(1px); opacity:.75; animation:turbo-shine 1.6s ease-in-out infinite; }
html[data-subathon-mode="turbo"] .turbo-flame { position:absolute; right:-19px; bottom:-8px; display:flex; align-items:end; gap:0; width:42px; height:58px; filter:drop-shadow(0 0 10px #ff5b00); transform-origin:bottom center; animation:turbo-flame-bar .75s ease-in-out infinite alternate; }html[data-subathon-mode="turbo"] .turbo-flame em { display:block; width:20px; height:44px; border-radius:70% 30% 70% 30%/70% 45% 55% 30%; background:radial-gradient(circle at 55% 70%,#fff7b8 0 8%,#ffd53a 10% 27%,#ff7806 43% 65%,transparent 68%); transform:rotate(-10deg); }html[data-subathon-mode="turbo"] .turbo-flame em:nth-child(2){height:55px;margin-left:-13px;animation-delay:-.3s}html[data-subathon-mode="turbo"] .turbo-flame em:nth-child(3){height:32px;margin-left:-12px;transform:rotate(15deg)}
html[data-subathon-mode="turbo"] .turbo-bottom { color:#ffd37a; }html[data-subathon-mode="turbo"] .turbo-bottom b { color:#fff8e7; letter-spacing:.08em; }html[data-subathon-mode="turbo"] .subathon-turbo.is-pulsing { animation:turbo-bar-pulse .95s ease both; }html[data-subathon-mode="turbo"] .subathon-turbo.is-pulsing .turbo-track>i { filter:brightness(1.55) saturate(1.35); }
/* Source Turbo minimale : uniquement l'heure courante, l'heure finale et la progression en feu. */
html[data-subathon-mode="turbo"] .subathon-turbo { width:min(1080px,92vw); gap:9px; padding:0; border:0; border-radius:0; background:transparent; box-shadow:none; }
html[data-subathon-mode="turbo"] .subathon-turbo[hidden] { display:none!important; }
html[data-subathon-mode="turbo"] .subathon-turbo:before { display:none; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-values { display:flex; align-items:center; justify-content:space-between; gap:24px; font-variant-numeric:tabular-nums; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-values strong,html[data-subathon-mode="turbo"] .subathon-turbo .turbo-values strong:first-child,html[data-subathon-mode="turbo"] .subathon-turbo .turbo-values strong:last-child { color:#fff7e7; font-size:clamp(26px,4.4vw,58px); font-weight:950; line-height:1; letter-spacing:.035em; text-shadow:0 0 12px #ff6500,0 3px 0 #511000; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-track { height:27px; isolation:isolate; border:1px solid rgba(255,220,146,.5); border-radius:999px; background:rgba(10,5,4,.74); box-shadow:inset 0 3px 12px #000b,0 0 18px rgba(255,75,0,.16); }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-track>i { min-width:24px; isolation:isolate; overflow:visible; background:linear-gradient(90deg,#991400 0%,#ec3100 22%,#ff7b05 62%,#ffd54b 100%); box-shadow:0 0 15px #f54200,0 0 40px rgba(255,78,0,.8); }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-track>i:before { content:""; position:absolute; z-index:1; inset:-44px 0 -1px; border-radius:inherit; pointer-events:none; background:radial-gradient(ellipse 12px 39px at 12px 100%,#fffbe0 0 7%,#ffe24a 15%,#ff9d08 34%,#f23900 55%,transparent 74%) 0 100%/46px 67px repeat-x,radial-gradient(ellipse 15px 54px at 31px 100%,#fff9cf 0 5%,#ffd623 14%,#ff7800 34%,#e52300 58%,transparent 74%) 13px 100%/57px 80px repeat-x,radial-gradient(ellipse 10px 31px at 43px 100%,#ffef94 0 10%,#ffad09 28%,#fa3e00 59%,transparent 75%) 8px 100%/39px 57px repeat-x; filter:drop-shadow(0 -2px 5px #ff4d00) saturate(1.25); transform-origin:bottom; animation:turbo-fire-fill .72s linear infinite; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-track>i:after { z-index:2; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-flame { z-index:3; filter:drop-shadow(0 0 12px #ff4f00) saturate(1.35); }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-flash { display:block; min-height:13px; color:#fff2bf; font-size:13px; font-weight:950; letter-spacing:.15em; text-align:center; opacity:0; text-shadow:0 0 12px #ff5700; transition:opacity .14s ease; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-rule { flex:0 0 auto; padding:8px 13px; border:1px solid rgba(255,195,72,.7); border-radius:999px; color:#fff3bf; background:linear-gradient(120deg,rgba(121,21,0,.82),rgba(255,91,0,.47)); box-shadow:inset 0 1px rgba(255,255,255,.22),0 0 15px rgba(255,74,0,.27); font-size:clamp(10px,1.45vw,16px); font-weight:950; letter-spacing:.08em; line-height:1; white-space:nowrap; text-shadow:0 1px 3px #551000; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-track>i:before { display:none; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-track>i:after { z-index:1; }
html[data-subathon-mode="turbo"] .subathon-turbo .turbo-fire-canvas { position:absolute; z-index:2; left:0; bottom:-8px; width:100%; height:112px; pointer-events:none; filter:drop-shadow(0 -2px 9px rgba(255,66,0,.85)); mix-blend-mode:screen; clip-path:inset(0 calc(100% - var(--turbo-progress,0%)) 0 0); transition:clip-path .85s cubic-bezier(.22,.8,.2,1); }
html[data-subathon-mode="turbo"] .subathon-turbo.is-pulsing .turbo-flash { opacity:1; }
@keyframes scan { 0%,45%{transform:translateX(-100%)}70%,100%{transform:translateX(100%)} }
@keyframes event-pop { 0%{opacity:0;transform:translateY(18px) scale(.96)}12%,78%{opacity:1;transform:none}100%{opacity:0;transform:translateY(-10px) scale(.98)} }
@keyframes goal-glow { from{filter:saturate(1)}to{filter:saturate(1.4) brightness(1.28);box-shadow:0 0 28px var(--fx-accent)} }
@keyframes turbo-enter { from{opacity:0;transform:scale(.84)}to{opacity:1;transform:scale(1)} }
@keyframes turbo-number { from{transform:scale(.98) skewX(-4deg)}to{transform:scale(1.035) skewX(-4deg)} }
@keyframes turbo-spin { to{transform:rotate(360deg)} }
@keyframes turbo-flame { from{transform:rotate(-4deg) scaleY(.92)}to{transform:rotate(5deg) scaleY(1.08)} }
@keyframes turbo-edge { to{background-position:-220% 0} }
@keyframes turbo-shine { 50%{opacity:.25;transform:translateX(10px)} }
@keyframes turbo-flame-bar { from{transform:rotate(-5deg) scaleY(.9)}to{transform:rotate(5deg) scaleY(1.12)} }
@keyframes turbo-fire-fill { 0%{background-position:0 100%,13px 100%,8px 100%;transform:scaleY(.92)}35%{background-position:-24px 100%,-19px 100%,-13px 100%;transform:scaleY(1.08)}70%{background-position:-47px 100%,-49px 100%,-31px 100%;transform:scaleY(.96)}100%{background-position:-70px 100%,-78px 100%,-56px 100%;transform:scaleY(1.03)} }
@keyframes turbo-bar-pulse { 0%{transform:scale(.96);filter:brightness(.8)}55%{transform:scale(1.025);filter:brightness(1.35)}100%{transform:scale(1);filter:none} }
@media (max-width:650px) {
  body { padding:8px; }
  .subathon { padding:18px; width:calc(100vw - 16px); min-height:230px; }
  .subathon-time { font-size:min(var(--fx-size),15vw); }
  .subathon-subtitle { font-size:12px; }
  .subathon-foot { align-items:flex-start; flex-direction:column; gap:6px; }
  .subathon-kickstats-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  html[data-subathon-mode="full"] .subathon-custom-image:not([hidden]) { left:18px; top:90px; width:82px; height:82px; }
  html[data-subathon-mode="full"] .subathon.has-custom-image .subathon-content { padding-left:86px; padding-right:0; }
  html[data-subathon-mode="timer"] body { padding:0; }
  html[data-subathon-mode="timer"] .subathon { padding:0; width:100%; min-height:100%; }
  html[data-subathon-mode="timer"] .subathon-time { font-size:min(var(--fx-size),34vw); }
}
