/* FitsCalc Direct UI Visual Consistency R2
   Presentation-only compatibility layer. No calculation/data behavior. */
html[data-fc-visual-consistency="r2"]{
  --fc-vr2-bg:#e7ebe8;
  --fc-vr2-surface:#f8f9f7;
  --fc-vr2-alt:#eef1ee;
  --fc-vr2-border:#aab5ae;
  --fc-vr2-border-dark:#718078;
  --fc-vr2-text:#172129;
  --fc-vr2-muted:#53625b;
  --fc-vr2-primary:#365c76;
  --fc-vr2-primary-dark:#28465b;
  --fc-vr2-font:"Segoe UI",Arial,sans-serif;
  color-scheme:light;
}
:where(body[data-fc-visual-consistency="r2"]){margin:0;min-height:100%;background:var(--fc-vr2-bg);color:var(--fc-vr2-text);font-family:var(--fc-vr2-font);font-size:14px;line-height:1.4;}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main){box-sizing:border-box;min-width:0;width:100%;max-width:none;margin:0;padding:28px clamp(18px,3vw,48px) 48px;}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main > .fc-module-header,
       body[data-fc-visual-consistency="r2"] .fc-module-main > .fc-module-hero){margin:0 0 18px;padding:0 0 14px;border-bottom:1px solid var(--fc-vr2-border);background:transparent;}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main h1){margin:0 0 16px;color:#162b38;font:700 clamp(24px,2.4vw,32px)/1.15 var(--fc-vr2-font);}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main h2){color:#162b38;}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="button"]):not([type="submit"]):not([type="reset"]):not([type="hidden"]):not([type="color"]),select,textarea)){
  box-sizing:border-box;min-height:36px;border:1px solid var(--fc-vr2-border-dark);border-radius:3px;background:#fff;color:#000;font:400 13px/1.4 var(--fc-vr2-font);box-shadow:inset 0 1px 2px rgba(0,0,0,.10);
}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main :is(input,select,textarea):focus-visible){outline:2px solid var(--fc-vr2-primary);outline-offset:2px;}
:where(body[data-fc-visual-consistency="r2"][data-fc-visual-profile="catalog"] .fc-module-main button,
       body[data-fc-visual-consistency="r2"][data-fc-visual-profile="welded"] .fc-module-main button){
  box-sizing:border-box;min-height:36px;border-radius:3px;font-family:var(--fc-vr2-font);
}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main table:not([role="presentation"])){border-collapse:collapse;background:#fff;color:#000;}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main table:not([role="presentation"]) :is(th,td)){border-color:var(--fc-vr2-border);}
:where(body[data-fc-visual-consistency="r2"] .fc-module-main :is(.card,.panel,.fc-card,.fc-panel)){box-sizing:border-box;}
/* Keep specialized simulators native; only normalize their page canvas and typography. */
:where(body[data-fc-visual-consistency="r2"][data-fc-visual-profile="simulator"]){background:var(--fc-vr2-bg);font-family:var(--fc-vr2-font);}
:where(body[data-fc-visual-consistency="r2"][data-fc-visual-profile="simulator"] > #app){box-sizing:border-box;width:100%;max-width:none;margin:0 auto;}
@media(max-width:900px){
  :where(body[data-fc-visual-consistency="r2"] .fc-module-main){padding:20px 14px 36px;}
}
