/*

// SPZ2 :: REDESIGN "GARÁŽ"
// Created :: 2026-07-04

// Tmavý design systém:
// - povrchy jako karty s 1px rámečkem, žádné ploché šedé pruhy
// - odkazy VŽDY akcentovou modrou, hover podtržení — jasně odlišené od textu
// - jednotná škála mezer (8px grid), jednotné poloměry (--r-*)
// - hvězdy jantarové, stavy zelená/červená/jantar

*/

:root {

   /* PLOCHY */
   --plocha-page:      #0f1115;   /* pozadí stránky (modročerná) */
   --plocha-karta:     #181b21;   /* karty, boxy, komentáře */
   --plocha-karta-2:   #1e232b;   /* zanořené plochy (inputy, badge) */
   --plocha-hover:     #232933;   /* hover ploch */

   /* RÁMEČKY */
   --ramecek:          #262b33;   /* výchozí 1px okraj karet */
   --ramecek-svetly:   #333a45;   /* hover / fokus okraj */

   /* TEXT */
   --text-hlavni:      #e8eaed;   /* nadpisy, silný text */
   --text-default:     #c6ccd4;   /* běžný text */
   --text-tlumeny:     #8b95a1;   /* popisky, meta údaje */
   --text-slaby:       #5d6570;   /* nejslabší (id, timestampy) */

   /* AKCENT (modrá) */
   --akcent:           #4d9fff;   /* odkazy, aktivní prvky */
   --akcent-btn:       #2f7bff;   /* primární tlačítka */
   --akcent-btn-hover: #1f66e6;
   --akcent-mekky:     rgba(77, 159, 255, 0.12);  /* tinted pozadí */
   --akcent-ramecek:   rgba(77, 159, 255, 0.35);

   /* STAVY */
   --ok:               #3fb950;
   --ok-mekky:         rgba(63, 185, 80, 0.12);
   --chyba:            #f85149;
   --chyba-mekky:      rgba(248, 81, 73, 0.12);
   --varovani:         #d29922;
   --varovani-mekky:   rgba(210, 153, 34, 0.12);

   /* HVĚZDY */
   --hvezda:           #ffb224;
   --hvezda-prazdna:   #3d4450;

   /* SPZ ZNAČKA (nadpis jako reálná značka) */
   --znacka-plocha:    #f4f6f8;
   --znacka-text:      #14161a;
   --znacka-pruh:      #003399;   /* EU modrá */

   /* POLOMĚRY */
   --r-karta:  14px;
   --r-prvek:  10px;
   --r-mini:   6px;

   /* STÍN */
   --stin-karta: 0 1px 3px rgba(0,0,0,0.4);

   /* Kompatibilita se starými názvy proměnných (kdyby něco zůstalo) */
   --txt-white: #ffffff;
   --txt-default: #c6ccd4;
   --txt-seda-light: #8b95a1;
   --txt-blue-lighter: #4d9fff;
   --bg-seda-lighter: #1e232b;
   --bg-seda-light: #181b21;
   --bg-seda-page: #0f1115;
   --bg-seda-darker: #12151a;
   --bg-blue-default: #2f7bff;
   --bg-v2-blue-darker: #1f66e6;
   --bg-v2-green: #238636;
   --bg-v2-red: #da3633;
   --txt-v2-white: #ffffff;
   --txt-v2-blue-light: #4d9fff;
   --txt-v2-seda-lighter: #c6ccd4;
   --line-v2-seda: #262b33;
   --line-v2-seda-light: #333a45;
   --color-orange: #ffb224;
   --color-seda-lighter: #3d4450;
   --bg-v2-seda-dark: #181b21;
}

/* ============================================================
   ZÁKLAD
   ============================================================ */

body { background-color: var(--plocha-page); color: var(--text-default); }
* { color: inherit; }

/* ODKAZY :: jednotné chování v celém webu
   — akcentová modrá, podtržení na hover, jasně odlišené od textu */
a { color: var(--akcent); text-decoration: none; }
a:hover { text-decoration: underline; }

::selection { background: var(--akcent-mekky); }

/* NADPISY */
h1, h2, h3, h4 { color: var(--text-hlavni); }

/* ============================================================
   FLASH NOTIFIKACE
   ============================================================ */

