/* Model Routing — isolated Frozion components; illustration cards stay upright. */
:root { --mr-nav-height:66px; }
.mr-hero { padding:32px 0 0; background:radial-gradient(ellipse at 88% 20%,#f2f1ff 0,#f8fafa 32%,#ffffff 68%); }.mr-breadcrumb { display:flex; flex-wrap:wrap; gap:8px 16px; font-size:12px; margin-bottom:56px; color:#626a70; }.mr-breadcrumb a { color:inherit; }
.mr-hero h1 { font-size:clamp(3rem,4.15vw,3.5rem); margin:24px 0 24px; }.mr-hero .eyebrow { font-size:12px; letter-spacing:.75px; }.mr-hero-lead { font-size:20px; line-height:1.65; max-width:610px; color:#424a50; }.mr-hero-support { font-size:14px; line-height:1.85; max-width:600px; }
.mr-foundation { margin-top:64px; border-top:1px solid var(--line); padding:24px 0 32px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:16px 24px; font-size:12px; }.mr-foundation > span { color:#626a70; }.mr-foundation strong { font-weight:500; }
.mr-label { display:block; font-size:12px; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:#626a70; }
.mr-cover { background:white; border:1px solid #e1ddff; border-radius:15px; box-shadow:0 22px 65px #2f1d990d; overflow:hidden; margin:0; }.mr-cover figcaption { padding:16px 16px; display:flex; justify-content:space-between; gap:16px; font-size:12px; letter-spacing:.6px; color:#626a70; border-bottom:1px solid var(--line); background:#f8fafa; }.mr-cover figcaption span:last-child { letter-spacing:0; }.mr-cover-body { padding:24px; }
.mr-cover-facts { padding:16px 16px; border:1px solid #e1ddff; background:#f2f1ff; border-radius:8px; }.mr-cover-facts strong { display:block; font-size:14px; font-weight:500; color:#4128cc; margin:8px 0 6px; }.mr-cover-facts small { font-size:12px; line-height:1.8; color:#626a70; }
.mr-cover-gate { display:flex; gap:16px; align-items:center; padding:24px 4px; }.mr-cover-gate > span { color:#4128cc; font-size:24px; }.mr-cover-gate strong { display:block; font-size:12px; font-weight:500; color:#4128cc; }.mr-cover-gate small { font-size:12px; line-height:1.8; color:#626a70; display:block; margin-top:4px; }
.mr-cover-routes { border:1px solid #e1ddff; border-radius:8px; overflow:hidden; }.mr-cover-routes > div { padding:16px 16px; border-bottom:1px solid var(--line); display:grid; grid-template-columns:1fr 1fr; gap:6px 16px; }.mr-cover-routes > div:last-child { border:0; }.mr-cover-routes strong { font-size:12px; font-weight:500; color:#4128cc; }.mr-cover-routes small { font-size:12px; line-height:1.8; color:#626a70; grid-column:2; }.mr-cover-routes .mr-label { font-size:12px; line-height:1.7; grid-row:1/3; }.mr-cover-limit { padding-top:16px; font-size:12px; color:#626a70; text-align:center; }.mr-cover-footer { padding:16px 24px; background:#f8fafa; border-top:1px solid var(--line); font-size:12px; line-height:1.8; color:#4128cc; }
.mr-nav { position:sticky; top:var(--header-height); z-index:1020; background:white; border-block:1px solid var(--line); box-shadow:0 5px 12px #120a3d04; }.mr-nav-links { display:grid; grid-template-columns:repeat(5,1fr); }.mr-nav-links a { display:flex; align-items:center; gap:8px; min-height:66px; padding:16px 16px; font-size:12px; color:#626a70; border-bottom:3px solid transparent; }.mr-nav-links a span { font-size:12px; color:#626a70; }.mr-nav-links a.active { color:var(--brand); border-color:var(--brand); background:linear-gradient(0deg,#f2f1ff,transparent); }.mr-nav-links a:hover { color:var(--brand); background:#f8fafa; }.mr-nav-mobile { display:none; padding:16px 0; }
.mr-section { padding:96px 0; scroll-margin-top:calc(var(--header-height) + var(--mr-nav-height) + 22px); }.mr-section h2 { font-size:clamp(2rem,3.35vw,3rem); }.mr-section h3 { font-size:20px; }.mr-section p { font-size:14px; line-height:1.85; }.mr-section .lead-copy { font-size:20px; line-height:1.65; }.mr-wash { background:#f8fafa; }.mr-heading { margin-bottom:48px; }.mr-note { font-size:12px !important; line-height:1.75 !important; color:#626a70; margin-top:16px; }.mr-subsection { margin-top:64px; padding-top:48px; border-top:1px solid var(--line); }
.mr-capabilities { display:grid; grid-template-columns:repeat(3,1fr); gap:32px 40px; }.mr-capabilities article { border-top:1px solid var(--line); padding-top:16px; }.mr-capabilities article > span { color:#4128cc; font-size:12px; text-transform:uppercase; letter-spacing:.7px; }.mr-capabilities h3 { font-size:20px; margin:16px 0 16px; }.mr-capabilities p { font-size:12px; margin:0; }
.mr-demo { background:white; border:1px solid #e1ddff; border-radius:14px; overflow:hidden; box-shadow:0 16px 55px #2f1d9907; }.mr-demo-toolbar { display:flex; justify-content:space-between; gap:24px; align-items:center; padding:24px 24px; background:#f2f1ff; border-bottom:1px solid var(--line); }.mr-demo-toolbar h3 { font-size:16px; margin:7px 0 0; line-height:1.5; }.mr-demo-toolbar .form-select { font-size:12px; min-width:305px; border-color:#e1ddff; background-color:white; }.mr-demo-toolbar label,.mr-model-head label { font-size:12px; display:block; margin-bottom:5px; color:#626a70; }
.mr-demo-scope { display:flex; gap:8px 24px; flex-wrap:wrap; padding:16px 24px; border-bottom:1px solid var(--line); font-size:12px; }.mr-demo-body { padding:24px; }.mr-facts { display:flex; justify-content:space-between; gap:16px; align-items:center; background:#f8fafa; border:1px solid var(--line); border-radius:8px; padding:24px; }.mr-facts strong { display:block; font-size:14px; font-weight:500; margin:8px 0; }.mr-facts p { font-size:12px; margin:0; max-width:770px; }
.mr-routing-steps { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); border:1px solid var(--line); border-radius:9px; overflow:hidden; margin-top:24px; }.mr-routing-steps article { padding:24px; border-right:1px solid var(--line); }.mr-routing-steps article:last-child { border:0; background:#f8fafa; }.mr-routing-steps h4 { font-size:16px; line-height:1.5; margin:16px 0 16px; }.mr-routing-steps p { font-size:12px; margin:0; }
.mr-models { margin-top:24px; border:1px solid #e1ddff; border-radius:9px; overflow:hidden; }.mr-model-head { display:flex; justify-content:space-between; gap:16px; align-items:center; padding:24px; background:#f8fafa; border-bottom:1px solid var(--line); }.mr-model-head h4 { font-size:16px; margin:8px 0 0; }.mr-model-head select { min-width:225px; font-size:12px; border-color:#e1ddff; }.mr-model-note { padding:16px 24px; margin:0; font-size:12px !important; color:#626a70; }.mr-model-table .table { --bs-table-bg:transparent; --bs-table-color:var(--body); min-width:700px; }.mr-model-table th,.mr-model-table td { padding:16px 24px; font-size:12px; line-height:1.8; border-color:var(--line); vertical-align:top; }.mr-model-table thead { background:#f8fafa; }.mr-model-table thead th { font-size:12px; text-transform:uppercase; letter-spacing:.6px; color:#4128cc; font-weight:600; }.mr-model-table tbody th { width:25%; font-weight:500; color:#4128cc; }.mr-model-table th small { display:block; color:#626a70; font-size:12px; font-weight:400; margin-top:6px; }.mr-model-table td { width:25%; }.mr-model-table tr.is-selected { background:#f2f1ff; }.mr-model-table tr:last-child > * { border-bottom:0; }
.mr-badge { display:inline-flex; font-size:12px; font-weight:500; background:#eef1f2; color:#007260; border:1px solid #e6fffa; border-radius:5px; padding:4px 8px; line-height:1.5; white-space:nowrap; }.mr-badge.is-warning { background:#fff9e6; border-color:#fff0bf; color:#664200; }.mr-badge.is-denied { background:#ffecee; border-color:#ffd2d7; color:#701024; }.mr-badge.is-neutral { background:#f2f1ff; border-color:#e1ddff; color:#626a70; }
.mr-outcome { margin-top:24px; padding:24px; border:1px solid #e1ddff; border-left:3px solid var(--brand); background:#f2f1ff; border-radius:7px; }.mr-outcome.is-warning { background:#ffffff; border-color:#fff0bf; border-left-color:#996500; }.mr-outcome.is-denied { background:#f8fafa; border-color:#ffd2d7; border-left-color:#701024; }.mr-outcome-head { display:flex; align-items:center; gap:16px 16px; flex-wrap:wrap; margin-bottom:16px; }.mr-outcome-head h4 { font-size:16px; margin:0; }.mr-outcome p { font-size:12px; line-height:1.75; margin:0; }.mr-next { font-size:12px; line-height:1.8; margin-top:16px; padding-top:16px; border-top:1px solid #e1ddff80; }.mr-next strong { font-weight:500; margin-right:16px; }
.mr-budget { display:flex; align-items:center; gap:24px; margin-top:24px; border-block:1px solid var(--line); padding:16px 0; }.mr-budget > div { flex:0 0 210px; border-right:1px solid var(--line); padding-right:16px; }.mr-budget strong { display:block; color:#4128cc; font-size:24px; font-weight:500; margin-top:8px; }.mr-budget p { font-size:12px; margin:0; }
.mr-evidence-toggle { color:var(--brand); font-size:12px; padding:16px 0 0; background:transparent; border:0; font-weight:500; text-align:left; }.mr-evidence-toggle::after { content:' +'; }.mr-evidence-toggle[aria-expanded=true]::after { content:' −'; }.mr-record { background:#f8fafa; padding:16px; margin-top:16px; border:1px solid var(--line); border-radius:7px; }.mr-record dl { margin:0; }.mr-record dl > div { display:grid; grid-template-columns:150px 1fr; gap:16px; padding:8px 0; border-bottom:1px solid var(--line); }.mr-record dl > div:last-child { border:0; }.mr-record dt { font-weight:500; color:#4128cc; font-size:12px; }.mr-record dd { font-size:12px; margin:0; line-height:1.8; overflow-wrap:anywhere; }
.mr-demo-footer { background:#f8fafa; border-top:1px solid var(--line); padding:16px 24px; display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 16px; font-size:12px; color:#626a70; }.mr-reset { background:none; border:0; color:var(--brand); font-size:12px; padding:0; text-decoration:underline; text-underline-offset:3px; }.mr-reset:focus-visible,.mr-evidence-toggle:focus-visible { outline:2px solid var(--brand); outline-offset:3px; }
.mr-pair { display:grid; grid-template-columns:1fr 1fr; border:1px solid var(--line); border-radius:12px; overflow:hidden; }.mr-pair article { padding:32px; }.mr-pair article:last-child { border-left:1px solid var(--line); background:#f2f1ff; }.mr-pair h3 { font-size:20px; margin:16px 0 24px; }.mr-pair ul { margin:0; padding-left:16px; }.mr-pair li { font-size:12px; line-height:1.8; padding:6px 0; }
.mr-definition-list { margin:0; border:1px solid var(--line); border-radius:10px; overflow:hidden; background:white; }.mr-definition-list > div { padding:24px 24px; display:grid; grid-template-columns:150px 1fr; gap:24px; border-bottom:1px solid var(--line); }.mr-definition-list > div:last-child { border:0; }.mr-definition-list dt { font-weight:500; color:#4128cc; font-size:12px; }.mr-definition-list dd { font-size:12px; margin:0; line-height:1.8; }.mr-callout { border-left:3px solid #beb6ff; padding:7px 0 7px 24px; margin-top:32px; }.mr-callout p { font-size:14px; margin:0; }
.mr-evidence-pair { display:grid; grid-template-columns:1fr 1fr; background:white; border:1px solid var(--line); border-radius:12px; overflow:hidden; }.mr-evidence-pair article { padding:32px; }.mr-evidence-pair article:last-child { border-left:1px solid var(--line); }.mr-evidence-pair h3 { margin:16px 0; font-size:20px; }.mr-evidence-pair p { font-size:14px; }.mr-evidence-pair small { font-size:12px; color:#626a70; }
.mr-lineage { background:white; border:1px solid var(--line); border-radius:10px; padding:32px; margin-top:40px; }.mr-lineage h3 { margin:16px 0; }.mr-lineage p { max-width:970px; font-size:14px; }.mr-lineage > span:last-child { font-size:12px; color:#626a70; }
.mr-related { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--line); border-radius:12px; margin-top:40px; overflow:hidden; background:white; }.mr-related a { padding:24px; border-right:1px solid var(--line); color:var(--body); }.mr-related a:last-child { border:0; }.mr-related a:hover { background:#f2f1ff; }.mr-related strong { display:block; font-size:16px; margin-bottom:16px; }.mr-related span { font-size:12px; line-height:1.7; display:block; }.mr-related b { display:block; margin-top:16px; font-size:12px; font-weight:500; color:var(--brand); }.mr-download { margin-top:24px; font-size:12px !important; }
[hidden] { display:none !important; }
@media (max-width:991px) {
 .mr-breadcrumb { margin-bottom:32px; }.mr-hero h1 { font-size:clamp(3rem,6.5vw,4rem); }.mr-cover { max-width:620px; }.mr-foundation { margin-top:48px; }.mr-section { padding:64px 0; }.mr-nav-links { display:none; }.mr-nav-mobile { display:flex; align-items:center; gap:16px; }.mr-nav-mobile label { font-size:12px; white-space:nowrap; }.mr-nav-mobile select { font-size:12px; }.mr-demo-toolbar { align-items:flex-start; }.mr-routing-steps { grid-template-columns:1fr; }.mr-routing-steps article { border-right:0; border-bottom:1px solid var(--line); }.navbar-collapse.show { max-height:calc(100svh - 90px); overflow-y:auto; }
}
@media (max-width:767px) {
 .mr-hero h1 { font-size:3rem; }.mr-hero .eyebrow { line-height:1.9; }.mr-hero-lead { font-size:16px; }.mr-cover-body { padding:16px; }.mr-cover figcaption { padding:16px; font-size:12px; }.mr-cover-routes > div { grid-template-columns:1fr; gap:7px; }.mr-cover-routes .mr-label { grid-row:auto; }.mr-cover-routes small { grid-column:auto; }
 .mr-foundation { display:grid; grid-template-columns:1fr 1fr; gap:16px; font-size:12px; }.mr-foundation > span { grid-column:1/-1; }.mr-capabilities { grid-template-columns:1fr 1fr; gap:24px; }.mr-capabilities h3 { font-size:16px; }.mr-pair,.mr-related,.mr-evidence-pair { grid-template-columns:1fr; }.mr-pair article,.mr-evidence-pair article { padding:24px; }.mr-pair article:last-child,.mr-evidence-pair article:last-child { border-left:0; border-top:1px solid var(--line); }
 .mr-demo-toolbar,.mr-model-head { flex-direction:column; align-items:stretch; padding:24px 16px; gap:16px; }.mr-demo-toolbar .form-select,.mr-model-head select { min-width:0; }.mr-demo-scope { padding:16px 16px; }.mr-demo-body { padding:24px 16px; }.mr-facts { flex-direction:column; align-items:flex-start; padding:16px; }.mr-model-note { padding:16px 16px; }.mr-outcome { padding:16px; }.mr-outcome-head h4 { font-size:16px; }.mr-next strong { display:block; margin-bottom:5px; }
 .mr-budget { flex-direction:column; align-items:stretch; gap:16px; }.mr-budget > div { flex:auto; border-right:0; padding:0; }.mr-record dl > div,.mr-definition-list > div { grid-template-columns:1fr; gap:6px; }.mr-demo-footer { padding:16px 16px; }.mr-subsection { margin-top:48px; padding-top:40px; }.mr-related a { border-right:0; border-bottom:1px solid var(--line); }.mr-lineage { padding:24px; }
}
@media (max-width:375px) { .mr-hero h1 { font-size:2.5rem; }.mr-capabilities { grid-template-columns:1fr; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }
@media print { .mr-nav,.mr-demo-toolbar select,.mr-model-head select,.mr-reset { display:none !important; }.mr-section { padding:32px 0; }.mr-hero { background:white; } }
#tool-call-resolver { scroll-margin-top:calc(var(--header-height) + var(--section-rail-height) + 24px); }
