/* auth.css — shared styles for the standalone auth (login) page */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
:root{
  --bg:#0B1220;--panel:#111827;--border:#1F2937;--border2:#2d3748;
  --accent:#3B82F6;--accent2:#60a5fa;--text:#F9FAFB;--text2:#9CA3AF;--muted:#6B7280;
  --danger:#EF4444;--success:#10B981;--indigo:#6366f1;
}
[data-theme="light"]{
  --bg:#F0F4F8;--panel:#ffffff;--border:#E5E7EB;--border2:#D1D5DB;
  --text:#111827;--text2:#4B5563;--muted:#9CA3AF;
}
[data-theme="light"] body{background:var(--bg);}
[data-theme="light"] .login-card{box-shadow:0 20px 60px rgba(0,0,0,.1);}
[data-theme="light"] .input-field{background:#F9FAFB;color:var(--text);border-color:var(--border);}
[data-theme="light"] .grid-bg{background-image:linear-gradient(rgba(59,130,246,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(59,130,246,.05) 1px,transparent 1px);}
html,body{height:100%;font-family:'Inter','IBM Plex Sans Arabic',-apple-system,'Segoe UI',Tahoma,sans-serif;-webkit-font-smoothing:antialiased;}
body{background:var(--bg);color:var(--text);display:flex;align-items:center;justify-content:center;min-height:100vh;position:relative;overflow:hidden;}
.grid-bg{position:fixed;inset:0;z-index:0;background-image:linear-gradient(rgba(59,130,246,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(59,130,246,.04) 1px,transparent 1px);background-size:50px 50px;}
.glow{position:fixed;width:700px;height:700px;background:radial-gradient(ellipse,rgba(59,130,246,.09) 0%,transparent 70%);top:-300px;left:50%;transform:translateX(-50%);pointer-events:none;z-index:0;}
.glow2{position:fixed;width:400px;height:400px;background:radial-gradient(ellipse,rgba(99,102,241,.06) 0%,transparent 70%);bottom:-200px;right:-100px;pointer-events:none;z-index:0;}
.login-wrap{position:relative;z-index:1;width:100%;max-width:400px;margin:24px;}
.login-logo{text-align:center;margin-bottom:28px;}
.logo-mark{width:48px;height:48px;background:linear-gradient(135deg,var(--accent) 0%,var(--indigo) 100%);border-radius:13px;display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:900;color:#fff;margin:0 auto 12px;box-shadow:0 4px 20px rgba(59,130,246,.4);}
.logo-title{font-size:22px;font-weight:800;color:var(--text);letter-spacing:-.5px;}
.logo-sub{font-size:13px;color:var(--muted);margin-top:3px;}
.login-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:28px;box-shadow:0 20px 60px rgba(0,0,0,.4);}
.form-label{display:block;font-size:11px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.6px;margin-bottom:6px;}
.input-field{width:100%;padding:10px 13px;background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:13px;outline:none;font-family:inherit;transition:border-color .2s,box-shadow .2s;}
.input-field:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(59,130,246,.1);}
.input-field::placeholder{color:var(--muted);}
.form-group{margin-bottom:16px;}
.remember-row{display:flex;align-items:center;gap:8px;margin-bottom:20px;}
.remember-row input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent);cursor:pointer;flex-shrink:0;border-radius:4px;}
.remember-row label{font-size:12px;color:var(--text2);cursor:pointer;user-select:none;}
.pw-wrap{position:relative;}
.pw-wrap .input-field{padding-right:40px;}
.pw-toggle{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--muted);padding:4px;display:flex;align-items:center;transition:color .15s;}
.pw-toggle:hover{color:var(--text2);}
.pw-toggle svg{width:15px;height:15px;display:block;}
.btn-login{width:100%;padding:11px;background:var(--accent);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;letter-spacing:-.2px;transition:all .2s;box-shadow:0 2px 8px rgba(59,130,246,.35);}
.btn-login:hover{background:#2563eb;box-shadow:0 6px 20px rgba(59,130,246,.45);transform:translateY(-1px);}
.btn-login:active{transform:translateY(0);}
.error-msg{background:rgba(239,68,68,.08);border:1px solid rgba(239,68,68,.2);color:#fca5a5;padding:10px 13px;border-radius:8px;font-size:12px;margin-bottom:18px;display:flex;align-items:center;gap:7px;}
.login-footer{text-align:center;margin-top:20px;font-size:11px;color:var(--muted);}
.theme-btn{position:fixed;bottom:20px;right:20px;width:38px;height:38px;background:var(--panel);border:1px solid var(--border2);border-radius:50%;display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--muted);z-index:50;transition:all .18s;}
.theme-btn:hover{color:var(--accent);border-color:var(--accent);}
.theme-btn svg{width:15px;height:15px;}
.divider{display:flex;align-items:center;gap:10px;margin:18px 0;color:var(--muted);font-size:11px;}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:var(--border);}
:is(a,button,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:4px;}
