/* ═══════════════════════════════════════════════════════
   DEBTORA CZ — Global Stylesheet
   Modern light fintech aesthetic — blue accent, sans-serif,
   rounded cards with soft shadows (sjednoceno s /demo).
   ═══════════════════════════════════════════════════════ */

@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;500;600;700;800&family=JetBrains+Mono:wght@400;500&display=swap');

:root {
  --bg-primary: #ffffff;
  --bg-secondary: #f6f8fc;
  --bg-tertiary: #eef2f8;
  --bg-card: #ffffff;
  --bg-card-hover: #f9fbfe;
  /* accent (názvy --gold* zachovány kvůli kompatibilitě; nově modrá) */
  --gold: #2b7fe0;
  --gold-light: #48a7ff;
  --gold-dim: rgba(43,127,224,0.08);
  --gold-glow: rgba(43,127,224,0.18);
  --text-primary: #0f172a;
  --text-secondary: #475569;
  --text-muted: #94a3b8;
  --border: #e2e8f0;
  --border-hover: #2b7fe0;
  --danger: #dc2626;
  --success: #0d9f6e;
  --info: #2b7fe0;
  --warning-bg: #eff4fb;
  --warning-text: #475569;
  --brand: #2b7fe0;
  --brand-light: #48a7ff;
  --font-display: 'Outfit', sans-serif;
  --font-body: 'Outfit', sans-serif;
  --font-mono: 'JetBrains Mono', monospace;
  --radius: 14px;
  --radius-sm: 10px;
  --shadow: 0 1px 2px rgba(15,23,42,.04), 0 4px 16px rgba(15,23,42,.05);
  --shadow-lg: 0 14px 44px rgba(15,23,42,.12);
  --max-w: 1200px;
  --nav-h: 70px;
  --disc-h: 36px;
}

