/* tokens styles: shared Cervion design, no additional CSS framework. */
:root {
  --hc-forest: #3F5F45;
  --hc-moss: #7A8C63;
  --hc-sage: #A8B99A;
  --hc-oak: #7B5E45;
  --hc-beige: #EFE5D0;
  --hc-sand: #F8F3E7;
  --hc-mist: #F6F3EA;
  --hc-clay: #B8793A;
  --hc-amber: #D9A85C;
  --hc-danger: #A65E55;
  /* Tamniji zeleni i prigušeni tekst: 4,5:1 i na bež podlogama i u svijetlim status oznakama (WCAG AA). */
  --hc-success: #426247;
  --hc-text: #2E332E;
  --hc-text-muted: #5A6253;
  --hc-border: #D8CCB8;
  --hc-border-strong: #BFAF95;
  --hc-card: rgba(255, 255, 255, 0.88);
  --hc-accent: var(--hc-forest);
  --hc-accent-hover: #314A36;
  --hc-accent-soft: rgba(63, 95, 69, 0.12);
  /* Tekst i ikone na naglašenoj, opasnoj i obavijesnoj podlozi (gumbi, oznake). */
  --hc-on-accent: #FFFFFF;
  --hc-on-danger: #FFFFFF;
  --hc-badge-bg: #B04A22;
  --hc-badge-fg: #FFFFFF;
  --hc-status-neutral-fg: #4B5A3D;
  --hc-status-warning-fg: #7A561F;
  --hc-bg: var(--hc-mist);
  --hc-surface: #FFFFFF;
  --hc-surface-muted: var(--hc-sand);
  --hc-surface-raised: rgba(255, 255, 255, 0.9);
  --hc-editor-bg: #FFFFFF;
  --hc-muted: var(--hc-text-muted);
  --hc-shadow: 0 8px 24px rgba(46, 51, 46, 0.08);
  --hc-shadow-strong: 0 20px 50px rgba(46, 51, 46, 0.16);
  --bs-body-bg: var(--hc-bg);
  --bs-body-color: var(--hc-text);
  --bs-secondary-color: var(--hc-text-muted);
  --bs-border-color: var(--hc-border);
  --bs-link-color: var(--hc-accent);
  --bs-link-hover-color: var(--hc-accent-hover);
  --bs-tertiary-bg: var(--hc-surface-muted);
}

html[data-hc-theme="dark"] {
  --hc-forest: #54B689;
  --hc-moss: #78D39C;
  --hc-sage: #1F5B3B;
  --hc-oak: #C9A7FF;
  --hc-beige: #20242D;
  --hc-sand: #171A21;
  --hc-mist: #111318;
  --hc-clay: #C9A7FF;
  --hc-amber: #F4C04F;
  --hc-danger: #FF7B72;
  --hc-success: #54B689;
  --hc-text: #F3F6FA;
  --hc-text-muted: #AAB4C0;
  --hc-border: #343B48;
  --hc-border-strong: #4A5362;
  --hc-card: rgba(23, 26, 33, 0.96);
  --hc-accent: #54B689;
  --hc-accent-hover: #78D39C;
  --hc-accent-soft: rgba(84, 182, 137, 0.16);
  /* Svijetli naglasak u tamnoj temi nosi taman tekst (bijela na #54B689 je 2,5:1, tamna 7:1). */
  --hc-on-accent: #0F1A14;
  --hc-on-danger: #1A0F0E;
  --hc-badge-bg: #E07A4A;
  --hc-badge-fg: #102014;
  --hc-status-neutral-fg: #C3CCB4;
  --hc-status-warning-fg: var(--hc-amber);
  --hc-bg: var(--hc-mist);
  --hc-surface: #171A21;
  --hc-surface-muted: #20242D;
  --hc-surface-raised: rgba(23, 26, 33, 0.96);
  --hc-editor-bg: var(--hc-surface);
  --hc-shadow: 0 12px 32px rgba(0, 0, 0, 0.32);
  --hc-shadow-strong: 0 22px 56px rgba(0, 0, 0, 0.5);
  --bs-body-bg: var(--hc-bg);
  --bs-body-color: var(--hc-text);
  --bs-secondary-color: var(--hc-text-muted);
  --bs-border-color: var(--hc-border);
  --bs-link-color: var(--hc-accent);
  --bs-link-hover-color: var(--hc-accent-hover);
  --bs-tertiary-bg: var(--hc-surface-muted);
}
