/* Vlastní styly nad Bootstrapem ve stylu „barevná plocha“ (styl dokumentu pro Dana):
   rovné azurové plochy #00ADEF z loga, pruh #82D7F7, tmavý text #231F20, karty #EAF7FD.
   Na azurové jen tmavý text (6,4:1); bílý by měl 2,6:1. Tlačítka a odkazy na bílé
   proto zůstávají v tmavším odstínu #0077AD (4,95:1), najetí #005A87. */
@font-face {
  font-family: "Plus Jakarta Sans"; font-style: normal; font-display: swap; font-weight: 200 800;
  src: url(vendor/plus-jakarta-sans/plus-jakarta-sans-latin-ext-wght-normal.woff2) format("woff2");
  unicode-range: U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF;
}
@font-face {
  font-family: "Plus Jakarta Sans"; font-style: normal; font-display: swap; font-weight: 200 800;
  src: url(vendor/plus-jakarta-sans/plus-jakarta-sans-latin-wght-normal.woff2) format("woff2");
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD;
}
:root {
  --dv-blue: #00ADEF;
  --dv-blue-light: #82D7F7;
  --dv-blue-pale: #EAF7FD;
  --dv-blue-dark: #0077AD;
  --dv-blue-darker: #005A87;
  --dv-ink: #231F20;
  --bs-body-font-family: "Plus Jakarta Sans", "Segoe UI", system-ui, sans-serif;
  --bs-body-color: #231F20;
  --bs-body-color-rgb: 35, 31, 32;
  --bs-body-bg: #fff;
  --bs-border-color: #D6E4EA;
  --bs-link-color: #0077AD;
  --bs-link-color-rgb: 0, 119, 173;
  --bs-link-hover-color: #005A87;
  --bs-link-hover-color-rgb: 0, 90, 135;
  --bs-primary: #0077AD;
  --bs-primary-rgb: 0, 119, 173;
  --bs-border-radius: .5rem;
  --bs-border-radius-sm: .4rem;
}
.btn-primary {
  --bs-btn-bg: #0077AD; --bs-btn-border-color: #0077AD;
  --bs-btn-hover-bg: #005A87; --bs-btn-hover-border-color: #005A87;
  --bs-btn-active-bg: #005A87; --bs-btn-active-border-color: #005A87;
  --bs-btn-disabled-bg: #0077AD; --bs-btn-disabled-border-color: #0077AD;
}
.btn-outline-primary {
  --bs-btn-color: #0077AD; --bs-btn-border-color: #0077AD;
  --bs-btn-hover-bg: #0077AD; --bs-btn-hover-border-color: #0077AD;
  --bs-btn-active-bg: #005A87; --bs-btn-active-border-color: #005A87;
}
.btn { font-weight: 600; }
h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 { font-weight: 800; letter-spacing: -.02em; }
.dv-navbar { background: #fff; padding: .6rem 0; }
.dv-navbar .nav-link { color: var(--dv-ink); font-weight: 600; }
.dv-navbar .nav-link:hover, .dv-navbar .nav-link:focus { color: var(--dv-blue-dark); }
.dv-navbar .nav-link.active { box-shadow: inset 0 -3px 0 var(--dv-blue); }
.dv-logo { height: 40px; width: auto; }
.dv-brand { font-weight: 800; letter-spacing: -.02em; color: var(--dv-ink); }
/* Záhlaví stránky: azurová plocha přes celou šířku, pod ní světlý pruh. */
.dv-hero { background: var(--dv-blue); color: var(--dv-ink); border-bottom: 8px solid var(--dv-blue-light);
           padding: 1.75rem 0 1.5rem; margin-bottom: 1.75rem; }
.dv-hero h1 { font-size: calc(1.6rem + 1.2vw); margin: 0; }
.dv-hero a:not(.btn) { color: var(--dv-ink); }
.dv-hero a:not(.btn):hover { color: #000; }
.dv-hero .breadcrumb { --bs-breadcrumb-divider-color: var(--dv-ink); --bs-breadcrumb-item-active-color: var(--dv-ink);
                       margin-bottom: .5rem; font-weight: 600; font-size: .95rem; }
.dv-hero-sub { font-size: 1.05rem; font-weight: 500; margin: .4rem 0 0; }
.dv-hero-kicker { font-size: .8rem; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; margin-bottom: .35rem; }
.dv-hero .btn-dv-ink { --bs-btn-bg: var(--dv-ink); --bs-btn-color: #fff; --bs-btn-border-color: var(--dv-ink);
                       --bs-btn-hover-bg: #000; --bs-btn-hover-color: #fff; --bs-btn-hover-border-color: #000;
                       --bs-btn-active-bg: #000; --bs-btn-active-color: #fff; }
.dv-hero .btn-dv-light { --bs-btn-bg: #fff; --bs-btn-color: var(--dv-ink); --bs-btn-border-color: #fff;
                         --bs-btn-hover-bg: var(--dv-blue-pale); --bs-btn-hover-color: var(--dv-ink); --bs-btn-hover-border-color: var(--dv-blue-pale); }
.dv-hero .form-control { border-color: #fff; }
.dv-hero .form-control:focus { box-shadow: 0 0 0 .25rem rgba(35, 31, 32, .25); }
/* Bez záhlaví (správa, chyby): jen tenký azurový pruh pod navigací. */
.dv-rule { border-top: 4px solid var(--dv-blue); margin-bottom: 1.5rem; }
.dv-card { border: 1px solid var(--bs-border-color); border-radius: 14px; background: #fff; }
.dv-tile { display: block; background: var(--dv-blue-pale); border-radius: 14px; padding: 1rem 1.1rem; color: var(--dv-ink);
           text-decoration: none; height: 100%; transition: background-color .15s; }
.dv-tile:hover, .dv-tile:focus { background: #D6F1FC; color: var(--dv-ink); }
.dv-muted { color: #5c636a; }
body { background: #fff; }
.dv-main { min-height: 60vh; }
.table { --bs-table-bg: transparent; }
.table thead th { font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #4a4546; }
.table td, .table th { vertical-align: middle; }
.dv-pre { white-space: pre-line; }
.dv-folder-icon { color: var(--dv-blue); }
.dv-dropzone { border: 2px dashed #8fb9cc; border-radius: 14px; background: var(--dv-blue-pale); padding: 2.5rem 1rem; text-align: center; }
.dv-dropzone.dv-over { border-color: var(--dv-blue-dark); background: #D6F1FC; }
.dv-nowrap { white-space: nowrap; }
.dv-break { word-break: break-word; }
.dv-footer { border-top: 1px solid var(--bs-border-color); margin-top: 3rem; }
/* Nahrávání (upload.js): přehled před nahráním, celkový průběh, řádky souborů. */
.dv-up-ready { border-color: var(--dv-blue-light); box-shadow: 0 0 0 3px rgba(0, 173, 239, .15); }
.dv-up-ready-list { max-height: 14rem; overflow-y: auto; }
.dv-progress-total { height: .75rem; --bs-progress-bar-bg: var(--dv-blue-dark); }
.dv-progress { height: .35rem; margin-top: .35rem; --bs-progress-bar-bg: var(--dv-blue); }
.dv-progress .progress-bar, .dv-progress-total .progress-bar { transition: width .4s linear; }
.dv-up-batch { border-left: 3px solid var(--dv-blue); padding: .25rem .75rem; margin: .75rem 0 .5rem; }
.dv-up-row { padding: .5rem 0; border-top: 1px solid #eef1f4; }
.dv-up-cancelled { opacity: .55; }
.dv-up-cancel { line-height: 1; }
/* Stránka souboru: přehrávač a náhledy. */
.dv-viewer { border-radius: .5rem; overflow: hidden; }
.dv-media { display: block; width: 100%; max-height: 75vh; background: #000; }
.dv-image { display: block; max-width: 100%; max-height: 80vh; margin: 0 auto; }
.dv-pdf { display: block; width: 100%; height: 80vh; border: 0; background: #fff; }
.dv-viewer audio { display: block; padding: 1rem; background: #fff; border: 1px solid #dee2e6; border-radius: .5rem; }
.dv-viewer-note { background: #fff; border: 1px solid #dee2e6; border-radius: .5rem; padding: 2.5rem 1rem; text-align: center; }
/* Tabulky na telefonu (pod 768 px): řádek = karta. Hlavní buňka (.dv-c-main) vlevo nahoře,
   výběr (.dv-c-sel) před ní, akce (.dv-c-act) vpravo; ostatní buňky pod hlavní,
   s popiskem sloupce z data-label. Na širší obrazovce běžná tabulka. */
@media (max-width: 767.98px) {
  .dv-stack thead { display: none; }
  .dv-stack, .dv-stack tbody { display: block; }
  .dv-stack tr { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: start;
                 padding: .6rem .25rem; border-bottom: 1px solid var(--bs-border-color); }
  .dv-stack tr:last-child { border-bottom: 0; }
  .dv-stack > tbody > tr > td { display: block; grid-column: 2; border: 0; padding: .1rem .5rem; }
  .dv-stack > tbody > tr > td.dv-c-sel { grid-column: 1; grid-row: 1 / span 9; padding-top: .2rem; }
  .dv-stack > tbody > tr > td.dv-c-main { grid-row: 1; }
  .dv-stack > tbody > tr > td.dv-c-act { grid-column: 3; grid-row: 1 / span 9; }
  .dv-stack > tbody > tr > td.dv-c-wide { grid-column: 2 / span 2; }
  .dv-stack td[data-label]::before { content: attr(data-label) ": "; color: #5c636a; }
  .dv-stack td:empty { display: none; }
}
.dv-hero .dv-muted { color: var(--dv-ink); }
.dv-brand-title { font-size: calc(2.2rem + 2.6vw); font-weight: 800; line-height: 1; letter-spacing: -.035em; }
@media (min-width: 1200px) { .dv-brand-title { font-size: 4.4rem; } }
@media (min-width: 1200px) { .dv-hero h1 { font-size: 2.6rem; } }
.dv-hero-search { max-width: 44rem; }
.btn .bi + span { margin-left: .3rem; }
.form-control:focus, .form-select:focus, .form-check-input:focus { border-color: var(--dv-blue); box-shadow: 0 0 0 .25rem rgba(0, 173, 239, .25); }
.form-check-input:checked { background-color: var(--dv-blue-dark); border-color: var(--dv-blue-dark); }
.dv-brand-title + .dv-hero-sub { margin-top: .75rem; }
@media (max-width: 575.98px) {
  .dv-hero-search .form-control-lg { font-size: 1rem; }
  .dv-tile { padding: .8rem .9rem; }
}

/* Podmínky užití a zásady zpracování (PU11) */
.dv-legal { max-width: 52rem; line-height: 1.6; }
.dv-legal h2 { font-size: 1.15rem; font-weight: 700; margin: 1.6rem 0 .6rem; }
.dv-legal h2:first-child { margin-top: 0; }
.dv-legal ul { padding-left: 1.2rem; }
.dv-legal li { margin-bottom: .3rem; }
.dv-legal-scroll { max-height: 55vh; overflow-y: auto; }
.dv-todo { background: #FFF3CD; color: inherit; padding: 0 .2em; border-radius: 3px; }

/* Editor textů v administraci (PU13, Trix) */
.dv-editor { min-height: 12rem; max-height: 60vh; overflow-y: auto; background: #fff; border-radius: 8px; padding: .75rem 1rem; }
/* trix.css se načítá až po library.css: vyšší specificita. Přílohy editor nepřijímá. */
trix-toolbar .trix-button-row .trix-button-group--file-tools,
trix-toolbar .trix-button-row .trix-button[data-trix-attribute="code"],
trix-toolbar .trix-button-row .trix-button[data-trix-attribute="strike"] { display: none; }
trix-toolbar .trix-button-row { flex-wrap: wrap; gap: .25rem; }

/* Výběr souborů během probíhající operace (input [data-tree] zakázaný, tlačítko je label). */
.dv-dropzone label:has(input:disabled) { opacity: .5; pointer-events: none; }

/* Odkaz „?“ na oddíl nápovědy (_help.html); barva podle okolí (i v azurové hlavičce). */
.dv-help-link { color: inherit; opacity: .6; font-size: .85em; font-weight: 400; text-decoration: none; vertical-align: .1em; }
.dv-help-link:hover, .dv-help-link:focus { opacity: 1; }
.dv-help-text h3 { font-size: 1rem; font-weight: 700; margin: 1.4rem 0 .5rem; }