*,*::before,*::after { margin:0; padding:0; box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { font-family:var(--font-body); background:var(--bg-primary); color:var(--text-primary); overflow-x:hidden; line-height:1.6; -webkit-font-smoothing:antialiased; }
::-webkit-scrollbar { width:8px; }
::-webkit-scrollbar-track { background:var(--bg-secondary); }
::-webkit-scrollbar-thumb { background:#cbd5e1; border-radius:4px; }
a { color:var(--brand); text-decoration:none; transition:color .2s; }
a:hover { color:var(--brand-light); }
img { max-width:100%; height:auto; }
em { font-style:normal; color:var(--brand); font-weight:700; }
.container { max-width:var(--max-w); margin:0 auto; padding:0 3rem; }

/* ─── DISCLAIMER ─── */
.disclaimer-bar { background:var(--warning-bg); border-bottom:1px solid var(--border); padding:.55rem 3rem; text-align:center; font-size:.78rem; color:var(--warning-text); display:flex; align-items:center; justify-content:center; gap:.5rem; min-height:var(--disc-h); }
.disclaimer-bar svg { flex-shrink:0; stroke:var(--brand); }

/* ─── NAV ─── */
nav { position:fixed; top:var(--disc-h); width:100%; z-index:1000; padding:0 3rem; height:var(--nav-h); display:flex; justify-content:space-between; align-items:center; background:rgba(255,255,255,.85); backdrop-filter:blur(20px); border-bottom:1px solid var(--border); transition:all .3s; }
nav.scrolled { box-shadow:0 2px 20px rgba(15,23,42,.06); }
.logo-wrap { display:flex; align-items:center; gap:.7rem; text-decoration:none; }
.logo-icon { width:38px; height:38px; }
.logo-text { display:flex; flex-direction:column; }
.logo-name { font-family:var(--font-body); font-weight:800; letter-spacing:.2px; font-size:1.2rem; color:var(--text-primary); line-height:1.2; }
.logo-name b { color:var(--brand); font-weight:800; }
.logo-sub { font-size:.65rem; color:var(--text-muted); letter-spacing:.08em; text-transform:uppercase; }
.nav-links { display:flex; gap:2rem; align-items:center; }
.nav-links > a, .nav-dropdown > a { color:var(--text-secondary); font-size:.88rem; font-weight:500; transition:color .2s; text-decoration:none; }
.nav-links > a:hover, .nav-dropdown:hover > a { color:var(--brand); }
.btn-nav { background:var(--brand); color:#fff !important; padding:.55rem 1.3rem; font-size:.82rem; font-weight:600; letter-spacing:.01em; border-radius:var(--radius-sm); transition:all .2s; }
.btn-nav:hover { background:var(--brand-light); transform:translateY(-1px); }

/* Dropdown */
.nav-dropdown { position:relative; }
.nav-dropdown-menu { position:absolute; top:100%; left:-1rem; padding-top:.8rem; opacity:0; visibility:hidden; transform:translateY(5px); transition:all .25s; }
.nav-dropdown:hover .nav-dropdown-menu { opacity:1; visibility:visible; transform:translateY(0); }
.nav-dropdown-menu-inner { background:var(--bg-card); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow-lg); padding:.5rem; min-width:280px; }
.nav-dropdown-menu-inner a { display:flex; align-items:flex-start; gap:.8rem; padding:.7rem .8rem; border-radius:var(--radius-sm); color:var(--text-primary); transition:background .2s; text-decoration:none; }
.nav-dropdown-menu-inner a:hover { background:var(--bg-secondary); }
.dd-icon { font-size:1.2rem; margin-top:.1rem; }
.dd-label { display:flex; flex-direction:column; font-size:.88rem; }
.dd-label small { font-size:.72rem; color:var(--text-muted); margin-top:.15rem; }

/* Hamburger */
.hamburger { display:none; background:none; border:none; cursor:pointer; padding:.5rem; flex-direction:column; gap:5px; }
.hamburger span { display:block; width:22px; height:2px; background:var(--text-primary); border-radius:2px; transition:all .3s; }
.hamburger.active span:nth-child(1) { transform:rotate(45deg) translate(5px,5px); }
.hamburger.active span:nth-child(2) { opacity:0; }
.hamburger.active span:nth-child(3) { transform:rotate(-45deg) translate(5px,-5px); }

/* ─── BUTTONS ─── */
.btn-primary { display:inline-block; background:var(--brand); color:#fff; padding:.8rem 2rem; font-family:var(--font-body); font-size:.9rem; font-weight:600; border:none; border-radius:var(--radius-sm); cursor:pointer; letter-spacing:.01em; transition:all .2s; text-decoration:none; box-shadow:0 1px 2px rgba(43,127,224,.25); }
.btn-primary:hover { background:var(--brand-light); color:#fff; transform:translateY(-1px); box-shadow:0 6px 18px rgba(43,127,224,.28); }
.btn-secondary { display:inline-block; border:1px solid var(--border); color:var(--text-primary); padding:.8rem 2rem; font-family:var(--font-body); font-size:.9rem; font-weight:500; border-radius:var(--radius-sm); background:var(--bg-card); transition:all .2s; text-decoration:none; cursor:pointer; }
.btn-secondary:hover { border-color:var(--brand); color:var(--brand); }

/* ─── HERO (Homepage) ─── */
.hero-section { padding:calc(var(--nav-h) + var(--disc-h) + 5rem) 3rem 5rem; position:relative; background:linear-gradient(180deg,var(--bg-secondary) 0,var(--bg-primary) 100%); }
.hero-bg { position:absolute; inset:0; background:radial-gradient(ellipse at 70% 0%, var(--gold-glow) 0%, transparent 55%); }
.hero-section .container { position:relative; }
.hero-tag { font-size:.78rem; letter-spacing:.12em; text-transform:uppercase; color:var(--brand); margin-bottom:1.2rem; font-weight:600; }
.hero-headline { font-family:var(--font-display); font-size:clamp(2.2rem,5vw,3.8rem); font-weight:800; line-height:1.1; letter-spacing:-.02em; margin-bottom:1.5rem; max-width:820px; }
.hero-desc { font-size:1.1rem; color:var(--text-secondary); max-width:600px; margin-bottom:2.5rem; line-height:1.7; }
.hero-actions { display:flex; gap:1rem; flex-wrap:wrap; margin-bottom:3.5rem; }
.hero-stats { display:flex; gap:3rem; }
.hero-stat { display:flex; flex-direction:column; }
.hero-stat-num { font-family:var(--font-display); font-size:1.9rem; font-weight:800; color:var(--brand); font-variant-numeric:tabular-nums; }
.hero-stat-label { font-size:.78rem; color:var(--text-muted); }

/* ─── HERO split + ověřovač protistrany ─── */
.hero-grid { display:grid; grid-template-columns:1.1fr .9fr; gap:3.5rem; align-items:stretch; }
.hero-left { min-width:0; }
.hero-right { display:flex; }
.hero-left .hero-headline, .hero-left .hero-desc { max-width:none; }
.hero-left .hero-actions { margin-bottom:2.2rem; }
.hero-left .hero-stats { margin-bottom:0; }
.verifier-card { width:100%; display:flex; flex-direction:column; background:var(--bg-card); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow-lg); padding:2rem; }
.verifier-tag { font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; color:var(--brand); font-weight:600; margin-bottom:.6rem; }
.verifier-card h3 { font-family:var(--font-display); font-size:1.4rem; font-weight:800; letter-spacing:-.01em; margin-bottom:.4rem; }
.verifier-card > p { font-size:.9rem; color:var(--text-secondary); line-height:1.55; margin-bottom:1.2rem; }
.verifier-toggle { display:flex; gap:.4rem; margin-bottom:.8rem; }
.verifier-toggle button { flex:1; padding:.5rem; font-family:var(--font-body); font-size:.82rem; font-weight:600; border:1px solid var(--border); background:var(--bg-secondary); color:var(--text-secondary); border-radius:var(--radius-sm); cursor:pointer; transition:all .2s; }
.verifier-toggle button.active { background:var(--brand); color:#fff; border-color:var(--brand); }
.verifier-form { display:flex; gap:.6rem; flex-wrap:wrap; }
.verifier-form input { flex:1; min-width:150px; padding:.8rem 1rem; border:1px solid var(--border); border-radius:var(--radius-sm); font-family:var(--font-body); font-size:.95rem; background:var(--bg-secondary); color:var(--text-primary); }
.verifier-form input:focus { outline:none; border-color:var(--brand); box-shadow:0 0 0 3px var(--gold-dim); background:var(--bg-card); }
.verifier-form .btn-primary { padding:.8rem 1.4rem; white-space:nowrap; }
.verifier-card > small { display:block; margin-top:auto; padding-top:1.2rem; font-size:.74rem; color:var(--text-muted); line-height:1.5; }
.verifier-result { margin-top:1.2rem; display:flex; flex-direction:column; gap:.5rem; }
.verifier-result:empty { margin-top:0; }
.vname { font-size:.98rem; font-weight:700; color:var(--text-primary); padding-bottom:.4rem; margin-bottom:.2rem; border-bottom:1px solid var(--border); }
.vsubject { border:1px solid var(--border); border-radius:var(--radius-sm); padding:.6rem .7rem; margin-bottom:.2rem; background:var(--bg-secondary); }
.vsd-title { font-size:.72rem; font-weight:700; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); margin-bottom:.45rem; }
.vsd-row { display:flex; gap:.6rem; font-size:.82rem; padding:.18rem 0; align-items:flex-start; }
.vsd-row + .vsd-row { border-top:1px dashed var(--border); }
.vsd-k { flex:0 0 8.5rem; font-weight:600; color:var(--text-secondary); }
.vsd-v { color:var(--text-primary); }
.vscore { font-size:.9rem; font-weight:700; margin-bottom:.2rem; }
.vrisklbl { font-weight:600; color:var(--text-secondary); }
.vlegend { margin-top:.6rem; font-size:.72rem; color:var(--text-muted); line-height:1.5; }
.vrow { display:flex; align-items:flex-start; gap:.6rem; font-size:.84rem; padding:.45rem .65rem; background:var(--bg-secondary); border-radius:var(--radius-sm); }
.vgly { font-size:1rem; line-height:1.25; flex-shrink:0; }
.v-clear { color:var(--success); } .v-found { color:#b45309; } .v-error, .v-locked { color:var(--danger); } .v-unavailable, .v-skipped { color:var(--text-muted); }
.vlbl { font-weight:600; flex-shrink:0; }
.vdet { color:var(--text-secondary); }
.vmuted { color:var(--text-muted); font-size:.85rem; }
.verr { color:var(--danger); font-size:.85rem; }
.vmore { display:inline-block; margin-top:.4rem; font-size:.82rem; font-weight:600; color:var(--brand); }
@media (max-width:900px) { .hero-grid { grid-template-columns:1fr; gap:2.5rem; } }

/* ─── TICKER ─── */
.ticker { overflow:hidden; background:var(--text-primary); padding:.7rem 0; }
.ticker-track { display:flex; gap:2rem; animation:tickerScroll 30s linear infinite; white-space:nowrap; }
.ticker-track span { font-family:var(--font-mono); font-size:.72rem; color:rgba(255,255,255,.55); letter-spacing:.08em; }
@keyframes tickerScroll { 0% { transform:translateX(0); } 100% { transform:translateX(-50%); } }

/* ─── PAGE HERO (subpages) ─── */
.page-hero { padding:calc(var(--nav-h) + var(--disc-h) + 4rem) 3rem 3.5rem; position:relative; background:linear-gradient(180deg,var(--bg-secondary) 0,var(--bg-primary) 100%); }
.page-hero-bg { position:absolute; inset:0; background:radial-gradient(ellipse at 70% 0%, var(--gold-glow) 0%, transparent 55%); }
.page-hero .container { position:relative; }
.page-hero-tag { font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; color:var(--brand); margin-bottom:1rem; font-weight:600; }
.page-hero h1 { font-family:var(--font-display); font-size:clamp(2rem,4vw,3rem); font-weight:800; line-height:1.15; letter-spacing:-.02em; margin-bottom:1rem; }
.page-hero-desc { font-size:1.05rem; color:var(--text-secondary); max-width:600px; line-height:1.7; }

/* ─── SECTIONS ─── */
section { padding:5rem 0; }
.section-alt { background:var(--bg-secondary); }
.section-header { text-align:center; margin-bottom:3.5rem; }
.section-tag { font-size:.75rem; letter-spacing:.12em; text-transform:uppercase; color:var(--brand); margin-bottom:.8rem; font-weight:600; }
.section-header h2 { font-family:var(--font-display); font-size:clamp(1.6rem,3vw,2.4rem); font-weight:800; letter-spacing:-.02em; }

/* ─── SERVICES GRID ─── */
.services-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.service-card { display:flex; flex-direction:column; padding:2.5rem 2rem; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); transition:all .25s; text-decoration:none; color:var(--text-primary); }
.service-card:hover { border-color:var(--border-hover); transform:translateY(-3px); box-shadow:var(--shadow-lg); }
.service-icon { font-size:2rem; margin-bottom:1.2rem; }
.service-card h3 { font-family:var(--font-display); font-size:1.3rem; font-weight:700; margin-bottom:.8rem; }
.service-card p { font-size:.9rem; color:var(--text-secondary); line-height:1.6; flex:1; }
.service-link { font-size:.82rem; color:var(--brand); margin-top:1.2rem; font-weight:600; }

/* ─── FEATURES GRID ─── */
.features-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.feature-card { padding:2rem; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); transition:all .25s; }
.feature-card:hover { border-color:var(--border-hover); transform:translateY(-2px); box-shadow:var(--shadow-lg); }
.feature-icon { font-size:1.8rem; margin-bottom:1rem; }
.feature-card h3 { font-family:var(--font-display); font-size:1.15rem; font-weight:700; margin-bottom:.6rem; }
.feature-card p { font-size:.88rem; color:var(--text-secondary); line-height:1.6; }

/* ─── LISTINGS ─── */
.listings-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; margin-bottom:2.5rem; }
.listing-card { border:1px solid var(--border); border-radius:var(--radius); padding:1.8rem; background:var(--bg-card); box-shadow:var(--shadow); transition:all .25s; cursor:pointer; }
.listing-card:hover { border-color:var(--border-hover); transform:translateY(-2px); box-shadow:var(--shadow-lg); }
.listing-badge { font-size:.68rem; letter-spacing:.06em; text-transform:uppercase; padding:.3rem .7rem; border-radius:999px; display:inline-block; margin-bottom:1rem; font-weight:600; }
.badge-debt { background:#fff4e5; color:#b45309; }
.badge-property { background:#e7f7ef; color:#0d9f6e; }
.badge-otc { background:#e7f0fd; color:#2b7fe0; }
.listing-card h3 { font-family:var(--font-display); font-size:1.1rem; font-weight:700; margin-bottom:.5rem; }
.listing-card p { font-size:.85rem; color:var(--text-secondary); margin-bottom:1rem; line-height:1.5; }
.listing-meta { display:flex; justify-content:space-between; align-items:baseline; margin-bottom:.5rem; }
.listing-price { font-family:var(--font-display); font-size:1.15rem; font-weight:800; font-variant-numeric:tabular-nums; }
.listing-discount { font-family:var(--font-display); font-size:.85rem; color:var(--success); font-weight:700; }
.listing-location { font-size:.8rem; color:var(--text-muted); }
.center-cta { text-align:center; }

/* Filter bar */
.filter-bar { display:flex; gap:.8rem; margin-bottom:2.5rem; flex-wrap:wrap; }
.filter-btn { padding:.55rem 1.3rem; border:1px solid var(--border); border-radius:999px; background:var(--bg-card); font-family:var(--font-body); font-size:.85rem; font-weight:500; cursor:pointer; transition:all .2s; color:var(--text-secondary); }
.filter-btn:hover { border-color:var(--brand); color:var(--brand); }
.filter-btn.active { background:var(--brand); color:#fff; border-color:var(--brand); }

/* ─── STEPS ─── */
.steps-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; }
.step-card { text-align:center; padding:2rem 1.5rem; }
.step-num { font-family:var(--font-display); font-size:2.5rem; font-weight:800; color:var(--gold-glow); margin-bottom:1rem; line-height:1; }
.step-card h3 { font-family:var(--font-display); font-size:1.1rem; font-weight:700; margin-bottom:.5rem; }
.step-card p { font-size:.85rem; color:var(--text-secondary); }

.steps-grid-lg { max-width:700px; margin:0 auto; }
.step-lg { display:flex; gap:2rem; padding:2rem 0; border-bottom:1px solid var(--border); }
.step-lg:last-child { border-bottom:none; }
.step-lg-num { font-family:var(--font-display); font-size:2.2rem; font-weight:800; color:var(--brand); flex-shrink:0; width:60px; }
.step-lg-content h3 { font-family:var(--font-display); font-size:1.2rem; font-weight:700; margin-bottom:.5rem; }
.step-lg-content p { font-size:.9rem; color:var(--text-secondary); line-height:1.7; }

/* ─── STATS ─── */
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:2rem; }
.stat-card { text-align:center; padding:2rem; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); }
.stat-num { font-family:var(--font-display); font-size:1.9rem; font-weight:800; color:var(--brand); margin-bottom:.3rem; font-variant-numeric:tabular-nums; }
.stat-label { font-size:.82rem; color:var(--text-secondary); }

/* ─── FAQ ─── */
.faq-list { max-width:700px; margin:0 auto; }
.faq-item { border-bottom:1px solid var(--border); }
.faq-q { display:flex; justify-content:space-between; align-items:center; width:100%; padding:1.2rem 0; font-family:var(--font-body); font-size:1rem; font-weight:600; background:none; border:none; cursor:pointer; color:var(--text-primary); text-align:left; }
.faq-q::after { content:'+'; font-size:1.3rem; color:var(--brand); transition:transform .3s; }
.faq-item.open .faq-q::after { content:'−'; }
.faq-a { max-height:0; overflow:hidden; transition:max-height .4s ease; }
.faq-item.open .faq-a { max-height:300px; }
.faq-a p { padding:0 0 1.2rem; font-size:.9rem; color:var(--text-secondary); line-height:1.7; }

/* ─── CTA SECTION ─── */
.cta-section { padding:5rem 0; text-align:center; background:var(--bg-secondary); }
.cta-section h2 { font-family:var(--font-display); font-size:clamp(1.6rem,3vw,2.2rem); font-weight:800; letter-spacing:-.02em; margin-bottom:1rem; }
.cta-section p { font-size:1rem; color:var(--text-secondary); max-width:500px; margin:0 auto 2rem; }
.cta-actions { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }

/* ─── ABOUT / VALUES ─── */
.about-content { max-width:700px; margin:0 auto 3rem; }
.about-content h2 { font-family:var(--font-display); font-size:1.8rem; font-weight:800; margin-bottom:1rem; }
.lead { font-size:1.05rem; color:var(--text-secondary); line-height:1.8; }
.values-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.value-card { text-align:center; padding:2.5rem 2rem; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); }
.value-icon { font-size:2rem; margin-bottom:1rem; }
.value-card h3 { font-family:var(--font-display); font-size:1.15rem; font-weight:700; margin-bottom:.6rem; }
.value-card p { font-size:.88rem; color:var(--text-secondary); line-height:1.6; }

/* ─── TEAM ─── */
.team-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; }
.team-card { text-align:center; padding:2.5rem 2rem; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); }
.team-avatar { width:64px; height:64px; margin:0 auto 1.2rem; background:var(--gold-dim); display:flex; align-items:center; justify-content:center; font-family:var(--font-display); font-size:1.1rem; color:var(--brand); font-weight:700; border-radius:50%; }
.team-card h3 { font-family:var(--font-display); font-size:1.15rem; font-weight:700; margin-bottom:.2rem; }
.team-role { font-size:.82rem; color:var(--brand); margin-bottom:.8rem; font-weight:600; }
.team-card > p:last-child { font-size:.85rem; color:var(--text-secondary); line-height:1.6; }

