/* admin/assets/admin.css */

/* ====== GLOBAL ADMIN LAYOUT ====== */

.admin-wrapper {
    display: flex;
    min-height: 100vh;
    background: #f8fafc;
    font-family: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

/* Sidebar */
.admin-sidebar {
    width: 240px;
    background: #ffffff;
    border-right: 1px solid #e5e7eb;
    padding-top: 20px;
}

.admin-sidebar a {
    display: block;
    padding: 14px 20px;
    margin: 4px 10px;
    color: #374151;
    font-size: 15px;
    border-radius: 8px;
    text-decoration: none;
}

.admin-sidebar a:hover {
    background: #f3f4f6;
    color: #111827;
    font-weight: 600;
}

.admin-sidebar a.active {
    background: #eef2ff;
    color: #1d4ed8;
    font-weight: 700;
}

/* Main Content */
.admin-main {
    flex: 1;
    padding: 30px;
}

.admin-page-title {
    font-size: 26px;
    font-weight: 700;
    color: #111827;
    margin-bottom: 8px;
}

.admin-page-subtitle {
    font-size: 14px;
    color: #6b7280;
    margin-bottom: 22px;
}

/* Generic Card */
.admin-card {
    background: #ffffff;
    border-radius: 18px;
    padding: 20px;
    box-shadow: 0 3px 12px rgba(0,0,0,0.06);
    border: 1px solid #e5e7eb;
}

/* ====== DASHBOARD TILES ====== */
.admin-tile-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 24px;
}

.admin-tile {
    background: #ffffff;
    border-radius: 18px;
    padding: 22px;
    box-shadow: 0 3px 12px rgba(0,0,0,0.08);
    text-align: center;
    border-top: 5px solid transparent;
    transition: 0.2s;
}

.admin-tile:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 18px rgba(0,0,0,0.12);
}

.admin-tile h2 {
    margin: 10px 0 4px;
    font-size: 30px;
    color: #111827;
}

.admin-tile p {
    font-size: 14px;
    color: #6b7280;
}

.admin-icon-circle {
    width: 60px;
    height: 60px;
    border-radius: 999px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 8px;
    font-size: 26px;
}

/* Color Variants */
.tile-users      { border-color: #0ea5e9; }
.tile-files      { border-color: #a78bfa; }
.tile-published  { border-color: #22c55e; }
.tile-pending    { border-color: #f59e0b; }
.tile-rejected   { border-color: #ef4444; }
.tile-accepted   { border-color: #2563eb; }

.tile-users .admin-icon-circle     { background:#e0f2fe; color:#0284c7; }
.tile-files .admin-icon-circle     { background:#ede9fe; color:#7c3aed; }
.tile-published .admin-icon-circle { background:#dcfce7; color:#16a34a; }
.tile-pending .admin-icon-circle   { background:#fef3c7; color:#d97706; }
.tile-rejected .admin-icon-circle  { background:#fee2e2; color:#dc2626; }
.tile-accepted .admin-icon-circle  { background:#dbeafe; color:#1d4ed8; }

.admin-tile-link {
    text-decoration:none;
    color:inherit;
}

/* ====== TABLE STYLES (Submissions, Issues, etc.) ====== */

.admin-table-box {
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    background: #ffffff;
}

.admin-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 14px;
}

.admin-table th {
    background: #f1f5f9;
    padding: 12px;
    text-align: left;
    font-weight: 600;
    color: #111827;
    border-bottom: 1px solid #e5e7eb;
}

.admin-table td {
    padding: 12px;
    border-bottom: 1px solid #f3f4f6;
    color: #111827;
}

/* Badges */
.badge {
    display:inline-block;
    padding: 4px 10px;
    border-radius: 999px;
    font-size: 12px;
    color: white;
}
.badge.submitted     { background:#6b7280; }
.badge.under_review  { background:#f59e0b; }
.badge.accepted      { background:#2563eb; }
.badge.published     { background:#22c55e; }
.badge.rejected      { background:#dc2626; }
.badge.current       { background:#16a34a; }
.badge.past          { background:#6b7280; }

/* Links / Buttons (inline) */
.link-btn {
    color:#2563eb;
    text-decoration:none;
    font-weight:600;
    cursor:pointer;
}

.link-btn.danger {
    color:#dc2626;
}

.link-btn.danger:hover {
    color:#b91c1c;
}

/* Forms, inputs, selects */
.admin-form-grid {
    display:grid;
    grid-template-columns: 1.5fr 1fr;
    gap:24px;
}

.admin-input,
.admin-select,
.admin-textarea {
    width:100%;
    padding:10px 12px;
    border-radius:10px;
    border:1px solid #d1d5db;
    margin-bottom:12px;
    font-size:14px;
    background:white;
    color:#111827;
}

.admin-textarea {
    resize: vertical;
    min-height: 90px;
}

.admin-btn-primary {
    background:#2563eb;
    color:white;
    padding:10px 18px;
    border:none;
    border-radius:10px;
    font-weight:600;
    cursor:pointer;
}

.admin-btn-secondary {
    background:#6b7280;
    color:white;
    padding:8px 16px;
    border:none;
    border-radius:8px;
    font-weight:500;
    cursor:pointer;
}

/* Pagination */
.admin-pagination {
    margin-top:20px;
}
.admin-pagination a {
    padding: 8px 12px;
    background:#e5e7eb;
    border-radius:8px;
    margin-right:4px;
    text-decoration:none;
    color:#111827;
    font-size:14px;
    font-weight:500;
}
.admin-pagination a.active {
    background:#2563eb;
    color:white;
}

/* Modal */
.admin-modal-overlay {
    display:none;
    position:fixed;
    inset:0;
    background:rgba(0,0,0,0.6);
    padding-top:80px;
    z-index:999;
}
.admin-modal {
    background:white;
    width:500px;
    max-width:90%;
    margin:0 auto;
    border-radius:12px;
    padding:22px;
    border:1px solid #e5e7eb;
}
.admin-modal h3 {
    margin-top:0;
    margin-bottom:12px;
}
.admin-modal-actions {
    margin-top:16px;
}

/* Search box */
.admin-search-box {
    width:100%;
    max-width:420px;
    padding:11px 14px;
    border-radius:12px;
    border:1px solid #d1d5db;
    background:white;
    margin-bottom:18px;
    box-shadow:0 2px 6px rgba(0,0,0,0.04);
}

/* Responsive */
@media (max-width: 900px) {
    .admin-wrapper {
        flex-direction:column;
    }
    .admin-sidebar {
        width:100%;
        display:flex;
        overflow-x:auto;
        white-space:nowrap;
    }
    .admin-sidebar a {
        margin:6px;
    }
    .admin-form-grid {
        grid-template-columns:1fr;
    }
}
.admin-tile-link{
text-decoration:none;
color:inherit;
display:block;
}

.admin-tile{
cursor:pointer;
transition:.2s;
}

.admin-tile:hover{
transform:translateY(-4px);
box-shadow:0 10px 26px rgba(0,0,0,.18);
}
