/* RESTAURANT PAGE */

.dashboard-grid {

    display: flex;

    gap: 15px;

    flex-wrap: wrap;
}

.dashboard-card {

    background: #0f172a;

    padding: 20px;

    border-radius: 18px;

    min-width: 180px;

    border: 1px solid #1f2937;
}

/* DETAILS */

.details-card {

    background: #111827;

    padding: 30px;

    border-radius: 20px;

    margin-top: 20px;
}

.details-top {

    display: flex;

    justify-content: space-between;

    align-items: center;

    margin-bottom: 20px;
}

/* PAGE LAYOUT */

.restaurant-layout {

    display: flex;

    gap: 20px;

    align-items: flex-start;
}

.restaurant-left {

    flex: 1;
}

/* MOBILE */

@media(max-width:1200px) {

    .restaurant-layout {

        flex-direction: column;
    }

    .slot-wrapper {

        width: 100%;

        min-width: 100%;
    }
}
/* ========================= */
/* WEEKLY TIMING */
/* ========================= */

.weekly-timing-box {

background: #111827;

border: 1px solid #1f2937;

border-radius: 20px;

padding: 20px;

margin-top: 25px;
}

.weekly-timing-box h2 {

margin-bottom: 20px;
}

.week-day-row {

display: flex;

align-items: center;

gap: 12px;

margin-top: 15px;

flex-wrap: wrap;

background: #1f2937;

padding: 12px;

border-radius: 14px;
}

.week-day-row label {

min-width: 110px;

font-weight: 700;
}

.week-day-row input[type="time"] {

padding: 10px;

border-radius: 10px;

border: none;

background: #111827;

color: white;
}

/* ========================= */
/* HOLIDAY MODE */
/* ========================= */

.holiday-box {

margin-top: 25px;

background: #111827;

border: 1px solid #1f2937;

border-radius: 20px;

padding: 20px;
}

.switch {

position: relative;

display: inline-block;

width: 60px;

height: 34px;
}

.switch input {

opacity: 0;

width: 0;

height: 0;
}

.slider {

position: absolute;

cursor: pointer;

top: 0;

left: 0;

right: 0;

bottom: 0;

background-color: #374151;

transition: .4s;

border-radius: 34px;
}

.slider:before {

position: absolute;

content: "";

height: 26px;

width: 26px;

left: 4px;

bottom: 4px;

background-color: white;

transition: .4s;

border-radius: 50%;
}

input:checked + .slider {

background-color: #22c55e;
}

input:checked + .slider:before {

transform: translateX(26px);
}

/* ========================= */
/* MOBILE */
/* ========================= */

@media(max-width:768px) {

.week-day-row {

flex-direction: column;

align-items: flex-start;
}

.week-day-row input {

width: 100%;
}

}
/* ========================= */
/* WEEKLY SLOT SYSTEM */
/* ========================= */

.weekly-day-card {

background: #1f2937;

padding: 15px;

border-radius: 18px;

margin-top: 20px;
}

.weekly-slot-row {

display: flex;

align-items: center;

gap: 10px;

margin-top: 12px;

flex-wrap: wrap;
}

.weekly-slot-row input {

padding: 10px;

background: #111827;

border: none;

border-radius: 10px;

color: white;
}

.weekly-slot-row span {

font-weight: bold;
}

#weeklySlotsContainer {

display: flex;

flex-direction: column;

gap: 15px;
}
.time-box {

display: flex;

flex-direction: column;

gap: 6px;
}

.time-box label {

font-size: 11px;

font-weight: bold;

color: #cbd5e1;
}

.slot-arrow {

font-size: 18px;

font-weight: bold;

margin-top: 22px;

color: white;
}
.slot-arrow {

font-size: 18px;

font-weight: bold;

margin-top: 22px;

color: white;
}
/* 🚀 TIMING PANEL 😎🔥 */

.timing-cell {

display: flex;

flex-direction: column;

gap: 12px;
}

.timing-row-panel {

display: flex;

align-items: center;

gap: 10px;

margin-top: 8px;
}

.timing-row-panel input {

background: #111827;

border: 1px solid #374151;

padding: 8px;

border-radius: 10px;

color: white;
}

.timing-badge {

padding: 10px;

border-radius: 12px;

font-size: 13px;

font-weight: bold;

text-align: center;
}

.timing-badge.open {

background: rgba(34,197,94,0.15);

color: #22c55e;
}

.timing-badge.closed {

background: rgba(239,68,68,0.15);

color: #ef4444;
}

.holiday-check {

display: flex;

align-items: center;

gap: 8px;

font-size: 13px;

margin-top: 5px;
}

.save-timing-btn {

margin-top: 10px;

background: #facc15;

border: none;

padding: 10px;

border-radius: 12px;

font-weight: bold;

cursor: pointer;
}