/* lamp10 — design tokens + componentes base
   Tudo o que é visual sai daqui. O separador "Design e página pública"
   escreve estes valores por salão (data-theme / variáveis no :root da loja). */

/* ---------- 1. Tokens globais (iguais em todos os salões) ---------- */
:root {
  --font-sans: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;
  --font-display: "Fraunces", Georgia, "Times New Roman", serif;
  --fs-12: 12px; --fs-13: 13px; --fs-14: 14px; --fs-16: 16px; --fs-18: 18px;
  --fs-20: 20px; --fs-24: 24px; --fs-30: 30px; --fs-36: 36px;

  /* raio: um só slider (0–24) escreve --rs = valor / 10 */
  --rs: 1;
  --radius-sm: calc(6px * var(--rs));
  --radius-md: calc(10px * var(--rs));
  --radius-lg: calc(14px * var(--rs));
  --radius-xl: calc(20px * var(--rs));
  --radius-full: 999px;
  --btn-radius: var(--radius-md);

  /* densidade (Confortável) */
  --h-input: 40px; --h-row: 52px; --pad-card: 20px;

  /* movimento */
  --dur-1: 120ms; --dur-2: 200ms; --dur-3: 320ms;
  --ease: cubic-bezier(.2, .8, .2, 1);

  /* estados de marcação — fixos em todos os salões */
  --st-pending: #D69A00;  --st-pending-bg: #FFF4D6;  --st-pending-fg: #6E4B00;
  --st-confirmed: #3B6FE0; --st-confirmed-bg: #E4EDFF; --st-confirmed-fg: #1C47B0;
  --st-progress: #12999A; --st-progress-bg: #DCF3F2; --st-progress-fg: #0A5F60;
  --st-walkin: #D2489A;   --st-walkin-bg: #FBE6F2;   --st-walkin-fg: #8E1A5C;
  --st-done: #2E9E4B;     --st-done-bg: #E2F4E6;     --st-done-fg: #1C6330;
  --st-noshow: #E26B26;   --st-noshow-bg: #FDE8DB;   --st-noshow-fg: #8F3A0C;
  --st-cancel: #9AA0A6;   --st-cancel-bg: #ECEDEE;   --st-cancel-fg: #4D5157;

  /* paleta de profissionais (atribuída automaticamente, editável) */
  --pro-1: #0E7C86; --pro-1-bg: #E3F3F4; --pro-1-bd: #B5DEE1;
  --pro-2: #B7791F; --pro-2-bg: #FBF0DF; --pro-2-bd: #EED3A6;
  --pro-3: #6D4BD8; --pro-4: #C2410C; --pro-5: #2F7D32;
  --pro-6: #BE185D; --pro-7: #1D4ED8; --pro-8: #7C6A0A;
  --pro-9: #0F766E; --pro-10: #9333EA;

  /* banner de acesso administrativo — fora de qualquer paleta de marca */
  --impersonate-a: #3F2A9E; --impersonate-b: #4C35B5;

  /* ---------- 2. Preset lamp10 (default) ---------- */
  --brand-50: #EEF6F3; --brand-100: #D5EAE2; --brand-200: #ABD4C5; --brand-300: #79B8A2;
  --brand-400: #4A977F; --brand-500: #2B7A63; --brand-600: #1F6350; --brand-700: #194F41;
  --brand-800: #143E34; --brand-900: #0F2E27;
  --color-accent: #B4582E;

  --primary: var(--brand-500); --primary-hover: var(--brand-600); --primary-press: var(--brand-700);
  --on-primary: #FFFFFF;
  --primary-soft: var(--brand-50); --primary-soft-fg: var(--brand-700);
  --link: var(--brand-600);

  --surface-0: #F6F5F2; --surface-1: #FFFFFF; --surface-2: #F1EFEB; --surface-3: #E7E4DE;
  --border: #E5E2DC; --border-strong: #D3CFC7;
  --text-strong: #1A1916; --text: #36342F; --text-muted: #67635B;

  --success: #2E9E4B; --success-bg: #E2F4E6; --success-fg: #1C6330;
  --warning: #D69A00; --warning-bg: #FFF4D6; --warning-fg: #6E4B00;
  --danger: #C62828;  --danger-bg: #FDE6E6;  --danger-fg: #A11F1F;
  --info: #3B6FE0;    --info-bg: #E4EDFF;    --info-fg: #1C47B0;

  --shadow-tint: 28, 26, 22;
  --shadow-xs: 0 1px 2px rgba(var(--shadow-tint), .06);
  --shadow-sm: 0 1px 2px rgba(var(--shadow-tint), .05), 0 3px 8px rgba(var(--shadow-tint), .07);
  --shadow-md: 0 2px 4px rgba(var(--shadow-tint), .04), 0 10px 24px -6px rgba(var(--shadow-tint), .14);
  --shadow-lg: 0 4px 8px rgba(var(--shadow-tint), .05), 0 28px 56px -12px rgba(var(--shadow-tint), .24);
  --shadow-focus: 0 0 0 2px var(--surface-1), 0 0 0 4px var(--primary);
  --scrim: rgba(18, 17, 15, .42);
  color-scheme: light;
}

