@font-face {
  font-family: 'Red Hat Display';
  font-weight: 300 900;
  font-style: normal;
  font-display: swap;
  src: url('../fonts/RedHatDisplay.woff2') format('woff2');
}
@font-face {
  font-family: 'Red Hat Display';
  font-weight: 300 900;
  font-style: italic;
  font-display: swap;
  src: url('../fonts/RedHatDisplay-Italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Red Hat Text';
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
  src: url('../fonts/RedHatText.woff2') format('woff2');
}
@font-face {
  font-family: 'Red Hat Text';
  font-weight: 300 700;
  font-style: italic;
  font-display: swap;
  src: url('../fonts/RedHatText-Italic.woff2') format('woff2');
}
@font-face {
  font-family: 'Red Hat Mono';
  font-weight: 300 700;
  font-style: normal;
  font-display: swap;
  src: url('../fonts/RedHatMono.woff2') format('woff2');
}

/* ────────────────────────────────────────
   BRAND: Red Hat Pro  |  #FFC700 #111119 #FFF
──────────────────────────────────────── */
:root{
  --y:#FFC700; --b:#111119; --b2:#16161e; --b3:#1d1d26;
  --border:rgba(255,255,255,.07); --by:rgba(255,199,0,.22);
  --w:#fff; --m:#6a6a80; --m2:#a0a0b8;
  --font:'Red Hat Text',Verdana,sans-serif;
  --font-display:'Red Hat Display','Red Hat Text',Verdana,sans-serif;
  --r:5px; --r2:9px; --trans:.2s ease;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--b);color:var(--w);font-family:var(--font);font-size:17px;line-height:1.7;overflow-x:hidden}

/* ── PAGES ── */
.pg{display:none}
.pg.on{display:block;animation:fu .3s ease}
@keyframes fu{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* ══════════════════════════════════════
   LANDING
══════════════════════════════════════ */
#land{min-height:100vh;display:flex;flex-direction:column;position:relative;overflow:hidden}

/* decorative diagonal yellow line — brand manual motif */
#land::before{
  content:'';position:absolute;top:0;left:50%;width:1px;height:100%;
  background:var(--border);z-index:0;
}

.land-bar{
  display:flex;align-items:center;justify-content:center;
  padding:2.2rem 3rem;z-index:1;border-bottom:1px solid var(--border);
  background:var(--b);
}
.land-bar img{height:40px}

.land-cols{flex:1;display:grid;grid-template-columns:1fr 1fr;z-index:1}

.land-col{
  position:relative;padding:3rem 3.5rem 3.5rem;cursor:pointer;
  overflow:hidden;transition:background var(--trans);
  display:flex;flex-direction:column;
}
.land-col:hover{background:rgba(255,199,0,.025)}

/* thick yellow left-edge accent that grows on hover */
.land-col::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--y);transform:scaleY(0);transform-origin:bottom;
  transition:transform .35s cubic-bezier(.22,.61,.36,1);
}
.land-col:hover::before{transform:scaleY(1)}

/* faint Bitcoin symbol watermark — CSS background (vyloučeno z LCP měření) */
.land-col-bg{
  position:absolute;right:-2rem;bottom:-2rem;
  width:260px;height:260px;
  pointer-events:none;
  opacity:0;transition:opacity .4s ease;
  background-repeat:no-repeat;
  background-size:contain;background-position:right bottom;
}
/* Hover efekt — symbol se rozsvítí při najetí */
.land-col:hover .land-col-bg{opacity:1}
/* Tmavá karta — žlutý symbol */
#land .land-col:last-child .land-col-bg{
  background-image:url('/images/symbol-original.svg');
}
/* Světlá karta — tmavý symbol */
#land .land-col:first-child .land-col-bg{
  background-image:url('/images/symbol-dark-on-light.svg');
  opacity:0;
}
#land .land-col:first-child:hover .land-col-bg{opacity:.15}
#land .land-col:last-child:hover .land-col-bg{opacity:.18}

.land-tag{font-size:.68rem;font-weight:700;letter-spacing:.17em;text-transform:uppercase;color:var(--y);margin-bottom:1rem;display:flex;align-items:center;gap:.5rem}
.land-tag::before{content:'';width:18px;height:2px;background:var(--y)}

.land-title{font-size:clamp(1.3rem,1.85vw,1.55rem);font-weight:300;line-height:1.25;margin-bottom:.85rem;letter-spacing:0em}
.land-tagline{color:var(--w);font-size:.95rem;font-weight:500;line-height:1.5;margin:0 0 .8rem;max-width:44ch;letter-spacing:.005em}
.land-desc{color:var(--m2);font-size:.85rem;line-height:1.65;margin-bottom:1.6rem;max-width:44ch}

.land-features{margin-bottom:2rem;display:flex;flex-direction:column;gap:.4rem}
.land-feat{display:flex;align-items:center;gap:.6rem;font-size:.82rem;color:var(--m2);line-height:1.45}
.land-feat::before{content:'';width:5px;height:5px;border-radius:50%;background:var(--y);flex-shrink:0}
.land-feat a{color:inherit;text-decoration:none;transition:color .18s}
.land-feat a:hover{color:var(--y)}

.land-btn{
  display:inline-flex;align-items:center;gap:.6rem;
  border:1px solid var(--by);border-radius:var(--r);
  padding:.65rem 1.5rem;font-family:var(--font);font-size:.8rem;
  font-weight:500;letter-spacing:.09em;text-transform:uppercase;
  color:var(--y);text-decoration:none;transition:all .2s;
  align-self:flex-start;margin-top:auto;
}
.land-btn:hover{background:var(--y);color:var(--b);border-color:var(--y)}
.land-btn svg{width:14px;height:14px}

