/* Dialog „Nahlásit chybu“ (chyba.js) */
html.chyba-open { overflow: hidden; }
.chyba-dlg { position: fixed; inset: 0; z-index: 10050; background: rgba(0,0,0,.55); display: grid; place-items: center; padding: 16px; overflow-y: auto; }
.chyba-dlg[hidden] { display: none; }
.chyba-box { position: relative; background: #fff; color: #222; width: 100%; max-width: 520px; padding: 26px 24px 22px; border-radius: 14px; box-shadow: 0 12px 40px rgba(0,0,0,.35); font-size: 15px; line-height: 1.5; }
.chyba-box h2 { margin: 0 0 8px; font-size: 22px; line-height: 1.25; padding-right: 30px; }
.chyba-intro, .chyba-note { margin: 0 0 14px; color: #555; font-size: 14px; }
.chyba-note { font-size: 12.5px; margin: 10px 0 0; }
.chyba-box label { display: block; font-weight: 700; margin: 10px 0 4px; }
.chyba-box label small { font-weight: 400; color: #666; }
.chyba-box textarea, .chyba-box input[type=email] { width: 100%; box-sizing: border-box; border: 1px solid #999; border-radius: 4px; padding: 9px 10px; font: inherit; color: inherit; background: #fff; }
.chyba-box textarea:focus, .chyba-box input:focus { outline: 3px solid #00843d; outline-offset: 1px; border-color: #00843d; }
.chyba-kind { border: 0; padding: 0; margin: 0 0 4px; }
.chyba-kind legend { font-weight: 700; padding: 0; margin: 0 0 6px; }
.chyba-box .chyba-kind .chyba-chk { margin: 0 0 4px; }
.chyba-kind small { color: #666; }
html.a11y-contrast .chyba-kind small { color: #fff; }
.chyba-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.chyba-shot { margin-top: 12px; }
.chyba-box .chyba-chk { display: flex; gap: 8px; align-items: center; font-weight: 400; margin: 0 0 6px; cursor: pointer; }
.chyba-chk input { width: 18px; height: 18px; accent-color: #00843d; }
.chyba-prev { border: 1px solid #ddd; border-radius: 4px; background: #f6f6f6; min-height: 60px; max-height: 160px; overflow: hidden; display: grid; place-items: center; font-size: 13px; color: #666; }
.chyba-prev img { width: 100%; height: auto; display: block; }
.chyba-shot:has(input:not(:checked)) .chyba-prev { opacity: .3; }
.chyba-err { color: #b00020; font-weight: 700; font-size: 14px; min-height: 0; margin-top: 8px; }
.chyba-err:empty { display: none; }
.chyba-btns { display: flex; justify-content: flex-end; gap: 10px; margin-top: 16px; flex-wrap: wrap; }
.chyba-btns button { font: inherit; font-weight: 700; padding: 10px 18px; border-radius: 10px; cursor: pointer; border: 1.5px solid #00843d; background: #fff; color: #00843d; }
.chyba-btns .chyba-send { background: #00843d; color: #fff; }
.chyba-btns .chyba-send:disabled { opacity: .6; cursor: wait; }
.chyba-btns button:focus-visible, .chyba-x:focus-visible { outline: 3px solid #00843d; outline-offset: 2px; }
.chyba-x { position: absolute; top: 10px; right: 12px; width: 36px; height: 36px; border: 0; background: none; font-size: 28px; line-height: 1; cursor: pointer; color: #444; border-radius: 4px; }
.chyba-x:hover { background: #eee; }
/* přístupnost: vysoký kontrast */
html.a11y-contrast .chyba-box { background: #000; color: #fff; border: 2px solid #ff0; }
html.a11y-contrast .chyba-box textarea, html.a11y-contrast .chyba-box input[type=email] { background: #000; color: #fff; border-color: #fff; }
html.a11y-contrast .chyba-intro, html.a11y-contrast .chyba-note, html.a11y-contrast .chyba-box label small, html.a11y-contrast .chyba-x { color: #fff; }
html.a11y-contrast .chyba-btns button { background: #000; color: #ff0; border-color: #ff0; }
html.a11y-contrast .chyba-err { color: #ff6b6b; }
@media (max-width: 480px) { .chyba-box { padding: 22px 16px 18px; } .chyba-btns button { flex: 1; } }

/* bezpečnostní limit na IP překročen */
.chyba-limit { border: 2px solid #b00020; background: #fff4f4; color: #8a0018; padding: 10px 12px; font-weight: 700; font-size: 14px; margin: 4px 0 8px; }
.chyba-blocked label, .chyba-blocked textarea, .chyba-blocked input, .chyba-blocked .chyba-shot, .chyba-blocked .chyba-send, .chyba-blocked .chyba-intro { opacity: .5; }
.chyba-blocked .chyba-send { cursor: not-allowed; }