/* ---------- 3. Preset Cachos Brasil (claro) ----------
   Vermelho do logótipo + azul-petróleo do banner. Valores a confirmar
   com conta-gotas sobre o ficheiro original do logótipo. */
[data-theme="cachos"] {
  --brand-50: #FDF0F1; --brand-100: #FAD9DC; --brand-200: #F3B0B6; --brand-300: #E97E88;
  --brand-400: #DB4C5A; --brand-500: #C41E2E; --brand-600: #A31826; --brand-700: #82141F;
  --brand-800: #641019; --brand-900: #470B12;
  --color-accent: #0F5C6B;
  --primary: var(--brand-500); --primary-hover: var(--brand-600); --primary-press: var(--brand-700);
  --on-primary: #FFFFFF;
  --primary-soft: var(--brand-50); --primary-soft-fg: var(--brand-700);
  --link: var(--brand-600);
  --surface-0: #F4F6F6; --surface-1: #FFFFFF; --surface-2: #EEF1F1; --surface-3: #E2E7E8;
  --border: #DFE4E5; --border-strong: #CBD2D4;
  --text-strong: #121A1C; --text: #2C3639; --text-muted: #5A6669;
  --shadow-tint: 14, 30, 34;
  --scrim: rgba(12, 22, 25, .44);
  color-scheme: light;
}

/* ---------- 4. Preset Cachos Brasil (escuro) ---------- */
[data-theme="cachos-dark"] {
  --brand-50: #2A1013; --brand-100: #3C1419; --brand-200: #5A1A22; --brand-300: #8A2230;
  --brand-400: #E04A58; --brand-500: #C41E2E; --brand-600: #D7313F; --brand-700: #F3A0A8;
  --brand-800: #F8C6CB; --brand-900: #FDE7E9;
  --color-accent: #5DBACB;
  --primary: #C41E2E; --primary-hover: #D22B3A; --primary-press: #A31826;
  --on-primary: #FFFFFF;
  --primary-soft: rgba(224, 74, 88, .16); --primary-soft-fg: #F6AFB6;
  --link: #F39AA3;
  --surface-0: #0D1315; --surface-1: #151E21; --surface-2: #1C272B; --surface-3: #263439;
  --border: #26343A; --border-strong: #36474E;
  --text-strong: #F1F5F5; --text: #D0D9DA; --text-muted: #96A5A8;
  --success: #4CC46B; --success-bg: rgba(76, 196, 107, .14); --success-fg: #8FE0A5;
  --warning: #F2B935; --warning-bg: rgba(242, 185, 53, .14); --warning-fg: #F7D27E;
  --danger: #F0616B;  --danger-bg: rgba(240, 97, 107, .14);  --danger-fg: #F7A0A6;
  --info: #6E98F0;    --info-bg: rgba(110, 152, 240, .16);  --info-fg: #AFC6F7;
  --st-pending-bg: rgba(242, 185, 53, .16);  --st-pending-fg: #F7D27E;
  --st-confirmed-bg: rgba(110, 152, 240, .18); --st-confirmed-fg: #B4C9F8;
  --st-progress-bg: rgba(18, 180, 180, .18); --st-progress-fg: #8FE3E1;
  --st-walkin-bg: rgba(225, 90, 170, .18);   --st-walkin-fg: #F3AED6;
  --st-done-bg: rgba(76, 196, 107, .16);     --st-done-fg: #9EE3B1;
  --st-noshow-bg: rgba(240, 130, 70, .18);   --st-noshow-fg: #F7B993;
  --st-cancel-bg: rgba(160, 168, 175, .16);  --st-cancel-fg: #C3C9CE;
  --pro-1-bg: rgba(20, 160, 172, .16); --pro-1-bd: rgba(20, 160, 172, .38);
  --pro-2-bg: rgba(216, 150, 52, .16); --pro-2-bd: rgba(216, 150, 52, .38);
  --shadow-tint: 0, 0, 0;
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 3px 8px rgba(0, 0, 0, .3);
  --shadow-md: 0 10px 24px -6px rgba(0, 0, 0, .5);
  --shadow-lg: 0 28px 56px -12px rgba(0, 0, 0, .6);
  --scrim: rgba(0, 0, 0, .55);
  color-scheme: dark;
}

