.auth-page{background:linear-gradient(165deg,#f8fbff 0%,#fff 40%,#f1f5f9 100%);min-height:100dvh;position:relative;overflow:hidden}.auth-page__glow{pointer-events:none;background:radial-gradient(90% 55% at 50% -8%,#0ea5ff29,#0000 62%),radial-gradient(55% 35% at 100% 0,#e0f2fe8c,#0000 52%);position:absolute;inset:0}.auth-page__glow--bottom{background:radial-gradient(95% 70% at 50% 115%,#e0f2fe73,#0000 68%);height:45%;inset:auto 0 0}.auth-layout{z-index:1;flex-direction:column;min-height:100dvh;display:flex;position:relative}.auth-brand{display:none}.auth-brand__inner{max-width:420px}.auth-brand__mark{margin-bottom:18px}.auth-brand__logo{letter-spacing:-.04em;color:var(--text-dark);margin:0 0 20px;font-size:2rem;font-weight:800}.auth-brand__accent{font-family:var(--font-serif), Georgia, serif;background:var(--gradient-text);color:#0000;-webkit-background-clip:text;background-clip:text;font-style:italic;font-weight:400}.auth-brand__title{letter-spacing:-.03em;color:var(--text-dark);margin:0 0 12px;font-size:1.65rem;font-weight:700;line-height:1.2}.auth-brand__copy{color:var(--text-secondary);margin:0 0 22px;font-size:.95rem;line-height:1.6}.auth-brand__list{flex-direction:column;gap:10px;margin:0;padding:0;list-style:none;display:flex}.auth-brand__list li{color:var(--text-description);padding-left:22px;font-size:.88rem;font-weight:600;position:relative}.auth-brand__list li:before{content:"";background:var(--gradient-button);border-radius:50%;width:8px;height:8px;position:absolute;top:.55em;left:0;box-shadow:0 2px 8px #2563eb47}.auth-panel{width:100%;max-width:480px;padding:calc(16px + env(safe-area-inset-top,0px)) 20px calc(24px + env(safe-area-inset-bottom,0px));flex-direction:column;flex:1;margin:0 auto;display:flex}.auth-panel__top{justify-content:space-between;align-items:center;gap:12px;margin-bottom:28px;display:flex}.auth-panel__home{letter-spacing:-.03em;color:var(--text-dark);align-items:center;gap:8px;font-size:1.15rem;font-weight:800;text-decoration:none;display:inline-flex}.auth-panel__nav{color:var(--primary-blue-dark);background:#ffffffd9;border:1px solid #e2e8f0f2;border-radius:999px;padding:7px 12px;font-size:.8rem;font-weight:700;text-decoration:none;transition:border-color .18s,background .18s;box-shadow:0 4px 16px #0f172a0a}.auth-panel__nav:hover{background:#fff;border-color:#0ea5ff40}.auth-panel__body{flex-direction:column;flex:1;display:flex}.auth-heading{text-align:center;margin-bottom:24px}.auth-heading .dash-title{margin-bottom:8px;font-size:1.85rem}.auth-heading .dash-title .dash-accent{font-size:1.95rem}.auth-heading .dash-subtitle{max-width:34ch;margin:0 auto}.auth-form{flex-direction:column;gap:2px;display:flex}.auth-form .dash-field{margin-bottom:12px}.auth-form .dash-field label{color:var(--text-description);font-size:.8rem;font-weight:650}.auth-form .dash-field input{background:#fffffff5;border-radius:14px;min-height:50px}.auth-form .dash-field input:disabled{opacity:.72;cursor:not-allowed;background:#f8fafcf2}.auth-forgot{font:inherit;color:var(--primary-blue-dark);cursor:pointer;background:0 0;border:none;align-self:flex-end;margin:-4px 0 8px;padding:0;font-size:.82rem;font-weight:650;text-decoration:underline}.auth-forgot:hover{opacity:.85}.auth-consent-group{flex-direction:column;gap:14px;margin:6px 0 16px;display:flex}.auth-consent{cursor:pointer;align-items:flex-start;gap:12px;display:flex}.auth-consent__input{opacity:0;pointer-events:none;position:absolute}.auth-consent__box{border:1.5px solid var(--card-line);color:#fff;background:#fff;border-radius:7px;flex-shrink:0;justify-content:center;align-items:center;width:22px;height:22px;margin-top:1px;transition:border-color .18s,background .18s,box-shadow .18s;display:inline-flex}.auth-consent__box.is-checked{background:var(--gradient-button);border-color:#0000;box-shadow:0 4px 12px #2563eb3d}.auth-consent__text{color:var(--text-description);font-size:.84rem;line-height:1.5}.auth-consent__text a{color:var(--primary-blue-dark);font-weight:650;text-decoration:underline}.auth-consent__hint{color:var(--text-secondary);margin-top:3px;font-size:.76rem;line-height:1.45;display:block}.auth-footer{color:var(--text-secondary);justify-content:center;align-items:center;gap:4px;margin-top:22px;font-size:.88rem;display:flex}.auth-footer a{color:var(--primary-blue-dark);font-weight:700;text-decoration:none}.auth-footer a:hover{text-decoration:underline}.auth-notice{border-radius:14px;margin-bottom:16px;padding:12px 14px;font-size:.84rem;line-height:1.5}.auth-notice--error{color:#b91c1c;background:#fef2f2eb;border:1px solid #dc262629}.auth-notice--error strong{margin-bottom:4px;font-size:.88rem;display:block}.auth-notice--success{color:#047857;background:#ecfdf5eb;border:1px solid #05966929}.auth-notice--info{color:var(--text-description);background:#eff6fff2;border:1px solid #0ea5ff24}.auth-modal-backdrop{z-index:200;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.auth-modal{text-align:center;background:#fff;border-radius:22px;width:100%;max-width:420px;padding:28px 24px 24px;box-shadow:0 24px 64px #0f172a33}.auth-modal__icon{color:#fff;background:var(--gradient-button);border-radius:18px;justify-content:center;align-items:center;width:64px;height:64px;margin:0 auto 18px;display:flex;box-shadow:0 10px 24px #2563eb47}.auth-modal__title{letter-spacing:-.03em;color:var(--text-dark);margin:0 0 10px;font-size:1.5rem;font-weight:700}.auth-modal__title .dash-accent{font-size:1.62rem}.auth-modal__body{color:var(--text-description);margin:0 0 10px;font-size:.92rem;line-height:1.55}.auth-modal__body strong{color:var(--text-dark)}.auth-modal__hint{color:var(--text-secondary);margin:0 0 20px;font-size:.84rem;line-height:1.5}@media (min-width:960px){.auth-layout{grid-template-columns:minmax(0,1.05fr) minmax(420px,480px);align-items:center;gap:48px;max-width:1120px;margin:0 auto;padding:32px 40px;display:grid}.auth-brand{padding:12px 0;display:block}.auth-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffffff0;border:1px solid #e2e8f0eb;border-radius:24px;max-width:none;margin:0;padding:28px 28px 32px;box-shadow:0 16px 48px #0f172a14}.auth-panel__home{display:none}.auth-heading{text-align:left}.auth-heading .dash-subtitle{margin-left:0}}@media (min-width:1120px){.auth-layout{gap:64px;max-width:1180px}}
