
:root {
  --ab-bg:#08110d;
  --ab-bg-soft:#0d1712;
  --ab-panel:rgba(18,30,24,.78);
  --ab-panel-solid:#111d17;
  --ab-panel-2:#16241c;
  --ab-border:rgba(255,255,255,.08);
  --ab-text:#f5f8f6;
  --ab-muted:#90a49a;
  --ab-primary:#ff7a2f;
  --ab-primary-2:#ff3d2e;
  --ab-danger:#ff7e88;
  --ab-warning:#f7ca62;
  --ab-success:#ff8a45;
  --ab-shadow:0 24px 60px rgba(0,0,0,.24);
}

.abcg-app[data-theme="light"] {
  --ab-bg:#f3f7f4;
  --ab-bg-soft:#e9f0eb;
  --ab-panel:rgba(255,255,255,.86);
  --ab-panel-solid:#ffffff;
  --ab-panel-2:#f6faf7;
  --ab-border:rgba(12,38,24,.09);
  --ab-text:#102017;
  --ab-muted:#6b7e73;
  --ab-shadow:0 20px 50px rgba(26,52,35,.10);
}

.abcg-admin-wrap { margin-left:-20px; }
.abcg-admin-wrap #wpcontent { padding-left:0; }
.abcg-demo-page .site-header,
.abcg-demo-page .site-footer,
.abcg-demo-page header.entry-header { display:none!important; }
.abcg-demo-page .site-main,
.abcg-demo-page .entry-content { margin:0!important; padding:0!important; max-width:none!important; }

.abcg-app,
.abcg-app * { box-sizing:border-box; }
.abcg-app button,
.abcg-app input,
.abcg-app select,
.abcg-app textarea { font:inherit; }
.abcg-app button { cursor:pointer; }

.abcg-app {
  min-height:100vh;
  display:block;
  background:
    radial-gradient(circle at 85% 10%, rgba(255,122,47,.09), transparent 32%),
    radial-gradient(circle at 10% 85%, rgba(255,61,46,.05), transparent 28%),
    var(--ab-bg);
  color:var(--ab-text);
  font-family:Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  letter-spacing:-.01em;
}

.abcg-sidebar {
  position:sticky;
  top:0;
  height:100vh;
  padding:24px 18px;
  display:flex;
  flex-direction:column;
  gap:20px;
  border-right:1px solid var(--ab-border);
  background:rgba(8,17,13,.74);
  backdrop-filter:blur(24px);
  z-index:20;
}
.abcg-app[data-theme="light"] .abcg-sidebar { background:rgba(246,250,247,.86); }

.abcg-brand { display:flex; align-items:center; gap:12px; padding:0 6px; }
.abcg-brand-mark,
.abcg-workspace-logo {
  width:40px;height:40px;border-radius:13px;display:grid;place-items:center;
  background:linear-gradient(145deg,var(--ab-primary),var(--ab-primary-2));
  color:#07110b;font-weight:800;
  box-shadow:0 12px 24px rgba(255,122,47,.18);
}
.abcg-brand-copy,
.abcg-workspace>div,
.abcg-user>div { display:flex; flex-direction:column; min-width:0; }
.abcg-brand-copy strong,.abcg-workspace strong,.abcg-user strong { font-size:14px; }
.abcg-brand-copy span,.abcg-workspace span,.abcg-user span { font-size:11px;color:var(--ab-muted);margin-top:2px; }

.abcg-icon-button {
  border:1px solid var(--ab-border); background:var(--ab-panel);
  color:var(--ab-text); width:40px;height:40px;border-radius:12px;
  display:grid;place-items:center;
}
.abcg-sidebar-toggle { margin-left:auto;width:32px;height:32px; }

.abcg-workspace {
  display:flex;align-items:center;gap:10px;padding:12px;border:1px solid var(--ab-border);
  border-radius:16px;background:var(--ab-panel);
}
.abcg-workspace-logo { width:34px;height:34px;border-radius:11px;font-size:13px; }
.abcg-status-dot { width:8px;height:8px;border-radius:50%;background:var(--ab-primary);margin-left:auto;box-shadow:0 0 0 5px rgba(255,122,47,.08);animation:abPulse 2s infinite; }

.abcg-nav { display:flex;flex-direction:column;gap:6px; }
.abcg-nav-item {
  width:100%;border:0;background:transparent;color:var(--ab-muted);
  display:grid;grid-template-columns:26px 1fr auto;align-items:center;gap:10px;
  min-height:44px;padding:0 12px;border-radius:13px;text-align:left;
  transition:.2s ease;
}
.abcg-nav-item span { font-size:18px;text-align:center; }
.abcg-nav-item b { font-weight:550;font-size:13px; }
.abcg-nav-item em { font-style:normal;font-size:10px;border:1px solid var(--ab-border);padding:3px 6px;border-radius:999px; }
.abcg-nav-item:hover,.abcg-nav-item.is-active { color:var(--ab-text);background:var(--ab-panel-2); }
.abcg-nav-item.is-active { box-shadow:inset 3px 0 0 var(--ab-primary); }

.abcg-sidebar-card {
  margin-top:auto;padding:16px;border-radius:16px;background:var(--ab-panel);
  border:1px solid var(--ab-border);display:flex;flex-direction:column;gap:7px;
}
.abcg-sidebar-card span,.abcg-sidebar-card small { font-size:11px;color:var(--ab-muted); }
.abcg-sidebar-card strong { font-size:13px; }
.abcg-progress { height:6px;border-radius:999px;background:rgba(255,255,255,.06);overflow:hidden; }
.abcg-progress i { display:block;height:100%;background:linear-gradient(90deg,var(--ab-primary),var(--ab-primary-2));border-radius:inherit; }

.abcg-user { display:flex;align-items:center;gap:10px;padding:6px; }
.abcg-avatar { width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--ab-panel-2);border:1px solid var(--ab-border);font-size:12px;font-weight:700; }
.abcg-user .abcg-icon-button { margin-left:auto;width:32px;height:32px; }

.abcg-main { min-width:0; }
.abcg-topbar {
  min-height:96px;padding:22px 32px;display:flex;align-items:center;justify-content:space-between;gap:24px;
  border-bottom:1px solid var(--ab-border);position:sticky;top:0;z-index:15;
  background:color-mix(in srgb,var(--ab-bg) 80%,transparent);backdrop-filter:blur(24px);
}
.abcg-eyebrow { display:block;text-transform:uppercase;letter-spacing:.14em;font-size:10px;color:var(--ab-primary);font-weight:700;margin-bottom:6px; }
.abcg-topbar h1 { font-size:22px;line-height:1.2;margin:0;font-weight:650;letter-spacing:-.04em; }
.abcg-topbar-actions { display:flex;align-items:center;gap:10px; }
.abcg-search {
  min-width:300px;height:42px;border:1px solid var(--ab-border);background:var(--ab-panel);
  border-radius:13px;display:flex;align-items:center;padding:0 12px;gap:9px;
}
.abcg-search input { width:100%;border:0;outline:0;background:transparent;color:var(--ab-text);font-size:12px; }
.abcg-search kbd { font-size:9px;color:var(--ab-muted);border:1px solid var(--ab-border);padding:3px 6px;border-radius:6px; }

