
:root {
  --hakju-calendar-brand: #4a90e2;
  --hakju-calendar-brand-over: #5b9be6;
  --hakju-calendar-brand-down: #357abd;
  --hakju-calendar-brand-strong: #2b6ca9;
  --hakju-calendar-brand-soft: #4a90e226;
  --hakju-calendar-brand-soft-strong: #4a90e24D;

  /* primary */
  --fc-monarch-primary: var(--hakju-calendar-brand);
  --fc-monarch-primary-foreground: #ffffff;
  --fc-monarch-primary-over: var(--hakju-calendar-brand-over);
  --fc-monarch-primary-down: var(--hakju-calendar-brand-down);

  /* secondary */
  --fc-monarch-secondary: var(--hakju-calendar-brand);
  --fc-monarch-secondary-foreground: #ffffff;
  --fc-monarch-secondary-over: var(--hakju-calendar-brand-over);
  --fc-monarch-secondary-down: var(--hakju-calendar-brand-down);

  /* tertiary */
  --fc-monarch-tertiary: var(--hakju-calendar-brand);
  --fc-monarch-tertiary-foreground: #ffffff;
  --fc-monarch-tertiary-over: var(--hakju-calendar-brand-over);
  --fc-monarch-tertiary-down: var(--hakju-calendar-brand-down);

  /* calendar content */
  --fc-monarch-event: var(--fc-monarch-primary);
  --fc-monarch-event-contrast: var(--fc-monarch-primary-foreground);
  --fc-monarch-highlight: var(--hakju-calendar-brand-soft-strong);
  --fc-monarch-now: var(--hakju-calendar-brand);

  /* controls */
  --fc-monarch-selected: var(--hakju-calendar-brand);
  --fc-monarch-selected-foreground: #ffffff;
  --fc-monarch-selected-over: var(--hakju-calendar-brand-over);
  --fc-monarch-selected-down: var(--hakju-calendar-brand-down);
  --fc-monarch-outline: var(--hakju-calendar-brand);

  /* popover */
  --fc-monarch-popover: var(--fc-monarch-background);

  /* neutral backgrounds */
  --fc-monarch-background: #ffffff;
  --fc-monarch-faint: var(--hakju-calendar-brand-soft);
  --fc-monarch-muted: var(--hakju-calendar-brand-soft);
  --fc-monarch-strong: var(--hakju-calendar-brand-soft-strong);
  --fc-monarch-stronger: #4a90e259;
  --fc-monarch-strongest: #4a90e266;

  /* neutral foregrounds */
  --fc-monarch-foreground: #020617;
  --fc-monarch-faint-foreground: #bebebe;
  --fc-monarch-muted-foreground: #8d8d8d;

  /* neutral borders */
  --fc-monarch-border: #dddee1;
  --fc-monarch-strong-border: #c2c3c7;
}

@media not print {
  [data-color-scheme=dark] {
    /* primary */
    --fc-monarch-primary: var(--hakju-calendar-brand);
    --fc-monarch-primary-foreground: #ffffff;
    --fc-monarch-primary-over: var(--hakju-calendar-brand-over);
    --fc-monarch-primary-down: var(--hakju-calendar-brand-down);

    /* secondary */
    --fc-monarch-secondary: var(--hakju-calendar-brand);
    --fc-monarch-secondary-foreground: #ffffff;
    --fc-monarch-secondary-over: var(--hakju-calendar-brand-over);
    --fc-monarch-secondary-down: var(--hakju-calendar-brand-down);

    /* tertiary */
    --fc-monarch-tertiary: var(--hakju-calendar-brand);
    --fc-monarch-tertiary-foreground: #ffffff;
    --fc-monarch-tertiary-over: var(--hakju-calendar-brand-over);
    --fc-monarch-tertiary-down: var(--hakju-calendar-brand-down);

    /* calendar content */
    --fc-monarch-event: var(--fc-monarch-primary);
    --fc-monarch-event-contrast: var(--fc-monarch-primary-foreground);
    --fc-monarch-highlight: var(--hakju-calendar-brand-soft-strong);
    --fc-monarch-now: var(--hakju-calendar-brand);

    /* controls */
    --fc-monarch-selected: var(--hakju-calendar-brand);
    --fc-monarch-selected-foreground: #ffffff;
    --fc-monarch-selected-over: var(--hakju-calendar-brand-over);
    --fc-monarch-selected-down: var(--hakju-calendar-brand-down);

    /* popover */
    --fc-monarch-popover: rgb(17 19 24);
    --fc-monarch-popover-foreground: rgb(226 226 233);

    /* neutral backgrounds */
    --fc-monarch-background: #030712;

    /* neutral foregrounds */
    --fc-monarch-foreground: #ffffff;
    --fc-monarch-faint-foreground: #898989;
    --fc-monarch-muted-foreground: #b0b0b0;

    /* neutral borders */
    --fc-monarch-border: #313234;
    --fc-monarch-strong-border: var(--hakju-calendar-brand-strong);
  }
}
