/* ===== Kvizky.cz – rozcestník · tmavý seriózní styl ===== */
:root{
    /* ── Globální paleta – laď na jednom místě ───────────────── */
    --bg:#16181b;          /* hlavní pozadí (tmavá šedá) */
    --surface:#1f2226;     /* bloky/karty */
    --surface-2:#282c31;   /* zvýrazněný blok */
    --line:#363b41;        /* okraje */
    --line-soft:#2a2e33;
    --ink:#eceef0;         /* hlavní text */
    --ink-soft:#a8acb2;    /* sekundární text */
    --ink-mute:#737880;
    --accent:#ff9900;      /* oranžová – hlavní akcent */
    --accent-hover:#ffad33;
    --accent-ink:#1a0e02;  /* text na oranžové ploše */
    --accent-2:#ffa726;    /* oranžová pro odkazy */
    --good:#ff9900;        /* zvýrazněné hodnoty (žebříček) */
    --hero-top:#1c1f23;    /* horní okraj hero přechodu */
    --foot-bg:#101113;     /* pozadí patičky */
    --radius:10px;
    --wrap:1140px;
    --shadow:0 8px 24px rgba(0,0,0,.4);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
    margin:0;font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,sans-serif;
    color:var(--ink);background:var(--bg);line-height:1.65;-webkit-font-smoothing:antialiased;
}
h1,h2,h3{font-family:"Source Serif 4","Inter",Georgia,serif;line-height:1.2;margin:0 0 .45em;letter-spacing:-.01em}
h1{font-weight:700}
h2,h3{font-weight:600}
a{color:var(--accent-2);text-decoration:none}
a:hover{text-decoration:underline}
img{max-width:100%;display:block}
.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}
hr{border:0;border-top:1px solid var(--line);margin:0}

/* ── Hlavička ─────────────────────────────────────────── */
.site-head{position:sticky;top:0;z-index:50;background:rgba(14,20,27,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--line)}
.head-inner{display:flex;align-items:center;gap:20px;height:64px}
.brand{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--ink)!important;text-decoration:none}
.brand-mark{display:grid;place-items:center;width:32px;height:32px;border-radius:7px;
    background:var(--accent);color:var(--accent-ink);font-weight:800;font-size:1rem;letter-spacing:-.04em}
.brand-logo{width:32px;height:32px;border-radius:7px;display:block;object-fit:contain}
.brand-name{font-family:"Source Serif 4",serif;font-size:1.7rem;font-weight:800;letter-spacing:-.01em}
.site-nav{margin-left:auto;display:flex;align-items:center;gap:4px}
.site-nav a{color:var(--ink-soft);font-weight:600;padding:9px 13px;border-radius:7px;text-decoration:none;font-size:.94rem}
.site-nav a:hover{background:var(--surface);color:var(--ink)}
.site-nav a.is-active{color:var(--accent);background:var(--surface)}
.nav-cta{border:1px solid var(--accent);color:var(--accent)!important;margin-left:8px}
.nav-cta:hover{background:var(--accent);color:var(--accent-ink)!important;text-decoration:none}
.nav-burger{display:none;flex-direction:column;gap:5px;cursor:pointer;margin-left:auto;padding:8px}
.nav-burger span{width:24px;height:2px;border-radius:2px;background:var(--ink)}

/* ── Sekce ────────────────────────────────────────────── */
section{padding:60px 0;border-bottom:1px solid var(--line-soft)}
/* Světlejší sekce – karty uvnitř ztmavnou, aby vždy kontrastovaly s pozadím.
   Tmavá sekce (výchozí --bg) → světlejší karty; světlá sekce (.sec-alt) → tmavší karty. */
.sec-alt{background:var(--surface)}
.sec-alt .quiz-card,.sec-alt .game-card{background:var(--bg)}
.sec-head{max-width:720px;margin-bottom:30px}
.sec-head h2{font-size:1.7rem;margin-bottom:.3em}
.sec-head p{color:var(--ink-soft);margin:0;font-size:1.02rem}
.eyebrow{display:inline-block;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
    font-size:.72rem;color:var(--accent);margin-bottom:14px}

