/* BEZ HLASU P3: sjednocene zakladni styly; poradi zachovano. */

/* Zdroj: vizual-v50.css */
/*
 * BEZ HLASU V5.0 — jednotný vzhled podle uživatelem zvolené V4.8.
 * Nezasahuje do JS/PHP a neprepisuje V4.8 vzhled hlavni stranky.
 * Aktivace: stejny pozadi.css na vsech uzivatelskych strankach.
 */
:root {
  --bh50-bg: #050506;
  --bh50-surface: rgba(16,9,13,.91);
  --bh50-surface-hover: rgba(39,14,24,.90);
  --bh50-wine: #ab4b66;
  --bh50-wine-bright: #dc7895;
  --bh50-glow: rgba(170,53,85,.15);
  --bh50-border: rgba(172,84,111,.35);
  --bh50-border-muted: rgba(201,185,193,.17);
  --bh50-text: #e4dce0;
  --bh50-text-subtle: #aaa0a5;
  --bh50-dim: #93898e;
}
/* Homepage: only new optional intro accent, keep original minimal splash. */
body:not(.registration):not(.legal-page):not(.bh-stories) .hero::before {
  content: "ANONYMNÍ ZPOVĚDI";
  display: block;
  color: var(--bh50-text-subtle);
  font: 300 10px/1.5 'Helvetica Neue','Segoe UI',Arial,sans-serif;
  letter-spacing: .43em;
  margin-bottom: 22px;
  opacity: .83;
}
body:not(.registration):not(.legal-page):not(.bh-stories) .stage {
  background: radial-gradient(ellipse 68% 58% at 50% 46%,rgba(43,13,23,.26),#090608 59%,#030303 100%);
}
body:not(.registration):not(.legal-page):not(.bh-stories) .hero h1 {
  color: #e7e0e3;
  text-shadow: 0 0 22px rgba(221,95,132,.10);
}
body:not(.registration):not(.legal-page):not(.bh-stories) .enter {
  border: 1px solid var(--bh50-border);
  border-radius: 5px;
  background: linear-gradient(90deg,rgba(86,24,42,.27),rgba(23,9,15,.56),rgba(83,27,43,.25));
  color: var(--bh50-text);
  min-height: 49px;
  min-width: 165px;
  box-shadow: 0 0 26px var(--bh50-glow);
  padding: 14px 24px;
}
body:not(.registration):not(.legal-page):not(.bh-stories) .enter:is(:hover,:focus-visible) {
  border-color: var(--bh50-wine-bright);
  box-shadow: 0 0 28px rgba(184,65,102,.25);
}

/* Registration, login, reset password, email verification, account. */
body.registration {
  background: var(--bh50-bg);
  color: var(--bh50-text);
}
body.registration .stage {
  background: radial-gradient(ellipse 65% 70% at 50% 38%,rgba(51,15,29,.25),#070608 55%,#030303 95%);
  padding-top: clamp(28px,5vw,62px);
  padding-bottom: clamp(36px,6vw,74px);
}
body.registration .stage::after {
  background: radial-gradient(ellipse 76% 62% at 50% 45%, transparent 12%, rgba(0,0,0,.20) 66%,rgba(0,0,0,.6) 100%);
}
body.registration .particles { opacity: .52; }
body.registration .hero { width: min(100%, 560px); }
body.registration .hero::before {
  content:"ANONYMNÍ ZPOVĚDI";
  display:block;
  margin-bottom:17px;
  color:#a99ca3;
  letter-spacing:.40em;
  font:300 10px/1.5 'Helvetica Neue','Segoe UI',Arial,sans-serif;
}
body.registration .hero h1 {
  font-weight: 200;
  color: var(--bh50-text);
  letter-spacing: .27em;
  text-shadow: 0 0 22px rgba(221,95,132,.12);
  font-size: clamp(29px,3vw,43px);
}
body.registration .reg-panel {
  text-align:left;
  width:100%;
  padding:clamp(23px,4.4vw,40px);
  margin-top: clamp(24px,4.8vh,45px);
  background:linear-gradient(150deg,rgba(27,13,19,.88),rgba(10,9,11,.94) 62%);
  border:1px solid var(--bh50-border);
  border-radius: 9px;
  box-shadow:0 22px 72px rgba(0,0,0,.45),0 0 48px rgba(122,32,57,.08);
}
body.registration .reg-panel h2,
body.registration .reg-panel .bh-auth-switch > * {
  color:var(--bh50-text);
  font-size:11px;
  letter-spacing:.28em;
}
body.registration .reg-panel .bh-auth-switch {
  margin-bottom:25px;
  padding-bottom:3px;
  border-bottom:1px solid var(--bh50-border-muted);
}
body.registration .reg-panel .bh-auth-switch h2 {
  border-bottom:2px solid var(--bh50-wine);
}
body.registration .reg-panel .bh-auth-switch a {
  color:var(--bh50-text-subtle);
  border-bottom-color:transparent;
}
body.registration .reg-panel .bh-auth-switch a:hover,
body.registration .reg-panel .bh-auth-switch a:focus-visible {
  color:#fff; border-bottom-color:var(--bh50-wine-bright);
}
body.registration .field label,
body.registration .identity-choices legend {
  color:var(--bh50-text-subtle);
  font-size:10px;
  letter-spacing:.18em;
}
body.registration .field input,
body.registration .field select,
body.registration .reg-panel textarea {
  min-height:46px;
  border:1px solid rgba(166,104,121,.33);
  border-radius:4px;
  background:rgba(6,6,8,.85);
  color:var(--bh50-text);
  font-size:15px;
}
body.registration .field input:focus,
body.registration .field select:focus,
body.registration .reg-panel textarea:focus {
  border-color:var(--bh50-wine-bright);
  box-shadow:0 0 0 2px rgba(196,70,107,.12);
  outline:0;
}
body.registration .consent.age,
body.registration .identity-option {
  background:rgba(12,8,10,.65);
  border:1px solid rgba(159,93,115,.30);
  border-radius:5px;
  color:var(--bh50-text-subtle);
}
body.registration .consent input,
body.registration .identity-option input {
  accent-color:var(--bh50-wine-bright);
}
body.registration .consent a,
body.registration .small-note a,
body.registration .auth-links a,
body.registration .auth-center a {
  color:#dfb4c0;
}
body.registration .submit {
  min-height:49px;
  border:1px solid rgba(221,98,132,.55);
  border-radius:5px;
  background:linear-gradient(90deg,rgba(101,29,48,.74),rgba(56,15,29,.84));
  color:#f3e9ed;
  font-size:11px;
  letter-spacing:.23em;
  box-shadow:0 0 20px rgba(131,36,65,.10);
}
body.registration .submit:is(:hover,:focus-visible) {
  background:linear-gradient(90deg,rgba(132,37,66,.83),rgba(88,25,46,.82));
  border-color:var(--bh50-wine-bright);
  color:#fff;
}
body.registration .alert {
  border:1px solid var(--bh50-border);
  border-left:2px solid var(--bh50-wine-bright);
  border-radius:5px;
  background:var(--bh50-surface);
  color:var(--bh50-text);
}
body.registration .alert.success {border-left-color:#a2c3ad;}
body.registration .small-note,
body.registration .identity-help,
body.registration .auth-note,
body.registration .field small {
  color:var(--bh50-text-subtle);
  line-height:1.75;
}
body.registration .auth-detail {
  border-bottom:1px solid var(--bh50-border-muted);
  padding-block:17px;
}
body.registration .auth-detail span {color:var(--bh50-text-subtle);}
body.registration .auth-detail strong {color:#f3e9ed;}
body.registration .back {
  margin-top:18px;
  border-bottom:1px solid var(--bh50-border-muted);
  color:#d4b7c1;
  letter-spacing:.22em;
}
body.registration .back:is(:hover,:focus-visible) {border-bottom-color:var(--bh50-wine-bright);color:#fff;}

/* All logged-in pages except main V4.8 feed, which stays exactly V4.8. */
body.bh-stories.bh-v50-subpage .bh-portal-stage {
  background:radial-gradient(ellipse 72% 58% at 60% 23%,rgba(40,12,23,.20),#050506 75%);
  min-height:100svh;
}
body.bh-stories.bh-v50-subpage .bh-story-shell {
  display:grid;
  grid-template-columns:minmax(196px,216px) minmax(0,1fr);
  max-width:1500px;
  gap:24px;
  padding:0 24px 52px;
  margin-inline:auto;
  align-items:start;
}
body.bh-stories.bh-v50-subpage .bh-story-sidebar,
body.bh-stories.bh-v50-subpage .bh-story-main {padding-top:22px;}
body.bh-stories.bh-v50-subpage .bh-story-sidebar {
  position:relative;
  top:auto;
  max-height:none;
  overflow:visible;
}
body.bh-stories.bh-v50-subpage .bh-story-main {
  max-width:none;
  padding-left:23px;
  border-left:1px solid var(--bh50-border-muted);
}
body.bh-stories.bh-v50-subpage .bh-category-list {
  max-height:min(510px,calc(100svh - 270px));
  overflow-y:auto;
  scrollbar-width:thin;
  scrollbar-color:rgba(158,75,100,.6) transparent;
}
body.bh-stories.bh-v50-subpage .bh-category-link.is-active::before {display:none;content:none;}
body.bh-stories.bh-v50-subpage .bh-sidebar-actions {
  display:flex;
  flex-direction:column;
  gap:4px;
  padding-inline:7px;
  margin-top:4px;
}
body.bh-stories.bh-v50-subpage .bh-sidebar-actions a {
  display:block;
  text-transform:uppercase;
  font-size:10px;
  letter-spacing:.12em;
  color:#d2b9c2;
  padding:10px 6px;
}
body.bh-stories.bh-v50-subpage .bh-sidebar-actions a:hover {color:#fff;}
body.bh-stories.bh-v50-subpage .bh-v46-sidebar-info {
  margin-top:15px;
  color:#a99da3;
}
body.bh-stories.bh-v50-subpage .bh-story-heading {
  padding:12px 0 25px;
  border-bottom:1px solid var(--bh50-border-muted);
}
body.bh-stories.bh-v50-subpage .bh-eyebrow {
  margin-bottom:15px;
  color:var(--bh50-wine-bright);
  letter-spacing:.24em;
}
body.bh-stories.bh-v50-subpage .bh-story-heading h1 {
  color:#e8e2e5;
  font-size:clamp(24px,2.6vw,34px);
  line-height:1.34;
  font-weight:300;
  letter-spacing:.18em;
  margin:0 0 14px;
  text-shadow:none;
}
body.bh-stories.bh-v50-subpage .bh-story-heading .bh-detail-heading {
  font-size:clamp(21px,2.4vw,31px);
  letter-spacing:.07em;
}
body.bh-stories.bh-v50-subpage .bh-story-description {
  font-size:13px;
  line-height:1.75;
  color:var(--bh50-text-subtle);
  margin-bottom:12px;
}
body.bh-stories.bh-v50-subpage .bh-story-feed {padding-top:20px;}
body.bh-stories.bh-v50-subpage .bh-story-card {
  padding:19px 19px 20px;
  margin:10px 0;
  border:1px solid var(--bh50-border-muted);
  border-radius:6px;
  background:linear-gradient(90deg,rgba(29,13,19,.57),rgba(11,9,12,.65));
}
body.bh-stories.bh-v50-subpage .bh-story-card h2 {
  font-size:clamp(17px,1.7vw,21px);
  margin:11px 0 10px;
}
body.bh-stories.bh-v50-subpage .bh-story-card h2 a {color:#e9e2e5;}
body.bh-stories.bh-v50-subpage .bh-story-meta {color:#a99ca3;font-size:10px;}
body.bh-stories.bh-v50-subpage .bh-story-excerpt {color:#aea3a8;font-size:13px;margin-bottom:15px;}
body.bh-stories.bh-v50-subpage .bh-primary-link,
body.bh-stories.bh-v50-subpage .bh-secondary-button,
body.bh-stories.bh-v50-subpage .bh-secondary-link {
  border:1px solid var(--bh50-border);
  border-radius:5px;
  color:#e9dce1;
  background:linear-gradient(90deg,rgba(80,23,42,.45),rgba(25,10,17,.68));
  font-size:10px;
  letter-spacing:.15em;
  padding:12px 18px;
}
body.bh-stories.bh-v50-subpage .bh-primary-link:is(:hover,:focus-visible),
body.bh-stories.bh-v50-subpage .bh-secondary-button:is(:hover,:focus-visible),
body.bh-stories.bh-v50-subpage .bh-secondary-link:is(:hover,:focus-visible) {
  border-color:var(--bh50-wine-bright);
  background:var(--bh50-surface-hover);
  color:#fff;
}
body.bh-stories.bh-v50-subpage .bh-story-form {padding:18px 0 32px;}
body.bh-stories.bh-v50-subpage .bh-story-form label {
  margin:15px 0 8px;
  color:#c0b3b9;
  letter-spacing:.18em;
}
body.bh-stories.bh-v50-subpage .bh-story-form input,
body.bh-stories.bh-v50-subpage .bh-story-form select,
body.bh-stories.bh-v50-subpage .bh-story-form textarea {
  background:rgba(9,7,10,.82);
  border:1px solid var(--bh50-border);
  border-radius:5px;
  color:#e8e0e4;
  font-size:15px;
  font-weight:300;
}
body.bh-stories.bh-v50-subpage .bh-story-form :is(input,select,textarea):focus {
  border-color:var(--bh50-wine-bright);
  outline:2px solid rgba(215,99,135,.12);
  outline-offset:0;
}
body.bh-stories.bh-v50-subpage .bh-form-note {
  color:var(--bh50-text-subtle);
  font-size:12px;
  line-height:1.8;
}
body.bh-stories.bh-v50-subpage .bh-full-story {
  color:#ddd4d8;
  line-height:1.85;
  font-size:15px;
}
body.bh-stories.bh-v50-subpage .bh-moderation-actions {border-top:1px solid var(--bh50-border-muted);}
body.bh-stories.bh-v50-subpage .bh-counter,
body.bh-stories.bh-v50-subpage .bh-message,
body.bh-stories.bh-v50-subpage .bh-empty {
  border:1px solid var(--bh50-border);
  border-radius:5px;
  background:var(--bh50-surface);
}
body.bh-stories.bh-v50-subpage .bh-counter strong {color:#f4e9ed;}
body.bh-stories.bh-v50-subpage .bh-message.bh-error {border-left:2px solid var(--bh50-wine-bright);}
body.bh-stories.bh-v50-subpage .bh-message.bh-success {border-left:2px solid #a2c3ad;}
body.bh-stories.bh-v50-subpage .bh-decision-buttons {display:flex;flex-wrap:wrap;gap:10px;}
body.bh-stories.bh-v50-subpage .bh-reactions {display:inline-flex;align-items:center;}

/* GDPR/information legal pages. */
body.legal-page {
  color:var(--bh50-text);
  background:var(--bh50-bg);
}
body.legal-page #obsah {
  width:min(100%,860px);
  max-width:860px;
  padding:clamp(24px,4vw,55px) clamp(18px,4vw,42px) 65px;
  margin:clamp(20px,4vw,55px) auto;
  background:linear-gradient(155deg,rgba(31,12,21,.80),rgba(8,8,10,.93) 62%);
  border:1px solid var(--bh50-border);
  border-radius:9px;
  box-shadow:0 24px 90px rgba(0,0,0,.38);
}
body.legal-page #obsah .legal-head {border-bottom:1px solid var(--bh50-border-muted);padding-bottom:20px;margin-bottom:30px;}
body.legal-page #obsah .legal-brand {color:#bd91a0;}
body.legal-page #obsah .legal-brand::after {
  content:" | ANONYMNÍ ZPOVĚDI";
  color:#9b8b93;
  letter-spacing:.2em;
}
body.legal-page #obsah h1 {
  font-size:clamp(22px,3vw,29px);
  font-weight:300;
  letter-spacing:.18em;
  color:#eee4e8;
}
body.legal-page #obsah h2 {
  color:#e6c7d1;
  letter-spacing:.16em;
  font-size:13px;
}
body.legal-page #obsah .legal-meta {color:#b9aab1;}
body.legal-page #obsah .legal-date {color:#a69aa0;}
body.legal-page #obsah p,body.legal-page #obsah li {color:#c4b9be;}
body.legal-page #obsah strong {color:#efe5e9;}
body.legal-page #obsah .legal-contents,
body.legal-page #obsah .legal-footer {border-color:var(--bh50-border-muted);}
body.legal-page #obsah a {color:#d8b0bf; text-decoration-color:rgba(216,129,158,.4);}
body.legal-page #obsah a:is(:hover,:focus-visible) {color:#fff;text-decoration-color:var(--bh50-wine-bright);}

/* Older static terms page has no #obsah wrapper; style it without rewriting its content. */
body.legal-page > main:not(#obsah) {
  max-width:820px;
  width:min(100%,820px);
  margin:clamp(20px,4vw,55px) auto;
  padding:clamp(24px,4vw,48px);
  background:linear-gradient(155deg,rgba(31,12,21,.80),rgba(8,8,10,.93) 62%);
  border:1px solid var(--bh50-border);
  border-radius:9px;
  box-shadow:0 24px 90px rgba(0,0,0,.38);
}
body.legal-page > main:not(#obsah) h1 { color:#e5d8df; letter-spacing:.19em; }
body.legal-page > main:not(#obsah) a { color:#e6b7c5; text-decoration-color:var(--bh50-wine); }

/* Narrow screens and reduced motion. */
@media(max-width:850px){
  body.registration .reg-panel {padding:25px;}
  body.bh-stories.bh-v50-subpage .bh-story-shell {grid-template-columns:190px minmax(0,1fr);gap:18px;padding:0 18px 40px;}
  body.bh-stories.bh-v50-subpage .bh-story-main {padding-left:16px;}
}
@media(max-width:660px){
  body.registration .reg-panel {padding:22px 18px;border-radius:7px;}
  body.registration .hero h1 {font-size:clamp(25px,6vw,36px);letter-spacing:.16em;}
  body.bh-stories.bh-v50-subpage .bh-story-shell {display:flex;flex-direction:column;gap:17px;padding:0 15px 33px;}
  body.bh-stories.bh-v50-subpage .bh-story-sidebar {width:100%;max-height:none;overflow:visible;padding:16px 0 0;}
  body.bh-stories.bh-v50-subpage .bh-story-main {width:100%;max-width:none;padding:0;border:0;}
  body.bh-stories.bh-v50-subpage .bh-category-list {display:flex;flex-direction:row;max-height:none;overflow-x:auto;overflow-y:hidden;gap:6px;padding-bottom:9px;}
  body.bh-stories.bh-v50-subpage .bh-category-link {flex:0 0 auto;width:auto;min-height:36px;padding:7px 10px;white-space:nowrap;}
  body.bh-stories.bh-v50-subpage .bh-category-link .bh-v46-category-icon {width:15px;height:15px;flex-basis:15px;}
  body.bh-stories.bh-v50-subpage .bh-sidebar-actions {flex-direction:row;gap:8px;flex-wrap:wrap;padding:0;}
  body.bh-stories.bh-v50-subpage .bh-sidebar-actions a {font-size:9px;padding:7px;}
  body.bh-stories.bh-v50-subpage .bh-v46-sidebar-info {display:flex;flex-direction:row;flex-wrap:wrap;margin-top:8px;gap:10px;}
  body.bh-stories.bh-v50-subpage .bh-story-heading {padding-top:8px;}
  body.legal-page #obsah {margin:0;min-height:100svh;border-radius:0;padding:30px 20px 64px;}
}
@media(prefers-reduced-motion:reduce){
  body.registration .particle,
  body.legal-page .particle,
  body.bh-stories.bh-v50-subpage .particle{animation:none!important;}
}


/* Zdroj: pozadi-viditelnost-v566.css */
/* BEZ HLASU V5.6.6 — ověřitelná intenzita V5.6.5.
   0.14175 = 90 % intenzity předchozí V5.6.4 (0.1575).
   Unikátní název souboru obchází uloženou V5.5 CSS cache.
   Vyšší specificita zajišťuje přednost i když se V5.5 CSS přidá později skriptem. */
html body #particles.bh-motion-v55 {
  opacity: 0.14175 !important;
}


/* Zdroj: pozadi.css */


:root { color-scheme:dark; --ink:#cecece; }
*,*::before,*::after { box-sizing:border-box; }
html,body { margin:0; width:100%; min-height:100%; }
body { background:#030303; color:var(--ink); font-family:"Helvetica Neue","Segoe UI",Arial,sans-serif; -webkit-font-smoothing:antialiased; overflow:hidden; }
.stage { position:relative; min-height:100vh; min-height:100svh; display:grid; place-items:center; isolation:isolate; overflow:hidden; background:radial-gradient(ellipse at 50% 48%, #080808 0%, #030303 73%,#000 100%); }
.particles { position:absolute; inset:0; overflow:hidden; z-index:0; pointer-events:none; }
.particle { position:absolute; display:block; left:var(--x); top:var(--y); color:#aeaeae; opacity:var(--alpha); font-size:var(--size); font-weight:300; letter-spacing:var(--track); white-space:nowrap; line-height:1; user-select:none; transform:translate3d(0,0,0); animation:float var(--duration) ease-in-out var(--delay) infinite alternate; }
@keyframes float { 0%{ transform:translate3d(calc(-1 * var(--dx)),calc(-1 * var(--dy)),0) rotate(-3deg) } 100%{ transform:translate3d(var(--dx),var(--dy),0) rotate(3deg) } }
/* Faint vignette quiets the letters along the perimeter. */
.stage::after { content:"";position:absolute;inset:0; z-index:1;pointer-events:none; background:radial-gradient(ellipse 72% 67% at 50% 50%, transparent 30%,rgba(0,0,0,.18) 70%,rgba(0,0,0,.65) 100%); }
.hero { position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;text-align:center; padding:0 18px; transform:translateY(-.5vh); }
h1 { margin:0; font-size:clamp(28px,3.65vw,62px); line-height:1.18; font-weight:200; letter-spacing:.27em; padding-left:.27em; color:#c8c8c8; white-space:nowrap; text-shadow:0 0 26px rgba(255,255,255,.055); animation:emerge 1.8s ease both; }
.enter { margin-top:clamp(52px,7.6vh,82px); padding:16px 24px 18px; border:0; border-radius:0; background:transparent; color:#b4b4b4; font:400 clamp(11px,1vw,15px)/1.3 "Helvetica Neue","Segoe UI",Arial,sans-serif; letter-spacing:.34em; text-indent:.34em; text-transform:uppercase; text-decoration:none; cursor:pointer; transition:color .4s ease,text-shadow .4s ease,transform .4s ease; animation:emerge 1.9s .45s ease both, breathe 4.2s 2.4s ease-in-out infinite; }
.enter:hover,.enter:focus-visible { color:#fff; text-shadow:0 0 20px rgba(255,255,255,.55); transform:translateY(-2px); }
.enter:focus-visible { outline:1px solid #868686; outline-offset:5px; }
@keyframes emerge { from{opacity:0;filter:blur(6px)} to{opacity:1;filter:blur(0)} }
@keyframes breathe { 0%,100%{opacity:.66} 50%{opacity:1} }
.curtain {position:fixed;inset:0;background:#000;z-index:9;opacity:0;pointer-events:none;transition:opacity .75s ease;}
body.exiting .curtain{opacity:1;pointer-events:auto;}
@media(max-width:700px){h1{font-size:clamp(25px,6vw,42px);letter-spacing:.18em;padding-left:.18em}.enter{margin-top:60px;font-size:12px}.particle{filter:blur(.15px)}}
@media(max-width:380px){h1{font-size:23px;letter-spacing:.13em;padding-left:.13em}}
@media(prefers-reduced-motion:reduce){.particle,.enter,h1{animation:none!important}.particle{transform:none!important}.curtain{transition:none!important}}

/* Registrační stránka: pouze nové prvky, původní styl zůstává zachován. */
body.registration {overflow:auto;}
.registration .stage {min-height:100svh;overflow:hidden;padding:55px 20px;}
.registration .stage::after {position:fixed;}
.registration .particles {position:fixed;}
.registration .hero {width:min(100%,490px); transform:none;}
.registration h1 {font-size:clamp(26px,3.2vw,43px);letter-spacing:.20em;padding-left:.20em;}
.reg-panel {width:100%;text-align:left;margin-top:45px;}
.reg-panel h2 {font-weight:300;text-align:center;font-size:12px;letter-spacing:.35em;padding-left:.35em;margin:0 0 28px;color:#aaa;}
.reg-form {display:grid;gap:19px;}
.form-row {display:grid;grid-template-columns:1fr 1fr;gap:17px;}
.field {display:flex;flex-direction:column;gap:8px;min-width:0;}
.field label {font-size:11px;color:#999;letter-spacing:.09em;}
.field input {appearance:none;width:100%;background:rgba(14,14,14,.66);border:1px solid #333;border-radius:1px;color:#e4e4e4;font:300 15px/1.4 'Helvetica Neue','Segoe UI',Arial,sans-serif;padding:13px 14px;outline:0;transition:border-color .2s,background .2s;}
.field input:focus {border-color:#929292;background:#111;}
.field input::placeholder {color:#666;}
.consent {display:flex;gap:12px;align-items:flex-start;color:#aaa;font-size:12px;line-height:1.6;cursor:pointer;}
.consent input {margin:3px 0 0;accent-color:#c9c9c9;width:16px;height:16px;flex:0 0 16px;cursor:pointer;}
.consent a,.small-note a {color:#ddd;text-decoration:underline;text-underline-offset:3px;}
.consent.age {border:1px solid #333;padding:13px 14px;align-items:center;}
.consent.age input {margin:0;}
.consent.age span {letter-spacing:.07em;}
.submit {width:100%;margin-top:8px;background:#d0d0d0;border:1px solid #d0d0d0;color:#0b0b0b;font-size:12px;letter-spacing:.26em;padding:16px;cursor:pointer;transition:background .3s,color .3s,border-color .3s;}
.submit:hover,.submit:focus-visible {background:transparent;color:#eee;border-color:#aaa;}
.back {margin-top:25px;color:#888;font-size:11px;letter-spacing:.23em;text-decoration:none;padding:10px;display:inline-block;}
.back:hover {color:#eee;}
.small-note {font-size:11px;line-height:1.7;color:#888;margin:0;}
.alert {padding:13px 15px;margin-bottom:18px;font-size:12px;line-height:1.6;border:1px solid #555;color:#ddd;background:rgba(15,15,15,.9);}
.alert.success {border-color:#666;}
@media(max-width:440px){.form-row{grid-template-columns:1fr}.registration .stage{padding:38px 18px}.reg-panel{margin-top:35px}}

/* BEZ HLASU — responzivní základ v1.1: společný pro všechny obrazovky */
html { -webkit-text-size-adjust:100%; text-size-adjust:100%; }
body { min-width:0; overflow-x:hidden; }
.stage { width:100%; min-height:100vh; min-height:100svh; padding: max(20px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) max(16px,env(safe-area-inset-left)); }
.hero { width:100%; max-width:100%; min-width:0; padding:0; }
.hero h1 { max-width:100%; font-size:clamp(23px,3.65vw,62px); letter-spacing:clamp(.09em, .26vw, .27em); padding-left:clamp(.09em, .26vw, .27em); font-weight:200; white-space:nowrap; }
.enter { min-width:130px; min-height:48px; display:inline-flex; align-items:center; justify-content:center; margin-top:clamp(24px,7vh,78px); }
.registration .stage { min-height:100vh; min-height:100svh; height:auto; padding:clamp(22px,5vh,56px) max(18px,env(safe-area-inset-right)) clamp(28px,5vh,60px) max(18px,env(safe-area-inset-left)); overflow:visible; }
.registration .hero { width:min(100%,490px); margin-inline:auto; }
.registration .hero h1 { font-size:clamp(23px,3.2vw,43px); letter-spacing:clamp(.08em,.2vw,.2em); padding-left:clamp(.08em,.2vw,.2em); }
.registration .reg-panel { margin-top:clamp(24px,5vh,45px); }
.registration .reg-form { gap:clamp(13px,2vh,19px); }
.registration .field input { min-width:0; min-height:46px; font-size:16px; }
.registration .submit { min-height:48px; touch-action:manipulation; }
.registration .back { min-height:44px; }
.registration .consent { min-height:30px; }
.registration .consent input { min-width:18px; min-height:18px; }
.registration .particles { inset:0; z-index:0; }
.registration .stage::after { inset:0; }
@media (min-width:1600px) {
 .hero h1 { font-size:clamp(54px,3.65vw,70px); }
 .registration .hero h1 { font-size:clamp(38px,2.5vw,48px); }
}
@media (min-width:2100px) {
 .hero h1 { font-size:clamp(62px,3.1vw,88px); }
 .registration .hero { width:min(100%,550px); }
}
@media (max-width:900px) {
 .hero h1 { font-size:clamp(25px,5.6vw,48px); letter-spacing:.17em; padding-left:.17em; }
 .registration .hero h1 { font-size:clamp(25px,5vw,39px); }
}
@media (max-width:600px) {
 .hero h1 { font-size:clamp(23px,6.2vw,38px); letter-spacing:.12em; padding-left:.12em; }
 .enter { margin-top:clamp(30px,6vh,58px); font-size:12px; }
 .registration .hero h1 { font-size:clamp(23px,6vw,36px); letter-spacing:.12em; padding-left:.12em; }
 .registration .reg-panel { margin-top:29px; }
 .registration .reg-form { gap:15px; }
 .registration .form-row { grid-template-columns:1fr; gap:15px; }
 .registration .consent.age { padding:12px; }
}
@media (max-width:360px) {
 .hero h1,.registration .hero h1 { font-size:clamp(19px,6.4vw,24px); letter-spacing:.08em; padding-left:.08em; }
 .registration .stage { padding-inline:15px; }
 .registration .field input { padding:12px; }
 .registration .reg-panel h2 { margin-bottom:18px; }
}
@media (max-height:540px) and (min-width:601px) {
 .hero .enter { margin-top:clamp(15px,5vh,30px); }
 .registration .stage { padding-block:18px 26px; }
 .registration .reg-panel { margin-top:20px; }
}
@media (orientation:landscape) and (max-height:430px) {
 .stage { min-height:100svh; }
 .hero h1 { font-size:clamp(22px,4.4vw,42px); }
 .hero .enter { margin-top:15px; }
 .registration .stage { min-height:100svh; }
}
@media (hover:none) and (pointer:coarse) {
 .enter, .back, .submit { -webkit-tap-highlight-color:transparent; }
}
@media (prefers-reduced-motion:reduce) {
 .hero h1, .enter, .particle { animation:none!important; }
 .enter { opacity:1!important; }
 .curtain { transition:none; }
}

/* Podmínky, zásady – sdílené CSS, bez inline stylů kvůli CSP */
body.legal-page{margin:0;min-height:100vh;min-height:100svh;background:#030303;color:#ccc;font:300 16px/1.9 'Segoe UI',Arial,sans-serif;display:grid;place-items:center;overflow:auto}
.legal-page main{max-width:650px;padding:30px 20px}.legal-page h1{font-size:clamp(19px,5vw,25px);letter-spacing:.14em;font-weight:300}.legal-page a{color:#ccc}
.honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.registration .submit:disabled{opacity:.4;cursor:not-allowed}.registration .alert.notice{margin:20px 0}

/* BEZ HLASU v1.4 — volba identity jako ciste checkboxy, bez ramecku. */
.identity-choices {
  display:grid;
  gap:17px;
  min-width:0;
  border:0;
  margin:0;
  padding:0;
  color:#aaa;
}
.identity-choices legend {
  display:block;
  width:100%;
  padding:0;
  margin:0 0 14px;
  font-size:11px;
  font-weight:400;
  line-height:1.5;
  letter-spacing:.09em;
  color:#999;
}
.identity-option {
  display:flex;
  width:100%;
  align-items:flex-start;
  gap:15px;
  min-height:27px;
  font-size:13px;
  line-height:1.65;
  color:#aaa;
  cursor:pointer;
}
/* Technicky jde o radio prvky: graficky ctverecky, funkcne pouze jedna volba. */
.identity-option input[type="radio"] {
  -webkit-appearance:none;
  appearance:none;
  position:relative;
  display:block;
  flex:0 0 24px;
  width:24px;
  height:24px;
  min-width:24px;
  min-height:24px;
  margin:0;
  padding:0;
  border:1px solid #888;
  border-radius:3px;
  background:#292929;
  box-shadow:none;
  cursor:pointer;
  transition:border-color .2s ease,background-color .2s ease;
}
.identity-option input[type="radio"]:checked { background:#3c3c3c; border-color:#bdbdbd; }
.identity-option input[type="radio"]:checked::after {
  content:"";
  position:absolute;
  left:7px;
  top:3px;
  width:7px;
  height:12px;
  border:solid #f0f0f0;
  border-width:0 2px 2px 0;
  transform:rotate(45deg);
}
.identity-option:hover input[type="radio"] { border-color:#c7c7c7; }
.identity-option:focus-within { color:#fff; }
.identity-option input[type="radio"]:focus-visible { outline:2px solid #e0e0e0; outline-offset:4px; }
.identity-option span { min-width:0; padding-top:1px; }
.nickname-field[hidden] { display:none!important; }
.nickname-field small,.identity-help { color:#888; font-size:11px; line-height:1.6; }
.identity-help { margin:-9px 0 0; }
@media(max-width:440px) {
  .identity-choices { gap:15px; }
  .identity-option { min-height:34px; font-size:13px; }
}

/* BEZ HLASU v1.5 — skryté posuvníky; nativní scroll zachován.
   Kolečko, touchpad, šipky, PageUp/Down, mezerník a dotyk fungují bez zásahu JS. */
html { scrollbar-width: none; -ms-overflow-style: none; }
body { scrollbar-width: none; -ms-overflow-style: none; }
html::-webkit-scrollbar, body::-webkit-scrollbar { display: none; width: 0; height: 0; }
/* Další případné samostatně posuvné bloky jsou vizuálně bez posuvníků. */
.stage, .reg-panel, .reg-form, .legal-page main { scrollbar-width:none; -ms-overflow-style:none; }
.stage::-webkit-scrollbar, .reg-panel::-webkit-scrollbar,
.reg-form::-webkit-scrollbar, .legal-page main::-webkit-scrollbar { display:none; width:0; height:0; }
/* Vodorovné přetékání neotevírá postranní posuvník. */
html { overflow-x: clip; }
.registration, .legal-page { overflow-y: auto; }


/* BEZ HLASU v1.6 — jednotne posouvani dokumentu bez viditelne listy.
   Zamerne neblokujeme kolecko mysi, klavesnici, touchpad ani dotyk. */
html {
  overflow-x: clip;
  overflow-y: auto;
  scrollbar-width: none !important; /* Firefox a nove Chromium */
  -ms-overflow-style: none !important;
}
body.registration, body.legal-page {
  overflow-x: clip !important;
  overflow-y: visible !important; /* Jeden skutecny scroll na html, ne vnoreny */
  scrollbar-width: none !important;
  -ms-overflow-style: none !important;
}
/* Chrome/Edge/Safari: take pro vnitrni posuvne oblasti, pokud vzniknou */
html::-webkit-scrollbar, body::-webkit-scrollbar,
body *::-webkit-scrollbar {
  width: 0 !important;
  height: 0 !important;
  display: none !important;
  background: transparent !important;
}
body.registration .stage { overflow: visible; }
body.registration .particles { pointer-events: none; }
@media (max-width: 600px) {
  html { -webkit-overflow-scrolling: touch; }
}



/* P3: dotyková obsluha, přístupnost a úsporný pohyb. */
html { text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }
button, a, input, select, textarea { touch-action: manipulation; }
a:focus-visible, button:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible {outline:2px solid #ee9bb3; outline-offset:3px;}
@media (max-width: 767px) {
 .registration .hero {max-width:100%;}
 .registration .field input, .registration input[type="text"], .registration input[type="email"], .registration input[type="password"], .registration textarea, .registration select {font-size:16px;}
 .registration .submit, .registration button[type="submit"] {min-height:44px;}
 .registration .field input {min-height:44px;}
 .registration .stage {padding-bottom:max(34px,env(safe-area-inset-bottom));}
}
#particles.bh-p3-paused *, #particles.bh-p3-paused {animation-play-state:paused!important;}
@media (prefers-reduced-motion: reduce) {
 html:focus-within {scroll-behavior:auto;}
 #particles *, .particles *, .curtain {animation:none!important; transition:none!important;}
}
