.ks-kata{
  /* Brandbook v2.0 – márkaszínek */
  --tinta:#0E133E; --kek:#23395D; --kek80:#4F617D; --kek60:#7B889E; --kek40:#A7B0BE; --kek20:#D3D7DF; --kek08:#EEF0F4;
  --tech:#1275BB; --piros:#FF0000; --white:#fff;
  --r:10px; --r-lg:18px;
  --display:"Saira Condensed","Saira",sans-serif; --saira:"Saira",sans-serif; --lexend:"Lexend",system-ui,sans-serif;
  font-family:var(--lexend); color:var(--kek80); font-size:16px; line-height:1.55; font-weight:400;
  width:100%; max-width:1240px; margin:0 auto; text-align:left; position:relative; box-sizing:border-box;
}
/* A tördelés a kalkulátor saját szélességéhez igazodik (container query), nem a böngészőablakéhoz –
   így oldalsávos vagy keskeny tartalomoszlopban is helyes. A lebegő mobil sáv (.kdock) a konténeren kívül van. */
.ks-kata .ks-kata-in{container:kskata/inline-size}
/* Méretező: a konténer saját tartalma nem ad szélességet, ezért ha a téma „tartalomhoz igazodó” szélességű dobozba
   (pl. sor irányú flex elem) teszi a kalkulátort, ez adja a természetes szélességét: legfeljebb 1240px, legalább 310px. */
.ks-kata .ks-kata-sizer{display:flex;flex-wrap:wrap;height:0;overflow:hidden;visibility:hidden}
.ks-kata .ks-kata-sizer i{flex:0 0 310px;max-width:100%}
.ks-kata *,.ks-kata *::before,.ks-kata *::after{box-sizing:border-box}
.ks-kata [hidden]{display:none!important}
.ks-kata p{margin:0}
.ks-kata b,.ks-kata strong{font-weight:700;color:var(--tinta)}
.ks-kata .ksr{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}

