/* ============================================================
   TERMINAL SHOP — homepage styly (samostatný soubor, front260427.css
   se nemění). Načítá se podmíněně jen na homepage z head.php.
   ============================================================ */
:root{
  --ts-navy:#064365;
  --ts-navy-light:#0A5C87;
  --ts-navy-deep:#04314C;
  --ts-bg:#F5F7F8;
  --ts-card:#FFFFFF;
  --ts-line:#E8EEF1;
  --ts-ink:#1D1E1C;
  --ts-ink-soft:#5B6670;
  --ts-accent:#FF6B35;
  --ts-accent-dark:#E85A28;
  --ts-radius:16px;
}
.ts-home{ font-family:'Inter',sans-serif; color:var(--ts-ink); }
.ts-home h1,.ts-home h2,.ts-home h3{ font-family:'Space Grotesk',sans-serif; letter-spacing:-0.01em; }
/* .wrap je definované globálně v theme-terminal-header.css (načítá se na každé stránce) */

/* Hero */
.ts-hero{
  background:linear-gradient(180deg,var(--ts-navy) 0%, var(--ts-navy) 62%, var(--ts-navy-light) 78%, var(--ts-bg) 100%);
  padding:56px 0 0;
  position:relative;
}
.ts-hero-inner{
  display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:center;
  padding-bottom:70px;
}
.ts-eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);
  color:#ffd8c4;font-size:12.5px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;
  padding:7px 14px;border-radius:999px;margin-bottom:20px;
}
.ts-eyebrow .dot{width:6px;height:6px;border-radius:999px;background:var(--ts-accent);}
.ts-hero h1{
  color:#fff;font-size:44px;line-height:1.12;font-weight:700;margin:0 0 18px;
  max-width:560px;
}
.ts-hero h1 em{font-style:normal;color:#ffb08a;}
.ts-hero p{color:#c3ddec;font-size:16.5px;line-height:1.6;max-width:480px;margin:0 0 28px;}
.ts-hero-ctas{display:flex;gap:14px;flex-wrap:wrap;}
.ts-btn{
  display:inline-flex;align-items:center;gap:8px;
  padding:14px 26px;border-radius:12px;font-weight:600;font-size:15px;border:none;
  transition:.15s;text-decoration:none;
}
.ts-btn-accent{background:var(--ts-accent);color:#fff;}
.ts-btn-accent:hover{background:var(--ts-accent-dark);transform:translateY(-1px);color:#fff;}
.ts-btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.22);}
.ts-btn-ghost:hover{background:rgba(255,255,255,.16);color:#fff;}

.ts-board{
  background:var(--ts-navy-deep);
  border:1px solid rgba(255,255,255,.1);
  border-radius:var(--ts-radius);
  padding:22px;color:#fff;
  box-shadow:0 30px 60px rgba(0,0,0,.25);
}
.ts-board-head{
  display:flex;justify-content:space-between;align-items:center;
  font-size:11.5px;letter-spacing:.12em;text-transform:uppercase;color:#8fb7cf;
  padding-bottom:14px;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:10px;
}
.ts-board-row{
  display:grid;grid-template-columns:70px 1fr 90px;gap:10px;
  padding:11px 0;border-bottom:1px dashed rgba(255,255,255,.08);
  font-family:'Space Grotesk';font-size:14px;align-items:center;
}
.ts-board-row:last-child{border-bottom:none;}
.ts-board-row .code{color:#ffb08a;font-weight:600;}
.ts-board-row .status{
  justify-self:end;font-size:11px;font-weight:600;letter-spacing:.04em;
  padding:4px 9px;border-radius:6px;background:rgba(60,200,130,.15);color:#7ee8a8;
}
.ts-board-row .status.hot{background:rgba(255,107,53,.18);color:#ffb08a;}

/* Category rail */
.ts-cats{margin-top:-40px;position:relative;z-index:5;}
.ts-cats-grid{
  display:grid;grid-template-columns:repeat(6,1fr);gap:14px;
}
.ts-cat-card{
  background:var(--ts-card);border:1px solid var(--ts-line);border-radius:14px;
  padding:20px 16px;text-align:center;transition:.18s;cursor:pointer;text-decoration:none;display:block;
}
.ts-cat-card:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(6,67,101,.12);border-color:#cfe0e8;}
.ts-cat-card .ic{
  width:46px;height:46px;border-radius:12px;background:var(--ts-bg);
  display:flex;align-items:center;justify-content:center;margin:0 auto 12px;
  color:var(--ts-navy);
}
.ts-cat-card.active{border-color:var(--ts-navy);background:#F0F6F9;}
.ts-cat-card span{font-size:13.5px;font-weight:600;color:var(--ts-ink);}

/* Section heads */
.ts-section{padding:64px 0;font-family:'Inter',sans-serif;color:var(--ts-ink);}
.ts-section-head{
  display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:30px;gap:20px;flex-wrap:wrap;
}
.ts-section-head .tag{
  font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--ts-accent-dark);
  margin-bottom:6px;display:block;
}
.ts-section-head h2{font-family:'Space Grotesk',sans-serif;font-size:30px;margin:0;color:var(--ts-navy-deep);font-weight:700;}
.ts-section-head p{color:var(--ts-ink-soft);margin:8px 0 0;font-size:15px;max-width:460px;}
.ts-see-all{font-size:14px;font-weight:600;color:var(--ts-navy);display:inline-flex;align-items:center;gap:6px;text-decoration:none;}
.ts-see-all:hover{color:var(--ts-accent-dark);}

/* Sorting buttons (kategorie) */
.ts-sort-buttons{ display:flex;gap:8px;flex-wrap:wrap; }
.ts-sort-btn{
  background:#fff;border:1px solid var(--ts-line);color:var(--ts-navy);
  padding:8px 16px;border-radius:999px;font-size:13.5px;font-weight:600;
  cursor:pointer;transition:.15s;
}
.ts-sort-btn:hover,.ts-sort-btn.active{
  background:var(--ts-navy);color:#fff;border-color:var(--ts-navy);
}
@media (max-width:760px){ .ts-mobil-skryt{ display:none; } }

/* Product grid — používá stejný markup jako produktová karta jinde na webu */
.ts-grid{
  display:grid;grid-template-columns:repeat(4,1fr);gap:22px;
}
.ts-product{
  background:var(--ts-card);border-radius:var(--ts-radius);border:1px solid var(--ts-line);
  overflow:hidden;transition:.18s;display:flex;flex-direction:column;
}
.ts-product:hover{box-shadow:0 18px 34px rgba(6,67,101,.13);transform:translateY(-3px);border-color:#d7e6ec;}
.ts-product-tag{
  display:flex;justify-content:space-between;align-items:center;
  background:var(--ts-navy-deep);color:#bcdcec;
  font-family:'Space Grotesk';font-size:11px;font-weight:600;letter-spacing:.06em;
  padding:8px 14px;
}
.ts-product-tag .g{color:#ffb08a;}
.ts-product-media{
  aspect-ratio:1/1;position:relative;border-bottom:1px solid var(--ts-line);
  display:block;background:#EEF3F5;
}
.ts-product-media img{width:100%;height:100%;object-fit:cover;display:block;}
.ts-badge{
  position:absolute;top:10px;left:10px;z-index:2;
  background:var(--ts-accent);color:#fff;font-size:11px;font-weight:700;
  padding:4px 9px;border-radius:7px;letter-spacing:.02em;
}
.ts-wish{
  position:absolute;top:10px;right:10px;z-index:2;width:32px;height:32px;border-radius:9px;
  background:rgba(255,255,255,.85);border:1px solid var(--ts-line);
  display:flex;align-items:center;justify-content:center;color:var(--ts-navy);
  cursor:pointer;transition:.15s;
}
.ts-wish:hover{background:#fff;color:var(--ts-accent);}
.ts-wish.active{background:var(--ts-accent);border-color:var(--ts-accent);color:#fff;}
.ts-wish.active:hover{background:var(--ts-navy);border-color:var(--ts-navy);}
.ts-product-body{padding:16px;display:flex;flex-direction:column;gap:8px;flex:1;}
.ts-product-cat{font-size:11.5px;color:var(--ts-ink-soft);text-transform:uppercase;letter-spacing:.05em;font-weight:600;}
.ts-product-name{font-size:15px;font-weight:600;line-height:1.35;min-height:40px;color:var(--ts-ink);text-decoration:none;display:block;}
.ts-stars{display:flex;gap:2px;align-items:center;font-size:12px;color:var(--ts-ink-soft);}
.ts-stars i{color:var(--ts-accent);font-size:11px;}
.ts-product-foot{
  margin-top:auto;display:flex;justify-content:space-between;align-items:center;padding-top:6px;
}
.ts-price{font-family:'Space Grotesk';font-weight:700;font-size:19px;color:var(--ts-navy-deep);}
.ts-price small{font-family:'Inter';font-weight:500;font-size:12px;color:var(--ts-ink-soft);display:block;text-decoration:line-through;}
.ts-add-btn{
  width:38px;height:38px;border-radius:10px;background:var(--ts-navy);color:#fff;border:none;
  display:flex;align-items:center;justify-content:center;transition:.15s;text-decoration:none;
}
.ts-add-btn:hover{background:var(--ts-accent);color:#fff;}

/* Promo band */
.ts-promo{
  background:var(--ts-navy);border-radius:24px;overflow:hidden;position:relative;
  display:grid;grid-template-columns:1fr 1fr;align-items:center;
}
.ts-promo-copy{padding:48px;color:#fff;}
.ts-promo-copy .tag{color:#ffb08a;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;}
.ts-promo-copy h3{font-size:28px;margin:12px 0 12px;max-width:380px;}
.ts-promo-copy p{color:#c3ddec;font-size:14.5px;line-height:1.6;max-width:380px;margin:0 0 22px;}
.ts-promo-media{
  height:100%;min-height:280px;
  background:repeating-linear-gradient(45deg,#0A5C87,#0A5C87 14px,#0e6c9c 14px,#0e6c9c 28px);
  display:flex;align-items:center;justify-content:center;
}
.ts-promo-media i{font-size:60px;color:rgba(255,255,255,.5);}

/* Trust strip */
.ts-trust{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;}
.ts-trust-item{
  background:var(--ts-card);border:1px solid var(--ts-line);border-radius:14px;padding:22px;
  display:flex;gap:14px;align-items:flex-start;
}
.ts-trust-item .ic{width:40px;height:40px;border-radius:10px;background:#F0F6F9;color:var(--ts-navy);
  display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.ts-trust-item h4{margin:0 0 4px;font-size:14.5px;}
.ts-trust-item p{margin:0;font-size:13px;color:var(--ts-ink-soft);line-height:1.5;}

@media (max-width:1100px){
  .ts-hero-inner{grid-template-columns:1fr;}
  .ts-board{display:none;}
  .ts-cats-grid{grid-template-columns:repeat(3,1fr);}
  .ts-grid{grid-template-columns:repeat(3,1fr);}
}
@media (max-width:760px){
  .ts-hero h1{font-size:32px;}
  .ts-cats-grid{grid-template-columns:repeat(2,1fr);}
  .ts-grid{grid-template-columns:repeat(2,1fr);}
  .ts-promo{grid-template-columns:1fr;}
  .ts-promo-media{min-height:160px;}
  .ts-trust{grid-template-columns:1fr 1fr;}
}
