/* ===================================================================
   پنل ادمین — Admin Panel Styles
   =================================================================== */

.admin-tab {
    padding: 0.625rem 1.1rem;
    font-size: 0.85rem;
    font-weight: 600;
    color: #a3a3a3;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 0.625rem;
    cursor: pointer;
    transition: all 0.25s ease;
    white-space: nowrap;
}
.admin-tab:hover { color: #d4d4d4; background: rgba(245, 158, 11, 0.05); }
.admin-tab.active { color: #f59e0b; background: rgba(245, 158, 11, 0.12); border-color: rgba(245, 158, 11, 0.35); }

.admin-panel { animation: panel-in 0.4s ease; }
@keyframes panel-in { from { opacity: 0; transform: translateY(15px); } to { opacity: 1; transform: translateY(0); } }

/* Dashboard stat cards */
.dash-stat {
    background: rgba(30, 30, 30, 0.6);
    border: 1px solid #2a2a2a;
    border-radius: 1rem;
    padding: 1.25rem;
    backdrop-filter: blur(12px);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}
.dash-stat:hover { border-color: rgba(245, 158, 11, 0.3); transform: translateY(-2px); }
.dash-stat-icon {
    width: 44px; height: 44px; border-radius: 0.625rem;
    display: flex; align-items: center; justify-content: center;
    margin-bottom: 0.75rem;
}
.dash-stat-value { font-size: 1.75rem; font-weight: 900; color: #fff; font-family: 'JetBrains Mono', monospace; }
.dash-stat-label { font-size: 0.75rem; color: #737373; font-weight: 600; margin-top: 0.25rem; }

/* List items (reports/applications) */
.list-item {
    background: rgba(10, 10, 10, 0.4);
    border: 1px solid #2a2a2a;
    border-radius: 0.75rem;
    padding: 0.875rem 1rem;
    transition: border-color 0.2s ease;
}
.list-item:hover { border-color: #3a3a3a; }
.list-item-title { font-weight: 700; color: #e5e5e5; font-size: 0.9rem; }
.list-item-meta { font-size: 0.75rem; color: #737373; margin-top: 0.2rem; }

/* Status badges */
.status-badge {
    display: inline-flex; align-items: center; gap: 0.25rem;
    font-size: 0.7rem; font-weight: 700;
    padding: 0.15rem 0.5rem; border-radius: 0.3rem;
}
.status-pending { background: rgba(245, 158, 11, 0.15); color: #fbbf24; border: 1px solid rgba(245, 158, 11, 0.3); }
.status-approved { background: rgba(34, 197, 94, 0.15); color: #4ade80; border: 1px solid rgba(34, 197, 94, 0.3); }
.status-rejected { background: rgba(239, 68, 68, 0.15); color: #f87171; border: 1px solid rgba(239, 68, 68, 0.3); }

/* Editable list rows */
.edit-row {
    background: rgba(10, 10, 10, 0.3);
    border: 1px solid #2a2a2a;
    border-radius: 0.75rem;
    padding: 1rem;
    display: flex; align-items: center; gap: 1rem;
    transition: all 0.2s ease;
    animation: row-in 0.4s ease backwards;
}
.edit-row:hover { border-color: rgba(245, 158, 11, 0.3); background: rgba(10, 10, 10, 0.5); }
.edit-row-info { flex: 1; min-width: 0; }
.edit-row-title { font-weight: 700; color: #e5e5e5; font-size: 0.9rem; }
.edit-row-sub { font-size: 0.75rem; color: #737373; margin-top: 0.15rem; }

/* Icon button small */
.icon-btn-sm {
    display: inline-flex; align-items: center; justify-content: center;
    width: 32px; height: 32px;
    color: #a3a3a3; background: transparent;
    border: 1px solid #2a2a2a; border-radius: 0.5rem;
    cursor: pointer; transition: all 0.2s ease;
}
.icon-btn-sm:hover { color: #f59e0b; border-color: #f59e0b; background: rgba(245,158,11,0.05); }
.icon-btn-sm.danger:hover { color: #ef4444; border-color: #ef4444; background: rgba(239,68,68,0.05); }

/* Modal */
#admin-modal-overlay.active { display: flex; animation: overlay-in 0.25s ease; }
#admin-modal-overlay > div { animation: modal-in 0.35s cubic-bezier(0.34, 1.56, 0.64, 1); }

/* Map image grid in admin */
.map-grid-item {
    background: rgba(10,10,10,0.4);
    border: 1px solid #2a2a2a;
    border-radius: 0.75rem;
    overflow: hidden;
    transition: border-color 0.2s ease;
}
.map-grid-item:hover { border-color: rgba(245,158,11,0.3); }
.map-thumb {
    aspect-ratio: 16/10;
    background: linear-gradient(135deg, #1a1a1a, #0a0a0a);
    display: flex; align-items: center; justify-content: center;
    position: relative;
}
.map-thumb img { width: 100%; height: 100%; object-fit: cover; }
.map-thumb-empty { color: #525252; font-size: 0.7rem; }

/* Code display (API keys etc) */
.code-display {
    background: #0d1117;
    border: 1px solid #30363d;
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.8rem;
    color: #c9d1d9;
    direction: ltr;
    text-align: left;
    word-break: break-all;
}
