/* ============================================================================
   Tvoj Expert — ENGINE 3 DIZAJNOVÝCH VERZIÍ (layout archetypov)
   Kanonický súbor servovaný z CZ hubu (tvuj.expert), načítaný absolútnou URL na
   demo stránkach segmentov. Zmena tu = zmena na všetkých demách naraz.

   Layout je VIBE-NEUTRÁLNY — osobnosť segmentu nesie TÉMA (CSS premenné nižšie),
   ktorú definuje každá demo stránka vo svojom :root. Tu sú len fallback hodnoty.

   Archetypy:  split (Klasik)  ·  editorial (Magazín)  ·  minimal (Minimal)
   Renderuje te-versions.js do #stage; prepínač = #te-switcher.
   ========================================================================== */

/* ---- univerzálny reset (každá demo stránka je plne engine-renderovaná) ---- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

/* ---- TÉMA: fallback tokeny (segment ich prepisuje vo svojom :root) ---- */
:root{
  --te-bg:#faf7f4; --te-surface:#ffffff;
  --te-ink:#1c1a1e; --te-ink-2:#6b6570; --te-muted:#a9a2ac;
  --te-line:rgba(28,26,30,.12); --te-line-d:rgba(28,26,30,.08);
  --te-primary:#c07f86; --te-primary-d:#a85f68; --te-primary-l:#e2b4b8;
  --te-dark:#241a20; --te-dark-ink:#ffffff; --te-dark-line:rgba(255,255,255,.12);
  --te-dark-rgb:36,26,32;               /* pre editorial overlay gradient */
  --te-font-head:'Fraunces',Georgia,serif;
  --te-font-body:'Jost',system-ui,sans-serif;
  --te-head-weight:400;
  --te-em-style:italic;                 /* zvýraznené slovo v nadpise: italic | normal */
  --te-radius:20px;                     /* karty */
  --te-radius-btn:40px;                 /* tlačidlá: 40px pill | 4px hranaté */
  --te-radius-hero:24px;                /* hero foto */
  --te-radius-logo:50%;                 /* logo značka: 50% | 8px | 0 */
  --te-radius-sec:44px;                 /* zaoblenie editorial sekcie */
  --te-ease:cubic-bezier(.22,1,.28,1);
  --te-maxw:1180px;
  --te-sh-sm:0 1px 3px rgba(20,18,22,.06),0 0 0 1px rgba(20,18,22,.03);
  --te-sh-md:0 22px 50px -20px rgba(20,18,22,.24);
  --te-sh-lg:0 40px 80px -30px rgba(20,18,22,.34);
  --te-top:40px;                        /* rezerva pod te-cta.js horný panel */
}

/* ---- základ stránky (globálne, riadené archetypom na <html data-arch>) ---- */
html{background:var(--te-bg);scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html[data-arch="editorial"]{background:var(--te-dark)}
html[data-arch="minimal"]{background:#fff}
body{font-family:var(--te-font-body);background:var(--te-bg);color:var(--te-ink);
  line-height:1.65;padding-top:var(--te-top);overflow-x:hidden;-webkit-font-smoothing:antialiased}
html[data-arch="minimal"] body{background:#fff}
#stage a{color:inherit;text-decoration:none}
#stage img{max-width:100%;display:block}
#stage h1,#stage h2,#stage h3,#stage h4{font-family:var(--te-font-head);font-weight:var(--te-head-weight);letter-spacing:.005em}
.te-wrap{width:100%;max-width:var(--te-maxw);margin:0 auto;padding:0 26px}
.te-em{font-style:var(--te-em-style);color:var(--te-primary-d)}

/* ---- stage / morf ---- */
#stage{position:relative;min-height:60vh}
#stage [data-morph]{will-change:transform}
#stage .te-morphing{position:relative}

/* ============================ SPOLOČNÉ ============================ */
#stage .te-btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--te-font-body);
  font-weight:600;font-size:.95rem;cursor:pointer;border:none;text-align:center;
  transition:transform .25s var(--te-ease),background .25s,color .25s,box-shadow .25s}
#stage .te-btn-p{background:linear-gradient(135deg,var(--te-primary),var(--te-primary-d));color:#fff;
  padding:15px 30px;border-radius:var(--te-radius-btn);box-shadow:0 14px 30px -12px color-mix(in srgb,var(--te-primary-d) 70%,transparent)}
#stage .te-btn-p:hover{transform:translateY(-3px)}
#stage .te-btn-o{background:transparent;color:var(--te-ink);padding:15px 28px;
  border-radius:var(--te-radius-btn);border:1.5px solid var(--te-line)}
