/* iLottoPick — shared stats-page styles (/assets/ilp-stats.css) */

:root{
  --navy:#0d2b55; --blue:#1a56a0; --sky:#2e8bc0; --gold:#f5a623;
  --red:#d63031; --green:#00897b; --white:#fff; --off:#f4f7fb;
  --muted:#6b7a99; --border:#d4ddf0; --radius:14px; --shadow:0 4px 24px rgba(13,43,85,.12);
  --ink:#0d2b55; --header-h:64px;
  /* accent defaults (overridden per game below) */
  --accent:#1a56a0; --accent-bg:linear-gradient(160deg,#5baaff,#1565c0); --accent-text:#fff; --accent-border:#0d3b7a; --accent-ink:#1a56a0;
}
body.game-powerball{--accent:#d63031;--accent-bg:linear-gradient(160deg,#ff7a7a,#d63031);--accent-text:#fff;--accent-border:#b71c1c;--accent-ink:#c0392b;}
body.game-megamillions{--accent:#f5a623;--accent-bg:linear-gradient(160deg,#ffd27a,#f5a623);--accent-text:#5a3d00;--accent-border:#c98a12;--accent-ink:#a4700d;}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:'Nunito',sans-serif;color:var(--ink);background:var(--off);line-height:1.6;}
h1,h2,h3{font-family:'Montserrat',sans-serif;font-weight:900;line-height:1.1;letter-spacing:-.01em;}
a{color:var(--blue);text-decoration:none;}
.wrap{max-width:1060px;margin:0 auto;padding:0 20px;}

/* ===== header / nav — matches the main site ===== */
header{background:linear-gradient(135deg,var(--navy) 0%,var(--blue) 100%);color:var(--white);padding:0 1.5rem;box-shadow:0 3px 16px rgba(0,0,0,.25);position:sticky;top:0;z-index:100;}
.header-inner{max-width:1060px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:64px;gap:1rem;}
.logo{display:flex;align-items:center;gap:.5rem;text-decoration:none;}
.logo-svg{height:44px;width:auto;display:block;}
nav{display:flex;gap:.25rem;}
nav a{color:rgba(255,255,255,.8);text-decoration:none;font-size:.8rem;font-weight:700;padding:.4rem .7rem;border-radius:8px;transition:background .2s,color .2s;white-space:nowrap;}
nav a:hover{background:rgba(255,255,255,.15);color:var(--white);}
nav a.active{background:rgba(255,255,255,.18);color:var(--white);}
.nav-toggle{display:none;background:none;border:none;color:var(--white);font-size:1.6rem;line-height:1;cursor:pointer;padding:.15rem .4rem;border-radius:8px;}
.nav-toggle:hover{background:rgba(255,255,255,.15);}
@media (max-width:600px){
  .nav-toggle{display:block;}
  nav{position:absolute;top:var(--header-h);left:0;right:0;flex-direction:column;gap:0;background:var(--navy);padding:.4rem 0;box-shadow:0 10px 24px rgba(0,0,0,.35);border-top:1px solid rgba(255,255,255,.08);display:none;z-index:95;}
  nav.open{display:flex;}
  nav a{width:100%;border-radius:0;padding:.9rem 1.5rem;font-size:.95rem;}
}

/* ===== hero ===== */
.hero{background:linear-gradient(160deg,var(--navy),var(--blue) 60%,var(--sky));color:#fff;padding:42px 0 50px;position:relative;overflow:hidden;}
.hero::after{content:"";position:absolute;right:-90px;top:-90px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 30% 30%,rgba(245,166,35,.38),transparent 60%);}
.hero .wrap{position:relative;z-index:1;}
.official{display:inline-flex;align-items:center;gap:10px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.2);padding:7px 13px;border-radius:11px;margin-bottom:16px;}
.official .rc-logo{height: 64px;}
.official .lbl{font-size:.7rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:#bcd0ee;}
.rc-logo{height:32px;width:auto;display:block;border-radius:4px;cursor:pointer;}
.eyebrow{display:inline-flex;align-items:center;gap:8px;font-weight:800;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);}
.eyebrow .dot{width:9px;height:9px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px rgba(255,255,255,.14);}
.hero h1{font-size:clamp(2rem,6vw,3.5rem);margin:.35em 0 .2em;color:#fff;}
.hero p.lead{font-size:1.1rem;max-width:620px;color:#e6eefb;font-weight:600;}
.facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;}
.fact{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:12px;padding:11px 15px;}
.fact .n{font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.1rem;display:block;}
.fact .l{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:#bcd0ee;font-weight:700;}
.cta{display:inline-flex;align-items:center;gap:9px;margin-top:26px;background:var(--gold);color:var(--navy);font-family:'Montserrat',sans-serif;font-weight:900;font-size:1rem;padding:13px 25px;border-radius:12px;box-shadow:0 6px 18px rgba(245,166,35,.4);transition:transform .15s;}
.cta:hover{transform:translateY(-2px);}

/* ===== section scaffolding ===== */
section.block{padding:40px 0;}
.sec-head{max-width:680px;margin-bottom:22px;}
.sec-head h2{font-size:clamp(1.45rem,3.5vw,2.1rem);margin:0 0 .25em;}
.sec-head p{margin:0;color:var(--muted);font-weight:600;}
.card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);}

/* ===== honest callout ===== */
.honest{background:#fff;border:1px solid var(--border);border-left:6px solid var(--green);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px 24px;display:flex;gap:18px;align-items:flex-start;}
.honest .mark{flex:0 0 auto;width:42px;height:42px;border-radius:50%;background:rgba(0,137,123,.12);color:var(--green);display:grid;place-items:center;font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.3rem;}
.honest h3{margin:0 0 .35em;font-size:1.12rem;color:var(--green);}
.honest p{margin:0 0 .6em;} .honest p:last-child{margin:0;}

/* ===== leaderboards ===== */
.lead-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
@media(max-width:680px){.lead-grid{grid-template-columns:1fr;}}
.lead-card{padding:18px 20px;}
.lead-card h3{font-size:.85rem;letter-spacing:.06em;text-transform:uppercase;margin:0 0 18px;font-family:'Nunito',sans-serif;font-weight:800;}
.lead-card h3.hot{color:var(--gold);} .lead-card h3.cold{color:var(--sky);}
.balls{display:flex;gap:12px;flex-wrap:wrap;}
.ball{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.15rem;background:#fff;color:var(--navy);border:2px solid var(--border);box-shadow:0 2px 6px rgba(13,43,85,.12);position:relative;}
.ball.pb{background:var(--accent-bg);color:var(--accent-text);border-color:var(--accent-border);}
.ball .cnt{position:absolute;bottom:-19px;left:50%;transform:translateX(-50%);font-family:'Nunito',sans-serif;font-weight:700;font-size:.72rem;color:var(--muted);white-space:nowrap;}
.ball.gold{border-color:var(--gold);box-shadow:0 0 0 3px rgba(245,166,35,.22);}
.ball.cool{border-color:var(--sky);box-shadow:0 0 0 3px rgba(46,139,192,.18);}
.lead-foot{margin-top:26px;font-size:.85rem;color:var(--muted);font-weight:600;}

/* ===== charts ===== */
.chart-card{padding:22px 24px 16px;margin-top:18px;}
.chart-top{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:8px;margin-bottom:6px;}
.chart-top h3{font-size:1.05rem;margin:0;}
.chart-legend{font-size:.78rem;color:var(--muted);font-weight:700;display:flex;gap:14px;flex-wrap:wrap;}
.chart-legend i{display:inline-block;width:11px;height:11px;border-radius:3px;margin-right:5px;vertical-align:-1px;}
.chart{position:relative;height:200px;display:flex;align-items:flex-end;gap:2px;padding-top:8px;border-bottom:2px solid var(--border);}
.bar{flex:1;background:linear-gradient(180deg,var(--sky),var(--blue));border-radius:3px 3px 0 0;transform-origin:bottom;transition:transform .5s cubic-bezier(.2,.7,.2,1),height .35s ease;min-width:0;}
.bar.hot{background:linear-gradient(180deg,#ffce6b,var(--gold));}
.bar.cold{background:linear-gradient(180deg,#cfe4f2,#9cc4dd);}
.bar.pbbar{background:var(--accent-bg);}
.avg-line{position:absolute;left:0;right:0;border-top:2px dashed var(--navy);opacity:.55;}
.avg-tag{position:absolute;right:0;transform:translateY(-100%);font-size:.72rem;font-weight:800;color:var(--navy);background:var(--off);padding:1px 6px;border-radius:5px;}
.axis{display:flex;justify-content:space-between;font-size:.72rem;color:var(--muted);font-weight:700;margin-top:6px;}
.chart-cap{font-size:.82rem;font-weight:700;color:var(--navy);margin-top:10px;}
.chart-cap span{color:var(--muted);font-weight:600;}
@media(prefers-reduced-motion:reduce){.bar{transition:none;}}

/* ===== scrubber ===== */
.scrub{margin-top:16px;padding:16px 20px 18px;border:1px solid var(--border);border-radius:var(--radius);background:#fff;box-shadow:0 2px 10px rgba(13,43,85,.06);}
.scrub-head{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:6px;}
.scrub-head strong{font-family:'Nunito',sans-serif;font-weight:800;}
.chips{display:flex;gap:6px;flex-wrap:wrap;}
.chip{font-size:.8rem;font-weight:800;color:var(--blue);background:var(--off);border:1px solid var(--border);padding:5px 11px;border-radius:20px;cursor:pointer;}
.chip:hover{background:#eaf1fb;} .chip.on{background:var(--blue);color:#fff;border-color:var(--blue);}
.range{position:relative;height:40px;margin:6px 4px 0;}
.range .track{position:absolute;top:50%;transform:translateY(-50%);height:7px;width:100%;border-radius:6px;background:var(--border);}
.range .track .fill{position:absolute;height:100%;border-radius:6px;background:linear-gradient(90deg,var(--sky),var(--blue));}
.range input[type=range]{position:absolute;width:100%;height:40px;margin:0;background:none;pointer-events:none;-webkit-appearance:none;appearance:none;}
.range input[type=range]:focus{outline:none;}
.range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;pointer-events:auto;width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--blue);cursor:pointer;box-shadow:0 2px 6px rgba(13,43,85,.25);}
.range input[type=range]::-moz-range-thumb{pointer-events:auto;width:22px;height:22px;border-radius:50%;background:#fff;border:3px solid var(--blue);cursor:pointer;box-shadow:0 2px 6px rgba(13,43,85,.25);}
.range input[type=range]:focus-visible::-webkit-slider-thumb{outline:3px solid var(--gold);outline-offset:2px;}
.scrub-note{font-size:.85rem;color:var(--muted);font-weight:600;}
.scrub.locked .range,.scrub.locked .chips{opacity:.45;pointer-events:none;}

/* ===== ticket tester ===== */
.ticket{padding:22px 24px;}
.ticket-inputs{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-bottom:14px;}
.ti{width:48px;height:48px;border:2px solid var(--border);border-radius:10px;text-align:center;font-family:'Montserrat',sans-serif;font-weight:900;font-size:1.1rem;color:var(--navy);background:var(--off);}
.ti:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px rgba(26,86,160,.18);}
.ti.pb{border-color:var(--accent-border);color:var(--accent-ink);}
.ti.pb:focus{box-shadow:0 0 0 3px rgba(245,166,35,.22);}
.ti-plus{color:var(--muted);font-weight:800;font-size:1.2rem;}
.ti-btn{font-family:'Montserrat',sans-serif;font-weight:900;background:var(--blue);color:#fff;border:none;border-radius:10px;padding:0 20px;height:48px;cursor:pointer;}
.ti-btn:hover{background:var(--navy);}
.ticket-result{background:var(--off);border-radius:12px;padding:15px 17px;font-weight:600;}
.ticket-result b{color:var(--accent-ink);}
.ticket-err{color:var(--red);font-weight:700;}
.match-table{width:100%;border-collapse:collapse;margin-top:12px;font-size:.9rem;}
.match-table td{padding:5px 8px;border-top:1px solid var(--border);}
.match-table td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:800;}

/* ===== odds table ===== */
.odds-wrap{padding:6px 6px;overflow-x:auto;margin-top:16px;}
table.odds{width:100%;border-collapse:collapse;font-weight:600;min-width:460px;}
table.odds th,table.odds td{text-align:left;padding:11px 14px;border-bottom:1px solid var(--border);}
table.odds th{font-family:'Nunito',sans-serif;font-weight:800;font-size:.78rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);}
table.odds tr:last-child td{border-bottom:none;}
table.odds td.match{font-weight:800;color:var(--navy);}
table.odds td.prize{color:var(--green);font-weight:800;}
table.odds tr.jackpot td{background:rgba(245,166,35,.14);}
.prose p{max-width:680px;}
.src{font-size:.82rem;color:var(--muted);font-weight:600;margin-top:8px;}

/* ===== faq ===== */
.faq details{background:#fff;border:1px solid var(--border);border-radius:12px;margin-bottom:10px;padding:2px 18px;box-shadow:0 2px 10px rgba(13,43,85,.06);}
.faq summary{cursor:pointer;font-family:'Montserrat',sans-serif;font-weight:700;font-size:1rem;padding:14px 0;list-style:none;display:flex;justify-content:space-between;align-items:center;}
.faq summary::-webkit-details-marker{display:none;}
.faq summary::after{content:"+";font-size:1.4rem;color:var(--sky);font-weight:900;}
.faq details[open] summary::after{content:"\2013";}
.faq details p{margin:0 0 16px;color:#234;}

/* ===== footer — matches the main site ===== */
footer{margin-top:30px;background:linear-gradient(135deg,var(--blue) 0%,var(--navy) 100%);color:rgba(255,255,255,.6);text-align:center;padding:1.5rem 1rem;font-size:.78rem;line-height:1.8;}
footer a{color:var(--gold);text-decoration:none;}
footer a:hover{text-decoration:underline;}
footer strong{color:var(--white);}
