:root {
  --seg-bg: #090b12;
  --seg-bg-soft: #0f1420;
  --seg-bg-elevated: #121a28;
  --seg-panel: rgba(255, 255, 255, 0.06);
  --seg-panel-strong: rgba(255, 255, 255, 0.1);
  --seg-panel-border: rgba(255, 255, 255, 0.14);
  --seg-text: #f5f7fb;
  --seg-text-soft: rgba(245, 247, 251, 0.72);
  --seg-text-muted: rgba(245, 247, 251, 0.52);
  --seg-primary: #2b63ff;
  --seg-primary-soft: rgba(43, 99, 255, 0.18);
  --seg-success-soft: rgba(61, 220, 151, 0.14);
  --seg-success: #8df0bf;
  --seg-radius-sm: 12px;
  --seg-radius-md: 18px;
  --seg-radius-lg: 24px;
  --seg-shadow-rest: 0 10px 30px rgba(0, 0, 0, 0.22);
  --seg-shadow-hover: 0 18px 50px rgba(0, 0, 0, 0.34);
  --seg-ease-standard: cubic-bezier(0.16, 1, 0.3, 1);
  --seg-container: 1240px;
  --seg-nav-height: 86px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.seg-theme {
  margin: 0;
  background: radial-gradient(circle at top left, rgba(43, 99, 255, 0.08), transparent 28%), linear-gradient(180deg, #090b12 0%, #0b1018 100%);
  color: var(--seg-text);
  font-family: "Inter", sans-serif;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; height: auto; }
.seg-container { width: min(100% - 32px, var(--seg-container)); margin: 0 auto; }
.seg-site-shell { min-height: 100vh; }
.seg-main { padding-top: 12px; }

.seg-topbar-wrap { position: sticky; top: 0; z-index: 100; padding: 14px 0; }
.seg-glass-nav {
  width: min(100% - 20px, calc(var(--seg-container) + 20px));
  margin: 0 auto;
  background: rgba(10, 14, 22, 0.58);
  border: 1px solid rgba(255,255,255,0.09);
  border-radius: 22px;
  backdrop-filter: blur(16px);
  box-shadow: 0 10px 35px rgba(0,0,0,0.28);
  transition: background 220ms var(--seg-ease-standard), border-color 220ms var(--seg-ease-standard), box-shadow 220ms var(--seg-ease-standard);
}
.seg-glass-nav.is-scrolled {
  background: rgba(10, 14, 22, 0.72);
  border-color: rgba(255,255,255,0.14);
  box-shadow: 0 16px 40px rgba(0,0,0,0.34);
}
.seg-topbar-inner {
  min-height: 68px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  padding: 0 20px;
}
.seg-brand { display: inline-flex; align-items: center; gap: 12px; }
.seg-brand-logo { display: block; width: auto; height: 36px; max-height: 36px; max-width: 180px; object-fit: contain; }
.seg-brand-mark {
  width: 12px; height: 12px; border-radius: 999px; background: linear-gradient(135deg, #7aa2ff 0%, #2b63ff 100%);
  box-shadow: 0 0 0 6px rgba(43,99,255,0.14); flex: 0 0 auto;
}
.seg-brand-text { display: flex; flex-direction: column; line-height: 1.05; }
.seg-brand-name, .seg-footer-title {
  font-family: "Azeret Mono", monospace; font-weight: 700; letter-spacing: -0.04em; color: var(--seg-text);
}
.seg-brand-sub { font-size: 11px; text-transform: uppercase; letter-spacing: 0.12em; color: var(--seg-text-muted); }
.seg-nav { display: flex; align-items: center; gap: 22px; }
.seg-nav a { color: var(--seg-text-soft); font-size: 14px; font-weight: 500; }
.seg-nav a:hover, .seg-nav a:focus-visible { color: var(--seg-text); }
.seg-topbar-actions { display: flex; align-items: center; gap: 10px; }

.seg-btn {
  display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 18px;
  border-radius: 14px; border: 1px solid transparent; font-size: 14px; font-weight: 600;
  transition: transform 180ms var(--seg-ease-standard), background 180ms var(--seg-ease-standard), border-color 180ms var(--seg-ease-standard), box-shadow 180ms var(--seg-ease-standard);
}
.seg-btn:hover, .seg-btn:focus-visible { transform: translateY(-1px); }
.seg-btn-primary { background: linear-gradient(135deg, #2b63ff 0%, #1d4fff 100%); color: #fff; box-shadow: 0 10px 22px rgba(43,99,255,0.24); }
.seg-btn-secondary { background: rgba(255,255,255,0.06); color: var(--seg-text); border-color: rgba(255,255,255,0.12); }
.seg-btn-ghost { background: transparent; color: var(--seg-text-soft); border-color: rgba(255,255,255,0.08); }

.seg-glass-panel, .seg-glass-soft {
  position: relative; border: 1px solid var(--seg-panel-border); backdrop-filter: blur(18px); box-shadow: var(--seg-shadow-rest);
}
.seg-glass-panel { background: linear-gradient(180deg, rgba(255,255,255,0.1), rgba(255,255,255,0.05)); border-radius: var(--seg-radius-lg); }
.seg-glass-soft { background: rgba(255,255,255,0.06); border-radius: var(--seg-radius-md); }
.seg-solid-panel, .seg-contact-form-wrap {
  background: #0f1521; border: 1px solid rgba(255,255,255,0.08); border-radius: var(--seg-radius-lg); box-shadow: var(--seg-shadow-rest);
}

.seg-kicker {
  display: inline-flex; align-items: center; gap: 8px; color: #9ab6ff; font-size: 12px; font-weight: 700; letter-spacing: 0.14em; text-transform: uppercase;
}
.seg-hero-title, .seg-page-hero h1, .seg-client-hero h1, .seg-section-heading h2, .seg-cta-band h2, .seg-ops-band h2 {
  margin: 0; font-family: "Azeret Mono", monospace; letter-spacing: -0.04em; line-height: 0.98;
}
.seg-hero-title { font-size: clamp(28px, 4vw, 48px); max-width: 12ch; }
.seg-page-hero h1, .seg-client-hero h1 { font-size: clamp(34px, 6vw, 58px); }
.seg-hero-text, .seg-page-hero p, .seg-client-hero p, .seg-section-heading p, .seg-cta-band p, .seg-ops-band p,
.seg-service-card p, .seg-route-card p, .seg-action-card p { color: var(--seg-text-soft); font-size: 16px; }

.seg-hero, .seg-page-hero, .seg-client-hero { padding: 8px 0 16px; }
.seg-hero-grid, .seg-ops-band, .seg-cta-band { display: grid; grid-template-columns: 1.2fr 0.8fr; gap: 18px; align-items: center; }
.seg-hero-copy { display: flex; flex-direction: column; justify-content: center; gap: 10px; }
.seg-hero-actions, .seg-cta-actions { display: flex; flex-wrap: wrap; gap: 12px; }
.seg-hero-panel, .seg-page-hero-panel, .seg-ops-band, .seg-cta-band, .seg-contact-shell { padding: 18px; }
.seg-panel-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: 18px; }
.seg-panel-eyebrow { color: var(--seg-text-muted); font-size: 12px; text-transform: uppercase; letter-spacing: 0.12em; }
.seg-panel-status { padding: 6px 10px; border-radius: 999px; background: var(--seg-success-soft); color: var(--seg-success); font-size: 12px; font-weight: 600; }
.seg-lane-list { display: grid; gap: 14px; }
.seg-ops-steps { display: grid; gap: 8px; }
.seg-ops-steps { padding-left: 4px; }
.seg-lane-item, .seg-step-item {
  padding: 14px 16px; border-radius: 16px; background: rgba(255,255,255,0.04); border: 1px solid rgba(255,255,255,0.08);
}
.seg-lane-item strong { display: block; margin-bottom: 4px; }
.seg-lane-item span { color: var(--seg-text-soft); font-size: 14px; }
.seg-step-item { display: flex; align-items: center; gap: 12px; }
.seg-step-item { padding: 5px 10px; background: rgba(255,255,255,0.03); border-radius: 8px; border: 1px solid rgba(255,255,255,0.06); font-size: 13px; }
.seg-step-item span { font-family: "Azeret Mono", monospace; color: #90b0ff; }

.seg-section { padding: 28px 0 36px; }
.seg-section-heading { margin-bottom: 28px; }
.seg-section-heading h2 { font-size: clamp(28px, 4vw, 44px); margin-top: 12px; margin-bottom: 10px; }
.seg-card-grid { display: grid; gap: 18px; }
.seg-card-grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.seg-proof-grid { display: grid; gap: 18px; }
.seg-card-grid-4, .seg-proof-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.seg-proof-card, .seg-service-card, .seg-route-card, .seg-action-card, .seg-summary-card {
  padding: 22px;
  transition: transform 220ms var(--seg-ease-standard), border-color 220ms var(--seg-ease-standard), box-shadow 220ms var(--seg-ease-standard);
}
.seg-proof-card:hover, .seg-service-card:hover, .seg-route-card:hover, .seg-action-card:hover, .seg-summary-card:hover {
  transform: translateY(-3px); border-color: rgba(122,162,255,0.24); box-shadow: var(--seg-shadow-hover);
}
.seg-service-card h3, .seg-route-card h3, .seg-action-card h3 { margin: 0 0 10px; font-size: 22px; line-height: 1.12; }
.seg-metric-value { display: block; font-family: "Azeret Mono", monospace; font-size: 22px; margin-bottom: 8px; }
.seg-metric-label { display: block; color: var(--seg-text-soft); }

.seg-client-layout {
  display: grid; grid-template-columns: minmax(0, 280px) minmax(0, 1fr); gap: 24px; align-items: start;
}
.seg-client-sidebar .panel, .seg-client-sidebar .panel-sidebar {
  background: #0f1521; border: 1px solid rgba(255,255,255,0.08); border-radius: 18px; overflow: hidden; margin-bottom: 18px;
}
.seg-client-sidebar .panel-heading { background: rgba(255,255,255,0.03); border-bottom: 1px solid rgba(255,255,255,0.08); color: var(--seg-text); }
.seg-client-sidebar .list-group-item {
  background: transparent; border-color: rgba(255,255,255,0.06); color: var(--seg-text-soft);
}
.seg-client-sidebar .list-group-item.active { background: rgba(43,99,255,0.16); color: #fff; border-color: rgba(43,99,255,0.28); }

.seg-dashboard-zone { padding: 20px 0 48px; }
.seg-dashboard-row { display: grid; gap: 18px; margin-bottom: 18px; }
.seg-dashboard-summary { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.seg-dashboard-actions { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.seg-summary-label { display: block; color: var(--seg-text-muted); font-size: 13px; margin-bottom: 10px; }
.seg-summary-value { display: block; font-family: "Azeret Mono", monospace; font-size: 36px; line-height: 1; margin-bottom: 14px; }
.seg-summary-card a { color: #aabfff; font-size: 14px; font-weight: 600; }
.seg-home-panels .row { display: flex; flex-wrap: wrap; }
.seg-home-panel { height: 100%; margin-bottom: 18px; }
.seg-home-panel-head, .seg-home-panel-footer { padding: 18px 20px; border-bottom: 1px solid rgba(255,255,255,0.08); }
.seg-home-panel-footer { border-top: 1px solid rgba(255,255,255,0.08); border-bottom: 0; }
.seg-home-panel-body { padding: 18px 20px; color: var(--seg-text-soft); }
.seg-home-panel .list-group-item { background: transparent; color: var(--seg-text-soft); border-color: rgba(255,255,255,0.06); }
.seg-home-panel .list-group-item.active { background: rgba(43,99,255,0.16); color: #fff; }

.seg-contact-shell { background: rgba(255,255,255,0.03); border: 1px solid rgba(255,255,255,0.08); border-radius: var(--seg-radius-lg); }
.seg-contact-form-wrap { padding: 24px; }
.seg-form-label { color: var(--seg-text-soft); font-weight: 600; }
.seg-form-alert { padding: 14px 16px; border-radius: 14px; margin-bottom: 20px; }
.seg-form-alert-success { background: rgba(61,220,151,0.12); color: #baf7d7; }
.seg-form-alert-error { background: rgba(255,107,129,0.12); color: #ffc5cf; }

.seg-client-module { margin-bottom: 28px; }
.seg-data-module, .seg-store-shell {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: var(--seg-radius-lg);
  padding: 24px;
  box-shadow: var(--seg-shadow-rest);
}
.seg-module-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 16px;
  margin-bottom: 20px;
}
.seg-module-title {
  margin: 10px 0 8px;
  font-family: "Azeret Mono", monospace;
  letter-spacing: -0.04em;
  font-size: clamp(24px, 4vw, 36px);
  line-height: 1.02;
}
.seg-module-text { color: var(--seg-text-soft); margin: 0; }
.seg-cell-muted { color: var(--seg-text-muted); font-size: 13px; }
.seg-btn-sm { min-height: 38px; padding: 0 14px; font-size: 13px; }

.seg-table-shell {
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 18px;
  overflow: hidden;
}
.seg-command-table {
  margin-bottom: 0;
  background: transparent;
}
.seg-command-table thead th {
  background: rgba(255,255,255,0.04);
  color: var(--seg-text-soft);
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  border-bottom: 1px solid rgba(255,255,255,0.08) !important;
}
.seg-command-table tbody tr {
  transition: background 180ms var(--seg-ease-standard);
  cursor: pointer;
}
.seg-command-table tbody tr:hover {
  background: rgba(43,99,255,0.06);
}
.seg-command-table td, .seg-command-table th {
  padding: 16px 18px !important;
  vertical-align: middle !important;
}
.seg-ticket-link {
  display: inline-flex;
  flex-direction: column;
  gap: 4px;
}
.seg-ticket-link .ticket-number {
  color: #94b0ff;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
}
.seg-ticket-link .ticket-subject.unread {
  color: #fff;
  font-weight: 700;
}

.seg-store-head { margin-bottom: 24px; }
.seg-store-intro, .seg-store-domain-block, .seg-config-card, .seg-upsell-card {
  margin-bottom: 22px;
}
.seg-store-product-title {
  margin: 0 0 10px;
  font-family: "Azeret Mono", monospace;
  letter-spacing: -0.04em;
  font-size: clamp(24px, 4vw, 34px);
}
.seg-store-term-box {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  padding: 18px;
}
.seg-store-term-box h4, .seg-store-section-title {
  margin: 0 0 14px;
  color: var(--seg-text);
  font-size: 14px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.seg-store-domain-block, .seg-config-card {
  padding: 22px;
}
.seg-store-tabs {
  border-bottom: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 18px;
}
.seg-store-tabs > li {
  float: none;
  margin-bottom: 0;
}
.seg-store-tabs > li > a {
  margin: 0;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 14px;
  background: rgba(255,255,255,0.04);
  color: var(--seg-text-soft);
  padding: 12px 16px;
}
.seg-store-tabs > li.active > a,
.seg-store-tabs > li.active > a:focus,
.seg-store-tabs > li.active > a:hover,
.seg-store-tabs > li > a:hover {
  background: rgba(43,99,255,0.14);
  border-color: rgba(43,99,255,0.32);
  color: #fff;
}
.seg-store-tab-content {
  background: transparent;
  border: 0;
  padding: 10px 0 0;
}
.seg-domain-split {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 220px);
  gap: 10px;
}
.domain-validation {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  color: var(--seg-text-soft);
}
.domain-validation.ok {
  color: var(--seg-success);
}
.seg-inline-errors {
  margin-top: 8px;
  padding: 10px 12px;
  border-radius: 12px;
  background: rgba(255,107,129,0.12);
  color: #ffc5cf;
}
.seg-store-actions {
  margin-top: 4px;
}
.seg-upsell-card {
  padding: 22px;
}
.seg-upsell-card .features {
  list-style: none;
  padding: 0;
  margin: 14px 0;
  display: grid;
  gap: 8px;
}
.seg-upsell-card .features li {
  color: var(--seg-text-soft);
}

input, select, textarea, .form-control {
  background: #101726 !important; color: var(--seg-text) !important; border: 1px solid rgba(255,255,255,0.1) !important; box-shadow: none !important;
}
input:focus, select:focus, textarea:focus, .form-control:focus {
  border-color: rgba(43,99,255,0.55) !important; box-shadow: 0 0 0 4px rgba(43,99,255,0.14) !important; outline: none;
}
.seg-invoice-shell .card, .seg-invoice-shell .invoice-status, .seg-invoice-shell .payment-btn-container {
  background: #0f1521;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  box-shadow: var(--seg-shadow-rest);
}
.seg-auth-card, .seg-auth-register { padding: 24px; }
.seg-auth-head { margin-bottom: 18px; }
.seg-auth-fields { display: grid; gap: 14px; }
.seg-auth-actions {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  margin-top: 18px;
}
.seg-auth-remember, .seg-auth-footer, .seg-auth-link { color: var(--seg-text-soft); }
.seg-auth-footer {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-top: 18px;
  padding-top: 16px;
  border-top: 1px solid rgba(255,255,255,0.08);
}
.seg-detail-card {
  padding: 22px;
  margin-bottom: 20px;
}
.seg-detail-title {
  margin: 0 0 18px;
  font-family: "Azeret Mono", monospace;
  font-size: 22px;
  letter-spacing: -0.03em;
}
.seg-product-shell .card,
.seg-ticket-shell .card,
.seg-detail-shell .card,
.seg-domains-shell .btn-group,
.seg-domains-shell form#domainForm {
  margin-bottom: 20px;
}
.seg-product-shell .product-status,
.seg-product-shell .product-details-tab-container,
.seg-ticket-shell .ticket-reply,
.seg-ticket-shell #ticketReplyContainer,
.seg-domains-shell .btn-group .btn {
  background: rgba(255,255,255,0.03);
  border-color: rgba(255,255,255,0.08);
}
.seg-product-shell .nav-tabs,
.seg-domains-shell .btn-group,
.seg-ticket-shell .ticket-actions {
  margin-bottom: 16px;
}
.seg-product-shell .nav-tabs > li > a,
.seg-product-shell .nav-tabs .nav-link,
.seg-ticket-shell .btn-default,
.seg-domains-shell .btn-default {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.1);
  color: var(--seg-text-soft);
}
.seg-product-shell .nav-tabs > li.active > a,
.seg-product-shell .nav-tabs > li > a:hover,
.seg-product-shell .nav-tabs .nav-link.active,
.seg-ticket-shell .btn-default:hover,
.seg-domains-shell .btn-default:hover {
  background: rgba(43,99,255,0.14);
  border-color: rgba(43,99,255,0.28);
  color: #fff;
}
.seg-ticket-shell .message,
.seg-ticket-shell .attachments,
.seg-ticket-shell .posted-by,
.seg-ticket-shell .custom-file-label,
.seg-product-shell .card-body,
.seg-detail-shell .card-body {
  color: var(--seg-text-soft);
}
.seg-ticket-shell .ticket-subject,
.seg-product-shell h3,
.seg-product-shell h4,
.seg-detail-shell .card-title,
.seg-domains-shell .dropdown-menu,
.seg-domains-shell .dropdown-item {
  color: var(--seg-text);
}
.seg-invoice-body {
  background: radial-gradient(circle at top left, rgba(43, 99, 255, 0.08), transparent 28%), linear-gradient(180deg, #090b12 0%, #0b1018 100%);
}
.seg-invoice-shell {
  padding: 28px 18px 40px;
  color: var(--seg-text);
}
.seg-invoice-shell .invoice-header,
.seg-invoice-shell .table,
.seg-invoice-shell .small-text,
.seg-invoice-shell address,
.seg-invoice-shell .card-text,
.seg-invoice-shell .card-title,
.seg-invoice-shell .total-row {
  color: var(--seg-text-soft);
}
.seg-invoice-shell .invoice-status span,
.seg-invoice-shell .btn,
.seg-invoice-shell .custom-select {
  border-radius: 14px;
}
.seg-invoice-shell .table > thead > tr > td,
.seg-invoice-shell .table > tbody > tr > td {
  border-color: rgba(255,255,255,0.08) !important;
}

.seg-footer { padding: 56px 0 30px; border-top: 1px solid rgba(255,255,255,0.08); background: rgba(4,7,12,0.48); }
.seg-footer-grid { display: grid; grid-template-columns: 1.3fr 1fr 1fr 1fr; gap: 24px; }
.seg-footer h4 { margin: 0 0 14px; font-size: 14px; }
.seg-footer p, .seg-footer li, .seg-footer a, .seg-footer-meta { color: var(--seg-text-soft); font-size: 14px; }
.seg-footer ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 10px; }
.seg-footer-brand { display: inline-flex; align-items: center; gap: 12px; margin-bottom: 14px; }
.seg-footer-meta { display: flex; justify-content: space-between; gap: 16px; margin-top: 28px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,0.08); }

[data-seg-reveal], [data-seg-card], [data-seg-hero-stagger] { will-change: transform, opacity; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation: none !important; transition-duration: 0.01ms !important; transition-delay: 0ms !important; }
}

@media (max-width: 1100px) {
  .seg-hero-grid, .seg-ops-band, .seg-cta-band, .seg-footer-grid, .seg-client-layout { grid-template-columns: 1fr; }
  .seg-dashboard-summary { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .seg-dashboard-actions, .seg-card-grid-3, .seg-card-grid-4, .seg-proof-grid { grid-template-columns: 1fr 1fr; }
  .seg-nav { display: none; }
}

@media (max-width: 720px) {
  .seg-main { padding-top: 12px; }
  .seg-topbar-inner { padding: 0 14px; }
  .seg-hero-title { font-size: 40px; }
  .seg-page-hero h1, .seg-client-hero h1, .seg-section-heading h2 { font-size: 30px; }
  .seg-dashboard-summary, .seg-dashboard-actions, .seg-card-grid-3, .seg-card-grid-4, .seg-proof-grid { grid-template-columns: 1fr; }
  .seg-footer-meta { flex-direction: column; align-items: flex-start; }
}

/* === Phase P: Content, Domain, Account & Auth shell styling === */
.seg-content-shell,
.seg-domain-shell,
.seg-account-shell {
  margin-bottom: 28px;
}

/* Dark cards inside new shells */
.seg-content-shell .card,
.seg-domain-shell .card,
.seg-account-shell .card,
.seg-auth-shell .card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  box-shadow: var(--seg-shadow-rest);
}
.seg-content-shell .card-body,
.seg-domain-shell .card-body,
.seg-account-shell .card-body,
.seg-auth-shell .card-body {
  color: var(--seg-text-soft);
}
.seg-content-shell .card-title,
.seg-domain-shell .card-title,
.seg-account-shell .card-title,
.seg-auth-shell .card-title,
.seg-content-shell h1,
.seg-domain-shell h1,
.seg-account-shell h1,
.seg-auth-shell h1,
.seg-content-shell h3,
.seg-domain-shell h3,
.seg-account-shell h3,
.seg-auth-shell h3 {
  color: var(--seg-text);
}

/* Tables */
.seg-content-shell .table,
.seg-domain-shell .table,
.seg-account-shell .table {
  background: transparent;
  color: var(--seg-text-soft);
}
.seg-content-shell .table thead th,
.seg-domain-shell .table thead th,
.seg-account-shell .table thead th,
.seg-content-shell .table tbody td,
.seg-domain-shell .table tbody td,
.seg-account-shell .table tbody td {
  border-color: rgba(255,255,255,0.08) !important;
  color: var(--seg-text-soft);
}

/* List groups */
.seg-content-shell .list-group-item,
.seg-domain-shell .list-group-item,
.seg-account-shell .list-group-item {
  background: transparent;
  border-color: rgba(255,255,255,0.06);
  color: var(--seg-text-soft);
}
.seg-content-shell .list-group-item:hover,
.seg-domain-shell .list-group-item:hover,
.seg-account-shell .list-group-item:hover {
  background: rgba(43,99,255,0.08);
  color: #fff;
}

/* Badges */
.seg-content-shell .badge-info,
.seg-domain-shell .badge-info,
.seg-account-shell .badge-info {
  background: rgba(43,99,255,0.16);
  color: #b3c8ff;
}
.seg-content-shell .badge-pill,
.seg-domain-shell .badge-pill,
.seg-account-shell .badge-pill {
  border-radius: 999px;
}

/* Pagination */
.seg-content-shell .pagination .page-link,
.seg-domain-shell .pagination .page-link,
.seg-account-shell .pagination .page-link {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08);
  color: var(--seg-text-soft);
  border-radius: 12px;
  margin: 0 4px;
}
.seg-content-shell .pagination .page-item.active .page-link,
.seg-domain-shell .pagination .page-item.active .page-link,
.seg-account-shell .pagination .page-item.active .page-link {
  background: rgba(43,99,255,0.2);
  border-color: rgba(43,99,255,0.4);
  color: #fff;
}
.seg-content-shell .pagination .page-link:hover,
.seg-domain-shell .pagination .page-link:hover,
.seg-account-shell .pagination .page-link:hover {
  background: rgba(43,99,255,0.12);
  border-color: rgba(43,99,255,0.25);
  color: #fff;
}

/* Domain tabs */
.seg-domain-shell .nav-tabs {
  border-bottom: 1px solid rgba(255,255,255,0.08);
  margin-bottom: 18px;
}
.seg-domain-shell .nav-tabs .nav-link {
  color: var(--seg-text-soft);
  border: none;
  border-bottom: 2px solid transparent;
  background: transparent;
  padding: 10px 16px;
}
.seg-domain-shell .nav-tabs .nav-link.active,
.seg-domain-shell .nav-tabs .nav-link:hover {
  color: var(--seg-text);
  border-bottom-color: var(--seg-accent);
  background: rgba(43,99,255,0.08);
}
.seg-domain-shell .tab-content .tab-pane {
  color: var(--seg-text-soft);
}

/* Account modals */
.seg-account-shell .modal-content {
  background: #0f1521;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  color: var(--seg-text-soft);
}
.seg-account-shell .modal-header {
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.seg-account-shell .modal-header .close {
  color: var(--seg-text-soft);
  text-shadow: none;
  opacity: 0.7;
}
.seg-account-shell .modal-footer {
  border-top: 1px solid rgba(255,255,255,0.08);
}

/* Auth nested card neutralization (password reset, user-password) */
.seg-auth-shell .card {
  background: transparent;
  border: none;
  box-shadow: none;
  border-radius: 0;
}
.seg-auth-shell .card-body {
  padding: 0;
  color: var(--seg-text-soft);
}
.seg-auth-shell .card-title {
  color: var(--seg-text);
}

/* Alerts inside new shells */
.seg-content-shell .alert,
.seg-domain-shell .alert,
.seg-account-shell .alert,
.seg-auth-shell .alert {
  border-radius: 14px;
}

/* Search inputs inside content shells */
.seg-content-shell .input-group .form-control,
.seg-content-shell .input-group .btn {
  border-radius: 14px;
}
.seg-content-shell .input-group .form-control {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: var(--seg-text);
}
.seg-content-shell .input-group .btn-primary {
  border-radius: 14px;
}

/* Text muted overrides */
.seg-content-shell .text-muted,
.seg-domain-shell .text-muted,
.seg-account-shell .text-muted,
.seg-auth-shell .text-muted {
  color: rgba(200,210,230,0.55) !important;
}

/* Back buttons and default buttons inside new shells */
.seg-content-shell .btn-default,
.seg-domain-shell .btn-default,
.seg-account-shell .btn-default,
.seg-auth-shell .btn-default {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.10);
  color: var(--seg-text-soft);
  border-radius: 14px;
}
.seg-content-shell .btn-default:hover,
.seg-domain-shell .btn-default:hover,
.seg-account-shell .btn-default:hover,
.seg-auth-shell .btn-default:hover {
  background: rgba(43,99,255,0.14);
  border-color: rgba(43,99,255,0.28);
  color: #fff;
}

/* === Phase Q: Billing shell extensions === */
.seg-billing-shell {
  margin-bottom: 28px;
}
.seg-billing-shell .card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  box-shadow: var(--seg-shadow-rest);
}
.seg-billing-shell .card-body {
  color: var(--seg-text-soft);
}
.seg-billing-shell .card-title,
.seg-billing-shell h1,
.seg-billing-shell h3 {
  color: var(--seg-text);
}
.seg-billing-shell .alert {
  border-radius: 14px;
}

/* === Phase S: Store shell overrides === */
.seg-content-shell .landing-page,
.seg-content-shell .landing-page.bg-white {
  background: transparent !important;
  color: var(--seg-text-soft);
}
.seg-content-shell .landing-page .hero,
.seg-content-shell .landing-page .navbar-light,
.seg-content-shell .landing-page .bg-light {
  background: transparent !important;
}
.seg-content-shell .landing-page h2,
.seg-content-shell .landing-page h3,
.seg-content-shell .landing-page .hero h2,
.seg-content-shell .landing-page .hero h3 {
  color: var(--seg-text);
}
.seg-content-shell .landing-page .navbar-light .navbar-toggler-icon {
  filter: invert(1);
}
.seg-content-shell .landing-page .text-muted,
.seg-content-shell .landing-page .text-black-50 {
  color: rgba(200,210,230,0.55) !important;
}
.seg-content-shell .landing-page .btn-default {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.10);
  color: var(--seg-text-soft);
  border-radius: 14px;
}
.seg-content-shell .landing-page .btn-default:hover {
  background: rgba(43,99,255,0.14);
  border-color: rgba(43,99,255,0.28);
  color: #fff;
}

/* === Phase T: Final polish sweep — datatables, mobile nav, forms, alerts, utilities === */

/* DataTables search/filter inputs */
.dataTables_wrapper .dataTables_filter input,
.dataTables_wrapper .dataTables_length select,
.table-search .form-control,
.input-group-merge .form-control {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: var(--seg-text);
  border-radius: 14px;
  padding: 10px 14px;
}
.dataTables_wrapper .dataTables_filter input:focus,
.dataTables_wrapper .dataTables_length select:focus,
.table-search .form-control:focus,
.input-group-merge .form-control:focus {
  border-color: rgba(43,99,255,0.55);
  box-shadow: 0 0 0 4px rgba(43,99,255,0.14);
  outline: none;
  background: rgba(255,255,255,0.06);
}
.dataTables_wrapper .dataTables_filter label,
.dataTables_wrapper .dataTables_info,
.dataTables_wrapper .dataTables_paginate {
  color: var(--seg-text-soft) !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button {
  background: rgba(255,255,255,0.04);
  border-color: rgba(255,255,255,0.08) !important;
  color: var(--seg-text-soft) !important;
  border-radius: 12px;
  margin: 0 3px;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.current,
.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover,
.dataTables_wrapper .dataTables_paginate .paginate_button:hover {
  background: rgba(43,99,255,0.2) !important;
  border-color: rgba(43,99,255,0.4) !important;
  color: #fff !important;
}
.dataTables_wrapper .dataTables_paginate .paginate_button.disabled {
  opacity: 0.4;
}

/* Mobile nav toggle */
.seg-nav-toggle {
  display: none;
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 12px;
  padding: 8px 12px;
  color: var(--seg-text);
  cursor: pointer;
}
.seg-nav-toggle:hover {
  background: rgba(43,99,255,0.14);
  border-color: rgba(43,99,255,0.28);
}
.seg-nav-toggle .seg-hamburger {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 22px;
}
.seg-nav-toggle .seg-hamburger span {
  display: block;
  height: 2px;
  background: currentColor;
  border-radius: 2px;
  transition: transform 0.25s ease, opacity 0.25s ease;
}

/* Form controls global dark */
.form-control,
.custom-select,
textarea.form-control {
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.08);
  color: var(--seg-text);
  border-radius: 14px;
}
.form-control:focus,
.custom-select:focus,
textarea.form-control:focus {
  background: rgba(255,255,255,0.06);
  border-color: rgba(43,99,255,0.55);
  box-shadow: 0 0 0 4px rgba(43,99,255,0.14);
  color: var(--seg-text);
}
.form-control::placeholder {
  color: rgba(200,210,230,0.35);
}
select.form-control option,
.custom-select option {
  background: #0f1521;
  color: var(--seg-text);
}
.input-group-text {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.08);
  color: var(--seg-text-soft);
  border-radius: 14px;
}

/* Checkbox / radio dark */
.custom-control-input:checked ~ .custom-control-label::before {
  background-color: var(--seg-accent);
  border-color: var(--seg-accent);
}
.custom-control-label::before {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.12);
}
.custom-control-label {
  color: var(--seg-text-soft);
}

/* Progress bars */
.progress {
  background: rgba(255,255,255,0.06);
  border-radius: 999px;
}
.progress-bar {
  background: var(--seg-accent);
  border-radius: 999px;
}
.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255,255,255,0.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,0.15) 50%, rgba(255,255,255,0.15) 75%, transparent 75%, transparent);
}