/* Light varianta landing karty (pro /legal/ rozcestník — IP wBTCb na světlém pozadí) */
.land-col-light{background:#fafafa}
.land-col-light:hover{background:#f0efe9}
.land-col-light .land-title{color:#111119}
.land-col-light .land-desc{color:#5c5c6e}
.land-col-light .land-btn{color:#111119;border-color:#111119}
.land-col-light .land-btn:hover{background:var(--y);color:#111119;border-color:var(--y)}

/* stats stripe */

/* ══════════════════════════════════════
   HEADER
══════════════════════════════════════ */
.hdr{background:var(--b);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:200}

/* ── Horní lišta ── */
.hdr-top{border-bottom:1px solid rgba(255,255,255,.05)}
.hdr-top-inner{
  max-width:1280px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  padding:.42rem 2.5rem;gap:0;
}
.hdr-top-left{display:flex;align-items:center}
.hdr-top-center{display:flex;align-items:center;justify-content:center}
.hdr-top-right{display:flex;align-items:center;gap:1.2rem;justify-content:flex-end}
/* BTC simple text — bez ohraničení */
.btcw{position:relative}
.btcw-simple{font-size:.75rem;font-weight:400;color:var(--m2);white-space:nowrap;cursor:default}
.btcw-simple .btcw-val{color:var(--y);font-weight:400}
.btcw:hover .pop{opacity:1;pointer-events:auto;}

/* ── Logo + nav lišta ── */
.hdr-main{padding:0}
.hdr-main-inner{
  max-width:1280px;margin:0 auto;
  display:flex;align-items:center;
  padding:.7rem 2.5rem;gap:0;
}
.hdr-logo{flex-shrink:0;margin-right:0}
.hdr-logo img{height:26px;display:block}

/* ── Back — odstraněno (logo nahrazuje) ── */
.back{display:none}

/* BTC widget */
.btcw{position:relative;display:flex;align-items:center;gap:.45rem;
  padding:.35rem .75rem;border:none;
  cursor:default}
.btcw:hover{}
.btcw-val{font-size:.86rem;font-weight:400;color:var(--y);line-height:1.1}
.pop{
  position:absolute;top:1px;left:0;min-width:330px;
  background:#1a1a24;border:1px solid rgba(255,255,255,.08);border-radius:12px;
  padding:.35rem .75rem 1.2rem;opacity:0;pointer-events:none;
  transition:opacity .18s;z-index:400;
  box-shadow:0 8px 32px rgba(0,0,0,.6);
}
.btcw:hover .pop{opacity:1;pointer-events:auto;}
.pop-ttl{font-size:.65rem;font-weight:400;letter-spacing:.13em;text-transform:uppercase;color:var(--y);margin-bottom:.85rem}
.rtbl{width:100%;border-collapse:collapse;font-size:.8rem}
.rtbl th{color:var(--m);font-weight:400;text-align:left;padding:.18rem .45rem;border-bottom:1px solid var(--border);font-size:.7rem;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.rtbl td{padding:.3rem .45rem;color:var(--w)}
.rtbl tr:not(:last-child) td{border-bottom:1px solid rgba(255,255,255,.03)}
.rb{color:#52c48a}.rs{color:#e05c5c}
.pop-note{font-size:.68rem;color:var(--m);margin-top:.6rem}

/* Support widget */
.supw{position:relative;display:flex;align-items:center;gap:.42rem;
  padding:.35rem .75rem;border:none;
  cursor:default}
.supw:hover{}
.supw>svg{width:15px;height:15px;color:var(--m2);flex-shrink:0}
.supw>span{font-size:.78rem;font-weight:400;color:var(--m2);white-space:nowrap}
.sup-pop{
  position:absolute;top:1px;right:0;min-width:280px;
  background:#1a1a24;border:1px solid rgba(255,255,255,.08);border-radius:12px;
  padding:.35rem .75rem 1.2rem;opacity:0;pointer-events:none;
  transform:translateY(-4px);transition:opacity .18s,transform .18s;z-index:500;
  box-shadow:0 8px 32px rgba(0,0,0,.6);
}
.supw:hover .sup-pop{opacity:1;pointer-events:auto;}
.sup-head{display:flex;align-items:center;justify-content:flex-end;gap:.42rem;padding-bottom:.9rem;margin-bottom:.9rem;font-size:.78rem;font-weight:400;color:var(--m2);border-bottom:1px solid rgba(255,255,255,.07)}
.sup-head svg{width:15px;height:15px;color:var(--m2);flex-shrink:0}
.sup-head span{white-space:nowrap}
.sup-section-title{font-size:1rem;font-weight:300;color:var(--w);margin-bottom:.55rem;letter-spacing:-.01em}
.stat-row{display:flex;align-items:center;gap:.45rem;margin-bottom:1rem}
.dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}
.dot.on{background:#52c48a;box-shadow:0 0 7px rgba(82,196,138,.55)}
.dot.off{background:#e05c5c}
.stat-txt{font-size:.88rem;font-weight:400}
.stat-txt.on{color:#52c48a}.stat-txt.off{color:#e05c5c}
.sup-cinfo{display:flex;align-items:center;gap:.65rem;font-size:.9rem;color:var(--w);margin:.45rem 0}
.sup-cinfo svg{width:15px;height:15px;color:var(--m2);flex-shrink:0}
.sup-cinfo a{color:var(--w);text-decoration:none;transition:color .15s}
.sup-cinfo a:hover{color:var(--y)}
.sup-hr{height:1px;background:rgba(255,255,255,.07);margin:.9rem 0;border:none;display:block}
.sup-lnk{display:inline-flex;align-items:center;gap:.45rem;font-size:.72rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--y);text-decoration:none;transition:gap .15s}
.sup-lnk:hover{gap:.75rem}

/* Lang */
.lsw{display:flex;border:1px solid var(--border);border-radius:var(--r);overflow:hidden}
.lb{padding:.28rem .58rem;font-family:var(--font);font-size:.7rem;font-weight:400;
  letter-spacing:.06em;text-transform:uppercase;background:none;border:none;
  color:var(--m);cursor:pointer;transition:all .18s;text-decoration:none}
.lb.on{background:var(--y);color:var(--b)}
.lb:hover:not(.on){color:var(--w)}
.rekl-hdr-light .lb:hover:not(.on){color:var(--lt, #111119)}
.wlnk{font-size:.72rem;font-weight:400;letter-spacing:.08em;text-transform:uppercase;color:var(--m2);text-decoration:none;transition:color var(--trans)}
.wlnk:hover{color:var(--y)}

/* NAV */
.nav{display:flex;align-items:center;flex:1;gap:0;padding:0;justify-content:space-between}
.nav-start{display:flex;align-items:center;gap:0;margin-left:2.5rem}
.nav-end{display:flex;align-items:center;gap:0}
.na{font-size:.75rem;font-weight:400;letter-spacing:.06em;text-transform:uppercase;
  color:var(--w);text-decoration:none;padding:.75rem 1.4rem;
  position:relative;white-space:nowrap;transition:color .18s;border-bottom:none;flex-shrink:0}
.na::after{
  content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);
  width:4px;height:4px;border-radius:50%;
  background:rgba(255,255,255,0);transition:background .18s}
.na:hover{color:var(--w)}.na:hover::after{background:rgba(255,255,255,.6)}
.na.active::after{background:#ffffff}
.na.login{color:var(--y)}
.na.login::after{background:rgba(255,199,0,0)}
.na.login:hover::after{background:rgba(255,199,0,.6)}
.na.login.active::after{background:#FFC700}
/* Registrace — žluté tlačítko */
.na.reg{
  background:var(--y);color:var(--b) !important;border-radius:var(--r);
  margin-left:.4rem;padding:.42rem .9rem;font-weight:500;
  border:none;transition:background .18s,transform .12s}
.na.reg::after{display:none}
.na.reg:hover{background:#ffcf1a;transform:translateY(-1px)}

/* ══════════════════════════════════════
   HERO
══════════════════════════════════════ */
.hero{
  max-width:1280px;margin:0 auto;
  padding:5rem 2.5rem 4rem;
  display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center;
}
/* CZ hero: zarovnat sloupce na horní hranu. Objednávkový formulář mění výšku
   podle kroku — při align-items:center se proto levý textový box "posouval"
   nahoru/dolů. Top-align drží horní hrany pevně: text se nehýbe, formulář
   roste/zkracuje se směrem dolů. (IP hero zůstává centrovaný — statický obrázek.) */
#cz .hero{ align-items:start; }
.hero-badge{
  display:inline-flex;align-items:center;gap:.5rem;
  font-size:.67rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--y);margin-bottom:1.2rem;
}
.hero-badge::before{content:'';width:16px;height:2px;background:var(--y);flex-shrink:0}
.hero h1, .hero .hero-title{
  font-size:clamp(2rem,3.5vw,3rem);font-weight:300;line-height:1.18;
  margin-bottom:1.1rem;letter-spacing:0em;
}
.hero h1 em{font-style:normal;color:var(--y)}
.hl-y{color:var(--y);font-style:normal}
/* yellow underline accent on h1 */
.hero-accent{display:block;width:52px;height:3px;background:var(--y);margin:1rem 0 1.4rem}
.hero-desc{color:var(--m2);font-size:.97rem;line-height:1.82;margin-bottom:2rem;max-width:48ch}
.hero-acts{display:flex;gap:.7rem;flex-wrap:wrap;margin-bottom:1.6rem}
.hero-disclaimer{color:var(--m2);font-size:.78rem;line-height:1.55;margin-top:1.2rem;max-width:48ch;opacity:.78;font-style:italic}
#ip .hero-disclaimer{color:var(--lt2)}
.btn-y{
  display:inline-flex;align-items:center;gap:.5rem;background:var(--y);
  color:var(--b);font-family:var(--font);font-size:.8rem;font-weight:500;
  letter-spacing:.06em;text-transform:uppercase;padding:.78rem 1.6rem;
  border-radius:var(--r);text-decoration:none;transition:all .18s;border:none;cursor:pointer;
}
.btn-y:hover{background:#ffcf1a;transform:translateY(-1px)}
.btn-o{
  display:inline-flex;align-items:center;gap:.5rem;background:none;
  color:var(--w);font-family:var(--font);font-size:.8rem;font-weight:500;
  letter-spacing:.06em;text-transform:uppercase;padding:.78rem 1.6rem;
  border-radius:var(--r);text-decoration:none;border:1px solid var(--border);transition:all .18s;
}
.btn-o:hover{border-color:var(--by);color:var(--y)}
.apps{display:flex;gap:.55rem;flex-wrap:wrap;margin-top:.4rem}
.apps a img{height:34px;opacity:.82;transition:opacity .2s;border-radius:5px}
.apps a:hover img{opacity:1}

/* Hero visual panel */
.hero-panel{
  background:var(--b3);border:1px solid var(--border);border-radius:var(--r2);
  height:360px;position:relative;overflow:hidden;
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.8rem;
  color:var(--m);font-size:.85rem;
}
/* yellow corner accent */
.hero-panel::after{
  content:'';position:absolute;bottom:0;right:0;
  width:120px;height:120px;
  border-top:2px solid rgba(255,199,0,.15);
  border-left:2px solid rgba(255,199,0,.15);
  border-top-left-radius:var(--r2);
}
.hero-panel svg{width:42px;height:42px;color:var(--m);opacity:.6}

/* ══════════════════════════════════════
   TRUST STRIP (legacy — used on Bit.plus App page)
══════════════════════════════════════ */
.trust-item svg{width:14px;height:14px;color:var(--y);flex-shrink:0}
.trust-item strong{color:var(--w);font-weight:500}

/* ══════════════════════════════════════
   REPUTATION STRIP (flat — like .trust on dark)
══════════════════════════════════════ */
.rep{
  background:var(--b2);border-top:1px solid var(--border);border-bottom:1px solid var(--border);
}
.rep-inner{
  max-width:1280px;margin:0 auto;padding:0 2.5rem;
  display:flex;flex-direction:column;
}
.rep-grid{
  display:flex;align-items:stretch;
}
.rep-card{
  flex:1 1 0;min-width:0;
  display:flex;align-items:flex-start;gap:.7rem;
  padding:1.2rem 1.4rem;
  border-right:1px solid var(--border);
  background:transparent;border-radius:0;
  transition:background var(--trans);
}
.rep-card:first-child{padding-left:0}
.rep-card:last-child{padding-right:0;border-right:none}
.rep-card:hover{background:rgba(255,255,255,.025)}
.rep-ico{
  flex-shrink:0;width:18px;height:18px;
  background:transparent;border-radius:0;
  display:flex;align-items:center;justify-content:center;
  color:var(--y);margin-top:.15rem;
}
.rep-ico svg{width:18px;height:18px}
.rep-body{display:flex;flex-direction:column;gap:.25rem;min-width:0}
.rep-title{
  font-size:.9rem;font-weight:500;color:var(--w);line-height:1.3;letter-spacing:.005em;
}
.rep-desc{
  font-size:.76rem;color:var(--m2);line-height:1.55;
}
.rep-desc strong{color:var(--w);font-weight:500}

.rep-badges{
  display:flex;align-items:center;
  border-top:1px solid var(--border);
  background:transparent;border-radius:0;
  padding:0;
}
.rep-badge{
  flex:1;min-width:0;
  display:flex;align-items:center;justify-content:center;gap:.55rem;
  padding:.85rem 1rem;
  border-right:1px solid var(--border);
  color:var(--m2);font-size:.78rem;letter-spacing:.01em;
}
.rep-badge:last-child{border-right:none}
.rep-badge svg{width:16px;height:16px;color:var(--y);flex-shrink:0}
.rep-badge span{color:var(--m2);font-weight:400;white-space:nowrap}

/* ══════════════════════════════════════
   SECTIONS
══════════════════════════════════════ */
.sec{max-width:1280px;margin:0 auto;padding:4rem 2.5rem}
.sec-lbl{font-size:.67rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--y);margin-bottom:.5rem;display:flex;align-items:center;gap:.5rem}
.sec-lbl::before{content:'';width:16px;height:2px;background:var(--y)}
.sec-title{font-size:clamp(1.5rem,2.6vw,2.1rem);font-weight:300;line-height:1.22;margin-bottom:.85rem;letter-spacing:0em}
.sec-desc{color:var(--m2);max-width:80ch;line-height:1.8;margin-bottom:2.5rem;font-size:.95rem}
.sep{border:none;border-top:1px solid var(--border);max-width:1280px;margin:0 auto}

/* Service cards */
.svc-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}
.svc{
  background:transparent;border:none;border-left:3px solid transparent;
  padding:1.5rem 1.5rem 1.5rem 1.7rem;
  transition:border-color var(--trans);
  position:relative;
}
.svc:hover{border-left-color:var(--y)}
.svc-ico{
  width:40px;height:40px;background:rgba(255,199,0,.08);border-radius:var(--r);
  display:flex;align-items:center;justify-content:center;margin-bottom:1.1rem;
}
.svc-ico svg{width:20px;height:20px;color:var(--y)}
.svc h3{font-size:1.05rem;font-weight:400;margin-bottom:.55rem}
.svc p{color:var(--m2);font-size:.95rem;line-height:1.78}

/* Accordion docs */
.acc-item{border-bottom:1px solid var(--border)}
.acc-btn{
  width:100%;background:none;border:none;color:var(--w);
  display:flex;align-items:center;justify-content:space-between;
  padding:.9rem 0;cursor:pointer;font-family:var(--font);
  font-size:1rem;font-weight:300;text-align:left;transition:color .18s;letter-spacing:-.01em;
}
.acc-btn:hover{color:var(--y)}
.acc-btn svg{width:16px;height:16px;color:var(--m);transition:transform .22s;flex-shrink:0}
.acc-item.op .acc-btn svg{transform:rotate(180deg);color:var(--y)}
.acc-body{max-height:0;overflow:hidden;transition:max-height .32s ease}
.acc-item.op .acc-body{max-height:5000px;transition:max-height .5s ease}
.acc-inner{padding:.1rem 0 1.1rem;color:var(--m2);font-size:.92rem;line-height:1.7}
.dlnk{display:flex;align-items:center;gap:.42rem;color:var(--y);font-size:.85rem;font-style:normal;text-decoration:none;padding:.18rem 0;transition:opacity .18s}
.dlnk:hover{opacity:.65}
.dlnk svg{width:12px;height:12px;flex-shrink:0}

/* Contact */
.cg{display:grid;grid-template-columns:1fr 1fr;gap:3rem}
.cc{padding:0}
.cc-lbl{font-size:.67rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--y);margin-bottom:1.1rem;display:flex;align-items:center;gap:.5rem}
.cc-lbl::before{content:'';width:16px;height:2px;background:var(--y);flex-shrink:0}
.cc-company{font-size:1.15rem;font-weight:300;letter-spacing:-.01em;color:var(--w);margin:-.4rem 0 1.1rem;line-height:1.25}
.cc-spacer{visibility:hidden;pointer-events:none;margin-bottom:var(--spacer-mb,0)}
.cc-desc{color:var(--m2);font-size:.86rem;margin-bottom:1.2rem;line-height:1.65}
.cr{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.9rem;font-size:.9rem;color:var(--m2)}
.cr svg{width:16px;height:16px;flex-shrink:0;margin-top:.15rem;color:var(--y)}
.cr a{color:var(--w);text-decoration:none;transition:color .18s;display:block}
.cr a:hover{color:var(--y)}
.cr div{display:flex;flex-direction:column;gap:.25rem}
.ch-col{display:flex;flex-direction:column;gap:.35rem}
.ch{display:flex;gap:1.2rem;font-size:.88rem}
.ch span:first-child{color:var(--m2)}
.ch span:last-child{color:var(--w);white-space:nowrap}
.cta-link{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--y);text-decoration:none;margin-top:.4rem;transition:gap .18s}
.cta-link:hover{gap:.7rem}
.cc-lbl{font-size:.67rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--y);margin-bottom:.95rem}
.cr{display:flex;align-items:flex-start;gap:.6rem;margin-bottom:.6rem;font-size:.87rem;color:var(--m2)}
.cr svg{width:14px;height:14px;color:var(--y);flex-shrink:0;margin-top:.17rem}
.cr a{color:var(--w);text-decoration:none}.cr a:hover{color:var(--y)}
.ch{display:flex;justify-content:space-between;font-size:.83rem;padding:.2rem 0;border-bottom:1px solid rgba(255,255,255,.04)}
.ch:last-of-type{border-bottom:none}

/* Two col */

/* Order form */
.owrap{background:var(--b3);border:1px solid var(--border);border-radius:var(--r2);padding:1.8rem}
.otitle{font-size:.96rem;font-weight:400;margin-bottom:1.2rem;letter-spacing:-.01em}
.ot.on{color:var(--y);border-bottom-color:var(--y)}
.rprev .rl{color:var(--m2)}.rprev .rv{font-weight:500;color:var(--y)}
.fl{font-size:.7rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--m2);margin-bottom:.3rem;display:block}
.fg{margin-bottom:.85rem}
.fi{width:100%;background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:var(--r);padding:.62rem .92rem;color:var(--w);font-family:var(--font);font-size:.87rem;outline:none;transition:border-color .18s}
.fi:focus{border-color:rgba(255,199,0,.38)}
.fi::placeholder{color:var(--m)}

/* Map */
.mf-row{display:flex;gap:0;flex-wrap:wrap;margin-bottom:2rem;border-bottom:1px solid var(--border)}
.mf{
  position:relative;padding:.65rem 1.1rem;
  font-family:var(--font);font-size:.75rem;font-weight:400;
  letter-spacing:.06em;text-transform:uppercase;
  border:none;background:none;color:var(--m2);cursor:pointer;
  transition:color .18s;
}
.mf::after{
  content:'';position:absolute;bottom:-1px;left:50%;transform:translateX(-50%);
  width:4px;height:4px;border-radius:50%;
  background:rgba(255,255,255,0);transition:background .18s;
}
.mf:hover{color:var(--w)}.mf:hover::after{background:rgba(255,255,255,.55)}
.mf.on{color:var(--w)}.mf.on::after{background:#fff}
.mmap{background:var(--b3);border:1px solid var(--border);border-radius:var(--r2);height:540px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.65rem;color:var(--m);font-size:.87rem}
.mmap svg{width:36px;height:36px;opacity:.5}

/* Footer */
.ft{background:var(--b2);border-top:1px solid var(--border);padding:3.5rem 2.5rem 1.6rem}
.ft-grid{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.8fr 1fr 1fr 1fr 1fr;gap:2.5rem;margin-bottom:2.8rem}
.ft-brand img{height:26px;margin-bottom:1.1rem;opacity:.85}
.ft-brand p{color:var(--m);font-size:.83rem;line-height:1.7;max-width:26ch}
.ft-ht{font-size:.67rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--w);margin-bottom:.9rem}
.ft-links{list-style:none;display:flex;flex-direction:column;gap:.42rem}
.ft-links a{color:var(--m2);font-size:.85rem;text-decoration:none;transition:color .18s}
.ft-links a:hover{color:var(--w)}
.ft-bottom{max-width:1280px;margin:0 auto;border-top:1px solid var(--border);padding-top:1.1rem;display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:1.5rem}
.ft-copy{color:var(--m);font-size:.77rem}
.ft-legal{display:flex;gap:1.2rem;flex-wrap:wrap;align-items:center}
.ft-legal a{color:var(--m);font-size:.75rem;text-decoration:none;transition:color .18s}
.ft-legal a:hover{color:var(--w)}
.soc{display:flex;gap:.38rem;margin-top:.95rem}
.sa{width:29px;height:29px;border-radius:6px;border:1px solid var(--border);
  display:flex;align-items:center;justify-content:center;color:var(--m);
  font-size:.65rem;font-weight:700;text-decoration:none;transition:all .18s}
.sa:hover{border-color:rgba(255,255,255,.4);color:var(--w)}

.rate-load{color:var(--m);font-size:.76rem;font-style:italic}

/* ── Responsive ── */
@media(max-width:960px){
  .land-cols{grid-template-columns:1fr}
  .land-col:first-child{border-bottom:1px solid var(--border)}
  .land-col::before{display:none}
  .hero{grid-template-columns:1fr;gap:2rem;padding:3rem 1.5rem}
  .hero-panel{height:200px}
  .svc-grid{grid-template-columns:1fr}
  .cg{grid-template-columns:1fr}
  .ft-grid{grid-template-columns:1fr 1fr;gap:2rem}
  .ft-brand{grid-column:1/-1}
  .hdr-row{padding:.65rem 1.5rem}
  .nav{padding:0 1.5rem}
  .sec{padding:2.5rem 2rem}
  .rep-inner{padding:0 1.5rem}
  .rep-grid{flex-wrap:wrap}
  .rep-card{flex:1 1 50%;padding:1rem 1.2rem;border-bottom:1px solid var(--border)}
  .rep-card:first-child{padding-left:0}
  .rep-card:nth-child(2){padding-right:0;border-right:none}
  .rep-card:nth-child(3){padding-left:0;border-bottom:none}
  .rep-card:nth-child(4){padding-right:0;border-right:none;border-bottom:none}
  .rep-badge{padding:.7rem .5rem;font-size:.72rem}
}
@media(max-width:600px){
  .land-col{padding:2.5rem 1.8rem}
  .land-bar{padding:1.6rem}
  .sec{padding:2rem 1.5rem}
  .rep-card{flex:1 1 100%;padding:.95rem 0;border-right:none;border-bottom:1px solid var(--border)}
  .rep-card:first-child{padding-left:0}
  .rep-card:nth-child(2),
  .rep-card:nth-child(3){padding-left:0;padding-right:0;border-right:none;border-bottom:1px solid var(--border)}
  .rep-card:last-child{padding-right:0;border-bottom:none}
  .rep-badges{flex-direction:column;align-items:stretch}
  .rep-badge{border-right:none;border-bottom:1px solid var(--border);padding:.65rem 0;justify-content:flex-start;min-width:0}
  .rep-badge:last-child{border-bottom:none}
  .ft-grid{grid-template-columns:1fr}
}

/* Hamburger menu mobile */
.nav-toggle{display:none;background:none;border:none;padding:.3rem;cursor:pointer;color:var(--m2);align-items:center;justify-content:center;transition:color var(--trans);margin-left:auto}
.nav-toggle:hover{color:var(--w)}
@media(max-width:700px){
  .nav-toggle{display:flex}
  .nav{flex-direction:column;align-items:flex-start;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease;border-top:none;position:absolute;top:100%;left:0;right:0;background:var(--b);z-index:300}
  .nav.open{max-height:500px;padding:.5rem 1.5rem 1rem;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
  .nav-start,.nav-end{flex-direction:column;width:100%}
  .na{width:100%;padding:.65rem .3rem;border-bottom:1px solid var(--border) !important}
  .na.reg{margin-left:0;margin-top:.3rem;text-align:center;justify-content:center}
}

/* ── Mobile header ── */
@media(max-width:600px){
  .hdr-logo img{height:24px}
  .back{font-size:.65rem;padding:.28rem .65rem}
  /* BTC widget: hide label, show only value */
  .btcw{padding:.28rem .55rem;gap:.3rem}
  /* wBTCb.cz link: hide on very small screens */
  .wlnk{display:none}
  /* Support: icon only */
  .supw>span{display:none}
  .supw{padding:.28rem .55rem;display:none}
  /* Lang: compact */
  .lb{padding:.25rem .5rem;font-size:.68rem}
  /* Popups: right-align on mobile to avoid overflow */
  .pop{left:auto;right:0;min-width:280px}
  .sup-pop{min-width:240px}
}
@media(max-width:380px){
  .btcw-val{font-size:.78rem}
  .hdr-row{padding:.5rem .75rem}
}

/* ══════════════════════════════════════════════════════════
   SVĚTLÝ MOTIV — IP wBTCb solutions
   Brand manual: #FFC700 · #111119 · #FFFFFF
══════════════════════════════════════════════════════════ */
:root {
  --lw: #ffffff;
  --l1: #f5f4f0;
  --l2: #f0efe8;
  --lb: #e8e6e0;
  --lt: #111119;
  --lt2: #5c5c6e;
  --lt3: #9090a0;
  --lby: rgba(255,199,0,.35);
}

/* Stránka */
#ip { background: var(--lw); }

/* /reklamace/ a /legal/ — sjednocení #ip pozadí s .sec.sec-light (#fafafa).
   Globální #ip má var(--lw) (#ffffff), ale .sec.sec-light uvnitř má #fafafa
   a je centrovaná s max-width:1280px → na šíroké obrazovce vznikaly bílé
   pruhy po stranách. Sjednocením pozadí pruhy zmizí. */
body.rekl #ip,
body.lg-ip #ip { background: #fafafa; }


/* Trust strip */
#ip .trust { background: var(--l1); }
#ip .trust-inner {}
#ip .trust-item { border-right-color: var(--lb); color: var(--lt2); }
#ip .trust-item svg { color: var(--y); }
#ip .trust-item strong { color: var(--lt); }
@media(max-width:600px) {
  #ip .trust-item { border-bottom-color: var(--lb); }
}

/* Reputation strip — light variant for IP */
#ip .rep { background: var(--l1); border-top-color: var(--lb); border-bottom-color: var(--lb); }
#ip .rep-card { border-right-color: var(--lb); }
#ip .rep-card:hover { background: rgba(0,0,0,.02); }
#ip .rep-ico { color: var(--y); }
#ip .rep-title { color: var(--lt); }
#ip .rep-desc { color: var(--lt2); }
#ip .rep-desc strong { color: var(--lt); }
#ip .rep-badges { border-top-color: var(--lb); }
#ip .rep-badge { border-right-color: var(--lb); color: var(--lt2); }
#ip .rep-badge svg { color: var(--y); }
#ip .rep-badge span { color: var(--lt2); }
@media(max-width:1024px) {
  #ip .rep-card { border-bottom-color: var(--lb); }
}
@media(max-width:600px) {
  #ip .rep-card { border-bottom-color: var(--lb); }
  #ip .rep-badge { border-bottom-color: var(--lb); }
}

/* Hero */
#ip .hero h1 { color: var(--lt); }

#ip .hero-desc { color: var(--lt2); }
#ip .hero-accent { background: var(--y); }
#ip .btn-o { color: var(--lt); border-color: rgba(17,17,25,.18); }
#ip .btn-o:hover { border-color: var(--lby); color: var(--lt); }
#ip .hero-panel {
  background: var(--l1);
  border-color: var(--lb);
}

/* Sections */
#ip .sep { border-top-color: var(--lb); }
#ip .sec-lbl { color: var(--y); }
#ip .sec-title { color: var(--lt); }
#ip .sec-desc { color: var(--lt2); }

/* Service cards */
#ip .svc:hover { border-left-color: var(--y); }
#ip .svc h3 { color: var(--lt); }
#ip .svc p { color: var(--lt2); }

/* Accordion */
#ip .acc-item { border-bottom-color: var(--lb); }
#ip .acc-btn { color: var(--lt); }
#ip .acc-btn:hover { color: var(--y); }
#ip .acc-btn svg { color: var(--lt3); }
#ip .acc-item.op .acc-btn svg { color: var(--y); }
#ip .acc-inner { color: var(--lt2); }

/* Contact */
#ip .cc { background: transparent; border: none; }
#ip .cr a { color: var(--lt); }
#ip .cr a:hover { color: var(--y); }
#ip .ch span:last-child { color: var(--lt); }
#ip .cta-link { color: var(--y); }
#ip .cc-lbl { color: var(--y); }
#ip .cc-company { color: var(--lt); }
#ip .cr { color: var(--lt2); }
#ip .cr svg { color: var(--y); }
#ip .cr a { color: var(--lt); }
#ip .cr a:hover { color: var(--y); }
#ip .csl { color: var(--y); }
#ip .ch { border-bottom-color: rgba(17,17,25,.05); }


/* ── Landing page split — levá karta světlá ── */
#land .land-col:first-child {
  background: var(--lw);
  border-right-color: var(--lb);
}
#land .land-col:first-child .land-tag { color: var(--y); }
#land .land-col:first-child .land-tag::before { background: var(--y); }
#land .land-col:first-child .land-title { color: var(--lt); }
#land .land-col:first-child .land-tagline { color: var(--lt); }
#land .land-col:first-child .land-desc { color: var(--lt2); }
#land .land-col:first-child .land-feat { color: var(--lt2); }
#land .land-col:first-child .land-btn {
  background: var(--y);
  color: var(--lt);
  border-color: var(--y);
}
#land .land-col:first-child .land-btn:hover {
  background: #ffcf1a;
  color: var(--lt);
}
#land .land-col:first-child::before { background: var(--y); }
/* Barevný pruh nahoře světlé karty */
#land .land-cols { position: relative; }


/* Landing bar a patička zůstávají tmavé */


/* BTM image vertical alignment */
#cz-svc .twocol { align-items: stretch; }
#btm-img-panel { min-height: 200px; }
#btm-img-panel::after { display: none; }

/* Barva textu dní v provozní době — světlý motiv */
#ip .ch { border-bottom-color: var(--lb); }
#ip .ch span:first-child { color: var(--lt2); }

/* Tlačítka Vstoupit — jednotný styl pro oba sloupce rozcestníku */
#land .land-col .land-btn {
  background: var(--y);
  color: var(--b);
  border-color: var(--y);
  font-weight: 500;
}
#land .land-col .land-btn:hover {
  background: #ffcf1a;
  border-color: #ffcf1a;
}

.ft-partners-logos{display:flex;flex-direction:column;gap:.7rem;margin-top:.3rem}
.ft-partner-logo{height:22px;width:auto;display:block;opacity:.55;filter:brightness(0) invert(1);transition:opacity .18s}
.ft-partner-logo:hover{opacity:1}

/* ── Mobilní hlavička ── */
@media(max-width:600px){

  /* Zpět tlačítko — schovat */
  .back { display: none !important; }

  /* Logo — klikatelné, vlevo */
  .hdr-logo { cursor: pointer; }

  /* BTC widget — schovat */
  .btcw { display: none !important; }

  /* Podpora — schovat */
  .supw { display: none !important; }

  /* WBTCB odkaz — schovat */
  .wlnk { display: none !important; }

  /* Přepínač jazyka — schovat z headeru */
  .lsw { display: none !important; }

  /* hdr-row: logo vlevo, hamburger vpravo */
  .hdr-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .65rem 1.2rem;
  }

  /* hdr-left jen logo */
  .hdr-left { gap: 0; }

  /* Hamburger — kruhové tlačítko vpravo */
  .nav-toggle {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,.18);
    background: rgba(255,255,255,.06);
    color: var(--w);
    flex-shrink: 0;
  }
  .nav-toggle svg { width: 20px; height: 20px; }
  .nav-toggle:hover {
    border-color: rgba(255,255,255,.35);
    background: rgba(255,255,255,.1);
  }
  /* Mobile: hdr-main-inner = logo + hamburger na jednom řádku */
  .hdr-top { display: none; }
  .hdr-main-inner { padding: .7rem 1.2rem; }

  /* Jazyk v menu (přidáme jako nav položku) */
  .nav-lang-row {
    display: flex;
    gap: .5rem;
    padding: .65rem .3rem;
    border-bottom: 1px solid var(--border);
  }
  .nav-lang-row .lb {
    font-size: .75rem;
    padding: .3rem .7rem;
  }
}