/* ─── TIMELINE ─── */
.timeline { max-width:600px; margin:0 auto; }
.timeline-item { display:flex; gap:2rem; padding:1.5rem 0; border-bottom:1px solid var(--border); }
.timeline-item:last-child { border-bottom:none; }
.timeline-year { font-family:var(--font-display); font-size:.95rem; color:var(--brand); font-weight:700; flex-shrink:0; width:50px; padding-top:.2rem; }
.timeline-text h4 { font-family:var(--font-display); font-size:1.05rem; font-weight:700; margin-bottom:.3rem; }
.timeline-text p { font-size:.88rem; color:var(--text-secondary); line-height:1.6; }

/* ─── PRICING ─── */
.pricing-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:2rem; align-items:start; }
.pricing-card { padding:2.5rem 2rem; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); text-align:center; position:relative; }
.pricing-featured { border-color:var(--brand); box-shadow:0 10px 36px rgba(43,127,224,.16); }
.pricing-badge { position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--brand); color:#fff; font-size:.7rem; padding:.3rem 1rem; border-radius:999px; letter-spacing:.06em; text-transform:uppercase; font-weight:600; }
.pricing-tier { font-family:var(--font-display); font-size:1.1rem; font-weight:700; margin-bottom:.5rem; }
.pricing-price { font-family:var(--font-display); font-size:2.4rem; font-weight:800; color:var(--brand); margin-bottom:.3rem; font-variant-numeric:tabular-nums; }
.pricing-period { font-size:.82rem; color:var(--text-muted); margin-bottom:2rem; }
.pricing-features { list-style:none; text-align:left; margin-bottom:2rem; }
.pricing-features li { padding:.5rem 0; border-bottom:1px solid var(--border); font-size:.88rem; color:var(--text-secondary); }
.pricing-features li:last-child { border-bottom:none; }

