/* ============================================================================
   FantasyDailies - Design One skin. ONE type scale (5 sizes, no more),
   symmetric grid, one button family, boxes only where earned. Scoped to
   body.fdx so it cleanly overrides the old CSS without touching markup or JS.
   ============================================================================ */
body.fdx{
  /* palette */
  --ink:#0b1220; --royal:#1b3ad1; --electric:#2f6dff; --grass:#0a8347; --gold:#b9860f; --cold:#b0344a;
  --paper:#f6f8fc; --card:#fff; --line:#e7ebf2; --line-2:#f1f4f8;
  --t1:#0b1220; --t2:#56657f; --t3:#94a0b4;
  --disp:'Archivo',system-ui,sans-serif; --body:'Inter',system-ui,sans-serif; --mono:'IBM Plex Mono',monospace;
  /* THE FIVE SIZES - nothing on the page may use anything else */
  --fs-display:clamp(25px,6.4vw,31px);
  --fs-title:16px;
  --fs-body:14px;
  --fs-label:11px;
  --fs-micro:10px;
  /* one spacing step + one radius */
  --s1:4px; --s2:8px; --s3:12px; --s4:16px; --s5:20px; --s6:24px; --s7:32px;
  --r:14px; --rs:10px;
  --shadow:0 1px 2px rgba(16,28,56,.04),0 6px 18px rgba(16,28,56,.05);

  background:var(--paper)!important; color:var(--t1)!important;
  font-family:var(--body); font-size:var(--fs-body); line-height:1.5; -webkit-font-smoothing:antialiased;
}
body.fdx *{box-sizing:border-box;}
body.fdx main{max-width:600px;margin:0 auto;padding:0 var(--s5) var(--s7);}

/* ---- type: only the five sizes ---- */
body.fdx h1{font-family:var(--disp);font-weight:800;font-size:var(--fs-display);letter-spacing:-.025em;line-height:1.06;color:var(--t1);margin:0;}
body.fdx h2,body.fdx h3,body.fdx h4{font-family:var(--disp);font-weight:700;font-size:var(--fs-title);letter-spacing:-.01em;line-height:1.25;color:var(--t1);margin:0;}
body.fdx p{font-size:var(--fs-body);color:var(--t2);margin:0;}

/* ---- masthead: slim, symmetric, logo left / nav / actions right ---- */
body.fdx .mast{position:sticky;top:0;z-index:30;background:rgba(246,248,252,.85);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);}
body.fdx .mast-in{max-width:600px;margin:0 auto;padding:11px var(--s5);display:flex;align-items:center;gap:var(--s3);flex-wrap:wrap;}
body.fdx .brand{display:inline-flex;align-items:center;flex:0 0 auto;}
body.fdx .logo-img{height:30px;width:auto;display:block;}
body.fdx .nav{order:3;flex-basis:100%;display:flex;gap:var(--s4);margin:8px 0 0;overflow-x:auto;scrollbar-width:none;}
body.fdx .nav::-webkit-scrollbar{display:none;}
body.fdx .nav a{font-family:var(--disp);font-weight:600;font-size:13px;color:var(--t3);text-decoration:none;white-space:nowrap;padding:2px 0;transition:color .15s;}
body.fdx .nav a:hover{color:var(--t1);}
body.fdx .mast-actions{display:flex;gap:var(--s2);flex:0 0 auto;margin-left:auto;}

