*,
*::before,
*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0;
  min-width:320px;
  background:
    radial-gradient(circle at 85% 0%,rgba(46,234,243,.08),transparent 30%),
    linear-gradient(180deg,#020b14 0%,#061522 100%);
  color:#f7fbff
}
img{max-width:100%;height:auto}
.calc-shell{width:min(1200px,calc(100% - 32px));margin:0 auto;padding-bottom:64px}
.calc-head{min-height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 0}
.calc-head-logo{display:block;min-width:0}
.calc-head img{display:block;width:min(280px,52vw)}
.calc-back{min-width:180px;display:inline-flex;align-items:center;justify-content:center;text-decoration:none!important;white-space:nowrap}
.calc-hero{padding:44px 0 26px}
.calc-badge{display:inline-flex;align-items:center;min-height:34px;padding:7px 13px;border:1px solid rgba(46,234,243,.24);border-radius:999px;background:rgba(46,234,243,.07);color:#9ff7fb;font-size:12px;font-weight:900;letter-spacing:.04em}
.calc-hero h1{margin:16px 0 14px;max-width:900px;font-size:clamp(38px,6vw,72px);line-height:1;letter-spacing:-.055em}
.calc-hero p{max-width:980px;margin:0;color:#8ca4b8;font-size:clamp(15px,1.5vw,18px);line-height:1.65}
.calc-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:18px;align-items:stretch}
.calc-card{min-width:0;padding:24px;border:1px solid rgba(46,234,243,.17);border-radius:22px;background:linear-gradient(145deg,#071725,#0a2033);box-shadow:0 24px 60px rgba(0,0,0,.20)}
.calc-card h2{margin:6px 0 20px;font-size:clamp(24px,2.5vw,32px);line-height:1.15}
.calc-fields{display:grid;gap:13px}
.calc-field{display:grid;gap:7px;min-width:0}
.calc-field span{color:#8aa3b8;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.calc-field input{width:100%;min-width:0;height:52px;border:1px solid rgba(109,176,214,.24);border-radius:14px;outline:none;background:#081827;color:#fff;padding:0 14px;font:inherit;font-size:17px}
.calc-field input:focus{border-color:rgba(46,234,243,.72);box-shadow:0 0 0 3px rgba(46,234,243,.10)}
.preset-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px}
.preset-row button{min-width:0;min-height:42px;padding:7px 10px;border:1px solid rgba(46,234,243,.18);border-radius:12px;background:#081827;color:#c9f8fb;font:inherit;font-size:12px;font-weight:850;cursor:pointer}
.preset-row button:hover,.preset-row button.active{border-color:rgba(46,234,243,.65);background:rgba(46,234,243,.12);color:#fff}
.formula{margin-top:18px;padding:17px;border:1px solid rgba(255,255,255,.055);border-radius:17px;background:#061522}
.formula code{display:block;margin-top:7px;color:#b7f3f6;white-space:normal;line-height:1.75;overflow-wrap:anywhere}
.calc-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:18px}
.calc-actions a{width:100%;min-width:0;min-height:50px;height:auto;display:flex;align-items:center;justify-content:center;padding:11px 14px;text-align:center;text-decoration:none!important;line-height:1.2}
.result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.result-card{min-width:0;min-height:132px;padding:18px;border:1px solid rgba(255,255,255,.06);border-radius:17px;background:#081827;display:flex;flex-direction:column;justify-content:center}
.result-card span{display:block;color:#718ca3;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.08em}
.result-card strong{display:block;margin:8px 0 4px;color:#f6ffff;font-size:clamp(23px,3vw,34px);line-height:1.05;letter-spacing:-.04em;overflow-wrap:anywhere}
.result-card small{color:#76a9b7;line-height:1.35}
.calc-note{margin-top:16px;padding:16px;border:1px solid rgba(255,204,102,.18);border-radius:16px;background:rgba(89,65,10,.13);color:#cdb98c;line-height:1.55}
.scenario{margin-top:20px}
.scenario-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:12px}
.scenario-head h2{margin-bottom:0}
.scenario-meta{color:#7693aa;font-size:12px;text-align:right}
.table-scroll{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;border:1px solid rgba(255,255,255,.055);border-radius:14px}
.scenario table{width:100%;min-width:760px;border-collapse:collapse}
.scenario th,.scenario td{padding:14px 13px;border-bottom:1px solid rgba(255,255,255,.06);text-align:right;vertical-align:top}
.scenario tr:last-child td{border-bottom:0}
.scenario th:first-child,.scenario td:first-child{text-align:left}
.scenario th{color:#7e98ad;background:rgba(255,255,255,.018);font-size:11px;text-transform:uppercase;letter-spacing:.07em}
.scenario td{color:#eafcff}
.scenario td small{display:block;margin-top:4px;color:#6f8ca3}
@media(max-width:920px){
  .calc-grid{grid-template-columns:1fr}
  .preset-row{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:640px){
  .calc-shell{width:min(100% - 20px,1200px);padding-bottom:38px}
  .calc-head{min-height:76px;gap:12px;padding:12px 0}
  .calc-head img{width:min(205px,52vw)}
  .calc-back{min-width:0;min-height:42px;padding:8px 12px!important;font-size:12px}
  .calc-hero{padding:30px 0 20px}
  .calc-hero h1{font-size:clamp(34px,11vw,48px)}
  .calc-card{padding:17px;border-radius:18px}
  .result-grid{grid-template-columns:1fr}
  .preset-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .calc-actions{grid-template-columns:1fr}
  .scenario-head{align-items:flex-start;flex-direction:column}
  .scenario-meta{text-align:left}
}
@media(max-width:390px){
  .calc-shell{width:min(100% - 14px,1200px)}
  .calc-head{align-items:flex-start;flex-direction:column}
  .calc-head img{width:210px;max-width:100%}
  .calc-back{width:100%}
}


/* DESKTOP CALCULATOR FIX V3 */
@media(min-width:921px){
  .calc-shell{
    width:min(1480px,calc(100% - 64px));
  }
  .calc-head{
    min-height:96px;
  }
  .calc-hero{
    padding:52px 0 30px;
  }
  .calc-hero h1{
    max-width:1100px;
    font-size:clamp(54px,5.2vw,78px);
  }
  .calc-hero p{
    max-width:1120px;
  }
  .calc-grid{
    grid-template-columns:minmax(420px,.85fr) minmax(680px,1.35fr);
    gap:22px;
    align-items:start;
  }
  .calc-grid>.calc-card{
    height:100%;
  }
  .calc-grid>.calc-card:nth-child(2){
    display:flex;
    flex-direction:column;
  }
  .result-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:12px;
  }
  .result-card{
    min-height:150px;
    padding:20px 16px;
  }
  .result-card strong{
    font-size:clamp(22px,2vw,30px);
  }
  .calc-note{
    margin-top:18px;
  }
  .preset-row{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
  .scenario{
    margin-top:24px;
    padding:26px;
  }
  .scenario table{
    min-width:0;
    table-layout:fixed;
  }
  .scenario th,
  .scenario td{
    padding:16px 18px;
  }
}

@media(min-width:1440px){
  .calc-shell{
    width:min(1560px,calc(100% - 80px));
  }
  .calc-grid{
    grid-template-columns:minmax(460px,.82fr) minmax(760px,1.38fr);
  }
  .result-card{
    min-height:164px;
  }
  .result-card strong{
    font-size:32px;
  }
}


/* Calculator Responsive Polish V4 */
html,body{max-width:100%;overflow-x:hidden}
.calc-shell,.calc-grid,.calc-card,.result-grid,.scenario,.table-scroll{min-width:0;max-width:100%}
.calc-head>*{min-width:0}

@media(min-width:921px) and (max-width:1199px){
  .calc-shell{width:min(100% - 40px,1120px)!important}
  .calc-grid{grid-template-columns:1fr!important}
  .result-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scenario table{min-width:760px!important;table-layout:auto!important}
}

@media(max-width:640px){
  body{min-width:0!important}
  .calc-shell{width:calc(100% - 16px)!important}
  .calc-head{min-width:0}
  .calc-head img{width:min(190px,54vw)!important}
  .calc-back{
    min-width:0!important;
    max-width:42vw!important;
    white-space:normal!important;
    line-height:1.2!important;
  }
  .calc-card{padding:15px!important}
  .preset-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .scenario{padding:0!important}
}

@media(max-width:390px){
  .calc-shell{width:calc(100% - 12px)!important}
  .calc-head{gap:9px!important}
  .calc-head img{width:min(180px,100%)!important}
  .calc-back{max-width:none!important;width:100%!important}
  .preset-row{grid-template-columns:1fr 1fr!important}
}