/* ---------- HERO ---------- */
.ks-kata .kh{position:relative;overflow:hidden;background:var(--tinta);border-radius:var(--r-lg);padding:clamp(28px,5vw,64px) clamp(20px,5vw,64px) clamp(110px,12vw,140px);padding:clamp(28px,5cqi,64px) clamp(20px,5cqi,64px) clamp(110px,12cqi,140px);color:#fff;isolation:isolate}
.ks-kata .kh-glow{position:absolute;inset:0;z-index:-1;pointer-events:none}
.ks-kata .kh-glow svg{position:absolute;left:-5%;bottom:-8%;width:110%;height:90%}
.ks-kata .kh-glow::before{content:"";position:absolute;width:60%;height:120%;right:-18%;top:-40%;background:radial-gradient(closest-side,rgba(18,117,187,.55),transparent);filter:blur(10px)}
.ks-kata .kh-glow::after{content:"";position:absolute;width:45%;height:90%;left:-12%;bottom:-45%;background:radial-gradient(closest-side,rgba(255,0,0,.35),transparent);filter:blur(10px)}
.ks-kata .kh-wave{animation:ksWave 14s ease-in-out infinite alternate;transform-origin:center}
.ks-kata .kh-wave.w2{animation-duration:18s;animation-direction:alternate-reverse}
@keyframes ksWave{from{transform:translateX(-3%) scaleY(.92)}to{transform:translateX(3%) scaleY(1.08)}}
.ks-kata .kh-k{position:absolute;right:clamp(-60px,-2vw,0px);right:clamp(-60px,-2cqi,0px);top:50%;transform:translateY(-58%);width:clamp(180px,26vw,340px);width:clamp(180px,26cqi,340px);opacity:.9;z-index:-1}
@container kskata (max-width:760px){.ks-kata .kh-k{opacity:.25;right:-60px}}
.ks-kata .kh-in{max-width:720px}
.ks-kata .kh-eyebrow{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.01em;text-transform:uppercase;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:5px 14px 5px 10px;margin:0 0 20px}
.ks-kata .kh-eyebrow i{width:8px;height:8px;border-radius:50%;background:var(--piros);box-shadow:0 0 0 4px rgba(255,0,0,.25);animation:ksPulse 2.4s ease-in-out infinite}
@keyframes ksPulse{50%{box-shadow:0 0 0 8px rgba(255,0,0,0)}}
.ks-kata .kh-title{font-family:var(--display)!important;font-weight:800!important;text-transform:uppercase;font-size:clamp(40px,6.4vw,76px)!important;font-size:clamp(40px,6.4cqi,76px)!important;line-height:.95!important;letter-spacing:0!important;color:#fff!important;margin:0 0 20px!important}
.ks-kata .kh-title mark{background:var(--piros);color:#fff;padding:0 .14em;margin-left:.04em;display:inline-block;transform:skewX(-6deg);line-height:1.02}
.ks-kata .kh-title mark span{display:inline-block;transform:skewX(6deg)}
.ks-kata .kh-lead{font-size:clamp(16px,1.6vw,19px);font-size:clamp(16px,1.6cqi,19px);color:rgba(255,255,255,.82);max-width:600px;margin:0 0 28px}
.ks-kata .kh-facts{display:flex;flex-wrap:wrap;gap:10px}
.ks-kata .kh-fact{display:flex;flex-direction:column;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.14);border-radius:var(--r);padding:10px 16px;min-width:140px;backdrop-filter:blur(6px)}
.ks-kata .kh-fact b{font-family:var(--display);font-weight:800;font-size:24px;color:#fff;line-height:1.1;letter-spacing:0}
.ks-kata .kh-fact span{font-size:13px;color:rgba(255,255,255,.75)}
@container kskata (max-width:600px){
  .ks-kata .kh-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .ks-kata .kh-fact{min-width:0;padding:8px 10px}
  .ks-kata .kh-fact b{font-size:18px}
  .ks-kata .kh-fact span{font-size:11px;line-height:1.3}
}

/* ---------- RÁCS ---------- */
.ks-kata .kg{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:24px;align-items:start;margin:calc(-1 * clamp(80px,9vw,100px)) clamp(0px,2vw,24px) 0;margin:calc(-1 * clamp(80px,9cqi,100px)) clamp(0px,2cqi,24px) 0;position:relative}
@container kskata (max-width:960px){.ks-kata .kg{grid-template-columns:minmax(0,1fr);margin-left:0;margin-right:0}}
.ks-kata .kcard{background:#fff;border-radius:var(--r-lg);box-shadow:0 1px 2px rgba(14,19,62,.06),0 18px 48px -12px rgba(14,19,62,.22)}

/* ---------- ŰRLAP ---------- */
.ks-kata .kf{padding:clamp(20px,3.2vw,36px);padding:clamp(20px,3.2cqi,36px);margin:0}
.ks-kata .ks{padding:0 0 28px;margin:0 0 28px;border-bottom:1px solid var(--kek20)}
.ks-kata .ks.last{border-bottom:0;margin-bottom:0;padding-bottom:0}
.ks-kata .ks-h{display:flex;align-items:center;gap:14px;margin:0 0 18px}
.ks-kata .ks-n{flex:none;font-family:var(--display);font-weight:800;font-size:15px;color:var(--tech);letter-spacing:0;border:1.5px solid var(--kek20);border-radius:8px;width:40px;height:40px;display:grid;place-items:center}
.ks-kata .ks-t{font-family:var(--lexend)!important;font-weight:800!important;font-size:clamp(19px,2vw,22px)!important;font-size:clamp(19px,2cqi,22px)!important;line-height:1.25!important;letter-spacing:-.01em!important;color:var(--tinta)!important;margin:0!important;text-transform:none!important}
.ks-kata .ks-t small{display:block;font-weight:400;font-size:14px;color:var(--kek80);letter-spacing:0;margin-top:2px}

.ks-kata .kc{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@container kskata (max-width:520px){.ks-kata .kc{grid-template-columns:1fr}}
.ks-kata label.kc-o{display:grid;grid-template-columns:44px 1fr;gap:4px 14px;align-items:start;position:relative;cursor:pointer;border:1.5px solid var(--kek20);border-radius:var(--r);padding:16px;background:#fff;transition:border-color .2s,box-shadow .2s,transform .2s;margin:0;line-height:1.35;vertical-align:initial}
.ks-kata label.kc-o:hover{border-color:var(--kek40);transform:translateY(-1px)}
.ks-kata .kc-o input{position:absolute;opacity:0;pointer-events:none}
.ks-kata .kc-o.on{border-color:var(--tech);box-shadow:0 0 0 3px rgba(18,117,187,.14),0 10px 24px -12px rgba(18,117,187,.5)}
.ks-kata .kc-o:focus-within{outline:2px solid var(--tech);outline-offset:3px}
.ks-kata .kc-ic{grid-row:span 3;width:44px;height:44px;border-radius:10px;background:var(--kek08);display:grid;place-items:center;color:var(--kek);transition:background .2s,color .2s}
.ks-kata .kc-o.on .kc-ic{background:var(--tech);color:#fff}
.ks-kata .kc-ic svg{width:22px;height:22px}
.ks-kata .kc-o b{font-size:16px;color:var(--tinta);padding-right:22px}
.ks-kata .kc-o .kc-p{font-family:var(--saira);font-weight:700;font-size:16px;color:var(--tech);white-space:nowrap}
.ks-kata .kc-o small{font-size:13px;color:var(--kek80)}
.ks-kata .kc-o::after{content:"";position:absolute;right:14px;top:14px;width:20px;height:20px;border-radius:50%;border:1.5px solid var(--kek20);background:#fff center/12px no-repeat;transition:all .2s}
.ks-kata .kc-o.on::after{border-color:var(--tech);background-color:var(--tech);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
@container kskata (min-width:961px) and (max-width:1100px){.ks-kata .kc-o .kc-ic{display:none}.ks-kata label.kc-o{grid-template-columns:1fr}}

.ks-kata .kchips{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 0}
.ks-kata .kchips button{all:unset;box-sizing:border-box;cursor:pointer;font-family:var(--lexend);font-size:14px;font-weight:500;color:var(--kek);border:1.5px solid var(--kek20);border-radius:999px;padding:7px 14px;transition:all .15s;line-height:1.2}
.ks-kata .kchips button:hover{border-color:var(--kek40)}
.ks-kata .kchips button[aria-pressed="true"]{background:var(--kek);border-color:var(--kek);color:#fff}
.ks-kata .kchips button:focus-visible{outline:2px solid var(--tech);outline-offset:2px}

.ks-kata .krow{display:flex;flex-wrap:wrap;gap:12px 16px;align-items:flex-end;justify-content:space-between;margin:0 0 18px}
.ks-kata .kseg{display:inline-flex;background:var(--kek08);border-radius:999px;padding:4px;gap:2px;position:relative}
.ks-kata .kseg button{all:unset;box-sizing:border-box;cursor:pointer;font-family:var(--saira);font-weight:600;font-size:14px;letter-spacing:.02em;padding:7px 18px;border-radius:999px;color:var(--kek);transition:background .2s,color .2s;line-height:1.2}
.ks-kata .kseg button[aria-pressed="true"]{background:var(--tinta);color:#fff}
.ks-kata .kseg button:focus-visible{outline:2px solid var(--tech);outline-offset:2px}
.ks-kata label.kmini{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--tinta);letter-spacing:-.01em;white-space:nowrap;margin:0;line-height:1.2;vertical-align:initial}
.ks-kata label.kmini{flex-wrap:wrap;max-width:100%}
.ks-kata label.kmini select{max-width:100%!important}

.ks-kata .kfld{display:block;margin:0 0 18px}
.ks-kata .klbl{display:block;font-family:var(--lexend);font-weight:700;font-size:14px;color:var(--tinta);line-height:1.35;margin:0;letter-spacing:-.01em}
.ks-kata .klbl small{display:block;font-weight:400;color:var(--kek80);font-size:12.5px;letter-spacing:0}
.ks-kata .kin{position:relative;display:flex;align-items:center}
.ks-kata .kin input,.ks-kata .kfld select,.ks-kata .kmini select,.ks-kata .klead input[type=email]{
  width:100%!important;height:52px!important;margin:0!important;border:1.5px solid var(--kek20)!important;border-radius:var(--r)!important;
  background:#fff!important;color:var(--tinta)!important;font:600 19px/1.2 var(--saira)!important;padding:0 16px!important;box-shadow:none!important;
  outline:none;transition:border-color .15s,box-shadow .15s;-webkit-appearance:none;appearance:none;letter-spacing:0}
.ks-kata .kin input{padding-right:76px!important;text-align:right!important;font-variant-numeric:tabular-nums}
.ks-kata .kin.sm input{padding-right:44px!important}
.ks-kata .kfld select,.ks-kata .kmini select{cursor:pointer;font:500 15px/1.2 var(--lexend)!important;padding-right:42px!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%2323395D' stroke-width='2'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;background-position:right 16px center!important}
.ks-kata label.kmini select{height:40px!important;width:auto!important;font-size:14px!important;padding:0 36px 0 12px!important;background-position:right 12px center!important}
.ks-kata .kin input:focus,.ks-kata .kfld select:focus,.ks-kata .kmini select:focus,.ks-kata .klead input[type=email]:focus{border-color:var(--tech)!important;box-shadow:0 0 0 4px rgba(18,117,187,.15)!important}
.ks-kata .kin input[aria-invalid="true"],.ks-kata .klead input[aria-invalid="true"]{border-color:var(--piros)!important;box-shadow:0 0 0 4px rgba(255,0,0,.1)!important}
.ks-kata .kunit{position:absolute;right:16px;font-size:13px;color:var(--kek80);pointer-events:none;white-space:nowrap}
.ks-kata .khelp{font-size:13px;color:var(--kek80);margin:-6px 0 16px}

.ks-kata input[type=range].krange{-webkit-appearance:none!important;appearance:none!important;width:100%!important;height:22px!important;background:transparent!important;margin:8px 0 0!important;padding:0!important;border:0!important;cursor:pointer;--p:0%}
.ks-kata input[type=range].krange:focus{outline:none}
.ks-kata input[type=range].krange::-webkit-slider-runnable-track{height:6px;border-radius:999px;background:linear-gradient(90deg,var(--tech) var(--p),var(--kek20) var(--p))}
.ks-kata input[type=range].krange::-moz-range-track{height:6px;border-radius:999px;background:var(--kek20)}
.ks-kata input[type=range].krange::-moz-range-progress{height:6px;border-radius:999px;background:var(--tech)}
.ks-kata input[type=range].krange::-webkit-slider-thumb{-webkit-appearance:none;width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid var(--tech);margin-top:-8px;box-shadow:0 2px 8px rgba(14,19,62,.25);transition:transform .15s}
.ks-kata input[type=range].krange::-moz-range-thumb{width:18px;height:18px;border-radius:50%;background:#fff;border:2px solid var(--tech);box-shadow:0 2px 8px rgba(14,19,62,.25)}
.ks-kata input[type=range].krange:active::-webkit-slider-thumb{transform:scale(1.15)}
.ks-kata input[type=range].krange:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 5px rgba(18,117,187,.3)}

.ks-kata .kcap{background:var(--kek08);border-radius:var(--r);padding:14px 16px 16px;margin:4px 0 0}
.ks-kata .kcap-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}
.ks-kata .kcap-top span{font-size:13px;font-weight:700;color:var(--tinta)}
.ks-kata .kcap-top b{font-family:var(--saira);font-weight:700;font-size:22px;color:var(--tinta);white-space:nowrap;font-variant-numeric:tabular-nums}
.ks-kata .kcap-bar{position:relative;height:8px;border-radius:999px;background:var(--kek20);margin:10px 0 6px}
.ks-kata .kcap-fill{position:absolute;left:0;top:0;bottom:0;border-radius:999px;background:var(--tech);transition:width .45s cubic-bezier(.2,.8,.2,1),background .3s}
.ks-kata .kcap-fill.over{background:var(--piros)}
.ks-kata .kcap-meta{display:flex;justify-content:space-between;gap:10px;font-family:var(--saira);font-weight:500;font-size:12.5px;color:var(--kek80)}

.ks-kata details.kadv{border:1.5px solid var(--kek20);border-radius:var(--r);margin:22px 0 0;background:#fff}
.ks-kata .kadv>summary{list-style:none;cursor:pointer;padding:14px 16px;display:flex;align-items:center;gap:14px}
.ks-kata .kadv>summary::-webkit-details-marker{display:none}
.ks-kata .kadv>summary:focus-visible{outline:2px solid var(--tech);outline-offset:2px;border-radius:var(--r)}
.ks-kata .kadv-ic{flex:none;width:36px;height:36px;border-radius:8px;background:var(--kek08);display:grid;place-items:center;color:var(--kek)}
.ks-kata .kadv-ic svg{width:18px;height:18px}
.ks-kata .kadv>summary b{display:block;font-weight:700;font-size:15px;letter-spacing:-.01em}
.ks-kata .kadv>summary small{display:block;font-size:13px}
.ks-kata .kadv>summary::after{content:"";margin-left:auto;flex:none;width:9px;height:9px;border-right:2px solid var(--kek);border-bottom:2px solid var(--kek);transform:rotate(45deg);transition:transform .25s}
.ks-kata .kadv[open]>summary::after{transform:rotate(-135deg)}
.ks-kata .kadv-b{padding:18px 16px 4px;border-top:1px solid var(--kek20)}

.ks-kata .kerr{margin:18px 0 0;padding:12px 14px 12px 42px;border-radius:var(--r);background:#fff;border:1.5px solid var(--piros);color:var(--tinta);font-size:14px;position:relative}
.ks-kata .kerr::before{content:"!";position:absolute;left:14px;top:13px;width:18px;height:18px;border-radius:50%;background:var(--piros);color:#fff;font:700 12px/18px var(--lexend);text-align:center}

/* ---------- EREDMÉNY ---------- */
.ks-kata .kr{position:sticky;top:110px;overflow:hidden}
@container kskata (max-width:960px){.ks-kata .kr{position:static}}
.ks-kata .kr-top{position:relative;background:var(--tinta);color:#fff;padding:26px clamp(20px,3vw,32px) 28px;padding:26px clamp(20px,3cqi,32px) 28px;overflow:hidden;isolation:isolate}
.ks-kata .kr-top::before{content:"";position:absolute;z-index:-1;width:340px;height:340px;right:-140px;top:-170px;background:radial-gradient(closest-side,rgba(18,117,187,.7),transparent)}
.ks-kata .kr-top::after{content:"";position:absolute;z-index:-1;width:260px;height:260px;left:-130px;bottom:-170px;background:radial-gradient(closest-side,rgba(255,0,0,.38),transparent)}
.ks-kata .kr-lbl{display:flex;justify-content:space-between;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:-.01em;text-transform:uppercase;color:rgba(255,255,255,.78);margin:0 0 6px}
.ks-kata .kr-rate{font-family:var(--saira);font-weight:600;letter-spacing:0;text-transform:none;font-size:13px;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.18);border-radius:999px;padding:3px 10px;white-space:nowrap}
.ks-kata .kr-num{font-family:var(--display);font-weight:800;font-size:clamp(46px,6vw,72px);font-size:clamp(46px,6cqi,72px);line-height:1;color:#fff;font-variant-numeric:tabular-nums;letter-spacing:0;margin:4px 0 6px;word-break:break-word}
.ks-kata .kr-num.neg{color:#FF8080}
.ks-kata .kr-num .u{font-family:var(--saira);font-weight:500;font-size:.3em;color:rgba(255,255,255,.75);margin-left:10px;letter-spacing:.02em;white-space:nowrap}
.ks-kata .kr-num .d{color:rgba(255,255,255,.5);padding:0 .1em}
.ks-kata .kr-sub{font-size:14px;color:rgba(255,255,255,.78)}
.ks-kata .kr-sub b{color:#fff;font-family:var(--saira);font-weight:600}

.ks-kata .kr-body{padding:22px clamp(20px,3vw,32px) 26px;padding:22px clamp(20px,3cqi,32px) 26px}
.ks-kata .kr-h{font-family:var(--display)!important;font-weight:700!important;font-size:17px!important;letter-spacing:-.01em!important;text-transform:uppercase;color:var(--tinta)!important;margin:0 0 12px!important;line-height:1.2!important}
.ks-kata .ksec{margin:24px 0 0;padding:20px 0 0;border-top:1px solid var(--kek20)}
.ks-kata .ksplit{display:flex;gap:2px;height:14px;margin:0 0 14px}
.ks-kata .ksplit i{display:block;height:100%;border-radius:4px;min-width:0;transition:flex-basis .45s cubic-bezier(.2,.8,.2,1)}
.ks-kata .klg{display:grid;gap:8px;margin:0 0 22px}
.ks-kata .klg-r{display:grid;grid-template-columns:12px 1fr auto auto;gap:10px;align-items:center;font-size:14px}
.ks-kata .klg-r i{width:12px;height:12px;border-radius:3px}
.ks-kata .klg-r b{font-family:var(--saira);font-weight:600;color:var(--tinta);font-variant-numeric:tabular-nums;white-space:nowrap}
.ks-kata .klg-r em{font-style:normal;font-family:var(--saira);font-weight:500;font-size:12.5px;color:var(--kek80);min-width:44px;text-align:right;font-variant-numeric:tabular-nums}

.ks-kata details.kbd{border-top:1px solid var(--kek20);padding:14px 0 0;margin:0 0 4px}
.ks-kata .kbd>summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.ks-kata .kbd>summary::-webkit-details-marker{display:none}
.ks-kata .kbd>summary:focus-visible{outline:2px solid var(--tech);outline-offset:4px}
.ks-kata .kbd>summary::after{content:"";width:8px;height:8px;border-right:2px solid var(--kek);border-bottom:2px solid var(--kek);transform:rotate(45deg);transition:transform .25s;margin-right:4px}
.ks-kata .kbd[open]>summary::after{transform:rotate(-135deg)}
.ks-kata .kbd>summary .kr-h{margin:0!important}
.ks-kata .kbr{display:flex;justify-content:space-between;gap:12px;padding:8px 0;font-size:14px;border-bottom:1px dashed var(--kek20)}
.ks-kata .kbr:first-of-type{margin-top:8px}
.ks-kata .kbr b{font-family:var(--saira);font-weight:600;white-space:nowrap;font-variant-numeric:tabular-nums}
.ks-kata .kbr.zero{opacity:.55}
.ks-kata .kbr.tot{border-bottom:0;font-weight:700;color:var(--tinta);letter-spacing:-.01em}
.ks-kata .knote{font-size:12.5px;color:var(--kek80);margin:8px 0 0}
.ks-kata .knote a{color:var(--tech);font-weight:600}

/* KATA vs átalányadó */
.ks-kata .kvs-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.ks-kata .kvs-col{position:relative;border:1.5px solid var(--kek20);border-radius:var(--r);padding:14px 14px 12px}
.ks-kata .kvs-col.win{border-color:var(--tech);background:linear-gradient(180deg,rgba(18,117,187,.07),rgba(18,117,187,0))}
.ks-kata .kvs-col span{display:block;font-family:var(--display);font-weight:700;text-transform:uppercase;font-size:15px;color:var(--tinta);letter-spacing:-.01em}
.ks-kata .kvs-col b{display:block;font-family:var(--display);font-weight:800;font-size:clamp(24px,2.6vw,30px);font-size:clamp(24px,2.6cqi,30px);line-height:1.1;margin:4px 0 2px;font-variant-numeric:tabular-nums}
.ks-kata .kvs-col small{display:block;font-size:12.5px;color:var(--kek80)}
.ks-kata .kvs-col small em{font-style:normal;font-family:var(--saira);font-weight:600;color:var(--tinta)}
.ks-kata .kvs-badge{position:absolute;top:-10px;right:10px;background:var(--tech);color:#fff;font-family:var(--saira);font-weight:600;font-size:11.5px;letter-spacing:.02em;border-radius:999px;padding:2px 9px}
.ks-kata .kvs-diff{margin:12px 0 0;font-size:14px;color:var(--kek)}
.ks-kata .kvs-diff b{font-family:var(--saira);font-weight:700}
.ks-kata .kvs-set{display:flex;flex-wrap:wrap;gap:10px 16px;margin:12px 0 0}

/* tippek */
.ks-kata .kins{display:grid;gap:10px}
.ks-kata .ki{display:grid;grid-template-columns:34px 1fr;gap:12px;align-items:start;background:var(--kek08);border-radius:var(--r);padding:12px 14px;font-size:14px;line-height:1.45;color:var(--kek)}
.ks-kata .ki b{font-family:var(--saira);font-weight:700}
.ks-kata .ki-ic{width:34px;height:34px;border-radius:8px;background:#fff;color:var(--tech);display:grid;place-items:center}
.ks-kata .ki-ic svg{width:18px;height:18px}
.ks-kata .ki.alert{background:#fff;border:1.5px solid var(--piros)}
.ks-kata .ki.alert .ki-ic{background:var(--piros);color:#fff}
.ks-kata .klink{all:unset;cursor:pointer;color:var(--tech);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.ks-kata .klink:focus-visible{outline:2px solid var(--tech);outline-offset:2px}

/* grafikon */
.ks-kata .kch-sub{font-size:13px;color:var(--kek80);margin:-6px 0 10px}
.ks-kata .kch-w{position:relative;touch-action:pan-y}
.ks-kata .kch-w svg{display:block;width:100%;height:auto;overflow:visible}
.ks-kata .kch-w text{font-family:var(--saira);font-weight:500;font-size:12.5px;fill:var(--kek80)}
.ks-kata .kch-tip{position:absolute;pointer-events:none;background:var(--tinta);color:#fff;border-radius:8px;padding:8px 10px;font-size:12px;line-height:1.35;white-space:nowrap;transform:translate(-50%,calc(-100% - 12px));box-shadow:0 8px 20px rgba(14,19,62,.3);opacity:0;transition:opacity .12s}
.ks-kata .kch-tip b{color:#fff;font-family:var(--saira);font-weight:700;font-size:14px}
.ks-kata .kch-tip.show{opacity:1}

/* forgatókönyv + műveletek */
.ks-kata .kscn{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;background:var(--kek08);border-radius:var(--r);padding:12px 14px;font-size:14px;color:var(--kek);margin:0 0 12px}
.ks-kata .kscn b{font-family:var(--saira);font-weight:700}
.ks-kata .kscn .up{color:var(--tech)}
.ks-kata .kacts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@container kskata (max-width:420px){.ks-kata .kacts{grid-template-columns:1fr}}
.ks-kata .kbtn{all:unset;box-sizing:border-box;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-family:var(--saira);font-weight:600;font-size:14px;letter-spacing:.02em;color:var(--kek);border:1.5px solid var(--kek20);border-radius:999px;padding:10px 12px;line-height:1.2;transition:border-color .15s,background .15s,color .15s}
.ks-kata .kbtn:hover{border-color:var(--kek);background:var(--kek08)}
.ks-kata .kbtn:focus-visible{outline:2px solid var(--tech);outline-offset:2px}
.ks-kata .kbtn svg{width:16px;height:16px;flex:none}
.ks-kata .kbtn.done{border-color:var(--tech);color:var(--tech)}

/* CTA */
.ks-kata .kcta-box{margin:22px 0 0;border-radius:var(--r);background:var(--tinta);color:rgba(255,255,255,.82);padding:18px;position:relative;overflow:hidden;isolation:isolate}
.ks-kata .kcta-box::before{content:"";position:absolute;z-index:-1;width:260px;height:260px;right:-120px;top:-140px;background:radial-gradient(closest-side,rgba(18,117,187,.65),transparent)}
.ks-kata .kcta-box p{font-size:14px;margin:0 0 14px}
.ks-kata .kcta-box p b{display:block;color:#fff;font-family:var(--lexend);font-weight:800;font-size:17px;letter-spacing:-.01em;margin:0 0 4px}
.ks-kata a.kcta{display:flex;align-items:center;justify-content:center;gap:10px;background:var(--tech);color:#fff!important;text-decoration:none!important;font-family:var(--saira);font-weight:600;font-size:16px;letter-spacing:.02em;border-radius:999px;padding:14px 22px;transition:background .2s,transform .2s;box-shadow:0 10px 24px -10px rgba(18,117,187,.7)}
.ks-kata a.kcta:hover,.ks-kata a.kcta:focus-visible{background:#0f63a0;transform:translateY(-1px)}
.ks-kata a.kcta svg{width:18px;height:18px;transition:transform .2s}
.ks-kata a.kcta:hover svg{transform:translateX(3px)}
.ks-kata a.kcta2{display:block;text-align:center;margin:12px 0 0;color:#fff!important;font-size:13.5px;font-weight:600;text-decoration:underline!important;text-underline-offset:3px}

/* e-mailes űrlap */
.ks-kata .klead{display:grid;gap:10px}
.ks-kata .klead p{font-size:14px}
.ks-kata .klead-row{display:flex;gap:8px}
@container kskata (max-width:420px){.ks-kata .klead-row{flex-direction:column}}
.ks-kata .klead input[type=email]{height:48px!important;font:500 15px/1.2 var(--lexend)!important;flex:1}
.ks-kata .klead button[type=submit]{all:unset;box-sizing:border-box;cursor:pointer;font-family:var(--saira);font-weight:600;font-size:15px;letter-spacing:.02em;background:var(--tinta);color:#fff;border-radius:999px;padding:0 22px;height:48px;display:flex;align-items:center;justify-content:center;white-space:nowrap}
.ks-kata .klead button[type=submit]:hover{background:var(--kek)}
.ks-kata .klead button[type=submit]:focus-visible{outline:2px solid var(--tech);outline-offset:2px}
.ks-kata .klead button[disabled]{opacity:.6;cursor:wait}
.ks-kata label.kchk{display:grid;grid-template-columns:20px 1fr;gap:10px;align-items:start;font-size:13px;line-height:1.45;color:var(--kek80);cursor:pointer;margin:0;vertical-align:initial}
.ks-kata label.kchk input{width:18px!important;height:18px!important;margin:1px 0 0!important;accent-color:var(--tech);cursor:pointer}
.ks-kata label.kchk a{color:var(--tech);font-weight:600}
.ks-kata .klead-msg{font-size:14px;font-weight:600;color:var(--tinta);border-radius:var(--r);padding:10px 12px;background:var(--kek08)}
.ks-kata .klead-msg.err{background:#fff;border:1.5px solid var(--piros)}

/* hibás/üres állapot */
.ks-kata .kempty{padding:28px clamp(20px,3vw,32px);padding:28px clamp(20px,3cqi,32px)}
.ks-kata .kempty h3{font-family:var(--lexend)!important;font-weight:800!important;font-size:20px!important;color:var(--tinta)!important;margin:0 0 6px!important;line-height:1.3!important;letter-spacing:-.01em}
.ks-kata .kempty p{font-size:15px;margin:0 0 12px}

/* GYIK */
.ks-kata .kfaq{margin:48px clamp(0px,2vw,24px) 0;margin:48px clamp(0px,2cqi,24px) 0;display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:24px 48px;align-items:start}
@container kskata (max-width:960px){.ks-kata .kfaq{grid-template-columns:minmax(0,1fr)}}
.ks-kata .kfaq-h{font-family:var(--display)!important;font-weight:800!important;text-transform:uppercase;font-size:clamp(30px,3.6vw,44px)!important;font-size:clamp(30px,3.6cqi,44px)!important;line-height:1!important;color:var(--tinta)!important;letter-spacing:0!important;margin:0 0 12px!important}
.ks-kata .kfaq-l p{font-size:15px}
.ks-kata .kfaq-l .kupd{display:inline-block;margin-top:14px;font-family:var(--saira);font-weight:600;font-size:13px;color:var(--tinta);background:var(--kek08);border-radius:999px;padding:4px 12px}
.ks-kata .kfaq details{border-bottom:1px solid var(--kek20)}
.ks-kata .kfaq details:first-child{border-top:1px solid var(--kek20)}
.ks-kata .kfaq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px 2px;font-family:var(--lexend);font-weight:700;font-size:16px;color:var(--tinta);letter-spacing:-.01em}
.ks-kata .kfaq summary::-webkit-details-marker{display:none}
.ks-kata .kfaq summary:focus-visible{outline:2px solid var(--tech);outline-offset:2px}
.ks-kata .kfaq summary::after{content:"+";flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--kek20);display:grid;place-items:center;font:500 18px/1 var(--saira);color:var(--tech);transition:transform .2s}
.ks-kata .kfaq details[open] summary::after{transform:rotate(45deg)}
.ks-kata .kfaq details p{padding:0 2px 16px;font-size:15px;color:var(--kek80)}
.ks-kata .kfaq details p b{font-family:var(--saira);font-weight:700}

.ks-kata .kfoot{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px 24px;align-items:center;font-size:12.5px;color:var(--kek80);margin:32px clamp(0px,2vw,24px) 0;margin:32px clamp(0px,2cqi,24px) 0;line-height:1.55}
.ks-kata .kfoot p{max-width:820px}
.ks-kata .kslogan{font-family:var(--lexend);font-weight:500;font-size:14px;color:var(--tinta);white-space:nowrap}
.ks-kata .kslogan::before{content:"";display:inline-block;width:18px;height:2px;background:var(--piros);vertical-align:middle;margin-right:10px}

/* mobil lebegő sáv */
.ks-kata .kdock{position:fixed;left:12px;right:12px;bottom:12px;z-index:9990;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--tinta);color:#fff;border-radius:14px;padding:10px 12px 10px 18px;box-shadow:0 14px 34px rgba(14,19,62,.4);transform:translateY(140%);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.ks-kata .kdock.show{transform:none}
.ks-kata .kdock small{display:block;font-size:12px;color:rgba(255,255,255,.75);letter-spacing:-.01em;text-transform:uppercase;font-family:var(--display);font-weight:700}
.ks-kata .kdock b{font-family:var(--display);font-weight:800;font-size:24px;color:#fff;line-height:1.1}
.ks-kata .kdock button{all:unset;cursor:pointer;font-family:var(--saira);font-weight:600;font-size:14px;letter-spacing:.02em;background:var(--tech);color:#fff;border-radius:999px;padding:9px 16px;white-space:nowrap}
@media (min-width:961px){.ks-kata .kdock{display:none}}

@media (prefers-reduced-motion:reduce){.ks-kata *{animation:none!important;transition:none!important}}
