/*
 * HD Catalog B — Reference Admin Shell
 * Design direction extracted from the supplied reference CMS source.
 * One light administration system: Inter typography, flat sidebar rows,
 * white working surfaces on #F7F9FB, #007D72 primary actions,
 * and #E8F5F3 soft interactions. Typography and interactive-card behavior
 * are source-verified against the supplied reference admin panel.
 *
 * MANDATORY FUTURE-SCREEN RULE: every new or revised admin screen must use this
 * shared token/component system. Do not introduce page-specific theme colors,
 * fonts, sidebar variants, control geometry or generic hover behavior. See
 * ADMIN_THEME_STANDARD_UR.md for the maintained implementation contract.
 */
:root {
  --admin-font: "Inter", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Arial, sans-serif;

  --admin-bg: #F7F9FB;
  --admin-sidebar: #F4F7FC;
  --admin-surface: #FFFFFF;
  --admin-surface-muted: #F8FAFC;
  --admin-surface-hover: #E8F5F3;
  --admin-surface-selected: #D8EEEB;

  --admin-primary: #007D72;
  --admin-primary-hover: #00675F;
  --admin-primary-strong: #005D56;
  --admin-primary-ink: #FFFFFF;
  --admin-on-color: #FFFFFF;

  --admin-text: #374151;
  --admin-text-strong: #111827;
  --admin-text-muted: #6B7280;
  --admin-text-faint: #9AA7B5;
  --admin-nav-text: #111827;

  --admin-border: #E1E7EF;
  --admin-border-strong: #C7DDD8;
  --admin-sidebar-border: #D7E0EC;
  --admin-input-border: #D1D5DB;
  --admin-input-focus-bg: #FFFFFF;
  --admin-neutral-border: #D8E1E5;
  --admin-focus: rgba(0, 125, 114, .18);

  --admin-shadow: 0 12px 34px rgba(15, 23, 42, .07);
  --admin-shadow-soft: 0 8px 18px rgba(15, 23, 42, .04);
  --admin-shadow-raised: 0 16px 36px rgba(15, 23, 42, .10);
  --admin-card-hover-border: #D1D5DB;
  --admin-card-hover-shadow: 0 4px 12px rgba(15, 23, 42, .08);
  --admin-poster-card-hover-border: rgba(0, 125, 114, .25);
  --admin-poster-card-hover-shadow: 0 16px 38px rgba(15, 23, 42, .12);
  --admin-shell-shadow: 8px 0 26px rgba(15, 23, 42, .035);
  --admin-primary-shadow: 0 10px 22px rgba(0, 125, 114, .20);
  --admin-primary-hover-shadow: 0 13px 26px rgba(0, 125, 114, .22);
  --admin-active-shadow: none;
  --admin-sticky-surface: rgba(247, 249, 251, .94);

  --admin-success: #18794E;
  --admin-success-bg: #EAF7EE;
  --admin-success-border: #BCE4CC;
  --admin-success-hover: #146440;
  --admin-warning: #A15C00;
  --admin-warning-bg: #FFF6E6;
  --admin-warning-border: #F2D59B;
  --admin-danger: #B42318;
  --admin-danger-bg: #FDECEC;
  --admin-danger-border: #F3C5C2;
  --admin-danger-hover: #982019;
  --admin-info: #2458A6;
  --admin-info-bg: #EAF2FF;
  --admin-info-border: #BED4F4;
  --admin-manual: #6941C6;
  --admin-manual-bg: #F2EEFF;
  --admin-manual-border: #D9CCFC;
  --admin-manual-hover: #5934AD;
  --admin-manual-surface: #FAF8FF;
  --admin-source: #9A5B12;
  --admin-source-bg: #FFF3E6;
  --admin-source-border: #EFC48B;
  --admin-source-surface: #FFF9F0;

  --sidebar-width: 280px;
  --radius-sm: 0;
  --radius-control: 0;
  --radius-card: 0;
  --radius-modal: 0;
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-5: 24px;
  --space-6: 32px;
}

