:root {
  --bg: oklch(0.13 0.012 260);
  --bg-2: oklch(0.10 0.015 260);
  --card: oklch(0.17 0.015 260);
  --card-2: oklch(0.20 0.018 260);
  --card-hover: oklch(0.22 0.02 260);
  --field: oklch(0.15 0.015 260);
  --field-focus: oklch(0.18 0.018 260);
  --line: oklch(0.98 0 0 / 0.07);
  --line-strong: oklch(0.98 0 0 / 0.14);
  --text: oklch(0.98 0 0);
  --text-dim: oklch(0.85 0.01 260);
  --muted: oklch(0.65 0.02 260);
  --red: oklch(0.58 0.22 27);
  --red-dark: oklch(0.50 0.21 27);
  --red-glow: oklch(0.58 0.22 27 / 0.25);
  --green: oklch(0.75 0.16 150);
  --green-bg: oklch(0.75 0.16 150 / 0.14);
  --amber: oklch(0.78 0.16 75);
  --amber-bg: oklch(0.78 0.16 75 / 0.14);
  --blue: oklch(0.68 0.15 250);
  --blue-bg: oklch(0.68 0.15 250 / 0.14);
  --purple: oklch(0.65 0.18 300);
  --purple-bg: oklch(0.65 0.18 300 / 0.14);
  --radius-sm: 6px;
  --radius: 10px;
  --radius-lg: 14px;
  --shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.25);
  --shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.4);
  --shadow-lg: 0 16px 40px -4px rgba(0, 0, 0, 0.55);
}

* { box-sizing: border-box; }

body {
  margin: 0;
  background: var(--bg);
  color: var(--text);
  font-family: "Figtree", system-ui, -apple-system, sans-serif;
  font-size: 14.5px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  min-height: 100vh;
}

/* Custom scrollbars */
::-webkit-scrollbar { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: var(--bg-2); }
::-webkit-scrollbar-thumb { background: oklch(0.3 0.02 260); border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: oklch(0.4 0.02 260); }

a { color: var(--text); text-decoration: none; transition: color 0.15s; }
a:hover { color: oklch(0.85 0.15 27); }

h1 { margin: 0; font-size: clamp(22px, 2.5vw, 28px); font-weight: 800; letter-spacing: -0.02em; }
h2 { margin: 0; font-size: 18px; font-weight: 700; letter-spacing: -0.01em; }

:focus-visible { outline: 2px solid var(--red); outline-offset: 2px; }
[hidden] { display: none !important; }

.muted { color: var(--muted); margin: 0; }
.small { font-size: 13px; }
.center { text-align: center; }
.nowrap { white-space: nowrap; }

/* Buttons */
.btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 9px 18px;
  border-radius: var(--radius-sm);
  border: 1px solid transparent;
  font: inherit;
  font-weight: 600;
  font-size: 14px;
  cursor: pointer;
  text-decoration: none;
  white-space: nowrap;
  color: #fff;
  transition: all 0.18s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: var(--shadow-sm);
}
.btn:active { transform: scale(0.98); }

.btn-red {
  background: var(--red);
  border-color: oklch(0.62 0.22 27);
}
.btn-red:hover {
  background: var(--red-dark);
  box-shadow: 0 4px 14px var(--red-glow);
  color: #fff;
}

.btn-ghost {
  background: var(--card-2);
  border-color: var(--line-strong);
  color: var(--text-dim);
}
.btn-ghost:hover {
  background: oklch(0.26 0.02 260);
  border-color: oklch(0.98 0 0 / 0.22);
  color: #fff;
}

.btn-gold {
  background: linear-gradient(135deg, #eab308 0%, #ca8a04 100%) !important;
  border-color: #facc15 !important;
  color: #0b0c10 !important;
  font-weight: 800 !important;
  box-shadow: 0 2px 10px rgba(234, 179, 8, 0.3) !important;
}
.btn-gold:hover {
  background: linear-gradient(135deg, #facc15 0%, #eab308 100%) !important;
  box-shadow: 0 4px 16px rgba(250, 204, 21, 0.45) !important;
  color: #000 !important;
}

.btn-act-approve {
  background: rgba(34, 197, 94, 0.15) !important;
  color: #4ade80 !important;
  border: 1px solid rgba(34, 197, 94, 0.4) !important;
  font-weight: 700 !important;
  font-size: 12px !important;
  padding: 5px 10px !important;
  border-radius: 6px !important;
  cursor: pointer;
  transition: all 0.15s ease;
}
.btn-act-approve:hover {
  background: #16a34a !important;
  color: #fff !important;
  border-color: #16a34a !important;
  box-shadow: 0 2px 10px rgba(22, 163, 74, 0.4) !important;
}

.btn-sm { padding: 6px 12px; font-size: 13px; border-radius: 6px; }
.btn-block { width: 100%; }
.btn[disabled] { opacity: 0.55; cursor: not-allowed; transform: none; box-shadow: none; }

.icon-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 6px;
  border: 1px solid var(--line);
  background: var(--card-2);
  color: var(--text-dim);
  cursor: pointer;
  font: inherit;
  font-weight: 700;
  flex: none;
  transition: all 0.15s;
}
.icon-btn:hover {
  background: oklch(0.28 0.02 260);
  color: #fff;
  border-color: var(--line-strong);
}
.icon-btn.danger { color: oklch(0.8 0.15 27); }
.icon-btn.danger:hover {
  background: oklch(0.35 0.14 27);
  border-color: oklch(0.6 0.18 27);
  color: #fff;
}

/* Auth / Giriş Ekranı */
.auth {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: radial-gradient(circle at 50% 20%, oklch(0.22 0.04 27 / 0.25), transparent 70%), var(--bg);
}
.auth-card {
  width: min(440px, 100%);
  background: var(--card);
  border-radius: var(--radius-lg);
  padding: 40px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  border: 1px solid var(--line-strong);
  box-shadow: var(--shadow-lg);
}
.auth-logo { height: 32px; width: auto; align-self: flex-start; margin-bottom: 4px; }
.auth-card h1 { font-size: 24px; }

.alert {
  padding: 12px 14px;
  border-radius: var(--radius-sm);
  background: oklch(0.3 0.1 27 / 0.7);
  border: 1px solid oklch(0.5 0.18 27);
  color: oklch(0.95 0.05 27);
  font-size: 13.5px;
  font-weight: 500;
}

label {
  display: flex;
  flex-direction: column;
  gap: 6px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-dim);
}

input, select, textarea {
  font: inherit;
  font-size: 14px;
  color: var(--text);
  background: var(--field);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  min-height: 40px;
  padding: 0 12px;
  transition: all 0.15s ease;
}
input:hover, select:hover, textarea:hover {
  border-color: oklch(0.98 0 0 / 0.22);
}
input:focus, select:focus, textarea:focus {
  border-color: var(--red);
  background: var(--field-focus);
  box-shadow: 0 0 0 3px var(--red-glow);
  outline: none;
}
textarea { padding: 10px 12px; line-height: 1.5; resize: vertical; }

select {
  cursor: pointer;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='rgba(255,255,255,0.6)' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  padding-right: 32px;
}

/* Header & Topbar */
.bar {
  position: sticky;
  top: 0;
  z-index: 100;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px 20px;
  padding: 10px clamp(16px, 3vw, 36px);
  background: oklch(0.11 0.015 260 / 0.85);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-bottom: 1px solid var(--line);
}
.bar-brand {
  display: flex;
  align-items: center;
  gap: 12px;
}
.bar-logo { height: 26px; width: auto; display: block; }
.bar-title {
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.08em;
  color: var(--muted);
  background: oklch(0.2 0.02 260);
  padding: 3px 8px;
  border-radius: 4px;
  border: 1px solid var(--line);
}

.bar-nav {
  display: flex;
  gap: 4px;
  margin-right: auto;
  background: oklch(0.14 0.015 260);
  padding: 3px;
  border-radius: 8px;
  border: 1px solid var(--line);
}
.bar-nav a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  padding: 7px 14px;
  border-radius: 6px;
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--text-dim);
  transition: all 0.15s;
}
.bar-nav a:hover {
  color: #fff;
  background: oklch(0.2 0.02 260);
}
.bar-nav a.is-on {
  background: var(--card-2);
  color: #fff;
  box-shadow: var(--shadow-sm);
  border: 1px solid var(--line-strong);
}

.bar-nav svg { width: 15px; height: 15px; opacity: 0.8; }
.bar-nav a.is-on svg { opacity: 1; color: var(--red); }

.badge-count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 18px;
  height: 18px;
  padding: 0 5px;
  border-radius: 999px;
  background: var(--red);
  color: #fff;
  font-size: 11px;
  font-weight: 800;
  line-height: 1;
}

.bar-user {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-dim);
  background: oklch(0.15 0.015 260);
  padding: 5px 12px;
  border-radius: 999px;
  border: 1px solid var(--line);
}
.dot-online {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--green);
  box-shadow: 0 0 8px var(--green);
}

/* Layout */
.main {
  padding: 20px clamp(16px, 3vw, 36px);
  display: flex;
  flex-direction: column;
  gap: 24px;
  min-width: 0;
  max-width: 100%;
  margin: 0;
  width: 100%;
}
.main.narrow { max-width: 760px; margin: 0 auto; }

.head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  gap: 16px;
  flex-wrap: wrap;
  padding-bottom: 4px;
}
.head h1 { font-size: 26px; }
.head p { margin-top: 4px; max-width: 70ch; font-size: 14px; }

.card {
  background: var(--card);
  border-radius: var(--radius);
  padding: 22px;
  border: 1px solid var(--line);
  box-shadow: var(--shadow-sm);
  transition: border-color 0.15s;
}
.card:hover { border-color: var(--line-strong); }