#stage .te-btn-o:hover{border-color:var(--te-primary);color:var(--te-primary-d)}
#stage .te-eyebrow{font-family:var(--te-font-body);font-weight:600;font-size:.72rem;
  letter-spacing:.3em;text-transform:uppercase;color:var(--te-primary-d)}

/* logo */
#stage .te-logo{display:flex;align-items:center;gap:12px;color:var(--te-ink)}
#stage .te-logo-mk{width:42px;height:42px;border-radius:var(--te-radius-logo);
  background:linear-gradient(150deg,var(--te-primary),var(--te-primary-d));display:grid;place-items:center;
  flex:none;box-shadow:0 8px 20px -8px color-mix(in srgb,var(--te-primary-d) 70%,transparent);position:relative}
#stage .te-logo-mk b{font-family:var(--te-font-head);color:#fff;font-size:1.25rem;position:relative;z-index:2;font-weight:600}
#stage .te-logo .nm{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.5rem;line-height:1;display:block}
#stage .te-logo .sub{display:block;font-size:.54rem;letter-spacing:.34em;color:var(--te-primary-d);margin-top:3px;text-transform:uppercase}

/* nav */
#stage .te-nav{display:flex;align-items:center;justify-content:space-between;padding:22px 0}
#stage .te-nav-menu{display:flex;gap:28px;align-items:center}
#stage .te-nav-menu a{font-size:.92rem;color:var(--te-ink-2);transition:.2s}
#stage .te-nav-menu a:hover{color:var(--te-primary-d)}
@media(max-width:860px){#stage .te-nav-menu{display:none}}

/* ==================================================================== */
/* ARCHETYP 1 — SPLIT (Klasik)                                          */
/* ==================================================================== */
html[data-arch="split"] #stage .a-hero{padding:30px 0 70px}
html[data-arch="split"] #stage .a-hero-grid{display:grid;grid-template-columns:1.02fr .98fr;gap:56px;align-items:center}
html[data-arch="split"] #stage .a-h1{font-size:clamp(2.6rem,6vw,4.6rem);line-height:1.02;margin:20px 0}
html[data-arch="split"] #stage .a-lead{font-size:1.12rem;color:var(--te-ink-2);max-width:480px;margin-bottom:30px}
html[data-arch="split"] #stage .a-cta{display:flex;gap:14px;flex-wrap:wrap}
html[data-arch="split"] #stage .a-stats{display:flex;gap:38px;margin-top:44px;flex-wrap:wrap}
html[data-arch="split"] #stage .a-stats b{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:2rem;color:var(--te-primary-d);display:block;line-height:1}
html[data-arch="split"] #stage .a-stats span{font-size:.8rem;color:var(--te-ink-2);letter-spacing:.04em}
html[data-arch="split"] #stage .a-heroimg{position:relative;aspect-ratio:4/5;border-radius:var(--te-radius-hero);overflow:hidden;box-shadow:var(--te-sh-lg)}
html[data-arch="split"] #stage .a-heroimg img{width:100%;height:100%;object-fit:cover}
html[data-arch="split"] #stage .a-badge{position:absolute;left:-18px;bottom:40px;background:var(--te-surface);padding:14px 20px;border-radius:16px;box-shadow:var(--te-sh-md);display:flex;align-items:center;gap:12px}
html[data-arch="split"] #stage .a-badge .n{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.5rem;color:var(--te-primary-d)}
html[data-arch="split"] #stage .a-badge small{font-size:.72rem;color:var(--te-ink-2)}
@media(max-width:860px){html[data-arch="split"] #stage .a-hero-grid{grid-template-columns:1fr;gap:36px}
  html[data-arch="split"] #stage .a-heroimg{aspect-ratio:4/4;max-width:460px}}

/* ==================================================================== */
/* ARCHETYP 2 — EDITORIAL (Magazín)                                     */
/* ==================================================================== */
html[data-arch="editorial"] #stage .a-hero{position:relative;min-height:88vh;display:flex;align-items:flex-end;overflow:hidden}
html[data-arch="editorial"] #stage .ed-bg{position:absolute;inset:0}
html[data-arch="editorial"] #stage .ed-bg img{width:100%;height:100%;object-fit:cover}
html[data-arch="editorial"] #stage .ed-bg::after{content:'';position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(var(--te-dark-rgb),.35) 0%,rgba(var(--te-dark-rgb),.2) 40%,rgba(var(--te-dark-rgb),.92) 100%)}
html[data-arch="editorial"] #stage .ed-nav{position:absolute;top:0;left:0;right:0;z-index:5}
html[data-arch="editorial"] #stage .ed-nav .te-logo,
html[data-arch="editorial"] #stage .ed-nav .te-nav-menu a,
html[data-arch="editorial"] #stage .ed-nav .te-logo .nm{color:#fff}
html[data-arch="editorial"] #stage .ed-hero-c{position:relative;z-index:4;padding-bottom:64px;color:#fff}
html[data-arch="editorial"] #stage .a-h1{font-size:clamp(3rem,9vw,7rem);line-height:.98;color:#fff;max-width:14ch}
html[data-arch="editorial"] #stage .a-h1 .te-em{color:var(--te-primary-l)}
html[data-arch="editorial"] #stage .a-lead{font-size:1.18rem;color:rgba(255,255,255,.82);max-width:540px;margin:22px 0 30px}
html[data-arch="editorial"] #stage .a-heroimg,html[data-arch="editorial"] #stage .a-badge{display:none}
html[data-arch="editorial"] #stage .ed-section{background:var(--te-bg);border-radius:var(--te-radius-sec) var(--te-radius-sec) 0 0;margin-top:-2px;position:relative;z-index:2}
html[data-arch="editorial"] #stage .ed-row{display:grid;grid-template-columns:auto 1fr auto;gap:30px;align-items:center;padding:30px 0;border-bottom:1px solid var(--te-line)}
html[data-arch="editorial"] #stage .ed-row .no{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:2.4rem;color:var(--te-primary-l);width:74px}
html[data-arch="editorial"] #stage .ed-row h3{font-size:1.8rem}
html[data-arch="editorial"] #stage .ed-row p{color:var(--te-ink-2);font-size:.98rem;max-width:520px;margin-top:4px}
html[data-arch="editorial"] #stage .ed-row .pr{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.5rem;color:var(--te-primary-d);white-space:nowrap}
@media(max-width:640px){html[data-arch="editorial"] #stage .ed-row{grid-template-columns:auto 1fr;gap:16px}
  html[data-arch="editorial"] #stage .ed-row .pr{grid-column:2;text-align:left}}

/* ==================================================================== */
/* ARCHETYP 3 — MINIMAL (Čisté)                                         */
/* ==================================================================== */
html[data-arch="minimal"] #stage .a-hero{padding:70px 0 40px;text-align:center}
html[data-arch="minimal"] #stage .min-nav{justify-content:center;flex-direction:column;gap:14px;border-bottom:1px solid var(--te-line-d);padding-bottom:26px}
html[data-arch="minimal"] #stage .a-h1{font-size:clamp(2.8rem,7vw,5.4rem);line-height:1.04;max-width:16ch;margin:26px auto 22px}
html[data-arch="minimal"] #stage .a-lead{font-size:1.15rem;color:var(--te-ink-2);max-width:540px;margin:0 auto 32px}
html[data-arch="minimal"] #stage .a-heroimg{max-width:940px;margin:50px auto 0;aspect-ratio:21/9;border-radius:var(--te-radius);overflow:hidden;box-shadow:var(--te-sh-md)}
html[data-arch="minimal"] #stage .a-heroimg img{width:100%;height:100%;object-fit:cover}
html[data-arch="minimal"] #stage .a-badge{display:none}
html[data-arch="minimal"] #stage .min-list{max-width:720px;margin:0 auto}
html[data-arch="minimal"] #stage .min-item{display:flex;align-items:baseline;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid var(--te-line-d)}
html[data-arch="minimal"] #stage .min-item h3{font-size:1.35rem;font-weight:500}
html[data-arch="minimal"] #stage .min-item .d{font-size:.9rem;color:var(--te-ink-2);flex:1;padding:0 24px}
html[data-arch="minimal"] #stage .min-item .pr{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.3rem;color:var(--te-primary-d)}
@media(max-width:640px){html[data-arch="minimal"] #stage .min-item .d{display:none}}

/* ============================ SPOLOČNÉ SEKCIE ============================ */
#stage .sec{padding:78px 0}
#stage .sec-head{max-width:640px;margin-bottom:44px}
#stage .sec-head.ctr{margin-left:auto;margin-right:auto;text-align:center}
#stage .sec-h2{font-size:clamp(2rem,4.6vw,3.2rem);line-height:1.05;margin:12px 0}
#stage .sec-lead{color:var(--te-ink-2);font-size:1.05rem}

#stage .cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:900px){#stage .cards{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){#stage .cards{grid-template-columns:1fr}}
#stage .card{background:var(--te-surface);border:1px solid var(--te-line);border-radius:var(--te-radius);overflow:hidden;transition:transform .3s var(--te-ease),box-shadow .3s}
#stage .card:hover{transform:translateY(-6px);box-shadow:var(--te-sh-md)}
#stage .card .cimg{aspect-ratio:4/3;overflow:hidden}
#stage .card .cimg img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
#stage .card:hover .cimg img{transform:scale(1.06)}
#stage .card .cb{padding:20px}
#stage .card h3{font-size:1.25rem;margin-bottom:6px}
#stage .card .pr{color:var(--te-primary-d);font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.2rem}
#stage .card p{font-size:.9rem;color:var(--te-ink-2);margin-top:6px}

#stage .dark{background:var(--te-dark);color:var(--te-dark-ink)}
#stage .dark .sec-h2{color:var(--te-dark-ink)}
#stage .dark .te-eyebrow{color:var(--te-primary-l)}
#stage .dark .sec-lead{color:rgba(255,255,255,.75)}
#stage .ai-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
@media(max-width:900px){#stage .ai-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){#stage .ai-grid{grid-template-columns:1fr}}
#stage .ai-it{background:rgba(255,255,255,.05);border:1px solid var(--te-dark-line);border-radius:18px;padding:24px}
#stage .ai-it .ic{width:44px;height:44px;border-radius:12px;background:linear-gradient(135deg,var(--te-primary),var(--te-primary-d));display:grid;place-items:center;margin-bottom:14px;font-size:1.2rem}
#stage .ai-it h4{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.15rem;margin-bottom:6px}
#stage .ai-it p{font-size:.88rem;color:rgba(255,255,255,.7)}

#stage .steps{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
@media(max-width:820px){#stage .steps{grid-template-columns:repeat(2,1fr)}}
#stage .step{text-align:center}
#stage .step .no{width:52px;height:52px;border-radius:50%;border:1.5px solid var(--te-primary);color:var(--te-primary-d);font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.2rem;display:grid;place-items:center;margin:0 auto 14px}
#stage .step h4{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.15rem;margin-bottom:4px}
#stage .step p{font-size:.86rem;color:var(--te-ink-2)}

#stage .gal{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
@media(max-width:640px){#stage .gal{grid-template-columns:repeat(2,1fr)}}
#stage .gal img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:14px}

#stage .cta-band{background:linear-gradient(135deg,var(--te-primary),var(--te-primary-d));color:#fff;border-radius:28px;padding:56px;text-align:center}
#stage .cta-band h2{color:#fff;font-size:clamp(1.9rem,4vw,2.8rem);margin-bottom:14px}
#stage .cta-band p{color:rgba(255,255,255,.85);margin-bottom:26px}
#stage .cta-band .te-btn-p{background:#fff;color:var(--te-primary-d)}

#stage .foot{padding:44px 0;border-top:1px solid var(--te-line);color:var(--te-ink-2);font-size:.85rem}
#stage .foot .in{display:flex;justify-content:space-between;width:100%;gap:16px;flex-wrap:wrap}
html[data-arch="editorial"] #stage .foot,html[data-arch="editorial"] #stage .sec:not(.dark){color:var(--te-ink)}

/* ============================ MOBIL (≤560px) ============================ */
@media(max-width:560px){
  #stage .te-wrap{padding:0 20px}
  /* kompaktná navigácia — logo + malé CTA sa zmestia bez orezania */
  #stage .te-nav{padding:16px 0;gap:10px}
  #stage .te-nav .te-btn-p{padding:10px 15px;font-size:.8rem}
  #stage .te-logo{gap:9px}
  #stage .te-logo-mk{width:36px;height:36px}
  #stage .te-logo-mk b{font-size:1.05rem}
  #stage .te-logo .nm{font-size:1.2rem}
  #stage .te-logo .sub{font-size:.5rem;letter-spacing:.26em}
  /* minimal má centrovanú nav — logo centruj ako celok (nie stretch → orezanie) */
  #stage .min-nav{align-items:center}
  /* hero nadpisy — primeraná veľkosť, žiadne preliezanie */
  html[data-arch="split"] #stage .a-h1{font-size:clamp(2.1rem,8vw,3rem)}
  html[data-arch="editorial"] #stage .a-h1{font-size:clamp(2.3rem,9vw,3.4rem);max-width:none}
  html[data-arch="minimal"] #stage .a-h1{font-size:clamp(2.1rem,8vw,3rem)}
  /* editorial hero: eyebrow/lead nad fotkou čitateľnejšie */
  html[data-arch="editorial"] #stage .ed-hero-c .te-eyebrow{text-shadow:0 1px 10px rgba(0,0,0,.5)}
  html[data-arch="editorial"] #stage .ed-hero-c .a-lead{text-shadow:0 1px 10px rgba(0,0,0,.4)}
  html[data-arch="editorial"] #stage .ed-hero-c{padding-bottom:44px}
  /* jemnejšie odsadenia sekcií a CTA na malom displeji */
  #stage .sec{padding:54px 0}
  #stage .cta-band{padding:40px 22px}
  #stage .a-stats{gap:26px}
  #stage .a-stats b{font-size:1.7rem}
}
@media(max-width:380px){
  #stage .te-nav .te-btn-p{padding:9px 12px;font-size:.74rem}
  #stage .te-logo .nm{font-size:1.1rem}
}

/* ==================== DOPYTOVÝ FORMULÁR UKÁŽKY ==================== */
/* Všetko cez premenné témy — formulár tak sadne do palety každého segmentu
   bez jediného riadku navyše na konkrétnej stránke. */
#stage .te-form-sec .te-formcard{max-width:760px;margin:0 auto;background:var(--te-surface);
  border:1px solid var(--te-line);border-radius:var(--te-radius);padding:34px 32px;
  box-shadow:var(--te-sh-md);position:relative}
#stage .te-fgrid{display:grid;grid-template-columns:1fr 1fr;gap:18px}
#stage .te-fld{display:flex;flex-direction:column;gap:7px;min-width:0}
#stage .te-fld.wide{grid-column:1/-1}
#stage .te-fld label{font-family:var(--te-font-body);font-weight:600;font-size:.82rem;color:var(--te-ink-2)}
#stage .te-fld input,#stage .te-fld select,#stage .te-fld textarea{
  font-family:var(--te-font-body);font-size:.95rem;color:var(--te-ink);background:var(--te-bg);
  border:1.5px solid var(--te-line);border-radius:var(--te-radius-btn);padding:13px 16px;width:100%;
  transition:border-color .2s,box-shadow .2s;-webkit-appearance:none;appearance:none}
#stage .te-fld textarea{border-radius:var(--te-radius);resize:vertical;min-height:118px}
#stage .te-fld select{background-image:linear-gradient(45deg,transparent 50%,var(--te-ink-2) 50%),linear-gradient(135deg,var(--te-ink-2) 50%,transparent 50%);
  background-position:calc(100% - 20px) calc(50% + 2px),calc(100% - 15px) calc(50% + 2px);
  background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:42px}
#stage .te-fld input:focus,#stage .te-fld select:focus,#stage .te-fld textarea:focus{
  outline:none;border-color:var(--te-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--te-primary) 22%,transparent)}
#stage .te-fbtn{margin-top:22px}
#stage .te-formcard button[type=submit]:disabled{opacity:.6;cursor:default;transform:none}
#stage .te-form-msg{margin-top:14px;font-family:var(--te-font-body);font-size:.9rem;font-weight:600;min-height:0}
#stage .te-form-msg.ok{color:var(--te-primary-d)}
#stage .te-form-msg.err{color:#b3261e}
#stage .te-form-note{margin-top:12px;font-family:var(--te-font-body);font-size:.76rem;color:var(--te-muted);line-height:1.5}
@media(max-width:640px){
  #stage .te-form-sec .te-formcard{padding:24px 18px}
  #stage .te-fgrid{grid-template-columns:1fr;gap:14px}
}

/* ==================== REZERVAČNÝ WIDGET ==================== */
/* Widget si nesie vlastný vzhľad v Shadow DOM — tu len miesto, kam sa namontuje. */
#stage .te-book-mount{max-width:760px;margin:0 auto;min-height:120px;display:flex;justify-content:center}
#stage .te-book-mount>*{width:100%;max-width:560px}

/* ==================== INTERAKTÍVNA UKÁŽKA ==================== */
#stage .te-panels{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:22px;align-items:start}
#stage .te-panel{background:var(--te-surface);border:1px solid var(--te-line);border-radius:var(--te-radius);
  padding:26px 24px;box-shadow:var(--te-sh-md)}
#stage .te-panel-h{font-family:var(--te-font-head);font-weight:var(--te-head-weight);font-size:1.15rem;
  color:var(--te-ink);display:flex;align-items:center;gap:9px;margin-bottom:4px}
