@import url('/static/css/explorer.css');
@import url('/static/css/modern.css');
body.login-page { justify-content:center; align-items:center; overflow-y:auto; padding:80px 24px; min-height:100dvh; height:auto; }
.theme-toggle-corner { position:fixed; top:calc(20px + env(safe-area-inset-top)); right:24px; }
.theme-toggle-corner button { min-height:44px; padding:10px 16px; border:1px solid var(--win-border); border-radius:12px; background:var(--win-toolbar); color:var(--win-text-muted); cursor:pointer; }
.card { width:100%; max-width:420px; padding:40px; border:1px solid var(--win-border); background:var(--win-content); border-radius:24px; box-shadow:0 24px 80px #16244a18; backdrop-filter:blur(20px); }
.logo { margin:0 auto 24px; width:56px; height:56px; font-size:38px; border-radius:17px; }
.login-eyebrow { text-align:center; color:var(--win-accent); font-size:9px; font-weight:700; letter-spacing:2.2px; margin-bottom:10px; }
.title { font-size:30px; letter-spacing:-1px; font-weight:750; text-align:center; }
.subtitle { text-align:center; font-size:13px; color:var(--win-text-muted); margin:12px 0 32px; }
label { display:block; margin-bottom:8px; font-size:12px; font-weight:600; }
input[type=text],input[type=password] { width:100%; min-height:48px; padding:12px 14px; border:1px solid var(--win-border); border-radius:11px; background:var(--win-bg); color:var(--win-text); font-size:16px; margin-bottom:20px; }
input::placeholder { color:var(--win-text-muted); font-size:13px; }
button[type=submit] { display:flex; align-items:center; justify-content:space-between; width:100%; min-height:48px; margin-top:8px; padding:12px 16px; background:linear-gradient(135deg,#426cf1,#8061dc); color:white; border:0; border-radius:11px; font-weight:600; cursor:pointer; }
.login-note { font-size:10px; color:var(--win-text-muted); text-align:center; margin-top:28px; }
.error { padding:12px; margin:20px 0; border:1px solid var(--win-danger); border-radius:10px; color:var(--win-danger); font-size:12px; line-height:1.7; }
@media(max-width:480px) { .card { padding:32px 24px; } }
