/* Module 0A — Warranty Desk auth surfaces (login / reset / MFA / invite / password change).
   Served statically from the docroot (no build toolchain on this host). v2 — full-bleed,
   dark brand panel, centered form text. */

@font-face{font-family:Inter;src:url('/fonts/inter-400.woff2') format('woff2');font-weight:400;font-display:swap;}
@font-face{font-family:Inter;src:url('/fonts/inter-500.woff2') format('woff2');font-weight:500;font-display:swap;}
@font-face{font-family:Inter;src:url('/fonts/inter-600.woff2') format('woff2');font-weight:600;font-display:swap;}
@font-face{font-family:Inter;src:url('/fonts/inter-700.woff2') format('woff2');font-weight:700;font-display:swap;}

:root{
    --wd-auth-bg:#F5F8FA;
    --wd-auth-surface:#FFFFFF;
    --wd-auth-border:#E3EAF0;
    --wd-auth-text:#132238;
    --wd-auth-muted:#66758A;
    --wd-auth-teal:#0FA6B8;
    --wd-auth-teal-hover:#0C8D9D;
    --wd-auth-navy:#0B1424;
    --wd-auth-danger:#B42318;
}

html,body{
    min-height:100%;
    background:var(--wd-auth-navy);
    font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}

.wd-auth-page{
    min-height:100vh;
    display:flex;
    align-items:stretch;
    justify-content:center;
    padding:0;
    background:var(--wd-auth-navy);
}

.wd-auth-shell{
    width:100%;
    min-height:100vh;
    display:grid;
    grid-template-columns:minmax(0,46%) minmax(0,54%);
    overflow:hidden;
    background:#fff;
    border:0;
    border-radius:0;
    box-shadow:none;
}

/* ---------- brand panel (dark) ---------- */
.wd-auth-brand-pane{
    position:relative;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    padding:54px 52px;
    overflow:hidden;
    color:#e8eef3;
    background:linear-gradient(150deg,#0B1424 0%,#0C2531 46%,#0E4E5A 100%);
}
.wd-auth-brand-pane::before{
    content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;
    background-image:
        linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);
    background-size:34px 34px;
}
.wd-auth-brand-pane::after{
    content:"";position:absolute;width:360px;height:360px;border-radius:999px;
    right:-140px;bottom:-130px;background:rgba(15,166,184,.22);filter:blur(6px);
}
.wd-auth-brand-pane > *{position:relative;z-index:1;}