/* ─── FORMS ─── */
.form-container { max-width:650px; margin:0 auto; background:var(--bg-card); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); padding:2.5rem; }
.contact-grid { display:grid; grid-template-columns:1.5fr 1fr; gap:3rem; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:1.5rem; }
.form-group { margin-bottom:1.5rem; }
.form-group label { display:block; font-size:.82rem; color:var(--text-secondary); margin-bottom:.4rem; font-weight:600; }
.form-group input, .form-group select, .form-group textarea { width:100%; padding:.75rem 1rem; border:1px solid var(--border); border-radius:var(--radius-sm); font-family:var(--font-body); font-size:.9rem; background:var(--bg-secondary); transition:border-color .2s, box-shadow .2s; color:var(--text-primary); }
.form-group input:focus, .form-group select:focus, .form-group textarea:focus { outline:none; border-color:var(--brand); box-shadow:0 0 0 3px var(--gold-dim); background:var(--bg-card); }
.form-group textarea { resize:vertical; }
.form-check { margin-bottom:1.5rem; }
.form-check label { font-size:.85rem; color:var(--text-secondary); display:flex; align-items:flex-start; gap:.5rem; cursor:pointer; }
.form-check input { margin-top:.2rem; }
.form-success { text-align:center; padding:3rem 2rem; }
.success-icon { display:inline-flex; align-items:center; justify-content:center; width:60px; height:60px; background:#e7f7ef; color:var(--success); font-size:1.5rem; border-radius:50%; margin-bottom:1.5rem; }
.form-success h3 { font-family:var(--font-display); font-size:1.5rem; font-weight:800; margin-bottom:.5rem; }
.form-success p { color:var(--text-secondary); }

/* Contact info sidebar */
.contact-info { display:flex; flex-direction:column; gap:2rem; }
.contact-block { padding:1.5rem; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); }
.contact-block h3 { font-family:var(--font-display); font-size:1rem; font-weight:700; margin-bottom:.8rem; }
.contact-block p { font-size:.88rem; color:var(--text-secondary); line-height:1.7; }

/* ─── LEGAL CONTENT ─── */
.legal-content { max-width:750px; margin:0 auto; }
.legal-content h3 { font-family:var(--font-display); font-size:1.15rem; font-weight:700; margin:2rem 0 .8rem; color:var(--text-primary); }
.legal-content h3:first-child { margin-top:0; }
.legal-content p { font-size:.9rem; color:var(--text-secondary); line-height:1.8; margin-bottom:.8rem; }

