.tyexp{--navy:#0F284D;--green:#228B22;--ice:#e1eff0;--muted:#526579;--border:#d9e3e9;max-width:1040px;margin:22px auto;color:var(--navy);font:15px/1.5 'Segoe UI',Arial,sans-serif;box-sizing:border-box}
.tyexp *{box-sizing:border-box}.tyexp [hidden]{display:none!important}.tyexp-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:15px;align-items:stretch}.tyexp-panel{background:#fff;border:1px solid var(--border);border-radius:13px;box-shadow:0 6px 25px rgba(15,40,77,.055);min-width:0;overflow:hidden}.tyexp-form-panel{background:linear-gradient(150deg,#e1eff0,#f8fcfc);padding:21px}.tyexp-panel-head h2{font-size:23px;line-height:1.2;margin:3px 0 5px;color:var(--navy)}.tyexp-panel-head p{font-size:13px;color:#455568;margin:0 0 16px}.tyexp-eyebrow{font-size:10px;font-weight:800;letter-spacing:1.3px;color:#387b56}.tyexp-field{min-width:0}.tyexp label{display:block;color:var(--navy);font-size:12px;font-weight:700;margin:0 0 6px}.tyexp input,.tyexp select{display:block;width:100%;height:44px;min-height:44px;border:1px solid #b8cad6;background:#fff;border-radius:7px;padding:0 13px;color:#0F284D;font:500 15px/1.2 'Segoe UI',Arial,sans-serif;box-shadow:none}.tyexp select{padding-right:30px}.tyexp :is(button,input,select,summary):focus-visible{outline:3px solid rgba(34,139,34,.4);outline-offset:2px}.tyexp input[aria-invalid=true]{border-color:#be3030;background:#fff7f7}.tyexp .tyexp-input-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:13px}.tyexp-error{display:block;min-height:17px;font-size:11px;color:#aa2020;padding-top:2px}.tyexp-hint{font-size:11px;color:#53687b;margin:1px 0 11px}.tyexp-form-actions{display:flex;gap:9px}.tyexp button{appearance:none;width:auto;height:auto;min-height:39px;margin:0;padding:8px 13px;border:1px solid #bfced8;border-radius:7px;cursor:pointer;background:#fff;color:var(--navy);font:700 12px/1.3 'Segoe UI',Arial,sans-serif;transition:background .15s,transform .15s}.tyexp button:hover:not(:disabled){background:#eaf1f7}.tyexp button:disabled{opacity:.45;cursor:not-allowed}.tyexp .tyexp-primary{background:var(--navy);color:#fff;border-color:var(--navy);flex:1;font-size:14px}.tyexp .tyexp-primary:hover{background:#20466f}.tyexp .tyexp-secondary{background:#fff;min-width:95px}.tyexp-form-status{min-height:18px;font-size:12px;color:#a62828;margin-top:7px}.tyexp-output{padding:20px;display:flex;flex-direction:column;justify-content:center;position:relative}.tyexp-output:before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--green),#6aabd0)}.tyexp-results-top{display:flex;justify-content:space-between;align-items:center;gap:8px}.tyexp-ready{font-weight:700;color:#17743a;font-size:11px;background:#e4f6e8;padding:3px 9px;border-radius:30px}.tyexp-answer-label{color:#647386;margin-top:14px;font-size:12px}.tyexp-answer{font-size:clamp(28px,4vw,41px);font-weight:800;letter-spacing:-1.4px;line-height:1.25;overflow-wrap:anywhere;margin:5px 0 9px;font-variant-numeric:tabular-nums}.tyexp-equation{font:700 16px/1.4 'Segoe UI',Arial,sans-serif;background:#edf6f5;padding:12px;border-radius:8px;overflow-wrap:anywhere}.tyexp-meta{font-size:12px;color:#465b6d;padding:11px 0 0;overflow-wrap:anywhere;min-height:40px}.tyexp-answer-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:auto;padding-top:15px}.tyexp-answer-actions button{font-size:11px;min-height:34px;padding:6px 10px}.tyexp-action-status{font-size:11px;color:#23703b;min-height:15px}.tyexp-chart-panel{margin-top:14px;padding:20px}.tyexp-chart-header{display:flex;gap:15px;justify-content:space-between;align-items:flex-start}.tyexp-chart-header h3{font-size:17px;color:var(--navy);margin:0 0 3px}.tyexp-chart-header p{font-size:12px;color:#53677b;margin:0}.tyexp-chart-tools{display:flex;gap:5px;white-space:nowrap}.tyexp-chart-tools button{min-height:31px;padding:5px 9px}.tyexp-graph-shell{border:1px solid #e0e7ed;background:#fcfefe;border-radius:10px;margin-top:12px;width:100%;overflow:hidden}.tyexp-graph-shell svg{display:block;width:100%;height:auto;min-height:230px;touch-action:pan-y}.tyexp-graph-note{font-size:11px;color:#647283;padding-top:8px}@media(max-width:760px){.tyexp-layout{grid-template-columns:1fr}.tyexp{margin:12px auto}.tyexp-form-panel,.tyexp-output,.tyexp-chart-panel{padding:15px}.tyexp-answer{font-size:32px}.tyexp-output{min-height:240px}}@media(max-width:420px){.tyexp-chart-header{flex-direction:column;gap:10px}.tyexp .tyexp-input-grid{gap:8px}.tyexp-form-actions button{min-height:44px}.tyexp-answer-actions{display:grid;grid-template-columns:1fr 1fr}.tyexp-answer-actions button{width:100%}}@media print{body *{visibility:hidden!important}.tyexp,.tyexp *{visibility:visible!important}.tyexp{position:absolute;left:0;top:0;width:100%;max-width:none;margin:0}.tyexp-form-panel,.tyexp-answer-actions,.tyexp-chart-tools{display:none!important}.tyexp-layout{display:block}.tyexp-panel{box-shadow:none;break-inside:avoid}.tyexp-chart-panel{page-break-before:avoid}}

/* Integration with the site's shared MU stylesheet: base ToolYak wrapper/panels/buttons
   are reused in the markup. These scoped corrections keep its older float/fixed-width
   rules from overriding this calculator's responsive grid. */
.tyexp.toolyak-wrapper{width:100%;max-width:1040px;overflow:visible;display:block;padding:0}
.tyexp.toolyak-wrapper .tyexp-layout>.leftinput,
.tyexp.toolyak-wrapper .tyexp-layout>.rightresult{width:auto;max-width:none;float:none;margin:0;box-sizing:border-box}
.tyexp.toolyak-wrapper .tyexp-form-actions>.btn-style{width:auto;height:auto;margin:0;display:inline-flex;align-items:center;justify-content:center;line-height:1.3;padding:8px 13px;border-radius:7px}
.tyexp.toolyak-wrapper .tyexp-form-actions>.tyexp-primary{flex:1;background:#0F284D!important;color:#fff}
.tyexp.toolyak-wrapper .tyexp-form-actions>.tyexp-secondary{min-width:95px;background:#4c4c4c!important;color:#fff}
.tyexp.toolyak-wrapper button:not(.btn-style){background:#fff;color:#0F284D;border:1px solid #bfced8;font-size:12px;border-radius:7px}
.tyexp.toolyak-wrapper .tyexp-output .tyexp-answer-actions button,
.tyexp.toolyak-wrapper .tyexp-chart-tools button{margin:0;width:auto;height:auto}
@media(max-width:760px){.tyexp.toolyak-wrapper{padding:0 8px}.tyexp.toolyak-wrapper .tyexp-layout>.leftinput,.tyexp.toolyak-wrapper .tyexp-layout>.rightresult{width:100%;max-width:none}}
