/* Design tokens — "Tablica startowa" direction, see DESIGN_BRIEF.md.
   Light editorial: chalk-white surfaces, warm ink text, one scoreboard-red accent,
   a pine-black-green used only as a hairline bezel on the split-flap motif. */
:root{
  --bg:#F6F4EE; --bg-elev:#EDE9DC; --bg-card:#FFFFFF; --text:#15130F; --muted:rgba(21,19,15,.62);
  --accent:#C81E3A; --accent-ink:#0F2E22; --line:rgba(21,19,15,.14); --radius:4px; --wrap:1160px;
  --header-bg:rgba(246,244,238,.92); --tracking-tight:-0.02em;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);
  font:17px/1.7 system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto;display:block}
a{color:var(--accent)}
h1,h2,h3{line-height:1.2;margin:0 0 .5em;font-weight:800;letter-spacing:var(--tracking-tight)}
/* scoreboard split-flap motif: a hairline bezel rule under section headings, in lieu of <hr> */
h2{padding-bottom:.4em;border-bottom:2px solid var(--accent);position:relative}
h2::before{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:1px;background:var(--accent-ink);opacity:.5}
.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:var(--muted)}
.num,.tabular{font-variant-numeric:tabular-nums;font-weight:700}
.container{width:100%;max-width:var(--wrap);margin:0 auto;padding:0 20px}
.muted{color:var(--muted)}
.skip-link{position:absolute;left:-999px;top:0;background:var(--accent);color:#fff;padding:10px 16px;z-index:200}
.skip-link:focus{left:0}
:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
.site-header{position:sticky;top:0;z-index:100;background:var(--header-bg);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.header-inner{display:flex;align-items:center;gap:18px;height:64px}
.site-nav{display:flex;gap:6px;margin-left:auto}
.nav-toggle{display:none}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:700;padding:12px 22px;border-radius:var(--radius);border:1px solid transparent;cursor:pointer;white-space:nowrap;text-decoration:none}
.btn-cta{background:var(--accent);color:#fff}
@media (prefers-reduced-motion:no-preference){
  .btn-cta.pulse{animation:glow-pulse 3.2s ease-in-out infinite}
  @keyframes glow-pulse{0%,100%{box-shadow:0 0 0 0 rgba(200,30,58,.35)}50%{box-shadow:0 0 0 8px rgba(200,30,58,0)}}
}
section{padding:56px 0}
/* hover-lift baseline — cards opt in with .lift */
.lift{transition:transform .2s ease,box-shadow .2s ease}
.lift:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(21,19,15,.1)}
/* scroll-reveal baseline — JS toggles .in-view */
@media (prefers-reduced-motion:no-preference){
  .reveal{opacity:0;transform:translateY(10px);transition:opacity .22s ease,transform .22s ease}
  .reveal.in-view{opacity:1;transform:none}
}
.table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-card)}
table{width:100%;border-collapse:collapse;min-width:520px}
th,td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--line)}
.prose{font-size:1.08rem;line-height:1.75}
.updated{text-align:center;color:var(--muted);font-size:.86rem;border-top:1px solid var(--line);padding-top:20px}
.to-top{position:fixed;right:20px;bottom:20px;z-index:120;width:48px;height:48px;border-radius:50%;
  border:1px solid var(--line);background:var(--accent);color:#fff;font-size:1.4rem;cursor:pointer;
  opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s,transform .2s,visibility .2s}
.to-top.show{opacity:1;visibility:visible;transform:none}
.cookie{position:fixed;left:0;right:0;bottom:0;z-index:150;background:var(--bg-card);border-top:1px solid var(--line);
  padding:16px 20px;display:flex;gap:18px;align-items:center;justify-content:center;flex-wrap:wrap}
.cookie.hidden{display:none}
@media (max-width:760px){
  .header-inner{flex-wrap:wrap;height:auto;min-height:64px;padding-block:10px}
  .nav-toggle{display:block;margin-left:auto}
  .header-auth{display:none}
  .site-nav{display:none;order:5}
  .site-nav.open{display:flex;flex-direction:column;flex-basis:100%;width:100%;gap:2px;padding-top:8px;border-top:1px solid var(--line);margin-top:8px}
  .site-nav.open a{padding:12px 4px}
}

