/* Owned embedded Calendar dark-mode companion (Network tranche).
 *
 * The calendar SCSS already bridges its `--color-*` variables to the v1
 * tokens at `[data-iarf-appearance="v1"]` roots (see src/scss/_variables.scss),
 * so token-driven chrome follows the shared palette automatically. This file
 * only re-homes the remaining hardcoded light literals (card/modal/session
 * surfaces, muted fills, slate text, danger washes) to the same semantic
 * tokens. Scoped to owned calendar v1 roots only; email templates and the
 * standalone roster share page keep their own rendering (see residuals).
 *
 * Cascade mirrors tokens.css: light base, media dark fallback (no-JS),
 * explicit light override, explicit dark override.
 */

/* Light base: anchor legacy literals to tokens (identical values). */
[data-iarf-appearance="v1"][data-iarf-product="calendar"] {
    color-scheme: light;
}

/* Dark via OS (no-JS/standalone fallback). The :not guards mean an
 * explicit Light choice always wins over this fallback, regardless of
 * source order. */
@media (prefers-color-scheme: dark) {
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) {
        color-scheme: dark;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-session-item,
        .iarf-cal-share-url-container button,
        .iarf-cal-group-reminder-form select
    ) {
        background: var(--iarf-appearance-surface);
        color: var(--iarf-appearance-text);
        border-color: var(--iarf-appearance-border);
    }
}

html[data-iarf-mode="light"] [data-iarf-appearance="v1"][data-iarf-product="calendar"],
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="light"] {
    color-scheme: light;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"],
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] {
    color-scheme: dark;
}

/* Card / session / modal surfaces. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-session-item,
    .iarf-cal-share-url-container button,
    .iarf-cal-group-reminder-form select,
    .iarf-cal-modal-content,
    .iarf-cal-event-card,
    .iarf-cal-list-item,
    .iarf-cal-widget
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-session-item,
    .iarf-cal-share-url-container button,
    .iarf-cal-group-reminder-form select,
    .iarf-cal-modal-content,
    .iarf-cal-event-card,
    .iarf-cal-list-item,
    .iarf-cal-widget
) {
    background: var(--iarf-appearance-surface);
    color: var(--iarf-appearance-text);
    border-color: var(--iarf-appearance-border);
}

/* Muted fills and form rows. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-add-taxonomy-form,
    .iarf-cal-timezone-widget,
    .iarf-cal-filter-bar
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-add-taxonomy-form,
    .iarf-cal-timezone-widget,
    .iarf-cal-filter-bar
) {
    background: var(--iarf-appearance-sunken);
    color: var(--iarf-appearance-text);
    border-color: var(--iarf-appearance-border);
}

/* Danger washes keep status meaning without glare. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-taxonomy-delete:hover,
    .iarf-cal-remove-session-btn
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-taxonomy-delete:hover,
    .iarf-cal-remove-session-btn
) {
    background: var(--iarf-appearance-danger-surface);
    color: var(--iarf-appearance-danger);
    border-color: var(--iarf-appearance-border);
}

/* Slate body copy inside calendar chrome. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-add-taxonomy-form,
    .iarf-cal-group-reminder-form label,
    .iarf-cal-share-url-container button
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-add-taxonomy-form,
    .iarf-cal-group-reminder-form label,
    .iarf-cal-share-url-container button
) {
    color: var(--iarf-appearance-text);
}

/* Focus stays visible on calendar controls. */
[data-iarf-appearance="v1"][data-iarf-product="calendar"] :focus-visible {
    outline: 2px solid var(--iarf-appearance-focus);
    outline-offset: 2px;
}

