:root{--auth-accent:var(--turquoise,#0aa6a6);--auth-accent-dark:#087f88;--auth-ink:var(--navy,#12344d);--auth-muted:#607789;--auth-line:#d6e5eb;--auth-soft:#eef9fa}
.auth-page{min-height:100vh;background:radial-gradient(circle at 12% 12%,rgb(38 198 190/.12),transparent 30rem),linear-gradient(145deg,#edf8fa,#f7fafc 58%,#edf5fb);display:grid;place-items:center;color:var(--auth-ink)}
.auth-shell{width:min(calc(100% - 32px),430px);padding:32px 0}
.auth-back-link{display:inline-block;margin-bottom:14px;color:var(--auth-muted);font-size:13px;font-weight:650;text-decoration:none}
.auth-back-link:hover{color:var(--auth-accent-dark)}
.auth-card,.account-card{background:#fff;border:1px solid var(--auth-line);border-radius:14px;box-shadow:0 18px 46px rgb(18 52 77/.1)}
.auth-card{padding:32px}.auth-brand{display:inline-flex;align-items:center;gap:10px;margin-bottom:25px;color:var(--auth-ink);text-decoration:none}.auth-brand>span,.auth-brand-mark{display:inline-grid;place-items:center;min-width:38px;min-height:38px;padding:5px;border-radius:8px;background:var(--auth-accent);color:#fff;font-size:12px;font-weight:850;letter-spacing:.04em}
.auth-brand strong{display:block;font-size:19px;letter-spacing:.02em}.auth-brand small{display:block;margin-top:1px;color:var(--auth-muted);font-size:10px;letter-spacing:.12em}
.auth-card h1{margin:4px 0 8px;color:var(--auth-ink);font-size:clamp(25px,5vw,29px);line-height:1.25}.auth-intro,.auth-card>p{color:var(--auth-muted);line-height:1.65;margin:0 0 22px}
.auth-card form,.account-profile-form{display:grid;gap:15px}.auth-card label,.account-profile-form label{display:grid;gap:7px;color:#36546a;font-size:13px;font-weight:700}
.auth-card input,.account-profile-form input{width:100%;min-height:46px;border:1px solid #c5d8e1;border-radius:8px;background:#fbfdfe;padding:10px 12px;color:var(--auth-ink)}
.auth-card input:focus,.account-profile-form input:focus{outline:3px solid rgb(10 166 166/.16);border-color:var(--auth-accent);background:#fff}
.auth-card button,.account-profile-form button{width:100%;min-height:46px;margin-top:3px;border:1px solid var(--auth-accent-dark);border-radius:8px;background:var(--auth-accent);color:#fff;font-weight:800;cursor:pointer}
.auth-card button:hover,.account-profile-form button:hover{background:var(--auth-accent-dark)}
.auth-links,.auth-secondary-links{display:flex;justify-content:space-between;gap:14px;margin-top:20px;font-size:13px}.auth-links a,.auth-card a{color:#087f88;font-weight:700}
.auth-error,.auth-success{border-radius:8px;padding:11px 13px;margin-bottom:18px;font-size:14px}.auth-error{background:#fff2f2;border:1px solid #efc7c7;color:#922f38}.auth-success{background:#edf9f5;border:1px solid #b9e3d3;color:#17664d}
.auth-inline-shell{width:min(100%,540px);margin:26px auto}

/* Header account control */
.account-menu{position:relative;flex:0 0 auto}.account-menu-toggle{display:flex;align-items:center;gap:8px;min-height:40px;max-width:220px;border:1px solid rgb(255 255 255/.22);border-radius:999px;padding:4px 11px 4px 5px;background:rgb(255 255 255/.1);color:#fff;cursor:pointer}
.account-menu-toggle:hover,.account-menu-toggle:focus-visible{background:rgb(255 255 255/.18);outline:2px solid rgb(73 224 217/.45)}
.account-avatar{display:grid;place-items:center;width:30px;height:30px;flex:0 0 30px;border-radius:50%;background:#36cec7;color:#083847;font-weight:900}.account-menu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:750}.account-menu-chevron,.account-menu-caret{font-size:10px;opacity:.8}
.account-menu-panel{position:absolute;z-index:120;top:calc(100% + 9px);right:0;width:min(270px,calc(100vw - 24px));height:auto;min-height:0;padding:6px;border:1px solid var(--auth-line);border-radius:11px;background:#fff;box-shadow:0 18px 45px rgb(7 35 54/.22);color:var(--auth-ink)}.account-menu-panel[hidden]{display:none}
.account-menu-identity{padding:9px 10px 10px;border-bottom:1px solid #e8eff2}.account-menu-identity strong,.account-menu-identity span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-menu-identity strong{font-size:14px}.account-menu-identity span{margin-top:2px;color:var(--auth-muted);font-size:12px}
/* This intentionally outranks Design System's broad
   `.site-header .site-navigation a` / `.site-header .logout-form button`
   rules. Account rows are controls on a white popover, not header links. */
.site-header .site-navigation .account-menu-panel a,.site-header .site-navigation .account-menu-panel form button{position:static;display:flex;align-items:center;justify-content:flex-start;width:100%;height:auto;min-height:38px;margin:1px 0 0;border:0;border-radius:6px;padding:7px 10px;background:#fff;color:#24485f;box-shadow:none;font:700 13px/1.35 inherit;text-align:left;text-decoration:none;opacity:1;visibility:visible;cursor:pointer}
.site-header .site-navigation .account-menu-panel a:hover,.site-header .site-navigation .account-menu-panel form button:hover,.site-header .site-navigation .account-menu-panel a:focus-visible,.site-header .site-navigation .account-menu-panel form button:focus-visible{background:var(--auth-soft);color:#086f78;box-shadow:none;outline:2px solid rgb(10 166 166/.22);outline-offset:-2px}
.site-header .site-navigation .account-menu-panel form{margin:3px 0 0;padding-top:3px;border-top:1px solid #e8eff2}.site-header .site-navigation .account-menu-panel form button{color:#71383b}

/* Self-service account */
.account-page{width:min(100%,960px);margin:0 auto}.account-page-header{margin-bottom:16px}.account-layout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);gap:16px;align-items:start}.account-card{padding:20px;box-shadow:0 9px 28px rgb(18 52 77/.07)}.account-side-stack{display:grid;gap:16px}
.account-section-heading{display:flex;justify-content:space-between;gap:12px;align-items:start;margin-bottom:17px}.account-section-heading .eyebrow{margin:0 0 3px;color:#0b8e91;font-size:10px;letter-spacing:.11em;font-weight:850}.account-section-heading h2{margin:0;color:var(--auth-ink);font-size:18px}.account-section-heading>span{border-radius:999px;padding:4px 8px;background:var(--auth-soft);color:#27747a;font-size:11px;font-weight:800}
.account-data-list{margin:0}.account-data-list>div{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;padding:9px 0;border-bottom:1px solid #eaf0f3}.account-data-list dt{color:var(--auth-muted);font-size:12px}.account-data-list dd{margin:0;overflow-wrap:anywhere;color:var(--auth-ink);font-size:13px;font-weight:750;text-align:right}
.account-security-link{display:flex;justify-content:center;margin-top:15px}.account-linked-list{display:grid;gap:8px}.account-linked-list>div{display:grid;gap:3px;padding:10px;border:1px solid #dcebef;border-radius:8px;background:#f8fcfd}.account-linked-list strong{color:var(--auth-ink);font-size:13px}.account-linked-list span,.account-linked-list p{color:var(--auth-muted);font-size:12px}.compact-form-card{width:min(100%,560px)}.account-feedback{margin:0 0 14px}
@media(max-width:760px){.account-layout{grid-template-columns:1fr}.account-page-header{margin-bottom:10px}.account-card{padding:16px;border-radius:11px}.site-nav-account .account-menu{width:100%}.site-nav-account .account-menu-toggle{width:100%;max-width:none;justify-content:flex-start;border-radius:8px}.site-nav-account .account-menu-panel{position:static;width:100%;margin-top:6px;box-shadow:none}}
@media(max-width:480px){.auth-page{place-items:start center}.auth-shell{width:min(calc(100% - 24px),430px);padding:18px 0}.auth-card{padding:24px 20px;border-radius:12px}.auth-brand{margin-bottom:20px}.auth-links{align-items:flex-start}.account-page{padding-inline:0}.account-data-list>div{grid-template-columns:84px minmax(0,1fr)}}
