:root{--d-bg:#fff;--d-panel:#f8fafc;--d-border:#d5dee7;--d-ink:#18212c;--d-muted:#546577;--d-blue:#2563eb;--d-strong:#1d4ed8;--d-error:#b91c1c}
html[data-mg-theme="dark"]{--d-bg:#0a0a0b;--d-panel:#111113;--d-border:#303039;--d-ink:#f4f4f5;--d-muted:#a1a1aa;--d-blue:#60a5fa;--d-strong:#93c5fd;--d-error:#fda4af}
*{box-sizing:border-box}html{scroll-behavior:smooth}body.d-app{margin:0;color:var(--d-ink);background:var(--d-bg);font:16px/1.55 system-ui,-apple-system,Segoe UI,Arial,sans-serif}body.d-app a{color:var(--d-blue)}.d-container{width:min(1130px,calc(100% - 32px));margin:0 auto}.d-header{border-bottom:1px solid var(--d-border);background:var(--d-bg)}.d-header-inner,.d-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:76px;flex-wrap:wrap}.d-brand{font-weight:750;color:var(--d-ink)!important;text-decoration:none;display:flex;align-items:center;gap:10px}.d-brand img{width:34px;height:34px}.d-nav,.d-header-controls{display:flex;align-items:center;gap:15px}.d-nav a{font-size:14px;text-decoration:none;color:var(--d-muted)!important}.d-nav a[aria-current]{font-weight:800;color:var(--d-ink)!important}.d-mobile-nav{display:none}.d-skip{position:absolute;left:-9999px;top:6px;background:var(--d-bg);padding:12px;z-index:99}.d-skip:focus{left:8px}.d-menu{display:none}.d-hero{padding:34px 0 18px}.d-eyebrow{font-size:12px;font-weight:750;color:var(--d-blue);text-transform:uppercase;letter-spacing:.08em}.d-hero h1{font-size:clamp(33px,5vw,48px);letter-spacing:-.04em;margin:.15em 0}.d-lede{color:var(--d-muted);max-width:810px;margin:6px 0 12px}.d-trust{color:var(--d-muted);font-size:13px}.d-workbench{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:start;gap:16px;padding:10px 0 36px}.d-card{background:var(--d-panel);border:1px solid var(--d-border);border-radius:14px;padding:22px;min-width:0}.d-card h2{font-size:21px;letter-spacing:-.02em;margin:0 0 6px}.d-card h3{font-size:16px;margin:16px 0 8px}.d-help,.d-hint{font-size:13px;color:var(--d-muted);margin:3px 0 12px}.d-fields,.d-row-head{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.d-fields{margin-bottom:10px}.d-field{display:flex;flex-direction:column;gap:5px;min-width:0}.d-label{font-size:13px;font-weight:680}.d-control{height:44px;width:100%;min-width:0;border:1px solid var(--d-border);border-radius:8px;background:var(--d-bg);color:var(--d-ink);padding:8px 10px;font:inherit}.d-button{min-height:44px;padding:8px 14px;border:1px solid var(--d-blue);border-radius:9px;background:var(--d-blue);color:#fff;font-size:14px;font-weight:700;cursor:pointer}.d-button.d-quiet{border-color:var(--d-border);color:var(--d-ink);background:var(--d-bg)}.d-button:disabled{opacity:.45;cursor:not-allowed}.d-action-row{display:flex;gap:9px;flex-wrap:wrap}.d-row,.d-opening{min-width:0;padding:13px;margin:12px 0;border:1px solid var(--d-border);border-radius:11px}.d-row legend{font-size:13px;font-weight:700;padding:0 4px}.d-row-head{margin-bottom:9px}.d-checks{display:flex;gap:15px;flex-wrap:wrap}.d-check{display:flex;gap:8px;align-items:center;font-size:14px;min-height:40px}.d-check input{accent-color:var(--d-blue);width:18px;height:18px}.d-section{margin:20px 0 8px;border:0;border-top:1px solid var(--d-border);padding-top:13px}.d-section legend{font-size:16px;font-weight:750;padding-right:10px}.d-result-hero{background:var(--d-bg);border:1px solid var(--d-border);border-radius:11px;padding:15px;display:flex;flex-direction:column;gap:5px}.d-result-kicker{text-transform:uppercase;font-size:12px;letter-spacing:.06em;color:var(--d-muted);font-weight:750}.d-count{font-size:60px;line-height:1;letter-spacing:-.06em}.d-result-hero small{color:var(--d-muted)}.d-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.d-metric{padding:10px;background:var(--d-bg);border:1px solid var(--d-border);border-radius:8px;min-width:0}.d-metric dt{font-size:12px;color:var(--d-muted)}.d-metric dd{font-weight:730;margin:3px 0;overflow-wrap:anywhere}.d-comparison{padding-left:21px}.d-breakdown p{margin:5px 0;font-size:14px}.d-result-note{font-size:13px;color:var(--d-muted)}.d-status{min-height:26px;color:var(--d-muted);font-size:13px}.d-status[data-error="true"]{color:var(--d-error);font-weight:700}.d-reference{padding:16px 0 55px;max-width:1000px}.d-reference h2{font-size:25px;margin:32px 0 10px}.d-reference p,.d-reference li{color:var(--d-muted)}.d-reference code{overflow-wrap:anywhere}.d-footer{border-top:1px solid var(--d-border);padding:20px 0}.d-footer-inner{min-height:50px;color:var(--d-muted);font-size:13px}.d-doc{max-width:860px;padding:40px 0 70px}.d-doc h1{font-size:36px}.d-doc h2{margin-top:30px}.d-doc p,.d-doc li{line-height:1.75}.d-doc-cta{background:var(--d-panel);border:1px solid var(--d-border);border-radius:14px;padding:20px;margin:28px 0}.d-doc-cta a{font-weight:750}:focus-visible{outline:3px solid var(--d-blue)!important;outline-offset:3px}
@media(max-width:860px){.d-nav{display:none}.d-menu{display:block}.d-mobile-nav:not([hidden]){display:grid;gap:8px;padding:10px 0 16px}.d-mobile-nav a{padding:8px}.d-workbench{grid-template-columns:1fr}.d-header-inner{min-height:64px}}
@media(min-width:861px){.d-mobile-nav{display:none!important}}
@media(max-width:390px){.d-container{width:min(100% - 24px,1130px)}.d-card{padding:15px}.d-fields,.d-row-head,.d-metrics{grid-template-columns:1fr}.d-count{font-size:48px}.d-action-row .d-button{flex:1 1 125px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
@media print{body.d-app{background:white!important;color:black!important}.d-header,.d-footer,.d-input-card,.d-hero,.d-reference,#mg-platform-breadcrumbs,.mg-app-actions,.mg-ad-slot,[data-mg-ad],.d-action-row{display:none!important}.d-workbench{display:block;padding:0}.d-result-card{border:0;background:white;padding:0}.d-result-hero,.d-metric{background:white;border-color:#bbb}.d-count{font-size:32px}.d-result-note{color:#333}}


/* Tire Size Calculator B01: additive scoped presentation over native shell. */
.d-hero h1{font-size:clamp(30px,4.3vw,43px);font-weight:620;letter-spacing:-.025em}
.d-workbench{grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr)}
.d-result-card{overflow:hidden}.d-result-card h2{margin-bottom:16px}
.d-buttons{display:flex;gap:10px;flex-wrap:wrap}.d-buttons .d-button{min-width:146px}
.d-error{display:block;color:var(--d-error);font-size:12px}
.d-error:empty{display:none}.d-control[aria-invalid=true]{border-color:var(--d-error)}
.d-result-hero{margin-bottom:14px}.d-result-hero .d-count{font-size:clamp(38px,5vw,56px);overflow-wrap:anywhere}
.d-table-wrap{width:100%;overflow-x:auto;max-width:100%}.d-tire-table{border-collapse:collapse;width:100%;font-size:13px;line-height:1.5;text-align:left}
.d-tire-table th,.d-tire-table td{padding:10px 8px;border-bottom:1px solid var(--d-border);vertical-align:top}
.d-tire-table th{font-weight:650}.d-tire-table thead th{color:var(--d-muted);font-size:12px}
.d-tire-table td{font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.d-tire-table th:first-child{width:34%}
.d-speed-result{margin:15px 0;padding:14px;background:var(--d-bg);border:1px solid var(--d-border);border-radius:11px;display:flex;flex-direction:column;gap:5px}
.d-speed-number{font-size:clamp(24px,4vw,34px);letter-spacing:-.03em}.d-speed-result small{color:var(--d-muted)}
.d-result-note{font-size:13px;color:var(--d-muted);line-height:1.6}
@media(max-width:860px){.d-workbench{grid-template-columns:minmax(0,1fr)}}
@media(max-width:420px){.d-fields{grid-template-columns:1fr}.d-tire-table{font-size:12px}.d-tire-table th,.d-tire-table td{padding:7px 5px}.d-buttons .d-button{flex:1 1 100%}}
@media print{.d-table-wrap{overflow:visible}.d-workbench{display:block}.d-result-card{overflow:visible}.d-result-card h2{display:block}.d-speed-result,.d-result-hero{break-inside:avoid}.d-result-note{color:#222!important}.d-reference,.d-hero,.d-header,.d-footer,.d-input-card,.d-action-row{display:none!important}}

/* B03 print-only repair for QC-B01: readable results regardless of screen theme. */
@media print {
  .d-result-hero,
  .d-speed-result {
    background: #fff !important;
    color: #111 !important;
    border-color: #bbb !important;
  }
  .d-result-hero .d-count,
  .d-speed-result .d-speed-number,
  .d-tire-table th,
  .d-tire-table td {
    color: #111 !important;
  }
  .d-result-hero .d-result-kicker,
  .d-result-hero small,
  .d-speed-result .d-result-kicker,
  .d-speed-result small,
  .d-tire-table thead th {
    color: #333 !important;
  }
  .d-tire-table th,
  .d-tire-table td {
    border-color: #bbb !important;
  }
}