#stage .te-panel-h::before{content:'';width:9px;height:9px;border-radius:50%;flex:none;
  background:var(--te-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--te-primary) 22%,transparent)}
#stage .te-panel-sub{font-family:var(--te-font-body);font-size:.84rem;color:var(--te-muted);margin-bottom:18px;line-height:1.5}
#stage .te-cfld{display:block;font-family:var(--te-font-body);font-weight:600;font-size:.8rem;
  color:var(--te-ink-2);margin:16px 0 8px}
#stage .te-rv{color:var(--te-primary-d);font-weight:700}

/* segmentové prepínače + čipy */
#stage .te-seg,#stage .te-chips{display:flex;flex-wrap:wrap;gap:8px}
#stage .te-segb,#stage .te-chip{font-family:var(--te-font-body);font-weight:600;font-size:.84rem;cursor:pointer;
  padding:9px 15px;border-radius:var(--te-radius-btn);border:1.5px solid var(--te-line);
  background:var(--te-bg);color:var(--te-ink-2);transition:.2s}
#stage .te-segb:hover,#stage .te-chip:hover{border-color:var(--te-primary);color:var(--te-primary-d)}
#stage .te-segb.on,#stage .te-chip.on{background:linear-gradient(135deg,var(--te-primary),var(--te-primary-d));
  border-color:transparent;color:#fff}