/* Na desktopu skrýt .nav-lang-row */
@media(min-width:601px){
  .nav-lang-row { display: none; }
}

/* ── Plovoucí tlačítko Domluvit schůzku ── */
.fab-cal{
  position:fixed;
  bottom:1.8rem;
  right:1.8rem;
  z-index:500;
  display:none; /* zobrazí se jen na IP a wBTCb stránkách */
  align-items:center;
  gap:.55rem;
  background:var(--y);
  color:var(--b);
  font-family:var(--font);
  font-size:.72rem;
  font-weight:500;
  letter-spacing:.08em;
  text-transform:uppercase;
  padding:.72rem 1.3rem;
  border-radius:50px;
  border:none;
  cursor:pointer;
  box-shadow:0 4px 20px rgba(255,199,0,.35);
  transition:transform .18s,box-shadow .18s;
  text-decoration:none;
}
.fab-cal:hover{
  transform:translateY(-2px);
  box-shadow:0 6px 28px rgba(255,199,0,.45);
}
.fab-cal svg{width:15px;height:15px;flex-shrink:0}
@media(max-width:600px){
  .fab-cal{bottom:1.2rem;right:1.2rem;font-size:.67rem;padding:.62rem 1rem}
}
/*
  Přidej na konec css/style.css.
  Upravuje vzhled už existujícího .mmap a přidává styly pro widget mapy,
  aby přirozeně zapadla do designu webu.
*/

/* Kontejner mapy – využívá existující .mmap, jen odstraní flex-centering
   (ten je potřeba jen pro načítací stav) a zvýší výšku pro reálný obsah. */
.mmap { position: relative; height: 540px; padding: 0; overflow: hidden; display: block; z-index: 0; isolation: isolate; }
.mmap #mmap-loading {
  position: absolute; inset: 0; display: flex; flex-direction: column;
  align-items: center; justify-content: center; gap: .65rem;
  color: var(--m); font-size: .87rem;
}
.mmap #mmap-loading svg { width: 36px; height: 36px; opacity: .5 }

/* Leaflet kontejner uvnitř – vyplní celý .mmap */
.mmap .leaflet-container {
  width: 100%; height: 100%;
  background: var(--b3);
  font-family: var(--font);
  border-radius: var(--r2);
}

/* Piny – custom divIcon */
.mmap-pin {
  width: 22px; height: 22px; border-radius: 50% 50% 50% 0;
  transform: rotate(-45deg);
  border: 2px solid var(--b);
  box-shadow: 0 2px 6px rgba(0,0,0,.5);
}
.mmap-pin.btm  { background: var(--y); }
.mmap-pin.geco { background: var(--w); }

/* Cluster bubliny – laděné do brand barvy */
.mmap .marker-cluster-small,
.mmap .marker-cluster-medium,
.mmap .marker-cluster-large {
  background: rgba(255,199,0,.28);
}
.mmap .marker-cluster-small div,
.mmap .marker-cluster-medium div,
.mmap .marker-cluster-large div {
  background: var(--y);
  color: var(--b);
  font-family: var(--font);
  font-weight: 600;
}

/* Popupy – tmavé, laděné do webu */
.mmap .leaflet-popup-content-wrapper {
  background: var(--b2);
  color: var(--w);
  border: 1px solid var(--border);
  border-radius: var(--r2);
  box-shadow: 0 6px 24px rgba(0,0,0,.5);
}
.mmap .leaflet-popup-tip { background: var(--b2); }

/* Jazykové přepínání v popup mapy */
:root:lang(cs) .mmap-lang-en { display: none; }
:root:lang(en) .mmap-lang-cs { display: none; }

.mmap .leaflet-popup-content { margin: .85rem 1rem; font-size: .87rem; line-height: 1.55; }
.mmap .leaflet-popup-close-button { color: var(--m2) !important; }

.mmap-pop-title { font-weight: 600; font-size: .95rem; margin-bottom: .3rem; color: var(--w); }
.mmap-pop-addr  { color: var(--m2); font-size: .82rem; }
.mmap-pop-tel   { margin-top: .4rem; }
.mmap-pop-tel a { color: var(--y); text-decoration: none; }
.mmap-pop-tel a:hover { text-decoration: underline; }
.mmap-pop-note  { color: var(--m); font-size: .78rem; font-style: italic; margin-top: .3rem; }

/* Attribution Mapy.com – v corneru, decentně */
.mmap .leaflet-control-attribution {
  background: rgba(17,17,25,.85) !important;
  color: var(--m2) !important;
  font-size: .7rem;
  border-radius: 4px;
  padding: 2px 6px;
}
.mmap .leaflet-control-attribution a { color: var(--m2) !important; }

/* Logo Mapy.com – povinné dle podmínek Seznamu */
.mmap-logo {
  position: absolute; bottom: 8px; left: 8px; z-index: 400;
  background: #fff; padding: 3px 5px; border-radius: 3px;
  display: block; line-height: 0;
}
.mmap-logo img { height: 16px; display: block; }

/* Counter v rohu */
.mmap-stats {
  position: absolute; bottom: 8px; right: 8px; z-index: 400;
  background: rgba(17,17,25,.85);
  color: var(--m2);
  font-size: .7rem;
  padding: 3px 8px;
  border-radius: 4px;
}