/* ---------- 4b. Preset lamp10 (escuro) — mesma lógica do Cachos escuro ---------- */
[data-theme="lamp10-dark"] {
  --brand-50: #10241E; --brand-100: #15342B; --brand-200: #1C4A3D; --brand-300: #276654;
  --brand-400: #4FB394; --brand-500: #2B7A63; --brand-600: #33916F; --brand-700: #9AD9C3;
  --brand-800: #C2EBDC; --brand-900: #E6F7F0;
  --color-accent: #E0915F;
  --primary: #2B7A63; --primary-hover: #33876E; --primary-press: #1F6350;
  --on-primary: #FFFFFF;
  --primary-soft: rgba(79, 179, 148, .16); --primary-soft-fg: #9AD9C3;
  --link: #8ED3BA;
  --surface-0: #111211; --surface-1: #191B1A; --surface-2: #212423; --surface-3: #2B2F2D;
  --border: #2A2E2C; --border-strong: #3A3F3C;
  --text-strong: #F2F3F1; --text: #D3D6D2; --text-muted: #9EA39D;
  --success: #4CC46B; --success-bg: rgba(76, 196, 107, .14); --success-fg: #8FE0A5;
  --warning: #F2B935; --warning-bg: rgba(242, 185, 53, .14); --warning-fg: #F7D27E;
  --danger: #F0616B;  --danger-bg: rgba(240, 97, 107, .14);  --danger-fg: #F7A0A6;
  --info: #6E98F0;    --info-bg: rgba(110, 152, 240, .16);  --info-fg: #AFC6F7;
  --st-pending-bg: rgba(242, 185, 53, .16);  --st-pending-fg: #F7D27E;
  --st-confirmed-bg: rgba(110, 152, 240, .18); --st-confirmed-fg: #B4C9F8;
  --st-progress-bg: rgba(18, 180, 180, .18); --st-progress-fg: #8FE3E1;
  --st-walkin-bg: rgba(225, 90, 170, .18);   --st-walkin-fg: #F3AED6;
  --st-done-bg: rgba(76, 196, 107, .16);     --st-done-fg: #9EE3B1;
  --st-noshow-bg: rgba(240, 130, 70, .18);   --st-noshow-fg: #F7B993;
  --st-cancel-bg: rgba(160, 168, 175, .16);  --st-cancel-fg: #C3C9CE;
  --pro-1-bg: rgba(20, 160, 172, .16); --pro-1-bd: rgba(20, 160, 172, .38);
  --pro-2-bg: rgba(216, 150, 52, .16); --pro-2-bd: rgba(216, 150, 52, .38);
  --shadow-tint: 0, 0, 0;
  --shadow-xs: 0 1px 2px rgba(0, 0, 0, .3);
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, .3), 0 3px 8px rgba(0, 0, 0, .3);
  --shadow-md: 0 10px 24px -6px rgba(0, 0, 0, .5);
  --shadow-lg: 0 28px 56px -12px rgba(0, 0, 0, .6);
  --scrim: rgba(0, 0, 0, .55);
  color-scheme: dark;
}

[data-density="compact"] { --h-input: 34px; --h-row: 44px; --pad-card: 14px; }
[data-btn-shape="pill"] { --btn-radius: 999px; }


@font-face{font-family:Inter;src:url('/fonts/filament/filament/inter/inter-latin-wght-normal-DIHYUR35.woff2') format('woff2');font-weight:100 900;font-display:swap}
*,*::before,*::after{box-sizing:border-box}button,input,select,textarea{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.5}[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--primary);outline-offset:3px}body{font-family:var(--font-sans);font-size:14px;line-height:1.45;background:var(--surface-0);color:var(--text)}svg{stroke-width:1.75}input,table,strong,time{font-variant-numeric:tabular-nums}
[data-motion=off] *,[data-motion=off] *::before,[data-motion=off] *::after{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
