/* =====================================================================
   NIHIL — moderní reskin (overlay). Cíl: co nejvěrněji reprodukovat
   schválený mockup (design-poc.html) na živé appce.
   Aktivní jen s <body class="nihil-modern"> (přepínač v dev buildu).
   Načítá se ZA styles.css. Mění barvy + kompozici, nesahá na markup.
   ===================================================================== */

body.nihil-modern {
  --primary:#1c8a84; --primary-600:#136761; --primary-050:#e2f3f1;
  --bg:#eef2f6; --surface:#ffffff; --text:#1c2530; --muted:#5d6b7a;
  --border:#e4e9ee; --line-soft:#eef2f6; --zebra:#f6f8fb; --hover:#eef6ff;
  --ui:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}

/* ============ HLAVIČKA: bílá lišta + teal nápis + pilulka verze ============ */
body.nihil-modern #header { background:var(--surface) !important; border-bottom:1px solid var(--border) !important; }
body.nihil-modern #header td { background-image:none !important; }
body.nihil-modern .nhl, body.nihil-modern #tdheader {
  background:none !important; width:auto !important; height:auto !important;
  vertical-align:middle !important; padding:13px 0 13px 20px !important;
}
body.nihil-modern .nihil-brand {
  display:inline-block !important; vertical-align:middle;
  color:var(--primary); font:700 20px var(--ui); letter-spacing:-.01em;
}
body.nihil-modern .headertext {
  display:inline-block !important; vertical-align:middle; margin-left:9px;
  background:var(--primary-050) !important; color:var(--primary) !important;
  font:600 11px var(--ui) !important; padding:2px 9px !important; border-radius:999px !important;
}
body.nihil-modern .headertext font { color:var(--primary) !important; }
body.nihil-modern #header .userhref,
body.nihil-modern #header a.userhref:link,
body.nihil-modern #header a.userhref:visited,
body.nihil-modern #header a.userhref:hover { color:var(--text) !important; font-family:var(--ui) !important; font-weight:600; }

/* ============ PLÁTNO ============ */
body.nihil-modern #outer, body.nihil-modern #wrapper { background:var(--bg) !important; border:0 !important; }

/* ============ HORNÍ MENU (ploché taby) ============ */
body.nihil-modern #topmenu {
  background:var(--surface) !important; border-bottom:1px solid var(--border) !important;
  font-family:var(--ui) !important; font-size:12.5px !important;
}
body.nihil-modern #toplist li a, body.nihil-modern #toplist li#logout a {
  color:var(--muted) !important; font-weight:600 !important;
  padding:9px 14px !important; border-bottom:2px solid transparent !important;
}
body.nihil-modern #toplist li a:hover, body.nihil-modern #toplist li#logout a:hover {
  color:var(--primary) !important; background:transparent !important;
}