/* ---- ONE button family: same height, radius, font ---- */
body.fdx .refresh,body.fdx .install-btn{font-family:var(--disp);font-weight:700;font-size:13px;height:34px;padding:0 13px;border-radius:var(--rs);border:1px solid var(--line);background:var(--card);color:var(--t1);cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:.15s;}
body.fdx .refresh:hover,body.fdx .install-btn:hover{border-color:#d6dce6;}
body.fdx .refresh{background:linear-gradient(135deg,var(--royal),var(--electric));color:#fff;border-color:transparent;}

/* ---- controls / league chips: one symmetric pill row ---- */
body.fdx .controls{max-width:none;margin:var(--s5) 0 var(--s2);padding:0;}
body.fdx .controls-in{display:flex;align-items:center;justify-content:space-between;gap:var(--s3);}
body.fdx .chips{display:inline-flex;background:#eef1f7;border:1px solid var(--line);border-radius:var(--rs);padding:3px;gap:2px;}
body.fdx .chip{font-family:var(--disp);font-weight:700;font-size:12px;color:var(--t2);background:transparent;border:0;height:30px;padding:0 16px;border-radius:8px;cursor:pointer;}
body.fdx .chip[aria-pressed="true"]{background:var(--card);color:var(--ink);box-shadow:0 1px 3px rgba(16,28,56,.1);}
body.fdx .updated{font-family:var(--mono);font-size:var(--fs-label);color:var(--t3);letter-spacing:.02em;}

/* ---- promo slot: restrained inline accent, not a chunky banner ---- */
body.fdx .ad-slot{display:flex;align-items:center;gap:var(--s3);margin:var(--s5) 0 0;padding:var(--s3) var(--s4);background:var(--card);border:1px solid var(--line);border-left:3px solid var(--royal);border-radius:var(--r);text-decoration:none;box-shadow:var(--shadow);}
body.fdx .ad-badge{font-family:var(--mono);font-weight:600;font-size:var(--fs-micro);letter-spacing:.12em;color:var(--electric);background:#eef3ff;border:1px solid rgba(47,109,255,.25);padding:3px 7px;border-radius:6px;flex:0 0 auto;}
body.fdx .ad-tx{flex:1;min-width:0;}
body.fdx .ad-tx b{font-family:var(--disp);font-weight:700;font-size:var(--fs-body);color:var(--t1);display:block;}
body.fdx .ad-tx s{font-size:var(--fs-label);color:var(--t2);text-decoration:none;}
body.fdx .ad-cta{font-family:var(--disp);font-weight:700;font-size:13px;color:var(--electric);flex:0 0 auto;}

/* ---- hero: refined, not a heavy gradient box ---- */
body.fdx .fd-hero{position:relative;margin:var(--s5) 0;padding:var(--s6) var(--s5);background:linear-gradient(135deg,#13239b,var(--royal) 52%,var(--electric));border:0;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(27,58,209,.30);}
body.fdx .fd-hero .sheen{display:block;position:absolute;inset:0;background:radial-gradient(120% 90% at 85% -10%,rgba(255,255,255,.18),transparent 60%);pointer-events:none;}
body.fdx .fd-hero .in{position:relative;padding:0;}
body.fdx .fd-hero .eyebrow{font-family:var(--mono);font-weight:600;font-size:var(--fs-label);letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:var(--s3);}
body.fdx .fd-hero h1{font-size:var(--fs-display);color:#fff;}
body.fdx .fd-hero h1 .gold-text{color:#ffd24a;}
body.fdx .fd-hero p{display:block!important;margin-top:var(--s3);font-size:var(--fs-body);color:rgba(255,255,255,.82);max-width:54ch;}
body.fdx .fd-hero .strip{display:grid!important;grid-template-columns:repeat(3,1fr);gap:var(--s2);margin-top:var(--s5);}
body.fdx .fd-hero .strip>div{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:var(--rs);padding:var(--s3);text-align:center;}
body.fdx .fd-hero .strip .k{display:block;font-family:var(--mono);font-size:var(--fs-micro);letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.7);margin-bottom:3px;}
body.fdx .fd-hero .strip b{font-family:var(--disp);font-weight:700;font-size:var(--fs-title);color:#fff;}
body.fdx .fd-hero .strip b.g{color:#ffd24a;}

/* ---- SEO intro block (force into the scale) ---- */
body.fdx main>section>h2[style]{font-size:var(--fs-title)!important;color:var(--t1)!important;}
body.fdx main>section>p[style]{font-size:var(--fs-body)!important;color:var(--t2)!important;}

/* ---- lineup brief: inline accent-rail, not a banner ---- */
body.fdx .fdbrief{background:var(--card);border:1px solid var(--line);border-left:3px solid var(--royal);border-radius:var(--r);padding:var(--s4);margin:var(--s5) 0 0;box-shadow:var(--shadow);}
body.fdx .fdbrief .bh{font-family:var(--mono);font-weight:600;font-size:var(--fs-label);letter-spacing:.12em;text-transform:uppercase;color:var(--royal);display:flex;align-items:center;gap:var(--s2);margin-bottom:var(--s2);}
body.fdx .fdbrief .bc{font-size:var(--fs-micro);color:var(--t3);border:1px solid var(--line);border-radius:6px;padding:1px 6px;text-transform:none;letter-spacing:.04em;}
body.fdx .fdbrief p{font-size:var(--fs-body);color:var(--t2);}
body.fdx .fdbrief .egl{display:inline-block;margin-top:var(--s3);font-family:var(--disp);font-weight:700;font-size:13px;color:var(--electric);text-decoration:none;}

/* ---- datebar: symmetric, equal arrows, centered control ---- */
body.fdx .fd-datebar{display:flex;align-items:center;gap:var(--s2);margin:var(--s5) 0 var(--s4);}
body.fdx .fd-dnav{width:38px;height:38px;flex:0 0 auto;border:1px solid var(--line);background:var(--card);border-radius:var(--rs);font-size:18px;line-height:1;color:var(--electric);font-weight:700;cursor:pointer;padding:0;display:inline-flex;align-items:center;justify-content:center;}
body.fdx .fd-dctr{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;}
body.fdx .fd-dinput{width:100%;max-width:200px;height:38px;border:1px solid var(--line);border-radius:var(--rs);padding:0 10px;font-family:var(--mono);font-weight:600;font-size:13px;color:var(--ink);background:var(--card);text-align:center;-webkit-appearance:none;appearance:none;}
body.fdx .fd-dlbl{font-family:var(--mono);font-size:var(--fs-label);letter-spacing:.08em;text-transform:uppercase;color:var(--t3);}
body.fdx .fd-dtoday{flex:0 0 auto;height:38px;padding:0 14px;border:1px solid var(--electric);background:#eef3ff;color:var(--electric);border-radius:var(--rs);font-family:var(--disp);font-weight:700;font-size:13px;cursor:pointer;}
body.fdx .fd-dtoday[hidden]{display:none;}

/* ---- game cards: the one earned box, all identical ---- */
body.fdx .games{display:flex;flex-direction:column;gap:var(--s3);}
body.fdx .game{background:var(--card);border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);overflow:hidden;}
body.fdx .game-head{display:flex;align-items:center;gap:var(--s3);padding:var(--s3) var(--s4);background:linear-gradient(135deg,var(--royal),var(--electric));}
body.fdx .match{flex:1;min-width:0;display:flex;align-items:center;gap:var(--s2);font-family:var(--disp);font-weight:700;font-size:var(--fs-title);color:#fff;}
body.fdx .match .tlogo{width:20px;height:20px;object-fit:contain;vertical-align:middle;background:rgba(255,255,255,.9);border-radius:4px;padding:1px;}
body.fdx .match .at{color:rgba(255,255,255,.6);font-weight:600;margin:0 2px;}
body.fdx .gtime{font-family:var(--mono);font-size:var(--fs-label);color:rgba(255,255,255,.8);letter-spacing:.02em;flex:0 0 auto;}
body.fdx .gtime.live{color:#ffd24a;font-weight:700;}
body.fdx .gtime.soon{color:rgba(255,255,255,.92);font-weight:600;}
body.fdx .game-head .fd-share{color:rgba(255,255,255,.85);}
body.fdx .game-head .fd-share:hover{color:#fff;background:rgba(255,255,255,.2);}

/* ---- lineups: two perfectly equal columns ---- */
body.fdx .lineups2{display:grid;grid-template-columns:1fr 1fr;}
body.fdx .lineup{padding:var(--s4);}
body.fdx .lineup:first-child{border-right:1px solid var(--line-2);}
body.fdx .lineup h4{display:flex;align-items:center;gap:var(--s2);font-family:var(--disp);font-weight:700;font-size:var(--fs-body);color:var(--t1);margin-bottom:var(--s2);}
body.fdx .lineup h4 .tlogo{width:18px;height:18px;object-fit:contain;}
body.fdx .lineup .lbadge{margin-bottom:var(--s3);}
body.fdx .lstat{font-family:var(--mono);font-weight:600;font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;padding:2px 7px;border-radius:6px;display:inline-block;}
body.fdx .lstat.conf{color:var(--electric);background:#eef3ff;}
body.fdx .lstat.proj{color:var(--t3);background:var(--line-2);}
body.fdx .lineup .prob{font-family:var(--mono);font-size:var(--fs-label);color:var(--t2);margin-bottom:var(--s2);}
body.fdx .lineup ol{list-style:none;counter-reset:bat;margin:0;padding:0;}
body.fdx .lineup ol li{counter-increment:bat;font-size:var(--fs-body);color:var(--t1);padding:4px 0;border-top:1px solid var(--line-2);display:flex;align-items:baseline;gap:var(--s2);}
body.fdx .lineup ol li:first-child{border-top:0;}
body.fdx .lineup ol li::before{content:counter(bat);font-family:var(--mono);font-size:var(--fs-micro);color:var(--t3);width:14px;flex:0 0 auto;}
body.fdx .lineup ol li .pos{margin-left:auto;font-family:var(--mono);font-size:var(--fs-micro);color:var(--t3);}
body.fdx .lineup .notposted{font-size:var(--fs-label);color:var(--t3);line-height:1.5;}

/* ---- arb / cross-book: restrained card, royal rail ---- */
body.fdx .game-arb:empty{display:none;}
body.fdx .arb-banner{margin:0;border:0;border-top:1px solid var(--line-2);box-shadow:none;border-radius:0;}
body.fdx .arb-banner-top{display:flex;align-items:center;gap:var(--s2);padding:7px var(--s4);background:linear-gradient(135deg,#caa11e,#b8860b);color:#fff;font-family:var(--disp);font-weight:800;font-size:12px;letter-spacing:.04em;text-transform:uppercase;}
body.fdx .arb-banner-top .fd-share{order:9;margin-left:auto;color:#fff;}
body.fdx .arb-banner-top .fd-share:hover{color:#fff;background:rgba(255,255,255,.22);}
body.fdx .arb-edge .arb-banner-top{background:linear-gradient(135deg,#0ea65a,#0a8347);}
body.fdx .arb-edge .arb-tag{color:#0a8347;}
body.fdx .arb-banner-body{padding:0 var(--s4) var(--s3);font-size:var(--fs-label);color:var(--t2);line-height:1.5;}
body.fdx .arb-banner-body b{color:var(--t1);font-family:var(--mono);}
body.fdx .bk-pill{font-family:var(--mono);font-size:var(--fs-micro);font-weight:700;color:#fff;background:#0a8347;border:0;padding:1px 5px;border-radius:4px;letter-spacing:.04em;text-transform:uppercase;vertical-align:middle;}
body.fdx .fd-share{flex:0 0 auto;margin-left:auto;border:0;background:transparent;color:var(--t3);cursor:pointer;padding:4px;border-radius:6px;line-height:0;}
body.fdx .fd-share:hover{color:var(--electric);background:var(--line-2);}
body.fdx .arb-more{font-family:var(--mono);font-size:var(--fs-label);font-weight:600;color:var(--electric);background:none;border:0;cursor:pointer;padding:0;margin-top:var(--s2);}
body.fdx .arb-extra{padding:0 var(--s4) var(--s3);}
body.fdx .arb-box{font-family:var(--mono);font-size:var(--fs-micro);color:var(--t2);padding-top:var(--s2);}
body.fdx .arb-box .arb-tag,body.fdx .arb-tag{font-family:var(--disp);font-weight:800;color:#b8860b;text-transform:uppercase;letter-spacing:.03em;}

/* ---- states ---- */
body.fdx .state{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:var(--s7) var(--s5);text-align:center;box-shadow:var(--shadow);}
body.fdx .state h2{font-size:var(--fs-title);margin-bottom:var(--s2);}
body.fdx .state p{font-size:var(--fs-body);color:var(--t2);max-width:46ch;margin:0 auto;}
body.fdx .spinner{width:26px;height:26px;border:3px solid var(--line);border-top-color:var(--electric);border-radius:50%;animation:fdspin .8s linear infinite;margin:0 auto var(--s3);}
@keyframes fdspin{to{transform:rotate(360deg);}}

/* ---- footer ---- */
body.fdx .site-foot{max-width:600px;margin:var(--s7) auto 0;padding:var(--s5);border-top:1px solid var(--line);}
body.fdx .foot-top{display:flex;flex-direction:column;gap:var(--s3);}
body.fdx .foot-brand img{height:26px;width:auto;}
body.fdx .foot-nav{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);}
body.fdx .foot-nav a{font-family:var(--disp);font-weight:600;font-size:13px;color:var(--t2);text-decoration:none;}
body.fdx .foot-nav a:hover{color:var(--electric);}

@media(prefers-reduced-motion:reduce){body.fdx *{animation:none!important;transition:none!important;}}

/* ---- parlay page hero: match the homepage royal hero (was dark/broken under the skin) ---- */
body.fdx .ply-hero{position:relative;margin:var(--s5) 0;padding:var(--s6) var(--s5);background:linear-gradient(135deg,#13239b,var(--royal) 52%,var(--electric));border:0;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(27,58,209,.30);}
body.fdx .ply-hero .ply-eyebrow{font-family:var(--mono);font-weight:600;font-size:var(--fs-label);letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.75);margin-bottom:var(--s3);}
body.fdx .ply-hero h1{font-size:var(--fs-display);color:#fff;line-height:1.08;}
body.fdx .ply-hero h1 .g{color:#ffd24a;}
body.fdx .ply-hero .credit{margin-top:var(--s3);font-family:var(--mono);font-size:var(--fs-label);color:rgba(255,255,255,.82);}
body.fdx .ply-hero .credit b{color:#fff;}

/* ---- dfsedge + calculator custom heroes: match the homepage royal hero ---- */
body.fdx .dfs-hero,body.fdx .calc-hero{position:relative;margin:var(--s5) 0;padding:var(--s6) var(--s5);background:linear-gradient(135deg,#13239b,var(--royal) 52%,var(--electric));border:0;border-radius:18px;overflow:hidden;box-shadow:0 14px 34px rgba(27,58,209,.30);}
body.fdx .dfs-hero h1,body.fdx .calc-hero h1{font-size:var(--fs-display);color:#fff;line-height:1.08;}
body.fdx .dfs-hero h1 .g{color:#ffd24a;}
body.fdx .dfs-hero p,body.fdx .calc-hero p{margin-top:var(--s3);font-size:var(--fs-body);color:rgba(255,255,255,.85);max-width:60ch;}
body.fdx .dfs-hero .dfs-eyebrow{color:rgba(255,255,255,.78);margin-bottom:var(--s3);}
body.fdx .dfs-hero .dfs-credit{margin-top:var(--s3);font-family:var(--mono);font-size:var(--fs-label);color:rgba(255,255,255,.85);}
body.fdx .dfs-hero .dfs-credit b{color:#fff;}

/* ---- section headers + lead text (dfsedge, and any page using .sec/.seclead) ---- */
/* the global p/h reset stripped these; restore vertical rhythm */
body.fdx .sec{display:flex;align-items:center;flex-wrap:wrap;gap:var(--s2);margin:var(--s6) 0 var(--s2);font-family:var(--disp);font-weight:700;font-size:var(--fs-title);color:var(--t1);}
body.fdx .seclead{font-size:var(--fs-body);color:var(--t2);line-height:1.55;margin:0 0 var(--s4);}
body.fdx .sec .tag{font-family:var(--mono);font-weight:600;font-size:var(--fs-micro);letter-spacing:.08em;text-transform:uppercase;color:var(--t3);background:var(--line-2);border:1px solid var(--line);padding:2px 7px;border-radius:6px;}
body.fdx .sec .tag.gold{color:#b8860b;background:rgba(185,134,15,.1);border-color:rgba(185,134,15,.28);}
body.fdx .muted-card{background:var(--card);border:1px solid var(--line);border-radius:var(--r);padding:var(--s5);font-size:var(--fs-body);color:var(--t2);line-height:1.55;box-shadow:var(--shadow);margin:var(--s2) 0;}
body.fdx .pulse-wrap{margin-top:var(--s3);}
body.fdx .dfs-search-wrap{margin:var(--s2) 0 var(--s4);}
