/* Geometry and materials follow the supplied .dc.html design sources. */
.container { max-inline-size:1280px; }
.hero { grid-template-columns:repeat(2,minmax(0,1fr)); gap:56px; padding-block:72px 120px; }
.hero h1 { font-size:clamp(40px,5.4vw,66px); line-height:1.05; }
.hero .lead { font-size:19px; line-height:1.6; }
.hero .stack { gap:28px; }
.hero-card { padding:26px; background:rgba(255,255,255,.08); }
.hero-card .score-ring { inline-size:128px; block-size:128px; }
.hero-card:after { display:none; }
.section { padding-block-end:120px; }
.section h2 { font-size:38px; }
.split { gap:32px; }
.topbar .brand .mark { block-size:22px; }
.topbar .brand .word { block-size:19px; }
.score-number { background:var(--score-gradient); background-clip:text; -webkit-background-clip:text; color:transparent!important; }
.score-ring { --score-gradient:linear-gradient(135deg,#22d3ee,#10b981); }
.score-ring[data-tone="ai"] { --score-gradient:linear-gradient(135deg,#22d3ee,#38bdf8); }
.score-ring[data-tone="warn"] { --score-gradient:linear-gradient(135deg,#fcd34d,#f59e0b); }

/* Console: original sidebar, compact rows, and aligned number columns. */
.main { max-inline-size:1240px; }
.sidebar { padding-block:22px; gap:24px; background:rgba(255,255,255,.03); }
.sidebar .mark { block-size:21px; }
.sidebar .word { block-size:18px; }
.sidebar .nav { gap:2px; }
.sidebar .nav a { min-block-size:44px; font-size:13px; gap:10px; padding-inline:12px; }
.sidebar .nav .navicon { display:none; }
.nav-indicator { inline-size:6px; block-size:6px; border-radius:50%; background:#475569; flex-shrink:0; }
.nav a.active .nav-indicator { background:#22d3ee; }
.role-switch { gap:2px; }
.role-switch button.active { background:rgba(56,189,248,.18); }
.page-heading { align-items:flex-end; }
.page-heading h1 { letter-spacing:.05em; }
.page-heading .eyebrow { line-height:1.2; }
.sandbox-label { display:flex; align-items:center; gap:6px; color:var(--azure); font-size:10px; }
.kpi { border-radius:16px; background:rgba(255,255,255,.05); }
.kpi-label { font-size:12px; line-height:1.4; }
.kpi-value { margin-block-start:6px; line-height:1.25; }
.table-action { min-block-size:44px; min-inline-size:44px; }
.fraud-table { table-layout:fixed; }
.fraud-table td { font-size:13px; padding-block:12px; overflow:hidden; text-overflow:ellipsis; }
.fraud-table th { font-size:11px; padding-block:10px; }
.fraud-table th:nth-child(1) { inline-size:110px; }
.fraud-table th:nth-child(2) { inline-size:120px; }
.fraud-table th:nth-child(4) { inline-size:110px; text-align:end; }
.fraud-table th:nth-child(5) { inline-size:80px; text-align:center; }
.fraud-table th:nth-child(6) { inline-size:138px; }
.fraud-table td:nth-child(4) { text-align:end; font-weight:600; }
.fraud-table td:nth-child(5) { text-align:center; }
.score-pill { min-inline-size:38px; min-block-size:24px; align-items:center; padding:0 6px; font-size:12px; }
.fraud-table td:nth-child(5) { padding-inline:8px; }
.fraud-table .signals { grid-template-columns:repeat(auto-fit,minmax(180px,1fr)); gap:10px; padding-block:4px 6px; }
.outcome { display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:600; white-space:normal; line-height:1.4; }
.outcome.verified { color:var(--cyan); }
.pagination { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 18px; border-block-start:1px solid var(--line); color:var(--muted); font-size:12px; }
.table-card .table-toolbar { gap:12px; }
.table-toolbar .filters { gap:6px; }
.table-toolbar .chip { min-block-size:44px; font-size:12px; }
.table-footer { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; }
.chip { border-color:rgba(255,255,255,.12); }
.chip.active { color:var(--text); background:rgba(34,211,238,.14); border-color:rgba(34,211,238,.6); }
.two-col { gap:16px; }
.two-col > .pad { padding:22px; }

/* Verification: liquid glass, with state-driven ink and frosted surfaces. */
.demo-page { padding:28px 32px 48px; }
.demo-header { min-block-size:36px; }
.demo-header .brand .mark { block-size:22px; }
.demo-header .brand .word { block-size:19px; }
.demo-header > .row { gap:14px; }
.header-divider { inline-size:1px; block-size:18px; background:rgba(255,255,255,.15); }
.demo-controls { gap:12px 28px; padding:14px 18px; }
.control-label { font-size:11px; font-weight:700; letter-spacing:.12em; color:var(--muted); }
.demo-controls .segmented { border:0; background:rgba(2,6,23,.6); gap:2px; }
.demo-controls .segmented button { min-block-size:44px; font-size:12px; flex:none; }
.demo-controls .segmented .active { background:rgba(56,189,248,.18); }
.jump { gap:6px; }
.jump > .control-label { margin-inline-end:6px; }
.jump .chip { font-size:12px; min-block-size:44px; }
.pause-control { margin-inline-start:auto; color:var(--azure); }
.checkout-stage { inline-size:min(1180px,100%); min-block-size:760px; border-radius:16px; }
.checkout-nav { block-size:56px; padding:0 24px; letter-spacing:0; }
.checkout-nav strong { font-size:13px; font-weight:600; letter-spacing:.3em; }
.checkout-nav > span { font-size:12px; color:#6b6860; }
.checkout-grid { grid-template-columns:minmax(0,1.2fr) minmax(0,1fr); padding:28px 24px; }
.checkout-fields { gap:14px; }
.checkout-fields h3, .checkout-order h3 { font-size:18px; }
.checkout-input { display:flex; flex-direction:column; gap:6px; }
.checkout-input > span { font-size:11px; color:#6b6860; letter-spacing:.06em; }
.checkout-field { min-block-size:42px; display:flex; align-items:center; font-size:14px; }
.checkout-order { padding:20px; gap:16px; }
.checkout-product { display:flex; gap:14px; align-items:center; font-size:14px; }
.checkout-product > div:nth-child(2) { flex:1; min-inline-size:0; }
.checkout-product strong { font-weight:600; }
.checkout-product > strong { flex-shrink:0; }
.product-placeholder { inline-size:72px; block-size:72px; flex-shrink:0; }
.checkout-total { border-block-start:1px solid #e7e5df; padding-block-start:16px; font-size:15px; }
.checkout-powered { color:#6b6860; padding:0; border:0; }
.order-confirmed { padding:14px; border-radius:8px; background:#ecfdf5; color:#065f46; font-weight:600; }
.verification-backdrop { padding:24px; background:rgba(2,6,23,.55); -webkit-backdrop-filter:blur(15px); }
.verification-modal { position:relative; display:block; max-inline-size:440px; max-block-size:100%; padding:0; overflow:auto; background:rgba(9,16,36,.74); backdrop-filter:blur(24px) saturate(140%); -webkit-backdrop-filter:blur(24px) saturate(140%); border:1px solid rgba(255,255,255,.12); box-shadow:inset 0 1px 0 rgba(255,255,255,.16),inset 0 0 0 1px rgba(255,255,255,.03),0 30px 80px rgba(0,0,0,.55); isolation:isolate; }
.verification-modal::before, .real-link-card::before { content:''; position:absolute; z-index:-1; inline-size:380px; block-size:280px; inset-block-start:-140px; inset-inline-start:calc(50% - 190px); border-radius:50%; background:var(--ink,#22d3ee); filter:blur(70px); opacity:.38; transition:background .9s ease; pointer-events:none; }
.tone-analysis { --ink:#22d3ee; }
.tone-success { --ink:#10b981; }
.tone-alert { --ink:#f59e0b; }
.verification-modal.tone-alert::after { content:''; position:absolute; z-index:-1; inset:0; background:rgba(245,158,11,.035); pointer-events:none; }
.verification-inner { padding:24px 26px 22px; display:flex; flex-direction:column; gap:20px; }
.verification-header .brand { gap:8px; }
.verification-header .brand .mark { block-size:17px; }
.verification-header .brand .word { block-size:14px; }
.verification-header .eyebrow { font-size:10px; letter-spacing:.1em; }
.verification-score { padding-block-start:4px; display:flex; justify-content:center; }
.verification-modal .score-ring { inline-size:148px; block-size:148px; }
.verification-modal .score-number { font-size:44px; letter-spacing:-.02em; }
.verification-modal .score-label { font-size:10px; letter-spacing:.16em; }
.verification-modal .score-ring svg { filter:drop-shadow(0 0 6px rgba(34,211,238,.25)); }
.verification-copy { display:flex; flex-direction:column; gap:6px; }
.verification-copy h2 { font-size:20px; line-height:1.3; letter-spacing:.04em; }
.verification-copy p { font-size:13px; color:var(--muted); line-height:1.55; }
.verification-copy.centered p { font-size:14px; color:var(--body); }
.verification-privacy { display:flex; align-items:center; justify-content:center; gap:8px; font-size:10px; line-height:1.5; color:var(--muted); padding-block-start:2px; text-align:center; }
.verification-privacy .dot { color:var(--cyan); }
.verification-required { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.verification-required > div { display:flex; flex-direction:column; padding:14px; border-radius:14px; background:rgba(255,255,255,.06); border:1px solid var(--line); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
.verification-required span { font-size:11px; font-weight:700; letter-spacing:.12em; color:var(--amber); }
.tone-success .verification-required span { color:var(--cyan); }
.verification-required strong { font-size:14px; margin-block-start:4px; }
.verification-required small { color:var(--muted); font-size:12px; margin-block-start:2px; }
.action-stack { gap:8px; inline-size:100%; }
.verification-modal .btn { min-block-size:48px; font-size:14px; }
.verification-modal .btn.ghost { min-block-size:44px; }
.analysis-signals { display:flex; flex-direction:column; }
.analysis-signal { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px; align-items:center; padding-block:10px; border-block-start:1px solid rgba(255,255,255,.07); opacity:1; transition:opacity .4s ease; }
.analysis-signal.resolved { opacity:1; }
.analysis-signal > div { min-inline-size:0; }
.analysis-signal strong { display:block; font-size:13px; font-weight:600; }
.analysis-signal [data-signal-detail] { display:block; font-size:12px; color:var(--muted); }
.analysis-status { padding:4px 8px; border-radius:99px; font-size:10px; font-weight:700; background:rgba(255,255,255,.05); }
.analysis-status.good { background:rgba(16,185,129,.14); }
.analysis-status.warn { background:rgba(245,158,11,.14); }
.scan-camera { position:relative; aspect-ratio:1.586; flex-shrink:0; border-radius:14px; overflow:hidden; background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 8px,transparent 8px 16px),rgba(2,6,23,.5); border:1px solid rgba(34,211,238,.3); box-shadow:inset 0 0 30px rgba(34,211,238,.08); }
.camera-caption { position:absolute; inset:0; display:flex; align-items:center; justify-content:center; font:11px 'JetBrains Mono',monospace; color:var(--muted); }
.scan-effect { position:absolute; inset:0; pointer-events:none; }
.scan-light { position:absolute; block-size:3px; inset-inline:0; background:#22d3ee; box-shadow:0 0 18px 4px rgba(34,211,238,.65),0 -40px 60px rgba(34,211,238,.12); animation:sweep 1.6s ease-in-out infinite alternate; }
.prism-fill, .liquid-wash { display:none; }
.style-b .prism-fill { display:block; position:absolute; inset-block:0; inset-inline-start:0; inline-size:var(--scan-progress,0%); background-image:radial-gradient(rgba(34,211,238,.55) 1px,transparent 1.2px); background-size:12px 12px; opacity:.9; }
.style-b .scan-light { animation:none; inset-block:0; inset-inline-start:var(--scan-progress,0%); inline-size:2px; block-size:auto; }
.style-b .scan-effect { border-radius:14px; box-shadow:inset 0 0 0 1px rgba(34,211,238,.7),inset 0 0 24px rgba(34,211,238,.25); animation:prism-pulse 1.8s ease-in-out infinite; }
.style-c .scan-light { display:none; }
.style-c .liquid-wash { display:block; position:absolute; inset:0; background:linear-gradient(100deg,transparent 20%,rgba(34,211,238,.32) 40%,rgba(56,189,248,.18) 55%,transparent 75%); background-size:200% 100%; animation:liquid-flow 2.6s linear infinite; filter:blur(6px); }
.style-c .scan-effect::after { content:''; position:absolute; inline-size:60%; block-size:90%; inset-block-start:5%; inset-inline-start:10%; border-radius:50%; background:rgba(34,211,238,.18); filter:blur(30px); animation:drift 5s ease-in-out infinite; }
.scan-corner { position:absolute; inline-size:22px; block-size:22px; border-color:var(--cyan); border-style:solid; border-width:0; }
.corner-ss { inset-block-start:10px; inset-inline-start:10px; border-block-start-width:2px; border-inline-start-width:2px; border-start-start-radius:8px; }
.corner-se { inset-block-start:10px; inset-inline-end:10px; border-block-start-width:2px; border-inline-end-width:2px; border-start-end-radius:8px; }
.corner-es { inset-block-end:10px; inset-inline-start:10px; border-block-end-width:2px; border-inline-start-width:2px; border-end-start-radius:8px; }
.corner-ee { inset-block-end:10px; inset-inline-end:10px; border-block-end-width:2px; border-inline-end-width:2px; border-end-end-radius:8px; }
.scan-progress { display:flex; flex-direction:column; gap:8px; }
.scan-progress > div { font-size:12px; color:var(--muted); }
.scan-progress bdi { color:var(--cyan); }
.ocr-fields { border-radius:14px; background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.08); }
.ocr-fields > div { display:flex; justify-content:space-between; gap:12px; padding:10px 14px; font-size:13px; }
.ocr-fields > div + div { border-block-start:1px solid rgba(255,255,255,.06); }
.ocr-fields span { color:var(--muted); }
.ocr-fields bdi { color:var(--muted); font-weight:600; transition:color .4s; }
.ocr-fields bdi.read { color:var(--text); }
.face-camera { position:relative; inline-size:236px; block-size:236px; flex-shrink:0; margin-inline:auto; }
.face-camera svg { position:absolute; inset:0; inline-size:100%; block-size:100%; filter:drop-shadow(0 0 6px rgba(34,211,238,.3)); }
.face-halo { position:absolute; inset:-8px; border:1px dashed rgba(34,211,238,.45); border-radius:50%; animation:spin 14s linear infinite; }
.face-feed { position:absolute; inset:18px; border-radius:50%; overflow:hidden; background:repeating-linear-gradient(135deg,rgba(255,255,255,.035) 0 8px,transparent 8px 16px),rgba(2,6,23,.55); border:1px solid var(--line); display:grid; place-items:center; font:10px 'JetBrains Mono',monospace; color:var(--muted); }
.face-prompt { display:flex; flex-direction:column; gap:4px; text-align:center; min-block-size:44px; }
.face-prompt strong { font-size:16px; font-weight:600; }
.face-prompt > span { font-size:12px; color:var(--muted); }
.verification-outcome { display:flex; flex-direction:column; align-items:center; gap:16px; padding-block-start:6px; }
.outcome-mark { inline-size:88px; block-size:88px; flex-shrink:0; border-radius:50%; display:grid; place-items:center; color:#10b981; border:2px solid currentColor; background:rgba(16,185,129,.12); box-shadow:0 0 40px rgba(16,185,129,.35),inset 0 0 20px rgba(16,185,129,.2); }
.outcome-mark svg { inline-size:36px; block-size:36px; }
.outcome-mark.failed { color:#f59e0b; background:rgba(245,158,11,.1); box-shadow:0 0 40px rgba(245,158,11,.3); font-size:38px; font-weight:800; }
.outcome-mark.reported { color:var(--azure); background:rgba(56,189,248,.1); box-shadow:0 0 40px rgba(56,189,248,.3); }
.outcome-mark.expired { color:var(--muted); background:transparent; box-shadow:none; border-color:rgba(255,255,255,.2); font-size:13px; font-weight:700; }
.verification-token { inline-size:100%; display:flex; justify-content:space-between; gap:10px; padding:12px 14px; border-radius:12px; background:rgba(255,255,255,.05); border:1px solid var(--line); font:11px 'JetBrains Mono',monospace; }
.verification-token span { color:var(--muted); }
.verification-token bdi { color:var(--cyan); }
.checkout-stage.mobile { inline-size:min(390px,100%); min-block-size:820px; border:10px solid #0b1224; border-radius:46px; }
.checkout-stage.mobile .verification-modal { max-inline-size:none; border-radius:28px 28px 0 0; padding:0; }
.checkout-stage.mobile .verification-inner { padding:24px 22px 22px; }

/* Verify by link: the reference phone presentation, SMS and email treatments. */
.link-layout { display:flex; flex-wrap:wrap; gap:40px; justify-content:center; align-items:flex-start; margin-block:8px 0; }
.phone-shell { position:relative; inline-size:390px; block-size:820px; flex-shrink:0; border:10px solid #0b1224; border-radius:52px; overflow:hidden; background:var(--bg); display:flex; flex-direction:column; box-shadow:0 0 0 1px rgba(255,255,255,.08),0 40px 120px rgba(0,0,0,.6); }
.phone-status { block-size:44px; flex-shrink:0; display:flex; align-items:center; justify-content:space-between; padding-inline:26px; font-size:14px; font-weight:600; color:var(--text); }
.phone-status > span:last-child { font-size:10px; }
.phone-island { inline-size:96px; block-size:26px; border-radius:99px; background:#000; }
.phone-address { margin:4px 12px 8px; flex-shrink:0; text-align:center; padding:5px; border-radius:10px; background:rgba(255,255,255,.08); font-size:11px; color:var(--muted); }
.phone-site { display:flex; flex-direction:column; flex:1; min-block-size:0; overflow:hidden; background:radial-gradient(250px 150px at 50% 0,rgba(56,189,248,.14),transparent),var(--bg); }
.phone-site-header { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:8px 22px 12px; flex-shrink:0; }
.phone-site-header .brand { gap:8px; }
.phone-site-header .brand .mark { block-size:20px; }
.phone-site-header .brand .word { block-size:16px; }
.phone-scroll { display:flex; flex-direction:column; flex:1; min-block-size:0; overflow:auto; overscroll-behavior:contain; gap:20px; padding:16px 22px; scrollbar-width:thin; scrollbar-color:#263347 transparent; }
.link-progress { display:flex; gap:4px; }
.link-progress span { inline-size:22px; block-size:4px; border-radius:99px; background:rgba(255,255,255,.14); }
.link-progress .active { background:var(--azure); }
.phone-site > .verification-privacy { padding:9px 16px 20px; flex-shrink:0; }
.request-summary { display:flex; align-items:center; gap:12px; padding:12px; border-radius:14px; background:rgba(255,255,255,.05); border:1px solid var(--line); }
.merchant-avatar { display:grid; place-items:center; inline-size:40px; block-size:40px; flex-shrink:0; border-radius:10px; background:#f4f3ef; color:#1c1b19; font-size:12px; font-weight:700; letter-spacing:.08em; }
.request-summary strong { display:block; font-size:13px; font-weight:600; }
.request-summary > div > div { font-size:11px; color:var(--muted); }
.link-copy { display:flex; flex-direction:column; gap:8px; }
.link-copy h1 { font-size:26px; letter-spacing:.01em; line-height:1.2; text-wrap:balance; }
.link-copy p { font-size:14px; color:var(--body); line-height:1.6; }
.intro-steps { border-radius:16px; background:rgba(255,255,255,.05); border:1px solid var(--line); box-shadow:inset 0 1px 0 rgba(255,255,255,.08); }
.intro-steps > div { display:grid; grid-template-columns:32px minmax(0,1fr); gap:12px; align-items:start; padding:14px; }
.intro-steps > div + div { border-block-start:1px solid rgba(255,255,255,.07); }
.intro-steps > div > span { display:grid; place-items:center; inline-size:28px; block-size:28px; border-radius:50%; background:rgba(34,211,238,.12); border:1px solid rgba(34,211,238,.4); color:var(--cyan); font-size:12px; font-weight:700; }
.intro-steps strong { font-size:14px; font-weight:600; }
.intro-steps p { font-size:12px; color:var(--muted); line-height:1.5; margin-block-start:2px; }
.link-privacy { display:flex; flex-direction:column; gap:8px; }
.link-privacy .eyebrow { font-size:10px; }
.link-privacy p { font-size:12px; line-height:1.6; color:var(--body); }
.link-actions { display:flex; flex-direction:column; gap:8px; margin-block-start:auto; padding-block-start:8px; flex-shrink:0; }
.link-actions .btn { inline-size:100%; min-block-size:52px; font-size:14px; border-radius:14px; }
.link-actions .btn.ghost { min-block-size:44px; box-shadow:none; }
.phone-actions { padding:16px 22px 4px; flex-shrink:0; }
.phone-actions .link-actions { padding:0; margin:0; }
.sms-bubble { border-radius:20px; border-end-start-radius:6px; }
.bubble { border-radius:18px; border-end-start-radius:6px; }
.prep-tips { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.prep-tips > div { padding:14px; border-radius:14px; background:rgba(255,255,255,.05); border:1px solid var(--line); }
.prep-tips span { color:var(--cyan); font-size:11px; font-weight:700; letter-spacing:.12em; }
.prep-tips p { margin-block-start:6px; font-size:13px; line-height:1.5; color:var(--body); }
.camera-consent-info { padding:16px; border-radius:16px; background:rgba(56,189,248,.08); border:1px solid rgba(56,189,248,.3); }
.camera-consent-info h3 { font-size:14px; margin-block-end:10px; }
.camera-consent-info p { font-size:13px; line-height:1.5; }
.phone-scroll .consent { font-size:13px; gap:12px; }
.phone-scroll .scan-camera { inline-size:100%; }
.phone-scroll .verification-copy h2 { font-size:22px; }
.phone-scroll .face-camera { margin-block:8px; }
.phone-scroll .ocr-fields { display:none; }
.phone-scroll .face-prompt strong { font-size:15px; }
.link-outcome { display:flex; flex-direction:column; align-items:center; gap:18px; text-align:center; padding-block-start:40px; }
.link-outcome .outcome-mark { inline-size:96px; block-size:96px; }
.link-outcome h1 { font-size:24px; line-height:1.25; }
.link-outcome p { font-size:14px; line-height:1.6; max-inline-size:300px; }
.link-note { inline-size:380px; min-inline-size:260px; max-inline-size:100%; display:flex; flex-direction:column; gap:12px; padding-block-start:8px; }
.link-note h2 { font-size:22px; letter-spacing:.03em; }
.link-note > p { font-size:14px; color:var(--muted); line-height:1.65; }
.merchant-status { padding:14px 16px; border-radius:14px; font-size:12px; margin-block-start:8px; }
.merchant-status > span:first-child { color:var(--muted); }
.merchant-status .pill { font-size:10px; }
.demo-step-summary { font-size:11px; color:var(--muted); margin-block-start:12px; }
.phone-message { background:#f8f8fa; }
.phone-message .phone-status { color:#0f172a; }
.sms-app { display:flex; flex-direction:column; flex:1; min-block-size:0; background:#fff; color:#0f172a; }
.sms-app > header { display:flex; flex-direction:column; align-items:center; gap:6px; padding:10px 0 14px; border-block-end:1px solid #e5e7eb; background:#f8f8fa; }
.sms-app .merchant-avatar { inline-size:48px; block-size:48px; border-radius:50%; background:#1c1b19; color:#fff; font-size:13px; }
.sms-app > header strong { font-size:13px; font-weight:600; }
.sms-conversation { flex:1; padding:18px 14px; display:flex; flex-direction:column; gap:8px; }
.sms-conversation > time, .sms-conversation > small { align-self:center; color:#73737a; font-size:11px; }
.sms-conversation > small { margin-block-start:6px; }
.sms-bubble { align-self:flex-start; max-inline-size:85%; padding:10px 14px; border-radius:20px 20px 20px 6px; background:#e9e9eb; font-size:15px; line-height:1.4; }
.sms-bubble a { color:#0867b2; text-decoration:underline; }
.sms-preview { display:flex; flex-direction:column; align-self:flex-start; inline-size:85%; padding:0; text-align:start; border-radius:18px; overflow:hidden; background:#e9e9eb; color:#0f172a; }
.sms-preview-brand { block-size:110px; inline-size:100%; background:radial-gradient(180px 90px at 50% 40%,rgba(56,189,248,.3),transparent 70%),#020617; display:grid; place-items:center; }
.sms-preview .brand .mark { block-size:30px; }
.sms-preview .brand .word { block-size:23px; }
.sms-preview > div:last-child { padding:10px 12px; }
.sms-preview strong { font-size:13px; font-weight:600; }
.sms-preview small { display:block; color:#6b7280; font-size:12px; }
.sms-compose { margin:10px 14px 28px; min-block-size:36px; padding:6px 14px; border:1px solid #d1d5db; border-radius:99px; font-size:14px; color:#73737a; }
.email-app { flex:1; min-block-size:0; overflow:auto; background:#f3f4f6; color:#0f172a; }
.email-app > header { padding:8px 16px 12px; background:#fff; border-block-end:1px solid #e5e7eb; }
.email-app > header h3 { font-size:17px; line-height:1.4; font-weight:700; letter-spacing:0; margin-block-end:10px; }
.email-app > header .row { gap:10px; }
.email-app > header strong { font-size:12px; }
.email-app > header .merchant-avatar { inline-size:34px; block-size:34px; border-radius:50%; background:#1c1b19; color:#fff; font-size:11px; }
.email-letter { margin:14px; border-radius:18px; background:#020617; color:var(--text); padding:22px; display:flex; flex-direction:column; gap:14px; }
.email-letter .brand { margin-block-end:8px; }
.email-letter h2 { font-size:21px; line-height:1.3; }
.email-letter p { font-size:14px; }
.email-letter small { color:var(--muted); font-size:12px; }
.email-footer { padding:0 20px 24px; font-size:11px; color:#6b7280; line-height:1.6; }
.real-verification { min-block-size:100vh; max-inline-size:820px; margin-inline:auto; padding:26px 24px 48px; display:flex; flex-direction:column; gap:32px; }
.real-link-card { position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; inline-size:100%; max-inline-size:440px; min-block-size:650px; margin-inline:auto; padding-block:18px; }
.real-link-card > .verification-privacy { padding:12px 22px 4px; }
.real-link-card .phone-scroll { overflow:visible; }
.provider-spinner { inline-size:64px; block-size:64px; border-radius:50%; border:2px solid var(--line); border-block-start-color:var(--cyan); animation:spin 1.5s linear infinite; }
.client-modal { inline-size:min(640px,100%); max-inline-size:640px; max-block-size:calc(100dvh - 48px); overflow:auto; background:#0b1427; }
.credentials-block { padding:18px; border:1px solid var(--line); border-radius:12px; background:rgba(2,6,23,.6); display:flex; flex-direction:column; gap:8px; overflow-wrap:anywhere; }
.credentials-block > span { color:var(--muted); font-size:11px; font-weight:600; }
.credentials-block > bdi { font-size:14px; margin-block-end:8px; }
.readonly-value { min-block-size:44px; display:flex; align-items:center; overflow-wrap:anywhere; font-size:13px; }
.integration-details { padding:14px 16px; border-radius:12px; border:1px solid var(--line); }
.integration-details summary { cursor:pointer; color:var(--azure); font-size:13px; font-weight:600; min-block-size:28px; }
.integration-details > .stack { padding-block-start:16px; }
.system-services { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:16px; }
.system-services .stack { gap:12px; }
.system-services .pill { font-size:10px; }
.system-queues { display:flex; flex-direction:column; }
.system-queues > div { padding-block:12px; border-block-end:1px solid var(--line); font-size:13px; color:var(--body); }
.client-context { display:flex; justify-content:space-between; align-items:center; gap:12px; }
@keyframes prism-pulse { 50% { opacity:.5; } }
@keyframes liquid-flow { from { background-position:200% 0; } to { background-position:-200% 0; } }
@media(max-width:1100px) {
  .hero { gap:40px; }
  .hero h1 { font-size:clamp(40px,5.4vw,60px); }
  .hero .lead { font-size:17px; }
  .fraud-table th:nth-child(1) { inline-size:85px; }
  .fraud-table th:nth-child(2) { inline-size:110px; }
  .fraud-table td, .fraud-table th { padding-inline:12px; }
  .fraud-table th:nth-child(6) { inline-size:130px; }
}
@media(max-width:760px) {
  .hero { grid-template-columns:1fr; gap:48px; padding-block:42px 70px; }
  .hero h1 { font-size:42px; }
  .hero .lead { font-size:15px; }
  .section { padding-block-end:70px; }
  .section h2 { font-size:29px; }
  .sidebar { padding:16px; gap:16px; }
  .sidebar .nav { gap:6px; }
  .sidebar .nav a { min-block-size:44px; font-size:12px; }
  .demo-page { padding:20px 14px 32px; }
  .demo-header > .row > .muted { display:none; }
  .header-divider { display:none; }
  .demo-controls { gap:15px; }
  .demo-controls .segmented { flex-wrap:wrap; }
  .demo-controls .segmented button { min-block-size:44px; font-size:11px; padding-inline:10px; }
  .jump .chip { min-block-size:44px; font-size:11px; padding-inline:10px; }
  .pause-control { margin-inline-start:0; }
  .checkout-grid { grid-template-columns:1fr; padding:18px; }
  .checkout-stage { min-block-size:780px; }
  .checkout-stage.mobile { min-block-size:820px; border-width:7px; border-radius:36px; }
  .checkout-product { gap:10px; font-size:12px; }
  .product-placeholder { inline-size:54px; block-size:64px; }
  .verification-backdrop { padding:12px; }
  .verification-inner { padding:22px 18px; }
  .verification-copy h2 { font-size:20px; }
  .verification-token { flex-wrap:wrap; font-size:10px; }
  .verification-required > div { padding:12px; }
  .face-camera { inline-size:220px; block-size:220px; }
  .link-layout { gap:28px; }
  .phone-shell { inline-size:min(390px,100%); block-size:820px; border-width:7px; border-radius:42px; }
  .phone-site-header { padding-inline:18px; }
  .phone-scroll { padding-inline:18px; }
  .link-note { inline-size:100%; min-inline-size:0; }
  .link-progress span { inline-size:18px; }
  .link-copy h1 { font-size:24px; }
  .real-verification { padding:20px 14px; gap:24px; }
  .real-link-card { min-block-size:650px; }
  .pagination { gap:8px; padding-inline:12px; }
  .table-toolbar .chip { min-block-size:44px; }
  .language, .role-switch button, .link-actions .btn.ghost { min-block-size:44px; }
}
@media(prefers-reduced-motion:reduce) {
  .scan-light, .style-b .scan-effect, .liquid-wash, .face-halo, .provider-spinner { animation:none!important; }
  .analysis-signal, .ocr-fields bdi { transition:none; }
}

/* Actual merchant iframe: one compact glass surface; actions stay visible. */
.real-verification.embedded-verification { min-block-size:0; block-size:100dvh; max-inline-size:none; padding:0; gap:0; overflow:hidden; }
.embedded-verification .real-link-card { inline-size:100%; max-inline-size:none; min-block-size:0; block-size:100%; margin:0; border:0; border-radius:0; padding-block:14px 8px; }
.embedded-verification .phone-site-header { gap:10px; padding-inline-end:64px; padding-block-start:4px; min-block-size:44px; }
.embedded-verification .phone-site-header .brand { gap:6px; }
.embedded-verification .phone-site-header .brand .mark { block-size:17px; }
.embedded-verification .phone-site-header .brand .word { block-size:14px; }
.embedded-verification .phone-site-header .language { padding-inline:8px; min-inline-size:44px; }
.embedded-verification .phone-scroll { overflow:auto; min-block-size:0; padding-block:12px; }
.embedded-verification .link-copy h1 { font-size:24px; }
.embedded-verification .link-actions { padding-block:12px 0; }
.embedded-verification .phone-site-header .link-progress { flex-shrink:1; }