/* ============ LEVÝ NAV: bílý sloupec, plný teal aktivní ============ */
body.nihil-modern #leftnavcontainer {
  background:var(--surface) !important; border-right:1px solid var(--border) !important;
  font-family:var(--ui) !important; vertical-align:top; padding:10px 8px 14px !important;
}
body.nihil-modern #leftnavcontainer .navtitle {
  background:transparent !important; color:var(--muted) !important;
  font:600 10px var(--ui) !important; letter-spacing:.06em; text-transform:uppercase;
  padding:12px 8px 5px !important;
}
body.nihil-modern ul.navlist { background:transparent !important; font:13px var(--ui) !important; border:0 !important; box-shadow:none !important; margin:0 !important; }
body.nihil-modern ul.navlist li { border-bottom:0 !important; }
body.nihil-modern ul.navlist li a { padding:6px 10px !important; border-radius:7px !important; margin:1px 0; }
body.nihil-modern ul.navlist li a:link, body.nihil-modern ul.navlist li a:visited { color:var(--text) !important; font-weight:500; }
body.nihil-modern ul.navlist li a:hover, body.nihil-modern ul.navlist li a.selected:hover { background:var(--primary-050) !important; color:var(--primary) !important; }
body.nihil-modern ul.navlist li a.selected { background:var(--primary) !important; color:#fff !important; font-weight:600; }
/* popisky export ikon (sdílí .userhref) – accent, ne bílá */
body.nihil-modern #leftnavcontainer .userhref:link,
body.nihil-modern #leftnavcontainer .userhref:visited { color:var(--primary) !important; font-family:var(--ui) !important; }
body.nihil-modern #leftnavcontainer .userhref:hover { color:var(--primary-600) !important; }

/* ============ OBSAH = bílá zaoblená karta (jedna tenká linka) ============ */
body.nihil-modern #contentwrapper { background:var(--bg) !important; padding:14px 14px 14px 0 !important; font-family:var(--ui) !important; }
body.nihil-modern #content {
  background:var(--surface) !important; border:0 !important;
  border-radius:10px !important; box-shadow:0 1px 5px rgba(20,40,80,.09) !important;
  padding:0 0 8px 0 !important; font-family:var(--ui) !important;
}
/* nadpis vycentrovaný v obsahu (jako mockup) */
body.nihil-modern #contentitle {
  background:transparent !important; color:var(--text) !important;
  font:700 14px var(--ui) !important; text-transform:none !important; letter-spacing:0;
  height:auto !important; padding:11px 0 10px !important; margin:0 !important;
  border-bottom:1px solid var(--border) !important; border-radius:10px 10px 0 0 !important;
}
body.nihil-modern #contenstudytitle, body.nihil-modern #contenimbruvicatitle,
body.nihil-modern #contenadcetristitle, body.nihil-modern #contenpolivytitle {
  font-family:var(--ui) !important; border-radius:10px 10px 0 0 !important; margin:0 !important;
}
body.nihil-modern #content #patlist { padding:12px 12px 0 !important; }

/* odkazy v obsahu – accent */
body.nihil-modern #content a:link, body.nihil-modern #content a:visited { color:var(--primary) !important; }
body.nihil-modern #content a:hover { color:var(--primary-600) !important; }
body.nihil-modern #content a.listtitle:link,
body.nihil-modern #content a.listtitle:visited,
body.nihil-modern #content a.listtitle:hover { color:var(--muted) !important; }

/* ============ DATOVÉ TABULKY (hustota + jemná zebra/linky) ============ */
body.nihil-modern #patlist table,    body.nihil-modern #patlist table td,    body.nihil-modern #patlist table th,
body.nihil-modern #st_patlist table, body.nihil-modern #st_patlist table td, body.nihil-modern #st_patlist table th,
body.nihil-modern #samlist table,    body.nihil-modern #samlist table td,    body.nihil-modern #samlist table th {
  font-family:Tahoma,Arial,sans-serif !important; font-size:11px !important; line-height:1.25 !important;
}
body.nihil-modern #patlist table { border-collapse:collapse !important; }
body.nihil-modern #patlist table td { padding:2px 6px !important; border-top:0 !important; border-bottom:1px solid var(--line-soft) !important; }
/* hlavička sloupců (orig. bgcolor #dddddd) → světlá */
body.nihil-modern #patlist table tr[bgcolor="#dddddd"] { background:#f3f6f9 !important; }
body.nihil-modern #patlist table tr[bgcolor="#dddddd"] td { border-bottom:1px solid var(--border) !important; }
/* jemná zebra */
body.nihil-modern #patlist table tr[bgcolor="#f4f4f4"] { background:var(--zebra) !important; }
body.nihil-modern #patlist table tr[bgcolor="#ffffff"] { background:var(--surface) !important; }
/* hover (přebije i JS onmouseover bgColor) */
body.nihil-modern #patlist table tbody tr:hover td,
body.nihil-modern #patlist table tr:hover { background:var(--hover) !important; }

/* ============ STRÁNKOVÁNÍ (odkazy id…form_pages → tlačítka) ============ */
body.nihil-modern #patlist a[id*="form_pages"] {
  display:inline-block; padding:3px 9px; margin:0 1px; border:1px solid var(--border);
  border-radius:6px; color:var(--text) !important; font:600 12px var(--ui); text-decoration:none;
}
body.nihil-modern #patlist a[id*="form_pages"]:hover { border-color:var(--primary); color:var(--primary) !important; background:var(--primary-050); }

