/* ===========================================================================
   EEG School Manager — front-end dashboard
   Styled to match the Easy Education Grammar brand:
     • warm cream / beige surfaces
     • sage-green + dusty-purple accents
     • soft rounded shapes, friendly type
   Content width: 1220px. Responsive: desktop / tablet / mobile.
   All rules scoped under .eeg- classes so they never collide with the theme.
   =========================================================================== */

.eeg-wrap{
	--eeg-cream:#faf3e8;
	--eeg-cream-2:#fdf8f0;
	--eeg-ink:#2b2b2b;
	--eeg-ink-soft:#5f5b57;
	--eeg-muted:#9b958d;
	--eeg-line:#ece3d6;
	--eeg-card:#ffffff;
	--eeg-sage:#8ba888;
	--eeg-sage-d:#6f9070;
	--eeg-sage-bg:#e9f0e7;
	--eeg-purple:#a78bca;
	--eeg-purple-d:#8b6fb4;
	--eeg-purple-bg:#efe8f8;
	--eeg-tan:#d8b48f;
	--eeg-tan-bg:#f6ece0;
	--eeg-danger:#d9736b;
	--eeg-danger-bg:#fbe9e7;
	--eeg-warn:#d9a44e;
	--eeg-warn-bg:#f9efdc;
	--eeg-radius:16px;
	--eeg-radius-sm:11px;
	--eeg-shadow:0 6px 24px rgba(120,100,70,.08);
	--eeg-font:'Poppins','Nunito','Quicksand',-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;

	max-width:1220px;
	margin:0 auto;
	padding:0 20px 40px;
	font-family:var(--eeg-font);
	color:var(--eeg-ink);
}
.eeg-wrap *{box-sizing:border-box}
.eeg-wrap h1,.eeg-wrap h2,.eeg-wrap h3{font-family:var(--eeg-font);letter-spacing:-.01em}
/* Guard against theme heading colours washing out our text on light cards */
.eeg-wrap h1,.eeg-wrap h2,.eeg-wrap h3{color:var(--eeg-ink) !important}
.eeg-wrap .eeg-card p,.eeg-wrap .eeg-table td{color:var(--eeg-ink)}