.abcg-primary-button,.abcg-secondary-button {
  border-radius:12px;min-height:42px;padding:0 16px;font-size:12px;font-weight:650;
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
}
.abcg-primary-button { border:0;background:linear-gradient(145deg,var(--ab-primary),var(--ab-primary-2));color:#08110d;box-shadow:0 12px 28px rgba(255,122,47,.14); }
.abcg-secondary-button { border:1px solid var(--ab-border);background:var(--ab-panel);color:var(--ab-text); }
.abcg-text-button { border:0;background:transparent;color:var(--ab-primary);font-size:11px; }

.abcg-content { padding:32px; }
.abcg-view { display:none;animation:abFade .26s ease; }
.abcg-view.is-active { display:block; }

.abcg-hero {
  min-height:440px;padding:48px;border-radius:28px;overflow:hidden;position:relative;
  border:1px solid var(--ab-border);background:
    linear-gradient(135deg,rgba(255,122,47,.08),transparent 38%),
    var(--ab-panel);
  display:grid;grid-template-columns:1.05fr 1fr;gap:36px;align-items:center;
  box-shadow:var(--ab-shadow);
}
.abcg-hero-copy { position:relative;z-index:2; }
.abcg-pill { display:inline-flex;border:1px solid var(--ab-border);background:var(--ab-panel-2);padding:7px 10px;border-radius:999px;font-size:10px;color:var(--ab-muted); }
.abcg-hero h2 { margin:22px 0 16px;font-size:52px;line-height:1.02;letter-spacing:-.065em;font-weight:650; }
.abcg-hero h2 span { color:var(--ab-primary); }
.abcg-hero p { max-width:610px;margin:0;color:var(--ab-muted);font-size:15px;line-height:1.75; }
.abcg-hero-actions { display:flex;gap:10px;margin-top:26px; }

.abcg-map-stage { position:relative;min-height:320px;display:grid;place-items:center; }
.abcg-map-stage svg { width:100%;position:relative;z-index:2;filter:drop-shadow(0 30px 40px rgba(0,0,0,.22)); }
.abcg-map-shape { fill:rgba(255,122,47,.07);stroke:rgba(255,122,47,.32);stroke-width:2; }
.abcg-pin-group circle { fill:var(--ab-primary);stroke:rgba(255,255,255,.6);stroke-width:2;animation:abPin 2.4s infinite ease-in-out;transform-box:fill-box;transform-origin:center; }
.abcg-pin-group circle:nth-child(2n){animation-delay:.4s}.abcg-pin-group circle:nth-child(3n){animation-delay:.8s}
.abcg-map-glow { position:absolute;width:70%;height:70%;border-radius:50%;background:rgba(255,122,47,.08);filter:blur(70px); }
.abcg-floating-card { position:absolute;z-index:3;width:150px;padding:14px;border:1px solid var(--ab-border);border-radius:16px;background:color-mix(in srgb,var(--ab-panel-solid) 88%,transparent);backdrop-filter:blur(18px);box-shadow:var(--ab-shadow);display:flex;flex-direction:column; }
.abcg-floating-card span,.abcg-floating-card small { font-size:10px;color:var(--ab-muted); }
.abcg-floating-card strong { font-size:28px;letter-spacing:-.05em;margin:4px 0; }
.abcg-floating-card-a { left:3%;bottom:16%; }.abcg-floating-card-b { right:4%;top:11%; }

.abcg-metrics-grid { display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:18px 0; }
.abcg-metric { position:relative;padding:20px;border:1px solid var(--ab-border);background:var(--ab-panel);border-radius:18px;display:flex;flex-direction:column;min-height:130px; }
.abcg-metric span { color:var(--ab-muted);font-size:11px; }.abcg-metric strong { font-size:30px;margin-top:13px;letter-spacing:-.05em; }.abcg-metric small { margin-top:auto;font-size:10px;color:var(--ab-primary); }.abcg-metric>i { position:absolute;right:16px;top:16px;font-style:normal;color:var(--ab-primary); }

.abcg-dashboard-grid { display:grid;grid-template-columns:1.6fr 1fr;gap:18px; }
.abcg-panel { border:1px solid var(--ab-border);background:var(--ab-panel);border-radius:20px;padding:22px; }
.abcg-panel-head { display:flex;justify-content:space-between;align-items:flex-start;gap:15px;margin-bottom:20px; }
.abcg-panel-head span { color:var(--ab-muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em; }
.abcg-panel-head h3 { margin:5px 0 0;font-size:16px; }
.abcg-panel-head select,.abcg-page-intro select,.abcg-toolbar select { border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-text);border-radius:10px;padding:9px 10px;font-size:11px; }

.abcg-region-list { display:flex;flex-direction:column;gap:9px; }
.abcg-region-list button { border:0;background:transparent;color:var(--ab-text);display:grid;grid-template-columns:1fr 90px 1.5fr 38px;align-items:center;gap:14px;text-align:left;padding:12px;border-radius:12px; }
.abcg-region-list button:hover { background:var(--ab-panel-2); }
.abcg-region-list span,.abcg-region-list b,.abcg-region-list em { font-size:11px;font-style:normal; }
.abcg-region-list b { color:var(--ab-muted);font-weight:500; }.abcg-region-list i { height:7px;border-radius:999px;background:linear-gradient(90deg,var(--ab-primary),var(--ab-primary-2)); }

.abcg-activity-list { display:flex;flex-direction:column; }
.abcg-activity-list>div { display:grid;grid-template-columns:32px 1fr auto;align-items:center;gap:10px;padding:12px 0;border-bottom:1px solid var(--ab-border); }
.abcg-activity-list>div:last-child { border-bottom:0; }
.abcg-activity-list i { width:28px;height:28px;border-radius:9px;background:var(--ab-panel-2);display:grid;place-items:center;font-style:normal;color:var(--ab-primary);font-size:11px; }
.abcg-activity-list p { margin:0;display:flex;flex-direction:column; }.abcg-activity-list strong { font-size:11px; }.abcg-activity-list span,.abcg-activity-list time { font-size:9px;color:var(--ab-muted);margin-top:3px; }

.abcg-page-intro { display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:26px; }
.abcg-page-intro h2 { margin:6px 0 8px;font-size:34px;line-height:1.1;letter-spacing:-.05em; }
.abcg-page-intro p { margin:0;color:var(--ab-muted);font-size:13px;line-height:1.6; }

.abcg-toolbar { display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px; }
.abcg-filter-group { display:flex;gap:6px; }.abcg-filter-group button { border:1px solid var(--ab-border);background:var(--ab-panel);color:var(--ab-muted);padding:9px 12px;border-radius:10px;font-size:11px; }.abcg-filter-group button.is-active { color:var(--ab-text);background:var(--ab-panel-2); }
.abcg-filter-group b { color:var(--ab-primary);font-size:9px;margin-left:5px; }
.abcg-toolbar-actions { display:flex;gap:8px; }

.abcg-table-card { border:1px solid var(--ab-border);background:var(--ab-panel);border-radius:18px;overflow:hidden; }
.abcg-table { width:100%;border-collapse:collapse; }
.abcg-table th { padding:14px 16px;text-align:left;color:var(--ab-muted);font-size:9px;text-transform:uppercase;letter-spacing:.09em;background:var(--ab-panel-2); }
.abcg-table td { padding:15px 16px;border-top:1px solid var(--ab-border);font-size:11px; }
.abcg-location-cell { display:flex;align-items:center;gap:10px; }.abcg-location-cell>i { width:34px;height:34px;border-radius:10px;display:grid;place-items:center;background:var(--ab-panel-2);font-style:normal;font-size:10px;color:var(--ab-primary); }.abcg-location-cell p { margin:0;display:flex;flex-direction:column; }.abcg-location-cell span { color:var(--ab-muted);font-size:9px;margin-top:3px; }
.abcg-table td>button { border:0;background:transparent;color:var(--ab-muted);font-weight:700; }
.abcg-badge,.abcg-sync { display:inline-flex;padding:5px 8px;border-radius:999px;font-size:9px; }
.abcg-badge.success,.abcg-sync.ok { color:var(--ab-success);background:rgba(255,138,69,.08); }.abcg-badge.warning,.abcg-sync.warn { color:var(--ab-warning);background:rgba(247,202,98,.08); }.abcg-badge.danger,.abcg-sync.danger { color:var(--ab-danger);background:rgba(255,126,136,.08); }.abcg-badge.neutral { color:var(--ab-muted);background:var(--ab-panel-2); }

.abcg-review-layout { display:grid;grid-template-columns:280px 1fr;gap:18px;align-items:start; }
.abcg-review-filters { display:flex;flex-direction:column;gap:14px;position:sticky;top:120px; }
.abcg-review-filters h3 { margin:0;font-size:14px; }
.abcg-form-stack,.abcg-review-filters label { display:flex;flex-direction:column;gap:8px; }
.abcg-form-stack { gap:14px; }
.abcg-form-stack label,.abcg-review-filters label { color:var(--ab-muted);font-size:10px; }
.abcg-form-stack input,.abcg-form-stack select,.abcg-form-stack textarea,.abcg-review-filters input,.abcg-review-filters select {
  width:100%;border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-text);border-radius:11px;padding:11px 12px;outline:none;font-size:12px;line-height:1.5;
}
.abcg-score-card { margin-top:8px;padding:16px;border-radius:14px;background:var(--ab-panel-2);display:flex;flex-direction:column;gap:8px; }.abcg-score-card strong { font-size:24px; }.abcg-score-card small { font-size:9px;color:var(--ab-muted); }
.abcg-review-feed { display:flex;flex-direction:column;gap:12px; }
.abcg-review-card { padding:20px;border:1px solid var(--ab-border);background:var(--ab-panel);border-radius:17px; }
.abcg-review-head { display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px; }.abcg-review-head>div:nth-child(2) { display:flex;flex-direction:column; }.abcg-review-head strong { font-size:12px; }.abcg-review-head span { color:var(--ab-muted);font-size:9px;margin-top:3px; }.abcg-review-head em { font-style:normal;color:var(--ab-warning);font-size:11px;letter-spacing:.1em; }
.abcg-review-card>p { color:var(--ab-text);font-size:12px;line-height:1.65;margin:16px 0; }
.abcg-review-actions { display:flex;gap:8px; }.abcg-review-actions button { border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-muted);padding:7px 10px;border-radius:9px;font-size:10px; }.abcg-review-actions button:first-child { color:var(--ab-primary); }
.abcg-ai-suggestion,.abcg-ai-bar { padding:12px;border-radius:12px;background:rgba(255,122,47,.06);border:1px solid rgba(255,122,47,.14);margin:12px 0; }.abcg-ai-suggestion span,.abcg-ai-bar span { font-size:9px;color:var(--ab-primary);font-weight:700;text-transform:uppercase;letter-spacing:.08em; }.abcg-ai-suggestion p { margin:5px 0 0;color:var(--ab-muted);font-size:10px;line-height:1.5; }

