/* ============================================================
   STREFA — wspólna warstwa formy (metryka KBS, kolory Strefy)
   Ładowana PRZED </head> (po inline <style>) → wygrywa remisy.
   Źródło metryki: kryptobezsciemy/assets/css/styles.css
   Edytuj TU, potem: node build.js  (patrz WORKFLOW-PARTIALS.md)
   ============================================================ */
:root{ --kbs-spring:cubic-bezier(.34,1.56,.64,1); }

/* -- CTA: TERMINAL PRO + blysk/puls jak "Stara platforma" (decyzja 6.07: B wszedzie) -- */
.ui-b .btn-p,.ui-b .step-cta,.ui-b .exms-cta,.ui-b .lp-cta,.ui-b .reg-btn,.ui-b .btn-login,.ui-b .ic-link.prim,.ui-b .btn.btn-p{
  background:linear-gradient(180deg,rgba(139,92,246,.26),rgba(139,92,246,.1));
  border:1px solid rgba(139,92,246,.55);border-radius:12px;color:#fff;font-weight:800;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);position:relative;overflow:hidden;
  transition:transform .16s ease,border-color .2s,background .2s;
  animation:st-pulse 2.6s ease-in-out infinite;
}
.ui-b .btn-p::before,.ui-b .step-cta::before,.ui-b .exms-cta::before,.ui-b .lp-cta::before,.ui-b .reg-btn::before,.ui-b .btn-login::before,.ui-b .ic-link.prim::before,.ui-b .btn.btn-p::before{
  content:"";position:absolute;top:0;left:-125%;width:55%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);
  transform:skewX(-18deg);animation:st-shine 3.2s ease-in-out infinite;pointer-events:none;
}
.ui-b .btn-p::after,.ui-b .step-cta::after,.ui-b .exms-cta::after,.ui-b .ic-link.prim::after{
  content:"";position:absolute;left:10px;right:10px;bottom:0;height:2px;border-radius:2px;
  background:linear-gradient(90deg,#22d3ee,#8b5cf6,#ec4899);opacity:.9;
}
.ui-b .btn-p:hover,.ui-b .step-cta:hover,.ui-b .exms-cta:hover,.ui-b .lp-cta:hover,.ui-b .reg-btn:hover,.ui-b .btn-login:hover,.ui-b .btn.btn-p:hover{
  transform:translateY(-2px);border-color:#8b5cf6;
  background:linear-gradient(180deg,rgba(139,92,246,.36),rgba(139,92,246,.14));filter:none;
}
.btn-p:active,.step-cta:active,.btn.btn-p:active{transform:scale(.97)}
@keyframes st-shine{0%{left:-125%}55%,100%{left:135%}}
@keyframes st-pulse{0%,100%{box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 14px -8px rgba(139,92,246,.5)}50%{box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 22px -4px rgba(34,211,238,.6)}}
.btn-tg{border-radius:12px}.btn-tg-out,.ghost{border-radius:11px}
.ic-link{border-radius:11px}
.nav-links a.nav-soc{border-radius:11px}
.nav-old{border-radius:12px}

/* -- KARTY: listwa statusu (Terminal Pro) -- */
.card,.iblock,.step,.exm,.veribox,.tv{border-left:3px solid rgba(139,92,246,.7);border-radius:14px;transition:border-color .2s,background .2s}
.card:hover,.iblock:hover,.step:hover{border-left-color:#22d3ee}
/* FIX 7.07: karta w karcie = jeden pasek statusu (zewnetrzny); wewnetrzne wracaja do neutralnej ramki */
.card .veribox,.card .tv,.card .iblock,.veribox .iblock{border-left:1px solid var(--glass-b)}
.card .veribox:hover,.card .tv:hover,.card .iblock:hover{border-left-color:var(--glass-b)}
.ccard{border-radius:16px}.pane{border-radius:14px}.cthumb{border-radius:12px}
.card-h{font-family:ui-monospace,Menlo,monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:#22d3ee}
.step-n{width:40px;height:40px;border-radius:10px;border:1px solid rgba(139,92,246,.5);background:rgba(139,92,246,.15);color:#a78bfa;box-shadow:none;display:inline-flex;align-items:center;justify-content:center;font-weight:800;flex-shrink:0}
.exms-n{width:32px;height:32px;border-radius:9px}
.cbadge,.tag{border-radius:8px}
@media(prefers-reduced-motion:reduce){.btn-p,.step-cta,.exms-cta,.lp-cta,.reg-btn,.btn-login,.ic-link.prim{animation:none}.btn-p::before,.step-cta::before,.exms-cta::before,.lp-cta::before,.reg-btn::before,.btn-login::before,.ic-link.prim::before{animation:none}}


/* -- CTA dobitka po skanie 6.07: markbtn/klub-go/cta-band/nav-cta -- */
.ui-b .markbtn,.ui-b .klub-go,.ui-b .cta-band a,.ui-b .nav-cta{
  background:linear-gradient(180deg,rgba(139,92,246,.26),rgba(139,92,246,.1));
  border:1px solid rgba(139,92,246,.55);border-radius:12px;color:#fff;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);position:relative;overflow:hidden;
  transition:transform .16s ease,border-color .2s,background .2s;
  animation:st-pulse 2.6s ease-in-out infinite;
}
.ui-b .markbtn::before,.ui-b .klub-go::before,.ui-b .cta-band a::before,.ui-b .nav-cta::before{
  content:"";position:absolute;top:0;left:-125%;width:55%;height:100%;
  background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);
  transform:skewX(-18deg);animation:st-shine 3.2s ease-in-out infinite;pointer-events:none;
}
.ui-b .markbtn:hover,.ui-b .klub-go:hover,.ui-b .cta-band a:hover,.ui-b .nav-cta:hover{
  transform:translateY(-2px);border-color:#8b5cf6;
  background:linear-gradient(180deg,rgba(139,92,246,.36),rgba(139,92,246,.14));
}
.ui-b .markbtn.done{background:rgba(52,211,153,.12);color:#34d399;border:1px solid rgba(52,211,153,.4);animation:none;box-shadow:none}
.ui-b .markbtn.done::before{display:none}
.ui-b .btn.btn-s,.ui-b .lchip{border-radius:10px}

/* -- MENU MOBILNE (kanon — 20 stron nie mialo mnav przed unifikacja) -- */
.mnav{display:none;position:fixed;top:64px;left:0;right:0;z-index:99;background:rgba(11,9,22,.97);backdrop-filter:blur(16px);border-bottom:1px solid rgba(255,255,255,.08);padding:12px 20px;flex-direction:column;gap:2px}
.mnav.open{display:flex}
.mnav a{font-size:1rem;font-weight:600;color:#bbb4da;padding:12px 14px;border-radius:10px}
.mnav a:hover{background:rgba(255,255,255,.04);color:#f3f0ff}
.nav-mbtn{display:none;color:#f3f0ff;padding:8px;background:none;border:none;cursor:pointer}
@media(max-width:820px){.nav-links{display:none}.nav-mbtn{display:flex}}

/* ── MOBILE HEADER KOMPAKT (r2 7.07: urwane/zawijane przyciski) ── */
@media(max-width:640px){
  .topnav{gap:8px;padding:10px 12px}
  .nav-logo{font-size:.9rem;white-space:nowrap;flex-shrink:0}
  .nav-oldwrap{gap:7px}
  .nav-old{font-size:.68rem;padding:5px 8px}
  .topnav .btn-login,#nav-r a,#nav-r button{white-space:nowrap;font-size:.78rem;padding:8px 11px}
  #nav-r{gap:7px}
  #nav-r .avatar{width:28px;height:28px;font-size:.8rem}
}
@media(max-width:470px){
  .nav-old{display:none}
  .nav-logo{font-size:.82rem}
  .topnav .btn-login,#nav-r a,#nav-r button{font-size:.74rem;padding:7px 10px}
}

/* Cennik w nav — globalnie (przy wdrozeniu: to samo do _partials/nav.html + site.css) */
.nav-links a.nav-cennik{background:#fbbf24;color:#201500!important;font-weight:800;border-radius:9px;padding:6px 12px;position:relative;margin:0 2px;line-height:1.2;white-space:nowrap}
.nav-links a.nav-cennik:hover{background:#fbbf24;filter:brightness(1.08);color:#201500!important}
.nav-links a.nav-cennik::after{content:"NOWE";position:absolute;top:-7px;right:-6px;font-size:8px;font-family:ui-monospace,Menlo,monospace;background:#fbbf24;color:#201500;padding:1px 5px;border-radius:4px;font-weight:800;box-shadow:0 0 0 2px #0b0916}
.nav-links a{white-space:nowrap}
@media(max-width:1640px){.nav-links{position:static;transform:none;margin:0 auto}.nav-links a{font-size:.88rem;padding:8px 10px}}
@media(max-width:1300px){.nav-links li:nth-child(5),.nav-links li:nth-child(6){display:none}}
@media(max-width:1120px){.nav-links a.nav-soc{display:none}}

/* ── koszyk w nav (wszystkie strony) — akcent magenta, subtelny ── */
.cartbtn{position:relative;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid rgba(230,81,160,.45);background:rgba(230,81,160,.08);color:#ece8f5;border-radius:10px;padding:7px 12px;font-size:14px;line-height:1;text-decoration:none;transition:.2s;font-family:inherit}
.cartbtn:hover{background:rgba(230,81,160,.16);border-color:rgba(230,81,160,.75);transform:translateY(-1px)}
.cartbtn .cnt{position:absolute;top:-7px;right:-7px;background:#e651a0;color:#fff;font-size:10px;font-weight:800;min-width:17px;height:17px;border-radius:999px;display:grid;place-items:center;font-family:ui-monospace,Menlo,monospace}
.mnav .nav-cennik{background:#fbbf24;color:#201500!important;font-weight:800;border-radius:9px}

/* ── STOPKA: kanon przeniesiony do _partials/footer.html (<style> wstrzykiwany z markupem).
   Tu zostają TYLKO reguły niestopkowe z dawnych media bloków. ── */
@media (max-width:1024px){.disc-in{grid-template-columns:1fr}.dw{max-width:480px;margin:0 auto}}
@media (max-width:768px){
      .nav-links{display:none}.nav-mbtn{display:flex}
      h1{font-size:2.25rem}
      .hero-acts{flex-direction:column;align-items:center}
      .btn-p,.btn-s,.btn-tg{width:100%;max-width:320px;justify-content:center}
      .team-grid,.eco-grid{grid-template-columns:1fr}
      .live-in{flex-direction:column;padding:32px 24px}.live-vis{width:100%}
    }
@media (max-width:600px){.tcard{width:300px}.num-grid{grid-template-columns:1fr}}