.form { display: flex; flex-direction: column; gap: 14px; }
.form-msg { font-size: 13.5px; font-weight: 500; }
.form-msg.is-ok, .ok { color: var(--green); }
.form-msg.is-error, .warn { color: var(--amber); }

/* Stats (KPI Widgetları) */
.stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 14px;
}
.stat {
  background: var(--card);
  border-radius: var(--radius);
  padding: 18px 20px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  text-decoration: none;
  border: 1px solid var(--line);
  box-shadow: var(--shadow-sm);
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  overflow: hidden;
}
.stat::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; height: 2px;
  background: transparent;
  transition: background 0.2s;
}
.stat:hover {
  transform: translateY(-2px);
  border-color: var(--line-strong);
  box-shadow: var(--shadow);
  color: #fff;
}
.stat:hover::before {
  background: var(--red);
}
.stat strong {
  font-size: 34px;
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: #fff;
}

/* Pills & Badges */
.pill {
  display: inline-flex;
  align-items: center;
  align-self: flex-start;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 700;
  background: oklch(0.25 0.02 260);
  border: 1px solid var(--line);
  color: var(--text-dim);
  white-space: nowrap;
}
.pill-red {
  background: oklch(0.3 0.12 27);
  border-color: oklch(0.5 0.2 27);
  color: #ff9999;
}
.pill-trial {
  background: var(--blue-bg);
  border-color: oklch(0.55 0.14 250);
  color: oklch(0.85 0.1 250);
}
.pill-order {
  background: oklch(0.3 0.14 27);
  border-color: oklch(0.55 0.2 27);
  color: #ffb3b3;
}
.pill-contact {
  background: var(--green-bg);
  border-color: oklch(0.55 0.14 150);
  color: oklch(0.85 0.12 150);
}

/* Filters */
.filters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  background: var(--card);
  padding: 12px 14px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
}
.filters select, .filters input[type=search] {
  min-height: 38px;
  font-size: 13.5px;
}
.filters input[type=search] { flex: 1 1 220px; }

/* Table */
.table-wrap {
  overflow-x: auto;
  background: var(--card);
  border-radius: var(--radius);
  border: 1px solid var(--line);
  box-shadow: var(--shadow-sm);
}
.table {
  width: 100%;
  border-collapse: collapse;
  min-width: 860px;
}
.table th {
  text-align: left;
  font-size: 11.5px;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--muted);
  padding: 14px 16px;
  background: oklch(0.14 0.015 260);
  border-bottom: 1px solid var(--line-strong);
  font-weight: 700;
}
.table td {
  padding: 13px 16px;
  border-top: 1px solid var(--line);
  vertical-align: middle;
  font-size: 13.5px;
  transition: background 0.15s;
}
.table tr:hover td {
  background: oklch(0.19 0.015 260);
}
.table .detail { max-width: 320px; line-height: 1.45; }
.table select {
  min-height: 32px;
  font-size: 12.5px;
  font-weight: 600;
  padding: 4px 26px 4px 10px;
  border-radius: 6px;
  background-color: var(--card-2);
}

.pager { display: flex; gap: 6px; flex-wrap: wrap; align-items: center; }
.pager a {
  padding: 6px 12px;
  border-radius: 6px;
  background: var(--card);
  border: 1px solid var(--line);
  text-decoration: none;
  font-size: 13px;
  font-weight: 600;
  color: var(--text-dim);
  transition: all 0.15s;
}
.pager a:hover {
  background: var(--card-2);
  color: #fff;
  border-color: var(--line-strong);
}
.pager a.is-on {
  background: var(--red);
  border-color: var(--red);
  color: #fff;
}

/* ========================================================
   İçerik & Vitrin Editörü - Premium Glassmorphism Tasarımı
   ======================================================== */

.content-view-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 20px;
  padding: 0 4px;
}
.content-view-title-group {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.content-view-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  width: fit-content;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 11.5px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  background: oklch(0.58 0.22 27 / 0.15);
  color: oklch(0.75 0.18 27);
  border: 1px solid oklch(0.58 0.22 27 / 0.3);
}
.content-view-title {
  font-size: clamp(22px, 3vw, 28px);
  font-weight: 800;
  letter-spacing: -0.02em;
  color: #fff;
  margin: 0;
}
.content-view-desc {
  font-size: 14px;
  color: var(--muted);
  margin: 0;
  max-width: 600px;
}
.content-view-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.content-preview-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

/* KPI Özeti */
.content-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 14px;
  margin-bottom: 24px;
}
.content-kpi-card {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 18px;
  border-radius: var(--radius);
  background: linear-gradient(135deg, oklch(0.14 0.015 260) 0%, oklch(0.11 0.012 260) 100%);
  border: 1px solid var(--line-strong);
  text-decoration: none;
  color: inherit;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.2);
}
.content-kpi-card:hover {
  transform: translateY(-2px);
  border-color: oklch(0.58 0.22 27 / 0.6);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.35), 0 0 16px var(--red-glow);
}
.kpi-icon-wrap {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  display: grid;
  place-items: center;
  font-size: 20px;
  flex: none;
  background: oklch(0.18 0.02 260);
  border: 1px solid var(--line-strong);
}
.kpi-hero { background: oklch(0.58 0.22 27 / 0.15); border-color: oklch(0.58 0.22 27 / 0.3); }
.kpi-plans { background: oklch(0.6 0.18 200 / 0.15); border-color: oklch(0.6 0.18 200 / 0.3); }
.kpi-rows { background: oklch(0.65 0.19 145 / 0.15); border-color: oklch(0.65 0.19 145 / 0.3); }
.kpi-faq { background: oklch(0.7 0.16 80 / 0.15); border-color: oklch(0.7 0.16 80 / 0.3); }
.kpi-body {
  display: flex;
  flex-direction: column;
  gap: 4px;
  min-width: 0;
  flex: 1;
}
.kpi-label {
  font-size: 11.5px;
  font-weight: 600;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.kpi-value-row {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}
.kpi-value {
  font-size: 22px;
  font-weight: 800;
  color: #fff;
  line-height: 1;
}
.kpi-pill {
  font-size: 11px;
  font-weight: 700;
  color: var(--text-dim);
  background: oklch(0.18 0.015 260);
  padding: 2px 7px;
  border-radius: 999px;
  border: 1px solid var(--line);
  white-space: nowrap;
}

/* Editör İki Sütunlu Düzen */
.editor-layout {
  display: grid;
  grid-template-columns: minmax(230px, 270px) minmax(0, 1fr);
  min-height: calc(100vh - 120px);
  padding-bottom: 84px;
  border-top: 1px solid var(--line-strong);
  background: oklch(0.10 0.012 260);
  border-radius: var(--radius);
  border: 1px solid var(--line-strong);
  overflow: hidden;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
.side {
  padding: 16px 12px;
  border-right: 1px solid var(--line-strong);
  display: flex;
  flex-direction: column;
  gap: 5px;
  background: oklch(0.12 0.015 260);
  position: sticky;
  top: 51px;
  align-self: start;
  max-height: calc(100vh - 51px);
  overflow-y: auto;
}
.side a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 14px;
  border-radius: var(--radius-sm);
  text-decoration: none;
  font-size: 13.5px;
  font-weight: 600;
  color: var(--text-dim);
  border: 1px solid transparent;
  transition: all 0.15s ease;
}
.side a .tab-left-wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.side a .tab-badge-pill {
  font-size: 10.5px;
  font-weight: 700;
  padding: 2px 7px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  color: var(--muted);
  border: 1px solid rgba(255, 255, 255, 0.08);
  flex: none;
}
.side a:hover {
  background: oklch(0.17 0.015 260);
  color: #fff;
  border-color: var(--line);
}
.side a.is-on {
  background: linear-gradient(90deg, oklch(0.20 0.03 27) 0%, oklch(0.16 0.02 260) 100%);
  color: #fff;
  border-color: oklch(0.58 0.22 27 / 0.5);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.25), inset 3px 0 0 oklch(0.58 0.22 27);
}
.side a.is-on .tab-badge-pill {
  background: oklch(0.58 0.22 27 / 0.2);
  color: oklch(0.85 0.12 27);
  border-color: oklch(0.58 0.22 27 / 0.4);
}

.grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 16px;
}
.field.wide { grid-column: 1 / -1; }
.field small { font-weight: 500; color: var(--muted); margin-top: 3px; }

/* Switch Toggle */
.field-check {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 16px;
  border-radius: var(--radius-sm);
  background: var(--field);
  border: 1px solid var(--line);
  cursor: pointer;
  font-size: 14.5px;
  color: #fff;
  min-height: 48px;
  transition: all 0.15s;
}
.field-check:hover {
  background: var(--card-2);
  border-color: var(--line-strong);
}
.field-check input { position: absolute; opacity: 0; width: 0; height: 0; }
.switch {
  width: 44px;
  height: 24px;
  border-radius: 999px;
  background: oklch(0.3 0.02 260);
  position: relative;
  flex: none;
  transition: background 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.switch::after {
  content: "";
  position: absolute;
  top: 3px; left: 3px;
  width: 18px; height: 18px;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,0.4);
  transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.field-check input:checked ~ .switch { background: var(--red); }
.field-check input:checked ~ .switch::after { transform: translateX(20px); }
.field-check input:focus-visible ~ .switch { outline: 2px solid var(--red); outline-offset: 2px; }

/* Liste ve Blok Başlıkları / Toolbar */
.block-toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 22px;
  margin-bottom: 14px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--line-strong);
}
.block-toolbar-left {
  display: flex;
  align-items: center;
  gap: 10px;
}
.block-toolbar-title {
  font-size: 16.5px;
  font-weight: 700;
  color: #fff;
  margin: 0;
}
.block-count-badge {
  font-size: 11.5px;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  background: oklch(0.18 0.015 260);
  color: var(--text-dim);
  border: 1px solid var(--line-strong);
}
.block-toolbar-right {
  display: flex;
  align-items: center;
  gap: 8px;
}

