/* KND Icon System — global icon styles (pack v1.1.0 · assets/icons/knd/integration/knd-icons.css + KND tokens / states).
   Icons are the same-origin sprite drawn in currentColor: colour them with `color`, size them with the scale below.
   Rarity is never colour alone: every rarity has its own geometry (rarity-common … rarity-legendary). */
:root {
  --knd-icon-16: 16px; --knd-icon-20: 20px; --knd-icon-24: 24px; --knd-icon-32: 32px; --knd-icon-48: 48px; --knd-icon-64: 64px;
  --knd-icon-cyan: #36d8ee;
  --knd-rarity-common: #6b8a96; --knd-rarity-special: #1fb57a; --knd-rarity-rare: #2f7cf6; --knd-rarity-epic: #b84dff; --knd-rarity-legendary: #ffc030;
  --knd-icon-success: #2fe08a; --knd-icon-warning: #ffc030; --knd-icon-error: #ff4d6d; --knd-icon-info: #36d8ee;
  --knd-icon-buff: #2fe08a; --knd-icon-debuff: #ff4d6d;
}
.knd-icon { display: inline-block; inline-size: 1em; block-size: 1em; flex: none; vertical-align: -.125em; overflow: visible; color: inherit; }
.knd-icon--16 { inline-size: var(--knd-icon-16); block-size: var(--knd-icon-16); }
.knd-icon--20 { inline-size: var(--knd-icon-20); block-size: var(--knd-icon-20); }
.knd-icon--24 { inline-size: var(--knd-icon-24); block-size: var(--knd-icon-24); }
.knd-icon--32 { inline-size: var(--knd-icon-32); block-size: var(--knd-icon-32); }
.knd-icon--48 { inline-size: var(--knd-icon-48); block-size: var(--knd-icon-48); }
.knd-icon--64 { inline-size: var(--knd-icon-64); block-size: var(--knd-icon-64); }
.knd-icon--cyan { color: var(--knd-icon-cyan); }
.knd-icon--glow { filter: drop-shadow(0 0 3px currentColor); }
/* states (outline for navigation / actions, solid for selected / active, badge for rewards / currencies) */
.knd-icon.is-muted { opacity: .55; }
.knd-icon.is-success { color: var(--knd-icon-success); }
.knd-icon.is-warning { color: var(--knd-icon-warning); }
.knd-icon.is-error { color: var(--knd-icon-error); }
.knd-icon.is-info { color: var(--knd-icon-info); }
.knd-icon.is-buff { color: var(--knd-icon-buff); }
.knd-icon.is-debuff { color: var(--knd-icon-debuff); }
.knd-rarity--common { color: var(--knd-rarity-common); }
.knd-rarity--special { color: var(--knd-rarity-special); }
.knd-rarity--rare { color: var(--knd-rarity-rare); }
.knd-rarity--epic { color: var(--knd-rarity-epic); }
.knd-rarity--legendary { color: var(--knd-rarity-legendary); }
/* a legacy <i> that carried an inline style (font-size / colour): the wrapper keeps it, the icon inside is 1em */
.knd-icon-wrap { display: inline-block; line-height: 1; }
.knd-icon--spin { animation: knd-icon-spin 1s linear infinite; }
@keyframes knd-icon-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .knd-icon--glow { filter: none; } .knd-icon--spin { animation-duration: 2s; } }
@media (forced-colors: active) { .knd-icon { color: CanvasText; } }
