/* Page-local calculator layout. Keep controls ahead of explanatory content. */
.maintenance-hero { padding-block: 24px; }
.maintenance-hero .page-hero__grid { grid-template-columns: minmax(0,1fr) 230px; gap:24px; }
.maintenance-hero h1 { font-size:clamp(28px,3vw,42px); }
.maintenance-hero .page-hero__media { min-height:0; height:170px; }
.maintenance-hero .page-hero__badge, .maintenance-hero .hero-proof { display:none; }
.maintenance-tool { padding-top:28px; }
.maintenance-tool .section-head { margin-bottom:20px; }
.maintenance-tool [hidden] { display:none !important; }
.maintenance-tool .maintenance-picker { grid-template-columns:1fr 1fr; margin-bottom:12px; padding:20px; }
.maintenance-wide { grid-column:1 / -1; }
.maintenance-settings, .maintenance-fields { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.maintenance-settings { padding:20px; border:1px solid var(--line); border-radius:18px; margin-bottom:24px; }
.maintenance-tool label { display:flex; flex-direction:column; gap:7px; font-size:14px; font-weight:700; min-width:0; }
.maintenance-tool select, .maintenance-tool input { width:100%; min-width:0; padding:12px; border:1px solid #bac4d0; border-radius:8px; background:#fff; color:var(--ink); font:inherit; }
.maintenance-tool select { text-overflow:ellipsis; }
.maintenance-tool input:disabled { background:var(--wash); }
.maintenance-tool input:focus-visible, .maintenance-tool select:focus-visible, .maintenance-extra summary:focus-visible { outline:3px solid var(--blue); outline-offset:2px; }
.maintenance-tool .maintenance-checkbox { display:flex; flex-direction:row; align-items:flex-start; font-weight:500; }
.maintenance-checkbox input { flex:0 0 20px; width:20px; height:20px; }
.maintenance-source-choice { background:var(--wash); padding:16px; border-radius:12px; }
.maintenance-feedback { color:#941c1c; background:#fff0ed; padding:14px; border-radius:10px; }
.maintenance-summary .btn { display:block; margin-top:18px; text-align:center; }
.maintenance-tool .maintenance-result { grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr); }
.maintenance-tool .maintenance-summary { padding:24px; }
.maintenance-tool .maintenance-summary h3 { font-size:24px; }
.maintenance-tool .maintenance-service-badge { flex-wrap:wrap; }
.maintenance-tool .maintenance-service-badge b { font-size:20px; }
.maintenance-tool .table-shell { max-width:100%; overflow-x:auto; }
.maintenance-tool .maintenance-table { min-width:490px; }
.maintenance-tool .maintenance-table th, .maintenance-tool .maintenance-table td { white-space:normal; overflow-wrap:anywhere; }
.maintenance-extra { margin-block:24px; padding:20px; border:1px solid var(--line); border-radius:14px; }
.maintenance-extra summary { cursor:pointer; font-weight:800; }
.maintenance-extra p, .maintenance-fields p { font-size:14px; color:var(--muted); }
@media(max-width:900px) { .maintenance-tool .maintenance-result { grid-template-columns:1fr; } }
@media(max-width:600px) {
 .maintenance-hero .page-hero__grid { grid-template-columns:1fr; }
 .maintenance-hero .page-hero__media { display:none; }
 .maintenance-tool .maintenance-picker, .maintenance-settings, .maintenance-fields { grid-template-columns:1fr; padding:14px; }
 .maintenance-fields { padding:0; }
 .maintenance-tool .section-head { display:block; }
 .maintenance-tool input, .maintenance-tool select { font-size:16px; }
 .maintenance-tool .maintenance-summary { padding:20px; }
 .maintenance-tool .table-shell { overflow:visible; }
 .maintenance-tool .maintenance-table { min-width:0; }
}

/* Corrections from the owner's review of the live calculator. */
.maintenance-tool label { color:var(--ink); }
.maintenance-tool .maintenance-result { align-items:start; }
.maintenance-recommendation { margin-bottom:20px; padding:18px 20px; border-left:4px solid var(--blue); border-radius:10px; background:var(--wash); color:var(--ink); }
.maintenance-recommendation p { margin:8px 0; }
.maintenance-recommendation small { color:#46566b; }
.maintenance-advanced { border-top:1px solid var(--line); padding-top:16px; }
.maintenance-advanced summary { color:var(--ink); font-weight:700; cursor:pointer; }
.maintenance-advanced > .maintenance-fields { padding-top:18px; }
.maintenance-advanced summary:focus-visible { outline:3px solid var(--blue); outline-offset:3px; }
.maintenance-tool input::placeholder { color:#64748b; opacity:1; }
