/**
 * Nanban Settings World — enterprise single-canvas (Stripe / Linear tier)
 * Loads last; fixes child-like nested clutter
 */

/* ═══ Page shell ═══ */
#settingsSection.nb-settings-enterprise {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 4px 48px !important;
}

#settingsSection .settings-page-hero {
  padding: 12px 0 24px !important;
  margin-bottom: 0 !important;
  border-bottom: 1px solid rgba(28, 25, 23, 0.08) !important;
  background: transparent !important;
}

#settingsSection .settings-page-hero h2 {
  font-family: "Plus Jakarta Sans", "Noto Sans Tamil", "Inter", sans-serif !important;
  font-size: clamp(1.75rem, 3.5vw, 2.125rem) !important;
  font-weight: 800 !important;
  letter-spacing: -0.04em !important;
  color: #0c0a09 !important;
}

#settingsSection .settings-page-hero p {
  font-size: 1.0625rem !important;
  color: #57534e !important;
  font-weight: 500 !important;
  line-height: 1.55 !important;
  max-width: 48rem !important;
}

/* ═══ Layout — sidebar + one main canvas ═══ */
#settingsSection .settings-layout {
  gap: 28px !important;
  padding: 24px 0 0 !important;
}

#settingsSection .settings-sidenav {
  border-radius: 18px !important;
  padding: 14px !important;
  box-shadow: 0 4px 24px rgba(28, 25, 23, 0.06) !important;
}

#settingsSection .nb-set-cat-btn {
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  padding: 13px 14px !important;
  border-radius: 12px !important;
}

#settingsSection .nb-set-cat-btn--active {
  background: #ffffff !important;
  color: #b91c1c !important;
  box-shadow: 0 2px 12px rgba(220, 38, 38, 0.1), inset 3px 0 0 #dc2626 !important;
}

#settingsSection .nb-set-subnav {
  margin-top: 8px !important;
  padding-left: 10px !important;
}

#settingsSection .settings-nav-item {
  font-size: 0.8125rem !important;
  padding: 9px 12px !important;
  border-radius: 10px !important;
}

#settingsSection .settings-nav-item--active {
  background: rgba(220, 38, 38, 0.08) !important;
  color: #b91c1c !important;
  font-weight: 700 !important;
}

#settingsSection .nb-set-advanced-chip {
  margin-top: 14px !important;
  width: 100% !important;
  text-align: center !important;
  font-size: 0.6875rem !important;
  font-weight: 600 !important;
  padding: 8px 10px !important;
  border-radius: 8px !important;
  opacity: 0.72 !important;
  border: 1px dashed rgba(28, 25, 23, 0.14) !important;
  background: transparent !important;
  color: #78716c !important;
}

#settingsSection .nb-set-advanced-chip:hover {
  opacity: 1 !important;
  background: #fafaf9 !important;
}

/* ═══ ONE pane at a time — full width professional canvas ═══ */
#settingsSection #nanbanSettingsBento {
  display: block !important;
  max-width: 100% !important;
}

#settingsSection .settings-pane-panel {
  display: none !important;
  margin: 0 !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
  background: transparent !important;
}

#settingsSection .settings-pane-panel.nb-set-pane--visible.is-active {
  display: block !important;
  background: #ffffff !important;
  border: 1px solid rgba(28, 25, 23, 0.1) !important;
  border-radius: 20px !important;
  padding: 28px 32px !important;
  box-shadow: 0 4px 28px rgba(28, 25, 23, 0.07) !important;
}

#settingsSection .settings-pane-panel.nb-set-pane--visible.is-active > .glass-card {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
}

#settingsSection .settings-pane-panel.nb-set-pane--visible.is-active.glass-card:not(#settings-sec-catalog) {
  background: #ffffff !important;
  border: 1px solid rgba(28, 25, 23, 0.1) !important;
  border-radius: 20px !important;
  padding: 28px 32px !important;
  box-shadow: 0 4px 28px rgba(28, 25, 23, 0.07) !important;
}

/* Remove toy thick left borders */
#settingsSection .settings-pane-panel[style*="border-left:8px"],
#settingsSection .settings-pane-panel[style*="border-left: 8px"] {
  border-left: 1px solid rgba(28, 25, 23, 0.1) !important;
}

