/* Doplnky aplikácie Vysielanie k Protokolu 3.2. Hodnoty iba cez tokeny z tokens.css. */

[hidden] { display: none !important; } /* pk-link a pk-btn majú vlastné display, ktoré by atribút hidden prebili */
a.pk-btn { text-decoration: none; }
.pk-tab { display: inline-block; text-decoration: none; }
.pk-tab[aria-current="true"] { background: var(--surface-selected); color: var(--ink); font-weight: 600; }
.pk-tab[aria-current="true"] .pk-tab__n { color: var(--ink); }
.pk-table td form { display: inline; }
.pk-table td a.pk-link { text-decoration-color: var(--rule-control); }
.pk-table td a.pk-link:hover { text-decoration-color: currentColor; }
.pk-table__act { width: 1%; }

/* Prehľad: priebeh zapínania v Súhrne stavu (Progress z protokolu) a odkaz RTSP pri kamere */
.priebeh { display: grid; gap: var(--space-2); width: min(100%, 420px); margin-top: var(--space-1); }
.priebeh__text { font-weight: 600; }
.riadok__odkaz { display: flex; flex-wrap: wrap; align-items: baseline; gap: 2px var(--space-3); margin-top: var(--space-1); font-size: 13px; line-height: 18px; }
.riadok__odkaz a.pk-link { white-space: normal; overflow-wrap: anywhere; }
/* Prekresľované časti Prehľadu nesmú byť kotvou scrollu, inak by ich výmena posunula stránku. */
#suhrn, #cisla, #akcie, #pocty, #riadky-sluzby, #riadky-zariadenia, #sim-svet { overflow-anchor: none; }

/* Skupiny tlačidiel */
.tlacidla { display: flex; flex-wrap: wrap; gap: var(--space-2); }
.tlacidla--blok { padding: var(--space-4) var(--space-5); }

/* Formuláre */
.formular { display: grid; gap: var(--space-4); padding: var(--space-5); }
.formular--bez-okraja, .formular--panel { padding: 0; }
.formular__riadok { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 360px)); gap: var(--space-4); }
.formular__akcie { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-3) var(--space-4); padding: var(--space-4) var(--space-5); border-top: 1px solid var(--rule); }
.formular__akcie--spodne { margin-top: var(--space-5); padding-inline: 0; border-top: 0; }
.formular__popis { margin: 0; max-width: var(--measure); }
.pk-field--siroke { max-width: var(--panel-width); }
textarea.pk-field__input { height: auto; min-height: 76px; padding: var(--space-2) var(--space-3); line-height: 20px; resize: vertical; }
.volby { display: grid; gap: var(--space-2); margin: 0; padding: 0; border: 0; }
.volby legend { margin-bottom: var(--space-2); padding: 0; }
.zaskrtnutie { display: flex; align-items: center; gap: var(--space-2); min-height: 24px; cursor: pointer; }
.zaskrtnutie input { flex: none; width: 16px; height: 16px; margin: 0; accent-color: var(--signal-fill); cursor: pointer; }
.zaskrtnutie__pomoc { display: block; margin: -6px 0 0 24px; }
.presun { display: grid; gap: var(--space-3); margin-top: var(--space-3); }
.odkaz-pole { display: block; width: 100%; margin-top: var(--space-2); }

/* Simulácia */
.sim__telo { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-5); padding: var(--space-4) var(--space-5) var(--space-5); }
.sim__ovladanie { display: grid; align-content: start; gap: var(--space-4); }
.sim__ovladanie h3 { margin: 0 0 var(--space-2); }
@container pk-content (max-width: 640px) {
  .sim__telo { grid-template-columns: minmax(0, 1fr); }
}

/* Stránky bez indexu: prihlásenie a súkromné vysielanie. Dok je zarovnaný so stĺpcom stránky, nie s indexom. */
.jednoducha { max-width: 640px; margin: 0 auto; padding: var(--space-6) max(var(--space-4), env(safe-area-inset-right, 0px)) var(--space-7) max(var(--space-4), env(safe-area-inset-left, 0px)); font-size: 17px; line-height: 26px; }
.jednoducha ~ .pk-dock { left: max(var(--space-4), env(safe-area-inset-left, 0px)); right: max(var(--space-4), env(safe-area-inset-right, 0px)); max-width: calc(640px - 2 * var(--space-4)); }
body:has(.jednoducha) .pk-confirm .pk-btn { height: 48px; padding: 0 20px; font-size: 16px; }
.video { display: grid; place-items: center; width: 100%; aspect-ratio: 16 / 9; padding: var(--space-4); background: var(--surface-sunken); color: var(--ink-muted); text-align: center; }
.video:has(iframe) { padding: 0; }
.video iframe { width: 100%; height: 100%; border: 0; }

/* ---- Súkromná stránka: nie je admin (protokol pre verejné stránky neplatí), veľké písmo a tlačidlá pre ľudí z farnosti ---- */
.sukromne__hlavicka .pk-masthead__title { font-size: 28px; line-height: 36px; }
.sukromne { display: grid; justify-items: center; gap: var(--space-4); padding-block: var(--space-4) var(--space-6); text-align: center; }
.sukromne__slovo { font-size: 17px; line-height: 24px; }
.sukromne__nadpis { margin: 0; font-size: 32px; line-height: 40px; font-weight: 700; letter-spacing: -0.02em; }
.sukromne__popis { margin: 0; max-width: 34ch; font-size: 19px; line-height: 28px; color: var(--ink-muted); }
.sukromne[data-stav="zapina"] .sukromne__nadpis, .sukromne[data-stav="vypina"] .sukromne__nadpis,
.sukromne[data-stav="zapina"] .sukromne__popis { color: var(--ink); }
.sukromne__akcie { display: grid; gap: var(--space-3); width: 100%; margin-top: var(--space-2); }
.sukromne__akcie:not(:has(> :not([hidden]))) { display: none; }
.sukromne .video { border-radius: var(--radius-lg); overflow: hidden; }
/* Zapínanie je biele (ink), nie modré: točiaci sa glyf, veľký loader a biely priebeh. */
.sukromne .pk-status--prebieha { color: var(--ink); font-weight: 600; }
.sukromne .pk-status--prebieha::before {
  content: ""; flex: none; align-self: center; width: 9px; height: 9px;
  border: 2px solid currentColor; border-right-color: transparent; border-radius: 50%; animation: tocenie 0.8s linear infinite;
}
.nacitanie { display: grid; justify-items: center; gap: var(--space-4); width: 100%; padding: var(--space-6) var(--space-4);
  border-radius: var(--radius-lg); background: var(--surface-sunken); color: var(--ink); }
.nacitanie__krok { margin: 0; font-size: 18px; line-height: 26px; font-weight: 600; }
.nacitanie .pk-progress__bar { width: min(100%, 360px); background: var(--surface-selected); }
.nacitanie .pk-progress__fill { background: var(--ink); }
.loader { display: block; flex: none; width: 72px; height: 72px; border: 7px solid var(--surface-selected);
  border-top-color: var(--ink); border-radius: 50%; animation: tocenie 0.9s linear infinite; }
.pk-btn--velke { justify-content: center; width: 100%; height: 64px; padding: 0 24px; font-size: 20px; border-radius: var(--radius-lg); }
.pk-btn--nebezpecne { border: 2px solid var(--status-error); background: transparent; color: var(--status-error); }
.pk-btn--nebezpecne:hover { opacity: 1; background: var(--status-error-wash); }
@keyframes tocenie { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
  .sukromne .pk-status--prebieha::before, .loader { animation-duration: 3s !important; }
}
