@import url('https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&family=IBM+Plex+Mono:wght@500;600&family=Playfair+Display:ital,wght@0,600;0,700;1,600&display=swap');

.ktlg-ops{
  --ops-bg:#08101c;--ops-panel:#111a2b;--ops-panel2:#162238;--ops-line:#23314a;--ops-line2:#355078;
  --ops-blue:#2b5da8;--ops-blue2:#4c7fd4;--ops-white:#fff;--ops-ice:#eaf1ff;--ops-text:#c7d3e6;
  --ops-soft:#a7b4c9;--ops-muted:#8290a8;--ops-amber:#d7a34a;
  color:var(--ops-text);font-family:Geist,Inter,system-ui,sans-serif;-webkit-font-smoothing:antialiased
}
.ktlg-ops *{box-sizing:border-box}
.ktlg-ops a{color:inherit}
.ktlg-ops img{display:block;max-width:100%}
.ktlg-ops-shell{width:min(1440px,calc(100% - 56px));margin:0 auto}
.ktlg-ops-crumbs{padding:25px 0 0;color:var(--ops-muted);font-size:12px}
.ktlg-ops-crumbs a{text-decoration:none}.ktlg-ops-crumbs a:hover{color:var(--ops-ice)}
.ktlg-ops-crumbs span{margin:0 10px;color:#475874}
.ktlg-ops-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 22px;border:0;border-radius:5px;background:linear-gradient(135deg,#2b5da8,#3370df);box-shadow:0 14px 35px rgba(43,93,168,.25);color:#fff!important;text-decoration:none!important;cursor:pointer}

/* INDEX */
.ktlg-ops-hero{display:grid;grid-template-columns:minmax(380px,.84fr) minmax(650px,1.16fr);gap:34px;min-height:475px;align-items:center;padding:16px 0 24px}
.ktlg-ops-copy h1{margin:0 0 17px;color:#fff;font:700 clamp(58px,6.2vw,92px)/.92 "Playfair Display",Georgia,serif;letter-spacing:-.058em}
.ktlg-ops-copy h1 em{color:var(--ops-blue2);font-weight:600}
.ktlg-ops-kicker{margin-bottom:27px;color:#eef3fb;font:600 12px/1.5 "IBM Plex Mono",monospace;letter-spacing:.27em;text-transform:uppercase}
.ktlg-ops-copy>p{max-width:590px;margin:0 0 30px;color:#a8b5c8;font-size:18px;line-height:1.65}

.ktlg-ops-map{position:relative;min-height:470px;isolation:isolate}
.ktlg-ops-grid{position:absolute;inset:28px 8% 4%;z-index:-3;opacity:.28;background-image:linear-gradient(rgba(76,127,212,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(76,127,212,.13) 1px,transparent 1px);background-size:34px 34px;transform:perspective(520px) rotateX(65deg) scale(1.1);transform-origin:center 69%;mask-image:radial-gradient(circle,black 0 41%,transparent 73%)}
.ktlg-ops-network{position:absolute;inset:0;z-index:-1;width:100%;height:100%;overflow:visible}
.ktlg-ops-network path{fill:none;stroke:rgba(215,163,74,.31);stroke-width:1.25;transition:.2s ease}
.ktlg-ops-network path.is-active{stroke:#e7b760;stroke-width:2.3;filter:drop-shadow(0 0 7px rgba(215,163,74,.9))}
.ktlg-ops-network circle{fill:#bd8a3b;opacity:.65;transition:.2s ease}
.ktlg-ops-network circle.is-active{fill:#ffda8d;opacity:1;filter:drop-shadow(0 0 7px #d7a34a)}
.ktlg-ops-container-glow{position:absolute;left:51%;top:50%;z-index:-2;width:470px;height:280px;transform:translate(-50%,-50%);background:radial-gradient(circle,rgba(76,127,212,.16),rgba(76,127,212,.08) 28%,transparent 70%)}
.ktlg-ops-map.has-active .ktlg-ops-container-glow{background:radial-gradient(circle,rgba(215,163,74,.18),transparent 67%)}

/* central hero asset: raster graphic, not an in-DOM drawing */
.ktlg-ops-container{
  position:absolute;left:51%;top:50%;width:min(520px,58%);height:auto;
  transform:translate(-50%,-50%);pointer-events:none;z-index:1;
  filter:drop-shadow(0 24px 34px rgba(0,0,0,.38));
}
.ktlg-ops-container img{
  display:block;width:100%;height:auto;object-fit:contain;
  filter:drop-shadow(0 0 18px rgba(76,127,212,.16));
}

.ktlg-ops-node{position:absolute;width:146px;padding:0;border:0;background:transparent;color:#fff;text-align:center;text-decoration:none;transform:translate(-50%,-50%)}
.ktlg-ops-node-portrait{position:relative;width:86px;height:86px;margin:0 auto 8px;display:grid;place-items:center}
.ktlg-ops-node-portrait::before{content:"";position:absolute;inset:10px;border-radius:50%;background:radial-gradient(circle at 50% 42%,rgba(76,127,212,.17),rgba(5,11,20,.82) 68%);box-shadow:0 0 0 1px rgba(76,127,212,.25),0 12px 35px rgba(0,0,0,.31);transition:.2s ease}
.ktlg-ops-node-img{position:absolute;inset:-10px;z-index:2;width:106px;height:106px;object-fit:contain;filter:drop-shadow(0 9px 13px rgba(0,0,0,.7));transition:.2s ease}
.ktlg-ops-node-fallback{position:relative;z-index:1;color:#91b4ec;font:700 27px/1 "Playfair Display",serif}
.ktlg-ops-node-name{display:block;color:#f5f7fb;font-size:14px}
.ktlg-ops-node-topic{display:block;margin-top:2px;color:#7c8ba2;font:600 9px/1.2 "IBM Plex Mono",monospace;letter-spacing:.08em;text-transform:uppercase}
.ktlg-ops-node:hover .ktlg-ops-node-img,.ktlg-ops-node:focus .ktlg-ops-node-img,.ktlg-ops-node.is-active .ktlg-ops-node-img{transform:scale(1.08) translateY(-2px)}
.ktlg-ops-node:hover .ktlg-ops-node-portrait::before,.ktlg-ops-node:focus .ktlg-ops-node-portrait::before,.ktlg-ops-node.is-active .ktlg-ops-node-portrait::before{box-shadow:0 0 0 1px rgba(215,163,74,.82),0 0 28px rgba(215,163,74,.22)}
.ktlg-ops-node:hover .ktlg-ops-node-name,.ktlg-ops-node:focus .ktlg-ops-node-name,.ktlg-ops-node.is-active .ktlg-ops-node-name{color:#ffe0a6}
.ktlg-ops-node[data-key="chronos"]{left:50%;top:8%}.ktlg-ops-node[data-key="locke"]{left:22%;top:19%}.ktlg-ops-node[data-key="vex"]{left:78%;top:18%}.ktlg-ops-node[data-key="lex"]{left:91%;top:48%}.ktlg-ops-node[data-key="nexus"]{left:80%;top:81%}.ktlg-ops-node[data-key="ruin"]{left:50%;top:93%}.ktlg-ops-node[data-key="atlas"]{left:19%;top:82%}.ktlg-ops-node[data-key="custos"]{left:8%;top:49%}

.ktlg-ops-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px;padding:15px 0 22px}
.ktlg-ops-card{position:relative;min-height:212px;padding:20px 21px;overflow:hidden;border:1px solid #2a3850;border-radius:7px;background:linear-gradient(145deg,rgba(12,22,38,.96),rgba(8,17,30,.96));color:inherit!important;text-decoration:none!important;transition:.18s ease}
.ktlg-ops-card:hover,.ktlg-ops-card:focus,.ktlg-ops-card.is-active{border-color:#c79748;background:linear-gradient(145deg,rgba(18,31,50,.99),rgba(9,19,33,.99));transform:translateY(-2px);box-shadow:0 14px 35px rgba(0,0,0,.2)}
.ktlg-ops-card-num{display:inline-grid;width:31px;height:31px;place-items:center;border:1px solid #956f36;border-radius:4px;color:#e2b15e;font:600 12px/1 "IBM Plex Mono",monospace}
.ktlg-ops-card h2{margin:9px 0 0;color:#fff;font:700 27px/1 "Playfair Display",Georgia,serif}
.ktlg-ops-card-alias{margin-top:4px;color:#557fc8;font-size:12px}
.ktlg-ops-card p{width:72%;margin:18px 0 15px;color:#98a7bb;font-size:13px;line-height:1.55}
.ktlg-ops-card-link{color:#4d85e4;font-size:13px}
.ktlg-ops-card-art{position:absolute;right:-7px;top:11px;width:122px;height:140px;pointer-events:none}
.ktlg-ops-card-art::after{content:"";position:absolute;inset:auto 0 0;height:67%;background:linear-gradient(transparent,#091220 91%)}
.ktlg-ops-card-art img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 14px 16px rgba(0,0,0,.6))}
.ktlg-ops-card-fallback{position:absolute;right:19px;top:16px;width:68px;height:68px;display:grid;place-items:center;border:1px solid #314564;border-radius:50%;color:#527fc5;font:700 25px/1 "Playfair Display",serif}
.ktlg-ops-bottom{display:flex;align-items:center;gap:28px;margin:0 0 50px;padding:27px 31px;border:1px solid #243551;border-radius:7px;background:linear-gradient(90deg,#0b1728,#0c1a2c)}
.ktlg-ops-compass{flex:0 0 82px;width:82px;height:82px;display:grid;place-items:center;border:1px solid #2a3d59;border-radius:50%;color:#c18e3f;font-size:41px}
.ktlg-ops-bottom h2{margin:0 0 7px;color:#fff;font:600 26px/1.14 "Playfair Display",serif}
.ktlg-ops-bottom p{max-width:720px;margin:0;color:#8f9db1;font-size:13px;line-height:1.55}
.ktlg-ops-bottom .ktlg-ops-primary{margin-left:auto;white-space:nowrap}

/* DETAIL */
.ktlg-op-shell{width:min(1330px,calc(100% - 56px));margin:0 auto}
.ktlg-op-hero{position:relative;display:grid;grid-template-columns:430px minmax(0,1fr);min-height:385px;overflow:hidden;border-bottom:1px solid var(--ops-line)}
.ktlg-op-art{position:relative;min-height:365px;display:flex;align-items:center;justify-content:center}
.ktlg-op-art::before{content:"";position:absolute;inset:8% 4%;border-radius:50%;background:radial-gradient(circle,rgba(43,93,168,.20),transparent 58%),repeating-radial-gradient(circle,transparent 0 32px,rgba(76,127,212,.11) 33px 34px);mask-image:radial-gradient(circle,black,transparent 70%)}
.ktlg-op-art img{position:relative;z-index:2;width:345px;height:345px;object-fit:contain;filter:drop-shadow(0 25px 30px rgba(0,0,0,.66))}
.ktlg-op-art-fallback{position:relative;z-index:1;width:255px;height:255px;display:grid;place-items:center;border:1px solid #30476a;border-radius:50%;background:radial-gradient(circle,#132441,#08111e);color:#547fc7;font:700 94px/1 "Playfair Display",serif}
.ktlg-op-number{position:absolute;left:7px;top:17px;color:#64738a;font:500 11px/1 "IBM Plex Mono",monospace;letter-spacing:.06em}
.ktlg-op-number strong{display:block;margin-top:8px;color:#bdc8d9;font:400 37px/1 "Playfair Display",serif}
.ktlg-op-copy{padding:47px 36px 30px}
.ktlg-op-overline{color:#c89441;font:600 10px/1.3 "IBM Plex Mono",monospace;letter-spacing:.13em;text-transform:uppercase}
.ktlg-op-copy h1{margin:7px 0 3px;color:#fff;font:700 clamp(51px,5.2vw,72px)/.94 "Playfair Display",serif;letter-spacing:-.045em}
.ktlg-op-alias{color:#3e70c9;font:600 28px/1.1 "Playfair Display",serif}
.ktlg-op-topic{margin:27px 0 7px;color:#fff;font-size:13px;font-weight:700;text-transform:uppercase}
.ktlg-op-description{max-width:660px;margin:0;color:#9baabd;font-size:14px;line-height:1.68}
.ktlg-op-chips{display:flex;flex-wrap:wrap;gap:16px;margin:20px 0}.ktlg-op-chip{color:#648ed7;font-size:11px}
.ktlg-op-layout{display:grid;grid-template-columns:minmax(0,1fr) 285px}.ktlg-op-main{min-width:0}
.ktlg-op-tabs{position:sticky;top:78px;z-index:30;display:flex;overflow:auto;border-bottom:1px solid var(--ops-line);background:rgba(8,16,28,.96);backdrop-filter:blur(12px)}
.ktlg-op-tabs a{flex:0 0 auto;padding:18px 22px;border-bottom:2px solid transparent;color:#a6b3c5!important;text-decoration:none!important;font-size:12px}
.ktlg-op-tabs a:hover,.ktlg-op-tabs a.is-active{border-color:var(--ops-blue2);color:var(--ops-blue2)!important}
.ktlg-op-content{padding:33px 30px 58px 0}.ktlg-op-content section{scroll-margin-top:150px}
.ktlg-op-content h2{margin:0 0 11px;color:#fff;font:600 27px/1.14 "Playfair Display",serif}
.ktlg-op-content section>p{max-width:820px;margin:0;color:#9ba9bb;font-size:14px;line-height:1.72}
.ktlg-op-mini-grid{display:grid;grid-template-columns:repeat(4,1fr);margin:26px 0 40px;border:1px solid var(--ops-line);border-radius:6px;overflow:hidden}
.ktlg-op-mini{min-height:150px;padding:21px 18px;border-right:1px solid var(--ops-line);background:linear-gradient(145deg,#0e1a2c,#0b1525)}.ktlg-op-mini:last-child{border-right:0}
.ktlg-op-mini-icon{color:#4a7fd5;font-size:24px}.ktlg-op-mini b{display:block;margin:13px 0 7px;color:#fff;font-size:11px;letter-spacing:.07em;text-transform:uppercase}.ktlg-op-mini span{color:#8e9cb0;font-size:11px;line-height:1.52}
.ktlg-op-gap{margin-top:38px}.ktlg-op-articles{display:grid;gap:10px;margin-top:20px}
.ktlg-op-article{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:center;padding:18px 19px;border:1px solid var(--ops-line);border-radius:6px;background:#0c1626}
.ktlg-op-article:hover{border-color:#355078}.ktlg-op-article b{display:block;color:#edf2fa;font-size:13px}.ktlg-op-article span{display:block;margin-top:4px;color:#7e90a8;font-size:11px}.ktlg-op-article a{color:#4c7fd4!important;text-decoration:none!important;font-size:12px;white-space:nowrap}
.ktlg-op-side{padding:0 0 45px 18px;border-left:1px solid var(--ops-line)}.ktlg-op-sidebox{margin-bottom:12px;padding:18px;border:1px solid var(--ops-line);background:#0b1524}.ktlg-op-sidebox:first-child{position:sticky;top:145px}
.ktlg-op-side h3{margin:0 0 14px;color:#fff;font:600 17px/1.2 "Playfair Display",serif}.ktlg-op-side ul{margin:0;padding:0 0 0 17px}.ktlg-op-side li{margin:10px 0;color:#8f9eb2;font-size:11px}.ktlg-op-side a{text-decoration:none!important}.ktlg-op-side a:hover{color:#fff!important}
.ktlg-op-related a{display:block;margin:13px 0;color:#e0e7f2!important;font-size:12px}.ktlg-op-related small{display:block;margin-top:3px;color:#74849a;font-size:10px}
.ktlg-op-nextprev{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:45px}.ktlg-op-navcard{padding:17px 18px;border:1px solid var(--ops-line);border-radius:6px;background:#0b1627;text-decoration:none!important}.ktlg-op-navcard:last-child{text-align:right}.ktlg-op-navcard small{display:block;margin-bottom:4px;color:#74859d;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.ktlg-op-navcard b{color:#e8eef8;font-size:13px}

@media(max-width:1180px){.ktlg-ops-hero{grid-template-columns:1fr;min-height:auto;padding-bottom:0}.ktlg-ops-copy{max-width:760px}.ktlg-ops-map{min-height:485px}.ktlg-ops-cards{grid-template-columns:repeat(2,1fr)}.ktlg-op-hero{grid-template-columns:360px 1fr}.ktlg-op-art img{width:295px;height:295px}}
@media(max-width:900px){.ktlg-ops-shell,.ktlg-op-shell{width:min(100% - 28px,760px)}.ktlg-ops-copy h1{font-size:60px}.ktlg-ops-map{min-height:0;display:grid;grid-template-columns:repeat(2,1fr);gap:10px;padding:18px 0 22px}.ktlg-ops-network,.ktlg-ops-grid,.ktlg-ops-container,.ktlg-ops-container-glow{display:none}.ktlg-ops-node{position:relative!important;left:auto!important;top:auto!important;width:100%;padding:14px 8px;transform:none;border:1px solid var(--ops-line);border-radius:6px;background:#0b1525}.ktlg-ops-cards{grid-template-columns:1fr}.ktlg-ops-bottom{align-items:flex-start;flex-direction:column}.ktlg-ops-bottom .ktlg-ops-primary{margin-left:0}.ktlg-op-hero{grid-template-columns:1fr}.ktlg-op-art{min-height:310px}.ktlg-op-copy{padding:14px 8px 32px}.ktlg-op-layout{grid-template-columns:1fr}.ktlg-op-side{display:none}.ktlg-op-tabs{top:68px}.ktlg-op-content{padding-right:0}.ktlg-op-mini-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.ktlg-ops-shell,.ktlg-op-shell{width:calc(100% - 24px)}.ktlg-ops-copy h1{font-size:49px}.ktlg-ops-kicker{font-size:10px;letter-spacing:.19em}.ktlg-ops-copy>p{font-size:16px}.ktlg-ops-map{grid-template-columns:1fr 1fr}.ktlg-ops-card p{width:66%}.ktlg-op-copy h1{font-size:48px}.ktlg-op-alias{font-size:24px}.ktlg-op-mini-grid{grid-template-columns:1fr}.ktlg-op-mini{border-right:0;border-bottom:1px solid var(--ops-line)}.ktlg-op-article{grid-template-columns:1fr}.ktlg-op-nextprev{grid-template-columns:1fr}.ktlg-op-navcard:last-child{text-align:left}}
@media(prefers-reduced-motion:reduce){.ktlg-ops *{scroll-behavior:auto!important;transition:none!important}}

/* =========================================================
   MOBILE UX PATCH 2026-08-14
   Mobile nie jest pomniejszonym desktopem.
   - radialna mapa znika,
   - lista Operatorów = jeden czytelny wiersz pod drugim,
   - detail hero układa się pionowo,
   - sidebar znika,
   - CTA i nawigacja są wygodne dotykowo.
   ========================================================= */

@media(max-width:760px){
  .ktlg-ops-shell,.ktlg-op-shell{
    width:calc(100% - 28px)!important;
    max-width:none!important;
  }

  .ktlg-ops-crumbs{
    padding-top:16px;
    font-size:11px;
    white-space:nowrap;
    overflow-x:auto;
    scrollbar-width:none;
  }
  .ktlg-ops-crumbs::-webkit-scrollbar{display:none}

  /* INDEX: krótszy hero, bez powtarzania mapy pod copy */
  .ktlg-ops-hero{
    display:block!important;
    min-height:0!important;
    padding:24px 0 18px!important;
  }
  .ktlg-ops-copy{
    max-width:none!important;
  }
  .ktlg-ops-copy h1{
    font-size:clamp(47px,14vw,64px)!important;
    line-height:.95!important;
    margin-bottom:16px!important;
  }
  .ktlg-ops-kicker{
    max-width:340px;
    margin-bottom:19px!important;
    font-size:9px!important;
    line-height:1.55!important;
    letter-spacing:.18em!important;
  }
  .ktlg-ops-copy>p{
    max-width:520px!important;
    margin-bottom:22px!important;
    font-size:15px!important;
    line-height:1.62!important;
  }
  .ktlg-ops-copy .ktlg-ops-primary{
    width:100%;
    min-height:48px;
  }

  /* Radialna wizualizacja jest desktopowym elementem. Na telefonie tylko dubluje listę. */
  .ktlg-ops-map{
    display:none!important;
  }

  /* LISTA: jeden Operator = jeden wiersz */
  .ktlg-ops-cards{
    display:flex!important;
    flex-direction:column!important;
    gap:9px!important;
    padding:14px 0 24px!important;
  }
  .ktlg-ops-card{
    display:grid!important;
    grid-template-columns:58px minmax(0,1fr) 34px!important;
    grid-template-rows:auto auto auto!important;
    column-gap:14px!important;
    align-items:center!important;
    min-height:112px!important;
    padding:15px 14px!important;
    border-radius:8px!important;
    transform:none!important;
  }
  .ktlg-ops-card-num{
    grid-column:1;
    grid-row:1 / span 3;
    width:48px!important;
    height:48px!important;
    align-self:center;
    border-color:#745a2e!important;
    font-size:11px!important;
  }
  .ktlg-ops-card h2{
    grid-column:2;
    grid-row:1;
    margin:0!important;
    padding-right:0!important;
    font-size:24px!important;
    line-height:1.05!important;
  }
  .ktlg-ops-card-alias{
    grid-column:2;
    grid-row:2;
    margin:3px 0 0!important;
    font-size:11px!important;
  }
  .ktlg-ops-card p{
    grid-column:2;
    grid-row:3;
    width:auto!important;
    margin:8px 0 0!important;
    color:#8fa0b7!important;
    font-size:12px!important;
    line-height:1.45!important;
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
  }
  .ktlg-ops-card-link{
    grid-column:3;
    grid-row:1 / span 3;
    align-self:center;
    justify-self:end;
    width:32px;
    height:32px;
    overflow:hidden;
    color:transparent!important;
    font-size:0!important;
  }
  .ktlg-ops-card-link::after{
    content:'→';
    display:grid;
    place-items:center;
    width:32px;
    height:32px;
    border:1px solid #2c4160;
    border-radius:50%;
    color:#5a8ee8;
    font-size:17px;
  }

  /* Po dograniu grafik miniatura pojawia się zamiast numeru po lewej.
     Numer nadal zostaje jako mały badge w rogu. */
  .ktlg-ops-card-art{
    grid-column:1;
    grid-row:1 / span 3;
    position:relative!important;
    top:auto!important;
    right:auto!important;
    width:58px!important;
    height:74px!important;
    align-self:center;
    z-index:2;
  }
  .ktlg-ops-card-art::after{height:38%!important}
  .ktlg-ops-card-art img{
    width:100%!important;
    height:100%!important;
    object-fit:contain!important;
  }
  .ktlg-ops-card-fallback{display:none!important}
  .ktlg-ops-card:has(.ktlg-ops-card-art img:not([style*="display: none"])) .ktlg-ops-card-num{
    position:absolute;
    left:8px;
    top:8px;
    z-index:5;
    width:28px!important;
    height:28px!important;
    background:#091321;
  }

  .ktlg-ops-bottom{
    margin-bottom:34px!important;
    padding:20px!important;
    gap:15px!important;
  }
  .ktlg-ops-compass{display:none!important}
  .ktlg-ops-bottom h2{font-size:23px!important}
  .ktlg-ops-bottom p{font-size:12px!important}
  .ktlg-ops-bottom .ktlg-ops-primary{
    width:100%;
    margin-left:0!important;
  }

  /* DETAIL: prawdziwy układ mobilny */
  .ktlg-op-hero{
    display:flex!important;
    flex-direction:column!important;
    min-height:0!important;
    padding-top:12px;
  }
  .ktlg-op-art{
    order:1;
    min-height:250px!important;
    padding-top:16px;
  }
  .ktlg-op-art img{
    width:min(250px,74vw)!important;
    height:min(250px,74vw)!important;
  }
  .ktlg-op-art-fallback{
    width:210px!important;
    height:210px!important;
    font-size:76px!important;
  }
  .ktlg-op-number{
    left:0!important;
    top:6px!important;
  }
  .ktlg-op-number strong{font-size:30px!important}

  .ktlg-op-copy{
    order:2;
    padding:12px 0 28px!important;
  }
  .ktlg-op-overline{font-size:9px!important}
  .ktlg-op-copy h1{
    margin-top:8px!important;
    font-size:48px!important;
    line-height:.98!important;
  }
  .ktlg-op-alias{font-size:25px!important}
  .ktlg-op-topic{
    margin-top:22px!important;
    font-size:11px!important;
  }
  .ktlg-op-description{
    max-width:none!important;
    font-size:13px!important;
    line-height:1.62!important;
  }
  .ktlg-op-chips{
    gap:8px 12px!important;
    margin:16px 0 20px!important;
  }
  .ktlg-op-chip{font-size:10px!important}
  .ktlg-op-copy .ktlg-ops-primary{
    width:100%;
    min-height:48px;
  }

  .ktlg-op-layout{display:block!important}
  .ktlg-op-side{display:none!important}
  .ktlg-op-tabs{
    top:0!important;
    margin-inline:-14px;
    padding-inline:14px;
    overscroll-behavior-x:contain;
    scrollbar-width:none;
  }
  .ktlg-op-tabs::-webkit-scrollbar{display:none}
  .ktlg-op-tabs a{
    min-height:48px;
    padding:16px 15px!important;
    font-size:11px!important;
  }
  .ktlg-op-content{padding:27px 0 44px!important}
  .ktlg-op-content h2{font-size:25px!important}
  .ktlg-op-content section>p{font-size:13px!important;line-height:1.68!important}

  /* Cztery fakty są bardziej czytelne jako 2x2 niż jako jedna długa kolumna. */
  .ktlg-op-mini-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin:23px 0 34px!important;
  }
  .ktlg-op-mini{
    min-height:135px!important;
    padding:17px 14px!important;
    border-bottom:1px solid var(--ops-line);
  }
  .ktlg-op-mini:nth-child(2n){border-right:0!important}
  .ktlg-op-mini:nth-last-child(-n+2){border-bottom:0!important}
  .ktlg-op-mini b{font-size:10px!important}
  .ktlg-op-mini span{font-size:10px!important}

  .ktlg-op-article{
    grid-template-columns:1fr auto!important;
    gap:12px!important;
    padding:16px 14px!important;
  }
  .ktlg-op-article b{font-size:12px!important}
  .ktlg-op-article span{font-size:10px!important}
  .ktlg-op-article a{font-size:11px!important}
  .ktlg-op-nextprev{grid-template-columns:1fr!important}
  .ktlg-op-navcard:last-child{text-align:left!important}
}

@media(max-width:390px){
  .ktlg-ops-card{
    grid-template-columns:52px minmax(0,1fr) 30px!important;
    column-gap:11px!important;
    padding:14px 12px!important;
  }
  .ktlg-ops-card-art{width:52px!important;height:68px!important}
  .ktlg-ops-card h2{font-size:22px!important}
  .ktlg-op-mini-grid{grid-template-columns:1fr!important}
  .ktlg-op-mini{border-right:0!important;border-bottom:1px solid var(--ops-line)!important}
  .ktlg-op-mini:last-child{border-bottom:0!important}
}


/* ==========================================================
   THE OPERATORS — STICKY / FALLBACK REPAIR 2026-08-14 v2
   ========================================================== */

/* Obraz załadowany = fallback literowy ma zniknąć.
   :has() jest dodatkowym zabezpieczeniem niezależnym od JS/cache. */
.ktlg-ops .ktlg-op-art:has(> img[data-operator-image]:not([hidden])) > .ktlg-op-art-fallback,
.ktlg-ops .ktlg-ops-node-portrait:has(> img[data-operator-image]:not([hidden])) > .ktlg-ops-node-fallback,
.ktlg-ops .ktlg-ops-card-art:has(> img[data-operator-image]:not([hidden])) > .ktlg-ops-card-fallback{
  display:none!important;
}
.ktlg-ops img[data-operator-image][hidden]{
  display:none!important;
}

/* Stary model: sticky był tylko pierwszy box sidebara.
   To powodowało, że drugi box wjeżdżał pod pierwszy. */
.ktlg-ops .ktlg-op-sidebox:first-child{
  position:static!important;
  top:auto!important;
}

/* Cały sidebar jest teraz jednym sticky blokiem. */
.ktlg-ops .ktlg-op-side{
  align-self:start;
  position:sticky!important;
  top:164px!important;
  max-height:calc(100vh - 182px);
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-width:thin;
  padding-top:10px;
}

/* Nowa wstążka kontekstowa. */
.ktlg-ops .ktlg-op-stickybar{
  position:sticky;
  top:78px;
  z-index:46;
  display:grid;
  grid-template-columns:260px minmax(0,1fr);
  min-height:64px;
  border-top:1px solid var(--ops-line);
  border-bottom:1px solid var(--ops-line);
  background:rgba(7,15,27,.965);
  box-shadow:0 12px 28px rgba(0,0,0,.16);
  backdrop-filter:blur(14px);
}

.ktlg-ops .ktlg-op-sticky-id{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  grid-template-rows:auto auto;
  column-gap:10px;
  align-content:center;
  padding:9px 17px 9px 2px;
  border-right:1px solid var(--ops-line);
  color:inherit!important;
  text-decoration:none!important;
}
.ktlg-ops .ktlg-op-sticky-no{
  grid-row:1 / span 2;
  align-self:center;
  display:grid;
  place-items:center;
  width:34px;
  height:34px;
  border:1px solid rgba(215,163,74,.55);
  border-radius:4px;
  color:var(--ops-amber);
  font:600 10px/1 "IBM Plex Mono",monospace;
}
.ktlg-ops .ktlg-op-sticky-name{
  min-width:0;
  align-self:end;
  overflow:hidden;
  color:#eef3fb;
  font:600 13px/1.2 Geist,Inter,sans-serif;
  white-space:nowrap;
  text-overflow:ellipsis;
}
.ktlg-ops .ktlg-op-sticky-status{
  min-width:0;
  align-self:start;
  margin-top:3px;
  overflow:hidden;
  color:#6d89b8;
  font:600 9px/1.2 "IBM Plex Mono",monospace;
  letter-spacing:.07em;
  text-transform:uppercase;
  white-space:nowrap;
  text-overflow:ellipsis;
}

/* Tabs należą teraz do stickybar — nie są sticky osobno. */
.ktlg-ops .ktlg-op-stickybar .ktlg-op-tabs{
  position:static!important;
  top:auto!important;
  z-index:auto!important;
  min-width:0;
  border:0!important;
  background:transparent!important;
  backdrop-filter:none!important;
}
.ktlg-ops .ktlg-op-stickybar .ktlg-op-tabs a{
  display:flex;
  align-items:center;
  min-height:63px;
}

/* Anchor nie może schować się pod globalnym headerem + ribbonem. */
.ktlg-ops .ktlg-op-content section{
  scroll-margin-top:165px!important;
}

@media(max-width:1100px) and (min-width:901px){
  .ktlg-ops .ktlg-op-stickybar{
    grid-template-columns:220px minmax(0,1fr);
  }
  .ktlg-ops .ktlg-op-stickybar .ktlg-op-tabs a{
    padding-inline:16px;
  }
}

/* Prawdziwy mobile: sidebar znika, ale kontekst Operatora zostaje na górze. */
@media(max-width:900px){
  .ktlg-ops .ktlg-op-side{
    display:none!important;
    position:static!important;
    max-height:none!important;
    overflow:visible!important;
  }

  .ktlg-ops .ktlg-op-stickybar{
    top:68px;
    grid-template-columns:1fr;
    min-height:0;
    margin-inline:-14px;
  }
  .ktlg-ops .ktlg-op-sticky-id{
    grid-template-columns:auto auto minmax(0,1fr);
    grid-template-rows:1fr;
    column-gap:9px;
    min-height:40px;
    padding:6px 14px;
    border-right:0;
    border-bottom:1px solid var(--ops-line);
  }
  .ktlg-ops .ktlg-op-sticky-no{
    grid-row:auto;
    width:26px;
    height:26px;
    font-size:8px;
  }
  .ktlg-ops .ktlg-op-sticky-name{
    align-self:center;
    font-size:11px;
  }
  .ktlg-ops .ktlg-op-sticky-status{
    align-self:center;
    justify-self:end;
    margin:0;
    font-size:8px;
    text-align:right;
  }

  .ktlg-ops .ktlg-op-stickybar .ktlg-op-tabs{
    margin-inline:0!important;
    padding-inline:8px!important;
  }
  .ktlg-ops .ktlg-op-stickybar .ktlg-op-tabs a{
    min-height:45px;
    padding:14px 12px!important;
  }
  .ktlg-ops .ktlg-op-content section{
    scroll-margin-top:175px!important;
  }
}

@media(max-width:520px){
  .ktlg-ops .ktlg-op-sticky-status{
    max-width:42vw;
  }
}

.ktlg-container-code{font:600 11px/1.1 "IBM Plex Mono",monospace;letter-spacing:.08em}
.ktlg-container-weight{font-size:9px;opacity:.86}

@media(max-width:1180px){.ktlg-ops-container{width:390px;height:198px}.ktlg-ops-container-glow{width:430px;height:250px}}