* { box-sizing: border-box; }
html { min-height: 100%; background: var(--admin-bg); }
body {
  min-height: 100%;
  margin: 0;
  background: var(--admin-bg);
  color: var(--admin-text);
  font: 400 14px/1.6 var(--admin-font);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
body, button, input, select, textarea { font-family: var(--admin-font); }
a { color: var(--admin-primary); text-decoration: none; }
a:hover { color: var(--admin-primary-hover); }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible, summary:focus-visible {
  outline: 3px solid var(--admin-focus);
  outline-offset: 2px;
}
button { font: inherit; }
button:disabled, .btn[aria-disabled="true"] { cursor: not-allowed; opacity: .55; }

/* Reference CMS sidebar shell */
.side {
  position: fixed;
  inset: 0 auto 0 0;
  display: flex;
  width: var(--sidebar-width);
  height: 100vh;
  flex-direction: column;
  overflow-y: auto;
  z-index: 1000;
  padding: 8px 0 14px;
  background: var(--admin-sidebar);
  border-right: 1px solid var(--admin-sidebar-border);
  box-shadow: var(--admin-shell-shadow);
}
.side::-webkit-scrollbar { width: 8px; }
.side::-webkit-scrollbar-thumb { background: rgba(15, 23, 42, .16); }
.main {
  width: min(100%, 1440px);
  min-height: 100vh;
  max-width: 1440px;
  margin: 0 auto;
  padding: 4px 30px 44px;
}
.brand, .phase { display: none; }
.side-nav {
  display: block !important;
  flex: 1 0 auto;
  width: 100%;
  padding: 0;
}
.side-nav-group { margin: 0; padding: 0; }
.side-nav-label {
  margin: 15px 20px 6px;
  color: var(--admin-text-muted);
  font-size: 11px;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.side-nav-link {
  display: flex;
  width: 100%;
  min-height: 49px;
  align-items: center;
  gap: 12px;
  margin: 0;
  padding: 13px 20px;
  border: 0;
  border-bottom: 1px solid var(--admin-sidebar-border);
  border-radius: 0;
  background: transparent;
  color: var(--admin-nav-text);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.25;
  letter-spacing: 0;
  transition: background .16s ease, color .16s ease, border-color .16s ease;
}
.side-nav-group:first-child .side-nav-link:first-of-type { border-top: 0; }
.side-nav-link:hover, .side-nav-link:focus-visible {
  background: var(--admin-surface-hover);
  border-bottom-color: var(--admin-border-strong);
  color: var(--admin-nav-text);
  outline-offset: -3px;
}
.side-nav-link.active, .side-nav-link.active:hover, .side-nav-link[aria-current="page"] {
  background: var(--admin-primary);
  border-bottom-color: var(--admin-primary-hover);
  color: var(--admin-primary-ink);
  font-weight: 500;
}
.side-nav-icon {
  display: inline-flex;
  width: 21px;
  height: 21px;
  flex: 0 0 21px;
  align-items: center;
  justify-content: center;
  color: var(--admin-text-faint);
}
.side-nav-icon svg { width: 20px; height: 20px; display: block; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.85; }
.side-nav-link:hover .side-nav-icon, .side-nav-link:focus-visible .side-nav-icon { color: var(--admin-primary); }
.side-nav-link.active .side-nav-icon, .side-nav-link[aria-current="page"] .side-nav-icon { color: #FFFFFF; }
.side-nav-text { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.side-foot {
  position: static;
  margin-top: auto;
  padding: 16px 18px 0;
  border-top: 1px solid var(--admin-sidebar-border);
  color: var(--admin-text-muted);
}
.side-user {
  display: flex;
  align-items: center;
  gap: 11px;
  padding: 10px;
  border: 1px solid var(--admin-sidebar-border);
  background: #FFFFFF;
}
.side-user-avatar {
  display: grid;
  width: 39px;
  height: 39px;
  flex: 0 0 39px;
  place-items: center;
  border-radius: 12px;
  background: var(--admin-surface-hover);
  color: var(--admin-primary);
  font-size: 15px;
  font-weight: 600;
}
.side-user-copy { min-width: 0; }
.side-user-copy strong { display: block; overflow: hidden; color: var(--admin-text-strong); font-size: 14px; font-weight: 500; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.side-user-copy span { display: block; margin-top: 3px; overflow: hidden; color: var(--admin-text-muted); font-size: 12px; font-weight: 400; line-height: 1.2; text-overflow: ellipsis; white-space: nowrap; }
.side-logout {
  display: flex;
  min-height: 39px;
  align-items: center;
  justify-content: center;
  margin-top: 10px;
  border: 1px solid #FECACA;
  background: #FFF1F2;
  color: #991B1B;
  font-size: 14px;
  font-weight: 500;
}
.side-logout:hover { border-color: #DC2626; background: #DC2626; color: #FFFFFF; }

/* Page heading bar: compact and intentionally secondary to each page's own hero. */
.top { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; margin: 18px 0 20px; }
.top-title { min-width: 0; }
.top h1, h1 { margin: 2px 0 0; color: var(--admin-text-strong); font-size: 26px; font-weight: 600; line-height: 1.2; letter-spacing: -.025em; }
.eyebrow { margin: 0; color: var(--admin-primary); font-size: 12px; font-weight: 700; line-height: 1.3; letter-spacing: .08em; text-transform: uppercase; }
.top-actions { display: flex; flex: 0 0 auto; align-items: center; justify-content: flex-end; gap: 8px; padding-top: 2px; }
.admin-view-site { min-height: 38px; white-space: nowrap; }
.admin-view-site-icon { display: inline-flex; width: 16px; height: 16px; flex: 0 0 16px; align-items: center; justify-content: center; }
.admin-view-site-icon svg { display: block; width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.9; }
.user-chip { display: none; }

/* Shared content surfaces: intentionally flat, light and readable. */
.card {
  margin: 0 0 var(--space-3);
  padding: 18px;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: var(--radius-card);
  background: var(--admin-surface);
  box-shadow: var(--admin-shadow);
}
.compact-card { padding: 16px 18px; }
h2 { margin: 0 0 8px; color: var(--admin-text-strong); font-size: 22px; font-weight: 600; line-height: 1.22; letter-spacing: -.015em; }
h3 { margin: 0 0 5px; color: var(--admin-text-strong); font-size: 18px; font-weight: 600; line-height: 1.25; }
h4 { margin: 0 0 5px; color: var(--admin-text-strong); font-size: 14px; font-weight: 500; line-height: 1.35; }
p { margin: 0 0 12px; }
.muted, .meta { color: var(--admin-text-muted); }
.meta { font-size: 12px; }
.notice, .danger-notice { margin: 0 0 14px; padding: 11px 13px; border: 1px solid var(--admin-info-border); border-left: 3px solid var(--admin-primary); border-radius: 0; background: var(--admin-info-bg); color: var(--admin-info); font-size: 13px; }
.danger-notice { border-color: var(--admin-warning-border); border-left-color: var(--admin-warning); background: var(--admin-warning-bg); color: var(--admin-warning); }
.notice code { color: var(--admin-primary-strong); }
.flash { margin: 0 0 14px; padding: 11px 13px; border: 1px solid; border-radius: 0; font-size: 13px; font-weight: 500; }
.flash.ok { border-color: var(--admin-success-border); background: var(--admin-success-bg); color: var(--admin-success); }
.flash.bad { border-color: var(--admin-danger-border); background: var(--admin-danger-bg); color: var(--admin-danger); }

/* Buttons follow the reference's 14px / 500 flat control language. */
.btn {
  display: inline-flex;
  min-height: 38px;
  align-items: center;
  justify-content: center;
  gap: 6px;
  margin: 0;
  padding: 0 16px;
  border: 1px solid var(--admin-primary);
  border-radius: 0;
  background: var(--admin-primary);
  color: var(--admin-primary-ink);
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}
.btn:hover { border-color: var(--admin-primary-hover); background: var(--admin-primary-hover); color: var(--admin-primary-ink); box-shadow: var(--admin-primary-hover-shadow); transform: translateY(-1px); }
.btn:active { border-color: var(--admin-primary-strong); background: var(--admin-primary-strong); box-shadow: none; transform: none; }
.btn.secondary { border-color: rgba(15, 23, 42, .12); background: #FFFFFF; color: var(--admin-text-strong); box-shadow: var(--admin-shadow-soft); }
.btn.secondary:hover { border-color: var(--admin-primary); background: var(--admin-surface-hover); color: var(--admin-text-strong); box-shadow: none; }
.btn.violet { border-color: var(--admin-manual); background: var(--admin-manual); color: var(--admin-on-color); }
.btn.violet:hover { border-color: var(--admin-manual-hover); background: var(--admin-manual-hover); color: var(--admin-on-color); }
.btn.success { border-color: var(--admin-success); background: var(--admin-success); color: var(--admin-on-color); }
.btn.success:hover { border-color: var(--admin-success-hover); background: var(--admin-success-hover); color: var(--admin-on-color); }
.btn.danger { border-color: var(--admin-danger); background: var(--admin-danger); color: var(--admin-on-color); }
.btn.danger:hover { border-color: var(--admin-danger-hover); background: var(--admin-danger-hover); color: var(--admin-on-color); }
.btn.small { min-height: 31px; padding: 0 10px; font-size: 12px; font-weight: 500; }

/* Forms, tables and operational primitives. */
label { display: grid; gap: 6px; color: var(--admin-text); font-size: 12px; font-weight: 500; line-height: 1.35; }
label small, .form-grid small { color: var(--admin-text-muted); font-size: 11px; font-weight: 400; }
input, select, textarea {
  width: 100%;
  min-height: 42px;
  border: 1px solid var(--admin-input-border);
  border-radius: 0;
  background: #FFFFFF;
  color: var(--admin-text-strong);
  padding: 10px 12px;
  font: 400 14px/1.45 inherit;
  transition: border-color .16s ease, box-shadow .16s ease, background .16s ease;
}
input::placeholder, textarea::placeholder { color: var(--admin-text-faint); }
input:hover, select:hover, textarea:hover { border-color: var(--admin-border-strong); }
input:focus, select:focus, textarea:focus { outline: 0; border-color: var(--admin-primary); background: var(--admin-input-focus-bg); box-shadow: 0 0 0 3px var(--admin-focus); }
input[type="checkbox"], input[type="radio"] { width: auto; min-height: auto; accent-color: var(--admin-primary); }
textarea { min-height: 132px; line-height: 1.55; resize: vertical; }
.form-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 16px; }
.filter-bar { display: flex; align-items: flex-end; gap: 10px; flex-wrap: wrap; margin-top: 14px; }
.filter-bar label { min-width: 180px; flex: 1; }
.toolbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 16px; }
.editor-actions, .editor-links, .link-row, .actions, .published-actions { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; }
.actions { justify-content: space-between; }
.actions a:not(.btn), .pagination a { font-size: 12px; font-weight: 500; }
.inline-form, .quick-verify-form { display: inline-flex; margin: 0; }
.quick-action-cell { min-width: 165px; }
.quick-action-cell .quick-verify-form, .quick-action-cell .btn { margin: 0 4px 4px 0; }

.table-wrap { overflow: auto; border: 1px solid rgba(15, 23, 42, .10); border-radius: 0; background: #FFFFFF; box-shadow: var(--admin-shadow-soft); }
table { width: 100%; min-width: 860px; border-collapse: collapse; }
th, td { padding: 13px 14px; border-bottom: 1px solid #EDF1F5; color: var(--admin-text); font-size: 13px; font-weight: 400; text-align: left; vertical-align: top; }
th { background: #F8FAFC; color: var(--admin-text-muted); font-size: 12px; font-weight: 500; letter-spacing: .06em; text-transform: uppercase; }
tbody tr:last-child td { border-bottom: 0; }
tbody tr:hover td { background: var(--admin-surface-hover); }
.progress { height: 8px; overflow: hidden; border: 0; border-radius: 0; background: #EEF2F7; }
.progress span { display: block; height: 100%; border-radius: 0; background: var(--admin-primary); transition: width .22s ease; }
.statusline { font-weight: 500; }
.code, .ads-code { font: 12px/1.5 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; }
.code { height: 400px; white-space: pre; }
.poster { display: block; width: 74px; height: 111px; border: 1px solid var(--admin-border); border-radius: 0; background: var(--admin-surface-muted); object-fit: cover; }
.poster.big { width: 126px; height: 189px; }
.no-poster { display: flex; width: 74px; height: 111px; align-items: center; justify-content: center; padding: 8px; border: 1px dashed var(--admin-border-strong); border-radius: 0; background: var(--admin-surface-muted); color: var(--admin-text-faint); font-size: 11px; text-align: center; }
.no-poster.big { width: 126px; height: 189px; }
.pill { display: inline-flex; align-items: center; margin: 2px 3px 2px 0; padding: 3px 8px; border: 1px solid var(--admin-border); border-radius: 999px; background: var(--admin-surface-muted); color: var(--admin-text-muted); font-size: 11px; font-weight: 500; line-height: 1.25; white-space: nowrap; }
.pill.pending, .pill.neutral { border-color: var(--admin-neutral-border); background: var(--admin-surface-muted); color: var(--admin-text-muted); }
.pill.auto_matched_check_poster, .pill.check-not_checked, .pill.needs { border-color: var(--admin-warning-border); background: var(--admin-warning-bg); color: var(--admin-warning); }
.pill.verified, .pill.check-matched { border-color: var(--admin-success-border); background: var(--admin-success-bg); color: var(--admin-success); }
.pill.no_match, .pill.error { border-color: var(--admin-danger-border); background: var(--admin-danger-bg); color: var(--admin-danger); }
.pill.check-corrected_manual_tmdb_id, .pill.corrected { border-color: var(--admin-manual-border); background: var(--admin-manual-bg); color: var(--admin-manual); }

/* Existing comparison and import components */
.language-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:7px;margin:8px 0}
.language-list label{display:block;padding:8px;border:1px solid var(--admin-border);border-radius:var(--radius-sm);background:var(--admin-surface-muted);font-weight:600}
.language-list input{width:auto;margin-right:5px}
.comparison-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:15px}
.compare-card,.candidate-card,.catalog-card{border:1px solid var(--admin-border);border-radius:var(--radius-card);background:var(--admin-surface);box-shadow:var(--admin-shadow)}
.compare-card{overflow:hidden}
.poster-pair{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--admin-border)}
.poster-pair>div{padding:8px;background:var(--admin-surface-muted)}
.poster-pair span:first-child{display:block;margin-bottom:5px;color:var(--admin-text-muted);font-size:11px;font-weight:800}
.poster-pair img,.poster-pair .no-poster{width:100%;height:235px;border:0;border-radius:var(--radius-sm);object-fit:cover}
.poster-pair .no-poster{height:235px}
.compare-copy{padding:13px}.compare-copy h3{font-size:16px}.tmdb-title{margin:3px 0;color:var(--admin-manual)}
.compare-wide{display:grid;grid-template-columns:138px minmax(220px,1fr) 138px;gap:14px;align-items:start}.compare-wide h4{color:var(--admin-text-muted)}
.candidate-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:11px}
.candidate-card{display:grid;grid-template-columns:74px 1fr;gap:10px;padding:10px}.candidate-card h4{font-size:15px}.candidate-card .poster{width:74px;height:111px}
.pagination{display:flex;align-items:center;justify-content:center;gap:18px}.pagination span{color:var(--admin-text-muted);font-size:12px}
.catalog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(235px,1fr));gap:14px}.catalog-card{padding:12px}.list li{margin:6px 0}

/* Dashboard metrics */
.verification-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:10px}
.summary-chip{display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--admin-border);border-radius:11px;background:var(--admin-surface);color:var(--admin-text);box-shadow:var(--admin-shadow);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.summary-chip:hover{border-color:var(--admin-card-hover-border);background:var(--admin-surface);color:var(--admin-text-strong);box-shadow:var(--admin-card-hover-shadow);transform:translateY(-1px)}
.summary-chip b{color:var(--admin-text-strong);font-size:23px;font-weight:600;line-height:1}.summary-chip span{font-size:12px;font-weight:600;line-height:1.25}
.summary-chip.needs{border-color:var(--admin-warning-border);color:var(--admin-warning)}.summary-chip.verified{border-color:var(--admin-success-border);color:var(--admin-success)}.summary-chip.corrected{border-color:var(--admin-manual-border);color:var(--admin-manual)}.summary-chip.neutral{border-color:var(--admin-border);color:var(--admin-text-muted)}

/* Published catalog cards */
.published-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(245px,1fr));gap:12px}
.published-card{display:grid;grid-template-columns:86px minmax(0,1fr);gap:11px;padding:10px;border:1px solid var(--admin-border);border-radius:12px;background:var(--admin-surface);box-shadow:0 10px 28px rgba(15,23,42,.07);transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.published-card:hover{border-color:var(--admin-poster-card-hover-border);box-shadow:var(--admin-poster-card-hover-shadow);transform:translateY(-2px)}
.published-poster img,.published-poster .blank-poster{display:block;width:86px;height:129px;border:1px solid var(--admin-border);border-radius:var(--radius-sm);background:var(--admin-surface-muted);object-fit:cover}
.blank-poster{display:flex!important;align-items:center;justify-content:center;color:var(--admin-text-faint);font-size:10px;text-align:center}.published-body{min-width:0}.published-body h3{margin:0 0 3px;font-size:15px;font-weight:500;line-height:1.25}.published-original{margin:0 0 4px;overflow:hidden;color:var(--admin-text-muted);font-size:11px;white-space:nowrap;text-overflow:ellipsis}.published-tags{line-height:1}.published-meta,.published-date{margin:5px 0;color:var(--admin-text-muted);font-size:11px;line-height:1.4}

/* Single-save editor */
.large-seo-field{margin-top:12px}.meta-description-box{min-height:210px}.editor-shell{max-width:1380px}
.editor-title-card{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0 0 12px;padding:15px;border:1px solid var(--admin-border-strong);border-radius:var(--radius-card);background:linear-gradient(120deg,var(--admin-surface-hover),var(--admin-surface));box-shadow:var(--admin-shadow)}
.editor-title-card h2{margin:2px 0 3px;font-size:20px}.editor-title-card .muted{margin:0}
.editor-savebar{position:sticky;top:10px;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;padding:10px 12px;border:1px solid var(--admin-border-strong);border-radius:11px;background:var(--admin-sticky-surface);box-shadow:var(--admin-shadow-raised);backdrop-filter:blur(12px)}
.editor-savebar b{display:block;font-size:13px;color:var(--admin-text-strong)}.editor-savebar span{display:block;color:var(--admin-text-muted);font-size:11px}.editor-savebar .btn{min-width:132px}
.editor-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:0 0 12px}.editor-tabs a{padding:7px 10px;border:1px solid var(--admin-border);border-radius:999px;background:var(--admin-surface);color:var(--admin-text-muted);font-size:12px;font-weight:800}.editor-tabs a:hover{border-color:var(--admin-primary);background:var(--admin-surface-hover);color:var(--admin-primary)}
.edit-section{margin:0 0 12px;padding:14px;border:1px solid var(--admin-border);border-radius:13px;background:var(--admin-surface);box-shadow:var(--admin-shadow);scroll-margin-top:78px}
.section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;margin-bottom:11px;padding-bottom:9px;border-bottom:1px solid var(--admin-border)}.section-heading h2{margin:1px 0 0;font-size:17px}.section-heading p:last-child{max-width:540px;margin:2px 0 0;color:var(--admin-text-muted);font-size:12px}.long-field{margin-top:10px}.long-field textarea{min-height:170px}.single-save-languages{max-height:196px;overflow:auto;padding:4px}
.restore-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:6px;margin:9px 0}.restore-fields label{padding:7px 8px;border:1px solid var(--admin-border);border-radius:var(--radius-sm);background:var(--admin-surface-muted);font-size:11px;font-weight:600}.restore-fields label.locked{border-color:var(--admin-warning-border);background:var(--admin-warning-bg);color:var(--admin-warning)}.restore-fields input{width:auto;margin-right:4px}
.editor-checks{display:flex;gap:15px;flex-wrap:wrap;margin-top:10px}.editor-checks label{display:flex;align-items:center;gap:6px;font-weight:600}.editor-checks input{width:auto}
.people-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(430px,1fr));gap:12px}.people-group{padding:10px;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface-muted)}.people-group h3{display:flex;align-items:center;gap:6px;font-size:14px}.count{display:inline-grid;place-items:center;min-width:20px;height:20px;border-radius:999px;background:var(--admin-surface-selected);color:var(--admin-primary-strong);font-size:10px}.person-editor{display:grid;grid-template-columns:44px minmax(0,1fr) 76px;gap:8px;align-items:start;padding:8px 0;border-top:1px solid var(--admin-border)}.person-editor:first-of-type{border-top:0}.person-avatar{display:flex;width:40px;height:54px;align-items:center;justify-content:center;border:1px solid var(--admin-border);border-radius:6px;background:var(--admin-surface);color:var(--admin-text-faint);font-size:9px;object-fit:cover;text-align:center}.person-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.person-fields label{font-size:10px}.person-fields input{padding:6px;font-size:11px}.person-actions{display:flex;flex-direction:column;gap:4px;padding-top:16px}.add-person{margin:7px -3px -3px;padding:8px;border-radius:8px;background:var(--admin-surface-hover)}.add-person .person-avatar{border-style:dashed}
.people-accordion-list{display:grid;gap:8px}.people-accordion{overflow:hidden;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface)}.people-accordion summary{display:flex;align-items:center;gap:7px;padding:10px 12px;cursor:pointer;font-size:13px;font-weight:800}.people-accordion summary::-webkit-details-marker{display:none}.people-accordion summary:after{margin-left:auto;color:var(--admin-primary);font-size:15px;content:'⌄'}.people-accordion[open] summary{border-bottom:1px solid var(--admin-border);background:var(--admin-surface-hover)}.people-accordion[open] summary:after{transform:rotate(180deg)}.people-accordion summary small{margin-left:2px;color:var(--admin-text-muted);font-size:10px;font-weight:500}.people-list{padding:6px 10px 10px}.person-row{display:grid;grid-template-columns:43px minmax(0,1fr) 74px;gap:8px;align-items:start;padding:9px 0;border-bottom:1px solid var(--admin-border)}.person-row:last-child{border-bottom:0}.new-person-row{margin:6px -2px 0;padding:8px;border:1px dashed var(--admin-border-strong);border-radius:8px;background:var(--admin-surface-hover)}.person-photo img,.person-photo span{display:flex;width:40px;height:56px;align-items:center;justify-content:center;border:1px solid var(--admin-border);border-radius:6px;background:var(--admin-surface-muted);color:var(--admin-text-faint);font-size:9px;object-fit:cover;text-align:center}.person-row-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.person-row-fields label{font-size:10px}.person-row-fields input{padding:6px;font-size:11px}.remove-person{display:flex;align-items:center;gap:5px;padding-top:17px;color:var(--admin-danger);font-size:10px}.remove-person input{width:auto}.danger-check{color:var(--admin-danger)!important}.editor-hint{display:inline-block;padding:6px 0;color:var(--admin-text-muted);font-size:11px}