/* posuvník */
#stage .te-range{width:100%;-webkit-appearance:none;appearance:none;height:5px;border-radius:4px;
  background:var(--te-line);outline:none;margin:2px 0 4px}
#stage .te-range::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;cursor:pointer;
  background:linear-gradient(135deg,var(--te-primary),var(--te-primary-d));box-shadow:0 3px 10px -2px color-mix(in srgb,var(--te-primary-d) 70%,transparent)}
#stage .te-range::-moz-range-thumb{width:22px;height:22px;border:none;border-radius:50%;cursor:pointer;
  background:var(--te-primary-d)}

/* výstup kalkulačky */
#stage .te-price{margin-top:22px;padding:18px 20px;border-radius:var(--te-radius);
  background:var(--te-bg);border:1px dashed var(--te-line)}
#stage .te-price small{display:block;font-family:var(--te-font-body);font-size:.74rem;letter-spacing:.14em;
  text-transform:uppercase;color:var(--te-muted);margin-bottom:5px}
#stage .te-price b{font-family:var(--te-font-head);font-weight:var(--te-head-weight);
  font-size:clamp(1.5rem,3.4vw,2.1rem);color:var(--te-primary-d);display:block;line-height:1.1}
#stage .te-price em{display:block;font-style:normal;font-size:.76rem;color:var(--te-muted);margin-top:7px;line-height:1.5}

