/* ═══════════════════════════════════════════════════════════════════════════
   Nový vzhled (říjen 2026), od 28. 10. 2026 výchozí. Nouzově vypíná
   ?design=puvodni (viz skript v <head> index.html). VŠECHNA pravidla jsou
   pod html.novy-design – bez té třídy tenhle soubor nic nedělá.

   Směr: levý postranní panel místo záložek, bez velkého hero bloku,
   kompaktní statistiky jako přepínač, jednotné filtry, hustší seznam
   s důvodem rizika přímo v řádku, červená jen pro sankce.
   ═══════════════════════════════════════════════════════════════════════════ */

html.novy-design {
  --nd-sidebar: 232px;
  --nd-header: 64px;
  --nd-bg: #f6f7f9;
  --nd-line: #e6e8ec;
  --nd-ink: #0f172a;
  --nd-ink-2: #475569;
  --nd-ink-3: #64748b;
  --nd-accent: #1d4ed8;
  --nd-accent-bg: #eef3ff;
  --nd-radius: 10px;
}
html.novy-design body.je-prihlasen { background: var(--nd-bg); }

/* ── Kostra: bez hero bloku, obsah vedle postranního panelu ──────────────── */
html.novy-design body.je-prihlasen .page-hero { display: none; }
html.novy-design body.je-prihlasen > main {
  max-width: none;
  margin: 0;
  padding: 24px 32px 80px calc(var(--nd-sidebar) + 32px);
}
html.novy-design body.je-prihlasen > main > .form-section {
  max-width: 1240px;
  border-radius: 14px;
  box-shadow: none;
  border-color: var(--nd-line);
}

/* ── Hlavní navigace jako levý postranní panel ──────────────────────────── */
html.novy-design main > .form-section > .tabs-row { margin: 0; }
html.novy-design main > .form-section > .tabs-row > .tabs {
  position: fixed;
  top: var(--nd-header);
  left: 0;
  bottom: 0;
  width: var(--nd-sidebar);
  z-index: 50;
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 18px 12px;
  background: #fff;
  border-right: 1px solid var(--nd-line);
  border-radius: 0;
  overflow-y: auto;
}
/* Nad navigací název vlastní instituce (data-instituce nastavuje app.js po
   přihlášení). Bez instituce nic – generický popisek nepřidával informaci. */