/* ── Hero ─────────────────────────────────────────────── */
.hero{padding:72px 0 60px;border-bottom:1px solid var(--line);
    background:linear-gradient(180deg,var(--hero-top) 0,var(--bg) 100%)}
.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:48px;align-items:center}
.hero h1{font-size:2.85rem;margin-bottom:.35em}
.hero h1 .hl{color:var(--accent)}
.hero p.lead{font-size:1.18rem;color:var(--ink-soft);margin:0 0 28px;max-width:620px}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px}
.btn{display:inline-flex;align-items:center;gap:8px;font-weight:700;padding:12px 22px;border-radius:8px;
    font-size:.98rem;text-decoration:none!important;transition:background .15s,border-color .15s,color .15s}
.btn-primary{background:var(--accent);color:var(--accent-ink);border:1px solid var(--accent)}
.btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover)}
.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}
.btn-ghost:hover{border-color:var(--ink-soft);background:var(--surface)}

/* hero panel – seznam, žádné dětské dlaždice */
.hero-panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.hero-panel .hp-head{padding:14px 18px;font-weight:700;font-size:.82rem;letter-spacing:.08em;
    text-transform:uppercase;color:var(--ink-mute);border-bottom:1px solid var(--line)}
.hero-panel a.hp-row{display:flex;align-items:center;justify-content:space-between;gap:12px;
    padding:14px 18px;color:var(--ink)!important;text-decoration:none;border-bottom:1px solid var(--line-soft);font-weight:600}
.hero-panel a.hp-row:last-child{border-bottom:0}
.hero-panel a.hp-row:hover{background:var(--surface-2)}
.hero-panel a.hp-row .arr{color:var(--ink-mute)}
.hero-panel a.hp-row:hover .arr{color:var(--accent)}

/* ── Statistiky ───────────────────────────────────────── */
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);
    border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.stat{background:var(--surface);padding:26px 18px;text-align:center}
.stat b{display:block;font-family:"Source Serif 4",serif;font-size:2.1rem;color:var(--accent);line-height:1;margin-bottom:6px}
.stat span{color:var(--ink-soft);font-weight:600;font-size:.92rem}

/* ── Karty kvízů ──────────────────────────────────────── */
.card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.quiz-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;
    transition:border-color .15s,transform .15s;display:flex;flex-direction:column}
.quiz-card:hover{border-color:var(--accent);transform:translateY(-3px)}
.quiz-card a.stretch{text-decoration:none;color:inherit;display:flex;flex-direction:column;height:100%}
.quiz-thumb{aspect-ratio:16/9;background:var(--surface-2);position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
.quiz-thumb img{width:100%;height:100%;object-fit:cover}
.quiz-thumb .badge{position:absolute;top:10px;left:10px;background:rgba(14,20,27,.85);color:var(--accent);
    font-weight:700;font-size:.72rem;letter-spacing:.04em;padding:4px 10px;border-radius:5px;border:1px solid var(--line)}
.quiz-body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.quiz-body h3{font-size:1.1rem;margin:0}
.quiz-body p{margin:0;color:var(--ink-soft);font-size:.9rem}
.quiz-meta{margin-top:auto;font-weight:700;color:var(--accent);font-size:.84rem}

/* ── Bloky her ────────────────────────────────────────── */
.game-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}
.game-card{position:relative;overflow:hidden;background:var(--surface);border:1px solid var(--line);
    border-radius:var(--radius);padding:22px;transition:border-color .15s,transform .15s}
.game-card:hover{border-color:var(--accent);transform:translateY(-2px)}
/* Ikona hry jako velký jemný watermark v barvě blízké pozadí. */
.game-bg{position:absolute;right:16px;bottom:14px;font-size:4.6rem;line-height:1;
    color:var(--bg);opacity:.85;pointer-events:none;z-index:0;
    transition:opacity .2s ease,transform .2s ease}
