/* ==========================================================================
   Maxwise Calculator – plugin stylesheet
   Everything is scoped to .mw-calc (calculator) and .mw-toast, and every class is
   prefixed "mw-", so the active WordPress theme cannot restyle the calculator.
   To re-skin: change the design tokens in the first rule below.
   ========================================================================== */
.mw-calc,
.mw-toast {
  /* Brand */
  --ink: #0f1713; --brand: #1f7a4f; --brand-strong: #14573a; --volt: #d4ff5c;
  /* Surfaces */
  --surface: #ffffff; --surface-2: #faf9f5; --line: #e3e1d8; --line-strong: #c9c7bb;
  /* Text */
  --text: #18211c; --text-2: #424d47; --text-3: #5b665f;
  /* Feedback */
  --danger: #b42318;
  /* Spacing, radius, shadow */
  --s-1: 4px; --s-2: 8px; --s-3: 12px; --s-4: 16px; --s-5: 24px; --s-6: 32px;
  --r-sm: 10px; --r: 16px; --r-lg: 22px;
  --shadow: 0 1px 2px rgba(15, 23, 19, .05), 0 8px 24px rgba(15, 23, 19, .06);
  /* Type */
  --font: ui-sans-serif, system-ui, -apple-system, "Segoe UI Variable Text", "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif;
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, "Liberation Mono", monospace;
}

/* Root + defensive resets so theme typography/forms do not leak in */
.mw-calc {
  container: mwcalc / inline-size;
  display: block; max-width: 1160px; margin: 0 auto; padding: 0; text-align: left;
  font: 400 1rem/1.6 var(--font); color: var(--text); text-transform: none; letter-spacing: normal;
  -webkit-font-smoothing: antialiased;
}
.mw-calc.mw-calc h2, .mw-calc.mw-calc h3 { font-family: inherit; font-weight: 800; line-height: 1.15; letter-spacing: -.02em; text-transform: none; color: var(--ink); margin: 0 0 var(--s-2); padding: 0; border: 0; }
.mw-calc.mw-calc p, .mw-calc.mw-calc ul, .mw-calc.mw-calc li, .mw-calc.mw-calc table { font-family: inherit; text-transform: none; }
.mw-calc.mw-calc button, .mw-calc.mw-calc input, .mw-calc.mw-calc select {
  font-family: inherit; font-size: inherit; line-height: normal; letter-spacing: normal; text-transform: none;
  margin: 0; box-shadow: none; text-shadow: none; -webkit-appearance: none; appearance: none;
}
.mw-calc.mw-calc button { background: none; border: 0; padding: 0; border-radius: 0; color: inherit; font-weight: inherit; }
.mw-calc.mw-calc input[type="text"] { max-width: none; }
.mw-calc.mw-calc input[type="radio"], .mw-calc.mw-calc input[type="checkbox"] { appearance: none; -webkit-appearance: none; }
.mw-calc.mw-calc fieldset { border: 0; padding: 0; margin: 0; min-width: 0; background: none; }
.mw-calc.mw-calc legend { float: none; width: auto; }
.mw-calc.mw-calc table { border-spacing: 0; margin: 0; background: none; border: 0; table-layout: auto; }
.mw-calc.mw-calc th, .mw-calc.mw-calc td { background: none; }
.mw-calc.mw-calc ul { list-style: disc; }
.mw-calc.mw-calc code { color: inherit; white-space: normal; }
.mw-calc.mw-calc summary { list-style: revert; }
.mw-calc.mw-calc svg { display: inline-block; vertical-align: middle; }