/* Front-page manager / section builder */
.front-hero-settings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;align-items:start}.front-hero-setting{display:grid;grid-template-rows:auto 42px minmax(30px,auto);gap:6px;min-width:0;align-content:start}.front-hero-setting__label{display:block;min-height:17px;color:var(--admin-text);font-size:12px;font-weight:500;line-height:1.35}.front-hero-setting>input,.front-hero-setting>select{width:100%;min-width:0;height:42px;min-height:42px;margin:0}.front-hero-setting>small{display:block;min-height:30px;margin:0;color:var(--admin-text-muted);font-size:11px;font-weight:400;line-height:1.35}.front-hero-settings-note{max-width:760px;margin:14px 0 0;padding:10px 12px;border:1px solid var(--admin-info-border);border-left:3px solid var(--admin-primary);background:var(--admin-info-bg);color:var(--admin-info);font-size:12px;line-height:1.55}.front-hero-settings-note p{margin:0}.front-hero-settings-note b{color:var(--admin-text-strong)}.front-hero-settings-note a{font-weight:600}.front-manager-form{max-width:1360px}.front-manager-list,.front-menu-admin-list{display:grid;gap:9px}.front-manager-hero-row,.front-menu-admin-row{display:grid;grid-template-columns:62px minmax(0,1fr) 98px;gap:10px;align-items:start;padding:9px;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface)}.front-manager-hero-row>img,.front-manager-poster{width:58px;height:87px;border:1px solid var(--admin-border);border-radius:7px;background:var(--admin-surface-muted);object-fit:cover}.front-manager-poster{display:flex;align-items:center;justify-content:center;color:var(--admin-text-faint);font-size:9px;text-align:center}.front-manager-hero-main{min-width:0}.front-manager-hero-main>b{display:block;color:var(--admin-text-strong);font-size:13px}.front-manager-hero-main>small{display:block;margin:2px 0 7px;overflow:hidden;color:var(--admin-text-muted);font-size:10px;white-space:nowrap;text-overflow:ellipsis}.front-manager-flags{display:grid;gap:7px;padding-top:4px}.front-manager-flags label{display:flex;align-items:center;gap:5px;font-size:11px;font-weight:700}.front-manager-flags input{width:auto}.front-add-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px;padding-top:10px;border-top:1px dashed var(--admin-border-strong)}.front-menu-admin-row{grid-template-columns:40px minmax(0,1fr) 98px}.front-menu-admin-row.new{border-style:dashed;background:var(--admin-surface-hover)}.front-menu-admin-icon{display:grid;place-items:center;width:34px;height:34px;margin-top:6px;border:1px solid var(--admin-border);border-radius:8px;background:var(--admin-surface-muted)}.front-menu-admin-icon svg{width:18px;height:18px;fill:none;stroke:var(--admin-primary);stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.compact-grid{grid-template-columns:120px minmax(150px,1fr) minmax(170px,1.4fr) 100px}.compact-grid label{min-width:0}.front-trending-admin-list{margin-top:12px}.front-trending-admin-row .front-manager-hero-main .form-grid{max-width:210px}.front-trending-admin-row .front-manager-hero-main{display:grid;gap:1px}
.btn.front-primary,.front-primary{border-color:var(--admin-primary);background:var(--admin-primary);color:var(--admin-primary-ink)!important}.btn.front-primary:hover,.front-primary:hover{border-color:var(--admin-primary-hover);background:var(--admin-primary-hover);color:var(--admin-primary-ink)!important}
.dynamic-section-intro .toolbar{align-items:center}.section-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(205px,1fr));gap:8px;margin-top:12px}.section-status-grid span{display:block;padding:10px;border:1px solid var(--admin-border);border-radius:var(--radius-control);background:var(--admin-surface);color:var(--admin-text-muted);font-size:12px}.section-status-grid b{color:var(--admin-text-strong);font-size:17px}.section-add-form .btn{margin:0}.dynamic-sync-card{display:flex;align-items:center;justify-content:space-between;gap:16px}.dynamic-sync-card h2{margin-bottom:4px}.dynamic-sync-card p{max-width:720px;margin:0}.dynamic-sync-actions,.dynamic-section-header-actions{display:flex;gap:7px;flex-wrap:wrap}.dynamic-sync-actions form{margin:0}.dynamic-sync-actions .btn{white-space:nowrap}.dynamic-section-card{overflow:hidden;margin:0 0 12px;border:1px solid var(--admin-border);border-radius:13px;background:var(--admin-surface);box-shadow:var(--admin-shadow)}.dynamic-section-header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 12px;border-bottom:1px solid var(--admin-border);background:var(--admin-surface-muted)}.dynamic-section-header>div:first-child{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.dynamic-drag{margin-right:4px;color:var(--admin-primary);font-size:15px;letter-spacing:-3px}.dynamic-section-header b{font-size:13px}.inline-check{display:flex!important;align-items:center!important;gap:5px!important;font-size:11px!important;white-space:nowrap}.inline-check input{width:auto}.dynamic-section-card>.dynamic-section-footer{display:flex;gap:5px;flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--admin-border);background:var(--admin-surface-muted)}.dynamic-section-card form>.form-grid,.dynamic-section-card form>.dynamic-filter-grid{margin:12px}.dynamic-main-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.dynamic-filter-grid{padding:10px;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface-muted)}.dynamic-filter-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px;padding:0 0 8px;border-bottom:1px solid var(--admin-border)}.dynamic-filter-heading h3{margin:0;font-size:13px}.dynamic-filter-heading p{max-width:560px;margin:0;color:var(--admin-text-muted);font-size:11px}.dynamic-filter-grid.is-curated{opacity:.58}.dynamic-filter-grid.is-curated select,.dynamic-filter-grid.is-curated input{pointer-events:none}.curated-panel{margin:12px;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface)}.curated-panel summary{padding:9px 10px;cursor:pointer;font-size:12px;font-weight:800}.curated-panel summary small{color:var(--admin-text-muted);font-weight:500}.curated-item{display:grid;grid-template-columns:40px minmax(120px,1fr) 94px 76px 78px;gap:8px;align-items:center;padding:8px 10px;border-top:1px solid var(--admin-border)}.curated-item img,.curated-no-poster{display:block;width:38px;height:56px;border:1px solid var(--admin-border);border-radius:5px;background:var(--admin-surface-muted);object-fit:cover}.curated-no-poster{display:flex;align-items:center;justify-content:center;color:var(--admin-text-faint);font-size:8px;text-align:center}.curated-item b{display:block;overflow:hidden;color:var(--admin-text-strong);font-size:11px;white-space:nowrap;text-overflow:ellipsis}.curated-item small{display:block;margin-top:2px;color:var(--admin-text-muted);font-size:10px}.curated-item label{font-size:10px}.curated-item input,.curated-item select{padding:6px;font-size:11px}.curated-add{margin:8px 10px 10px}.dynamic-section-card .pill{margin:0;padding:3px 6px}.dynamic-section-card .danger{border-color:var(--admin-danger);background:var(--admin-danger);color:var(--admin-on-color)}