.game-card:hover .game-bg{opacity:1;transform:scale(1.05)}
.game-card h3,.game-card p,.game-card .game-links{position:relative;z-index:1}
.game-card h3{font-size:1.15rem;margin:0 0 6px}
.game-card p{color:var(--ink-soft);font-size:.92rem;margin:0 0 16px}
/* Stuha NOVINKA v rohu */
.ribbon{position:absolute;top:16px;right:-38px;transform:rotate(45deg);z-index:2;
    background:#e02d2d;color:#fff;font-size:.68rem;font-weight:800;letter-spacing:.1em;
    text-transform:uppercase;padding:5px 44px;box-shadow:0 2px 8px rgba(0,0,0,.35)}
.game-links{display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line-soft);padding-top:14px}
.game-links a{font-weight:700;font-size:.88rem}
.game-links a.play{color:var(--accent)}
.game-links a.res{color:var(--ink-soft)}
.game-links a.res:hover{color:var(--ink)}

/* ── Banner novinky ───────────────────────────────────── */
.novinka-banner{background:var(--surface);padding:22px 0}
.nb-inner{display:flex;align-items:center;gap:18px;flex-wrap:wrap;background:var(--bg);
    border:1px solid var(--line);border-left:4px solid #e02d2d;border-radius:var(--radius);padding:16px 20px}
.nb-tag{flex:none;background:#e02d2d;color:#fff;font-weight:800;font-size:.72rem;letter-spacing:.1em;
    text-transform:uppercase;padding:5px 13px;border-radius:99px}
.nb-text{flex:1;min-width:240px;margin:0;color:var(--ink-soft)}
.nb-text strong{color:var(--ink)}
.nb-btn{flex:none}
@media(max-width:600px){.nb-inner{flex-direction:column;align-items:flex-start}}

/* ── Žebříček dnešních vítězů ─────────────────────────── */
.winners{background:var(--surface)}
.winners-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:6px}
.winners-title h2{margin:0}
.win-sub{color:var(--ink-soft);margin:0 0 26px;font-size:1.02rem}

/* navigace dny */
.win-nav{display:flex;align-items:center;gap:10px;flex:none}
.win-arrow{width:38px;height:38px;border-radius:9px;border:1px solid var(--line);background:var(--bg);
    color:var(--ink);font-size:1.4rem;line-height:1;cursor:pointer;transition:border-color .15s,background .15s,color .15s;
    display:grid;place-items:center}
.win-arrow:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}
.win-arrow:disabled{opacity:.35;cursor:default}
.win-day{min-width:96px;text-align:center;font-weight:700;color:var(--ink);font-size:.95rem;
    padding:7px 12px;border-radius:8px;background:var(--bg);border:1px solid var(--line-soft)}

/* mřížka karet */
.win-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;
    transition:opacity .18s ease,transform .18s ease}
.win-grid.is-out-left{opacity:0;transform:translateX(-14px)}
.win-grid.is-out-right{opacity:0;transform:translateX(14px)}
.win-grid.is-in-left{opacity:0;transform:translateX(-14px)}
.win-grid.is-in-right{opacity:0;transform:translateX(14px)}

.win-card{position:relative;overflow:hidden;background:var(--bg);border:1px solid var(--line);
    border-radius:var(--radius);padding:14px 16px;display:flex;align-items:center;gap:13px;
    color:var(--ink)!important;text-decoration:none;transition:border-color .15s,transform .15s}
.win-card:hover{border-color:var(--accent);transform:translateY(-2px);text-decoration:none}
.win-card:hover .who,.win-card:hover .game{text-decoration:none}

/* Ikona jako velký průhledný watermark na pozadí (mimo tok textu). */
.win-badge{position:absolute;top:50%;right:6px;transform:translateY(-50%);
    color:var(--accent);font-size:4.4rem;line-height:1;opacity:.07;pointer-events:none;z-index:0;
    transition:opacity .2s ease,transform .2s ease}
.win-card:hover .win-badge{opacity:.16;transform:translateY(-50%) scale(1.08) rotate(-4deg)}