/* Alert dark overrides */
.alert-success {
  background: rgba(61,220,151,0.10);
  border-color: rgba(61,220,151,0.20);
  color: #baf7d7;
}
.alert-info {
  background: rgba(43,99,255,0.10);
  border-color: rgba(43,99,255,0.20);
  color: #b3c8ff;
}
.alert-warning {
  background: rgba(255,193,7,0.10);
  border-color: rgba(255,193,7,0.20);
  color: #ffe082;
}
.alert-danger {
  background: rgba(255,107,129,0.10);
  border-color: rgba(255,107,129,0.20);
  color: #ffc5cf;
}

/* Breadcrumb dark */
.breadcrumb {
  background: transparent;
}
.breadcrumb-item.active,
.breadcrumb-item + .breadcrumb-item::before {
  color: rgba(200,210,230,0.40);
}
.breadcrumb-item a {
  color: var(--seg-text-soft);
}
.breadcrumb-item a:hover {
  color: var(--seg-accent);
}

/* Badge dark variants */
.badge-success { background: rgba(61,220,151,0.16); color: #baf7d7; }
.badge-danger  { background: rgba(255,107,129,0.16); color: #ffc5cf; }
.badge-warning { background: rgba(255,193,7,0.16); color: #ffe082; }
.badge-info    { background: rgba(43,99,255,0.16); color: #b3c8ff; }

/* Tooltip / popover dark */
.tooltip .tooltip-inner {
  background: #0f1521;
  border: 1px solid rgba(255,255,255,0.10);
  color: var(--seg-text-soft);
  border-radius: 12px;
  box-shadow: var(--seg-shadow-rest);
}
.tooltip .arrow::before {
  border-top-color: #0f1521;
}
.popover {
  background: #0f1521;
  border: 1px solid rgba(255,255,255,0.10);
  border-radius: 18px;
  box-shadow: var(--seg-shadow-rest);
}
.popover-header {
  background: rgba(255,255,255,0.03);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  color: var(--seg-text);
}
.popover-body {
  color: var(--seg-text-soft);
}

/* Modal global dark */
.modal-content {
  background: #0f1521;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  color: var(--seg-text-soft);
}
.modal-header {
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.modal-header .close {
  color: var(--seg-text-soft);
  text-shadow: none;
  opacity: 0.7;
}
.modal-footer {
  border-top: 1px solid rgba(255,255,255,0.08);
}

/* Dropdown dark */
.dropdown-menu {
  background: #0f1521;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 16px;
  box-shadow: var(--seg-shadow-rest);
}
.dropdown-item {
  color: var(--seg-text-soft);
  border-radius: 10px;
  margin: 2px 6px;
  padding: 8px 12px;
}
.dropdown-item:hover,
.dropdown-item:focus {
  background: rgba(43,99,255,0.10);
  color: #fff;
}
.dropdown-divider {
  border-top: 1px solid rgba(255,255,255,0.08);
}

/* Card global neutral */
.card {
  background: rgba(255,255,255,0.03);
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
}
.card-body {
  color: var(--seg-text-soft);
}
.card-title, .card-header {
  color: var(--seg-text);
}

/* List group global */
.list-group-item {
  background: transparent;
  border-color: rgba(255,255,255,0.06);
  color: var(--seg-text-soft);
}
.list-group-item:hover {
  background: rgba(43,99,255,0.06);
  color: #fff;
}

/* Nav tabs global */
.nav-tabs {
  border-bottom: 1px solid rgba(255,255,255,0.08);
}
.nav-tabs .nav-link {
  color: var(--seg-text-soft);
  border: none;
  border-bottom: 2px solid transparent;
  background: transparent;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-link:hover {
  color: var(--seg-text);
  border-bottom-color: var(--seg-accent);
  background: rgba(43,99,255,0.08);
}

/* Label / status badges used in WHMCS */
.label {
  border-radius: 999px;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 500;
}
.label-success { background: rgba(61,220,151,0.16); color: #baf7d7; }
.label-danger  { background: rgba(255,107,129,0.16); color: #ffc5cf; }
.label-warning { background: rgba(255,193,7,0.16); color: #ffe082; }
.label-info    { background: rgba(43,99,255,0.16); color: #b3c8ff; }
.label-default { background: rgba(255,255,255,0.08); color: var(--seg-text-soft); }

/* Blockquote / well */
blockquote, .well {
  background: rgba(255,255,255,0.03);
  border-left: 3px solid var(--seg-accent);
  border-radius: 0 14px 14px 0;
  color: var(--seg-text-soft);
}

/* Store hero spacing refinement */
.seg-content-shell .landing-page .hero {
  padding-top: 48px;
  padding-bottom: 32px;
}
.seg-content-shell .landing-page .container {
  padding-left: 18px;
  padding-right: 18px;
}

/* Mobile nav visibility */
@media (max-width: 1100px) {
  .seg-nav-toggle { display: inline-flex; }
  .seg-glass-nav { position: relative; }
  .seg-nav { display: none; }
  .seg-nav.open {
    display: flex;
    flex-direction: column;
    position: absolute;
    top: calc(100% + 10px);
    left: 12px;
    right: 12px;
    width: auto;
    background: rgba(4,7,12,0.97);
    backdrop-filter: blur(24px) saturate(1.2);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    padding: 12px;
    z-index: 1000;
    gap: 6px;
    box-shadow: 0 18px 40px rgba(0,0,0,0.34);
    overflow: visible;
    max-height: none;
  }
  .seg-nav.open a { padding: 12px 14px; border-radius: 12px; }
  .seg-nav.open a:hover { background: rgba(43,99,255,0.12); }
}

/* Smooth anchor scroll offset for fixed header */
html { scroll-padding-top: calc(var(--seg-nav-height) + 20px); }

/* FIX: Hidden overlay + sidebar cards + card spacing */
#fullpage-overlay.hidden,
.hidden { display: none !important; }

.seg-client-sidebar .card,
.seg-client-sidebar .card-sidebar {
  background: #0f1521;
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 18px;
  overflow: hidden;
  margin-bottom: 18px;
}
.seg-client-sidebar .card-header {
  background: rgba(255,255,255,0.03);
  border-bottom: 1px solid rgba(255,255,255,0.08);
  color: var(--seg-text);
}
.seg-client-sidebar .card-title {
  color: var(--seg-text);
  font-size: 15px;
  margin: 0;
}
.seg-client-sidebar .card-body,
.seg-client-sidebar .list-group-item {
  background: transparent;
  color: var(--seg-text-soft);
  border-color: rgba(255,255,255,0.06);
}
.seg-client-sidebar .bg-light {
  background: #0f1521 !important;
}
.seg-content-shell .card,
.seg-domain-shell .card,
.seg-account-shell .card,
.seg-auth-shell .card {
  margin-bottom: 20px;
}
.seg-footer {
  margin-top: 28px;
}

/* FIX: Restore scroll — theme-dark.css from segbytes has html,body{overflow:hidden} */
html { overflow-y: scroll !important; }
body { overflow: visible !important; }
/* ================================================
   HERO CAROUSEL — CSS
   ================================================ */

/* FIX: Restore scroll — theme-dark.css has html,body{overflow:hidden} */
html { overflow-y: scroll !important; }
body { overflow: visible !important; }

/* Carousel shell */
.seg-hero-carousel {
    position: relative;
    width: 100%;
    min-height: 520px;
    overflow: hidden;
    background: var(--seg-bg, #090b12);
    display: flex;
    flex-direction: column;
}

.seg-carousel-track {
    display: flex;
    transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
    will-change: transform;
}

/* Individual slides */
.seg-carousel-slide {
    flex: 0 0 100%;
    width: 100%;
    min-height: 520px;
    display: flex;
    align-items: center;
    padding: 64px 0 56px;
}

.seg-slide-inner {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 48px;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 64px;
    align-items: center;
}

.seg-slide-content {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.seg-slide-kicker {
    font-size: 0.75rem;
    font-weight: 600;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: var(--seg-primary, #2b63ff);
}

.seg-slide-badge {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    background: rgba(43, 99, 255, 0.15);
    color: #4f9cf9;
    border: 1px solid rgba(43, 99, 255, 0.3);
    width: fit-content;
}

.seg-slide-title {
    font-family: 'Azeret Mono', monospace;
    font-size: clamp(1.5rem, 2.8vw, 2.2rem);
    font-weight: 700;
    line-height: 1.2;
    color: var(--seg-text, #f5f7fb);
    margin: 0;
}

.seg-slide-sub {
    font-size: 1rem;
    line-height: 1.6;
    color: var(--seg-text-soft, rgba(245,247,251,0.72));
    margin: 0;
}

.seg-slide-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 8px;
}

/* Visual column */
.seg-slide-visual {
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Slide 0: Visual grid */
.seg-visual-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    width: 100%;
    max-width: 420px;
}

.seg-visual-node {
    padding: 20px;
    border-radius: var(--seg-radius-md, 18px);
    display: flex;
    flex-direction: column;
    gap: 6px;
    background: var(--seg-panel, rgba(255,255,255,0.06));
    border: 1px solid var(--seg-panel-border, rgba(255,255,255,0.14));
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.seg-visual-node:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 32px rgba(0,0,0,0.3);
}

.seg-visual-icon {
    font-size: 1.4rem;
    color: var(--seg-primary, #2b63ff);
}

.seg-visual-node strong {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--seg-text, #f5f7fb);
}

.seg-visual-node small {
    font-size: 0.75rem;
    color: var(--seg-text-soft, rgba(200,210,225,0.6));
}

/* Slide 1: Founder card */
.seg-founder-visual {
    padding: 36px;
    border-radius: var(--seg-radius-lg, 24px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    text-align: center;
    max-width: 340px;
    background: var(--seg-panel, rgba(255,255,255,0.06));
    border: 1px solid var(--seg-panel-border, rgba(255,255,255,0.14));
}

.seg-founder-avatar {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, #2b63ff, #7c3aed);
    display: flex;
    align-items: center;
    justify-content: center;
}

.seg-founder-initials {
    font-family: 'Azeret Mono', monospace;
    font-size: 1.5rem;
    font-weight: 700;
    color: #fff;
}

.seg-founder-info {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.seg-founder-info strong {
    font-size: 1rem;
    font-weight: 600;
    color: var(--seg-text, #f5f7fb);
}

.seg-founder-info span {
    font-size: 0.8rem;
    color: var(--seg-text-soft, rgba(200,210,225,0.6));
}

/* Slide 2: Product card */
.seg-product-card {
    padding: 32px;
    border-radius: var(--seg-radius-lg, 24px);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    text-align: center;
    max-width: 300px;
    width: 100%;
    background: var(--seg-panel, rgba(255,255,255,0.06));
    border: 1px solid var(--seg-panel-border, rgba(255,255,255,0.14));
}

.seg-product-icon {
    font-size: 2.5rem;
    color: var(--seg-primary, #2b63ff);
    line-height: 1;
}

.seg-product-name {
    font-family: 'Azeret Mono', monospace;
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--seg-text, #f5f7fb);
}

.seg-product-tag {
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #7c3aed;
    background: rgba(124,58,237,0.15);
    padding: 2px 10px;
    border-radius: 20px;
}

.seg-product-price {
    font-size: 1.8rem;
    font-weight: 700;
    color: var(--seg-text, #f5f7fb);
}

.seg-product-price span {
    font-size: 0.8rem;
    font-weight: 400;
    color: var(--seg-text-soft, rgba(200,210,225,0.5));
}

.seg-product-features {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.seg-product-features li {
    font-size: 0.8rem;
    color: var(--seg-text-soft, rgba(200,210,225,0.6));
}

/* Slide 3: Suite grid */
.seg-suite-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
    width: 100%;
    max-width: 360px;
}

.seg-suite-card {
    padding: 20px 24px;
    border-radius: var(--seg-radius-md, 18px);
    display: flex;
    flex-direction: column;
    gap: 4px;
    background: var(--seg-panel, rgba(255,255,255,0.06));
    border: 1px solid var(--seg-panel-border, rgba(255,255,255,0.14));
    transition: transform 0.3s ease;
}

.seg-suite-card:hover {
    transform: translateX(6px);
}

.seg-suite-card strong {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--seg-text, #f5f7fb);
}

.seg-suite-card span {
    font-size: 0.75rem;
    color: var(--seg-text-soft, rgba(200,210,225,0.6));
}

/* Carousel nav */
.seg-carousel-nav {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 20px 48px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

.seg-carousel-prev,
.seg-carousel-next {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 1px solid rgba(255,255,255,0.2);
    background: rgba(255,255,255,0.05);
    color: rgba(200,210,225,0.8);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
}

.seg-carousel-prev:hover,
.seg-carousel-next:hover {
    background: rgba(43,99,255,0.2);
    border-color: rgba(43,99,255,0.5);
    color: #4f9cf9;
}

.seg-carousel-dots {
    display: flex;
    gap: 8px;
    align-items: center;
}

.seg-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(200,210,225,0.3);
    cursor: pointer;
    transition: all 0.3s ease;
    border: none;
    padding: 0;
}

.seg-dot.active {
    background: var(--seg-primary, #2b63ff);
    transform: scale(1.3);
}

/* Progress bar */
.seg-carousel-progress {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: rgba(255,255,255,0.08);
}

.seg-carousel-progress-bar {
    height: 100%;
    background: linear-gradient(90deg, #2b63ff, #7c3aed);
    width: 0%;
    transition: width 0.1s linear;
}

/* Responsive */
@media (max-width: 900px) {
    .seg-slide-inner {
        grid-template-columns: 1fr;
        gap: 40px;
        padding: 0 24px;
    }

    .seg-slide-visual {
        order: -1;
    }

    .seg-hero-carousel {
        min-height: auto;
    }

    .seg-carousel-slide {
        min-height: auto;
        padding: 48px 0 80px;
    }

    .seg-visual-grid,
    .seg-founder-visual,
    .seg-product-card,
    .seg-suite-grid {
        max-width: 320px;
    }
}


/* === MOBILE RESPONSIVE HARDENING (2026-05-18) === */
.seg-nav-toggle {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid rgba(255,255,255,0.1);
  border-radius: 12px;
  background: rgba(255,255,255,0.04);
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 5px;
  padding: 0;
}
.seg-nav-toggle span {
  display: block;
  width: 18px;
  height: 2px;
  border-radius: 999px;
  background: var(--seg-text);
  transition: transform 180ms var(--seg-ease-standard), opacity 180ms var(--seg-ease-standard);
}
.seg-nav-toggle.is-open span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.seg-nav-toggle.is-open span:nth-child(2) { opacity: 0; }
.seg-nav-toggle.is-open span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
body.seg-mobile-nav-open { overflow: auto; }
.seg-nav-mobile-only { display: none; }


@media (max-width: 980px) {
  .seg-topbar-wrap { padding: 10px 0; }
  .seg-glass-nav {
    width: min(100% - 12px, calc(var(--seg-container) + 12px));
    position: relative;
  }
  .seg-topbar-inner {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    min-height: auto;
    gap: 12px;
    padding: 12px 14px;
    align-items: center;
  }
  .seg-brand { min-width: 0; }
  .seg-brand-logo { height: 32px; max-height: 32px; max-width: 160px; }
  .seg-nav-toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 0;
  }
  .seg-nav {
    display: none !important;
    position: absolute;
    top: calc(100% + 10px);
    left: 12px;
    right: 12px;
    width: auto;
    padding: 12px;
    background: rgba(7,10,16,0.97);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 18px;
    box-shadow: 0 18px 40px rgba(0,0,0,0.34);
    backdrop-filter: blur(20px);
    z-index: 1200;
    overflow: visible;
    max-height: none;
  }
  .seg-nav.open {
    display: flex !important;
    flex-direction: column;
    gap: 8px;
  }
  .seg-nav a {
    font-size: 14px;
    line-height: 1.3;
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.06);
  }
  .seg-nav-mobile-only { display: block; }
  .seg-nav-mobile-primary {
    background: rgba(43,99,255,0.18) !important;
    border-color: rgba(43,99,255,0.35) !important;
  }
  .seg-topbar-actions { display: none; }
  .seg-hero-title { font-size: clamp(30px, 6vw, 40px); max-width: none; }
  .seg-page-hero h1, .seg-client-hero h1, .seg-section-heading h2 { font-size: clamp(28px, 5.4vw, 38px); }
  .seg-hero-grid, .seg-ops-band, .seg-cta-band { grid-template-columns: 1fr; }
  .seg-hero-panel, .seg-page-hero-panel, .seg-ops-band, .seg-cta-band, .seg-contact-shell,
  .seg-data-module, .seg-store-shell, .seg-contact-form-wrap {
    padding: 18px;
  }
  .seg-module-head { flex-direction: column; }
  .seg-table-shell, .table-responsive { overflow-x: auto; -webkit-overflow-scrolling: touch; }
  .seg-command-table, .seg-content-shell .table, .seg-domain-shell .table, .seg-account-shell .table { min-width: 640px; }
}

@media (max-width: 640px) {
  .seg-container { width: min(100% - 20px, var(--seg-container)); }
  .seg-main { padding-top: 8px; }
  .seg-topbar-inner { padding: 12px; gap: 10px; }
  .seg-brand-logo { height: 30px; max-height: 30px; max-width: 150px; }
  .seg-topbar-actions .seg-btn { flex: 1 1 100%; }
  .seg-hero, .seg-page-hero, .seg-client-hero { padding: 4px 0 12px; }
  .seg-hero-copy { gap: 8px; }
  .seg-hero-title { font-size: clamp(28px, 8vw, 34px); }
  .seg-hero-text, .seg-page-hero p, .seg-client-hero p, .seg-section-heading p,
  .seg-cta-band p, .seg-ops-band p, .seg-service-card p, .seg-route-card p, .seg-action-card p {
    font-size: 15px;
  }
  .seg-hero-actions .seg-btn, .seg-cta-actions .seg-btn { flex: 1 1 100%; width: 100%; }
  .seg-section { padding: 22px 0 28px; }
  .seg-section-heading { margin-bottom: 20px; }
  .seg-proof-card, .seg-service-card, .seg-route-card, .seg-action-card, .seg-summary-card { padding: 18px; }
  .seg-service-card h3, .seg-route-card h3, .seg-action-card h3 { font-size: 20px; }
  .seg-home-panel-head, .seg-home-panel-footer, .seg-home-panel-body { padding-left: 16px; padding-right: 16px; }
  .seg-dashboard-zone { padding-bottom: 28px; }
}

@media (max-width: 420px) {
  .seg-brand-logo { height: 28px; max-height: 28px; max-width: 132px; }
  .seg-nav { left: 10px; right: 10px; width: auto; }
  .seg-hero-title { font-size: 28px; }
  .seg-page-hero h1, .seg-client-hero h1, .seg-section-heading h2 { font-size: 26px; }
}


/* === Cart page fixes === */



/* Fix all white backgrounds inside the cart */
#order-standard_cart .order-summary,
#order-standard_cart .summary-container,
.order-summary,
.summary-container {
  background: var(--seg-bg-soft) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: var(--seg-radius-sm) !important;
  color: var(--seg-text) !important;
  padding: 18px !important;
}
.summary-container { border: none !important; padding: 0 !important; }

/* Fix the gray .order-summary outer */
.order-summary { background: var(--seg-bg-soft) !important; }

/* Promo code container */
#order-standard_cart .promo,
#order-standard_cart .tab-content,
#order-standard_cart .tab-pane {
  background: transparent !important;
}

/* Empty cart message */
#order-standard_cart .empty-cart {
  text-align: center;
  padding: 40px 20px;
  color: var(--seg-text-soft);
}

/* Tabs */
#order-standard_cart .nav-tabs {
  border-bottom: 1px solid var(--seg-panel-border) !important;
  margin-bottom: 16px;
  padding: 0;
  list-style: none;
  display: flex;
}
#order-standard_cart .nav-tabs li,
#order-standard_cart .nav-tabs .nav-item { margin-bottom: -1px; }
#order-standard_cart .nav-tabs a,
#order-standard_cart .nav-tabs .nav-link {
  color: var(--seg-text-soft) !important;
  background: transparent !important;
  border: 1px solid transparent !important;
  border-radius: var(--seg-radius-sm) var(--seg-radius-sm) 0 0 !important;
  padding: 10px 16px !important;
  text-decoration: none;
  display: inline-block;
}
#order-standard_cart .nav-tabs a.active,
#order-standard_cart .nav-tabs .nav-link.active {
  color: var(--seg-text) !important;
  background: var(--seg-bg-soft) !important;
  border-color: var(--seg-panel-border) var(--seg-panel-border) var(--seg-bg-soft) !important;
}

/* Order summary text styling */
.summary-container hr { border-color: var(--seg-panel-border) !important; }
.summary-container .pull-right,
.summary-container .float-right { color: var(--seg-text) !important; }
.order-summary h2 {
  font-size: 18px !important;
  font-weight: 700 !important;
  margin: 0 0 16px !important;
  color: var(--seg-text) !important;
}

/* Buttons inside cart */
#order-standard_cart .btn-primary,
#order-standard_cart .btn-success {
  background: var(--seg-primary) !important;
  border-color: var(--seg-primary) !important;
  color: #fff !important;
}
#order-standard_cart .btn-primary:hover,
#order-standard_cart .btn-success:hover {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}
#order-standard_cart .btn-default,
#order-standard_cart .btn-block.btn-default {
  background: var(--seg-bg-elevated) !important;
  border: 1px solid var(--seg-panel-border) !important;
  color: var(--seg-text) !important;
}
#order-standard_cart .btn-default:hover {
  background: var(--seg-panel) !important;
}

/* Continue Shopping link */
#order-standard_cart a[href*=cart.php] { color: var(--seg-text-soft); }

/* Form inputs - use theme styles */
#order-standard_cart .form-control,
#order-standard_cart input.field {
  background: var(--seg-bg) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: var(--seg-radius-sm) !important;
  color: var(--seg-text) !important;
  padding: 10px 14px !important;
}
#order-standard_cart .form-control:focus {
  border-color: var(--seg-primary) !important;
  box-shadow: 0 0 0 3px var(--seg-primary-soft) !important;
  outline: none !important;
}

/* When seg-client-layout has only seg-client-content (no sidebar), make it full width */
.seg-client-layout:has(.seg-client-content:only-child) {
  grid-template-columns: 1fr !important;
}

/* === Cart sidebar styling === */
#order-standard_cart .cart-sidebar .panel,
#order-standard_cart .cart-sidebar .card,
#order-standard_cart .cart-sidebar .card-sidebar {
  background: var(--seg-bg-soft) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: var(--seg-radius-sm) !important;
  margin-bottom: 12px;
  overflow: hidden;
}
#order-standard_cart .cart-sidebar .panel-heading,
#order-standard_cart .cart-sidebar .card-header {
  background: var(--seg-bg-elevated) !important;
  border: none !important;
  border-bottom: 1px solid var(--seg-panel-border) !important;
  padding: 12px 16px !important;
  border-radius: 0 !important;
}
#order-standard_cart .cart-sidebar .panel-title,
#order-standard_cart .cart-sidebar h3 {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--seg-text) !important;
  margin: 0 !important;
}
#order-standard_cart .cart-sidebar .panel-body,
#order-standard_cart .cart-sidebar .card-body { padding: 0 !important; }
#order-standard_cart .cart-sidebar .list-group-item {
  background: transparent !important;
  border: none !important;
  border-bottom: 1px solid var(--seg-panel-border) !important;
  padding: 10px 16px !important;
  color: var(--seg-text-soft) !important;
  font-size: 13px !important;
  display: block;
  text-decoration: none;
  transition: background 0.2s, color 0.2s;
}
#order-standard_cart .cart-sidebar .list-group-item:hover {
  background: var(--seg-bg-elevated) !important;
  color: var(--seg-text) !important;
}
#order-standard_cart .cart-sidebar .list-group-item:last-child {
  border-bottom: none !important;
}
#order-standard_cart .cart-sidebar .panel-minimise,
#order-standard_cart .cart-sidebar .card-minimise {
  color: var(--seg-text-soft);
  cursor: pointer;
}

/* Continue Shopping link */
.btn-continue-shopping,
a.btn-continue-shopping,
#order-standard_cart .btn-continue-shopping {
  color: var(--seg-text) !important;
  text-decoration: none !important;
  font-size: 13px;
}
.btn-continue-shopping:hover,
a.btn-continue-shopping:hover {
  color: var(--seg-text) !important;
  text-decoration: underline !important;
}

/* === Knowledgebase / Support pages fixes === */

/* Fix: Search button purple → segbytes primary blue */
.seg-content-shell .input-group .btn-primary,
.seg-content-shell .btn-primary,
.kb-search .btn-primary,
.knowledgebase .btn-primary {
  background: var(--seg-primary) !important;
  border-color: var(--seg-primary) !important;
  color: #fff !important;
}
.seg-content-shell .input-group .btn-primary:hover,
.seg-content-shell .btn-primary:hover,
.kb-search .btn-primary:hover {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}


/* Fix: Mobile sidebar card with bg-light should match theme */
.seg-client-sidebar .bg-light,
.card.bg-light {
  background: var(--seg-bg-elevated) !important;
}

/* Fix: Knowledgebase search input */
.seg-content-shell .kb-search .form-control,
.kb-search .form-control,
#inputKnowledgebaseSearch {
  background: var(--seg-bg) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: var(--seg-radius-sm) !important;
  color: var(--seg-text) !important;
  padding: 12px 16px !important;
  font-size: 15px !important;
}
.seg-content-shell .kb-search .form-control:focus,
#inputKnowledgebaseSearch:focus {
  border-color: var(--seg-primary) !important;
  box-shadow: 0 0 0 3px var(--seg-primary-soft) !important;
  outline: none !important;
}