.abcg-campaign-grid { display:grid;grid-template-columns:repeat(3,1fr);gap:16px; }
.abcg-campaign-card { overflow:hidden;border:1px solid var(--ab-border);background:var(--ab-panel);border-radius:20px; }
.abcg-campaign-visual { min-height:180px;padding:22px;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(145deg,rgba(255,122,47,.22),rgba(255,61,46,.06)); }
.abcg-campaign-visual.alt { background:linear-gradient(145deg,rgba(247,202,98,.16),rgba(255,122,47,.05)); }.abcg-campaign-visual.muted { background:linear-gradient(145deg,var(--ab-panel-2),rgba(255,122,47,.04)); }
.abcg-campaign-visual span { align-self:flex-start;background:rgba(0,0,0,.28);padding:5px 7px;border-radius:999px;font-size:8px; }.abcg-campaign-visual strong { font-size:28px;letter-spacing:-.05em;margin-top:auto; }.abcg-campaign-visual small { margin-top:6px;color:var(--ab-muted);font-size:10px; }
.abcg-campaign-body { padding:18px; }.abcg-campaign-body>div:first-child { display:flex;justify-content:space-between;align-items:center; }.abcg-campaign-body time { font-size:9px;color:var(--ab-muted); }.abcg-campaign-body h3 { margin:14px 0 4px;font-size:15px; }.abcg-campaign-body p { color:var(--ab-muted);font-size:10px;margin:0; }
.abcg-campaign-stats { display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0; }.abcg-campaign-stats span { display:flex;flex-direction:column;font-size:9px;color:var(--ab-muted); }.abcg-campaign-stats b { color:var(--ab-text);font-size:15px;margin-bottom:3px; }.abcg-campaign-body .abcg-secondary-button { width:100%; }

.abcg-bulk-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-bottom:18px; }
.abcg-action-tile { border:1px solid var(--ab-border);background:var(--ab-panel);color:var(--ab-text);border-radius:18px;padding:20px;display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:14px;text-align:left;transition:.2s; }
.abcg-action-tile:hover { transform:translateY(-2px);border-color:rgba(255,122,47,.3); }
.abcg-action-tile>i { width:44px;height:44px;border-radius:13px;background:var(--ab-panel-2);display:grid;place-items:center;color:var(--ab-primary);font-style:normal;font-size:19px; }.abcg-action-tile div { display:flex;flex-direction:column;gap:5px; }.abcg-action-tile span { font-size:13px;font-weight:650; }.abcg-action-tile strong { font-size:10px;color:var(--ab-muted);font-weight:450; }.abcg-action-tile em { font-style:normal;color:var(--ab-primary); }
.abcg-job-list>div { display:grid;grid-template-columns:30px 1.2fr 1fr 80px;align-items:center;gap:12px;padding:13px 0;border-bottom:1px solid var(--ab-border); }.abcg-job-list>div:last-child{border-bottom:0}.abcg-job-list>div>i { width:28px;height:28px;border-radius:9px;display:grid;place-items:center;background:var(--ab-panel-2);font-style:normal; }.abcg-job-list p { margin:0;display:flex;flex-direction:column; }.abcg-job-list strong { font-size:11px; }.abcg-job-list span,.abcg-job-list em { color:var(--ab-muted);font-size:9px;font-style:normal; }

