/* Public access and security surfaces. Internal workspace styles stay scoped. */
.auth-layout{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);background:#f7faff}
.auth-story{padding:clamp(32px,4vw,72px);background:radial-gradient(ellipse at 95% 10%,#154580 0,transparent 58%),radial-gradient(ellipse at 8% 90%,#0f3f68 0,transparent 55%),#07172e;gap:40px;min-height:100vh}
.auth-story::before{display:none}
.auth-story>*{position:relative;z-index:1}
.auth-story .brand{font-size:30px;letter-spacing:-1px}
.auth-story .brand-symbol{width:43px;height:43px;font-size:23px;box-shadow:0 0 28px #2679ff60}
.auth-story .eyebrow{color:#8bc9ff;font-size:12px;letter-spacing:2px}
.auth-story h1{font-size:clamp(40px,3.7vw,64px);max-width:640px;line-height:1.08;letter-spacing:-2.5px;margin:18px 0 22px}
.auth-story h1 span{background:linear-gradient(100deg,#6aa6ff,#73e4ff);background-clip:text;color:transparent}
.auth-story p{font-size:17px;color:#c3d6ee;max-width:520px;line-height:1.7;margin-bottom:26px}
.auth-story>small{font-size:12px;line-height:1.6;color:#a9c4e3}
.auth-preview{border:1px solid #4d95ed55;border-radius:22px;background:linear-gradient(135deg,#102b51df,#0a1a35ed);box-shadow:0 24px 60px #0003,inset 0 1px #b9dcff12;padding:24px;max-width:640px;transition:box-shadow .3s,border-color .3s}
.auth-preview:hover{border-color:#65d8ff9c;box-shadow:0 24px 60px #0003,0 0 35px #2d97ff25}
.auth-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:20px;font-size:13px;color:#cde3fa}
.auth-preview-head span{display:flex;align-items:center;gap:9px}
.auth-preview-head i{width:7px;height:7px;border-radius:100%;background:#58e3cf;box-shadow:0 0 12px #58e3cf90}
.auth-preview-head>b{font-size:11px;letter-spacing:.5px;color:#87bbf8;border:1px solid #6a9fec40;border-radius:6px;padding:5px 8px}
.auth-preview-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.auth-preview-metrics>div{border:1px solid #528ceb38;border-radius:12px;background:linear-gradient(130deg,#1e4f863a,#10244760);padding:13px 14px}
.auth-preview-metrics small{display:block;font-size:11px;color:#b0c7e4;margin-bottom:5px}
.auth-preview-metrics strong{font-size:clamp(13px,1.3vw,19px);letter-spacing:-.3px;font-weight:650;color:#f1f8ff}
.auth-preview-chart{margin-top:18px;padding:16px 14px 0;background:#07152d45;border:1px solid #568bd628;border-radius:13px}
.auth-chart-title{display:flex;justify-content:space-between;align-items:center;color:#d7e9fc;font-size:12px;margin-bottom:8px}
.auth-chart-trend{color:#70eced;font-size:20px}
.auth-preview-chart svg{width:100%;display:block;overflow:visible}
.auth-chart-grid,.auth-chart-bars{display:none}
.auth-chart-line,.auth-chart-glow{fill:none;stroke:url(#authLine);stroke-width:3;stroke-linecap:round}
.auth-chart-glow{stroke-width:9;opacity:.35;filter:blur(5px)}
.auth-chart-points{fill:#d0faff;stroke:#3197ff;stroke-width:2}
.auth-preview-footer{display:flex;align-items:center;gap:12px;margin-top:16px;padding-top:14px;border-top:1px solid #6994ca22}
.auth-progress-ring{border:3px solid #59cfe7;border-right-color:#246594;border-radius:50%;height:37px;width:37px;display:grid;place-items:center;color:#80eeed;flex-shrink:0}
.auth-preview-footer strong{font-size:12px;color:#e2f0ff;display:block;margin-bottom:4px}
.auth-preview-footer small{font-size:10px;color:#acc5e3}
.auth-status{margin-left:auto;color:#86ddeb;background:#1683a91a;border:1px solid #57c6df30;border-radius:6px;padding:7px;font-size:9px;white-space:nowrap}
.auth-form-wrap{padding:48px;background:radial-gradient(ellipse at 100% 0%,#e4f2ff,transparent 62%),#f7faff}
.auth-form{max-width:490px;background:#fff;border:1px solid #dfebfa;border-radius:24px;padding:40px;box-shadow:0 22px 65px #1645820c}
.auth-form>.eyebrow{font-size:12px;letter-spacing:1.6px;color:#165df1}
.auth-form h2{font-size:clamp(28px,2.35vw,38px);line-height:1.17;letter-spacing:-1.2px;margin:16px 0 14px;color:#102641}
.auth-form>p{font-size:16px;line-height:1.6;color:#516881;margin-bottom:30px}
.auth-form .field{margin-bottom:20px;gap:9px}
.auth-form .field label{font-size:14px;font-weight:600;color:#304b6a}
.auth-form .field input{font-size:17px;min-height:54px;padding:14px 16px;border:1px solid #c9d9ed;border-radius:11px;background:#fcfdff;transition:border-color .2s,box-shadow .2s}
.auth-form .field input:hover{border-color:#79aaf2}
.auth-form .field input:focus-visible{outline:3px solid #b8dbff;border-color:#2773ec;box-shadow:0 0 0 5px #2773ec0b}
.auth-form .auth-links{font-size:13px;gap:12px;margin:4px 0 18px;line-height:1.5}
.auth-private{color:#506980}
.auth-form a{color:#185bd7}
.auth-form a:hover{color:#087eaa;text-decoration:underline;text-underline-offset:3px}
.auth-form form>button,.auth-form .button{min-height:55px;font-size:16px;font-weight:700;border-radius:11px;background:linear-gradient(105deg,#215bef,#137fda);color:white;box-shadow:0 7px 18px #2563eb23;transition:box-shadow .25s,transform .25s,filter .25s}
.auth-form form>button:hover:not(:disabled),.auth-form .button:hover{box-shadow:0 8px 28px #2597ed50,0 0 22px #59d9ff25;transform:translateY(-2px);filter:brightness(1.09);color:white;text-decoration:none}
.auth-form form>button:focus-visible,.auth-form a:focus-visible{outline:3px solid #72c8ff;outline-offset:4px}
.auth-form .auth-foot{font-size:14px;line-height:1.7;margin-top:26px;color:#38526e}
.auth-form .auth-foot a{font-weight:650}
.auth-form .small-text,.auth-form .notice,.auth-form .error-message{font-size:14px;line-height:1.6}
.landing section[id]{scroll-margin-top:120px}
.landing .premium-security{display:grid;grid-template-columns:72px minmax(0,1fr) minmax(240px,.52fr);gap:28px;padding:48px;border:1px solid #cfe3fa;background:linear-gradient(115deg,#fbfdff,#edf6ff);box-shadow:0 18px 55px #15396714;transition:background .3s,box-shadow .3s,border-color .3s}
.landing .premium-security:hover{background:linear-gradient(115deg,#f5fbff,#d9edff);border-color:#7bc2ff;box-shadow:0 20px 60px #0c58b726,0 0 35px #54c8ff20}
.landing .security-shield{display:grid;place-items:center;height:72px;width:72px;background:linear-gradient(140deg,#1654ec,#168ecb);color:white;border-radius:19px;box-shadow:0 8px 25px #1d65d53b}
.security-shield svg{width:38px;height:38px}
.landing .premium-security h2{font-size:clamp(25px,2.25vw,35px);line-height:1.16;color:#123c85;margin:13px 0 18px;letter-spacing:-1px}
.landing .premium-security p{font-size:16px;line-height:1.75;color:#304d70;max-width:680px}
.landing .premium-security .eyebrow{font-size:12px;color:#145aee;letter-spacing:1.4px}
.security-assurance{font-size:12px;line-height:1.7;color:#3f658c;margin-top:18px}
.landing .premium-security .security-tags{display:flex;flex-direction:column;gap:20px}
.landing .premium-security .security-tags>span{position:relative;padding-left:26px;display:block}
.landing .premium-security .security-tags>span::before{content:'✓';position:absolute;left:0;top:0;color:#087e73;font-size:18px;font-weight:700}
.security-tags b{display:block;font-size:15px;color:#1b456f}
.security-tags small{display:block;font-size:12px;margin-top:5px;color:#466783;font-weight:400;line-height:1.5}
@media(min-width:1700px){.auth-story{padding:64px 90px}.auth-form{max-width:535px;padding:48px}.auth-story h1{font-size:68px}.auth-story p{font-size:19px}.auth-form h2{font-size:40px}}
@media(max-width:1100px){.auth-story{padding:32px;gap:28px}.auth-form-wrap{padding:30px}.auth-form{padding:30px}.auth-status{display:none}.landing .premium-security{padding:34px;gap:22px;grid-template-columns:58px minmax(0,1fr)}.landing .premium-security .security-tags{grid-column:2;flex-direction:row;flex-wrap:wrap;gap:18px}.landing .security-shield{height:58px;width:58px}}
@media(max-width:760px){.auth-layout{grid-template-columns:1fr}.auth-story{display:none}.auth-form-wrap{min-height:100svh;padding:28px 20px}.auth-form{max-width:490px;padding:30px 24px}.auth-form .brand{display:flex;font-size:27px;margin-bottom:30px}.auth-form h2{font-size:31px}.auth-form>.eyebrow{font-size:10px}.landing .premium-security{padding:28px 22px;grid-template-columns:1fr;margin:0 20px;gap:20px}.landing .premium-security .security-tags{grid-column:1;flex-direction:column;gap:18px}.landing .premium-security h2{font-size:28px}.landing .premium-security p{font-size:15px}.landing section[id]{scroll-margin-top:100px}}
@media(prefers-reduced-motion:reduce){.auth-preview,.auth-form form>button,.auth-form .button,.landing .premium-security{transition:none}.auth-form form>button:hover{transform:none}}