/* Responsivita – na mobilu nižší mapa */
@media (max-width: 768px) {
  .mmap { height: 420px; }
}

/* Jazykové přepínání v popup mapy */
:root:lang(cs) .mmap-lang-en { display: none; }
:root:lang(en) .mmap-lang-cs { display: none; }

/* ══════════════════════════════════════════════
   Formulář objednávky — 4 kroky
══════════════════════════════════════════════ */
.ord-step { animation: fu .2s ease; }
.ord-back {
  background: none; border: none; color: var(--m2);
  font-size: .75rem; font-weight: 400; letter-spacing: .06em;
  text-transform: uppercase; cursor: pointer; padding: 0;
  margin-bottom: 1rem; display: flex; align-items: center; gap: .3rem;
  transition: color .15s;
}
.ord-back:hover { color: var(--w); }

/* Kurz */
.ord-rate-row { display: flex; justify-content: space-between; align-items: center;
  font-size: .78rem; margin-bottom: 1rem; }
.ord-rate-lbl { color: var(--m2); }
.ord-rate-val { color: var(--y); font-weight: 400; }

/* Vstupní pole s měnou */
.ord-input-row { display: flex; align-items: center; gap: 0; }
.ord-input-row .fi {
  flex: 1; border-radius: var(--r) 0 0 var(--r);
  border-right: none;
}
.ord-currency {
  background: var(--b3); border: 1px solid var(--border);
  border-radius: 0 var(--r) var(--r) 0;
  padding: .55rem .75rem; font-size: .8rem; font-weight: 500;
  color: var(--m2); white-space: nowrap; letter-spacing: .04em;
  min-width: 46px; text-align: center;
}

/* Přepínač ⇅ */
.ord-swap {
  display: flex; align-items: center; justify-content: center;
  width: 36px; height: 36px; margin: .4rem auto;
  background: none; border: 1px solid var(--border);
  border-radius: 50%; cursor: pointer; color: var(--m2);
  transition: all .18s;
}
.ord-swap:hover { border-color: var(--y); color: var(--y); }
.ord-swap svg { width: 16px; height: 16px; }

/* Limity */
.ord-limits { font-size: .72rem; color: var(--m); margin: .4rem 0 .2rem; min-height: 1rem; }

