@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@500;600;700;800&family=Vazirmatn:wght@300;400;500;600;700;800&display=swap');

:root { --bg:#080b15; --panel:#101522; --panel2:#0c111d; --line:#242c3e; --muted:#8790a6; --text:#edf2ff; --cyan:#73e9ff; --purple:#9d74ff; --mint:#80ffd2; --danger:#ff86a8; --glass:rgba(16,21,34,.74); }
* { box-sizing:border-box; }
body { margin:0; color:var(--text); background:radial-gradient(circle at 20% 0%, color-mix(in srgb, var(--purple) 22%, transparent), transparent 32%),radial-gradient(circle at 90% 38%, color-mix(in srgb, var(--cyan) 16%, transparent), transparent 28%),var(--bg); font-family:Vazirmatn,sans-serif; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
.auth-page { min-height:100vh; display:grid; place-items:center; padding:20px; background:radial-gradient(circle at 20% 20%,#26366d55,transparent 30%),radial-gradient(circle at 80% 70%,#5c368155,transparent 35%),var(--bg); }
.auth-card { width:min(440px,100%); padding:38px; border:1px solid var(--line); border-radius:28px; background:linear-gradient(145deg,rgba(255,255,255,.08),rgba(255,255,255,.018)),var(--glass); box-shadow:inset 0 1px 0 #ffffff18,0 35px 100px #0006; backdrop-filter:blur(24px) saturate(145%); }
.admin-brand { display:flex; align-items:center; gap:11px; direction:ltr; font:800 .85rem Manrope,sans-serif; letter-spacing:.08em; }
.admin-brand i { width:42px; height:42px; display:grid; place-items:center; border-radius:14px 20px 13px 18px; background:linear-gradient(145deg,var(--cyan),var(--purple)); box-shadow:inset 4px 4px 9px #fff6; font-style:normal; font-size:1.1rem; }
.admin-brand b { color:var(--cyan); }
.auth-card h1 { margin:38px 0 8px; font-size:2rem; }
.auth-card > p { color:var(--muted); font-size:.8rem; margin-bottom:30px; }
label { display:block; color:#cdd5e5; font-size:.75rem; margin-bottom:20px; }
label small { color:var(--muted); }
input,textarea,select { display:block; width:100%; margin-top:8px; padding:13px 14px; color:var(--text); background:#090d17; border:1px solid var(--line); border-radius:11px; outline:none; transition:border .2s; }
input:focus,textarea:focus,select:focus { border-color:var(--cyan); }
textarea { resize:vertical; line-height:1.8; }
.admin-button,.secondary-button { display:flex; width:100%; min-height:47px; align-items:center; justify-content:center; border:0; border-radius:12px; color:#081018; background:linear-gradient(110deg,var(--mint),var(--cyan),#b69aff); font-weight:700; cursor:pointer; }
.secondary-button { color:var(--text); background:transparent; border:1px solid var(--line); margin-top:10px; }
.admin-button.compact { width:auto; min-height:42px; padding:0 18px; font-size:.75rem; }
.auth-card small { display:block; margin-top:22px; color:var(--muted); }
.auth-card small a { color:var(--cyan); }
.notice { padding:13px 15px; border:1px solid var(--line); border-radius:11px; margin:18px 0; color:#d7dfef; background:#182030; font-size:.75rem; line-height:1.8; }
.notice.error { color:#ffc0d1; border-color:#6c3044; background:#2b1520; }
.notice.success { color:#baffdf; border-color:#27624c; background:#11281f; }
.notice code { direction:ltr; display:inline-block; }
.admin-page { min-height:100vh; }
.sidebar { position:fixed; inset:0 0 0 auto; width:250px; padding:28px 20px; border-left:1px solid var(--line); background:linear-gradient(180deg,rgba(255,255,255,.045),transparent),rgba(7,10,18,.86); backdrop-filter:blur(22px) saturate(150%); display:flex; flex-direction:column; z-index:10; }
.sidebar nav { display:flex; flex-direction:column; gap:7px; margin-top:50px; }
.sidebar nav a { min-height:45px; display:flex; align-items:center; gap:12px; padding:0 13px; border-radius:11px; color:#9ba5ba; font-size:.78rem; }
.sidebar nav a:hover,.sidebar nav a.active { color:white; background:#171d2b; }
.sidebar nav a span { color:var(--purple); font:1rem Manrope; }
.sidebar nav a b { margin-right:auto; min-width:22px; height:22px; display:grid; place-items:center; border-radius:99px; color:#071018; background:var(--cyan); font:.65rem Manrope; }
.sidebar-user { margin-top:auto; padding-top:20px; border-top:1px solid var(--line); display:flex; align-items:center; gap:10px; }
.sidebar-user > span { width:39px; height:39px; display:grid; place-items:center; border-radius:50%; color:#0a0c14; background:linear-gradient(145deg,var(--cyan),var(--purple)); font-weight:800; }
.sidebar-user div { display:flex; flex-direction:column; font-size:.7rem; }
.sidebar-user a { color:var(--muted); }
.admin-main { margin-right:250px; padding:40px 45px 80px; }
.admin-header { min-height:90px; display:flex; align-items:flex-start; justify-content:space-between; }
.admin-header small { color:var(--cyan); font:600 .55rem Manrope; letter-spacing:.18em; }
.admin-header h1 { margin:8px 0 0; font-size:2rem; }
.stats-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:15px; margin:25px 0; }
.stats-grid article,.admin-panel,.message-card,.media-admin-card { border:1px solid var(--line); border-radius:20px; background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.015)),linear-gradient(145deg,var(--panel),var(--panel2)); box-shadow:inset 0 1px 0 #ffffff14,0 24px 70px #00000035; backdrop-filter:blur(20px) saturate(140%); }
.stats-grid article { min-height:180px; padding:24px; display:flex; flex-direction:column; }
.stats-grid span { color:#b7c0d2; font-size:.75rem; }
.stats-grid strong { font:800 3.5rem Manrope; margin:auto 0 0; }
.stats-grid small { color:var(--muted); font-size:.6rem; }
.admin-panel { padding:25px; }
.header-tools { display:flex; align-items:center; gap:10px; }
.secondary-button.compact { width:auto; min-height:42px; padding:0 18px; margin:0; font-size:.75rem; }
.dashboard-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; align-items:start; }
.dashboard-grid .admin-panel:last-child { grid-column:1 / -1; }
.panel-title { display:flex; align-items:center; justify-content:space-between; margin-bottom:20px; }
.panel-title h2 { font-size:1.1rem; margin:0; }
.panel-title a { color:var(--cyan); font-size:.65rem; }
.message-list article { display:grid; grid-template-columns:8px 1fr auto; gap:13px; align-items:center; padding:15px 4px; border-bottom:1px solid var(--line); }
.message-list article:last-child { border:0; }
.message-list i { width:6px; height:6px; border-radius:50%; background:#465066; }
.message-list i.new { background:var(--cyan); box-shadow:0 0 10px var(--cyan); }
.message-list b { font-size:.76rem; }
.message-list p { margin:4px 0 0; color:var(--muted); font-size:.65rem; }
.message-list time { color:#697389; font:500 .58rem Manrope; }
.empty { padding:45px; text-align:center; color:var(--muted); }
.compact-list { display:grid; gap:10px; }
.compact-list a { display:grid; grid-template-columns:90px 1fr 86px; gap:10px; align-items:center; min-height:58px; padding:12px 14px; border:1px solid var(--line); border-radius:14px; background:#ffffff08; }
.compact-list span,.compact-list small { color:var(--muted); font-size:.62rem; }
.compact-list b { font-size:.77rem; }
.mini-media-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.mini-media-grid a { height:98px; overflow:hidden; border-radius:14px; border:1px solid var(--line); background:#080d18; display:grid; place-items:center; }
.mini-media-grid img,.mini-media-grid video { width:100%; height:100%; object-fit:cover; display:block; }
.mini-media-grid audio { width:90%; }
.mini-media-grid .file-preview,.mini-media-grid .audio-preview { min-height:100%; border:0; }
.responsive-table { overflow-x:auto; }
table { width:100%; border-collapse:collapse; min-width:750px; }
th { color:var(--muted); font-size:.65rem; font-weight:500; text-align:right; padding:13px; border-bottom:1px solid var(--line); }
td { padding:17px 13px; font-size:.72rem; border-bottom:1px solid var(--line); }
td b,td small { display:block; }
td small { color:var(--muted); font:500 .55rem Manrope; margin-top:5px; }
.status { display:inline-block; padding:5px 9px; border-radius:99px; color:#d1d8e8; background:#293043; font-size:.58rem; }
.status.published { color:#b7ffe0; background:#17392e; }
.actions { display:flex; gap:12px; }
.actions a { color:var(--cyan); }
.actions form { margin:0; }
.actions button { border:0; color:var(--danger); background:none; padding:0; cursor:pointer; font-size:.7rem; }
.editor-grid { display:grid; grid-template-columns:1fr 330px; gap:18px; align-items:start; }
.content-editor { direction:rtl; min-height:390px; font-family:Vazirmatn,monospace; }
.ltr-editor { direction:ltr; font-family:Manrope,Vazirmatn,monospace; line-height:1.7; }
.editor-side { position:sticky; top:20px; }
.dual-fields { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
.assistant-strip { display:flex; align-items:center; gap:14px; justify-content:space-between; padding:15px; margin-bottom:22px; border:1px solid color-mix(in srgb, var(--cyan) 35%, var(--line)); border-radius:16px; background:linear-gradient(135deg,color-mix(in srgb,var(--cyan) 12%,transparent),color-mix(in srgb,var(--purple) 10%,transparent)); }
.assistant-strip b { display:block; font-size:.82rem; margin-bottom:4px; }
.assistant-strip span { color:var(--muted); font-size:.65rem; }
.inline-switch { width:auto; margin:0; display:flex; align-items:center; gap:8px; white-space:nowrap; }
.inline-switch input { width:auto; margin:0; accent-color:var(--cyan); }
.messages-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.message-card { padding:23px; }
.message-card.unread { border-color:#3e6d7d; box-shadow:inset -3px 0 var(--cyan); }
.message-card header { display:flex; justify-content:space-between; gap:15px; }
.message-card header div { display:flex; flex-direction:column; }
.message-card header b { font-size:.85rem; }
.message-card header a,.message-card time { color:var(--muted); font:500 .6rem Manrope; direction:ltr; }
.message-subject { display:inline-block; margin-top:18px; color:var(--purple); font:.6rem Manrope; }
.message-card p { color:#c2cad9; line-height:1.9; font-size:.72rem; }
.message-card form { width:160px; }
.message-card select { padding:8px 10px; font-size:.65rem; }

.upload-panel { display:grid; grid-template-columns:1.1fr 1fr 1fr 1fr auto; gap:15px; align-items:end; margin-bottom:18px; }
.upload-panel h2 { margin:0 0 6px; font-size:1.25rem; }
.upload-panel p { margin:0; color:var(--muted); font-size:.68rem; line-height:1.8; }
.upload-panel label { margin:0; }
.media-admin-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.media-admin-card { overflow:hidden; }
.media-preview { min-height:210px; background:#070b14; display:grid; place-items:center; overflow:hidden; }
.media-preview img,.media-preview video { width:100%; height:240px; object-fit:cover; display:block; }
.audio-preview { width:100%; min-height:190px; padding:24px; display:flex; flex-direction:column; justify-content:center; gap:18px; background:radial-gradient(circle at 20% 30%,color-mix(in srgb,var(--cyan) 25%,transparent),transparent 40%),#070b14; }
.audio-preview span { color:var(--cyan); font:800 1.8rem Manrope,sans-serif; letter-spacing:.12em; }
.audio-preview audio { width:100%; }
.file-preview { width:100%; min-height:190px; padding:24px; border:1px solid var(--line); display:flex; flex-direction:column; justify-content:center; gap:12px; background:linear-gradient(135deg,color-mix(in srgb,var(--purple) 18%,transparent),color-mix(in srgb,var(--cyan) 10%,transparent)); }
.file-preview b { color:var(--cyan); font:800 2rem Manrope,sans-serif; }
.file-preview span { color:#d7dfef; font-size:.8rem; }
.media-info { padding:16px; }
.media-info b { display:block; font-size:.82rem; margin-bottom:6px; }
.media-info > span { display:block; color:var(--muted); font:500 .6rem Manrope,sans-serif; margin-bottom:12px; direction:ltr; text-align:right; }
.media-info input { margin:0 0 12px; font-size:.58rem; direction:ltr; }

.settings-grid { display:grid; grid-template-columns:1fr 420px; gap:18px; align-items:start; }
.settings-side { position:sticky; top:20px; }
.logo-box { width:110px; height:110px; display:grid; place-items:center; overflow:hidden; border-radius:28px; margin-bottom:18px; background:linear-gradient(145deg,var(--cyan),var(--purple)); box-shadow:inset 8px 8px 18px #ffffff45,0 18px 45px color-mix(in srgb,var(--purple) 28%,transparent); }
.logo-box img { width:100%; height:100%; object-fit:cover; display:block; }
.logo-box span { color:white; font:800 2.4rem Manrope,sans-serif; }
.theme-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-bottom:18px; }
.theme-choice { position:relative; margin:0; min-height:74px; padding:10px 12px 10px 10px; border:1px solid var(--line); border-radius:15px; display:grid; grid-template-columns:42px 1fr; gap:10px; align-items:center; cursor:pointer; background:#ffffff07; transition:border-color .2s, transform .2s, background .2s; }
.theme-choice:hover { transform:translateY(-2px); border-color:color-mix(in srgb,var(--cyan) 50%,var(--line)); background:#ffffff0d; }
.theme-choice input { position:absolute; opacity:0; pointer-events:none; }
.theme-choice input:checked + span { outline:2px solid var(--text); }
.theme-choice > span { width:42px; height:42px; border-radius:14px; background:radial-gradient(circle at 30% 20%,white,transparent 18%),linear-gradient(135deg,var(--a),var(--b)); box-shadow:inset 4px 4px 9px #fff6,0 8px 22px color-mix(in srgb,var(--b) 28%,transparent); }
.theme-choice b,.theme-choice small { display:block; }
.theme-choice b { font-size:.68rem; }
.theme-choice small { color:var(--muted); font:600 .52rem Manrope,sans-serif; letter-spacing:.05em; margin-top:5px; }

body[data-admin-theme="aurora"] { --bg:#070914; --panel:#101522; --panel2:#0c1020; --line:#ffffff1c; --cyan:#73e9ff; --purple:#9d74ff; --mint:#80ffd2; }
body[data-admin-theme="obsidian"] { --bg:#05070b; --panel:#11131b; --panel2:#080a10; --line:#ffffff18; --cyan:#84f6d7; --purple:#ff8bd8; --mint:#f9f871; }
body[data-admin-theme="prism"] { --bg:#0b0f16; --panel:#151827; --panel2:#0d1220; --line:#ffffff1a; --cyan:#7dd3fc; --purple:#f8d66d; --mint:#a7f3d0; }
body[data-admin-theme="neon"] { --bg:#060713; --panel:#0e1424; --panel2:#080b18; --line:#22d3ee2b; --cyan:#22d3ee; --purple:#f472b6; --mint:#a3e635; }
body[data-admin-theme="graphite"] { --bg:#0a0c10; --panel:#171a20; --panel2:#0f1217; --line:#ffffff1d; --cyan:#d1d5db; --purple:#60a5fa; --mint:#34d399; }
body[data-admin-theme="emerald"] { --bg:#04110e; --panel:#0d211c; --panel2:#071713; --line:#6ee7b733; --cyan:#6ee7b7; --purple:#38bdf8; --mint:#facc15; }
body[data-admin-theme="rose"] { --bg:#150811; --panel:#24101e; --panel2:#170a14; --line:#fb718533; --cyan:#fb7185; --purple:#c084fc; --mint:#67e8f9; }
body[data-admin-theme="ocean"] { --bg:#06111f; --panel:#0d1e32; --panel2:#071526; --line:#38bdf833; --cyan:#38bdf8; --purple:#818cf8; --mint:#fde68a; }
body[data-admin-theme="sunrise"] { --bg:#120d08; --panel:#23180f; --panel2:#140e09; --line:#fb923c33; --cyan:#fb923c; --purple:#22c55e; --mint:#60a5fa; }
body[data-admin-theme="minimal"] { --bg:#f8fafc; --panel:#ffffff; --panel2:#eef2f7; --line:#0f172a18; --text:#0f172a; --muted:#475569; --cyan:#111827; --purple:#0ea5e9; --mint:#0f766e; }
body[data-admin-theme="cobalt"] { --bg:#08101f; --panel:#111b33; --panel2:#0a1224; --line:#60a5fa33; --cyan:#60a5fa; --purple:#f97316; --mint:#2dd4bf; }
body[data-admin-theme="jade"] { --bg:#06120f; --panel:#101f1b; --panel2:#081611; --line:#34d39933; --cyan:#34d399; --purple:#a78bfa; --mint:#fde68a; }
body[data-admin-theme="ruby"] { --bg:#13080d; --panel:#231019; --panel2:#150a10; --line:#f43f5e33; --cyan:#f43f5e; --purple:#67e8f9; --mint:#facc15; }
body[data-admin-theme="frost"] { --bg:#071112; --panel:#112022; --panel2:#0a1719; --line:#bef26433; --cyan:#bef264; --purple:#38bdf8; --mint:#f0abfc; }
body[data-admin-theme="solar"] { --bg:#0f1015; --panel:#1b1c25; --panel2:#101119; --line:#facc1530; --cyan:#facc15; --purple:#2563eb; --mint:#fb7185; }
body[data-admin-theme="velvet"] { --bg:#100918; --panel:#1e132b; --panel2:#130b1d; --line:#c084fc33; --cyan:#c084fc; --purple:#2dd4bf; --mint:#fda4af; }
body[data-admin-theme="matrix"] { --bg:#030d0a; --panel:#0b1a15; --panel2:#06100d; --line:#4ade8033; --cyan:#4ade80; --purple:#22d3ee; --mint:#f8d66d; }
body[data-admin-theme="coral"] { --bg:#120d10; --panel:#21161b; --panel2:#140d11; --line:#fb718533; --cyan:#fb7185; --purple:#facc15; --mint:#38bdf8; }
body[data-admin-theme="slate"] { --bg:#0c1017; --panel:#171d28; --panel2:#101620; --line:#94a3b833; --cyan:#94a3b8; --purple:#a78bfa; --mint:#67e8f9; }
body[data-admin-theme="iris"] { --bg:#0c0a1c; --panel:#171331; --panel2:#0f0c24; --line:#818cf833; --cyan:#818cf8; --purple:#f0abfc; --mint:#5eead4; }

@media(max-width:900px) {
  .sidebar { position:static; width:100%; height:auto; padding:15px; border:0; flex-direction:row; align-items:center; }
  .sidebar nav { margin:0 auto; flex-direction:row; }
  .sidebar-user { margin:0; padding:0; border:0; }
  .sidebar-user div { display:none; }
  .admin-main { margin:0; padding:25px 18px 60px; }
  .stats-grid,.dashboard-grid,.media-admin-grid,.settings-grid,.upload-panel { grid-template-columns:1fr; }
  .stats-grid article { min-height:140px; }
  .editor-grid,.messages-grid,.dual-fields { grid-template-columns:1fr; }
  .editor-side,.settings-side { position:static; }
  .upload-panel { align-items:stretch; }
}
@media(max-width:600px) {
  .sidebar .admin-brand span,.sidebar nav a { font-size:0; }
  .sidebar nav a span { font-size:1rem; }
  .sidebar nav { gap:2px; }
  .sidebar nav a { padding:0 9px; }
  .admin-header { min-height:80px; }
  .admin-header h1 { font-size:1.5rem; }
  .admin-panel { padding:16px; }
  .auth-card { padding:27px 22px; }
}