html.novy-design main > .form-section > .tabs-row > .tabs::before {
  order: -2;
  content: attr(data-instituce);
  font-size: 15px; font-weight: 700; line-height: 1.3; letter-spacing: -.01em;
  color: var(--nd-ink);
  padding: 4px 12px 0;
}
html.novy-design main > .form-section > .tabs-row > .tabs[data-instituce]:not([data-instituce=""])::before {
  padding-bottom: 14px;
  margin-bottom: 8px;
  border-bottom: 1px solid var(--nd-line);
}
html.novy-design .tabs > .tab-btn {
  width: 100%;
  justify-content: flex-start;
  padding: 9px 12px;
  border: none;
  border-radius: 8px;
  font-size: 14px; font-weight: 500;
  color: var(--nd-ink-2);
}
html.novy-design .tabs > .tab-btn:hover { background: #f3f4f6; color: var(--nd-ink); }
html.novy-design .tabs > .tab-btn.active {
  background: var(--nd-accent-bg);
  color: var(--nd-accent);
  font-weight: 600;
  box-shadow: none;
}
/* Pořadí: nejdřív vlastní instituce, pak nástroje */
html.novy-design .tabs > .tab-btn[data-tab="moje-instituce"] { order: -1; }
html.novy-design .design-nahled {
  display: block;
  order: 99;
  margin-top: auto;
  padding: 10px 12px;
  border-radius: 8px;
  background: #fffbeb;
  color: #92400e;
  font-size: 12px; line-height: 1.4;
  text-decoration: none;
}
html.novy-design .design-nahled span { text-decoration: underline; }

/* Přepínání textů a prvků mezi vzhledy (třídy v index.html) */
html.novy-design .nd-skryt { display: none; }
html.novy-design span.nd-jen { display: inline; }

/* Nastavení: druhá skupina panelu, oddělená čarou (dřív menu pod jménem) */
html.novy-design .tabs > .tab-btn.nd-jen {
  display: flex;
  order: 10;
  margin-top: 10px;
  position: relative;
}
html.novy-design .tabs > .tab-btn.nd-jen::before {
  content: ""; position: absolute; left: 0; right: 0; top: -6px;
  border-top: 1px solid var(--nd-line);
}

/* Stránka Nastavení – obsah přesunutý z oken */
html.novy-design .tab-panel[data-tab="nastaveni"] #nastaveni-podsekce-nav { margin-bottom: 20px; }
html.novy-design body:not(.je-prihlasen) #nastaveni-podsekce-nav [data-stav="heslo"] { display: none; }
/* Jméno sloužilo jen pro pozdrav na Dashboardu – ten v novém vzhledu není */
html.novy-design .nastaveni-sekce:has(#f-nastaveni-jmeno) { display: none; }
html.novy-design #nastaveni-podsekce-obecne,
html.novy-design #nastaveni-podsekce-heslo { max-width: 640px; }
html.novy-design #nastaveni-podsekce-heslo .auth-form { max-width: 380px; }
html.novy-design #nastaveni-podsekce-heslo .alert { margin-bottom: 16px; }
html.novy-design #nastaveni-podsekce-databaze .sankce-db-hlavicka,
html.novy-design #nastaveni-podsekce-databaze .sankce-db-tabulka-wrap,
html.novy-design #nastaveni-podsekce-databaze .sankce-db-paging { padding-left: 0; padding-right: 0; }
html.novy-design #nastaveni-podsekce-databaze .sankce-db-hlavicka { padding-top: 0; border-bottom: none; }
html.novy-design #nastaveni-podsekce-databaze .sankce-db-toolbar {
  display: flex; align-items: center; gap: 10px;
  padding: 10px 12px;
  border: none; border-radius: 8px;
}
html.novy-design #nastaveni-podsekce-databaze .sankce-db-toolbar input { flex: 1; width: auto; margin: 0; }
html.novy-design #nastaveni-podsekce-databaze .sankce-db-toolbar select { flex: 0 0 auto; width: auto; margin: 0; }
html.novy-design #nastaveni-podsekce-databaze .sankce-db-pocet { white-space: nowrap; }
html.novy-design #nastaveni-podsekce-heslo .auth-submit { width: auto; padding: 10px 20px; font-size: 14px; }

/* Jméno nahoře už jen ukazuje, kdo je přihlášený – menu je v panelu */
html.novy-design .auth-user-btn { pointer-events: none; }
html.novy-design .auth-user-btn > svg:last-child { display: none; }
html.novy-design .tabs > .nd-pravni {
  display: block;
  order: 100;
  padding: 10px 12px 0;
  font-size: 11.5px;
  color: var(--nd-ink-3);
}
html.novy-design .nd-pravni a { color: var(--nd-ink-3); text-decoration: none; }
html.novy-design .nd-pravni a:hover { color: var(--nd-ink); text-decoration: underline; }
html.novy-design body.je-prihlasen #o-webu { display: none; }

/* Moje instituce: Seznam spoluprací, Historie, Novinky (dřív Dashboard) */
html.novy-design #moje-inst-podsekce-nav [data-stav="dashboard"] { order: 3; }
html.novy-design .nd-novinky { max-width: 860px; }

/* Hlavička aplikace přes celou šířku, logo nad postranním panelem */
html.novy-design body.je-prihlasen > header .header-inner { max-width: none; padding: 0 24px; }

/* ── Podsekce Moje instituce: záhlaví stránky místo samostatné karty ────── */
html.novy-design main > .form-section:has(> .tab-panel[data-tab="moje-instituce"]:not(.hidden)) {
  background: transparent;
  border: none;
  padding: 0;
  margin-bottom: 16px;
}
html.novy-design .dash-podsekce-nav-top {
  margin: 0;
  padding: 0 4px;
  border-top: none;
  border-bottom: 1px solid var(--nd-line);
  border-radius: 0;
}
html.novy-design .dash-podsekce-nav-top .dash-podsekce-tab {
  padding: 4px 12px 12px;
  font-size: 13.5px; font-weight: 500;
}
html.novy-design .dash-podsekce-tab.active { font-weight: 600; border-bottom-color: var(--nd-ink); }

/* ── Statistiky jako přepínač stavu (místo tří velkých karet) ───────────── */
html.novy-design .kpi-karty {
  display: flex; flex-wrap: wrap; gap: 6px;
  padding: 18px 20px 4px;
}
html.novy-design .kpi-karta {
  flex: 0 0 auto;
  gap: 0;
  padding: 7px 14px;
  border-radius: 999px;
  border: 1px solid var(--nd-line);
  background: #fff;
  color: var(--nd-ink-2);
}
html.novy-design .kpi-karta-ikona,
html.novy-design .kpi-karta-sipka { display: none; }
html.novy-design .kpi-karta-text { flex-direction: row; align-items: baseline; gap: 8px; }
html.novy-design .kpi-karta-popis { font-size: 13px; font-weight: 500; color: inherit; }
html.novy-design .kpi-karta-cislo { font-size: 13px; font-weight: 700; color: var(--nd-ink); }
html.novy-design .kpi-karta:hover { border-color: #cbd5e1; background: #fafafa; }
html.novy-design .kpi-karta.active,
html.novy-design .kpi-karta-nevyresene.active,
html.novy-design .kpi-karta-vyresene.active {
  background: var(--nd-ink);
  border-color: var(--nd-ink);
  color: #fff;
}
html.novy-design .kpi-karta.active .kpi-karta-popis,
html.novy-design .kpi-karta.active .kpi-karta-cislo { color: #fff; }

/* ── Filtry: jeden panel, jeden styl ─────────────────────────────────────── */
html.novy-design .dash-spoluprace-filtry {
  gap: 8px;
  padding: 12px 20px 14px;
  border-bottom: 1px solid var(--nd-line);
}
html.novy-design .dash-filtr-label {
  font-family: inherit;
  text-transform: none;
  letter-spacing: 0;
  font-size: 12.5px;
  color: var(--nd-ink-3);
  margin-right: 4px;
}
html.novy-design .dash-filtr-skupina { gap: 4px; }
html.novy-design .rok-chip,
html.novy-design .typ-chip,
html.novy-design .dash-filtr-dd-btn,
html.novy-design .dash-filtr-toggle,
html.novy-design .dash-filtr-export,
html.novy-design .dash-filtr-reset {
  display: inline-flex; align-items: center; gap: 6px;
  height: 30px;
  padding: 0 11px;
  border: 1px solid var(--nd-line);
  border-radius: 8px;
  background: #fff;
  color: var(--nd-ink-2);
  font-size: 13px; font-weight: 500;
  box-shadow: none;
}
html.novy-design .rok-chip:hover,
html.novy-design .typ-chip:hover,
html.novy-design .dash-filtr-dd-btn:hover { border-color: #cbd5e1; color: var(--nd-ink); }
html.novy-design .rok-chip.active,
html.novy-design .typ-chip.active {
  background: var(--nd-ink);
  border-color: var(--nd-ink);
  color: #fff;
}
html.novy-design .rok-chip-pocet { font-size: 11.5px; opacity: .65; }
html.novy-design .dash-filtr-toggle-hint { font-family: inherit; font-size: 11.5px; color: var(--nd-ink-3); }
html.novy-design .dash-razeni { flex-direction: row; align-items: center; flex-wrap: nowrap; }
html.novy-design .dash-razeni .dash-mega-select {
  height: 30px; padding: 0 10px; border-radius: 8px; font-size: 13px; border-color: var(--nd-line);
}

/* ── Seznam spoluprací: hustší řádky, důvod rizika v řádku ──────────────── */
html.novy-design .dash-pub-hlavni { padding: 11px 20px; gap: 14px; }
html.novy-design .dash-pub-titulek-rada { margin-bottom: 2px; }
html.novy-design .dash-pub-titulek { font-size: 13.5px; font-weight: 600; }
html.novy-design .dash-pub-meta { font-size: 12px; color: var(--nd-ink-3); }
html.novy-design .dash-pub-autor { color: var(--nd-ink-2); }
html.novy-design .dash-pub-mega { font-family: inherit; font-size: 12px; }
html.novy-design .dash-pub-row:hover { background: #f9fafb; }

/* „Nové“: nenápadná tečka místo křiklavého štítku a podbarvení */
html.novy-design .dash-pub-row.dash-pub-nove { background: #fff; }
html.novy-design .dash-pub-row.dash-pub-nove:hover { background: #f9fafb; }
html.novy-design .prace-nove-badge {
  font-size: 0; padding: 0;
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--nd-accent);
  box-shadow: 0 0 0 3px var(--nd-accent-bg);
  flex-shrink: 0;
}

html.novy-design .dash-pub-proc {
  display: flex; align-items: center; gap: 8px; flex-wrap: wrap;
  margin-top: 5px;
  font-size: 12px; color: var(--nd-ink-2);
}
html.novy-design .dash-pub-proc-duvod {
  font-size: 11px; font-weight: 600;
  padding: 1px 7px; border-radius: 4px;
  background: #f1f5f9; color: var(--nd-ink-2);
}
html.novy-design .dash-pub-proc-3 .dash-pub-proc-duvod { background: #fee2e2; color: #b91c1c; }
html.novy-design .dash-pub-proc-2 .dash-pub-proc-duvod { background: #fef3c7; color: #92400e; }
html.novy-design .dash-pub-proc-inst { font-weight: 500; color: var(--nd-ink); }
html.novy-design .dash-pub-proc-dalsi { color: var(--nd-ink-3); font-weight: 400; }
html.novy-design .dash-pub-proc-autor { color: var(--nd-ink-3); }

/* Země vpravo bez rámečků; sankce jediný výrazně červený prvek */
html.novy-design .dash-pub-zeme-chip { font-size: 12px; color: var(--nd-ink-2); }
html.novy-design .dash-pub-sankce-chip {
  background: #dc2626; color: #fff; border-color: #dc2626;
  border-radius: 6px; text-transform: none; font-size: 11.5px;
}
html.novy-design .dash-pub-sankce-chip:hover { background: #b91c1c; border-color: #b91c1c; }

/* ── Úzké obrazovky: panel zpět nahoru jako vodorovná lišta ─────────────── */
@media (max-width: 900px) {
  html.novy-design body.je-prihlasen > main { padding: 16px 16px 64px; }
  html.novy-design main > .form-section > .tabs-row > .tabs {
    position: static;
    width: auto;
    flex-direction: row;
    overflow-x: auto;
    border: 1px solid var(--nd-line);
    border-radius: 10px;
    padding: 4px;
    margin-bottom: 16px;
  }
  html.novy-design main > .form-section > .tabs-row > .tabs::before { display: none; }
  html.novy-design .tabs > .tab-btn { width: auto; }
  html.novy-design .design-nahled { margin-top: 0; white-space: nowrap; }
}

/* Upozornění na změnu rizikových zemí: místo žluté plochy s modrým
   tlačítkem klidná karta s jantarovým proužkem a tmavým tlačítkem */
html.novy-design .zeme-zmena-upozorneni {
  background: #fff;
  border: 1px solid var(--nd-line);
  border-left: 3px solid #d97706;
  border-radius: 8px;
  color: var(--nd-ink-2);
}
html.novy-design .zeme-zmena-upozorneni strong { color: var(--nd-ink); }
html.novy-design .zeme-zmena-pozn { color: var(--nd-ink-3); }
html.novy-design .zeme-zmena-upozorneni .btn-primary {
  background: var(--nd-ink);
  border-color: var(--nd-ink);
  color: #fff;
  box-shadow: none;
}
html.novy-design .zeme-zmena-upozorneni .btn-primary:hover { background: #1f2937; }

/* Export v Seznamu spoluprací: tlačítko s rozbalovacím panelem */
html.novy-design .spol-export { position: relative; }
html.novy-design .spol-export-panel {
  position: absolute; top: calc(100% + 6px); left: 0; z-index: 50;
  width: 300px;
  display: flex; flex-direction: column; gap: 6px;
  padding: 14px 16px;
  background: #fff;
  border: 1px solid var(--nd-line);
  border-radius: 10px;
  box-shadow: 0 10px 30px rgba(15, 23, 42, .12);
  font-size: 13.5px; color: var(--nd-ink);
}
html.novy-design .spol-export-panel.hidden { display: none; }
html.novy-design .spol-export-panel label { display: flex; align-items: baseline; gap: 8px; cursor: pointer; }
html.novy-design .spol-export-nadpis {
  font-size: 11px; font-weight: 600; letter-spacing: .05em; text-transform: uppercase;
  color: var(--nd-ink-3); margin-top: 4px;
}
html.novy-design .spol-export-filtry { margin-top: 4px; padding-top: 8px; border-top: 1px solid var(--nd-line); }
html.novy-design .spol-export-filtry span { color: var(--nd-ink-3); font-size: 12px; }
html.novy-design .spol-export-formaty { display: flex; gap: 16px; }
html.novy-design .spol-export-panel .btn-primary { margin-top: 8px; align-self: flex-start; background: var(--nd-ink); border-color: var(--nd-ink); box-shadow: none; }
html.novy-design .spol-export-panel { left: auto; right: 0; }
html.novy-design .spol-export-panel input { width: auto; flex: 0 0 auto; margin: 0; }
html.novy-design .spol-export-filtry { display: block !important; }
html.novy-design .spol-export-filtry input { margin-right: 6px; vertical-align: -2px; }
html.novy-design .nastaveni-radek select { padding: 7px 10px; font-size: 13.5px; }
/* Panel exportu přesahuje kartu seznamu – karta ho nesmí oříznout */
html.novy-design #moje-inst-podsekce-spoluprace { overflow: visible; }

/* ── Šířka obsahu: formulář, výsledky i hlášky v jednom sloupci ─────────────
   Na velkém monitoru se dřív výsledky roztáhly přes celou šířku, formulář
   nad nimi ne. Sloupec se na širokých obrazovkách centruje ve volné ploše. */
html.novy-design body.je-prihlasen > main > * {
  max-width: 1320px;
  margin-left: auto;
  margin-right: auto;
}
html.novy-design body.je-prihlasen > main > .form-section { max-width: 1320px; }

/* ── Formuláře: primární tlačítko tmavé, pole menší a stejně vysoká ─────── */
html.novy-design body.je-prihlasen main button[type="submit"],
html.novy-design body.je-prihlasen main .btn-primary {
  background: var(--nd-ink);
  box-shadow: none;
  padding: 10px 22px;
  font-size: 14px; font-weight: 600;
  letter-spacing: 0;
  border-radius: 8px;
}
html.novy-design body.je-prihlasen main button[type="submit"]:hover,
html.novy-design body.je-prihlasen main .btn-primary:hover {
  background: #1f2937; box-shadow: none; transform: none;
}
html.novy-design body.je-prihlasen main button[type="submit"]:disabled { background: #94a3b8; }
html.novy-design body.je-prihlasen main input:not([type="checkbox"]):not([type="radio"]),
html.novy-design body.je-prihlasen main select {
  border-width: 1px;
  border-radius: 8px;
  padding: 9px 12px;
  font-size: 14px;
}
html.novy-design body.je-prihlasen main select { padding-right: 32px; }

/* Hloubková analýza: zarovnaná vlevo jako ostatní stránky, bez fialové */
html.novy-design .dr-section { max-width: 920px; margin: 0; padding: 0; }
html.novy-design .dr-hlavicka-badge {
  background: var(--nd-accent-bg); color: var(--nd-accent);
  letter-spacing: .08em;
}
html.novy-design .dr-btn-spustit {
  background: var(--nd-ink);
  box-shadow: none;
  border-radius: 8px;
}
html.novy-design .dr-btn-spustit:hover { filter: none; background: #1f2937; }

/* ── Upozornění: bílá karta s barevným proužkem místo barevných ploch ──── */
html.novy-design .alert,
html.novy-design .sankce-banner--warn,
html.novy-design .moje-inst-nove-banner {
  background: #fff;
  border: 1px solid var(--nd-line);
  border-left: 3px solid var(--nd-ink-3);
  border-radius: 8px;
  box-shadow: none;
  color: var(--nd-ink-2);
}
html.novy-design .alert-body strong { color: var(--nd-ink); }
html.novy-design .alert-warn,
html.novy-design .sankce-banner--warn,
html.novy-design .moje-inst-nove-banner { border-left-color: #d97706; }
html.novy-design .alert-riziko { border-left-color: #dc2626; }
html.novy-design .alert-ok     { border-left-color: #16a34a; }
html.novy-design .alert-info   { border-left-color: var(--nd-accent); }
html.novy-design .alert-icon { background: none !important; width: 20px; height: 20px; }
html.novy-design .alert-warn .alert-icon { color: #d97706; }
html.novy-design .alert-riziko .alert-icon { color: #dc2626; }
html.novy-design .alert-ok .alert-icon { color: #16a34a; }
html.novy-design .alert-info .alert-icon { color: var(--nd-accent); }
html.novy-design .alert code { font-size: 12px; color: var(--nd-ink-3); }
html.novy-design .trial-pruh--konci { background: #fff; color: var(--nd-ink-2); border-bottom: 1px solid var(--nd-line); box-shadow: inset 3px 0 0 #d97706; }

/* ── Mobil: kompaktní vodorovná navigace ────────────────────────────────── */
@media (max-width: 900px) {
  html.novy-design main > .form-section > .tabs-row > .tabs {
    align-items: center;
    flex-wrap: nowrap;
    scrollbar-width: none;
    background: #fff;
  }
  html.novy-design .tabs > .tab-btn { flex: 0 0 auto; padding: 8px 12px; margin-top: 0; }
  html.novy-design .tabs > .tab-btn.nd-jen::before { display: none; }
  html.novy-design .tabs > .nd-pravni { display: none; }
  html.novy-design .design-nahled { flex: 0 0 auto; padding: 6px 10px; }
  html.novy-design body.je-prihlasen > main > .form-section { padding: 16px; }
  html.novy-design .dash-podsekce-nav-top { overflow-x: auto; flex-wrap: nowrap; scrollbar-width: none; }
}
html.novy-design #moje-inst-aktualizace-chyba code { display: none; }  /* technický detail jen v konzoli/logu */
/* Okna (hlášení, onboarding…) – stejné tmavé primární tlačítko jako na stránkách */
html.novy-design body.je-prihlasen .modal .btn-primary,
html.novy-design body.je-prihlasen .modal button[type="submit"] {
  background: var(--nd-ink); box-shadow: none; letter-spacing: 0; font-weight: 600;
}
html.novy-design body.je-prihlasen .modal .btn-primary:hover,
html.novy-design body.je-prihlasen .modal button[type="submit"]:hover { background: #1f2937; transform: none; box-shadow: none; }

/* ═══ Barvy jako úvodní stránka: tmavý modrý rám (lišta + panel), modrá
   jako hlavní barva akcí. Obsah zůstává světlý kvůli čitelnosti. ═══ */
html.novy-design {
  --nd-accent: #2563eb;
  --nd-accent-bg: #eaf1ff;
  --nd-bg: #f3f5f9;
  --nd-ram-1: #0e1a33;
  --nd-ram-2: #16305c;
}
html.novy-design body.je-prihlasen > header {
  background:
    radial-gradient(40% 180% at 85% 0%, rgba(59, 130, 246, .28), transparent 70%),
    linear-gradient(90deg, var(--nd-ram-1), var(--nd-ram-2));
  border-bottom: 1px solid rgba(255, 255, 255, .06);
}
html.novy-design .logo-wordmark { align-items: center; }
html.novy-design .logo-wordmark .lp-logo-stit { display: block; height: 24px; width: auto; }

/* Levý panel */
html.novy-design main > .form-section > .tabs-row > .tabs {
  background: linear-gradient(180deg, var(--nd-ram-1) 0%, #12264a 100%);
  border-right: none;
}
html.novy-design main > .form-section > .tabs-row > .tabs::before { color: #fff; }
html.novy-design main > .form-section > .tabs-row > .tabs[data-instituce]:not([data-instituce=""])::before { border-bottom-color: rgba(255, 255, 255, .1); }
html.novy-design .tabs > .tab-btn { color: rgba(255, 255, 255, .68); }
html.novy-design .tabs > .tab-btn:hover { background: rgba(255, 255, 255, .06); color: #fff; }
html.novy-design .tabs > .tab-btn.active { background: rgba(96, 165, 250, .16); color: #fff; }
html.novy-design .tabs > .tab-btn.active .tab-ikona { color: #93c5fd; opacity: 1; }
html.novy-design .tabs > .tab-btn.nd-jen::before { border-top-color: rgba(255, 255, 255, .1); }
html.novy-design .tabs > .nd-pravni, html.novy-design .tabs > .nd-pravni a { color: rgba(255, 255, 255, .45); }
html.novy-design .tabs > .nd-pravni a:hover { color: #fff; }
html.novy-design .design-nahled { background: rgba(251, 191, 36, .12); color: #fcd34d; }

/* Hlavní akce modře (dřív černé) */
html.novy-design body.je-prihlasen main button[type="submit"],
html.novy-design body.je-prihlasen main .btn-primary,
html.novy-design body.je-prihlasen .modal .btn-primary,
html.novy-design body.je-prihlasen .modal button[type="submit"],
html.novy-design .dr-btn-spustit,
html.novy-design .zeme-zmena-upozorneni .btn-primary,
html.novy-design .spol-export-panel .btn-primary {
  background: var(--nd-accent); border-color: var(--nd-accent);
}
html.novy-design body.je-prihlasen main button[type="submit"]:hover,
html.novy-design body.je-prihlasen main .btn-primary:hover,
html.novy-design body.je-prihlasen .modal .btn-primary:hover,
html.novy-design body.je-prihlasen .modal button[type="submit"]:hover,
html.novy-design .dr-btn-spustit:hover,
html.novy-design .zeme-zmena-upozorneni .btn-primary:hover,
html.novy-design .spol-export-panel .btn-primary:hover { background: #1d4ed8; }

/* Karty obsahu: jemný stín místo jen čáry */
html.novy-design body.je-prihlasen > main > .form-section,
html.novy-design #moje-inst-podsekce-spoluprace,
html.novy-design .nd-novinky { box-shadow: 0 1px 2px rgba(15, 23, 42, .04), 0 4px 16px -8px rgba(15, 23, 42, .08); }

/* Mobil: vodorovná lišta navigace v tmavém rámu */
@media (max-width: 900px) {
  html.novy-design main > .form-section > .tabs-row > .tabs { background: var(--nd-ram-1); border-color: transparent; }
}
html.novy-design body.je-prihlasen > main > .form-section:has(> .tab-panel[data-tab="moje-instituce"]:not(.hidden)) { box-shadow: none; }

/* ═══ Změkčení: jeden souvislý rám, obsah jako zaoblený list, méně kontrastu ═══ */
html.novy-design {
  --nd-ram-1: #172a4d;
  --nd-ram-2: #1d3766;
}
/* Rám = pozadí stránky; lišta i panel jsou průhledné a splývají s ním */
html.novy-design body.je-prihlasen {
  background: linear-gradient(160deg, var(--nd-ram-1) 0%, var(--nd-ram-2) 60%, #1a3159 100%) fixed;
}
html.novy-design body.je-prihlasen > header { background: transparent; border-bottom: none; }
html.novy-design main > .form-section > .tabs-row > .tabs { background: transparent; }
/* Obsah: zaoblený světlý list vsazený do rámu */
html.novy-design body.je-prihlasen > main {
  margin: 0 0 0 var(--nd-sidebar);
  padding: 28px 32px 80px;
  min-height: calc(100vh - var(--nd-header));
  background: var(--nd-bg);
  border-top-left-radius: 22px;
  box-shadow: inset 1px 1px 0 rgba(255, 255, 255, .5);
}
/* Aktivní přepínače světle modře místo černé */
html.novy-design .kpi-karta.active,
html.novy-design .kpi-karta-nevyresene.active,
html.novy-design .kpi-karta-vyresene.active,
html.novy-design .rok-chip.active,
html.novy-design .typ-chip.active {
  background: var(--nd-accent-bg);
  border-color: #c7d7fe;
  color: #1e40af;
}
html.novy-design .kpi-karta.active .kpi-karta-popis,
html.novy-design .kpi-karta.active .kpi-karta-cislo { color: #1e40af; }
/* Sankce: světle červená s červeným textem (jako na úvodní stránce) */
html.novy-design .dash-pub-sankce-chip { background: #fef2f2; color: #b91c1c; border-color: #fecaca; }
html.novy-design .dash-pub-sankce-chip:hover { background: #fee2e2; border-color: #fca5a5; }
@media (max-width: 900px) {
  html.novy-design body.je-prihlasen > main { margin: 0; border-radius: 18px 18px 0 0; padding: 16px 16px 64px; }
  html.novy-design main > .form-section > .tabs-row > .tabs { background: var(--nd-ram-1); }
}
@media (max-width: 600px) {
  html.novy-design body.je-prihlasen > header .header-inner { padding: 0 14px; }
  html.novy-design .auth-user-jmeno { display: none; }
  html.novy-design .auth-user-btn { padding: 4px; }
}

/* Tečka „nové“ vlevo od názvu – při dlouhém názvu už neodskočí na vlastní řádek */
html.novy-design .dash-pub-titulek-rada { position: relative; }
html.novy-design .dash-pub-titulek-rada > .prace-nove-badge { position: absolute; left: -16px; top: .55em; }
/* Sankce a Sedm synů jen jednou – štítkem vpravo; vlevo zůstává instituce */
html.novy-design .dash-pub-proc-duvod { display: none; }
/* Kritické technologie šedě – červená zůstává jediná varovná barva */
html.novy-design .dash-pub-obor-inline .obor-chip {
  background: #f1f5f9; color: var(--nd-ink-2); border-color: #e2e8f0;
}
html.novy-design .dash-pub-titulek-rada > .prace-nove-badge { top: .7em; }
/* Sedm synů vpravo jako na úvodní stránce: světlý štítek s tmavým textem */
html.novy-design .dash-pub-sedmsynu-chip { background: #f1f5f9; color: var(--nd-ink); border: 1px solid #e2e8f0; }
html.novy-design .dash-pub-sedmsynu-chip:hover { background: #e2e8f0; }
/* Lišta musí být neprůhledná – obsah pod ní při posouvání prosvítal. Stejný
   (fixed) přechod jako pozadí rámu, takže spoj lišty a panelu není vidět. */
html.novy-design body.je-prihlasen > header {
  background: linear-gradient(160deg, var(--nd-ram-1) 0%, var(--nd-ram-2) 60%, #1a3159 100%) fixed;
}
/* Tečka „nové“ má font-size 0, em by byl 0 – posun v px */
html.novy-design .dash-pub-titulek-rada > .prace-nove-badge { top: 5px; }

/* Zaoblený roh obsahu zůstává pod lištou i při posouvání: pevný kousek
   rámu (stejný fixed přechod) s vykrojenou čtvrtkružnicí. */
html.novy-design body.je-prihlasen::after {
  content: ""; position: fixed; z-index: 90; pointer-events: none;
  top: var(--nd-header); left: var(--nd-sidebar);
  width: 22px; height: 22px;
  background: linear-gradient(160deg, var(--nd-ram-1) 0%, var(--nd-ram-2) 60%, #1a3159 100%) fixed;
  -webkit-mask: radial-gradient(circle at 100% 100%, transparent 21.5px, #000 22px);
  mask: radial-gradient(circle at 100% 100%, transparent 21.5px, #000 22px);
}
@media (max-width: 900px) { html.novy-design body.je-prihlasen::after { display: none; } }

/* Nový vzhled je výchozí – rámeček „Náhled nového vzhledu“ už není potřeba */
html.novy-design .design-nahled { display: none; }
