*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#f9fafb;--surface:#fff;--text:#111827;--muted:#6b7280;--accent:#1d4ed8;--accent-hover:#1e40af;--error:#dc2626;--border:#e5e7eb;--font:system-ui, -apple-system, "Segoe UI", sans-serif}html,body{background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:14px}.admin-shell{flex-direction:column;min-height:100dvh;display:flex}.admin-topbar{background:var(--surface);border-bottom:1px solid var(--border);flex-shrink:0;justify-content:space-between;align-items:center;height:56px;padding:0 24px;display:flex}.admin-topbar-wordmark{letter-spacing:.08em;text-transform:uppercase;color:var(--text);font-size:13px;font-weight:600}.admin-topbar-right{align-items:center;gap:16px;display:flex}.admin-topbar-user{color:var(--muted);font-size:13px}.admin-content{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:32px}.auth-page{background:var(--bg);justify-content:center;align-items:center;min-height:100dvh;display:flex}.auth-card{background:var(--surface);border:1px solid var(--border);width:100%;max-width:400px;padding:40px 44px;box-shadow:0 1px 4px #0000000f}.auth-wordmark{letter-spacing:.1em;text-transform:uppercase;color:var(--muted);margin-bottom:28px;font-size:12px;font-weight:600}.auth-heading{color:var(--text);margin-bottom:6px;font-size:20px;font-weight:600}.auth-sub{color:var(--muted);margin-bottom:28px;font-size:13px;line-height:1.5}.auth-input{background:var(--surface);border:1px solid var(--border);width:100%;color:var(--text);font-family:var(--font);border-radius:4px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .15s}.auth-input::placeholder{color:var(--muted)}.auth-input:focus{border-color:var(--accent)}.auth-input.input-error{border-color:var(--error)}.auth-error{color:var(--error);min-height:1.2em;margin-top:8px;font-size:12px}.auth-btn{background:var(--accent);color:#fff;width:100%;font-family:var(--font);cursor:pointer;border:none;border-radius:4px;margin-top:20px;padding:11px;font-size:14px;font-weight:500;transition:background .15s}.auth-btn:hover{background:var(--accent-hover)}.auth-btn:disabled{opacity:.6;cursor:not-allowed}.auth-back{font-family:var(--font);color:var(--muted);cursor:pointer;text-align:center;background:0 0;border:none;width:100%;margin-top:12px;padding:0;font-size:13px;transition:color .15s}.auth-back:hover{color:var(--text)}.otp-row{gap:8px;margin-bottom:20px;display:flex}.otp-input{background:var(--surface);border:1px solid var(--border);width:44px;height:52px;color:var(--text);font-family:var(--font);text-align:center;border-radius:4px;outline:none;font-size:18px;transition:border-color .15s}.otp-input:focus{border-color:var(--accent)}.dash-section{margin-bottom:32px}.dash-section-title{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:16px;font-size:11px;font-weight:600}.dash-card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:24px}.dash-stat-grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px;display:grid}.dash-stat{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:20px 24px}.dash-stat-label{color:var(--muted);margin-bottom:8px;font-size:12px}.dash-stat-value{color:var(--text);font-size:28px;font-weight:600}.dash-placeholder{color:var(--muted);font-size:13px;line-height:1.6}.btn-sm{border:1px solid var(--border);color:var(--text);font-family:var(--font);cursor:pointer;background:0 0;border-radius:4px;padding:6px 14px;font-size:13px;transition:background .12s}.btn-sm:hover{background:var(--bg)}.btn-danger{border-color:var(--error);color:var(--error)}.btn-danger:hover{background:#fef2f2}
