:root{--ink:#18262f;--muted:#5c6c75;--brand:#123f54;--brand2:#0e3345;--bg:#f3f6f8;--line:#d7e0e5;--ok:#e9f7ef;--warn:#fff5dc;--warnb:#e3bd5f;--err:#fff0f0;--errb:#df8a8a}
*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,system-ui,-apple-system,Segoe UI,Arial,sans-serif;line-height:1.5}.wrap{width:min(1040px,calc(100% - 32px));margin:auto}.top{background:var(--brand);color:#fff;padding:38px 0 34px}.top h1{font-size:clamp(30px,5vw,48px);margin:2px 0 8px;letter-spacing:-.03em}.top p{margin:0;color:#d8e5eb;max-width:720px}.eyebrow{font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:800;opacity:.78}.main{padding:28px 0 50px}.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;margin-bottom:20px;box-shadow:0 8px 24px rgba(18,48,64,.05)}h2{margin:0 0 20px;color:var(--brand);font-size:24px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}label span{display:block;font-size:14px;font-weight:750;margin-bottom:7px}input,select{width:100%;min-height:46px;border:1px solid #aebdc5;border-radius:10px;padding:10px 12px;font:inherit;color:var(--ink);background:#fff}input:focus,select:focus,button:focus{outline:3px solid rgba(18,63,84,.2);outline-offset:2px;border-color:var(--brand)}.money{display:flex;align-items:center;border:1px solid #aebdc5;border-radius:10px;overflow:hidden;background:#fff}.money:focus-within{outline:3px solid rgba(18,63,84,.2);border-color:var(--brand)}.money b{padding:0 12px;color:var(--muted);font-size:14px}.money input{border:0;border-radius:0;outline:0!important}.primary,.secondary{border:0;border-radius:10px;padding:13px 18px;font:inherit;font-weight:800;cursor:pointer}.primary{background:var(--brand);color:#fff;margin-top:18px}.primary:hover{background:var(--brand2)}.primary:disabled{opacity:.55;cursor:wait}.secondary{background:#edf3f6;color:var(--brand)}.info,.alert,.disclaimer{border-radius:10px;padding:12px 14px;margin-top:16px;font-size:14px}.info{background:#eef5f8;color:#36515f}.alert.warning{background:var(--warn);border:1px solid var(--warnb)}.alert.error{background:var(--err);border:1px solid var(--errb);color:#8b2424}.hidden{display:none!important}.resultHead{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.big{font-size:clamp(34px,7vw,58px);font-weight:850;color:#14623b;letter-spacing:-.04em}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.stats div{border:1px solid var(--line);border-radius:10px;padding:12px}.stats span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.stats strong{font-size:16px}.tableWrap{overflow-x:auto;margin-top:12px}table{width:100%;border-collapse:collapse;min-width:760px}th,td{text-align:left;padding:11px 10px;border-bottom:1px solid var(--line);font-size:14px}th{color:var(--brand);background:#f6f9fa}summary{cursor:pointer;font-weight:800;color:var(--brand)}.method{margin-top:18px;background:#f7f9fa;padding:14px;border-radius:10px;color:#435761;font-size:13px}.disclaimer{background:#eef2f4;color:#4d606b;margin-top:10px}.disclaimer a,.alert a{color:var(--brand);font-weight:800}@media(max-width:700px){.grid,.stats{grid-template-columns:1fr}.card{padding:18px}.resultHead{display:block}.resultHead .secondary{margin-top:12px}.top{padding:28px 0}.wrap{width:min(100% - 20px,1040px)}}@media print{body{background:#fff}.top,.card:first-of-type,.disclaimer,.secondary,.alert.warning:first-child{display:none!important}.wrap{width:100%}.main{padding:0}.card.result{display:block!important;border:0;box-shadow:none;padding:0}.tableWrap{overflow:visible}table{min-width:0}details{display:block}details>summary{display:none}}
.actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.installHint{margin-top:10px;font-size:.92rem;color:#50616a}.tableNote{font-size:.88rem;color:#61717a;margin:10px 0 0}.actions .secondary{min-height:44px}
@media(max-width:640px){.actions{display:grid;grid-template-columns:1fr}.actions button{width:100%}}
.versionStamp{margin:12px 0 24px;text-align:center;font-size:12px;color:#64748b}
