.skip-link{position:fixed;z-index:2200;top:10px;left:10px;transform:translateY(-160%);padding:9px 14px;border-radius:8px;background:var(--navy);color:#fff;line-height:1.4}.skip-link:focus{transform:translateY(0)}
body.auth-page:is([data-page="reset-password"],[data-page="change-password"]) .auth-brand-panel{background-color:var(--navy);background-image:linear-gradient(rgba(32,54,83,.18),rgba(32,54,83,.18)),url("../assets/auth-brand-dataflow.png");background-position:center;background-repeat:no-repeat;background-size:cover}body.auth-page:is([data-page="reset-password"],[data-page="change-password"]) .auth-content{position:relative;isolation:isolate;overflow:hidden;background:#fcfbf8}body.auth-page:is([data-page="reset-password"],[data-page="change-password"]) .auth-content::before{position:absolute;z-index:0;inset:0;content:"";pointer-events:none;background:radial-gradient(circle at 92% 12%,rgba(243,208,139,.24) 0 2px,transparent 2.5px) 0 0/68px 68px,linear-gradient(135deg,transparent 49.4%,rgba(83,111,145,.07) 49.5% 50.5%,transparent 50.6%) 0 0/68px 68px}body.auth-page:is([data-page="reset-password"],[data-page="change-password"]) .auth-content::after{position:absolute;z-index:0;right:-180px;bottom:-180px;width:520px;height:520px;content:"";pointer-events:none;border:1px solid rgba(83,111,145,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(83,111,145,.035),0 0 0 160px rgba(243,208,139,.045)}body.auth-page:is([data-page="reset-password"],[data-page="change-password"]) .auth-content>*{position:relative;z-index:1}@media(max-width:860px){body.auth-page:is([data-page="reset-password"],[data-page="change-password"]) .auth-content::before,body.auth-page:is([data-page="reset-password"],[data-page="change-password"]) .auth-content::after{display:none}}@media(min-width:861px) and (min-height:760px){.auth-page{overflow:hidden}.auth-shell{height:100dvh;min-height:100vh}.auth-content{padding-block:20px}.auth-card{padding-block:28px}.auth-form{gap:14px;margin-top:18px}.auth-password-rules{margin-top:14px;padding:12px 16px}}
body.auth-page:is([data-page="login"],[data-page="account-application"],[data-page="forgot-password"]) .auth-content{position:relative;isolation:isolate;overflow:hidden;background:#fcfbf8}body.auth-page:is([data-page="login"],[data-page="account-application"],[data-page="forgot-password"]) .auth-content::before{position:absolute;z-index:0;inset:0;content:"";pointer-events:none;background:radial-gradient(circle at 92% 12%,rgba(243,208,139,.24) 0 2px,transparent 2.5px) 0 0/68px 68px,linear-gradient(135deg,transparent 49.4%,rgba(83,111,145,.07) 49.5% 50.5%,transparent 50.6%) 0 0/68px 68px}body.auth-page:is([data-page="login"],[data-page="account-application"],[data-page="forgot-password"]) .auth-content::after{position:absolute;z-index:0;right:-180px;bottom:-180px;width:520px;height:520px;content:"";pointer-events:none;border:1px solid rgba(83,111,145,.12);border-radius:50%;box-shadow:0 0 0 80px rgba(83,111,145,.035),0 0 0 160px rgba(243,208,139,.045)}body.auth-page:is([data-page="login"],[data-page="account-application"],[data-page="forgot-password"]) .auth-content>*{position:relative;z-index:1}@media(max-width:860px){body.auth-page:is([data-page="login"],[data-page="account-application"],[data-page="forgot-password"]) .auth-content::before,body.auth-page:is([data-page="login"],[data-page="account-application"],[data-page="forgot-password"]) .auth-content::after{display:none}}
.auth-page{min-height:100vh;background:var(--canvas);color:var(--ink)}.auth-shell{display:grid;grid-template-columns:minmax(280px,.92fr) minmax(360px,1.08fr);min-height:100vh}.auth-brand-panel{display:grid;align-content:center;gap:18px;padding:clamp(32px,7vw,96px);background:var(--navy);color:#fffaf1}.auth-brand-kicker{margin:0;color:var(--brand-secondary);font-size:13px;letter-spacing:.14em}.auth-brand-name{margin:0;color:#fffaf1;font-size:clamp(30px,4vw,44px);line-height:1.35}.auth-brand-copy{max-width:360px;margin:0;color:#dfe8f4;font-size:16px;line-height:1.8}.auth-content{display:grid;place-items:center;padding:32px}.auth-card{width:min(100%,520px);padding:clamp(28px,4vw,44px);border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:0 18px 42px rgba(32,54,83,.1)}.auth-card h1{margin:0;color:var(--primary);font-size:30px;line-height:1.35}.auth-intro{margin:8px 0 0;color:var(--muted);font-size:15px;line-height:1.65}.auth-form{display:grid;gap:18px;margin-top:26px}.auth-form label{display:grid;gap:8px;color:var(--ink);font-size:15px;line-height:1.5}.auth-field-wrap{position:relative}.auth-field-wrap .field{width:100%;min-height:44px;padding-right:52px}.auth-icon-button{position:absolute;top:50%;right:8px;display:inline-grid;width:44px;height:44px;place-items:center;transform:translateY(-50%);border:0;background:transparent;color:var(--muted);cursor:pointer}.auth-icon-button:hover{color:var(--primary)}.auth-icon-button:focus-visible{color:var(--primary);outline:3px solid rgba(243,208,139,.75);outline-offset:2px}.auth-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px}.auth-actions .app-btn{display:inline-flex;align-items:center;justify-content:center;gap:4px}.auth-links{display:flex;flex-wrap:wrap;gap:10px 18px;margin-top:20px}.auth-links a,.auth-link-button{padding:0;border:0;background:transparent;color:var(--content-accent);font:inherit;font-size:14px;line-height:1.5;cursor:pointer}.auth-links a:hover,.auth-link-button:hover{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.auth-link-button:focus-visible{outline:3px solid rgba(243,208,139,.75);outline-offset:3px}.auth-help,.auth-feedback{margin:0;color:var(--muted);font-size:13px;line-height:1.6}.auth-feedback[hidden],.auth-state[hidden]{display:none}.auth-feedback.is-error{color:var(--danger)}.auth-state{display:grid;gap:14px;margin-top:24px;padding:18px;border:1px solid #b9d8c4;border-radius:10px;background:#f4f8f7}.auth-state h2{margin:0;color:var(--content-accent);font-size:19px;line-height:1.45}.auth-state p{margin:0;color:var(--ink);font-size:14px;line-height:1.7}.auth-notice{margin-top:22px;padding:13px 15px;border-left:3px solid var(--brand-secondary);background:#fffaf0;color:var(--ink);font-size:14px;line-height:1.7}.auth-password-rules{display:grid;gap:8px;margin:20px 0 0;padding:16px;border-left:3px solid var(--brand-secondary);background:#fffaf0}.auth-password-rules h2{margin:0;color:var(--warning);font-size:16px;line-height:1.45}.auth-password-rules ul{display:grid;gap:5px;margin:0;padding-left:18px;color:var(--muted);font-size:13px;line-height:1.6}.auth-mandatory{margin-top:20px;padding:13px 15px;border-left:3px solid var(--content-accent);background:#f1f8f6;color:var(--ink);font-size:14px;line-height:1.65}.auth-mandatory p{margin:0}.auth-expired{border-color:#e5c1bc;background:#fff7f5}.auth-expired h2{color:var(--danger)}.auth-brand-panel[data-auth-artwork="dataflow"]{background-color:var(--navy);background-image:linear-gradient(rgba(32,54,83,.18),rgba(32,54,83,.18)),url("../assets/auth-brand-dataflow.png");background-position:center;background-repeat:no-repeat;background-size:cover}@media(max-width:860px){.auth-shell{grid-template-columns:1fr}.auth-brand-panel{min-height:220px;padding:36px 28px}.auth-content{align-items:start;padding:24px 16px 40px}}@media(max-width:420px){.auth-card{padding:26px 20px}.auth-actions .app-btn{width:100%}}
