:root { color-scheme: dark; font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", sans-serif; color: #f6f2ff; background: #0d0b14; }
* { box-sizing: border-box; } body { margin: 0; min-height: 100vh; } button,input { font: inherit; }
.admin-login-shell { position: relative; min-height: 100vh; overflow: hidden; padding: clamp(28px,5vw,72px); display: grid; grid-template-columns: 1fr minmax(380px,520px); grid-template-rows: auto 1fr; gap: 40px 8vw; isolation: isolate; background: linear-gradient(115deg,rgba(8,7,14,.92),rgba(15,11,25,.66)),url('/assets/auth/admin-login-bg.png') center/cover; }
.ambient { position:absolute; inset:0; z-index:-1; background: radial-gradient(circle at 72% 48%,rgba(139,85,235,.17),transparent 34%),linear-gradient(90deg,transparent 48%,rgba(255,255,255,.02)); }
header { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; } header a { color:#fff; text-decoration:none; font-size:27px; font-weight:800; letter-spacing:-1.2px; } header span { color:#867b96; font-size:10px; font-weight:800; letter-spacing:.22em; }
.intro { align-self:center; max-width:760px; }.intro>p,.eyebrow { margin:0 0 20px; color:#a781ed; font-size:11px; font-weight:800; letter-spacing:.2em; }.intro h1 { margin:0; font-size:clamp(54px,6vw,94px); line-height:.98; letter-spacing:-.065em; font-weight:720; }.intro>span { display:block; margin-top:28px; color:#a9a1b2; font-size:16px; }
.auth-card { align-self:center; padding:clamp(30px,4vw,52px); border:1px solid rgba(255,255,255,.12); border-radius:34px; background:linear-gradient(145deg,rgba(36,31,48,.78),rgba(18,15,27,.7)); box-shadow:0 50px 120px rgba(0,0,0,.5),inset 0 1px rgba(255,255,255,.1); backdrop-filter:blur(28px) saturate(125%); }
.step-row { display:flex; align-items:center; width:140px; margin-bottom:40px; }.step { width:30px; height:30px; display:grid; place-items:center; border:1px solid #4c455a; border-radius:50%; color:#756b84; font-size:11px; font-weight:800; }.step-row i { height:1px; flex:1; background:#393342; }.step.is-active { color:#fff; border-color:#9d6ff0; background:#7c43df; box-shadow:0 0 0 5px rgba(124,67,223,.12); }.step.is-done { color:#bb9aed; border-color:#7452a8; background:#2b203a; }
h2 { margin:0; font-size:36px; letter-spacing:-.04em; }.muted { margin:10px 0 28px; color:#9a91a5; line-height:1.7; }
form { display:grid; gap:17px; } label { display:grid; gap:9px; color:#c3bacd; font-size:12px; font-weight:700; } input { height:54px; padding:0 16px; border:1px solid rgba(255,255,255,.11); border-radius:15px; outline:none; color:#fff; background:rgba(5,4,9,.34); } input:focus { border-color:#9162e5; box-shadow:0 0 0 4px rgba(145,98,229,.12); }
button { width:100%; min-height:56px; border:0; border-radius:16px; padding:0 19px; display:flex; align-items:center; justify-content:space-between; color:#fff; font-weight:800; cursor:pointer; background:linear-gradient(110deg,#7f49e3,#5d25c4); box-shadow:0 18px 38px rgba(72,29,151,.32); transition:transform .22s,box-shadow .22s; } button:hover { transform:translateY(-2px); box-shadow:0 22px 44px rgba(91,42,181,.42); } button:disabled { opacity:.6; cursor:wait; }
[hidden] { display:none !important; }.status { margin-top:20px; min-height:43px; padding:12px 14px; border-radius:13px; color:#a9a1b2; font-size:12px; line-height:1.5; background:rgba(255,255,255,.04); }.status.error { color:#ff9bab;background:rgba(151,31,58,.15);}.status.success { color:#8fe0bc;background:rgba(32,132,89,.13);}.status.warning {color:#e9c983;background:rgba(147,107,25,.13);}.status.loading{color:#c5a8fa;}
.legacy { margin-top:13px; padding:14px; border:1px solid rgba(233,201,131,.18); border-radius:14px; }.legacy p { margin:0 0 10px;color:#c8b98f;font-size:12px;}.legacy button { min-height:42px;background:#332945;box-shadow:none;font-size:12px; }
footer { display:flex; justify-content:space-between; gap:16px; margin-top:23px; padding-top:18px; border-top:1px solid rgba(255,255,255,.07); font-size:11px; color:#777080; } footer a { color:#a991d0; text-decoration:none; }
@media(max-width:900px){.admin-login-shell{grid-template-columns:1fr;}.intro{padding:50px 0 20px}.auth-card{width:min(520px,100%);justify-self:center}.intro h1{font-size:56px}}
@media(max-width:520px){.admin-login-shell{padding:24px 18px}.intro h1{font-size:44px}.intro>span{font-size:14px}.auth-card{padding:28px 22px;border-radius:25px}}
@media(prefers-reduced-motion:reduce){*{transition-duration:.01ms!important}}
