:root{
  --bg:#f3f6f9; --panel:#ffffff; --panel2:#eef3f8; --text:#17212b; --muted:#637383; --line:#d8e0ea;
  --gold:#c89219; --gold2:#fff4cf; --green:#168a48; --red:#b33a2e; --radius:20px;
  --shadow:0 10px 28px rgba(38,50,64,.10);
}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
a{color:inherit;text-decoration:none}.app-shell{min-height:100svh;max-width:640px;margin:0 auto;background:linear-gradient(180deg,#ffffff 0,#f4f7fa 260px,#f3f6f9 100%);padding-bottom:86px;box-shadow:0 0 0 1px rgba(216,224,234,.45)}
.topbar{position:sticky;top:0;z-index:20;padding:12px 14px;display:flex;align-items:center;gap:12px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.logo,.brand-logo{width:56px;height:56px;border-radius:18px;object-fit:cover;border:1px solid #e5ebf2;box-shadow:0 5px 16px rgba(25,36,48,.12);background:#fff}h1{margin:0;font-size:21px;line-height:1;font-weight:1000;letter-spacing:-.5px}.topbar p,#apiBadge{font-size:12px;color:var(--muted);margin:5px 0 0;line-height:1.2}
.screen,.view{padding:14px;display:grid;gap:12px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:14px;box-shadow:var(--shadow)}.card.compact{padding:11px}.hero{padding:16px;border-radius:24px;background:radial-gradient(circle at top right,rgba(200,146,25,.18),transparent 35%),linear-gradient(135deg,#ffffff,#edf3fa);border-color:#d6e0eb;box-shadow:var(--shadow)}
.kicker{font-size:12px;color:#91650c;text-transform:uppercase;letter-spacing:.11em;font-weight:950;margin:0 0 6px}h2{font-size:25px;margin:0 0 7px;line-height:1.05;font-weight:1000;letter-spacing:-.7px}h3{margin:0 0 9px;font-size:18px;letter-spacing:-.25px}p{margin:0 0 8px;color:var(--muted);font-size:14px;line-height:1.42}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:12px}.stat{background:#f8fafc;border:1px solid #dbe3ec;border-radius:16px;padding:11px;text-align:center}.stat strong{display:block;font-size:22px;line-height:1;color:#17212b}.stat span{display:block;margin-top:4px;color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.btn-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.btn-row.one{grid-template-columns:1fr}button,.btn{border:0;border-radius:15px;min-height:48px;padding:11px 13px;display:inline-flex;align-items:center;justify-content:center;text-align:center;font-weight:950;background:var(--gold);color:#16110a;box-shadow:0 6px 16px rgba(200,146,25,.18);cursor:pointer;font-size:15px}.btn.secondary,button.secondary{background:var(--panel2);color:var(--text);border:1px solid #d4dce7;box-shadow:none}.btn.gold,button.gold{background:var(--gold);color:#16110a}.btn.full,button.full{width:100%}
.list{display:grid;gap:9px}.item{background:#ffffff;border:1px solid var(--line);border-radius:17px;padding:12px;box-shadow:0 3px 12px rgba(38,50,64,.05)}.item strong{display:block;line-height:1.17}.item small{display:block;color:var(--muted);font-weight:700;line-height:1.35;margin-top:3px}.standing-card{grid-template-columns:auto 1fr auto;display:grid;align-items:center;gap:10px}.rank{width:36px;height:36px;border-radius:13px;background:#fff4cf;color:#805a00;display:grid;place-items:center;font-weight:1000;flex:none}.pts{text-align:right;font-weight:1000;color:#17212b}.pts small{font-size:10px;margin:0}.driver-card{cursor:pointer}
.pill-row{display:flex;gap:7px;flex-wrap:wrap}.pill{font-size:12px;font-weight:900;border:1px solid rgba(200,146,25,.35);background:#fff7db;border-radius:999px;padding:7px 10px;color:#6f4f05;min-height:34px;box-shadow:none}.tabs-inline{display:flex;gap:8px;overflow:auto;padding-bottom:2px}.tabs-inline button{white-space:nowrap;min-height:39px;border-radius:999px;background:#ffffff;color:#17212b;border:1px solid var(--line);font-size:13px;box-shadow:none}.tabs-inline button.active{background:#fff4cf;color:#805a00;border-color:#ead29a}
.search,textarea,input,select{width:100%;min-height:48px;border-radius:15px;border:1px solid #d4dce7;background:#ffffff;color:var(--text);padding:0 13px;font-size:16px}textarea{min-height:90px;padding:12px}.empty{padding:20px;text-align:center;color:var(--muted);border:1px dashed var(--line);border-radius:16px;background:#fbfdff}.details{display:none}.details.open{display:block;margin-top:9px}.result-row{display:grid;grid-template-columns:auto 1fr auto;gap:8px;border-top:1px solid var(--line);padding:8px 0}.result-row:first-child{border-top:0}.pos{font-weight:1000;color:#805a00}.notice{font-size:13px;padding:10px 12px;border-radius:15px;background:rgba(200,146,25,.10);border:1px solid rgba(200,146,25,.25);color:#6f4f05;line-height:1.35;white-space:pre-wrap}.error{background:#fde8e4;border-color:#efb5ad;color:#84251b}.ok{background:#e7f6ee;border-color:#b9e4cc;color:#0d6538}
.admin-grid{display:grid;gap:10px}.bottom-nav{position:fixed;left:50%;bottom:0;transform:translateX(-50%);z-index:30;width:100%;max-width:640px;padding:8px 10px calc(8px + env(safe-area-inset-bottom));display:grid;grid-template-columns:repeat(5,1fr);gap:6px;background:rgba(255,255,255,.98);border-top:1px solid var(--line);backdrop-filter:blur(10px);box-shadow:0 -8px 22px rgba(38,50,64,.08)}.bottom-nav button{border:0;border-radius:14px;background:transparent;color:#657485;min-height:56px;font-size:11px;font-weight:850;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:6px;box-shadow:none}.bottom-nav button span{font-size:18px;line-height:1}.bottom-nav button.active{background:#fff4cf;color:#805a00}
@media(max-width:380px){.stat-row,.btn-row{grid-template-columns:1fr}h2{font-size:22px}h1{font-size:18px}.logo,.brand-logo{width:50px;height:50px}}
@media(min-width:760px){.app-shell{border-left:1px solid var(--line);border-right:1px solid var(--line)}}
.rank-wrap{display:grid;justify-items:center;gap:4px}.move{font-size:10px;font-weight:1000;border-radius:999px;padding:2px 6px;line-height:1}.move.up{background:#e7f6ee;color:#0d6538}.move.down{background:#fde8e4;color:#84251b}.move.same{background:#eef3f8;color:#637383}.move.new{background:#fff4cf;color:#805a00}.car-num{font-size:12px;color:var(--muted);font-weight:900;align-self:center}.race-card .result-row{grid-template-columns:34px 1fr auto}.full-results{max-height:none}.small-empty{padding:10px}.class-stat strong{margin-bottom:2px}.standing-card{cursor:pointer}.standing-card:hover,.driver-card:hover{border-color:#c89219}
.chip-row{display:flex;gap:6px;flex-wrap:wrap;margin-top:7px}.stat-chip{display:inline-flex;gap:4px;align-items:center;border:1px solid #dbe3ec;background:#f8fafc;border-radius:999px;padding:5px 8px;font-size:11px;color:#273240;font-weight:800}.stat-chip b{color:#637383;text-transform:uppercase;font-size:9px;letter-spacing:.04em}.class-lines{display:grid;gap:7px;margin-top:7px}.class-lines div{background:#f8fafc;border:1px solid #dbe3ec;border-radius:13px;padding:8px}details.item{display:block}details summary{list-style:none;cursor:pointer}details summary::-webkit-details-marker{display:none}details summary small{display:block;color:var(--muted);font-weight:700;line-height:1.35;margin-top:3px}.race-card summary strong{display:block}.race-card summary small{display:block;color:var(--muted);font-weight:700;line-height:1.35;margin-top:3px}

.event-card{align-items:center;justify-content:space-between;gap:10px;}
.event-card small{display:block;margin-top:4px;line-height:1.35;}
.btn.tiny{padding:8px 10px;font-size:12px;min-height:auto;white-space:nowrap;}
.muted{display:block;color:#64748b;margin-top:8px;line-height:1.35;}

.record-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px}.record-summary div{background:#f8fafc;border:1px solid #dbe3ec;border-radius:16px;padding:12px;text-align:center}.record-summary b{display:block;font-size:24px}.record-summary span{display:block;color:var(--muted);font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.04em}.driver-profile-card summary{list-style:none;cursor:pointer}.driver-profile-card summary::-webkit-details-marker{display:none}.driver-summary{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.expand-hint{font-size:11px;background:#fff4cf;color:#805a00;border:1px solid #ead29a;border-radius:999px;padding:5px 8px;font-weight:1000}.driver-profile-card[open] .expand-hint{background:#e7f6ee;color:#0d6538;border-color:#b9e4cc}.driver-profile-card[open] .expand-hint::before{content:'Close';font-size:11px}.driver-profile-card[open] .expand-hint{font-size:0}.profile-body{margin-top:12px;border-top:1px solid var(--line);padding-top:12px;display:grid;gap:10px}.profile-body h4{margin:4px 0 0;font-size:14px;text-transform:uppercase;letter-spacing:.05em;color:#637383}.mini-list{gap:7px}.class-stat-block{background:#f8fafc;border:1px solid #dbe3ec;border-radius:14px;padding:10px}.history-row{display:grid;grid-template-columns:84px 1fr auto;gap:8px;align-items:center;background:#ffffff;border:1px solid var(--line);border-radius:14px;padding:10px}.history-row small,.class-stat-block small{display:block;color:var(--muted);font-weight:700;line-height:1.35;margin-top:3px}.record-card{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center}.record-card div:nth-child(2){text-align:right}.record-card b{font-size:18px;color:#17212b}.record-card small{display:block;color:var(--muted);font-weight:700}.live-fast{display:inline-block;margin-left:4px;color:#805a00;font-weight:900}@media(max-width:430px){.history-row{grid-template-columns:1fr}.record-card{grid-template-columns:1fr}.record-card div:nth-child(2){text-align:left}.record-summary{grid-template-columns:1fr}}


/* v17 driver profile cleanup */
.driver-profile-card summary { padding: 14px 0; }
.expanded-profile { margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--border); }
.expanded-profile h4 { margin: 18px 0 10px; font-size: 1rem; }
.profile-class-list, .profile-history-list { display: grid; gap: 12px; }
.big-class-block, .big-history-row { border: 1px solid var(--border); border-radius: 16px; background: #fffdf7; padding: 14px; }
.big-class-block h5 { margin: 0 0 10px; font-size: 1rem; }
.profile-stat-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
.profile-stat-grid span { border: 1px solid var(--border); border-radius: 12px; padding: 10px; background: #fff; }
.profile-stat-grid b { display: block; font-size: 1rem; }
.profile-stat-grid small { display: block; margin-top: 2px; color: var(--muted); font-size: .75rem; }
.line-note { margin: 10px 0 0; }
.big-history-row { display: grid; grid-template-columns: 1fr; gap: 10px; align-items: start; }
.history-date small, .history-main span { display: block; color: var(--muted); margin-top: 4px; }
.history-main b { display: block; margin-bottom: 6px; }
@media (min-width: 560px){ .profile-stat-grid{grid-template-columns: repeat(3, minmax(0,1fr));} .big-history-row{grid-template-columns: 100px 1fr auto;} }

/* v19 phone-width points + no-link records */
.points-card-mobile{display:block;cursor:pointer;overflow:hidden;}
.points-topline{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;}
.points-driver{min-width:0;}
.points-driver strong{font-size:16px;line-height:1.15;overflow-wrap:anywhere;}
.points-driver small{font-size:11px;margin-top:3px;}
.points-total{text-align:right;background:#fff4cf;border:1px solid #ead29a;border-radius:14px;padding:7px 9px;min-width:62px;}
.points-total b{display:block;font-size:18px;line-height:1;color:#17212b;}
.points-total small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:#805a00;font-weight:1000;margin-top:2px;}
.points-chip-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin-top:10px;}
.points-chip-grid span{background:#f8fafc;border:1px solid #dbe3ec;border-radius:12px;padding:7px 5px;text-align:center;font-size:13px;font-weight:1000;min-width:0;}
.points-chip-grid b{display:block;color:#637383;text-transform:uppercase;font-size:9px;letter-spacing:.04em;margin-bottom:2px;}
.record-card.no-link{grid-template-columns:minmax(0,1fr) auto;}
.record-card.no-link div:nth-child(2){text-align:right;}
@media(max-width:430px){
  .points-topline{grid-template-columns:auto minmax(0,1fr);}
  .points-total{grid-column:1 / -1;display:flex;align-items:baseline;justify-content:space-between;min-width:0;width:100%;padding:9px 12px;}
  .points-total b{font-size:20px;}
  .points-chip-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .record-card.no-link{grid-template-columns:1fr;}
  .record-card.no-link div:nth-child(2){text-align:left;background:#f8fafc;border:1px solid #dbe3ec;border-radius:12px;padding:9px;margin-top:8px;}
}

/* v20 cleaner phone points layout - replaces v19 wide card feel */
.points-card-v20{display:block;cursor:pointer;padding:12px;overflow:hidden;}
.points-main-v20{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:center;}
.points-name-v20{min-width:0;}
.points-name-v20 strong{display:block;font-size:18px;line-height:1.15;overflow-wrap:anywhere;}
.points-name-v20 small{display:block;margin-top:4px;color:var(--muted);font-weight:800;font-size:12px;}
.points-score-v20{margin:10px 0 0;padding:9px 11px;border-radius:14px;background:#fff4cf;border:1px solid #ead29a;display:flex;align-items:baseline;justify-content:space-between;gap:10px;}
.points-score-v20 b{font-size:24px;line-height:1;color:#17212b;}
.points-score-v20 span{font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:1000;color:#805a00;}
.points-stats-v20{margin-top:9px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;}
.points-stats-v20 div{border:1px solid #dbe3ec;background:#f8fafc;border-radius:13px;padding:9px 8px;min-width:0;}
.points-stats-v20 b{display:block;font-size:17px;line-height:1;color:#17212b;}
.points-stats-v20 span{display:block;margin-top:4px;font-size:10px;font-weight:1000;text-transform:uppercase;letter-spacing:.05em;color:#637383;white-space:nowrap;}
@media(min-width:520px){.points-stats-v20{grid-template-columns:repeat(4,minmax(0,1fr));}.points-card-v20{padding:14px}.points-score-v20{max-width:220px}.points-card-v20{position:relative}.points-score-v20{position:absolute;right:14px;top:14px;margin:0;width:140px}.points-main-v20{padding-right:154px}}

/* v21 true phone-width points cleanup */
.app-shell{max-width:430px;width:100%;overflow-x:hidden;}
.bottom-nav{max-width:430px;}
.screen,.view{padding:12px;}
.card{padding:12px;border-radius:18px;}
.hero h2{font-size:22px;}
.tabs-inline{gap:6px;}
.tabs-inline button{font-size:12px;min-height:35px;padding:8px 10px;}
.points-list-v21{gap:8px;}
.points-card-v21{padding:9px 10px;border-radius:14px;overflow:hidden;}
.points-row-v21{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:8px;align-items:center;}
.points-rank-v21 .rank{width:30px;height:30px;border-radius:10px;font-size:14px;}
.points-rank-v21 .move{font-size:9px;padding:1px 5px;}
.points-name-v21{min-width:0;}
.points-name-v21 strong{display:block;font-size:14px;line-height:1.15;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.points-name-v21 small{display:block;margin-top:2px;font-size:10px;color:var(--muted);font-weight:800;}
.points-score-v21{text-align:right;background:#fff4cf;border:1px solid #ead29a;border-radius:11px;padding:5px 7px;min-width:54px;}
.points-score-v21 b{display:block;font-size:16px;line-height:1;color:#17212b;}
.points-score-v21 span{display:block;font-size:9px;line-height:1.1;text-transform:uppercase;letter-spacing:.04em;color:#805a00;font-weight:1000;margin-top:2px;}
.points-meta-v21{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;padding-left:42px;}
.points-meta-v21 span{font-size:10px;font-weight:850;color:#485668;background:#f8fafc;border:1px solid #dbe3ec;border-radius:999px;padding:3px 6px;line-height:1.1;}
@media(min-width:520px){
  .points-card-v20{position:static;padding:9px 10px;}
  .points-score-v20{position:static;width:auto;max-width:none;margin:0;}
  .points-main-v20{padding-right:0;}
}

/* v22 points: class selector + compact phone rows with visible points */
.points-hero-v22 h2{font-size:22px;line-height:1.05;}
.points-picker-card{padding:10px 12px;}
.select-label{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:1000;color:#805a00;margin-bottom:6px;}
.class-select{width:100%;max-width:100%;height:42px;border:1px solid #d7e0ea;border-radius:12px;background:#fff;color:#17212b;font-weight:900;font-size:14px;padding:0 10px;outline:none;}
.mini-class-tabs{display:flex;gap:6px;overflow-x:auto;padding:9px 0 2px;margin:0 -2px;scrollbar-width:thin;}
.mini-class-tabs button{flex:0 0 auto;border:1px solid #d7e0ea;background:#fff;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:900;color:#17212b;white-space:nowrap;max-width:170px;overflow:hidden;text-overflow:ellipsis;}
.mini-class-tabs button.active{background:#fff2c8;border-color:#e0bf65;color:#805a00;}
.points-section-v22{padding:12px 10px;}
.points-section-v22 h3{font-size:16px;margin:0 0 9px;line-height:1.2;}
.points-list-v22{display:grid;gap:8px;}
.points-card-v22{width:100%;display:grid;grid-template-columns:42px minmax(0,1fr) 62px;gap:8px;align-items:center;text-align:left;border:1px solid #d8e1eb;background:#fff;border-radius:14px;padding:9px 8px;box-shadow:0 1px 0 rgba(15,23,42,.03);cursor:pointer;}
.rank-stack-v22{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;}
.rank-stack-v22>b{width:30px;height:30px;border-radius:10px;background:#fff1bf;color:#7a5800;display:grid;place-items:center;font-size:14px;font-weight:1000;}
.rank-stack-v22 .move{font-size:9px;line-height:1;padding:1px 5px;border-radius:99px;white-space:nowrap;}
.driver-stack-v22{min-width:0;display:block;}
.driver-stack-v22 strong{display:block;font-size:14px;line-height:1.12;color:#101923;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.driver-stack-v22 small{display:block;margin-top:2px;font-size:10px;line-height:1.1;color:#667587;font-weight:850;}
.points-meta-v22{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;}
.points-meta-v22 em{font-style:normal;font-size:10px;line-height:1;border:1px solid #dbe3ec;background:#f8fafc;border-radius:999px;padding:3px 6px;color:#485668;font-weight:900;white-space:nowrap;}
.score-v22{justify-self:end;background:#fff4cf;border:1px solid #e6c76b;border-radius:12px;padding:6px 7px;text-align:center;min-width:56px;max-width:62px;}
.score-v22 b{display:block;font-size:17px;line-height:1;color:#17212b;font-weight:1000;}
.score-v22 small{display:block;font-size:9px;line-height:1;text-transform:uppercase;letter-spacing:.04em;color:#805a00;font-weight:1000;margin-top:2px;}
@media(max-width:380px){.points-card-v22{grid-template-columns:37px minmax(0,1fr) 56px;gap:6px;padding:8px 7px}.driver-stack-v22 strong{font-size:13px}.score-v22 b{font-size:15px}.points-meta-v22 em{font-size:9px;padding:3px 5px}.rank-stack-v22>b{width:28px;height:28px;font-size:13px}}

/* v23 phone points reset: stacked classes + visible points */
.points-hero-v23{overflow:visible;}
.points-hero-v23 h2{font-size:22px;line-height:1.05;}
.points-hero-v23 p{white-space:normal;overflow:visible;font-size:13px;line-height:1.35;max-width:100%;}
.points-picker-card-v23{padding:10px;overflow:visible;}
.class-select-v23{height:42px;font-size:13px;margin-bottom:8px;}
.class-stack-v23{display:grid;grid-template-columns:1fr 1fr;gap:7px;width:100%;overflow:visible;}
.class-stack-v23 button{min-height:37px;width:100%;padding:8px 8px;border-radius:12px;background:#fff;border:1px solid #d8e1eb;color:#17212b;box-shadow:none;font-size:12px;font-weight:950;line-height:1.1;text-align:center;white-space:normal;overflow-wrap:anywhere;}
.class-stack-v23 button.active{background:#fff2c8;border-color:#e1bf62;color:#805a00;}
.points-section-v23{padding:11px 9px;overflow:visible;}
.points-section-v23 h3{font-size:16px;margin:0 0 8px;line-height:1.2;overflow-wrap:anywhere;}
.points-list-v23{display:grid;gap:8px;}
.points-card-v23{width:100%;display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;align-items:start;text-align:left;background:#fff;border:1px solid #d8e1eb;border-radius:14px;padding:9px 8px;box-shadow:0 1px 0 rgba(15,23,42,.03);cursor:pointer;overflow:hidden;}
.rank-stack-v23{display:flex;flex-direction:column;align-items:center;gap:3px;min-width:0;}
.rank-stack-v23>b{width:30px;height:30px;border-radius:10px;background:#fff1bf;color:#7a5800;display:grid;place-items:center;font-size:14px;font-weight:1000;}
.rank-stack-v23 .move{font-size:9px;line-height:1;padding:1px 5px;border-radius:99px;white-space:nowrap;max-width:38px;overflow:hidden;text-overflow:ellipsis;}
.points-body-v23{display:block;min-width:0;width:100%;}
.points-title-v23{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;width:100%;min-width:0;}
.points-title-v23 strong{display:block;min-width:0;font-size:14px;line-height:1.1;color:#101923;font-weight:1000;overflow-wrap:anywhere;padding-top:2px;}
.points-body-v23>small{display:block;margin-top:2px;font-size:10px;line-height:1.1;color:#667587;font-weight:850;}
.score-v23{flex:0 0 auto;background:#fff4cf;border:1px solid #e6c76b;border-radius:11px;padding:5px 7px;text-align:center;min-width:54px;}
.score-v23 b{display:block;font-size:16px;line-height:1;color:#17212b;font-weight:1000;}
.score-v23 small{display:block;font-size:8px;line-height:1;text-transform:uppercase;letter-spacing:.04em;color:#805a00;font-weight:1000;margin-top:2px;}
.points-meta-v23{display:flex;flex-wrap:wrap;gap:4px;margin-top:6px;}
.points-meta-v23 em{font-style:normal;font-size:10px;line-height:1;border:1px solid #dbe3ec;background:#f8fafc;border-radius:999px;padding:3px 6px;color:#485668;font-weight:900;white-space:nowrap;}
@media(max-width:360px){
  .class-stack-v23{grid-template-columns:1fr;}
  .points-card-v23{grid-template-columns:35px minmax(0,1fr);gap:6px;padding:8px 7px;}
  .rank-stack-v23>b{width:28px;height:28px;font-size:13px;}
  .points-title-v23 strong{font-size:13px;}
  .score-v23{min-width:49px;padding:5px 6px;}
  .score-v23 b{font-size:14px;}
  .points-meta-v23 em{font-size:9px;padding:3px 5px;}
}

/* v25 home tabs, FB button, separated races, driver qualifying profile cleanup */
.home-action-grid-v25{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.fb-btn-v25{background:#1877f2!important;color:#fff!important;border:1px solid rgba(24,119,242,.35)!important;box-shadow:0 6px 16px rgba(24,119,242,.18)!important;gap:8px}
.fb-logo-v25{width:22px;height:22px;border-radius:999px;background:#fff;color:#1877f2;display:inline-grid;place-items:center;font-weight:1000;font-family:Arial,sans-serif;font-size:19px;line-height:1}
.home-tabs-card-v25{padding:8px!important}
.home-tabs-v25,.live-panel-tabs-v25{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.live-panel-tabs-v25{grid-template-columns:1fr 1fr;margin-top:12px}
.home-tabs-v25 button,.live-panel-tabs-v25 button{min-height:38px;border-radius:12px;background:#fff;color:#17212b;border:1px solid #d8e1eb;box-shadow:none;font-size:12px;font-weight:950;padding:8px 6px}
.home-tabs-v25 button.active,.live-panel-tabs-v25 button.active{background:#fff2c8;border-color:#e1bf62;color:#805a00}
.combined-counts-v25{box-shadow:none;background:#fbfdff}
.mini-stat-row-v25{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}
.mini-stat-row-v25 div{background:#fff;border:1px solid #dbe3ec;border-radius:13px;padding:8px 5px;text-align:center}
.mini-stat-row-v25 b{display:block;font-size:18px;line-height:1;color:#17212b}.mini-stat-row-v25 span{display:block;margin-top:3px;font-size:9px;text-transform:uppercase;letter-spacing:.04em;font-weight:1000;color:#637383}
.race-group-v25{display:grid;gap:7px;margin-bottom:12px}.race-group-v25:last-child{margin-bottom:0}.race-group-v25 h4,.schedule-section-v25 h4{margin:0 0 2px;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#805a00}.race-group-v25.special h4,.schedule-section-v25.special h4{color:#6b3aa3}
.event-button-v25{width:100%;min-height:auto;display:flex;align-items:center;justify-content:space-between;text-align:left;gap:8px;border:1px solid #d8e1eb;background:#fff;color:#17212b;border-radius:14px;padding:10px;box-shadow:none}.event-button-v25 strong{display:block;font-size:14px;line-height:1.15}.event-button-v25 small{display:block;margin-top:3px;font-size:11px;color:#637383;font-weight:750;line-height:1.25}.event-button-v25 em{font-style:normal;font-size:10px;text-transform:uppercase;font-weight:1000;color:#805a00;background:#fff2c8;border:1px solid #e1bf62;border-radius:999px;padding:4px 7px;white-space:nowrap}
.schedule-section-v25{display:grid;gap:7px;margin-bottom:12px}.schedule-section-v25:last-child{margin-bottom:0}.schedule-row-v25{display:grid;grid-template-columns:86px 1fr;gap:8px;align-items:center;background:#fff;border:1px solid #dbe3ec;border-radius:13px;padding:9px 10px}.schedule-row-v25 b{font-size:13px;color:#17212b}.schedule-row-v25 span{font-size:12px;color:#637383;font-weight:850}.schedule-row-v25.special{background:#fbf7ff;border-color:#e3d7f2}
.link-grid-v25{display:grid;grid-template-columns:1fr;gap:9px}.link-grid-v25 .btn{width:100%}
.event-stack-v25{display:grid;grid-template-columns:1fr;gap:7px}.event-stack-v25 button{min-height:39px;width:100%;justify-content:flex-start;text-align:left;background:#fff;color:#17212b;border:1px solid #d8e1eb;border-radius:12px;box-shadow:none;font-size:12px;font-weight:900;padding:8px 10px}.event-stack-v25 button.active{background:#fff2c8;border-color:#e1bf62;color:#805a00}
.driver-profile-v25 .stat-chip{font-size:10px;padding:5px 7px}.driver-profile-v25 .profile-body{gap:14px}.driver-profile-v25 h5{margin:0 0 8px;font-size:15px;color:#17212b}.profile-stat-grid-v25{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.profile-stat-grid-v25 span{background:#fff;border:1px solid #dbe3ec;border-radius:12px;padding:8px}.profile-stat-grid-v25 b{display:block;font-size:15px}.profile-stat-grid-v25 small{font-size:9px;text-transform:uppercase;letter-spacing:.04em}.history-row-v25{grid-template-columns:1fr!important;gap:8px}.history-row-v25 .history-date strong{font-size:13px}.history-row-v25 .history-main{display:grid;gap:3px}.history-row-v25 .history-main span{font-size:12px;color:#4d5d6d;font-weight:750}
@media(max-width:360px){.home-action-grid-v25{grid-template-columns:1fr}.home-tabs-v25 button{font-size:11px}.schedule-row-v25{grid-template-columns:1fr;gap:2px}.event-button-v25{align-items:flex-start}.event-button-v25 em{display:none}}

/* v26 next race schedule banner */
.next-race-card-v26{
  border-color:#f1d58a;
  background:linear-gradient(135deg,#fff9e6,#ffffff 70%);
}
.next-race-v26 h2{
  margin:2px 0 6px;
  font-size:1.55rem;
  letter-spacing:.02em;
}
.next-race-v26 p{
  margin:0 0 12px;
  line-height:1.35;
}
.next-race-v26.today h2{
  color:#8a0000;
}
.compact-actions-v26{
  margin-top:8px;
}
.schedule-row-v25.today-row-v26{
  border-color:#f1c75b;
  background:#fff4c9;
}
.schedule-row-v25.today-row-v26 b{
  color:#8a0000;
}
@media (max-width: 520px){
  .next-race-v26 h2{font-size:1.35rem;}
  .compact-actions-v26{grid-template-columns:1fr 1fr;}
}

/* v27 driver profile nested collapse cleanup */
.driver-profile-v27 .expanded-profile-v27{gap:16px;}
.profile-help{font-size:12px;line-height:1.4;margin:-4px 0 4px;color:#637383;font-weight:700;}
.driver-day-list,.driver-event-list,.driver-result-list{display:grid;gap:10px;}
.driver-day-group,.driver-event-group{border:1px solid #dbe3ec;border-radius:16px;background:#ffffff;overflow:hidden;}
.driver-day-group>summary,.driver-event-group>summary{display:flex;align-items:center;gap:10px;padding:12px;cursor:pointer;list-style:none;}
.driver-day-group>summary::-webkit-details-marker,.driver-event-group>summary::-webkit-details-marker{display:none;}
.driver-day-group>summary strong,.driver-event-group>summary strong{display:block;font-size:14px;color:#17212b;line-height:1.2;}
.driver-day-group>summary small,.driver-event-group>summary small{display:block;font-size:11px;color:#637383;line-height:1.35;margin-top:3px;font-weight:800;}
.plus{width:24px;height:24px;min-width:24px;border-radius:999px;background:#fff4cf;border:1px solid #ead29a;color:#805a00;display:inline-flex;align-items:center;justify-content:center;font-weight:1000;}
.plus::before{content:'+';font-size:18px;line-height:1;}
details[open] > summary .plus::before{content:'–';font-size:20px;margin-top:-2px;}
.small-plus{width:20px;height:20px;min-width:20px;background:#f8fafc;border-color:#dbe3ec;color:#4d5d6d;}
.driver-event-list{padding:0 10px 12px 10px;}
.driver-event-group{background:#fbfdff;}
.driver-event-group>summary{padding:10px;}
.driver-result-list{padding:0 10px 10px 10px;}
.driver-result-card{border:1px solid #dbe3ec;border-radius:14px;background:#ffffff;padding:10px;display:grid;gap:8px;}
.driver-result-card.points-result{border-color:#ead29a;background:#fffaf0;}
.driver-result-card.main-result{border-color:#cfe2f8;background:#f8fbff;}
.driver-result-card.qual-result{border-color:#dbe3ec;background:#ffffff;}
.result-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;border-bottom:1px solid #edf1f5;padding-bottom:7px;}
.result-topline b{font-size:12px;text-transform:uppercase;letter-spacing:.04em;color:#805a00;}
.result-topline span{font-size:12px;font-weight:1000;color:#17212b;background:#fff4cf;border:1px solid #ead29a;border-radius:999px;padding:4px 7px;white-space:nowrap;}
.result-lines{display:grid;grid-template-columns:1fr 1fr;gap:8px;}
.result-lines span{display:block;border:1px solid #edf1f5;border-radius:12px;padding:8px;background:#fff;min-width:0;}
.result-lines b{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.05em;color:#637383;margin-bottom:2px;}
.class-stat-v27 h5{font-size:16px;margin-bottom:10px;}
@media(max-width:430px){
  .driver-summary{gap:8px;}
  .driver-profile-v27 .stat-chip{font-size:10px;padding:4px 6px;}
  .driver-day-group>summary strong,.driver-event-group>summary strong{font-size:13px;}
  .result-lines{grid-template-columns:1fr;}
  .result-topline{align-items:flex-start;flex-direction:column;}
  .result-topline span{align-self:flex-start;}
}

/* v28 cleanup */
.race-select-v28{
  width:100%;
  min-height:44px;
  border-radius:14px;
  border:1px solid #d7e0ea;
  background:#fff;
  color:#17212b;
  font-size:14px;
  font-weight:900;
  padding:0 12px;
}
.home-hero-v25 p:empty{display:none;}

/* v29 qualifying profile cleanup */
.result-lines-v29{gap:8px;}
.result-lines-v29 span{padding:7px 8px;border-radius:10px;background:#f8fafc;border:1px solid #e5e7eb;}
.driver-result-card.qual-result{border-left:4px solid #64748b;background:#fbfdff;}
.profile-stat-grid-v29 span{min-height:54px;}
.profile-stat-grid-v29 b{font-size:14px;line-height:1.1;word-break:break-word;}
.profile-stat-grid-v29 small{font-size:10px;}

/* v32 open driver highlight */
.driver-profile-card[open]{
  background:#f0f7ff;
  border-color:#9fc5f8;
  box-shadow:0 6px 18px rgba(37,99,235,.10);
}
.driver-profile-card[open] summary{
  background:linear-gradient(180deg,#f8fbff,#eef6ff);
  margin:-12px -12px 0 -12px;
  padding:14px 12px;
  border-radius:17px 17px 0 0;
  border-bottom:1px solid #cfe2f8;
}
.driver-profile-card[open] .profile-body,
.driver-profile-card[open] .expanded-profile-v27{
  background:#f8fbff;
  border-radius:0 0 16px 16px;
}
.driver-profile-card[open] .expand-hint{
  background:#dbeafe!important;
  color:#1d4ed8!important;
  border-color:#93c5fd!important;
}

/* v33 auto recap articles */
.article-feature-v33 h3{margin:6px 0 8px;font-size:1.05rem;line-height:1.2}
.article-feature-v33 p{font-size:.88rem;line-height:1.35;color:var(--muted);margin:0 0 10px}
.article-list-v33{display:grid;gap:10px}
.article-card-v33{border:1px solid var(--border);border-radius:18px;background:#fff;overflow:hidden}
.article-card-v33[open]{background:#f8fbff;border-color:#b9d8ff}
.article-card-v33 summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;cursor:pointer}
.article-card-v33 summary::-webkit-details-marker{display:none}
.article-card-v33 summary b{display:block;font-size:.94rem;line-height:1.15;color:var(--text)}
.article-card-v33 summary small{display:block;margin-top:3px;color:var(--muted);font-size:.72rem;line-height:1.2}
.article-card-v33 summary em{font-style:normal;background:#eef3f8;border:1px solid var(--border);width:28px;height:28px;border-radius:999px;display:grid;place-items:center;color:var(--muted);font-weight:800;flex:0 0 28px}
.article-card-v33[open] summary em{background:#dcecff;color:#155e9f;transform:rotate(45deg)}
.article-body-v33{padding:0 13px 13px;display:grid;gap:10px}
.article-body-v33 p{margin:0;color:var(--text);font-size:.85rem;line-height:1.45}
.article-body-v33 h4{margin:4px 0 0;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}
.article-counts-v33{display:flex;flex-wrap:wrap;gap:6px}
.article-counts-v33 span{font-size:.72rem;background:#eef3f8;border:1px solid var(--border);border-radius:999px;padding:5px 8px;color:var(--text);font-weight:700}
.winner-list-v33,.podium-list-v33{display:grid;gap:7px}
.winner-list-v33 div,.podium-list-v33 div{background:#fff;border:1px solid var(--border);border-radius:14px;padding:9px;display:grid;gap:3px}
.winner-list-v33 b,.podium-list-v33 b{font-size:.82rem;color:var(--text)}
.winner-list-v33 span,.podium-list-v33 span{font-size:.76rem;color:var(--muted);line-height:1.3}


/* v35 home race results: recent first and scroll after three */
.compact-note-v35{font-size:.82rem;margin:.1rem 0 .65rem;line-height:1.25;}
.race-list-v35{display:grid;gap:.55rem;}
.race-scroll-v35{max-height:13.25rem;overflow-y:auto;padding-right:.2rem;overscroll-behavior:contain;}
.race-scroll-v35 .event-button-v25{min-height:3.85rem;}
.race-scroll-v35::-webkit-scrollbar{width:6px;}
.race-scroll-v35::-webkit-scrollbar-thumb{background:rgba(15,23,42,.22);border-radius:999px;}

/* v36 completed special event cleanup */
.completed-special-v36{background:#f7fbff;border-color:#c9dff7;}
.completed-special-v36 span::after{content:' • Standalone special result';font-weight:800;color:#58728c;}

/* v37 recap + special event cleanup */
.article-feature-v37{display:grid;gap:10px}
.article-teaser-v37 h3{margin:2px 0 4px;font-size:1rem;line-height:1.18}
.article-teaser-v37 small{display:block;color:#667085;font-size:.8rem;line-height:1.2}
.driver-result-card .result-lines span b{color:#475467}
.race-group-v25.special .event-button-v25,.schedule-section-v25.special .schedule-row-v25{border-left:4px solid #d6a623;background:#fffaf0}
.driver-profile-card[open] .stat-chip:has(small){min-width:0}


/* v42 better recap articles */
.article-card-v42 summary b{font-size:1rem;line-height:1.15}
.article-body-v42 h4{margin:14px 0 8px;font-size:.9rem;color:#344054;text-transform:uppercase;letter-spacing:.04em}
.recap-bullets-v42{display:grid;gap:7px;margin:8px 0 10px}
.recap-bullets-v42 div{background:#f8fafc;border:1px solid #e5e7eb;border-radius:12px;padding:9px 10px;font-size:.9rem;line-height:1.25;color:#1f2937}
.recap-highlight-v42{display:grid;gap:3px;background:#fff8e1;border:1px solid #f5d56b;border-radius:14px;padding:10px 12px;margin:10px 0}
.recap-highlight-v42 b{font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:#7a4b00}
.recap-highlight-v42 span{font-weight:800;color:#111827}
.class-highlight-list-v42,.qual-highlight-list-v42,.record-note-list-v42{display:grid;gap:8px}
.class-highlight-list-v42>div,.qual-highlight-list-v42>div,.record-note-list-v42>div{display:grid;gap:3px;border:1px solid #e5e7eb;background:#fff;border-radius:13px;padding:9px 10px}
.class-highlight-list-v42 b,.qual-highlight-list-v42 b,.record-note-list-v42 b{font-size:.92rem;color:#111827}
.class-highlight-list-v42 span,.qual-highlight-list-v42 span,.record-note-list-v42 span{font-size:.86rem;color:#344054;line-height:1.25}
.qual-highlight-list-v42 small{font-size:.76rem;color:#667085}
.facebook-draft-v42{white-space:pre-wrap;font-family:inherit;font-size:.84rem;line-height:1.3;background:#f1f5f9;border:1px dashed #cbd5e1;border-radius:12px;padding:10px;overflow:auto;color:#111827}

/* v56 news-style recap articles */
.news-article-v56{background:#fff;border:1px solid #d7dee8;border-radius:20px;overflow:hidden;box-shadow:0 6px 18px rgba(15,23,42,.06)}
.news-article-v56.special{border-color:#f0d27a;background:#fffdf5}
.article-news-details-v56{border:0;border-radius:0;background:transparent}
.article-news-details-v56[open]{background:transparent;border:0}
.article-news-details-v56 summary{padding:15px 16px;background:linear-gradient(180deg,#ffffff,#f8fafc)}
.news-article-v56.special .article-news-details-v56 summary{background:linear-gradient(180deg,#fffaf0,#fff7df)}
.article-news-details-v56 summary b{font-size:1.08rem;line-height:1.15;letter-spacing:-.02em}
.article-news-details-v56 summary small{font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;font-weight:800;color:#667085;margin-bottom:4px}
.news-body-v56{padding:0 16px 16px;gap:12px}
.article-lead-v56{font-size:.98rem!important;line-height:1.45!important;color:#111827!important;font-weight:650;margin:4px 0 2px!important}
.article-counts-v56{padding:8px 0;border-top:1px solid #edf1f5;border-bottom:1px solid #edf1f5}
.article-sections-v56{display:grid;gap:12px}
.article-sections-v56 section{display:grid;gap:5px}
.article-sections-v56 h4{margin:0!important;color:#8a6500!important;font-size:.78rem!important;letter-spacing:.08em!important}
.article-sections-v56 p{font-size:.9rem!important;line-height:1.45!important;color:#334155!important;margin:0!important}
.news-highlight-v56{margin:2px 0 4px!important}
.winner-list-v56 div,.podium-list-v56 div,.class-highlight-list-v56>div{background:#fbfdff;border-color:#dce4ee}
.news-article-v56.special .winner-list-v56 div,.news-article-v56.special .podium-list-v56 div,.news-article-v56.special .class-highlight-list-v56>div{background:#fffaf0;border-color:#f1d58a}
.facebook-draft-v56{font-size:.82rem;max-height:260px}


/* v60 banner/weather/share/power additions */
.public-banner-v60{margin:12px 0;padding:14px;border-radius:18px;border:1px solid #fecaca;background:#fff1f2;color:#7f1d1d;display:flex;flex-direction:column;gap:4px;box-shadow:0 8px 24px rgba(127,29,29,.08)}
.public-banner-v60.announcement{background:#eff6ff;color:#1e3a8a;border-color:#bfdbfe}.public-banner-v60.delayed{background:#fff7ed;color:#7c2d12;border-color:#fed7aa}.public-banner-v60.canceled{background:#fef2f2;color:#7f1d1d;border-color:#fecaca}
.weather-card-v60{margin:12px 0 4px;padding:12px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:3px}.weather-card-v60 b{font-size:.9rem}.weather-card-v60 span{font-size:.84rem;color:#475569}
.power-card-v60 .power-list-v60{display:grid;gap:8px}.power-list-v60 button{width:100%;text-align:left;border:1px solid #e5e7eb;background:#fff;border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:2px}.power-list-v60 span{font-size:.8rem;color:#64748b}.winner-badges-v60{display:grid;gap:10px}.winner-card-v60{border:1px solid #fde68a;background:#fffbeb;border-radius:18px;padding:12px;text-align:center}.winner-card-v60 p{font-size:.72rem;letter-spacing:.1em;margin:0;color:#92400e}.winner-card-v60 h5{font-size:1.05rem;margin:4px 0}.winner-card-v60 b,.winner-card-v60 span,.winner-card-v60 small{display:block}.small-share-v60{margin-top:8px}.share-driver-v60{margin-bottom:12px}

.weather-card-v60{margin:12px 0 4px;padding:12px;border-radius:16px;background:#f8fafc;border:1px solid #e2e8f0;display:flex;flex-direction:column;gap:4px}.weather-card-v60 b{font-size:.9rem}.weather-card-v60 span{font-size:.84rem;color:#475569}
.power-card-v60 .power-list-v60{display:grid;gap:8px}.power-list-v60 button{width:100%;text-align:left;border:1px solid #e5e7eb;background:#fff;border-radius:14px;padding:10px;display:flex;flex-direction:column;gap:2px}.power-list-v60 span{font-size:.8rem;color:#64748b}
.driver-achievements{display:inline-flex;align-items:center;gap:4px;vertical-align:middle;margin-left:6px;flex-wrap:wrap}.driver-achievement-icon{width:1em;height:1em;object-fit:contain;vertical-align:middle;border-radius:0;display:block;filter:none;box-shadow:none;background:transparent}.driver-summary strong .driver-achievements,.points-title-v23 strong .driver-achievements,.power-list-v60 b .driver-achievements{position:relative;top:-.02em}.share-driver-v60{margin-bottom:12px}

/* v63 badge popout */
.driver-achievement-btn{appearance:none;-webkit-appearance:none;border:0;box-shadow:none;background:transparent;padding:0;margin:0;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle;cursor:pointer;border-radius:4px}.driver-achievement-btn:active{transform:scale(.96)}.driver-achievement-btn:focus-visible{outline:2px solid #facc15;outline-offset:2px}.badge-modal-v63{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px}.badge-modal-backdrop-v63{position:absolute;inset:0;background:rgba(15,23,42,.72);backdrop-filter:blur(3px)}.badge-modal-card-v63{position:relative;width:min(92vw,520px);border-radius:24px;background:#0f172a;border:1px solid rgba(255,255,255,.18);box-shadow:0 24px 80px rgba(0,0,0,.45);padding:18px;text-align:center}.badge-modal-card-v63 p{margin:0 42px 10px;color:#f8fafc;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:.85rem}.badge-modal-card-v63 img{display:block;width:100%;height:auto;border-radius:18px}.badge-modal-close-v63{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:999px;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.12);color:#fff;font-size:24px;line-height:1;cursor:pointer}

/* v66: power ranking badge layout fix */
.power-list-v60{display:grid;gap:8px}
.power-rank-row-v66{width:100%;border:1px solid #e5e7eb;background:#fff;border-radius:14px;padding:10px;display:flex;align-items:center;justify-content:space-between;gap:10px}
.power-driver-btn-v66{appearance:none;-webkit-appearance:none;border:0;background:transparent;box-shadow:none;padding:0;margin:0;text-align:left;display:flex;flex-direction:column;gap:2px;min-width:0;flex:1;cursor:pointer}
.power-driver-btn-v66 b{font-size:1rem;color:#0f172a}
.power-driver-btn-v66 span{font-size:.8rem;color:#64748b}
.power-rank-row-v66 .driver-achievements{margin-left:0;flex:0 0 auto}
.power-rank-row-v66 .driver-achievement-icon{width:1.35rem;height:1.35rem}
.driver-achievement-btn{background:transparent!important;box-shadow:none!important;border:0!important}
.driver-achievement-icon{background:transparent!important;box-shadow:none!important;filter:none!important}

/* v68: Power rankings own page, no badges */
.power-page-hero-v68 h2{margin-bottom:6px}
.power-list-v68{display:grid;gap:9px}
.power-rank-row-v68{width:100%;appearance:none;-webkit-appearance:none;border:1px solid #e5e7eb;background:#fff;border-radius:16px;padding:12px;display:flex;align-items:center;gap:12px;text-align:left;box-shadow:0 1px 0 rgba(15,23,42,.03)}
.power-rank-row-v68:active{transform:scale(.99)}
.power-rank-num-v68{width:42px;height:42px;border-radius:999px;background:#fef3c7;color:#92400e;display:flex;align-items:center;justify-content:center;font-weight:900;flex:0 0 auto}
.power-rank-main-v68{display:flex;flex-direction:column;gap:3px;min-width:0}
.power-rank-main-v68 b{font-size:1rem;color:#0f172a}
.power-rank-main-v68 small{font-size:.82rem;color:#64748b;line-height:1.25}

/* v70: compact home page */
.compact-home-tabs-v70{padding-bottom:10px}
.compact-home-tabs-v70 .kicker{margin-bottom:8px}
.home-panel-content-v58{margin-bottom:10px}
.home-panel-content-v58 > .card{margin-bottom:10px}
.home-panel-content-v58 .list,
.home-panel-content-v58 .home-race-scroll-v35{
  max-height: 430px;
  overflow-y: auto;
  padding-right: 3px;
}
.home-panel-content-v58 .list::-webkit-scrollbar,
.home-panel-content-v58 .home-race-scroll-v35::-webkit-scrollbar{width:6px}
.home-panel-content-v58 .list::-webkit-scrollbar-thumb,
.home-panel-content-v58 .home-race-scroll-v35::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:999px}
.season-totals-v34{margin-bottom:10px}
.next-home-hero-v30{margin-bottom:10px}
@media (max-width:520px){
  .home-panel-content-v58 .list,
  .home-panel-content-v58 .home-race-scroll-v35{max-height:360px}
}

/* v71: clean SVG badges + visible Power page */
.bottom-nav{grid-template-columns:repeat(6,1fr)}
.bottom-nav button{min-width:0}
@media (max-width:420px){.bottom-nav button{font-size:.68rem}.bottom-nav button span{font-size:1rem}}
.driver-achievement-btn{appearance:none!important;-webkit-appearance:none!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important;margin:0!important}
.driver-achievement-icon{width:1.05em!important;height:1.05em!important;object-fit:contain!important;background:transparent!important;box-shadow:none!important;filter:none!important;border-radius:0!important;display:block!important}
.badge-modal-card-v63{background:#111827!important}
.badge-modal-card-v63 img{background:transparent!important;box-shadow:none!important;border-radius:0!important}
.power-page-hero-v68{margin-top:0}

/* v81: tighter phone menu + clean public header */
.topbar h1{font-size:1.05rem;line-height:1.05}
.topbar p,#apiBadge{font-size:.72rem;line-height:1.1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:220px}
.bottom-nav{
  grid-template-columns:repeat(6,1fr);
  gap:2px;
  padding:6px max(4px, env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom)) max(4px, env(safe-area-inset-right));
}
.bottom-nav button{
  min-width:0;
  padding:5px 1px;
  font-size:.66rem;
  line-height:1;
  white-space:nowrap;
  letter-spacing:-.02em;
}
.bottom-nav button span{
  font-size:.95rem;
  line-height:1;
  margin-bottom:2px;
}
@media (max-width:390px){
  .bottom-nav button{font-size:.6rem;padding-left:0;padding-right:0}
  .bottom-nav button span{font-size:.88rem}
  .topbar p,#apiBadge{max-width:175px}
}
@media (max-width:350px){
  .bottom-nav button{font-size:.56rem;letter-spacing:-.04em}
  .bottom-nav button span{font-size:.82rem}
}

/* v83: remove More tab and tighten five-item menu */
.bottom-nav{grid-template-columns:repeat(5,1fr)!important}
.home-action-grid-v83{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
}
.home-action-grid-v83 .btn,
.home-action-grid-v83 button{
  min-width:0;
  padding-left:8px;
  padding-right:8px;
  white-space:nowrap;
}
.live-rc-bubble-v83{
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
}
@media (max-width:390px){
  .home-action-grid-v83{gap:6px}
  .home-action-grid-v83 .btn,
  .home-action-grid-v83 button{font-size:.82rem;padding-left:5px;padding-right:5px}
}

/* v84: restore more personal racing badge artwork */
.driver-achievement-icon{
  background:transparent!important;
  box-shadow:none!important;
  filter:none!important;
  border-radius:0!important;
}
.driver-achievement-btn{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.badge-modal-card-v63{
  background:#0f172a!important;
}
.badge-modal-card-v63 img{
  background:transparent!important;
  box-shadow:none!important;
  border-radius:0!important;
  max-height:78vh;
  object-fit:contain;
}

/* v85: LiveRC moved into Home Sections */
.live-rc-home-grid-v85{
  grid-template-columns:1fr;
}
.home-action-grid-v83{
  grid-template-columns:repeat(2,minmax(0,1fr));
}
@media (max-width:390px){
  .home-tabs-v25 button{font-size:.78rem;padding-left:7px;padding-right:7px}
}

/* v88: Records Home Section */
.record-summary-v88{margin-bottom:12px}
.mini-record-list-v88{display:grid;gap:8px;margin:8px 0 14px}
.mini-record-list-v88 div{border:1px solid #e5e7eb;background:#f8fafc;border-radius:12px;padding:9px 10px;display:flex;justify-content:space-between;gap:10px;align-items:center}
.mini-record-list-v88 strong{font-size:.88rem;color:#0f172a}
.mini-record-list-v88 span{font-size:.78rem;color:#64748b;text-align:right}
@media (max-width:390px){.home-tabs-v25{gap:6px}.home-tabs-v25 button{font-size:.75rem;padding:8px 8px}.mini-record-list-v88 div{align-items:flex-start;flex-direction:column}.mini-record-list-v88 span{text-align:left}}

/* v89: header update date + expanded power rankings */
.power-updated-v89{margin-top:6px;font-size:.82rem}
.power-more-v89 summary{
  cursor:pointer;
  font-weight:900;
  color:#0f172a;
  padding:4px 0 10px;
}
.power-more-v89[open] summary{padding-bottom:12px}

/* v90: power ranking movement */
.power-move-v90{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  margin-left:6px;
  padding:2px 6px;
  border-radius:999px;
  font-size:.72rem;
  font-style:normal;
  font-weight:900;
  line-height:1;
  vertical-align:middle;
}
.power-move-v90.up{background:#dcfce7;color:#166534}
.power-move-v90.down{background:#fee2e2;color:#991b1b}
.power-move-v90.same{background:#e5e7eb;color:#374151}
.power-move-v90.new{background:#fef3c7;color:#92400e}
.power-rank-row-v90 b{display:flex;align-items:center;gap:2px;flex-wrap:wrap}

/* v92: small header refresh button */
.topbar{
  display:flex;
  align-items:center;
}
.topbar-title-v92{
  min-width:0;
  flex:1;
}
.header-refresh-v92{
  margin-left:auto;
  width:34px;
  height:34px;
  border-radius:999px;
  border:1px solid #e2e8f0;
  background:#ffffff;
  color:#0f172a;
  font-size:1.1rem;
  font-weight:900;
  line-height:1;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 1px 4px rgba(15,23,42,.08);
  cursor:pointer;
  flex:0 0 auto;
}
.header-refresh-v92:active{
  transform:scale(.96);
}
@media (max-width:390px){
  .header-refresh-v92{
    width:30px;
    height:30px;
    font-size:1rem;
  }
  .topbar-title-v92 h1{
    font-size:.98rem;
  }
}

/* v95: desktop website layout */
@media (min-width: 900px){
  body{
    background:
      radial-gradient(circle at top left, rgba(245,158,11,.14), transparent 34%),
      linear-gradient(180deg,#f8fafc 0%,#eef2f7 100%);
  }

  .app-shell{
    max-width:none;
    min-height:100vh;
  }

  .topbar{
    max-width:1180px;
    margin:18px auto 0;
    border-radius:24px;
    padding:18px 22px;
    box-shadow:0 12px 40px rgba(15,23,42,.10);
    border:1px solid rgba(226,232,240,.95);
  }

  .topbar .logo,
  .topbar .brand-logo{
    width:62px;
    height:62px;
    border-radius:18px;
  }

  .topbar h1{
    font-size:1.55rem;
    letter-spacing:-.03em;
  }

  .topbar p,#apiBadge{
    max-width:440px;
    font-size:.84rem;
  }

  .header-refresh-v92{
    width:40px;
    height:40px;
  }

  .bottom-nav{
    position:sticky;
    top:10px;
    bottom:auto;
    z-index:30;
    max-width:1180px;
    margin:12px auto 0;
    border-radius:999px;
    padding:8px;
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 10px 30px rgba(15,23,42,.08);
    background:rgba(255,255,255,.94);
    backdrop-filter:blur(10px);
  }

  .bottom-nav button{
    border-radius:999px;
    min-height:46px;
    font-size:.82rem;
    flex-direction:row;
    gap:7px;
    justify-content:center;
  }

  .bottom-nav button span{
    margin:0;
    font-size:1rem;
  }

  .bottom-nav button.active{
    background:#0f172a;
    color:#fff;
    box-shadow:0 8px 22px rgba(15,23,42,.16);
  }

  .screen,.view{
    max-width:1180px;
    margin:0 auto;
    padding:22px 18px 90px;
  }

  .card{
    border-radius:24px;
    border:1px solid rgba(226,232,240,.95);
    box-shadow:0 8px 28px rgba(15,23,42,.06);
  }

  .hero{
    padding:28px;
  }

  .hero h2{
    font-size:2rem;
    letter-spacing:-.04em;
  }

  .home-action-grid-v25,
  .home-tabs-v25,
  .status-grid,
  .link-grid-v25{
    max-width:780px;
  }

  .home-action-grid-v25{
    grid-template-columns:repeat(2,minmax(0,220px));
  }

  .home-tabs-v25{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
  }

  .home-tabs-v25 button{
    flex:0 0 auto;
    padding:11px 18px;
  }

  .season-totals-v34 .stat-grid,
  .stat-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .list{
    gap:12px;
  }

  .item{
    border-radius:18px;
  }

  .race-card-v25,
  .driver-profile-card,
  .record-card,
  .article-card{
    transition:transform .12s ease, box-shadow .12s ease;
  }

  .race-card-v25:hover,
  .driver-profile-card:hover,
  .record-card:hover,
  .article-card:hover,
  .power-rank-row-v68:hover{
    transform:translateY(-1px);
    box-shadow:0 10px 26px rgba(15,23,42,.08);
  }

  .profile-stat-grid,
  .profile-stat-grid-v25,
  .profile-stat-grid-v29{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }

  .result-lines,
  .result-lines-v29{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }

  .power-list-v68{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .power-page-hero-v68{
    background:
      linear-gradient(135deg,rgba(15,23,42,.96),rgba(30,41,59,.92)),
      radial-gradient(circle at top right,rgba(245,158,11,.25),transparent 35%);
    color:#fff;
  }

  .power-page-hero-v68 .kicker,
  .power-page-hero-v68 .muted{
    color:#f8fafc;
    opacity:.86;
  }

  .article-list-v33{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:14px;
  }

  .badge-modal-card-v63{
    max-width:min(720px,82vw);
  }

  .badge-modal-card-v63 img{
    max-height:76vh;
  }
}

@media (min-width: 1180px){
  .home-panel-content-v58 .list,
  .home-panel-content-v58 .home-race-scroll-v35{
    max-height:none;
    overflow:visible;
  }
}

/* v100: keep v95 bottom bar placement; update header only */
.topbar-title-v100{
  min-width:0;
  flex:1;
}
.track-tagline-v100{
  margin:2px 0 0;
  font-size:.76rem;
  line-height:1.15;
  color:#64748b;
  font-weight:700;
  white-space:normal;
}
.refresh-wrap-v100{
  margin-left:auto;
  display:flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
}
.version-pill-v100{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:38px;
  height:24px;
  padding:0 8px;
  border-radius:999px;
  background:#f1f5f9;
  color:#475569;
  border:1px solid #e2e8f0;
  font-size:.72rem;
  font-weight:900;
  line-height:1;
  white-space:nowrap;
}
.header-refresh-v92.refresh-needed-v100{
  background:#f59e0b!important;
  color:#111827!important;
  border-color:#d97706!important;
  box-shadow:0 0 0 4px rgba(245,158,11,.22), 0 8px 18px rgba(245,158,11,.28)!important;
  animation:refreshPulseV100 1.4s ease-in-out infinite;
}
@keyframes refreshPulseV100{
  0%,100%{transform:scale(1)}
  50%{transform:scale(1.06)}
}
@media (max-width:390px){
  .track-tagline-v100{font-size:.68rem}
  .version-pill-v100{min-width:34px;height:22px;font-size:.66rem;padding:0 6px}
  .refresh-wrap-v100{gap:5px}
}
@media (min-width:900px){
  .track-tagline-v100{font-size:.86rem}
  .version-pill-v100{height:26px;font-size:.74rem}
}

/* v107: non-ranked power watch list */
.power-watch-card-v107 summary{
  font-weight:900;
}
.watch-note-v107{
  margin:0 0 12px;
  font-size:.84rem;
}
.watch-dot-v107{
  background:#f1f5f9!important;
  color:#64748b!important;
  font-size:.9rem;
}
.power-watch-row-v107{
  opacity:.96;
}
.power-watch-row-v107 .power-rank-main-v68 b::after{
  content:"Watch List";
  margin-left:8px;
  padding:2px 7px;
  border-radius:999px;
  background:#e2e8f0;
  color:#475569;
  font-size:.68rem;
  font-weight:900;
  vertical-align:middle;
}

/* v108: ranked 11-20 plus separate non-ranked watch list */
.watch-note-v108{
  margin:0 0 12px;
  font-size:.84rem;
}
.watch-dot-v108{
  background:#f1f5f9!important;
  color:#64748b!important;
  font-size:.9rem;
}
.power-watch-row-v108 .power-rank-main-v68 b::after{
  content:"Watch List";
  margin-left:8px;
  padding:2px 7px;
  border-radius:999px;
  background:#e2e8f0;
  color:#475569;
  font-size:.68rem;
  font-weight:900;
  vertical-align:middle;
}

/* v109: collapsible power ranking sections */
.power-collapse-card-v109{
  padding:0;
  overflow:hidden;
}
.power-section-v109 summary{
  cursor:pointer;
  list-style:none;
  padding:16px;
  font-weight:950;
  color:#0f172a;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.power-section-v109 summary::-webkit-details-marker{
  display:none;
}
.power-section-v109 summary::after{
  content:"▾";
  width:28px;
  height:28px;
  border-radius:999px;
  background:#f1f5f9;
  color:#475569;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:.9rem;
  transition:transform .15s ease;
  flex:0 0 auto;
}
.power-section-v109[open] summary::after{
  transform:rotate(180deg);
}
.power-section-v109 .power-list-v68,
.power-section-v109 .watch-note-v109{
  margin:0 16px 16px;
}
.watch-note-v109{
  font-size:.84rem;
}
.watch-dot-v109{
  background:#f1f5f9!important;
  color:#64748b!important;
  font-size:.9rem;
}
.power-watch-row-v109 .power-rank-main-v68 b::after{
  content:"Watch List";
  margin-left:8px;
  padding:2px 7px;
  border-radius:999px;
  background:#e2e8f0;
  color:#475569;
  font-size:.68rem;
  font-weight:900;
  vertical-align:middle;
}

/* v110: power ranking minimum requirements explanations */
.power-rules-v110{
  background:#f8fafc;
  border-color:#e2e8f0;
}
.power-rules-v110 h3{
  margin-bottom:8px;
}
.power-rules-v110 p{
  margin:7px 0;
  font-size:.88rem;
  color:#334155;
  line-height:1.35;
}
.power-section-note-v110{
  margin:0 16px 12px!important;
  padding:10px 12px;
  border-radius:12px;
  background:#f1f5f9;
  color:#475569;
  font-size:.82rem;
  font-weight:700;
  line-height:1.35;
}
