:root { --auth-night:#102f26; --auth-soft:#194438; --auth-paper:#eeeae0; --auth-cream:#fbf8f0; --auth-coral:#d97861; --auth-gold:#d1b06f; --auth-line:rgba(18,42,34,.2); }
body.auth-modern-page { min-height:100svh; color:var(--auth-night); background:var(--auth-paper); }
.auth-page-shell { min-height:calc(100svh - 72px); padding:clamp(28px,6vh,68px) 20px; display:grid; place-items:start center; }
.auth-page-card { width:min(460px,100%); border:1px solid var(--auth-line); background:var(--auth-cream); box-shadow:0 18px 55px rgba(11,38,29,.1); }
.auth-page-head { padding:24px 26px 20px; border-bottom:1px solid var(--auth-line); }
.auth-page-head > p { margin:0 0 6px; color:var(--auth-coral); font-size:.56rem; font-weight:800; letter-spacing:.13em; text-transform:uppercase; }
.auth-page-head h1 { margin:0; font:600 clamp(1.8rem,4vw,2.55rem)/1 Georgia,serif; letter-spacing:-.035em; }
.auth-page-head > span { display:block; margin-top:9px; color:#66736c; font-size:.67rem; line-height:1.5; }
.auth-page-tabs { display:grid; grid-template-columns:1fr 1fr; border-bottom:1px solid var(--auth-line); }
.auth-page-tabs a { min-height:42px; display:grid; place-items:center; color:#6b7770; background:#e5e3da; font-size:.6rem; font-weight:800; letter-spacing:.06em; text-transform:uppercase; }
.auth-page-tabs a + a { border-left:1px solid var(--auth-line); }
.auth-page-tabs a.active { color:#fff; background:var(--auth-soft); }
.auth-page-form { padding:22px 26px 18px; display:none; gap:12px; }
.auth-page-form.active { display:grid; }
.auth-page-form label { display:grid; gap:5px; color:#536159; font-size:.61rem; font-weight:750; }
.auth-page-form input:not([type="checkbox"]) { width:100%; min-height:38px; padding:7px 9px; border:1px solid #929f97; border-radius:0; color:var(--auth-night); background:#fff; font-size:.72rem; }
.auth-page-form button,.auth-logout-actions button { min-height:39px; border:1px solid var(--auth-night); border-radius:0; color:#fff; background:var(--auth-night); font-size:.62rem; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
.auth-page-check { grid-template-columns:16px 1fr; align-items:center; }
.auth-page-check input { width:15px; height:15px; margin:0; accent-color:var(--auth-soft); }
.auth-page-forgot { color:#6c7871; font-size:.59rem; text-align:center; }
.auth-page-back { min-height:42px; padding:0 26px; display:flex; align-items:center; border-top:1px solid var(--auth-line); color:#657169; font-size:.6rem; font-weight:750; }
.auth-page-message { margin:16px 26px 0; }
.auth-logout-card { margin-top:6vh; }
.auth-logout-actions { padding:22px 26px; display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.auth-logout-actions .button { min-height:39px; display:grid; place-items:center; border-radius:0; font-size:.62rem; font-weight:800; text-transform:uppercase; }
@media (max-width:560px) { .auth-page-shell { padding:22px 14px; } .auth-page-head,.auth-page-form { padding-left:20px; padding-right:20px; } .auth-logout-actions { padding:20px; } }
