.sg-shell{--sg-ink:#172117;--sg-green:#263d29;--sg-olive:#66734c;--sg-sand:#eee7d5;--sg-gold:#e2ad3f;color:var(--sg-ink)}
.sg-hero{position:relative;overflow:hidden;border-radius:22px;padding:28px;background:linear-gradient(125deg,#17291d,#344c31 64%,#5e6744);color:#fff;box-shadow:0 18px 45px rgba(23,41,29,.2)}
.sg-hero:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.1;background:repeating-linear-gradient(135deg,transparent 0 18px,#fff 18px 19px)}
.sg-hero>*{position:relative;z-index:1}.sg-kicker{font-size:.7rem;letter-spacing:.18em;font-weight:900;color:#f0c969;text-transform:uppercase}.sg-hero h1{margin:7px 0 6px;font-size:clamp(1.65rem,4vw,2.5rem);letter-spacing:-.04em}.sg-hero p{margin:0;color:#d9e1d5;font-size:.88rem}
.sg-grid{display:grid;grid-template-columns:minmax(260px,.82fr) minmax(0,1.6fr);gap:18px;margin-top:18px}.sg-card{background:var(--panel-strong,#fff);border:1px solid var(--border);border-radius:18px;padding:20px;box-shadow:0 8px 24px rgba(35,45,31,.06)}
.sg-title{margin:0 0 4px;font-size:1rem}.sg-muted{color:var(--muted);font-size:.76rem}.sg-progress{height:12px;border-radius:99px;background:#dfe4d7;overflow:hidden;margin:12px 0 6px}.sg-progress>i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#7d8a5a,#e4ae3d);transition:width .4s ease}.sg-big{font-size:2.5rem;font-weight:900;line-height:1;letter-spacing:-.06em}.sg-goal{font-weight:800;color:#75805b}.sg-days{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:15px}.sg-day{padding:11px;border-radius:12px;background:#f3f1e8}.sg-day span{display:block;font-size:.68rem;color:#6d7468}.sg-day strong{font-size:1.2rem}
.sg-form{display:grid;gap:12px}.sg-field label{display:block;font-size:.7rem;font-weight:850;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.sg-field input{width:100%;box-sizing:border-box;padding:12px 13px;border:1.5px solid var(--border);border-radius:11px;background:var(--bg);color:var(--text);font:inherit}.sg-submit{border:0;border-radius:11px;padding:12px 16px;background:linear-gradient(135deg,#344d34,#63704b);color:white;font-weight:850;cursor:pointer}.sg-submit:disabled{opacity:.5;cursor:not-allowed}
.sg-tabs{display:flex;gap:7px;flex-wrap:wrap;margin:18px 0 10px}.sg-tab{border:1px solid var(--border);background:var(--panel-strong);color:var(--text);border-radius:99px;padding:8px 13px;font-weight:800;font-size:.74rem;cursor:pointer}.sg-tab.is-active{background:#344d34;color:#fff;border-color:#344d34}.sg-table-wrap{overflow:auto}.sg-table{width:100%;border-collapse:collapse;font-size:.78rem}.sg-table th{text-align:left;color:var(--muted);font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;padding:10px 9px;border-bottom:1px solid var(--border)}.sg-table td{padding:12px 9px;border-bottom:1px solid var(--border)}.sg-rank{display:inline-grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#ebe8dc;font-weight:900}.sg-pct{font-weight:900;color:#4f673f}.sg-empty{text-align:center;padding:30px;color:var(--muted)}
@media(max-width:800px){.sg-grid{grid-template-columns:1fr}.sg-hero{padding:22px}.sg-card{padding:16px}.sg-table{min-width:620px}}

/* Tema global temporário da campanha. A classe é ativada pelo JS de 23 a 31/08/2026. */
body.sala-guerra-theme{
  --bg:#e8e4d6;--panel:#f4f0e4;--panel-strong:#fbf8ee;--card:#f8f4e9;
  --text:#1b271c;--muted:#687061;--border:#c7c4b1;--accent:#66734c;
  background-color:#e8e4d6;
  background-image:linear-gradient(rgba(36,52,37,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(36,52,37,.035) 1px,transparent 1px);
  background-size:24px 24px;
}
body.sala-guerra-theme .app-sidebar{background:linear-gradient(180deg,#17291d 0%,#263a28 58%,#3c4933 100%);border-right-color:#44513b;box-shadow:8px 0 30px rgba(23,41,29,.18)}
body.sala-guerra-theme .app-sidebar:before{content:"OPERAÇÃO SALA DE GUERRA";display:block;margin:14px 14px 8px;padding:9px 10px;border:1px solid rgba(226,173,63,.45);border-radius:9px;color:#f0c969;font-size:.61rem;font-weight:900;letter-spacing:.14em;text-align:center}
body.sala-guerra-theme .app-sidebar .mode-card{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.09)}
body.sala-guerra-theme .app-sidebar .mode-card:hover{background:rgba(238,201,105,.11);border-color:rgba(238,201,105,.3);transform:translateX(2px)}
body.sala-guerra-theme .app-sidebar .mode-card strong{color:#f5f2e8}
body.sala-guerra-theme .app-sidebar .mode-card span{color:#bfc8b9}
body.sala-guerra-theme .app-sidebar .mode-card-icon{background:linear-gradient(135deg,#6b7650,#3f533d)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12)}
body.sala-guerra-theme .app-sidebar .sidebar-group-title{color:#f5f2e8;text-shadow:0 1px 2px rgba(0,0,0,.45)}
body.sala-guerra-theme .app-sidebar .sidebar-group-title::after{color:#f0c969}
body.sala-guerra-theme .app-sidebar .sidebar-group[open]{background:rgba(255,255,255,.06);border-color:rgba(226,173,63,.45)}
body.sala-guerra-theme .app-sidebar #selectSalaGuerraBtn{background:rgba(226,173,63,.14);border-color:rgba(226,173,63,.52);box-shadow:0 0 0 1px rgba(226,173,63,.08)}
body.sala-guerra-theme .navbar{background:rgba(244,240,228,.94);border-bottom-color:#b8b6a4;backdrop-filter:blur(12px)}
body.sala-guerra-theme .panel{border-color:#c5c1ad;box-shadow:0 12px 34px rgba(34,48,34,.08)}
body.sala-guerra-theme button.primary,body.sala-guerra-theme .primary{background:linear-gradient(135deg,#344d34,#68734d);border-color:#344d34}
body.sala-guerra-theme input:focus,body.sala-guerra-theme select:focus,body.sala-guerra-theme textarea:focus{border-color:#68734d!important;box-shadow:0 0 0 3px rgba(104,115,77,.16)!important}
body.sala-guerra-theme .sidebar-toggle{background:#263d29;color:#f0c969;border-color:#526044}
body.sala-guerra-theme .campaign-theme-flag{display:flex}
.campaign-theme-flag{display:none;align-items:center;gap:7px;padding:6px 10px;border-radius:999px;background:#263d29;color:#f0c969;font-size:.63rem;font-weight:900;letter-spacing:.08em;white-space:nowrap}
.campaign-theme-flag:before{content:"";width:7px;height:7px;border-radius:50%;background:#e2ad3f;box-shadow:0 0 0 3px rgba(226,173,63,.2)}
@media(max-width:700px){.campaign-theme-flag{font-size:0;width:28px;height:28px;padding:0;justify-content:center}.campaign-theme-flag:before{width:8px;height:8px}}
@media(max-width:480px){
  body.sala-guerra-theme .brandbar{flex-wrap:wrap;row-gap:10px}
  body.sala-guerra-theme .campaign-theme-flag{order:-1;display:flex;flex:1 0 100%;width:100%;height:auto;min-height:32px;padding:8px 12px;justify-content:center;font-size:.63rem;letter-spacing:.11em}
  body.sala-guerra-theme .campaign-theme-flag:before{width:7px;height:7px}
  body.sala-guerra-theme .app-sidebar{padding:14px 10px}
  body.sala-guerra-theme .app-sidebar:before{margin:6px 4px 8px;font-size:.64rem;line-height:1.35}
  body.sala-guerra-theme .app-sidebar .sidebar-group-title{padding:11px 9px;font-size:.72rem;letter-spacing:.065em}
  body.sala-guerra-theme .app-sidebar .mode-card{padding:10px}
  body.sala-guerra-theme .app-sidebar .mode-card strong{font-size:.9rem;line-height:1.25}
}
.status.sg-loading{display:flex!important;align-items:center;gap:11px;color:#4f5f43!important;background:rgba(103,116,78,.1)!important;border-color:rgba(103,116,78,.25)!important}
.sg-ammo-loader{position:relative;display:inline-flex;align-items:flex-start;justify-content:center;gap:3px;width:31px;height:24px;overflow:hidden;flex:0 0 31px}
.sg-ammo-loader i{display:block;width:5px;height:14px;border-radius:3px 3px 2px 2px;background:linear-gradient(90deg,#8a6424,#e1b754 55%,#79551d);box-shadow:inset 0 -3px 0 #4d3c22;animation:sg-ammo-drop 1.05s infinite ease-in;transform:translateY(-18px)}
.sg-ammo-loader i:nth-child(2){animation-delay:.18s}.sg-ammo-loader i:nth-child(3){animation-delay:.36s}.sg-ammo-loader i:before{content:"";display:block;width:3px;height:3px;margin:-2px auto 0;background:#c79236;transform:rotate(45deg);border-radius:1px}
@keyframes sg-ammo-drop{0%{transform:translateY(-18px) rotate(0);opacity:0}18%{opacity:1}72%{transform:translateY(7px) rotate(12deg);opacity:1}100%{transform:translateY(25px) rotate(24deg);opacity:0}}
@media(prefers-reduced-motion:reduce){.sg-ammo-loader i{animation:none;transform:translateY(5px);opacity:1}}
.sg-loader{width:20px;height:20px;flex:0 0 20px;border-radius:50%;border:3px solid rgba(102,115,76,.22);border-top-color:#66734c;animation:spin .8s linear infinite}
@media(prefers-reduced-motion:reduce){.sg-loader{animation:none}}

/* Corrida dos Campeões: entra automaticamente em 01/09/2026, à meia-noite de São Paulo. */
body.champions-race-theme{
  --bg:#fff8df;--panel:rgba(255,255,255,.94);--panel-strong:#fff;--card:#fffdf5;
  --text:#121212;--muted:#625f55;--border:#e7c65c;--accent:#f0b900;--accent-dark:#111;
  background-color:#fff5d2;
  background-image:radial-gradient(circle at 88% 8%,rgba(0,0,0,.13),transparent 24%),radial-gradient(circle at 12% 82%,rgba(255,202,0,.34),transparent 30%),linear-gradient(118deg,transparent 0 68%,rgba(0,0,0,.08) 68% 70%,transparent 70% 74%,rgba(255,198,0,.24) 74% 78%,transparent 78%),linear-gradient(rgba(0,0,0,.03) 1px,transparent 1px);
  background-size:auto,auto,100% 100%,22px 22px;
}
body.champions-race-theme .app-sidebar{background:radial-gradient(circle at 30% 0,rgba(255,210,10,.24),transparent 28%),linear-gradient(180deg,#050505 0%,#171717 58%,#292300 100%);border-right-color:#d9a900;box-shadow:8px 0 30px rgba(0,0,0,.32)}
body.champions-race-theme .app-sidebar:before{content:"CORRIDA DOS CAMPEÕES";display:block;margin:14px 14px 8px;padding:10px;border:1px solid rgba(255,210,10,.8);border-radius:9px;color:#ffd20a;background:linear-gradient(105deg,rgba(255,255,255,.09),rgba(255,204,0,.2));font-size:.61rem;font-weight:950;font-style:italic;letter-spacing:.1em;text-align:center;box-shadow:inset 4px 0 0 #ffd20a,0 4px 18px rgba(255,204,0,.14)}
body.champions-race-theme .app-sidebar .mode-card{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.1)}
body.champions-race-theme .app-sidebar .mode-card:hover{background:linear-gradient(90deg,rgba(255,255,255,.1),rgba(255,204,0,.17));border-color:rgba(255,204,0,.55);transform:translateX(3px)}
body.champions-race-theme .app-sidebar .mode-card strong{color:#fff}
body.champions-race-theme .app-sidebar .mode-card span{color:#c9c6bb}
body.champions-race-theme .app-sidebar .mode-card-icon{background:linear-gradient(135deg,#ffd20a 0 48%,#fff 48% 100%)!important;box-shadow:inset 0 0 0 1px rgba(255,255,255,.3),0 4px 12px rgba(255,204,0,.22)}
body.champions-race-theme .app-sidebar .mode-card-icon svg{filter:brightness(0)}
body.champions-race-theme .app-sidebar .sidebar-group-title{color:#f4f1e7;text-shadow:0 1px 2px #000}
body.champions-race-theme .app-sidebar .sidebar-group-title::after{color:#ffd20a}
body.champions-race-theme .app-sidebar .sidebar-group[open]{background:rgba(255,255,255,.065);border-color:rgba(255,210,10,.55)}
body.champions-race-theme .navbar{background:linear-gradient(100deg,rgba(255,255,255,.96) 0 70%,rgba(255,205,0,.24) 70% 86%,rgba(0,0,0,.08) 86%);border-bottom-color:#e0b000;backdrop-filter:blur(12px)}
body.champions-race-theme .brandbar{border-color:#dfb000;box-shadow:var(--shadow),inset 0 4px 0 #ffd20a,inset 0 7px 0 #111}
body.champions-race-theme .panel{border-color:#e1c46c;box-shadow:0 12px 34px rgba(94,49,0,.1),inset 0 3px 0 rgba(255,202,0,.5)}
body.champions-race-theme button.primary,body.champions-race-theme .primary{background:linear-gradient(120deg,#ffd20a,#e4ad00);border-color:#bd9100;color:#111;box-shadow:0 6px 16px rgba(181,137,0,.22)}
body.champions-race-theme input:focus,body.champions-race-theme select:focus,body.champions-race-theme textarea:focus{border-color:#d2a900!important;box-shadow:0 0 0 3px rgba(255,204,0,.2)!important}
body.champions-race-theme .sidebar-toggle{background:#111;color:#ffd20a;border-color:#635300}
body.champions-race-theme .campaign-theme-flag{display:flex;position:relative;overflow:hidden;padding:7px 48px 7px 12px;border-radius:5px;background:linear-gradient(105deg,#080808 0 86%,#ffd20a 86%);color:#fff;font-style:italic;text-shadow:0 1px 2px #000;box-shadow:inset 3px 0 0 #ffd20a,0 5px 14px rgba(0,0,0,.18)}
body.champions-race-theme .campaign-theme-flag:before{content:"";width:14px;height:14px;border-radius:0;background:conic-gradient(#111 25%,#fff 0 50%,#111 0 75%,#fff 0) 0 0/7px 7px;box-shadow:none}
body.champions-race-theme .campaign-theme-flag:after{content:"";position:absolute;top:0;right:13px;width:25px;height:100%;background:conic-gradient(#111 25%,#fff 0 50%,#111 0 75%,#fff 0) 0 0/10px 10px;transform:skewX(-12deg);box-shadow:-3px 0 0 #ffd20a}
body.champions-race-theme .status.sg-loading{color:#272000!important;background:linear-gradient(90deg,rgba(255,204,0,.19),rgba(0,0,0,.06))!important;border-color:rgba(188,148,0,.34)!important}
.race-flags-loader{position:relative;display:inline-flex;align-items:flex-start;justify-content:center;width:42px;height:28px;flex:0 0 42px;perspective:80px}
.race-flags-loader i{position:absolute;top:3px;width:18px;height:14px;background:conic-gradient(#111 25%,#fff 0 50%,#111 0 75%,#fff 0) 0 0/9px 7px;box-shadow:0 1px 3px rgba(0,0,0,.28);transform-origin:0 100%;animation:race-flag-wave .7s ease-in-out infinite alternate}
.race-flags-loader i:before{content:"";position:absolute;left:-2px;top:-2px;width:2px;height:23px;border-radius:2px;background:#d2a300}
.race-flags-loader i:first-child{left:5px;transform:rotate(-18deg);animation-delay:-.25s}.race-flags-loader i:last-child{right:2px;transform:rotate(18deg) scaleX(-1)}
@keyframes race-flag-wave{0%{filter:brightness(.9);translate:0 1px;rotate:-5deg;scale:1 .9}100%{filter:brightness(1.15);translate:0 -2px;rotate:7deg;scale:1 1.08}}
@media(max-width:480px){
  body.champions-race-theme .brandbar{flex-wrap:wrap;row-gap:10px}
  body.champions-race-theme .campaign-theme-flag{order:-1;flex:1 0 100%;width:100%;height:auto;min-height:32px;padding:8px 48px 8px 12px;justify-content:center;font-size:.63rem;letter-spacing:.11em}
  body.champions-race-theme .campaign-theme-flag:after{display:block}
  body.champions-race-theme .app-sidebar{padding:14px 10px}
  body.champions-race-theme .app-sidebar:before{margin:6px 4px 8px;font-size:.64rem;line-height:1.35}
  body.champions-race-theme .app-sidebar .sidebar-group-title{padding:11px 9px;font-size:.72rem;letter-spacing:.065em}
  body.champions-race-theme .app-sidebar .mode-card{padding:10px}
  body.champions-race-theme .app-sidebar .mode-card strong{font-size:.9rem;line-height:1.25}
}
@media(prefers-reduced-motion:reduce){.race-flags-loader i{animation:none}}

/* Sprint de Outubro: ativo de 01 a 10/10/2026 (horário de São Paulo). Azul-marinho + amarelo Eternity. */
body.october-sprint-theme{
  --bg:#eef1f7;--panel:rgba(255,255,255,.95);--panel-strong:#fff;--card:#f8f9fc;
  --text:#0b1530;--muted:#58627a;--border:#d5dae8;--accent:#f5c518;--accent-dark:#0b1530;
  background-color:#e9edf6;
  background-image:radial-gradient(circle at 90% 6%,rgba(245,197,24,.2),transparent 26%),radial-gradient(circle at 8% 88%,rgba(11,21,48,.12),transparent 32%),linear-gradient(118deg,transparent 0 70%,rgba(11,21,48,.06) 70% 72%,transparent 72% 76%,rgba(245,197,24,.18) 76% 80%,transparent 80%);
}
body.october-sprint-theme .app-sidebar{background:radial-gradient(circle at 30% 0,rgba(245,197,24,.2),transparent 30%),linear-gradient(180deg,#070d20 0%,#0b1530 58%,#132247 100%);border-right-color:#f5c518;box-shadow:8px 0 30px rgba(7,13,32,.35)}
body.october-sprint-theme .app-sidebar:before{content:"SPRINT DE OUTUBRO · 01 A 10/10";display:block;margin:14px 14px 8px;padding:10px;border:1px solid rgba(245,197,24,.85);border-radius:9px;color:#f5c518;background:linear-gradient(105deg,rgba(255,255,255,.06),rgba(245,197,24,.18));font-size:.61rem;font-weight:950;font-style:italic;letter-spacing:.1em;text-align:center;box-shadow:inset 4px 0 0 #f5c518,0 4px 18px rgba(245,197,24,.14)}
body.october-sprint-theme .app-sidebar .mode-card{background:rgba(255,255,255,.045);border-color:rgba(255,255,255,.1)}
body.october-sprint-theme .app-sidebar .mode-card:hover{background:linear-gradient(90deg,rgba(255,255,255,.08),rgba(245,197,24,.18));border-color:rgba(245,197,24,.6);transform:translateX(3px)}
body.october-sprint-theme .app-sidebar .mode-card strong{color:#fff}
body.october-sprint-theme .app-sidebar .mode-card span{color:#b9c2da}
body.october-sprint-theme .app-sidebar .mode-card-icon{background:radial-gradient(circle at 30% 25%,#1e2f5f,#0a1230 70%)!important;border:1px solid rgba(245,197,24,.7);box-shadow:inset 0 0 10px rgba(245,197,24,.18),0 0 12px rgba(245,197,24,.22);transition:background .2s,box-shadow .2s,transform .2s}
body.october-sprint-theme .app-sidebar .mode-card-icon svg,body.october-sprint-theme .app-sidebar .mode-card-icon svg *{stroke:#f5c518;filter:drop-shadow(0 0 3px rgba(245,197,24,.55))}
body.october-sprint-theme .app-sidebar .mode-card:hover .mode-card-icon,body.october-sprint-theme .app-sidebar .mode-card.active .mode-card-icon{background:linear-gradient(135deg,#ffd84a,#f5c518 55%,#d99f00)!important;box-shadow:0 0 18px rgba(245,197,24,.6);transform:scale(1.08) rotate(-4deg)}
body.october-sprint-theme .app-sidebar .mode-card:hover .mode-card-icon svg,body.october-sprint-theme .app-sidebar .mode-card:hover .mode-card-icon svg *,body.october-sprint-theme .app-sidebar .mode-card.active .mode-card-icon svg,body.october-sprint-theme .app-sidebar .mode-card.active .mode-card-icon svg *{stroke:#0b1530;filter:none}
body.october-sprint-theme .app-sidebar .sidebar-group-title{color:#f3f5fb;text-shadow:0 1px 2px #000}
body.october-sprint-theme .app-sidebar .sidebar-group-title::after{color:#f5c518}
body.october-sprint-theme .app-sidebar .sidebar-group[open]{background:rgba(255,255,255,.06);border-color:rgba(245,197,24,.55)}
body.october-sprint-theme .navbar{background:linear-gradient(100deg,rgba(255,255,255,.96) 0 70%,rgba(245,197,24,.26) 70% 86%,rgba(11,21,48,.08) 86%);border-bottom-color:#e0b000;backdrop-filter:blur(12px)}
body.october-sprint-theme .brandbar{border-color:#e0b000;box-shadow:var(--shadow),inset 0 4px 0 #f5c518,inset 0 7px 0 #0b1530}
body.october-sprint-theme .panel{border-color:#d9dcea;box-shadow:0 12px 34px rgba(11,21,48,.1),inset 0 3px 0 rgba(245,197,24,.55)}
body.october-sprint-theme button.primary,body.october-sprint-theme .primary{background:linear-gradient(120deg,#f5c518,#e0a800);border-color:#b98d00;color:#0b1530;box-shadow:0 6px 16px rgba(185,141,0,.25)}
body.october-sprint-theme input:focus,body.october-sprint-theme select:focus,body.october-sprint-theme textarea:focus{border-color:#d9a900!important;box-shadow:0 0 0 3px rgba(245,197,24,.22)!important}
body.october-sprint-theme .sidebar-toggle{background:#0b1530;color:#f5c518;border-color:#2a3a6a}
body.october-sprint-theme .campaign-theme-flag{display:flex;position:relative;overflow:hidden;padding:7px 48px 7px 12px;border-radius:5px;background:linear-gradient(105deg,#0b1530 0 86%,#f5c518 86%);color:#f5c518;font-style:italic;text-shadow:0 1px 2px #000;box-shadow:inset 3px 0 0 #f5c518,0 5px 14px rgba(11,21,48,.25)}
body.october-sprint-theme .campaign-theme-flag:before{content:"";width:14px;height:14px;border-radius:0;background:conic-gradient(#111 25%,#fff 0 50%,#111 0 75%,#fff 0) 0 0/7px 7px;box-shadow:none}
body.october-sprint-theme .campaign-theme-flag:after{content:"";position:absolute;top:0;right:13px;width:25px;height:100%;background:conic-gradient(#111 25%,#fff 0 50%,#111 0 75%,#fff 0) 0 0/10px 10px;transform:skewX(-12deg);box-shadow:-3px 0 0 #f5c518}
body.october-sprint-theme .status.sg-loading{color:#0b1530!important;background:linear-gradient(90deg,rgba(245,197,24,.2),rgba(11,21,48,.06))!important;border-color:rgba(185,141,0,.35)!important}
@media(max-width:480px){
  body.october-sprint-theme .brandbar{flex-wrap:wrap;row-gap:10px}
  body.october-sprint-theme .campaign-theme-flag{order:-1;flex:1 0 100%;width:100%;height:auto;min-height:32px;padding:8px 48px 8px 12px;justify-content:center;font-size:.63rem;letter-spacing:.11em}
  body.october-sprint-theme .app-sidebar{padding:14px 10px}
  body.october-sprint-theme .app-sidebar:before{margin:6px 4px 8px;font-size:.64rem;line-height:1.35}
  body.october-sprint-theme .app-sidebar .sidebar-group-title{padding:11px 9px;font-size:.72rem;letter-spacing:.065em}
  body.october-sprint-theme .app-sidebar .mode-card{padding:10px}
  body.october-sprint-theme .app-sidebar .mode-card strong{font-size:.9rem;line-height:1.25}
}

/* Sprint de Outubro: pista de progresso, rastros de velocidade e semáforo de largada. */
body.october-sprint-theme:before{content:"";position:fixed;inset:0;z-index:0;pointer-events:none;opacity:.5;background:repeating-linear-gradient(100deg,transparent 0 140px,rgba(245,197,24,.16) 140px 142px,transparent 142px 260px);background-size:520px 100%;animation:sprint-streaks 9s linear infinite}
@keyframes sprint-streaks{to{background-position:-520px 0}}
.sprint-track{position:relative;z-index:0;margin:10px 0 14px;padding:12px 16px 14px;border-radius:12px;background:linear-gradient(105deg,#070d20,#0b1530 70%,#132247);color:#fff;box-shadow:0 8px 24px rgba(7,13,32,.25),inset 0 -3px 0 #f5c518}
.sprint-track-head{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;align-items:baseline;font-size:.72rem}
.sprint-track-head strong{color:#f5c518;font-style:italic;letter-spacing:.12em;font-weight:950}.sprint-track-head span{color:#c9d1e6}
.sprint-lane{position:relative;height:34px;margin:8px 22px 0 0;border-radius:6px;background:repeating-linear-gradient(90deg,#1b2a52 0 calc(10% - 2px),#0b1530 calc(10% - 2px) 10%)}
.sprint-lane:before{content:"";position:absolute;left:0;right:0;top:50%;border-top:2px dashed rgba(255,255,255,.28)}
.sprint-lane-done{position:absolute;left:0;top:0;bottom:0;border-radius:6px 0 0 6px;background:linear-gradient(90deg,rgba(245,197,24,.05),rgba(245,197,24,.45));transition:width 1.2s cubic-bezier(.2,.8,.2,1)}
.sprint-car{position:absolute;top:5px;width:52px;height:20px;margin-left:-4px;filter:drop-shadow(0 0 8px rgba(245,197,24,.75));animation:sprint-car-in 1.4s cubic-bezier(.2,.8,.2,1) both,sprint-car-idle 1.1s ease-in-out 1.4s infinite alternate}
@keyframes sprint-car-in{from{translate:-60px 0;opacity:0}}
@keyframes sprint-car-idle{to{translate:0 -2px}}
.sprint-finish{position:absolute;right:-22px;top:-4px;bottom:-4px;width:20px;border-radius:3px;background:conic-gradient(#111 25%,#fff 0 50%,#111 0 75%,#fff 0) 0 0/10px 10px;box-shadow:0 0 0 2px #f5c518}
.sprint-start{position:fixed;inset:0;z-index:99999;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:22px;background:radial-gradient(circle at 50% 40%,#132247,#050914 70%);color:#fff;cursor:pointer;transition:opacity .45s}
.sprint-start.is-out{opacity:0;pointer-events:none}
.sprint-lights{display:flex;gap:clamp(8px,3vw,22px);padding:18px 24px;border-radius:18px;background:#0a0a0a;border:2px solid #333;box-shadow:0 20px 60px rgba(0,0,0,.6)}
.sprint-lights i{width:clamp(34px,10vw,64px);height:clamp(34px,10vw,64px);border-radius:50%;background:#2a0a0a;box-shadow:inset 0 0 12px #000;animation:sprint-light .1s steps(1) both}
.sprint-lights i:nth-child(1){animation-delay:.4s}.sprint-lights i:nth-child(2){animation-delay:.8s}.sprint-lights i:nth-child(3){animation-delay:1.2s}.sprint-lights i:nth-child(4){animation-delay:1.6s}.sprint-lights i:nth-child(5){animation-delay:2s}
@keyframes sprint-light{to{background:radial-gradient(circle at 35% 30%,#ff6b6b,#e11 55%,#900);box-shadow:0 0 28px 6px rgba(255,30,30,.7)}}
.sprint-go{font-size:clamp(2.2rem,9vw,5rem);font-weight:950;font-style:italic;letter-spacing:.06em;color:#f5c518;text-shadow:0 0 30px rgba(245,197,24,.6);opacity:0;animation:sprint-go .5s ease-out 2.9s forwards}
@keyframes sprint-go{from{opacity:0;transform:scale(.6) skewX(-10deg)}to{opacity:1;transform:scale(1) skewX(-10deg)}}
.sprint-start small{color:#8f9bbd;font-size:.72rem;letter-spacing:.08em}
.sprint-start:has(.sprint-go){--go:1}
.sprint-start .sprint-lights{animation:sprint-lights-off .01s linear 2.9s forwards}
@keyframes sprint-lights-off{to{opacity:.12;filter:grayscale(1)}}
.sprint-start.is-reduced .sprint-lights i,.sprint-start.is-reduced .sprint-go{animation:none;opacity:1}
.sprint-start.is-reduced .sprint-lights i{background:#e11}
@media(prefers-reduced-motion:reduce){body.october-sprint-theme:before{animation:none}.sprint-car,.sprint-lane-done{animation:none;transition:none}}
