.auth-page{min-height:calc(100vh - 160px);padding:85px 0 95px;position:relative;overflow:hidden}
.auth-page:before{content:"";position:absolute;pointer-events:none;inset:20px -12% auto auto;width:530px;height:530px;filter:blur(20px);background:radial-gradient(circle,rgba(50,233,251,.18),rgba(83,70,205,.12) 43%,transparent 70%)}
.auth-layout{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,470px);align-items:center;gap:min(8vw,110px)}
.auth-promo h1{font-size:clamp(2.9rem,5vw,5rem);line-height:1.08;letter-spacing:-.05em;margin:18px 0 24px}
.auth-promo p{color:#b9cce0;font-size:1.08rem;max-width:540px}
.auth-points{display:grid;gap:16px;margin-top:32px}
.auth-points div{font-size:.93rem;color:#dbeafb;display:flex;gap:15px;align-items:center}
.auth-points span{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:rgba(62,215,250,.11);border:1px solid rgba(101,221,245,.18);color:var(--cyan)}
.auth-card{position:relative;padding:36px 32px;box-shadow:0 0 100px rgba(59,185,245,.10),0 28px 70px rgba(0,0,0,.38);border-color:rgba(115,224,255,.28)}
.auth-card h2{font-size:2.3rem;line-height:1.15;margin:9px 0}
.auth-card p{color:#b6c9df;font-size:.93rem}
.auth-form{display:grid;gap:8px;margin-top:18px}
.auth-form label{font-weight:800;color:#dfebff;margin-top:10px;font-size:.9rem}
.auth-form input{display:block;width:100%;padding:14px 15px;background:#0b1b32;color:#fff;border:1px solid rgba(126,201,244,.23);border-radius:12px;outline-offset:3px}
.auth-form input:focus{outline:2px solid #4ad8f0;outline-offset:2px}
.auth-form input::placeholder{color:#7894b5}
.auth-submit{margin-top:18px;width:100%;cursor:pointer;border:1px solid rgba(88,231,248,.45)}
.form-feedback{padding:12px 13px;border-radius:10px;margin-top:12px;font-size:.89rem;display:block;background:#15304a;line-height:1.45}
.form-feedback:empty{display:none}
.form-feedback.error{border:1px solid rgba(255,105,120,.45);background:#311b2a;color:#ffdce1}
.form-feedback.notice{border:1px solid rgba(73,224,182,.4);background:#0f2e2b;color:#c9ffed}
.auth-secondary{margin:16px 0 0!important;font-size:.9rem}
.auth-secondary a{color:#72ecff;text-decoration:underline;text-underline-offset:3px}
.dashboard-account{position:relative}
.account-heading h1{font-size:clamp(2.7rem,4.5vw,4rem);letter-spacing:-.045em;margin:14px 0}
.account-heading p{color:#b4c7dd}
.account-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:32px}
.account-box h2{font-size:1.75rem;margin:12px 0}
.account-box>p{color:var(--muted)}
.profile-row{display:flex;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.profile-row span{color:var(--muted)}
.profile-row strong{text-align:right;font-size:.93rem}
.account-box .btn.secondary{margin-top:25px}
.account-note{border:1px solid rgba(115,220,255,.16);padding:22px 24px;border-radius:18px;background:rgba(13,33,59,.75);margin-top:24px}
.account-note p{color:var(--muted);margin:6px 0 0}
.logout{margin:0}
.logout button{cursor:pointer}
.result-card{max-width:590px;margin:0 auto;padding:40px}
.result-card h1{font-size:2.4rem;margin:30px 0 18px}
.result-card p{color:var(--muted);margin-bottom:28px}
.result-card .btn{margin:0 10px 12px 0}
@media(max-width:870px){.auth-layout,.account-grid{grid-template-columns:1fr}.auth-promo{max-width:680px}.auth-page{padding:55px 0 65px}}
@media(max-width:600px){.auth-card{padding:24px 19px}.auth-promo h1{font-size:2.7rem}.account-box{padding:20px}.profile-row{display:grid;gap:4px}.profile-row strong{text-align:left}}
