/* WINco Enterprise Readability v1
   Final visual guardrail for SaaS/admin surfaces. */

:root {
  --we-bg: #f4f7fb;
  --we-bg-2: #e9eef5;
  --we-surface: #ffffff;
  --we-surface-alt: #f7f9fc;
  --we-border: #d9e2ec;
  --we-border-strong: #c7d2df;
  --we-text: #1f2937;
  --we-heading: #0f172a;
  --we-muted: #64748b;
  --we-muted-2: #7b8794;
  --we-accent: #2563eb;
  --we-accent-strong: #1d4ed8;
  --we-accent-soft: #eaf1ff;
  --we-success: #176b54;
  --we-success-strong: #10523f;
  --we-success-soft: #e7f4ee;
  --we-warning: #8a5a00;
  --we-warning-soft: #fff5d9;
  --we-danger: #b42318;
  --we-danger-soft: #fff0ed;
  --we-radius: 10px;
  --we-shadow: 0 1px 2px rgba(15, 23, 42, 0.05), 0 18px 48px rgba(15, 23, 42, 0.08);
}

html {
  color-scheme: light;
}

body:not(.winco-public-landing) {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0)),
    var(--we-bg) !important;
  color: var(--we-text) !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body:not(.winco-public-landing)::before,
body:not(.winco-public-landing)::after {
  opacity: 0.04 !important;
  filter: none !important;
}

body:not(.winco-public-landing) *,
body:not(.winco-public-landing) *::before,
body:not(.winco-public-landing) *::after {
  text-shadow: none !important;
}

body:not(.winco-public-landing) h1,
body:not(.winco-public-landing) h2,
body:not(.winco-public-landing) h3,
body:not(.winco-public-landing) h4,
body:not(.winco-public-landing) .brand-title,
body:not(.winco-public-landing) .section-title,
body:not(.winco-public-landing) .card-title,
body:not(.winco-public-landing) strong {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
  letter-spacing: 0 !important;
}

body:not(.winco-public-landing) p,
body:not(.winco-public-landing) small,
body:not(.winco-public-landing) label,
body:not(.winco-public-landing) .muted,
body:not(.winco-public-landing) .subtitle,
body:not(.winco-public-landing) .brand span,
body:not(.winco-public-landing) .hint,
body:not(.winco-public-landing) .lead {
  color: var(--we-muted) !important;
  line-height: 1.55 !important;
}

body:not(.winco-public-landing) .shell,
body:not(.winco-public-landing) .container,
body:not(.winco-public-landing) .wrap {
  color: var(--we-text) !important;
}