/* konzola s odhaľovanými riadkami */
#stage .te-airun{margin-top:18px;padding:12px 24px;font-size:.88rem}
#stage .te-console{margin-top:18px;background:var(--te-dark);border-radius:var(--te-radius);padding:18px 20px;min-height:96px}
#stage .te-console-empty{font-family:var(--te-font-body);font-size:.84rem;color:rgba(255,255,255,.55);line-height:1.6}
#stage .te-cline{display:flex;gap:14px;padding:9px 0;border-bottom:1px solid var(--te-dark-line);
  opacity:0;transform:translateY(6px);transition:opacity .35s ease,transform .35s var(--te-ease)}
#stage .te-cline.show{opacity:1;transform:none}
#stage .te-cline:last-child{border-bottom:none}
#stage .te-cline .k{flex:0 0 34%;font-family:var(--te-font-body);font-size:.76rem;letter-spacing:.06em;
  text-transform:uppercase;color:rgba(255,255,255,.5);padding-top:2px}
#stage .te-cline .v{flex:1;font-family:var(--te-font-body);font-size:.9rem;color:var(--te-dark-ink);line-height:1.5}
#stage .te-badge{display:inline-block;padding:3px 11px;border-radius:30px;font-size:.78rem;font-weight:700}
#stage .te-badge.b-hot{background:#fde2e0;color:#a3231a}
#stage .te-badge.b-warm{background:#fdf0d5;color:#8a5a06}
#stage .te-badge.b-cold{background:#dff1e6;color:#1c6b3f}