/* Knowledgebase article cards / lists */
.knowledgebase .panel,
.kb-list .panel,
.knowledgebase-categories .panel {
  background: var(--seg-bg-soft) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: var(--seg-radius-sm) !important;
}

/* No Articles Found alert */
.seg-content-shell .alert-info,
.knowledgebase .alert-info {
  background: var(--seg-primary-soft) !important;
  border: 1px solid rgba(43,99,255,0.3) !important;
  color: var(--seg-text) !important;
  border-radius: var(--seg-radius-sm) !important;
}

/* Sidebar card padding so text/icons don't get clipped by rounded corners */
.seg-client-sidebar .card-sidebar .card-header,
.seg-client-sidebar .card-sidebar .panel-heading {
  padding: 12px 16px !important;
}
.seg-client-sidebar .card-sidebar .card-body,
.seg-client-sidebar .card-sidebar .panel-body {
  padding: 8px 0 !important;
}
.seg-client-sidebar .card-sidebar .list-group-item {
  padding: 10px 16px !important;
}

/* Bootstrap 4 responsive display utilities (theme uses Bootstrap 3 which lacks these) */
@media (min-width: 768px) {
  .seg-client-sidebar .d-md-none { display: none !important; }
}
@media (max-width: 767px) {
  .seg-client-sidebar .d-none.d-md-block { display: none !important; }
}