/* Akordeon Kart Yapısı (Collapsible Cards) */
.editor-item-card {
  border-radius: var(--radius);
  background: oklch(0.13 0.015 260);
  border: 1px solid var(--line-strong);
  margin-bottom: 12px;
  overflow: hidden;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.editor-item-card:hover {
  border-color: oklch(0.3 0.02 260);
}
.editor-item-card.is-expanded {
  border-color: oklch(0.58 0.22 27 / 0.5);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.35);
}
.editor-item-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 16px;
  background: oklch(0.15 0.015 260);
  cursor: pointer;
  user-select: none;
  transition: background 0.15s ease;
}
.editor-item-head:hover {
  background: oklch(0.18 0.02 260);
}
.editor-item-card.is-expanded .editor-item-head {
  background: oklch(0.17 0.02 260);
  border-bottom: 1px solid var(--line);
}
.editor-item-num {
  width: 26px;
  height: 26px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  background: oklch(0.22 0.015 260);
  color: var(--text-dim);
  font-size: 11.5px;
  font-weight: 800;
  flex: none;
}
.editor-item-thumb {
  width: 44px;
  height: 30px;
  border-radius: 4px;
  overflow: hidden;
  background: var(--field);
  border: 1px solid var(--line);
  display: grid;
  place-items: center;
  flex: none;
}
.editor-item-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.editor-item-thumb-placeholder {
  font-size: 14px;
  opacity: 0.6;
}
.editor-item-meta {
  display: flex;
  flex-direction: column;
  min-width: 0;
  flex: 1;
  gap: 2px;
}
.editor-item-title-row {
  display: flex;
  align-items: center;
  gap: 8px;
}
.editor-item-title {
  font-size: 14.5px;
  font-weight: 700;
  color: #fff;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.editor-item-badge {
  font-size: 10.5px;
  font-weight: 800;
  padding: 1px 6px;
  border-radius: 4px;
  background: oklch(0.58 0.22 27 / 0.2);
  color: oklch(0.85 0.12 27);
  border: 1px solid oklch(0.58 0.22 27 / 0.4);
}
.editor-item-sub {
  font-size: 12px;
  color: var(--muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.editor-item-actions {
  display: flex;
  align-items: center;
  gap: 5px;
  flex: none;
}
.editor-chevron {
  width: 26px;
  height: 26px;
  border-radius: 6px;
  display: grid;
  place-items: center;
  font-size: 11px;
  color: var(--muted);
  transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), color 0.15s;
}
.editor-item-card.is-expanded .editor-chevron {
  transform: rotate(180deg);
  color: #fff;
}
.editor-item-body {
  padding: 20px;
}
.editor-item-card.is-collapsed .editor-item-body {
  display: none;
}

/* Eski class uyumluluğu */
.item { padding: 0; overflow: hidden; border: 1px solid var(--line-strong); }
.item-head { display: flex; align-items: center; gap: 10px; padding: 12px 18px; background: oklch(0.15 0.015 260); border-bottom: 1px solid var(--line); }
.item .grid { padding: 20px; }
.num { width: 24px; height: 24px; border-radius: 50%; display: grid; place-items: center; background: var(--red); color: #fff; font-size: 11.5px; font-weight: 800; flex: none; }
.item-title { flex: 1; min-width: 0; font-weight: 700; font-size: 14.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.block-h { margin-top: 14px; font-size: 17px; }

/* Butonlar */
.add-btn {
  align-self: flex-start;
  padding: 10px 18px;
  border-radius: var(--radius-sm);
  border: 1px dashed oklch(0.98 0 0 / 0.25);
  background: oklch(0.15 0.015 260);
  color: var(--text-dim);
  font: inherit;
  font-weight: 600;
  font-size: 13.5px;
  cursor: pointer;
  transition: all 0.15s;
}
.add-btn:hover {
  border-color: var(--red);
  background: var(--card-2);
  color: #fff;
}
.add-btn.small { padding: 6px 12px; font-size: 12.5px; }

/* Sayfa Bölümleri Görsel Kartları (Sections switchboard) */
.section-cards-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px;
  margin-top: 10px;
}
.section-toggle-card {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 14px;
  padding: 18px;
  border-radius: var(--radius);
  background: oklch(0.14 0.015 260);
  border: 1px solid var(--line-strong);
  cursor: pointer;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.section-toggle-card:hover {
  background: oklch(0.16 0.018 260);
  border-color: var(--line-strong);
  transform: translateY(-2px);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.3);
}
.section-toggle-card.is-active {
  border-color: oklch(0.65 0.19 145 / 0.4);
  background: linear-gradient(135deg, oklch(0.16 0.02 145 / 0.25) 0%, oklch(0.13 0.015 260) 100%);
}
.section-card-top {
  display: flex;
  align-items: flex-start;
  gap: 12px;
}
.section-card-icon {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-size: 22px;
  background: oklch(0.18 0.02 260);
  border: 1px solid var(--line-strong);
  flex: none;
}
.section-card-info {
  display: flex;
  flex-direction: column;
  gap: 4px;
  flex: 1;
}
.section-card-name {
  font-size: 15px;
  font-weight: 700;
  color: #fff;
}
.section-card-desc {
  font-size: 12px;
  color: var(--muted);
  line-height: 1.4;
}
.section-card-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 12px;
  border-top: 1px solid var(--line);
}
.section-status-pill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-weight: 700;
  padding: 3px 9px;
  border-radius: 999px;
}
.section-status-pill.is-on {
  background: rgba(34, 197, 94, 0.15);
  color: #4ade80;
  border: 1px solid rgba(34, 197, 94, 0.3);
}
.section-status-pill.is-off {
  background: rgba(255, 255, 255, 0.06);
  color: var(--muted);
  border: 1px solid rgba(255, 255, 255, 0.1);
}

/* Yapım Afişleri Mini Görsel Grid (Sublist Grid) */
.sublist-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(130px, 1fr));
  gap: 12px;
  margin-top: 10px;
}
.sublist-poster-card {
  position: relative;
  display: flex;
  flex-direction: column;
  background: oklch(0.11 0.012 260);
  border: 1px solid var(--line-strong);
  border-radius: 8px;
  overflow: hidden;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
}
.sublist-poster-card:hover {
  border-color: oklch(0.58 0.22 27 / 0.6);
  transform: translateY(-2px);
  box-shadow: 0 4px 14px rgba(0, 0, 0, 0.4);
}
.poster-cover-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 2 / 3;
  background: oklch(0.08 0.01 260);
  cursor: pointer;
  overflow: hidden;
  display: grid;
  place-items: center;
}
.poster-cover-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.25s ease;
}
.sublist-poster-card:hover .poster-cover-wrap img {
  transform: scale(1.05);
}
.poster-cover-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  color: var(--muted);
  font-size: 11px;
  text-align: center;
  padding: 8px;
}
.poster-cover-overlay {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.65);
  backdrop-filter: blur(2px);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.2s ease;
  font-size: 11.5px;
  font-weight: 700;
  color: #fff;
  gap: 4px;
}
.poster-cover-wrap:hover .poster-cover-overlay {
  opacity: 1;
}
.poster-info-box {
  padding: 8px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  background: oklch(0.13 0.015 260);
}
.poster-info-box input {
  width: 100%;
  font-size: 12px;
  font-weight: 600;
  padding: 6px 8px;
  min-height: 30px;
  border-radius: 4px;
  background: oklch(0.09 0.01 260);
  border: 1px solid var(--line);
  color: #fff;
}
.poster-actions-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 4px;
}
.poster-btn-mini {
  width: 24px;
  height: 24px;
  display: grid;
  place-items: center;
  border-radius: 4px;
  background: oklch(0.18 0.015 260);
  border: 1px solid var(--line);
  color: var(--text-dim);
  font-size: 11px;
  cursor: pointer;
  transition: all 0.15s;
}
.poster-btn-mini:hover {
  background: oklch(0.24 0.02 260);
  color: #fff;
}
.poster-btn-mini.danger:hover {
  background: var(--red);
  color: #fff;
  border-color: var(--red);
}
.sublist-add-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  aspect-ratio: 2 / 3;
  border-radius: 8px;
  border: 2px dashed var(--line-strong);
  background: oklch(0.11 0.012 260 / 0.5);
  cursor: pointer;
  color: var(--muted);
  font-size: 12px;
  font-weight: 600;
  transition: all 0.2s;
  text-align: center;
  padding: 10px;
}
.sublist-add-card:hover {
  border-color: var(--red);
  color: #fff;
  background: oklch(0.58 0.22 27 / 0.1);
}

/* Görsel Seçici */
.img-row {
  display: flex;
  gap: 14px;
  align-items: stretch;
  flex-wrap: wrap;
  padding: 12px;
  border-radius: var(--radius);
  background: oklch(0.14 0.015 260);
  border: 1px dashed var(--line-strong);
  transition: all 0.15s;
}
.img-row.is-over {
  border-color: var(--red);
  background: oklch(0.2 0.04 27);
}
.img-thumb {
  width: 140px;
  aspect-ratio: 16 / 10;
  border-radius: 6px;
  overflow: hidden;
  background: var(--field);
  border: 1px solid var(--line);
  display: grid;
  place-items: center;
  cursor: pointer;
  flex: none;
  transition: all 0.15s;
}
.img-thumb:hover { border-color: var(--red); box-shadow: 0 0 10px var(--red-glow); }
.img-prev { width: 100%; height: 100%; object-fit: cover; }
.img-empty { font-size: 11.5px; color: var(--muted); font-weight: 600; }
.img-ctrl { flex: 1 1 240px; display: flex; flex-direction: column; gap: 8px; justify-content: center; }
.img-btns { display: flex; gap: 6px; flex-wrap: wrap; }