.mw-calc.mw-calc *,
.mw-calc.mw-calc *::before,
.mw-calc.mw-calc *::after { box-sizing: border-box; }
.mw-calc.mw-calc button { cursor: pointer; }
.mw-calc.mw-calc :focus-visible { outline: 3px solid var(--brand); outline-offset: 2px; }
.mw-calc.mw-calc .mw-sr-only {
  position: absolute !important; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.mw-calc.mw-calc .mw-i { flex: none; }
.mw-calc.mw-calc .mw-card { background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-lg); box-shadow: var(--shadow); }
.mw-calc.mw-calc .mw-grid { display: grid; gap: var(--s-4); grid-template-columns: minmax(0, 1fr); align-items: stretch; }
@container mwcalc (min-width: 900px) {
.mw-calc.mw-calc .mw-grid { grid-template-columns: minmax(0, 5fr) minmax(0, 6fr); gap: var(--s-5); }
}
.mw-calc.mw-calc .mw-form { padding: var(--s-4); display: grid; gap: var(--s-4); align-content: start; }
@container mwcalc (min-width: 720px) {
.mw-calc.mw-calc .mw-form { padding: var(--s-5); }
}
.mw-calc.mw-calc .mw-field { border: 0; padding: 0; margin: 0; min-width: 0; }
.mw-calc.mw-calc .mw-field > label,
.mw-calc.mw-calc .mw-field-head label,
.mw-calc.mw-calc legend { font-weight: 700; font-size: .95rem; color: var(--ink); }
.mw-calc.mw-calc legend { padding: 0; margin-bottom: var(--s-2); }
.mw-calc.mw-calc .mw-opt { font-weight: 500; color: var(--text-3); font-size: .85rem; margin-left: 4px; }
.mw-calc.mw-calc .mw-field-head { display: flex; align-items: center; justify-content: space-between; gap: var(--s-3); margin-bottom: var(--s-2); min-height: 44px; }
.mw-calc.mw-calc .mw-hint { font-size: .88rem; color: var(--text-3); margin: var(--s-2) 0 0; }
.mw-calc.mw-calc .mw-error { color: var(--danger); font-size: .9rem; font-weight: 600; margin: var(--s-2) 0 0; }
.mw-calc.mw-calc .mw-error[hidden] { display: none; }
.mw-calc.mw-calc .mw-seg { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 2px; padding: 3px; background: var(--surface-2); border: 1px solid var(--line); border-radius: 13px; }
.mw-calc.mw-calc .mw-seg input { position: absolute; opacity: 0; width: 1px; height: 1px; margin: 0; pointer-events: none; }
.mw-calc.mw-calc .mw-seg label { display: grid; place-items: center; min-height: 44px; padding: 0 var(--s-2); border-radius: 10px; font-weight: 650; font-size: .92rem; color: var(--text-2); cursor: pointer; user-select: none; text-align: center; transition: background .15s, color .15s; }
.mw-calc.mw-calc .mw-seg label:hover { background: rgba(15, 23, 19, .05); }
.mw-calc.mw-calc .mw-seg input:checked + label { background: var(--ink); color: #fff; box-shadow: 0 1px 3px rgba(0, 0, 0, .25); }
.mw-calc.mw-calc .mw-seg input:focus-visible + label { outline: 3px solid var(--brand); outline-offset: 2px; }
.mw-calc.mw-calc .mw-seg-sm label { min-height: 44px; padding: 0 var(--s-5); }
.mw-calc.mw-calc .mw-num-input { display: grid; grid-template-columns: 56px minmax(0, 1fr) 56px; gap: var(--s-2); }
.mw-calc.mw-calc .mw-step { height: 56px; border-radius: 14px; border: 1.5px solid var(--line-strong); background: var(--surface); display: grid; place-items: center; color: var(--ink); transition: background .15s, border-color .15s, transform .1s; }
.mw-calc.mw-calc .mw-step:hover { background: var(--surface-2); border-color: var(--ink); }
.mw-calc.mw-calc .mw-step:active { transform: scale(.96); }
.mw-calc.mw-calc .mw-num-wrap { position: relative; }
.mw-calc.mw-calc .mw-num-wrap input { width: 100%; height: 56px; border: 1.5px solid var(--line-strong); border-radius: 14px; background: var(--surface); padding: 0 62px 0 var(--s-4); font-size: 1.5rem; font-weight: 750; letter-spacing: -.01em; font-variant-numeric: tabular-nums; color: var(--ink); transition: border-color .15s, box-shadow .15s; }
.mw-calc.mw-calc .mw-num-wrap input:hover { border-color: var(--ink); }
.mw-calc.mw-calc .mw-num-wrap input:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 4px rgba(31, 122, 79, .18); }
.mw-calc.mw-calc .mw-num-wrap input[aria-invalid="true"] { border-color: var(--danger); box-shadow: 0 0 0 4px rgba(180, 35, 24, .12); }
.mw-calc.mw-calc .mw-suffix { position: absolute; right: 14px; top: 50%; transform: translateY(-50%); color: var(--text-3); font-weight: 650; font-size: .95rem; pointer-events: none; }
.mw-calc.mw-calc select {
  width: 100%; height: 48px; padding: 0 40px 0 var(--s-3); border: 1.5px solid var(--line-strong); border-radius: 12px; background-color: var(--surface);
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%2318211c' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 14px center; appearance: none; -webkit-appearance: none; font-weight: 600; color: var(--ink); cursor: pointer;
}
.mw-calc.mw-calc .mw-effort { margin-top: var(--s-3); }
.mw-calc.mw-calc .mw-effort[hidden] { display: none; }
.mw-calc.mw-calc .mw-adv { border-top: 1px solid var(--line); padding-top: var(--s-3); }
.mw-calc.mw-calc .mw-adv summary { cursor: pointer; font-weight: 650; font-size: .93rem; color: var(--text-2); min-height: 32px; display: flex; align-items: center; }
.mw-calc.mw-calc .mw-adv .mw-field { margin-top: var(--s-3); display: grid; gap: 6px; }
.mw-calc.mw-calc .mw-form-actions { display: grid; grid-template-columns: 1fr auto; gap: var(--s-3); }
.mw-calc.mw-calc .mw-btn { display: inline-flex; align-items: center; justify-content: center; gap: var(--s-2); min-height: 52px; padding: 0 var(--s-5); border-radius: 14px; border: 1.5px solid transparent; font-weight: 700; font-size: 1rem; text-decoration: none; transition: background .15s, transform .1s, border-color .15s, opacity .15s; }
.mw-calc.mw-calc .mw-btn:active { transform: scale(.98); }
.mw-calc.mw-calc .mw-btn-primary { background: var(--ink); color: #fff; }
.mw-calc.mw-calc .mw-btn-primary:hover { background: var(--brand-strong); }
.mw-calc.mw-calc .mw-btn-primary .mw-i { color: var(--volt); }
.mw-calc.mw-calc .mw-btn-ghost { background: transparent; border-color: var(--line-strong); color: var(--ink); padding: 0 var(--s-4); }
.mw-calc.mw-calc .mw-btn-ghost:hover { border-color: var(--ink); background: var(--surface-2); }
.mw-calc.mw-calc .mw-hero-result {
  background: radial-gradient(110% 80% at 100% 0%, rgba(212, 255, 92, .16), transparent 58%), var(--ink);
  color: #fff; border-color: transparent; padding: var(--s-5) var(--s-4) var(--s-4);
  display: flex; flex-direction: column; justify-content: space-between; gap: var(--s-4); min-height: 360px;
}
@container mwcalc (min-width: 720px) {
.mw-calc.mw-calc .mw-hero-result { padding: var(--s-6) var(--s-6) var(--s-5); }
}
.mw-calc.mw-calc .mw-eyebrow { margin: 0 0 var(--s-2); font-size: .8rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; color: rgba(255, 255, 255, .68); }
.mw-calc.mw-calc .mw-big { margin: 0; display: flex; align-items: baseline; gap: var(--s-2); line-height: 1; }
.mw-calc.mw-calc .mw-big-num { font-size: clamp(3.6rem, 2.3rem + 6.5vw, 6rem); font-weight: 800; letter-spacing: -.045em; color: var(--volt); font-variant-numeric: tabular-nums; }
.mw-calc.mw-calc .mw-big-unit { font-size: clamp(1.4rem, 1rem + 1.6vw, 2rem); font-weight: 700; color: rgba(255, 255, 255, .8); }
.mw-calc.mw-calc .mw-alt { margin: var(--s-2) 0 0; color: rgba(255, 255, 255, .78); font-weight: 600; font-variant-numeric: tabular-nums; }
.mw-calc.mw-calc .mw-basis { margin: var(--s-3) 0 0; font-size: .92rem; color: rgba(255, 255, 255, .78); max-width: 52ch; }
.mw-calc.mw-calc .mw-range { position: relative; height: 22px; margin: var(--s-5) 0 var(--s-1); }
.mw-calc.mw-calc .mw-track { position: absolute; left: 0; right: 0; top: 50%; height: 6px; transform: translateY(-50%); border-radius: 6px; background: rgba(255, 255, 255, .18); }
.mw-calc.mw-calc .mw-dot { position: absolute; top: 50%; width: 10px; height: 10px; margin: -5px 0 0 -5px; border-radius: 50%; background: rgba(255, 255, 255, .8); }
.mw-calc.mw-calc .mw-dot-main { width: 22px; height: 22px; margin: -11px 0 0 -11px; background: var(--volt); box-shadow: 0 0 0 5px rgba(212, 255, 92, .25); }
.mw-calc.mw-calc .mw-range-labels { display: flex; justify-content: space-between; margin: 0; font-size: .82rem; color: rgba(255, 255, 255, .72); font-variant-numeric: tabular-nums; }
.mw-calc.mw-calc .mw-agree { margin: var(--s-4) 0 0; color: rgba(255, 255, 255, .8); font-size: .92rem; }
.mw-calc.mw-calc .mw-warn { display: flex; gap: var(--s-2); align-items: flex-start; margin: var(--s-4) 0 0; padding: 10px var(--s-3); border-radius: var(--r-sm); background: rgba(255, 205, 96, .14); color: #ffe7b0; font-size: .88rem; line-height: 1.45; }
.mw-calc.mw-calc .mw-warn .mw-i { margin-top: 2px; }
.mw-calc.mw-calc .mw-empty { padding: var(--s-4) 0; }
.mw-calc.mw-calc .mw-empty-msg { font-size: 1.25rem; font-weight: 650; max-width: 30ch; color: rgba(255, 255, 255, .92); line-height: 1.35; }
.mw-calc.mw-calc .mw-headline.mw-pulse .mw-big-num { animation: mw-pop .35s ease-out; }
@keyframes mw-pop { from { opacity: .55; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.mw-calc.mw-calc .mw-actions { display: grid; grid-template-columns: repeat(auto-fit, minmax(104px, 1fr)); gap: var(--s-2); }
.mw-calc.mw-calc .mw-btn-solid { min-height: 46px; padding: 0 var(--s-3); font-size: .92rem; background: rgba(255, 255, 255, .1); border-color: rgba(255, 255, 255, .2); color: #fff; }
.mw-calc.mw-calc .mw-btn-solid:hover:not(:disabled) { background: rgba(255, 255, 255, .2); }
.mw-calc.mw-calc .mw-btn-solid:disabled { opacity: .4; cursor: not-allowed; }
.mw-calc.mw-calc .mw-disclaimer-s { margin: 0; font-size: .8rem; color: rgba(255, 255, 255, .6); }
.mw-calc.mw-calc .mw-results { display: grid; gap: var(--s-4); margin-top: var(--s-4); grid-template-columns: minmax(0, 1fr); }
@container mwcalc (min-width: 900px) {
.mw-calc.mw-calc .mw-results { grid-template-columns: repeat(12, minmax(0, 1fr)); gap: var(--s-5); margin-top: var(--s-5); }
.mw-calc.mw-calc .mw-block { grid-column: span 6; }
.mw-calc.mw-calc .mw-block-wide { grid-column: 1 / -1; }
.mw-calc.mw-calc .mw-block.mw-tm-card { grid-column: span 5; }
.mw-calc.mw-calc .mw-block.mw-warm-card { grid-column: span 7; }
}
.mw-calc.mw-calc .mw-block { padding: var(--s-4); container-type: inline-size; }
@container mwcalc (min-width: 720px) {
.mw-calc.mw-calc .mw-block { padding: var(--s-5); }
}
.mw-calc.mw-calc .mw-block h2 { font-size: 1.35rem; margin-bottom: var(--s-2); }
.mw-calc.mw-calc .mw-intro { color: var(--text-2); font-size: .95rem; margin-bottom: var(--s-4); max-width: 70ch; }
.mw-calc.mw-calc .mw-foot { color: var(--text-3); font-size: .88rem; margin: var(--s-3) 0 0; }
.mw-calc.mw-calc .mw-results.mw-is-stale .mw-table-scroll,
.mw-calc.mw-calc .mw-results.mw-is-stale .mw-tm { opacity: .4; filter: grayscale(.6); pointer-events: none; }
.mw-calc.mw-calc .mw-field-row { display: grid; gap: var(--s-3); margin-bottom: var(--s-3); }
@container mwcalc (min-width: 560px) {
.mw-calc.mw-calc .mw-field-row { grid-template-columns: 1fr 1fr; }
}
.mw-calc.mw-calc .mw-field.mw-inline { display: grid; gap: 6px; margin-bottom: var(--s-3); }
.mw-calc.mw-calc .mw-field.mw-inline label { font-weight: 700; font-size: .9rem; }
.mw-calc.mw-calc .mw-table-scroll { position: relative; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.mw-calc.mw-calc .mw-tbl { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; font-size: .98rem; }
.mw-calc.mw-calc .mw-tbl th,
.mw-calc.mw-calc .mw-tbl td { padding: 10px 8px; text-align: left; border-bottom: 1px solid var(--line); vertical-align: middle; }
.mw-calc.mw-calc .mw-tbl thead th { font-size: .72rem; text-transform: uppercase; letter-spacing: .07em; color: var(--text-3); font-weight: 750; white-space: nowrap; }
.mw-calc.mw-calc .mw-tbl tbody th,
.mw-calc.mw-calc .mw-tbl tfoot th { font-weight: 650; color: var(--ink); }
.mw-calc.mw-calc .mw-tbl .mw-num { text-align: right; white-space: nowrap; }
.mw-calc.mw-calc .mw-tbl .mw-strong { font-weight: 750; color: var(--ink); }
.mw-calc.mw-calc .mw-tbl .mw-u { font-weight: 500; color: var(--text-3); font-size: .85em; }
.mw-calc.mw-calc .mw-tbl tbody tr:last-child th,
.mw-calc.mw-calc .mw-tbl tbody tr:last-child td { border-bottom: 0; }
.mw-calc.mw-calc .mw-tbl tfoot th,
.mw-calc.mw-calc .mw-tbl tfoot td { border-top: 2px solid var(--ink); border-bottom: 0; padding-top: 12px; font-weight: 750; }
.mw-calc.mw-calc .mw-is-yours { background: rgba(212, 255, 92, .3); }
.mw-calc.mw-calc .mw-is-yours th { border-radius: 8px 0 0 8px; }
.mw-calc.mw-calc .mw-tag { margin-left: var(--s-2); padding: 2px 8px; border-radius: 99px; background: var(--ink); color: var(--volt); font-size: .68rem; font-weight: 750; letter-spacing: .04em; text-transform: uppercase; vertical-align: 2px; }
.mw-calc.mw-calc .mw-is-top th,
.mw-calc.mw-calc .mw-is-top td { background: rgba(212, 255, 92, .3); font-weight: 750; }
.mw-calc.mw-calc .mw-zone-col { display: none; color: var(--text-2); }
.mw-calc.mw-calc .mw-zone-inline { display: block; font-size: .75rem; font-weight: 500; color: var(--text-3); }
@container (min-width: 500px) {
.mw-calc.mw-calc .mw-zone-col { display: table-cell; }
.mw-calc.mw-calc .mw-zone-inline { display: none; }
}
.mw-calc.mw-calc .mw-tbl .mw-zone-col { font-size: .9rem; }
.mw-calc.mw-calc .mw-formulas { min-width: 300px; }
.mw-calc.mw-calc .mw-formulas .mw-delta { color: var(--text-2); font-size: .92rem; }
.mw-calc.mw-calc .mw-formulas .mw-tog { width: 52px; text-align: right; padding-right: 0; }
.mw-calc.mw-calc .mw-f-row.mw-is-off .mw-num { opacity: .5; }
.mw-calc.mw-calc .mw-f-row.mw-is-off .mw-fname { color: var(--text-3); }
.mw-calc.mw-calc .mw-check { position: relative; display: flex; align-items: center; gap: 10px; min-height: 44px; cursor: pointer; }
.mw-calc.mw-calc .mw-check input { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; opacity: 0; cursor: pointer; }
.mw-calc.mw-calc .mw-box { width: 22px; height: 22px; border-radius: 7px; border: 2px solid var(--line-strong); background: var(--surface); flex: none; display: grid; place-items: center; transition: background .12s, border-color .12s; }
.mw-calc.mw-calc .mw-check input:checked + .mw-box { background: var(--brand); border-color: var(--brand); }
.mw-calc.mw-calc .mw-check input:checked + .mw-box::after { content: ""; width: 6px; height: 11px; margin-top: -2px; border: solid #fff; border-width: 0 2.5px 2.5px 0; transform: rotate(45deg); }
.mw-calc.mw-calc .mw-check input:focus-visible + .mw-box { outline: 3px solid var(--brand); outline-offset: 2px; }
.mw-calc.mw-calc .mw-icon-btn { width: 44px; height: 44px; border-radius: 12px; border: 1px solid transparent; background: transparent; display: inline-grid; place-items: center; color: var(--ink); }
.mw-calc.mw-calc .mw-icon-btn:hover { background: var(--surface-2); border-color: var(--line); }
.mw-calc.mw-calc .mw-icon-btn .mw-i { transition: transform .2s; }
.mw-calc.mw-calc .mw-icon-btn[aria-expanded="true"] .mw-i { transform: rotate(180deg); }
.mw-calc.mw-calc .mw-math-row td { background: var(--surface-2); padding: var(--s-3) var(--s-4); border-bottom: 1px solid var(--line); }
.mw-calc.mw-calc .mw-math-row[hidden] { display: none; }
.mw-calc.mw-calc .mw-math-row p { margin: 0 0 var(--s-2); font-size: .92rem; }
.mw-calc.mw-calc .mw-math-row p:last-child { margin: 0; }
.mw-calc.mw-calc .mw-math-row code { font-family: var(--font-mono); font-size: .86rem; background: var(--surface); border: 1px solid var(--line); padding: 2px 6px; border-radius: 6px; overflow-wrap: anywhere; }
.mw-calc.mw-calc .mw-where { color: var(--text-3); font-size: .85rem; }
.mw-calc.mw-calc .mw-fnote { color: var(--text-2); }
.mw-calc.mw-calc .mw-tm { padding: var(--s-4); border-radius: var(--r); background: var(--surface-2); border: 1px solid var(--line); }
.mw-calc.mw-calc .mw-tm-num { margin: 0; font-size: 3rem; line-height: 1.05; font-weight: 800; letter-spacing: -.035em; color: var(--ink); font-variant-numeric: tabular-nums; }
.mw-calc.mw-calc .mw-tm-num .mw-u { font-size: 1.2rem; font-weight: 650; color: var(--text-3); letter-spacing: 0; }
.mw-calc.mw-calc .mw-tm-sub { margin: var(--s-2) 0 0; color: var(--text-2); font-size: .93rem; }
.mw-calc.mw-calc .mw-tm-use { margin: var(--s-4) 0 0; padding-left: 1.1em; color: var(--text-2); font-size: .93rem; }
.mw-calc.mw-calc .mw-tm-use li { margin-bottom: 6px; }
.mw-toast { position: fixed; left: 50%; bottom: 24px; transform: translate(-50%, 20px); background: var(--ink); color: #fff; padding: 12px 20px; border-radius: 99px; font-weight: 650; font-size: .93rem; opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; z-index: 60; box-shadow: 0 8px 30px rgba(0, 0, 0, .3); max-width: calc(100vw - 32px); text-align: center; }
.mw-toast.mw-show { opacity: 1; transform: translate(-50%, 0); }
.mw-calc.mw-calc .mw-print-only { display: none; }
@media (prefers-reduced-motion: reduce) {
.mw-calc *, .mw-calc *::before, .mw-calc *::after, .mw-toast { animation: none !important; transition: none !important; }
}
@container mwcalc (max-width: 380px) {
.mw-calc.mw-calc .mw-num-input { grid-template-columns: 48px minmax(0, 1fr) 48px; }
.mw-calc.mw-calc .mw-step { height: 52px; }
.mw-calc.mw-calc .mw-num-wrap input { height: 52px; font-size: 1.35rem; padding-right: 54px; }
.mw-calc.mw-calc .mw-seg label { font-size: .85rem; padding: 0 4px; }
.mw-calc.mw-calc .mw-tbl th,
.mw-calc.mw-calc .mw-tbl td { padding: 10px 5px; }
.mw-calc.mw-calc .mw-tbl { font-size: .93rem; }
}
/* Select hover/focus */
.mw-calc.mw-calc select:hover { border-color: var(--ink); }
.mw-calc.mw-calc select:focus { outline: none; border-color: var(--brand); box-shadow: 0 0 0 4px rgba(31, 122, 79, .18); }
.mw-calc.mw-calc .mw-hero-result :focus-visible { outline-color: var(--volt); }
.mw-calc.mw-calc .mw-block h2 { margin-bottom: var(--s-2); }

/* ---- Hardening against aggressive theme CSS (found by testing against a deliberately hostile theme) ---- */
.mw-calc.mw-calc p { font-size: inherit; line-height: inherit; text-align: left; color: inherit; letter-spacing: normal; margin: 0 0 var(--s-3); }
.mw-calc.mw-calc label { margin: 0; font-size: inherit; font-weight: inherit; color: inherit; letter-spacing: normal; text-transform: none; line-height: inherit; }
.mw-calc.mw-calc legend { font-size: .95rem; line-height: 1.3; }
.mw-calc.mw-calc li { font-size: inherit; line-height: inherit; margin: 0 0 6px; padding: 0; }
.mw-calc.mw-calc ul { margin: var(--s-4) 0 0; padding: 0 0 0 1.1em; }
.mw-calc.mw-calc .mw-i { width: 18px; height: 18px; max-width: none; min-width: 0; fill: none; flex: none; }
.mw-calc.mw-calc .mw-step .mw-i { width: 20px; height: 20px; }
.mw-calc.mw-calc svg { fill: none; }
.mw-calc.mw-calc summary { background: none; padding: 0; margin: 0; font-size: .93rem; line-height: 1.4; letter-spacing: normal; text-transform: none; border: 0; }
.mw-calc.mw-calc details { background: none; padding: 0; margin: 0; border: 0; font-size: inherit; }
.mw-calc.mw-calc .mw-adv { border-top: 1px solid var(--line); padding-top: var(--s-3); }
.mw-calc.mw-calc .mw-tbl th, .mw-calc.mw-calc .mw-tbl td { border: 0; border-bottom: 1px solid var(--line); font-size: 1em; line-height: 1.4; text-align: left; background: none; width: auto; letter-spacing: normal; text-transform: none; }
.mw-calc.mw-calc .mw-tbl .mw-num { text-align: right; }
.mw-calc.mw-calc .mw-tbl tbody tr:last-child th, .mw-calc.mw-calc .mw-tbl tbody tr:last-child td { border-bottom: 0; }
.mw-calc.mw-calc .mw-tbl tfoot th, .mw-calc.mw-calc .mw-tbl tfoot td { border-top: 2px solid var(--ink); border-bottom: 0; }
.mw-calc.mw-calc .mw-tbl thead th { font-size: .72rem; line-height: 1.3; }
.mw-calc.mw-calc .mw-tbl .mw-is-yours, .mw-calc.mw-calc .mw-tbl .mw-is-top th, .mw-calc.mw-calc .mw-tbl .mw-is-top td { background: rgba(212, 255, 92, .3); }
.mw-calc.mw-calc .mw-math-row td { background: var(--surface-2); border-bottom: 1px solid var(--line); }
.mw-calc.mw-calc .mw-math-row code { padding: 2px 6px; font-size: .86rem; line-height: 1.5; background: var(--surface); color: var(--text); border: 1px solid var(--line); border-radius: 6px; }
.mw-calc.mw-calc select { font-size: 1rem; line-height: normal; border-style: solid; padding-top: 0; padding-bottom: 0; }
.mw-calc.mw-calc input[type="text"] { border-style: solid; background-image: none; }
.mw-calc.mw-calc .mw-num-wrap input { font-size: 1.5rem; line-height: normal; padding-top: 0; padding-bottom: 0; }
.mw-calc.mw-calc .mw-seg input { width: 1px; height: 1px; opacity: 0; position: absolute; margin: 0; padding: 0; border: 0; }
.mw-calc.mw-calc .mw-seg label { font-size: .92rem; font-weight: 650; line-height: 1.2; margin: 0; }
.mw-calc.mw-calc .mw-check input { position: absolute; inset: 0; width: 100%; height: 100%; opacity: 0; margin: 0; padding: 0; border: 0; }
.mw-calc.mw-calc .mw-btn, .mw-calc.mw-calc .mw-step, .mw-calc.mw-calc .mw-icon-btn { line-height: 1.2; text-transform: none; letter-spacing: normal; text-shadow: none; }
.mw-calc.mw-calc .mw-btn { font-size: 1rem; font-weight: 700; }
.mw-calc.mw-calc .mw-btn-solid { font-size: .92rem; }
.mw-calc.mw-calc .mw-step { padding: 0; }
.mw-calc.mw-calc .mw-field > label, .mw-calc.mw-calc .mw-field-head label { font-weight: 700; font-size: .95rem; color: var(--ink); }
.mw-calc.mw-calc .mw-field.mw-inline label { font-weight: 700; font-size: .9rem; color: var(--ink); }
.mw-calc.mw-calc .mw-block h2, .mw-calc.mw-calc .mw-block h3, .mw-calc.mw-calc .mw-block h4 { font-size: 1.35rem; font-weight: 800; letter-spacing: -.02em; border: 0; color: var(--ink); margin: 0 0 var(--s-2); text-transform: none; }
.mw-calc.mw-calc .mw-tm-use { margin: var(--s-4) 0 0; padding-left: 1.1em; font-size: .93rem; color: var(--text-2); }
.mw-calc.mw-calc .mw-tm-use li { font-size: .93rem; margin-bottom: 6px; }

/* Form column must never be wider than its card (grid items default to min-width:auto) */
.mw-calc.mw-calc .mw-form { grid-template-columns: minmax(0, 1fr); }
.mw-calc.mw-calc .mw-form-actions { grid-template-columns: minmax(0, 1fr) auto; }
.mw-calc.mw-calc .mw-btn { min-width: 0; }
@container mwcalc (max-width: 380px) {
  .mw-calc.mw-calc .mw-form-actions { grid-template-columns: minmax(0, 1fr); }
}

/* Print / Save as PDF: hide the theme, show only the calculator results */
@media print {
  @page { margin: 14mm; }
  body * { visibility: hidden !important; }
  .mw-calc, .mw-calc * { visibility: visible !important; }
  .mw-calc { position: absolute; left: 0; top: 0; width: 100%; max-width: none; color: #000; }
  .mw-calc.mw-calc .mw-form, .mw-calc.mw-calc .mw-actions, .mw-calc.mw-calc .mw-disclaimer-s, .mw-calc.mw-calc .mw-intro,
  .mw-calc.mw-calc .mw-step, .mw-calc.mw-calc .mw-tog, .mw-calc.mw-calc .mw-field.mw-inline, .mw-calc.mw-calc .mw-field-row,
  .mw-calc.mw-calc .mw-tm-use, .mw-calc.mw-calc .mw-math-row, .mw-calc.mw-calc .mw-range, .mw-calc.mw-calc .mw-box { display: none !important; }
  .mw-calc.mw-calc .mw-grid { display: block; }
  .mw-calc.mw-calc .mw-card { box-shadow: none; border: 1px solid #999; border-radius: 8px; break-inside: avoid; margin-bottom: 8mm; }
  .mw-calc.mw-calc .mw-hero-result { background: #fff !important; color: #000; min-height: 0; padding: 8mm; }
  .mw-calc.mw-calc .mw-big-num, .mw-calc.mw-calc .mw-big-unit, .mw-calc.mw-calc .mw-eyebrow, .mw-calc.mw-calc .mw-alt,
  .mw-calc.mw-calc .mw-basis, .mw-calc.mw-calc .mw-range-labels { color: #000 !important; }
  .mw-calc.mw-calc .mw-results { display: block; margin: 0; }
  .mw-calc.mw-calc .mw-zone-col { display: table-cell; }
  .mw-calc.mw-calc .mw-zone-inline { display: none; }
  .mw-calc.mw-calc .mw-is-yours, .mw-calc.mw-calc .mw-is-top th, .mw-calc.mw-calc .mw-is-top td { background: #eee !important; }
  .mw-calc.mw-calc .mw-print-only { display: block; white-space: pre-wrap; font: 9.5pt/1.4 var(--font-mono); border-top: 1px solid #999; padding-top: 6mm; margin: 0; }
}