/* Settings and ads manager */
.check-label{display:flex;align-items:flex-start;gap:9px;align-self:end;padding:10px 11px;border:1px solid var(--admin-border);border-radius:var(--radius-control);background:var(--admin-surface);cursor:pointer;font-weight:400;transition:border-color .16s ease,background .16s ease}.check-label:hover{border-color:var(--admin-border-strong);background:var(--admin-surface-hover)}.check-label input{width:auto;margin:3px 0 0}.check-label span{display:grid;gap:2px}.check-label b{color:var(--admin-text-strong);font-size:12px}.check-label small{color:var(--admin-text-muted);font-size:11px;font-weight:500;line-height:1.4}.settings-choice-group{display:grid;min-width:0;gap:8px;margin:0;padding:10px;border:1px solid var(--admin-border);border-radius:var(--radius-control)}.settings-choice-group legend{padding:0 5px;color:var(--admin-text);font-size:12px;font-weight:800}.settings-choice-group .check-label{align-self:auto}
.ads-intro-card h2{margin-bottom:7px}.ads-placement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin-top:14px}.ads-placement-card{min-height:118px;padding:12px;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface)}.ads-placement-card h3{font-size:13px}.ads-placement-card p{min-height:38px;margin:0 0 8px;color:var(--admin-text-muted);font-size:11px;line-height:1.4}.ads-placement-card code,.ads-table code{color:var(--admin-primary-strong);font:11px/1.2 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}.ads-editor-heading,.ads-list-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.ads-editor-heading p,.ads-list-heading p{margin:2px 0 0}.ads-code-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:13px}.ads-code{min-height:265px;white-space:pre-wrap;resize:vertical}.ads-check-stack{display:grid;align-content:start;gap:9px}.ads-delivery-note{display:grid;gap:2px;padding:9px 10px;border:1px solid var(--admin-border);border-radius:var(--radius-control);background:var(--admin-surface-muted)}.ads-delivery-note b{color:var(--admin-text-strong);font-size:12px}.ads-delivery-note small{color:var(--admin-text-muted);font-size:11px;line-height:1.42}.ads-save-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0 0}.ads-trust-note{margin:13px 0 0;padding-top:12px;border-top:1px solid var(--admin-border);font-size:11px}.ads-actions{display:flex;min-width:260px;gap:5px;flex-wrap:wrap}.ads-actions form{display:inline;margin:0}.ads-empty{display:grid;min-height:160px;align-content:center;gap:6px;padding:18px;border-radius:10px;background:var(--admin-surface-muted)}.ads-empty h3,.ads-empty p{margin:0}.ads-empty p{color:var(--admin-text-muted)}