/* Medya Kütüphanesi */
.dropzone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  padding: 36px 20px;
  border-radius: var(--radius);
  border: 2px dashed oklch(0.98 0 0 / 0.18);
  background: var(--card);
  text-align: center;
  transition: all 0.2s;
}
.dropzone.is-over {
  border-color: var(--red);
  background: oklch(0.2 0.04 27);
}
.dropzone strong { font-size: 16px; color: #fff; }

.media-tools {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  background: var(--card);
  padding: 10px 14px;
  border-radius: var(--radius);
  border: 1px solid var(--line);
}
.media-tools input { flex: 1 1 220px; min-height: 36px; }

.media-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 14px;
}
.media-tile {
  background: var(--card);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  box-shadow: var(--shadow-sm);
  transition: all 0.18s cubic-bezier(0.16, 1, 0.3, 1);
}
.media-tile:hover {
  transform: translateY(-2px);
  border-color: var(--line-strong);
  box-shadow: var(--shadow);
}
.media-tile.pickable { cursor: pointer; }
.media-tile.pickable:hover, .media-tile.pickable:focus-visible {
  border-color: var(--red);
  outline: none;
  box-shadow: 0 0 16px var(--red-glow);
}
.media-thumb {
  aspect-ratio: 4 / 3;
  background: oklch(0.13 0.015 260);
  overflow: hidden;
}
.media-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.25s;
}
.media-tile:hover .media-thumb img { transform: scale(1.04); }
.media-meta { padding: 10px 12px; display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.media-name { font-size: 13px; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #fff; }
.media-actions { display: flex; gap: 6px; padding: 0 10px 10px; }
.media-actions .btn { flex: 1; }

dialog:not([open]),
.media-dlg:not([open]),
.dlg-customer-wide:not([open]) {
  display: none !important;
}

dialog, .media-dlg, .modal {
  width: min(960px, calc(100vw - 32px));
  max-height: calc(100vh - 48px);
  padding: 0 !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: var(--radius-lg) !important;
  background: var(--bg) !important;
  color: var(--text) !important;
  box-shadow: 0 24px 60px rgba(0, 0, 0, 0.85) !important;
  outline: none;
}
dialog::backdrop, .media-dlg::backdrop, .modal::backdrop {
  background: rgba(0, 0, 0, 0.75) !important;
  backdrop-filter: blur(8px);
}
.media-dlg-head {
  position: sticky;
  top: 0;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 14px 22px;
  background: var(--bg-2);
  border-bottom: 1px solid var(--line);
}
#media-pick-root, #media-root {
  padding: 22px;
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.sublist { display: flex; flex-direction: column; gap: 10px; }
.sub-row {
  display: grid;
  grid-template-columns: minmax(140px, 1fr) minmax(0, 2fr) auto;
  gap: 12px;
  align-items: end;
  padding: 12px;
  border-radius: var(--radius-sm);
  background: oklch(0.14 0.015 260);
  border: 1px solid var(--line);
}
.sub-row .field.wide { grid-column: auto; }
.sub-actions { display: flex; gap: 4px; }

/* Alt Sabit Kaydetme Çubuğu */
.savebar {
  position: fixed;
  left: 0; right: 0; bottom: 0;
  z-index: 90;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 14px;
  padding: 12px clamp(16px, 3vw, 36px);
  background: oklch(0.11 0.015 260 / 0.88);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border-top: 1px solid var(--line-strong);
  box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.4);
}
.savebar #ed-status {
  margin-right: auto;
  font-size: 13.5px;
  font-weight: 600;
  display: inline-flex;
  align-items: center;
  gap: 8px;
}
.kbd-hint {
  display: inline-block;
  padding: 2px 6px;
  font-family: inherit;
  font-size: 11px;
  font-weight: 700;
  color: var(--muted);
  background: var(--card-2);
  border: 1px solid var(--line-strong);
  border-radius: 4px;
}

/* Sistem Kontrolleri & Terminal Log Görünümü */
.syscheck { margin-top: 10px; }
.syscheck td:last-child { text-align: right; font-weight: 800; font-size: 13px; }
.syscheck .ok { color: var(--green); }
.syscheck .warn { color: var(--amber); }

.terminal-box {
  background: oklch(0.09 0.01 260);
  border-radius: var(--radius);
  border: 1px solid var(--line);
  overflow: hidden;
  margin-top: 12px;
}
.terminal-bar {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  background: oklch(0.12 0.015 260);
  border-bottom: 1px solid var(--line);
}
.terminal-dot { width: 10px; height: 10px; border-radius: 50%; }
.terminal-dot.red { background: #ff5f56; }
.terminal-dot.yellow { background: #ffbd2e; }
.terminal-dot.green { background: #27c93f; }
.terminal-title { font-size: 11px; font-weight: 600; color: var(--muted); margin-left: 6px; }

.errlog {
  margin: 0;
  padding: 14px;
  background: transparent;
  color: oklch(0.85 0.05 60);
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12px;
  line-height: 1.6;
  white-space: pre-wrap;
  word-break: break-word;
  max-height: 280px;
  overflow: auto;
}

@media (max-width: 760px) {
  .editor-layout {
    grid-template-columns: 1fr;
    border-radius: var(--radius-sm);
  }
  .content-kpi-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
  .content-kpi-card {
    padding: 12px 14px;
    gap: 10px;
  }
  .kpi-icon-wrap {
    width: 36px;
    height: 36px;
    font-size: 17px;
    border-radius: 9px;
  }
  .kpi-value { font-size: 18px; }
  .side {
    position: static;
    flex-direction: row;
    flex-wrap: nowrap;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    max-height: none;
    border-right: 0;
    border-bottom: 1px solid var(--line-strong);
    padding: 10px 8px;
    gap: 6px;
  }
  .side a {
    white-space: nowrap;
    flex: none;
    padding: 8px 12px;
    font-size: 12.5px;
  }
  .side a .tab-badge-pill { display: none; }
  .section-cards-grid {
    grid-template-columns: 1fr;
  }
  .sublist-grid {
    grid-template-columns: repeat(auto-fill, minmax(105px, 1fr));
    gap: 8px;
  }
  .sub-row { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
  .content-kpi-grid {
    grid-template-columns: 1fr;
  }
  .content-view-header {
    flex-direction: column;
    align-items: stretch;
  }
  .content-view-actions {
    justify-content: stretch;
  }
  .content-view-actions .btn {
    flex: 1;
    justify-content: center;
  }
}

/* Toggle Switch */
.toggle-switch {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 24px;
  flex: none;
  cursor: pointer;
}
.toggle-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
.toggle-slider {
  position: absolute;
  inset: 0;
  background-color: var(--line-strong);
  border-radius: 24px;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
}
.toggle-slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 3px;
  bottom: 3px;
  background-color: #fff;
  border-radius: 50%;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 1px 3px rgba(0,0,0,0.3);
}
.toggle-switch input:checked + .toggle-slider {
  background-color: var(--red);
}
.toggle-switch input:checked + .toggle-slider:before {
  transform: translateX(20px);
}

/* Channel Picker Styling */
.channel-picker-wrap label.ch-item-label {
  transition: background 0.15s ease, border-color 0.15s ease;
  user-select: none;
}
.channel-picker-wrap label.ch-item-label:hover {
  background: rgba(255, 255, 255, 0.06);
  border-color: var(--line-strong) !important;
}
.channel-picker-wrap input[type=checkbox] {
  width: 17px;
  height: 17px;
  accent-color: var(--red);
  cursor: pointer;
  flex: none;
}

/* Geniş 2 Sütunlu Müşteri ve Kanal Düzenleme Modal'ı */
.dlg-customer-wide:not([open]) {
  display: none !important;
}
.dlg-customer-wide {
  width: min(1180px, calc(100vw - 40px)) !important;
  max-width: 1200px !important;
  height: min(840px, calc(100vh - 48px));
  max-height: calc(100vh - 48px);
  padding: 0 !important;
  border: 1px solid var(--line-strong) !important;
  border-radius: var(--radius-lg) !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, 0.9) !important;
  overflow: hidden !important;
}
.dlg-customer-wide[open] {
  display: flex !important;
  flex-direction: column !important;
  position: fixed !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  z-index: 99999 !important;
}
.dlg-customer-wide::backdrop {
  background: rgba(0, 0, 0, 0.8) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
}
.customer-split-layout {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 0;
  flex: 1;
  min-height: 0;
  overflow: hidden;
  background: var(--bg);
}
@media (max-width: 900px) {
  .customer-split-layout {
    grid-template-columns: 1fr;
    overflow-y: auto;
  }
}

.cust-col-left {
  padding: 22px 24px;
  background: var(--bg-2);
  border-right: 1px solid var(--line);
  display: flex;
  flex-direction: column;
  gap: 12px;
  overflow-y: auto;
}
.cust-col-right {
  padding: 22px 26px;
  background: var(--bg);
  display: flex;
  flex-direction: column;
  min-height: 0;
  overflow: hidden;
}

.cust-section-title {
  margin: 0 0 10px 0;
  font-size: 14.5px;
  font-weight: 700;
  color: #fff;
  display: flex;
  align-items: center;
  gap: 6px;
}
.form-grid-2 {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
}

.channel-mgr-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 8px;
  flex-wrap: wrap;
}

.channel-search-bar {
  margin-bottom: 12px;
}
.channel-search-bar input {
  width: 100%;
  min-height: 40px;
  padding: 0 14px;
  background: var(--bg-2);
  border: 1px solid var(--line-strong);
  border-radius: var(--radius-sm);
  color: #fff;
  font-size: 13.5px;
}
.channel-search-bar input:focus {
  border-color: var(--red);
  outline: none;
}

#ch-picker-edit {
  flex: 1;
  min-height: 0;
  max-height: none !important;
  overflow-y: auto;
  background: oklch(0.12 0.015 260);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 10px;
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr)) !important;
  grid-auto-rows: max-content;
  gap: 8px !important;
  align-content: start;
}
#ch-picker-edit label.ch-item-label {
  background: oklch(0.15 0.015 260);
  border: 1px solid var(--line);
  border-radius: 6px;
  padding: 8px 12px !important;
  display: flex;
  align-items: center;
  gap: 10px;
}
#ch-picker-edit label.ch-item-label.is-checked {
  border-color: oklch(0.58 0.22 27 / 0.6) !important;
  background: oklch(0.2 0.04 27 / 0.35);
}

