:root {
  color-scheme: dark;
  --bg: #05070b;
  --panel: #0d1118;
  --panel-2: #111722;
  --border: #202b38;
  --text: #edf7fa;
  --muted: #9aabb5;
  --accent: #00dff6;
  --green: #39dc91;
  --red: #ff6674;
  --amber: #ffc760;
}

* { box-sizing: border-box; }
[hidden] { display: none !important; }
body {
  margin: 0;
  min-height: 100vh;
  background: radial-gradient(circle at 85% 0, #07303b 0, transparent 36%), var(--bg);
  color: var(--text);
  font: 14px/1.55 Inter, ui-sans-serif, system-ui, sans-serif;
}
button, input, select, textarea { font: inherit; }
.shell { width: min(1480px, calc(100% - 40px)); margin: 0 auto; padding: 42px 0 72px; }
.login-card, .panel, .stats article {
  border: 1px solid var(--border);
  background: rgba(13, 17, 24, .94);
  border-radius: 14px;
}
.login-card { width: min(420px, 100%); margin: 9vh auto; padding: 34px; }
.brand-mark {
  display: grid;
  width: 44px;
  height: 44px;
  place-items: center;
  border: 1px solid var(--accent);
  border-radius: 12px;
  color: var(--accent);
  font-weight: 800;
}
.eyebrow { margin: 22px 0 5px; color: var(--accent); font-size: 11px; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
h1, h2, p { margin-top: 0; }
h1 { margin-bottom: 8px; font-size: clamp(27px, 4vw, 40px); }
h2 { margin-bottom: 18px; font-size: 18px; }
.muted { color: var(--muted); }
form { display: grid; gap: 14px; }
label { display: grid; gap: 7px; color: #aebbc3; font-size: 12px; font-weight: 700; }
input, select, textarea {
  width: 100%;
  border: 1px solid var(--border);
  border-radius: 9px;
  background: #070a0f;
  color: var(--text);
  padding: 11px 12px;
  outline: none;
}
input:focus, select:focus, textarea:focus { border-color: var(--accent); }
button {
  border: 0;
  border-radius: 9px;
  padding: 11px 15px;
  background: var(--accent);
  color: #001014;
  font-weight: 800;
  cursor: pointer;
}
button.secondary { border: 1px solid var(--border); background: var(--panel-2); color: var(--text); }
button:hover { filter: brightness(1.08); }
.error { color: var(--red); }
.attention-item.positive { border-color: var(--green); background: rgba(57, 220, 145, .06); }
.topbar, .panel-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; }
.topbar { margin-bottom: 26px; }
.topbar .eyebrow { margin-top: 0; }
.dashboard-nav {
  position: sticky;
  top: 12px;
  z-index: 40;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 14px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 15px;
  background: rgba(7, 11, 17, .92);
  box-shadow: 0 16px 40px rgba(0, 0, 0, .28);
  backdrop-filter: blur(16px);
}
.dashboard-nav__button {
  display: grid;
  gap: 1px;
  min-width: 0;
  padding: 11px 13px;
  border: 1px solid transparent;
  background: transparent;
  color: var(--muted);
  text-align: left;
}
.dashboard-nav__button span { color: inherit; font-size: 13px; }
.dashboard-nav__button small { overflow: hidden; color: #657681; font-size: 10px; font-weight: 600; text-overflow: ellipsis; white-space: nowrap; }
.dashboard-nav__button:hover { border-color: var(--border); background: rgba(255,255,255,.025); filter: none; }
.dashboard-nav__button.active { border-color: rgba(0,223,246,.38); background: linear-gradient(135deg, rgba(0,223,246,.14), rgba(0,223,246,.04)); color: #e9fcff; }
.dashboard-nav__button.active small { color: #75a9b1; }
.dashboard-page { animation: dashboard-page-in .18s ease; }
@keyframes dashboard-page-in { from { opacity: .35; transform: translateY(4px); } to { opacity: 1; transform: none; } }
.stats { display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; margin-bottom: 12px; }
.stats article { padding: 18px; }
.stats span { display: block; color: var(--muted); font-size: 12px; }
.stats strong { display: block; margin-top: 6px; font-size: 25px; }
.grid { display: grid; grid-template-columns: 1.3fr .7fr; gap: 12px; }
.panel { padding: 23px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.created-key { display: grid; gap: 10px; margin-top: 18px; padding: 15px; border: 1px solid #216d59; border-radius: 10px; background: #08231d; }
.created-key code { overflow-wrap: anywhere; color: var(--green); }
.created-key textarea { min-height: 130px; color: var(--green); font-family: ui-monospace, monospace; resize: vertical; }
.created-key-actions { display: flex; gap: 8px; }
.checkbox-label { display: flex; flex-direction: row; align-items: center; gap: 9px; padding-bottom: 11px; }
.checkbox-label input { width: auto; }
.checkpoint-note { display: grid; gap: 5px; margin-top: 20px; padding: 13px; border: 1px solid var(--border); border-radius: 10px; color: var(--muted); }
.checkpoint-note strong { color: var(--text); }
.keys-panel { margin-top: 12px; }
.key-tools-grid { grid-template-columns: minmax(0, 1fr); }
.create-key-panel { max-width: 780px; }
.system-page { display: grid; gap: 12px; }
.system-intro-panel { background: linear-gradient(135deg, rgba(0,223,246,.07), rgba(13,17,24,.94)); }
.system-intro-panel .eyebrow { margin-top: 0; }
.system-page .free-settings-panel { max-width: 680px; }
.emergency-access-panel { margin-top: 12px; border-color: rgba(0, 223, 246, .32); }
.emergency-access-panel form { margin-top: 18px; }
.emergency-access-panel .notice { margin: 14px 0; }
.emergency-access-toggle { width: fit-content; }
.emergency-access-panel .badge.active { background: rgba(84, 214, 160, .12); }
.emergency-access-panel .badge.expired { background: rgba(255, 102, 116, .1); }
.action-log-panel { margin-top: 12px; }
.action-log-table { min-width: 700px; }
.analytics-panel { margin-bottom: 12px; }
.analytics-controls { display: flex; align-items: end; gap: 10px; }
.analytics-controls label { min-width: 150px; }
.analytics-controls select { padding: 8px 10px; }
.analytics-controls button { min-height: 38px; }
.analytics-stats {
  grid-template-columns: repeat(5, minmax(0, 1fr));
  margin: 20px 0 12px;
}
.analytics-stats article { background: #090e15; }
.analytics-subnav {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 18px;
  margin: 20px 0 4px;
  padding: 8px;
  border: 1px solid var(--border);
  border-radius: 12px;
  background: #080d13;
}
.analytics-subnav__tabs { display: flex; gap: 5px; }
.analytics-subnav__button { padding: 9px 12px; border: 1px solid transparent; background: transparent; color: var(--muted); font-size: 12px; }
.analytics-subnav__button.active { border-color: #29424c; background: #101b23; color: var(--accent); }
.analytics-filter { width: min(360px, 42vw); gap: 4px; font-size: 10px; }
.analytics-filter input { padding: 8px 10px; }
.analytics-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.analytics-card {
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 16px;
  background: #090e15;
}
.analytics-card h3 { margin: 0 0 12px; font-size: 15px; }
.analytics-card table { min-width: 520px; }
.analytics-card .table-wrap { max-height: 440px; overflow: auto; scrollbar-color: #29424c transparent; }
.analytics-card thead { position: sticky; top: 0; z-index: 2; background: #090e15; }
.analytics-wide { margin-top: 12px; }
.analytics-wide table { min-width: 900px; }
.analytics-wide .table-wrap { max-height: 540px; }
.revenue-panel { margin-bottom: 12px; }
.revenue-hero { display: grid; grid-template-columns: 1.15fr 1fr; gap: 22px; align-items: stretch; margin: 18px 0; padding: 24px; border: 1px solid rgba(0,226,248,.28); border-radius: 14px; background: linear-gradient(135deg,rgba(0,226,248,.09),rgba(9,14,21,.96) 58%); }
.revenue-hero > div:first-child { display: flex; flex-direction: column; justify-content: center; }
.revenue-hero-label { color: var(--muted); font-size: 11px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.revenue-hero > div > strong { display: block; margin: 7px 0 6px; color: #fff; font-size: clamp(25px,3vw,36px); line-height: 1.1; }
.revenue-hero small { color: var(--muted); }
.revenue-hero-split { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.revenue-hero-split article { padding: 16px; border: 1px solid var(--border); border-radius: 11px; background: rgba(4,9,14,.72); }
.revenue-hero-split span,.revenue-hero-split small { display: block; color: var(--muted); font-size: 11px; }
.revenue-hero-split strong { display: block; margin: 6px 0; font-size: 18px; }
.revenue-breakdown-heading h3,.revenue-breakdown-heading p { margin: 0; }
.revenue-breakdown-heading p { margin-top: 4px; color: var(--muted); font-size: 12px; }
.revenue-stats { grid-template-columns: repeat(2,minmax(0,1fr)); margin: 12px 0; }
.revenue-stats article { background: #090e15; }
.revenue-stats small { color: var(--muted); }
.revenue-forecast { display: grid; grid-template-columns: 1fr auto; gap: 24px; align-items: center; margin-bottom: 12px; padding: 20px 22px; }
.revenue-forecast h3, .revenue-forecast p, .cpm-form h3, .cpm-form p { margin: 0; }
.revenue-forecast p, .cpm-form p { margin-top: 6px; color: var(--muted); font-size: 12px; }
.forecast-main { display: block; margin-top: 6px; font-size: 24px; }
.forecast-range { min-width: 290px; padding-left: 22px; border-left: 1px solid var(--border); }
.forecast-range > span { display: block; color: var(--muted); font-size: 11px; }
.forecast-range strong { display: flex; gap: 9px; align-items: center; margin-top: 6px; font-size: 13px; }
.forecast-range i { color: var(--muted); font-style: normal; font-weight: 400; }
.cpm-form { display: grid; grid-template-columns: 1.5fr 1fr 1fr auto; gap: 12px; align-items: end; padding: 16px; border: 1px solid var(--border); border-radius: 12px; }
.income-log-card { margin-bottom: 12px; padding: 0; }
.revenue-details { padding: 0; overflow: hidden; }
.revenue-details > summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 17px 20px; cursor: pointer; list-style: none; }
.revenue-details > summary::-webkit-details-marker { display: none; }
.revenue-details > summary span,.revenue-details > summary strong,.revenue-details > summary small { display: block; }
.revenue-details > summary small { margin-top: 3px; color: var(--muted); font-size: 11px; font-weight: 400; }
.revenue-details > summary b { color: var(--accent); font-size: 11px; }
.revenue-details[open] > summary { border-bottom: 1px solid var(--border); }
.revenue-details-body { padding: 18px 20px 20px; }
.rate-details { margin-top: 12px; }
.income-log-form { display: grid; grid-template-columns: .8fr .8fr 1fr 1.2fr auto; gap: 12px; align-items: end; margin: 18px 0; }
.income-calibration { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-bottom: 16px; }
.income-calibration article { padding: 14px 16px; border: 1px solid var(--border); border-radius: 10px; background: #090e15; }
.income-calibration span, .income-calibration small { display: block; color: var(--muted); font-size: 12px; }
.income-calibration strong { display: block; margin: 5px 0; font-size: 19px; }
.sources-panel { margin-bottom: 12px; }
.source-form-row { grid-template-columns: .75fr 1fr 1.2fr; }
.source-table-wrap { margin-top: 20px; }
.source-table-wrap table { min-width: 1100px; }
.source-table-wrap td strong,
.source-table-wrap td small { display: block; }
.source-table-wrap td small { margin-top: 2px; color: var(--muted); }
.source-actions { display: flex; gap: 6px; }
.source-note { margin: 12px 0 0; font-size: 12px; }
.danger-panel { margin-top: 12px; border-color: rgba(255, 102, 116, .45); }
.danger-eyebrow { color: var(--red); }
.danger-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.danger-card {
  border: 1px solid rgba(255, 102, 116, .28);
  border-radius: 12px;
  padding: 18px;
  background: rgba(58, 12, 19, .2);
}
.danger-card h3 { margin: 0 0 8px; }
.danger-card p { min-height: 66px; color: #c9b2b6; }
.danger-card label { margin: 14px 0; }
.danger-card input:focus { border-color: var(--red); }
.danger-button {
  border: 1px solid rgba(255, 102, 116, .65);
  background: rgba(255, 102, 116, .12);
  color: var(--red);
}
.analytics-error-cell {
  min-width: 280px;
  max-width: 460px;
  white-space: normal;
  overflow-wrap: anywhere;
}
.key-search-row {
  display: grid;
  grid-template-columns: auto minmax(220px, 420px) 1fr;
  align-items: center;
  gap: 12px;
  margin: 18px 0 8px;
}
.key-search-row label { display: block; }
.key-search-row span { justify-self: end; font-size: 12px; }
.table-wrap { overflow-x: auto; }
table { width: 100%; border-collapse: collapse; min-width: 1120px; }
th, td { padding: 12px 10px; border-top: 1px solid var(--border); text-align: left; white-space: nowrap; }
th { color: var(--muted); font-size: 11px; text-transform: uppercase; }
tbody tr { transition: background .15s ease; }
tbody tr:hover { background: rgba(0,223,246,.035); }
td code { color: #b8eef4; }
.cell-label { display: grid; gap: 1px; }
.cell-label strong { color: #dce8ed; font-size: 12px; }
.cell-label small { color: #607783; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: 9px; }
.key-open {
  border: 0;
  padding: 0;
  background: transparent;
  color: #b8eef4;
  font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
  font-weight: 700;
  text-align: left;
}
.key-open:hover { color: var(--accent); text-decoration: underline; }
.badge { display: inline-block; padding: 3px 7px; border-radius: 999px; background: var(--panel-2); }
.badge.active { color: var(--green); }
.badge.revoked, .badge.expired { color: var(--red); }
td button { padding: 6px 9px; font-size: 11px; }
.risk-clear { color: var(--muted); font-size: 12px; }
.risk-details {
  width: 230px;
  border: 1px solid var(--border);
  border-radius: 9px;
  padding: 7px 9px;
  background: #090d13;
  white-space: normal;
}
.risk-details summary { cursor: pointer; font-size: 12px; font-weight: 800; }
.risk-high { border-color: rgba(255, 102, 116, .45); }
.risk-high summary { color: var(--red); }
.risk-medium { border-color: rgba(255, 199, 96, .45); }
.risk-medium summary, .risk-low summary { color: var(--amber); }
.risk-details ul { display: grid; gap: 10px; margin: 10px 0; padding: 0; list-style: none; }
.risk-details li { display: grid; gap: 2px; }
.risk-details li strong { color: var(--text); font-size: 11px; text-transform: capitalize; }
.risk-details li span, .risk-details li small { color: var(--muted); font-size: 10px; line-height: 1.4; }
.modal-open { overflow: hidden; }
.detail-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: grid;
  place-items: center;
  padding: 24px;
}
.detail-modal__backdrop {
  position: absolute;
  inset: 0;
  border: 0;
  border-radius: 0;
  background: rgba(1, 4, 8, .82);
  cursor: default;
}
.detail-modal__panel {
  position: relative;
  width: min(1120px, 100%);
  max-height: calc(100vh - 48px);
  overflow-y: auto;
  border: 1px solid var(--border);
  border-radius: 16px;
  padding: 26px;
  background: #0b1017;
  box-shadow: 0 28px 80px rgba(0, 0, 0, .55);
}
.detail-modal__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 20px;
}
.detail-modal__header .eyebrow { margin-top: 0; }
.detail-modal__header h2 { margin-bottom: 0; font-size: 24px; }
.detail-modal__close {
  width: 40px;
  height: 40px;
  padding: 0;
  font-size: 24px;
}
.detail-loading { padding: 30px 0; color: var(--muted); text-align: center; }
.detail-meta { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; color: var(--muted); }
.detail-meta code { margin-right: 4px; color: #b8eef4; overflow-wrap: anywhere; }
.detail-meta > span:not(.badge) {
  border: 1px solid var(--border);
  border-radius: 999px;
  padding: 3px 8px;
  background: var(--panel-2);
  color: #b8c6cd;
  font-size: 11px;
}
.detail-key-action {
  border: 1px solid rgba(255, 102, 116, .5) !important;
  background: rgba(255, 102, 116, .1) !important;
  color: var(--red) !important;
}
.detail-key-action[data-action="reactivate"] {
  border-color: rgba(57, 220, 145, .45) !important;
  background: rgba(57, 220, 145, .12) !important;
  color: #76ecb2 !important;
}
.detail-key-action:disabled { cursor: wait; opacity: .55; }
.detail-delete-action {
  border-color: rgba(255, 102, 116, .55) !important;
  background: rgba(255, 102, 116, .08) !important;
  color: var(--red) !important;
}
.detail-stats {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 10px;
  margin: 18px 0;
}
.detail-stats article {
  min-width: 0;
  border: 1px solid var(--border);
  border-radius: 11px;
  padding: 13px;
  background: var(--panel);
}
.detail-stats span { display: block; color: var(--muted); font-size: 11px; }
.detail-stats strong { display: block; margin-top: 5px; font-size: 17px; overflow-wrap: anywhere; }
.detail-stats article:nth-child(n+4) strong { font-size: 14px; line-height: 1.35; }
.detail-section {
  margin-top: 12px;
  border: 1px solid var(--border);
  border-radius: 12px;
  padding: 18px;
  background: rgba(14, 20, 29, .86);
}
.detail-section h3 { margin: 0 0 12px; font-size: 16px; }
.detail-section > p { margin-bottom: 0; color: var(--muted); }
.detail-section__heading { display: flex; align-items: baseline; justify-content: space-between; gap: 16px; }
.detail-section__heading p { margin: 0; color: #a9b8c0; font-size: 12px; }
.detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.warning-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 10px; }
.warning-card {
  border: 1px solid var(--border);
  border-radius: 10px;
  padding: 13px;
  background: #090d13;
}
.warning-card--high { border-color: rgba(255, 102, 116, .5); }
.warning-card--medium { border-color: rgba(255, 199, 96, .5); }
.warning-card__heading { display: flex; justify-content: space-between; gap: 10px; }
.warning-card__heading strong { text-transform: capitalize; }
.warning-card__heading span {
  color: var(--amber);
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
.warning-card--high .warning-card__heading span { color: var(--red); }
.warning-card p { margin: 8px 0 10px; color: #bcc8ce; font-size: 12px; }
.warning-card dl { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 8px; margin: 0; }
.warning-card dl div { min-width: 0; }
.warning-card dt { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.warning-card dd { margin: 2px 0 0; font-size: 10px; overflow-wrap: anywhere; }
.breakdown-list { display: grid; gap: 7px; }
.breakdown-list > div { display: flex; justify-content: space-between; gap: 12px; }
.breakdown-list span { color: #c3d0d6; overflow-wrap: anywhere; }
.breakdown-list strong { color: var(--accent); }
.detail-empty { margin: 0; color: var(--muted); font-size: 12px; }
.enforcement-section label { margin-top: 14px; color: #c4d0d6; }
.enforcement-section textarea {
  border-color: #2b3b49;
  background: #080c12;
  color: var(--text);
}
.enforcement-section textarea::placeholder { color: #74858f; }
.blocked-at { color: var(--red); font-size: 11px; font-weight: 800; }
.block-reason { margin: 12px 0 0 !important; color: #d6e0e4 !important; }
.enforcement-actions { display: flex; gap: 10px; margin-top: 14px; }
.enforcement-actions button { min-width: 160px; }
.action-history { display: grid; gap: 8px; }
.action-history article {
  display: grid;
  grid-template-columns: 72px minmax(145px, auto) 1fr;
  align-items: center;
  gap: 10px;
  border: 1px solid #1d2934;
  border-radius: 9px;
  padding: 10px;
  background: #090d13;
}
.action-history strong { color: #d5e0e5; font-size: 11px; }
.action-history p { margin: 0; color: #aebdc4; font-size: 11px; }
.action-badge {
  display: inline-block;
  border-radius: 999px;
  padding: 3px 7px;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
}
.action-block, .action-delete { background: rgba(255, 102, 116, .1); color: var(--red); }
.action-unblock { background: rgba(57, 220, 145, .1); color: var(--green); }
.detail-table-wrap { overflow-x: auto; }
.detail-table { min-width: 760px; }
.detail-table th, .detail-table td { padding: 9px 8px; font-size: 11px; }
@media (max-width: 760px) {
  .revenue-hero, .revenue-forecast, .cpm-form, .income-log-form, .income-calibration { grid-template-columns: 1fr; }
  .forecast-range { min-width: 0; padding: 15px 0 0; border-top: 1px solid var(--border); border-left: 0; }
  .stats { grid-template-columns: 1fr 1fr; }
  .analytics-panel .panel-head, .analytics-controls { display: grid; }
  .analytics-controls { grid-template-columns: 1fr 1fr; align-items: end; }
  .analytics-controls label { min-width: 0; }
  .analytics-grid { grid-template-columns: 1fr; }
  .dashboard-nav { position: static; grid-template-columns: 1fr 1fr; }
  .dashboard-nav__button:last-child { grid-column: 1 / -1; }
  .analytics-subnav { align-items: stretch; flex-direction: column; }
  .analytics-subnav__tabs { overflow-x: auto; }
  .analytics-subnav__button { white-space: nowrap; }
  .analytics-filter { width: 100%; }
  .source-form-row, .danger-grid { grid-template-columns: 1fr; }
  .grid { grid-template-columns: 1fr; }
  .form-row { grid-template-columns: 1fr; }
  .shell { padding-top: 28px; }
  .key-search-row { grid-template-columns: 1fr; }
  .key-search-row span { justify-self: start; }
  .detail-modal { align-items: start; padding: 8px; }
  .detail-modal__panel { max-height: calc(100vh - 16px); padding: 18px 14px; border-radius: 12px; }
  .detail-stats { grid-template-columns: 1fr 1fr; }
  .detail-grid, .warning-grid { grid-template-columns: 1fr; }
  .detail-section__heading { display: grid; gap: 3px; }
  .warning-card dl { grid-template-columns: 1fr; }
  .enforcement-actions { display: grid; }
  .enforcement-actions button, .detail-key-action, .detail-delete-action { width: 100%; }
  .action-history article { grid-template-columns: auto 1fr; }
  .action-history p { grid-column: 1 / -1; }
}
@media (max-width: 620px) {
  .revenue-hero-split, .revenue-stats { grid-template-columns: 1fr; }
  .forecast-range strong { align-items: flex-start; flex-direction: column; gap: 4px; }
}
/* Analytics V2 */
.analytics-meta{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin:12px 0;color:var(--muted,#8490a4);font-size:.82rem}.analytics-meta label{display:flex;align-items:center;gap:7px}.analytics-meta input{width:auto}.analytics-card--wide{grid-column:1/-1}.card-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px}.card-heading p{margin:4px 0 0;color:var(--muted,#8490a4);font-size:.86rem}.attention-panel{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:20px;margin:14px 0;border:1px solid rgba(255,174,66,.24);background:linear-gradient(135deg,rgba(255,174,66,.08),rgba(255,255,255,.015));border-radius:14px}.attention-panel h3,.attention-panel p{margin:0}.attention-list{display:grid;gap:8px}.attention-item{display:flex;justify-content:space-between;gap:16px;padding:10px 12px;border-left:3px solid #e4a853;background:rgba(0,0,0,.12);border-radius:7px}.attention-item.high{border-color:#ff646f}.attention-item span{color:var(--muted,#9aa4b5);font-size:.86rem}.metric-change{font-size:inherit}.metric-change.positive{color:#54d6a0}.metric-change.negative{color:#ff7a84}.trend-chart{min-height:270px;margin-top:16px}.trend-chart svg{display:block;width:100%;height:270px;overflow:visible}.chart-axis{stroke:rgba(255,255,255,.12);stroke-width:1}.chart-line{fill:none;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.chart-line--executions{stroke:#8b7dff}.chart-line--users{stroke:#54d6a0}.chart-line--errors{stroke:#ff6875}.chart-labels{fill:#7f8999;font-size:11px;text-anchor:middle}.chart-legend{display:flex;gap:15px;font-size:.78rem;color:var(--muted,#8490a4)}.chart-legend span:before{content:"";display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:6px}.legend-executions:before{background:#8b7dff}.legend-users:before{background:#54d6a0}.legend-errors:before{background:#ff6875}.metric-list{display:grid;gap:12px;margin-top:14px}.metric-row{display:grid;grid-template-columns:minmax(105px,1.2fr) minmax(70px,2fr) auto;align-items:center;gap:10px}.metric-row>div:first-child{display:flex;flex-direction:column}.metric-row span{font-size:.72rem;color:var(--muted,#8490a4)}.metric-bar{height:7px;background:rgba(255,255,255,.07);border-radius:99px;overflow:hidden}.metric-bar i{display:block;height:100%;min-width:2px;background:linear-gradient(90deg,#7566ee,#9e93ff);border-radius:inherit}.metric-row b{font-variant-numeric:tabular-nums}.funnel{display:grid;gap:8px;margin-top:18px}.funnel-step{display:grid;grid-template-columns:minmax(165px,1fr) minmax(160px,2.3fr) 80px minmax(190px,1fr);align-items:center;gap:14px;padding:10px 12px;background:rgba(255,255,255,.025);border-radius:9px}.funnel-step>div:first-child{display:flex;align-items:center;gap:10px}.funnel-step>div:first-child span{display:grid;place-items:center;width:24px;height:24px;border-radius:7px;background:rgba(139,125,255,.15);color:#b8afff;font-size:.75rem}.funnel-step b{text-align:right;font-size:1.15rem}.funnel-step small{color:var(--muted,#8490a4)}.funnel-bar{height:12px;background:rgba(255,255,255,.06);border-radius:99px;overflow:hidden}.funnel-bar i{display:block;height:100%;background:linear-gradient(90deg,#6f60e8,#9e93ff);border-radius:inherit}.analytics-error-cell strong,.analytics-error-cell small,td small{display:block}.analytics-error-cell small,td small{margin-top:3px;color:var(--muted,#8490a4);font-size:.72rem}.notice{padding:12px 14px;border-radius:9px;background:rgba(255,174,66,.1);border:1px solid rgba(255,174,66,.2);color:#efc47d}
@media(max-width:760px){.analytics-meta{align-items:flex-start;flex-wrap:wrap;justify-content:flex-start}.attention-panel{grid-template-columns:1fr}.attention-item{flex-direction:column}.card-heading{flex-direction:column}.funnel-step{grid-template-columns:1fr auto}.funnel-step .funnel-bar{grid-column:1/-1}.funnel-step small{grid-column:1/-1}.chart-legend{flex-wrap:wrap}}
.metric-footnote{margin:6px 0 0;padding-top:10px;border-top:1px solid rgba(255,255,255,.07);color:var(--muted,#8490a4);font-size:.78rem}.campaign-game{display:block;white-space:nowrap}.campaign-game small{display:inline;margin-left:4px}
.store-sync-state{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}.store-sync-pill{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid var(--border);border-radius:999px;background:rgba(255,255,255,.025);color:var(--muted);font-size:11px}.store-sync-pill strong{color:var(--text);text-transform:capitalize}.store-sync-pill.failed{border-color:rgba(255,102,116,.4);color:var(--red)}.store-sync-pill.running{border-color:rgba(255,199,96,.4);color:var(--amber)}.store-status-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;margin-top:14px}.store-status-grid article{padding:14px;border:1px solid var(--border);border-radius:10px;background:rgba(255,255,255,.025)}.store-status-grid span,.store-status-grid strong{display:block}.store-status-grid span{color:var(--muted);font-size:11px;text-transform:capitalize}.store-status-grid strong{margin-top:5px;font-size:22px}.store-panel td:nth-child(4){max-width:260px;overflow-wrap:anywhere}.store-panel .analytics-card{margin-top:16px}.store-subnav{margin-top:20px}@media(max-width:760px){.store-sync-state{display:grid}.store-sync-pill{border-radius:9px}.store-stats{grid-template-columns:1fr 1fr}}
.analytics-panel th,.sources-panel th{cursor:pointer}.analytics-panel th[data-sort-direction="asc"]:after,.sources-panel th[data-sort-direction="asc"]:after{content:" ↑"}.analytics-panel th[data-sort-direction="desc"]:after,.sources-panel th[data-sort-direction="desc"]:after{content:" ↓"}
