.verify-page {
    min-height:100vh;
    background:var(--ui-paper);
    color:#191415;
    font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;
}
.verify-header { background:#fff; border-bottom:1px solid var(--ui-line); }
.verify-header-inner { max-width:1120px; min-height:76px; padding:12px 28px; margin:auto; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.verify-brand { display:inline-flex; align-items:center; }
.verify-brand img { display:block; width:130px; height:48px; object-fit:contain; object-position:left center; }
.verify-back { display:inline-flex; min-height:38px; align-items:center; gap:7px; padding:7px 11px; border:1px solid var(--ui-line); border-radius:6px; color:var(--ui-accent); background:#fff; font-size:12px; font-weight:600; text-decoration:none; white-space:nowrap; }
.verify-back:hover { background:var(--ui-tint); border-color:#d7b5bf; }
.verify-back span { font-size:17px; line-height:1; }
.verify-main { width:min(100%,560px); padding:48px 24px 56px; margin:auto; }
.verify-intro { margin-bottom:26px; }
.verify-kicker { display:block; margin-bottom:10px; color:var(--ui-accent); font-size:11px; font-weight:700; line-height:1.4; letter-spacing:.12em !important; }
.verify-intro h1 { margin:0; font-size:30px; font-weight:650; line-height:1.2; }
.verify-intro p { max-width:460px; margin:10px 0 0; color:#5c5c64; font-size:14px; line-height:1.6; }
.verify-panel,.verify-result { background:#fff; border:1px solid var(--ui-line); border-radius:8px; box-shadow:0 2px 8px #19141508; }
.verify-panel { padding:24px; }
.verify-panel h2 { margin:0 0 22px; font-size:16px; font-weight:650; }
.verify-panel label { display:block; margin-bottom:8px; font-size:13px; font-weight:600; }
.verify-panel input { display:block; width:100%; height:48px; padding:0 14px; border:1px solid #d2c9cc; border-radius:6px; color:#191415; background:#fff; font:600 16px 'JetBrains Mono',ui-monospace,monospace; text-transform:uppercase; }
.verify-panel input::placeholder { color:#888894; font-weight:500; }
.verify-panel input[aria-invalid=true] { border-color:#d12222; }
.verify-hint { margin:7px 0 18px; color:#666670; font-size:12px; line-height:1.5; }
.verify-panel button { display:flex; width:100%; min-height:46px; align-items:center; justify-content:center; gap:10px; padding:10px 16px; border:0; border-radius:6px; background:var(--ui-accent); color:#fff; font:600 14px Inter,-apple-system,BlinkMacSystemFont,sans-serif; }
.verify-panel button:hover { background:#591329; }
.verify-panel button:disabled { opacity:.7; cursor:wait; }
.verify-result-loading { display:flex; align-items:center; gap:12px; color:#5c5c64; font-size:13px; }
.verify-loading-spinner { width:18px; height:18px; flex:none; border:2px solid #ead5dc; border-top-color:var(--ui-accent); border-radius:50%; animation:verify-spin .8s linear infinite; }
@keyframes verify-spin { to { transform:rotate(360deg); } }
@media (prefers-reduced-motion:reduce) { .verify-loading-spinner { animation:none; } }
.verify-panel button span { font-size:18px; line-height:1; }
.verify-result { margin-top:18px; padding:24px; border-top:3px solid var(--ui-accent); }
.verify-result-heading { display:flex; align-items:center; gap:12px; }
.verify-result-icon { display:grid; width:38px; height:38px; flex:none; place-items:center; border-radius:8px; background:#f9edf1; color:var(--ui-accent); font-size:22px; font-weight:700; line-height:1; }
.verify-result-label { display:block; margin-bottom:3px; color:#666670; font-size:10px; font-weight:700; letter-spacing:.08em !important; }
.verify-result h2 { margin:0; font-size:17px; font-weight:700; line-height:1.25; }
.verify-status { display:inline-flex; max-width:100%; align-items:center; gap:8px; margin-top:18px; padding:7px 10px; border-radius:6px; background:#f9edf1; color:var(--ui-accent); font-size:12px; line-height:1.35; }
.verify-status-dot { width:7px; height:7px; flex:none; border-radius:50%; background:currentColor; }
.verify-result-message { margin:13px 0 18px; color:#50505a; font-size:13px; line-height:1.6; }
.verify-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 24px; margin:0; border-top:1px solid var(--ui-line); }
.verify-details div { min-width:0; padding:12px 0; border-bottom:1px solid var(--ui-line); }
.verify-details dt { color:#666670; font-size:11px; line-height:1.4; }
.verify-details dd { margin:4px 0 0; color:#302528; font-size:13px; font-weight:600; line-height:1.4; overflow-wrap:anywhere; }
.verify-details .verify-reference { color:var(--ui-accent); font-family:'JetBrains Mono',ui-monospace,monospace; font-size:14px; font-weight:700; }
.verify-next { margin:18px 0 0; padding:12px 14px; border-radius:6px; background:#f9f7f8; color:#494951; font-size:12px; line-height:1.55; }
.verify-checked { margin:16px 0 0; color:#777780; font-size:11px; line-height:1.5; }
.verify-result-approved { border-top-color:#0f8c3b; }
.verify-result-approved .verify-result-icon,.verify-result-approved .verify-status { background:#e7f6ec; color:#156a35; }
.verify-result-invalid,.verify-result-error { border-top-color:#d12222; }
.verify-result-invalid .verify-result-icon,.verify-result-invalid .verify-status,.verify-result-error .verify-result-icon { background:#fce9e9; color:#b42323; }
.verify-result-error > p { margin:14px 0 0; color:#50505a; font-size:13px; line-height:1.6; }
.verify-footer { margin:26px 0 0; padding-top:18px; border-top:1px solid var(--ui-line); color:#777780; font-size:12px; line-height:1.6; }
@media (max-width:600px) {
    .verify-header-inner { min-height:68px; padding:10px 18px; }
    .verify-brand img { width:116px; height:43px; }
    .verify-back { padding:7px 9px; }
    .verify-main { padding:32px 18px 38px; }
    .verify-intro { margin-bottom:22px; }
    .verify-intro h1 { font-size:26px; }
    .verify-panel,.verify-result { padding:19px; }
    .verify-details { gap:0 16px; }
}
@media (max-width:350px) {
    .verify-main { padding-inline:14px; }
    .verify-details { grid-template-columns:minmax(0,1fr); }
}
@media (prefers-reduced-motion:reduce) {
    .verify-page :is(a,button,input) { transition:none !important; }
}
