.calculator-field-error{display:block;color:#b42318;font-size:.83rem;font-weight:600;line-height:1.5;margin-top:6px}
.calculator [aria-invalid=true]{border-color:#b42318;outline-color:#b42318}
.calculator .calc-fields>*{min-width:0}
.calculator .result-main b,.calculator .result-grid strong{overflow-wrap:anywhere}
.calculator .table-scroll{max-width:100%;overflow-x:auto}
.calculator-report-button{
  display:flex;
  width:fit-content;
  max-width:100%;
  margin:18px 0 0 auto;
  min-height:44px;
  padding:10px 16px;
  box-sizing:border-box;
  border:1px solid var(--line);
  border-radius:12px;
  background:var(--surface2);
  color:var(--text);
  font-size:13px;
  font-weight:750;
  line-height:1.4;
  text-align:center;
  overflow-wrap:anywhere;
  box-shadow:none;
}
.calc-result-v12 > .calculator-report-button{
  margin:18px 20px 20px auto;
  max-width:calc(100% - 40px);
}
.calculator-report-button:hover{background:var(--surface);border-color:var(--brand)}
.calculator-report-button:focus-visible{outline:3px solid var(--brand);outline-offset:3px}
.calculator-full-schedule{margin-top:16px}
.calculator-full-schedule summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:700;color:var(--brand)}
.calculator-report{width:min(900px,calc(100% - 24px));max-height:90vh;padding:24px;border:1px solid var(--line);border-radius:18px;background:var(--surface);color:var(--text);overflow:auto}
.calculator-report::backdrop{background:rgba(0,0,0,.6)}
.calculator-report-actions{display:flex;gap:10px;justify-content:flex-end;flex-wrap:wrap;margin-bottom:20px}
.calculator-report h2{font-size:1.5rem;line-height:1.4;overflow-wrap:anywhere}
.calculator-report-inputs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:20px 0}
.calculator-report-inputs div{padding:12px;background:var(--surface2);border-radius:10px;min-width:0}
.calculator-report-inputs dt{font-size:.85rem;color:var(--muted);margin-bottom:4px}
.calculator-report-inputs dd{margin:0;font-weight:700;white-space:pre-wrap;overflow-wrap:anywhere}
.calculator-report-meta,.calculator-report-url,.calculator-report-notes{font-size:.85rem;color:var(--muted);overflow-wrap:anywhere}
.calculator-report .table-scroll{overflow-x:auto}.calculator-report table{width:100%;border-collapse:collapse}
.calculator-report th,.calculator-report td{padding:9px;border-bottom:1px solid var(--line);text-align:left;white-space:nowrap}
html[data-theme=dark] .calculator-field-error{color:#ffb4ab}
@media(prefers-color-scheme:dark){html:not([data-theme=light]) .calculator-field-error{color:#ffb4ab}}
@media(max-width:600px){.calculator-report{padding:16px}.calculator-report-inputs{grid-template-columns:1fr}.calculator-report-actions .btn{flex:1}}
@media print{
  body.calculator-printing{background:#fff!important;color:#111!important}
  body.calculator-printing>*:not(.calculator-report){display:none!important}
  body.calculator-printing .calculator-report[open]{display:block!important;position:static!important;width:100%;max-height:none;margin:0;padding:0;border:0;border-radius:0;background:#fff!important;color:#111!important;overflow:visible}
  .calculator-report-actions,.calculator-report>.calc-helper{display:none!important}
  .calculator-report .calc-result,.calculator-report-inputs div{background:#fff!important;color:#111!important;border:1px solid #ccc;box-shadow:none!important}
  .calculator-report *{color:#111!important;text-shadow:none!important}
  .calculator-report .table-scroll{overflow:visible}.calculator-report table{font-size:10pt}
  .calculator-report th,.calculator-report td{padding:6px;white-space:normal;border-color:#ccc}
  .calculator-report tr,.calculator-report-inputs div{break-inside:avoid}.calculator-report thead{display:table-header-group}
}