/* TMDB queue operations */
.tmdb-ops-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:linear-gradient(120deg,var(--admin-surface-hover),var(--admin-surface) 60%)}.tmdb-ops-hero h2{margin:2px 0 5px}.tmdb-ops-hero p{max-width:900px;margin:0}.tmdb-ops-status{display:flex;min-width:210px;gap:7px;flex-wrap:wrap;justify-content:flex-end}.tmdb-ops-status span{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border:1px solid var(--admin-border);border-radius:999px;background:var(--admin-surface);color:var(--admin-text-muted);font-size:11px}.tmdb-ops-status b{color:var(--admin-text-strong);font-size:13px}.tmdb-ops-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px;margin:0 0 14px}.tmdb-ops-stat{display:grid;min-height:112px;gap:2px;padding:13px;border:1px solid var(--admin-border);border-radius:12px;background:var(--admin-surface);color:var(--admin-text);box-shadow:var(--admin-shadow);text-decoration:none;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}.tmdb-ops-stat:hover{border-color:var(--admin-card-hover-border);background:var(--admin-surface);box-shadow:var(--admin-card-hover-shadow);transform:translateY(-1px)}.tmdb-ops-stat b{color:var(--admin-text-strong);font-size:28px;font-weight:600;line-height:1}.tmdb-ops-stat span{font-size:12px;font-weight:600}.tmdb-ops-stat small{color:var(--admin-text-muted);font-size:12px;font-weight:500;line-height:1.35}.tmdb-ops-stat.pending{border-color:var(--admin-info-border)}.tmdb-ops-stat.review{border-color:var(--admin-warning-border);background:var(--admin-warning-bg)}.tmdb-ops-stat.retry{border-color:var(--admin-danger-border);background:var(--admin-danger-bg)}.tmdb-ops-stat.published{border-color:var(--admin-success-border);background:var(--admin-success-bg)}.tmdb-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:13px;margin-bottom:13px}.tmdb-section-heading h2{margin:2px 0 4px}.tmdb-section-heading p{max-width:850px;margin:0}.tmdb-queue-form-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.tmdb-primary-action{margin:14px 0 0}.tmdb-queue-runner .progress{margin:13px 0 9px}.tmdb-runner-metrics{display:flex;align-items:center;gap:9px;flex-wrap:wrap;color:var(--admin-text);font-size:12px;font-weight:750}.tmdb-runner-metrics span{padding-left:9px;border-left:1px solid var(--admin-border);color:var(--admin-text-muted)}.tmdb-runner-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:13px}.tmdb-runner-actions form{display:flex;gap:6px;flex-wrap:wrap;margin:0}.tmdb-queue-history .tmdb-section-heading>form{margin:0;white-space:nowrap}.tmdb-history-table small{color:var(--admin-text-muted);font-size:10px}.tmdb-history-table td{vertical-align:middle}.tmdb-history-table a{font-weight:800}.tmdb-queue-empty{padding:22px;border:1px dashed var(--admin-border-strong);border-radius:11px;background:var(--admin-surface-muted)}.tmdb-queue-empty h3,.tmdb-queue-empty p{margin:0}.tmdb-queue-empty p{margin-top:3px;color:var(--admin-text-muted)}