/* ---- Header ------------------------------------------------------------ */
.eeg-head{
	display:flex;justify-content:space-between;align-items:center;gap:28px;flex-wrap:wrap;
	background:linear-gradient(135deg,var(--eeg-cream) 0%,var(--eeg-tan-bg) 100%);
	border:1px solid var(--eeg-line);
	border-radius:var(--eeg-radius);
	padding:30px 34px;
	margin:28px 0 24px;
	box-shadow:var(--eeg-shadow);
}
.eeg-head h1{margin:0;font-size:30px;line-height:1.15;font-weight:800;color:var(--eeg-ink) !important}
.eeg-wrap .eeg-head h1{color:#2b2b2b !important}
.eeg-head .eeg-sub{color:var(--eeg-ink-soft) !important}
.eeg-sub{margin:6px 0 0;color:var(--eeg-ink-soft);font-size:15px;font-weight:500}

.eeg-seatbox{min-width:230px;background:#fff;border:1px solid var(--eeg-line);border-radius:var(--eeg-radius-sm);padding:16px 20px;box-shadow:0 2px 8px rgba(120,100,70,.05)}
.eeg-seatnums{font-size:14px;color:var(--eeg-ink-soft);font-weight:500}
.eeg-seatnums strong{font-size:24px;color:var(--eeg-ink);font-weight:800}
.eeg-bar{height:12px;background:#efe7db;border-radius:8px;overflow:hidden;margin:9px 0 5px}
.eeg-bar__fill{display:block;height:100%;background:var(--eeg-sage);border-radius:8px;transition:width .35s ease}
.eeg-bar__fill.is-warn{background:var(--eeg-warn)}
.eeg-bar__fill.is-full{background:var(--eeg-danger)}
.eeg-seathint{font-size:12.5px;color:var(--eeg-muted);font-weight:500}

/* ---- Tabs -------------------------------------------------------------- */
.eeg-tabs{display:flex;gap:8px;margin:0 0 24px;flex-wrap:wrap}
.eeg-tab{
	padding:11px 22px;text-decoration:none;color:var(--eeg-ink-soft);font-weight:700;font-size:14.5px;
	border-radius:999px;background:#fff;border:1px solid var(--eeg-line);transition:.18s;
}
.eeg-tab:hover{color:var(--eeg-ink);border-color:var(--eeg-tan)}
.eeg-tab.is-active{color:#fff;background:var(--eeg-purple);border-color:var(--eeg-purple)}

/* ---- Cards ------------------------------------------------------------- */
.eeg-card{
	background:var(--eeg-card);border:1px solid var(--eeg-line);border-radius:var(--eeg-radius);
	padding:26px 28px;margin-bottom:24px;box-shadow:var(--eeg-shadow);
}
.eeg-card--wide{grid-column:auto}
.eeg-card--center{text-align:center;max-width:520px;margin:70px auto;background:linear-gradient(135deg,var(--eeg-cream-2),var(--eeg-purple-bg))}
.eeg-card h2{margin:0 0 18px;font-size:19px;font-weight:800;color:var(--eeg-ink)}
.eeg-cardhead{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}
.eeg-cardhead h2{margin:0}

.eeg-grid{display:grid;grid-template-columns:390px 1fr;gap:24px;align-items:start}

/* ---- Forms ------------------------------------------------------------- */
.eeg-form label{display:block;font-size:13px;font-weight:700;color:var(--eeg-ink-soft);margin-bottom:15px}
.eeg-form input[type=text],.eeg-form input[type=email],.eeg-form input[type=password],
.eeg-filter select,.eeg-setup__form input{
	display:block;width:100%;margin-top:6px;padding:11px 14px;
	border:1.5px solid var(--eeg-line);border-radius:var(--eeg-radius-sm);
	font-size:14.5px;font-weight:500;font-family:var(--eeg-font);color:var(--eeg-ink);
	background:var(--eeg-cream-2);transition:.15s;
}
.eeg-form input:focus,.eeg-filter select:focus,.eeg-setup__form input:focus{
	outline:0;border-color:var(--eeg-purple);background:#fff;box-shadow:0 0 0 3px var(--eeg-purple-bg);
}
.eeg-opt{font-weight:500;color:var(--eeg-muted);font-size:12px}
.eeg-row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.eeg-row3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.eeg-hint{font-size:12.5px;color:var(--eeg-muted);margin:12px 0 0;line-height:1.55}

/* ---- Buttons ----------------------------------------------------------- */
.eeg-btn{
	display:inline-block;cursor:pointer;border:0;border-radius:999px;
	padding:11px 22px;font-size:14px;font-weight:700;text-decoration:none;line-height:1.2;
	background:#efe7db;color:var(--eeg-ink);font-family:var(--eeg-font);transition:.15s;
}
.eeg-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(120,100,70,.14)}
.eeg-btn--primary{background:var(--eeg-purple);color:#fff}
.eeg-btn--primary:hover{background:var(--eeg-purple-d)}
.eeg-btn--ok{background:var(--eeg-sage);color:#fff}
.eeg-btn--ok:hover{background:var(--eeg-sage-d)}
.eeg-btn--warn{background:var(--eeg-warn);color:#fff}
.eeg-btn--danger{background:var(--eeg-danger);color:#fff}
.eeg-btn--sm{padding:6px 12px !important;font-size:12px !important}

/* ---- Tables ------------------------------------------------------------ */
.eeg-tablewrap{overflow-x:auto;border-radius:var(--eeg-radius-sm)}
.eeg-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}
.eeg-table th{
	text-align:left;padding:12px 14px;background:var(--eeg-sage-bg);color:var(--eeg-sage-d);
	font-size:11.5px;text-transform:uppercase;letter-spacing:.5px;font-weight:800;
	border-bottom:1px solid var(--eeg-line);
}
.eeg-table th:first-child{border-top-left-radius:var(--eeg-radius-sm)}
.eeg-table th:last-child{border-top-right-radius:var(--eeg-radius-sm)}
.eeg-table td{padding:14px;border-bottom:1px solid var(--eeg-line);vertical-align:middle;color:var(--eeg-ink)}
.eeg-table tbody tr:hover td{background:var(--eeg-cream-2)}
.eeg-table code{background:var(--eeg-tan-bg);padding:2px 7px;border-radius:6px;font-size:12px;color:var(--eeg-ink-soft)}
.eeg-actions-col{width:1%;white-space:nowrap}
.eeg-actions{display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.eeg-actions form{margin:0}
.eeg-actions .eeg-btn{margin:0}
/* Beat theme button styles that force large pills and overflow the cell */
.eeg-wrap .eeg-actions .eeg-btn,
.eeg-wrap .eeg-actions button.eeg-btn{
	padding:6px 12px !important;font-size:12px !important;
	border-radius:8px !important;width:auto !important;
	line-height:1.2 !important;box-shadow:none !important;
	text-transform:none !important;letter-spacing:normal !important;
}
.eeg-inline{display:inline}

/* ---- Chips / status ---------------------------------------------------- */
.eeg-chip{display:inline-block;padding:4px 13px;border-radius:999px;font-size:12px;font-weight:800}
.eeg-chip--ok{background:var(--eeg-sage-bg);color:var(--eeg-sage-d)}
.eeg-chip--off{background:var(--eeg-danger-bg);color:var(--eeg-danger)}

/* ---- Misc -------------------------------------------------------------- */
.eeg-muted{color:var(--eeg-muted)}
.eeg-alert{padding:14px 18px;border-radius:var(--eeg-radius-sm);font-size:14px;font-weight:600;margin-bottom:18px}
.eeg-alert--ok{background:var(--eeg-sage-bg);color:var(--eeg-sage-d);border:1px solid #cfe0cc}
.eeg-alert--warn{background:var(--eeg-danger-bg);color:var(--eeg-danger);border:1px solid #f1cfcb}
.eeg-alert--float{margin:18px 0}

.eeg-editrow > td{background:var(--eeg-cream-2)}
.eeg-form--inline{padding:8px 0}

.eeg-filter select{display:inline-block;width:auto;margin-left:8px}

.eeg-pager{display:flex;gap:7px;margin-top:18px;flex-wrap:wrap}
.eeg-page{display:inline-block;padding:8px 14px;border:1px solid var(--eeg-line);border-radius:var(--eeg-radius-sm);text-decoration:none;color:var(--eeg-ink-soft);font-size:13px;font-weight:700;background:#fff}
.eeg-page:hover{border-color:var(--eeg-tan)}
.eeg-page.is-active{background:var(--eeg-purple);color:#fff;border-color:var(--eeg-purple)}

/* ---- First-run setup banner ------------------------------------------- */
.eeg-setup{border:2px solid var(--eeg-purple);background:linear-gradient(135deg,var(--eeg-cream-2),var(--eeg-purple-bg))}
.eeg-setup h2{color:var(--eeg-purple-d) !important}
.eeg-setup__lead{color:var(--eeg-ink-soft);font-size:15px;line-height:1.65;margin:0 0 18px;font-weight:500}
.eeg-setup__form{display:flex;gap:14px;align-items:flex-end;flex-wrap:wrap}
.eeg-setup__form label{flex:1;min-width:260px;margin-bottom:0;font-weight:700;color:var(--eeg-ink-soft)}
.eeg-setup__form .eeg-btn{white-space:nowrap;padding:13px 26px}

/* ---- Tablet ------------------------------------------------------------ */
@media (max-width:960px){
	.eeg-grid{grid-template-columns:1fr}
}

/* ---- Mobile: stack tables into cards ----------------------------------- */
@media (max-width:640px){
	.eeg-wrap{padding:0 14px 32px}
	.eeg-head{padding:24px 22px}
	.eeg-head h1{font-size:25px}
	.eeg-seatbox{text-align:left;min-width:0;width:100%}
	.eeg-row2,.eeg-row3{grid-template-columns:1fr}
	.eeg-setup__form{align-items:stretch}
	.eeg-setup__form label{min-width:0}

	.eeg-table thead{display:none}
	.eeg-table,.eeg-table tbody,.eeg-table tr,.eeg-table td{display:block;width:100%}
	.eeg-table tr{border:1px solid var(--eeg-line);border-radius:var(--eeg-radius-sm);margin-bottom:14px;padding:6px 4px;background:#fff}
	.eeg-table td{border:0;padding:9px 14px;position:relative;padding-left:44%}
	.eeg-table td::before{content:attr(data-label);position:absolute;left:14px;top:9px;font-size:11px;font-weight:800;color:var(--eeg-sage-d);text-transform:uppercase;letter-spacing:.4px}
	.eeg-table tbody tr:hover td{background:transparent}
	.eeg-editrow > td{padding-left:14px}
	.eeg-editrow td::before{display:none}
	.eeg-actions{padding-left:14px}
}
