.tw28{--ink:var(--tool-ink,#253b35);--accent:var(--tool-accent,#386e5e);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent);border-radius:16px;padding:clamp(12px,3vw,30px);margin:24px 0;background:var(--tool-paper,#fffcf7);color:var(--ink)}
.tw28 *{box-sizing:border-box}.tw28 h2,.tw28 h3,.tw28 h4{color:inherit;margin:1em 0 .6em}.tw28 fieldset{min-width:0;border:1px solid #c8cec8;padding:12px;margin:14px 0;border-radius:10px}.tw28 legend{font-weight:700;padding:0 6px}.tw28 label{display:flex;flex-direction:column;gap:6px;font-weight:600;min-width:0;font-size:15px}.tw28 input,.tw28 textarea,.tw28 select{width:100%;max-width:100%;font:inherit;line-height:1.4;min-height:44px;padding:9px;border:1px solid #7e8e84;border-radius:6px;color:var(--ink);background:#fff}.tw28 textarea{resize:vertical}.tw28 .tw28-check{display:flex;flex-direction:row;align-items:center;gap:9px}.tw28 input[type=checkbox]{width:22px;min-width:22px;min-height:22px}.tw28-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,235px),1fr));gap:14px}.tw28 [hidden]{display:none!important}.tw28 button{font:inherit;font-size:14px;cursor:pointer;border:1px solid var(--accent);border-radius:6px;padding:10px 13px;margin:5px 5px 5px 0;min-height:44px;background:#fff;color:var(--ink)}.tw28 button[data-t28-calculate]{background:var(--accent);color:#fff;font-weight:700}.tw28 button:disabled{opacity:.5;cursor:not-allowed}.tw28 :focus-visible{outline:3px solid var(--accent);outline-offset:4px}.tw28 [aria-invalid=true]{border:2px solid #9c2b1b}.tw28 [role=alert],.tw28-warning{padding:12px;background:#fff0df;border-left:4px solid #aa4e21}.tw28-result{border:2px solid var(--accent);border-radius:12px;padding:clamp(10px,2vw,24px);margin-bottom:22px}.tw28-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:12px}.tw28-kpis div{padding:12px;border:1px solid #bfcfc3;border-radius:8px;background:#fff}.tw28-kpis dt{font-size:14px}.tw28-kpis dd{font-size:clamp(18px,3vw,26px);font-weight:700;margin:8px 0 0;overflow-wrap:anywhere}.tw28-scroll{overflow:auto;max-width:100%;margin:15px 0}.tw28 table{border-collapse:collapse;width:100%;font-size:14px}.tw28 th,.tw28 td{border:1px solid #bec7bd;padding:9px;vertical-align:top;text-align:left;overflow-wrap:anywhere;min-width:65px}.tw28 th{background:#edf2ed}.tw28-diagram svg{width:100%;height:auto;max-height:1400px}.tw28-row-actions{display:flex;flex-wrap:wrap}.tw28-diff{white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid #bbb;padding:15px;max-height:450px;overflow:auto}.tw28-diff ins{background:#d7f0dc;text-decoration:underline}.tw28-diff del{background:#f8d8d7;text-decoration:line-through}.tw28 [data-t28-scenarios] section{border-top:2px solid #c7cec5;margin-top:16px}.tw28 [data-t28-status]{min-height:1.5em;font-size:14px}.tw28-row{background:rgba(255,255,255,.65)}.tw28 .tw28-method{font-size:15px;line-height:1.6}.tw28-app{max-width:1100px;margin:0 auto;padding:clamp(12px,4vw,45px)}.tw28-app h1{font-size:clamp(27px,4vw,46px);line-height:1.15}.tw28-app .tw28-answer{max-width:800px;font-size:18px;line-height:1.65}.tw28-app>section{margin:35px 0}.tw28-app details{border-bottom:1px solid #d1d1c8;padding:13px 0}.tw28-app summary{cursor:pointer;font-weight:700}.tw28-app a{text-underline-offset:3px}.tw28-app table{border-collapse:collapse;max-width:100%}.tw28-app td,.tw28-app th{padding:9px;border:1px solid #bbb}.tw28-app .tw28-static-table{overflow:auto}
@media(max-width:600px){.tw28 button{flex:1 1 auto}.tw28 [data-t28-inputs]>fieldset{padding:8px}.tw28-row{padding:9px!important}.tw28-app{padding:14px}.tw28-scroll th,.tw28-scroll td{font-size:12px;padding:7px}.tw28-kpis{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.tw28 *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media print{body>*:not(main):not(.tw28-app){display:none!important}header,nav,footer,.tw28-app>aside,.tw28 [data-t28-inputs],.tw28 [data-t28-controls],.tw28 button,.tw28 [data-t28-scenarios],.tw28-app details,.tw28-app [data-after-tool]{display:none!important}.tw28-app,.tw28{max-width:100%;margin:0;padding:0;border:0;background:white}.tw28-result{border:0;padding:0}.tw28-scroll{overflow:visible}.tw28 table{font-size:10px}.tw28 th,.tw28 td{min-width:0;padding:4px}.tw28 tr{break-inside:avoid}.tw28-diagram svg{max-height:none}.tw28-kpis{display:grid;grid-template-columns:1fr 1fr}.tw28-app h1{font-size:22px}}
