.authentication-page{--auth-navy:#071321;--auth-navy-soft:#10243b;--auth-cyan:#38bdf8;--auth-red:#ef4444;min-height:100vh;padding:0;background:#071321}
.authentication-page main{min-height:100vh;margin:0;padding:0}
.auth-shell{display:grid;grid-template-columns:minmax(460px,1.15fr) minmax(430px,.85fr);min-height:100vh;background:#f4f7fb}
.auth-intro{position:relative;display:flex;min-height:100vh;padding:42px clamp(44px,6vw,94px);flex-direction:column;overflow:hidden;color:#fff;background:linear-gradient(135deg,rgba(7,19,33,.97),rgba(13,39,65,.95)),linear-gradient(90deg,rgba(56,189,248,.1) 1px,transparent 1px) 0 0/42px 42px,linear-gradient(rgba(56,189,248,.08) 1px,transparent 1px) 0 0/42px 42px}
.auth-intro::before{content:"";position:absolute;right:-170px;bottom:-180px;width:520px;height:520px;border:1px solid rgba(56,189,248,.2);border-radius:50%;box-shadow:0 0 0 70px rgba(56,189,248,.035),0 0 0 140px rgba(56,189,248,.025)}
.auth-intro::after{content:"";position:absolute;top:20%;right:7%;width:145px;height:2px;background:linear-gradient(90deg,transparent,rgba(56,189,248,.7));box-shadow:36px 16px 0 -1px rgba(56,189,248,.3),-55px 32px 0 -1px rgba(56,189,248,.22)}
.auth-brand{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:24px;padding-bottom:30px;border-bottom:1px solid rgba(148,163,184,.2)}
.auth-product strong{display:block;font-size:19px;letter-spacing:.015em}
.auth-product>span{display:flex;align-items:center;gap:7px;margin-top:5px;color:#94a3b8;font-size:9px;font-weight:750;letter-spacing:.08em;text-transform:uppercase}
.auth-product img{display:block;width:70px;height:19px;object-fit:contain;object-position:left center}
.auth-environment{display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid rgba(148,163,184,.22);border-radius:999px;background:rgba(15,23,42,.36);color:#cbd5e1;font-size:10px;font-weight:750;letter-spacing:.04em;text-transform:uppercase}
.auth-environment i{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 10px rgba(34,197,94,.8)}
.auth-intro-copy{position:relative;z-index:1;max-width:720px;margin:auto 0}
.auth-kicker{margin:0 0 12px;color:#f87171;font-size:11px;font-weight:850;letter-spacing:.13em;text-transform:uppercase}
.auth-intro-copy h1{max-width:690px;margin:0;color:#fff;font-size:clamp(37px,4.4vw,68px);line-height:1.02;letter-spacing:-.035em}
.auth-intro-copy>p:last-child{max-width:610px;margin:24px 0 0;color:#b9c7d8;font-size:17px;line-height:1.65}
.auth-capabilities{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:46px}
.auth-capabilities article{display:grid;grid-template-columns:auto 1fr;gap:11px;padding:15px;border:1px solid rgba(148,163,184,.18);border-radius:12px;background:rgba(15,23,42,.38);backdrop-filter:blur(6px)}
.auth-capabilities strong,.auth-capabilities small{display:block}
.auth-capabilities strong{font-size:12px}
.auth-capabilities small{margin-top:5px;color:#94a3b8;font-size:10px;line-height:1.45}
.auth-capability-icon{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;background:#15324e;color:#7dd3fc;font-size:13px;font-weight:900}
.auth-capability-icon.live{color:#34d399}.auth-capability-icon.audit{color:#fca5a5}
.auth-trust-note{position:relative;z-index:1;margin:28px 0 0;color:#7f91a8;font-size:10px;letter-spacing:.025em}.auth-trust-note span{margin-right:8px;color:#38bdf8}
.auth-entry{display:flex;min-height:100vh;padding:48px clamp(34px,5vw,78px);align-items:center;justify-content:center;flex-direction:column;background:radial-gradient(circle at 85% 10%,rgba(56,189,248,.08),transparent 28%),#f4f7fb}
.auth-card{width:min(100%,550px);overflow:hidden;border:1px solid #d4dce7;border-radius:18px;background:#fff;box-shadow:0 24px 70px rgba(15,23,42,.12)}
.auth-card-heading{display:grid;grid-template-columns:auto 1fr;gap:17px;padding:30px 32px 25px;border-bottom:1px solid #e2e8f0}
.auth-card-heading h2{margin:0;color:#10233e;font-size:25px;letter-spacing:-.02em}
.auth-card-heading>div>p:last-child{margin:9px 0 0;color:#64748b;font-size:12px;line-height:1.55}
.auth-lock{position:relative;display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:linear-gradient(145deg,#0f2d49,#153f62);box-shadow:0 8px 18px rgba(15,45,73,.2)}
.auth-lock::before{content:"";width:12px;height:10px;margin-top:7px;border:2px solid #7dd3fc;border-radius:7px 7px 2px 2px;border-bottom:0}
.auth-lock i{position:absolute;bottom:10px;width:18px;height:15px;border-radius:4px;background:#38bdf8}
.auth-card .form-error{margin:20px 32px 0}
.auth-form-fields{display:grid;gap:20px;padding:28px 32px}
.auth-form-fields .settings-field>span{margin-bottom:7px;color:#334155;font-size:10px}
.auth-form-fields .settings-field input{min-height:48px;padding:11px 13px;border-color:#b8c3d1;background:#f8fafc}
.auth-form-fields .settings-field input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px rgba(56,189,248,.14)}
.auth-form-fields .settings-field small{margin-top:7px;font-size:10px;line-height:1.4}
.auth-form-footer{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 32px;border-top:1px solid #e2e8f0;background:#f8fafc}
.auth-session-note{display:flex;align-items:center;gap:9px;color:#64748b}.auth-session-note>span{color:#0ea5e9;font-size:18px}.auth-session-note small{font-size:9px;line-height:1.45}.auth-session-note b{color:#334155;font-weight:750}
.auth-submit{min-height:44px;gap:13px;padding:10px 17px;border-color:#ef4444;background:#ef4444;box-shadow:0 6px 14px rgba(239,68,68,.2)}.auth-submit:hover{background:#dc2626}.auth-submit span{font-size:17px}
.auth-help{margin:20px 0 0;color:#64748b;font-size:10px}
@media(max-width:1050px){.auth-shell{grid-template-columns:1fr}.auth-intro{min-height:auto;padding:28px 34px 34px}.auth-intro-copy{margin:48px 0 0}.auth-intro-copy h1{font-size:42px}.auth-capabilities{margin-top:32px}.auth-entry{min-height:auto;padding:48px 24px 60px}}
@media(max-width:650px){.auth-intro{padding:23px 20px 28px}.auth-brand{align-items:flex-start}.auth-environment{display:none}.auth-intro-copy{margin-top:36px}.auth-intro-copy h1{font-size:34px}.auth-intro-copy>p:last-child{font-size:14px}.auth-capabilities{grid-template-columns:1fr}.auth-entry{padding:28px 14px 42px}.auth-card-heading,.auth-form-fields{padding-right:22px;padding-left:22px}.auth-form-footer{align-items:stretch;padding:18px 22px;flex-direction:column}.auth-submit{width:100%}}

.auth-primary-entry{padding:26px 32px 24px}
.auth-microsoft-button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;min-height:64px;padding:12px 16px;border:1px solid #1677d2;border-radius:11px;background:linear-gradient(135deg,#0f6cbd,#1683d8);color:#fff;text-decoration:none;box-shadow:0 8px 18px rgba(15,108,189,.2);transition:transform .15s ease,box-shadow .15s ease,background .15s ease}
.auth-microsoft-button:hover{transform:translateY(-1px);background:linear-gradient(135deg,#0b5fa8,#0f78c8);box-shadow:0 11px 22px rgba(15,108,189,.25)}
.auth-microsoft-button strong,.auth-microsoft-button small{display:block}.auth-microsoft-button strong{font-size:13px}.auth-microsoft-button small{margin-top:3px;color:#dbeeff;font-size:9px;font-weight:500}.auth-microsoft-button>b{font-size:19px}
.auth-microsoft-mark{display:grid;width:24px;height:24px;grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr;gap:2px}.auth-microsoft-mark i:nth-child(1){background:#f25022}.auth-microsoft-mark i:nth-child(2){background:#7fba00}.auth-microsoft-mark i:nth-child(3){background:#00a4ef}.auth-microsoft-mark i:nth-child(4){background:#ffb900}
.auth-primary-entry>p{display:flex;gap:7px;margin:12px 2px 0;color:#64748b;font-size:9px;line-height:1.45}.auth-primary-entry>p span{color:#16a34a;font-weight:900}
.auth-local-fallback{border-top:1px solid #e2e8f0}.auth-local-fallback summary{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:17px 32px;cursor:pointer;list-style:none;background:#f8fafc;color:#334155}.auth-local-fallback summary::-webkit-details-marker{display:none}.auth-local-fallback summary strong,.auth-local-fallback summary small{display:block}.auth-local-fallback summary strong{font-size:11px}.auth-local-fallback summary small{margin-top:3px;color:#7b8a9e;font-size:9px;font-weight:500}.auth-local-fallback summary>b{font-size:15px;transition:transform .15s ease}.auth-local-fallback[open] summary>b{transform:rotate(180deg)}.auth-local-fallback[open] summary{border-bottom:1px solid #e2e8f0}.auth-local-fallback .auth-form-fields{padding-top:23px}
@media(max-width:650px){.auth-primary-entry{padding:22px}.auth-local-fallback summary{padding-right:22px;padding-left:22px}}

.auth-primary-entry{display:grid;gap:11px}
.auth-google-button{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;min-height:64px;padding:12px 16px;border:1px solid #cbd5e1;border-radius:11px;background:#fff;color:#1f2937;text-decoration:none;box-shadow:0 5px 14px rgba(15,23,42,.08);transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.auth-google-button:hover{transform:translateY(-1px);border-color:#94a3b8;box-shadow:0 9px 18px rgba(15,23,42,.12)}
.auth-google-button strong,.auth-google-button small{display:block}.auth-google-button strong{font-size:13px}.auth-google-button small{margin-top:3px;color:#64748b;font-size:9px;font-weight:500}.auth-google-button>b{font-size:19px;color:#64748b}
.auth-google-mark{display:grid;width:26px;height:26px;place-items:center;border-radius:50%;background:conic-gradient(from -45deg,#4285f4 0 25%,#34a853 0 50%,#fbbc05 0 75%,#ea4335 0);color:#fff;font-size:15px;font-weight:900}
