.s31-wrap{max-width:1100px;margin:auto;padding:38px 24px}.s31-wrap .page-intro{padding:26px 0 35px}.s31-article{max-width:920px;margin:auto;line-height:1.85}.s31-article h2{margin-top:2.4rem;line-height:1.25}.s31-article h3{line-height:1.4}.s31-article p{overflow-wrap:anywhere}.s31-note{border-left:3px solid #81f1cc;background:#122631;padding:20px 25px;border-radius:0 18px 18px 0;margin:24px 0}.s31-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.s31-card{display:block;padding:25px;border:1px solid #34515b;border-radius:22px;background:linear-gradient(130deg,#152b35,#171b34);text-decoration:none}.s31-card h3{margin:10px 0}.s31-card small{color:#81f1cc}.s31-lab{margin:40px 0;border:1px solid #456272;border-radius:26px;overflow:hidden;background:radial-gradient(ellipse at top right,#263451,#0c1926 65%);box-shadow:0 18px 70px #0003}.s31-lab-head{padding:25px 28px 0}.s31-lab h2{margin:10px 0}.s31-controls{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:20px 28px}.s31-controls[hidden]{display:none}.s31-controls label{font-size:.9rem;display:block}.s31-controls input{display:block;width:100%;accent-color:#81f1cc;margin-top:8px}.s31-controls output{float:right;color:#81f1cc;font-weight:700}.s31-controls button,.s31-controls select{background:#20344a;color:#f3f8ff;border:1px solid #68859a;border-radius:10px;padding:10px 14px;cursor:pointer;font:inherit;max-width:100%;margin:3px}.s31-controls :focus-visible{outline:3px solid #81f1cc;outline-offset:3px}.s31-screen{padding:0 12px}.s31-screen svg{display:block;width:100%;height:auto}.s31-screen svg rect,.s31-screen svg circle,.s31-screen svg line{transition:all .22s ease}.s31-result{background:#08121eb0;padding:20px 28px;margin:0;color:#d9f7ed}.s31-actions{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0}.s31-article math[display=block]{overflow-x:auto;max-width:100%;padding:16px 0}.s31-article .pp-bank{margin-top:48px}@media(max-width:600px){.s31-wrap{padding:22px 16px}.s31-grid{grid-template-columns:1fr}.s31-lab-head{padding:20px 16px 0}.s31-controls{padding:16px;grid-template-columns:1fr}.s31-result{padding:18px 16px}.s31-note{padding:18px}.s31-screen{padding:0}.s31-article h1{font-size:2rem}}@media(prefers-reduced-motion:reduce){.s31-screen svg *{transition:none!important}}@media print{.s31-wrap{padding:0;max-width:none;color:#111}.s31-article{max-width:none}.s31-controls,.s31-actions,.s31-contact,.breadcrumb{display:none!important}.s31-note,.s31-card{background:white;color:black;border:1px solid #aaa}.s31-lab{box-shadow:none;break-inside:avoid;background:#102131!important;print-color-adjust:exact;-webkit-print-color-adjust:exact;color:white}.s31-lab h2,.s31-lab p{color:white!important}.s31-lab-head{padding-top:15px}.s31-screen{max-width:560px;margin:auto}.s31-article h2,.s31-article h3{break-after:avoid}.s31-grid{display:block}.s31-card{margin:12px 0}.s31-article p{orphans:3;widows:3}}
@media print{@page{margin:18mm}.s31-wrap p,.s31-wrap li,.s31-wrap strong{color:#111!important}.s31-note{break-inside:avoid}.s31-wrap .s31-lab p,.s31-wrap .s31-lab h2,.s31-wrap .s31-lab .eyebrow{color:#fff!important}.s31-wrap .page-intro{padding-top:0}.s31-wrap .s31-lab{border:1px solid #333}}
.s31-lab{scroll-margin-top:110px}

.s31-presets{grid-column:1/-1;display:flex;gap:6px;flex-wrap:wrap}.s31-formula{padding:12px 24px;color:#d5f5ec;font-weight:600;overflow-wrap:anywhere}.s31-screen{background:#0c1926}.s31-screen svg{min-height:230px}.s31-lab .s31-result{opacity:1!important;transform:none!important}@media print{.s31-formula{color:white!important}}

.s31-table{overflow-x:auto;max-width:100%;padding:16px}.s31-table table{border-collapse:collapse;width:100%;font-size:.9rem;color:#eff7ff}.s31-table th,.s31-table td{border:1px solid #496377;padding:10px;text-align:center;white-space:nowrap}.s31-table caption{padding:8px;text-align:left;color:#d5e5f0}.s31-legend{padding:0 24px 20px}.s31-screen svg{min-height:0}.s31-controls input[type=checkbox]{width:auto;display:inline}.s31-controls select{display:block;width:100%}.s31-table th{font-weight:500}@media print{.s31-table{overflow:visible;padding:8px}.s31-table table{font-size:9pt}.s31-table td,.s31-table th{padding:6px}.s31-lab{break-inside:auto}}

@media(max-width:600px){.s31-screen svg text{font-size:32px}.s31-screen svg circle{r:10px}.s31-table{padding:12px}.s31-table th,.s31-table td{padding:9px}}