div.error_box, div.success_box, div.info_box, div.warning_box { border: 1px solid; }
div.error_box li, div.success_box li, div.info_box li, div.warning_box li { color: var(--text-hlavni); }
div.error_box   { background: var(--chyba-mekky);    border-color: var(--chyba); }
div.success_box { background: var(--ok-mekky);       border-color: var(--ok); }
div.info_box    { background: var(--akcent-mekky);   border-color: var(--akcent-ramecek); }
div.warning_box { background: var(--varovani-mekky); border-color: var(--varovani); }

/* ============================================================
   ZÁHLAVÍ + MENU + SEARCH
   ============================================================ */

#zahlavi { background: var(--plocha-page); border-bottom: 1px solid var(--ramecek); }
#menu ul li a { color: var(--text-default); }
#menu ul li a:hover { color: var(--akcent); text-decoration: none; }

.search_box { background: var(--plocha-karta-2); border: 1px solid var(--ramecek); }
.search_box:focus-within { border-color: var(--akcent-ramecek); }
.search_box input { color: var(--text-hlavni); }
.search_box input::placeholder { color: var(--text-tlumeny); opacity: 1; }

/* MENU :: BURGER */
.nav_toggle { background: transparent; }
.nav_toggle_bar { background: var(--text-hlavni); }
.nav_drawer_inner { background: var(--plocha-karta); border-left: 1px solid var(--ramecek); }
.nav_close { background: transparent; color: var(--text-tlumeny); }
.menu_all li { border-bottom: 1px solid var(--ramecek); }
.menu_all li a { color: var(--text-default); }
.menu_all li a:hover { background: var(--plocha-hover); text-decoration: none; }

/* HP */
.hp_search_box { background: var(--plocha-karta-2); border: 1px solid var(--ramecek); }
.hp_search_box:focus-within { border-color: var(--akcent-ramecek); }
.hp_search_box input { color: var(--text-hlavni); }
.hp_search_box input::placeholder { color: var(--text-tlumeny); opacity: 1; }
.hp_spz_list .spz_item { color: var(--text-tlumeny); }
.hp_spz_list .spz_item a { color: var(--akcent); }

/* LISTA / DIALOG */
.lista_dialog { background: var(--plocha-karta); border: 1px solid var(--ramecek); }

/* BREADCRUMB */
.breadcrumb { color: var(--text-tlumeny); }
.breadcrumb a { color: var(--text-tlumeny); }
.breadcrumb a:hover { color: var(--akcent); }
.breadcrumb [aria-current="page"] { color: var(--text-default); opacity: 1; }

/* ============================================================
   PATIČKA
   ============================================================ */

footer { border-top: 1px solid var(--ramecek); }
#paticka h4 { color: var(--text-hlavni); }
#paticka a { color: var(--text-tlumeny); }
#paticka a:hover { color: var(--akcent); }
#paticka_hp span { color: var(--text-slaby); }
#paticka_hp a { color: var(--text-tlumeny); }
#paticka_hp a:hover { color: var(--akcent); }

/* ============================================================
   TINYMCE / OBSAH
   ============================================================ */

.tinymce h2, .tinymce h3 { color: var(--text-hlavni); }
.tinymce strong { color: var(--text-hlavni); }
.tinymce a { color: var(--akcent); }
.tinymce table.spz-info-table th { color: var(--text-tlumeny); }
.tinymce table.spz-info-table td { color: var(--text-hlavni); }

/* PARTNER */
.partner-box.partner-box-txt .label a { color: var(--akcent); }

/* ============================================================
   FORMULÁŘE
   ============================================================ */

.form_container { background: var(--plocha-karta); border: 1px solid var(--ramecek); box-shadow: var(--stin-karta); }

.form_line label { color: var(--text-tlumeny); }
.form_line input[type="text"], .form_line input[type="email"], .form_line input[type="password"], .form_line select, .form_line textarea, .komentar-formular textarea, .spz-hlaseni-form textarea {
    background: var(--plocha-karta-2); border: 1px solid var(--ramecek); color: var(--text-hlavni);
}
.form_line input:focus, .form_line textarea:focus, .komentar-formular textarea:focus, .spz-hlaseni-form textarea:focus {
    border-color: var(--akcent-ramecek); outline: none;
}
.form_line input::placeholder, textarea::placeholder { color: var(--text-slaby); opacity: 1; }

