/* Curated guild themes. WoW class and item-quality colors remain fixed below. */
[data-theme="flamingo"],
[data-theme="brass"],
[data-theme="verdigris"],
[data-theme="neutral"] {
  color-scheme: dark;
  --bc: 90% 0.015 85;
  --pc: 15% 0.03 350;
  --sc: 94% 0.015 85;
  --ac: 96% 0.015 85;
  --nc: 90% 0.015 85;
  --in: 65% 0.09 225;
  --inc: 15% 0.025 225;
  --su: 62% 0.12 145;
  --suc: 14% 0.03 145;
  --wa: 70% 0.13 75;
  --wac: 16% 0.03 75;
  --er: 60% 0.15 25;
  --erc: 95% 0.02 25;
  --rounded-box: 0.35rem;
  --rounded-btn: 0.3rem;
  --rounded-badge: 0.3rem;
}

[data-theme="flamingo"] {
  --p: 65% 0.16 350;
  --pf: 57% 0.15 350;
  --s: 61% 0.09 170;
  --sf: 53% 0.08 170;
  --a: 69% 0.13 32;
  --af: 61% 0.12 32;
  --n: 29% 0.012 150;
  --nf: 24% 0.01 150;
  --b1: 13% 0.01 150;
  --b2: 18% 0.012 150;
  --b3: 27% 0.014 150;
}

[data-theme="brass"] {
  --p: 68% 0.12 85;
  --pf: 59% 0.11 85;
  --s: 58% 0.065 180;
  --sf: 50% 0.06 180;
  --a: 58% 0.11 12;
  --af: 50% 0.10 12;
  --n: 29% 0.01 85;
  --nf: 24% 0.008 85;
  --b1: 13% 0.008 85;
  --b2: 18% 0.01 85;
  --b3: 27% 0.012 85;
}

[data-theme="verdigris"] {
  --p: 64% 0.09 170;
  --pf: 56% 0.08 170;
  --s: 69% 0.11 80;
  --sf: 60% 0.10 80;
  --a: 68% 0.13 25;
  --af: 60% 0.12 25;
  --n: 29% 0.014 175;
  --nf: 24% 0.012 175;
  --b1: 13% 0.012 175;
  --b2: 18% 0.014 175;
  --b3: 27% 0.016 175;
}

[data-theme="neutral"] {
  --p: 73% 0.025 230;
  --pf: 64% 0.022 230;
  --pc: 15% 0.015 230;
  --s: 62% 0.07 85;
  --sf: 54% 0.06 85;
  --a: 62% 0.10 345;
  --af: 54% 0.09 345;
  --n: 30% 0.012 240;
  --nf: 25% 0.01 240;
  --b1: 14% 0.01 240;
  --b2: 19% 0.012 240;
  --b3: 28% 0.014 240;
}