/* ===== components (added by html-front, block set per DESIGN_BRIEF.md) ===== */
.brand{display:flex;align-items:center;color:inherit;text-decoration:none}
.brand img{width:150px;height:41px}
.site-nav a{padding:8px 4px;color:var(--text);text-decoration:none;font-weight:600;font-size:.94rem}
.site-nav a[aria-current],.site-nav a:hover{color:var(--accent)}
.btn-outline{background:transparent;color:var(--text);border-color:var(--line)}
.btn-outline:hover{border-color:var(--accent);color:var(--accent)}
.crumbs{display:block;padding:16px 0 0;font-size:.86rem;color:var(--muted)}
.crumbs a{color:var(--muted)}

/* section corner tag — "01" scoreboard row-number */
.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px}
.section-num{font-size:.8rem;color:var(--muted);border:1px solid var(--line);border-radius:var(--radius);padding:2px 8px;flex:none}

/* magazine 7:5 asymmetric grid — home page only */
.magazine{display:grid;gap:32px;align-items:start}
@media (min-width:53.75em){
  .magazine{grid-template-columns:7fr 5fr}
  .magazine.invert{grid-template-columns:5fr 7fr}
  .magazine.invert>.mag-a{order:2}
  .magazine.invert>.mag-b{order:1}
}

/* hero */
.hero{padding-top:48px}
.hero h1{font-size:clamp(2rem,4vw + 1rem,3rem)}
.hero .lead{font-size:1.15rem;color:var(--muted);max-width:46ch}
.trust-row{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px;padding:0;list-style:none}
.trust-row li{display:flex;align-items:center;gap:6px;font-size:.86rem;font-weight:600;color:var(--muted)}
.trust-row li::before{content:"";width:7px;height:7px;background:var(--accent-ink);border-radius:1px;flex:none}

.offer-card{background:var(--bg-card);border:1px solid var(--line);border-top:3px solid var(--accent-ink);
  border-radius:var(--radius);padding:28px;box-shadow:0 12px 28px rgba(21,19,15,.06)}
.offer-card .figure{font-size:2.4rem;line-height:1}
.offer-card .figure sup{font-size:1.1rem;margin-left:4px}
.promo-chip{display:inline-flex;align-items:center;gap:8px;background:var(--bg-elev);border:1px dashed var(--accent-ink);
  border-radius:var(--radius);padding:8px 14px;font-weight:700;margin:14px 0}
.offer-card .btn-cta{width:100%;justify-content:center;margin-top:6px}

/* quick-facts stat strip */
.stat-strip{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));
  background:var(--accent-ink);color:#fff;border-radius:var(--radius);padding:32px}
.stat{text-align:center}
.stat .num{display:block;font-size:2.2rem;color:#fff}
.stat .stat-label{display:block;font-size:.84rem;opacity:.78;margin-top:4px}

/* legality strip */
.legality-strip{border-left:4px solid var(--accent);background:var(--bg-card);border-radius:var(--radius);
  padding:24px 28px;display:flex;gap:18px;align-items:flex-start;flex-wrap:wrap}
.legality-strip .tag{flex:none;background:var(--accent);color:#fff;font-weight:800;font-size:.72rem;
  text-transform:uppercase;letter-spacing:.06em;padding:4px 10px;border-radius:var(--radius)}

/* deposit calculator */
.calc{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:clamp(20px,4vw,36px);
  display:grid;gap:32px}
@media (min-width:48em){.calc{grid-template-columns:1fr 1fr}}
.calc-controls label{display:block;font-weight:700;margin-bottom:8px}
.calc-controls input[type=range]{width:100%;accent-color:var(--accent);margin:10px 0}
.calc-controls input[type=number]{width:100%;font-size:1.1rem;padding:10px 12px;border:1px solid var(--line);
  border-radius:var(--radius);font-variant-numeric:tabular-nums}
.calc-minmax{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted)}
.calc-output{background:var(--bg-elev);border-radius:var(--radius);padding:20px}
.calc-row{display:flex;justify-content:space-between;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--line)}
.calc-row:last-of-type{border-bottom:none}
.calc-row .num{font-size:1.5rem;color:var(--accent)}
.calc-row.total .num{color:var(--accent-ink);font-size:1.7rem}
.calc-note{font-size:.84rem;color:var(--muted);margin-top:14px}

/* games rail */
.games-rail{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 2px 16px;margin:0 -2px}
.game{scroll-snap-align:start;flex:none;width:200px;border-radius:var(--radius);overflow:hidden;
  background:var(--bg-card);border:1px solid var(--line)}