.abcg-chart { height:280px;position:relative;padding:10px 0 30px; }
.abcg-chart svg { width:100%;height:220px;position:relative;z-index:2;overflow:visible; }
.abcg-chart-grid { position:absolute;inset:10px 0 30px;background:repeating-linear-gradient(to bottom,transparent 0,transparent 43px,var(--ab-border) 44px); }
.abcg-line-primary,.abcg-line-secondary { fill:none;stroke-width:4;vector-effect:non-scaling-stroke;stroke-linecap:round; }.abcg-line-primary { stroke:var(--ab-primary);filter:drop-shadow(0 8px 12px rgba(255,122,47,.22)); }.abcg-line-secondary { stroke:var(--ab-primary-2);opacity:.38; }
.abcg-chart-labels { display:flex;justify-content:space-between;color:var(--ab-muted);font-size:9px; }
.abcg-legend { display:flex;gap:10px; }.abcg-legend span { text-transform:none;letter-spacing:0; }
.abcg-ranking { display:flex;flex-direction:column; }.abcg-ranking>div { display:grid;grid-template-columns:28px 1fr auto;align-items:center;gap:10px;padding:13px 0;border-bottom:1px solid var(--ab-border); }.abcg-ranking b { width:26px;height:26px;border-radius:8px;display:grid;place-items:center;background:var(--ab-panel-2);font-size:10px; }.abcg-ranking p { margin:0;display:flex;flex-direction:column; }.abcg-ranking strong { font-size:11px; }.abcg-ranking span { font-size:9px;color:var(--ab-muted); }.abcg-ranking em { color:var(--ab-primary);font-style:normal;font-size:15px;font-weight:700; }

.abcg-settings-grid { display:grid;grid-template-columns:repeat(2,1fr);gap:14px; }
.abcg-settings-grid>button { border:1px solid var(--ab-border);background:var(--ab-panel);color:var(--ab-text);border-radius:18px;padding:20px;display:grid;grid-template-columns:44px 1fr auto;align-items:center;gap:14px;text-align:left; }
.abcg-settings-grid i { width:42px;height:42px;border-radius:13px;background:var(--ab-panel-2);display:grid;place-items:center;color:var(--ab-primary);font-style:normal; }.abcg-settings-grid div { display:flex;flex-direction:column;gap:4px; }.abcg-settings-grid strong { font-size:13px; }.abcg-settings-grid span,.abcg-settings-grid em { font-size:10px;color:var(--ab-muted);font-style:normal; }

.abcg-modal-layer { position:fixed;inset:0;z-index:999999;display:none;place-items:center;padding:24px; }
.abcg-modal-layer.is-open { display:grid; }
.abcg-modal-backdrop { position:absolute;inset:0;background:rgba(3,8,5,.72);backdrop-filter:blur(12px); }
.abcg-modal {
  width:min(620px,96vw);max-height:90vh;overflow:auto;position:relative;z-index:2;
  background:var(--ab-panel-solid);border:1px solid var(--ab-border);border-radius:24px;
  box-shadow:0 40px 100px rgba(0,0,0,.46);display:none;color:var(--ab-text);
}
.abcg-modal.is-active { display:block;animation:abModal .22s ease; }
.abcg-modal-large { width:min(920px,96vw); }
.abcg-modal header { padding:22px 24px;border-bottom:1px solid var(--ab-border);display:flex;justify-content:space-between;align-items:flex-start; }
.abcg-modal header span { color:var(--ab-primary);text-transform:uppercase;letter-spacing:.1em;font-size:9px; }.abcg-modal header h3 { margin:5px 0 0;font-size:18px; }.abcg-modal header button { border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-text);width:34px;height:34px;border-radius:10px;font-size:18px; }
.abcg-modal>footer { padding:16px 24px;border-top:1px solid var(--ab-border);display:flex;justify-content:flex-end;gap:9px; }
.abcg-modal>.abcg-form-stack,.abcg-modal-grid,.abcg-branch-profile,.abcg-tab-row,.abcg-inline-stats,.abcg-quick-grid,.abcg-stepper { margin:22px 24px; }
.abcg-modal-grid { display:grid;grid-template-columns:1fr 1fr;gap:22px; }
.abcg-quick-grid { display:grid;grid-template-columns:1fr 1fr;gap:10px; }.abcg-quick-grid button { border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-text);padding:16px;border-radius:15px;text-align:left;display:grid;grid-template-columns:34px 1fr;gap:8px; }.abcg-quick-grid i { grid-row:1/3;width:32px;height:32px;border-radius:10px;background:rgba(255,122,47,.08);display:grid;place-items:center;color:var(--ab-primary);font-style:normal; }.abcg-quick-grid strong { font-size:11px; }.abcg-quick-grid span { font-size:9px;color:var(--ab-muted); }
.abcg-selected-review { border:1px solid var(--ab-border);background:var(--ab-panel-2);border-radius:16px;padding:18px;align-self:start; }.abcg-selected-review>p { font-size:12px;line-height:1.65; }.abcg-meta-row { display:flex;gap:6px;flex-wrap:wrap; }.abcg-meta-row span { padding:5px 7px;border-radius:999px;background:var(--ab-panel);font-size:9px;color:var(--ab-muted); }
.abcg-ai-bar { margin:0;display:flex;align-items:center;gap:7px;flex-wrap:wrap; }.abcg-ai-bar button { border:1px solid rgba(255,122,47,.16);background:transparent;color:var(--ab-primary);padding:6px 8px;border-radius:8px;font-size:9px; }
.abcg-upload-box { min-height:130px;border:1px dashed rgba(255,122,47,.28);border-radius:15px;background:rgba(255,122,47,.04);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px; }.abcg-upload-box.tall{min-height:260px;margin:22px 24px}.abcg-upload-box i{font-style:normal;color:var(--ab-primary);font-size:20px}.abcg-upload-box strong{font-size:11px}.abcg-upload-box span{font-size:9px;color:var(--ab-muted)}.abcg-upload-box button{border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-text);padding:7px 10px;border-radius:8px;font-size:9px}
.abcg-preview-card { padding:16px;border-radius:15px;background:var(--ab-panel-2);border:1px solid var(--ab-border);display:flex;flex-direction:column;gap:7px; }.abcg-preview-card span { font-size:9px;color:var(--ab-muted); }.abcg-preview-card strong { font-size:13px; }.abcg-preview-card p { margin:0;font-size:11px; }.abcg-preview-card button { align-self:flex-start;border:0;background:var(--ab-primary);color:#08110d;border-radius:8px;padding:7px 9px;font-size:9px; }
.abcg-stepper { display:flex;gap:8px; }.abcg-stepper span { flex:1;padding:10px;border-radius:10px;background:var(--ab-panel-2);color:var(--ab-muted);font-size:9px;text-align:center; }.abcg-stepper span.is-active { color:var(--ab-text);box-shadow:inset 0 -2px 0 var(--ab-primary); }
.abcg-hours-grid { display:grid;grid-template-columns:1fr 90px 90px;gap:8px;align-items:center; }.abcg-hours-grid span { font-size:11px;color:var(--ab-text); }.abcg-hours-grid input { text-align:center; }
.abcg-two-col { display:grid;grid-template-columns:1fr 1fr;gap:12px; }
.abcg-branch-profile { display:grid;grid-template-columns:170px 1fr;gap:18px; }.abcg-branch-score,.abcg-branch-info { border:1px solid var(--ab-border);background:var(--ab-panel-2);border-radius:16px;padding:18px; }.abcg-branch-score { display:flex;flex-direction:column;align-items:center;justify-content:center; }.abcg-branch-score strong { font-size:42px; }.abcg-branch-score span { color:var(--ab-muted);font-size:9px; }.abcg-branch-score div { color:var(--ab-warning);margin-top:6px; }.abcg-branch-info { display:flex;flex-direction:column;gap:13px; }.abcg-branch-info p { margin:0;display:flex;flex-direction:column;gap:4px; }.abcg-branch-info span { color:var(--ab-muted);font-size:9px; }.abcg-branch-info strong { font-size:11px; }.abcg-good { color:var(--ab-success); }
.abcg-tab-row { display:flex;border-bottom:1px solid var(--ab-border); }.abcg-tab-row button { border:0;background:transparent;color:var(--ab-muted);padding:10px 12px;font-size:10px; }.abcg-tab-row button.is-active { color:var(--ab-primary);border-bottom:2px solid var(--ab-primary); }
.abcg-inline-stats { display:grid;grid-template-columns:repeat(3,1fr);gap:10px; }.abcg-inline-stats>div { padding:14px;border:1px solid var(--ab-border);background:var(--ab-panel-2);border-radius:13px;display:flex;flex-direction:column; }.abcg-inline-stats span { color:var(--ab-muted);font-size:9px; }.abcg-inline-stats strong { font-size:20px;margin-top:5px; }
.abcg-settings-placeholder { min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border:1px dashed var(--ab-border);border-radius:15px; }.abcg-settings-placeholder i { width:40px;height:40px;border-radius:50%;background:rgba(255,122,47,.08);display:grid;place-items:center;color:var(--ab-primary);font-style:normal; }.abcg-settings-placeholder strong { margin-top:10px;font-size:13px; }.abcg-settings-placeholder span { color:var(--ab-muted);font-size:10px;margin-top:5px; }

.abcg-toast-stack { position:fixed;right:24px;bottom:24px;z-index:1000000;display:flex;flex-direction:column;gap:8px; }
.abcg-toast { min-width:280px;padding:14px 16px;border-radius:14px;background:var(--ab-panel-solid);border:1px solid var(--ab-border);box-shadow:var(--ab-shadow);display:flex;align-items:center;gap:10px;animation:abToast .25s ease; }
.abcg-toast i { width:28px;height:28px;border-radius:9px;background:rgba(255,122,47,.1);display:grid;place-items:center;color:var(--ab-primary);font-style:normal; }.abcg-toast p { margin:0;display:flex;flex-direction:column; }.abcg-toast strong { font-size:11px; }.abcg-toast span { font-size:9px;color:var(--ab-muted);margin-top:3px; }

.abcg-app.is-collapsed { grid-template-columns:92px minmax(0,1fr); }
.abcg-app.is-collapsed .abcg-brand-copy,
.abcg-app.is-collapsed .abcg-workspace>div,
.abcg-app.is-collapsed .abcg-nav-item b,
.abcg-app.is-collapsed .abcg-nav-item em,
.abcg-app.is-collapsed .abcg-sidebar-card,
.abcg-app.is-collapsed .abcg-user>div { display:none; }
.abcg-app.is-collapsed .abcg-workspace { justify-content:center; }.abcg-app.is-collapsed .abcg-status-dot{display:none}
.abcg-app.is-collapsed .abcg-nav-item { grid-template-columns:1fr;justify-items:center;padding:0; }
.abcg-app.is-collapsed .abcg-sidebar-toggle span { transform:rotate(180deg); }

@keyframes abFade { from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none} }
@keyframes abModal { from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none} }
@keyframes abToast { from{opacity:0;transform:translateX(14px)}to{opacity:1;transform:none} }
@keyframes abPulse { 0%,100%{opacity:1}50%{opacity:.45} }
@keyframes abPin { 0%,100%{transform:scale(1)}50%{transform:scale(1.35)} }

