.auth-body{align-items:stretch;min-height:100vh;display:flex}.auth-shell{z-index:1;flex:1;grid-template-columns:1fr 1fr;min-height:100vh;display:grid;position:relative}.auth-theme-toggle{z-index:50;position:fixed;top:1.25rem;right:1.25rem}.auth-back{z-index:50;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#eff6ff;background:#ffffff1f;border:1px solid #ffffff40;border-radius:99px;align-items:center;gap:.45rem;padding:.5rem .85rem;font-family:Outfit,sans-serif;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,transform .1s;display:inline-flex;position:fixed;top:1.25rem;left:1.25rem}.auth-back:hover{color:#fff;background:#fff3;border-color:#fff6}@media (max-width:920px){.auth-back{border-color:var(--border);background:var(--bg-card);color:var(--primary-600);box-shadow:var(--card-shadow)}.auth-back:hover{background:var(--bg-card-h);border-color:var(--primary-400);color:var(--primary-700)}}.auth-back{z-index:50;border:1px solid var(--border);background:var(--bg-card);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--primary-600);box-shadow:var(--card-shadow);border-radius:99px;align-items:center;gap:.45rem;padding:.5rem .85rem;font-family:Outfit,sans-serif;font-size:.82rem;font-weight:600;text-decoration:none;transition:background .2s,border-color .2s,color .2s,transform .1s;display:inline-flex;position:fixed;top:1.25rem;left:1.25rem}.auth-back:hover{background:var(--bg-card-h);border-color:var(--primary-400);color:var(--primary-700)}.auth-back:active{transform:scale(.97)}.auth-back i{font-size:.95rem}.auth-brand-top{color:inherit;border-radius:12px;width:-moz-fit-content;width:fit-content;text-decoration:none;transition:opacity .2s}.auth-brand-top:hover{opacity:.85}a.auth-card-logo{text-decoration:none;transition:transform .15s,box-shadow .2s}a.auth-card-logo:hover{transform:translateY(-1px);box-shadow:0 12px 26px #2563eb66}.auth-brand{color:#eff6ff;background:radial-gradient(1100px 600px at 12% -10%, #60a5fa59, transparent 60%), linear-gradient(150deg, var(--primary-700) 0%, var(--primary-800) 45%, var(--primary-900) 100%);flex-direction:column;justify-content:space-between;padding:4.75rem 3.25rem 3rem;display:flex;position:relative;overflow:hidden}.auth-brand:before{content:"";pointer-events:none;background-image:linear-gradient(#ffffff0d 1px,#0000 1px),linear-gradient(90deg,#ffffff0d 1px,#0000 1px);background-size:56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(120% 120% at 30% 20%,#000 35%,#0000 80%);mask-image:radial-gradient(120% 120% at 30% 20%,#000 35%,#0000 80%)}.auth-brand>*{z-index:1;position:relative}.auth-brand-top{align-items:center;gap:.65rem;display:flex}.auth-brand-logo{width:42px;height:42px;color:var(--primary-700);background:#fff;border-radius:12px;justify-content:center;align-items:center;font-family:Outfit,sans-serif;font-size:1.2rem;font-weight:800;display:flex;box-shadow:0 8px 24px #0003}.auth-brand-name{letter-spacing:-.01em;font-family:Outfit,sans-serif;font-size:1.2rem;font-weight:700}.auth-brand-mid{max-width:30rem}.auth-eyebrow{letter-spacing:.02em;background:#ffffff1f;border:1px solid #ffffff2e;border-radius:999px;align-items:center;gap:.45rem;margin-bottom:1.5rem;padding:.35rem .75rem;font-family:Outfit,sans-serif;font-size:.72rem;font-weight:600;display:inline-flex}.auth-brand-title{letter-spacing:-.02em;margin-bottom:1rem;font-family:Outfit,sans-serif;font-size:clamp(1.9rem,2.6vw,2.7rem);font-weight:800;line-height:1.1}.auth-brand-title span{-webkit-text-fill-color:transparent;background:linear-gradient(120deg,#bfdbfe,#93c5fd);-webkit-background-clip:text;background-clip:text}.auth-brand-sub{color:#eff6ffc7;max-width:27rem;font-size:1rem;line-height:1.6}.auth-seal{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffff14;border:1px solid #ffffff24;border-radius:16px;align-items:center;gap:.9rem;margin-top:2rem;padding:.9rem 1.1rem;display:inline-flex}.auth-seal-icon{color:#fff;background:linear-gradient(135deg, var(--primary-400), var(--primary-600));border-radius:11px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.25rem;display:flex}.auth-seal-doc{font-family:Outfit,sans-serif;font-size:.9rem;font-weight:700;line-height:1.2}.auth-seal-state{color:#eff6ffb3;align-items:center;gap:.35rem;font-size:.74rem;display:inline-flex}.auth-seal-dot{background:#93c5fd;border-radius:50%;width:7px;height:7px;position:relative}.auth-seal-dot:after{content:"";background:#93c5fd73;border-radius:50%;animation:2.4s infinite authPulse;position:absolute;inset:-4px}.auth-trust{flex-direction:column;gap:.7rem;display:flex}.auth-trust-item{color:#eff6ffd1;align-items:center;gap:.6rem;font-size:.86rem;display:flex}.auth-trust-item i{color:#93c5fd;font-size:1rem}.auth-panel{background:var(--bg-base);flex-direction:column;justify-content:center;align-items:center;padding:2.5rem 1.5rem;display:flex}.auth-card{background:var(--bg-card);border:1px solid var(--border);width:100%;max-width:40rem;box-shadow:var(--card-shadow);border-radius:22px;padding:2.25rem 2.1rem}.auth-card-head{text-align:center;margin-bottom:1.5rem}.auth-card-logo{background:linear-gradient(135deg, var(--primary-500), var(--primary-700));color:#fff;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;margin:0 auto .9rem;font-family:Outfit,sans-serif;font-size:1.25rem;font-weight:800;display:flex;box-shadow:0 8px 20px #2563eb4d}.auth-card-title{color:var(--text-1);letter-spacing:-.01em;font-family:Outfit,sans-serif;font-size:1.4rem;font-weight:700}.auth-card-sub{color:var(--text-2);margin-top:.3rem;font-size:.9rem}.auth-switch{background:var(--bg-card-h);border:1px solid var(--border);border-radius:12px;grid-template-columns:1fr 1fr;gap:.25rem;margin-bottom:1.5rem;padding:.3rem;display:grid}.auth-switch button{color:var(--text-2);cursor:pointer;background:0 0;border:none;border-radius:9px;padding:.6rem .5rem;font-family:Outfit,sans-serif;font-size:.88rem;font-weight:600;transition:background .2s,color .2s,box-shadow .2s}.auth-switch button.is-active{background:var(--bg-card);color:var(--primary-600);box-shadow:0 2px 8px #00001e14}.auth-google{border:1px solid var(--border);background:var(--bg-card);width:100%;color:var(--text-1);cursor:pointer;border-radius:12px;justify-content:center;align-items:center;gap:.65rem;padding:.8rem 1rem;font-family:Outfit,sans-serif;font-size:.92rem;font-weight:600;transition:border-color .2s,background .2s,transform .1s;display:flex}.auth-google:hover{border-color:var(--primary-400);background:var(--bg-card-h)}.auth-google:active{transform:scale(.99)}.auth-google i{color:var(--primary-600);font-size:1.15rem}.auth-or{color:var(--text-3);align-items:center;gap:.9rem;margin:1.25rem 0;font-size:.78rem;font-weight:600;display:flex}.auth-or:before,.auth-or:after{content:"";background:var(--border);flex:1;height:1px}.auth-card .form-floating{margin-bottom:.9rem}.auth-card .form-control{background:var(--bg-card-h);border:1px solid var(--border);color:var(--text-1);border-radius:12px;height:calc(3.4rem + 2px);font-size:.95rem;transition:border-color .2s,box-shadow .2s,background .2s}.auth-card .form-control::placeholder{color:#0000}.auth-card .form-control:focus{background:var(--bg-card);border-color:var(--primary-500);color:var(--text-1);box-shadow:0 0 0 4px #3b82f629}.auth-card .form-control.is-invalid{border-color:var(--state-danger);background-image:none}.auth-card .form-control.is-invalid:focus{border-color:var(--state-danger);box-shadow:0 0 0 4px #dc262629}.auth-card .invalid-feedback,.auth-card .just-validate-error-label{color:var(--state-danger);margin-top:.35rem;padding-left:.25rem;font-size:.8rem;display:block}.auth-card .form-floating>.form-control.is-invalid~label{color:var(--state-danger)}.auth-consent input.is-invalid{outline:2px solid var(--state-danger);outline-offset:2px}.auth-card .form-floating>label{color:var(--text-3);padding-left:1rem}.auth-card .form-floating>.form-control:focus~label,.auth-card .form-floating>.form-control:not(:placeholder-shown)~label{color:var(--primary-600);opacity:1}.auth-field{position:relative}.auth-field .form-control{padding-right:3rem}.auth-reveal{width:3rem;height:100%;color:var(--text-3);cursor:pointer;z-index:3;background:0 0;border:none;border-radius:0 12px 12px 0;justify-content:center;align-items:center;font-size:1.05rem;display:flex;position:absolute;top:0;right:0}.auth-reveal:hover{color:var(--primary-600)}.auth-row{justify-content:space-between;align-items:center;margin:.25rem 0 1.25rem;display:flex}.auth-check{color:var(--text-2);cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:.5rem;font-size:.85rem;display:flex}.auth-check input{width:16px;height:16px;accent-color:var(--primary-600);cursor:pointer}.auth-link{color:var(--primary-600);font-size:.85rem;font-weight:600;text-decoration:none}.auth-link:hover{color:var(--primary-700);text-decoration:underline}.auth-submit{color:#fff;cursor:pointer;background:linear-gradient(135deg, var(--primary-500), var(--primary-700));border:none;border-radius:12px;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.9rem 1rem;font-family:Outfit,sans-serif;font-size:.98rem;font-weight:700;transition:transform .1s,box-shadow .2s,filter .2s;display:flex;box-shadow:0 10px 24px #2563eb4d}.auth-submit:hover{filter:brightness(1.05);box-shadow:0 14px 30px #2563eb61}.auth-submit:active{transform:translateY(1px)}.auth-consent{color:var(--text-2);align-items:flex-start;gap:.55rem;margin:.1rem 0 1.25rem;font-size:.8rem;line-height:1.5;display:flex}.auth-consent input{width:16px;height:16px;accent-color:var(--primary-600);cursor:pointer;flex-shrink:0;margin-top:.15rem}.auth-alt{text-align:center;color:var(--text-2);margin-top:1.4rem;font-size:.88rem}.auth-alt a{color:var(--primary-600);font-weight:600;text-decoration:none}.auth-alt a:hover{text-decoration:underline}.auth-foot{text-align:center;color:var(--text-3);max-width:27rem;margin-top:1.5rem;font-size:.76rem;line-height:1.5}.auth-foot a{color:var(--text-2);text-decoration:underline}.auth-form[hidden]{display:none}@keyframes authPulse{0%{opacity:.8;transform:scale(.7)}70%{opacity:0;transform:scale(2)}to{opacity:0;transform:scale(2)}}@media (max-width:920px){.auth-shell{grid-template-columns:1fr}.auth-brand{display:none}}@media (max-width:480px){.auth-card{border-radius:18px;padding:1.75rem 1.4rem}.auth-panel{padding:1.5rem 1rem}}@media (prefers-reduced-motion:reduce){.auth-seal-dot:after{animation:none}}.auth-form{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;column-gap:1rem;display:grid}.auth-form>*{grid-column:1/-1}.auth-form .col-half{grid-column:span 1}.auth-required-note{color:var(--text-3);margin:0 0 .25rem;font-size:.78rem}.req{color:var(--state-danger);margin-left:.12rem;font-weight:700}.auth-section{letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin:.4rem 0 .15rem;font-family:Outfit,sans-serif;font-size:.72rem;font-weight:600}.auth-google-check{border:1px solid var(--border);background:var(--bg-card-h);cursor:pointer;border-radius:12px;align-items:flex-start;gap:.65rem;margin-bottom:.9rem;padding:.85rem 1rem;transition:border-color .2s,background .2s;display:flex}.auth-google-check:hover{border-color:var(--primary-400)}.auth-google-check input{width:18px;height:18px;accent-color:var(--primary-600);cursor:pointer;flex-shrink:0;margin-top:.15rem}.agc-title{color:var(--text-1);align-items:center;gap:.4rem;font-family:Outfit,sans-serif;font-size:.9rem;font-weight:600;display:inline-flex}.agc-title i{color:var(--primary-600)}.agc-sub{color:var(--text-2);margin-top:.15rem;font-size:.78rem;display:block}@media (max-width:560px){.auth-form .col-half{grid-column:1/-1}}.auth-doc-frame{background:var(--bg-card-h);border:0;border-radius:10px;width:100%;height:65vh}