/* Native controls opt into dark widgets where the tokens go dark. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(input, select, textarea),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(input, select, textarea) {
    color-scheme: dark;
}

/* Hardcoded status washes (base/_base.scss) keep status meaning in dark. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] .iarf-cal-error,
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] .iarf-cal-error {
    background: var(--iarf-appearance-danger-surface);
    color: var(--iarf-appearance-danger);
    border-color: var(--iarf-appearance-danger);
}
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] .iarf-cal-success,
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] .iarf-cal-success {
    background: var(--iarf-appearance-success-surface);
    color: var(--iarf-appearance-success);
    border-color: var(--iarf-appearance-success);
}
@media (prefers-color-scheme: dark) {
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(.iarf-cal-error) {
        background: var(--iarf-appearance-danger-surface);
        color: var(--iarf-appearance-danger);
        border-color: var(--iarf-appearance-danger);
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(.iarf-cal-success) {
        background: var(--iarf-appearance-success-surface);
        color: var(--iarf-appearance-success);
        border-color: var(--iarf-appearance-success);
    }
}

/* Cover imagery and date badges keep their artwork; never invert media. */
[data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(img, video, iframe, .iarf-cal-cover, .iarf-cal-event-image) {
    filter: none;
}

/* Guest roster share page: self-owned v1, no account needed. The bootstrap
 * sets html[data-iarf-mode] device-locally; tokens.css is enqueued with the
 * companion on this page. Inline `!important` lights lose to the
 * html-scoped overrides below. An OS-dark fallback with :not guards keeps
 * no-JS guests coherent while explicit Light always wins. */
html[data-iarf-mode="dark"] body.iarf-cal-shared-roster-page {
    background: var(--iarf-appearance-canvas, #111820);
    color: var(--iarf-appearance-text, #edf2f7);
    color-scheme: dark;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-shared-wrapper,
    .iarf-cal-year-month,
    .iarf-cal-calendar-nav
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-shared-wrapper,
    .iarf-cal-year-month,
    .iarf-cal-calendar-nav
) {
    background: var(--iarf-appearance-surface) !important;
    color: var(--iarf-appearance-text) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-shared-header,
    .iarf-cal-calendar-grid.mini
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-shared-header,
    .iarf-cal-calendar-grid.mini
) {
    border-color: var(--iarf-appearance-border) !important;
    background: var(--iarf-appearance-surface) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-shared-header h1,
    .iarf-cal-year-month h4,
    .iarf-cal-calendar-grid.mini .iarf-cal-day-number,
    .iarf-cal-roster-view-toggle:hover:not(.active)
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-shared-header h1,
    .iarf-cal-year-month h4,
    .iarf-cal-calendar-grid.mini .iarf-cal-day-number,
    .iarf-cal-roster-view-toggle:hover:not(.active)
) {
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-shared-header p,
    .iarf-cal-calendar-grid.mini .iarf-cal-day-header,
    .iarf-cal-proposal-btn i,
    .iarf-cal-roster-view-toggle
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-shared-header p,
    .iarf-cal-calendar-grid.mini .iarf-cal-day-header,
    .iarf-cal-proposal-btn i,
    .iarf-cal-roster-view-toggle
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day-header,
    .iarf-cal-view-group,
    .iarf-cal-proposal-btn
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day-header,
    .iarf-cal-view-group,
    .iarf-cal-proposal-btn
) {
    background: var(--iarf-appearance-sunken) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(.iarf-cal-proposal-btn),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(.iarf-cal-proposal-btn) {
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-proposal-btn:hover,
    .iarf-cal-proposal-btn.active
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-proposal-btn:hover,
    .iarf-cal-proposal-btn.active
) {
    background: var(--iarf-appearance-selection) !important;
    border-color: var(--iarf-appearance-action) !important;
    color: var(--iarf-appearance-selection-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-proposal-btn:hover i,
    .iarf-cal-proposal-btn.active i
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-proposal-btn:hover i,
    .iarf-cal-proposal-btn.active i
) {
    color: var(--iarf-appearance-link) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(.iarf-cal-roster-view-toggle.active),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(.iarf-cal-roster-view-toggle.active) {
    background: var(--iarf-appearance-elevated) !important;
    color: var(--iarf-appearance-link) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-available
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-available
) {
    background-color: var(--iarf-appearance-success-surface) !important;
    color: var(--iarf-appearance-success) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-available .iarf-cal-day-number
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-available .iarf-cal-day-number
) {
    color: var(--iarf-appearance-success) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-available:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-available:hover
) {
    box-shadow: inset 0 0 0 2px var(--iarf-appearance-success) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-taken
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-taken
) {
    background-color: var(--iarf-appearance-danger-surface) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-taken .iarf-cal-day-number
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-taken .iarf-cal-day-number
) {
    color: var(--iarf-appearance-danger) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-disabled,
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-disabled .iarf-cal-day-number
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-disabled,
    .iarf-cal-calendar-grid.mini .iarf-cal-day.is-disabled .iarf-cal-day-number
) {
    background-color: var(--iarf-appearance-disabled) !important;
    color: var(--iarf-appearance-disabled-text) !important;
}

/* Selected availability keeps the literal brand fill (contrast-checked in
 * both modes); only the day number inherits the current tone. */

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    #iarf-cal-course-selection-bar
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    #iarf-cal-course-selection-bar
) {
    background: var(--iarf-appearance-selection) !important;
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-selection-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    #iarf-cal-course-selection-bar .button-primary:disabled
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    #iarf-cal-course-selection-bar .button-primary:disabled
) {
    background: var(--iarf-appearance-disabled) !important;
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-disabled-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(.iarf-cal-calendar-nav:hover),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(.iarf-cal-calendar-nav:hover) {
    background: var(--iarf-appearance-elevated) !important;
    color: var(--iarf-appearance-link) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(.iarf-cal-roster-item-notes),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(.iarf-cal-roster-item-notes) {
    background: var(--iarf-appearance-warning-surface) !important;
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-warning) !important;
}

@media (prefers-color-scheme: dark) {
    html:not([data-iarf-mode="light"]) body.iarf-cal-shared-roster-page:not([data-iarf-mode]) {
        background: #111820;
        color: #edf2f7;
        color-scheme: dark;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-shared-wrapper,
        .iarf-cal-year-month
    ) {
        background: var(--iarf-appearance-surface) !important;
        color: var(--iarf-appearance-text) !important;
        border-color: var(--iarf-appearance-border) !important;
    }
}

@media (forced-colors: active) {
    [data-iarf-appearance="v1"][data-iarf-product="calendar"] {
        forced-color-adjust: auto;
    }
    [data-iarf-appearance="v1"][data-iarf-product="calendar"] :focus-visible {
        outline-color: Highlight;
    }
}

/* Individual event detail page (single-event chrome, dialogs, toasts).
 *
 * The compiled single-event/modals/widgets/sessions/toasts SCSS carries
 * hardcoded light literals (card/session/contact surfaces, slate body copy,
 * notice washes, suggestion dividers, share/login/timezone/notification
 * dialog rows) that the sections above do not cover. The rules below re-home
 * exactly those literals to the v1 semantic tokens at owned calendar roots.
 * Deliberately untouched: cover photo overlays and gradients, on-photo glass
 * action buttons, brand share-button fills, lightbox scrims, cover artwork,
 * geometry and layout. The green signup fill is re-homed below to the
 * certified success pair (light styling unchanged).
 */

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-hero-wrapper
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-hero-wrapper
) {
    background: var(--iarf-appearance-surface) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-hero-image.no-image
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-hero-image.no-image
) {
    background: var(--iarf-appearance-sunken) !important;
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-header-actions,
    .iarf-cal-individual-admin-actions
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-header-actions,
    .iarf-cal-individual-admin-actions
) {
    background: var(--iarf-appearance-sunken) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-all-events-btn
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-all-events-btn
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-all-events-btn:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-all-events-btn:hover
) {
    color: var(--iarf-appearance-link) !important;
}

/* Date ribbon and saved/primary hero actions keep action contrast. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-cover-date-ribbon,
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn.is-saved,
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn[aria-pressed="true"],
    .iarf-cal-detail-hero-actions .iarf-cal-primary-btn,
    .iarf-cal-cover-position-save
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-cover-date-ribbon,
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn.is-saved,
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn[aria-pressed="true"],
    .iarf-cal-detail-hero-actions .iarf-cal-primary-btn,
    .iarf-cal-cover-position-save
) {
    background: var(--iarf-appearance-action) !important;
    border-color: var(--iarf-appearance-action) !important;
    color: var(--iarf-appearance-on-action) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-cover-date-ribbon::after
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-cover-date-ribbon::after
) {
    border-top-color: var(--iarf-appearance-action) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-hero-actions .iarf-cal-primary-btn:hover,
    .iarf-cal-cover-position-save:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-hero-actions .iarf-cal-primary-btn:hover,
    .iarf-cal-cover-position-save:hover
) {
    background: var(--iarf-appearance-action-hover) !important;
    border-color: var(--iarf-appearance-action-hover) !important;
    color: var(--iarf-appearance-on-action) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-cover-reposition-btn,
    .iarf-cal-cover-position-cancel
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-cover-reposition-btn,
    .iarf-cal-cover-position-cancel
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-control-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-cover-reposition-btn:hover,
    .iarf-cal-cover-position-cancel:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-cover-reposition-btn:hover,
    .iarf-cal-cover-position-cancel:hover
) {
    background: var(--iarf-appearance-selection) !important;
    border-color: var(--iarf-appearance-action) !important;
    color: var(--iarf-appearance-selection-text) !important;
}

/* Section headings, meta labels and timestamps. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-section h3,
    .iarf-cal-meta-item-label,
    .iarf-cal-session-item-time,
    .iarf-cal-recurrence-notice
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-section h3,
    .iarf-cal-meta-item-label,
    .iarf-cal-session-item-time,
    .iarf-cal-recurrence-notice
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-hero-title,
    .iarf-cal-meta-item-value,
    .iarf-cal-session-item-title,
    .iarf-cal-session-title
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-hero-title,
    .iarf-cal-meta-item-value,
    .iarf-cal-session-item-title,
    .iarf-cal-session-title
) {
    color: var(--iarf-appearance-text) !important;
}

/* Session surfaces and the current-session marker. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-session-list-item,
    #iarf-cal-sessions-container .iarf-cal-session-item,
    .iarf-cal-session-entry,
    .iarf-cal-session-entry-more
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-session-list-item,
    #iarf-cal-sessions-container .iarf-cal-session-item,
    .iarf-cal-session-entry,
    .iarf-cal-session-entry-more
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-sessions-info-box,
    .iarf-cal-sessions-display
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-sessions-info-box,
    .iarf-cal-sessions-display
) {
    background: var(--iarf-appearance-sunken) !important;
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-sessions-info-box.view-mode .iarf-cal-session-list-item.current-session
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-sessions-info-box.view-mode .iarf-cal-session-list-item.current-session
) {
    background-color: var(--iarf-appearance-selection) !important;
    border-left-color: var(--iarf-appearance-action) !important;
    color: var(--iarf-appearance-selection-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-sessions-display .iarf-cal-meta-item
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-sessions-display .iarf-cal-meta-item
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-sessions-info-box .iarf-cal-form-notice
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-sessions-info-box .iarf-cal-form-notice
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    #iarf-cal-sessions-container .iarf-cal-remove-session-btn
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    #iarf-cal-sessions-container .iarf-cal-remove-session-btn
) {
    background: var(--iarf-appearance-danger-surface) !important;
    color: var(--iarf-appearance-danger) !important;
    border-color: var(--iarf-appearance-danger) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    #iarf-cal-sessions-container .iarf-cal-remove-session-btn:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    #iarf-cal-sessions-container .iarf-cal-remove-session-btn:hover
) {
    background: var(--iarf-appearance-danger) !important;
    color: var(--iarf-appearance-danger-surface) !important;
    border-color: var(--iarf-appearance-danger) !important;
}

/* Organiser chips, private flag and course link. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-organiser-chip
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-organiser-chip
) {
    background: var(--iarf-appearance-selection) !important;
    color: var(--iarf-appearance-selection-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-private-event
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-private-event
) {
    color: var(--iarf-appearance-danger) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    #iarf-cal-course-link-group
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    #iarf-cal-course-link-group
) {
    background: var(--iarf-appearance-success-surface) !important;
    border-color: var(--iarf-appearance-border) !important;
}

/* Contact profiles. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-contact-section
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-contact-section
) {
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-contact-profile
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-contact-profile
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-contact-avatar img
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-contact-avatar img
) {
    border-color: var(--iarf-appearance-elevated) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-contributor-role
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-contributor-role
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-contact-name a
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-contact-name a
) {
    color: var(--iarf-appearance-link) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-contact-bio
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-contact-bio
) {
    color: var(--iarf-appearance-text) !important;
}

/* Notice washes (form, timezone info, template loader). */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-notice,
    .iarf-cal-timezone-info,
    .iarf-cal-sub-panel
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-notice,
    .iarf-cal-timezone-info,
    .iarf-cal-sub-panel
) {
    background: var(--iarf-appearance-info-surface) !important;
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-sub-panel
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-sub-panel
) {
    border-left-color: var(--iarf-appearance-action) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-template-loader
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-template-loader
) {
    background: var(--iarf-appearance-sunken) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-timezone-info-close
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-timezone-info-close
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-timezone-info-close:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-timezone-info-close:hover
) {
    color: var(--iarf-appearance-text) !important;
}

/* Dialog chrome: close glyphs, helper copy, disabled submit. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-modal-close,
    .iarf-cal-pre-title,
    .iarf-cal-optional,
    .iarf-cal-modal .iarf-cal-form-group small
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-modal-close,
    .iarf-cal-pre-title,
    .iarf-cal-optional,
    .iarf-cal-modal .iarf-cal-form-group small
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-modal-close:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-modal-close:hover
) {
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-submit-btn:disabled,
    .iarf-cal-submit-btn:disabled:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-submit-btn:disabled,
    .iarf-cal-submit-btn:disabled:hover
) {
    background: var(--iarf-appearance-disabled) !important;
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-disabled-text) !important;
}

/* Dialog form fields keep token chrome instead of white inputs. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-modal input,
    .iarf-cal-modal select,
    .iarf-cal-modal textarea,
    #iarf-cal-timezone-search
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-modal input,
    .iarf-cal-modal select,
    .iarf-cal-modal textarea,
    #iarf-cal-timezone-search
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-control-border) !important;
    color: var(--iarf-appearance-text) !important;
}

/* Suggestion dropdowns and their dividers. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-country-suggestions,
    .iarf-cal-timezone-suggestions,
    .iarf-cal-timezone-dropdown
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-country-suggestions,
    .iarf-cal-timezone-suggestions,
    .iarf-cal-timezone-dropdown
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-user-suggestion,
    .iarf-cal-country-suggestion,
    .iarf-cal-timezone-suggestion,
    #iarf-cal-timezone-modal .iarf-cal-timezone-options,
    #iarf-cal-timezone-search
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-user-suggestion,
    .iarf-cal-country-suggestion,
    .iarf-cal-timezone-suggestion,
    #iarf-cal-timezone-modal .iarf-cal-timezone-options,
    #iarf-cal-timezone-search
) {
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-user-suggestion:hover,
    .iarf-cal-country-suggestion:hover,
    .iarf-cal-timezone-suggestion:hover,
    .iarf-cal-timezone-option:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-user-suggestion:hover,
    .iarf-cal-country-suggestion:hover,
    .iarf-cal-timezone-suggestion:hover,
    .iarf-cal-timezone-option:hover
) {
    background: var(--iarf-appearance-sunken) !important;
}

/* Share dialog URL row. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-share-url-container input
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-share-url-container input
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-control-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-share-url-container button
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-share-url-container button
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-control-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-share-url-container button:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-share-url-container button:hover
) {
    background: var(--iarf-appearance-action) !important;
    border-color: var(--iarf-appearance-action) !important;
    color: var(--iarf-appearance-on-action) !important;
}

/* Login-required dialog membership box. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-membership-info
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-membership-info
) {
    background: var(--iarf-appearance-sunken) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-membership-info h4
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-membership-info h4
) {
    color: var(--iarf-appearance-text) !important;
    border-color: var(--iarf-appearance-border) !important;
}

/* Group reminder rows. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-group-reminder-form label
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-group-reminder-form label
) {
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-group-reminder-form select
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-group-reminder-form select
) {
    background: var(--iarf-appearance-surface) !important;
    border-color: var(--iarf-appearance-control-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-card .iarf-cal-group-reminder-form
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-card .iarf-cal-group-reminder-form
) {
    background-color: var(--iarf-appearance-sunken) !important;
    border-color: var(--iarf-appearance-border) !important;
}

/* Form navigation rail, panels and footer. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-nav,
    .iarf-cal-form-footer
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-nav,
    .iarf-cal-form-footer
) {
    background: var(--iarf-appearance-sunken) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-nav li
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-nav li
) {
    border-color: var(--iarf-appearance-border) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-nav li:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-nav li:hover
) {
    background: var(--iarf-appearance-elevated) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-nav li.active
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-nav li.active
) {
    background: var(--iarf-appearance-surface) !important;
    color: var(--iarf-appearance-link) !important;
    border-right-color: var(--iarf-appearance-action) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-tab-icon
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-tab-icon
) {
    color: var(--iarf-appearance-muted) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-nav li.active .iarf-cal-tab-icon
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-nav li.active .iarf-cal-tab-icon
) {
    color: var(--iarf-appearance-link) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-tab-error-indicator,
    .iarf-cal-form-nav li.has-error,
    .iarf-cal-active-filter-tag .iarf-cal-remove-filter:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-tab-error-indicator,
    .iarf-cal-form-nav li.has-error,
    .iarf-cal-active-filter-tag .iarf-cal-remove-filter:hover
) {
    color: var(--iarf-appearance-danger) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-panels
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-panels
) {
    background: var(--iarf-appearance-surface) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-form-panel h3
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-form-panel h3
) {
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-panel-desc
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-panel-desc
) {
    color: var(--iarf-appearance-muted) !important;
    border-color: var(--iarf-appearance-border) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-taxonomy-edit:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-taxonomy-edit:hover
) {
    background: var(--iarf-appearance-selection) !important;
    border-color: var(--iarf-appearance-action) !important;
    color: var(--iarf-appearance-selection-text) !important;
}

/* On-photo chrome keeps literal light ink (photo gradient is always dark). */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-cover-detail-label,
    .iarf-cal-cover-detail-value,
    .iarf-cal-cover-detail-private
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-cover-detail-label,
    .iarf-cal-cover-detail-value,
    .iarf-cal-cover-detail-private
) {
    color: #ffffff !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-hero-actions .iarf-cal-action-btn:not(.iarf-cal-primary-btn),
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn:not(.is-saved):not([aria-pressed="true"])
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-hero-actions .iarf-cal-action-btn:not(.iarf-cal-primary-btn),
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn:not(.is-saved):not([aria-pressed="true"])
) {
    color: #343a40 !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-detail-hero-actions .iarf-cal-action-btn:not(.iarf-cal-primary-btn):hover,
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn:not(.is-saved):not([aria-pressed="true"]):hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-detail-hero-actions .iarf-cal-action-btn:not(.iarf-cal-primary-btn):hover,
    .iarf-cal-detail-hero-actions .iarf-cal-save-btn:not(.is-saved):not([aria-pressed="true"]):hover
) {
    background: #ffffff !important;
    border-color: #ffffff !important;
    color: #1a5494 !important;
}

/* Signup CTA: certified success pair in dark (light brand fill unchanged). */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-signup-btn
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-signup-btn
) {
    background-color: var(--iarf-appearance-success) !important;
    border-color: var(--iarf-appearance-success) !important;
    color: var(--iarf-appearance-success-surface) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-signup-btn:hover
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-signup-btn:hover
) {
    background-color: var(--iarf-appearance-success-surface) !important;
    border-color: var(--iarf-appearance-success) !important;
    color: var(--iarf-appearance-success) !important;
}

/* Toasts keep status meaning without glare. */
html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-toast
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-toast
) {
    background-color: var(--iarf-appearance-elevated) !important;
    color: var(--iarf-appearance-text) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-toast.success
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-toast.success
) {
    background-color: var(--iarf-appearance-success-surface) !important;
    color: var(--iarf-appearance-success) !important;
}

html[data-iarf-mode="dark"] [data-iarf-appearance="v1"][data-iarf-product="calendar"] :is(
    .iarf-cal-toast.error
),
[data-iarf-appearance="v1"][data-iarf-product="calendar"][data-iarf-mode="dark"] :is(
    .iarf-cal-toast.error
) {
    background-color: var(--iarf-appearance-danger-surface) !important;
    color: var(--iarf-appearance-danger) !important;
}

@media (prefers-color-scheme: dark) {
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-detail-hero-wrapper,
        .iarf-cal-session-list-item,
        #iarf-cal-sessions-container .iarf-cal-session-item,
        .iarf-cal-session-entry,
        .iarf-cal-session-entry-more,
        .iarf-cal-contact-profile,
        .iarf-cal-form-panels
    ) {
        background: var(--iarf-appearance-surface) !important;
        border-color: var(--iarf-appearance-border) !important;
        color: var(--iarf-appearance-text) !important;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-detail-header-actions,
        .iarf-cal-individual-admin-actions,
        .iarf-cal-sessions-info-box,
        .iarf-cal-sessions-display,
        .iarf-cal-membership-info,
        .iarf-cal-form-nav,
        .iarf-cal-form-footer,
        .iarf-cal-form-template-loader
    ) {
        background: var(--iarf-appearance-sunken) !important;
        border-color: var(--iarf-appearance-border) !important;
        color: var(--iarf-appearance-text) !important;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-form-notice,
        .iarf-cal-timezone-info,
        .iarf-cal-sub-panel
    ) {
        background: var(--iarf-appearance-info-surface) !important;
        border-color: var(--iarf-appearance-border) !important;
        color: var(--iarf-appearance-text) !important;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-detail-section h3,
        .iarf-cal-meta-item-label,
        .iarf-cal-session-item-time,
        .iarf-cal-recurrence-notice,
        .iarf-cal-contributor-role,
        .iarf-cal-sessions-display .iarf-cal-meta-item,
        .iarf-cal-modal-close,
        .iarf-cal-pre-title,
        .iarf-cal-optional,
        .iarf-cal-modal .iarf-cal-form-group small,
        .iarf-cal-timezone-info-close,
        .iarf-cal-tab-icon
    ) {
        color: var(--iarf-appearance-muted) !important;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-detail-hero-title,
        .iarf-cal-meta-item-value,
        .iarf-cal-session-item-title,
        .iarf-cal-session-title,
        .iarf-cal-contact-bio,
        .iarf-cal-form-panel h3
    ) {
        color: var(--iarf-appearance-text) !important;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-contact-name a
    ) {
        color: var(--iarf-appearance-link) !important;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-signup-btn:hover
    ) {
        background-color: var(--iarf-appearance-success-surface) !important;
        border-color: var(--iarf-appearance-success) !important;
        color: var(--iarf-appearance-success) !important;
    }
    html:not([data-iarf-mode="light"]) [data-iarf-appearance="v1"][data-iarf-product="calendar"]:not([data-iarf-mode="light"]) :is(
        .iarf-cal-signup-btn
    ) {
        background-color: var(--iarf-appearance-success) !important;
        border-color: var(--iarf-appearance-success) !important;
        color: var(--iarf-appearance-success-surface) !important;
    }
}
