/*
 * NOVE 14.10.2026 (prevzato z COMANDY, vzhled.css 10.10.2026, upraveno pro CLA): mekke karty, tenke okraje,
 * zaoblene prvky, tlumene barevne plochy (hlavicky karet, odznaky, hlasky), citelne tabulky a zalozky.
 * Nacita se v base.html ZA inline stylem, barvy CLA (zelena #004826, limetkova #87a82b) a horni lista
 * zustavaji - meni se jen tvary, plochy a odstupy. Logika ani HTML modulu se nemeni.
 */
:root {
    --brand: #004826;
    --brand-rgb: 0, 72, 38;
    --brand-tmava: #013a1e;
    --brand-doplnkova: #87a82b;
    --brand-doplnkova-rgb: 135, 168, 43;
    --text-2: #475569;
    --bs-link-color: var(--brand);
    --bs-link-hover-color: var(--brand-tmava);
    --bs-border-color: var(--border-soft);
    --bs-secondary-color: var(--muted);
}
a { text-underline-offset: .15em; }
:focus-visible { outline: 3px solid var(--brand-doplnkova); outline-offset: 2px; }
.dropdown-menu { border: 1px solid var(--border-soft); border-radius: var(--radius-md); box-shadow: var(--shadow-md); }
.navbar-toggler { border-radius: 10px; }

/* ---------------------------------------------------------------- karty */
.card {
    border: 1px solid var(--border-soft);
    border-radius: var(--radius-lg);
    box-shadow: var(--shadow-sm);
    background-color: var(--surface);
}
.card.shadow, .card.shadow-lg { box-shadow: var(--shadow-md) !important; }
.card-header { background-color: transparent; border-bottom-color: var(--border-soft); font-weight: 600; padding: .85rem 1.15rem; }
.card-header:first-child { border-radius: calc(var(--radius-lg) - 1px) calc(var(--radius-lg) - 1px) 0 0 !important; }
.card-footer { background-color: transparent; border-top-color: var(--border-soft); }
/* Bootstrap .border-4 zesilil VSECHNY okraje karty na 4 px (tezke cerne ramecky) - jen barevny pruh vlevo */
.card.border-4 { border-width: 1px !important; }
.card.border-start.border-4 { border-left-width: 4px !important; }

