._icon_j0a06_1 {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  flex-shrink: 0;
  line-height: 0;
}
._navbar_1408f_1 {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 0 2rem;
  height: 56px;
  background: #0a0a0a;
  border-bottom: 1px solid #1a1a1a;
  position: sticky;
  top: 0;
  z-index: 100;
}

._brand_1408f_14 {
  display: flex;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  color: #fff;
  font-weight: 800;
  font-size: 1rem;
  margin-right: 1rem;
}

._brandText_1408f_25 { color: #fff; }
._brandAdmin_1408f_26 {
  font-size: 0.6rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: #6C5CE7;
  background: rgba(108, 92, 231, 0.1);
  padding: 2px 6px;
  border-radius: 3px;
}

._links_1408f_37 {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  flex: 1;
}

._link_1408f_37 {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 6px;
  font-size: 0.82rem;
  font-weight: 600;
  color: #888;
  text-decoration: none;
  transition: all 0.15s;
}

._link_1408f_37:hover { color: #fff; background: rgba(255, 255, 255, 0.04); }

._linkActive_1408f_59 {
  color: #fff;
  background: rgba(108, 92, 231, 0.1);
}

._linkLabel_1408f_65 {}

._right_1408f_67 {
  display: flex;
  align-items: center;
  gap: 1rem;
}

._user_1408f_73 {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.8rem;
  color: #888;
}

._logoutBtn_1408f_81 {
  display: flex;
  align-items: center;
  padding: 6px;
  background: none;
  border: none;
  color: #555;
  cursor: pointer;
  border-radius: 4px;
  transition: all 0.15s;
}

._logoutBtn_1408f_81:hover { color: #e74c3c; background: rgba(231, 76, 60, 0.08); }

@media (max-width: 700px) {
  ._navbar_1408f_1 { padding: 0 1rem; gap: 0.5rem; }
  ._linkLabel_1408f_65 { display: none; }
  ._brand_1408f_14 { margin-right: 0.5rem; }
  ._brandText_1408f_25 { display: none; }
  ._user_1408f_73 { display: none; }
}
._page_1pqcs_1 { min-height: 100vh; background: #050505; }
._main_1pqcs_2 { max-width: 1100px; margin: 0 auto; padding: 2rem; }
._pageTitle_1pqcs_3 { font-size: 1.5rem; font-weight: 800; color: #fff; margin-bottom: 1.5rem; }

._loading_1pqcs_5 { display: flex; align-items: center; gap: 12px; justify-content: center; padding: 4rem; color: #888; }
._spinner_1pqcs_6 { width: 20px; height: 20px; border: 2px solid #222; border-top: 2px solid #6C5CE7; border-radius: 50%; animation: _spin_1pqcs_6 0.8s linear infinite; }
@keyframes _spin_1pqcs_6 { to { transform: rotate(360deg); } }
._error_1pqcs_8 { text-align: center; padding: 4rem; color: #e74c3c; }

/* ── Stat cards ── */
._statGrid_1pqcs_11 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 2rem; }

._statCard_1pqcs_13 {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 1.25rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
}

._statIcon_1pqcs_23 { flex-shrink: 0; margin-top: 2px; }
._statContent_1pqcs_24 { flex: 1; }
._statLabel_1pqcs_25 { color: #888; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
._statValue_1pqcs_26 { color: #fff; font-size: 1.5rem; font-weight: 800; margin: 0; }
._statSub_1pqcs_27 { color: #555; font-size: 0.75rem; }

/* ── Sections ── */
._section_1pqcs_30 { margin-bottom: 2rem; }
._sectionHeader_1pqcs_31 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 1rem;
}
._sectionTitle_1pqcs_37 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
}

/* ── Abandonment rate chart ── */
._chartWrap_1pqcs_48 {
  display: flex;
  align-items: flex-end;
  gap: 3px;
  height: 160px;
  padding: 1rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
}

._bar_1pqcs_59 {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
  min-width: 0;
  position: relative;
}

._barSegExpired_1pqcs_70 {
  width: 100%;
  max-width: 24px;
  background: #f5b74a;
  border-radius: 0 0 3px 3px;
  min-height: 0;
  transition: height 0.3s;
}

._barSegFailed_1pqcs_79 {
  width: 100%;
  max-width: 24px;
  background: #e74c3c;
  border-radius: 3px 3px 0 0;
  min-height: 0;
  transition: height 0.3s;
}

._barLabel_1pqcs_88 {
  font-size: 0.55rem;
  color: #555;
  margin-top: 6px;
  white-space: nowrap;
}

._chartLegend_1pqcs_95 {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  padding: 0.75rem 1rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 8px;
  margin-top: 0.75rem;
}

._legendItem_1pqcs_106 {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.75rem;
  color: #888;
}

._legendDot_1pqcs_114 {
  width: 10px;
  height: 10px;
  border-radius: 3px;
  flex-shrink: 0;
}

/* ── Funnel card ── */
._funnelCard_1pqcs_122 {
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
  padding: 1.5rem;
}

._funnelRow_1pqcs_129 {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 0.75rem 0;
}

._funnelRow_1pqcs_129:not(:last-child) { border-bottom: 1px solid #1a1a1a; }

._funnelLabel_1pqcs_138 { flex: 1; color: #ccc; font-size: 0.85rem; font-weight: 600; }
._funnelValue_1pqcs_139 { color: #fff; font-size: 1.1rem; font-weight: 800; min-width: 60px; text-align: right; }

._funnelBar_1pqcs_141 {
  flex: 2;
  height: 8px;
  background: #1a1a1a;
  border-radius: 4px;
  overflow: hidden;
}

._funnelBarFill_1pqcs_149 {
  height: 100%;
  border-radius: 4px;
  transition: width 0.4s;
}

/* ── Recent events table ── */
._eventList_1pqcs_156 {
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
  overflow: hidden;
}

._eventHeader_1pqcs_163 {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 10px 16px;
  border-bottom: 1px solid #1a1a1a;
  background: rgba(255,255,255,0.02);
}

._eventHeader_1pqcs_163 span {
  font-size: 0.68rem;
  font-weight: 700;
  color: #555;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

._eventItem_1pqcs_180 {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(255,255,255,0.03);
  transition: background 0.12s;
}

._eventItem_1pqcs_180:hover { background: rgba(255,255,255,0.02); }
._eventItem_1pqcs_180:last-child { border-bottom: none; }

._eventColUser_1pqcs_192 { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
._eventColType_1pqcs_193 { flex-shrink: 0; width: 110px; text-align: center; }
._eventColAmount_1pqcs_194 { color: #888; font-size: 0.8rem; font-weight: 600; flex-shrink: 0; width: 70px; text-align: right; }
._eventColDate_1pqcs_195 { color: #555; font-size: 0.8rem; flex-shrink: 0; width: 130px; text-align: right; }

._eventName_1pqcs_197 { color: #fff; font-size: 0.85rem; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
._eventEmail_1pqcs_198 { color: #888; font-size: 0.75rem; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
._eventPuter_1pqcs_199 { color: #6C5CE7; font-size: 0.7rem; font-weight: 600; }

._badgeExpired_1pqcs_201 { padding: 2px 8px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; background: rgba(245, 183, 74, 0.1); color: #f5b74a; }
._badgeFailed_1pqcs_202 { padding: 2px 8px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; background: rgba(231, 76, 60, 0.1); color: #e74c3c; }
._badgeCompleted_1pqcs_203 { padding: 2px 8px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; background: rgba(0, 184, 148, 0.1); color: #00B894; }

/* ── Filter ── */
._filterRow_1pqcs_206 {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

._filterBtn_1pqcs_212 {
  padding: 5px 14px;
  background: #1a1a1a;
  border: 1px solid #222;
  border-radius: 6px;
  color: #888;
  font-size: 0.75rem;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.15s;
}

._filterBtn_1pqcs_212:hover { background: #222; color: #ccc; }

._filterBtnActive_1pqcs_227 {
  background: rgba(108, 92, 231, 0.15);
  border-color: #6C5CE7;
  color: #6C5CE7;
}

/* ── Empty state ── */
._empty_1pqcs_235 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.75rem;
  padding: 4rem;
  color: #555;
  text-align: center;
}

._emptyText_1pqcs_245 { font-size: 0.9rem; margin: 0; }

@media (max-width: 800px) {
  ._statGrid_1pqcs_11 { grid-template-columns: repeat(2, 1fr); }
  ._funnelRow_1pqcs_129 { flex-wrap: wrap; }
  ._funnelBar_1pqcs_141 { flex-basis: 100%; }
}

@media (max-width: 500px) {
  ._statGrid_1pqcs_11 { grid-template-columns: 1fr; }
  ._main_1pqcs_2 { padding: 1rem; }
  ._eventItem_1pqcs_180 { flex-wrap: wrap; gap: 0.5rem; }
}
._backdrop_1h2qv_1 {
  position: fixed;
  inset: 0;
  background: rgba(0, 0, 0, 0.7);
  backdrop-filter: blur(4px);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2000;
  animation: _fadeIn_1h2qv_1 0.15s ease;
  padding: 1rem;
}

@keyframes _fadeIn_1h2qv_1 {
  from { opacity: 0; }
  to { opacity: 1; }
}

._modal_1h2qv_19 {
  background: #111;
  border: 1px solid #222;
  border-radius: 14px;
  padding: 1.75rem;
  width: 100%;
  max-width: 400px;
  animation: _slideUp_1h2qv_1 0.2s ease;
}

@keyframes _slideUp_1h2qv_1 {
  from { opacity: 0; transform: translateY(12px) scale(0.97); }
  to { opacity: 1; transform: translateY(0) scale(1); }
}

._header_1h2qv_34 {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1rem;
  margin-bottom: 0.75rem;
  border-bottom: 1px solid #1a1a1a;
}

._title_1h2qv_43 {
  font-size: 1.1rem;
  font-weight: 700;
  color: #fff;
  margin: 0;
}

._closeBtn_1h2qv_50 {
  background: none;
  border: none;
  color: #555;
  font-size: 1.4rem;
  cursor: pointer;
  padding: 0;
  line-height: 1;
  transition: color 0.15s;
}

._closeBtn_1h2qv_50:hover {
  color: #fff;
}

._message_1h2qv_65 {
  color: #888;
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 1.5rem;
}

._actions_1h2qv_72 {
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  padding-top: 1.25rem;
  border-top: 1px solid #1a1a1a;
}

._cancelBtn_1h2qv_80 {
  padding: 9px 18px;
  background: #1a1a1a;
  color: #ccc;
  border: 1px solid #333;
  border-radius: 6px;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.15s;
  font-family: inherit;
}

._cancelBtn_1h2qv_80:hover {
  background: #222;
  color: #fff;
  border-color: #555;
}

._confirmBtn_1h2qv_99 {
  padding: 9px 18px;
  background: linear-gradient(135deg, #6C5CE7, #00B894);
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 0.85rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.15s;
  font-family: inherit;
}

._confirmBtn_1h2qv_99:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(108, 92, 231, 0.3);
}

._confirmBtnDanger_1h2qv_117 {
  padding: 9px 18px;
  background: #e74c3c;
  color: #fff;
  border: none;
  border-radius: 6px;
  font-size: 0.85rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.15s;
  font-family: inherit;
}

._confirmBtnDanger_1h2qv_117:hover {
  background: #c0392b;
  transform: translateY(-1px);
  box-shadow: 0 4px 14px rgba(231, 76, 60, 0.3);
}

@media (max-width: 600px) {
  ._modal_1h2qv_19 { max-width: 100%; margin: 0 0.5rem; padding: 1.25rem; border-radius: 12px; }
}
._default_psw2a_1 {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 20px;
  font-size: 0.65rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: rgba(255, 255, 255, 0.05);
  color: #888;
}

._active_psw2a_13 {
  background: rgba(0, 184, 148, 0.1);
  color: #00B894;
}

._pastDue_psw2a_19 {
  background: rgba(245, 183, 74, 0.1);
  color: #f5b74a;
}

._canceled_psw2a_25 {
  background: rgba(231, 76, 60, 0.1);
  color: #e74c3c;
}

._override_psw2a_31 {
  background: rgba(108, 92, 231, 0.15);
  color: #a99aff;
}
._page_9osc4_1 { min-height: 100vh; background: #050505; }
._main_9osc4_2 { max-width: 900px; margin: 0 auto; padding: 2rem; }

._backLink_9osc4_4 { display: inline-flex; align-items: center; gap: 6px; color: #888; text-decoration: none; font-size: 0.85rem; font-weight: 600; margin-bottom: 1.5rem; transition: color 0.15s; }
._backLink_9osc4_4:hover { color: #fff; }
._backArrow_9osc4_6 { transform: rotate(180deg); }

._loading_9osc4_8 { display: flex; align-items: center; gap: 12px; justify-content: center; padding: 4rem; color: #888; }
._spinner_9osc4_9 { width: 20px; height: 20px; border: 2px solid #222; border-top: 2px solid #6C5CE7; border-radius: 50%; animation: _spin_9osc4_9 0.8s linear infinite; }
@keyframes _spin_9osc4_9 { to { transform: rotate(360deg); } }
._error_9osc4_11 { text-align: center; padding: 4rem; color: #e74c3c; }

._header_9osc4_13 {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1.5rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
  margin-bottom: 2rem;
}

._avatar_9osc4_24 {
  width: 56px; height: 56px;
  display: flex; align-items: center; justify-content: center;
  background: rgba(108, 92, 231, 0.1);
  border-radius: 50%;
  flex-shrink: 0;
}

._name_9osc4_32 { font-size: 1.2rem; font-weight: 800; color: #fff; margin: 0 0 4px; }
._meta_9osc4_33 { display: flex; flex-wrap: wrap; gap: 1rem; font-size: 0.8rem; color: #666; }

._sectionTitle_9osc4_35 { display: flex; align-items: center; gap: 8px; font-size: 1rem; font-weight: 700; color: #fff; margin-bottom: 1rem; }

/* ── Pro Override ── */
._overrideBadge_9osc4_38 {
  padding: 3px 10px;
  border-radius: 20px;
  font-size: 0.6rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: rgba(108, 92, 231, 0.15);
  color: #a99aff;
  border: 1px solid rgba(108, 92, 231, 0.3);
}

._overrideSection_9osc4_50 { margin-bottom: 2rem; }

._overrideCard_9osc4_52 {
  padding: 1.25rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 10px;
}

._overrideStatus_9osc4_59 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 0.9rem;
  margin-bottom: 0.75rem;
}

._overrideDetail_9osc4_67 {
  color: #555;
  font-size: 0.78rem;
  margin: 0 0 4px;
  padding-left: 24px;
}

._overrideBadgeExpired_9osc4_74 {
  background: rgba(231, 76, 60, 0.1);
  color: #e74c3c;
  border-color: rgba(231, 76, 60, 0.25);
}

._grantForm_9osc4_81 {
  margin: 1rem 0 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

._checkRow_9osc4_88 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._checkRow_9osc4_88 input[type="checkbox"] {
  width: 16px;
  height: 16px;
  accent-color: #6C5CE7;
  cursor: pointer;
}

._checkLabel_9osc4_101 {
  color: #ccc;
  font-size: 0.85rem;
  font-weight: 600;
  cursor: pointer;
}

._daysRow_9osc4_108 {
  display: flex;
  align-items: center;
  gap: 8px;
}

._daysInput_9osc4_114 {
  width: 80px;
  padding: 8px 10px;
  background: #0a0a0a;
  border: 1px solid #222;
  border-radius: 8px;
  color: #ededed;
  font-size: 0.9rem;
  font-family: inherit;
  text-align: center;
}
._daysInput_9osc4_114:focus { outline: none; border-color: #6C5CE7; }

._daysLabel_9osc4_127 {
  color: #888;
  font-size: 0.85rem;
  font-weight: 600;
}

._overrideBtn_9osc4_133 {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 0.75rem;
  padding: 8px 16px;
  background: rgba(108, 92, 231, 0.1);
  border: 1px solid #6C5CE7;
  border-radius: 8px;
  color: #a99aff;
  font-size: 0.8rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.15s;
}
._overrideBtn_9osc4_133:hover { background: rgba(108, 92, 231, 0.2); color: #fff; }
._overrideBtn_9osc4_133:disabled { opacity: 0.4; cursor: not-allowed; }

._overrideBtnDanger_9osc4_152 {
  background: rgba(231, 76, 60, 0.08);
  border-color: #e74c3c;
  color: #e74c3c;
}
._overrideBtnDanger_9osc4_152:hover { background: rgba(231, 76, 60, 0.15); color: #fff; }

._subList_9osc4_160 { display: flex; flex-direction: column; gap: 0.75rem; }

._subCard_9osc4_162 {
  padding: 1rem 1.25rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 10px;
}

._subRow_9osc4_169 { display: flex; align-items: center; gap: 1rem; margin-bottom: 0.5rem; }
._subPlan_9osc4_170 { color: #ccc; font-weight: 600; font-size: 0.9rem; }
._subDate_9osc4_171 { color: #666; font-size: 0.8rem; margin-left: auto; }

._subActions_9osc4_173 { display: flex; gap: 0.5rem; margin-top: 0.5rem; }

._actionBtn_9osc4_175 {
  display: inline-flex; align-items: center; gap: 4px;
  padding: 6px 12px; background: #1a1a1a; border: 1px solid #333;
  border-radius: 6px; color: #ccc; font-size: 0.75rem; font-weight: 600;
  cursor: pointer; font-family: inherit; transition: all 0.15s;
}
._actionBtn_9osc4_175:hover { background: #222; border-color: #555; color: #fff; }

._actionBtnDanger_9osc4_183 { }
._actionBtnDanger_9osc4_183:hover { background: rgba(231, 76, 60, 0.08); border-color: #e74c3c; color: #e74c3c; }

._empty_9osc4_186 { color: #555; font-size: 0.9rem; }

._invoiceList_9osc4_188 {
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 10px;
  overflow: hidden;
}

._invoiceRow_9osc4_195 {
  display: grid;
  grid-template-columns: 1fr 1fr auto;
  gap: 1rem;
  padding: 10px 16px;
  font-size: 0.85rem;
  color: #ccc;
  border-bottom: 1px solid #111;
}

._invoiceRow_9osc4_195:last-child { border-bottom: none; }

._badgePaid_9osc4_207 { padding: 2px 8px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; background: rgba(0, 184, 148, 0.1); color: #00B894; }
._badgeUnpaid_9osc4_208 { padding: 2px 8px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; background: rgba(245, 183, 74, 0.1); color: #f5b74a; }
._wrapper_x44rb_1 { overflow: hidden; border-radius: 12px; border: 1px solid #1a1a1a; }

._tableWrap_x44rb_3 { overflow-x: auto; }

._table_x44rb_3 { width: 100%; border-collapse: collapse; }

._headRow_x44rb_7 { background: #0d0d0d; }

._headCell_x44rb_9 {
  padding: 10px 16px;
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #666;
  text-align: left;
  white-space: nowrap;
  border-bottom: 1px solid #1a1a1a;
}

._bodyRow_x44rb_21 { transition: background 0.1s; }
._bodyRow_x44rb_21:not(:last-child) { border-bottom: 1px solid #111; }

._bodyRowClickable_x44rb_24 {
  cursor: pointer;
}

._bodyRowClickable_x44rb_24:hover { background: rgba(255, 255, 255, 0.02); }

._bodyCell_x44rb_31 {
  padding: 12px 16px;
  font-size: 0.85rem;
  color: #ccc;
  white-space: nowrap;
}

._emptyCell_x44rb_38 {
  padding: 3rem 1rem;
  text-align: center;
  color: #555;
  font-size: 0.9rem;
}

._loadMore_x44rb_45 { padding: 1rem; text-align: center; border-top: 1px solid #1a1a1a; }

._loadMoreBtn_x44rb_47 {
  padding: 8px 24px;
  background: #1a1a1a;
  border: 1px solid #333;
  border-radius: 6px;
  color: #ccc;
  font-size: 0.8rem;
  font-weight: 600;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.15s;
}

._loadMoreBtn_x44rb_47:hover { background: #222; border-color: #555; color: #fff; }
._loadMoreBtn_x44rb_47:disabled { opacity: 0.5; cursor: wait; }
._page_148yq_1 { min-height: 100vh; background: #050505; }
._main_148yq_2 { max-width: 1100px; margin: 0 auto; padding: 2rem; }
._pageTitle_148yq_3 { font-size: 1.5rem; font-weight: 800; color: #fff; margin: 0; }
._loading_148yq_4 { display: flex; align-items: center; gap: 12px; justify-content: center; padding: 4rem; color: #888; }
._spinner_148yq_5 { width: 20px; height: 20px; border: 2px solid #222; border-top: 2px solid #6C5CE7; border-radius: 50%; animation: _spin_148yq_5 0.8s linear infinite; }
@keyframes _spin_148yq_5 { to { transform: rotate(360deg); } }
._error_148yq_7 { text-align: center; padding: 4rem; color: #e74c3c; }

._header_148yq_9 { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.5rem; flex-wrap: wrap; gap: 0.75rem; }

._manageBtn_148yq_11 {
  padding: 5px 14px;
  background: rgba(108, 92, 231, 0.1);
  border: 1px solid rgba(108, 92, 231, 0.25);
  border-radius: 6px;
  color: #a99aff;
  font-size: 0.75rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.15s;
}
._manageBtn_148yq_11:hover { background: rgba(108, 92, 231, 0.2); color: #fff; border-color: #6C5CE7; }

/* ── Override panel ── */
._overrideBtn_148yq_26 {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  background: rgba(108, 92, 231, 0.1);
  border: 1px solid rgba(108, 92, 231, 0.3);
  border-radius: 8px;
  color: #a99aff;
  font-size: 0.82rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.15s;
}
._overrideBtn_148yq_26:hover { background: rgba(108, 92, 231, 0.2); color: #fff; border-color: #6C5CE7; }

._overridePanel_148yq_43 {
  padding: 1.5rem;
  background: #111;
  border: 1px solid rgba(108, 92, 231, 0.2);
  border-radius: 12px;
  margin-bottom: 1.5rem;
}

._overridePanelTitle_148yq_51 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  margin: 0 0 0.5rem;
}

._overridePanelDesc_148yq_61 { color: #666; font-size: 0.82rem; margin: 0 0 1.25rem; line-height: 1.5; }

._overrideForm_148yq_63 {
  display: flex;
  align-items: flex-end;
  gap: 1rem;
  flex-wrap: wrap;
}

._overrideField_148yq_70 { display: flex; flex-direction: column; gap: 4px; flex: 1; min-width: 180px; }
._overrideLabel_148yq_71 { font-size: 0.72rem; font-weight: 700; color: #888; text-transform: uppercase; letter-spacing: 0.3px; }

._overrideInput_148yq_73 {
  padding: 9px 12px;
  background: #0a0a0a;
  border: 1px solid #222;
  border-radius: 8px;
  color: #ededed;
  font-size: 0.85rem;
  font-family: inherit;
  transition: border-color 0.15s;
}
._overrideInput_148yq_73:focus { outline: none; border-color: #6C5CE7; }

._overrideSubmit_148yq_85 {
  padding: 9px 20px;
  background: linear-gradient(135deg, #6C5CE7, #00B894);
  border: none;
  border-radius: 8px;
  color: #fff;
  font-size: 0.85rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.15s;
  white-space: nowrap;
}
._overrideSubmit_148yq_85:hover { transform: translateY(-1px); box-shadow: 0 4px 14px rgba(108, 92, 231, 0.3); }
._overrideSubmit_148yq_85:disabled { opacity: 0.5; cursor: not-allowed; transform: none; }

._overrideError_148yq_101 { color: #e74c3c; font-size: 0.82rem; margin: 0.75rem 0 0; }
._overrideSuccessMsg_148yq_102 { color: #00B894; font-size: 0.82rem; margin: 0.75rem 0 0; font-weight: 600; }
._page_1s6zi_1 {
  min-height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2rem;
  background: #050505;
}

._card_1s6zi_10 {
  background: #111;
  border: 1px solid #222;
  border-radius: 16px;
  padding: 3rem 2.5rem;
  max-width: 400px;
  width: 100%;
  text-align: center;
}

._icon_1s6zi_20 { margin-bottom: 1.5rem; }

._title_1s6zi_22 {
  font-size: 1.5rem;
  font-weight: 800;
  color: #fff;
  margin-bottom: 0.5rem;
}

._desc_1s6zi_29 {
  color: #888;
  font-size: 0.9rem;
  line-height: 1.6;
  margin-bottom: 2rem;
}

._error_1s6zi_36 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  color: #e74c3c;
  font-size: 0.85rem;
  margin-bottom: 1.5rem;
  padding: 10px;
  background: rgba(231, 76, 60, 0.08);
  border-radius: 8px;
}

._btn_1s6zi_49 {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  width: 100%;
  padding: 12px;
  background: linear-gradient(135deg, #6C5CE7, #00B894);
  color: #fff;
  border: none;
  border-radius: 8px;
  font-size: 0.9rem;
  font-weight: 700;
  cursor: pointer;
  font-family: inherit;
  transition: all 0.2s;
}

._btn_1s6zi_49:hover { transform: translateY(-1px); box-shadow: 0 4px 14px rgba(108, 92, 231, 0.3); }
._btn_1s6zi_49:disabled { opacity: 0.7; cursor: wait; transform: none; box-shadow: none; }
._page_85rse_1 { min-height: 100vh; background: #050505; }
._main_85rse_2 { max-width: 1100px; margin: 0 auto; padding: 2rem; }
._pageTitle_85rse_3 { font-size: 1.5rem; font-weight: 800; color: #fff; margin-bottom: 1.5rem; }

._loading_85rse_5 { display: flex; align-items: center; gap: 12px; justify-content: center; padding: 4rem; color: #888; }
._spinner_85rse_6 { width: 20px; height: 20px; border: 2px solid #222; border-top: 2px solid #6C5CE7; border-radius: 50%; animation: _spin_85rse_6 0.8s linear infinite; }
@keyframes _spin_85rse_6 { to { transform: rotate(360deg); } }
._error_85rse_8 { text-align: center; padding: 4rem; color: #e74c3c; }

._statGrid_85rse_10 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1rem; margin-bottom: 2rem; }

._statCard_85rse_12 {
  display: flex;
  align-items: flex-start;
  gap: 14px;
  padding: 1.25rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
}

._statIcon_85rse_22 { flex-shrink: 0; margin-top: 2px; }
._statContent_85rse_23 { flex: 1; }
._statLabel_85rse_24 { color: #888; font-size: 0.72rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px; margin-bottom: 4px; }
._statValue_85rse_25 { color: #fff; font-size: 1.5rem; font-weight: 800; margin: 0; }
._statSub_85rse_26 { color: #555; font-size: 0.75rem; }

._section_85rse_28 { margin-bottom: 2rem; }
._sectionTitle_85rse_29 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 1rem;
}

._chartWrap_85rse_39 {
  display: flex;
  align-items: flex-end;
  gap: 3px;
  height: 160px;
  padding: 1rem;
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
}

._bar_85rse_50 {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-end;
  height: 100%;
  min-width: 0;
}

._barFill_85rse_60 {
  width: 100%;
  max-width: 24px;
  background: linear-gradient(180deg, #6C5CE7, #00B894);
  border-radius: 3px 3px 0 0;
  min-height: 2px;
  transition: height 0.3s;
}

._barLabel_85rse_69 {
  font-size: 0.55rem;
  color: #555;
  margin-top: 6px;
  white-space: nowrap;
}

._recentList_85rse_76 {
  background: #111;
  border: 1px solid #1a1a1a;
  border-radius: 12px;
  overflow: hidden;
}

._recentItem_85rse_83 {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 12px 16px;
  border-bottom: 1px solid #111;
}

._recentItem_85rse_83:last-child { border-bottom: none; }
._recentName_85rse_92 { flex: 1; color: #ccc; font-size: 0.85rem; font-weight: 600; }
._recentDate_85rse_93 { color: #555; font-size: 0.8rem; }
._badgeActive_85rse_94 { padding: 2px 8px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; background: rgba(0, 184, 148, 0.1); color: #00B894; }
._badgeCanceled_85rse_95 { padding: 2px 8px; border-radius: 20px; font-size: 0.65rem; font-weight: 700; text-transform: uppercase; background: rgba(231, 76, 60, 0.1); color: #e74c3c; }

@media (max-width: 800px) {
  ._statGrid_85rse_10 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 500px) {
  ._statGrid_85rse_10 { grid-template-columns: 1fr; }
  ._main_85rse_2 { padding: 1rem; }
}
._page_1hzey_1 { min-height: 100vh; background: #050505; }
._main_1hzey_2 { max-width: 1100px; margin: 0 auto; padding: 2rem; }
._pageTitle_1hzey_3 { font-size: 1.5rem; font-weight: 800; color: #fff; margin: 0; }

._header_1hzey_5 { display: flex; align-items: center; justify-content: space-between; margin-bottom: 1.5rem; }

._filter_1hzey_7 {
  padding: 8px 14px;
  background: #111;
  border: 1px solid #222;
  border-radius: 8px;
  color: #ccc;
  font-size: 0.85rem;
  font-family: inherit;
  cursor: pointer;
}

._filter_1hzey_7:focus { outline: none; border-color: #6C5CE7; }

._loading_1hzey_20 { display: flex; align-items: center; gap: 12px; justify-content: center; padding: 4rem; color: #888; }
._spinner_1hzey_21 { width: 20px; height: 20px; border: 2px solid #222; border-top: 2px solid #6C5CE7; border-radius: 50%; animation: _spin_1hzey_21 0.8s linear infinite; }
@keyframes _spin_1hzey_21 { to { transform: rotate(360deg); } }
._error_1hzey_23 { text-align: center; padding: 4rem; color: #e74c3c; }

._actionBtn_1hzey_25 {
  display: inline-flex; align-items: center; justify-content: center;
  width: 28px; height: 28px; background: #1a1a1a; border: 1px solid #333;
  border-radius: 6px; color: #ccc; cursor: pointer; transition: all 0.15s;
}
._actionBtn_1hzey_25:hover { background: #222; border-color: #555; color: #fff; }

._actionBtnDanger_1hzey_32 { }
._actionBtnDanger_1hzey_32:hover { background: rgba(231, 76, 60, 0.08); border-color: #e74c3c; color: #e74c3c; }
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, sans-serif; font-size: 16px; line-height: 1.5; color: #ededed; background: #050505; -webkit-font-smoothing: antialiased; }

body { min-height: 100vh; }

#app { transition: opacity 0.3s ease; }

.fade-out { opacity: 0.4; }

@keyframes spin { to { transform: rotate(360deg); } }
@keyframes swoosh { from { opacity: 0; transform: translateY(20px); } to { opacity: 1; transform: translateY(0); } }