/* ═══ Catalog pane — stack columns, no nested child cards ═══ */
#settingsSection #settings-sec-catalog .nb-set-catalog-grid,
#settingsSection #settings-sec-catalog .flex-row {
  flex-direction: column !important;
  gap: 24px !important;
  margin: 0 !important;
}

#settingsSection #settings-sec-catalog .nb-set-catalog-side {
  display: flex !important;
  flex-direction: column !important;
  gap: 20px !important;
  width: 100% !important;
}

#settingsSection #settings-sec-catalog .nb-set-catalog-block,
#settingsSection #settings-sec-catalog > .flex-row > .glass-card,
#settingsSection #settings-sec-catalog > .flex-row > div {
  flex: none !important;
  width: 100% !important;
  min-width: 0 !important;
}

#settingsSection #settings-sec-catalog .nb-set-catalog-block,
#settingsSection #settings-sec-catalog .glass-card {
  padding: 28px !important;
  border-radius: 18px !important;
  border: 1px solid rgba(28, 25, 23, 0.08) !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

#settingsSection #settings-sec-catalog .nb-set-catalog-block--referral {
  background: #fffbeb !important;
  border-color: #fde68a !important;
}

#settingsSection #settings-sec-catalog .nb-set-catalog-block--referral h3 {
  color: #b45309 !important;
}

#settingsSection #settings-sec-catalog .service-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)) !important;
  gap: 12px !important;
  margin-bottom: 16px !important;
}

#settingsSection .nb-set-section-label {
  font-size: 0.8125rem !important;
  font-weight: 700 !important;
  color: #57534e !important;
  margin: 12px 0 8px !important;
}

#settingsSection .nb-set-inset-panel--expense {
  background: #fef2f2 !important;
  border-color: #fecaca !important;
  margin-bottom: 16px !important;
}

#settingsSection .nb-set-inset-panel--income {
  background: #f0fdf4 !important;
  border-color: #bbf7d0 !important;
}

#settingsSection .nb-set-inset-panel--referral {
  background: #ffffff !important;
  border-color: #fde68a !important;
  margin-top: 16px !important;
}

#settingsSection .nb-set-inset-panel--form input {
  margin-bottom: 12px !important;
}

#settingsSection .nb-set-inset-panel input + .btn,
#settingsSection .nb-set-inset-panel input + button,
#settingsSection .nb-set-inset-panel .nb-set-checkbox-row + .nb-set-edit-bar,
#settingsSection .nb-set-inset-panel .nb-set-checkbox-row + button {
  margin-top: 12px !important;
}

#settingsSection .nb-set-full-btn {
  width: 100% !important;
  margin-top: 14px !important;
}

#settingsSection .nb-set-label-danger {
  color: #dc2626 !important;
  font-weight: 700 !important;
}

#settingsSection .nb-set-input-danger {
  color: #dc2626 !important;
  font-weight: 700 !important;
}

#settingsSection .nb-set-edit-bar {
  display: none;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 10px !important;
  background: #eff6ff !important;
  border: 1px solid #bfdbfe !important;
  padding: 12px 14px !important;
  border-radius: 14px !important;
  margin-top: 14px !important;
}

#settingsSection .nb-set-edit-bar[style*="display: flex"],
#settingsSection .nb-set-edit-bar[style*="display:flex"] {
  display: flex !important;
}

#settingsSection .nb-set-edit-bar--referral {
  background: #fff7ed !important;
  border-color: #fed7aa !important;
  margin-bottom: 12px !important;
}

#settingsSection .nb-set-edit-bar__label {
  font-weight: 800 !important;
  color: #1d4ed8 !important;
  font-size: 0.8125rem !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

#settingsSection .nb-set-edit-bar--referral .nb-set-edit-bar__label {
  color: #9a3412 !important;
}

#settingsSection .nb-set-checkbox-row {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer !important;
  color: #1c1917 !important;
  margin: 14px 0 !important;
  font-size: 0.875rem !important;
}

#settingsSection #settingsRtoChecklistSection {
  margin-top: 20px !important;
  padding: 20px !important;
  border-radius: 14px !important;
  background: #f8fffc !important;
  border: 1px solid #bbf7d0 !important;
}

#settingsSection #settings-sec-catalog h3 {
  font-size: 1.125rem !important;
  font-weight: 800 !important;
  margin: 0 0 16px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid rgba(28, 25, 23, 0.06) !important;
}

#settingsSection #settings-sec-catalog h4 {
  font-size: 0.9375rem !important;
  font-weight: 700 !important;
  margin: 0 0 8px !important;
}

