/* DASH 4.5 login/signup modal — added; reuses existing :root variables */
.dash-auth[hidden]{display:none!important}
.dash-auth{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:20px;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink,#f7f3ea)}
.dash-auth-backdrop{position:absolute;inset:0;background:rgba(4,5,8,.86);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.dash-auth-panel{position:relative;width:100%;max-width:440px;max-height:calc(100vh - 40px);overflow:auto;background:linear-gradient(145deg,#151a24,#0d1118);border:1px solid #8d6c35;border-radius:19px;padding:30px 28px 26px;box-shadow:0 30px 80px rgba(0,0,0,.6),0 0 0 1px rgba(243,208,138,.08) inset;animation:dashAuthIn .18s ease-out}
@keyframes dashAuthIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.dash-auth-panel{animation:none}}
.dash-auth-close{position:absolute;top:14px;right:14px;width:36px;height:36px;border-radius:10px;border:1px solid var(--line,#272d38);background:var(--panel,#11151d);color:var(--ink,#f7f3ea);font-size:20px;line-height:1;cursor:pointer}
.dash-auth-close:hover{border-color:var(--gold,#d7aa58)}
.dash-auth .dash-logo{justify-content:flex-start;margin-bottom:22px}
.dash-auth-title{font-size:26px;font-weight:850;letter-spacing:-.01em;margin:8px 0 6px}
.dash-auth-sub{color:var(--muted,#929cab);font-size:14px;margin:0 0 18px}
.dash-auth-tabs{display:flex;gap:4px;padding:4px;border:1px solid var(--line,#272d38);border-radius:12px;background:#0b0e14;margin-bottom:18px}
.dash-auth-tab{flex:1;border:0;background:transparent;color:var(--muted,#929cab);font-weight:780;font-size:14px;padding:9px 10px;border-radius:9px;cursor:pointer}
.dash-auth-tab[aria-selected="true"]{background:var(--panel2,#171c26);color:var(--ink,#f7f3ea);box-shadow:0 0 0 1px var(--gold,#d7aa58) inset}
.dash-auth-methods{display:flex;flex-direction:column;gap:10px}
.dash-auth-btn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:48px;border:1px solid var(--line,#272d38);background:var(--panel,#11151d);color:var(--ink,#f7f3ea);border-radius:10px;padding:12px 14px;font-weight:780;font-size:15px;cursor:pointer;font-family:inherit}
.dash-auth-btn:hover{border-color:var(--gold,#d7aa58);background:var(--panel2,#171c26)}
.dash-auth-btn.gold{background:linear-gradient(145deg,var(--gold2,#f3d08a),#b9802b);border-color:var(--gold,#d7aa58);color:#171009}
.dash-auth-btn svg{width:20px;height:20px;flex:none}
.dash-auth :focus-visible{outline:2px solid var(--gold2,#f3d08a);outline-offset:2px}
.dash-auth-phone{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.dash-auth-phone[hidden]{display:none}
.dash-auth-label{font-size:11px;letter-spacing:.15em;text-transform:uppercase;font-weight:850;color:var(--gold2,#f3d08a)}
.dash-auth-input{width:100%;min-height:48px;box-sizing:border-box;background:#0b0e14;border:1px solid var(--line,#272d38);color:var(--ink,#f7f3ea);border-radius:10px;padding:12px 14px;font-size:16px;font-family:inherit}
.dash-auth-input:focus{border-color:var(--gold,#d7aa58);outline:none}
.dash-auth-input.code{letter-spacing:.5em;text-align:center;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.dash-auth-link{background:none;border:0;color:var(--muted,#929cab);font-size:13px;cursor:pointer;text-decoration:underline;align-self:flex-start;padding:2px 0;font-family:inherit}
.dash-auth-notice{margin-top:14px;padding:12px 14px;border-radius:10px;border:1px solid #8d6c35;background:rgba(215,170,88,.08);color:var(--gold2,#f3d08a);font-size:14px;font-weight:600}
.dash-auth-notice[hidden]{display:none}
.dash-auth-notice.err{border-color:var(--red,#ff7c7c);color:var(--red,#ff7c7c);background:rgba(255,124,124,.08)}
.dash-auth-foot{margin-top:18px;color:var(--muted,#929cab);font-size:12px;text-align:center}
@media (max-width:520px){.dash-auth{padding:0;align-items:stretch}.dash-auth-panel{max-width:none;max-height:none;min-height:100%;border-radius:0;border-left:0;border-right:0;padding:24px 18px}}

.dash-auth-admin{margin-top:14px;display:flex;flex-direction:column;gap:10px}
.dash-auth-admin[hidden]{display:none}
.dash-auth-admin .dash-auth-label{margin-top:4px}
.dash-auth-hint{margin:0;color:var(--muted,#929cab);font-size:12px;line-height:1.45}