.theme-swatch {
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  border: 1px solid hsl(var(--bc) / 0.35);
  flex: none;
}
.theme-swatch-flamingo { background: #d76794; }
.theme-swatch-brass { background: #c19a4a; }
.theme-swatch-verdigris { background: #579f8e; }
.theme-swatch-neutral { background: #a5afb5; }

/* WoW class colors (TBC Classic: 9 classes) */
.class-warrior { color: #C69B6D; }
.class-paladin { color: #F48CBA; }
.class-hunter { color: #AAD372; }
.class-rogue { color: #FFF468; }
.class-priest { color: #FFFFFF; }
.class-shaman { color: #0070DD; }
.class-mage { color: #3FC7EB; }
.class-warlock { color: #8788EE; }
.class-druid { color: #FF7C0A; }

/* WoW item quality colors */
.quality-poor { color: #9D9D9D; }
.quality-common { color: #FFFFFF; }
.quality-uncommon { color: #1EFF00; }
.quality-rare { color: #0070DD; }
.quality-epic { color: #A335EE; }
.quality-legendary { color: #FF8000; }
.quality-artifact { color: #E6CC80; }

/* Disable DaisyUI button-pop and other component animations */
*, *::before, *::after {
  animation-duration: 0s !important;
  transition-duration: 0s !important;
}

/* Disable htmx settle/swap transition animations */
.htmx-settling,
.htmx-swapping,
.htmx-added {
  transition: none !important;
  opacity: 1 !important;
}

/* Prevent confirm modal from flashing during htmx page swaps */
dialog#confirm-modal:not([open]) {
  display: none !important;
}

/* HTMX loading indicators */
.htmx-indicator {
  display: none;
}
.htmx-request .htmx-indicator,
.htmx-request.htmx-indicator {
  display: inline-block;
}

/* Fix DaisyUI select text vertical alignment */
.select {
  min-height: 3rem;
  height: 3rem;
  line-height: 3rem !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Item tooltip: hidden by default, shown on parent hover via CSS */
[data-itemtip] {
  display: none !important;
}
.item-tip-wrap:hover > [data-itemtip] {
  display: block !important;
}

/* Hide UTC timestamps until JS formats them; show a skeleton bar */
[data-utc]:not(.utc-ready) {
  color: transparent !important;
  background: oklch(0.25 0 0);
  border-radius: 0.25rem;
  display: inline-block;
  min-width: 5em;
  min-height: 1em;
}
[data-utc].utc-ready {
  color: inherit;
  background: none;
}

/* ===========================================================================
   Rendered Markdown (e.g. raid After Action Reports)
   Tailwind Preflight resets heading/list styles, so restore them here.
   =========================================================================== */
.markdown-body {
  line-height: 1.6;
  word-wrap: break-word;
}
.markdown-body > *:first-child { margin-top: 0; }
.markdown-body > *:last-child { margin-bottom: 0; }
.markdown-body h1,
.markdown-body h2,
.markdown-body h3,
.markdown-body h4,
.markdown-body h5,
.markdown-body h6 {
  font-weight: 700;
  line-height: 1.25;
  margin: 1.2em 0 0.6em;
}
.markdown-body h1 { font-size: 1.45em; border-bottom: 1px solid hsl(var(--bc) / 0.15); padding-bottom: 0.3em; }
.markdown-body h2 { font-size: 1.25em; border-bottom: 1px solid hsl(var(--bc) / 0.1); padding-bottom: 0.2em; }
.markdown-body h3 { font-size: 1.1em; }
.markdown-body h4 { font-size: 1em; }
.markdown-body h5 { font-size: 0.9em; }
.markdown-body h6 { font-size: 0.85em; color: hsl(var(--bc) / 0.7); }
.markdown-body p { margin: 0.75em 0; }
.markdown-body a { color: hsl(var(--in)); text-decoration: underline; }
.markdown-body strong { font-weight: 700; }
.markdown-body em { font-style: italic; }
.markdown-body del { text-decoration: line-through; }
.markdown-body ul,
.markdown-body ol {
  margin: 0.75em 0;
  padding-left: 1.6em;
}
.markdown-body ul { list-style: disc; }
.markdown-body ol { list-style: decimal; }
.markdown-body li { margin: 0.25em 0; }
.markdown-body li > ul,
.markdown-body li > ol { margin: 0.25em 0; }
.markdown-body blockquote {
  margin: 0.75em 0;
  padding: 0.25em 1em;
  border-left: 3px solid hsl(var(--bc) / 0.25);
  color: hsl(var(--bc) / 0.75);
}
.markdown-body code {
  background: hsl(var(--bc) / 0.1);
  padding: 0.15em 0.4em;
  border-radius: 0.25rem;
  font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size: 0.9em;
}
.markdown-body pre {
  background: hsl(var(--bc) / 0.1);
  padding: 0.85em 1em;
  border-radius: 0.4rem;
  overflow-x: auto;
  margin: 0.75em 0;
}
.markdown-body pre code {
  background: none;
  padding: 0;
  font-size: 0.85em;
}
.markdown-body hr {
  border: 0;
  border-top: 1px solid hsl(var(--bc) / 0.15);
  margin: 1.25em 0;
}
.markdown-body table {
  border-collapse: collapse;
  margin: 0.75em 0;
  display: block;
  overflow-x: auto;
}
.markdown-body th,
.markdown-body td {
  border: 1px solid hsl(var(--bc) / 0.2);
  padding: 0.4em 0.75em;
}
.markdown-body th {
  background: hsl(var(--bc) / 0.08);
  font-weight: 700;
}
.markdown-body img { max-width: 100%; }

