.im-auth-page{background:var(--im-bg);min-height:100vh;font-family:var(--font-schibsted,var(--font-inter,system-ui));justify-content:center;align-items:center;padding:clamp(16px,5vw,32px);display:flex;position:relative}.im-auth-lang-toggle{top:max(16px, var(--im-safe-top,0px));right:max(16px, var(--im-safe-right,0px));z-index:2;position:absolute}.im-auth-card{background:var(--im-bg-elevated);border:1px solid var(--im-border);border-radius:var(--im-radius-xl);width:100%;max-width:440px;box-shadow:var(--im-shadow-card);animation:invira-fade-in .35s var(--im-ease-out,ease-out) both;padding:clamp(24px,6vw,44px) clamp(20px,5.5vw,40px)}.im-auth-logo{align-items:center;gap:10px;margin-bottom:clamp(20px,5vw,32px);text-decoration:none;display:flex}.im-auth-logo-mark{background:linear-gradient(135deg, var(--im-accent), color-mix(in srgb, var(--im-accent) 78%, #1a1040));width:24px;height:24px;box-shadow:0 4px 14px color-mix(in srgb, var(--im-accent) 38%, transparent);border-radius:7px;flex-shrink:0;display:block;transform:rotate(45deg)}.im-auth-logo-text{color:var(--im-text);letter-spacing:-.01em;font-size:20px;font-weight:700}.im-auth-logo-accent{color:var(--im-accent)}.im-auth-title{color:var(--im-text);letter-spacing:-.02em;margin:0 0 6px;font-size:clamp(20px,4.6vw,24px);font-weight:800}.im-auth-subtitle{color:var(--im-text-secondary);margin:0 0 24px;font-size:14px;line-height:1.5}.im-auth-form{flex-direction:column;gap:15px;display:flex}.im-auth-field{min-width:0}.im-auth-label{color:var(--im-text-muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:7px;font-size:12px;font-weight:700;display:block}.im-auth-label-row{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:7px;display:flex}.im-auth-label-row .im-auth-label{margin-bottom:0}.im-auth-input{background:var(--im-bg-inset);border:1px solid var(--im-border);border-radius:var(--im-radius-sm);width:100%;min-height:var(--im-touch);color:var(--im-text);box-sizing:border-box;transition:border-color var(--im-duration-fast,.14s) ease, box-shadow var(--im-duration-fast,.14s) ease;outline:none;padding:13px 15px;font-family:inherit;font-size:15px}.im-auth-input::placeholder{color:var(--im-text-muted)}.im-auth-input:focus,.im-auth-input:focus-visible{border-color:var(--im-accent);box-shadow:0 0 0 3px var(--im-accent-soft)}.im-auth-input[aria-invalid=true]{border-color:color-mix(in srgb, var(--im-error) 55%, var(--im-border))}.im-auth-input:disabled{opacity:.6;cursor:not-allowed}.im-auth-name-grid{grid-template-columns:1fr 1fr;gap:12px;display:grid}@media (max-width:420px){.im-auth-name-grid{grid-template-columns:1fr}}.im-auth-error{background:var(--im-error-soft);border:1px solid color-mix(in srgb, var(--im-error) 35%, transparent);color:var(--im-error);overflow-wrap:break-word;word-break:break-word;border-radius:10px;padding:11px 14px;font-size:13.5px;line-height:1.5}.im-auth-link{color:var(--im-accent);border-radius:4px;font-weight:600;text-decoration:none}.im-auth-link:hover{text-decoration:underline}.im-auth-link:focus-visible,.im-auth-logo:focus-visible{outline:2px solid var(--im-accent);outline-offset:2px}.im-auth-link-muted{color:var(--im-text-muted);border-radius:4px;text-decoration:underline}.im-auth-link-muted:focus-visible{outline:2px solid var(--im-accent);outline-offset:2px}.im-auth-footer-text{text-align:center;color:var(--im-text-secondary);margin-top:22px;font-size:13.5px;line-height:1.5}.im-auth-terms{text-align:center;color:var(--im-text-muted);margin-top:16px;font-size:11.5px;line-height:1.5}.im-auth-success{text-align:center;padding:16px 0}.im-auth-success-icon{margin-bottom:14px;font-size:38px;line-height:1}.im-auth-session-check{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:28px 0;display:flex}.invira-auth-submit{background:linear-gradient(135deg, var(--im-accent), color-mix(in srgb, var(--im-accent) 80%, #1a1040));color:var(--im-on-accent);border-radius:var(--im-radius-md);min-height:var(--im-touch);cursor:pointer;transition:opacity var(--im-duration-fast,.14s) ease, transform var(--im-duration-fast,.14s) ease, box-shadow var(--im-duration-fast,.14s) ease;box-shadow:0 4px 16px color-mix(in srgb, var(--im-accent) 30%, transparent);border:none;justify-content:center;align-items:center;width:100%;margin-top:2px;padding:14px 0;font-family:inherit;font-size:15px;font-weight:700;display:inline-flex}.invira-auth-submit:not(:disabled):hover{box-shadow:0 6px 20px color-mix(in srgb, var(--im-accent) 38%, transparent);transform:translateY(-1px)}.invira-auth-submit:disabled{opacity:.7;cursor:not-allowed}.invira-auth-submit:focus-visible{outline:2px solid var(--im-on-accent);outline-offset:2px}.invira-auth-submit .invira-spinner{border-color:color-mix(in srgb, var(--im-on-accent) 25%, transparent);border-top-color:var(--im-on-accent)}.invira-loading-overlay--auth{background:color-mix(in srgb, var(--im-bg) 55%, transparent)}.invira-loading-overlay--auth .invira-loading-overlay-card{background:color-mix(in srgb, var(--im-bg-elevated) 92%, transparent);border-color:var(--im-border);box-shadow:var(--im-shadow-card)}.invira-loading-overlay--auth .invira-loading-overlay-message{color:var(--im-text)}.invira-loading-overlay--auth .invira-spinner--gold{border-color:color-mix(in srgb, var(--im-accent) 22%, transparent);border-top-color:var(--im-accent)}@media (max-width:480px){.im-auth-page{padding:max(16px, var(--im-safe-top,0px)) max(16px, var(--im-safe-right,0px)) max(16px, var(--im-safe-bottom,0px)) max(16px, var(--im-safe-left,0px))}.im-auth-card{max-width:100%}}@media (prefers-reduced-motion:reduce){.im-auth-card{animation:none!important}}