:root{--ink:#17332d;--forest:#1d5144;--leaf:#6e8d63;--cream:#f5f0e6;--sun:#e6a94b;--muted:#60716b;--line:#d6ddd8}*{box-sizing:border-box}body{margin:0}.auth-ai-shell{min-height:100vh;display:grid;grid-template-columns:minmax(420px,1fr) minmax(520px,.92fr);background:#fbfaf7}.auth-ai-visual{position:sticky;top:0;height:100vh;overflow:hidden;color:#fff;padding:45px clamp(30px,5vw,75px);display:flex;flex-direction:column;justify-content:space-between}.auth-ai-visual>img,.auth-ai-overlay{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.auth-ai-overlay{background:linear-gradient(180deg,#0b231fbb,#0b231f38 38%,#0b231fe8)}.auth-ai-visual>.brand,.auth-ai-message,.auth-ai-signal{position:relative;z-index:2}.auth-ai-message{max-width:680px}.ai-kicker{display:flex;align-items:center;gap:9px;text-transform:uppercase;letter-spacing:.14em;font-size:.68rem;font-weight:700}.ai-kicker i{width:7px;height:7px;border-radius:50%;background:var(--sun);box-shadow:0 0 0 6px #e6a94b22}.auth-ai-message h1{font-size:clamp(3.4rem,5.8vw,6.5rem);margin:20px 0}.auth-ai-message>p:last-child{max-width:550px;color:#d8e4df;font-size:1.05rem}.auth-ai-signal{align-self:flex-start;display:flex;gap:12px;align-items:center;padding:12px 16px;border:1px solid #ffffff44;border-radius:14px;background:#ffffff12;backdrop-filter:blur(12px)}.auth-ai-signal>span{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--sun);color:var(--ink);font-weight:800}.auth-ai-signal strong,.auth-ai-signal small{display:block}.auth-ai-signal small{color:#c9d8d2}.auth-ai-access{position:relative;display:grid;place-items:center;padding:70px clamp(25px,6vw,95px)}.auth-back{position:absolute;left:34px;top:26px;color:var(--muted);font-size:.8rem;font-weight:700;text-decoration:none}.auth-ai-card{width:min(500px,100%)}.auth-tabs{display:flex;border-bottom:1px solid var(--line);margin-bottom:38px}.auth-tabs button{position:relative;flex:1;border:0;background:none;padding:14px;color:#7c8984;font:700 .85rem "DM Sans";cursor:pointer}.auth-tabs button:after{content:"";position:absolute;left:50%;right:50%;bottom:-1px;height:3px;background:var(--forest);transition:.25s}.auth-tabs button.active{color:var(--forest)}.auth-tabs button.active:after{left:0;right:0}.auth-panel{display:none;animation:panel-in .35s ease}.auth-panel.active{display:block}.auth-panel header{margin-bottom:28px}.auth-panel header .eyebrow{margin-bottom:12px}.auth-panel h2{font-size:clamp(2.7rem,4.5vw,4rem);margin-bottom:10px}.auth-panel header>p:last-child{color:var(--muted)}.auth-providers{display:grid;grid-template-columns:1fr 1fr;gap:10px}.provider-button{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:10px;background:#fff;padding:12px;font:700 .76rem "DM Sans";color:var(--ink);cursor:pointer;transition:.2s}.provider-button:hover{border-color:var(--forest);transform:translateY(-2px)}.provider-ms{font-size:1.2rem;color:#2672ec}.provider-g{color:#4285f4}.auth-separator{display:flex;align-items:center;gap:14px;color:#8b9792;font-size:.68rem;margin:24px 0}.auth-separator:before,.auth-separator:after{content:"";height:1px;background:var(--line);flex:1}.auth-panel>label,.auth-row label{display:block;margin:15px 0;font-size:.76rem;font-weight:700}.auth-panel input{width:100%;border:1px solid var(--line);border-radius:10px;background:#fff;padding:13px 14px;margin-top:7px;color:var(--ink);font:inherit}.auth-panel input:focus{outline:3px solid #e6a94b38;border-color:var(--sun)}.password-field{position:relative}.password-field input{padding-right:66px}.password-toggle{position:absolute;right:8px;top:14px;border:0;background:none;color:var(--forest);font:700 .68rem "DM Sans";cursor:pointer}.auth-between{display:flex;justify-content:space-between;align-items:center;margin:18px 0}.auth-check{display:flex!important;align-items:flex-start;gap:8px;margin:0!important;font-weight:500!important;color:var(--muted)}.auth-check input{width:auto;margin:3px 0 0}.auth-text,.magic-link{border:0;background:none;padding:0;color:var(--forest);font:700 .72rem "DM Sans";cursor:pointer}.auth-submit{width:100%;justify-content:space-between;margin-top:8px;padding-inline:20px}.magic-link{display:block;margin:18px auto 0;text-decoration:underline;text-underline-offset:4px}.auth-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.account-types{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0}.account-types label{position:relative;border:1px solid var(--line);border-radius:12px;padding:13px;cursor:pointer;background:#fff}.account-types label:has(input:checked){border:2px solid var(--forest);padding:12px;background:#eef4ef}.account-types input{position:absolute;opacity:0}.account-types span,.account-types b,.account-types small{display:block}.account-types span{font-size:1.3rem}.account-types b{font-size:.76rem;margin-top:8px}.account-types small{font-size:.6rem;color:var(--muted)}.legal{font-size:.65rem!important;margin:17px 0!important}.auth-return{margin-bottom:28px}.auth-environment{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:28px;color:#87928e;font-size:.62rem;text-align:center}.auth-environment i{width:6px;height:6px;border-radius:50%;background:var(--sun)}dialog{border:0;border-radius:20px;padding:38px;max-width:520px;color:var(--ink);box-shadow:0 30px 80px #102d2766}dialog::backdrop{background:#102d27aa;backdrop-filter:blur(4px)}.dialog-close:first-child{position:absolute;right:18px;top:14px;border:0;background:none;font-size:2rem;cursor:pointer}@keyframes panel-in{from{opacity:0;transform:translateY(8px)}}
@media(max-width:900px){.auth-ai-shell{grid-template-columns:1fr}.auth-ai-visual{position:relative;height:370px;padding:30px}.auth-ai-message h1{font-size:3.5rem}.auth-ai-signal{display:none}.auth-ai-access{padding-top:75px}.auth-back{top:25px}.auth-ai-card{width:min(560px,100%)}}
@media(max-width:520px){.auth-ai-visual{height:300px}.auth-ai-message h1{font-size:2.8rem}.auth-ai-message>p:last-child{display:none}.auth-ai-access{padding-inline:20px}.auth-providers,.auth-row{grid-template-columns:1fr}.account-types{grid-template-columns:1fr}.account-types label{display:grid;grid-template-columns:35px 1fr;column-gap:7px}.account-types span{grid-row:1/3}.account-types b{margin-top:0}.auth-between{align-items:flex-start;gap:12px}.auth-panel h2{font-size:2.7rem}}
@media(prefers-reduced-motion:reduce){.auth-panel,.provider-button{animation:none;transition:none}}