.wd-auth-brand-logo{max-width:190px;max-height:46px;object-fit:contain;object-position:left center;}
.wd-auth-brand-wordmark{color:#fff;font-size:22px;font-weight:750;letter-spacing:-.025em;}
.wd-auth-brand-kicker{
    display:inline-flex;width:max-content;margin-top:11px;padding:5px 11px;
    border:1px solid rgba(127,227,238,.35);border-radius:999px;color:#8fe6f1;
    background:rgba(255,255,255,.06);font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
}
.wd-auth-brand-copy{max-width:410px;}
.wd-auth-brand-eyebrow{margin-bottom:10px;color:#5fd3e0;font-size:12px;font-weight:650;}
.wd-auth-brand-copy h2{margin:0;color:#fff;font-size:36px;line-height:1.12;letter-spacing:-.04em;font-weight:750;}
.wd-auth-brand-copy p{max-width:380px;margin:16px 0 24px;color:#aebecb;font-size:14px;line-height:1.65;}
.wd-auth-confidence{display:grid;gap:11px;}
.wd-auth-confidence span{position:relative;padding-left:24px;color:#cddae3;font-size:12.5px;font-weight:500;}
.wd-auth-confidence span::before{content:"";position:absolute;left:2px;top:50%;width:9px;height:9px;transform:translateY(-50%);border:2px solid #2fd0e2;border-radius:999px;}
.wd-auth-brand-pane__footer{color:#7f95a3;font-size:11.5px;}
.wd-auth-brand-pane__footer a{color:#fff;font-weight:700;text-decoration:none;}

/* ---------- form panel ---------- */
.wd-auth-form-pane{display:flex;align-items:center;justify-content:center;padding:54px 64px;background:#fff;}
.wd-auth-form-wrap{width:100%;max-width:420px;text-align:center;}
.wd-auth-mobile-brand{display:none;}

.wd-auth-portal-switch{
    display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:4px;margin-bottom:30px;
    border:1px solid var(--wd-auth-border);border-radius:11px;background:#F6F8FA;
}
.wd-auth-portal-switch__item{
    display:flex;min-height:36px;align-items:center;justify-content:center;border-radius:8px;
    color:#64748B;font-size:12px;font-weight:600;text-decoration:none;transition:.16s ease;
}
.wd-auth-portal-switch__item:hover{color:#334155;background:#fff;}
.wd-auth-portal-switch__item.is-active{color:#0B7D8B;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.07);}

.wd-auth-header{margin-bottom:27px;text-align:center;}
.wd-auth-kicker{margin-bottom:8px;color:#0B8796;font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;}
.wd-auth-header h1{margin:0;color:var(--wd-auth-text);font-size:29px;line-height:1.2;font-weight:730;letter-spacing:-.03em;}
.wd-auth-header p{margin:8px 0 0;color:var(--wd-auth-muted);font-size:13px;line-height:1.5;}

/* form fields — labels centered, controls full width */
.wd-auth-form-slot{text-align:left;}
.wd-auth-form-slot .fi-fo-field-wrp{margin-bottom:16px;}
.wd-auth-form-slot .fi-fo-field-wrp-label{color:#334155;font-size:12px;font-weight:600;}
.wd-auth-form-slot .fi-input-wrp{min-height:46px;border:1px solid #DDE5EC;border-radius:10px;background:#fff;box-shadow:none !important;transition:border-color .15s ease,box-shadow .15s ease;}
.wd-auth-form-slot .fi-input-wrp:focus-within{border-color:rgba(15,166,184,.72);box-shadow:0 0 0 3px rgba(15,166,184,.10) !important;}
.wd-auth-form-slot .fi-input{font-size:13.5px;color:var(--wd-auth-text);}
.wd-auth-form-slot .fi-btn{min-height:46px;border-radius:10px;font-size:13.5px;font-weight:650;background:var(--wd-auth-teal);box-shadow:none;}
.wd-auth-form-slot .fi-btn:hover{background:var(--wd-auth-teal-hover);}
.wd-auth-form-slot .fi-checkbox-input{border-radius:5px;}
.wd-auth-form-slot .fi-fo-checkbox-list-option-label,.wd-auth-form-slot label{font-size:12px;}
.wd-auth-form-slot a{color:#0B8796;font-weight:600;text-decoration:none;}
.wd-auth-form-slot a:hover{text-decoration:underline;}

.wd-auth-alt-portal{margin-top:22px;padding-top:18px;border-top:1px solid #EDF1F4;color:#768598;font-size:11.5px;text-align:center;}
.wd-auth-alt-portal a{color:#0B8796;font-weight:650;text-decoration:none;}
.wd-auth-support{margin-top:28px;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 14px;color:#94A0AE;font-size:10.5px;text-align:center;}
.wd-auth-support a{color:#66758A;text-decoration:none;}
.wd-auth-powered-mobile{display:none;}

/* budgetic — dark crimson brand panel + neutral focus */
.wd-auth-shell--budgetic .wd-auth-brand-pane{background:linear-gradient(150deg,#0B1424 0%,#2A0E13 48%,#7A1A1E 100%);}
.wd-auth-shell--budgetic .wd-auth-brand-kicker{color:#f3a9ab;border-color:rgba(243,169,171,.35);}
.wd-auth-shell--budgetic .wd-auth-brand-eyebrow{color:#f0999c;}
.wd-auth-shell--budgetic .wd-auth-confidence span::before{border-color:#e5484d;}
.wd-auth-shell--budgetic .wd-auth-form-slot .fi-input-wrp:focus-within{border-color:#344054;box-shadow:0 0 0 3px rgba(52,64,84,.09) !important;}
.wd-auth-shell--budgetic .wd-auth-form-slot .fi-btn{background:#B41416;}
.wd-auth-shell--budgetic .wd-auth-form-slot .fi-btn:hover{background:#981214;}

/* native forms (required password / MFA challenge / invite) */
.wd-auth-native-form{display:grid;gap:16px;text-align:left;}
.wd-auth-native-form label{display:grid;gap:7px;color:#344054;font-size:12px;font-weight:600;}
.wd-auth-native-form input{width:100%;min-height:46px;padding:0 12px;border:1px solid #DDE5EC;border-radius:10px;color:#132238;font:500 13.5px Inter,sans-serif;outline:none;}
.wd-auth-native-form input:focus{border-color:#0FA6B8;box-shadow:0 0 0 3px rgba(15,166,184,.10);}
.wd-auth-native-primary{min-height:46px;border:0;border-radius:10px;background:#0FA6B8;color:#fff;font:650 13.5px Inter,sans-serif;cursor:pointer;}
.wd-auth-native-primary:hover{background:#0C8D9D;}
.wd-auth-error{margin-bottom:16px;padding:11px 12px;border:1px solid #FECACA;border-radius:9px;background:#FEF2F2;color:#B42318;font-size:12px;text-align:left;}
.wd-auth-success{margin-bottom:16px;padding:11px 12px;border:1px solid #A7F3D0;border-radius:9px;background:#ECFDF5;color:#047857;font-size:12px;text-align:left;}
.wd-auth-help{margin:-8px 0 0;color:#8793A2;font-size:10.5px;}
.wd-auth-password-field{position:relative;}
.wd-auth-password-field input{padding-right:60px;}
.wd-auth-password-field button{position:absolute;right:10px;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#0B8796;font-size:11px;font-weight:650;cursor:pointer;}
.wd-auth-trust{display:flex !important;align-items:center;gap:9px !important;}
.wd-auth-trust input{width:16px !important;min-height:16px !important;}
.wd-auth-secondary-form{margin-top:12px;text-align:center;}
.wd-auth-secondary-form button{border:0;background:none;color:#0B8796;font:600 11.5px Inter,sans-serif;cursor:pointer;}

@media(max-width:900px){
    .wd-auth-page{align-items:stretch;padding:0;background:#fff;}
    .wd-auth-shell{min-height:100vh;display:block;}
    .wd-auth-brand-pane{display:none;}
    .wd-auth-form-pane{min-height:100vh;align-items:flex-start;padding:42px 26px 28px;}
    .wd-auth-form-wrap{max-width:440px;margin:0 auto;}
    .wd-auth-mobile-brand{display:flex;flex-direction:column;align-items:center;gap:5px;margin-bottom:28px;}
    .wd-auth-mobile-brand img{max-width:150px;max-height:36px;object-fit:contain;}
    .wd-auth-mobile-brand strong{color:var(--wd-auth-navy);font-size:19px;font-weight:750;}
    .wd-auth-mobile-brand span{color:#0B8796;font-size:9.5px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;}
    .wd-auth-portal-switch{margin-bottom:25px;}
    .wd-auth-header h1{font-size:25px;}
    .wd-auth-powered-mobile{display:inline;}
}
@media(max-width:430px){
    .wd-auth-form-pane{padding:30px 20px 24px;}
    .wd-auth-header{margin-bottom:23px;}
    .wd-auth-support{margin-top:22px;}
}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto !important;transition:none !important;animation:none !important;}}
