/* Conference program page styles */

.conference-hero {
    padding-block: var(--space-m);
}

.conference-hero__date {
    color: var(--color-gray-600, #666);
    font-size: var(--size-step-1);
}

/* Track section */
.conference-track {
    border-left: 4px solid var(--track-color, var(--theme-primary));
    padding-left: var(--space-m);
}

.conference-track__title {
    color: var(--track-color, var(--theme-primary));
    font-size: var(--size-step-3);
    font-weight: var(--font-semi-bold);
}

/* Timeslot */
.conference-timeslot {
    padding-block: var(--space-2xs);
}

.conference-timeslot__time {
    font-size: var(--size-step-00);
    font-weight: var(--font-semi-bold);
    color: var(--color-gray-600, #666);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding-block-end: var(--space-3xs);
    border-bottom: 1px solid var(--color-gray-200, #e5e7eb);
    margin-block-end: var(--space-2xs);
}

/* Session card */
.conference-session-card {
    background-color: var(--color-white, #fff);
    border-radius: var(--radius-s);
    box-shadow: var(--shadow-default);
    padding: var(--space-xs);
    height: 100%;
}

.conference-session-card__type {
    font-size: var(--size-step-00);
    font-weight: var(--font-semi-bold);
    color: var(--track-color, var(--theme-primary));
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.conference-session-card__title {
    font-size: var(--size-step-1);
    font-weight: var(--font-semi-bold);
    color: var(--color-black);
    line-height: var(--leading-standard);
}

.conference-session-card .cluster {
    font-size: var(--size-step-00);
    color: var(--color-gray-600, #666);
}

.conference-session-card .cluster svg {
    flex-shrink: 0;
    width: 1em;
    height: 1em;
}

.conference-session-card__capacity {
    font-size: var(--size-step-00);
    font-weight: var(--font-semi-bold);
    color: var(--color-green-600, #16a34a);
    padding-top: var(--space-3xs);
}

.conference-session-card__capacity--waitlist {
    color: var(--color-red-500, #ef4444);
}

/* "Samo moje izvedbe" toggle sits tight between the divider and the program */
.flow > hr:has(+ .conference-mine-toggle) {
    margin-block-end: 0;
}

.flow > .conference-mine-toggle {
    margin-block-start: var(--space-xs, 0.75rem);
}

.flow > .conference-mine-toggle + * {
    margin-block-start: var(--space-s, 1rem);
}

/* The visitor's own workshops (status from the registrations table) */
.conference-session-card--registered {
    box-shadow: inset 0 0 0 2px var(--color-green-600, #16a34a), var(--shadow-default);
}

.conference-session-card--waitlist {
    box-shadow: inset 0 0 0 2px var(--color-orange-500, #f97316), var(--shadow-default);
}

.conference-session-card__badge {
    display: inline-block;
    font-size: var(--size-step-00);
    font-weight: var(--font-semi-bold);
    color: var(--color-white, #fff);
    background-color: var(--color-green-600, #16a34a);
    border-radius: 999px;
    padding: 0.1em 0.75em;
}

.conference-session-card--waitlist .conference-session-card__badge {
    background-color: var(--color-orange-500, #f97316);
}

/* The registration wizard (stepper, page footer, sklop cards) is styled in
 * conference-form.css — this file only loads on the conference course page, and the
 * form also renders in the admin registration iframe. */
