.cmr-flow-overlay {
  position: fixed;
  inset: 0;
  z-index: 100000;
  overflow: auto;
  background: linear-gradient(145deg, #f7f9fc 0%, #eef3f8 55%, #f8f2ea 100%);
  color: #132238;
  font: 16px/1.55 "Segoe UI", system-ui, sans-serif;
}
.cmr-flow-shell { width: min(940px, calc(100% - 32px)); margin: 0 auto; padding: 28px 0 56px; }
.cmr-flow-brand { display:flex; align-items:center; gap:12px; margin-bottom:34px; font-weight:800; color:#173b64; }
.cmr-flow-mark { display:grid; place-items:center; width:42px; height:42px; border-radius:10px; color:#fff; background:#173b64; font-size:20px; }
.cmr-flow-card { background:#fff; border:1px solid #d9e2ec; border-radius:18px; padding:clamp(24px,5vw,48px); box-shadow:0 22px 70px rgba(20,46,76,.12); }
.cmr-flow-eyebrow { margin:0 0 8px; color:#a05016; font-size:13px; font-weight:800; letter-spacing:.09em; text-transform:uppercase; }
.cmr-flow-card h1 { margin:0 0 14px; color:#102f52; font-size:clamp(30px,5vw,48px); line-height:1.1; }
.cmr-flow-lede { max-width:720px; margin:0 0 28px; color:#526276; font-size:18px; }
.cmr-flow-summary { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:26px 0; }
.cmr-flow-stat { padding:18px; border:1px solid #dce4ed; border-radius:12px; background:#f8fafc; }
.cmr-flow-stat strong { display:block; color:#173b64; font-size:26px; }
.cmr-flow-stat span { color:#607085; font-size:13px; }
.cmr-flow-notice { margin:20px 0; padding:14px 16px; border-left:4px solid #d98b32; border-radius:4px; background:#fff7ed; color:#663a15; }
.cmr-flow-price { display:flex; justify-content:space-between; gap:20px; align-items:end; margin:28px 0 20px; padding-top:22px; border-top:1px solid #e1e7ee; }
.cmr-flow-price small,.cmr-flow-price span { display:block; color:#66768a; }
.cmr-flow-price strong { display:block; color:#173b64; font-size:32px; }
.cmr-flow-price s { color:#8390a0; }
.cmr-flow-actions { display:flex; flex-wrap:wrap; gap:12px; margin-top:24px; }
.cmr-flow-button { appearance:none; border:0; border-radius:10px; padding:13px 19px; background:#173b64; color:#fff; font:700 15px/1.2 "Segoe UI",system-ui,sans-serif; cursor:pointer; }
.cmr-flow-button:hover { background:#0e2948; }
.cmr-flow-button:focus-visible { outline:3px solid #e8a95b; outline-offset:3px; }
.cmr-flow-button.secondary { background:#fff; color:#173b64; border:1px solid #9eafc1; }
.cmr-flow-button:disabled { opacity:.58; cursor:wait; }
.cmr-flow-docs { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin:28px 0; }
.cmr-flow-doc { display:flex; flex-direction:column; padding:22px; border:1px solid #d7e0e9; border-radius:14px; background:#fbfcfe; }
.cmr-flow-doc h2 { margin:8px 0; color:#173b64; font-size:20px; }
.cmr-flow-doc p { flex:1; margin:0 0 20px; color:#5b6b7e; }
.cmr-flow-doc-status { min-height:24px; margin-top:10px; color:#18704a; font-weight:700; font-size:13px; }
.cmr-flow-check { display:grid; place-items:center; width:62px; height:62px; border-radius:50%; margin-bottom:20px; background:#e5f6ee; color:#18704a; font-size:32px; font-weight:900; }
.cmr-flow-status { min-height:24px; margin-top:16px; color:#53667d; font-weight:600; }
.cmr-flow-error { color:#a12622; }
@media (max-width:700px){ .cmr-flow-summary,.cmr-flow-docs{grid-template-columns:1fr}.cmr-flow-price{align-items:start;flex-direction:column}.cmr-flow-shell{width:min(100% - 20px,940px);padding-top:16px}.cmr-flow-card{padding:24px 18px}.cmr-flow-brand{margin-bottom:16px} }