@media (max-width:1100px){
  .abcg-app{grid-template-columns:92px minmax(0,1fr)}
  .abcg-brand-copy,.abcg-workspace>div,.abcg-nav-item b,.abcg-nav-item em,.abcg-sidebar-card,.abcg-user>div{display:none}
  .abcg-workspace{justify-content:center}.abcg-status-dot{display:none}
  .abcg-nav-item{grid-template-columns:1fr;justify-items:center;padding:0}
  .abcg-hero{grid-template-columns:1fr;padding:34px}.abcg-map-stage{min-height:260px}
  .abcg-metrics-grid{grid-template-columns:repeat(2,1fr)}
  .abcg-campaign-grid{grid-template-columns:1fr 1fr}
}
@media (max-width:760px){
  .abcg-app{display:block}.abcg-sidebar{position:relative;width:100%;height:auto;flex-direction:row;overflow:auto;padding:12px}.abcg-brand,.abcg-workspace,.abcg-sidebar-card,.abcg-user{display:none}.abcg-nav{flex-direction:row}.abcg-nav-item{min-width:54px}
  .abcg-topbar{padding:16px;align-items:flex-start}.abcg-topbar-actions{flex-wrap:wrap;justify-content:flex-end}.abcg-search{display:none}.abcg-topbar h1{font-size:18px}
  .abcg-content{padding:16px}.abcg-hero{padding:24px;min-height:auto}.abcg-hero h2{font-size:38px}.abcg-map-stage{display:none}
  .abcg-metrics-grid,.abcg-dashboard-grid,.abcg-review-layout,.abcg-campaign-grid,.abcg-bulk-grid,.abcg-settings-grid,.abcg-modal-grid{grid-template-columns:1fr}
  .abcg-review-filters{position:relative;top:auto}.abcg-page-intro{align-items:flex-start;flex-direction:column}.abcg-toolbar{align-items:flex-start;flex-direction:column}.abcg-table-card{overflow:auto}.abcg-table{min-width:760px}.abcg-modal-layer{padding:10px}.abcg-modal{border-radius:18px}.abcg-branch-profile{grid-template-columns:1fr}.abcg-two-col{grid-template-columns:1fr}
}


/* ---------------------------------------------------------
   Login & Product Shell
--------------------------------------------------------- */
.abcg-product-shell {
  min-height:100vh;
  display:grid;
  grid-template-columns:278px minmax(0,1fr);
}

.abcg-product-shell[hidden] { display:none !important; }

.abcg-login-screen {
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(430px,.85fr);
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 18%, rgba(255,122,47,.13), transparent 26%),
    radial-gradient(circle at 88% 82%, rgba(255,61,46,.08), transparent 28%),
    linear-gradient(135deg,#07100c 0%,#0b1610 54%,#0c1711 100%);
  color:#f6faf7;
  isolation:isolate;
}

.abcg-login-screen::before {
  content:"";
  position:absolute;
  inset:0;
  background-image:
    linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);
  background-size:44px 44px;
  mask-image:linear-gradient(to bottom,rgba(0,0,0,.9),transparent 85%);
  pointer-events:none;
  z-index:-1;
}

