:root{--arfl-bg:#07090d;--arfl-panel:#11151c;--arfl-panel2:#171c25;--arfl-border:#28303c;--arfl-text:#f7f9fc;--arfl-muted:#8e99aa;--arfl-purple:#7b3ff2;--arfl-green:#42d392}.arfl-app{background:radial-gradient(circle at 65% 0,#24123d 0,transparent 28%),var(--arfl-bg);color:var(--arfl-text);font-family:Inter,Arial,sans-serif;min-height:100vh;line-height:1.4}.arfl-app *{box-sizing:border-box}.arfl-header{height:76px;padding:0 max(24px,calc((100vw - 1440px)/2));display:flex;align-items:center;gap:28px;background:rgba(7,9,13,.92);border-bottom:1px solid var(--arfl-border);position:sticky;top:0;z-index:50;backdrop-filter:blur(16px)}.arfl-brand{display:flex;align-items:center;gap:10px;min-width:255px}.arfl-logo{width:46px;height:52px;object-fit:cover;object-position:center;filter:brightness(4) contrast(1.25);mix-blend-mode:screen}.arfl-brand strong,.arfl-brand span{display:block;letter-spacing:.09em}.arfl-brand strong{font-size:13px}.arfl-brand span{font-size:10px;color:#b9a1e8}.arfl-nav{height:100%;display:flex;align-items:center;gap:4px;flex:1}.arfl-nav button,.arfl-header button{background:none;border:0;color:var(--arfl-muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:11px;cursor:pointer}.arfl-nav button{height:100%;padding:0 15px;border-bottom:3px solid transparent}.arfl-nav button.is-active,.arfl-nav button:hover{color:#fff;border-color:var(--arfl-purple)}.arfl-team-picker,.hero-actions button,.my-team>button{border-radius:8px!important;background:var(--arfl-purple)!important;color:#fff!important;padding:12px 18px!important}.arfl-menu{display:none}.arfl-view{max-width:1440px;margin:auto;padding:28px 24px 70px}.hero{min-height:480px;border:1px solid var(--arfl-border);border-radius:18px;overflow:hidden;position:relative;display:flex;align-items:center;padding:62px;background:linear-gradient(105deg,rgba(8,10,15,.98) 0%,rgba(16,10,28,.92) 55%,rgba(73,32,121,.5) 100%);box-shadow:0 30px 80px rgba(0,0,0,.35)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 0 49%,rgba(255,255,255,.03) 50%,transparent 51%) 0 0/70px 100%;opacity:.25}.hero-copy{position:relative;z-index:2}.eyebrow,.section-head span,.page-head>span,.modal-card>span{color:#b995ff;text-transform:uppercase;font-size:11px;letter-spacing:.18em;font-weight:900}.hero h1{font-size:clamp(52px,7vw,92px);line-height:.82;text-transform:uppercase;letter-spacing:-.055em;margin:18px 0 26px}.hero h1 em{font-style:normal;color:#b995ff}.hero p{font-size:17px;color:#c6ceda}.hero-actions{display:flex;gap:12px;margin-top:32px}.hero-actions button{border:0;font-weight:900;text-transform:uppercase;letter-spacing:.06em;cursor:pointer}.hero-actions .ghost{background:transparent!important;border:1px solid #5e6877!important}.hero-shield{position:absolute;right:18%;width:470px;height:470px;object-fit:cover;object-position:center;filter:brightness(3.4) contrast(1.4);opacity:.13;mix-blend-mode:screen}.race-card{position:absolute;z-index:3;right:38px;bottom:38px;width:290px;background:rgba(10,12,18,.9);border:1px solid #4a3d61;border-top:4px solid var(--arfl-purple);padding:22px;border-radius:10px}.race-card span,.race-card small{display:block;color:var(--arfl-muted);font-size:10px;letter-spacing:.15em}.race-card strong{display:block;font-size:20px;margin:7px 0}.race-card b{font-size:13px}.race-card small{margin-top:15px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,2.3fr) minmax(280px,.7fr);gap:22px;margin-top:22px}.panel{background:linear-gradient(145deg,var(--arfl-panel),#0d1117);border:1px solid var(--arfl-border);border-radius:14px;padding:24px}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.section-head h2,.page-head h1{margin:4px 0 0;font-size:28px}.section-head>button{background:none;color:#b995ff;border:0;font-weight:800;cursor:pointer}.score-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.matchup-card{border:1px solid var(--arfl-border);border-radius:10px;background:var(--arfl-panel2);overflow:hidden}.matchup-status{padding:8px 12px;background:#0b0e13;color:var(--arfl-muted);font-size:9px;letter-spacing:.12em;font-weight:900;display:flex;justify-content:space-between}.matchup-status span{color:var(--arfl-green)}.matchup-team{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:10px;padding:12px;border-top:1px solid rgba(255,255,255,.04)}.matchup-team.winner{background:linear-gradient(90deg,rgba(66,211,146,.12),transparent)}.matchup-team strong,.matchup-team span{display:block}.matchup-team strong{font-size:13px}.matchup-team span{font-size:11px;color:var(--arfl-muted)}.matchup-team b{font-size:21px}.team-mark{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:color-mix(in srgb,var(--team),#000 20%);border:2px solid color-mix(in srgb,var(--team),#fff 30%);font-size:10px;font-weight:950;letter-spacing:-.03em;color:#fff;box-shadow:0 0 20px color-mix(in srgb,var(--team),transparent 70%)}.my-team{display:flex;flex-direction:column}.team-hero{padding:24px;border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--team),#090b10 35%),#0a0c11);min-height:230px}.team-hero .team-mark{width:62px;height:62px;font-size:15px}.team-hero h3{font-size:31px;line-height:.95;text-transform:uppercase;margin:25px 0 12px}.team-hero>strong{font-size:28px;margin-right:12px}.team-hero>span{color:#ddd;font-size:11px}.driver-line{padding:18px 0;display:grid;grid-template-columns:1fr auto}.driver-line small{grid-column:1/-1;color:var(--arfl-muted)}.my-team>button{border:0;margin-top:auto;cursor:pointer}.standings-panel{margin-top:22px}.tabs,.week-tabs{display:flex;gap:6px}.tabs button,.week-tabs button{border:1px solid var(--arfl-border);background:#0c1016;color:var(--arfl-muted);padding:9px 14px;border-radius:7px;cursor:pointer;font-weight:800}.tabs button.is-active,.week-tabs button.is-active{background:var(--arfl-purple);color:#fff;border-color:var(--arfl-purple)}.standings-wrap{overflow:auto}.standings-wrap table{border-collapse:collapse;width:100%;min-width:650px}.standings-wrap th{font-size:10px;color:var(--arfl-muted);text-transform:uppercase;letter-spacing:.13em;text-align:right;padding:12px}.standings-wrap th:first-child{text-align:left}.standings-wrap td{padding:10px 12px;border-top:1px solid var(--arfl-border);text-align:right;font-weight:800}.standings-wrap td:first-child{display:flex;align-items:center;gap:10px;text-align:left}.standings-wrap td .team-mark{width:32px;height:32px}.standings-wrap small{display:block;color:var(--arfl-muted);font-weight:500}.rank{width:22px;color:var(--arfl-muted)}.page-head{padding:55px 10px 30px}.page-head h1{font-size:58px;text-transform:uppercase;letter-spacing:-.04em}.page-head p{max-width:650px;color:var(--arfl-muted);font-size:16px}.team-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.team-card{border:1px solid var(--arfl-border);background:linear-gradient(145deg,color-mix(in srgb,var(--team),#11151c 78%),#0d1117);color:#fff;border-radius:12px;padding:20px;text-align:left;cursor:pointer;min-height:170px;transition:.2s}.team-card:hover{transform:translateY(-3px);border-color:color-mix(in srgb,var(--team),#fff 30%)}.team-card .team-mark{margin-bottom:22px}.team-card span,.team-card strong,.team-card small{display:block}.team-card span{font-size:12px;color:#c9d0da}.team-card strong{font-size:22px;text-transform:uppercase}.team-card small{margin-top:7px;color:var(--arfl-muted)}.team-page{border-radius:18px;padding:34px;background:linear-gradient(120deg,color-mix(in srgb,var(--team),#07090d 45%),#0b0e13);border:1px solid color-mix(in srgb,var(--team),#222 40%)}.back{background:none;border:0;color:#fff;cursor:pointer}.team-title{display:grid;grid-template-columns:110px 1fr auto;align-items:center;gap:24px;margin-top:30px}.team-title .team-mark{width:100px;height:100px;font-size:22px}.team-title h1{font-size:52px;text-transform:uppercase;margin:4px 0}.team-title>strong{font-size:48px}.stat-stack h2{margin-top:0}.stat-stack>div{display:flex;justify-content:space-between;padding:18px 0;border-top:1px solid var(--arfl-border)}.stat-stack span{color:var(--arfl-muted)}.arfl-modal{position:fixed;inset:0;background:rgba(0,0,0,.82);z-index:100;display:grid;place-items:center;padding:24px}.arfl-modal[hidden]{display:none}.modal-card{position:relative;background:#10151d;border:1px solid var(--arfl-border);border-radius:16px;padding:28px;max-width:900px;width:100%;max-height:85vh;overflow:auto}.modal-card h2{font-size:38px;margin:4px 0 20px}.modal-close{position:absolute;right:18px;top:12px;border:0;background:none;color:#fff;font-size:30px;cursor:pointer}.picker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.picker-grid button{display:flex;align-items:center;gap:10px;background:#171c25;border:1px solid var(--arfl-border);color:#fff;padding:10px;border-radius:8px;text-align:left;cursor:pointer}.picker-grid .team-mark{flex:none}.large{margin-bottom:18px}@media(max-width:980px){.arfl-nav{display:none}.arfl-menu{display:block}.arfl-brand{flex:1}.dashboard-grid{grid-template-columns:1fr}.team-grid{grid-template-columns:repeat(2,1fr)}.hero{padding:38px}.race-card{position:relative;right:auto;bottom:auto;margin-left:auto}.hero-shield{right:0}.score-grid{grid-template-columns:1fr}.picker-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.arfl-header{height:64px;padding:0 14px;gap:10px}.arfl-logo{width:36px;height:40px}.arfl-brand{min-width:0}.arfl-brand strong{font-size:10px}.arfl-brand span{font-size:8px}.arfl-team-picker{padding:9px!important;font-size:9px!important}.arfl-view{padding:14px 12px 70px}.hero{min-height:500px;padding:28px 22px;align-items:flex-start}.hero h1{font-size:52px;margin-top:14px}.hero-shield{width:380px;height:380px;right:-150px;top:50px}.race-card{position:absolute;left:20px;right:20px;bottom:20px;width:auto}.panel{padding:16px}.section-head{align-items:flex-start;gap:12px}.team-grid{grid-template-columns:1fr}.page-head h1{font-size:42px}.team-title{grid-template-columns:70px 1fr}.team-title .team-mark{width:65px;height:65px}.team-title h1{font-size:30px}.team-title>strong{grid-column:1/-1}.picker-grid{grid-template-columns:1fr}}
.team-logo-shell{width:42px;height:42px;display:grid;place-items:center;border-radius:12px;background:linear-gradient(145deg,color-mix(in srgb,var(--team),#111 55%),#090b10);border:1px solid color-mix(in srgb,var(--team),#fff 30%);padding:6px;flex:none}.team-logo-shell img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 5px 9px rgba(0,0,0,.45))}.matchup-team{grid-template-columns:48px 1fr auto}.standings-wrap td .team-logo-shell{width:34px;height:34px;padding:4px}.team-hero .team-logo-shell{width:82px;height:82px}.team-card .team-logo-shell{width:68px;height:68px;margin-bottom:20px}.picker-grid .team-logo-shell{width:45px;height:45px}.owner-banner{border-radius:18px;padding:36px;background:linear-gradient(120deg,color-mix(in srgb,var(--team),#07090d 42%),#0b0e13);border:1px solid color-mix(in srgb,var(--team),#fff 20%);display:flex;align-items:center;justify-content:space-between;min-height:240px;position:relative;overflow:hidden}.owner-banner:after{content:"";position:absolute;inset:auto -5% -65% auto;width:420px;height:420px;border-radius:50%;background:var(--team);filter:blur(100px);opacity:.2}.owner-banner>div:first-child{display:grid;grid-template-columns:110px 1fr;column-gap:22px;align-items:center;position:relative;z-index:2}.owner-banner .team-logo-shell{width:105px;height:105px;grid-row:1/5}.owner-banner span{font-size:11px;letter-spacing:.16em;font-weight:900;color:#c9b5f5}.owner-banner h1{font-size:clamp(38px,5vw,72px);line-height:.9;text-transform:uppercase;margin:5px 0}.owner-banner p{margin:8px 0;color:#d8dde6}.owner-record{position:relative;z-index:2;text-align:right}.owner-record small,.owner-record span{display:block}.owner-record strong{display:block;font-size:64px;line-height:1}.owner-grid{display:grid;grid-template-columns:minmax(0,2.2fr) minmax(290px,.8fr);gap:22px;margin-top:22px}.owner-side{display:grid;gap:16px;align-content:start}.owner-schedule{display:grid;gap:10px}.owner-game{display:grid;grid-template-columns:56px 48px 1fr auto;align-items:center;gap:13px;background:#151a22;border:1px solid var(--arfl-border);border-radius:11px;color:#fff;padding:13px;text-align:left;cursor:pointer}.owner-game:hover{border-color:#6c7481}.week-pill{font-size:12px;font-weight:900;color:#9aa6b6}.owner-opponent small,.owner-opponent strong,.owner-opponent em{display:block}.owner-opponent small{font-size:9px;color:#798495}.owner-opponent strong{font-size:14px}.owner-opponent em{font-size:11px;color:#8e99aa;font-style:normal}.owner-result{text-align:right}.owner-result b,.owner-result small{display:block}.owner-result b{font-size:23px}.owner-result.w b{color:#42d392}.owner-result.l b{color:#ff667a}.owner-result.t b{color:#f7cf65}.next-card>span,.owner-driver>span{color:#b995ff;text-transform:uppercase;font-size:10px;letter-spacing:.15em;font-weight:900}.next-card .team-logo-shell{width:78px;height:78px;margin:20px 0 15px}.next-card h3,.owner-driver h3{font-size:25px;margin:0}.next-card p{color:var(--arfl-muted)}.owner-driver b{color:var(--arfl-muted)}.owner-summary h3{margin-top:0}.owner-summary>div{display:flex;justify-content:space-between;padding:13px 0;border-top:1px solid var(--arfl-border)}.owner-summary span{color:var(--arfl-muted)}.driver-line{row-gap:5px}.driver-line small:nth-of-type(2){margin-top:12px}@media(max-width:980px){.owner-grid{grid-template-columns:1fr}.owner-banner{align-items:flex-start}.owner-record{margin-left:20px}.owner-banner>div:first-child{grid-template-columns:80px 1fr}.owner-banner .team-logo-shell{width:74px;height:74px}.owner-record strong{font-size:44px}}@media(max-width:640px){.owner-banner{display:block;padding:24px}.owner-banner>div:first-child{grid-template-columns:65px 1fr;column-gap:14px}.owner-banner .team-logo-shell{width:62px;height:62px}.owner-banner h1{font-size:32px}.owner-record{text-align:left;margin:25px 0 0}.owner-game{grid-template-columns:43px 40px 1fr auto;padding:10px;gap:8px}.owner-game .team-logo-shell{width:38px;height:38px}.owner-opponent strong{font-size:12px}.owner-result b{font-size:18px}}

/* v0.3 typography refinement */
.arfl-app{font-family:Inter,Roboto,"Helvetica Neue",Arial,sans-serif;font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.arfl-app button,.arfl-app input,.arfl-app select,.arfl-app textarea{font-family:inherit}
.arfl-nav button,.arfl-header button{font-weight:600;letter-spacing:.055em}
.arfl-brand strong{font-weight:650;letter-spacing:.07em}.arfl-brand span{font-weight:400;letter-spacing:.11em}
.eyebrow,.section-head span,.page-head>span,.modal-card>span,.next-card>span,.owner-driver>span,.owner-banner span{font-weight:600;letter-spacing:.14em}
.hero h1,.page-head h1,.team-title h1,.owner-banner h1,.team-hero h3,.team-card strong{font-weight:650;letter-spacing:-.035em}
.hero p,.page-head p,.owner-banner p{font-weight:400}
.hero-actions button,.my-team>button{font-weight:600}
.matchup-status{font-weight:600;letter-spacing:.09em}
.matchup-team strong,.team-card strong,.owner-opponent strong,.next-card h3,.owner-driver h3{font-weight:600}
.matchup-team b,.owner-result b,.owner-record strong,.team-title>strong,.team-hero>strong{font-weight:650}
.standings-wrap th{font-weight:600;letter-spacing:.09em}.standings-wrap td{font-weight:500}.standings-wrap td strong{font-weight:600}
.tabs button,.week-tabs button,.section-head>button,.week-pill{font-weight:600}
.team-card span,.team-card small,.standings-wrap small,.owner-opponent em,.owner-opponent small,.driver-line small{font-weight:400}
.owner-summary b,.owner-driver b,.driver-line b{font-weight:600}
.team-logo-shell{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.12)}
.team-logo-shell img{display:block;max-width:100%;max-height:100%}
/* ARFL 0.4 — playoff clinch markers, rival hubs and official schedule */
.clinch-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;margin-right:7px;border-radius:6px;background:#252c37;border:1px solid #566171;color:#fff;font-size:11px;font-weight:650;text-transform:lowercase;vertical-align:middle}.clinch-y{background:#443270;border-color:#8f6fe0}.clinch-z{background:#72551e;border-color:#d6a84c}.owner-banner h1 .clinch-badge{font-size:14px;height:28px;min-width:28px;vertical-align:8px}.owner-driver h3 .clinch-badge{height:24px;min-width:24px}.standings-wrap td strong .clinch-badge{width:19px;min-width:19px;height:19px;padding:0;font-size:10px;margin-right:6px}.rivals-panel{margin-top:22px}.rivals-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.rival-card{display:grid;grid-template-columns:72px 1fr;align-items:center;gap:16px;background:linear-gradient(135deg,color-mix(in srgb,var(--team),#11151c 82%),#0c1016);border:1px solid var(--arfl-border);border-radius:12px;color:#fff;padding:16px;text-align:left;cursor:pointer;transition:.18s}.rival-card:hover{transform:translateY(-2px);border-color:color-mix(in srgb,var(--team),#fff 30%)}.rival-card .team-logo-shell{width:68px;height:68px}.rival-card span{display:block;color:#b995ff;font-size:10px;letter-spacing:.08em;text-transform:uppercase;font-weight:550}.rival-card h3{margin:4px 0 7px;font-size:19px;font-weight:620}.rival-card p,.rival-card small{margin:0;color:var(--arfl-muted);font-size:12px}.rival-card p strong{color:#e9edf4;font-weight:600}.owner-result.pending b{color:#8993a2}.schedule-detail{padding:8px 12px;border-top:1px solid rgba(255,255,255,.05);color:var(--arfl-muted);font-size:10px;letter-spacing:.05em}.week-tabs{overflow-x:auto;padding-bottom:10px;margin-bottom:14px}.week-tabs button{white-space:nowrap}.playoff-legend{display:flex;gap:14px;flex-wrap:wrap;color:var(--arfl-muted);font-size:12px}.playoff-legend span{display:flex;align-items:center}@media(max-width:980px){.rivals-grid{grid-template-columns:1fr 1fr}}@media(max-width:640px){.rivals-grid{grid-template-columns:1fr}.rival-card{grid-template-columns:56px 1fr}.rival-card .team-logo-shell{width:54px;height:54px}.owner-banner h1 .clinch-badge{vertical-align:3px}}


/* ARFL 0.5 — light site integration and supplied black league branding */
:root{--arfl-bg:#f4f5f7;--arfl-panel:#fff;--arfl-panel2:#f8f9fb;--arfl-border:#d9dde4;--arfl-text:#14171c;--arfl-muted:#667085;--arfl-purple:#5d2ca8;--arfl-green:#157347}
.arfl-app{background:#f4f5f7;color:var(--arfl-text)}
.arfl-header{background:rgba(255,255,255,.96);border-bottom-color:#dfe3e8;box-shadow:0 1px 10px rgba(16,24,40,.06)}
.arfl-logo{object-fit:contain;filter:none;mix-blend-mode:normal}
.arfl-brand strong{color:#111318}.arfl-brand span{color:#626b79}
.arfl-nav button,.arfl-header button{color:#626b79}.arfl-nav button.is-active,.arfl-nav button:hover{color:#111318}
.hero{background:linear-gradient(115deg,#fff 0%,#f7f5fa 62%,#eee8f6 100%);border-color:#d8dce3;box-shadow:0 18px 50px rgba(16,24,40,.09)}
.hero:after{background:linear-gradient(90deg,transparent 0 49%,rgba(0,0,0,.025) 50%,transparent 51%) 0 0/70px 100%}
.hero h1,.hero p{color:#14171c}
.hero h1 em,.eyebrow,.section-head span,.page-head>span,.modal-card>span,.next-card>span,.owner-driver>span,.owner-banner span{color:#5d2ca8}
.hero-shield{object-fit:contain;filter:none;mix-blend-mode:multiply;opacity:.075}
.hero-actions .ghost{color:#1d222a!important;border-color:#aeb5c0!important}
.race-card{background:rgba(255,255,255,.96);border-color:#cbc3d7;color:#15181d;box-shadow:0 12px 30px rgba(16,24,40,.10)}
.panel,.modal-card{background:#fff;border-color:#d9dde4;box-shadow:0 5px 18px rgba(16,24,40,.045)}
.matchup-card{background:#fff;border-color:#d9dde4}.matchup-status{background:#f2f4f7;color:#667085}
.matchup-team{border-top-color:#eaecf0}.matchup-team.winner{background:linear-gradient(90deg,rgba(21,115,71,.09),transparent)}
.team-logo-shell{background:#fff;border-color:#d8dce3;box-shadow:0 2px 7px rgba(16,24,40,.08)}.team-logo-shell img{filter:none}
.team-hero{background:linear-gradient(135deg,color-mix(in srgb,var(--team),#fff 86%),#fff);border:1px solid color-mix(in srgb,var(--team),#d9dde4 75%)}
.team-hero h3,.team-hero>strong,.team-hero>span{color:#171a20}
.tabs button,.week-tabs button{background:#fff;color:#596273;border-color:#d9dde4}
.standings-wrap td{border-top-color:#e3e6eb}.standings-wrap td,.standings-wrap td strong{color:#16191f}
.team-card{background:linear-gradient(145deg,color-mix(in srgb,var(--team),#fff 91%),#fff);color:#14171c;border-color:#d9dde4;box-shadow:0 3px 12px rgba(16,24,40,.05)}
.team-card span{color:#525b69}.team-card small{color:#70798a}
.team-page,.owner-banner{background:linear-gradient(120deg,color-mix(in srgb,var(--team),#fff 89%),#fff);border-color:color-mix(in srgb,var(--team),#d4d9e0 76%);color:#14171c}
.back{color:#252a32}.owner-banner p{color:#4f5867}.owner-banner:after{opacity:.08}
.owner-game{background:#fff;border-color:#d9dde4;color:#15181d}.owner-game:hover{border-color:#9ba4b1;background:#fafbfc}
.owner-opponent small,.owner-opponent em,.owner-summary span,.stat-stack span,.next-card p{color:#667085}.owner-result.pending b{color:#7b8492}
.rival-card{background:linear-gradient(135deg,color-mix(in srgb,var(--team),#fff 91%),#fff);border-color:#d9dde4;color:#15181d;box-shadow:0 3px 12px rgba(16,24,40,.04)}
.rival-card p,.rival-card small{color:#667085}.rival-card p strong{color:#20242b}
.picker-grid button{background:#fff;border-color:#d9dde4;color:#15181d}
.arfl-modal{background:rgba(16,24,40,.56)}.modal-close{color:#20242b}
.clinch-badge{background:#eef0f3;border-color:#bcc3cd;color:#20242b}.clinch-y{background:#eee8f7;border-color:#9c83c6}.clinch-z{background:#fbf0d6;border-color:#c69a3b}
.schedule-detail{border-top-color:#e6e9ed}


/* ARFL 0.6 — Flatsome-width desktop navigation repair */
.arfl-header{width:100%;max-width:100%;padding-left:clamp(14px,2vw,28px);padding-right:clamp(14px,2vw,28px);gap:clamp(8px,1.15vw,20px)}
.arfl-brand{min-width:190px;flex:0 1 230px}
.arfl-nav{min-width:0;gap:0;justify-content:center}
.arfl-nav button{min-width:0;flex:0 1 auto;padding-left:clamp(7px,1vw,14px);padding-right:clamp(7px,1vw,14px);white-space:nowrap;font-size:10px;font-weight:650;letter-spacing:.055em}
.arfl-team-picker{flex:0 0 auto;white-space:nowrap;max-width:125px;padding:11px 13px!important;font-size:10px!important;line-height:1.15}
.arfl-menu{flex:0 0 auto}
@media (max-width:1180px){
  .arfl-brand{min-width:155px;flex-basis:175px}
  .arfl-brand strong{font-size:11px}.arfl-brand span{font-size:8px}
  .arfl-logo{width:38px;height:44px}
  .arfl-nav button{padding-left:7px;padding-right:7px;font-size:9px;letter-spacing:.035em}
  .arfl-team-picker{max-width:104px;padding:10px 9px!important;font-size:9px!important}
}
@media (max-width:1010px){
  .arfl-header{height:auto;min-height:68px;flex-wrap:wrap;padding-top:8px;padding-bottom:8px}
  .arfl-menu{display:block;order:1}
  .arfl-brand{order:2;flex:1;min-width:0}
  .arfl-team-picker{order:3}
  .arfl-nav{order:4;display:none;width:100%;height:auto;flex-basis:100%;padding:6px 0 2px;border-top:1px solid #e3e6eb;flex-wrap:wrap;justify-content:flex-start}
  .arfl-header.is-menu-open .arfl-nav{display:flex}
  .arfl-nav button{height:40px;flex:1 0 30%;border-bottom-width:2px;font-size:10px}
}
@media (max-width:560px){.arfl-team-picker{max-width:92px}.arfl-nav button{flex-basis:48%}}


/* ARFL 0.8 race schedule */
.race-schedule-panel{margin-bottom:22px}
.race-calendar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 34px}
.race-calendar-row{display:grid;grid-template-columns:118px minmax(0,1fr) 74px;align-items:center;gap:12px;min-height:48px;border-bottom:1px solid #d9dde4;color:#171a20}
.race-calendar-row span{font-size:12px;font-weight:650;letter-spacing:.035em}
.race-calendar-row strong{font-size:15px;font-weight:500}
.race-calendar-row b{text-align:right;font-size:13px;font-weight:550;white-space:nowrap}
.race-calendar-row.is-current{background:#f1ebf8;border-left:3px solid #5d2ca8;padding:0 10px}
.race-calendar-row.is-championship{background:#f2f3f5}
.race-calendar-row.is-championship span,.race-calendar-row.is-championship strong{font-weight:650}
.matchup-schedule-panel{margin-top:0}
@media(max-width:820px){
  .race-calendar{grid-template-columns:1fr}
}
@media(max-width:520px){
  .race-calendar-row{grid-template-columns:92px minmax(0,1fr) 58px;gap:8px}
  .race-calendar-row span{font-size:10px}
  .race-calendar-row strong{font-size:13px}
  .race-calendar-row b{font-size:11px}
}


/* ARFL 0.9 private owner/driver operations */
.login-gate{max-width:620px;margin:28px auto;text-align:center;padding:46px}
.login-gate img{width:82px;height:82px;object-fit:contain;margin-bottom:14px}
.login-gate h2{font-weight:600;margin:0 0 8px}.login-gate p{color:#667085;margin:0 auto 20px;max-width:470px}
.primary-link,.secondary-link{display:inline-flex;padding:11px 20px;border-radius:8px;text-decoration:none;font-weight:600}
.primary-link{background:#5d2ca8;color:#fff!important}.secondary-link{border:1px solid #cfd4dc;color:#222!important}
.ops-grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.7fr);gap:20px;margin:20px 0}
.checkin-card p{color:#667085}.checkin-buttons{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 12px}
.checkin-buttons button,.fillin-controls button,.free-agent-create button{border:1px solid #cfd4dc;background:#fff;color:#252932;border-radius:7px;padding:11px 15px;font-weight:550;cursor:pointer}
.checkin-buttons button.is-active{background:#e8f4ed;border-color:#6fa486;color:#145c37}.checkin-buttons button.danger.is-active{background:#fae9e9;border-color:#d98787;color:#8f2222}
.checkin-card textarea{width:100%;min-height:82px;border:1px solid #cfd4dc;border-radius:8px;padding:12px;font:inherit}
.availability{font-size:12px;padding:7px 10px;border-radius:999px;background:#eef1f4;color:#667085}.availability-in{background:#e8f4ed;color:#145c37}.availability-out{background:#fae9e9;color:#8f2222}.availability-maybe{background:#fbf0d6;color:#805e11}
.fillin-status{margin-top:18px;padding-top:15px;border-top:1px solid #e2e5e9;display:grid;gap:4px}.fillin-status span,.fillin-status em{font-size:12px;color:#667085}.fillin-status strong{font-size:18px;font-weight:600}.fillin-status em{color:#5d2ca8;font-style:normal}
.commissioner-panel{margin-top:20px}.fillin-controls{display:grid;grid-template-columns:minmax(220px,1fr) auto auto;gap:10px}.fillin-controls select,.form-grid input{height:43px;border:1px solid #cfd4dc;border-radius:7px;background:#fff;padding:0 11px;font:inherit}
.free-agent-create{margin-top:22px;padding-top:20px;border-top:1px solid #e2e5e9}.free-agent-create h3{font-weight:600}.form-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px}.form-message{min-height:20px;margin-top:10px;font-size:13px;color:#5d2ca8}
@media(max-width:850px){.ops-grid{grid-template-columns:1fr}.fillin-controls{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.login-gate{padding:30px 20px}.checkin-buttons{display:grid;grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}}


/* ARFL 1.0 first-come free-agent claim system */
.fa-profile{display:flex;justify-content:space-between;align-items:center;gap:20px}
.fa-profile span{font-size:11px;letter-spacing:.08em;color:#5d2ca8;font-weight:650}
.fa-profile h2{margin:4px 0;font-weight:600}.fa-profile p{margin:0;color:#667085}
.fa-profile>b{padding:8px 12px;border-radius:999px;background:#e8f4ed;color:#145c37;font-size:12px}
.open-rides{display:grid;gap:12px}
.open-ride{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;border:1px solid #d9dde4;border-left:4px solid var(--team);border-radius:10px;background:#fff}
.open-ride .team-logo-shell{width:64px;height:64px}.open-ride span{font-size:10px;letter-spacing:.07em;color:#5d2ca8;font-weight:650}
.open-ride h3{margin:3px 0;font-size:20px;font-weight:600}.open-ride p,.open-ride small{margin:0;color:#667085}
.open-ride button,.claimed-team button{border:0;border-radius:8px;background:#5d2ca8;color:#fff;padding:12px 16px;font-weight:600;cursor:pointer;white-space:nowrap}
.open-ride button:disabled{opacity:.55;cursor:wait}
.empty-pool{text-align:center;padding:42px 20px;background:#f8f9fb;border:1px dashed #cfd4dc;border-radius:10px}
.empty-pool h3{font-weight:600}.empty-pool p{color:#667085}
.claimed-team{display:grid;grid-template-columns:72px minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px;background:#f8f9fb;border:1px solid #d9dde4;border-radius:10px}
.claimed-team .team-logo-shell{width:66px;height:66px}.claimed-team strong{font-size:21px;font-weight:600}.claimed-team p{margin:4px 0 0;color:#667085}
.claimed-team button{background:#fff;color:#8f2222;border:1px solid #d98787}
@media(max-width:650px){
  .fa-profile{align-items:flex-start;flex-direction:column}
  .open-ride,.claimed-team{grid-template-columns:58px minmax(0,1fr)}
  .open-ride button,.claimed-team button{grid-column:1/-1;width:100%}
}


/* ARFL 1.1 Operations Center */
.control-hero,.portal-hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:28px;padding:34px 38px;border-radius:16px;background:linear-gradient(118deg,#17131f 0%,#2a183d 58%,#5d2ca8 130%);color:#fff;box-shadow:0 20px 45px rgba(22,13,33,.18)}
.control-hero:after,.portal-hero:after{content:"";position:absolute;width:340px;height:340px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-120px;top:-180px;box-shadow:0 0 0 55px rgba(255,255,255,.025),0 0 0 110px rgba(255,255,255,.018)}
.control-hero>*,.portal-hero>*{position:relative;z-index:1}.control-hero span,.portal-hero span{font-size:11px;font-weight:700;letter-spacing:.14em;color:#c6a9ef}.control-hero h1,.portal-hero h1{margin:6px 0 5px;font-size:38px;line-height:1;font-weight:650}.control-hero p,.portal-hero p{margin:0;color:rgba(255,255,255,.68)}
.control-clock,.window-chip{min-width:245px;padding:18px 22px;border:1px solid rgba(255,255,255,.17);border-radius:12px;background:rgba(0,0,0,.2);backdrop-filter:blur(8px);display:grid;gap:3px}.control-clock small,.window-chip small{font-size:10px;letter-spacing:.1em;color:#d8caea}.control-clock strong,.window-chip strong{font-size:31px;line-height:1.2;font-variant-numeric:tabular-nums}.control-clock span{font-size:12px;color:rgba(255,255,255,.65)}.window-chip.live{box-shadow:inset 3px 0 #44c481}
.metric-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:18px 0}.metric-grid article{position:relative;padding:19px 20px;border:1px solid #e2e4e9;border-radius:12px;background:#fff;box-shadow:0 5px 18px rgba(31,22,42,.045)}.metric-grid article:before{content:"";position:absolute;top:0;left:16px;right:16px;height:3px;background:#c6cad1;border-radius:0 0 3px 3px}.metric-grid .metric-green:before{background:#37a86d}.metric-grid .metric-red:before{background:#d9535f}.metric-grid .metric-blue:before{background:#3d80c5}.metric-grid span{display:block;font-size:10px;letter-spacing:.1em;color:#7b8190;font-weight:700}.metric-grid strong{display:block;font-size:32px;line-height:1.1;margin:7px 0 2px}.metric-grid small{color:#8a8f9b}
.control-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(290px,.7fr);gap:18px}.control-side{display:grid;align-content:start;gap:18px}
.operations-board{padding-bottom:20px}.status-key{font-size:11px;color:#707583;display:flex;align-items:center;gap:7px;flex-wrap:wrap}.status-key i{width:8px;height:8px;border-radius:50%;display:inline-block;margin-left:6px}.status-key .green{background:#37a86d}.status-key .red{background:#d9535f}.status-key .blue{background:#3d80c5}.status-key .gray{background:#a5a9b1}
.ops-team-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ops-team{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:11px;align-items:center;border:1px solid #e2e4e9;border-left:4px solid #a5a9b1;border-radius:9px;padding:10px 12px;background:#fff;cursor:pointer;transition:.16s ease}.ops-team:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(30,20,42,.08)}.ops-team.status-green{border-left-color:#37a86d}.ops-team.status-red{border-left-color:#d9535f;background:#fffafa}.ops-team.status-blue{border-left-color:#3d80c5}.ops-team .team-logo-shell{width:42px;height:42px}.ops-team strong{display:block;font-size:13px}.ops-team span,.ops-team small{display:block;color:#7c8290;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-team>b{font-size:9px;letter-spacing:.04em;text-transform:uppercase;padding:6px 7px;border-radius:999px;background:#f0f1f3;color:#606571}.ops-team.status-green>b{background:#e6f4ec;color:#177247}.ops-team.status-red>b{background:#fae8ea;color:#a72d3a}.ops-team.status-blue>b{background:#e6f0fa;color:#235f9c}
.compact-list{display:grid;gap:7px}.compact-list button{display:grid;grid-template-columns:38px 1fr;gap:9px;align-items:center;width:100%;padding:9px;border:0;border-radius:8px;background:#f7f8fa;text-align:left;cursor:pointer}.compact-list .team-logo-shell{width:36px;height:36px}.compact-list strong,.compact-list small{display:block}.compact-list small{color:#858a96}.all-clear{padding:25px;text-align:center;background:#eaf6ef;color:#20764c;border-radius:9px;font-weight:600}
.invite-form{display:grid;gap:9px}.invite-form input,.invite-form select{height:42px;border:1px solid #d7dae0;border-radius:7px;padding:0 11px;background:#fff}.invite-form button{border:0;border-radius:8px;background:#5d2ca8;color:#fff;padding:12px;font-weight:650;cursor:pointer}
.broadcast-panel{margin-top:18px}.ready-badge,.warning-badge{padding:7px 10px;border-radius:999px;font-size:11px}.ready-badge{background:#e6f4ec;color:#177247}.warning-badge{background:#fff0dd;color:#9b5a07}.readiness-bar{height:10px;background:#eceef1;border-radius:999px;overflow:hidden}.readiness-bar span{display:block;height:100%;background:linear-gradient(90deg,#5d2ca8,#38a870);border-radius:inherit}.readiness-notes{display:flex;gap:22px;flex-wrap:wrap;margin-top:12px;font-size:12px;color:#737987}
.driver-banner .owner-record strong{font-size:17px}.status-green{color:#177247!important}.status-red{color:#a72d3a!important}.status-blue{color:#235f9c!important}.status-gray{color:#777d88!important}
.deadline-clock{display:grid;text-align:right}.deadline-clock small{font-size:9px;letter-spacing:.1em;color:#7c8190}.deadline-clock strong{font-size:22px;font-variant-numeric:tabular-nums}
.binary-checkin{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:20px 0}.binary-checkin button{display:grid;grid-template-columns:44px 1fr;grid-template-rows:auto auto;text-align:left;column-gap:12px;padding:18px;border:1px solid #d8dbe1;border-radius:12px;background:#fff;cursor:pointer}.binary-checkin button>span{grid-row:1/3;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:#e8f4ed;color:#177247;font-size:22px}.binary-checkin button strong{align-self:end;font-size:16px}.binary-checkin button small{color:#828895}.binary-checkin button.is-active{border-color:#4ca477;box-shadow:0 0 0 3px rgba(55,168,109,.1)}.binary-checkin button.danger>span{background:#fae8ea;color:#a72d3a}.binary-checkin button.danger.is-active{border-color:#d9535f;box-shadow:0 0 0 3px rgba(217,83,95,.1)}
.locked-message{padding:25px;border-radius:11px;margin-top:18px}.locked-message.confirmed{background:#e9f6ef;color:#176b43}.locked-message.released{background:#faeaec;color:#982c38}.locked-message strong{font-size:20px}.locked-message p{margin:5px 0 0!important;color:inherit!important}.next-week-strip{display:flex;justify-content:center;gap:13px;align-items:center;margin-top:18px;padding:15px;border:1px dashed #cfd2d9;border-radius:10px;background:#fafbfc}.next-week-strip span{font-size:10px;letter-spacing:.1em;color:#5d2ca8;font-weight:700}.matchup-focus{text-align:center}.matchup-focus>.team-logo-shell{width:90px;height:90px;margin:20px auto 10px}
.ops-modal{max-width:520px}.modal-team-head{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:center;margin:20px 0}.modal-team-head .team-logo-shell{width:68px;height:68px}.modal-team-head strong{font-size:19px}.modal-team-head p,.modal-team-head small{margin:3px 0;color:#777d88}.override-actions{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px}.override-actions button{border:0;border-radius:8px;padding:11px;background:#e7f4ed;color:#176b43;font-weight:600;cursor:pointer}.override-actions .danger{background:#fae8ea;color:#982c38}.override-actions .ghost{background:#eef0f3;color:#565c68}
@media(max-width:1050px){.metric-grid{grid-template-columns:repeat(3,1fr)}.control-grid{grid-template-columns:1fr}.control-side{grid-template-columns:1fr 1fr}.ops-team-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.control-hero,.portal-hero{align-items:flex-start;flex-direction:column;padding:27px 23px}.control-clock,.window-chip{width:100%}.metric-grid{grid-template-columns:1fr 1fr}.control-side{grid-template-columns:1fr}.ops-team-grid{grid-template-columns:1fr}.binary-checkin{grid-template-columns:1fr}.next-week-strip{align-items:flex-start;flex-direction:column}.override-actions{grid-template-columns:1fr}.readiness-notes{display:grid;gap:6px}}


/* ARFL 1.1.2 page reliability and schedule states */
.empty-state{grid-column:1/-1;padding:40px 24px;text-align:center;border:1px dashed #cfd4dc;border-radius:10px;background:#fafbfc}
.empty-state h3{margin:0 0 6px;font-weight:650;color:#242832}.empty-state p{margin:0;color:#747b88}
.route-error{max-width:700px;margin:24px auto;text-align:center;padding:40px}.route-error h2{margin-top:0}.route-error p{color:#a72d3a;font-family:monospace;word-break:break-word}.route-error button{border:0;border-radius:8px;background:#5d2ca8;color:#fff;padding:11px 18px;font-weight:650;cursor:pointer}
.week-tabs{display:flex;gap:7px;overflow-x:auto;padding:2px 0 12px;scrollbar-width:thin}.week-tabs button{flex:0 0 auto}
.race-calendar-row.is-active{outline:2px solid #5d2ca8;outline-offset:2px}
.muted{color:#7d8390;font-size:13px}

/* ARFL 1.1.3 public/private home cleanup */
.owner-only-home{margin-top:18px}
.hero-preseason .eyebrow{color:#f2c46d}
.hero-preseason .race-card{border-top:3px solid #d6a54b}
.hero-preseason .race-card small{color:#d6a54b;font-weight:700;letter-spacing:.06em}
body:not(.logged-in) .arfl-my-team,body:not(.logged-in) [data-open-team-picker]{display:none!important}
.public-standings{margin-top:18px}


/* ARFL 1.1.4 public franchise pages */
.team-profile-hero{display:grid;grid-template-columns:110px minmax(0,1fr) auto;align-items:center;gap:24px;padding:30px 34px;border-radius:15px;border-left:6px solid var(--team);background:linear-gradient(110deg,#fff 0%,#f7f8fa 72%,color-mix(in srgb,var(--team) 8%,#fff) 100%);box-shadow:0 12px 32px rgba(26,20,34,.08)}
.team-profile-logo .team-logo-shell{width:100px;height:100px}
.team-profile-copy>span{font-size:10px;letter-spacing:.12em;color:#6f7582;font-weight:700}
.team-profile-copy h1{margin:5px 0 7px;font-size:34px;line-height:1.05}
.team-profile-copy p{margin:0;color:#6f7582}
.team-profile-record{text-align:right;display:grid;gap:3px}
.team-profile-record small{font-size:10px;letter-spacing:.12em;color:#7b818e}
.team-profile-record strong{font-size:32px}
.team-profile-record span{font-size:12px;color:#6f7582}
.team-public-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin:18px 0}
.team-next-matchup{text-align:center}
.team-next-matchup>.team-logo-shell{width:84px;height:84px;margin:10px auto}
.team-next-matchup p{margin:8px 0 3px;font-weight:600}
.team-next-matchup small{color:#7c8290}
.rank-stack{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.rank-stack>div{padding:18px 10px;border-radius:9px;background:#f7f8fa;text-align:center}
.rank-stack small{display:block;color:#7c8290;margin-bottom:5px}
.rank-stack strong{font-size:24px}
.public-team-schedule{display:grid;gap:8px}
.public-team-game{display:grid;grid-template-columns:50px 52px minmax(0,1fr) auto;align-items:center;gap:12px;padding:11px 13px;border:1px solid #e1e4e9;border-radius:9px;background:#fff}
.public-team-game .team-logo-shell{width:48px;height:48px}
.public-team-game>div small,.public-team-game>div strong,.public-team-game>div em{display:block}
.public-team-game>div small{font-size:9px;letter-spacing:.08em;color:#777d89}
.public-team-game>div strong{font-size:14px}
.public-team-game>div em{font-size:11px;color:#858b96;font-style:normal}
.team-outcome{display:grid;text-align:right;font-size:11px;letter-spacing:.05em}
.team-outcome small{font-size:10px;letter-spacing:0;color:#7f8590;margin-top:3px}
.outcome-win{color:#177247}.outcome-loss{color:#a72d3a}.outcome-upcoming{color:#777d88}.outcome-tie{color:#87620c}
.private-team-tools{margin-top:18px;padding:24px;border:1px solid #d9d1e6;border-radius:12px;background:#faf8fd}
.private-team-tools p{color:#707582}
.private-team-tools button{border:0;border-radius:8px;padding:11px 17px;background:#5d2ca8;color:#fff;font-weight:650;cursor:pointer}
@media(max-width:760px){
  .team-profile-hero{grid-template-columns:78px 1fr;padding:23px}
  .team-profile-logo .team-logo-shell{width:72px;height:72px}
  .team-profile-record{grid-column:1/-1;text-align:left;display:flex;align-items:center;gap:12px}
  .team-public-grid{grid-template-columns:1fr}
  .public-team-game{grid-template-columns:42px 46px minmax(0,1fr)}
  .public-team-game>.team-outcome{grid-column:3}
}


/* ARFL 1.1.5 cleaner schedule */
.clean-schedule-panel{padding-bottom:18px}
.clean-race-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.clean-race-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:15px 16px;border:1px solid #e1e4e9;border-radius:10px;background:#fff;text-align:left;cursor:pointer;transition:.16s ease}
.clean-race-row:hover{transform:translateY(-1px);border-color:#c9cdd5;box-shadow:0 7px 18px rgba(30,20,42,.06)}
.clean-race-row.is-current{border-color:#5d2ca8;box-shadow:0 0 0 2px rgba(93,44,168,.08)}
.clean-race-row.is-championship{background:linear-gradient(110deg,#fffaf0,#fff)}
.clean-race-week{font-size:9px;letter-spacing:.1em;font-weight:750;color:#7a808c;min-width:68px}
.clean-race-row strong{font-size:15px;font-weight:650;color:#252932;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.clean-race-row small{font-size:11px;color:#848a95;white-space:nowrap}
.compact-week-tabs{display:flex;gap:6px;overflow-x:auto;padding-bottom:12px}
.compact-week-tabs button{min-width:34px;height:34px;padding:0 10px;border-radius:7px;font-size:12px}
@media(max-width:950px){
  .clean-race-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .clean-race-list{grid-template-columns:1fr}
  .clean-race-row{grid-template-columns:74px 1fr auto}
}


/* ARFL 1.1.6 divisions and race-data views */
.standings-filter-groups{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px}
.division-tabs{margin-left:auto}
.selected-race-panel{background:linear-gradient(120deg,#fff,#faf8fd)}
.selected-race-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.selected-race-head span{display:block;font-size:10px;letter-spacing:.11em;color:#7b818d;font-weight:700;text-transform:uppercase}
.selected-race-head h2{margin:4px 0 0;font-size:28px}
.selected-race-head>b{font-size:10px;letter-spacing:.1em;color:#5d2ca8;text-transform:uppercase}
.race-stat-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}
.race-stat-grid>div{padding:15px 12px;border:1px solid #e3e0e8;border-radius:9px;background:#fff}
.race-stat-grid small{display:block;font-size:9px;letter-spacing:.09em;color:#818793;text-transform:uppercase;margin-bottom:5px}
.race-stat-grid strong{display:block;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1000px){
  .race-stat-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:620px){
  .standings-filter-groups{display:block}
  .division-tabs{margin-top:8px}
  .race-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}


/* ================================================================
   ARFL v1.7.0 — League Platform
   ================================================================ */
.arfl-nav-divider{width:1px;height:22px;background:rgba(255,255,255,.22);margin:0 4px}
.standings-control-panel{padding-top:22px}
.standings-selector{display:grid;grid-template-columns:auto 1fr;gap:30px;align-items:end;padding-bottom:20px;border-bottom:1px solid #e4e6ea}
.standings-selector>div>small{display:block;margin-bottom:8px;font-size:9px;letter-spacing:.12em;color:#7b818d;font-weight:750}
.standings-context-head{margin-top:22px}
.rules-page-head{position:relative}
.rules-edit-link{display:inline-flex;margin-top:16px;padding:10px 15px;border-radius:8px;background:#5d2ca8;color:#fff!important;text-decoration:none;font-weight:650}
.rules-content-panel{padding:34px 38px}
.arfl-rules-content{max-width:900px;margin:0 auto;color:#292d35;font-size:16px;line-height:1.72}
.arfl-rules-content h1,.arfl-rules-content h2,.arfl-rules-content h3,.arfl-rules-content h4{color:#20242c;line-height:1.18;margin:1.65em 0 .55em}
.arfl-rules-content h2{font-size:28px;padding-bottom:10px;border-bottom:2px solid #edeaf2}
.arfl-rules-content h3{font-size:21px}
.arfl-rules-content p{margin:0 0 1.15em}
.arfl-rules-content ul,.arfl-rules-content ol{margin:0 0 1.35em 1.3em}
.arfl-rules-content table{width:100%;border-collapse:collapse;margin:20px 0}
.arfl-rules-content th,.arfl-rules-content td{padding:11px 13px;border:1px solid #dfe2e7;text-align:left}
.arfl-rules-content th{background:#f6f5f8}
.arfl-rules-content blockquote{margin:20px 0;padding:16px 19px;border-left:4px solid #5d2ca8;background:#f8f6fb}
.race-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.clean-race-row.is-active{border-color:#5d2ca8;background:#fbf9fe}
[data-view="rules"] .arfl-team-picker,[data-view="schedule"] .arfl-team-picker,[data-view="standings"] .arfl-team-picker{display:none}
@media(max-width:900px){
  .standings-selector{grid-template-columns:1fr;gap:16px}
}
@media(max-width:620px){
  .arfl-nav-divider{display:none}
  .rules-content-panel{padding:23px 20px}
  .arfl-rules-content{font-size:15px}
  .race-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}

.race-format{display:block;margin-top:4px;font-weight:700;letter-spacing:.04em;opacity:.72}


.team-rank-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.team-rank-stack button{appearance:none;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.04);color:inherit;padding:14px 12px;text-align:left;cursor:pointer;transition:.16s ease}
.team-rank-stack button:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.3);background:rgba(255,255,255,.075)}
.team-rank-stack button small,.team-rank-stack button strong,.team-rank-stack button em{display:block}
.team-rank-stack button small{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.72}
.team-rank-stack button strong{font-size:28px;line-height:1;margin:7px 0 5px}
.team-rank-stack button em{font-size:11px;font-style:normal;opacity:.62}
@media(max-width:700px){.team-rank-stack{grid-template-columns:1fr}}


.playoff-matchup{border-color:rgba(255,255,255,.18)}
.playoff-matchup .matchup-status{letter-spacing:.06em}
.playoff-placeholder{opacity:.72}
.placeholder-logo{display:grid;place-items:center;font-size:24px;font-weight:900}
.schedule-detail strong,.schedule-detail span{display:block}
.fa-admin-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:18px;margin-bottom:18px}
.fa-driver-list,.fa-assignment-list{display:grid;gap:10px}
.fa-driver-row,.fa-assignment-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:13px 0;border-bottom:1px solid rgba(255,255,255,.09)}
.fa-driver-row:last-child,.fa-assignment-row:last-child{border-bottom:0}
.fa-driver-row div,.fa-assignment-row div{display:grid;gap:3px;flex:1}
.fa-driver-row small,.fa-assignment-row small{opacity:.68}
.fa-driver-row>span{font-size:11px;font-weight:800;letter-spacing:.08em}
.fa-assignment-row .team-logo-shell{width:44px;height:44px}
@media(max-width:820px){.fa-admin-grid{grid-template-columns:1fr}}


.arfl-nav .arfl-login-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 16px;
  border-radius:999px;
  background:#fff;
  color:#111!important;
  font-size:12px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  text-decoration:none!important;
  white-space:nowrap;
}
.arfl-nav .arfl-login-button:hover{opacity:.88;}
.arfl-nav .arfl-logout-button{background:transparent;color:inherit!important;border:1px solid rgba(255,255,255,.25);}
@media(max-width:900px){
  .arfl-nav .arfl-login-button{width:100%;margin-top:8px;}
}


/* Driver login in the actual WordPress / Flatsome navigation */
.arfl-driver-login-menu-item > .arfl-driver-login-nav-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 16px !important;
  border:1px solid currentColor;
  border-radius:999px;
  font-weight:700;
  line-height:1;
  text-decoration:none;
}
.arfl-driver-login-menu-item > .arfl-driver-login-nav-link:hover{
  opacity:.82;
}
.mobile-nav .arfl-driver-login-menu-item > .arfl-driver-login-nav-link,
.nav-sidebar .arfl-driver-login-menu-item > .arfl-driver-login-nav-link{
  margin:10px 20px;
  width:calc(100% - 40px);
}


/* Login action shown directly on the public ARFL home screen */
.hero-actions .arfl-home-login{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:12px 20px;
  border:0;
  border-radius:8px;
  background:var(--arfl-purple);
  color:#fff;
  font-size:12px;
  font-weight:900;
  line-height:1;
  letter-spacing:.06em;
  text-decoration:none;
  text-transform:uppercase;
  cursor:pointer;
}
.hero-actions .arfl-home-login:hover{
  color:#fff;
  opacity:.9;
}


/* =========================================================
   ARFL v1.9 — compact shield navigation
   ========================================================= */
.arfl-header{
  min-height:60px !important;
  height:60px !important;
  padding:0 max(18px,calc((100vw - 1440px)/2)) !important;
  gap:16px !important;
  background:#fff !important;
  border-bottom:1px solid rgba(20,24,32,.12) !important;
  box-shadow:0 3px 14px rgba(15,20,30,.06);
  color:#151922;
}

.arfl-brand{
  min-width:44px !important;
  width:44px;
  height:44px;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0;
  border:0;
  background:transparent;
  cursor:pointer;
}

.arfl-brand > div{
  display:none !important;
}

.arfl-logo{
  width:34px !important;
  height:34px !important;
  object-fit:contain !important;
  object-position:center !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}

.arfl-nav{
  height:60px !important;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px !important;
  min-width:0;
}

.arfl-public-links{
  display:flex;
  align-items:stretch;
  justify-content:center;
  flex:1;
  height:60px;
  gap:4px;
}

.arfl-public-links button{
  position:relative;
  height:60px !important;
  padding:0 12px !important;
  border:0 !important;
  border-bottom:3px solid transparent !important;
  background:transparent !important;
  color:#606878 !important;
  font-size:10.5px !important;
  font-weight:650 !important;
  letter-spacing:.025em !important;
}

.arfl-public-links button:hover,
.arfl-public-links button.is-active{
  color:#171b23 !important;
  border-bottom-color:var(--arfl-purple,#6331bd) !important;
}

.arfl-account-area{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  min-width:120px;
}

.arfl-login-button,
.arfl-account-trigger{
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 15px !important;
  border:1px solid rgba(21,25,34,.18) !important;
  border-radius:8px;
  background:#fff !important;
  color:#171b23 !important;
  font-size:10.5px !important;
  font-weight:800 !important;
  letter-spacing:.04em !important;
  line-height:1;
  text-decoration:none;
  text-transform:uppercase;
  white-space:nowrap;
  cursor:pointer;
}

.arfl-login-button:hover,
.arfl-account-trigger:hover{
  color:var(--arfl-purple,#6331bd) !important;
  border-color:var(--arfl-purple,#6331bd) !important;
}

.arfl-account-trigger span{
  margin-left:7px;
  font-size:9px;
}

.arfl-account-dropdown{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  z-index:100;
  width:210px;
  padding:8px;
  border:1px solid rgba(20,24,32,.12);
  border-radius:12px;
  background:#fff;
  box-shadow:0 18px 45px rgba(15,20,30,.16);
}

.arfl-account-dropdown[hidden]{
  display:none;
}

.arfl-account-dropdown button,
.arfl-account-dropdown a{
  display:flex;
  align-items:center;
  width:100%;
  min-height:40px;
  padding:0 12px !important;
  border:0 !important;
  border-radius:8px;
  background:transparent !important;
  color:#2b303a !important;
  font-size:11.5px !important;
  font-weight:650 !important;
  text-align:left;
  text-decoration:none;
  text-transform:none;
  cursor:pointer;
}

.arfl-account-dropdown button:hover,
.arfl-account-dropdown a:hover{
  background:#f3effb !important;
  color:var(--arfl-purple,#6331bd) !important;
}

.arfl-team-picker,
.arfl-nav-divider{
  display:none !important;
}

@media(max-width:900px){
  .arfl-header{
    height:58px !important;
    min-height:58px !important;
    padding:0 14px !important;
  }

  .arfl-menu{
    display:flex !important;
    order:3;
    margin-left:auto;
    width:40px;
    height:40px;
    align-items:center;
    justify-content:center;
    border:1px solid rgba(21,25,34,.16) !important;
    border-radius:8px;
    background:#fff !important;
    color:#171b23 !important;
  }

  .arfl-nav{
    display:none !important;
    position:absolute;
    top:58px;
    left:0;
    right:0;
    height:auto !important;
    padding:12px 14px 16px;
    background:#fff;
    border-bottom:1px solid rgba(20,24,32,.12);
    box-shadow:0 16px 30px rgba(15,20,30,.12);
  }

  .arfl-nav.is-open{
    display:block !important;
  }

  .arfl-public-links{
    display:grid;
    grid-template-columns:1fr 1fr;
    height:auto;
    gap:6px;
  }

  .arfl-public-links button{
    height:42px !important;
    border:1px solid rgba(21,25,34,.1) !important;
    border-radius:8px;
    background:#fafafa !important;
  }

  .arfl-account-area{
    margin-top:8px;
    min-width:0;
  }

  .arfl-login-button,
  .arfl-account-trigger{
    width:100%;
  }

  .arfl-account-dropdown{
    position:static;
    width:100%;
    margin-top:7px;
    box-shadow:none;
  }
}


/* =========================================================
   ARFL v1.9.1 — corrected wordmark header
   ========================================================= */
.arfl-header{
  display:grid !important;
  grid-template-columns:180px minmax(0,1fr) !important;
  align-items:center !important;
  width:100% !important;
  min-height:62px !important;
  height:62px !important;
  padding:0 22px !important;
  gap:20px !important;
  overflow:visible !important;
}

.arfl-brand{
  width:170px !important;
  min-width:170px !important;
  height:44px !important;
  justify-content:flex-start !important;
  overflow:visible !important;
}

.arfl-logo{
  display:block !important;
  width:158px !important;
  max-width:158px !important;
  height:34px !important;
  object-fit:contain !important;
  object-position:left center !important;
  filter:none !important;
  mix-blend-mode:normal !important;
}

.arfl-nav{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  width:100% !important;
  height:62px !important;
  min-width:0 !important;
  gap:18px !important;
}

.arfl-public-links{
  display:flex !important;
  align-items:stretch !important;
  justify-content:center !important;
  height:62px !important;
  min-width:0 !important;
  gap:0 !important;
}

.arfl-public-links button{
  height:62px !important;
  padding:0 14px !important;
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:.015em !important;
  white-space:nowrap !important;
}

.arfl-account-area{
  min-width:110px !important;
  justify-content:flex-end !important;
}

.arfl-account-trigger,
.arfl-login-button{
  min-height:36px !important;
  padding:0 13px !important;
  font-size:10px !important;
  border-radius:8px !important;
}

@media(max-width:1120px){
  .arfl-header{
    grid-template-columns:150px minmax(0,1fr) !important;
    padding:0 16px !important;
    gap:12px !important;
  }

  .arfl-brand{
    width:145px !important;
    min-width:145px !important;
  }

  .arfl-logo{
    width:138px !important;
    max-width:138px !important;
  }

  .arfl-public-links button{
    padding:0 10px !important;
    font-size:9.5px !important;
  }
}

@media(max-width:900px){
  .arfl-header{
    display:flex !important;
    height:58px !important;
    min-height:58px !important;
    padding:0 14px !important;
  }

  .arfl-brand{
    width:150px !important;
    min-width:150px !important;
    margin-right:auto !important;
  }

  .arfl-logo{
    width:144px !important;
    max-width:144px !important;
    height:30px !important;
  }

  .arfl-nav{
    display:none !important;
  }

  .arfl-nav.is-open{
    display:block !important;
  }
}
\n\n/* =========================================================\n   ARFL v1.9.2 — guaranteed public login control\n   ========================================================= */\n.arfl-header{\n  grid-template-columns:180px minmax(0,1fr) auto !important;\n}\n.arfl-fixed-login{\n  display:inline-flex !important;\n  align-items:center !important;\n  justify-content:center !important;\n  min-width:82px !important;\n  min-height:36px !important;\n  padding:0 14px !important;\n  border:1px solid rgba(21,25,34,.2) !important;\n  border-radius:8px !important;\n  background:#fff !important;\n  color:#171b23 !important;\n  font-size:10px !important;\n  font-weight:800 !important;\n  letter-spacing:.04em !important;\n  line-height:1 !important;\n  text-decoration:none !important;\n  text-transform:uppercase !important;\n  white-space:nowrap !important;\n  visibility:visible !important;\n  opacity:1 !important;\n  position:relative !important;\n  z-index:120 !important;\n}\n.arfl-fixed-login:hover{\n  border-color:var(--arfl-purple,#6331bd) !important;\n  color:var(--arfl-purple,#6331bd) !important;\n}\n@media(max-width:1120px){\n  .arfl-header{grid-template-columns:150px minmax(0,1fr) auto !important;}\n}\n@media(max-width:900px){\n  .arfl-header{display:flex !important;}\n  .arfl-fixed-login{\n    order:2 !important;\n    margin-left:auto !important;\n    margin-right:8px !important;\n  }\n  .arfl-menu{order:3 !important;margin-left:0 !important;}\n}\n

/* =========================================================
   ARFL v1.9.3 — hard public-login fix
   The public login is a dedicated header column and cannot
   be hidden by account/menu conditions.
   ========================================================= */
.arfl-header{
  display:grid !important;
  grid-template-columns:180px minmax(0,1fr) 118px !important;
  align-items:center !important;
  width:100% !important;
  height:64px !important;
  min-height:64px !important;
  padding:0 24px !important;
  gap:18px !important;
  overflow:visible !important;
  background:#fff !important;
}

.arfl-brand{
  display:flex !important;
  width:170px !important;
  min-width:170px !important;
  height:44px !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

.arfl-logo{
  display:block !important;
  width:158px !important;
  max-width:158px !important;
  height:34px !important;
  object-fit:contain !important;
  object-position:left center !important;
  opacity:1 !important;
  visibility:visible !important;
}

.arfl-nav{
  display:flex !important;
  position:static !important;
  align-items:stretch !important;
  justify-content:center !important;
  width:100% !important;
  min-width:0 !important;
  height:64px !important;
  gap:0 !important;
  padding:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

.arfl-nav > button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:64px !important;
  padding:0 14px !important;
  border:0 !important;
  border-bottom:3px solid transparent !important;
  background:transparent !important;
  color:#626a78 !important;
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
  white-space:nowrap !important;
}

.arfl-nav > button.is-active,
.arfl-nav > button:hover{
  color:#171b23 !important;
  border-bottom-color:var(--arfl-purple,#6331bd) !important;
}

.arfl-header-account{
  display:flex !important;
  position:relative !important;
  align-items:center !important;
  justify-content:flex-end !important;
  width:118px !important;
  min-width:118px !important;
  height:64px !important;
  opacity:1 !important;
  visibility:visible !important;
  overflow:visible !important;
}

.arfl-public-login{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  min-width:86px !important;
  height:38px !important;
  padding:0 16px !important;
  border:1px solid #6331bd !important;
  border-radius:8px !important;
  background:#6331bd !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.05em !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  white-space:nowrap !important;
  z-index:20 !important;
}

.arfl-public-login:hover{
  background:#51269f !important;
  border-color:#51269f !important;
  color:#fff !important;
}

.arfl-account-trigger{
  display:inline-flex !important;
  min-width:108px !important;
  height:38px !important;
}

.arfl-menu{
  display:none !important;
}

@media(max-width:980px){
  .arfl-header{
    display:grid !important;
    grid-template-columns:minmax(130px,1fr) auto auto !important;
    height:60px !important;
    min-height:60px !important;
    padding:0 14px !important;
    gap:10px !important;
  }

  .arfl-brand{
    width:150px !important;
    min-width:130px !important;
  }

  .arfl-logo{
    width:145px !important;
    max-width:145px !important;
    height:30px !important;
  }

  .arfl-header-account{
    display:flex !important;
    width:auto !important;
    min-width:86px !important;
    height:60px !important;
  }

  .arfl-public-login{
    display:inline-flex !important;
    min-width:78px !important;
    height:36px !important;
    padding:0 13px !important;
  }

  .arfl-menu{
    display:flex !important;
    width:40px !important;
    height:40px !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid rgba(21,25,34,.16) !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#171b23 !important;
  }

  .arfl-nav{
    display:none !important;
    position:absolute !important;
    top:60px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:auto !important;
    padding:12px 14px 16px !important;
    background:#fff !important;
    border-bottom:1px solid rgba(20,24,32,.12) !important;
    box-shadow:0 16px 30px rgba(15,20,30,.12) !important;
  }

  .arfl-nav.is-open{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:6px !important;
  }

  .arfl-nav > button{
    height:42px !important;
    border:1px solid rgba(21,25,34,.1) !important;
    border-radius:8px !important;
    background:#fafafa !important;
  }
}

@media(max-width:520px){
  .arfl-header{
    grid-template-columns:minmax(105px,1fr) auto auto !important;
    padding:0 10px !important;
    gap:7px !important;
  }

  .arfl-brand{
    width:122px !important;
    min-width:105px !important;
  }

  .arfl-logo{
    width:118px !important;
    max-width:118px !important;
  }

  .arfl-public-login{
    min-width:68px !important;
    padding:0 10px !important;
    font-size:10px !important;
  }
}


/* =========================================================
   ARFL v1.9.4 — simple menu with permanent auth action
   ========================================================= */
.arfl-header{
  display:flex !important;
  align-items:center !important;
  width:100% !important;
  height:64px !important;
  min-height:64px !important;
  padding:0 24px !important;
  gap:22px !important;
  overflow:visible !important;
  background:#fff !important;
  border-bottom:1px solid rgba(20,24,32,.12) !important;
  box-shadow:0 3px 14px rgba(15,20,30,.06) !important;
}

.arfl-brand{
  display:flex !important;
  flex:0 0 170px !important;
  width:170px !important;
  min-width:170px !important;
  height:44px !important;
  align-items:center !important;
  justify-content:flex-start !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
  position:static !important;
}

.arfl-logo{
  display:block !important;
  width:158px !important;
  max-width:158px !important;
  height:34px !important;
  object-fit:contain !important;
  object-position:left center !important;
  opacity:1 !important;
  visibility:visible !important;
}

.arfl-nav{
  display:flex !important;
  flex:1 1 auto !important;
  align-items:stretch !important;
  justify-content:flex-end !important;
  position:static !important;
  width:auto !important;
  min-width:0 !important;
  height:64px !important;
  padding:0 !important;
  margin:0 !important;
  gap:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  overflow:visible !important;
}

.arfl-nav > button{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  height:64px !important;
  padding:0 14px !important;
  margin:0 !important;
  border:0 !important;
  border-bottom:3px solid transparent !important;
  border-radius:0 !important;
  background:transparent !important;
  color:#626a78 !important;
  font-size:10px !important;
  font-weight:700 !important;
  letter-spacing:.02em !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.arfl-nav > button.is-active,
.arfl-nav > button:hover{
  color:#171b23 !important;
  border-bottom-color:var(--arfl-purple,#6331bd) !important;
}

.arfl-auth-button{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  min-width:84px !important;
  height:38px !important;
  margin:0 0 0 16px !important;
  padding:0 16px !important;
  border:1px solid #6331bd !important;
  border-radius:8px !important;
  background:#6331bd !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.05em !important;
  line-height:1 !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  position:static !important;
  z-index:5 !important;
}

.arfl-auth-button:hover{
  background:#51269f !important;
  border-color:#51269f !important;
  color:#fff !important;
}

.arfl-header-account,
.arfl-account-area,
.arfl-account-trigger,
.arfl-account-dropdown,
.arfl-team-picker{
  display:none !important;
}

.arfl-menu{
  display:none !important;
}

@media(max-width:980px){
  .arfl-header{
    height:60px !important;
    min-height:60px !important;
    padding:0 14px !important;
    gap:10px !important;
  }

  .arfl-brand{
    flex:1 1 auto !important;
    width:auto !important;
    min-width:120px !important;
  }

  .arfl-logo{
    width:145px !important;
    max-width:145px !important;
    height:30px !important;
  }

  .arfl-menu{
    display:flex !important;
    flex:0 0 40px !important;
    width:40px !important;
    height:40px !important;
    align-items:center !important;
    justify-content:center !important;
    border:1px solid rgba(21,25,34,.16) !important;
    border-radius:8px !important;
    background:#fff !important;
    color:#171b23 !important;
  }

  .arfl-nav{
    display:none !important;
    position:absolute !important;
    top:60px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    height:auto !important;
    padding:12px 14px 16px !important;
    background:#fff !important;
    border-bottom:1px solid rgba(20,24,32,.12) !important;
    box-shadow:0 16px 30px rgba(15,20,30,.12) !important;
    z-index:100 !important;
  }

  .arfl-nav.is-open{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:6px !important;
  }

  .arfl-nav > button,
  .arfl-auth-button{
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    margin:0 !important;
    border:1px solid rgba(21,25,34,.1) !important;
    border-radius:8px !important;
  }

  .arfl-auth-button{
    grid-column:1 / -1 !important;
    background:#6331bd !important;
    border-color:#6331bd !important;
    color:#fff !important;
  }
}


/* =========================================================
   ARFL v2.0.1 — fatal-safe cached-page login hotfix
   ========================================================= */
#arfl-menu-auth{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  min-width:84px !important;
  height:38px !important;
  margin:0 0 0 16px !important;
  padding:0 16px !important;
  border:1px solid #6331bd !important;
  border-radius:8px !important;
  background:#6331bd !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
  line-height:1 !important;
  letter-spacing:.05em !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  position:relative !important;
  z-index:100 !important;
}

#arfl-menu-auth:hover{
  background:#51269f !important;
  border-color:#51269f !important;
  color:#fff !important;
}

@media(max-width:980px){
  #arfl-menu-auth{
    display:inline-flex !important;
    grid-column:1 / -1 !important;
    width:100% !important;
    min-width:0 !important;
    height:42px !important;
    margin:0 !important;
  }
}


/* ARFL v2.0.2 cache-safe auth control */
.arfl-header #arfl-menu-auth{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:center !important;
  align-self:center !important;
  min-width:84px !important;
  height:38px !important;
  margin-left:16px !important;
  padding:0 16px !important;
  border:1px solid #6331bd !important;
  border-radius:8px !important;
  background:#6331bd !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.05em !important;
  line-height:1 !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  position:relative !important;
  z-index:9999 !important;
}
.arfl-header #arfl-menu-auth:hover{
  background:#51269f !important;
  border-color:#51269f !important;
  color:#fff !important;
}
@media(max-width:980px){
  .arfl-header #arfl-menu-auth{
    width:100% !important;
    height:42px !important;
    margin:0 !important;
    grid-column:1 / -1 !important;
  }
}

/* =========================================================
   ARFL v2.0.4 — permanent authentication button
   The auth control is intentionally outside .arfl-nav so
   logged-out visitors cannot lose it when nav is collapsed.
   ========================================================= */
.arfl-header > .arfl-header-auth{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:84px !important;
  height:38px !important;
  margin:0 !important;
  padding:0 16px !important;
  border:1px solid #6331bd !important;
  border-radius:8px !important;
  background:#6331bd !important;
  color:#fff !important;
  font-size:11px !important;
  font-weight:900 !important;
  letter-spacing:.05em !important;
  line-height:1 !important;
  text-decoration:none !important;
  text-transform:uppercase !important;
  white-space:nowrap !important;
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  position:relative !important;
  z-index:99999 !important;
}
.arfl-header > .arfl-header-auth:hover{
  background:#51269f !important;
  border-color:#51269f !important;
  color:#fff !important;
}
@media(max-width:980px){
  .arfl-header > .arfl-header-auth{
    display:inline-flex !important;
    min-width:72px !important;
    height:38px !important;
    padding:0 11px !important;
    font-size:10px !important;
    order:2 !important;
  }
  .arfl-header > .arfl-menu{
    order:3 !important;
  }
  .arfl-header > .arfl-nav{
    order:4 !important;
  }
}

/* ARFL custom login — v2.1.0 */
body:has(.arfl-login-page) .page-title,
body:has(.arfl-login-page) .entry-header { display:none !important; }
.arfl-login-page{min-height:72vh;display:grid;place-items:center;padding:48px 18px;background:linear-gradient(135deg,#f4f6fa 0%,#fff 55%,#eef1f7 100%);font-family:Arial,Helvetica,sans-serif;}
.arfl-login-card{width:min(100%,460px);background:#fff;border:1px solid #dfe3eb;border-radius:18px;box-shadow:0 24px 70px rgba(13,19,33,.14);padding:34px;position:relative;overflow:hidden;}
.arfl-login-card:before{content:"";position:absolute;inset:0 0 auto;height:5px;background:#592d82;}
.arfl-login-brand{display:block;width:min(250px,75%);margin:2px auto 28px;}
.arfl-login-brand img{display:block;width:100%;height:auto;}
.arfl-login-copy{text-align:center;margin-bottom:24px;}
.arfl-login-kicker{display:block;font-size:11px;font-weight:800;letter-spacing:.18em;color:#592d82;margin-bottom:8px;}
.arfl-login-copy h1{font-size:32px;line-height:1.1;margin:0 0 9px;color:#111827;font-weight:800;}
.arfl-login-copy p{margin:0;color:#687184;font-size:15px;line-height:1.5;}
.arfl-login-error{border:1px solid #efb4b4;background:#fff2f2;color:#991b1b;border-radius:8px;padding:11px 13px;margin:0 0 17px;font-size:14px;font-weight:700;}
.arfl-login-form{display:grid;gap:9px;}
.arfl-login-form>label{font-size:13px;font-weight:800;color:#283142;margin-top:5px;}
.arfl-login-form input[type=text],.arfl-login-form input[type=password]{width:100%;height:48px;border:1px solid #cfd5df;border-radius:8px;background:#fff;padding:0 13px;font-size:16px;color:#111827;box-shadow:none;}
.arfl-login-form input:focus{outline:3px solid rgba(89,45,130,.14);border-color:#592d82;}
.arfl-login-options{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:7px 0 11px;font-size:13px;}
.arfl-login-options a{color:#592d82;font-weight:700;text-decoration:none;}
.arfl-remember{display:inline-flex!important;align-items:center;gap:7px;margin:0!important;font-weight:600!important;color:#4b5563!important;}
.arfl-remember input{margin:0;}
.arfl-login-form button{height:50px;border:0;border-radius:8px;background:#592d82;color:#fff;font-size:14px;font-weight:900;letter-spacing:.08em;cursor:pointer;transition:transform .15s ease,opacity .15s ease;}
.arfl-login-form button:hover{opacity:.92;transform:translateY(-1px);}
.arfl-login-back{display:block;text-align:center;margin-top:21px;color:#667085;font-size:13px;font-weight:700;text-decoration:none;}
@media(max-width:520px){.arfl-login-page{padding:22px 12px;min-height:68vh}.arfl-login-card{padding:28px 20px;border-radius:14px}.arfl-login-copy h1{font-size:28px}.arfl-login-options{align-items:flex-start;flex-direction:column;gap:9px}}

/* ARFL 2.1.1 — locked playoff field placeholders */
.playoff-bye .placeholder-logo{font-size:10px;letter-spacing:.04em}
.playoff-bye-line{background:rgba(255,255,255,.025)}
.playoff-bye-line strong{color:#d9c58a}


/* =========================================================
   ARFL v2.1.2 — mobile alignment + commissioner access
   ========================================================= */
.arfl-app{width:100%;max-width:100%;overflow-x:hidden}
.arfl-view,.arfl-view>*{min-width:0;max-width:100%}
.arfl-commissioner-footer{max-width:1440px;margin:0 auto;padding:0 24px 34px;text-align:center}
.arfl-commissioner-link{display:inline-block;color:#6331bd!important;font-size:12px;font-weight:900;letter-spacing:.08em;text-decoration:underline!important;text-underline-offset:4px;text-transform:uppercase}
.arfl-commissioner-link:hover{color:#431d84!important}

@media(max-width:640px){
  html,body{max-width:100%;overflow-x:hidden}
  .arfl-app{overflow-x:hidden}
  .arfl-header{width:100%;max-width:100%;padding:0 12px!important;gap:8px!important}
  .arfl-brand{min-width:0!important;max-width:44%!important}
  .arfl-brand .arfl-logo{width:min(176px,100%)!important;height:auto!important;max-height:52px!important;object-fit:contain!important}
  .arfl-header>.arfl-header-auth{min-width:74px!important;height:42px!important;padding:0 12px!important}
  .arfl-header>.arfl-menu{width:52px!important;height:52px!important;flex:0 0 52px!important}
  .arfl-view{width:100%;max-width:100%;padding:12px 10px 64px!important}
  .hero,.panel,.standings-control-panel,.public-standings{width:100%;max-width:100%;min-width:0;margin-left:0;margin-right:0}
  .hero{padding-left:18px!important;padding-right:18px!important}
  .race-card{left:18px!important;right:18px!important;width:auto!important;max-width:none!important}
  .panel{padding:16px!important}
  .section-head{width:100%;min-width:0;flex-wrap:wrap}
  .public-standings .section-head{display:block!important}
  .public-standings .section-head .tabs{margin-top:16px!important}
  .tabs,.week-tabs{width:100%;max-width:100%;min-width:0;flex-wrap:wrap;overflow:visible}
  .tabs button,.week-tabs button{min-width:0;max-width:100%;white-space:normal}
  .public-standings .tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
  .public-standings .tabs button{width:100%;padding:12px 8px!important}
  .standings-selector{display:block!important;width:100%;max-width:100%}
  .standings-selector>div{width:100%;min-width:0;margin-bottom:16px}
  .conference-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
  .division-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px!important}
  .conference-tabs button,.division-tabs button{width:100%;padding:11px 6px!important;font-size:12px!important}
  .standings-context-head{display:block!important;margin-top:4px}
  .standings-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .standings-wrap table{min-width:560px}
  .arfl-commissioner-footer{padding:0 12px 28px}
}

/* v2.3.2 — canonical regular-season bye presentation */
.regular-season-bye{border-color:#d6a84c!important;background:linear-gradient(145deg,#fffdf5,#fff)!important}
.regular-season-bye .matchup-status span,.regular-season-bye .matchup-team.winner b{color:#765600!important}

/* v2.4 ARFL Smack Talk */
.smack-panel{margin-top:22px;background:linear-gradient(135deg,#1b1030 0%,#0e1626 58%,#17253b 100%);border-color:#43305e;box-shadow:0 18px 38px rgba(32,16,63,.16)}.smack-panel .section-head h2{color:#fff}.smack-panel .section-head span{color:#cdb9ff}.smack-panel .section-head>button{color:#e2d8ff}.talk-feed{display:grid;gap:12px}.talk-post{background:rgba(255,255,255,.96);border:1px solid rgba(255,255,255,.18);border-radius:10px;padding:16px}.talk-post.is-reported{border-color:#f0bb3e}.talk-author{display:flex;align-items:center;gap:10px}.talk-author>div{display:grid;gap:2px}.talk-author strong{font-size:14px}.talk-author small{font-size:11px;color:#667085}.talk-content{color:#20242d;line-height:1.5;margin:13px 0}.talk-content p{margin:0}.talk-replies{display:grid;gap:7px;margin:12px 0 0 14px}.talk-replies>div{background:#f1edfa;border-left:2px solid #7b3ff2;padding:9px 10px;font-size:13px;color:#424954}.talk-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin:0 0 14px}.talk-form textarea{min-height:56px;resize:vertical;border:1px solid #8b75ac;border-radius:8px;padding:10px;font:inherit;color:#20242d;background:#fff}.talk-form button{border:0;border-radius:8px;background:#a47aff;color:#170b2e;padding:10px 14px;font-weight:900;text-transform:uppercase;font-size:11px;cursor:pointer}.talk-post>.talk-form{margin:14px 0 0}.talk-gate{padding:13px;border:1px dashed #9e87c7;border-radius:8px;color:#eee8ff;margin-bottom:14px;font-size:13px}.smack-panel .empty-state{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.28);color:#fff}.smack-panel .empty-state p{color:#d8d1e9}@media(max-width:640px){.talk-form{grid-template-columns:1fr}.talk-form button{min-height:42px}}
.talk-actions{display:flex;gap:10px;margin-top:11px}.talk-action{margin:0}.talk-action button{border:0;background:none;padding:0;color:#5d2ca8;font-size:10px;text-transform:uppercase;letter-spacing:.08em;font-weight:800;cursor:pointer}
.talk-notices{display:flex;align-items:center;gap:10px;flex-wrap:wrap;background:#f1ebff;border:1px solid #c8b5f5;border-left:4px solid #7b3ff2;border-radius:10px;padding:14px 16px;margin-top:16px;color:#34205d}.talk-notices strong{font-size:11px;letter-spacing:.1em}.talk-notices span{font-size:13px}.talk-notices button{margin-left:auto;border:0;background:#5d2ca8;color:#fff;border-radius:6px;padding:8px 10px;font-weight:800;font-size:11px;cursor:pointer}
.arfl-app .panel.smack-panel{background:#17121f!important;border:1px solid #6d4aa3!important;border-top:5px solid #8b5cf6!important;box-shadow:0 14px 34px rgba(34,20,58,.22)!important}.arfl-app .smack-panel .empty-state{background:#231b2e!important;border-color:#66517d!important;color:#fff!important}.arfl-app .smack-panel .empty-state h3{color:#fff!important}.arfl-app .smack-panel .empty-state p{color:#cfc4dc!important}
.arfl-app .smack-panel .section-head h2{color:#fff!important}.arfl-app .smack-panel .section-head span{color:#cbb7ff!important}.arfl-app .smack-panel .section-head>button{color:#fff!important;border-bottom-color:#a783ff!important}.arfl-app .smack-panel .talk-form textarea{background:#292034!important;border:1px solid #66517d!important;color:#fff!important}.arfl-app .smack-panel .talk-form textarea::placeholder{color:#cfc4dc!important;opacity:1}.arfl-app .smack-panel .talk-form button{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:44px!important;background:#d1d5db!important;color:#151922!important;border:1px solid #f3f4f6!important;border-radius:6px!important;box-shadow:none!important;opacity:1!important}.arfl-app .smack-panel .talk-author strong,.arfl-app .smack-panel .talk-content{color:#17121f!important}

/* v2.5 standings board */
.arfl-app .standings-board{border:1px solid #dfe3e9;border-radius:10px;background:#fff;overflow:hidden}.arfl-app .standings-board table{border-collapse:separate;border-spacing:0;min-width:680px}.arfl-app .standings-board thead{background:#15121a}.arfl-app .standings-board th{padding:12px 16px;color:#bdb4c9!important;font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;text-align:center}.arfl-app .standings-board th:nth-child(2){text-align:left}.arfl-app .standings-board td{height:66px;padding:8px 16px;border-top:1px solid #edf0f3!important;text-align:center;vertical-align:middle;background:#fff;transition:background .15s ease}.arfl-app .standings-board tr:first-child td{border-top:0!important}.arfl-app .standings-board tr:hover td{background:#f7f4fc}.arfl-app .standings-board td:first-child{display:table-cell!important;width:56px;text-align:center}.arfl-app .standings-board .standing-team{display:flex!important;align-items:center;gap:12px;text-align:left}.arfl-app .standings-board .standing-team .team-logo-shell{width:42px;height:42px;padding:5px;box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--standing-team),#fff 76%)}.arfl-app .standings-board .standing-team>span{display:grid;gap:3px}.arfl-app .standings-board .standing-team strong{color:#151922!important;font-size:14px;font-weight:800}.arfl-app .standings-board .standing-team small{display:flex;gap:7px;align-items:center;color:#7b818d;font-size:10px;font-weight:700;letter-spacing:.03em}.arfl-app .standings-board .standing-team small em{font-style:normal;font-weight:500;color:#9aa1ad}.arfl-app .rank-block{display:inline-grid;place-items:center;width:30px;height:30px;border-radius:7px;background:#f0f2f5;color:#4e5664;font-size:12px;font-weight:900}.arfl-app .standing-rank-1 .rank-block{background:#1d1727;color:#fff;box-shadow:inset 0 -3px 0 #d6a84c}.arfl-app .standing-rank-2 .rank-block{background:#66707d;color:#fff}.arfl-app .standing-rank-3 .rank-block{background:#a76f49;color:#fff}.arfl-app .standing-rank-1 .standing-team strong{color:#5d2ca8!important}.arfl-app .standing-record{display:grid;gap:1px;justify-items:center}.arfl-app .standing-record b,.arfl-app .standing-pct{font-size:15px;color:#1f2530;font-weight:900}.arfl-app .standing-record small{font-size:8px;color:#8a919d;font-weight:800;letter-spacing:.12em}.arfl-app .streak-chip{display:inline-flex;min-width:34px;justify-content:center;padding:5px 8px;border-radius:999px;background:#eff1f4;color:#626b78;font-size:10px;font-weight:900}.arfl-app .streak-chip.is-win{background:#e2f6ec;color:#167548}@media(max-width:640px){.arfl-app .standings-board td{height:60px;padding:7px 9px}.arfl-app .standings-board .standing-team{gap:8px}.arfl-app .standings-board .standing-team .team-logo-shell{width:36px;height:36px}.arfl-app .standings-board .standing-team strong{font-size:12px}.arfl-app .standings-board .standing-team small em{display:none}}
.regular-season-bye .playoff-bye-line{background:#fff8dc!important}
.public-team-bye{border-color:#d6a84c!important;background:linear-gradient(90deg,#fff8dc,#fff)!important}
.public-team-bye .team-outcome{color:#765600!important}