/* Knowledgebase search: gap between input and button */
.kb-search.input-group {
  display: flex;
  gap: 8px;
}
.kb-search .input-group-btn {
  display: flex;
}

/* === Login / Auth pages — shadcn-style form === */

/* Center the auth shell content with a comfortable max width */
.seg-auth-shell {
  max-width: 480px;
  margin: 60px auto;
  padding: 32px;
  background: var(--seg-bg-soft);
  border: 1px solid var(--seg-panel-border);
  border-radius: var(--seg-radius-md);
}

/* Auth heading */
.seg-auth-shell .seg-kicker,
.seg-auth-shell h1, .seg-auth-shell h2,
.seg-auth-shell .seg-auth-title { 
  font-family: 'Inter', sans-serif !important;
}
.seg-auth-shell h1, .seg-auth-shell h2 {
  font-size: 24px !important;
  font-weight: 700;
  margin: 6px 0 8px;
}
.seg-auth-shell p {
  font-size: 14px;
  color: var(--seg-text-soft);
  margin-bottom: 24px;
}

/* Form fields */
.seg-auth-shell .form-group { margin-bottom: 16px; }
.seg-auth-shell .seg-form-label,
.seg-auth-shell label {
  display: block;
  font-size: 13px;
  font-weight: 500;
  color: var(--seg-text);
  margin-bottom: 6px;
}