body:not(.winco-public-landing) .hero,
body:not(.winco-public-landing) .hero-copy,
body:not(.winco-public-landing) .hero-panel,
body:not(.winco-public-landing) .card,
body:not(.winco-public-landing) .panel,
body:not(.winco-public-landing) .section,
body:not(.winco-public-landing) .form,
body:not(.winco-public-landing) .box,
body:not(.winco-public-landing) .item,
body:not(.winco-public-landing) .stat,
body:not(.winco-public-landing) .plan,
body:not(.winco-public-landing) .metric-card,
body:not(.winco-public-landing) .feature-card,
body:not(.winco-public-landing) .vertical-card,
body:not(.winco-public-landing) .price-card,
body:not(.winco-public-landing) .op-panel,
body:not(.winco-public-landing) .op-status-card,
body:not(.winco-public-landing) .op-action-card,
body:not(.winco-public-landing) .op-lead-card,
body:not(.winco-public-landing) .op-side-card,
body:not(.winco-public-landing) .studio-section,
body:not(.winco-public-landing) .studio-form,
body:not(.winco-public-landing) .billing-card,
body:not(.winco-public-landing) .client-card,
body:not(.winco-public-landing) .table-card,
body:not(.winco-public-landing) .quick-pass-card,
body:not(.winco-public-landing) .activation-note,
body:not(.winco-public-landing) .quick-create,
body:not(.winco-public-landing) .step,
body:not(.winco-public-landing) .pass,
body:not(.winco-public-landing) .channel,
body:not(.winco-public-landing) .preview,
body:not(.winco-public-landing) .signal-card,
body:not(.winco-public-landing) .metric,
body:not(.winco-public-landing) .winco-dashboard-clean-v2,
body:not(.winco-public-landing) .clean-action-card,
body:not(.winco-public-landing) .clean-op-card {
  background: var(--we-surface) !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  border-radius: var(--we-radius) !important;
  box-shadow: var(--we-shadow) !important;
  color: var(--we-text) !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

body:not(.winco-public-landing) .num {
  background: var(--we-accent-soft) !important;
  color: var(--we-accent-strong) !important;
}

body:not(.winco-public-landing) .price,
body:not(.winco-public-landing) .price-line strong {
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

body:not(.winco-public-landing) .top,
body:not(.winco-public-landing) .navbar,
body:not(.winco-public-landing) .topbar,
body:not(.winco-public-landing) .nav,
body:not(.winco-public-landing) header {
  background: rgba(255, 255, 255, 0.92) !important;
  border-color: var(--we-border) !important;
  box-shadow: 0 1px 0 rgba(15, 23, 42, 0.06) !important;
  color: var(--we-text) !important;
}

body:not(.winco-public-landing) input,
body:not(.winco-public-landing) select,
body:not(.winco-public-landing) textarea {
  background: #ffffff !important;
  border: 1px solid var(--we-border-strong) !important;
  border-radius: 8px !important;
  color: var(--we-heading) !important;
  box-shadow: none !important;
  outline: none !important;
}

body:not(.winco-public-landing) input:focus,
body:not(.winco-public-landing) select:focus,
body:not(.winco-public-landing) textarea:focus {
  border-color: var(--we-accent) !important;
  box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12) !important;
}

body:not(.winco-public-landing) .btn,
body:not(.winco-public-landing) button,
body:not(.winco-public-landing) a.btn,
body:not(.winco-public-landing) .primary,
body:not(.winco-public-landing) .primary-btn,
body:not(.winco-public-landing) button[type="submit"] {
  border-radius: 8px !important;
  box-shadow: none !important;
  font-weight: 800 !important;
}

body:not(.winco-public-landing) .btn.primary,
body:not(.winco-public-landing) a.btn.primary,
body:not(.winco-public-landing) button.primary,
body:not(.winco-public-landing) .primary,
body:not(.winco-public-landing) .primary-btn,
body:not(.winco-public-landing) button[type="submit"],
body:not(.winco-public-landing) .quick-pass-card a,
body:not(.winco-public-landing) .pass .main,
body:not(.winco-public-landing) .clean-action-card.primary {
  background: var(--we-accent) !important;
  background-image: none !important;
  border: 1px solid var(--we-accent-strong) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body:not(.winco-public-landing) .btn:not(.primary),
body:not(.winco-public-landing) a.btn:not(.primary),
body:not(.winco-public-landing) button:not(.primary):not([type="submit"]) {
  background: #ffffff !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
}

body:not(.winco-public-landing) .mark,
body:not(.winco-public-landing) .brand-mark,
body:not(.winco-public-landing) .logo-mark,
body:not(.winco-public-landing) .client-icon,
body:not(.winco-public-landing) .health-icon,
body:not(.winco-public-landing) .compact-icon,
body:not(.winco-public-landing) .operation-name-icon,
body:not(.winco-public-landing) .feature-icon,
body:not(.winco-public-landing) .op-action-icon,
body:not(.winco-public-landing) .clean-action-icon,
body:not(.winco-public-landing) .clean-op-avatar {
  background: var(--we-accent-soft) !important;
  background-image: none !important;
  border: 1px solid #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  box-shadow: none !important;
}

body:not(.winco-public-landing) .eyebrow,
body:not(.winco-public-landing) .badge,
body:not(.winco-public-landing) .pill,
body:not(.winco-public-landing) .tag,
body:not(.winco-public-landing) .status,
body:not(.winco-public-landing) .op-badge,
body:not(.winco-public-landing) .op-pill,
body:not(.winco-public-landing) .plan-badge,
body:not(.winco-public-landing) .studio-pill,
body:not(.winco-public-landing) .success,
body:not(.winco-public-landing) .alert-success,
body:not(.winco-public-landing) .message.success,
body:not(.winco-public-landing) .studio-success,
body:not(.winco-public-landing) [class*="green"],
body:not(.winco-public-landing) [class*="success"] {
  background: var(--we-success-soft) !important;
  background-image: none !important;
  border-color: #bedcca !important;
  color: var(--we-success-strong) !important;
  -webkit-text-fill-color: var(--we-success-strong) !important;
  box-shadow: none !important;
}

body:not(.winco-public-landing) .alert,
body:not(.winco-public-landing) .notice {
  border-radius: var(--we-radius) !important;
  box-shadow: none !important;
}

body:not(.winco-public-landing) .signal-card h2,
body:not(.winco-public-landing) .dashboard-clean-head h2,
body:not(.winco-public-landing) .quick-create h2,
body:not(.winco-public-landing) .clean-action-card strong,
body:not(.winco-public-landing) .clean-op-main strong {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
}

body:not(.winco-public-landing) .signal-card p,
body:not(.winco-public-landing) .dashboard-clean-head p,
body:not(.winco-public-landing) .quick-create p,
body:not(.winco-public-landing) .clean-action-card span,
body:not(.winco-public-landing) .clean-op-main span,
body:not(.winco-public-landing) .clean-op-status span,
body:not(.winco-public-landing) .metric span,
body:not(.winco-public-landing) .metric small {
  color: var(--we-muted) !important;
}

body:not(.winco-public-landing) .signal-list,
body:not(.winco-public-landing) .clean-actions-grid,
body:not(.winco-public-landing) .clean-ops-list,
body:not(.winco-public-landing) .channel-row {
  background: transparent !important;
  border-color: transparent !important;
  box-shadow: none !important;
}

body:not(.winco-public-landing) .signal-item,
body:not(.winco-public-landing) .clean-op-status,
body:not(.winco-public-landing) .check {
  background: var(--we-surface-alt) !important;
  border: 1px solid var(--we-border) !important;
  border-radius: 8px !important;
}

body:not(.winco-public-landing) .check {
  color: var(--we-muted) !important;
  -webkit-text-fill-color: var(--we-muted) !important;
  font-weight: 700 !important;
}

body:not(.winco-public-landing) .check input {
  accent-color: var(--we-accent) !important;
}

body:not(.winco-public-landing) .check:has(input:checked) {
  background: var(--we-accent-soft) !important;
  border-color: #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

body:not(.winco-public-landing) .signal-label,
body:not(.winco-public-landing) .signal-label i,
body:not(.winco-public-landing) .clean-eyebrow,
body:not(.winco-public-landing) .clean-op-link {
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

body:not(.winco-public-landing) .eyebrow,
body:not(.winco-public-landing) .clean-eyebrow,
body:not(.winco-public-landing) .kicker {
  background: var(--we-accent-soft) !important;
  border-color: #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

body:not(.winco-public-landing) .signal-label {
  background: transparent !important;
  border: 0 !important;
  color: var(--we-text) !important;
  -webkit-text-fill-color: var(--we-text) !important;
  font-weight: 700 !important;
}

body:not(.winco-public-landing) .signal-label i {
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

body:not(.winco-public-landing) .clean-action-card {
  min-height: 112px !important;
  justify-content: space-between !important;
}

body:not(.winco-public-landing) .clean-action-card:hover,
body:not(.winco-public-landing) .clean-op-card:hover {
  transform: translateY(-1px) !important;
  border-color: #b7c8f6 !important;
  background: #ffffff !important;
  box-shadow: 0 16px 40px rgba(15, 23, 42, 0.11) !important;
}

body:not(.winco-public-landing) .clean-action-card.primary strong,
body:not(.winco-public-landing) .clean-action-card.primary span,
body:not(.winco-public-landing) .clean-action-card.primary .clean-action-icon,
body:not(.winco-public-landing) .clean-action-card.primary .clean-action-icon i {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

body:not(.winco-public-landing) .clean-action-card.primary .clean-action-icon {
  background: rgba(255, 255, 255, 0.16) !important;
  border-color: rgba(255, 255, 255, 0.28) !important;
}

body:not(.winco-public-landing) .pill.ok,
body:not(.winco-public-landing) .pill.running,
body:not(.winco-public-landing) .pill.WORKING,
body:not(.winco-public-landing) .pill.CONNECTED,
body:not(.winco-public-landing) .pill.connected,
body:not(.winco-public-landing) .pill.ready {
  background: var(--we-success-soft) !important;
  border-color: #bedcca !important;
  color: var(--we-success-strong) !important;
  -webkit-text-fill-color: var(--we-success-strong) !important;
}

body:not(.winco-public-landing) .pill.warn,
body:not(.winco-public-landing) .pill.SCAN_QR_CODE,
body:not(.winco-public-landing) .pill.STARTING,
body:not(.winco-public-landing) .pill.created {
  background: var(--we-warning-soft) !important;
  border-color: #f1d48a !important;
  color: var(--we-warning) !important;
  -webkit-text-fill-color: var(--we-warning) !important;
}

body:not(.winco-public-landing) .pill.exited,
body:not(.winco-public-landing) .pill.dead,
body:not(.winco-public-landing) .pill.offline,
body:not(.winco-public-landing) .pill.error,
body:not(.winco-public-landing) .pill.ERROR {
  background: var(--we-danger-soft) !important;
  border-color: #f4b6ad !important;
  color: var(--we-danger) !important;
  -webkit-text-fill-color: var(--we-danger) !important;
}

body:not(.winco-public-landing) table {
  background: var(--we-surface) !important;
  color: var(--we-text) !important;
  border-collapse: separate;
  border-spacing: 0;
}

body:not(.winco-public-landing) th {
  color: var(--we-muted) !important;
  background: var(--we-surface-alt) !important;
}

body:not(.winco-public-landing) td {
  color: var(--we-text) !important;
  border-color: var(--we-border) !important;
}

body:not(.winco-public-landing) a {
  color: var(--we-accent-strong);
}

body:not(.winco-public-landing) ::selection {
  background: rgba(37, 99, 235, 0.18);
  color: var(--we-heading);
}

@media (max-width: 780px) {
  body:not(.winco-public-landing) .shell,
  body:not(.winco-public-landing) .container,
  body:not(.winco-public-landing) .wrap {
    width: min(100% - 24px, 1180px) !important;
  }
}

/* Agenda app readability rescue: neutral SaaS surface over legacy dark agenda layers. */
html:has(body.winco-agenda-root),
html:has(body[data-winco-page="agenda"]),
body.winco-agenda-root,
body[data-winco-page="agenda"] {
  background: var(--we-bg) !important;
  background-image: none !important;
  color: var(--we-text) !important;
  color-scheme: light !important;
}

html body.winco-agenda-root .shell,
html body[data-winco-page="agenda"] .shell,
html body.winco-agenda-root .content,
html body[data-winco-page="agenda"] .content,
html body.winco-agenda-root .operation-content,
html body[data-winco-page="agenda"] .operation-content,
html body.winco-agenda-root .winco-agenda-main-v2,
html body[data-winco-page="agenda"] .winco-agenda-main-v2,
html body.winco-agenda-root .winco-agenda-v2-shell,
html body[data-winco-page="agenda"] .winco-agenda-v2-shell {
  background: transparent !important;
  background-image: none !important;
  border: 0 !important;
  box-shadow: none !important;
  color: var(--we-text) !important;
}

html body.winco-agenda-root[data-winco-page="agenda"] > main.shell,
html body[data-winco-page="agenda"]:has(#agenda-day-rules) > main.shell {
  min-height: 0 !important;
  height: auto !important;
  padding-bottom: 0 !important;
  margin-bottom: 18px !important;
}

html body.winco-agenda-root .topbar,
html body[data-winco-page="agenda"] .topbar {
  background: rgba(255, 255, 255, 0.94) !important;
  border: 1px solid var(--we-border) !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.05) !important;
}

html body.winco-agenda-root .winco-agenda-v2-hero,
html body.winco-agenda-root .winco-agenda-v2-card,
html body.winco-agenda-root .winco-agenda-v2-state,
html body.winco-agenda-root .winco-agenda-v2-slot,
html body.winco-agenda-root .winco-agenda-v2-booking,
html body.winco-agenda-root .winco-agenda-v2-reserved-wrap,
html body.winco-agenda-root .winco-agenda-days-side-v2,
html body.winco-agenda-root .winco-agenda-final-card,
html body.winco-agenda-root .winco-agenda-separated-head,
html body.winco-agenda-root .winco-agenda-separated-card,
html body.winco-agenda-root .winco-agenda-calendar-widget,
html body.winco-agenda-root .winco-agenda-calendar-day-panel,
html body.winco-agenda-root .winco-agenda-calendar-day,
html body.winco-agenda-root .winco-agenda-calendar-team-block,
html body.winco-agenda-root .winco-day-rules-panel,
html body.winco-agenda-root .winco-day-rule-row,
html body.winco-agenda-root .winco-lunch-break-fields,
html body.winco-agenda-root .winco-lunch-break-dom,
html body[data-winco-page="agenda"] .winco-agenda-v2-hero,
html body[data-winco-page="agenda"] .winco-agenda-v2-card,
html body[data-winco-page="agenda"] .winco-agenda-v2-state,
html body[data-winco-page="agenda"] .winco-agenda-v2-slot,
html body[data-winco-page="agenda"] .winco-agenda-v2-booking,
html body[data-winco-page="agenda"] .winco-agenda-v2-reserved-wrap,
html body[data-winco-page="agenda"] .winco-agenda-days-side-v2,
html body[data-winco-page="agenda"] .winco-agenda-final-card,
html body[data-winco-page="agenda"] .winco-agenda-separated-head,
html body[data-winco-page="agenda"] .winco-agenda-separated-card,
html body[data-winco-page="agenda"] .winco-agenda-calendar-widget,
html body[data-winco-page="agenda"] .winco-agenda-calendar-day-panel,
html body[data-winco-page="agenda"] .winco-agenda-calendar-day,
html body[data-winco-page="agenda"] .winco-agenda-calendar-team-block,
html body[data-winco-page="agenda"] .winco-day-rules-panel,
html body[data-winco-page="agenda"] .winco-day-rule-row,
html body[data-winco-page="agenda"] .winco-lunch-break-fields,
html body[data-winco-page="agenda"] .winco-lunch-break-dom {
  background: var(--we-surface) !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  border-radius: var(--we-radius) !important;
  box-shadow: var(--we-shadow) !important;
  color: var(--we-text) !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html body.winco-agenda-root .winco-agenda-v2-hero,
html body[data-winco-page="agenda"] .winco-agenda-v2-hero {
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  border-color: var(--we-border-strong) !important;
}

html body.winco-agenda-root h1,
html body.winco-agenda-root h2,
html body.winco-agenda-root h3,
html body.winco-agenda-root strong,
html body.winco-agenda-root b,
html body[data-winco-page="agenda"] h1,
html body[data-winco-page="agenda"] h2,
html body[data-winco-page="agenda"] h3,
html body[data-winco-page="agenda"] strong,
html body[data-winco-page="agenda"] b {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
  letter-spacing: 0 !important;
}

html body.winco-agenda-root p,
html body.winco-agenda-root small,
html body.winco-agenda-root label,
html body.winco-agenda-root .winco-agenda-v2-head p,
html body.winco-agenda-root .winco-agenda-v2-hero p,
html body.winco-agenda-root .winco-agenda-v2-state span,
html body.winco-agenda-root .winco-agenda-v2-slot span,
html body.winco-agenda-root .winco-agenda-v2-booking span,
html body.winco-agenda-root .winco-agenda-v2-booking small,
html body.winco-agenda-root .winco-agenda-v2-reserved-head small,
html body.winco-agenda-root .winco-agenda-v2-reserved-list .winco-agenda-v2-slot.is-empty span,
html body.winco-agenda-root .winco-agenda-days-side-v2-head small,
html body.winco-agenda-root .winco-agenda-final-head p,
html body.winco-agenda-root .winco-agenda-final-row small,
html body.winco-agenda-root .winco-agenda-separated-head p,
html body.winco-agenda-root .winco-agenda-separated-card-head p,
html body.winco-agenda-root .winco-agenda-separated-row small,
html body.winco-agenda-root .winco-agenda-calendar-head p,
html body.winco-agenda-root .winco-agenda-calendar-day-head p,
html body.winco-agenda-root .winco-agenda-calendar-day span,
html body.winco-agenda-root .winco-day-rules-head p,
html body.winco-agenda-root .winco-day-rule-row small,
html body.winco-agenda-root .winco-day-rules-helper,
html body.winco-agenda-root .winco-day-rules-shortcuts span,
html body.winco-agenda-root .winco-lunch-break-title span,
html body.winco-agenda-root .winco-lunch-break-dom-title span,
html body[data-winco-page="agenda"] p,
html body[data-winco-page="agenda"] small,
html body[data-winco-page="agenda"] label,
html body[data-winco-page="agenda"] .winco-agenda-v2-head p,
html body[data-winco-page="agenda"] .winco-agenda-v2-hero p,
html body[data-winco-page="agenda"] .winco-agenda-v2-state span,
html body[data-winco-page="agenda"] .winco-agenda-v2-slot span,
html body[data-winco-page="agenda"] .winco-agenda-v2-booking span,
html body[data-winco-page="agenda"] .winco-agenda-v2-booking small,
html body[data-winco-page="agenda"] .winco-agenda-v2-reserved-head small,
html body[data-winco-page="agenda"] .winco-agenda-v2-reserved-list .winco-agenda-v2-slot.is-empty span,
html body[data-winco-page="agenda"] .winco-agenda-days-side-v2-head small,
html body[data-winco-page="agenda"] .winco-agenda-final-head p,
html body[data-winco-page="agenda"] .winco-agenda-final-row small,
html body[data-winco-page="agenda"] .winco-agenda-separated-head p,
html body[data-winco-page="agenda"] .winco-agenda-separated-card-head p,
html body[data-winco-page="agenda"] .winco-agenda-separated-row small,
html body[data-winco-page="agenda"] .winco-agenda-calendar-head p,
html body[data-winco-page="agenda"] .winco-agenda-calendar-day-head p,
html body[data-winco-page="agenda"] .winco-agenda-calendar-day span,
html body[data-winco-page="agenda"] .winco-day-rules-head p,
html body[data-winco-page="agenda"] .winco-day-rule-row small,
html body[data-winco-page="agenda"] .winco-day-rules-helper,
html body[data-winco-page="agenda"] .winco-day-rules-shortcuts span,
html body[data-winco-page="agenda"] .winco-lunch-break-title span,
html body[data-winco-page="agenda"] .winco-lunch-break-dom-title span {
  color: var(--we-muted) !important;
  -webkit-text-fill-color: var(--we-muted) !important;
}

html body.winco-agenda-root .winco-agenda-v2-kicker,
html body.winco-agenda-root .winco-agenda-final-head span,
html body.winco-agenda-root .winco-agenda-separated-head span,
html body.winco-agenda-root .winco-agenda-separated-card-head span,
html body.winco-agenda-root .winco-agenda-calendar-head span,
html body.winco-agenda-root .winco-agenda-calendar-day-head span,
html body.winco-agenda-root .winco-day-rules-head span,
html body.winco-agenda-root .winco-day-rules-list-head span,
html body.winco-agenda-root .winco-agenda-v2-slot-summary span,
html body.winco-agenda-root .winco-agenda-final-tabs a,
html body.winco-agenda-root .winco-booking-datetime span,
html body.winco-agenda-root .winco-booking-datetime-line span,
html body.winco-agenda-root .winco-agenda-separated-tags span,
html body[data-winco-page="agenda"] .winco-agenda-v2-kicker,
html body[data-winco-page="agenda"] .winco-agenda-final-head span,
html body[data-winco-page="agenda"] .winco-agenda-separated-head span,
html body[data-winco-page="agenda"] .winco-agenda-separated-card-head span,
html body[data-winco-page="agenda"] .winco-agenda-calendar-head span,
html body[data-winco-page="agenda"] .winco-agenda-calendar-day-head span,
html body[data-winco-page="agenda"] .winco-day-rules-head span,
html body[data-winco-page="agenda"] .winco-day-rules-list-head span,
html body[data-winco-page="agenda"] .winco-agenda-v2-slot-summary span,
html body[data-winco-page="agenda"] .winco-agenda-final-tabs a,
html body[data-winco-page="agenda"] .winco-booking-datetime span,
html body[data-winco-page="agenda"] .winco-booking-datetime-line span,
html body[data-winco-page="agenda"] .winco-agenda-separated-tags span {
  background: var(--we-accent-soft) !important;
  border: 1px solid #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
  box-shadow: none !important;
}

html body.winco-agenda-root .winco-booking-datetime b,
html body.winco-agenda-root .winco-booking-datetime-line b,
html body.winco-agenda-root .winco-agenda-separated-tags b,
html body[data-winco-page="agenda"] .winco-booking-datetime b,
html body[data-winco-page="agenda"] .winco-booking-datetime-line b,
html body[data-winco-page="agenda"] .winco-agenda-separated-tags b {
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

html body.winco-agenda-root .winco-agenda-v2-days,
html body[data-winco-page="agenda"] .winco-agenda-v2-days {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(82px, 1fr)) !important;
  gap: 8px !important;
}

html body.winco-agenda-root .winco-agenda-v2-days label,
html body.winco-agenda-root .winco-agenda-days-side-v2-list span,
html body[data-winco-page="agenda"] .winco-agenda-v2-days label,
html body[data-winco-page="agenda"] .winco-agenda-days-side-v2-list span {
  min-width: 0 !important;
  min-height: 34px !important;
  background: #f8fafc !important;
  border: 1px solid var(--we-border) !important;
  border-radius: 8px !important;
  color: var(--we-text) !important;
  -webkit-text-fill-color: var(--we-text) !important;
  font-size: 12px !important;
  line-height: 1.2 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

html body.winco-agenda-root .winco-agenda-days-side-v2-list,
html body[data-winco-page="agenda"] .winco-agenda-days-side-v2-list {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(44px, 1fr)) !important;
  gap: 8px !important;
}

html body.winco-agenda-root .winco-agenda-days-side-v2-list span.active,
html body.winco-agenda-root .winco-agenda-v2-days label:has(input:checked),
html body[data-winco-page="agenda"] .winco-agenda-days-side-v2-list span.active,
html body[data-winco-page="agenda"] .winco-agenda-v2-days label:has(input:checked) {
  background: var(--we-accent-soft) !important;
  border-color: #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

html body.winco-agenda-root input,
html body.winco-agenda-root select,
html body.winco-agenda-root textarea,
html body[data-winco-page="agenda"] input,
html body[data-winco-page="agenda"] select,
html body[data-winco-page="agenda"] textarea {
  background: #ffffff !important;
  border: 1px solid var(--we-border-strong) !important;
  border-radius: 8px !important;
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
  color-scheme: light !important;
}

html body.winco-agenda-root .winco-agenda-v2-list > .winco-agenda-v2-slot,
html body.winco-agenda-root .winco-agenda-v2-reserved-list .winco-agenda-v2-slot,
html body.winco-agenda-root .winco-agenda-final-row,
html body.winco-agenda-root .winco-agenda-separated-row,
html body.winco-agenda-root .winco-agenda-calendar-day-empty,
html body.winco-agenda-root .winco-agenda-calendar-loading,
html body.winco-agenda-root .winco-agenda-calendar-error,
html body.winco-agenda-root .winco-agenda-v2-empty,
html body.winco-agenda-root .winco-agenda-final-empty,
html body.winco-agenda-root .winco-agenda-separated-empty,
html body.winco-agenda-root .winco-day-rules-empty,
html body[data-winco-page="agenda"] .winco-agenda-v2-list > .winco-agenda-v2-slot,
html body[data-winco-page="agenda"] .winco-agenda-v2-reserved-list .winco-agenda-v2-slot,
html body[data-winco-page="agenda"] .winco-agenda-final-row,
html body[data-winco-page="agenda"] .winco-agenda-separated-row,
html body[data-winco-page="agenda"] .winco-agenda-calendar-day-empty,
html body[data-winco-page="agenda"] .winco-agenda-calendar-loading,
html body[data-winco-page="agenda"] .winco-agenda-calendar-error,
html body[data-winco-page="agenda"] .winco-agenda-v2-empty,
html body[data-winco-page="agenda"] .winco-agenda-final-empty,
html body[data-winco-page="agenda"] .winco-agenda-separated-empty,
html body[data-winco-page="agenda"] .winco-day-rules-empty {
  background: var(--we-surface-alt) !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
  -webkit-text-fill-color: var(--we-text) !important;
  box-shadow: none !important;
}

html body.winco-agenda-root button[type="submit"],
html body.winco-agenda-root .winco-agenda-v2-save,
html body[data-winco-page="agenda"] button[type="submit"],
html body[data-winco-page="agenda"] .winco-agenda-v2-save {
  background: var(--we-accent) !important;
  background-image: none !important;
  border: 1px solid var(--we-accent-strong) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body.winco-agenda-root:has(#agenda-day-rules) button[type="submit"],
html body.winco-agenda-root:has(#agenda-day-rules) .winco-agenda-v2-save,
html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) button[type="submit"],
html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) .winco-agenda-v2-save {
  background: var(--we-accent) !important;
  background-image: none !important;
  border: 1px solid var(--we-accent-strong) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) .winco-agenda-calendar-controls button,
html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) .winco-day-rules-shortcuts button,
html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) .winco-day-rules-list-head button {
  background: #ffffff !important;
  background-image: none !important;
  border: 1px solid #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
  box-shadow: none !important;
}

html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) .winco-agenda-v2-booking button,
html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) .winco-agenda-separated-row button,
html body.winco-agenda-root[data-winco-page="agenda"]:has(#agenda-day-rules) .winco-day-rule-row button {
  background: var(--we-danger-soft) !important;
  background-image: none !important;
  border: 1px solid #f4b6ad !important;
  color: var(--we-danger) !important;
  -webkit-text-fill-color: var(--we-danger) !important;
}

html body.winco-agenda-root .winco-agenda-v2-booking button,
html body.winco-agenda-root .winco-agenda-separated-row button,
html body.winco-agenda-root .winco-day-rule-row button,
html body[data-winco-page="agenda"] .winco-agenda-v2-booking button,
html body[data-winco-page="agenda"] .winco-agenda-separated-row button,
html body[data-winco-page="agenda"] .winco-day-rule-row button {
  background: var(--we-danger-soft) !important;
  border: 1px solid #f4b6ad !important;
  color: var(--we-danger) !important;
  -webkit-text-fill-color: var(--we-danger) !important;
}

html body.winco-agenda-root svg,
html body.winco-agenda-root i,
html body.winco-agenda-root [data-lucide],
html body[data-winco-page="agenda"] svg,
html body[data-winco-page="agenda"] i,
html body[data-winco-page="agenda"] [data-lucide] {
  color: inherit !important;
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 760px) {
  html body.winco-agenda-root .winco-agenda-v2-hero,
  html body[data-winco-page="agenda"] .winco-agenda-v2-hero,
  html body.winco-agenda-root .winco-agenda-v2-grid,
  html body[data-winco-page="agenda"] .winco-agenda-v2-grid,
  html body.winco-agenda-root .winco-agenda-final-grid,
  html body[data-winco-page="agenda"] .winco-agenda-final-grid,
  html body.winco-agenda-root .winco-agenda-separated-grid,
  html body[data-winco-page="agenda"] .winco-agenda-separated-grid,
  html body.winco-agenda-root .winco-day-rules-form,
  html body[data-winco-page="agenda"] .winco-day-rules-form,
  html body.winco-agenda-root .winco-lunch-break-fields,
  html body[data-winco-page="agenda"] .winco-lunch-break-fields {
    grid-template-columns: 1fr !important;
  }
}

/* Enterprise admin polish: readable actions and mature light surfaces over legacy modules. */
html,
html:has(body:not(.winco-public-landing)) {
  background: var(--we-bg) !important;
}

html body:not(.winco-public-landing) {
  min-height: 100vh !important;
  overflow-x: hidden !important;
}

html body:not(.winco-public-landing) .topbar .nav-actions,
html body:not(.winco-public-landing) .top .nav,
html body:not(.winco-public-landing) header .nav-actions,
html body:not(.winco-public-landing) header .nav {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  opacity: 1 !important;
}

html body:not(.winco-public-landing) .topbar .nav-actions .btn,
html body:not(.winco-public-landing) .topbar .nav-actions a.btn,
html body:not(.winco-public-landing) .top .nav a,
html body:not(.winco-public-landing) header .nav-actions .btn,
html body:not(.winco-public-landing) header .nav a,
html body:not(.winco-public-landing) .hero-actions .btn {
  min-height: 40px !important;
  background: #ffffff !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
  -webkit-text-fill-color: var(--we-text) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body:not(.winco-public-landing) .topbar .nav-actions .btn.primary,
html body:not(.winco-public-landing) .topbar .nav-actions a.btn.primary,
html body:not(.winco-public-landing) .top .nav a.primary,
html body:not(.winco-public-landing) header .nav-actions .btn.primary,
html body:not(.winco-public-landing) header .nav a.primary,
html body:not(.winco-public-landing) .quick-create .btn.primary,
html body:not(.winco-public-landing) .quick-create button.btn.primary,
html body:not(.winco-public-landing) form .btn.primary,
html body:not(.winco-public-landing) .btn-main,
html body:not(.winco-public-landing) .savebar .btn-main {
  background: var(--we-accent) !important;
  background-image: none !important;
  border: 1px solid var(--we-accent-strong) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

html body:not(.winco-public-landing) .topbar .nav-actions .btn *,
html body:not(.winco-public-landing) .top .nav a *,
html body:not(.winco-public-landing) header .nav-actions .btn *,
html body:not(.winco-public-landing) header .nav a *,
html body:not(.winco-public-landing) .hero-actions .btn *,
html body:not(.winco-public-landing) .quick-create .btn.primary *,
html body:not(.winco-public-landing) .savebar .btn-main * {
  opacity: 1 !important;
  visibility: visible !important;
}

html body:not(.winco-public-landing) .topbar .nav-actions .btn.primary *,
html body:not(.winco-public-landing) .top .nav a.primary *,
html body:not(.winco-public-landing) header .nav-actions .btn.primary *,
html body:not(.winco-public-landing) .quick-create .btn.primary *,
html body:not(.winco-public-landing) .btn-main *,
html body:not(.winco-public-landing) .savebar .btn-main * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

html body:not(.winco-public-landing) .hero-actions {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
}

html body:not(.winco-public-landing) .client-row .actions,
html body:not(.winco-public-landing) .client-row .actions * {
  opacity: 1 !important;
  visibility: visible !important;
}

html body:not(.winco-public-landing) .client-row .actions {
  gap: 8px !important;
}

html body:not(.winco-public-landing) .client-row .actions .btn,
html body:not(.winco-public-landing) .client-row .actions .icon-btn,
html body:not(.winco-public-landing) .client-row .actions button {
  background: #ffffff !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
  -webkit-text-fill-color: var(--we-text) !important;
  box-shadow: none !important;
}

html body:not(.winco-public-landing) .client-row .actions .link-public,
html body:not(.winco-public-landing) .client-row .actions .public-link-btn {
  background: var(--we-accent-soft) !important;
  border-color: #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

html body:not(.winco-public-landing) .client-row .actions .clear-leads-visible-btn,
html body:not(.winco-public-landing) .client-row .actions .danger,
html body:not(.winco-public-landing) .top .nav a.danger,
html body:not(.winco-public-landing) header .nav a.danger {
  background: var(--we-danger-soft) !important;
  border-color: #f4b6ad !important;
  color: var(--we-danger) !important;
  -webkit-text-fill-color: var(--we-danger) !important;
}

html body:not(.winco-public-landing) .savebar {
  background: var(--we-surface-alt) !important;
  border: 1px solid var(--we-border-strong) !important;
  box-shadow: 0 14px 38px rgba(15, 23, 42, 0.12) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html body:not(.winco-public-landing) .savebar small {
  color: var(--we-muted) !important;
  -webkit-text-fill-color: var(--we-muted) !important;
}

html body:not(.winco-public-landing) .side-link,
html body:not(.winco-public-landing) .setting-card,
html body:not(.winco-public-landing) .live-card,
html body:not(.winco-public-landing) .stage,
html body:not(.winco-public-landing) .lead-card,
html body:not(.winco-public-landing) .event-card,
html body:not(.winco-public-landing) .queue-card,
html body:not(.winco-public-landing) .side-card,
html body:not(.winco-public-landing) .media-section,
html body:not(.winco-public-landing) .file-card {
  background: var(--we-surface) !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
  box-shadow: var(--we-shadow) !important;
}

html body:not(.winco-public-landing) .media-section-head,
html body:not(.winco-public-landing) .media-section-title,
html body:not(.winco-public-landing) .media-section-title span,
html body:not(.winco-public-landing) .file-name,
html body:not(.winco-public-landing) .file-name span {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
}

html body:not(.winco-public-landing) .media-section-title i,
html body:not(.winco-public-landing) .file-name i,
html body:not(.winco-public-landing) .panel-title i {
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

html body:not(.winco-public-landing) .media-files .empty {
  background: var(--we-surface-alt) !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-muted) !important;
  -webkit-text-fill-color: var(--we-muted) !important;
}

html body:not(.winco-public-landing) input[type="file"]::file-selector-button {
  margin-right: 12px !important;
  background: var(--we-accent-soft) !important;
  border: 1px solid #c7d8ff !important;
  border-radius: 8px !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
  font-weight: 800 !important;
}

/* Billing and checkout surfaces: consistent readable SaaS treatment. */
html body[data-winco-page="checkout"],
html body[data-winco-page="billing"],
html body.winco-billing-root {
  background: var(--we-bg) !important;
  background-image: none !important;
  color: var(--we-text) !important;
  color-scheme: light !important;
}

html body[data-winco-page="checkout"] .shell,
html body[data-winco-page="billing"] .shell,
html body.winco-billing-root .shell {
  background: transparent !important;
  color: var(--we-text) !important;
}

html body[data-winco-page="checkout"] .hero,
html body[data-winco-page="checkout"] .panel,
html body[data-winco-page="checkout"] .card,
html body[data-winco-page="checkout"] .meta,
html body[data-winco-page="billing"] .hero,
html body[data-winco-page="billing"] .panel,
html body[data-winco-page="billing"] .summary-card,
html body[data-winco-page="billing"] .metric,
html body[data-winco-page="billing"] .billing-item,
html body[data-winco-page="billing"] .billing-profile,
html body[data-winco-page="billing"] .plan-card,
html body[data-winco-page="billing"] .account-card,
html body[data-winco-page="billing"] .billing-client-drawer,
html body[data-winco-page="billing"] .billing-admin-details,
html body[data-winco-page="billing"] .winco-admin-control-panel,
html body[data-winco-page="billing"] .admin-runtime-panel,
html body.winco-billing-root .hero,
html body.winco-billing-root .panel,
html body.winco-billing-root .summary-card,
html body.winco-billing-root .metric,
html body.winco-billing-root .billing-item,
html body.winco-billing-root .billing-profile,
html body.winco-billing-root .plan-card,
html body.winco-billing-root .account-card,
html body.winco-billing-root .billing-client-drawer,
html body.winco-billing-root .billing-admin-details,
html body.winco-billing-root .winco-admin-control-panel,
html body.winco-billing-root .admin-runtime-panel {
  background: var(--we-surface) !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
  box-shadow: var(--we-shadow) !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

html body[data-winco-page="checkout"] .meta-row,
html body[data-winco-page="billing"] .summary-item,
html body[data-winco-page="billing"] .billing-row,
html body[data-winco-page="billing"] .meta-chip,
html body[data-winco-page="billing"] .billing-client-drawer > summary,
html body[data-winco-page="billing"] .billing-admin-details > summary,
html body.winco-billing-root .summary-item,
html body.winco-billing-root .billing-row,
html body.winco-billing-root .meta-chip,
html body.winco-billing-root .billing-client-drawer > summary,
html body.winco-billing-root .billing-admin-details > summary {
  background: var(--we-surface-alt) !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
}

html body[data-winco-page="checkout"] h1,
html body[data-winco-page="checkout"] h2,
html body[data-winco-page="checkout"] h3,
html body[data-winco-page="checkout"] strong,
html body[data-winco-page="billing"] h1,
html body[data-winco-page="billing"] h2,
html body[data-winco-page="billing"] h3,
html body[data-winco-page="billing"] strong,
html body.winco-billing-root h1,
html body.winco-billing-root h2,
html body.winco-billing-root h3,
html body.winco-billing-root strong {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
  letter-spacing: 0 !important;
}

html body[data-winco-page="checkout"] p,
html body[data-winco-page="checkout"] small,
html body[data-winco-page="checkout"] label,
html body[data-winco-page="checkout"] span,
html body[data-winco-page="checkout"] .muted,
html body[data-winco-page="billing"] p,
html body[data-winco-page="billing"] small,
html body[data-winco-page="billing"] label,
html body[data-winco-page="billing"] .muted,
html body[data-winco-page="billing"] .lead,
html body[data-winco-page="billing"] .billing-profile-hint,
html body.winco-billing-root p,
html body.winco-billing-root small,
html body.winco-billing-root label,
html body.winco-billing-root .muted,
html body.winco-billing-root .lead,
html body.winco-billing-root .billing-profile-hint {
  color: var(--we-muted) !important;
  -webkit-text-fill-color: var(--we-muted) !important;
}

html body[data-winco-page="checkout"] input,
html body[data-winco-page="checkout"] select,
html body[data-winco-page="checkout"] textarea,
html body[data-winco-page="billing"] input,
html body[data-winco-page="billing"] select,
html body[data-winco-page="billing"] textarea,
html body.winco-billing-root input,
html body.winco-billing-root select,
html body.winco-billing-root textarea {
  background: #ffffff !important;
  background-image: none !important;
  border: 1px solid var(--we-border-strong) !important;
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
  box-shadow: none !important;
}

html body[data-winco-page="checkout"] .plan-badge,
html body[data-winco-page="checkout"] .pill,
html body[data-winco-page="billing"] .eyebrow,
html body[data-winco-page="billing"] .pill,
html body[data-winco-page="billing"] .status,
html body[data-winco-page="billing"] .status-pill,
html body.winco-billing-root .eyebrow,
html body.winco-billing-root .pill,
html body.winco-billing-root .status,
html body.winco-billing-root .status-pill {
  background: var(--we-accent-soft) !important;
  background-image: none !important;
  border: 1px solid #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
  box-shadow: none !important;
}

html body[data-winco-page="billing"] .status.active,
html body[data-winco-page="billing"] .status.trialing,
html body[data-winco-page="billing"] .status.free_test_active,
html body.winco-billing-root .status.active,
html body.winco-billing-root .status.trialing,
html body.winco-billing-root .status.free_test_active {
  background: var(--we-success-soft) !important;
  border-color: #bedcca !important;
  color: var(--we-success-strong) !important;
  -webkit-text-fill-color: var(--we-success-strong) !important;
}

html body[data-winco-page="billing"] .status.pending,
html body[data-winco-page="billing"] .status.pending_checkout,
html body[data-winco-page="billing"] .status.overdue,
html body.winco-billing-root .status.pending,
html body.winco-billing-root .status.pending_checkout,
html body.winco-billing-root .status.overdue {
  background: var(--we-warning-soft) !important;
  border-color: #f1d48a !important;
  color: var(--we-warning) !important;
  -webkit-text-fill-color: var(--we-warning) !important;
}

html body[data-winco-page="billing"] .status.cancelled,
html body[data-winco-page="billing"] .status.blocked,
html body[data-winco-page="billing"] .status.inactive,
html body.winco-billing-root .status.cancelled,
html body.winco-billing-root .status.blocked,
html body.winco-billing-root .status.inactive {
  background: var(--we-danger-soft) !important;
  border-color: #f4b6ad !important;
  color: var(--we-danger) !important;
  -webkit-text-fill-color: var(--we-danger) !important;
}

html body[data-winco-page="checkout"] .btn.primary,
html body[data-winco-page="checkout"] button[type="submit"],
html body[data-winco-page="billing"] .btn.primary,
html body[data-winco-page="billing"] button[type="submit"],
html body.winco-billing-root .btn.primary,
html body.winco-billing-root button[type="submit"],
html body.winco-billing-root .billing-profile button,
html body.winco-billing-root .billing-actions button:not(:disabled),
html body.winco-billing-root .billing-actions a {
  background: var(--we-accent) !important;
  background-image: none !important;
  border: 1px solid var(--we-accent-strong) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  box-shadow: none !important;
}

html body[data-winco-page="checkout"] .btn:not(.primary),
html body[data-winco-page="billing"] .btn:not(.primary),
html body.winco-billing-root .btn:not(.primary) {
  background: #ffffff !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
  -webkit-text-fill-color: var(--we-text) !important;
}

html body[data-winco-page="billing"] button:disabled,
html body.winco-billing-root button:disabled {
  background: var(--we-surface-alt) !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-muted-2) !important;
  -webkit-text-fill-color: var(--we-muted-2) !important;
  opacity: 1 !important;
}

html body[data-winco-page="billing"] .plan-card::before,
html body[data-winco-page="billing"] .plan-card::after,
html body.winco-billing-root .plan-card::before,
html body.winco-billing-root .plan-card::after {
  display: none !important;
}

html body[data-winco-page="billing"] .recommended-title,
html body[data-winco-page="billing"] .plan-price,
html body.winco-billing-root .recommended-title,
html body.winco-billing-root .plan-price {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
  letter-spacing: 0 !important;
}

html body[data-winco-page="billing"] .plan-price small,
html body[data-winco-page="billing"] .plan-description,
html body.winco-billing-root .plan-price small,
html body.winco-billing-root .plan-description {
  color: var(--we-muted) !important;
  -webkit-text-fill-color: var(--we-muted) !important;
  letter-spacing: 0 !important;
}

html body[data-winco-page="billing"] .upgrade-row,
html body[data-winco-page="billing"] .mini-plan,
html body.winco-billing-root .upgrade-row,
html body.winco-billing-root .mini-plan {
  background: var(--we-surface-alt) !important;
  background-image: none !important;
  border: 1px solid var(--we-border) !important;
  color: var(--we-text) !important;
  box-shadow: none !important;
}

html body[data-winco-page="billing"] .mini-plan.featured,
html body.winco-billing-root .mini-plan.featured {
  background: var(--we-accent-soft) !important;
  border-color: #c7d8ff !important;
}

html body[data-winco-page="billing"] .upgrade-row strong,
html body[data-winco-page="billing"] .mini-plan h3,
html body[data-winco-page="billing"] .mini-plan b,
html body.winco-billing-root .upgrade-row strong,
html body.winco-billing-root .mini-plan h3,
html body.winco-billing-root .mini-plan b {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
}

html body[data-winco-page="billing"] .upgrade-row span,
html body[data-winco-page="billing"] .mini-plan p,
html body.winco-billing-root .upgrade-row span,
html body.winco-billing-root .mini-plan p {
  color: var(--we-muted) !important;
  -webkit-text-fill-color: var(--we-muted) !important;
}

html body:not(.winco-public-landing) .side-link.active,
html body:not(.winco-public-landing) .filter.active {
  background: var(--we-accent-soft) !important;
  border-color: #c7d8ff !important;
  color: var(--we-accent-strong) !important;
  -webkit-text-fill-color: var(--we-accent-strong) !important;
}

html body:not(.winco-public-landing) .status-online,
html body:not(.winco-public-landing) .status-offline,
html body:not(.winco-public-landing) .status-warning {
  color: var(--we-heading) !important;
  -webkit-text-fill-color: var(--we-heading) !important;
}

html body:not(.winco-public-landing) svg,
html body:not(.winco-public-landing) i,
html body:not(.winco-public-landing) [data-lucide] {
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 760px) {
  html body:not(.winco-public-landing) .shell,
  html body:not(.winco-public-landing) .main {
    width: calc(100vw - 20px) !important;
    max-width: calc(100vw - 20px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-top: 18px !important;
    overflow: hidden !important;
  }

  html body:not(.winco-public-landing) .topbar,
  html body:not(.winco-public-landing) .top {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 12px !important;
  }

  html body:not(.winco-public-landing) .topbar .nav-actions,
  html body:not(.winco-public-landing) .top .nav,
  html body:not(.winco-public-landing) header .nav-actions,
  html body:not(.winco-public-landing) header .nav {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
    justify-content: stretch !important;
    overflow: visible !important;
    min-width: 0 !important;
  }

  html body:not(.winco-public-landing) .topbar .nav-actions .btn,
  html body:not(.winco-public-landing) .top .nav a,
  html body:not(.winco-public-landing) header .nav-actions .btn,
  html body:not(.winco-public-landing) header .nav a {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    flex: 1 1 100% !important;
    padding: 0 10px !important;
    font-size: 12px !important;
    white-space: normal !important;
  }

  html body:not(.winco-public-landing) .topbar *,
  html body:not(.winco-public-landing) .top *,
  html body:not(.winco-public-landing) .hero *,
  html body:not(.winco-public-landing) .quick-create *,
  html body:not(.winco-public-landing) .toolbar *,
  html body:not(.winco-public-landing) .table-card *,
  html body:not(.winco-public-landing) .panel * {
    max-width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  html body:not(.winco-public-landing) .hero,
  html body:not(.winco-public-landing) .hero-grid,
  html body:not(.winco-public-landing) .quick-create,
  html body:not(.winco-public-landing) .form-grid,
  html body:not(.winco-public-landing) .channel-row,
  html body:not(.winco-public-landing) .metrics,
  html body:not(.winco-public-landing) .toolbar,
  html body:not(.winco-public-landing) .filters,
  html body:not(.winco-public-landing) .table-card,
  html body:not(.winco-public-landing) .client-row,
  html body:not(.winco-public-landing) .settings-grid,
  html body:not(.winco-public-landing) .card-grid,
  html body:not(.winco-public-landing) .status-grid,
  html body:not(.winco-public-landing) .admin-row,
  html body:not(.winco-public-landing) .stage,
  html body:not(.winco-public-landing) .queue-grid,
  html body:not(.winco-public-landing) .events-list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }

  html body:not(.winco-public-landing) .hero-grid,
  html body:not(.winco-public-landing) .form-grid,
  html body:not(.winco-public-landing) .channel-row,
  html body:not(.winco-public-landing) .settings-grid,
  html body:not(.winco-public-landing) .card-grid,
  html body:not(.winco-public-landing) .status-grid,
  html body:not(.winco-public-landing) .admin-row {
    grid-template-columns: 1fr !important;
  }

  html body:not(.winco-public-landing) .metrics {
    grid-template-columns: 1fr !important;
  }

  html body:not(.winco-public-landing) input,
  html body:not(.winco-public-landing) select,
  html body:not(.winco-public-landing) textarea,
  html body:not(.winco-public-landing) button,
  html body:not(.winco-public-landing) .btn {
    max-width: 100% !important;
    min-width: 0 !important;
  }

  html body:not(.winco-public-landing) .hero,
  html body:not(.winco-public-landing) .panel,
  html body:not(.winco-public-landing) .table-card,
  html body:not(.winco-public-landing) .quick-create {
    padding: 18px !important;
  }

  html body:not(.winco-public-landing) .hero h1,
  html body:not(.winco-public-landing) .hero h2 {
    width: 100% !important;
    max-width: 320px !important;
    font-size: 26px !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
  }

  html body:not(.winco-public-landing) .quick-create,
  html body:not(.winco-public-landing) .hero p,
  html body:not(.winco-public-landing) .hero .lead,
  html body:not(.winco-public-landing) .quick-create p,
  html body:not(.winco-public-landing) .quick-create h2,
  html body:not(.winco-public-landing) .quick-create input,
  html body:not(.winco-public-landing) .quick-create .check,
  html body:not(.winco-public-landing) .quick-create button {
    width: 100% !important;
    max-width: 320px !important;
  }

  html body:not(.winco-public-landing) .quick-create input[type="checkbox"],
  html body:not(.winco-public-landing) .check input[type="checkbox"],
  html body:not(.winco-public-landing) input[type="checkbox"] {
    width: 14px !important;
    height: 14px !important;
    min-width: 14px !important;
    max-width: 14px !important;
    flex: 0 0 14px !important;
    margin: 0 !important;
  }

  html body:not(.winco-public-landing) .quick-create .check,
  html body:not(.winco-public-landing) .check {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 8px !important;
  }

  html body:not(.winco-public-landing) .signal-card,
  html body:not(.winco-public-landing) .status-card {
    width: 100% !important;
    max-width: 320px !important;
  }

  html body:not(.winco-public-landing) .signal-list,
  html body:not(.winco-public-landing) .status-list {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body:not(.winco-public-landing) .signal-item,
  html body:not(.winco-public-landing) .status-item {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
    gap: 8px !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow: visible !important;
  }

  html body:not(.winco-public-landing) .signal-label,
  html body:not(.winco-public-landing) .status-label {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }

  html body:not(.winco-public-landing) .signal-item > :last-child,
  html body:not(.winco-public-landing) .status-item > :last-child {
    justify-self: end !important;
    min-width: 34px !important;
    max-width: none !important;
  }

  html body:not(.winco-public-landing) p,
  html body:not(.winco-public-landing) .lead,
  html body:not(.winco-public-landing) .client-name,
  html body:not(.winco-public-landing) .brand-title,
  html body:not(.winco-public-landing) .brand h1,
  html body:not(.winco-public-landing) .brand-subtitle {
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }

  html body:not(.winco-public-landing) .client-row {
    gap: 14px !important;
  }

  html body:not(.winco-public-landing) .client-row .actions {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    width: 100% !important;
  }

  html body:not(.winco-public-landing) .client-row .actions .icon-btn {
    width: 100% !important;
  }
}

/* WINCO_GLOBAL_READABILITY_STANDARD_V3_START */

/*
 * WINco Global Readability Standard
 * Padroniza a leitura das telas V3 sem alterar rotas, JS ou backend.
 * Objetivo: deixar Dashboard, Agenda, Studio, Operacoes, Conexao,
 * CRM, Conta e Configuracoes no mesmo padrao premium/legivel.
 */

html {
    font-size: 16px;
}

body {
    font-size: 15px;
    line-height: 1.55;
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
}

/* Shell / navegacao */

aside,
nav,
header,
.v3-shell,
.v3-sidebar,
.v3-topbar,
.v3-system-header,
.v3-system-nav,
.app-header,
.app-nav,
.account-nav,
.topbar,
.topbar-nav {
    font-size: 14px;
}

aside a,
nav a,
header a,
.v3-sidebar a,
.v3-topbar a,
.v3-system-nav a,
.app-nav a,
.account-nav a,
.topbar a,
.topbar-nav a {
    font-size: 14px;
    font-weight: 650;
    line-height: 1.35;
}

/* Titulos */

main h1,
.v3-page h1,
.v3-system-page h1,
.page-title,
h1 {
    font-size: clamp(28px, 2.15vw, 36px);
    line-height: 1.12;
    letter-spacing: -0.025em;
}

main h2,
.v3-page h2,
.v3-system-page h2,
.section-title,
h2 {
    font-size: clamp(22px, 1.65vw, 28px);
    line-height: 1.18;
    letter-spacing: -0.018em;
}

main h3,
.v3-page h3,
.v3-system-page h3,
.card-title,
h3 {
    font-size: 18px;
    line-height: 1.25;
    letter-spacing: -0.01em;
}

/* Texto comum */

main p,
main li,
main label,
main a,
main button,
main input,
main select,
main textarea,
main td,
main th {
    font-size: 14px;
    line-height: 1.5;
}

p,
label,
li {
    line-height: 1.5;
}

/* Textos pequenos */

small,
.eyebrow,
.kicker,
.caption,
.helper,
.hint,
.muted,
.text-muted,
.v3-muted,
.v3-helper,
.v3-eyebrow,
.dashboard-muted,
.dashboard-helper,
.dashboard-caption {
    font-size: 12.5px;
    line-height: 1.45;
}

/* Cards */

.card,
.v3-card,
.system-card,
.dashboard-card,
.operation-card,
.account-card,
.quick-action-card,
.metric-card,
.stat-card,
.calendar-card,
.agenda-rule-drawer,
.agenda-day-inspector,
.crm-card,
.studio-card {
    font-size: 14px;
}

.card p,
.v3-card p,
.system-card p,
.dashboard-card p,
.operation-card p,
.account-card p,
.quick-action-card p,
.metric-card p,
.stat-card p,
.calendar-card p,
.crm-card p,
.studio-card p {
    font-size: 13.75px;
    line-height: 1.48;
}

.card strong,
.v3-card strong,
.system-card strong,
.dashboard-card strong,
.operation-card strong,
.account-card strong,
.quick-action-card strong,
.metric-card strong,
.stat-card strong,
.calendar-card strong,
.crm-card strong,
.studio-card strong {
    line-height: 1.3;
}

/* Metricas */

.metric-value,
.stat-value,
.kpi-value,
.v3-metric strong,
.v3-metrics strong,
.dashboard-stat strong,
.dashboard-metric strong,
.dashboard-kpi strong {
    font-size: 23px;
    line-height: 1.12;
    letter-spacing: -0.015em;
}

/* Botoes */

button,
.btn,
.button,
.v3-button,
.v3-btn,
.action-button {
    min-height: 38px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
}

/* Formularios */

input,
select,
textarea {
    font-size: 14px;
    line-height: 1.4;
}

input,
select {
    min-height: 40px;
}

textarea {
    min-height: 96px;
}

.form-label,
.field-label,
.v3-field-label {
    font-size: 13.5px;
    font-weight: 700;
}

/* Tabelas */

table {
    font-size: 14px;
}

table th {
    font-size: 13px;
    font-weight: 750;
}

table td {
    font-size: 14px;
}

/* Calendario */

.v3-calendar-day strong {
    font-size: 18px;
    line-height: 1.1;
}

.v3-calendar-day small {
    font-size: 11.75px;
    line-height: 1.35;
}

.v3-calendar-weekdays span {
    font-size: 12.5px;
    font-weight: 750;
}

/* Studio / formularios longos */

.studio-form label,
.studio-form input,
.studio-form select,
.studio-form textarea,
.v3-form label,
.v3-form input,
.v3-form select,
.v3-form textarea {
    font-size: 14px;
}

.studio-form textarea,
.v3-form textarea {
    line-height: 1.5;
}

/* Mobile */

@media (max-width: 900px) {
    html {
        font-size: 16px;
    }

    body {
        font-size: 15px;
    }

    main h1,
    .v3-page h1,
    .v3-system-page h1,
    .page-title,
    h1 {
        font-size: 27px;
    }

    main h2,
    .v3-page h2,
    .v3-system-page h2,
    .section-title,
    h2 {
        font-size: 22px;
    }

    main h3,
    .v3-page h3,
    .v3-system-page h3,
    .card-title,
    h3 {
        font-size: 18px;
    }

    main p,
    main li,
    main label,
    main a,
    main button,
    main input,
    main select,
    main textarea {
        font-size: 14px;
    }

    small,
    .caption,
    .helper,
    .hint,
    .muted,
    .text-muted,
    .v3-muted,
    .v3-helper {
        font-size: 12.5px;
    }

    aside a,
    nav a,
    header a {
        font-size: 14px;
    }
}

/* WINCO_GLOBAL_READABILITY_STANDARD_V3_END */
