/* DASHBOARD */

.dashboard-section {
    background: #050713;
    color: #ffffff;
    min-height: 100vh;
    padding: 40px 0 90px;
}

.dashboard-header {
    margin-bottom: 30px;
}

.dashboard-title {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
}

.dashboard-title h1 {
    margin: 0;
    font-size: 34px;
    color: #ffffff;
}

.dashboard-title p {
    margin-top: 6px;
    color: #94a3b8;
    font-size: 16px;
}

.dashboard-header h1 {
    color: #ffffff;
    font-size: 42px;
    margin-bottom: 10px;
}

.dashboard-header p {
    color: #cbd5e1;
    font-size: 18px;
}

.dashboard-stats {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 22px;
    margin: 55px 0 40px;
}

/* ==========================================
   Dashboard Toolbar
========================================== */

.dashboard-toolbar {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    margin: 35px 0 28px;
    flex-wrap: wrap;
}

.dashboard-toolbar-left h2{
    margin:0;
    color:#ffffff;
    font-size:30px;
}

.dashboard-toolbar-left p{
    margin-top:6px;
    color:#94a3b8;
    font-size:15px;
}

.dashboard-search{
    display:flex;
    gap:12px;
    align-items:center;
    flex-wrap:wrap;
}

.dashboard-search input {
    width: 260px;
    padding: 14px 18px;
    border-radius: 12px;
    border: 1px solid #d1d5db;
    font-size: 15px;
}

.dashboard-search select {
    width: 150px;
    padding: 14px 18px;
    border-radius: 12px;
    border: 1px solid #d1d5db;
}

.dashboard-search .btn {
    width: 120px;
    padding: 14px 20px;
}

.stat-card {
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 22px;
    padding: 26px;
}

.stat-card span {
    color: #94a3b8;
    font-weight: 800;
}

.stat-card h2 {
    color: var(--lime, #c8f000);
    font-size: 42px;
    margin-top: 10px;
}

.dashboard-table {
    margin-top: 25px;
    overflow-x: auto;
    border-radius: 20px;
    box-shadow: 0 15px 40px rgba(0,0,0,.18);
}

.dashboard-table table {
    width: 100%;
    border-collapse: collapse;
}

.dashboard-table th {
    background: rgba(200,240,0,.10);
    color: var(--lime, #c8f000);
    text-align: left;
    padding: 18px;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.dashboard-table td {
    padding: 18px;
    border-top: 1px solid rgba(255,255,255,.08);
    color: #e5e7eb;
}

.dashboard-table a {
    color: var(--lime, #c8f000);
    font-weight: 800;
    text-decoration: none;
}

.reference-cell {
    color: var(--lime, #c8f000) !important;
    font-weight: 900;
}

.dashboard-view-btn {
    display: inline-block;
    background: var(--lime, #c8f000);
    color: #050713 !important;
    padding: 10px 18px;
    border-radius: 999px;
    font-weight: 900;
}

/* STATUS BADGES */

.status-badge {
    display: inline-block;
    padding: 8px 16px;
    border-radius: 999px;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .5px;
}

/* New */

.status-new {
    background: #22c55e;
    color: #ffffff;
}

/* Confirmed */

.status-confirmed {
    background: #2563eb;
    color: #ffffff;
}

/* On The Way */

.status-on_the_way {
    background: #f59e0b;
    color: #ffffff;
}

/* In Progress */

.status-in_progress {
    background: #ea580c;
    color: #ffffff;
}

/* Completed */

.status-completed {
    background: #16a34a;
    color: #ffffff;
}

/* Cancelled */

.status-cancelled {
    background: #dc2626;
    color: #ffffff;
}

/* WORK ORDER IMAGES */

.review-grid img {
    max-width: 100%;
    border-radius: 16px;
    border: 1px solid rgba(255,255,255,.14);
    margin-top: 12px;
}

/* MOBILE */

@media (max-width: 900px) {
    .dashboard-stats {
        grid-template-columns: repeat(2, 1fr);
    }

    .dashboard-table {
        overflow-x: auto;
    }
}

@media (max-width: 600px) {
    .dashboard-stats {
        grid-template-columns: 1fr;
    }
}

.photo-gallery {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
}

.photo-card {
    background: rgba(255,255,255,.055);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 18px;
    padding: 16px;
}

.photo-card strong {
    display: block;
    color: var(--lime, #c8f000);
    margin-bottom: 10px;
}

.photo-card img {
    width: 100%;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,.14);
}

@media (max-width: 768px) {
    .photo-gallery {
        grid-template-columns: 1fr;
    }
}

/* ================================
   Admin Layout
================================ */

.admin-body{
    margin:0;
    background:#050713;
    color:white;
}

.admin-layout{
    display:grid;
    grid-template-columns:260px 1fr;
    min-height:100vh;
}

.admin-sidebar{
    background:#0b1120;
    border-right:1px solid rgba(255,255,255,.08);
    padding:35px 25px;
}

.admin-logo{
    text-align:center;
    margin-bottom:45px;
}

.admin-logo img{
    width:90px;
    border-radius:16px;
    margin-bottom:15px;
}

.admin-logo h2{
    margin:0;
    color:white;
}

.admin-logo span{
    color:#94a3b8;
    font-size:14px;
}

.admin-sidebar nav{
    display:flex;
    flex-direction:column;
    gap:10px;
}

.admin-sidebar nav a{
    color:white;
    text-decoration:none;
    padding:14px 18px;
    border-radius:12px;
    transition:.25s;
}

.admin-sidebar nav a:hover{
    background:#c8f000;
    color:#050713;
}

.admin-main {
    padding: 32px 48px;
    overflow-x: auto;
}

.today-panel {
    margin: 45px 0;
}

.today-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
    margin-top: 20px;
}

.today-card {
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 20px;
    padding: 22px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
}

.today-card strong {
    color: #b6ff00;
}

.today-card h3 {
    margin: 10px 0 6px;
    color: #ffffff;
}

.today-card p {
    color: #cbd5e1;
    margin-bottom: 12px;
}

.today-actions {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.today-actions a {
    background: #b6ff00;
    color: #050713;
    text-decoration: none;
    font-weight: 900;
    padding: 10px 16px;
    border-radius: 999px;
    text-align: center;
}

.today-empty {
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.12);
    border-radius: 20px;
    padding: 24px;
    color: #cbd5e1;
}

@media (max-width: 900px) {
    .today-grid {
        grid-template-columns: 1fr;
    }

    .today-card {
        flex-direction: column;
    }
}