/* Доступність (WCAG AA): виправлені токени палітр і кольори компонентів календаря.
   Підключається після v3-palettes.css; для палітр із виправленнями токени тут перекривають вихідні. */
[data-theme="pantone"]{--zt-muted:#535e6a;--muted-foreground:211 12% 37%}
[data-theme="latun"]{--zt-accent:#796333;--primary:41 41% 34%;--accent:41 41% 34%;--burgundy:41 41% 34%;--burgundy-light:41 41% 34%;--gold:41 41% 34%;--gold-light:41 41% 34%;--gold-dark:41 41% 34%;--zt-accent-contrast:#ffffff;--primary-foreground:0 0% 100%;--accent-foreground:0 0% 100%}
[data-theme="berry"]{--zt-accent:#ae540e;--primary:26 85% 37%;--accent:26 85% 37%;--burgundy:26 85% 37%;--burgundy-light:26 85% 37%;--gold:26 85% 37%;--gold-light:26 85% 37%;--gold-dark:26 85% 37%}
[data-theme="kalyna"]{--zt-muted:#5b7181;--muted-foreground:205 17% 43%}
[data-theme="info"]{--zt-accent:#a9500b;--primary:26 88% 35%;--accent:26 88% 35%;--burgundy:26 88% 35%;--burgundy-light:26 88% 35%;--gold:26 88% 35%;--gold-light:26 88% 35%;--gold-dark:26 88% 35%;--zt-accent-contrast:#ffffff;--primary-foreground:0 0% 100%;--accent-foreground:0 0% 100%;--zt-focus:#1794b0;--ring:191 77% 39%}
[data-theme="verde"]{--zt-muted:#52605f;--muted-foreground:176 8% 35%}
[data-theme="neo"]{--zt-accent:#dd592f;--primary:14 72% 53%;--accent:14 72% 53%;--burgundy:14 72% 53%;--burgundy-light:14 72% 53%;--gold:14 72% 53%;--gold-light:14 72% 53%;--gold-dark:14 72% 53%}

/* Общие правила контрастного режима: цвета компонентов календаря берутся из токенов
   палитры (без жёстких #ffc069/#d8d7df и без приглушения opacity). */
html:root .ts-day--past:not(.ts-day--other-month) .ts-day__items,
html:root .ts-day--past:not(.ts-day--other-month) .ts-day__overflow,
html:root .ts-day--other-month .ts-day__items,
html:root .ts-day--other-month .ts-day__overflow,
html:root .ts-day--past:not(.ts-day--other-month) .ts-day__num,
html:root .ts-day--other-month .ts-day__num { opacity: 1; }
html:root .ts-day--past:not(.ts-day--other-month) .ts-day__num { color: var(--zt-ink); }
html:root .ts-day--weekend:not(.ts-day--past):not(.ts-day--other-month) .ts-day__num { color: var(--zt-ink); }
html:root .ts-day--past .ts-day__item-time { color: var(--zt-muted); }
html:root .ts-day--past .ts-day__item-title { color: var(--zt-ink); }
html:root .ts-day--past .ts-day__item-venue,
html:root .ts-day--past .ts-day__item-venue--vyjizd,
html:root .ts-day--past .ts-day__item-premiere {
    background: color-mix(in srgb, var(--zt-ink) 10%, var(--zt-paper));
    color: var(--zt-ink);
    border-color: var(--zt-line);
}
html:root .ts-day--past .ts-day__overflow { color: var(--zt-ink); }
html:root .ts-day:not(.ts-day--past) .ts-day__item-time { color: var(--zt-accent); }
html:root .ts-day:not(.ts-day--past) .ts-day__overflow { color: var(--zt-ink); }
html:root .ts-day:not(.ts-day--past) .ts-day__item-ticket {
    background: var(--zt-accent);
    color: var(--zt-accent-contrast);
}
html:root .ts-cal-cell.ts-day.ts-day--today .ts-day__num { color: var(--zt-accent-contrast); background: var(--zt-accent); }
html:root .ts-cal-cell--head { color: var(--zt-accent-contrast); }
html:root footer .footer-nav__link,
html:root footer .zt3f-60 { color: var(--zt-footer-ink) !important; opacity: 1 !important; }

/* Приглушені підписи: без прозорості, кольором палітри (opacity/alpha давали <4.5:1) */
html:root .rep-card__tag:not(.rep-card__tag--age) { color: var(--zt-muted); }
html:root button.rep-card__tag:not(.rep-card__tag--age).is-active { color: color-mix(in srgb, var(--zt-ink) 88%, transparent); }
html:root main span.opacity-70 { opacity: 1; color: var(--zt-muted); }
html:root .se-footnav__btn, html:root .se-footnav__btn:hover { color: var(--zt-accent-contrast); }
/* Типографіка записів (новини): Tailwind-prose мав світлі кольори за замовчуванням, нечитабельні на темних палітрах */
html:root .prose {
    --tw-prose-body: hsl(var(--foreground));
    --tw-prose-headings: hsl(var(--foreground));
    --tw-prose-lead: hsl(var(--foreground));
    --tw-prose-links: hsl(var(--primary));
    --tw-prose-bold: hsl(var(--foreground));
    --tw-prose-counters: var(--zt-muted);
    --tw-prose-bullets: var(--zt-muted);
    --tw-prose-quotes: hsl(var(--foreground));
    --tw-prose-quote-borders: var(--zt-line);
    --tw-prose-captions: var(--zt-muted);
    --tw-prose-code: hsl(var(--foreground));
    --tw-prose-th-borders: var(--zt-line);
    --tw-prose-td-borders: var(--zt-line);
}