#settingsSection .nb-set-inset-panel {
  background: #fafaf9 !important;
  border: 1px solid rgba(28, 25, 23, 0.08) !important;
  border-radius: 14px !important;
  padding: 20px !important;
  margin-top: 16px !important;
}

#settingsSection #settingsRtoChecklistSection .nb-set-hint {
  margin-bottom: 12px !important;
}

/* ═══ Profile card — Stripe settings rows ═══ */
#settingsSection .nb-set-profile-card {
  padding: 32px !important;
}

#settingsSection .nb-set-card-head {
  margin-bottom: 20px !important;
  padding-bottom: 18px !important;
}

#settingsSection .nb-set-card-head h3 {
  font-size: 1.25rem !important;
  font-weight: 800 !important;
}

#settingsSection .nb-set-card-sub {
  font-size: 0.9375rem !important;
  color: #57534e !important;
  margin-top: 6px !important;
}

#settingsSection .nb-set-row {
  padding: 18px 0 !important;
}

#settingsSection .nb-set-label {
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  color: #374151 !important;
}

#settingsSection .nb-set-hint {
  font-size: 0.8125rem !important;
  color: #6b7280 !important;
  margin: 6px 0 0 !important;
}

/* ═══ Inputs & buttons — adult scale ═══ */
#settingsSection input:not([type="checkbox"]):not([type="radio"]):not(.nb-set-toggle-input),
#settingsSection select,
#settingsSection textarea {
  min-height: 46px !important;
  font-size: 0.9375rem !important;
  border-radius: 12px !important;
  border: 1px solid rgba(28, 25, 23, 0.14) !important;
  background: #ffffff !important;
  color: #0c0a09 !important;
}

#settingsSection input[style*="border:none"],
#settingsSection select[style*="border:none"],
#settingsSection textarea[style*="border:none"] {
  border: 1px solid rgba(28, 25, 23, 0.12) !important;
  background: #ffffff !important;
  padding: 10px 14px !important;
}

#settingsSection .btn,
#settingsSection button.btn {
  min-height: 44px !important;
  padding: 11px 20px !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  border-radius: 12px !important;
}

#settingsSection .nb-set-actions {
  margin-top: 24px !important;
  padding-top: 20px !important;
  border-top: 1px solid rgba(28, 25, 23, 0.08) !important;
  justify-content: flex-end !important;
}

#settingsSection .nb-set-actions .btn {
  min-width: 160px !important;
}

/* ═══ Section headings inside panes — no emoji shrink ═══ */
#settingsSection .settings-pane-panel h3 {
  font-size: 1.125rem !important;
  font-weight: 800 !important;
  color: #0c0a09 !important;
  letter-spacing: -0.02em !important;
}

#settingsSection .settings-pane-panel p[style*="font-size:11px"],
#settingsSection .settings-pane-panel p[style*="font-size: 11px"],
#settingsSection .settings-pane-panel p[style*="font-size:10px"] {
  font-size: 0.8125rem !important;
  line-height: 1.55 !important;
  color: #6b7280 !important;
}

#settingsSection .settings-pane-panel label[style*="font-size:11px"],
#settingsSection .settings-pane-panel label[style*="font-size: 11px"] {
  font-size: 0.8125rem !important;
  font-weight: 600 !important;
}

/* ═══ Tags & service grid ═══ */
#settingsSection .tag-list .tag,
#settingsSection .service-grid > * {
  font-size: 0.8125rem !important;
  border-radius: 10px !important;
}

#settingsSection .service-grid {
  gap: 10px !important;
}

/* ═══ Advanced panes — same canvas treatment ═══ */
#settingsSection .nb-settings-advanced.nb-set-pane--visible.is-active {
  display: block !important;
}

/* ═══ Mobile ═══ */
@media (max-width: 960px) {
  #settingsSection .settings-pane-panel.nb-set-pane--visible.is-active > .glass-card,
  #settingsSection .settings-pane-panel.nb-set-pane--visible.is-active.glass-card {
    padding: 20px 18px !important;
    border-radius: 16px !important;
  }

  #settingsSection #settings-sec-catalog .glass-card {
    padding: 20px !important;
  }

  #settingsSection .nb-set-actions {
    flex-direction: column !important;
  }

  #settingsSection .nb-set-actions .btn {
    width: 100% !important;
  }
}