/* ---------------------------------------------------------------- tlacitka */
.btn { border-radius: var(--radius-sm); font-weight: 600; transition: background-color .15s, border-color .15s, color .15s, box-shadow .15s, transform .15s; }
.btn-lg { border-radius: var(--radius-md); }
.btn-sm { border-radius: 8px; }
.btn-success:hover, .btn-primary:hover { transform: translateY(-1px); box-shadow: 0 8px 18px -10px rgba(var(--brand-rgb), .8); }
.btn-success:active, .btn-primary:active { transform: none; }
.btn-light { background: #fff; border-color: var(--border-soft); }
.btn-outline-secondary { color: var(--text-2); border-color: var(--border-soft); background: #fff; }
.btn-outline-secondary:hover { color: var(--ink); background: #F1EFE7; border-color: #D6D3C6; }

/* ---------------------------------------------------------------- formulare */
.form-control, .form-select { border-radius: var(--radius-sm); border-color: #DCD9CD; background-color: #fff; }
.form-control::placeholder { color: #9AA39F; }
.form-label { font-weight: 600; color: var(--ink); }
.form-check-input:checked { background-color: var(--brand); border-color: var(--brand); }
.input-group-text { background: #F1EFE7; border-color: #DCD9CD; }

/* ---------------------------------------------------------------- zalozky */
.nav-tabs { border-bottom: 1px solid var(--border-soft); gap: .25rem; }
.nav-tabs .nav-link {
    border: 0; border-bottom: 3px solid transparent; border-radius: 0; background: transparent;
    color: var(--muted); font-weight: 600; padding: .6rem .9rem; margin-bottom: -1px;
}
.nav-tabs .nav-link:hover { color: var(--ink); border-bottom-color: var(--border-soft); }
.nav-tabs .nav-link.active, .nav-tabs .nav-item.show .nav-link {
    color: var(--brand); background: transparent; border-bottom-color: var(--brand-doplnkova);
}
.nav-pills .nav-link { border-radius: 999px; font-weight: 600; color: var(--text-2); }
.nav-pills .nav-link.active { background-color: var(--brand); color: #fff; }

/* ---------------------------------------------------------------- tabulky */
.table { --bs-table-border-color: var(--border-soft); }
.table > thead > tr > th {
    font-size: .78rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase;
    color: var(--muted); border-bottom-width: 1px; white-space: nowrap;
}
.table-dark > thead > tr > th, thead.table-dark > tr > th { color: #fff; }
.table > tbody > tr > td { vertical-align: middle; }
.table-hover > tbody > tr:hover > * { --bs-table-bg-state: #FAF9F4; }

/* ---------------------------------------------------------------- hlasky a odznaky */
.alert { border-radius: var(--radius-md); border-width: 1px; }
.badge { border-radius: 999px; padding: .38em .7em; }
.badge.bg-secondary { background-color: #E9E7DE !important; color: var(--text-2) !important; }

/* ---------------------------------------------------------------- nadpisy stranek */
.nadpis-stranky { color: var(--ink); font-weight: 800; letter-spacing: -0.02em; }
.nadpis-stranky > i { color: var(--brand); }

/* ---------------------------------------------------------------- uvodni stranka (dashboard) */
.uvitani h2 { font-weight: 800; letter-spacing: -0.03em; font-size: clamp(1.5rem, 3vw, 2.1rem); }
.uvitani .podtitul { color: var(--muted); font-size: 1rem; }
.akce-panel { border-left: 4px solid #C8372D !important; }
.akce-panel .akce-ikona { width: 48px; height: 48px; border-radius: 14px; display: grid; place-items: center; background: #FBE9E7; color: #B3261E; font-size: 1.35rem; flex-shrink: 0; }
.akce-panel .card-title { color: #B3261E; font-weight: 800; font-size: 1.15rem; }
.rozcesti-dlazdice {
    border: 1px solid var(--border-soft) !important; border-radius: var(--radius-lg);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}
a:hover > .rozcesti-dlazdice, a:focus-visible > .rozcesti-dlazdice {
    transform: translateY(-3px); box-shadow: var(--shadow-md); border-color: rgba(var(--brand-rgb), .35) !important;
    background-color: #fff !important;
}
.rozcesti-dlazdice .card-icon-wrap {
    border-radius: 14px !important; background: rgba(var(--brand-rgb), .08) !important; color: var(--brand) !important;
}
.rozcesti-dlazdice .card-title { font-weight: 700; letter-spacing: -0.02em; }

/* ---------------------------------------------------------------- mobil */
@media (max-width: 575.98px) {
    .container.py-5 { padding-top: 1.5rem !important; padding-bottom: 2rem !important; }
    .card { border-radius: 14px; }
    .uvitani { margin-top: 0 !important; }
}
/* logo COMANDY v liste - tmavy ctverec na tmave liste zvyraznit jemnym okrajem */
.navbar-brand img { box-shadow: 0 0 0 1px rgba(255, 255, 255, .22); }
/* dlazdice rozcesti bez barevneho pruhu vlevo (pravidlo .card.border-start.border-4 ma vyssi prioritu) */
.card.rozcesti-dlazdice.border-start.border-4 { border-left-width: 1px !important; }

/* ---------------------------------------------------------------- jemnejsi barevne plochy (jako na webu)
   Krikave Bootstrap hlavicky karet (zluta, cervena, modra) a ostre zlute odznaky -> teple tlumene tony. */
.card-header.bg-warning { background-color: #FBF0D9 !important; color: #6E4B0B !important; border-bottom-color: #F3E2BC; }
.card-header.bg-danger { background-color: #FBE9E7 !important; color: #8E1F18 !important; border-bottom-color: #F4D3CF; }
.card-header.bg-info { background-color: #E8F1F4 !important; color: #1E4D5C !important; border-bottom-color: #D3E4EA; }
.card-header.bg-warning .text-white, .card-header.bg-danger .text-white, .card-header.bg-info .text-white { color: inherit !important; }
.badge.bg-warning { background-color: #F7DFA6 !important; color: #5A3D00 !important; }
.badge.bg-info { background-color: #D7EAF0 !important; color: #1E4D5C !important; }
.alert-warning { background-color: #FBF0D9; border-color: #F3E2BC; color: #6E4B0B; }
.alert-info { background-color: #EEF5F7; border-color: #D3E4EA; color: #1E4D5C; }
.alert-success { background-color: rgba(var(--brand-rgb), .07); border-color: rgba(var(--brand-rgb), .2); color: var(--brand-tmava); }
.alert-danger { background-color: #FBE9E7; border-color: #F4D3CF; color: #8E1F18; }
.polozka-mobil { border-left-width: 3px !important; }

/* NOVE 10.10.2026: lista oznameni provozovatele (procurement/oznameni.py) a tecka u Novinek */
.lista-oznameni { font-size: .9rem; padding: .55rem 0; border-bottom: 1px solid var(--border-soft); }
.lista-oznameni-info { background: #EEF5F7; color: #1E4D5C; }
.lista-oznameni-udrzba { background: #FBF0D9; color: #6E4B0B; }
.lista-oznameni-dulezite { background: #FBE9E7; color: #8E1F18; }
.tecka-novinky { display: inline-block; width: 8px; height: 8px; border-radius: 50%; background: var(--brand-doplnkova); margin-left: .4rem; vertical-align: middle; box-shadow: 0 0 0 2px rgba(255, 255, 255, .25); }

/* NOVE 14.10.2026: logo COMANDY v horni liste (vzor COMANDA) - tmavy ctverec na tmave liste jemny okraj */
.navbar-brand { display: flex; align-items: center; gap: .55rem; letter-spacing: -0.02em; }
.navbar-brand img { width: 32px; height: 32px; border-radius: 8px; box-shadow: 0 0 0 1px rgba(255, 255, 255, .22); }
