/* Admin Dashboard - extends shared.css */

/* --- Login Page --- */
.login-page { min-height: 100vh; display: flex; align-items: center; justify-content: center; }
.login-box { background: var(--bg-card); padding: 40px; border-radius: var(--radius-xl); width: 400px; max-width: 90vw; }
.login-box h2 { margin-bottom: 25px; text-align: center; color: var(--blue); }
.login-box input { width: 100%; padding: 12px; margin-bottom: 15px; border: 1px solid var(--border); border-radius: var(--radius-md); background: var(--bg-input); color: var(--text-primary); font-size: 14px; }
.login-box input:focus { outline: none; border-color: var(--blue); box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.15); }
.login-box button { width: 100%; padding: 14px; background: var(--blue); color: #fff; border: none; border-radius: var(--radius-md); font-size: 16px; font-weight: 600; cursor: pointer; transition: background var(--transition-fast); }
.login-box button:hover { background: var(--blue-hover); }
.error { color: var(--red); text-align: center; margin-bottom: 10px; font-size: 14px; }

/* --- Dashboard Layout --- */
.dashboard { display: none; }
.sidebar {
    position: fixed; left: 0; top: 0; bottom: 0; width: 220px;
    background: var(--bg-card); padding: 20px; overflow-y: auto; z-index: 10;
    display: flex; flex-direction: column;
}
.sidebar h2 { color: var(--blue); margin-bottom: 30px; font-size: 1.3em; }
.sidebar a {
    display: flex; align-items: center; gap: 10px;
    padding: 8px 15px; color: var(--text-secondary); text-decoration: none;
    border-radius: var(--radius-md); margin-bottom: 2px; font-size: 13px;
    cursor: pointer; transition: all var(--transition-fast);
}
.sidebar a:hover { background: var(--bg-elevated); color: var(--text-primary); }
.sidebar a.active { background: var(--blue-bg); color: var(--blue); font-weight: 600; }
.sidebar a i { font-size: 18px; width: 20px; text-align: center; flex-shrink: 0; }
.sidebar #langSelector { margin-top: auto; padding-top: 15px; border-top: 1px solid var(--border); }
.sidebar .logout { text-align: center; color: var(--red); cursor: pointer; padding: 10px 15px; border-radius: var(--radius-md); margin-top: 8px; transition: background var(--transition-fast); }
.sidebar .logout:hover { background: var(--red-bg); }
.main { margin-left: 220px; padding: var(--space-2xl); }
.main h1 { margin-bottom: 25px; font-size: 1.8em; }

/* --- AI Bar --- */
.ai-bar {
    width: 100%; padding: 14px 20px;
    background: linear-gradient(135deg, var(--purple), #6366f1);
    color: #fff; border: none; border-radius: var(--radius-lg);
    font-size: 15px; font-weight: 600; cursor: pointer;
    display: flex; align-items: center; justify-content: center; gap: 8px;
    margin-bottom: var(--space-xl);
    transition: transform var(--transition-fast), box-shadow var(--transition-fast);
    box-shadow: 0 4px 15px rgba(139, 92, 246, 0.3);
}
.ai-bar:hover { transform: translateY(-1px); box-shadow: 0 6px 25px rgba(139, 92, 246, 0.4); }

/* --- Pixel Code --- */
.pixel-code { background: var(--bg-base); padding: 15px; border-radius: var(--radius-md); font-family: var(--font-mono); font-size: 12px; white-space: pre-wrap; word-break: break-all; color: var(--green); margin: 10px 0; max-height: 200px; overflow-y: auto; border: 1px solid var(--border); }

/* --- Responsive: Tablet --- */
@media (max-width: 1024px) {
    .sidebar { width: 200px; }
    .main { margin-left: 200px; padding: 20px; }
}

/* --- Responsive: Mobile --- */
@media (max-width: 768px) {
    .sidebar { width: 60px; padding: 10px; }
    .sidebar h2, .sidebar a span, .sidebar .nav-group-title, .sidebar #langSelector select span { display: none; }
    .sidebar a { justify-content: center; padding: 10px; }
    .sidebar a i { margin: 0; }
    .main { margin-left: 60px; padding: 15px; }
    .main h1 { font-size: 1.4em; }
}