.win-info{position:relative;z-index:1;display:flex;flex-direction:column;min-width:0;flex:1}
.win-card .who{font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.win-card .game{font-size:.8rem;color:var(--ink-mute);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.win-card .pts{position:relative;z-index:1;flex:none;white-space:nowrap;font-family:"Source Serif 4",serif;
    font-weight:700;color:var(--good);font-size:1.1rem;font-variant-numeric:tabular-nums}
@media(max-width:540px){
    .winners-head{flex-direction:column;align-items:flex-start;gap:12px}
    .win-grid{grid-template-columns:1fr}
}

/* ── Prózový obsah ────────────────────────────────────── */
.prose{max-width:760px}
.prose p{margin:0 0 1.1em;font-size:1.04rem;color:var(--ink-soft)}
.prose p strong{color:var(--ink)}
.prose h2{font-size:1.55rem;margin-top:1.5em;color:var(--ink)}
.prose ul{padding-left:1.2em;color:var(--ink-soft)}
.prose li{margin:.35em 0}
.prose li strong{color:var(--ink)}
.faq{display:grid;gap:10px;margin-top:18px}
.faq details{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:2px 18px}
.faq summary{font-weight:700;cursor:pointer;padding:15px 0;color:var(--ink);font-size:1.02rem}
.faq details[open] summary{color:var(--accent)}
.faq details p{margin:0 0 15px;color:var(--ink-soft)}

/* ── Patička ──────────────────────────────────────────── */
.site-foot{background:var(--foot-bg);border-top:1px solid var(--line);margin-top:0;padding:52px 0 26px}
.foot-grid{display:grid;grid-template-columns:1.6fr 1fr 1.3fr 1fr;gap:32px}
.foot-col a i{width:18px;margin-right:5px;text-align:center;color:var(--accent)}
.foot-col h3{color:var(--ink);font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:14px;font-family:"Inter",sans-serif}
.brand--foot{gap:13px;margin-bottom:14px}
.brand--foot .brand-logo{width:52px;height:52px;border-radius:12px}
.brand--foot .brand-name{font-size:1.7rem}
.foot-col p{color:var(--ink-mute);margin:0;font-size:.94rem}
.foot-col a{display:block;color:var(--ink-soft);padding:5px 0;font-weight:500;font-size:.95rem}
.foot-col a:hover{color:var(--accent);text-decoration:none}
.foot-bottom{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:34px;padding-top:20px;
    border-top:1px solid var(--line);color:var(--ink-mute);font-size:.88rem}
.foot-bottom a{color:var(--ink-soft)}

/* ── Responzivita ─────────────────────────────────────── */
@media(max-width:880px){
    .hero-grid{grid-template-columns:1fr;gap:34px}
    .hero h1{font-size:2.3rem}
    .stats{grid-template-columns:repeat(2,1fr)}
    .card-grid{grid-template-columns:repeat(2,1fr)}
    .foot-grid{grid-template-columns:1fr 1fr}
    .nav-burger{display:flex}
    /* nižší lišta na mobilu */
    .head-inner{height:52px}
    .brand-logo{width:26px;height:26px}
    .brand-name{font-size:1.35rem}
    /* sbalené menu nesmí mít padding/border – i při max-height:0 by tvořily
     * viditelný pruh pod lištou; dostane je až otevřený stav */
    .site-nav{position:absolute;top:52px;left:0;right:0;flex-direction:column;align-items:stretch;
        background:var(--bg);border-bottom:0;padding:0 24px;gap:2px;
        max-height:0;overflow:hidden;transition:max-height .25s;margin:0}
    .nav-toggle:checked ~ .site-nav{max-height:420px;padding:10px 24px 16px;
        border-bottom:1px solid var(--line)}
    .site-nav a{padding:13px}
    .nav-cta{margin:6px 0 0;text-align:center}
}
@media(max-width:540px){
    .card-grid{grid-template-columns:1fr}
    .stats{grid-template-columns:1fr 1fr}
    .foot-grid{grid-template-columns:1fr}
    .hero h1{font-size:2rem}
}
