/* ==========================================================
   lecotepuje.sk — základné štýly
   (dizajn je v inline štýloch v index.html — z Claude Design;
   tu je len reset, keyframes a responzívne prepínanie)
   ========================================================== */

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{
  margin:0;background:#06121E;color:#F4F8FA;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  font-size:17px;line-height:1.65;-webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
h1,h2,h3,h4{margin:0;font-family:"Bricolage Grotesque","Space Grotesk",Inter,sans-serif;font-weight:800}
p,ul,ol,figure{margin:0}
ul{list-style:none;padding:0}
a{color:#FFBE66;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea{font:inherit;color:inherit}
::selection{background:#F2A63B;color:#06121E}
:focus-visible{outline:2px solid #E08A1A;outline-offset:3px;border-radius:8px}

@keyframes ltBob{0%,100%{transform:translateY(0)}50%{transform:translateY(9px)}}
@keyframes ltSpin{to{transform:rotate(360deg)}}

/* --- FAQ akordeón --- */
details.faq{border-bottom:1px solid rgba(255,255,255,.08)}
details.faq summary{
  cursor:pointer;list-style:none;
  display:flex;justify-content:space-between;align-items:center;gap:18px;
  padding:19px 2px;color:#F4F8FA;font-weight:600;font-size:1.02rem;
  transition:color .15s;
}
details.faq summary::-webkit-details-marker{display:none}
details.faq summary::after{
  content:'+';flex:none;color:#FFBE66;font-size:1.5rem;font-weight:400;line-height:1;
  transition:transform .25s cubic-bezier(.22,1,.36,1);
}
details.faq summary:hover{color:#FFD996}
details.faq[open] summary{color:#FFD996}
details.faq[open] summary::after{transform:rotate(45deg)}
details.faq p{color:#7FA3BD;font-size:.96rem;padding:0 2px 20px;max-width:72ch;margin:0}

/* --- responzívne prepínanie (funguje aj bez JS) --- */
[data-callbar]{display:none}
@media (max-width:767px){
  [data-callbar]{display:block}
  body{padding-bottom:78px}
}
@media (max-width:1023px){
  [data-nav]{display:none !important} /* !important: prebíja inline display:flex z dizajnu */
  [data-hdrtel]{margin-left:auto}
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
}

/* --- galéria Naša práca --- */
figure.work img{transition:transform .45s cubic-bezier(.22,1,.36,1)}
figure.work:hover img{transform:scale(1.05)}

/* --- cenový asistent --- */
.cb-row{display:flex;gap:10px;align-items:flex-end}
.cb-bot{max-width:85%;background:rgba(6,18,30,.55);border:1px solid rgba(255,255,255,.08);border-radius:14px 14px 14px 4px;padding:12px 16px;color:#DCEBF5;font-size:.95rem;line-height:1.5}
.cb-bot b{color:#FFD996;font-weight:700}
.cb-user{margin-left:auto;background:rgba(242,166,59,.16);border:1px solid rgba(255,190,102,.35);border-radius:14px 14px 4px 14px;padding:10px 15px;color:#FFEFD6;font-size:.93rem;font-weight:600}
.cb-chips{display:flex;flex-wrap:wrap;gap:8px;padding:2px 0 4px}
.cb-chip{cursor:pointer;border:1px solid rgba(255,190,102,.4);background:rgba(242,166,59,.1);color:#FFD996;border-radius:999px;padding:9px 16px;font:inherit;font-size:.9rem;font-weight:600;transition:background .15s,transform .15s}
.cb-chip:hover{background:rgba(242,166,59,.25);transform:translateY(-1px)}
.cb-chip--primary{background:#F2A63B;color:#241503;border-color:#F2A63B}
.cb-chip--primary:hover{background:#FFBE66}
.cb-sum{width:100%;border:1px dashed rgba(255,217,150,.35);border-radius:12px;padding:12px 16px;background:rgba(242,166,59,.06)}
.cb-sum table{width:100%;border-collapse:collapse;font-size:.9rem;color:#DCEBF5}
.cb-sum td{padding:4px 0}
.cb-sum td:last-child{text-align:right;font-variant-numeric:tabular-nums;font-weight:700;color:#FFD996;white-space:nowrap}
.cb-sum tr.cb-total td{border-top:1px solid rgba(255,255,255,.15);padding-top:8px;font-weight:800;color:#FFFFFF;font-size:1rem}
.cb-input{display:flex;gap:8px}
.cb-input input{width:110px;font:inherit;font-size:.95rem;padding:9px 12px;border-radius:10px;border:1px solid rgba(255,255,255,.2);background:rgba(6,18,30,.6);color:#F4F8FA}
.cb-input input:focus{outline:none;border-color:rgba(255,190,102,.6)}

/* chat okno ma pevnu vysku a vlastny scroll */
[data-chatlog]{
  height:min(54vh,430px);
  overflow-y:auto;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(255,190,102,.4) transparent;
}
[data-chatlog]::-webkit-scrollbar{width:8px}
[data-chatlog]::-webkit-scrollbar-thumb{background:rgba(255,190,102,.35);border-radius:99px}
[data-chatlog]::-webkit-scrollbar-track{background:transparent}

/* --- plavajuci asistent --- */
:root{--fab-b:18px}
@media (max-width:767px){
  :root{--fab-b:calc(90px + env(safe-area-inset-bottom))} /* nad listou Zavolat */
}
[data-chatfab]{transition:transform .2s cubic-bezier(.34,1.56,.64,1),box-shadow .2s}
[data-chatfab]:hover{transform:scale(1.07);box-shadow:0 14px 50px -8px rgba(242,166,59,.95)}
[data-fablabel]{
  position:absolute;right:70px;top:50%;transform:translateY(-50%);
  white-space:nowrap;background:rgba(6,18,30,.92);color:#FFEFD6;
  font-size:.82rem;font-weight:600;padding:8px 13px;border-radius:10px;
  border:1px solid rgba(255,217,150,.3);pointer-events:none;
}
@media (max-width:899px){ [data-fablabel]{display:none} }
[data-chatpanel] [data-chatlog]{height:min(52vh,420px)}
@media (prefers-reduced-motion:reduce){ [data-chatfab]{transition:none} }
