/* Movie Manager – public styles (ทำงานคู่กับธีม Cine Stream)
   ใช้ตัวแปรจากธีมถ้ามี ไม่งั้น fallback */
:root {
	--mm-accent: var(--cs-accent, #ffb23e);
	--mm-red: var(--cs-red, #e23e57);
	--mm-surface: var(--cs-surface, #141926);
	--mm-text: var(--cs-text, #f5f3ef);
	--mm-muted: var(--cs-muted, #8a93a6);
}

/* ---------- เครื่องเล่นวิดีโอ ---------- */
.mm-player {
	position: relative;
	width: 100%;
	aspect-ratio: 16 / 9;
	background: #000;
	border-radius: 14px;
	overflow: hidden;
	box-shadow: 0 18px 50px rgba(0,0,0,.55);
}
.mm-player iframe,
.mm-player video { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.mm-player-empty {
	position: absolute; inset: 0;
	display: flex; align-items: center; justify-content: center;
	color: var(--mm-muted); font-size: 15px;
}
.mm-player-note { color: var(--mm-muted); font-size: 13px; margin-top: 8px; }

/* ปุ่มเลือกตอน */
.mm-episode-list { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
.mm-episode-btn {
	border: 1px solid rgba(255,255,255,.14);
	background: var(--mm-surface);
	color: var(--mm-text);
	padding: 8px 14px;
	border-radius: 9px;
	cursor: pointer;
	font: inherit;
	font-size: 14px;
	transition: all .18s ease;
}
.mm-episode-btn:hover { border-color: var(--mm-accent); transform: translateY(-1px); }
.mm-episode-btn.is-active { background: var(--mm-accent); color: #1a1205; border-color: var(--mm-accent); font-weight: 600; }

/* ---------- ป้าย badge ---------- */
.mm-badge {
	display: inline-block;
	padding: 3px 9px;
	border-radius: 999px;
	font-size: 11px;
	font-weight: 700;
	letter-spacing: .02em;
	line-height: 1.5;
}
.mm-status-showing   { background: rgba(45,200,120,.16); color: #4be39a; }
.mm-status-completed { background: rgba(120,140,180,.18); color: #aeb9d2; }
.mm-status-upcoming  { background: rgba(255,178,62,.18); color: var(--mm-accent); }
.mm-status-paused    { background: rgba(226,62,87,.18); color: #ff8198; }
.mm-lang-sub { background: rgba(90,160,255,.16); color: #8fc0ff; }
.mm-lang-dub { background: rgba(180,120,255,.16); color: #c79bff; }

/* ---------- ตารางรอบฉาย ---------- */
.mm-showtimes { margin: 28px 0; }
.mm-showtimes-table { width: 100%; border-collapse: collapse; font-size: 14px; }
.mm-showtimes-table th,
.mm-showtimes-table td {
	text-align: left;
	padding: 11px 14px;
	border-bottom: 1px solid rgba(255,255,255,.07);
}
.mm-showtimes-table th { color: var(--mm-accent); font-weight: 600; }
.mm-showtimes-table tr:hover td { background: rgba(255,255,255,.03); }

/* ---------- แจ้งหนังเสีย (popup modal) ---------- */
.mm-report { margin: 20px 0; }
.mm-report-toggle {
	background: rgba(226,62,87,.12);
	color: #ff8198;
	border: 1px solid rgba(226,62,87,.4);
	padding: 9px 16px;
	border-radius: 9px;
	cursor: pointer;
	font: inherit;
	font-size: 14px;
}
.mm-report-toggle:hover { background: rgba(226,62,87,.2); }

.mm-report-modal {
	position: fixed; inset: 0; z-index: 10000;
	display: flex; align-items: center; justify-content: center;
	padding: 20px;
}
.mm-report-backdrop {
	position: absolute; inset: 0;
	background: rgba(6,4,10,.72);
	backdrop-filter: blur(4px);
	animation: mm-fade .2s ease;
}
.mm-report-dialog {
	position: relative;
	width: 100%; max-width: 460px;
	background: var(--mm-surface);
	border: 1px solid rgba(255,255,255,.1);
	border-radius: 16px;
	padding: 26px 22px 22px;
	box-shadow: 0 30px 80px rgba(0,0,0,.6);
	display: grid; gap: 11px;
	animation: mm-pop .22s cubic-bezier(.2,.8,.3,1.2);
	max-height: 90vh; overflow-y: auto;
}
@keyframes mm-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes mm-pop { from { opacity: 0; transform: translateY(16px) scale(.96); } to { opacity: 1; transform: none; } }

.mm-report-close {
	position: absolute; top: 10px; right: 12px;
	background: none; border: 0; color: var(--mm-muted);
	font-size: 28px; line-height: 1; cursor: pointer; padding: 0; width: 34px; height: 34px;
	border-radius: 8px; transition: .15s;
}
.mm-report-close:hover { color: var(--mm-text); background: rgba(255,255,255,.08); }
.mm-report-title { margin: 0 30px 4px 0; font-weight: 700; font-size: 18px; color: var(--mm-text); }
.mm-report-label { font-size: 13px; color: var(--mm-muted); margin-bottom: -4px; }
.mm-report-dialog select,
.mm-report-dialog input,
.mm-report-dialog textarea {
	width: 100%;
	background: rgba(0,0,0,.28);
	border: 1px solid rgba(255,255,255,.14);
	border-radius: 9px;
	padding: 11px 13px;
	color: var(--mm-text);
	font: inherit;
}
.mm-report-dialog textarea { resize: vertical; }
.mm-report-submit {
	background: var(--mm-accent);
	color: #1a1205;
	border: 0;
	padding: 12px;
	border-radius: 9px;
	font-weight: 700;
	cursor: pointer;
	margin-top: 4px;
}
.mm-report-submit:disabled { opacity: .6; cursor: default; }
.mm-report-result { margin: 2px 0 0; font-size: 14px; text-align: center; }
.mm-report-result.is-ok { color: #4be39a; }
.mm-report-result.is-error { color: #ff8198; }

/* ---------- โฆษณา ---------- */
.mm-ad { position: relative; margin: 18px 0; text-align: center; overflow: hidden; }
.mm-ad-label {
	display: block;
	font-size: 10px;
	letter-spacing: .15em;
	text-transform: uppercase;
	color: var(--mm-muted);
	margin-bottom: 4px;
}
.mm-ad img { max-width: 100%; height: auto; border-radius: 8px; }
.mm-ad-sidebar { margin: 0 0 22px; }

.mm-ad-popup {
	position: fixed; inset: 0;
	background: rgba(0,0,0,.7);
	display: flex; align-items: center; justify-content: center;
	z-index: 9999;
}
.mm-ad-popup-inner {
	position: relative;
	background: var(--mm-surface);
	padding: 26px;
	border-radius: 14px;
	max-width: 92vw;
}
.mm-ad-popup-close {
	position: absolute; top: 8px; right: 12px;
	background: none; border: 0; color: var(--mm-text);
	font-size: 26px; line-height: 1; cursor: pointer;
}

@media (max-width: 600px) {
	.mm-showtimes-table { font-size: 13px; }
	.mm-showtimes-table th, .mm-showtimes-table td { padding: 9px 8px; }
}
