/* hyMarketing V16 Chroma Blackhole — page-local operator shell */
body.hymarketing-page{
  --hm-bg:#030409;
  --hm-bg-2:#070a12;
  --hm-panel:rgba(12,16,28,.88);
  --hm-panel-2:rgba(18,23,39,.94);
  --hm-line:rgba(132,158,205,.18);
  --hm-line-strong:rgba(53,234,255,.32);
  --hm-text:#f6f9ff;
  --hm-muted:#93a4bb;
  --hm-cyan:#35eaff;
  --hm-blue:#4f8dff;
  --hm-violet:#9c6cff;
  --hm-pink:#ff4fd8;
  --hm-amber:#ffbe4f;
  --hm-red:#ff657a;
  --hm-green:#53e3a6;
  --hm-radius:18px;
  --hm-shadow:0 18px 46px rgba(0,0,0,.34);
  --bg:var(--hm-bg);
  --surface:var(--hm-panel);
  --raised:var(--hm-panel-2);
  --ink:var(--hm-text);
  --text:var(--hm-text);
  --muted:var(--hm-muted);
  --accent:var(--hm-cyan);
  --accent-text:var(--hm-cyan);
  --accent-dim:rgba(53,234,255,.10);
  --border:var(--hm-line);
  --border-hover:var(--hm-line-strong);
  --border-focus:rgba(53,234,255,.55);
  margin:0;
  min-height:100dvh;
  color:var(--hm-text);
  background:
    radial-gradient(circle at 15% -5%,rgba(53,234,255,.12),transparent 28rem),
    radial-gradient(circle at 92% 0%,rgba(156,108,255,.14),transparent 32rem),
    radial-gradient(circle at 60% 100%,rgba(255,79,216,.07),transparent 32rem),
    var(--hm-bg);
  font:400 14px/1.5 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color-scheme:dark;
}
body.hymarketing-page::before{
  content:"";
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:-1;
  background-image:
    linear-gradient(rgba(255,255,255,.015) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.015) 1px,transparent 1px);
  background-size:34px 34px;
  mask-image:linear-gradient(to bottom,black,transparent 82%);
}
.hymarketing-page *{box-sizing:border-box}
.hymarketing-page a{color:var(--hm-cyan)}
.hymarketing-page .wrap{
  width:min(100%,1540px);
  margin:0 auto;
  padding:24px 28px 64px;
}
.hymarketing-page .topbar{
  position:sticky;
  top:0;
  z-index:40;
  display:flex;
  align-items:center;
  min-height:68px;
  gap:14px;
  margin:-24px -28px 20px;
  padding:14px 28px;
  border-bottom:1px solid var(--hm-line);
  background:rgba(3,4,9,.86);
  backdrop-filter:blur(22px) saturate(130%);
}
.hymarketing-page .brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-size:20px;
  font-weight:800;
  letter-spacing:-.035em;
}
.hymarketing-page .brand iconify-icon{color:var(--hm-cyan);filter:drop-shadow(0 0 12px rgba(53,234,255,.3))}
.hymarketing-page .spacer{flex:1}
.hymarketing-page .icon-btn,
.hymarketing-page .btn,
.hymarketing-page .tab,
.hymarketing-page .chip{
  appearance:none;
  border:1px solid var(--hm-line);
  color:var(--hm-text);
  background:rgba(13,18,31,.78);
  border-radius:12px;
  min-height:40px;
  padding:9px 13px;
  font:600 13px/1.2 inherit;
  cursor:pointer;
  transition:transform .15s ease,border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.hymarketing-page .icon-btn{
  width:42px;
  padding:0;
  display:grid;
  place-items:center;
}
.hymarketing-page .btn,
.hymarketing-page .tab,
.hymarketing-page .chip{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}
.hymarketing-page .btn:hover,
.hymarketing-page .tab:hover,
.hymarketing-page .chip:hover,
.hymarketing-page .icon-btn:hover{
  transform:translateY(-1px);
  border-color:var(--hm-line-strong);
  background:rgba(19,28,46,.92);
}
.hymarketing-page .btn:not(.ghost){
  color:#031014;
  border-color:rgba(53,234,255,.5);
  background:linear-gradient(135deg,var(--hm-cyan),#8efff0);
  box-shadow:0 8px 24px rgba(53,234,255,.13);
  font-weight:800;
}
.hymarketing-page .btn.ghost{
  color:var(--hm-text);
  background:rgba(11,15,26,.72);
  text-decoration:none;
}
.hymarketing-page .switcher{
  display:grid;
  grid-template-columns:auto minmax(220px,420px) auto;
  align-items:center;
  gap:12px;
  margin-bottom:18px;
  padding:14px 16px;
  border:1px solid var(--hm-line);
  border-radius:16px;
  background:linear-gradient(180deg,rgba(15,19,33,.9),rgba(8,11,20,.82));
  box-shadow:var(--hm-shadow);
}
.hymarketing-page select,
.hymarketing-page input,
.hymarketing-page textarea{
  width:100%;
  min-height:42px;
  padding:10px 12px;
  color:var(--hm-text);
  background:#0b101b;
  border:1px solid var(--hm-line);
  border-radius:11px;
  outline:none;
  font:inherit;
}
.hymarketing-page textarea{min-height:110px;resize:vertical}
.hymarketing-page select:focus,
.hymarketing-page input:focus,
.hymarketing-page textarea:focus{
  border-color:var(--hm-cyan);
  box-shadow:0 0 0 3px rgba(53,234,255,.10);
}
.hymarketing-page .scope-pill,
.hymarketing-page .pill,
.hymarketing-page .cs-pill{
  display:inline-flex;
  align-items:center;
  gap:6px;
  white-space:nowrap;
  color:#c7d4e7;
  background:rgba(156,108,255,.10);
  border:1px solid rgba(156,108,255,.24);
  border-radius:999px;
  padding:6px 10px;
  font-size:11px;
  font-weight:700;
}
.hymarketing-page .tabs{
  display:flex;
  gap:8px;
  overflow-x:auto;
  padding:5px 2px 14px;
  margin:0 0 18px;
  scrollbar-width:thin;
}
.hymarketing-page .tab{
  flex:0 0 auto;
  color:#aebcd0;
  background:rgba(9,13,23,.72);
  border-color:rgba(132,158,205,.13);
}
.hymarketing-page .tab.active{
  color:#071014;
  border-color:rgba(53,234,255,.6);
  background:linear-gradient(135deg,var(--hm-cyan),#9cfff2);
  box-shadow:0 8px 28px rgba(53,234,255,.15);
}
.hymarketing-page .screen{display:none;min-width:0}
.hymarketing-page .screen.active{display:grid;gap:18px}
.hymarketing-page .card{
  min-width:0;
  padding:22px;
  border:1px solid var(--hm-line);
  border-radius:var(--hm-radius);
  background:
    linear-gradient(180deg,rgba(18,23,39,.92),rgba(8,11,20,.94)) padding-box,
    linear-gradient(135deg,rgba(53,234,255,.25),rgba(156,108,255,.16),rgba(255,79,216,.12)) border-box;
  box-shadow:var(--hm-shadow),inset 0 1px 0 rgba(255,255,255,.025);
}
.hymarketing-page .card h2{
  display:flex;
  align-items:center;
  gap:9px;
  margin:0 0 16px;
  color:var(--hm-text);
  font-size:16px;
  font-weight:800;
  letter-spacing:-.015em;
}
.hymarketing-page .card h2 iconify-icon{color:var(--hm-cyan)}
.hymarketing-page .sub,
.hymarketing-page .muted,
.hymarketing-page .dim{color:var(--hm-muted)}
.hymarketing-page .stub-note{
  margin-top:14px;
  padding:11px 13px;
  color:#91a3bb;
  background:rgba(53,234,255,.045);
  border:1px solid rgba(53,234,255,.10);
  border-radius:10px;
  font-size:12px;
}
.hymarketing-page .row{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  margin:10px 0;
}
.hymarketing-page .field{display:grid;gap:7px;margin:12px 0}
.hymarketing-page .field label{
  color:#aab7ca;
  font-size:11px;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.hymarketing-page .chips{display:flex;flex-wrap:wrap;gap:8px}
.hymarketing-page .chip{color:#afbdd0}
.hymarketing-page .chip.on,
.hymarketing-page .chip[aria-pressed="true"]{
  color:var(--hm-cyan);
  border-color:rgba(53,234,255,.5);
  background:rgba(53,234,255,.09);
}
.hymarketing-page .kpis{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
  gap:12px;
}
.hymarketing-page .kpi{
  min-height:102px;
  padding:15px;
  border:1px solid rgba(132,158,205,.15);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(16,22,37,.78),rgba(8,12,22,.88));
}
.hymarketing-page .kpi .value{
  margin-top:8px;
  color:var(--hm-text);
  font-size:28px;
  line-height:1;
  font-weight:800;
  font-variant-numeric:tabular-nums;
  letter-spacing:-.04em;
}
.hymarketing-page .kpi .label,
.hymarketing-page .kpi small{
  color:var(--hm-muted);
  font-size:11px;
  font-weight:700;
}
.hymarketing-page .scroll-x{
  width:100%;
  overflow:auto;
  border:1px solid var(--hm-line);
  border-radius:13px;
  background:rgba(5,8,15,.55);
}
.hymarketing-page .tbl{
  width:100%;
  min-width:680px;
  border-collapse:collapse;
  color:var(--hm-text);
  font-size:13px;
}
.hymarketing-page .tbl th,
.hymarketing-page .tbl td{
  padding:12px 14px;
  text-align:left;
  border-bottom:1px solid rgba(132,158,205,.11);
  vertical-align:middle;
}
.hymarketing-page .tbl th{
  position:sticky;
  top:0;
  color:#94a6bd;
  background:#0b101b;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.hymarketing-page .tbl tbody tr:hover{background:rgba(53,234,255,.035)}
.hymarketing-page .tbl tr:last-child td{border-bottom:0}
.hymarketing-page .num{font-variant-numeric:tabular-nums;text-align:right}
.hymarketing-page .ok{color:var(--hm-green)}
.hymarketing-page .warn{color:var(--hm-amber)}
.hymarketing-page .bad{color:var(--hm-red)}
.hymarketing-page .empty{
  padding:22px;
  color:var(--hm-muted);
  text-align:center;
  border:1px dashed rgba(132,158,205,.17);
  border-radius:12px;
}
.hymarketing-page .toast{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:100;
  max-width:min(420px,calc(100vw - 32px));
  padding:13px 16px;
  border:1px solid var(--hm-line-strong);
  border-radius:13px;
  background:#0c1220;
  color:var(--hm-text);
  box-shadow:0 20px 50px rgba(0,0,0,.5);
}
.hymarketing-page .toast:empty{display:none}

/* Mass SMS */
.hymarketing-page .mkt-sms-subtabs{display:flex;gap:8px;overflow-x:auto;margin-bottom:14px}
.hymarketing-page .mkt-sms-subtab{
  border:1px solid var(--hm-line);
  border-radius:999px;
  padding:8px 12px;
  color:#aab9cd;
  background:#0b101b;
}
.hymarketing-page .mkt-sms-subtab.active{color:var(--hm-cyan);border-color:rgba(53,234,255,.42);background:rgba(53,234,255,.08)}
.hymarketing-page .mkt-sms-compose-grid,
.hymarketing-page .mkt-sms-inbox-grid{
  display:grid;
  grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);
  gap:16px;
}
.hymarketing-page .mkt-sms-col,
.hymarketing-page .mkt-sms-phone,
.hymarketing-page .mkt-sms-thread,
.hymarketing-page .mkt-sms-gate,
.hymarketing-page .mkt-sms-stickybar{
  border:1px solid var(--hm-line);
  border-radius:14px;
  background:rgba(8,12,21,.7);
}
.hymarketing-page .mkt-sms-col,
.hymarketing-page .mkt-sms-phone,
.hymarketing-page .mkt-sms-thread,
.hymarketing-page .mkt-sms-gate{padding:14px}
.hymarketing-page .mkt-sms-bubble{
  padding:10px 12px;
  margin:8px 0;
  border-radius:14px;
  background:#121a2b;
  border:1px solid rgba(132,158,205,.13);
}
.hymarketing-page .mkt-sms-bubble.out{margin-left:14%;background:rgba(53,234,255,.08);border-color:rgba(53,234,255,.2)}
.hymarketing-page .mkt-sms-meter,
.hymarketing-page .mkt-sms-funnel{color:var(--hm-muted)}
.hymarketing-page .mkt-sms-stickybar{
  position:sticky;
  bottom:10px;
  padding:10px;
  backdrop-filter:blur(16px);
}

/* Coupon manager harmonization */
.hymarketing-page #coupon-center{color:var(--hm-text)}
.hymarketing-page #coupon-center button,
.hymarketing-page #coupon-center input,
.hymarketing-page #coupon-center select{
  border-radius:10px;
}

/* remove legacy/plain control appearance even when a component omits a class */
.hymarketing-page button,
.hymarketing-page select,
.hymarketing-page input,
.hymarketing-page textarea{font-family:inherit}
.hymarketing-page button:focus-visible,
.hymarketing-page a:focus-visible,
.hymarketing-page select:focus-visible,
.hymarketing-page input:focus-visible,
.hymarketing-page textarea:focus-visible{
  outline:2px solid var(--hm-cyan);
  outline-offset:2px;
}

@media (max-width: 980px){
  .hymarketing-page .wrap{padding:20px 18px 54px}
  .hymarketing-page .topbar{margin:-20px -18px 18px;padding:12px 18px}
  .hymarketing-page .mkt-sms-compose-grid,
  .hymarketing-page .mkt-sms-inbox-grid{grid-template-columns:1fr}
}
@media (max-width: 760px){
  .hymarketing-page .wrap{padding:14px 12px 46px}
  .hymarketing-page .topbar{margin:-14px -12px 14px;padding:10px 12px;min-height:58px}
  .hymarketing-page .brand{font-size:18px}
  .hymarketing-page .switcher{grid-template-columns:auto 1fr;padding:12px}
  .hymarketing-page .scope-pill{grid-column:1/-1;justify-self:start}
  .hymarketing-page .card{padding:16px;border-radius:15px}
  .hymarketing-page .tabs{margin-bottom:12px}
  .hymarketing-page .tab{min-height:38px;padding:8px 11px}
  .hymarketing-page .kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hymarketing-page .kpi{min-height:88px;padding:12px}
  .hymarketing-page .kpi .value{font-size:24px}
}
@media (max-width: 460px){
  .hymarketing-page .kpis{grid-template-columns:1fr}
  .hymarketing-page .row>.btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .hymarketing-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
}
