/* Theme Variables - 11 themes for Keepers */

/* Default (Catppuccin Mocha) */
:root {
  --bg-primary: #1e1e2e;
  --bg-secondary: #313244;
  --bg-tertiary: #45475a;
  --text-primary: #cdd6f4;
  --text-secondary: #a6adc8;
  --text-muted: #6c7086;
  --accent: #cba6f7;
  --accent-secondary: #f5c2e7;
  --success: #a6e3a1;
  --warning: #f9e2af;
  --error: #f38ba8;
  --info: #89b4fa;
  --border: #45475a;

  /* Extended tag colors */
  --tag-teal: #94e2d5;
  --tag-orange: #fab387;
  --tag-rose: #eba0ac;
  --tag-violet: #b4befe;

  /* Shadow system */
  --shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.05);
  --shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --shadow-glow: 0 0 0 3px color-mix(in srgb, var(--accent) 25%, transparent);

  /* Duration scale - canonical timing tokens */
  --duration-instant: 50ms;   /* Micro-feedback (active states) */
  --duration-fast: 100ms;     /* Hovers, toggles */
  --duration-normal: 200ms;   /* Standard transitions */
  --duration-slow: 350ms;     /* Emphatic animations */
  --duration-emphasis: 500ms; /* Attention-grabbing */

  /* Easing functions */
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);     /* Enter screen */
  --ease-in: cubic-bezier(0.4, 0, 1, 1);         /* Exit screen */
  --ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);   /* Continuous */
  --ease-default: var(--ease-in-out);            /* Legacy alias */

  /* Composed transitions (convenience) */
  --transition-instant: var(--duration-instant) var(--ease-out);
  --transition-fast: var(--duration-fast) var(--ease-out);
  --transition-normal: var(--duration-normal) var(--ease-out);
  --transition-slow: var(--duration-slow) var(--ease-out);
}

/* Catppuccin Mocha */
.theme-catppuccin-mocha {
  --bg-primary: #1e1e2e;
  --bg-secondary: #313244;
  --bg-tertiary: #45475a;
  --text-primary: #cdd6f4;
  --text-secondary: #a6adc8;
  --text-muted: #6c7086;
  --accent: #cba6f7;
  --accent-secondary: #f5c2e7;
  --success: #a6e3a1;
  --warning: #f9e2af;
  --error: #f38ba8;
  --info: #89b4fa;
  --border: #45475a;
  --tag-teal: #94e2d5;
  --tag-orange: #fab387;
  --tag-rose: #eba0ac;
  --tag-violet: #b4befe;
}

/* Catppuccin Latte */
.theme-catppuccin-latte {
  --bg-primary: #eff1f5;
  --bg-secondary: #e6e9ef;
  --bg-tertiary: #ccd0da;
  --text-primary: #4c4f69;
  --text-secondary: #5c5f77;
  --text-muted: #9ca0b0;
  --accent: #8839ef;
  --accent-secondary: #ea76cb;
  --success: #40a02b;
  --warning: #df8e1d;
  --error: #d20f39;
  --info: #1e66f5;
  --border: #ccd0da;
  --tag-teal: #179299;
  --tag-orange: #fe640b;
  --tag-rose: #e64553;
  --tag-violet: #7287fd;
}

/* Solarized Dark */
.theme-solarized-dark {
  --bg-primary: #002b36;
  --bg-secondary: #073642;
  --bg-tertiary: #094656;
  --text-primary: #839496;
  --text-secondary: #93a1a1;
  --text-muted: #586e75;
  --accent: #b58900;
  --accent-secondary: #cb4b16;
  --success: #859900;
  --warning: #b58900;
  --error: #dc322f;
  --info: #268bd2;
  --border: #094656;
  --tag-teal: #2aa198;
  --tag-orange: #cb4b16;
  --tag-rose: #d33682;
  --tag-violet: #6c71c4;
}

/* Solarized Light */
.theme-solarized-light {
  --bg-primary: #fdf6e3;
  --bg-secondary: #eee8d5;
  --bg-tertiary: #ddd6c3;
  --text-primary: #657b83;
  --text-secondary: #586e75;
  --text-muted: #93a1a1;
  --accent: #b58900;
  --accent-secondary: #cb4b16;
  --success: #859900;
  --warning: #b58900;
  --error: #dc322f;
  --info: #268bd2;
  --border: #ddd6c3;
  --tag-teal: #2aa198;
  --tag-orange: #cb4b16;
  --tag-rose: #d33682;
  --tag-violet: #6c71c4;
}