/* ============ FILTRY / INPUTY ============ */
body.nihil-modern input[type=text].editnormal,
body.nihil-modern input[type=password].editnormal,
body.nihil-modern textarea.editnormal,
body.nihil-modern input[type=text].editmandatory,
body.nihil-modern select.selnormal,
body.nihil-modern select.selmandatory {
  border:1px solid var(--border) !important; border-radius:5px !important;
  padding:2px 6px !important; background-color:#fbfcfe !important;
}
body.nihil-modern input[type=text].editnormal:focus,
body.nihil-modern input[type=text].editmandatory:focus {
  outline:2px solid var(--primary-050) !important; border-color:var(--primary) !important;
}
body.nihil-modern input[type=text].editmandatory,
body.nihil-modern select.selmandatory { background-color:#fdf6f6 !important; }

/* ============ TLAČÍTKA ============ */
body.nihil-modern .shadebut, body.nihil-modern .shadebutsmall,
body.nihil-modern .shadebutsmallest, body.nihil-modern .shadebut80,
body.nihil-modern .shadebutxxl, body.nihil-modern .shadebutsmall2 {
  background:var(--surface) !important; border:1px solid var(--border) !important;
  border-radius:6px !important; color:var(--text) !important;
}
body.nihil-modern .shadebut:hover, body.nihil-modern .shadebutsmall:hover,
body.nihil-modern .shadebutsmallest:hover { border-color:var(--primary) !important; color:var(--primary) !important; }

/* ============ ZÁLOŽKY (Pacienti/Statistiky/SAE/Akce) → podtržení, ne boxy ============ */
body.nihil-modern #tablist { border-bottom:1px solid var(--border) !important; margin-bottom:0 !important; }
body.nihil-modern #tablist li a,
body.nihil-modern #tablist li a:link,
body.nihil-modern #tablist li a:visited {
  border:0 !important; background:transparent !important; border-radius:0 !important;
  color:var(--muted) !important; font:600 12.5px var(--ui) !important;
  padding:7px 14px !important; border-bottom:2px solid transparent !important;
}
body.nihil-modern #tablist li a:hover { background:transparent !important; color:var(--primary) !important; border-color:transparent !important; }
body.nihil-modern #tablist li a#selected,
body.nihil-modern #tablist li a.selected {
  background:transparent !important; color:var(--primary) !important;
  border-bottom:2px solid var(--primary) !important;
}

/* ============ FORMULÁŘE (jemné, ne tvrdé boxy) ============ */
body.nihil-modern #content fieldset { border:1px solid #edf1f4 !important; border-radius:9px !important; }
body.nihil-modern #content legend { color:var(--primary) !important; font-weight:700 !important; font-family:var(--ui) !important; }

/* ============ defenzivně: žádné rámečky/outline kolem ikon a obrázků ============ */
body.nihil-modern #content img { border:0 !important; outline:0 !important; }
body.nihil-modern #content a:focus,
body.nihil-modern #leftnavcontainer a:focus { outline:0 !important; }
body.nihil-modern .liconnoborder, body.nihil-modern .liconborder { border:0 !important; }

/* ============ FOOTER ============ */
body.nihil-modern #footer { background:var(--surface) !important; border-top:1px solid var(--border) !important; }
body.nihil-modern #footer, body.nihil-modern #footer p { color:var(--muted) !important; }
body.nihil-modern #footer a:link, body.nihil-modern #footer a:visited { color:var(--muted) !important; }
body.nihil-modern #footer a:hover { color:var(--primary) !important; }

/* ============ plovoucí přepínač (jen dev) ============ */
#nihil-theme-toggle {
  position:fixed; right:14px; bottom:14px; z-index:99999;
  background:#1c8a84; color:#fff; font:600 12px system-ui,sans-serif;
  padding:8px 14px; border-radius:999px; cursor:pointer; user-select:none;
  box-shadow:0 2px 8px rgba(0,0,0,.22);
}
#nihil-theme-toggle:hover { background:#136761; }
