/* FMW Event Sales List - Main Styles
Path: assets/css/fmw-esl-style.css
Version: 1.0.0
*/

:root {
/* Default Base Variables - These get overridden by PHP if custom settings are used */
--fmw-esl-text: #2d2d2d;
--fmw-esl-bg: #f4f1ea;
--fmw-esl-accent: #8b7355;
--fmw-esl-card-bg: #ffffff;
--fmw-esl-primary: #f3977b;
--fmw-esl-font: 'Inter', sans-serif;

/* Hardcoded functional variables */
--radius-lg: 12px;
--radius-md: 8px;
--shadow-subtle: 0 4px 20px rgba(0,0,0,0.06);


}

#fmw-esl-plugin-host-schedule {
font-family: var(--fmw-esl-font);
color: var(--fmw-esl-text);
max-width: 1200px;
margin: 0 auto;
padding: 20px;
}

.fmw-esl-host_schedule-session_list-date_label {
display: block;
font-weight: 800;
font-size: 20px;
letter-spacing: 0.1em;
color: var(--fmw-esl-accent);
margin: 40px 0 20px;
padding-bottom: 8px;
border-bottom: 2px solid var(--fmw-esl-bg);
}

.m-card-grid {
display: grid;
grid-template-columns: 240px 1fr 160px;
gap: 30px;
background: var(--fmw-esl-card-bg);
padding: 25px;
border-radius: var(--radius-lg);
box-shadow: var(--shadow-subtle);
margin-bottom: 20px;
transition: transform 0.3s ease;
border: 1px solid rgba(0,0,0,0.03);
}

.m-card-grid:hover {
transform: translateY(-4px);
box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

.m-col-img {
border-radius: var(--radius-md);
overflow: hidden;
height: 240px;
}

.m-event-img { width: 100%; height: 100%; object-fit: cover; }

.m-col-main { display: flex; flex-direction: column; justify-content: space-between; }
.m-title {
font-size: 28px;
color: rgb(16, 84, 77) !important;
font-weight: 900;
}

.m-description { font-size: 20px; line-height: 1.6; color: #555; margin-bottom: 15px; }
.m-detail { font-size: 20px;  color: #f7a48a; background: var(--fmw-esl-bg); padding: 4px 8px; border-radius: 4px; font-weight: 500; }

.m-row-meta { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 15px; }

.m-row-booking-grid { display: flex; flex-wrap: wrap; gap: 8px; }

.m-variant-button {
text-decoration: none !important;
background: #F99F1C !important;
color: #fff !important;
padding: 8px 14px;
border-radius: var(--radius-md);
font-size: 13px;
font-weight: 600;
transition: all 0.2s;
display: inline-block;
cursor: pointer;
text-align: center;
line-height: 1.3;
}

.m-variant-button:hover { background: var(--fmw-esl-text) !important; }

/* SOLD OUT - Line-through removed as requested */
.m-variant-sold-out {
background: #f2e8e8 !important;
color: red !important;
border-color: #d9c5c5 !important;
cursor: not-allowed !important;
pointer-events: none;
opacity: .85;
}

.m-col-stats {
display: flex;
flex-direction: column;
align-items: flex-end;
justify-content: center;
border-left: 1px solid var(--fmw-esl-bg);
padding-left: 20px;
}

.m-stat-row { width: 100%; text-align: center; }
.m-stat-duration {
font-size: 20px;
color: #888;
margin-bottom: 4px;
font-weight: 700;
}
.m-stat-price { font-size: 24px; font-weight: 800; color: var(--fmw-esl-text); margin-bottom: 12px; }

.m-book-button-sidebar {
text-decoration: none !important;
background: #C8612A !important;
color: #fff !important;
padding: 5%;
border-radius: var(--radius-md);
font-size: 14px;
font-weight: 700;
text-align: center;
transition: all 0.2s;
width: 100%;
display: block;
}

.m-book-button-sidebar:hover { background: var(--fmw-esl-primary) !important; transform: scale(1.05); }

.fmw-esl-load-more-container { text-align: center; padding: 30px 0; }
.fmw-esl-load-more-button {
background: var(--fmw-esl-card-bg); border: 2px solid var(--fmw-esl-primary); color: var(--fmw-esl-primary);
padding: 12px 35px; font-weight: 700; border-radius: 5px; cursor: pointer; transition: all 0.2s;
}
.fmw-esl-load-more-button:hover { background: var(--fmw-esl-primary); color: white; }

.fmw-esl-day-nav-container { display: flex; align-items: center; justify-content: center; gap: 10px; margin-bottom: 30px; }
.fmw-esl-day_selection-list { display: flex; gap: 10px; overflow-x: auto; padding: 10px 0; }
.fmw-esl-day_selection-item { min-width: 65px; padding: 10px; border: 1px solid var(--fmw-esl-bg); background: #FbF3eF;  border-radius: var(--radius-md); cursor: pointer; text-align: center; }
.fmw-esl-day_selection-item[data-is-selected="true"] {  background: #739B42; color: white; }

@media (max-width: 992px) {
.m-card-grid { grid-template-columns: 1fr; }
.m-col-stats { border-left: none; border-top: 1px solid var(--fmw-esl-bg); padding: 20px 0 0 0; align-items: flex-start; }
.m-stat-row { text-align: left; }
.m-book-button-sidebar { width: auto; display: inline-block; }
}