@font-face{font-family:'Source Sans 3';src:url('assets/SourceSans3VF-Upright.ttf.woff2') format('woff2');font-weight:200 900;font-display:swap}
:root{color-scheme:light;--canvas:#f1f8fa;--ink:#242424;--muted:#52676e;--line:#a5b8bc;--field:#fff;--button:#242424;--button-ink:#fff;--focus:#087b86}
*{box-sizing:border-box}body{margin:0;background:var(--canvas);color:var(--ink);font:16px/1.55 'Source Sans 3',sans-serif}button,input{font:inherit;color:inherit}button{cursor:pointer}[hidden]{display:none!important}button:focus-visible,input:focus-visible,summary:focus-visible,a:focus-visible{outline:2px solid var(--focus);outline-offset:4px}.skip{position:fixed;top:-80px;left:12px;padding:12px;background:var(--field);color:var(--ink);z-index:2}.skip:focus{top:8px}.preview-bar{min-height:44px;padding:8px 20px;display:flex;gap:12px;justify-content:space-between;align-items:center;font-size:12px;border-bottom:1px solid var(--line)}.preview-bar div{display:flex;gap:8px}.preview-bar button{background:none;border:1px solid transparent;border-radius:6px;padding:5px 8px}.preview-bar button[aria-pressed=true]{background:var(--ink);color:var(--canvas)}main{min-height:calc(100dvh - 44px);display:flex;flex-direction:column;align-items:center;padding:36px 24px 20px;text-align:center}.welcome{width:min(100%,470px);margin:auto 0;padding:24px 0}img{display:block;width:148px;height:148px;object-fit:contain;margin:0 auto 22px}.eyebrow{margin:0 0 14px;font-size:12px;font-weight:600;letter-spacing:.13em;color:var(--muted)}h1{font-size:clamp(30px,4.4vw,40px);line-height:1.13;letter-spacing:-.025em;font-weight:600;margin:0 0 20px}.intro{font-size:18px;color:var(--muted);margin:0 0 28px}.signin{width:min(100%,340px);margin:auto}.primary{width:100%;display:flex;justify-content:center;align-items:center;gap:24px;min-height:50px;border:0;border-radius:12px;background:var(--button);color:var(--button-ink);font-weight:600;padding:12px 18px}.primary:hover{filter:brightness(1.15)}.primary span{font-size:22px;line-height:1}.account-note{font-size:14px;color:var(--muted);margin:13px 0 0}.status{font-size:14px;color:var(--muted);margin:12px 0 0}.status:empty{display:none}form{text-align:left}label{display:block;font-size:15px;font-weight:600;margin:0 0 6px}input{width:100%;height:48px;padding:10px 12px;border:1px solid var(--line);border-radius:10px;background:var(--field)}input::placeholder{color:var(--muted)}#email{margin-bottom:18px}.password-field{position:relative}.password-field input{padding-right:64px}.password-field button{position:absolute;right:4px;top:2px;height:44px;padding:0 12px;border:0;background:none;font-size:14px;color:var(--muted)}.forgot{text-align:right;margin:6px 0 16px}.forgot button{min-height:44px;padding:6px 0;border:0;background:none;font-size:14px;text-decoration:underline;text-underline-offset:3px}form .account-note{text-align:center}details{font-size:14px;margin-top:18px;color:var(--muted)}summary{width:fit-content;margin:auto;min-height:44px;padding:10px 4px;cursor:pointer;color:var(--ink)}details p{text-align:left;margin:8px 0 0}footer{flex:none;font-size:12px;color:var(--muted);margin-top:30px}footer p{margin:2px 0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--canvas:#171f26;--ink:#e9eef1;--muted:#b0b3b5;--line:#435963;--field:#202c35;--button:#304f5a;--button-ink:#fff;--focus:#8bd2dc}}
@media(max-width:580px){.preview-bar{flex-direction:column;gap:4px;padding:8px 12px}main{min-height:calc(100dvh - 83px);padding:24px 24px 18px}.welcome{padding:16px 0}img{width:124px;height:124px}.intro{font-size:17px}h1{font-size:32px}footer{margin-top:24px}}

.preview-bar{justify-content:center;text-align:center}
.welcome{padding-top:12px;padding-bottom:12px}
.welcome>img{width:120px;height:120px;margin-bottom:18px}
.eyebrow{margin-bottom:10px}
.intro{font-size:17px;margin-bottom:24px}
.social-signin{display:grid;gap:10px}
.provider{display:flex;align-items:center;justify-content:center;gap:12px;min-height:48px;width:100%;border:1px solid var(--line);background:var(--field);border-radius:10px;font-size:16px;font-weight:500;padding:10px 14px}
.provider:hover{border-color:var(--ink)}
.provider svg{width:20px;height:20px;flex:none}
.divider{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:13px;margin:20px 0}
.divider:before,.divider:after{content:'';height:1px;background:var(--line);flex:1}
@media(max-width:580px){.preview-bar{min-height:44px}main{min-height:calc(100dvh - 44px)}.welcome>img{width:104px;height:104px}h1{font-size:32px}.intro{margin-bottom:22px}}

/* Keep the sign-in action in reach on normal laptop screens. */
main{padding-top:20px}.welcome>img{width:88px;height:88px;margin-bottom:12px}.eyebrow{margin-bottom:8px}h1{font-size:34px;margin-bottom:10px}.intro{margin-bottom:20px}.divider{margin:16px 0}.forgot{margin-bottom:10px}details{margin-top:10px}footer{margin-top:18px}

/* Official compact PHA UK mark, with the original cyan arrow. */
.eyebrow{display:flex;align-items:center;justify-content:center;gap:9px}
.eyebrow .pha-wordmark{display:block;flex:none;width:44px;height:33px;color:var(--ink);stroke:none}

.signin>.account-note{margin:0 0 20px}

main{min-height:100dvh}.forgot a{color:var(--muted);font-size:14px}.primary:disabled{cursor:wait;opacity:.65}
