/* ==========================================================================
   Maneiro Design Tokens — single source of truth
   Used by: webapp (app/static/css/app.css) + extension (extension/src/styles/*)
   NOTE: this file is duplicated to extension/src/styles/tokens.css.
         The two copies MUST remain byte-identical.
   ========================================================================== */
:root {
  /* Brand */
  --mn-primary:         #0d9488;
  --mn-primary-hover:   #0b7a6e;
  --mn-primary-active:  #0a6960;
  --mn-primary-mid:     #14b8a6;
  --mn-primary-light:   #e8f5f3;
  --mn-primary-50:      #f0fdf9;
  --mn-primary-900:     #134e4a;

  /* Semantic */
  --mn-success:         #0d9488;
  --mn-success-bg:      #e8f5f3;
  --mn-warning:         #f2c45f;
  --mn-warning-bg:      #fefbec;
  --mn-warning-text:    #7a5c00;
  --mn-error:           #c02323;  /* NOT #ef4444 */
  --mn-error-bg:        #fdf0f0;
  --mn-error-border:    #e89090;
  --mn-info:            #2563eb;  /* NOT #3b82f6 */
  --mn-info-bg:         #eff6ff;

  /* Neutrals */
  --mn-text:            #111827;
  --mn-text-2:          #374151;
  --mn-muted:           #6b7280;
  --mn-muted-2:         #9ca3af;
  --mn-border:          #e5e7eb;
  --mn-border-soft:     #f3f4f6;
  --mn-border-strong:   #c0c8d8;
  --mn-panel:           #ffffff;
  --mn-panel-2:         #f3f6f9;
  --mn-bg:              #f6f8ff;
  --mn-bg-accent:       #eef7f5;

  /* Typography */
  --mn-font-main:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --mn-font-letter:  Georgia, 'Times New Roman', serif;
  --mn-font-mono:    'SF Mono', Monaco, Menlo, Consolas, monospace;

  --mn-text-xs:  11px;
  --mn-text-sm:  12px;
  --mn-text-base:14px;
  --mn-text-md:  15px;
  --mn-text-lg:  18px;
  --mn-text-xl:  22px;
  --mn-text-2xl: 28px;

  --mn-weight-regular:  400;
  --mn-weight-medium:   500;
  --mn-weight-semibold: 600;
  --mn-weight-bold:     700;

  /* Spacing - 8px grid */
  --mn-space-xs:  4px;
  --mn-space-sm:  8px;
  --mn-space-md:  12px;
  --mn-space-lg:  16px;
  --mn-space-xl:  24px;
  --mn-space-2xl: 32px;
  --mn-space-3xl: 48px;

  /* Radius */
  --mn-radius-xs:   4px;
  --mn-radius-sm:   8px;
  --mn-radius-md:   10px;   /* canonical button/input radius - Doctor page */
  --mn-radius-lg:   12px;   /* canonical card radius */
  --mn-radius-xl:   16px;   /* modal */
  --mn-radius-pill: 9999px;

  /* Shadow */
  --mn-shadow-sm:     0 1px 2px 0 rgba(15,23,42,0.04);
  --mn-shadow-md:     0 4px 12px -2px rgba(15,23,42,0.06);
  --mn-shadow-lg:     0 12px 24px -8px rgba(15,23,42,0.10);
  --mn-shadow-primary:0 6px 18px rgba(156,208,197,0.30);
  --mn-shadow-primary-lg: 0 10px 22px rgba(156,208,197,0.35);

  /* Focus ring */
  --mn-focus-ring:     0 0 0 3px rgba(13,148,136,0.35);
  --mn-focus-outline:  2px solid var(--mn-primary);

  /* Motion */
  --mn-ease:      cubic-bezier(0.2, 0, 0.38, 0.9);
  --mn-dur-fast:  120ms;
  --mn-dur-base:  180ms;

  /* ----- Legacy aliases (keep old names working until full migration) ----- */
  --primary: var(--mn-primary); --accent: var(--mn-primary);
  --primary-light: var(--mn-primary-light); --primary-mid: var(--mn-primary-mid);
  --success: var(--mn-success); --success-bg: var(--mn-success-bg);
  --warning: var(--mn-warning); --warning-bg: var(--mn-warning-bg); --warning-text: var(--mn-warning-text);
  --error: var(--mn-error); --error-bg: var(--mn-error-bg); --error-border: var(--mn-error-border);
  --info: var(--mn-info); --info-bg: var(--mn-info-bg);
  --text: var(--mn-text); --muted: var(--mn-muted); --border: var(--mn-border);
  --panel: var(--mn-panel); --panel2: var(--mn-panel-2); --bg: var(--mn-bg); --bgAccent: var(--mn-bg-accent);
  --font-main: var(--mn-font-main);
  --space-1: var(--mn-space-sm); --space-2: var(--mn-space-lg); --space-3: var(--mn-space-xl); --space-4: var(--mn-space-2xl);
  --radius-sm: var(--mn-radius-sm); --radius-md: var(--mn-radius-lg); --radius-lg: var(--mn-radius-xl); --radius-pill: var(--mn-radius-pill);
  --text-xs: var(--mn-text-xs); --text-sm: var(--mn-text-sm); --text-base: var(--mn-text-base); --text-md: var(--mn-text-md); --text-lg: var(--mn-text-lg); --text-xl: var(--mn-text-xl);

  /* Extension-facing aliases */
  --color-primary: var(--mn-primary); --color-primary-dark: var(--mn-primary-hover); --color-primary-light: var(--mn-primary-mid); --color-primary-50: var(--mn-primary-50); --color-primary-100: var(--mn-primary-light);
  --color-success: var(--mn-success); --color-warning: var(--mn-warning); --color-danger: var(--mn-error); --color-error: var(--mn-error); --color-info: var(--mn-info);
  --color-background: var(--mn-panel); --color-surface: var(--mn-panel-2); --color-surface-light: var(--mn-border-soft);
  --color-border: var(--mn-border); --color-border-light: var(--mn-border-soft);
  --color-text-primary: var(--mn-text); --color-text-secondary: var(--mn-muted); --color-text-tertiary: var(--mn-muted-2); --color-text-disabled: #d1d5db;
  --font-family: var(--mn-font-main); --font-mono: var(--mn-font-mono);
  --font-size-xs: var(--mn-text-xs); --font-size-sm: var(--mn-text-sm); --font-size-base: var(--mn-text-base); --font-size-md: var(--mn-text-md); --font-size-lg: var(--mn-text-lg); --font-size-xl: 16px; --font-size-2xl: var(--mn-text-lg); --font-size-3xl: 20px;
  --font-weight-normal: var(--mn-weight-regular); --font-weight-medium: var(--mn-weight-medium); --font-weight-semibold: var(--mn-weight-semibold); --font-weight-bold: var(--mn-weight-bold);
  --space-xs: var(--mn-space-xs); --space-sm: var(--mn-space-sm); --space-md: var(--mn-space-md); --space-lg: var(--mn-space-lg); --space-xl: var(--mn-space-xl); --space-2xl: var(--mn-space-2xl);
  --shadow-sm: var(--mn-shadow-sm); --shadow-md: var(--mn-shadow-md); --shadow-lg: var(--mn-shadow-lg); --shadow-xl: var(--mn-shadow-lg);
}
