/* ============================================================
   AI Predicts — admin styles (sdílí tokens.css).
   ============================================================ */
*,*::before,*::after { box-sizing:border-box; }
body { margin:0; font-family:var(--font-body); background:var(--bg); color:var(--text); -webkit-font-smoothing:antialiased; }
a { color:var(--blue); text-decoration:none; }
img { max-width:100%; }

.adm { display:grid; grid-template-columns:248px 1fr; min-height:100vh; }

/* Sidebar */
.adm-side { background:var(--bg-2); border-right:1px solid var(--border); padding:var(--sp-5) var(--sp-4); position:sticky; top:0; height:100vh; overflow-y:auto; }
.adm-brand { display:flex; align-items:center; gap:9px; font-family:var(--font-display); font-size:1.2rem; text-transform:uppercase; margin-bottom:var(--sp-6); }
.adm-brand .dot { width:11px;height:11px;border-radius:50%;background:var(--grad-primary);box-shadow:var(--glow-primary); }
.adm-brand .brand-mark { width:30px;height:30px;display:block;filter:drop-shadow(0 0 8px rgba(255,200,110,.4)); }
.adm-nav { display:flex; flex-direction:column; gap:2px; }
.adm-nav .grp { font-size:.68rem; text-transform:uppercase; letter-spacing:.1em; color:var(--text-mute); margin:var(--sp-4) 0 var(--sp-2); padding:0 10px; }
.adm-nav a { display:flex; align-items:center; gap:10px; padding:9px 11px; border-radius:var(--r-sm); color:var(--text-dim); font-weight:600; font-size:.9rem; transition:all var(--t-fast); }
.adm-nav a svg { width:18px;height:18px;flex:none; }
.adm-nav a:hover { background:rgba(255,255,255,.05); color:var(--text); }
.adm-nav a.active { background:var(--grad-primary); color:#fff; box-shadow:var(--glow-primary); }

/* Main */
.adm-main { padding:var(--sp-5) var(--sp-6) var(--sp-8); max-width:1200px; }
.adm-top { display:flex; align-items:center; justify-content:space-between; gap:var(--sp-4); margin-bottom:var(--sp-5); flex-wrap:wrap; }
.adm-top h1 { font-family:var(--font-head); font-size:1.6rem; margin:0; }
.adm-user { display:flex; align-items:center; gap:var(--sp-3); font-size:.85rem; color:var(--text-dim); }

/* Deadline banner */
.deadline-banner { display:flex; align-items:center; gap:var(--sp-4); padding:var(--sp-4) var(--sp-5); border-radius:var(--r-lg); margin-bottom:var(--sp-5);
    background:linear-gradient(110deg, rgba(255,46,154,.14), rgba(79,141,255,.1)); border:1px solid rgba(255,46,154,.3); }
.deadline-banner .big { font-family:var(--font-display); font-size:2.4rem; line-height:1; color:var(--primary-2); }
.deadline-banner.warn { background:linear-gradient(110deg, rgba(240,80,110,.16), rgba(251,191,36,.1)); border-color:rgba(240,80,110,.4); }
.deadline-banner.warn .big { color:var(--danger); }
.deadline-banner.ok { background:linear-gradient(110deg, rgba(22,199,132,.14), rgba(79,141,255,.08)); border-color:rgba(22,199,132,.3); }
.deadline-banner.ok .big { color:var(--success); }

/* Cards / grid */
.acard { background:var(--surface); border:1px solid var(--border); border-radius:var(--r-lg); padding:var(--sp-5); }
.agrid { display:grid; gap:var(--sp-4); }
.agrid-2 { grid-template-columns:repeat(2,1fr); }
.agrid-3 { grid-template-columns:repeat(3,1fr); }
.agrid-4 { grid-template-columns:repeat(4,1fr); }

.kpi { text-align:left; }
.kpi .v { font-family:var(--font-display); font-size:2.2rem; color:var(--text); }
.kpi .l { font-size:.78rem; color:var(--text-mute); text-transform:uppercase; letter-spacing:.06em; }

/* Tables */
.atbl { width:100%; border-collapse:collapse; font-size:.9rem; }
.atbl th,.atbl td { text-align:left; padding:11px 12px; border-bottom:1px solid var(--border); vertical-align:middle; }
.atbl th { font-family:var(--font-head); font-size:.72rem; text-transform:uppercase; letter-spacing:.06em; color:var(--text-mute); }
.atbl tr:hover td { background:rgba(255,255,255,.02); }

/* Forms */
.field { margin-bottom:var(--sp-4); }
.field label { display:block; font-size:.82rem; font-weight:600; color:var(--text-dim); margin-bottom:6px; }
.field .hint { font-size:.74rem; color:var(--text-mute); margin-top:4px; }
.inp, textarea.inp, select.inp { width:100%; background:var(--bg-2); border:1px solid var(--border-strong); border-radius:var(--r-sm); color:var(--text); padding:10px 12px; font:inherit; font-size:.9rem; transition:border-color var(--t-fast); }
.inp:focus,textarea.inp:focus,select.inp:focus { outline:none; border-color:var(--primary); }
textarea.inp { resize:vertical; min-height:90px; }
.row { display:grid; gap:var(--sp-4); }
.row-2 { grid-template-columns:1fr 1fr; } .row-3 { grid-template-columns:1fr 1fr 1fr; }

/* Buttons */
.abtn { display:inline-flex; align-items:center; gap:7px; font-family:var(--font-head); font-weight:700; font-size:.85rem; padding:9px 16px; border-radius:var(--r-sm); border:1px solid transparent; cursor:pointer; transition:all var(--t-fast); line-height:1; }
.abtn svg { width:16px;height:16px;flex:none; }
.abtn-pri { background:var(--grad-primary); color:#fff; }
.abtn-pri:hover { box-shadow:var(--glow-primary); }
.abtn-ghost { background:rgba(255,255,255,.05); color:var(--text); border-color:var(--border-strong); }
.abtn-ghost:hover { background:rgba(255,255,255,.1); }
.abtn-danger { background:rgba(240,80,110,.14); color:var(--danger); border-color:rgba(240,80,110,.3); }
.abtn-sm { padding:6px 11px; font-size:.78rem; }

/* Tabs */
.atabs { display:flex; gap:4px; border-bottom:1px solid var(--border); margin-bottom:var(--sp-5); flex-wrap:wrap; }
.atabs a { padding:10px 16px; color:var(--text-dim); font-weight:600; font-size:.88rem; border-bottom:2px solid transparent; }
.atabs a.active { color:var(--text); border-bottom-color:var(--primary); }

/* Badges (reuse st-*) */
.badge { display:inline-flex; align-items:center; gap:5px; padding:3px 10px; border-radius:var(--r-pill); font-size:.72rem; font-weight:700; font-family:var(--font-head); line-height:1; }
.st-draft{background:rgba(110,114,160,.18);color:#a6a9d4}.st-collecting{background:rgba(79,141,255,.16);color:#7fb0ff}
.st-evaluating{background:rgba(154,108,255,.16);color:#bda0ff}.st-ready{background:rgba(251,191,36,.16);color:#fcd34d}
.st-published{background:rgba(22,199,132,.16);color:#5ee6ad}.st-archived{background:rgba(110,114,160,.12);color:#6e72a0}

/* Checklist */
.chk { display:flex; align-items:center; gap:var(--sp-3); padding:10px 0; border-bottom:1px solid var(--border); }
.chk:last-child { border-bottom:none; }
.chk .box { width:22px;height:22px;border-radius:6px;border:2px solid var(--border-strong);display:flex;align-items:center;justify-content:center;cursor:pointer;flex:none;color:transparent;background:none; }
.chk.done .box { background:var(--success); border-color:var(--success); color:#06231a; }
.chk.done .box svg { width:14px;height:14px; }
.chk.done .t { text-decoration:line-through; color:var(--text-mute); }
.chk .due { margin-left:auto; font-size:.76rem; color:var(--text-mute); white-space:nowrap; }
.chk .due.over { color:var(--danger); }
.chk .due.soon { color:var(--warn); }

.flash { padding:11px 16px; border-radius:var(--r-sm); margin-bottom:var(--sp-4); font-weight:600; font-size:.88rem; }
.flash-success { background:rgba(22,199,132,.14); color:#5ee6ad; border:1px solid rgba(22,199,132,.3); }
.flash-error { background:rgba(240,80,110,.14); color:#f0506e; border:1px solid rgba(240,80,110,.3); }

.muted{color:var(--text-mute);} .dim{color:var(--text-dim);}
.flex{display:flex;}.center{align-items:center;}.between{justify-content:space-between;}.wrap{flex-wrap:wrap;}
.gap-2{gap:8px;}.gap-3{gap:12px;}.gap-4{gap:16px;} .mb-4{margin-bottom:16px;}.mb-5{margin-bottom:24px;}.mt-4{margin-top:16px;}

@media(max-width:900px){ .adm{grid-template-columns:1fr;} .adm-side{position:static;height:auto;} .agrid-3,.agrid-4{grid-template-columns:repeat(2,1fr);} .row-2,.row-3{grid-template-columns:1fr;} }

/* ===== Studio (video pipeline) ===== */
.studio-banner { display:flex; align-items:center; gap:var(--sp-4); padding:var(--sp-3) var(--sp-4); border-radius:var(--r-md); margin-bottom:var(--sp-5); font-size:.86rem; flex-wrap:wrap; }
.studio-banner.dry { background:rgba(251,191,36,.12); border:1px solid rgba(251,191,36,.35); color:#fcd34d; }
.studio-banner.live { background:rgba(22,199,132,.12); border:1px solid rgba(22,199,132,.35); color:#5ee6ad; }
.studio-banner .mode { font-family:var(--font-head); font-weight:800; }
.vid-card { background:var(--surface); border:1px solid var(--border); border-radius:var(--r-lg); padding:var(--sp-4); margin-bottom:var(--sp-4); }
.vid-head { display:flex; gap:var(--sp-4); align-items:center; }
.vid-thumb { width:160px; aspect-ratio:16/9; border-radius:var(--r-sm); overflow:hidden; background:var(--bg-2); border:1px solid var(--border); flex:none; display:flex; align-items:center; justify-content:center; }
.vid-thumb img { width:100%; height:100%; object-fit:cover; }
.vid-thumb .empty { color:var(--text-mute); font-size:.7rem; }
.vid-meta { flex:1; min-width:0; }
.vid-meta .t { font-family:var(--font-head); font-weight:800; font-size:1rem; }
.vid-meta .s { font-size:.8rem; color:var(--text-mute); }
.stepper { display:flex; gap:8px; margin-top:var(--sp-4); flex-wrap:wrap; }
.step { flex:1; min-width:150px; background:var(--bg-2); border:1px solid var(--border); border-radius:var(--r-md); padding:10px 12px; position:relative; }
.step .lbl { display:flex; align-items:center; gap:7px; font-family:var(--font-head); font-weight:700; font-size:.78rem; color:var(--text-dim); margin-bottom:8px; }
.step .lbl .n { width:18px; height:18px; border-radius:50%; background:rgba(255,255,255,.08); display:flex; align-items:center; justify-content:center; font-size:.66rem; flex:none; }
.step.done { border-color:rgba(22,199,132,.4); }
.step.done .lbl { color:#5ee6ad; }
.step.done .lbl .n { background:var(--success); color:#06231a; }
.step .abtn { width:100%; justify-content:center; }
.studio-details { margin-top:var(--sp-3); }
.studio-details summary { cursor:pointer; font-size:.82rem; color:var(--blue); font-weight:600; }
.studio-details pre { white-space:pre-wrap; background:var(--bg-2); border:1px solid var(--border); border-radius:var(--r-sm); padding:12px; font-size:.82rem; color:var(--text-dim); margin-top:8px; max-height:280px; overflow:auto; font-family:var(--font-body); }
.yt-meta { background:var(--bg-2); border:1px solid var(--border); border-radius:var(--r-sm); padding:12px; margin-top:8px; font-size:.84rem; }
.yt-meta .k { color:var(--text-mute); font-size:.72rem; text-transform:uppercase; letter-spacing:.05em; margin-top:8px; }

/* ===== Questions admin (collapsible) ===== */
.qadmin { display:flex; flex-direction:column; gap:8px; }
.qrow { background:var(--surface); border:1px solid var(--border); border-radius:var(--r-md); overflow:hidden; }
.qrow[open] { border-color:var(--border-strong); }
.qrow > summary { display:flex; align-items:center; gap:12px; padding:12px 14px; cursor:pointer; list-style:none; }
.qrow > summary::-webkit-details-marker { display:none; }
.qrow > summary:hover { background:rgba(255,255,255,.02); }
.qr-date { font-family:var(--font-head); font-weight:800; font-size:.78rem; color:var(--primary-2); width:50px; flex:none; }
.qr-cat { width:24px; height:24px; border-radius:7px; flex:none; display:flex; align-items:center; justify-content:center; background:color-mix(in srgb,var(--ai) 16%,transparent); color:var(--ai); }
.qr-cat svg { width:15px; height:15px; }
.qr-txt { flex:1; min-width:0; font-size:.92rem; font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.qr-ans { font-family:var(--font-head); font-weight:800; font-size:.8rem; color:var(--text-mute); width:48px; text-align:right; flex:none; }
.qtype { text-transform:none; letter-spacing:0; }
.qtype-single{color:#7fb0ff;background:rgba(79,141,255,.14)} .qtype-binary{color:#fcd34d;background:rgba(251,191,36,.14)} .qtype-horizons{color:#5ee6ad;background:rgba(22,199,132,.14)} .qtype-open{color:#c79bff;background:rgba(154,108,255,.16)}
.qr-body { padding:14px; border-top:1px solid var(--border); }
.qr-body .senti .d { display:inline-block; width:8px; height:8px; border-radius:50%; margin-right:5px; }
@media(max-width:720px){ .qr-txt{white-space:normal;} .qrow > summary{flex-wrap:wrap;} }

/* ===== Admin language switch ===== */
.adm-topright { display:flex; align-items:center; gap:var(--sp-4); }
.adm-langsw { display:inline-flex; border:1px solid var(--border-strong); border-radius:var(--r-pill); overflow:hidden; }
.adm-langsw a { padding:5px 12px; font-family:var(--font-head); font-weight:800; font-size:.74rem; color:var(--text-mute); text-decoration:none; line-height:1; }
.adm-langsw a.on { background:var(--grad-primary); color:#fff; }
.adm-langsw a:not(.on):hover { color:var(--text); background:rgba(255,255,255,.06); }

/* ===== Collector (sběr odpovědí) ===== */
.cf-help { margin-bottom:var(--sp-5); border-left:3px solid var(--primary); }
.cf-help strong { font-family:var(--font-head); display:block; margin-bottom:6px; }
.cf-help ol { margin:0; padding-left:20px; color:var(--text-dim); font-size:.88rem; line-height:1.7; }
.cf-help .cf-warn { color:var(--danger); margin:10px 0 0; font-size:.85rem; }
.cf-q { margin-bottom:var(--sp-3); padding:0; overflow:hidden; }
.cf-qsum { cursor:pointer; list-style:none; display:flex; align-items:center; gap:var(--sp-3); padding:var(--sp-4) var(--sp-5); }
.cf-qsum::-webkit-details-marker{display:none}
.cf-qsum:hover { background:rgba(255,255,255,.02); }
.cf-q[open] .cf-qsum { border-bottom:1px solid var(--border); }
.cf-q[open] .cf-chev { transform:rotate(180deg); }
.cf-chev { margin-left:6px; color:var(--text-mute); transition:transform var(--t-fast); flex:none; }
.cf-status { font-family:var(--font-head); font-weight:800; font-size:.74rem; padding:3px 9px; border-radius:var(--r-pill); margin-left:auto; flex:none; }
.cf-status.ok{color:#5ee6ad;background:rgba(22,199,132,.14)} .cf-status.part{color:#fcd34d;background:rgba(251,191,36,.14)} .cf-status.none{color:var(--text-mute);background:rgba(255,255,255,.06)}
.cf-qtext { font-family:var(--font-head); font-size:1.0rem; line-height:1.35; min-width:0; }
.cf-qbody { padding:var(--sp-4) var(--sp-5) var(--sp-5); }
.cf-qactions { display:flex; align-items:center; justify-content:flex-end; gap:var(--sp-3); margin-bottom:var(--sp-4); }
.cf-unit { font-weight:600; font-size:.82rem; color:var(--text-mute); margin-right:auto; }

.cf-prompt, .cf-import { margin-bottom:var(--sp-4); }
.cf-prompt > summary, .cf-import > summary { cursor:pointer; list-style:none; display:flex; align-items:center; justify-content:space-between; gap:8px;
  font-family:var(--font-head); font-weight:700; font-size:.84rem; padding:9px 14px; border-radius:var(--r-sm);
  background:rgba(255,255,255,.04); border:1px solid var(--border-strong); }
.cf-prompt > summary::-webkit-details-marker,.cf-import > summary::-webkit-details-marker{display:none}
.cf-prompt > summary svg{width:15px;height:15px}
.cf-prompt > summary span{display:inline-flex;align-items:center;gap:7px}
.cf-prompt[open] .cf-chev{transform:rotate(180deg)}
.cf-prompt-txt { margin-top:10px; font-family:var(--font-mono,monospace); font-size:.82rem; line-height:1.5; background:var(--bg-2); }
.cf-prompt .copy-prompt { margin-top:10px; }

.cf-ailinks { display:flex; align-items:center; gap:8px; flex-wrap:wrap; margin-bottom:var(--sp-4); padding:10px 12px; background:var(--bg-2); border-radius:var(--r-sm); }
.cf-ailab { font-size:.8rem; color:var(--text-mute); font-weight:600; }
.cf-ailink { display:inline-flex; align-items:center; gap:6px; line-height:1; font-family:var(--font-head); font-weight:700; font-size:.8rem;
  padding:6px 11px; border-radius:var(--r-pill); text-decoration:none; color:var(--text);
  background:color-mix(in srgb,var(--ai) 14%,transparent); border:1px solid color-mix(in srgb,var(--ai) 34%,transparent); }
.cf-ailink:hover { background:color-mix(in srgb,var(--ai) 26%,transparent); }
.cf-ailogo { width:16px; height:16px; display:inline-flex; align-items:center; justify-content:center; color:var(--ai); }
.cf-ailogo svg { width:16px; height:16px; }

.cf-ais { display:grid; grid-template-columns:repeat(auto-fill,minmax(280px,1fr)); gap:var(--sp-3); }
.cf-ai { border:1px solid var(--border); border-left:3px solid var(--ai); border-radius:var(--r-sm); padding:12px; background:var(--bg-2); }
.cf-ai.empty { opacity:.85; }
.cf-aihead { display:flex; align-items:center; gap:8px; margin-bottom:8px; }
.cf-aihead .cf-ailogo { color:var(--ai); }
.cf-aihead strong { font-family:var(--font-head); font-size:.9rem; }
.cf-wait { margin-left:auto; font-size:.68rem; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--text-mute);
  background:rgba(255,255,255,.06); padding:2px 7px; border-radius:var(--r-pill); }
.cf-hz { display:flex; align-items:center; gap:6px; margin-bottom:6px; }
.cf-hzlab { font-size:.7rem; font-weight:800; color:var(--text-mute); width:42px; flex:none; font-family:var(--font-head); }
.cf-val { width:74px; flex:none; padding:7px 8px; font-size:.85rem; }
.cf-se { flex:1; min-width:0; padding:7px 8px; font-size:.78rem; }
.cf-cf { width:58px; flex:none; padding:7px 6px; font-size:.82rem; }
.cf-sum { margin-top:4px; padding:7px 9px; font-size:.83rem; }
.cf-more { margin-top:6px; }
.cf-more > summary { cursor:pointer; font-size:.74rem; color:var(--primary-2,var(--primary)); font-weight:700; }
.cf-more textarea { margin-top:6px; font-size:.82rem; min-height:0; }
.cf-save { margin-top:var(--sp-4); }

.cf-import > summary { font-size:.8rem; color:var(--text-dim); }
.cf-importform { margin-top:10px; }
.cf-imphint { font-size:.8rem; color:var(--text-mute); margin:0 0 6px; }
.cf-impex { font-size:.74rem; background:var(--bg-2); border:1px solid var(--border); border-radius:var(--r-sm); padding:8px 10px; overflow:auto; color:var(--text-dim); margin:0 0 8px; }
.cf-importrow { display:flex; align-items:center; gap:10px; flex-wrap:wrap; margin-top:8px; }
.cf-importrow input[type=file]{ font-size:.8rem; color:var(--text-dim); }

@media(max-width:600px){ .cf-ais{grid-template-columns:1fr} }

/* ============================================================
   Chrome/Edge autofill — nepodbarvovat vyplněná pole namodro
   (tmavý admin: modré autofill pozadí + černý text = nečitelné).
   ============================================================ */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
textarea:-webkit-autofill,
select:-webkit-autofill {
    transition: background-color 9999999s ease-out, color 9999999s ease-out !important;
}
.inp:-webkit-autofill,
textarea.inp:-webkit-autofill,
select.inp:-webkit-autofill {
    -webkit-box-shadow: inset 0 0 0 1000px var(--bg-2);
    box-shadow: inset 0 0 0 1000px var(--bg-2);
    -webkit-text-fill-color: var(--text);
    caret-color: var(--text);
}

/* Odpověď do videa — dvě věty, které titán skutečně řekne. Vizuálně oddělené
   od shrnutí, protože se s ním dřív pletlo: shrnutí je titulek pro web. */
.cf-va{margin-top:8px;padding:8px 10px;border-radius:8px;
  background:rgba(255,46,154,.05);border:1px solid rgba(255,46,154,.18)}
.cf-valab{display:flex;align-items:center;gap:8px;margin-bottom:6px;
  font-size:11px;font-weight:700;letter-spacing:.04em;color:var(--primary,#ff2e9a)}
.cf-vaflag{padding:1px 7px;border-radius:999px;font-size:9.5px;font-weight:700;
  background:rgba(255,176,32,.16);color:#ffb020;border:1px solid rgba(255,176,32,.35)}
.cf-vaflag.is-ok{background:rgba(38,208,124,.16);color:#26d07c;border-color:rgba(38,208,124,.35)}
.cf-varow{display:flex;align-items:flex-start;gap:8px;margin-top:5px}
.cf-varow>span{flex:0 0 24px;padding-top:6px;font-size:10px;font-weight:700;
  letter-spacing:.06em;color:var(--muted,#8b93a7)}
.cf-varow textarea{flex:1;resize:vertical;line-height:1.45}
