/* Poděkování po aktualizaci: jednobarevné pozadí, padající květiny a tmavé okno s videem. Všechny třídy začínají pdk-. */
.pdk-ov{position:fixed;inset:0;z-index:20000;background:#ffd9a0;display:flex;align-items:center;justify-content:center;padding:12px;opacity:0;animation:pdk-ov-in .5s ease-out forwards;transition:opacity 1.3s ease-in-out}
.pdk-ov.pdk-hned{animation:none;opacity:1}
.pdk-ov.pdk-hned:not(.pdk-ready) .pdk-okno{visibility:hidden}
.pdk-ov.pdk-pryc{opacity:0!important;animation:none;pointer-events:none}
@keyframes pdk-ov-in{from{opacity:0}to{opacity:1}}
.pdk-kv{position:absolute;inset:0;width:100%;height:100%;pointer-events:none}
.pdk-okno{position:relative;isolation:isolate;width:min(92vw,380px);max-height:calc(100vh - 24px);max-height:calc(100dvh - 24px);overflow-y:auto;-webkit-overflow-scrolling:touch;color:#f3e6d6;padding:28px 22px 22px;text-align:center;font-family:inherit;opacity:0}
.pdk-okno:before{content:"";position:absolute;inset:0;background:#2b2018;border:1px solid #d9a441;border-radius:24px;z-index:-1}
.pdk-kbox{width:200px;height:200px;margin:0 auto 16px;position:relative}
.pdk-kolo{position:absolute;inset:0;margin:auto;width:200px;height:200px;border-radius:50%;overflow:hidden;border:3px solid #d9a441;background:#4a3826}
.pdk-kolo video,.pdk-kolo .pdk-img{width:100%;height:100%;object-fit:cover;display:block}
.pdk-h{font-size:20px;line-height:1.25;margin:0 0 10px;font-weight:700;color:#f3e6d6}
.pdk-t{font-size:14px;line-height:1.5;margin:0 0 8px;color:#f3e6d6}
.pdk-prani{font-size:14px;line-height:1.5;margin:0 0 14px;font-weight:600;color:#f3d38a;display:flex;align-items:center;justify-content:center;gap:8px}
.pdk-prani .pdk-ic{width:24px;height:24px;color:#d9a441;flex:none}
.pdk-ul{list-style:none;margin:0 0 18px;padding:0;text-align:left;font-size:14px}
.pdk-ul li{padding:9px 0 9px 36px;position:relative;border-bottom:1px solid #43342a;color:#f3e6d6}
.pdk-ul svg,.pdk-ic svg{width:20px;height:20px;color:#d9a441}
.pdk-ul svg{position:absolute;left:4px;top:50%;margin-top:-10px}
.pdk-ic svg{width:100%;height:100%;display:block}
.pdk-btn{display:block;width:100%;padding:12px;border:1px solid #d9a441;background:#d9a441;color:#2b2018;font-weight:600;border-radius:14px;font-size:15px;font-family:inherit;cursor:pointer;min-height:44px}
.pdk-btn:focus-visible{outline:2px solid #f3d38a;outline-offset:2px}

/* pořadí: okno se rozbalí kolem kolečka, pak naběhne text */
.pdk-okno.pdk-jede{opacity:1}
.pdk-okno.pdk-jede:before{transform-origin:50% 128px;animation:pdk-bg 1.5s cubic-bezier(.45,0,.2,1) .8s both}
.pdk-okno.pdk-jede .pdk-kolo{animation:pdk-kolo 1s cubic-bezier(.25,.9,.3,1) both}
.pdk-okno.pdk-jede .pdk-h,.pdk-okno.pdk-jede .pdk-t,.pdk-okno.pdk-jede .pdk-prani,.pdk-okno.pdk-jede .pdk-ul li,.pdk-okno.pdk-jede .pdk-btn{opacity:0;animation:pdk-vst .8s ease-out forwards}
.pdk-okno.pdk-jede .pdk-h{animation-delay:2.0s}
.pdk-okno.pdk-jede .pdk-t{animation-delay:2.25s}
.pdk-okno.pdk-jede .pdk-prani{animation-delay:2.5s}
.pdk-okno.pdk-jede .pdk-ul li:nth-child(1){animation-delay:2.7s}
.pdk-okno.pdk-jede .pdk-ul li:nth-child(2){animation-delay:2.9s}
.pdk-okno.pdk-jede .pdk-ul li:nth-child(3){animation-delay:3.1s}
.pdk-okno.pdk-jede .pdk-btn{animation-delay:3.3s}
.pdk-okno.pdk-zav{animation:pdk-zav .7s ease-in forwards}
@keyframes pdk-bg{from{opacity:0;transform:scale(.55)}30%{opacity:1}to{opacity:1;transform:none}}
@keyframes pdk-kolo{from{width:60px;height:60px}to{width:200px;height:200px}}
@keyframes pdk-vst{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes pdk-zav{from{opacity:1;transform:none}to{opacity:0;transform:scale(.95)}}
@media (prefers-reduced-motion:reduce){
  .pdk-ov,.pdk-okno,.pdk-okno:before,.pdk-okno *{animation:none!important;transition:none!important}
  .pdk-okno{opacity:1}
}

/* Němčina na úzkém displeji (320-360 px), 4. 11. 2026 (podle Lovu): žádné slovo se neláme uprostřed. Platí jen pro jazyk DE (třídu lang-de na <html>
   nastavuje setLang v app.js) a jen do 360 px; ostatní jazyky a širší displeje beze změny. Nic se neořezává. */
@media (max-width: 360px) {
  /* Dolní lišta: „Einstellungen“ a „Ausstellungen“ se nevejdou ani při malém písmu; zobrazí se krátké „Optionen“ a „Shows“ (atribut data-short-de v index.html), popisek pro čtečku zůstává celý. */
  html.lang-de .tab-label[data-short-de] { font-size: 0 !important; white-space: nowrap !important; }
  html.lang-de .tab-label[data-short-de]::after { content: attr(data-short-de); font-size: 8.5px; line-height: 1.15; letter-spacing: -.02em; }
  /* Záloha dat: všechny dlaždice pod sebou (ve 2-3 sloupcích je dlaždice 73-93 px a „Wiederherstellen“ potřebuje 102 px) */
  html.lang-de .backup-grid { grid-template-columns: minmax(0, 1fr) !important; }
  html.lang-de .bk-bottom-grid { grid-template-columns: minmax(0, 1fr) !important; }
  html.lang-de :is(.bk-tile-name, .bk-tile-sub) { hyphens: none !important; -webkit-hyphens: none !important; overflow-wrap: normal !important; word-break: normal !important; }
  /* Podpora: „Vorschlag“ se při 360 px lámalo uprostřed */
  html.lang-de .settings-tile-lg > span { hyphens: none !important; -webkit-hyphens: none !important; overflow-wrap: normal !important; word-break: normal !important; }
  /* Kalendář: štítek „Ausstellung · …“ / „Tierarzt · …“ se zalomí na 2 řádky (řádek karty má 24 px, 2 × 12 px), teprve třetí řádek se ukončí třemi tečkami */
  html.lang-de .cc-name { white-space: normal !important; display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 2; -webkit-box-pack: center; line-height: calc(12px * var(--ts, 1)) !important; text-overflow: ellipsis; overflow: hidden; }
  /* Štítky dlaždic v detailu vrhu („Gewichte“) */
  html.lang-de .cl-v-label { hyphens: none !important; -webkit-hyphens: none !important; overflow-wrap: normal !important; }
  /* Hlášení chyby: tlačítka Schließen / Senden na jeden řádek */
  html.lang-de #feedback-modal button { white-space: nowrap; hyphens: none; -webkit-hyphens: none; }
}
@media (max-width: 340px) {
  /* Nadpis „Hunde-Register“ je na 320 px o 4 px širší než sloupec: na jeden řádek: mírně užší mezery mezi písmeny (písmo ponecháno, aby fungovalo i v Nápovědě, kde se písmo nepřepočítává) */
  html.lang-de header .logo .logo-text-wrapper h1 { white-space: nowrap !important; hyphens: none !important; -webkit-hyphens: none !important; overflow-wrap: normal !important; letter-spacing: -.05em !important; }
  /* „Gewichte“ je v dlaždici detailu vrhu o 3 px širší než dlaždice */
  html.lang-de .cl-v-label { font-size: 9px !important; }
}