.btn_form { background: var(--akcent-btn); color: #ffffff; border: none; }
.btn_form:hover { background: var(--akcent-btn-hover); }

.form_sub_links a { color: var(--akcent); text-decoration: underline; }
.form-help { color: var(--text-tlumeny); }

/* ============================================================
   PROFIL
   ============================================================ */

#column_left_profil li.user { color: var(--text-default); border-bottom: 1px solid var(--ramecek); }
#column_left_profil li.user span { color: var(--akcent); }
#column_left_profil li.menu_item:hover { background: var(--plocha-hover); }
#column_left_profil li.menu_item.active { background: var(--akcent-mekky); }
#column_left_profil li.menu_item.active a { color: var(--akcent); }

.left_profil_user { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
.left_profil_user_label { color: var(--text-tlumeny); }
.left_profil_user_email { color: var(--akcent); }
.left_profil_user_name { color: var(--text-default); }
.left_profil_user_name span { color: var(--text-hlavni); }

.left_profil_nav { background: var(--plocha-karta); border: 1px solid var(--ramecek); border-radius: 10px; overflow: hidden; }
.left_profil_nav .menu_item a { color: var(--text-default); transition: background-color 0.2s ease; }
.left_profil_nav .menu_item a:hover { text-decoration: none; }
.left_profil_nav .menu_item:hover { background: var(--plocha-hover); }
.left_profil_nav .menu_item.active { background: var(--akcent-mekky); }
.left_profil_nav .menu_item.active a { color: var(--akcent); }

table.profil_standard { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
table.profil_standard th { color: var(--text-tlumeny); }
table.profil_standard td { color: var(--text-default); }
table.profil_standard tbody tr:nth-child(even) { background: rgba(255,255,255,0.02); }
table.profil_standard tbody tr:hover { background: var(--akcent-mekky); }
table.profil_standard a.spz-link { color: var(--akcent); }

.timeline_empty { color: var(--text-tlumeny); }
.timeline_item { background: var(--plocha-karta); border: 1px solid var(--ramecek); border-left: 3px solid var(--akcent); }
.timeline_time { color: var(--text-tlumeny); font-size: 12px; }
.timeline_subject { color: var(--text-hlavni); }
.timeline_desc { color: var(--text-tlumeny); font-size: 13px; }

/* ============================================================
   DETAIL SPZ :: AKČNÍ KARTY (sledování / hodnocení / hlášení)
   ============================================================ */

.spz-karta-nadpis { color: var(--text-hlavni); }
.spz-karta-popis { color: var(--text-tlumeny); }

.spz-akce .spz-sledovani-box,
.spz-akce .spz-hodnoceni-box,
.spz-akce .spz-hlaseni-box {
    background: var(--plocha-karta); border: 1px solid var(--ramecek); box-shadow: var(--stin-karta);
}

/* Tlačítka v kartách — jednotný vzhled */
.spz-sledovani-box .btn-spz-sledovani,
.spz-hlaseni-box .btn-spz-hlaseni {
    color: #ffffff; background: var(--akcent-btn); transition: background-color 0.2s ease;
}
.spz-sledovani-box .btn-spz-sledovani:hover,
.spz-hlaseni-box .btn-spz-hlaseni:hover { background: var(--akcent-btn-hover); }

.spz-sledovani-box .btn-spz-status { background: var(--ok-mekky); color: var(--ok); border: 1px solid var(--ok); opacity: 1; }

.spz-info-link, .spz-zrusit-link { color: var(--akcent); }
.spz-hlaseni-hint { color: var(--text-tlumeny); }
.spz-hlaseni-box .spz-hlaseni-form { background: var(--plocha-karta-2); border: 1px solid var(--ramecek); }
.spz-hlaseni-box .spz-hlaseni-info { color: var(--text-tlumeny); }

/* Hodnocení */
.spz-hodnoceni-nadpis { color: var(--text-hlavni); }
.hvezda-plna { color: var(--hvezda); }
.hvezda-prazdna { color: var(--hvezda-prazdna); }
.hod-hodnota { color: var(--text-hlavni); }
.hod-pocet { color: var(--text-tlumeny); }
.spz-hodnoceni-hvezda { color: var(--hvezda-prazdna); }
.spz-hodnoceni-hvezda.aktivni { color: var(--hvezda); }
.spz-hodnoceni-hvezda:hover { color: var(--hvezda); }
.spz-hodnoceni-napoveda { color: var(--text-slaby); }

/* SPZ login message (JS hláška u sledování) */
.spz-login-msg { background: var(--varovani-mekky); border-left: 3px solid var(--varovani); color: var(--text-default); }
.spz-message-success { background: var(--ok-mekky); border: 1px solid var(--ok); color: var(--text-hlavni); }
.spz-message-error { background: var(--chyba-mekky); border: 1px solid var(--chyba); color: var(--text-hlavni); }

/* ============================================================
   KOMENTÁŘE
   ============================================================ */

.komentare-sekce { border-top: 1px solid var(--ramecek); }
.komentare-pocet { color: var(--text-tlumeny); }

.komentar { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
.komentar.komentar-odpoved { border-left: 3px solid var(--akcent-ramecek); }

.komentar-autor { color: var(--text-hlavni); }
.komentar-hodnoceni { color: var(--hvezda); }
.komentar-datum { color: var(--text-tlumeny); }
.komentar-id { color: var(--text-slaby); }
.komentar-admin-edit { color: var(--varovani); }

.reakce-like-pocet, .reakce-dislike-pocet { background: var(--plocha-karta-2); color: var(--text-tlumeny); }

.komentar-reakce-btn, .komentar-odpovedet-btn { background: var(--plocha-karta-2); border: 1px solid var(--ramecek); color: var(--text-default); transition: all 0.15s ease; }
.komentar-reakce-btn:hover, .komentar-odpovedet-btn:hover { background: var(--akcent-mekky); border-color: var(--akcent-ramecek); color: var(--akcent); }

/* Výzva k přihlášení — odlišený info box */
.komentar-prihlasit-vyzva { background: var(--akcent-mekky); border: 1px solid var(--akcent-ramecek); color: var(--text-default); }
.komentar-prihlasit-vyzva a { color: var(--akcent); font-weight: 600; }

.komentar-odpoved-badge { background: var(--akcent-mekky); border: 1px solid var(--akcent-ramecek); }
.komentar-odpoved-badge button { color: var(--text-tlumeny); }

.komentare-zobrazit-dalsi { color: var(--akcent); background: transparent; border: 1px dashed var(--ramecek-svetly); }
.komentare-zobrazit-dalsi:hover { background: var(--akcent-mekky); border-color: var(--akcent-ramecek); }

.btn_komentar_odeslat { color: #ffffff; background: var(--akcent-btn); border: none; }
.btn_komentar_odeslat:hover { background: var(--akcent-btn-hover); }

.komentare-prazdne { color: var(--text-tlumeny); }
.komentare-vice-link { color: var(--akcent); }
.komentare-razeni a { border-color: var(--ramecek); color: var(--text-tlumeny); }
.komentare-razeni a:hover { border-color: var(--akcent-ramecek); color: var(--akcent); text-decoration: none; }
.komentare-razeni a.active { background: var(--akcent-mekky); border-color: var(--akcent-ramecek); color: var(--akcent); }

.komentar-fotky .komentar-foto img { border: 1px solid var(--ramecek); }
.reakce-login-msg { color: var(--varovani); }

.strankovani a { background: var(--plocha-karta); border: 1px solid var(--ramecek); color: var(--text-default); }
.strankovani a:hover { border-color: var(--akcent-ramecek); color: var(--akcent); text-decoration: none; }
.strankovani span { color: var(--text-tlumeny); }

/* ============================================================
   STRÁNKY :: FOTKY + TOP SPZ
   ============================================================ */

.spz-fotky-item { background: var(--plocha-karta); border: 1px solid var(--ramecek); transition: border-color 0.15s ease; }
.spz-fotky-item:hover { border-color: var(--akcent-ramecek); text-decoration: none; }
.spz-fotky-popisek { color: var(--text-hlavni); }

.top-spz-tabulka { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
.top-spz-tabulka th { color: var(--text-tlumeny); border-bottom: 1px solid var(--ramecek); }
.top-spz-tabulka tbody tr { border-bottom: 1px solid var(--ramecek); }
.top-spz-tabulka tbody tr:last-child { border-bottom: none; }
.top-spz-tabulka tbody tr:hover { background: var(--plocha-hover); }
.top-spz-tabulka .hvezda-plna { color: var(--hvezda); }
.top-spz-tabulka .hvezda-prazdna { color: var(--hvezda-prazdna); }

/* ============================================================
   DIALOG POPUP (modal-dialog.js)
   ============================================================ */

.modal-overlay { background: rgba(0, 0, 0, 0.75); }
.modal-dialog { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
.modal-dialog__header { border-bottom: 1px solid var(--ramecek); }
.modal-dialog__title { color: var(--text-hlavni); }
.modal-dialog__close { background: transparent; border: none; color: var(--text-tlumeny); }
.modal-dialog__close:hover { background: var(--plocha-hover); color: var(--text-hlavni); }
.modal-dialog__body p, .modal-dialog__body li { color: var(--text-default); }
.modal-dialog__body h3, .modal-dialog__body strong { color: var(--text-hlavni); }
.modal-dialog__body a { color: var(--akcent); }
.modal-dialog__footer { border-top: 1px solid var(--ramecek); }
.modal-dialog__btn--primary { background: var(--akcent-btn); color: #ffffff; }
.modal-dialog__btn--primary:hover { background: var(--akcent-btn-hover); }
.modal-dialog__btn--secondary { background: var(--plocha-karta-2); color: var(--text-default); border: 1px solid var(--ramecek); }
.modal-dialog__btn--secondary:hover { background: var(--plocha-hover); }
.modal-dialog::-webkit-scrollbar-track { background: transparent; }
.modal-dialog::-webkit-scrollbar-thumb { background: var(--ramecek-svetly); }

/* ============================================================
   SPZ ZNAČKA :: nadpis detailu jako evropská značka
   ============================================================ */

.obsah_uvod.spz header h1 {
    background: var(--znacka-plocha);
    color: var(--znacka-text);
    border: 2px solid #c8cdd3;
}
.obsah_uvod.spz header h1::before {
    background: var(--znacka-pruh);
    color: #ffcc00;
    content: "CZ";
}

/* ============================================================
   DOLADĚNÍ (2026-07-04 v2)
   ============================================================ */

/* (b) menu hover s podtržením */
#menu ul li a:hover { color: var(--akcent); text-decoration: underline; }

/* (c) sub odkazy u přihlášení — bílé bez podtržení, hover podtržení */
.form_sub_links a { color: var(--text-hlavni); text-decoration: none; }
.form_sub_links a:hover { text-decoration: underline; }

/* (d) odkaz ve výzvě k přihlášení — normální řez */
.komentar-prihlasit-vyzva a { font-weight: normal; }

/* (g) odkaz přidat fotku */
.komentar-fotky-odkaz { color: var(--akcent); font-size: 14px; }

/* MODÁL komentáře */
.kmodal-overlay { background: rgba(0, 0, 0, 0.72); }
.kmodal { background: var(--plocha-karta); border: 1px solid var(--ramecek-svetly); box-shadow: 0 12px 40px rgba(0,0,0,0.6); }
.kmodal-titulek { color: var(--text-hlavni); }
.kmodal-zavrit { color: var(--text-tlumeny); }
.kmodal-zavrit:hover { background: var(--plocha-hover); color: var(--text-hlavni); }

/* Hvězdy ve formuláři (radio) — obarvit vybrané (vše do zaškrtnuté včetně) */
.komentar-hvezdy .hvezda-label span { color: var(--hvezda-prazdna); }
.komentar-hvezdy .hvezda-label:has(input:checked) span,
.komentar-hvezdy .hvezda-label:has(~ .hvezda-label input:checked) span { color: var(--hvezda); }
.komentar-hvezdy .hvezda-label:hover span { color: var(--hvezda); }

/* Hlášení — varování bez sledovatelů */
.spz-hlaseni-varovani { color: var(--varovani); }
.spz-fotky-uryvek { color: var(--text-tlumeny); }

/* PROFIL :: dashboard */
/* STATISTIKY */
.stat-karta { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
.stat-cislo { color: var(--akcent); }
.stat-popisek { color: var(--text-tlumeny); }
.stats-aktualizace { color: var(--text-slaby); }

.profil-souhrn-box { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
.profil-souhrn-cislo { color: var(--akcent); }
.profil-souhrn-popis { color: var(--text-tlumeny); }
.profil-spz-stitek { background: var(--znacka-plocha); color: var(--znacka-text); border: 1px solid #c8cdd3; }
.profil-spz-stitek:hover { border-color: var(--akcent); }
.profil-sledovane-pozn, .profil-heslo-pozn { color: var(--text-tlumeny); }
.profil-rozcestnik-karta { background: var(--plocha-karta); border: 1px solid var(--ramecek); }
.profil-rozcestnik-karta:hover { border-color: var(--akcent-ramecek); background: var(--plocha-hover); }
.profil-rozcestnik-nadpis { color: var(--text-hlavni); }
.profil-rozcestnik-popis { color: var(--text-tlumeny); }