/* Maç Programı, Biletler ve Lisanslar Tablosu Özel Genişliği ve Stilleri */
.main.main-wide {
  max-width: 100% !important;
  width: 100% !important;
}

.table-matches {
  min-width: 1100px !important;
}
.table-matches td {
  padding: 10px 10px !important;
}
.table-matches th {
  padding: 12px 10px !important;
  white-space: nowrap;
}
/* ============================================================
   Player Lisans & Cihaz Yönetimi Dashboard Stilleri (Glassmorphism)
   ============================================================ */
.stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 14px;
  margin-top: 18px;
}

.stat-card {
  position: relative;
  overflow: hidden;
  background: linear-gradient(145deg, oklch(0.14 0.015 260) 0%, oklch(0.10 0.01 260) 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 16px 18px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  transition: transform 0.2s cubic-bezier(0.16, 1, 0.3, 1), border-color 0.2s, box-shadow 0.2s;
}

.stat-card:hover {
  transform: translateY(-2px);
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4);
}

.stat-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #38bdf8, #0ea5e9);
}

.stat-card.stat-total::before { background: linear-gradient(90deg, #38bdf8, #0284c7); }
.stat-card.stat-total .stat-num { color: #38bdf8; }

.stat-card.stat-success::before { background: linear-gradient(90deg, #4ade80, #16a34a); }
.stat-card.stat-success .stat-num { color: #4ade80; }

.stat-card.stat-purple::before { background: linear-gradient(90deg, #c084fc, #9333ea); }
.stat-card.stat-purple .stat-num { color: #c084fc; }

.stat-card.stat-info::before { background: linear-gradient(90deg, #60a5fa, #2563eb); }
.stat-card.stat-info .stat-num { color: #60a5fa; }

.stat-card.stat-danger::before { background: linear-gradient(90deg, #fb7185, #e11d48); }
.stat-card.stat-danger .stat-num { color: #fb7185; }

.stat-card.stat-dark::before { background: linear-gradient(90deg, #94a3b8, #64748b); }
.stat-card.stat-dark .stat-num { color: #cbd5e1; }

.stat-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.stat-icon {
  font-size: 18px;
  line-height: 1;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.4));
}

.stat-lbl {
  font-size: 12px;
  font-weight: 700;
  color: var(--text-dim);
  text-transform: uppercase;
  letter-spacing: 0.04em;
}

.stat-num {
  font-size: 30px;
  font-weight: 800;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  line-height: 1.1;
  margin: 4px 0 2px;
  letter-spacing: -0.02em;
}

.stat-sub {
  font-size: 11.5px;
  color: var(--muted);
  line-height: 1.3;
}

/* Filtre Segmented Tabs */
.tabs-sub {
  display: inline-flex;
  background: oklch(0.10 0.015 260);
  border: 1px solid var(--line);
  border-radius: 10px;
  padding: 4px;
  gap: 4px;
  flex-wrap: wrap;
}

.tab-sub {
  background: transparent;
  border: none;
  color: var(--text-dim);
  padding: 7px 14px;
  border-radius: 7px;
  font-size: 13px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s cubic-bezier(0.16, 1, 0.3, 1);
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.tab-sub:hover {
  color: #fff;
  background: oklch(0.16 0.015 260);
}

.tab-sub.is-active {
  background: oklch(0.58 0.22 27);
  color: #fff;
  box-shadow: 0 2px 8px oklch(0.58 0.22 27 / 0.4);
  font-weight: 700;
}

/* Cihaz Tablosu ve Detay Rozetleri */
#table-licenses th {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted);
  padding: 12px 14px;
  border-bottom: 1px solid var(--line-strong);
  background: oklch(0.12 0.015 260);
}

#table-licenses td {
  padding: 12px 14px;
  vertical-align: middle;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

#table-licenses tbody tr {
  transition: background 0.15s ease;
}

#table-licenses tbody tr:hover {
  background: rgba(255, 255, 255, 0.03);
}

.dev-mac-box {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.code-dev {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12.5px;
  font-weight: 700;
  letter-spacing: 0.04em;
  background: oklch(0.10 0.01 260);
  padding: 4px 8px;
  border-radius: 6px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  color: #f8fafc;
}

.copy-btn {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.12);
  cursor: pointer;
  color: #94a3b8;
  padding: 4px 7px;
  border-radius: 5px;
  font-size: 11px;
  transition: all 0.15s ease;
}

.copy-btn:hover {
  color: #fff;
  background: rgba(255, 255, 255, 0.15);
  border-color: rgba(255, 255, 255, 0.25);
}

.copy-btn.is-copied {
  background: rgba(34, 197, 94, 0.25) !important;
  color: #4ade80 !important;
  border-color: rgba(34, 197, 94, 0.5) !important;
}

/* Durum Rozetleri */
.badge-active {
  background: rgba(34, 197, 94, 0.15);
  color: #4ade80;
  border: 1px solid rgba(34, 197, 94, 0.35);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-shadow: 0 0 10px rgba(34, 197, 94, 0.15);
}

.badge-trial {
  background: rgba(59, 130, 246, 0.15);
  color: #60a5fa;
  border: 1px solid rgba(59, 130, 246, 0.35);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.badge-lifetime {
  background: rgba(168, 85, 247, 0.18);
  color: #c084fc;
  border: 1px solid rgba(168, 85, 247, 0.4);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  box-shadow: 0 0 12px rgba(168, 85, 247, 0.2);
}

.badge-expired {
  background: rgba(239, 68, 68, 0.15);
  color: #f87171;
  border: 1px solid rgba(239, 68, 68, 0.35);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.badge-banned {
  background: rgba(100, 116, 139, 0.25);
  color: #cbd5e1;
  border: 1px solid rgba(100, 116, 139, 0.45);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 700;
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.badge-whitelist {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: rgba(16, 185, 129, 0.15);
  color: #34d399;
  border: 1px solid rgba(16, 185, 129, 0.35);
  padding: 2px 7px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 700;
  margin-top: 4px;
}

.badge-external {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: rgba(148, 163, 184, 0.12);
  color: #94a3b8;
  border: 1px solid rgba(148, 163, 184, 0.25);
  padding: 2px 7px;
  border-radius: 4px;
  font-size: 11px;
  font-weight: 600;
  margin-top: 4px;
}

.pulse-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 8px #22c55e;
  animation: pulse-glow 1.8s infinite;
}

@keyframes pulse-glow {
  0% { transform: scale(0.95); opacity: 0.7; }
  50% { transform: scale(1.2); opacity: 1; box-shadow: 0 0 12px #22c55e; }
  100% { transform: scale(0.95); opacity: 0.7; }
}

/* Hızlı İşlem Buton Grubu */
.action-btn-group {
  display: flex;
  gap: 5px;
  justify-content: flex-end;
  align-items: center;
  flex-wrap: nowrap;
}

.btn-act-year {
  background: rgba(34, 197, 94, 0.14);
  color: #4ade80;
  border: 1px solid rgba(34, 197, 94, 0.35);
  padding: 5px 9px;
  border-radius: 5px;
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.btn-act-year:hover {
  background: #16a34a;
  color: #fff;
  border-color: #16a34a;
  box-shadow: 0 2px 8px rgba(22, 163, 74, 0.4);
}

.btn-act-life {
  background: rgba(168, 85, 247, 0.14);
  color: #c084fc;
  border: 1px solid rgba(168, 85, 247, 0.35);
  padding: 5px 9px;
  border-radius: 5px;
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.btn-act-life:hover {
  background: #9333ea;
  color: #fff;
  border-color: #9333ea;
  box-shadow: 0 2px 8px rgba(147, 51, 234, 0.4);
}

.btn-act-trial {
  background: rgba(59, 130, 246, 0.14);
  color: #60a5fa;
  border: 1px solid rgba(59, 130, 246, 0.35);
  padding: 5px 9px;
  border-radius: 5px;
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.btn-act-trial:hover {
  background: #2563eb;
  color: #fff;
  border-color: #2563eb;
  box-shadow: 0 2px 8px rgba(37, 99, 235, 0.4);
}

.btn-act-expire {
  background: rgba(245, 158, 11, 0.14);
  color: #fbbf24;
  border: 1px solid rgba(245, 158, 11, 0.35);
  padding: 5px 9px;
  border-radius: 5px;
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.btn-act-expire:hover {
  background: #d97706;
  color: #fff;
  border-color: #d97706;
  box-shadow: 0 2px 8px rgba(217, 119, 6, 0.4);
}

.btn-act-ban {
  background: rgba(239, 68, 68, 0.12);
  color: #f87171;
  border: 1px solid rgba(239, 68, 68, 0.3);
  padding: 5px 9px;
  border-radius: 5px;
  font-size: 11.5px;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}
.btn-act-ban:hover {
  background: #dc2626;
  color: #fff;
  border-color: #dc2626;
  box-shadow: 0 2px 8px rgba(220, 38, 38, 0.4);
}

.btn-act-edit {
  background: oklch(0.18 0.015 260);
  color: #e2e8f0;
  border: 1px solid var(--line-strong);
  padding: 5px 9px;
  border-radius: 5px;
  font-size: 12px;
  cursor: pointer;
  transition: all 0.15s ease;
}
.btn-act-edit:hover {
  background: oklch(0.24 0.015 260);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.3);
}

.btn-act-del {
  background: transparent;
  border: none;
  color: #64748b;
  cursor: pointer;
  padding: 5px 8px;
  font-size: 14px;
  border-radius: 5px;
  transition: all 0.15s ease;
}
.btn-act-del:hover {
  color: #f87171;
  background: rgba(239, 68, 68, 0.12);
}

/* ============================================================
   Player Reklam, Tanıtım ve Logo Yönetimi Dashboard Stilleri (AdBlocker Immune)
   ============================================================ */

.promo-panel-grid {
  display: grid !important;
  grid-template-columns: minmax(0, 1.4fr) minmax(360px, 1fr) !important;
  gap: 24px;
  align-items: start;
  visibility: visible !important;
  opacity: 1 !important;
}

@media (max-width: 1100px) {
  .promo-panel-grid {
    grid-template-columns: 1fr !important;
  }
}

.promo-settings-col {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px;
  visibility: visible !important;
  opacity: 1 !important;
  min-width: 0;
}

/* Tanıtım / Reklam Kartları */
.promo-box {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  position: relative;
  background: linear-gradient(145deg, oklch(0.14 0.015 260) 0%, oklch(0.10 0.01 260) 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  overflow: hidden;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.25);
  padding: 0;
}

.promo-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  transition: all 0.25s ease;
}

.promo-box-preroll::before { background: linear-gradient(90deg, #f59e0b, #d97706); }
.promo-box-watermark::before { background: linear-gradient(90deg, #38bdf8, #0284c7); }
.promo-box-banner::before { background: linear-gradient(90deg, #4ade80, #16a34a); }

.promo-box.is-enabled {
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.4);
}

.promo-box-preroll.is-enabled { border-color: rgba(245, 158, 11, 0.45); }
.promo-box-watermark.is-enabled { border-color: rgba(56, 189, 248, 0.45); }
.promo-box-banner.is-enabled { border-color: rgba(74, 222, 128, 0.45); }

.promo-box-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: oklch(0.12 0.015 260);
  border-bottom: 1px solid var(--line);
  gap: 12px;
}

.promo-box-icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex: none;
}

.promo-status-badge {
  font-size: 10px;
  font-weight: 800;
  letter-spacing: 0.05em;
  padding: 2px 7px;
  border-radius: 4px;
  background: rgba(100, 116, 139, 0.2);
  color: #94a3b8;
  border: 1px solid rgba(100, 116, 139, 0.4);
}

.is-enabled .promo-status-badge {
  background: rgba(34, 197, 94, 0.18);
  color: #4ade80;
  border-color: rgba(34, 197, 94, 0.4);
}

.promo-box-body {
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

/* Medya Yükleme & Önizleme Kartı */
.promo-thumb-card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  background: oklch(0.10 0.01 260);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 14px;
}

.promo-thumb-info {
  display: flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
}

.promo-thumb-wrap {
  width: 90px;
  height: 54px;
  border-radius: 6px;
  overflow: hidden;
  background: #000;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  border: 1px solid rgba(255, 255, 255, 0.1);
}

.promo-thumb-wrap.banner-aspect {
  width: 140px;
  height: 44px;
}

.promo-thumb-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.promo-thumb-meta {
  display: flex;
  flex-direction: column;
  gap: 2px;
  min-width: 0;
}

.promo-thumb-title {
  font-size: 12px;
  font-weight: 600;
  color: #f1f5f9;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-family: ui-monospace, monospace;
}

.btn-clear-media {
  background: rgba(239, 68, 68, 0.1);
  color: #f87171;
  border: 1px solid rgba(239, 68, 68, 0.25);
  font-size: 11px;
  font-weight: 600;
  padding: 5px 9px;
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.15s ease;
  flex: none;
}
.btn-clear-media:hover {
  background: rgba(239, 68, 68, 0.2);
  border-color: #ef4444;
}

/* Sürükle Bırak Alanı (Dropzone) */
.promo-dropzone {
  border: 2px dashed rgba(255, 255, 255, 0.15);
  background: rgba(255, 255, 255, 0.02);
  border-radius: 8px;
  padding: 14px 16px;
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.promo-dropzone:hover, .promo-dropzone.is-dragover {
  border-color: #4ade80;
  background: rgba(74, 222, 128, 0.06);
}
.promo-dropzone-icon {
  font-size: 24px;
  flex: none;
}
.promo-dropzone-text {
  font-size: 12.5px;
  color: var(--text-dim);
  display: flex;
  flex-direction: column;
  gap: 2px;
}
.promo-dropzone-text strong {
  color: #fff;
}

/* 4 Kadranlı Konum Seçici Butonları */
.pos-quad-picker {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 6px;
  margin-top: 8px;
}

.pos-quad-btn {
  background: oklch(0.11 0.01 260);
  border: 1px solid var(--line);
  color: var(--text-dim);
  font-size: 11.5px;
  font-weight: 600;
  padding: 6px 10px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.15s ease;
  text-align: center;
}

.pos-quad-btn:hover {
  background: oklch(0.16 0.015 260);
  color: #fff;
  border-color: rgba(255, 255, 255, 0.2);
}

.pos-quad-btn.is-active {
  background: rgba(56, 189, 248, 0.18);
  border-color: #38bdf8;
  color: #38bdf8;
  font-weight: 700;
  box-shadow: 0 0 10px rgba(56, 189, 248, 0.2);
}

/* Hızlı Kanal Etiketi Hapları */
.promo-preset-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  margin-top: 6px;
}

.promo-tag-btn {
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 255, 255, 0.1);
  color: #94a3b8;
  font-size: 11px;
  padding: 3px 8px;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.15s ease;
}

.promo-tag-btn:hover {
  background: rgba(255, 255, 255, 0.12);
  color: #fff;
}

/* SAĞ SÜTUN: SIMULATOR */
.promo-preview-col {
  position: sticky;
  top: 70px;
  min-width: 0;
  display: block !important;
  visibility: visible !important;
}

.promo-sim-card {
  padding: 16px;
  background: linear-gradient(145deg, oklch(0.13 0.015 260) 0%, oklch(0.09 0.01 260) 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.35);
}

.promo-sim-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 14px;
}

.promo-sim-tabs {
  display: inline-flex;
  background: oklch(0.10 0.01 260);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 3px;
  gap: 3px;
}

.promo-sim-tab {
  background: transparent;
  border: none;
  color: var(--text-dim);
  font-size: 11.5px;
  font-weight: 600;
  padding: 5px 10px;
  border-radius: 6px;
  cursor: pointer;
  transition: all 0.15s ease;
}

.promo-sim-tab.is-active {
  background: oklch(0.58 0.22 27);
  color: #fff;
  font-weight: 700;
}

/* TV Mockup Frame (16:9) */
.tv-mockup-frame {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #050508;
  border-radius: 10px;
  overflow: hidden;
  border: 2px solid #272733;
  box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.8), 0 10px 30px rgba(0, 0, 0, 0.6);
}

.tv-broadcast-bg {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at center, #1b2838 0%, #0d1117 70%, #050608 100%);
  display: flex;
  align-items: center;
  justify-content: center;
}

.tv-channel-tag {
  position: absolute;
  top: 10px;
  left: 12px;
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(0, 0, 0, 0.6);
  backdrop-filter: blur(4px);
  padding: 3px 8px;
  border-radius: 4px;
  font-size: 10px;
  font-weight: 700;
  color: #f1f5f9;
  letter-spacing: 0.05em;
  z-index: 5;
}

.tv-rec-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #ef4444;
  animation: pulse-glow 1.5s infinite;
}

.tv-center-placeholder {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  user-select: none;
  pointer-events: none;
}

/* Simüle Watermark */
.sim-watermark {
  position: absolute;
  z-index: 10;
  pointer-events: none;
  transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1);
  max-width: 70px;
  max-height: 40px;
}

.sim-watermark img {
  max-width: 70px;
  max-height: 40px;
  object-fit: contain;
  display: block;
}

.sim-watermark.pos-top-right { top: 12px; right: 12px; }
.sim-watermark.pos-top-left { top: 12px; left: 12px; }
.sim-watermark.pos-bottom-right { bottom: 12px; right: 12px; }
.sim-watermark.pos-bottom-left { bottom: 12px; left: 12px; }

/* Simüle Alt Bant Banner */
.sim-bottombar-wrap {
  position: absolute;
  bottom: 8px;
  left: 8px;
  right: 8px;
  z-index: 15;
  display: flex;
  justify-content: center;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.sim-bottombar-content {
  position: relative;
  max-width: 90%;
  max-height: 45px;
  background: rgba(0, 0, 0, 0.85);
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.7);
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.sim-bottombar-content img {
  max-height: 45px;
  width: auto;
  display: block;
  object-fit: contain;
}

.sim-bottombar-close {
  position: absolute;
  top: 2px;
  right: 2px;
  background: rgba(0, 0, 0, 0.6);
  border: none;
  color: #fff;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  font-size: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

/* Simüle Pre-Roll Katmanı */
.tv-preroll-layer {
  position: absolute;
  inset: 0;
  background: #000;
  z-index: 20;
  display: flex;
  flex-direction: column;
}

.tv-preroll-top {
  position: absolute;
  top: 10px;
  left: 10px;
  display: flex;
  align-items: center;
  gap: 8px;
  z-index: 25;
}

.tv-preroll-badge {
  background: #eab308;
  color: #000;
  font-size: 9px;
  font-weight: 800;
  padding: 2px 6px;
  border-radius: 3px;
  letter-spacing: 0.05em;
}

.tv-preroll-timer {
  background: rgba(0, 0, 0, 0.75);
  color: #fff;
  font-size: 10px;
  padding: 2px 8px;
  border-radius: 3px;
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.tv-preroll-media-box {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #0b0c10;
}

.tv-preroll-media-box img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.tv-preroll-bottom {
  position: absolute;
  bottom: 12px;
  right: 12px;
  z-index: 25;
}

.tv-skip-btn {
  background: rgba(0, 0, 0, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.3);
  color: #fff;
  font-size: 11px;
  font-weight: 700;
  padding: 5px 10px;
  border-radius: 5px;
  cursor: pointer;
}

.promo-sim-tools {
  display: flex;
  gap: 8px;
  margin-top: 12px;
  justify-content: space-between;
}

.promo-sim-tools .btn {
  flex: 1;
  font-size: 11.5px;
  padding: 7px 10px;
  text-align: center;
  justify-content: center;
}

.promo-save-bar {
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

/* ============================================================
   Müşteriler & Web Player Yönetimi Dashboard Stilleri
   ============================================================ */

.cust-avatar {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: linear-gradient(135deg, oklch(0.58 0.22 27), #8b5cf6);
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.4);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.cust-user-box {
  display: flex;
  align-items: center;
  gap: 6px;
}

.btn-whatsapp {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(34, 197, 94, 0.12);
  color: #4ade80;
  border: 1px solid rgba(34, 197, 94, 0.3);
  padding: 3px 8px;
  border-radius: 5px;
  font-size: 12px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.15s ease;
  width: fit-content;
}

.btn-whatsapp:hover {
  background: #16a34a;
  color: #fff;
  border-color: #16a34a;
  box-shadow: 0 2px 8px rgba(22, 163, 74, 0.4);
}

.badge-channels-restricted {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(168, 85, 247, 0.15);
  color: #c084fc;
  border: 1px solid rgba(168, 85, 247, 0.35);
  padding: 4px 9px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.15s ease;
}

.badge-channels-restricted:hover {
  background: rgba(168, 85, 247, 0.28);
  border-color: #c084fc;
  box-shadow: 0 0 10px rgba(168, 85, 247, 0.25);
}

.badge-channels-all {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  background: rgba(148, 163, 184, 0.12);
  color: #94a3b8;
  border: 1px solid rgba(148, 163, 184, 0.25);
  padding: 4px 9px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 600;
}

.cust-status-select {
  background: oklch(0.12 0.01 260);
  color: #f1f5f9;
  border: 1px solid var(--line-strong);
  border-radius: 6px;
  padding: 5px 8px;
  font-size: 12px;
  font-weight: 600;
  cursor: pointer;
  transition: border-color 0.15s;
}

.cust-status-select:focus {
  border-color: var(--red);
  outline: none;
}

/* M3U Konsol Kartı */
.m3u-console-card {
  background: linear-gradient(145deg, oklch(0.13 0.015 260) 0%, oklch(0.09 0.01 260) 100%);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  padding: 18px 22px;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

.m3u-console-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 14px;
}

.m3u-status-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(34, 197, 94, 0.12);
  color: #4ade80;
  border: 1px solid rgba(34, 197, 94, 0.3);
  padding: 4px 10px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 700;
}

.m3u-console-form {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: center;
}

.m3u-input-wrap {
  flex: 1 1 360px;
  position: relative;
  display: flex;
  align-items: center;
  background: oklch(0.09 0.01 260);
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 0 12px;
  transition: border-color 0.2s, box-shadow 0.2s;
}

.m3u-input-wrap:focus-within {
  border-color: oklch(0.58 0.22 27);
  box-shadow: 0 0 0 3px oklch(0.58 0.22 27 / 0.25);
}

.m3u-input-icon {
  font-size: 14px;
  opacity: 0.6;
  margin-right: 8px;
}

.m3u-code-input {
  flex: 1;
  background: transparent;
  border: none;
  color: #38bdf8;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: 12.5px;
  padding: 10px 0;
  outline: none;
}

#table-customers th {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: var(--muted);
  padding: 12px 14px;
  border-bottom: 1px solid var(--line-strong);
  background: oklch(0.12 0.015 260);
}

#table-customers td {
  padding: 12px 14px;
  vertical-align: middle;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

#table-customers tbody tr:hover {
  background: rgba(255, 255, 255, 0.03);
}




/* Hesap / Account Dashboard Grid */
.account-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 20px;
}
@media (max-width: 960px) {
  .account-grid {
    grid-template-columns: 1fr;
  }
}
.btn-toggle-pw:hover {
  color: #fff !important;
}

/* Sports operations: scoped to the match screen. */
.sports-toolbar{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:12px 0 16px}
.sports-toolbar label{display:flex;gap:6px;flex-direction:column;font-size:12px}
.sports-toolbar label:has(input[type=checkbox]){flex-direction:row;align-items:center}
.sports-toolbar input[type=date],.sports-toolbar select,.sports-mapping input,.sports-mapping select{background:#18181b;color:#e2e8f0;border:1px solid #3f3f46;border-radius:6px;padding:7px;max-width:100%}
.sports-message{min-height:24px;margin:10px 0;color:#86efac;white-space:pre-wrap}.sports-message.is-error,#sports-source-state .is-error{color:#fca5a5}
.sports-source-panel{padding:12px 16px;margin-bottom:14px}.sports-source-panel summary{cursor:pointer}.sports-source-row{display:flex;flex-direction:column;gap:5px;padding:10px 0;border-bottom:1px solid #333}
.sports-team{display:flex;align-items:center;gap:8px;margin:4px 0}.sports-team img{width:24px;height:24px;object-fit:contain}
.sports-mapping{display:flex;flex-direction:column;gap:6px;min-width:240px}.sports-mapping select{width:100%}.sports-score{font-weight:700;white-space:nowrap}
.sports-actions{display:flex;gap:5px}.sports-pagination{display:flex;justify-content:center;align-items:center;gap:15px;padding:16px}.sports-empty{text-align:center;padding:28px!important;color:#94a3b8}
@media(max-width:720px){.sports-toolbar{align-items:stretch}.sports-toolbar label{flex:1;min-width:140px}.sports-toolbar #sports-last-refresh{width:100%}.sports-pagination{gap:8px}}

/* Central catalog editor. */
#channel-catalog-editor .cc-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:12px 0}
#channel-catalog-editor .cc-toolbar input,#channel-catalog-editor .cc-toolbar select{background:#15151b;color:#eee;border:1px solid #383840;padding:9px;border-radius:7px}
#channel-catalog-editor #cc-import-form{display:flex;align-items:end;gap:16px;flex-wrap:wrap;margin:14px 0}
#channel-catalog-editor #cc-import-form label{display:flex;flex-direction:column;gap:6px;flex:1;min-width:230px}
#channel-catalog-editor #cc-preview{padding:14px;background:#282214;border-radius:8px}
#channel-catalog-editor #cc-message{min-height:25px;margin:14px 0;color:#a7f3d0}
#channel-catalog-editor #cc-message.is-error{color:#fca5a5}
#channel-catalog-editor #cc-rows td div{font-size:11px;color:#9ca3af;margin-top:5px}
#channel-catalog-editor .cc-pagination{justify-content:center}
#channel-catalog-editor #cc-edit{width:min(620px,95vw);padding:24px}
/* Shared media library and nested package administration. */
.pkg-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:12px;margin:18px 0}.pkg-card{border:1px solid var(--border,#444);border-radius:10px;padding:14px;overflow-wrap:anywhere}.pkg-card p{margin:8px 0}.pkg-card button{margin:8px 0 0}#package-editor .cc-toolbar{align-items:end;flex-wrap:wrap}#package-editor label{display:flex;flex-direction:column;gap:6px}#package-editor label:has(input[type=checkbox]){display:block}#package-editor select,#package-editor input:not([type=checkbox]){max-width:100%;padding:9px}#pkg-message.is-error{color:#f87171}
.pkg-counts{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.pkg-counts span{background:rgba(127,127,127,.12);padding:7px 10px;border-radius:8px;font-weight:600}#package-management .pkg-card>a{display:inline-block;margin:10px 8px 0 0}
/* Package management: deliberate hierarchy and compact, responsive forms. */
#package-management{max-width:1480px;margin:0 auto;padding-bottom:48px}
#package-management .pm-head{align-items:center;margin-bottom:28px;gap:24px}
#package-management .pm-head h1{font-size:32px;letter-spacing:-1px;margin:5px 0 8px}
#package-management .pm-eyebrow,#package-management .pm-step{font-size:10px;font-weight:750;letter-spacing:1.6px;color:var(--muted)}
#package-management .pm-eyebrow{color:var(--red)}
#package-management .pm-workspace{display:grid;gap:20px}
#package-management .pm-panel{background:var(--card);border:1px solid var(--line-strong);border-radius:16px;padding:24px;min-width:0;box-shadow:0 8px 28px #00000015}
#package-management .pm-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}
#package-management .pm-panel-head h2{font-size:19px;margin:5px 0 7px}
#package-management .pm-panel-head p{color:var(--muted);font-size:13px;margin:0;max-width:650px}
#package-management .pm-badge{display:inline-flex;border:1px solid var(--line-strong);border-radius:20px;padding:6px 11px;white-space:nowrap;color:var(--text-dim);font-size:11px}
#package-management .pm-editor-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
#package-management .pm-form{display:grid;grid-template-columns:1fr 1fr;gap:16px 12px;align-items:end}
#package-management #pkg-form>label:first-of-type{grid-column:1/-1}
#package-management label{font-size:12px;font-weight:600;color:var(--text-dim);display:flex;flex-direction:column;gap:8px;min-width:0}
#package-management input:not([type=checkbox]),#package-management select{width:100%;min-width:0;max-width:100%;height:44px;background:var(--field);border:1px solid var(--line-strong);border-radius:9px;padding:10px 12px;color:var(--text);font:inherit;font-size:13px;transition:border-color .15s,box-shadow .15s;color-scheme:dark}
#package-management input:not([type=checkbox]):focus,#package-management select:focus{border-color:var(--red);box-shadow:0 0 0 3px var(--red-glow);outline:none}
#package-management input:not([type=checkbox]):not(:focus):invalid{border-color:var(--line-strong);box-shadow:none}
#package-management label:has(input[type=checkbox]){display:flex;flex-direction:row;align-items:center;gap:10px;min-height:44px;font-size:12px;line-height:1.4;background:var(--field);border:1px solid var(--line);border-radius:9px;padding:10px 12px}
#package-management input[type=checkbox]{width:16px;height:16px;margin:0;flex-shrink:0;accent-color:var(--red)}
#package-management .btn{min-height:40px;justify-content:center;border-radius:8px;font-size:12px}
#package-management .pm-form>.btn{width:max-content;min-width:120px}
#package-management .pm-form>.btn:last-child{justify-self:end}
#package-management .pm-note{display:flex;flex-direction:column;gap:8px;padding:16px;margin-top:20px;border:1px solid var(--line);border-radius:10px;background:var(--field)}
#package-management .pm-note strong{font-size:13px;color:var(--text-dim)}
#package-management .pm-note span,#package-management .pm-footnote{font-size:12px;line-height:1.7;color:var(--muted)}
#package-management .pkg-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px;margin:0}
#package-management .pkg-grid>p{grid-column:1/-1;text-align:center;margin:0;padding:36px 20px;border:1px dashed var(--line-strong);border-radius:12px;background:var(--field);color:var(--muted);font-size:14px}
#package-management .pkg-card{background:var(--field);border:1px solid var(--line-strong);border-radius:12px;padding:20px}
#package-management .pkg-card>strong{font-size:19px;letter-spacing:-.3px}
#package-management .pkg-card>p{color:var(--muted);font-size:12px;line-height:1.6}
#package-management .pkg-counts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:18px 0}
#package-management .pkg-counts span{font-size:12px;text-align:center;border:1px solid var(--line);padding:10px 6px;background:var(--card);border-radius:8px}
#package-management .pm-series summary{cursor:pointer;font-weight:650;font-size:14px;padding:2px 0}
#package-management .pm-series details[open]>summary{margin-bottom:22px}
#package-management .cc-toolbar{display:flex;align-items:end;flex-wrap:wrap;gap:12px;margin:16px 0}
#package-management .cc-toolbar>input,#package-management .cc-toolbar>select{flex:1 1 200px;width:auto}
#package-management .pm-customer-form{display:grid;grid-template-columns:minmax(150px,240px) auto auto 1fr;align-items:end;gap:12px}
#package-management #pkg-policy-info{font-size:12px;color:var(--muted);align-self:center}
#package-management .pm-divider{height:1px;background:var(--line);margin:24px 0}
#package-management .pm-sub-form{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr;gap:16px 12px;align-items:end}
#package-management .pm-sub-form>.btn{width:max-content}
#package-management .pm-footnote{max-width:850px;margin:18px 0 0}
#package-management #pkg-message:empty{display:none}
#package-management #pkg-message:not(:empty){padding:12px 16px;border-radius:10px;background:var(--green-bg);color:var(--green);border:1px solid var(--line)}
#package-management #pkg-message.is-error:not(:empty){background:var(--amber-bg);color:var(--amber)}
@media(max-width:1000px){#package-management .pm-sub-form{grid-template-columns:repeat(2,minmax(0,1fr))}#package-management .pm-customer-form{grid-template-columns:1fr 1fr}#package-management #pkg-policy-info{grid-column:1/-1}}
@media(max-width:720px){#package-management .pm-head{align-items:flex-start;flex-direction:column;gap:14px}#package-management .pm-head h1{font-size:27px}#package-management .pm-editor-grid{grid-template-columns:1fr}#package-management .pm-panel{padding:18px}#package-management .pm-panel-head{align-items:flex-start;flex-direction:column}#package-management .pkg-grid{grid-template-columns:minmax(0,1fr)}#package-management .pm-form,#package-management .pm-sub-form,#package-management .pm-customer-form{grid-template-columns:minmax(0,1fr)}#package-management .pm-form>.btn,#package-management .pm-form>.btn:last-child{width:100%;justify-self:stretch}#package-management .pm-sub-form>.btn{width:100%}}

/* Provider sync is scoped to the content library. */
#xtream-sync{min-width:0;border-color:rgba(81,149,255,.3)}
#xtream-sync .xtream-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}
#xtream-sync h2{margin:6px 0 10px}#xtream-sync .xtream-eyebrow{font-size:10px;letter-spacing:1.5px;color:#93b9ff;font-weight:700}
#xtream-sync .xtream-badge{white-space:nowrap;padding:6px 10px;border-radius:20px;background:rgba(81,149,255,.12);color:#b6d0ff;font-size:11px}
#xtream-sync .xtream-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:14px 0}
#xtream-sync .xtream-toolbar select{max-width:100%;min-width:140px;width:auto;padding:10px;border:1px solid var(--border,#333);border-radius:8px;background:#161b27;color:#eee}
#xtream-sync progress{width:100%;height:8px;accent-color:#5b98ff}
#xtream-sync .xtream-table{overflow:auto;max-height:440px;margin-top:14px}#xtream-sync .xtream-table td{overflow-wrap:anywhere;max-width:420px}
#xtream-sync [hidden]{display:none!important}
@media(max-width:720px){#xtream-sync .xtream-heading{flex-direction:column;gap:4px}#xtream-sync .xtream-toolbar>*{max-width:100%}#xtream-sync .xtream-toolbar select{width:100%}}
/* Keep the existing top navigation inside narrow viewports. */
.bar-nav{max-width:100%;min-width:0;overflow-x:auto}.bar-nav a{white-space:nowrap;flex-shrink:0}
/* Compact package list; scrolling stays inside the table on small screens. */
#package-management .pm-table-wrap{overflow-x:auto;max-width:100%;border:1px solid var(--line);border-radius:10px}
#package-management .pm-package-table{width:100%;min-width:900px;border-collapse:collapse;margin:0}
#package-management .pm-package-table th{white-space:nowrap;text-align:left;font-size:12px;background:var(--field)}
#package-management .pm-package-table td{vertical-align:middle;font-size:12px;padding:12px;border-bottom:1px solid var(--line)}
#package-management .pm-package-table td:first-child{min-width:190px}
#package-management .pm-package-table small{display:block;color:var(--muted);margin-top:5px;font-size:11px;max-width:200px}
#package-management .pm-package-table details{margin-top:6px;color:var(--muted);max-width:260px}
#package-management .pm-package-table td:last-child{white-space:nowrap}
#package-management .pm-package-table td:last-child .btn{display:inline-flex;margin:2px 4px;min-height:32px}
#package-management #pkg-search{max-width:360px}
#package-management .pkg-dialog{width:min(960px,calc(100vw - 32px));max-width:calc(100vw - 32px);max-height:calc(100dvh - 32px);overflow:auto;padding:24px;background:var(--card);color:var(--text);border:1px solid var(--line-strong);border-radius:16px;box-shadow:0 24px 80px #0009}
#package-management .pkg-dialog::backdrop{background:#000a;backdrop-filter:blur(4px)}
#package-management .pkg-dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px}
#package-management .pkg-dialog-head h2{margin:0;font-size:20px}
#package-management .pkg-dialog .pm-panel{padding:0;border:0;box-shadow:none}
#package-management .pkg-dialog-message:not(:empty){padding:12px;margin-bottom:16px;border:1px solid var(--line);border-radius:8px;color:var(--green)}
#package-management .pkg-dialog-message.is-error{color:var(--amber)}
#package-management .pm-actions{margin:0}
body:has(#package-management dialog[open]){overflow:hidden}
@media(max-width:600px){#package-management .pkg-dialog{padding:16px}#package-management .pkg-dialog .pm-sub-form,#package-management .pkg-dialog .pm-customer-form,#package-management .pkg-dialog .pm-form{grid-template-columns:1fr}#package-management .pkg-dialog-head h2{font-size:17px}}
#package-management dialog.pkg-dialog{padding:24px!important}
#package-management .pkg-dialog .pm-panel-head{display:none}
@media(max-width:600px){#package-management dialog.pkg-dialog{padding:16px!important}}

.hero-language-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.hero-language-tabs+.muted{margin-bottom:16px;font-size:13px}