/* Bootstrap 4 input-group with prepend/append support */
.seg-auth-shell .input-group,
.seg-auth-shell .input-group-merge {
  display: flex !important;
  align-items: stretch;
  width: 100%;
  position: relative;
}
.seg-auth-shell .input-group-prepend {
  display: flex !important;
  width: auto !important;
  margin-right: -1px;
}
.seg-auth-shell .input-group-prepend .input-group-text {
  display: flex !important;
  align-items: center;
  padding: 0 12px;
  background: var(--seg-bg-elevated);
  border: 1px solid var(--seg-panel-border);
  border-right: none;
  border-radius: var(--seg-radius-sm) 0 0 var(--seg-radius-sm);
  color: var(--seg-text-soft);
  font-size: 13px;
}
.seg-auth-shell .input-group .form-control {
  flex: 1 1 auto !important;
  width: 1% !important;
  min-width: 0;
  background: var(--seg-bg) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: 0 var(--seg-radius-sm) var(--seg-radius-sm) 0 !important;
  color: var(--seg-text) !important;
  padding: 10px 14px !important;
  font-size: 14px !important;
  height: auto !important;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.seg-auth-shell .input-group .form-control:focus {
  border-color: var(--seg-primary) !important;
  box-shadow: 0 0 0 3px var(--seg-primary-soft) !important;
  outline: none !important;
  z-index: 2;
}

/* Append button (e.g. password show/hide eye) */
.seg-auth-shell .input-group-append {
  display: flex;
  margin-left: -1px;
}
.seg-auth-shell .input-group-append .btn,
.seg-auth-shell .input-group-append button {
  background: var(--seg-bg-elevated) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-left: none !important;
  border-radius: 0 var(--seg-radius-sm) var(--seg-radius-sm) 0 !important;
  color: var(--seg-text-soft) !important;
  padding: 10px 14px !important;
  cursor: pointer;
}
.seg-auth-shell .input-group-append .btn:hover {
  color: var(--seg-text) !important;
}

/* When input has both prepend and append, middle input has no rounded corners */
.seg-auth-shell .input-group .input-group-prepend ~ .form-control:not(:last-child),
.seg-auth-shell .input-group .form-control:not(:last-child):not(:first-child) {
  border-radius: 0 !important;
}

/* Forgot password link — proper position */
.seg-auth-shell .seg-forgot-link,
.seg-auth-shell a[href*='pwreset'],
.seg-auth-shell a[href*='reset'] {
  color: var(--seg-primary) !important;
  font-size: 13px;
  text-decoration: none;
  float: right;
  margin-top: -28px;
  position: relative;
  z-index: 1;
}
.seg-auth-shell .seg-forgot-link:hover { text-decoration: underline; }

/* Login button */
.seg-auth-shell .btn-primary,
.seg-auth-shell button[type='submit'] {
  background: var(--seg-primary) !important;
  border: none !important;
  color: #fff !important;
  padding: 11px 24px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  border-radius: var(--seg-radius-sm) !important;
  cursor: pointer;
  transition: background 0.2s;
}
.seg-auth-shell .btn-primary:hover,
.seg-auth-shell button[type='submit']:hover {
  background: #1f4fd6 !important;
}

/* Remember me checkbox */
.seg-auth-shell .checkbox,
.seg-auth-shell .form-check {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  color: var(--seg-text-soft);
}
.seg-auth-shell .checkbox label,
.seg-auth-shell .form-check label {
  margin: 0;
  font-weight: 400;
  cursor: pointer;
}
.seg-auth-shell input[type='checkbox'] {
  width: 16px;
  height: 16px;
  accent-color: var(--seg-primary);
  cursor: pointer;
}

/* Footer link 'Create account' */
.seg-auth-shell .seg-auth-footer,
.seg-auth-shell hr + p,
.seg-auth-shell .text-muted {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid var(--seg-panel-border);
  font-size: 13px;
  color: var(--seg-text-soft) !important;
}
.seg-auth-shell .seg-auth-footer a,
.seg-auth-shell hr + p a {
  color: var(--seg-primary) !important;
  text-decoration: none;
  font-weight: 500;
}
.seg-auth-shell .seg-auth-footer a:hover,
.seg-auth-shell hr + p a:hover { text-decoration: underline; }

/* Hide the icon-prepend on small screens for cleaner mobile experience (optional) */
@media (max-width: 480px) {
  .seg-auth-shell { margin: 20px 16px; padding: 24px 20px; }
}

/* Sidebar action buttons (e.g. New Contact) — match segbytes primary */
.seg-client-sidebar .btn-default,
.seg-client-sidebar .card-sidebar .btn-default {
  background: var(--seg-primary) !important;
  border: 1px solid var(--seg-primary) !important;
  color: #fff !important;
}
.seg-client-sidebar .btn-default:hover,
.seg-client-sidebar .card-sidebar .btn-default:hover {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

/* Primary buttons across all client-area shells */
.seg-account-shell .btn-primary,
.seg-domain-shell .btn-primary,
.seg-ticket-shell .btn-primary,
.seg-domains-shell .btn-primary,
.seg-invoice-shell .btn-primary {
  background: var(--seg-primary) !important;
  border-color: var(--seg-primary) !important;
  color: #fff !important;
}
.seg-account-shell .btn-primary:hover,
.seg-domain-shell .btn-primary:hover,
.seg-ticket-shell .btn-primary:hover,
.seg-domains-shell .btn-primary:hover,
.seg-invoice-shell .btn-primary:hover {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

/* === Global lavender btn-primary override === */
.btn.btn-primary,
button.btn-primary,
input[type=submit].btn-primary,
.modal-submit,
.btn-primary.disable-on-click {
  background: var(--seg-primary) !important;
  border-color: var(--seg-primary) !important;
  color: #fff !important;
}
.btn.btn-primary:hover,
button.btn-primary:hover,
input[type=submit].btn-primary:hover {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

/* === Sidebar card text not cut by rounded corners === */
.seg-client-sidebar .card-sidebar .card-header,
.seg-client-sidebar .card-sidebar .panel-heading {
  padding: 12px 16px !important;
}
.seg-client-sidebar .card-sidebar .card-body,
.seg-client-sidebar .card-sidebar .panel-body { padding: 8px 0 !important; }
.seg-client-sidebar .card-sidebar .list-group-item { padding: 10px 16px !important; }
.seg-client-sidebar .card-sidebar .card-title,
.seg-client-sidebar .card-sidebar h3 { padding-left: 0 !important; }
.seg-client-sidebar .card-sidebar { overflow: hidden; }

/* === Dashboard panel rows: ensure spacing between Active Products / Register Domain etc. === */
.seg-dashboard-row.seg-dashboard-panels,
.seg-dashboard-zone .seg-dashboard-row + .seg-dashboard-row {
  margin-top: 18px;
}
.seg-home-panel + .seg-home-panel {
  margin-left: 0;
}
.seg-dashboard-panels {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 18px;
}
.seg-dashboard-panels > .seg-home-panel { margin: 0 !important; }

/* === Hide the 3 middle action cards (Launch a request, Review account services, Billing control) === */
.seg-dashboard-actions { display: none !important; }

/* === Lavender heading panels in services/invoices/tickets === */
.panel-default > .panel-heading,
.card-default > .card-header,
.panel-heading.bg-primary,
.card-header.bg-primary {
  background: var(--seg-bg-elevated) !important;
  color: var(--seg-text) !important;
  border-bottom: 1px solid var(--seg-panel-border) !important;
}
.panel-heading h2, .panel-heading h3, .panel-heading h4,
.card-header h2, .card-header h3, .card-header h4 {
  color: var(--seg-text) !important;
}
.bg-primary {
  background: var(--seg-primary) !important;
  color: #fff !important;
}

/* === Fix dashboard panel spacing (vertical between Active Products/Register Domain and Tickets/News) === */
.seg-dashboard-panels {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  align-items: start;
}
.seg-dashboard-panels > .seg-home-panel {
  margin-bottom: 0 !important;
}

/* === Update button: use exact segbytes primary blue === */
.seg-client-sidebar .btn-success,
.seg-client-sidebar .btn-success.btn-sm.btn-block,
.card-sidebar .btn-success {
  background: var(--seg-primary) !important;
  border-color: var(--seg-primary) !important;
  color: #fff !important;
  background-image: none !important;
}
.seg-client-sidebar .btn-success:hover,
.card-sidebar .btn-success:hover {
  background: #1f4fd6 !important;
  border-color: #1f4fd6 !important;
}

/* Dashboard panels: ensure vertical gap between wrapping rows */
.seg-home-panels .row > .col-md-6 {
  margin-bottom: 18px;
}
.seg-home-panels .row {
  margin-bottom: 0;
}

/* Sidebar card body content padding */
.seg-client-sidebar .card-sidebar .card-body,
.seg-client-sidebar .card-sidebar .panel-body {
  padding: 16px !important;
}
.seg-client-sidebar .card-sidebar .card-body .list-group,
.seg-client-sidebar .card-sidebar .panel-body .list-group {
  margin: -16px;
}
.seg-client-sidebar .card-sidebar address {
  margin: 0;
}

/* DataTables wrappers (info bar, length selector) — remove purple gradient */
.dataTables_info,
.dataTables_length,
.dataTables_filter,
.dataTables_paginate,
table.dataTable thead th.bg-primary,
table.dataTable .bg-primary {
  background: var(--seg-bg-elevated) !important;
  background-image: none !important;
  color: var(--seg-text) !important;
  border-radius: var(--seg-radius-sm) !important;
  padding: 8px 14px !important;
}
.dataTables_filter input,
.dataTables_length select {
  background: var(--seg-bg) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: var(--seg-radius-sm) !important;
  color: var(--seg-text) !important;
  padding: 6px 10px !important;
}
.dataTables_paginate .paginate_button {
  background: var(--seg-bg-elevated) !important;
  border: 1px solid var(--seg-panel-border) !important;
  border-radius: var(--seg-radius-sm) !important;
  color: var(--seg-text-soft) !important;
  margin-left: 4px;
}
.dataTables_paginate .paginate_button.current,
.dataTables_paginate .paginate_button:hover:not(.disabled) {
  background: var(--seg-primary) !important;
  border-color: var(--seg-primary) !important;
  color: #fff !important;
}
.dataTables_paginate .paginate_button.disabled {
  opacity: 0.4;
}

/* DataTables search input — kill the white bg */
.dataTables_wrapper .dataTables_filter input,
.dataTables_filter input[type='search'],
.dataTables_filter input.form-control,
input.dataTables_filter,
.dataTable_filter input {
  background-color: var(--seg-bg) !important;
  background-image: none !important;
  border: 1px solid var(--seg-panel-border) !important;
  color: var(--seg-text) !important;
  border-radius: var(--seg-radius-sm) !important;
  padding: 8px 12px !important;
}

/* Content shell right-padding so border doesn't cut text */
.seg-content-shell,
.seg-services-shell,
.seg-tickets-shell,
.seg-invoice-shell,
.seg-account-shell {
  padding: 24px !important;
  overflow: visible;
}

/* Submit ticket form panel padding */
.seg-content-shell .panel,
.seg-content-shell .card,
.seg-content-shell form,
.seg-tickets-shell form {
  padding-right: 0;
  margin-right: 0;
}

/* Table responsive overflow handling so content doesn't bleed past border */
.seg-content-shell .table-responsive,
.seg-services-shell .table-responsive {
  overflow-x: auto;
  border-radius: var(--seg-radius-sm);
}

/* Beat .dataTables_wrapper .dataTables_filter label .form-control specificity */
.dataTables_wrapper .dataTables_filter label .form-control,
.dataTables_wrapper .dataTables_filter label input,
.dataTables_wrapper .dataTables_filter label input[type='search'] {
  background-color: var(--seg-bg) !important;
  background-image: none !important;
  border: 1px solid var(--seg-panel-border) !important;
  color: var(--seg-text) !important;
  border-radius: var(--seg-radius-sm) !important;
}

/* Hide DataTables sort icons (broken images, table is empty anyway) */
table.dataTable thead .sorting:before,
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:before,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:before,
table.dataTable thead .sorting_desc:after,
table.dataTable thead .sorting:after,
table.dataTable thead th.sorting,
table.dataTable thead th.sorting_asc,
table.dataTable thead th.sorting_desc {
  background-image: none !important;
}
table.dataTable thead .sorting:after,
table.dataTable thead .sorting_asc:after,
table.dataTable thead .sorting_desc:after { content: '' !important; opacity: 0 !important; }

/* Hide the empty 0px-wide first th if present */
table.dataTable thead th[style*='width: 0px'],
table.dataTable thead th.sorting_disabled[aria-label=''] {
  display: none !important;
}

/* Pagination Previous/Next buttons that look like dim outlined boxes */
.dataTables_paginate .paginate_button.previous,
.dataTables_paginate .paginate_button.next {
  display: inline-block !important;
}

/* Checkbox styling - dark theme matching */
.seg-auth-shell input[type='checkbox'],
.seg-auth-shell input[type='radio'] {
  appearance: none;
  -webkit-appearance: none;
  width: 16px;
  height: 16px;
  background: var(--seg-bg);
  border: 1px solid var(--seg-panel-border);
  border-radius: 4px;
  cursor: pointer;
  position: relative;
  vertical-align: middle;
  margin-right: 6px;
}
.seg-auth-shell input[type='radio'] { border-radius: 50%; }
.seg-auth-shell input[type='checkbox']:checked,
.seg-auth-shell input[type='radio']:checked {
  background: var(--seg-primary);
  border-color: var(--seg-primary);
}
.seg-auth-shell input[type='checkbox']:checked::after {
  content: '';
  position: absolute;
  left: 4px;
  top: 0;
  width: 5px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
.seg-auth-shell input[type='radio']:checked::after {
  content: '';
  position: absolute;
  left: 4px;
  top: 4px;
  width: 6px;
  height: 6px;
  background: #fff;
  border-radius: 50%;
}
.seg-auth-shell input[type='checkbox']:focus,
.seg-auth-shell input[type='radio']:focus {
  outline: none;
  box-shadow: 0 0 0 3px var(--seg-primary-soft);
}

/* Browser autofill override — keeps inputs dark when password manager fills them */
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill {
  -webkit-box-shadow: 0 0 0 1000px var(--seg-bg) inset !important;
  -webkit-text-fill-color: var(--seg-text) !important;
  caret-color: var(--seg-text);
  transition: background-color 5000s ease-in-out 0s;
  background-color: var(--seg-bg) !important;
  border: 1px solid var(--seg-panel-border) !important;
}

/* Lock all auth shell input states to dark — focus, active, hover, autofill */
.seg-auth-shell input,
.seg-auth-shell input:focus,
.seg-auth-shell input:active,
.seg-auth-shell input:hover,
.seg-auth-shell .form-control,
.seg-auth-shell .form-control:focus,
.seg-auth-shell .form-control:active {
  background-color: var(--seg-bg) !important;
  color: var(--seg-text) !important;
  -webkit-text-fill-color: var(--seg-text) !important;
}

.seg-auth-shell input:-webkit-autofill,
.seg-auth-shell input:-webkit-autofill:hover,
.seg-auth-shell input:-webkit-autofill:focus,
.seg-auth-shell input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 1000px var(--seg-bg) inset !important;
  -webkit-text-fill-color: var(--seg-text) !important;
  background-color: var(--seg-bg) !important;
  caret-color: var(--seg-text) !important;
}

.seg-auth-shell .input-group-prepend,
.seg-auth-shell .input-group-text {
  background-color: var(--seg-bg-elevated) !important;
}
