/* Git.eu — Brand overrides for DaisyUI dark theme */

[data-theme="dark"] {
  --color-primary: oklch(0.40 0.12 260);    /* #223388 */
  --color-accent: oklch(0.72 0.19 130);     /* #77bb00 */
  --color-base-100: oklch(0.15 0.02 260);   /* ~#0a0d14 */
  --color-base-200: oklch(0.18 0.02 260);   /* ~#111622 */
  --color-base-300: oklch(0.25 0.02 260);   /* ~#1c2233 */
  --color-base-content: oklch(0.92 0 0);    /* ~#e8e8e8 */
  --color-primary-content: oklch(0.95 0 0);
  --color-accent-content: oklch(0.15 0 0);
  --color-neutral: oklch(0.30 0.02 260);
  --color-neutral-content: oklch(0.95 0 0);
}

:root {
  --font-mono:
    ui-monospace, "Cascadia Code", "SF Mono", Menlo, Monaco, Consolas, monospace;
  --font-sans:
    -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

body {
  font-family: var(--font-sans);
}

/* Brand accent on highlights */
.text-brand {
  color: oklch(0.72 0.19 130);
}

/* Mono font utility */
.font-brand-mono {
  font-family: var(--font-mono);
}

/* Selection color */
::selection {
  background: oklch(0.40 0.12 260);
  color: oklch(0.95 0 0);
}

/* Nav active state: accent green background */
.menu a.active,
.btn.btn-active {
  background-color: oklch(0.72 0.19 130);
  color: oklch(0.15 0 0);
}

/* Legal tabs: CSS-only active state */
.tab-input { display: none; }
#tab-privacy:checked ~ .tab-labels [for="tab-privacy"],
#tab-terms:checked ~ .tab-labels [for="tab-terms"],
#tab-gdpr:checked ~ .tab-labels [for="tab-gdpr"] {
  --tab-color: oklch(0.72 0.19 130);
}
.tab-panel { display: none; }
#tab-privacy:checked ~ .tab-panel-privacy,
#tab-terms:checked ~ .tab-panel-terms,
#tab-gdpr:checked ~ .tab-panel-gdpr {
  display: block;
}

/* ALTCHA widget: hidden by default, revealed on form interaction.
   Uses opacity + position instead of max-height to allow shadow DOM initialization. */
altcha-widget {
  display: block;
  opacity: 0;
  position: absolute;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

form.altcha-visible altcha-widget {
  opacity: 1;
  position: relative;
  pointer-events: auto;
}