@media (min-width:761px){body{padding-left:var(--sidebar-width)}.side{width:var(--sidebar-width)}.main{width:100%;margin-left:0;padding:24px}.side-foot{right:14px;bottom:14px;left:14px}}
@media (max-width:1180px){.tmdb-ops-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tmdb-queue-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:1050px){.people-groups{grid-template-columns:1fr}.compare-wide{grid-template-columns:1fr}.wf-summary{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:930px){.compare-wide{grid-template-columns:1fr}.poster.big,.no-poster.big{width:110px;height:165px}}
@media (max-width:800px){.tmdb-ops-hero,.tmdb-section-heading{display:block}.tmdb-ops-status{justify-content:flex-start;margin-top:10px}.tmdb-queue-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.tmdb-queue-history .tmdb-section-heading>form{margin-top:10px}}
@media (max-width:760px){body{padding-left:0}.side{position:static;width:auto;height:auto;overflow:visible;padding:14px}.side-foot{position:static;margin-top:18px}.main{margin-left:0;width:100%;padding:16px}.top{display:block}.top-actions{justify-content:flex-start;margin-top:12px;padding-top:0}.admin-view-site{min-height:42px}.user-chip{margin-top:10px}.front-manager-hero-row,.front-menu-admin-row{grid-template-columns:48px minmax(0,1fr)}.front-manager-flags{grid-column:2;grid-template-columns:repeat(2,max-content);padding-top:0}.front-manager-hero-row>img,.front-manager-poster{width:42px;height:64px}.front-add-grid,.compact-grid{grid-template-columns:1fr}.front-menu-admin-icon{width:34px;height:34px}.dynamic-sync-card,.dynamic-section-header{display:block}.dynamic-sync-actions,.dynamic-section-header-actions{margin-top:9px}.curated-item{grid-template-columns:38px minmax(0,1fr)}.curated-item label{grid-column:2}.dynamic-filter-heading{display:block}.dynamic-filter-heading p{margin-top:4px}.section-status-grid{grid-template-columns:1fr}.dynamic-section-card form>.form-grid,.dynamic-section-card form>.dynamic-filter-grid{margin:10px}.ads-code-grid{grid-template-columns:1fr}.ads-code{min-height:210px}.ads-editor-heading,.ads-list-heading{display:block}.ads-editor-heading .btn{margin-top:9px}.ads-actions{min-width:220px}.ads-placement-grid{grid-template-columns:1fr}}
@media (max-width:720px){.editor-title-card,.section-heading,.editor-savebar{display:block}.editor-links{margin-top:9px}.editor-savebar .btn{margin-top:8px}.person-row{grid-template-columns:40px minmax(0,1fr)}.person-row-fields{grid-template-columns:1fr}.remove-person{grid-column:2;padding-top:0}.section-heading p:last-child{margin-top:5px}.editor-tabs{overflow:auto;flex-wrap:nowrap;padding-bottom:3px}.editor-tabs a{white-space:nowrap}}
@media (max-width:640px){.comparison-grid{grid-template-columns:1fr}.poster-pair img,.poster-pair .no-poster{height:190px}.wf-summary{grid-template-columns:1fr}.main{padding:12px}.card{padding:13px}.filter-bar{align-items:stretch}.filter-bar label{min-width:100%}}
@media (max-width:600px){.main{padding:10px}.card{padding:12px}.person-editor{grid-template-columns:38px minmax(0,1fr)}.person-actions{grid-column:2;flex-direction:row;padding-top:0}.person-fields{grid-template-columns:1fr}.published-grid{grid-template-columns:1fr}.toolbar{display:block}.toolbar>.btn{margin-top:8px}}
@media (max-width:520px){.tmdb-ops-stat-grid,.tmdb-queue-form-grid{grid-template-columns:1fr}.tmdb-runner-actions,.tmdb-runner-actions form{display:grid;width:100%;grid-template-columns:1fr 1fr}.tmdb-runner-actions>#start{grid-column:1/-1}.tmdb-runner-actions .btn,.tmdb-queue-history .tmdb-section-heading>form .btn{width:100%}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}


/* Reference shell responsive rules. */
@media (min-width: 761px) {
  body { padding-left: var(--sidebar-width); }
  .side { width: var(--sidebar-width); }
  .main { margin-left: auto; }
}
@media (max-width: 760px) {
  body { padding-left: 0; }
  .side { position: static; width: auto; height: auto; min-height: 0; overflow: visible; padding: 0 0 14px; }
  .side-nav { flex: none; }
  .side-nav-link { min-height: 46px; padding: 12px 16px; }
  .side-nav-label { margin-left: 16px; }
  .side-foot { margin-top: 14px; padding: 14px 16px 0; }
  .main { width: 100%; max-width: none; padding: 16px; }
  .top { margin: 0 0 16px; }
  .top h1, h1 { font-size: 24px; }
  .toolbar { display: block; }
  .toolbar > .btn, .toolbar > a.btn { margin-top: 10px; }
  .card { padding: 16px; }
}
@media (max-width: 600px) {
  .main { padding: 12px; }
  .top h1, h1 { font-size: 22px; }
  h2 { font-size: 20px; }
  .btn:not(.small) { min-height: 38px; }
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}


/* Reference-admin card behavior: panels stay still; only interactive cards lift subtly. */
.card, .editor-title-card, .tmdb-ops-hero { transform: none; }
.card:not(a):not(button):hover, .editor-title-card:hover, .tmdb-ops-hero:hover { transform: none; }

/* Front Page Sections — production polish v3.37.0
   Uses the shared reference-admin theme tokens. Summary panels are intentionally
   static; only deliberate controls, links and template choices have hover states. */
.fsp-hero-card{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;border-color:var(--admin-border-strong);background:linear-gradient(118deg,var(--admin-surface-hover),var(--admin-surface) 58%)}
.fsp-hero-copy{min-width:0;max-width:840px}.fsp-hero-copy h2{margin:2px 0 5px}.fsp-hero-copy p{margin:0;color:var(--admin-text-muted);font-size:13px;line-height:1.55}.fsp-eyebrow,.fsp-filter-kicker{display:block;color:var(--admin-primary-strong);font-size:10px;font-weight:800;letter-spacing:.12em;line-height:1.2;text-transform:uppercase}.fsp-hero-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:7px;padding-top:2px}.fsp-overview-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:0 0 14px}.fsp-overview-card{display:grid;min-height:112px;align-content:start;gap:4px;padding:13px;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface);box-shadow:var(--admin-shadow-soft)}.fsp-overview-card>span{color:var(--admin-text-muted);font-size:11px;font-weight:600}.fsp-overview-card>b{color:var(--admin-text-strong);font-size:28px;font-weight:600;line-height:1}.fsp-overview-card>small{color:var(--admin-text-muted);font-size:11px;line-height:1.4}.fsp-create-card{margin-bottom:14px}.fsp-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin:0 0 13px}.fsp-section-heading h2{margin:2px 0 4px}.fsp-section-heading p{max-width:760px;margin:0;color:var(--admin-text-muted);font-size:12px}.fsp-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 13px}.fsp-template{display:grid;min-height:104px;align-content:start;gap:5px;padding:12px;border:1px solid var(--admin-border);border-radius:10px;background:var(--admin-surface);color:var(--admin-text);cursor:pointer;text-align:left;transition:border-color .16s ease,background .16s ease,box-shadow .16s ease}.fsp-template b{color:var(--admin-text-strong);font-size:12px;font-weight:700}.fsp-template span{color:var(--admin-text-muted);font-size:11px;font-weight:400;line-height:1.42}.fsp-template:hover{border-color:var(--admin-border-strong);background:var(--admin-surface-hover);box-shadow:var(--admin-card-hover-shadow)}.fsp-template.is-selected{border-color:var(--admin-primary);background:var(--admin-surface-hover);box-shadow:inset 3px 0 0 var(--admin-primary)}.fsp-add-form{padding-top:12px;border-top:1px solid var(--admin-border)}.fsp-add-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.fsp-add-grid>label:last-child{grid-column:span 2}.fsp-add-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:13px}.fsp-add-preview{display:block;min-width:0;color:var(--admin-text-muted);font-size:11px;line-height:1.4}.fsp-sync-card{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:16px;margin-bottom:14px}.fsp-sync-copy h2{margin:2px 0 4px}.fsp-sync-copy p{max-width:670px;margin:0;color:var(--admin-text-muted);font-size:12px}.fsp-sync-status{display:flex;gap:7px;flex-wrap:wrap}.fsp-sync-status>span{display:grid;min-width:116px;gap:1px;padding:7px 9px;border:1px solid var(--admin-border);border-radius:var(--radius-control);background:var(--admin-surface-muted);color:var(--admin-text-muted);font-size:10px;line-height:1.25}.fsp-sync-status b{color:var(--admin-text-strong);font-size:14px}.fsp-sync-status small{overflow:hidden;max-width:144px;text-overflow:ellipsis;white-space:nowrap}.fsp-sync-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}.fsp-sync-actions form{margin:0}.fsp-empty-state{display:grid;justify-items:start;gap:6px;min-height:200px;align-content:center;border-style:dashed;background:var(--admin-surface-muted)}.fsp-empty-state h2,.fsp-empty-state p{margin:0}.fsp-empty-state p{max-width:590px;color:var(--admin-text-muted);font-size:12px}.fsp-empty-state .btn{margin-top:5px}.fsp-empty-icon{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--admin-border-strong);border-radius:7px;background:var(--admin-surface-hover);color:var(--admin-primary);font-size:18px}.fsp-section-list{display:grid;gap:12px}.fsp-section-card{margin:0}.fsp-section-card.is-hidden{border-style:dashed;box-shadow:none}.fsp-section-card.is-hidden .fsp-card-header{background:var(--admin-surface-muted)}.fsp-card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:13px 14px;border-bottom:1px solid var(--admin-border);background:var(--admin-surface)}.fsp-card-heading{display:flex;min-width:0;gap:10px}.fsp-order{display:grid;place-items:center;width:28px;height:28px;flex:0 0 28px;margin-top:1px;border:1px solid var(--admin-border);border-radius:7px;background:var(--admin-surface-muted);color:var(--admin-primary-strong);font-size:11px;font-weight:800}.fsp-card-heading>div{min-width:0}.fsp-card-title{display:flex;align-items:center;min-width:0;gap:6px}.fsp-card-title>span{flex:0 0 auto;font-size:16px}.fsp-card-title h2{overflow:hidden;margin:0;color:var(--admin-text-strong);font-size:15px;font-weight:700;line-height:1.3;text-overflow:ellipsis;white-space:nowrap}.fsp-card-heading p{display:flex;align-items:center;gap:5px;flex-wrap:wrap;margin:5px 0 0}.fsp-type-badge,.fsp-status,.fsp-match-count{display:inline-flex;align-items:center;min-height:20px;padding:3px 6px;border:1px solid var(--admin-border);border-radius:999px;background:var(--admin-surface-muted);color:var(--admin-text-muted);font-size:10px;font-weight:600;line-height:1.1}.fsp-type-badge{border-color:var(--admin-border-strong);color:var(--admin-primary-strong);background:var(--admin-surface-hover)}.fsp-status{border-color:var(--admin-success-border);background:var(--admin-success-bg);color:var(--admin-success)}.fsp-status.is-hidden{border-color:var(--admin-border);background:var(--admin-surface-muted);color:var(--admin-text-muted)}.fsp-match-count{font-weight:500}.fsp-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.fsp-active-check{padding:7px 8px;border:1px solid var(--admin-border);border-radius:var(--radius-control);background:var(--admin-surface-muted)}.fsp-card-body{padding:13px}.fsp-main-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin:0!important}.fsp-main-grid .fsp-more-url{grid-column:span 2}.fsp-more-preview{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:11px 0 13px;padding:8px 10px;border:1px solid var(--admin-border);border-radius:var(--radius-control);background:var(--admin-surface-muted)}.fsp-more-preview>span{color:var(--admin-text-muted);font-size:11px;font-weight:600}.fsp-more-preview a{display:inline-flex;min-width:0;gap:4px;align-items:center;overflow:hidden;color:var(--admin-primary-strong);font-size:11px;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.fsp-more-preview a:hover{color:var(--admin-primary-hover);text-decoration:underline}.fsp-more-preview i{font-style:normal}.fsp-mode-note,.fsp-curated-deferred{display:flex;align-items:flex-start;gap:8px;margin:0 0 12px;padding:10px;border:1px solid var(--admin-info-border);border-radius:var(--radius-control);background:var(--admin-info-bg);color:var(--admin-text);font-size:11px;line-height:1.45}.fsp-mode-note b,.fsp-curated-deferred b{color:var(--admin-text-strong);white-space:nowrap}.fsp-filter-grid{margin:0!important;padding:12px}.fsp-filter-grid .dynamic-filter-heading{margin-bottom:12px}.fsp-filter-kicker{margin-bottom:3px;font-size:9px}.fsp-filter-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.fsp-filter-fields .check-label{grid-column:span 2}.fsp-curated-panel{margin:12px 0 0}.fsp-curated-panel summary{display:flex;justify-content:space-between;gap:10px}.fsp-curated-empty{margin:0;padding:10px;border-top:1px solid var(--admin-border);color:var(--admin-text-muted);font-size:11px}.fsp-curated-add{margin:9px 10px 11px}.fsp-card-footer{display:flex;align-items:center;justify-content:space-between;gap:12px}.fsp-footer-note{display:flex;align-items:center;gap:7px;flex-wrap:wrap;color:var(--admin-text-muted);font-size:11px}.fsp-footer-note b{color:var(--admin-text-strong);font-weight:700}.fsp-footer-note span{padding-left:7px;border-left:1px solid var(--admin-border)}.fsp-footer-actions{display:flex;gap:5px;flex-wrap:wrap}.fsp-footer-actions form{margin:0}.fsp-section-card [hidden],.fsp-add-form [hidden]{display:none!important}

@media (max-width:1180px){.fsp-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-add-grid,.fsp-main-grid,.fsp-filter-fields{grid-template-columns:repeat(3,minmax(0,1fr))}.fsp-add-grid>label:last-child,.fsp-main-grid .fsp-more-url{grid-column:span 1}.fsp-sync-card{grid-template-columns:minmax(0,1fr) auto}.fsp-sync-actions{grid-column:1/-1;justify-content:flex-start}}
@media (max-width:880px){.fsp-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-add-grid,.fsp-main-grid,.fsp-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-filter-fields .check-label{grid-column:span 2}.fsp-card-header{display:block}.fsp-header-actions{justify-content:flex-start;margin-top:10px}}
@media (max-width:760px){.fsp-hero-card,.fsp-sync-card{display:block}.fsp-hero-actions,.fsp-sync-status,.fsp-sync-actions{justify-content:flex-start;margin-top:11px}.fsp-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.fsp-template-grid{grid-template-columns:1fr}.fsp-template{min-height:0}.fsp-add-footer,.fsp-card-footer{align-items:stretch;flex-direction:column}.fsp-add-footer .btn{width:100%}.fsp-card-header,.fsp-card-body{padding:11px}.fsp-header-actions{align-items:stretch}.fsp-header-actions .btn{flex:1 1 auto}.fsp-active-check{justify-content:center}.fsp-more-preview{align-items:flex-start;flex-direction:column}.fsp-footer-actions{display:grid;grid-template-columns:1fr 1fr}.fsp-footer-actions form:last-child{grid-column:1/-1}.fsp-footer-actions .btn{width:100%}}
@media (max-width:560px){.fsp-overview-grid,.fsp-add-grid,.fsp-main-grid,.fsp-filter-fields{grid-template-columns:1fr}.fsp-filter-fields .check-label{grid-column:auto}.fsp-card-title h2{font-size:14px}.fsp-card-heading p{gap:4px}.fsp-sync-status>span{min-width:0;flex:1}.fsp-footer-actions{grid-template-columns:1fr}.fsp-footer-actions form:last-child{grid-column:auto}.fsp-mode-note,.fsp-curated-deferred{display:grid}.fsp-mode-note b,.fsp-curated-deferred b{white-space:normal}}


/* Production admin cleanup: keep daily pages task-led, compact and free of
   persistent run-books. Critical blocking/error states retain their own notice
   classes and remain visible at the relevant action. */
.admin-page-actions { display:flex; flex-wrap:wrap; gap:8px; align-items:center; }
.admin-page-actions .btn { margin:0; }
.admin-clean-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:14px; }
.admin-clean-heading > div { min-width:0; }
.admin-clean-heading h2 { margin:0; }
.admin-status-line { margin:0; color:var(--admin-text-muted); font-size:13px; line-height:1.45; }
.admin-code-card textarea.code { min-height:320px; margin:0; }
.admin-danger-zone { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.admin-danger-zone form { margin:0; }
.admin-empty-copy { margin:0; color:var(--admin-text-muted); }
.admin-inline-facts { display:flex; flex-wrap:wrap; gap:8px 14px; margin:0; color:var(--admin-text-muted); font-size:13px; }
.admin-inline-facts b { color:var(--admin-text-strong); font-weight:600; }
.admin-utility-card > h2 { margin-bottom:14px; }
@media (max-width:760px) {
  .admin-clean-heading, .admin-danger-zone { align-items:flex-start; flex-direction:column; }
  .admin-page-actions { width:100%; }
  .admin-page-actions .btn { flex:1 1 auto; justify-content:center; }
}
