.portal-route-error{box-sizing:border-box;color:#111827;background:#f8fafc;place-items:center;min-height:100vh;padding:32px 20px;display:grid}.portal-route-error__content{box-sizing:border-box;background:#fff;border:1px solid #fecaca;border-radius:8px;width:min(100%,520px);padding:24px;box-shadow:0 18px 42px #0f172a1a}.portal-route-error__eyebrow{color:#991b1b;overflow-wrap:anywhere;margin:0 0 10px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.78rem}.portal-route-error__title{color:#111827;margin:0;font-size:1.35rem;line-height:1.25}.portal-route-error__message{color:#4b5563;overflow-wrap:anywhere;margin:12px 0 0;font-size:.95rem;line-height:1.55}.portal-route-error__action{color:#fff;cursor:pointer;font:inherit;background:#991b1b;border:1px solid #991b1b;border-radius:8px;margin-top:20px;padding:.72rem 1rem;font-weight:700}.portal-route-error__action:focus-visible{outline-offset:2px;outline:3px solid #991b1b47}.portal-route-error__action:hover{background:#7f1d1d}.portal-route-outcome{box-sizing:border-box;color:#111827;background:radial-gradient(circle at top,#28aae11f,#0000 38%),#f8fafc;place-items:center;min-height:100vh;padding:32px 20px;display:grid}.portal-route-outcome__content{box-sizing:border-box;text-align:center;background:#fff;border:1px solid #1b3a6b1f;border-radius:20px;width:min(100%,560px);padding:clamp(28px,5vw,48px);box-shadow:0 24px 64px #0f172a1a}.portal-route-outcome__eyebrow{color:#1b3a6b;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:.78rem;font-weight:800}.portal-route-outcome__title{color:#111827;margin:0;font-size:clamp(1.7rem,4vw,2.35rem);line-height:1.15}.portal-route-outcome__title:focus{outline:none}.portal-route-outcome__message{color:#4b5563;max-width:44ch;margin:14px auto 0;line-height:1.6}.portal-route-outcome__path{overflow-wrap:anywhere;color:#64748b;max-width:100%;margin:18px auto 0;font-size:.82rem;display:block}.portal-route-outcome__action{color:#fff;cursor:pointer;font:inherit;background:#1b3a6b;border:1px solid #1b3a6b;border-radius:10px;margin-top:24px;padding:.78rem 1.15rem;font-weight:700}.portal-route-outcome__action:hover{background:#122b52}.portal-route-outcome__action:focus-visible{outline-offset:3px;outline:3px solid #28aae157}.portal-route-loading{box-sizing:border-box;color:#1b3a6b;background:#f8fafc;justify-content:center;align-items:center;gap:12px;min-height:100vh;font-weight:700;display:flex}.portal-route-loading>span[aria-hidden=true]{border:2px solid #1b3a6b38;border-top-color:#1b3a6b;border-radius:999px;width:18px;height:18px;animation:.7s linear infinite portal-route-loading-spin}@keyframes portal-route-loading-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.portal-route-loading>span[aria-hidden=true]{animation:none}}:root{--color-primary-orange:#f05b2b;--color-primary-sky:#28aae1;--color-primary-white:#fff;--color-secondary-soft:#f5f8fc;--color-secondary-black:#1b3a6b;--color-secondary-navy:#1b3a6b;--color-secondary-canvas:#f3f7fb;--color-canvas:var(--color-secondary-canvas);--color-surface:var(--color-primary-white);--color-surface-muted:var(--color-secondary-soft);--color-text:#1b3a6b;--color-text-strong:#1b3a6b;--color-text-muted:#1b3a6bad;--color-border:#1b3a6b24;--color-border-strong:#1b3a6b47;--color-action-primary:var(--color-primary-sky);--color-action-primary-hover:var(--color-secondary-navy);--color-action-accent:var(--color-primary-orange);--color-focus-ring:#28aae15c;--color-uae-pass:#007a3d;--color-uae-pass-hover:#063;--font-sans:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-arabic:ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Tahoma, Arial, sans-serif;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--shadow-panel:0 28px 80px #1b3a6b29, 0 8px 24px #0000000f;font:16px/1.5 var(--font-sans);letter-spacing:0;color:var(--color-text);background:var(--color-canvas);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{background:var(--color-canvas);font-family:var(--font-sans)}#root{min-height:100svh}main[tabindex="-1"]:focus{outline:none}body{min-width:320px;min-height:100svh;font-family:var(--font-sans);margin:0}button,input,select,textarea{font:inherit;font-family:var(--font-sans)}button{cursor:pointer}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}a{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}