/* Chyby */
.ord-error { font-size: .78rem; color: #e05c5c; margin: .5rem 0; min-height: 1.2rem; }
/* Když není chyba, nerezervuj místo — jinak vzniká velká mezera nad calloutem */
#ord-s3-err:empty { margin: 0; min-height: 0; }
.ord-api-banner {
  background: rgba(224,92,92,.12);
  border: 1px solid rgba(224,92,92,.4);
  border-radius: var(--r);
  color: #e05c5c;
  font-size: .82rem;
  line-height: 1.45;
  padding: .65rem .85rem;
  margin-bottom: 1rem;
}

/* Souhrn */
.ord-summary {
  background: var(--b3); border: 1px solid var(--border);
  border-radius: var(--r2); padding: 1rem 1.2rem;
  margin-bottom: 1.2rem; font-size: .88rem;
}
.ord-sum-row {
  display: flex; justify-content: space-between;
  padding: .35rem 0; border-bottom: 1px solid rgba(255,255,255,.04);
}
.ord-sum-row:last-child { border-bottom: none; }
.ord-sum-lbl { color: var(--m2); }
.ord-sum-val { color: var(--w); font-weight: 400; text-align: right; max-width: 60%; word-break: break-all; }

/* Checkboxy */
.ord-checks { display: flex; flex-direction: column; gap: .65rem; margin-bottom: 1.2rem; }
.ord-check {
  display: flex; align-items: flex-start; gap: .6rem;
  font-size: .82rem; color: var(--m2); cursor: pointer; line-height: 1.5;
}
.ord-check input[type=checkbox] {
  width: 16px; height: 16px; flex-shrink: 0; margin-top: .15rem;
  accent-color: var(--y); cursor: pointer;
}
.ord-check a { color: var(--y); text-decoration: none; }
.ord-check a:hover { text-decoration: underline; }

/* reCAPTCHA poznámka */
.ord-recaptcha-note {
  font-size: .68rem; color: var(--m); text-align: center;
  margin-top: .7rem; line-height: 1.5;
}

/* Callout nad submit tlačítkem — přesměrování na registrační web (CBP) */
.ord-login-callout {
  display: flex; align-items: flex-start; gap: .7rem;
  background: rgba(255,199,0,.08);
  border: 1px solid rgba(255,199,0,.3);
  border-radius: var(--r2);
  padding: .9rem 1rem; margin: 0 0 .9rem; text-align: left;
}
.ord-login-callout svg {
  flex-shrink: 0; width: 20px; height: 20px;
  color: var(--y); margin-top: .05rem;
}
.ord-login-callout p {
  margin: 0; font-size: .85rem; line-height: 1.6; color: var(--w);
}
.ord-login-callout strong { color: var(--y); font-weight: 600; }
/* Submit tlačítko (Potvrdit/Koupit/Prodat) vycentrované */
#ord-submit-btn { display: flex; width: fit-content; margin: 0 auto; }

/* Krok 7 — dokončování objednávky po návratu z přihlášení */
.ord-processing {
  display: flex; flex-direction: column; align-items: center;
  justify-content: center; gap: 1.1rem; padding: 2.5rem 1rem; text-align: center;
}
.ord-spinner {
  width: 36px; height: 36px; border-radius: 50%;
  border: 3px solid var(--border); border-top-color: var(--y);
  animation: spin .7s linear infinite;
}
.ord-processing-txt {
  font-size: .9rem; color: var(--m2); margin: 0; letter-spacing: .01em;
}
#ip .ord-processing-txt { color: var(--lt2); }

/* Výsledek */
.ord-result {
  text-align: center; padding: .5rem 0;
}
.ord-result-icon {
  width: 48px; height: 48px; border-radius: 50%;
  background: rgba(82,196,138,.12); display: flex; align-items: center;
  justify-content: center; margin: 0 auto 1rem;
}
.ord-result-icon svg { width: 24px; height: 24px; color: #52c48a; }
.ord-result-title {
  font-size: 1.05rem; font-weight: 300; color: var(--w);
  margin-bottom: 1rem; letter-spacing: -.01em;
}
.ord-result-box {
  background: var(--b3); border: 1px solid var(--border);
  border-radius: var(--r2); padding: 1rem 1.2rem;
  margin-bottom: 1.2rem; text-align: left;
}
.ord-result-pdf {
  display: inline-flex; align-items: center; gap: .5rem;
  font-size: .75rem; font-weight: 500; letter-spacing: .07em;
  text-transform: uppercase; color: var(--y); text-decoration: none;
  border: 1px solid rgba(255,199,0,.3); border-radius: var(--r);
  padding: .5rem 1rem; transition: all .18s; margin-top: .5rem;
}
.ord-result-pdf:hover { background: rgba(255,199,0,.08); }
.ord-result-pdf svg { width: 14px; height: 14px; }
.ord-result-new {
  display: block; margin-top: .8rem;
  font-size: .72rem; color: var(--m); cursor: pointer;
  background: none; border: none; text-decoration: underline;
}
.ord-result-new:hover { color: var(--m2); }

.ord-result-text {
  font-size: .85rem; line-height: 1.65; color: var(--m2);
  text-align: left; margin: 0 0 1.2rem;
}
#ip .ord-result-text { color: var(--lt2); }

/* Loading spinner v tlačítku */
.ord-next.loading { opacity: .7; pointer-events: none; }
.ord-next.loading::after {
  content: ''; display: inline-block; width: 14px; height: 14px;
  border: 2px solid rgba(17,17,25,.4); border-top-color: var(--b);
  border-radius: 50%; animation: spin .7s linear infinite;
  margin-left: .6rem; vertical-align: middle;
}
@keyframes spin { to { transform: rotate(360deg); } }

/* Sell result — BTC adresa */
.ord-addr-copy input {
  flex: 1; font-size: .75rem; font-family: monospace;
  background: var(--b2, #16161e); border: 1px solid var(--border);
  border-radius: var(--r); padding: .4rem .6rem; color: var(--w);
}

/* IP stránka — light theme overrides */
#ip .ord-summary { background: var(--l1); border-color: var(--lb); }
#ip .ord-sum-row { border-bottom-color: var(--lb); }
#ip .ord-sum-lbl { color: var(--lt2); }
#ip .ord-sum-val { color: var(--lt); }
#ip .ord-currency { background: var(--l2); border-color: var(--lb); color: var(--lt2); }
#ip .ord-swap { border-color: var(--lb); color: var(--lt2); }
#ip .ord-result-box { background: var(--l1); border-color: var(--lb); }

/* QR kód pro BTC platbu */
.ord-qr-wrap {
  text-align: center;
  margin: 1.2rem 0 .5rem;
}
.ord-qr-lbl {
  font-size: .75rem;
  color: var(--m2);
  margin-bottom: .75rem;
  letter-spacing: .03em;
}
.ord-qr {
  display: inline-block;
  padding: 16px;
  background: #fff;
  line-height: 0;
}
.ord-qr img, .ord-qr canvas {
  display: block;
  border-radius: 4px;
}
.ord-sell-loading {
  font-size: .8rem;
  color: var(--m2);
  text-align: center;
  padding: .8rem 0;
  animation: pulse 1.5s ease-in-out infinite;
}
@keyframes pulse { 0%,100%{opacity:.5} 50%{opacity:1} }

/* ── Přepracovaný souhrn objednávky ── */
.ord-sum-type-badge {
  font-size: .65rem; font-weight: 700; letter-spacing: .12em;
  text-transform: uppercase; color: var(--y);
  display: flex; align-items: center; gap: .4rem;
  margin-bottom: 1.2rem;
}
.ord-sum-type-badge::before {
  content: ''; width: 14px; height: 2px; background: var(--y);
}
.ord-sum-field {
  margin-bottom: 1rem;
}
.ord-sum-field-lbl {
  font-size: .65rem; font-weight: 500; letter-spacing: .1em;
  text-transform: uppercase; color: var(--m); margin-bottom: .3rem;
}
.ord-sum-field-val {
  font-size: .9rem; color: var(--w); font-weight: 300;
}
.ord-sum-total {
  font-size: 1.35rem; font-weight: 300; color: var(--w);
  letter-spacing: -.02em; line-height: 1.2;
}
.ord-sum-rate-note {
  font-size: .68rem; color: var(--m); text-transform: uppercase;
  letter-spacing: .06em; line-height: 1.5; margin-top: .5rem;
}

/* ── Tlačítko Kontrola objednávky ── */
.ord-check-order-btn {
  display: flex; align-items: center; justify-content: center;
  gap: .5rem; width: 100%; margin-top: .75rem;
  background: none; border: 1px solid var(--border);
  border-radius: var(--r2); padding: .7rem 1rem;
  font-size: .72rem; font-weight: 500; letter-spacing: .09em;
  text-transform: uppercase; color: var(--m2); cursor: pointer;
  transition: all .18s;
}
.ord-check-order-btn:hover { border-color: var(--y); color: var(--y); }
.ord-check-order-btn svg { width: 15px; height: 15px; flex-shrink: 0; }

/* ── Lookup header ── */
.ord-lookup-header {
  display: flex; align-items: center;
  justify-content: space-between; margin-bottom: 1.4rem;
}
.ord-lookup-badge {
  display: flex; align-items: center; gap: .4rem;
  font-size: .68rem; font-weight: 600; letter-spacing: .1em;
  text-transform: uppercase; color: var(--m2);
}
.ord-lookup-badge svg { width: 14px; height: 14px; }
.ord-lookup-lbl { text-transform: uppercase; font-size: .68rem; letter-spacing: .1em; }
.ord-lookup-hint {
  font-size: .75rem; color: var(--m); margin: .5rem 0 .8rem; line-height: 1.5;
}
.ord-lookup-input { text-transform: uppercase; letter-spacing: .05em; font-family: monospace; }

/* ── Status výsledek ── */
.ord-status-meta {
  display: flex; gap: 1.5rem; margin-bottom: 1rem; flex-wrap: wrap;
}
.ord-status-meta-item { }
.ord-status-meta-lbl {
  font-size: .62rem; font-weight: 600; letter-spacing: .1em;
  color: var(--m); text-transform: uppercase; margin-bottom: .2rem;
}
.ord-status-meta-val { font-size: .85rem; color: var(--w); font-weight: 400; }
.ord-status-addr-row { margin-bottom: .8rem; }
.ord-status-addr-lbl {
  font-size: .62rem; font-weight: 600; letter-spacing: .1em;
  color: var(--m); text-transform: uppercase; margin-bottom: .2rem;
}
.ord-status-addr-val {
  font-size: .8rem; color: var(--w); font-family: monospace;
  word-break: break-all; line-height: 1.5;
}
.ord-status-divider { height: 1px; background: var(--border); margin: .9rem 0; }
/* Kontrola objednávky — nadpis bloku s platebními údaji (nezaplacený prodej) */
.ord-check-pay-title {
  font-size: .92rem; font-weight: 500; color: var(--w);
  margin: 0 0 .9rem; letter-spacing: -.01em;
}
.ord-status-state-lbl {
  font-size: .75rem; color: var(--m2); margin-bottom: .3rem;
}
.ord-status-state-val {
  font-size: 1.4rem; font-weight: 300; letter-spacing: -.02em;
  margin-bottom: 1.2rem;
}
.ord-status-bottom {
  display: flex; justify-content: space-between; align-items: flex-end;
  gap: 1rem; flex-wrap: wrap;
}
.ord-status-amount {
  font-size: 1.3rem; font-weight: 400; color: var(--w);
  letter-spacing: -.02em;
}
.ord-status-paynum {
  font-size: 1.1rem; font-weight: 400; color: var(--w);
  letter-spacing: -.01em; text-align: right;
}

/* ── Stav platby banner ── */
.ord-payment-status {
  display: flex; align-items: center; gap: .6rem;
  padding: .75rem 1rem; border-radius: var(--r2);
  font-size: .85rem; font-weight: 400; margin: .8rem 0;
}
.ord-payment-status svg { width: 18px; height: 18px; flex-shrink: 0; }
.ord-payment-ok  { background: rgba(82,196,138,.12); color: #52c48a; border: 1px solid rgba(82,196,138,.25); }
.ord-payment-err { background: rgba(224,92,92,.10); color: #e05c5c; border: 1px solid rgba(224,92,92,.25); }

/* Skryj reCAPTCHA badge — v3 je neviditelná, zmínka je v textu formuláře */
.grecaptcha-badge { visibility: hidden !important; }


/* ── Standalone stránky (/cs-cz/account-deletion/, /en-cz/account-deletion/,
   /cs-cz/ochrana-osobnich-udaju/) ──────────────────────────────────────
   Používají sjednocenou strukturu z /legal/#ip:
   .rekl-hdr.rekl-hdr-light → header (white bg, dark logo)
   .sec.sec-light → content area (#fafafa bg)
   .wrap → centering container
   .back-link → small gray "← Zpět" link
   .sec-lbl → yellow uppercase label s dash prefixem (— IP WBTCB SOLUTIONS, S.R.O.)
   .sec-title → big light/thin H1
   Plus typografie pro inner content přes .page-text. */

body.page-light {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

/* Vystředění inner content (sec-lbl, page-text) na max-width 760px
   — stejně jako .rekl-content na /reklamace/ a /legal/. */
.sec-light .wrap > .sec-lbl,
.sec-light .wrap > .page-text {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

/* Inner content typografie */
.page-text {
  color: var(--lt2);
  font-size: .95rem;
  line-height: 1.7;
}
.page-text h2 {
  font-family: var(--font);
  font-weight: 500;
  font-size: 1.3rem;
  color: var(--lt);
  margin: 2.4rem 0 1rem;
  letter-spacing: -.005em;
}
.page-text h2:first-child { margin-top: 1.5rem; }
.page-text h3 {
  font-family: var(--font);
  font-weight: 500;
  font-size: 1.05rem;
  color: var(--lt);
  margin: 1.8rem 0 .6rem;
  letter-spacing: -.005em;
}
.page-text p { margin: 0 0 1rem; }
.page-text ul, .page-text ol { margin: .8rem 0 1.2rem; padding-left: 1.5rem; }
.page-text ul ul { margin: .4rem 0 .6rem; list-style-type: circle; }
.page-text li { margin-bottom: .35rem; }
.page-text strong { color: var(--lt); font-weight: 600; }
.page-text a {
  color: var(--lt);
  text-decoration: underline;
  text-decoration-color: var(--y);
  text-underline-offset: 3px;
  transition: color .2s;
  word-break: break-word;
}
.page-text a:hover { color: var(--y); }

/* App card — white box uvnitř page-text (account-deletion) */
.page-card {
  background: var(--w);
  border-radius: var(--r);
  padding: 1.4rem 1.6rem;
  margin: 1rem 0 2rem;
  box-shadow: 0 1px 3px rgba(0,0,0,.04);
}
.page-card h3 { margin-top: 0; }
.page-links { list-style: none; padding: 0; margin: .4rem 0 0; }
.page-links li { font-size: .95rem; line-height: 2; color: var(--lt2); }

/* Footer */
.page-ft {
  background: var(--w);
  border-top: 1px solid rgba(0,0,0,.06);
  padding: 1.6rem 2rem;
  text-align: center;
  font-size: .82rem;
  color: var(--lt2);
}

@media (max-width: 600px) {
  .page-text h2 { font-size: 1.15rem; margin-top: 2rem; }
  .page-text h3 { font-size: 1rem; }
  .page-card { padding: 1.2rem 1.3rem; }
}


/* ── Rich content v rozbalovacích sekcích dokumentů ── */
.acc-desc { margin-bottom: 1rem; line-height: 1.65; color: var(--m2); font-size: .9rem; }
.acc-desc h4 {
  /* Stejný styl jako sec-title — Red Hat Pro, light, narrow — ale menší */
  font-family: var(--font);
  font-weight: 300;
  font-size: 1.05rem;
  letter-spacing: -.005em;
  color: #c8c8d0;
  margin: 1.5rem 0 .55rem;
  line-height: 1.25;
}
.acc-desc h4:first-child { margin-top: 0; }
.acc-desc p { margin: .55rem 0; }
.acc-desc ul, .acc-desc ol { margin: .5rem 0 .8rem; padding-left: 1.4rem; }
.acc-desc li { margin: .25rem 0; }
.acc-desc strong { color: #d6d6dc; font-weight: 500; }
.acc-desc em { color: var(--m); font-style: italic; }
/* Světlá varianta pro IP sekci */
#ip .acc-desc { color: var(--lt2); }
#ip .acc-desc h4 { color: #2a2a35; }
#ip .acc-desc strong { color: #1a1a22; }

/* ── Seznam v info boxu ── */
.svc-list { margin: .3rem 0 0; padding-left: 1.2rem; color: var(--m2); font-size: .9rem; }
.svc-list li { margin: .2rem 0; }
.lnk-y { color: var(--y); text-decoration: none; transition: opacity .18s; }
.lnk-y:hover { opacity: .7; }

/* Inline ikony v textu sekcí dokumentů */
.acc-desc .acc-icn {
  width: 14px; height: 14px;
  display: inline-block;
  vertical-align: middle;
  margin-right: .35rem;
  color: var(--y);
}
.acc-desc li .acc-icn { margin-left: .15rem; }

/* Kontaktní odkazy v sekcích dokumentů — styl jako v patičce */
.acc-desc .acc-clnk {
  color: var(--w);
  text-decoration: none;
  transition: color .18s;
}
.acc-desc .acc-clnk:hover { color: var(--y); }

/* Tichý inline odkaz — vypadá jako běžný text, jen je klikatelný */
.acc-desc .lnk-quiet {
  color: inherit;
  text-decoration: none;
  cursor: pointer;
}
.acc-desc .lnk-quiet:hover { color: var(--y); }

/* Ikony telefonu/mailu v patičce */
.ft-links li { display: flex; align-items: center; gap: .45rem; }
.ft-icn {
  width: 14px; height: 14px;
  flex-shrink: 0;
  color: inherit;
  opacity: .85;
}



.sec-sub {
  font-size: 1rem; color: var(--m2); margin-bottom: 2rem;
}
#ip .sec-sub { color: var(--lt2); }

.rekl-content { max-width: 760px; }
.rekl-text { font-size: .92rem; line-height: 1.7; color: var(--m2); }
.rekl-text h4 {
  font-family: var(--font);
  font-weight: 300; font-size: 1.05rem;
  color: #c8c8d0; margin: 1.5rem 0 .55rem;
  line-height: 1.25; letter-spacing: -.005em;
}
.rekl-text p { margin: .55rem 0; }
.rekl-text ul, .rekl-text ol { margin: .5rem 0 .8rem; padding-left: 1.4rem; }
.rekl-text li { margin: .25rem 0; }
.rekl-text strong { color: #d6d6dc; font-weight: 500; }

#ip .rekl-text { color: var(--lt2); }
#ip .rekl-text h4 { color: #2a2a35; }
#ip .rekl-text strong { color: #1a1a22; }

/* ── Stránka /reklamace — vlastní header (nezávislý na main SPA) ── */
.rekl-hdr {
  background: var(--b);
  border-bottom: 1px solid var(--border);
  position: sticky; top: 0; z-index: 200;
}
.rekl-hdr-light {
  background: #fafafa;
  border-bottom: 1px solid var(--lb, #e5e5ea);
}
.rekl-hdr-inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: .85rem 1.5rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
}
.rekl-hdr-logo { flex-shrink: 0; display: inline-block; }
.rekl-hdr-logo img { height: 28px; display: block; }

/* Vystředění celého bloku reklamace */
.sec-light .wrap > .back-link,
.sec-light .wrap > .sec-lbl,
.sec-light .wrap > .sec-title,
.sec-light .wrap > .sec-sub,
.sec-light .wrap > .rekl-content,
#cz .sec .wrap > .back-link,
#cz .sec .wrap > .sec-lbl,
#cz .sec .wrap > .sec-title,
#cz .sec .wrap > .sec-sub,
#cz .sec .wrap > .rekl-content {
  max-width: 760px;
  margin-left: auto;
  margin-right: auto;
}

.back-link {
  display: inline-flex; align-items: center; gap: .35rem;
  font-size: .82rem; color: var(--m2); text-decoration: none;
  margin-bottom: 1.5rem; transition: color .18s;
}
.back-link:hover { color: var(--y); }
#ip .back-link { color: var(--lt2, #555); }
#ip .back-link:hover { color: var(--y); }

.sec-sub { font-size: 1rem; color: var(--m2); margin: -.3rem 0 1.8rem; }
#ip .sec-sub { color: var(--lt2, #555); }
.sec-sub strong {
  font-family: var(--font);
  color: var(--w);
  font-weight: 400;
  letter-spacing: -.005em;
}
#ip .sec-sub strong { color: #1a1a22; }

.sec-light {
  background: #fafafa;
  color: #1a1a22;
  min-height: calc(100vh - 60px);
  /* Použijeme padding-top/bottom samostatně, abychom NEPŘEPISOVALI
     horizontal padding z .sec (2.5rem default / 2rem na <960px / 1.5rem na <480px). */
  padding-top: 2.5rem;
  padding-bottom: 4rem;
}

.rekl-content { max-width: 760px; }

.rekl-text { font-size: .92rem; line-height: 1.7; color: var(--m2); }
.rekl-text h4 {
  font-family: var(--font);
  font-weight: 300; font-size: 1.15rem;
  color: #c8c8d0;
  margin: 1.6rem 0 .55rem;
  line-height: 1.25; letter-spacing: -.005em;
}
.rekl-text p { margin: .55rem 0; }
.rekl-text ul, .rekl-text ol { margin: .5rem 0 .8rem; padding-left: 1.4rem; }
.rekl-text li { margin: .25rem 0; }
.rekl-text strong { color: #d6d6dc; font-weight: 500; }

#ip .rekl-text { color: var(--lt2, #555); }
#ip .rekl-text h4 { color: #2a2a35; }
#ip .rekl-text strong { color: #1a1a22; }

/* ── Formulář reklamace ── */
.rekl-form-wrap {
  margin-top: .5rem;
  max-width: 760px;
}

.rekl-form-title {
  font-family: var(--font);
  font-weight: 300;
  font-size: clamp(1.3rem, 2.2vw, 1.7rem);
  color: var(--w);
  margin-bottom: .4rem;
  letter-spacing: -.005em;
  line-height: 1.2;
}
#ip .rekl-form-title { color: #1a1a22; }

.rekl-form-hint {
  font-size: .85rem;
  color: var(--m2);
  margin-bottom: 1.8rem;
  letter-spacing: 0;
}
#ip .rekl-form-hint { color: var(--lt2, #555); }

.rekl-form { font-family: var(--font); }
.rekl-form .fg { display: flex; flex-direction: column; margin-bottom: 1.1rem; }
.rekl-form .fl {
  font-family: var(--font);
  font-size: .8rem;
  color: var(--m2);
  margin-bottom: .35rem;
  font-weight: 400;
  letter-spacing: .01em;
  text-transform: uppercase;
}
#ip .rekl-form .fl { color: #555; }

.rekl-form .fi {
  background: var(--b2, #1a1a22);
  border: 1px solid var(--border);
  border-radius: var(--r);
  padding: .62rem .85rem;
  color: var(--w);
  font-size: .92rem;
  font-family: var(--font);
  font-weight: 300;
  letter-spacing: -.005em;
  transition: border-color .18s, background .18s;
}
.rekl-form .fi:focus {
  outline: none;
  border-color: var(--y);
  background: rgba(255, 199, 0, 0.05);
}
.rekl-form textarea.fi { resize: vertical; min-height: 120px; line-height: 1.5; }
.rekl-form select.fi { cursor: pointer; }

#ip .rekl-form .fi {
  background: #fff;
  border-color: #d8d8de;
  color: #1a1a22;
}
#ip .rekl-form .fi:focus { border-color: var(--y); background: #fffdf5; }

.rekl-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem;
}
@media (max-width: 640px) {
  .rekl-form-row { grid-template-columns: 1fr; gap: 0; }
}

.rekl-form-btn {
  margin-top: .5rem;
  min-width: 200px;
  border-radius: var(--r) !important;
  font-family: var(--font);
  font-weight: 500;
  letter-spacing: .01em;
}

.rekl-form-err {
  color: #e53935;
  font-size: .85rem;
  margin: .5rem 0;
  min-height: 1.2em;
}
.rekl-form-ok {
  color: #2e7d32;
  font-size: .92rem;
  margin: 1rem 0;
  padding: .8rem 1rem;
  background: rgba(46, 125, 50, 0.1);
  border-left: 3px solid #2e7d32;
  border-radius: var(--r);
  min-height: 0;
}
.rekl-form-ok:empty { display: none; }

/* Nápověda pod inputem */
.fl-hint {
  display: block;
  font-size: .76rem;
  color: var(--m2);
  margin-top: .35rem;
  opacity: .75;
  text-transform: none;
  letter-spacing: 0;
  font-weight: 300;
}
#ip .fl-hint { color: var(--lt2, #666); }

/* File input — stejný styl jako ostatní pole */
.rekl-form input[type=file].fi {
  padding: .5rem .85rem;
  cursor: pointer;
  font-size: .85rem;
}
.rekl-form input[type=file].fi::file-selector-button {
  background: var(--y);
  color: #111;
  border: none;
  padding: .4rem .85rem;
  border-radius: var(--r);
  margin-right: .85rem;
  font-weight: 500;
  cursor: pointer;
  font-family: var(--font);
  letter-spacing: .01em;
  font-size: .82rem;
  transition: opacity .18s;
}
.rekl-form input[type=file].fi::file-selector-button:hover { opacity: .85; }

/* Nápověda pod inputem */
.fl-hint {
  display: block;
  font-size: .76rem;
  color: var(--m2);
  margin-top: .35rem;
  opacity: .75;
}
#ip .fl-hint { color: var(--lt2, #666); }

/* File input — stejný styl jako ostatní pole */
.rekl-form input[type=file].fi {
  padding: .5rem .85rem;
  cursor: pointer;
  font-size: .85rem;
}
.rekl-form input[type=file].fi::file-selector-button {
  background: var(--y);
  color: #111;
  border: none;
  padding: .4rem .85rem;
  border-radius: 6px;
  margin-right: .85rem;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  font-size: .85rem;
  transition: opacity .18s;
}
.rekl-form input[type=file].fi::file-selector-button:hover { opacity: .85; }

/* ── wBTCb sekce — mřížka 2×3 (3 řádky × 2 sloupce) ── */
.svc-grid-cz {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1.5rem;
  align-items: stretch;
}
.svc-grid-cz > .svc {
  height: 100%;
  margin: 0;
}
.btm-img-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  min-height: 100%;
}
.btm-img-wrap img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}
@media (max-width: 800px) {
  .svc-grid-cz { grid-template-columns: 1fr; gap: 1.2rem; }
  .btm-img-wrap { min-height: 240px; }
  .btm-img-wrap img { max-height: 240px; }
}

/* ════════════════════════════════════════════════════════════
   News — strip on homepage + listing + detail page
   ════════════════════════════════════════════════════════════ */

/* ── News strip head (above cards on homepage) ──────────────── */
.sec-news{padding-top:3rem}
.news-strip-head{
  display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:1rem;
  margin-bottom:2rem;
}
.news-strip-head .sec-title{margin:0}
.news-strip-all{
  color:var(--y);text-decoration:none;font-size:.95rem;font-weight:400;
  transition:opacity var(--trans);white-space:nowrap;
}
.news-strip-all:hover{opacity:.7}

/* ── News card grid (strip + listing both use it) ───────────── */
.news-strip-grid,
.news-grid{
  display:grid;grid-template-columns:repeat(3, 1fr);gap:1.5rem;
}

/* ── Single news card (default = dark theme — CZ section) ───── */
.news-card{
  display:flex;flex-direction:column;
  background:var(--b2);border:1px solid var(--border);border-radius:var(--r2);
  overflow:hidden;text-decoration:none;color:inherit;
  transition:border-color var(--trans), transform var(--trans);
}
.news-card:hover{border-color:var(--by);transform:translateY(-2px)}

.news-card-image{
  aspect-ratio:16/9;background:var(--b3);overflow:hidden;
}
.news-card-image img{
  width:100%;height:100%;object-fit:cover;display:block;
  transition:transform .35s ease;
}
.news-card:hover .news-card-image img{transform:scale(1.04)}

.news-card-image-placeholder{
  display:flex;align-items:center;justify-content:center;color:var(--m);
}
.news-card-image-placeholder svg{width:48px;height:48px;opacity:.4}

.news-card-body{
  padding:1.1rem 1.3rem 1.4rem;display:flex;flex-direction:column;gap:.5rem;flex:1;
}
.news-card-date{
  color:var(--m);font-size:.82rem;font-weight:400;letter-spacing:.02em;
}
.news-card-title{
  font-size:1.1rem;font-weight:400;line-height:1.35;margin:0;color:var(--w);
}
.news-card-excerpt{
  color:var(--m2);font-size:.92rem;line-height:1.6;margin:.2rem 0 0;
}

/* ── Light theme override — for #ip homepage section AND page-light listing ─ */
#ip .news-card,
body.page-light .news-card{
  background:#fff;
  border-color:var(--lb, #e8e6e0);
}
#ip .news-card:hover,
body.page-light .news-card:hover{
  border-color:rgba(255,199,0,.5);
}
#ip .news-card-image,
body.page-light .news-card-image{background:var(--l1, #f5f4f0)}
#ip .news-card-image-placeholder,
body.page-light .news-card-image-placeholder{color:#a0a0b8}
#ip .news-card-title,
body.page-light .news-card-title{color:var(--lt, #111119)}
#ip .news-card-date,
body.page-light .news-card-date{color:var(--lt2, #5c5c6e)}
#ip .news-card-excerpt,
body.page-light .news-card-excerpt{color:var(--lt2, #5c5c6e)}

/* ── Responsive grids ───────────────────────────────────────── */
@media(max-width:960px){
  .news-strip-grid,
  .news-grid{grid-template-columns:repeat(2, 1fr);gap:1.2rem}
}
@media(max-width:600px){
  .news-strip-grid,
  .news-grid{grid-template-columns:1fr;gap:1rem}
  .news-strip-head{flex-direction:column;align-items:flex-start;gap:.4rem}
}

/* ── /novinky/ listing page extras ──────────────────────────── */
.news-empty{
  text-align:center;padding:4rem 0;color:var(--lt2, #5c5c6e);font-size:1rem;
}
.news-load-more-wrap{text-align:center;margin-top:2.5rem}
.btn-load-more{
  background:transparent;border:1px solid var(--lb, #e8e6e0);color:var(--lt, #111119);
  padding:.8rem 1.8rem;border-radius:var(--r);font-size:.92rem;letter-spacing:.05em;
  cursor:pointer;transition:border-color var(--trans), color var(--trans);
  font-family:inherit;text-transform:uppercase;
}
.btn-load-more:hover{border-color:var(--y);color:var(--y)}
.btn-load-more:disabled{opacity:.5;cursor:not-allowed}

/* ── /novinky/<slug> detail page ────────────────────────────── */

.news-detail-date{
  display:block;color:var(--lt2, #5c5c6e);font-size:.9rem;margin:-.4rem 0 .8rem;
}

.news-detail-hero{
  margin:1.5rem auto 2rem;border-radius:var(--r2);overflow:hidden;
  background:var(--l1, #f5f4f0);max-width:760px;
}
.news-detail-hero img{width:100%;height:auto;display:block}

.news-detail-body{
  font-size:1.05rem;line-height:1.75;color:#2a2a35;
}
.news-detail-body > * + *{margin-top:1.2rem}
.news-detail-body h1,
.news-detail-body h2,
.news-detail-body h3,
.news-detail-body h4{
  font-weight:400;line-height:1.3;letter-spacing:-.01em;color:var(--lt, #111119);
  margin-top:2.2rem;
}
.news-detail-body h1{font-size:1.7rem}
.news-detail-body h2{font-size:1.4rem}
.news-detail-body h3{font-size:1.18rem}
.news-detail-body h4{font-size:1.05rem}
.news-detail-body p{margin:0}
.news-detail-body a{color:var(--y);text-decoration:underline;text-underline-offset:3px}
.news-detail-body a:hover{text-decoration:none}
.news-detail-body strong{font-weight:500;color:var(--lt, #111119)}
.news-detail-body em{font-style:italic}
.news-detail-body ul,
.news-detail-body ol{padding-left:1.4rem;margin:0}
.news-detail-body li{margin:.3rem 0}
.news-detail-body blockquote{
  border-left:3px solid var(--y);padding:.5rem 0 .5rem 1.2rem;
  color:var(--lt2, #5c5c6e);font-style:italic;margin:0;
}
.news-detail-body code{
  background:rgba(0,0,0,.05);padding:.1em .35em;border-radius:3px;font-size:.92em;
}
.news-detail-body pre{
  background:#1d1d26;color:#e0e0e8;padding:1rem 1.2rem;border-radius:var(--r);
  overflow-x:auto;font-size:.88rem;line-height:1.6;
}
.news-detail-body pre code{background:transparent;padding:0;color:inherit}
.news-detail-body img{max-width:100%;height:auto;border-radius:var(--r);margin:1.2rem 0}
.news-detail-body hr{
  border:none;border-top:1px solid var(--lb, #e8e6e0);margin:2rem 0;
}

.news-detail-footer{
  margin-top:3rem !important;padding-top:2rem;
  border-top:1px solid var(--lb, #e8e6e0);
}

@media(max-width:720px){
  .news-detail-body{font-size:1rem}
}

/* ════════════════════════════════════════════════════════════
   News admin UI (/novinky/admin/)
   ════════════════════════════════════════════════════════════ */

/* ── Layout ─────────────────────────────────────────────────── */
.adm-sec{padding-top:2rem;padding-bottom:4rem;width:100%}
.adm-wrap{max-width:1280px}
.adm-view{animation:fade-in .2s ease}
/* Pojistka: admin obsah vždy plná šířka .adm-wrap — nikdy nedědit
   centrování/max-width z pravidel pro .sec-light .wrap (právní stránky). */
.adm-wrap > .adm-modswitch,
.adm-wrap > #module-news,
.adm-wrap > #module-faq,
.adm-sec .adm-view{max-width:none;margin-left:0;margin-right:0}
@keyframes fade-in{from{opacity:0}to{opacity:1}}

/* Header right (user info) */
.adm-hdr-right{display:flex;align-items:center;gap:1.2rem}
.adm-user{
  font-size:.82rem;color:var(--lt2, #5c5c6e);
  font-family:'Red Hat Mono', monospace;
}

/* ── Toolbar ────────────────────────────────────────────────── */
.adm-toolbar{
  display:flex;align-items:center;justify-content:space-between;
  margin-bottom:2rem;gap:1rem;flex-wrap:wrap;
}
.adm-toolbar-actions{display:flex;gap:.6rem}
.adm-h1{
  font-size:1.6rem;font-weight:300;letter-spacing:-.02em;margin:0;
  color:var(--lt, #111119);
}
.adm-h2{
  font-size:1rem;font-weight:500;margin:0 0 .4rem;color:var(--lt, #111119);
}
.adm-hint{
  font-size:.85rem;color:var(--lt2, #5c5c6e);margin:0 0 .8rem;line-height:1.5;
}
.adm-hint-sm{
  font-size:.75rem;color:var(--lt2, #8a8a9c);margin:.2rem 0 0;display:block;
}

/* ── Buttons ────────────────────────────────────────────────── */
.adm-btn{
  background:transparent;border:1px solid var(--lb, #e8e6e0);
  color:var(--lt, #111119);padding:.55rem 1.2rem;border-radius:var(--r);
  font-size:.88rem;font-family:inherit;cursor:pointer;
  transition:border-color .18s, color .18s, background .18s;
}
.adm-btn:hover{border-color:#999;}
.adm-btn:disabled{opacity:.5;cursor:not-allowed}
.adm-btn-primary{
  background:var(--y);border-color:var(--y);color:var(--b);font-weight:500;
}
.adm-btn-primary:hover{background:#e6b300;border-color:#e6b300}
.adm-btn-sm{padding:.32rem .7rem;font-size:.78rem}
.adm-btn-danger{
  border-color:rgba(220,53,69,.4);color:#dc3545;
}
.adm-btn-danger:hover{border-color:#dc3545;background:rgba(220,53,69,.05)}
.adm-btn-danger-confirm{
  background:#dc3545;border-color:#dc3545;color:#fff;font-weight:500;
}
.adm-btn-danger-confirm:hover{background:#c82333;border-color:#c82333;color:#fff}

/* ── Status pills ────────────────────────────────────────────── */
.adm-pill{
  display:inline-block;padding:.18rem .55rem;border-radius:99px;
  font-size:.72rem;font-weight:500;letter-spacing:.03em;
  text-transform:uppercase;line-height:1.2;
}
.adm-pill.st-visible{background:rgba(40,167,69,.12);color:#1e7a35}
.adm-pill.st-hidden{background:rgba(108,117,125,.12);color:#5a6268}
.adm-pill.st-scheduled{background:rgba(255,199,0,.18);color:#9e7a00}
.adm-pill.st-expired{background:rgba(220,53,69,.12);color:#a82838}

/* ── Tags (companies in list) ────────────────────────────────── */
.adm-tag{
  display:inline-block;padding:.15rem .45rem;border-radius:3px;
  background:rgba(0,0,0,.05);font-size:.72rem;font-weight:500;
  text-transform:uppercase;letter-spacing:.04em;color:var(--lt2, #5c5c6e);
  margin-right:.3rem;
}

/* ── Loading / error / empty ─────────────────────────────────── */
.adm-loading{padding:3rem 0;text-align:center;color:var(--lt2, #5c5c6e)}
.adm-error{
  padding:.9rem 1.1rem;background:rgba(220,53,69,.08);
  border:1px solid rgba(220,53,69,.3);border-radius:var(--r);
  color:#a82838;margin-bottom:1.2rem;font-size:.9rem;
}
.adm-error ul{margin:.4rem 0 0;padding-left:1.4rem}
.adm-empty{
  padding:4rem 1rem;text-align:center;color:var(--lt2, #5c5c6e);
  border:1px dashed var(--lb, #e8e6e0);border-radius:var(--r2);
}

/* ── List table ──────────────────────────────────────────────── */
.adm-table{
  width:100%;border-collapse:collapse;background:#fff;
  border:1px solid var(--lb, #e8e6e0);border-radius:var(--r2);
  overflow:hidden;
}
.adm-table th{
  text-align:left;padding:.8rem 1rem;font-weight:500;font-size:.78rem;
  text-transform:uppercase;letter-spacing:.06em;color:var(--lt2, #5c5c6e);
  background:#fafafa;border-bottom:1px solid var(--lb, #e8e6e0);
}
.adm-table td{
  padding:.85rem 1rem;border-bottom:1px solid #f0efea;vertical-align:top;
  font-size:.92rem;
}
.adm-table tr:last-child td{border-bottom:none}
.adm-table tr:hover td{background:#fafafa}

.adm-table .col-status{width:110px}
.adm-table .col-companies{width:140px}
.adm-table .col-date{width:140px;font-size:.85rem;color:var(--lt2, #5c5c6e);font-family:'Red Hat Mono', monospace}
.adm-table .col-author{width:200px;font-size:.82rem;color:var(--lt2, #5c5c6e);font-family:'Red Hat Mono', monospace}
.adm-table .col-actions{width:170px;text-align:right;white-space:nowrap}
.adm-table .col-actions .adm-btn{margin-left:.3rem}
.adm-table .col-order{width:96px;white-space:nowrap}
.adm-table .col-order .adm-btn{margin-right:.25rem}

.adm-title{font-weight:500;color:var(--lt, #111119)}
.adm-slug-small{
  font-family:'Red Hat Mono', monospace;font-size:.74rem;
  color:var(--lt2, #8a8a9c);margin-top:.18rem;
}

/* ── Form ────────────────────────────────────────────────────── */
.adm-form{
  background:#fff;border:1px solid var(--lb, #e8e6e0);border-radius:var(--r2);
  padding:1.8rem 2rem;
}
.adm-section{
  padding:1.8rem 0;border-top:1px solid #f0efea;
}
.adm-section:first-of-type{padding-top:0;border-top:none}

.adm-field{display:flex;flex-direction:column;margin-bottom:1rem}
.adm-label{
  font-size:.85rem;font-weight:500;margin-bottom:.4rem;color:var(--lt, #111119);
}
.adm-label .req{color:#dc3545;font-weight:400}

.adm-field input[type=text],
.adm-field input[type=datetime-local],
.adm-field textarea,
.adm-form input[type=text],
.adm-form input[type=datetime-local],
.adm-form textarea{
  width:100%;padding:.55rem .8rem;border:1px solid var(--lb, #e8e6e0);
  border-radius:var(--r);font-family:inherit;font-size:.95rem;
  color:var(--lt, #111119);background:#fafafa;
  transition:border-color .18s, background .18s;
  box-sizing:border-box;
}
.adm-field input:focus,
.adm-field textarea:focus,
.adm-form input:focus,
.adm-form textarea:focus{
  outline:none;border-color:var(--y);background:#fff;
}
.adm-field textarea,
.adm-form textarea{resize:vertical;font-family:'Red Hat Mono', monospace;line-height:1.6}
.adm-mono{font-family:'Red Hat Mono', monospace !important}

/* ── Language tabs ───────────────────────────────────────────── */
.adm-tabs{
  display:flex;gap:.2rem;border-bottom:1px solid var(--lb, #e8e6e0);
  margin-bottom:1.2rem;
}
.adm-tab{
  background:none;border:none;border-bottom:2px solid transparent;
  padding:.6rem 1rem;font-family:inherit;font-size:.9rem;
  color:var(--lt2, #5c5c6e);cursor:pointer;transition:all .18s;
  margin-bottom:-1px;
}
.adm-tab:hover{color:var(--lt, #111119)}
.adm-tab.on{
  color:var(--lt, #111119);border-bottom-color:var(--y);font-weight:500;
}
.adm-tab-panel{display:none}
.adm-tab-panel.on{display:block}

/* ── Markdown editor (textarea + live preview) ───────────────── */
.adm-md-cols{
  display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:.6rem;
}
.adm-md-cols textarea{min-height:380px;font-size:.92rem}
.adm-md-preview{
  border:1px solid var(--lb, #e8e6e0);border-radius:var(--r);
  padding:.8rem 1.1rem;background:#fff;overflow-y:auto;
  font-size:.95rem;line-height:1.7;color:#2a2a35;min-height:380px;max-height:600px;
}
.adm-md-preview.empty{color:var(--lt2, #a0a0b8);font-style:italic;font-size:.88rem}
.adm-md-preview h1{font-size:1.4rem;font-weight:400;margin:0 0 .5rem}
.adm-md-preview h2{font-size:1.2rem;font-weight:400;margin:1rem 0 .4rem}
.adm-md-preview h3{font-size:1.05rem;font-weight:500;margin:.8rem 0 .3rem}
.adm-md-preview p{margin:.5rem 0}
.adm-md-preview a{color:var(--y);text-decoration:underline}
.adm-md-preview strong{font-weight:500}
.adm-md-preview ul,.adm-md-preview ol{padding-left:1.4rem;margin:.4rem 0}
.adm-md-preview li{margin:.15rem 0}
.adm-md-preview code{background:rgba(0,0,0,.05);padding:.1em .3em;border-radius:3px;font-size:.88em}
.adm-md-preview pre{background:#1d1d26;color:#e0e0e8;padding:.8rem 1rem;border-radius:var(--r);overflow-x:auto;font-size:.82rem}
.adm-md-preview pre code{background:transparent;padding:0;color:inherit}
.adm-md-preview blockquote{border-left:3px solid var(--y);padding:.3rem 0 .3rem 1rem;color:var(--lt2);font-style:italic;margin:.5rem 0}
.adm-md-preview img{max-width:100%;height:auto;border-radius:var(--r);margin:.6rem 0}
.adm-md-preview hr{border:none;border-top:1px solid var(--lb, #e8e6e0);margin:1.2rem 0}

@media(max-width:900px){
  .adm-md-cols{grid-template-columns:1fr}
}

/* ── Image drop area ─────────────────────────────────────────── */
.adm-image-drop{
  position:relative;border:2px dashed var(--lb, #d8d6d0);border-radius:var(--r2);
  background:#fafafa;cursor:pointer;transition:border-color .18s, background .18s;
  min-height:160px;display:flex;align-items:center;justify-content:center;
}
.adm-image-drop:hover{border-color:var(--y);background:rgba(255,199,0,.04)}
.adm-image-drop.dragover{border-color:var(--y);background:rgba(255,199,0,.08)}
.adm-image-drop.loading{opacity:.6;pointer-events:none}
.adm-image-drop-inner{
  display:flex;flex-direction:column;align-items:center;gap:.4rem;
  padding:1.5rem;text-align:center;color:var(--lt2, #5c5c6e);
}
.adm-image-drop-inner svg{width:36px;height:36px;opacity:.4}
.adm-image-drop-inner p{margin:0;font-size:.92rem}
.adm-image-preview{
  position:relative;border-radius:var(--r2);overflow:hidden;
  max-width:400px;width:100%;
}
.adm-image-preview img{display:block;width:100%;height:auto}
.adm-image-remove{
  position:absolute;top:.6rem;right:.6rem;width:32px;height:32px;
  background:rgba(0,0,0,.7);color:#fff;border:none;border-radius:50%;
  font-size:1.3rem;cursor:pointer;line-height:1;display:flex;
  align-items:center;justify-content:center;
}
.adm-image-remove:hover{background:rgba(0,0,0,.9)}

/* ── Gallery ─────────────────────────────────────────────────── */
.adm-gallery{margin-top:.5rem}
.adm-gallery-add{
  display:flex;align-items:center;gap:.4rem;
  background:transparent;border:1px solid var(--lb, #e8e6e0);
  color:var(--lt, #111119);padding:.55rem 1rem;border-radius:var(--r);
  font-size:.88rem;cursor:pointer;font-family:inherit;
  transition:border-color .18s, color .18s;margin-bottom:.8rem;
}
.adm-gallery-add:hover{border-color:var(--y);color:var(--y)}
.adm-gallery-add svg{width:16px;height:16px}
.adm-gallery-items{display:flex;gap:.7rem;flex-wrap:wrap}
.adm-gallery-item{
  position:relative;width:120px;height:90px;border-radius:var(--r);
  overflow:hidden;cursor:pointer;border:1px solid var(--lb, #e8e6e0);
  transition:border-color .18s;
}
.adm-gallery-item:hover{border-color:var(--y)}
.adm-gallery-item img{width:100%;height:100%;object-fit:cover}
.adm-gallery-remove{
  position:absolute;top:4px;right:4px;width:22px;height:22px;
  background:rgba(0,0,0,.75);color:#fff;border:none;border-radius:50%;
  font-size:1rem;cursor:pointer;display:flex;align-items:center;
  justify-content:center;line-height:1;
}

/* ── Checkboxes ──────────────────────────────────────────────── */
.adm-checkboxes{display:flex;gap:1.6rem;flex-wrap:wrap}
.adm-checkboxes label{
  display:flex;align-items:center;gap:.5rem;font-size:.92rem;cursor:pointer;
}
.adm-checkbox-row{
  display:flex;align-items:flex-start;gap:.6rem;font-size:.92rem;cursor:pointer;
  line-height:1.5;
}
.adm-checkbox-row input{margin-top:.25rem;flex-shrink:0}
.adm-checkboxes input[type=checkbox],
.adm-checkbox-row input[type=checkbox]{accent-color:var(--y);width:16px;height:16px}

/* ── Grid for date inputs ────────────────────────────────────── */
.adm-grid-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1rem}
@media(max-width:800px){
  .adm-grid-3{grid-template-columns:1fr}
}

/* ── Audit info ──────────────────────────────────────────────── */
.adm-audit{
  display:grid;grid-template-columns:1fr 1fr;gap:.4rem 1.5rem;
  font-size:.85rem;color:var(--lt2, #5c5c6e);
}
.adm-audit-lbl{font-weight:500;color:var(--lt, #111119);margin-right:.3rem}
.adm-audit-hist-wrap{margin-top:.9rem}
.adm-audit-hist-wrap > .adm-audit-lbl{display:block;margin-bottom:.35rem}
.adm-audit-hist{
  display:flex;flex-direction:column;gap:.25rem;
  max-height:11rem;overflow-y:auto;
  font-size:.82rem;color:var(--lt2, #5c5c6e);
  border-left:2px solid var(--bd, #e2e2ea);padding-left:.6rem;
}
.adm-audit-hist-row{line-height:1.35}
.adm-audit-hist-empty{font-style:italic;opacity:.7}

/* ── Bottom bar ──────────────────────────────────────────────── */
.adm-bottom-bar{
  display:flex;justify-content:space-between;align-items:center;
  margin-top:2rem;padding-top:1.8rem;border-top:1px solid var(--lb, #e8e6e0);
  gap:1rem;
}
.adm-bottom-right{display:flex;gap:.6rem}

/* ── Preview modal ───────────────────────────────────────────── */
.adm-modal{
  position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;
  display:flex;align-items:center;justify-content:center;padding:2rem;
}
.adm-modal-overlay{
  position:absolute;top:0;left:0;right:0;bottom:0;
  background:rgba(0,0,0,.6);backdrop-filter:blur(4px);
}
.adm-modal-box{
  position:relative;background:#fff;border-radius:var(--r2);
  max-width:900px;width:100%;max-height:90vh;overflow:hidden;
  display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,.3);
}
.adm-modal-head{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:1rem 1.5rem;border-bottom:1px solid var(--lb, #e8e6e0);background:#fafafa;
}
.adm-modal-head h2{margin:0;font-size:1rem;font-weight:500;flex:1}
.adm-modal-head .lsw{flex-shrink:0}
.adm-modal-close{
  width:36px;height:36px;background:transparent;border:none;
  font-size:1.6rem;color:var(--lt2);cursor:pointer;line-height:1;
  display:flex;align-items:center;justify-content:center;border-radius:var(--r);
}
.adm-modal-close:hover{background:rgba(0,0,0,.05);color:var(--lt)}
.adm-modal-body{
  overflow-y:auto;padding:2rem 2.5rem;flex:1;
}
.adm-preview-article .sec-lbl{margin-bottom:.5rem}
.adm-preview-article .sec-title{font-size:1.8rem;margin-bottom:1.5rem}
.adm-preview-article .news-detail-date{display:block;color:var(--lt2);font-size:.9rem;margin:-.4rem 0 .8rem}
.adm-preview-article .news-detail-hero{margin:1.5rem 0 2rem;border-radius:var(--r2);overflow:hidden}
.adm-preview-article .news-detail-hero img{width:100%;height:auto;display:block}
.adm-preview-article .news-detail-body{font-size:1rem;line-height:1.75;color:#2a2a35}
.adm-preview-article .news-detail-body > * + *{margin-top:1rem}
.adm-preview-article .news-detail-body h1,
.adm-preview-article .news-detail-body h2,
.adm-preview-article .news-detail-body h3{font-weight:400;color:var(--lt);margin-top:1.6rem}
.adm-preview-article .news-detail-body h1{font-size:1.4rem}
.adm-preview-article .news-detail-body h2{font-size:1.2rem}
.adm-preview-article .news-detail-body h3{font-size:1.05rem}
.adm-preview-article .news-detail-body a{color:var(--y);text-decoration:underline}
.adm-preview-article .news-detail-body img{max-width:100%;height:auto;border-radius:var(--r)}

/* ── Responsive ──────────────────────────────────────────────── */
@media(max-width:700px){
  .adm-table .col-companies,
  .adm-table .col-author{display:none}
  .adm-form{padding:1.2rem 1.3rem}
  .adm-bottom-bar{flex-direction:column;align-items:stretch}
  .adm-bottom-right{justify-content:flex-end}
}

/* ════════════════════════════════════════════════════════════
   News modal — popup pro homepage + listing cards
   (replaces navigation na /novinky/<slug>)
   ════════════════════════════════════════════════════════════ */

.news-modal{
  position:fixed;top:0;left:0;right:0;bottom:0;z-index:1000;
  display:flex;align-items:center;justify-content:center;padding:2rem;
  animation:fade-in .18s ease;
}
@keyframes fade-in{from{opacity:0}to{opacity:1}}

.news-modal-overlay{
  position:absolute;top:0;left:0;right:0;bottom:0;
  background:rgba(0,0,0,.65);backdrop-filter:blur(5px);
  cursor:pointer;
}

.news-modal-box{
  position:relative;background:#fff;border-radius:var(--r2);
  max-width:900px;width:100%;max-height:90vh;
  overflow:hidden;display:flex;flex-direction:column;
  box-shadow:0 20px 60px rgba(0,0,0,.3);
  color:#111119;
}

.news-modal-head{
  display:flex;align-items:center;justify-content:space-between;gap:1rem;
  padding:.85rem 1.2rem;border-bottom:1px solid var(--lb, #e8e6e0);
  background:#fafafa;flex-shrink:0;
}
.news-modal-head .lsw{flex-shrink:0}

.news-modal-close{
  width:36px;height:36px;background:transparent;border:none;
  font-size:1.6rem;color:var(--lt2, #5c5c6e);cursor:pointer;line-height:1;
  display:flex;align-items:center;justify-content:center;border-radius:var(--r);
  flex-shrink:0;
}
.news-modal-close:hover{background:rgba(0,0,0,.06);color:var(--lt, #111119)}

.news-modal-body{
  overflow-y:auto;padding:2rem 2.5rem 2.5rem;flex:1;
  -webkit-overflow-scrolling:touch;
}

.news-modal-loading{
  padding:4rem 0;text-align:center;color:var(--lt2, #5c5c6e);
  font-size:.95rem;
}

/* ── Article uvnitř modalu — mirror standalone detail page ─── */
.news-modal-article{
  max-width:760px;margin:0 auto;color:#111119;
}
.news-modal-article .sec-lbl{
  font-size:.67rem;font-weight:700;letter-spacing:.16em;
  text-transform:uppercase;color:var(--y);margin-bottom:.5rem;
  display:flex;align-items:center;gap:.5rem;
}
.news-modal-article .sec-lbl::before{
  content:'';width:16px;height:2px;background:var(--y);
}
.news-modal-article .news-detail-date{
  display:block;color:var(--lt2, #5c5c6e);font-size:.9rem;
  margin:0 0 .8rem;
}
.news-modal-article .sec-title{
  font-size:clamp(1.5rem, 2.6vw, 2rem);font-weight:300;
  line-height:1.22;margin:0 0 1.5rem;letter-spacing:0em;
  color:var(--lt, #111119);
}
.news-modal-article .news-detail-hero{
  margin:0 0 2rem;border-radius:var(--r2);overflow:hidden;
  background:var(--l1, #f5f4f0);
}
.news-modal-article .news-detail-hero img{
  width:100%;height:auto;display:block;
}
.news-modal-article .news-detail-body{
  font-size:1rem;line-height:1.75;color:#2a2a35;
}
.news-modal-article .news-detail-body > * + *{margin-top:1.1rem}
.news-modal-article .news-detail-body h1,
.news-modal-article .news-detail-body h2,
.news-modal-article .news-detail-body h3,
.news-modal-article .news-detail-body h4{
  font-weight:400;line-height:1.3;letter-spacing:-.01em;
  color:var(--lt, #111119);margin-top:1.8rem;
}
.news-modal-article .news-detail-body h1{font-size:1.5rem}
.news-modal-article .news-detail-body h2{font-size:1.25rem}
.news-modal-article .news-detail-body h3{font-size:1.1rem}
.news-modal-article .news-detail-body h4{font-size:1rem}
.news-modal-article .news-detail-body p{margin:0}
.news-modal-article .news-detail-body a{
  color:var(--y);text-decoration:underline;text-underline-offset:3px;
}
.news-modal-article .news-detail-body a:hover{text-decoration:none}
.news-modal-article .news-detail-body strong{
  font-weight:500;color:var(--lt, #111119);
}
.news-modal-article .news-detail-body em{font-style:italic}
.news-modal-article .news-detail-body ul,
.news-modal-article .news-detail-body ol{padding-left:1.4rem;margin:0}
.news-modal-article .news-detail-body li{margin:.3rem 0}
.news-modal-article .news-detail-body blockquote{
  border-left:3px solid var(--y);padding:.5rem 0 .5rem 1.2rem;
  color:var(--lt2, #5c5c6e);font-style:italic;margin:0;
}
.news-modal-article .news-detail-body code{
  background:rgba(0,0,0,.05);padding:.1em .35em;border-radius:3px;
  font-size:.92em;
}
.news-modal-article .news-detail-body pre{
  background:#1d1d26;color:#e0e0e8;padding:1rem 1.2rem;
  border-radius:var(--r);overflow-x:auto;font-size:.88rem;line-height:1.6;
}
.news-modal-article .news-detail-body pre code{
  background:transparent;padding:0;color:inherit;
}
.news-modal-article .news-detail-body img{
  max-width:100%;height:auto;border-radius:var(--r);margin:1rem 0;
}
.news-modal-article .news-detail-body hr{
  border:none;border-top:1px solid var(--lb, #e8e6e0);margin:1.8rem 0;
}

/* Responsive */
@media(max-width:720px){
  .news-modal{padding:0}
  .news-modal-box{
    max-width:100%;width:100%;max-height:100vh;height:100vh;
    border-radius:0;
  }
  .news-modal-body{padding:1.5rem 1.3rem 2rem}
  .news-modal-article .sec-title{font-size:1.4rem}
}

/* ── Modal scroll containment (iOS Safari fix proti bouncing scroll) ──── */
.news-modal-body{
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:touch;
}

/* ── Dark theme variant: pro CZ a SK sekce (matchuje sekci homepage) ──── */
.news-modal[data-from="cz"] .news-modal-box,
.news-modal[data-from="sk"] .news-modal-box{
  background:#1a1a22;
  color:#e0e0e8;
}
.news-modal[data-from="cz"] .news-modal-head,
.news-modal[data-from="sk"] .news-modal-head{
  background:#111119;
  border-bottom-color:rgba(255,255,255,.08);
}
.news-modal[data-from="cz"] .news-modal-close,
.news-modal[data-from="sk"] .news-modal-close{
  color:#a0a0b8;
}
.news-modal[data-from="cz"] .news-modal-close:hover,
.news-modal[data-from="sk"] .news-modal-close:hover{
  background:rgba(255,255,255,.08);
  color:#fff;
}
.news-modal[data-from="cz"] .news-modal-loading,
.news-modal[data-from="sk"] .news-modal-loading{
  color:#a0a0b8;
}
.news-modal[data-from="cz"] .news-modal-article,
.news-modal[data-from="sk"] .news-modal-article{
  color:#e0e0e8;
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-date,
.news-modal[data-from="sk"] .news-modal-article .news-detail-date{
  color:#a0a0b8;
}
.news-modal[data-from="cz"] .news-modal-article .sec-title,
.news-modal[data-from="sk"] .news-modal-article .sec-title{
  color:#fff;
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-hero,
.news-modal[data-from="sk"] .news-modal-article .news-detail-hero{
  background:#23232e;
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-body,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body{
  color:#c8c8d0;
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-body h1,
.news-modal[data-from="cz"] .news-modal-article .news-detail-body h2,
.news-modal[data-from="cz"] .news-modal-article .news-detail-body h3,
.news-modal[data-from="cz"] .news-modal-article .news-detail-body h4,
.news-modal[data-from="cz"] .news-modal-article .news-detail-body strong,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body h1,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body h2,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body h3,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body h4,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body strong{
  color:#fff;
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-body code,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body code{
  background:rgba(255,255,255,.08);
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-body blockquote,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body blockquote{
  color:#a0a0b8;
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-body hr,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body hr{
  border-top-color:rgba(255,255,255,.08);
}

/* ── Mobile: close button position:fixed pro 100% viditelnost ────────── */
/* iOS Safari má quirks se scroll lockem, sticky/relative position v
   modalu nemusí spolehlivě fungovat. Floating × button v top-right
   se vždy zobrazí, nezávisle na scroll position v modal body.        */
@media(max-width:720px){
  .news-modal-head{
    position:relative;
  }
  .news-modal-close{
    position:fixed;
    top:.7rem;
    right:.7rem;
    width:40px;height:40px;
    background:rgba(17,17,25,.85);
    color:#fff;
    border-radius:50%;
    backdrop-filter:blur(8px);
    -webkit-backdrop-filter:blur(8px);
    z-index:1010;
    font-size:1.4rem;
    box-shadow:0 2px 10px rgba(0,0,0,.25);
  }
  .news-modal-close:hover{
    background:rgba(17,17,25,.95);
    color:#fff;
  }
  /* Lang switcher zůstává v head baru, ale celý head bar je teď
     menší a kompaktnější (×close je floating mimo) */
  .news-modal-head{
    padding:.7rem 1rem;
    justify-content:flex-start;  /* lsw vlevo, žádný close na pravo */
  }
  /* Skrýt fallback close pozici v head (×close jde do fixed) */
  .news-modal-head .news-modal-close{
    /* už je position:fixed díky pravidlu výše, jen zajistit */
    position:fixed;
  }
}

/* ════════════════════════════════════════════════════════════
   Markdown tables — pro news detail body + admin preview
   ════════════════════════════════════════════════════════════ */

/* Public detail page + listing detail + standalone */
.news-detail-body table{
  width:100%;
  border-collapse:collapse;
  margin:1rem 0;
  font-size:.95em;
}
.news-detail-body th,
.news-detail-body td{
  padding:.55rem .8rem;
  text-align:left;
  border-bottom:1px solid var(--lb, #e8e6e0);
  vertical-align:top;
}
.news-detail-body th{
  font-weight:500;
  background:rgba(0,0,0,.03);
  color:var(--lt, #111119);
}
.news-detail-body tr:last-child td{border-bottom:none}
.news-detail-body td code,
.news-detail-body th code{
  font-size:.88em;
}

/* News modal — light theme (default = from=ip) */
.news-modal-article .news-detail-body table{margin:1rem 0}

/* News modal — dark theme variant (from=cz, from=sk) */
.news-modal[data-from="cz"] .news-modal-article .news-detail-body th,
.news-modal[data-from="cz"] .news-modal-article .news-detail-body td,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body th,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body td{
  border-bottom-color:rgba(255,255,255,.08);
}
.news-modal[data-from="cz"] .news-modal-article .news-detail-body th,
.news-modal[data-from="sk"] .news-modal-article .news-detail-body th{
  background:rgba(255,255,255,.04);
  color:#fff;
}

/* Admin live preview — kompaktnější tabulka (sloupec vedle editoru) */
.adm-md-preview table{
  width:100%;
  border-collapse:collapse;
  margin:.7rem 0;
  font-size:.88em;
}
.adm-md-preview th,
.adm-md-preview td{
  padding:.35rem .55rem;
  text-align:left;
  border-bottom:1px solid var(--lb, #e8e6e0);
  vertical-align:top;
}
.adm-md-preview th{
  font-weight:500;
  background:rgba(0,0,0,.03);
}
.adm-md-preview tr:last-child td{border-bottom:none}

/* Admin preview modal (Náhled) — používá .news-detail-body, dědí styly */
.adm-preview-article .news-detail-body table{margin:1rem 0}

/* Responsive — horizontal scroll na úzkém viewportu */
@media(max-width:540px){
  .news-detail-body table,
  .adm-md-preview table{
    display:block;
    overflow-x:auto;
    -webkit-overflow-scrolling:touch;
  }
}

/* ════════════════════════════════════════════════════════════
   Admin — Markdown help (expandable cheatsheet nad taby)
   ════════════════════════════════════════════════════════════ */
.adm-md-help{
  margin:0 0 1rem;
  background:#fafafa;
  border:1px solid var(--lb, #e8e6e0);
  border-radius:var(--r);
  font-size:.92rem;
}
.adm-md-help > summary{
  cursor:pointer;
  padding:.7rem 1rem;
  font-weight:500;
  color:var(--lt, #111119);
  user-select:none;
  list-style:none;
  display:flex;
  align-items:center;
  gap:.5rem;
}
.adm-md-help > summary::-webkit-details-marker{display:none}
.adm-md-help > summary::before{
  content:'›';
  display:inline-block;
  font-size:1.2rem;
  line-height:1;
  transition:transform .15s ease;
  color:var(--y);
  width:1rem;
}
.adm-md-help[open] > summary::before{transform:rotate(90deg)}
.adm-md-help > summary:hover{background:rgba(0,0,0,.025)}

.adm-md-help-body{
  padding:.5rem 1.2rem 1rem;
  border-top:1px solid var(--lb, #e8e6e0);
  color:#2a2a35;
  line-height:1.6;
}
.adm-md-help-body p{margin:.7rem 0}
.adm-md-help-body p:first-child{margin-top:.5rem}
.adm-md-help-body code{
  background:rgba(0,0,0,.06);
  padding:.08em .3em;
  border-radius:3px;
  font-size:.88em;
  font-family:'SF Mono', Menlo, Consolas, monospace;
}
.adm-md-help-body strong{font-weight:500;color:var(--lt, #111119)}
.adm-md-help-body pre{
  background:#1d1d26;
  color:#e0e0e8;
  padding:.7rem .9rem;
  border-radius:var(--r);
  overflow-x:auto;
  font-size:.85rem;
  line-height:1.55;
  margin:.5rem 0;
}
.adm-md-help-body pre code{
  background:transparent;
  padding:0;
  color:inherit;
  font-size:1em;
}

.adm-md-help-table{
  width:100%;
  border-collapse:collapse;
  margin:.5rem 0 .8rem;
  font-size:.88rem;
}
.adm-md-help-table th,
.adm-md-help-table td{
  padding:.35rem .55rem;
  text-align:left;
  border-bottom:1px solid var(--lb, #e8e6e0);
  vertical-align:top;
}
.adm-md-help-table th{
  font-weight:500;
  background:rgba(0,0,0,.04);
  white-space:nowrap;
}
.adm-md-help-table tr:last-child td{border-bottom:none}
.adm-md-help-table td:first-child{
  white-space:nowrap;
  color:var(--lt2, #5c5c6e);
}

@media(max-width:720px){
  .adm-md-help-table{font-size:.82rem}
  .adm-md-help-table th,
  .adm-md-help-table td{padding:.3rem .4rem}
}

/* ════════════════════════════════════════════════════════════
   Contact section variant pro light theme
   (statické stránky /cs-cz/kontakt, /cs-cz/contact, /en-cz/contact)
   ════════════════════════════════════════════════════════════ */
body.page-light #ip-contact{
  margin-top:1.5rem;
}
body.page-light #ip-contact .sec-lbl{
  display:none;  /* už máme „Kontakt" v page heading */
}
body.page-light #ip-contact .sec-title{
  display:none;  /* už máme h1 v page header */
}
/* Odkazy bez podtržení (page-text a {underline} z privacy template by je jinak podtrhlo) */
body.page-light #ip-contact a,
body.page-light #ip-contact a:visited,
body.page-light #ip-contact .cta-link{
  text-decoration:none;
}
body.page-light #ip-contact .cc-company,
body.page-light #ip-contact .cr a,
body.page-light #ip-contact .ch span:last-child{
  color:var(--lt, #111119);
}
body.page-light #ip-contact .cr,
body.page-light #ip-contact .ch span:first-child,
body.page-light #ip-contact .cc-desc{
  color:var(--lt2, #5c5c6e);
}
body.page-light #ip-contact .cr a:hover{
  color:var(--y);
}
body.page-light #ip-contact .cta-link{
  color:var(--y);
}
/* .cc-spacer je v originále aria-hidden + visibility:hidden, drží zarovnání
   sloupců (PRAVÝ má neviditelnou kopii popisu LEVÉHO). page-text styling
   by mohl override pod-vlastnost, ujistit se že zůstává hidden. */
body.page-light #ip-contact .cc-spacer{
  visibility:hidden;
  pointer-events:none;
}

/* Static contact pages — fallback styling (před načtením JS) */
.contact-fallback{
  font-size:1rem;
  line-height:1.7;
  color:var(--lt2, #5c5c6e);
}
.contact-fallback h2{
  font-size:.85rem;
  font-weight:500;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--y);
  margin:1.5rem 0 .5rem;
}
.contact-fallback h2:first-child{margin-top:0}
.contact-fallback p strong,
.contact-fallback a{color:var(--lt, #111119)}
.contact-fallback a{text-decoration:none}
.contact-fallback a:hover{color:var(--y);text-decoration:underline}

/* ════════════════════════════════════════════════════════════
   Language switcher v hlavičce (pro statické multi-lang stránky)
   /cs-cz/kontakt, /en-cz/contact, /cs-cz/account-deletion,
   /en-cz/account-deletion, /cs-cz/ochrana-osobnich-udaju,
   /en-cz/privacy-policy
   ════════════════════════════════════════════════════════════ */
.rekl-hdr-lang{
  display:flex;
  gap:.15rem;
  align-items:center;
  flex-shrink:0;
}
.rekl-hdr-lang .lang-btn{
  display:inline-block;
  padding:.32rem .65rem;
  font-size:.78rem;
  font-weight:500;
  letter-spacing:.05em;
  color:var(--lt2, #5c5c6e);
  background:transparent;
  text-decoration:none;
  border-radius:.4rem;
  transition:background .15s, color .15s;
  line-height:1;
}
.rekl-hdr-lang .lang-btn:hover{
  color:var(--lt, #111119);
  background:rgba(0,0,0,.05);
}
.rekl-hdr-lang .lang-btn.on{
  background:var(--y);
  color:var(--lt, #111119);
  cursor:default;
}
.rekl-hdr-lang .lang-btn.on:hover{
  background:var(--y);
}


/* ── Red Hat: velké nadpisy v Display ── */
.hero h1, .hero .hero-title, .sec-title, .land-title {
  font-family: var(--font-display);
  font-weight: 450;
  transform: scaleX(0.88);
  transform-origin: left;
}


/* ── Pozastavení objednávek: banner + zašednuté tlačítko ── */
.ord-paused-banner {
  background: rgba(255,199,0,.12);
  border: 1px solid rgba(255,199,0,.5);
  border-radius: var(--r);
  color: #ffd24a;
  font-size: .82rem;
  line-height: 1.45;
  padding: .7rem .9rem;
  margin-bottom: 1rem;
  font-weight: 500;
}
.btn-y:disabled, .btn-y.is-disabled {
  opacity: .45;
  cursor: not-allowed;
  pointer-events: none;
  transform: none;
}

/* ── Embed režim (?embed=1) — novinky bez chrome pro iframe v aplikaci ──────
   Skryje hlavičku a prvky označené .embed-hide (na listingu back-link a
   nadpisový blok); zůstává čistý výpis, resp. detail článku s back-linkem
   na embed výpis. Class na <html> nastavuje inline script v novinky/index.html
   a SSR šablony ve functions/novinky/[slug].js. */
html.embed .rekl-hdr,
html.embed .embed-hide { display: none; }
html.embed .sec { padding-top: 1.25rem; }
