/* =====================================================
   ADMIN DASHBOARD STYLE
===================================================== */
.login-page, .admin-loading { min-height: 100vh; display: grid; place-items: center; padding: 30px; }
.login-card { width: min(440px, 100%); padding: 34px; border-radius: 30px; background: rgba(255,255,255,.075); border: 1px solid var(--border); box-shadow: var(--shadow); }
.login-card img { width: 150px; margin-bottom: 20px; }
.login-card small { color: var(--muted); display:block; margin-top: 15px; }
.admin-error { color: #ff9aad; }

.admin-shell { min-height: 100vh; display: grid; grid-template-columns: 280px 1fr; background: #050608; }
.admin-sidebar { position: sticky; top: 0; height: 100vh; padding: 24px; border-right: 1px solid rgba(255,255,255,.08); background: rgba(255,255,255,.035); overflow-y: auto; }
.admin-sidebar img { width: 145px; margin-bottom: 12px; }
.admin-sidebar p { color: var(--cyan); font-weight: 900; }
.admin-sidebar button { width: 100%; display:flex; align-items:center; gap: 10px; padding: 13px 14px; margin-bottom: 8px; border-radius: 16px; border: 1px solid transparent; background: transparent; color: var(--soft); font-weight: 800; text-align:left; }
.admin-sidebar button.active, .admin-sidebar button:hover { background: rgba(24,245,255,.08); border-color: rgba(24,245,255,.18); color: white; }
.admin-content { padding: 30px; }
.admin-panel { padding: 30px; border-radius: 28px; background: rgba(255,255,255,.055); border: 1px solid var(--border); }
.admin-panel > textarea { min-height: 460px; font-family: 'JetBrains Mono', monospace; }
.admin-stats { display:grid; grid-template-columns: repeat(4, 1fr); gap: 16px; margin: 24px 0; }
.admin-stats div { padding: 22px; border-radius: 20px; border: 1px solid var(--border); background: rgba(255,255,255,.06); }
.admin-stats strong { display:block; font-size: 38px; color: var(--cyan); }
.admin-note { padding: 20px; border-radius: 18px; background: rgba(24,245,255,.07); border: 1px solid rgba(24,245,255,.16); color: var(--soft); }
.editor-grid { display:grid; grid-template-columns: minmax(0, 1fr) minmax(300px, 420px); gap: 24px; align-items:start; }
.editor-form textarea { min-height: 140px; }
.admin-list { display:grid; gap: 12px; max-height: 720px; overflow:auto; }
.admin-list.full { max-height: none; }
.admin-list div { padding: 16px; border-radius: 18px; border:1px solid var(--border); background: rgba(255,255,255,.055); }
.admin-list strong, .admin-list span { display:block; }
.admin-list span { color: var(--muted); margin: 6px 0; }
.admin-list button { margin-right: 8px; border: 1px solid var(--border); border-radius: 12px; padding: 8px 12px; background: rgba(255,255,255,.08); color: white; font-weight: 800; }
