/* DFSFUN suite appearance. Shared tokens, stable semantics for warnings and errors. */
html[data-dfsfun-app]{color-scheme:dark;--df-bg:#0c100e;--df-panel:#151b18;--df-panel2:#1c2420;--df-bar:#101612;--df-line:#344038;--df-text:#edf2ec;--df-muted:#a5b1a7;--df-accent:#c3f45b;--df-on-accent:#19220d;--df-danger:#ff9098;--df-warning:#e8c475;--df-positive:#a8d5ad;--df-radius:12px;--bg:var(--df-bg);--paper:var(--df-bg);--panel:var(--df-panel);--panel2:var(--df-panel2);--line:var(--df-line);--line2:var(--df-line);--text:var(--df-text);--ink:var(--df-text);--muted:var(--df-muted);--green:var(--df-accent);--blue:var(--df-accent);--cyan:var(--df-accent);--yellow:var(--df-warning);--amber:var(--df-warning);--red:var(--df-danger)}
html[data-dfsfun-theme="blue"]{--df-bg:#0b111a;--df-panel:#141e2b;--df-panel2:#1c2938;--df-bar:#0e1824;--df-line:#34465c;--df-text:#edf3fc;--df-muted:#a3b4c9;--df-accent:#6bb5ff;--df-on-accent:#0b1c30;--df-positive:#9ccec9}
html[data-dfsfun-theme="purple"]{--df-bg:#140f20;--df-panel:#211a30;--df-panel2:#2b223d;--df-bar:#1a1428;--df-line:#4b3b60;--df-text:#f2edfc;--df-muted:#bdb0ce;--df-accent:#bda4ff;--df-on-accent:#24143e;--df-positive:#b5d3be}
html[data-dfsfun-app] body{background:var(--df-bg);color:var(--df-text);font-family:Inter,ui-sans-serif,system-ui,sans-serif}
html[data-dfsfun-app] :is(h1,h2,h3,h4,strong,b){color:inherit}
html[data-dfsfun-app] :is(a,.text-link,.text-button,.profile-trigger){color:var(--df-accent)}
html[data-dfsfun-app] :is(p.muted,.muted,.detail-note,.access-note,.eyebrow,.current span,.legal-links,.intro p,.hero p,.gamehead p,.pool-guide p,.player-name small,footer,.auth-card p,.panel p){color:var(--df-muted)}
html[data-dfsfun-app] :is(.eyebrow,.page-kicker){color:var(--df-accent)}
html[data-dfsfun-app] :is(.panel,.slate-card,.metrics article,.table-wrap,.lineup-card,.pool-guide,.pool-status,.pool-details[open],.empty,.auth-card,.price-card,.entitlement-card,.trend-card,.pool-card,.decision-card,.quality-card,.tier-card,.strategy-card){background:var(--df-panel);color:var(--df-text);border-color:var(--df-line);border-radius:var(--df-radius);box-shadow:none}
html[data-dfsfun-app] :is(input:not([type=checkbox]):not([type=radio]),select,textarea){background:var(--df-bg);color:var(--df-text);border-color:var(--df-line);border-radius:6px;color-scheme:dark}
html[data-dfsfun-app] :is(input,select,textarea):focus-visible{outline-color:var(--df-accent)}
html[data-dfsfun-app] :is(input[type=checkbox],input[type=radio]){accent-color:var(--df-accent)}
html[data-dfsfun-app] :is(button,.button,.primary){background:var(--df-panel2);color:var(--df-text);border-color:var(--df-line);box-shadow:none}
html[data-dfsfun-app] :is(button:hover,.button:hover){border-color:var(--df-accent);color:var(--df-text)}
html[data-dfsfun-app] :is(.primary,button.primary,.button,.nav-upgrade,.auth-form>button,.operation>button,.appearance-settings button){background:var(--df-accent);color:var(--df-on-accent)!important;border-color:var(--df-accent);border-radius:7px;font-weight:750;box-shadow:none}
html[data-dfsfun-app] :is(.primary:hover,.button:hover){background:color-mix(in srgb,var(--df-accent) 85%,var(--df-text));color:var(--df-on-accent)!important}
html[data-dfsfun-app] :is(button:disabled,.primary.disabled,.primary[aria-disabled=true]){background:var(--df-panel2);color:var(--df-muted)!important;border-color:var(--df-line);opacity:.7}
html[data-dfsfun-app] :is(.text-button,.link-button,.close){background:transparent;color:var(--df-accent);box-shadow:none}
html[data-dfsfun-app] :is(th,td,.group-rule,.switch-row,.slate-card footer,.lineup-card footer,.profile-controls,.profile-facts,.diagnostic-grid li,.panel-title-row,.analytics-list>div,.history-list>div){border-color:var(--df-line)}
html[data-dfsfun-app] th{background:var(--df-panel2);color:var(--df-muted)}
html[data-dfsfun-app] td{background:transparent;color:var(--df-text)}
html[data-dfsfun-app] :is(tbody tr:hover,.pick-row:hover){background:var(--df-panel2)}
html[data-dfsfun-app] :is(.tag,.slate-card .tag,.subtle-tag,.pill,.mini-badge,.dvp,.exposure-strip span,.movement-flip){background:var(--df-panel2);color:var(--df-accent);border-color:var(--df-line)}
html[data-dfsfun-app] :is(.dvp.good,.pill.ok,.quality.ok,.pool-health.good,.result.win){background:color-mix(in srgb,var(--df-positive) 12%,var(--df-panel));color:var(--df-positive)}
html[data-dfsfun-app] :is(.dvp.bad,.pool-health.bad,.pill.bad,.message.error,.pool-error,.result.loss){background:color-mix(in srgb,var(--df-danger) 9%,var(--df-panel));color:var(--df-danger)}
html[data-dfsfun-app] :is(.notice,.danger-note,.premium-callout,.locked-strip,#preparationAlert){background:color-mix(in srgb,var(--df-warning) 8%,var(--df-panel));color:var(--df-warning);border-color:color-mix(in srgb,var(--df-warning) 40%,var(--df-line))}
html[data-dfsfun-app] :is(.preset-row button,.actions button,.save-row button,.user-row button,.pool-status button:not(.text-button)){background:var(--df-panel2);color:var(--df-text);border-color:var(--df-line)}
html[data-dfsfun-app] :is(.preset-row .active,.actions button.lock.on,.actions button.group.on){background:var(--df-accent);color:var(--df-on-accent);border-color:var(--df-accent)}
html[data-dfsfun-app] .actions button.exclude.on{background:color-mix(in srgb,var(--df-danger) 15%,var(--df-panel));color:var(--df-danger);border-color:var(--df-danger)}
html[data-dfsfun-app] :is(.context-bar,.job-progress,.invite-result code,.roster,.readiness>div){background:var(--df-panel2);color:var(--df-text);border-color:var(--df-line)}
html[data-dfsfun-app] :is(.job-progress i,.progress-bar){background:var(--df-accent)}
html[data-dfsfun-app] :is(.job-progress span,.roster b,.analytics-list strong,.pool-status small,.pool-status>div>span,.current strong,.profile-facts dd){color:var(--df-text)}
html[data-dfsfun-app] :is(.context-bar small,.profile-metrics small,.summary dt,.profile-facts dt,.pool-guide dt,.guide-hint){color:var(--df-muted)}
html[data-dfsfun-app] dialog,html[data-dfsfun-app] #playerProfile{background:var(--df-panel);color:var(--df-text);border:1px solid var(--df-line);box-shadow:0 20px 60px #0005}
html[data-dfsfun-app] dialog::backdrop{background:#0009}
html[data-dfsfun-app] :is(#profileSubtitle,dialog p,.auth-card label){color:var(--df-muted)}
html[data-dfsfun-app] :is(#playerProfile h3,.profile-controls){border-color:var(--df-line)}
html[data-dfsfun-app] :is(#profileLock[aria-pressed=true],#profileGroup[aria-pressed=true]){background:var(--df-accent);color:var(--df-on-accent)}
html[data-dfsfun-app] #profileExclude[aria-pressed=true]{background:var(--df-panel2);color:var(--df-danger)}
/* ATS page chrome. */
html[data-dfsfun-app="ats"] .site-header{background:var(--df-bar);border-color:var(--df-line);backdrop-filter:none}
html[data-dfsfun-app="ats"] .site-header nav a{color:var(--df-muted)}
html[data-dfsfun-app="ats"] .site-header nav a:hover{color:var(--df-accent)}
html[data-dfsfun-app="ats"] :is(.subbrand,.subbrand span,.nav-user){color:var(--df-muted)}
html[data-dfsfun-app="ats"] .auth-card{border-top:3px solid var(--df-accent)}
html[data-dfsfun-app="ats"] .tooltip-portal{background:var(--df-panel2);color:var(--df-text);border-color:var(--df-line)}
/* DFS workspace and auth. */
html[data-dfsfun-app="dfs"] body>aside{background:var(--df-bar);color:var(--df-text);border-color:var(--df-line)}
html[data-dfsfun-app="dfs"] :is(.brand small,.engine small){color:var(--df-muted)}
html[data-dfsfun-app="dfs"] .brand .mark{background:var(--df-accent);color:var(--df-on-accent)}
html[data-dfsfun-app="dfs"] body>aside :is(.brand,.engine){border-color:var(--df-line)}
html[data-dfsfun-app="dfs"] body>aside nav button{background:transparent;color:var(--df-muted);border:0}
html[data-dfsfun-app="dfs"] body>aside nav button.active{background:color-mix(in srgb,var(--df-accent) 14%,var(--df-bar));color:var(--df-accent);box-shadow:inset 3px 0 var(--df-accent)}
html[data-dfsfun-app="dfs"] .engine i{background:var(--df-accent)}
html[data-dfsfun-app="dfs"] .engine button{color:var(--df-muted);background:transparent;border-color:var(--df-line)}
html[data-dfsfun-app="dfs"] .auth-gate{background:radial-gradient(ellipse at top,color-mix(in srgb,var(--df-accent) 7%,var(--df-bg)),var(--df-bg))}
html[data-dfsfun-app="dfs"] :is(.search,.account>button,.save-row input,.form-grid input,.form-grid select,.group-rule input,.summary select){background:var(--df-panel);color:var(--df-text);border-color:var(--df-line)}
html[data-dfsfun-app="dfs"] .auth-card :is(h1,.brand strong){color:var(--df-text)}
html[data-dfsfun-app="dfs"] .slate-card:hover{border-color:var(--df-accent)}
html[data-dfsfun-app="dfs"] .dvp-legend i{background:var(--df-muted)}
html[data-dfsfun-app="dfs"] .dvp-legend i.good{background:var(--df-positive)}
html[data-dfsfun-app="dfs"] .dvp-legend i.bad{background:var(--df-danger)}
/* The Explore bar uses the exact same theme as both workspaces. */
html[data-dfsfun-app] .suite-bar{--suite-ink:var(--df-text);--suite-muted:var(--df-muted);background:var(--df-bar);color:var(--df-text);border-color:var(--df-line)}
html[data-dfsfun-app] .suite-bar .suite-brand{color:var(--df-text);font-style:italic;letter-spacing:-1px}
html[data-dfsfun-app] .suite-brand span{color:var(--df-accent)}
html[data-dfsfun-app] .suite-switcher>summary{background:var(--df-panel);color:var(--df-text);border-color:var(--df-line)}
html[data-dfsfun-app] .suite-switcher>summary:hover{background:var(--df-panel2);border-color:var(--df-accent)}
html[data-dfsfun-app] .suite-switcher>summary small{color:var(--df-muted)}
html[data-dfsfun-app] .suite-bar .suite-menu{background:var(--df-panel);color:var(--df-text);border-color:var(--df-line);box-shadow:0 18px 45px #0006}
html[data-dfsfun-app] .suite-bar .suite-menu a{color:var(--df-text)}
html[data-dfsfun-app] .suite-bar .suite-menu a:hover,html[data-dfsfun-app] .suite-bar .suite-menu a[aria-current="page"]{background:color-mix(in srgb,var(--df-accent) 12%,var(--df-panel));color:var(--df-text)}
html[data-dfsfun-app] .suite-icon{background:var(--df-panel2);color:var(--df-accent);border-color:var(--df-line)}
html[data-dfsfun-app] :is(.suite-product-copy small,.suite-caption,.suite-bar .suite-planned){color:var(--df-muted)}
html[data-dfsfun-app] .suite-status{background:var(--df-accent);color:var(--df-on-accent)}
html[data-dfsfun-app] .suite-planned .suite-status,html[data-dfsfun-app] .suite-planned .suite-icon{background:var(--df-panel2);color:var(--df-muted);border-color:var(--df-line)}
html[data-dfsfun-app] .suite-menu .suite-section-label{border-color:var(--df-line);color:var(--df-muted)}
/* Appearance settings live with membership, not in the betting workflow. */
html[data-dfsfun-app] .appearance-settings{border-color:var(--df-line);margin:20px 0;padding-top:18px}
html[data-dfsfun-app] .appearance-settings form{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:16px}
html[data-dfsfun-app] .appearance-settings select{min-height:44px;max-width:100%;padding:8px 12px}
html[data-dfsfun-app] .appearance-settings button{min-height:44px;padding:9px 16px}
html[data-dfsfun-app] .appearance-settings p{font-size:13px;color:var(--df-muted)}
html[data-dfsfun-app] .appearance-link{display:inline-flex;min-height:44px;align-items:center;font-weight:650}
@media(max-width:600px){html[data-dfsfun-app] .appearance-settings form{align-items:stretch;flex-direction:column}}

html[data-dfsfun-app="ats"] .ats-site-label{font-size:16px;font-weight:750;color:var(--df-text);letter-spacing:-.02em}

html[data-dfsfun-app] body.notice-page{display:block}
html[data-dfsfun-app] .notice-page main{background:var(--df-panel);color:var(--df-text);max-width:900px;margin:30px auto;border:1px solid var(--df-line);border-radius:12px}
html[data-dfsfun-app] .notice-page p{color:var(--df-muted)}