/* filter galérie */
#stage .te-galf{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;margin-bottom:26px}
#stage .te-galf button{font-family:var(--te-font-body);font-weight:600;font-size:.82rem;cursor:pointer;
  padding:8px 16px;border-radius:var(--te-radius-btn);border:1.5px solid var(--te-line);
  background:transparent;color:var(--te-ink-2);transition:.2s}
#stage .te-galf button:hover{border-color:var(--te-primary);color:var(--te-primary-d)}
#stage .te-galf button.on{background:var(--te-ink);border-color:var(--te-ink);color:var(--te-bg)}

@media(max-width:640px){
  #stage .te-panels{grid-template-columns:1fr}
  #stage .te-panel{padding:20px 16px}
  #stage .te-cline{flex-direction:column;gap:3px}
  #stage .te-cline .k{flex:none}
}

/* ============================ PREPÍNAČ VERZIÍ ============================ */
#te-switcher{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);z-index:99991;
  background:var(--te-dark);background:rgba(28,20,26,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  border-radius:44px;padding:6px;display:flex;gap:4px;box-shadow:0 18px 44px -12px rgba(20,18,22,.6);border:1px solid rgba(255,255,255,.1)}
#te-switcher button{border:none;background:transparent;color:rgba(255,255,255,.72);font-family:var(--te-font-body);font-weight:600;font-size:.86rem;padding:10px 20px;border-radius:40px;cursor:pointer;transition:.25s;display:flex;flex-direction:column;align-items:center;line-height:1.1;gap:2px}
#te-switcher button .vn{font-size:.6rem;letter-spacing:.14em;text-transform:uppercase;opacity:.7}
#te-switcher button.on{background:linear-gradient(135deg,var(--te-primary),var(--te-primary-d));color:#fff;box-shadow:0 6px 16px -6px color-mix(in srgb,var(--te-primary-d) 80%,transparent)}
#te-switcher button:not(.on):hover{color:#fff}
#te-swlbl{position:fixed;bottom:74px;left:50%;transform:translateX(-50%);z-index:99990;font-size:.72rem;color:#fff;background:rgba(28,20,26,.82);padding:5px 14px;border-radius:30px;box-shadow:var(--te-sh-sm);pointer-events:none;opacity:0;transition:opacity .3s}
@media(max-width:520px){#te-switcher button{padding:9px 13px;font-size:.8rem}#te-switcher{bottom:14px}}