.abcg-login-orbit {
  position:absolute;
  border:1px solid rgba(255,122,47,.12);
  border-radius:50%;
  z-index:-1;
}
.abcg-login-orbit::after {
  content:"";
  width:10px;height:10px;border-radius:50%;
  position:absolute;background:#ff7a2f;
  box-shadow:0 0 20px rgba(255,122,47,.7);
}
.abcg-login-orbit-one { width:540px;height:540px;left:-220px;top:-180px;animation:abOrbit 24s linear infinite; }
.abcg-login-orbit-one::after { right:72px;top:80px; }
.abcg-login-orbit-two { width:320px;height:320px;right:31%;bottom:-170px;animation:abOrbit 18s linear infinite reverse; }
.abcg-login-orbit-two::after { left:34px;top:55px; }

.abcg-login-showcase {
  padding:58px 64px 48px;
  display:flex;
  flex-direction:column;
  min-width:0;
}

.abcg-login-brand-row {
  display:flex;
  align-items:center;
  gap:13px;
}
.abcg-login-brand-row>div:last-child { display:flex;flex-direction:column; }
.abcg-login-brand-row strong { font-size:15px;letter-spacing:-.02em; }
.abcg-login-brand-row span { margin-top:2px;font-size:10px;color:#90a49a;letter-spacing:.05em;text-transform:uppercase; }
.abcg-login-brand-mark {
  width:44px;height:44px;border-radius:14px;
  display:grid;place-items:center;
  background:linear-gradient(145deg,#ff7a2f,#ff3d2e);
  color:#07110b;font-size:17px;font-weight:800;
  box-shadow:0 18px 36px rgba(255,122,47,.18);
}

.abcg-login-copy {
  margin:auto 0 34px;
  max-width:760px;
}
.abcg-login-kicker {
  display:inline-flex;
  padding:8px 11px;
  border:1px solid rgba(255,122,47,.16);
  background:rgba(255,122,47,.06);
  border-radius:999px;
  color:#9df8ae;
  font-size:10px;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-weight:700;
}
.abcg-login-copy h1 {
  max-width:720px;
  margin:24px 0 20px;
  font-size:clamp(42px,5vw,76px);
  line-height:.98;
  letter-spacing:-.07em;
  font-weight:620;
}
.abcg-login-copy p {
  max-width:650px;
  margin:0;
  color:#96a99e;
  font-size:15px;
  line-height:1.8;
}

.abcg-login-highlights {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  max-width:660px;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.abcg-login-highlights>div {
  padding:20px 22px 20px 0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.abcg-login-highlights>div+div {
  border-left:1px solid rgba(255,255,255,.08);
  padding-left:22px;
}
.abcg-login-highlights strong { font-size:26px;letter-spacing:-.05em; }
.abcg-login-highlights span { font-size:10px;color:#8ea198;text-transform:uppercase;letter-spacing:.08em; }

.abcg-login-feature-list {
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:26px;
}
.abcg-login-feature-list div {
  display:flex;align-items:center;gap:10px;
  color:#cbd5cf;font-size:11px;
}
.abcg-login-feature-list i {
  width:22px;height:22px;border-radius:7px;
  display:grid;place-items:center;
  background:rgba(255,122,47,.08);
  color:#ff7a2f;
  font-style:normal;
  font-size:10px;
}

.abcg-login-footer-note {
  margin-top:auto;
  padding-top:32px;
  color:#65786d;
  font-size:10px;
}

.abcg-login-panel-wrap {
  padding:34px;
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
}

.abcg-login-panel {
  width:min(470px,100%);
  padding:34px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:28px;
  background:rgba(15,27,20,.82);
  backdrop-filter:blur(28px);
  box-shadow:0 40px 100px rgba(0,0,0,.32);
}

.abcg-login-panel-head { margin-bottom:24px; }
.abcg-login-status {
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#9df8ae;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:700;
}
.abcg-login-status i {
  width:7px;height:7px;border-radius:50%;
  background:#ff7a2f;
  box-shadow:0 0 0 5px rgba(255,122,47,.08);
  animation:abPulse 2s infinite;
}
.abcg-login-panel h2 {
  margin:15px 0 9px;
  font-size:28px;
  line-height:1.1;
  letter-spacing:-.05em;
  font-weight:620;
}
.abcg-login-panel-head p {
  margin:0;
  color:#8ea198;
  font-size:11px;
  line-height:1.65;
}

.abcg-login-form {
  display:flex;
  flex-direction:column;
  gap:16px;
}
.abcg-login-form>label {
  display:flex;
  flex-direction:column;
  gap:8px;
}
.abcg-login-form>label>span {
  color:#a9b8b0;
  font-size:10px;
}
.abcg-login-input {
  min-height:50px;
  border:1px solid rgba(255,255,255,.09);
  border-radius:14px;
  background:rgba(255,255,255,.035);
  display:grid;
  grid-template-columns:28px 1fr auto;
  align-items:center;
  gap:8px;
  padding:0 13px;
  transition:.2s ease;
}
.abcg-login-input:focus-within {
  border-color:rgba(255,122,47,.42);
  box-shadow:0 0 0 4px rgba(255,122,47,.05);
}
.abcg-login-input>i {
  color:#ff7a2f;
  font-style:normal;
  font-size:13px;
}
.abcg-login-input input {
  border:0;
  outline:0;
  background:transparent;
  color:#f6faf7;
  min-width:0;
  font-size:12px;
}
.abcg-login-input button,
.abcg-login-link {
  border:0;
  background:transparent;
  color:#ff7a2f;
  font-size:9px;
  padding:0;
}

.abcg-login-options {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.abcg-login-check {
  display:flex;
  align-items:center;
  gap:8px;
  color:#93a69c;
  font-size:10px;
}
.abcg-login-check input { accent-color:#ff7a2f; }

.abcg-login-submit {
  min-height:52px;
  border:0;
  border-radius:14px;
  background:linear-gradient(145deg,#ff7a2f,#ff3d2e);
  color:#07110b;
  padding:0 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  font-size:12px;
  font-weight:750;
  box-shadow:0 18px 36px rgba(255,122,47,.14);
  transition:.2s ease;
}
.abcg-login-submit:hover { transform:translateY(-1px);box-shadow:0 22px 42px rgba(255,122,47,.2); }
.abcg-login-submit i { font-style:normal;font-size:16px; }

.abcg-demo-access {
  margin-top:22px;
  padding:16px;
  border:1px solid rgba(255,122,47,.12);
  border-radius:15px;
  background:rgba(255,122,47,.045);
}
.abcg-demo-access>span {
  display:block;
  margin-bottom:11px;
  color:#ff7a2f;
  font-size:9px;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:700;
}
.abcg-demo-access>div {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.abcg-demo-access p {
  margin:0;
  display:flex;
  flex-direction:column;
  gap:4px;
}
.abcg-demo-access small { color:#7f9288;font-size:8px; }
.abcg-demo-access strong { color:#e9f1ec;font-size:10px;font-weight:600; }

.abcg-login-security {
  display:grid;
  grid-template-columns:32px 1fr;
  gap:10px;
  align-items:start;
  margin-top:18px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.07);
}
.abcg-login-security>i {
  width:30px;height:30px;border-radius:10px;
  background:rgba(255,255,255,.04);
  display:grid;place-items:center;
  color:#ff7a2f;
  font-style:normal;
  font-size:10px;
}
.abcg-login-security p { margin:0;display:flex;flex-direction:column;gap:3px; }
.abcg-login-security strong { font-size:10px; }
.abcg-login-security span { color:#81948a;font-size:9px;line-height:1.5; }

.abcg-login-error {
  margin-top:10px;
  color:#ff9ba3;
  font-size:10px;
}

.abcg-logout-button { color:var(--ab-danger); }

@keyframes abOrbit { to { transform:rotate(360deg); } }

@media (max-width:1100px) {
  .abcg-product-shell { grid-template-columns:92px minmax(0,1fr); }
  .abcg-login-screen { grid-template-columns:1fr 430px; }
  .abcg-login-showcase { padding:46px 38px; }
  .abcg-login-copy h1 { font-size:54px; }
}

@media (max-width:860px) {
  .abcg-login-screen { grid-template-columns:1fr; }
  .abcg-login-showcase { padding:34px 24px 24px; }
  .abcg-login-copy { margin:56px 0 26px; }
  .abcg-login-copy h1 { font-size:46px; }
  .abcg-login-panel-wrap { padding:10px 18px 30px; }
  .abcg-login-panel { width:100%; }
  .abcg-login-footer-note { display:none; }
}

@media (max-width:760px) {
  .abcg-product-shell { display:block; }
  .abcg-login-copy h1 { font-size:39px; }
  .abcg-login-highlights { grid-template-columns:1fr 1fr 1fr; }
  .abcg-login-panel { padding:24px; }
}


/* Standalone front-end takeover */
html,
body.abcg-standalone-body {
  width:100%;
  min-height:100%;
  margin:0 !important;
  padding:0 !important;
  overflow-x:hidden;
  background:#08110d;
}

body.abcg-standalone-body {
  max-width:none !important;
}

body.abcg-standalone-body > .abcg-app {
  width:100%;
  min-height:100vh;
}

body.abcg-standalone-body #wpadminbar {
  display:none !important;
}

body.admin-bar .abcg-sidebar,
body.admin-bar .abcg-topbar {
  top:0 !important;
}

@media screen and (max-width:782px) {
  html {
    margin-top:0 !important;
  }
}


/* V4 visual system, true login lock and refined controls */
html.abcg-login-locked,
html.abcg-login-locked body { overflow:hidden !important; height:100% !important; }
.abcg-login-screen[hidden],
.abcg-product-shell[hidden] { display:none !important; }
.abcg-login-screen {
  position:fixed; inset:0; z-index:2147483000;
  width:100%; height:100dvh; min-height:100dvh;
  overflow:auto; overscroll-behavior:none;
}
.abcg-product-shell { min-height:100vh; }

:root {
  --ab-primary:#ff7a2f;
  --ab-primary-2:#ff3d2e;
  --ab-success:#ff8a45;
}

.abcg-workspace {
  min-height:72px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) 10px;
  align-items:center;
  gap:12px;
  padding:13px 14px;
}
.abcg-workspace-logo { width:44px;height:44px;border-radius:14px;font-size:16px; }
.abcg-workspace-copy { min-width:0;display:flex;flex-direction:column;justify-content:center; }
.abcg-workspace-copy strong { line-height:1.15;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.abcg-workspace-copy span { line-height:1.25;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }
.abcg-status-dot { margin-left:0;justify-self:end; }

.abcg-panel,
.abcg-table-card,
.abcg-review-card,
.abcg-review-filters,
.abcg-campaign-card,
.abcg-action-tile,
.abcg-settings-grid>button,
.abcg-metric {
  border-color:color-mix(in srgb,var(--ab-border) 78%,rgba(255,122,47,.14));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.025);
}
.abcg-review-filters { padding:24px; border-radius:22px; }
.abcg-review-filters h3 { font-size:17px;letter-spacing:-.025em;margin-bottom:4px; }
.abcg-review-filters label { gap:9px; }
.abcg-review-filters label>span { font-size:10px;letter-spacing:.02em; }

.abcg-app select,
.abcg-app input,
.abcg-app textarea {
  -webkit-appearance:none;
  appearance:none;
}
.abcg-app select {
  background-image:
    linear-gradient(45deg,transparent 50%,var(--ab-muted) 50%),
    linear-gradient(135deg,var(--ab-muted) 50%,transparent 50%);
  background-position:calc(100% - 16px) 50%,calc(100% - 11px) 50%;
  background-size:5px 5px,5px 5px;
  background-repeat:no-repeat;
  padding-right:34px !important;
}
.abcg-form-stack input,.abcg-form-stack select,.abcg-form-stack textarea,
.abcg-review-filters input,.abcg-review-filters select {
  min-height:46px;
  border-radius:13px;
  background-color:color-mix(in srgb,var(--ab-panel-2) 90%,#000 10%);
  box-shadow:none;
  color:var(--ab-text);
}
.abcg-form-stack textarea { min-height:auto; }
.abcg-form-stack input:focus,.abcg-form-stack select:focus,.abcg-form-stack textarea:focus,
.abcg-review-filters input:focus,.abcg-review-filters select:focus {
  border-color:rgba(255,122,47,.42);
  box-shadow:0 0 0 4px rgba(255,122,47,.06);
}

.abcg-score-card {
  border:1px solid rgba(255,122,47,.08);
  background:linear-gradient(145deg,rgba(255,122,47,.055),var(--ab-panel-2));
  border-radius:18px;
  padding:20px;
}

.abcg-hours-table { display:flex;flex-direction:column; }
.abcg-hours-table>div { display:grid;grid-template-columns:1.2fr 100px 28px 100px 80px;align-items:center;gap:12px;padding:14px 4px;border-bottom:1px solid var(--ab-border); }
.abcg-hours-table>div:last-child{border-bottom:0}.abcg-hours-table strong{font-size:11px}.abcg-hours-table span{padding:9px 11px;border-radius:10px;background:var(--ab-panel-2);font-size:11px;text-align:center}.abcg-hours-table i{font-style:normal;color:var(--ab-muted);text-align:center}.abcg-hours-table em{font-style:normal;color:var(--ab-primary);font-size:9px;text-align:right}

.abcg-media-toolbar { display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px; }
.abcg-media-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px; }
.abcg-media-card { border:1px solid var(--ab-border);background:var(--ab-panel);border-radius:20px;overflow:hidden; }
.abcg-media-preview { min-height:190px;display:flex;align-items:flex-end;padding:18px;position:relative;overflow:hidden; }
.abcg-media-preview::before { content:"";position:absolute;inset:0;background:radial-gradient(circle at 70% 20%,rgba(255,255,255,.2),transparent 34%); }
.abcg-media-preview span { position:relative;z-index:1;font-size:22px;font-weight:750;letter-spacing:-.04em; }
.gradient-one{background:linear-gradient(145deg,#53130e,#ff5b31)}.gradient-two{background:linear-gradient(145deg,#7a2713,#ff8a36)}.gradient-three{background:linear-gradient(145deg,#41120f,#e9442f)}.gradient-four{background:linear-gradient(145deg,#27100d,#ff6938)}.gradient-five{background:linear-gradient(145deg,#68200c,#f5a33f)}
.abcg-media-card>div:last-child { display:flex;align-items:center;gap:12px;padding:15px; }
.abcg-media-card p { margin:0;display:flex;flex-direction:column;min-width:0;flex:1; }.abcg-media-card p strong{font-size:11px}.abcg-media-card p span{font-size:9px;color:var(--ab-muted);margin-top:4px}.abcg-media-card button{border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-primary);border-radius:9px;padding:7px 9px;font-size:9px}
.abcg-media-card.upload { min-height:255px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;cursor:pointer;border-style:dashed; }.abcg-media-add{width:44px;height:44px;border-radius:14px;background:rgba(255,122,47,.08);display:grid;place-items:center;color:var(--ab-primary);font-size:20px}.abcg-media-card.upload strong{font-size:11px}.abcg-media-card.upload span{font-size:9px;color:var(--ab-muted)}
.abcg-media-editor-preview { position:relative;min-height:340px;border-radius:17px;overflow:hidden;border:1px solid var(--ab-border); }.abcg-media-editor-preview .abcg-media-preview{height:100%;min-height:340px}.abcg-crop-guides{position:absolute;inset:12%;border:1px dashed rgba(255,255,255,.65);box-shadow:0 0 0 999px rgba(0,0,0,.2)}.abcg-edit-tools{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.abcg-edit-tools button{border:1px solid var(--ab-border);background:var(--ab-panel-2);color:var(--ab-text);border-radius:10px;padding:10px;font-size:10px}

@media(max-width:1100px){.abcg-media-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.abcg-media-grid{grid-template-columns:1fr}.abcg-media-toolbar{align-items:flex-start;flex-direction:column}.abcg-hours-table>div{grid-template-columns:1fr 72px 18px 72px}.abcg-hours-table em{grid-column:1/-1;text-align:left}.abcg-login-screen{position:fixed!important;inset:0!important;height:100dvh!important}.abcg-product-shell[hidden]{display:none!important}}


/* ---------------------------------------------------------
   V5 Brand Assets & Motion System
--------------------------------------------------------- */
.abcg-logo-frame,
.abcg-mini-logo,
.abcg-hero-client-logo {
  overflow:hidden;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}

.abcg-logo-frame img,
.abcg-mini-logo img,
.abcg-hero-client-logo img,
.abcg-login-panel-client img,
.abcg-preview-brand img {
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
}

.abcg-logo-frame-arcbyte {
  background:rgba(255,255,255,.96) !important;
  border:1px solid rgba(255,255,255,.12);
  padding:5px;
}
.abcg-logo-frame-cigkoftem {
  background:#fff !important;
  border:1px solid rgba(255,255,255,.12);
  padding:5px;
}
.abcg-brand-mark.abcg-logo-frame { width:44px;height:44px;border-radius:14px; }
.abcg-workspace-logo.abcg-logo-frame { width:38px;height:38px;border-radius:12px; }
.abcg-login-brand-mark.abcg-logo-frame { width:52px;height:52px;border-radius:16px; }

.abcg-login-client-lockup {
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}
.abcg-login-client-lockup .abcg-logo-frame {
  width:58px;height:58px;border-radius:15px;
}
.abcg-login-client-lockup .abcg-login-kicker { margin:0; }

.abcg-login-panel-client {
  display:flex;
  align-items:center;
  gap:11px;
  margin-bottom:22px;
  padding-bottom:18px;
  border-bottom:1px solid rgba(255,255,255,.08);
}
.abcg-login-panel-client img {
  width:54px;height:54px;
  padding:6px;
  border-radius:15px;
  background:#fff;
}
.abcg-login-panel-client span {
  color:#aeb8b2;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.09em;
  font-weight:700;
}

.abcg-topbar-title { min-width:0; }
.abcg-topbar-lockup {
  display:flex;
  align-items:center;
  gap:8px;
  margin-bottom:8px;
}
.abcg-mini-logo {
  height:24px;
  min-width:34px;
  max-width:86px;
  padding:3px 5px;
  border-radius:7px;
  background:#fff;
  border:1px solid var(--ab-border);
}
.abcg-mini-logo-arcbyte { width:70px; }
.abcg-mini-logo-cigkoftem { width:42px; }
.abcg-lockup-separator { color:var(--ab-muted);font-size:10px; }

.abcg-hero-brandline {
  display:flex;
  align-items:center;
  gap:12px;
}
.abcg-hero-client-logo {
  width:48px;height:48px;
  border-radius:13px;
  padding:5px;
  background:#fff;
  border:1px solid var(--ab-border);
}

.abcg-preview-brand {
  display:flex;
  align-items:center;
  gap:9px;
}
.abcg-preview-brand img {
  width:34px;height:34px;
  padding:4px;
  border-radius:9px;
  background:#fff;
}

/* Unified premium button motion */
.abcg-app button,
.abcg-primary-button,
.abcg-secondary-button,
.abcg-icon-button,
.abcg-action-tile,
.abcg-settings-grid>button,
.abcg-nav-item,
.abcg-login-submit {
  position:relative;
  overflow:hidden;
  transform:translateZ(0);
  transition:
    transform .22s cubic-bezier(.2,.8,.2,1),
    box-shadow .22s ease,
    border-color .22s ease,
    background-color .22s ease,
    color .22s ease,
    filter .22s ease;
}

.abcg-primary-button::after,
.abcg-login-submit::after {
  content:"";
  position:absolute;
  inset:-40% auto -40% -60%;
  width:38%;
  transform:skewX(-20deg);
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.42),transparent);
  transition:left .55s cubic-bezier(.2,.8,.2,1);
  pointer-events:none;
}
.abcg-primary-button:hover::after,
.abcg-login-submit:hover::after { left:125%; }

.abcg-primary-button:hover,
.abcg-login-submit:hover {
  transform:translateY(-2px) scale(1.01);
  filter:saturate(1.08);
  box-shadow:0 16px 34px rgba(255,91,45,.24);
}
.abcg-secondary-button:hover,
.abcg-icon-button:hover,
.abcg-review-actions button:hover,
.abcg-text-button:hover {
  transform:translateY(-2px);
  border-color:rgba(255,111,56,.42);
  box-shadow:0 12px 24px rgba(0,0,0,.14);
}
.abcg-action-tile:hover,
.abcg-settings-grid>button:hover,
.abcg-campaign-card:hover {
  transform:translateY(-4px);
  border-color:rgba(255,111,56,.34);
  box-shadow:0 18px 38px rgba(0,0,0,.16);
}
.abcg-nav-item:hover { transform:translateX(3px); }
.abcg-app button:active,
.abcg-primary-button:active,
.abcg-secondary-button:active,
.abcg-login-submit:active {
  transform:translateY(0) scale(.97);
  transition-duration:.08s;
}
.abcg-icon-button:hover > span,
.abcg-primary-button:hover > span,
.abcg-primary-button:hover > i,
.abcg-login-submit:hover > i {
  animation:abcgButtonIcon .65s ease;
}

@keyframes abcgButtonIcon {
  0%{transform:translateX(0)}
  45%{transform:translateX(4px)}
  100%{transform:translateX(0)}
}

@media (prefers-reduced-motion: reduce) {
  .abcg-app *, .abcg-app *::before, .abcg-app *::after {
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
    transition-duration:.01ms !important;
  }
}

@media (max-width:760px) {
  .abcg-topbar-lockup { display:none; }
  .abcg-login-client-lockup .abcg-logo-frame { width:48px;height:48px; }
}
