/* Momentum application palette. White surfaces; editorial ivory is not used here.
   Shared by Gestion and Reservation. Native applications keep their own styling. */
@import './momentum-font.css';

html:not(.native-app) {
  --momentum-green: #193D35;
  --momentum-hover: #123028;
  --momentum-ink: #202724;
  --momentum-muted: #5E6B65;
  --momentum-surface: #FFFFFF;
  --momentum-soft: #F5F7F6;
  --momentum-selected: #EAF0EB;
  --momentum-line: #DEE5E1;
  --momentum-control-line: #84928B;
  --momentum-sage: #A8B6A2;
  --momentum-bronze: #A48058;
  --font-sans: 'Manrope', Arial, sans-serif;
  --coach-ink: var(--momentum-ink);
  --coach-muted: var(--momentum-muted);
  --coach-accent: var(--momentum-green);
  --coach-soft: var(--momentum-selected);
  --coach-line: var(--momentum-line);
  --coach-surface: var(--momentum-surface);
  --member-ink: var(--momentum-ink);
  --member-muted: var(--momentum-muted);
  --member-accent: var(--momentum-green);
  --member-soft: var(--momentum-selected);
  --member-line: var(--momentum-line);
  --ink: var(--momentum-ink);
  --charcoal: var(--momentum-ink);
  --muted: var(--momentum-muted);
  --muted-foreground: var(--momentum-muted);
  --olive: var(--momentum-green);
  --olive-dark: var(--momentum-hover);
  --sand: var(--momentum-bronze);
  --cream: var(--momentum-soft);
  --paper: var(--momentum-surface);
  --surface: var(--momentum-surface);
  --line: var(--momentum-line);
  --background: var(--momentum-surface);
  --foreground: var(--momentum-ink);
  --card: var(--momentum-surface);
  --card-foreground: var(--momentum-ink);
  --popover: var(--momentum-surface);
  --popover-foreground: var(--momentum-ink);
  --primary: var(--momentum-green);
  --primary-foreground: #FFFFFF;
  --secondary: var(--momentum-soft);
  --secondary-foreground: var(--momentum-green);
  --accent: var(--momentum-selected);
  --accent-foreground: var(--momentum-green);
  --border: var(--momentum-line);
  --input: var(--momentum-control-line);
  --ring: var(--momentum-green);
  --sidebar: var(--momentum-green);
  --sidebar-foreground: #FFFFFF;
  --sidebar-primary: var(--momentum-selected);
  --sidebar-primary-foreground: var(--momentum-green);
  --sidebar-accent: var(--momentum-hover);
  --sidebar-accent-foreground: #FFFFFF;
  color-scheme: light;
  color: var(--momentum-ink);
  background: var(--momentum-surface);
  font-family: var(--font-sans);
}

/* A few legacy panels declare their own local palette. Keep these in sync. */
html:not(.native-app) :is(body, .app-shell, .coach-redesign, .messaging-page, .member-messaging) {
  --ink: var(--momentum-ink); --muted: var(--momentum-muted);
  --olive: var(--momentum-green); --olive-dark: var(--momentum-hover);
  --line: var(--momentum-line); --paper: var(--momentum-surface);
  --obf-brand-green: var(--momentum-green);
  --obf-ink: var(--momentum-ink); --obf-ink-soft: var(--momentum-muted);
  --obf-muted: var(--momentum-muted); --obf-faint: var(--momentum-muted);
  --obf-line: var(--momentum-line); --obf-line-soft: var(--momentum-soft);
  --obf-page: var(--momentum-surface); --obf-surface: var(--momentum-surface);
  --obf-tint: var(--momentum-selected); --obf-tint-hover: var(--momentum-soft);
  --obf-olive: var(--momentum-green); --obf-olive-dark: var(--momentum-hover);
  --obf-olive-ink: var(--momentum-green); --obf-dark: var(--momentum-green);
  --mm-olive: var(--momentum-green); --mm-olive-dark: var(--momentum-hover);
}

/* Font-only override: keep all existing sizes, layout and icon rendering. */
html:not(.native-app) body,
html:not(.native-app) body :where(*:not(code):not(pre):not(kbd):not(samp):not(svg):not(svg *)) {
  font-family: 'Manrope', Arial, sans-serif !important;
}
html:not(.native-app) body {
  background: var(--momentum-surface) !important;
  color: var(--momentum-ink);
}
html:not(.native-app) :is(button, input, select, textarea) { accent-color: var(--momentum-green); }
html:not(.native-app) :is(input, select, textarea) { caret-color: var(--momentum-green); }
html:not(.native-app) :is(input, textarea)::placeholder { color: var(--momentum-muted); opacity: 1; }
html:not(.native-app) ::selection { background: var(--momentum-selected); color: var(--momentum-green); }
html:not(.native-app) :is(button, a, input, select, textarea, summary, [tabindex]):focus-visible {
  outline: 2px solid var(--momentum-green) !important;
  outline-offset: 3px;
}
html:not(.native-app) :is(table, .kpi, .session-time) { font-variant-numeric: tabular-nums; }
html:not(.native-app) :is(.auth-page, .gym-gate, .auth-loader) { background: var(--momentum-soft) !important; background-image: none !important; color: var(--momentum-ink); }
html:not(.native-app) :is(.auth-card, [data-slot=dialog-content], [data-slot=sheet-content]) { background: var(--momentum-surface) !important; }
html:not(.native-app) :is(.auth-heading h1, .auth-brand p) { color: var(--momentum-ink); }
html:not(.native-app) :is(.auth-heading p, .auth-footer) { color: var(--momentum-muted); }
html:not(.native-app) :is(.auth-brand span, .auth-text-action, .auth-kicker) { color: var(--momentum-green); }
html:not(.native-app) :is(.auth-submit, .auth-monogram) { color: #FFFFFF; background: var(--momentum-green); }
html:not(.native-app) .auth-submit:hover:not(:disabled) { background: var(--momentum-hover); }
html:not(.native-app) :is(.auth-form input, .coach-redesign input, .coach-redesign select, .coach-redesign textarea, .app-shell input, .app-shell select, .app-shell textarea) { border-color: var(--momentum-control-line) !important; }
html:not(.native-app) :is([data-slot=dialog-footer], .important-message-preview, .team-role-guide > span) { background: var(--momentum-soft) !important; }
html:not(.native-app) :is(.brand-btn, .primary, .msg-primary, .member-msg-new, .reserve-action) {
  color: #FFFFFF !important; background: var(--momentum-green) !important; border-color: var(--momentum-green) !important;
}
html:not(.native-app) :is(.brand-btn, .primary, .msg-primary, .member-msg-new, .reserve-action):hover:not(:disabled) { background: var(--momentum-hover) !important; }
html:not(.native-app) .secondary { color: var(--momentum-green) !important; background: #FFFFFF !important; border-color: var(--momentum-control-line) !important; }