/* ─── FOOTER ─── */
footer { background:#0f172a; color:rgba(255,255,255,.7); padding:4rem 3rem 2rem; }
.footer-grid { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:3rem; max-width:var(--max-w); margin:0 auto 3rem; }
.footer-brand p { font-size:.85rem; line-height:1.6; margin-top:1rem; color:rgba(255,255,255,.45); }
.footer-brand .logo-name { color:rgba(255,255,255,.95); }
.footer-brand .logo-name b { color:var(--brand-light); }
.footer-col h5 { font-size:.75rem; letter-spacing:.1em; text-transform:uppercase; color:var(--brand-light); margin-bottom:1rem; }
.footer-col a { display:block; font-size:.85rem; color:rgba(255,255,255,.55); margin-bottom:.6rem; transition:color .2s; text-decoration:none; }
.footer-col a:hover { color:#fff; }
.footer-bottom { max-width:var(--max-w); margin:0 auto; padding-top:2rem; border-top:1px solid rgba(255,255,255,.1); display:flex; justify-content:space-between; align-items:center; }
.footer-bottom span { font-size:.78rem; color:rgba(255,255,255,.35); }
.footer-legal { display:flex; gap:1.5rem; }
.footer-legal a { font-size:.78rem; color:rgba(255,255,255,.35); transition:color .2s; text-decoration:none; }
.footer-legal a:hover { color:#fff; }

/* ─── TOAST ─── */
.toast { position:fixed; bottom:2rem; right:2rem; padding:1rem 1.5rem; font-size:.88rem; border-radius:var(--radius-sm); box-shadow:var(--shadow-lg); z-index:10000; transform:translateY(20px); opacity:0; transition:all .3s; max-width:380px; }
.toast.show { transform:translateY(0); opacity:1; }
.toast-success { background:#e7f7ef; color:var(--success); border:1px solid rgba(13,159,110,.2); }
.toast-error { background:#fdeaea; color:var(--danger); border:1px solid rgba(220,38,38,.2); }
.toast-info { background:#e7f0fd; color:var(--info); border:1px solid rgba(43,127,224,.2); }

/* ─── SCROLL REVEAL ─── */
.reveal { opacity:0; transform:translateY(25px); transition:opacity .7s ease, transform .7s ease; }
.reveal.revealed, .reveal.visible { opacity:1; transform:translateY(0); }

/* ─── RESPONSIVE ─── */
@media (max-width:900px) {
  .container { padding:0 1.5rem; }
  nav { padding:0 1.5rem; }
  .hamburger { display:flex; }
  .nav-links { position:fixed; top:calc(var(--nav-h) + var(--disc-h)); left:0; right:0; background:var(--bg-card); flex-direction:column; padding:2rem; gap:1.2rem; border-bottom:1px solid var(--border); transform:translateY(-10px); opacity:0; visibility:hidden; transition:all .3s; box-shadow:var(--shadow-lg); }
  .nav-links.mobile-open { transform:translateY(0); opacity:1; visibility:visible; }
  .nav-dropdown-menu { position:static; opacity:1; visibility:visible; transform:none; padding:0; }
  .nav-dropdown-menu-inner { border:none; box-shadow:none; padding:0; background:transparent; min-width:0; }
  .services-grid, .features-grid, .listings-grid, .pricing-grid, .values-grid, .team-grid { grid-template-columns:1fr; }
  .steps-grid, .stats-grid { grid-template-columns:repeat(2,1fr); }
  .contact-grid { grid-template-columns:1fr; }
  .form-row { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr 1fr; gap:2rem; }
  .hero-stats { flex-wrap:wrap; gap:1.5rem; }
  .footer-bottom { flex-direction:column; gap:.8rem; text-align:center; }
  .disclaimer-bar { padding:.5rem 1.5rem; font-size:.72rem; }
  footer { padding:3rem 1.5rem 2rem; }
  .step-lg { flex-direction:column; gap:1rem; }
  .form-container { padding:1.5rem; }
}
@media (max-width:600px) {
  :root { --disc-h: 58px; }
  .steps-grid, .stats-grid { grid-template-columns:1fr; }
  .footer-grid { grid-template-columns:1fr; }
  .hero-section { padding-top:calc(var(--nav-h) + var(--disc-h) + 3rem); padding-bottom:3rem; }
}

/* ═══════════════════════════════════════════════
   LISTING CARDS — Clickable
   ═══════════════════════════════════════════════ */
a.listing-card { text-decoration:none; color:var(--text-primary); display:flex; flex-direction:column; }
.listing-detail-link { font-size:.82rem; color:var(--brand); margin-top:auto; padding-top:.8rem; font-weight:600; opacity:0; transition:opacity .3s; }
.listing-card:hover .listing-detail-link { opacity:1; }

/* ═══════════════════════════════════════════════
   LISTING DETAIL PAGE
   ═══════════════════════════════════════════════ */
.detail-grid { display:grid; grid-template-columns:1fr 340px; gap:2.5rem; align-items:start; }
.detail-main { display:flex; flex-direction:column; gap:2rem; }
.detail-card { border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); padding:2rem; }
.detail-card h3 { font-family:var(--font-display); font-size:1.15rem; font-weight:700; margin-bottom:1rem; }
.detail-card p { font-size:.92rem; color:var(--text-secondary); line-height:1.8; white-space:pre-line; }

.detail-params { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.detail-param { display:flex; flex-direction:column; gap:.2rem; }
.detail-param-label { font-size:.75rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:.04em; font-weight:600; }

.detail-sidebar { display:flex; flex-direction:column; gap:1.2rem; position:sticky; top:calc(var(--nav-h) + var(--disc-h) + 1.5rem); }
.detail-price-card { border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); padding:2rem; text-align:center; }
.detail-price-label { font-size:.78rem; color:var(--text-muted); text-transform:uppercase; letter-spacing:.06em; margin-bottom:.5rem; }
.detail-price { font-family:var(--font-display); font-size:2.1rem; font-weight:800; color:var(--brand); margin-bottom:.3rem; font-variant-numeric:tabular-nums; }
.detail-original { font-size:.85rem; color:var(--text-muted); text-decoration:line-through; }
.detail-discount { font-family:var(--font-display); font-size:.95rem; color:var(--success); font-weight:700; margin-top:.2rem; }
.detail-sidebar-card { border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); padding:1.5rem; }
.detail-sidebar-card h4 { font-family:var(--font-display); font-size:.95rem; font-weight:700; margin-bottom:.5rem; }
.detail-sidebar-card p { font-size:.88rem; color:var(--text-secondary); line-height:1.6; }

/* ── Locked section ── */
.detail-locked { border:1px solid var(--border); border-radius:var(--radius); background:linear-gradient(135deg, var(--bg-secondary) 0%, var(--bg-card) 100%); position:relative; overflow:hidden; }
.locked-overlay { padding:3rem 2rem; text-align:center; position:relative; z-index:1; }
.locked-overlay::before { content:''; position:absolute; inset:0; background:repeating-linear-gradient(45deg, transparent, transparent 10px, var(--gold-dim) 10px, var(--gold-dim) 20px); z-index:-1; }
.locked-icon { font-size:2.5rem; margin-bottom:1rem; }
.locked-overlay h3 { font-family:var(--font-display); font-size:1.2rem; font-weight:700; margin-bottom:.8rem; }
.locked-overlay p { font-size:.9rem; color:var(--text-secondary); max-width:450px; margin:0 auto 1.5rem; line-height:1.7; }
.locked-actions { display:flex; gap:1rem; justify-content:center; flex-wrap:wrap; }

/* ── Inquiry form ── */
.inquiry-form .form-group { margin-bottom:1.2rem; }
.inquiry-form label { display:block; font-size:.82rem; color:var(--text-secondary); margin-bottom:.4rem; font-weight:600; }
.inquiry-form textarea { width:100%; padding:.75rem 1rem; border:1px solid var(--border); border-radius:var(--radius-sm); font-family:var(--font-body); font-size:.9rem; background:var(--bg-secondary); resize:vertical; }
.inquiry-form textarea:focus { outline:none; border-color:var(--brand); box-shadow:0 0 0 3px var(--gold-dim); }

/* ═══════════════════════════════════════════════
   MEMBER ACCOUNT PAGE
   ═══════════════════════════════════════════════ */
.account-tabs { display:flex; gap:0; border-bottom:1px solid var(--border); margin-bottom:2rem; flex-wrap:wrap; }
.acc-tab { padding:.8rem 1.5rem; font-family:var(--font-body); font-size:.88rem; font-weight:500; background:none; border:none; border-bottom:2px solid transparent; cursor:pointer; color:var(--text-muted); transition:all .2s; }
.acc-tab:hover { color:var(--brand); }
.acc-tab.active { color:var(--brand); border-bottom-color:var(--brand); font-weight:600; }
.acc-tab-logout { margin-left:auto; color:var(--text-muted); font-size:.82rem; }
.acc-tab-logout:hover { color:var(--danger); }

.profile-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
.profile-card { border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); padding:2rem; }
.profile-card h3 { font-family:var(--font-display); font-size:1.1rem; font-weight:700; margin-bottom:1.2rem; }
.profile-row { display:flex; justify-content:space-between; padding:.6rem 0; border-bottom:1px solid var(--border); font-size:.88rem; }
.profile-row:last-of-type { border-bottom:none; }
.profile-label { color:var(--text-muted); }
.kyc-notice { margin-top:1.2rem; padding:1rem; background:var(--gold-dim); border-radius:var(--radius-sm); font-size:.85rem; color:var(--text-secondary); line-height:1.6; }

/* ═══════════════════════════════════════════════
   RESPONSIVE — Detail, Account
   ═══════════════════════════════════════════════ */
@media (max-width:900px) {
  .detail-grid { grid-template-columns:1fr; }
  .detail-sidebar { position:static; }
  .profile-grid { grid-template-columns:1fr; }
  .detail-params { grid-template-columns:1fr; }
  .gallery { grid-template-columns:repeat(2,1fr); }
}

/* ═══════════════════════════════════════════════
   FILE UPLOAD ZONE
   ═══════════════════════════════════════════════ */
.file-upload-zone { border:2px dashed var(--border); border-radius:var(--radius); padding:1rem; transition:border-color .3s; }
.file-upload-zone.drag-over { border-color:var(--brand); background:var(--gold-dim); }
.upload-placeholder { display:flex; flex-direction:column; align-items:center; gap:.5rem; padding:2rem; cursor:pointer; color:var(--text-muted); text-align:center; }
.upload-placeholder:hover { color:var(--brand); }
.upload-icon { font-size:2rem; }
.upload-placeholder small { font-size:.78rem; }
.upload-preview { display:grid; grid-template-columns:repeat(auto-fill,minmax(120px,1fr)); gap:.8rem; margin-top:.8rem; }
.upload-item { position:relative; border:1px solid var(--border); border-radius:var(--radius-sm); background:var(--bg-card); overflow:hidden; }
.upload-item img { width:100%; height:90px; object-fit:cover; display:block; }
.upload-item-icon { width:100%; height:90px; display:flex; align-items:center; justify-content:center; font-size:2rem; background:var(--bg-secondary); }
.upload-item-name { display:block; padding:.4rem .5rem; font-size:.72rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; color:var(--text-secondary); }
.upload-item-remove { position:absolute; top:4px; right:4px; width:22px; height:22px; border-radius:50%; border:none; background:rgba(15,23,42,.6); color:#fff; font-size:.7rem; cursor:pointer; display:flex; align-items:center; justify-content:center; line-height:1; }
.upload-item-remove:hover { background:var(--danger); }

/* ═══════════════════════════════════════════════
   IMAGE GALLERY (detail page)
   ═══════════════════════════════════════════════ */
.gallery { display:grid; grid-template-columns:repeat(3,1fr); gap:.8rem; }
.gallery-item { display:block; overflow:hidden; border:1px solid var(--border); border-radius:var(--radius-sm); aspect-ratio:4/3; }
.gallery-item img { width:100%; height:100%; object-fit:cover; transition:transform .3s; }
.gallery-item:hover img { transform:scale(1.05); }

/* ═══════════════════════════════════════════════
   DOCUMENT LIST (detail page)
   ═══════════════════════════════════════════════ */
.docs-list { display:flex; flex-direction:column; gap:.5rem; }
.doc-item { display:flex; align-items:center; gap:.8rem; padding:.8rem 1rem; border:1px solid var(--border); border-radius:var(--radius-sm); text-decoration:none; color:var(--text-primary); transition:border-color .2s; }
.doc-item:hover { border-color:var(--brand); }
.doc-icon { font-size:1.3rem; }
.doc-name { flex:1; font-size:.88rem; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.doc-size { font-size:.78rem; color:var(--text-muted); font-family:var(--font-mono); }

/* ─── ICON SET (line ikony v souladu s logem) ─── */
.ico { display:inline-block; vertical-align:-0.14em; }
.dd-icon, .service-icon, .feature-icon, .value-icon, .reg-icon,
.locked-icon, .upload-icon, .upload-item-icon, .doc-icon, .payoff-icon { color:var(--brand); }
.feature-icon, .service-icon, .value-icon { line-height:1; }

.ico-ok{color:var(--success)}
.ico-no{color:var(--text-muted)}
.ico-danger{color:var(--danger)}
.ico-warn{color:#b45309}

/* ═══════════════════════════════════════════════
   ACCESSIBILITY BASE (2026) — bezpečné pro celý web
   ═══════════════════════════════════════════════ */
:focus-visible { outline:2px solid var(--brand); outline-offset:2px; border-radius:4px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.skip-link { position:absolute; left:1rem; top:-4rem; z-index:3000; background:var(--brand); color:#fff !important; padding:.6rem 1rem; border-radius:var(--radius-sm); font-size:.85rem; font-weight:600; transition:top .2s; }
.skip-link:focus { top:1rem; }
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration:.001ms !important; animation-iteration-count:1 !important; transition-duration:.001ms !important; scroll-behavior:auto !important; }
  .reveal { opacity:1 !important; transform:none !important; }
}

/* Generická + stavová badge (detail i účet) */
.badge { display:inline-block; font-size:.72rem; font-weight:600; letter-spacing:.04em; padding:.25rem .65rem; border-radius:999px; background:var(--bg-tertiary); color:var(--text-secondary); text-transform:uppercase; }
.badge-active { background:#e7f7ef; color:#0a7d52; }
.badge-pending { background:#fff4e5; color:#b45309; }
.badge-reserved { background:#eef2f8; color:#475569; }
.badge-sold, .badge-archived, .badge-rejected { background:#fdeaea; color:#b42318; }
.badge-draft { background:#eef2f8; color:#64748b; }

/* ═══════════════════════════════════════════════
   MARKETPLACE REDESIGN (2026)
   ═══════════════════════════════════════════════ */
.mkt-toolbar { display:flex; align-items:center; gap:1rem 1.5rem; flex-wrap:wrap; margin-bottom:1.6rem; }
.mkt-filters { display:flex; gap:.6rem; flex-wrap:wrap; }
.mkt-controls { display:flex; align-items:center; gap:1.2rem; flex-wrap:wrap; margin-left:auto; }
.mkt-count { font-size:.85rem; color:var(--text-muted); font-variant-numeric:tabular-nums; white-space:nowrap; }
.mkt-count b { color:var(--text-primary); font-weight:700; }
.mkt-sort { display:flex; align-items:center; gap:.5rem; }
.mkt-sort label { font-size:.8rem; color:var(--text-muted); }
.mkt-sort select { font-family:var(--font-body); font-size:.85rem; padding:.45rem .9rem; border:1px solid var(--border); border-radius:var(--radius-sm); background:var(--bg-card); color:var(--text-primary); cursor:pointer; transition:border-color .2s; }
.mkt-sort select:hover { border-color:var(--brand); }

.mkt-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(290px, 1fr)); gap:1.5rem; margin-bottom:2.5rem; }

.mkt-card { position:relative; display:flex; flex-direction:column; border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); box-shadow:var(--shadow); padding:1.5rem; text-decoration:none; color:var(--text-primary); transition:transform .2s, box-shadow .2s, border-color .2s; }
.mkt-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-lg); border-color:var(--border-hover); color:var(--text-primary); }
.mkt-card:focus-visible { outline:2px solid var(--brand); outline-offset:3px; }
.mkt-card--featured { border-color:#f0d8a8; box-shadow:0 0 0 1px #f3e2bd, var(--shadow); }
.mkt-card__top { display:flex; align-items:center; justify-content:space-between; gap:.5rem; margin-bottom:1rem; }
.mkt-card__type { display:inline-flex; align-items:center; gap:.4rem; font-size:.68rem; font-weight:600; letter-spacing:.06em; text-transform:uppercase; padding:.3rem .7rem; border-radius:999px; }
.mkt-card__type .ico { width:.95em; height:.95em; }
.mkt-card__featured { display:inline-flex; align-items:center; gap:.3rem; font-size:.66rem; font-weight:700; letter-spacing:.05em; text-transform:uppercase; color:#b4690e; }
.mkt-card__title { font-family:var(--font-display); font-size:1.12rem; font-weight:700; line-height:1.35; margin-bottom:.9rem; }
.mkt-card__price-row { display:flex; align-items:baseline; gap:.6rem; flex-wrap:wrap; margin-bottom:.2rem; }
.mkt-card__price { font-family:var(--font-display); font-size:1.4rem; font-weight:800; font-variant-numeric:tabular-nums; }
.mkt-card__price--ask { font-size:1.05rem; font-weight:700; color:var(--text-secondary); }
.mkt-card__discount { font-size:.78rem; font-weight:700; color:#0a7d52; background:#e7f7ef; padding:.15rem .55rem; border-radius:999px; }
.mkt-card__original { font-size:.8rem; color:var(--text-muted); text-decoration:line-through; font-variant-numeric:tabular-nums; }
.mkt-card__meta { display:flex; flex-direction:column; gap:.35rem; margin-top:.5rem; }
.mkt-card__loc { display:inline-flex; align-items:center; gap:.4rem; font-size:.82rem; color:var(--text-secondary); }
.mkt-card__loc .ico { width:.95em; height:.95em; color:var(--text-muted); }
.mkt-card__cat { font-size:.78rem; color:var(--text-muted); }
.mkt-card__cta { display:inline-flex; align-items:center; gap:.35rem; margin-top:1.1rem; padding-top:1rem; border-top:1px solid var(--border); font-size:.85rem; font-weight:600; color:var(--brand); transition:gap .2s; }
.mkt-card:hover .mkt-card__cta { gap:.6rem; }

/* Vizuální banner místo fotky (dle typu/kategorie) */
.mkt-card__media { height:124px; margin:-1.5rem -1.5rem 1.2rem; border-radius:13px 13px 0 0; display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; }
.mkt-card__media .ico { width:46px; height:46px; opacity:.92; position:relative; z-index:1; }
.mkt-card__media::after { content:''; position:absolute; right:-18px; bottom:-18px; width:96px; height:96px; border-radius:50%; background:rgba(255,255,255,.35); }
.media-debt { background:linear-gradient(135deg,#fff4e5,#ffe2bf); color:#b45309; }
.media-property { background:linear-gradient(135deg,#e7f7ef,#c9ecdb); color:#0a7d52; }
.media-otc { background:linear-gradient(135deg,#e7f0fd,#cbddfa); color:#1f6fd0; }

/* Foto cover přes banner (když je k dispozici); onerror odebere img → banner zůstane */
.mkt-card__media-img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:2; }

/* Detail — hero banner místo galerie, když nejsou fotky */
.detail-media { height:340px; border-radius:var(--radius); display:flex; align-items:center; justify-content:center; position:relative; overflow:hidden; box-shadow:var(--shadow); }
.detail-media .ico { width:72px; height:72px; opacity:.9; position:relative; z-index:1; }
.detail-media::after { content:''; position:absolute; right:-30px; bottom:-30px; width:160px; height:160px; border-radius:50%; background:rgba(255,255,255,.35); }
.detail-media img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:2; }

/* ── LIGHTBOX (prohlížeč fotek se šipkami) ── */
.lightbox { position:fixed; inset:0; z-index:4000; background:rgba(8,15,30,.93); display:none; align-items:center; justify-content:center; }
.lightbox.open { display:flex; }
.lightbox__img { max-width:90vw; max-height:82vh; border-radius:8px; box-shadow:0 16px 50px rgba(0,0,0,.55); user-select:none; }
.lightbox__close { position:absolute; top:16px; right:20px; width:44px; height:44px; background:rgba(255,255,255,.12); border:none; border-radius:50%; color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; }
.lightbox__close:hover { background:rgba(255,255,255,.25); }
.lightbox__nav { position:absolute; top:50%; transform:translateY(-50%); width:54px; height:54px; background:rgba(255,255,255,.12); border:none; border-radius:50%; color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; transition:background .2s; }
.lightbox__nav:hover { background:rgba(255,255,255,.28); }
.lightbox__prev { left:20px; } .lightbox__next { right:20px; }
.lightbox__count { position:absolute; bottom:20px; left:50%; transform:translateX(-50%); color:#fff; font-size:.88rem; background:rgba(0,0,0,.45); padding:.35rem 1rem; border-radius:999px; font-variant-numeric:tabular-nums; }
.detail-media img { cursor:zoom-in; }
@media (max-width:600px) { .lightbox__nav { width:44px; height:44px; } .lightbox__prev { left:8px; } .lightbox__next { right:8px; } }

/* typové barvy (sjednoceno s badge-*) */
.type-debt { background:#fff4e5; color:#b45309; }
.type-property { background:#e7f7ef; color:#0a7d52; }
.type-otc { background:#e7f0fd; color:#1f6fd0; }

/* Skeleton loading */
.mkt-skeleton { border:1px solid var(--border); border-radius:var(--radius); background:var(--bg-card); padding:1.5rem; }
.mkt-skeleton .sk { background:linear-gradient(90deg, var(--bg-tertiary) 25%, #f1f5fb 37%, var(--bg-tertiary) 63%); background-size:400% 100%; animation:skl 1.4s ease infinite; border-radius:6px; }
.sk-badge { width:90px; height:20px; margin-bottom:1.1rem; border-radius:999px; }
.sk-title { width:82%; height:18px; margin-bottom:.7rem; }
.sk-title2 { width:55%; height:18px; margin-bottom:1.3rem; }
.sk-price { width:45%; height:26px; margin-bottom:1.2rem; }
.sk-line { width:60%; height:12px; }
@keyframes skl { 0%{background-position:100% 50%} 100%{background-position:0 50%} }
@media (prefers-reduced-motion: reduce){ .mkt-skeleton .sk{ animation:none; } }

/* Empty / error state */
.mkt-empty { grid-column:1/-1; text-align:center; padding:4rem 1rem; color:var(--text-muted); }
.mkt-empty .ico { width:2.4rem; height:2.4rem; color:var(--text-muted); margin-bottom:1rem; }
.mkt-empty h3 { font-family:var(--font-display); font-weight:600; color:var(--text-secondary); margin-bottom:.4rem; }

/* ── DETAIL polish ── */
.detail-breadcrumb { display:flex; align-items:center; gap:.45rem; font-size:.82rem; color:var(--text-muted); margin-bottom:1.5rem; flex-wrap:wrap; }
.detail-breadcrumb a { color:var(--text-secondary); }
.detail-breadcrumb a:hover { color:var(--brand); }
.detail-breadcrumb .sep { opacity:.6; }
.detail-price-pill { display:inline-block; font-size:.85rem; font-weight:700; color:#0a7d52; background:#e7f7ef; padding:.3rem .8rem; border-radius:999px; }
.detail-trust { list-style:none; display:flex; flex-direction:column; gap:.7rem; margin:0; padding:0; }
.detail-trust li { display:flex; align-items:flex-start; gap:.6rem; font-size:.85rem; color:var(--text-secondary); line-height:1.45; }
.detail-trust .ico { width:1.05em; height:1.05em; color:var(--success); flex-shrink:0; margin-top:.15rem; }
.detail-original:empty, .detail-discount:empty { display:none; }

@media (max-width:600px) {
  .mkt-controls { margin-left:0; width:100%; justify-content:space-between; }
  .mkt-grid { grid-template-columns:1fr; }
}

/* ── Sledování: timeline z monitoring_events (přebíjí .pt.ok/.pt.chg z ucet.html — nový sémantický význam) ── */
.mon-evtl .mon-tl .mk .pt.base { background:var(--brand); }
.mon-evtl .mon-tl .mk .pt.ok { background:var(--text-muted); }
.mon-evtl .mon-tl .mk .pt.err { background:#d98a00; }
.mon-evtl .mon-tl .mk .pt.worse { background:var(--danger); }
.mon-evtl .mon-tl .mk .pt.better { background:var(--success); }
.mon-evtl .mon-tl .mk .pt.chg { background:var(--text-muted); }
.mon-evtl .mon-tl.expandable { cursor:pointer; }
.mon-evtl-chev { display:inline-block; color:var(--text-muted); margin-left:.3rem; vertical-align:-2px; transition:transform .2s; }
.mon-evtl .mon-tl.expandable.open .mon-evtl-chev { transform:rotate(90deg); color:var(--brand); }
.mon-evtl-detail { display:none; grid-template-columns:90px 14px 1fr auto; gap:.7rem; padding-bottom:.9rem; }
.mon-evtl-detail.show { display:grid; }
.mon-evtl-body { grid-column:3/5; display:flex; flex-direction:column; gap:.5rem; }
.mon-evtl-chgrow { background:var(--bg-tertiary); border-radius:var(--radius-sm); padding:.55rem .7rem; }
.mon-evtl-chip { display:inline-block; font-family:var(--font-mono); font-size:.68rem; font-weight:600; letter-spacing:.04em; color:var(--text-secondary); background:#fff; border:1px solid var(--border); border-radius:6px; padding:.1rem .4rem; margin-right:.5rem; }
.mon-evtl-diff { font-size:.82rem; color:var(--text-secondary); }
.mon-evtl-diff.better { color:var(--success, #16a34a); }
.mon-evtl-diff.worse { color:var(--danger, #dc2626); font-weight:600; }
.mon-evtl-diff.err { color:var(--warning, #d97706); }
.vh-res-table { width:100%; border-collapse:collapse; font-size:.84rem; background:#fff; border:1px solid var(--border); border-radius:var(--radius-sm); }
.vh-res-table th { text-align:left; font-weight:500; color:var(--text-muted); font-size:.76rem; padding:.45rem .6rem; border-bottom:1px solid var(--border); }
.vh-res-table td { padding:.45rem .6rem; border-bottom:1px solid var(--border); vertical-align:top; }
.vh-res-table tbody tr:last-child td { border-bottom:none; }
.vh-res-detail { color:var(--text-muted); font-size:.8rem; }
.vh-res-reg { color:var(--text-secondary); font-weight:500; }
.mon-evtl-note { font-size:.78rem; color:var(--text-muted); margin-top:.3rem; }