/* Tokyo Night Dark */
.theme-tokyonight-dark {
  --bg-primary: #1a1b26;
  --bg-secondary: #24283b;
  --bg-tertiary: #414868;
  --text-primary: #c0caf5;
  --text-secondary: #a9b1d6;
  --text-muted: #565f89;
  --accent: #7aa2f7;
  --accent-secondary: #bb9af7;
  --success: #9ece6a;
  --warning: #e0af68;
  --error: #f7768e;
  --info: #7dcfff;
  --border: #414868;
  --tag-teal: #73daca;
  --tag-orange: #ff9e64;
  --tag-rose: #f7768e;
  --tag-violet: #bb9af7;
}

/* Tokyo Night Light (Day) */
.theme-tokyonight-light {
  --bg-primary: #e1e2e7;
  --bg-secondary: #d5d6db;
  --bg-tertiary: #c4c5ca;
  --text-primary: #3760bf;
  --text-secondary: #6172b0;
  --text-muted: #8990b3;
  --accent: #2e7de9;
  --accent-secondary: #9854f1;
  --success: #587539;
  --warning: #8c6c3e;
  --error: #f52a65;
  --info: #007197;
  --border: #c4c5ca;
  --tag-teal: #118c74;
  --tag-orange: #965027;
  --tag-rose: #f52a65;
  --tag-violet: #9854f1;
}

/* Kanagawa Wave */
.theme-kanagawa-wave {
  --bg-primary: #1f1f28;
  --bg-secondary: #2a2a37;
  --bg-tertiary: #363646;
  --text-primary: #dcd7ba;
  --text-secondary: #c8c093;
  --text-muted: #727169;
  --accent: #7e9cd8;
  --accent-secondary: #957fb8;
  --success: #76946a;
  --warning: #dca561;
  --error: #c34043;
  --info: #7fb4ca;
  --border: #363646;
  --tag-teal: #6a9589;
  --tag-orange: #ffa066;
  --tag-rose: #d27e99;
  --tag-violet: #957fb8;
}

/* Kanagawa Dragon */
.theme-kanagawa-dragon {
  --bg-primary: #181616;
  --bg-secondary: #201d1d;
  --bg-tertiary: #2d2929;
  --text-primary: #c5c9c5;
  --text-secondary: #a6a69c;
  --text-muted: #625e5a;
  --accent: #8ba4b0;
  --accent-secondary: #a292a3;
  --success: #87a987;
  --warning: #c4b28a;
  --error: #c4746e;
  --info: #8ea4a2;
  --border: #2d2929;
  --tag-teal: #7aa89f;
  --tag-orange: #b98d7b;
  --tag-rose: #d27e99;
  --tag-violet: #a292a3;
}

/* Kanagawa Lotus */
.theme-kanagawa-lotus {
  --bg-primary: #f2ecbc;
  --bg-secondary: #e7dba0;
  --bg-tertiary: #d5cea3;
  --text-primary: #545464;
  --text-secondary: #43436c;
  --text-muted: #8a8980;
  --accent: #4d699b;
  --accent-secondary: #624c83;
  --success: #6f894e;
  --warning: #cc6d00;
  --error: #c84053;
  --info: #5a7785;
  --border: #d5cea3;
  --tag-teal: #597b76;
  --tag-orange: #cc6d00;
  --tag-rose: #c84053;
  --tag-violet: #624c83;
}

/* Gruvbox Dark */
.theme-gruvbox-dark {
  --bg-primary: #282828;
  --bg-secondary: #3c3836;
  --bg-tertiary: #504945;
  --text-primary: #ebdbb2;
  --text-secondary: #d5c4a1;
  --text-muted: #928374;
  --accent: #fabd2f;
  --accent-secondary: #fe8019;
  --success: #b8bb26;
  --warning: #fabd2f;
  --error: #fb4934;
  --info: #83a598;
  --border: #504945;
  --tag-teal: #8ec07c;
  --tag-orange: #fe8019;
  --tag-rose: #fb4934;
  --tag-violet: #d3869b;
}

/* Gruvbox Light */
.theme-gruvbox-light {
  --bg-primary: #fbf1c7;
  --bg-secondary: #ebdbb2;
  --bg-tertiary: #d5c4a1;
  --text-primary: #3c3836;
  --text-secondary: #504945;
  --text-muted: #928374;
  --accent: #d79921;
  --accent-secondary: #d65d0e;
  --success: #79740e;
  --warning: #d79921;
  --error: #cc241d;
  --info: #458588;
  --border: #d5c4a1;
  --tag-teal: #427b58;
  --tag-orange: #d65d0e;
  --tag-rose: #cc241d;
  --tag-violet: #8f3f71;
}