.game .thumb{position:relative;width:100%;aspect-ratio:4/3;background:var(--bg-elev);overflow:hidden}
.game .thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.game .thumb .icon-cat{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.game .thumb .icon-cat svg{width:44px;height:44px;opacity:.8}
.game .meta{padding:12px 14px}
.game .meta b{display:block;font-size:.94rem}
.game .meta span{font-size:.78rem;color:var(--muted)}
.game-play{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(21,19,15,.45);
  opacity:0;transition:opacity .2s ease;text-decoration:none}
.game .thumb:hover .game-play,.game-play:focus-visible{opacity:1}
.game-play span{background:var(--accent);color:#fff;font-weight:700;padding:8px 18px;border-radius:var(--radius)}

.provider-pills{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px;padding:0;list-style:none}
.provider-pills .pill{background:var(--bg-elev);border:1px solid var(--line);border-radius:var(--radius);
  padding:8px 16px;font-weight:700;font-size:.86rem}

/* payments table extras */
.pay-logo{display:flex;align-items:center;gap:10px}
.pay-logo img{width:56px;height:34px;object-fit:contain;flex:none}

/* pros & cons scorecard */
.scorecard{display:grid;gap:24px}
@media (min-width:48em){.scorecard{grid-template-columns:1fr 1fr}}
.scorecard .col{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:24px}
.scorecard ul{list-style:none;padding:0;margin:0;display:grid;gap:12px}
.scorecard li{display:flex;gap:10px;align-items:flex-start}
.scorecard .col.pros h3{color:var(--accent-ink)}
.scorecard .col.cons h3{color:var(--accent)}

/* FAQ */
.faq details{border-bottom:1px solid var(--line);padding:16px 0}
.faq summary{cursor:pointer;font-weight:700;list-style:none;display:flex;justify-content:space-between;gap:12px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font-size:1.3rem;color:var(--accent);flex:none}
.faq details[open] summary::after{content:"\2212"}
.faq p{color:var(--muted);margin:12px 0 0}

/* CTA band */
.cta-band{background:var(--accent-ink);color:#fff;border-radius:var(--radius);padding:40px;text-align:center}
.cta-band h2{border-bottom-color:#fff;color:#fff}
.cta-band h2::before{background:var(--accent)}
.cta-band p{color:rgba(255,255,255,.78)}

/* responsible gambling callout */
.rg-callout{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:24px 28px;
  display:flex;gap:18px;flex-wrap:wrap;align-items:flex-start}
.rg-callout .age-badge{flex:none;background:var(--text);color:#fff;font-weight:800;font-size:1.1rem;
  border-radius:var(--radius);padding:10px 16px}

/* footer */
.site-footer{background:var(--bg-elev);border-top:1px solid var(--line);padding:48px 0 28px;margin-top:56px}
.footer-grid{display:grid;gap:32px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));padding-bottom:24px}
.footer-grid h4{margin:0 0 12px;font-size:.94rem}
.footer-grid ul{list-style:none;padding:0;margin:0;display:grid;gap:8px}
.footer-grid a{color:var(--muted);text-decoration:none;font-size:.92rem}
.footer-grid a:hover{color:var(--accent)}
.disclaimer{display:flex;gap:16px;align-items:flex-start;border-top:1px solid var(--line);padding-top:20px;font-size:.86rem;color:var(--muted)}
.disclaimer .age{flex:none;background:var(--text);color:#fff;font-weight:800;border-radius:var(--radius);padding:4px 10px}
.footer-bottom{text-align:center;font-size:.82rem;color:var(--muted);margin-top:16px}

/* generic content helpers used across internal pages */
.kv-table td:first-child{font-weight:700;width:38%}
.verdict{background:var(--bg-card);border:1px solid var(--line);border-radius:var(--radius);padding:28px}
.verdict .score{font-size:2.4rem;color:var(--accent)}
ul.check-list,ul.cross-list{list-style:none;padding:0;margin:0;display:grid;gap:10px}
ul.check-list li,ul.cross-list li{display:flex;gap:10px}
.steps{list-style:none;padding:0;margin:0;display:grid;gap:16px;counter-reset:step}
.steps li{display:flex;gap:16px;counter-increment:step}
.steps li::before{content:counter(step);flex:none;width:32px;height:32px;border-radius:var(--radius);
  background:var(--accent-ink);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:800}
