/* Agenda is a composition of Editorial Card, Badge, Tag and CTA Button.
   The date replaces the media slot. Existing horizontal cards keep their photo. */
[data-octopus-agenda-card] { container: agenda-card / inline-size; }
[data-octopus-agenda-card] .octopus-editorial-card__link {
    min-height: 0;
    flex-direction: row;
    align-items: center;
    gap: var(--space-layout-xs);
    padding: var(--space-layout-xs);
    border: 0;
}
[data-octopus-agenda-card][data-variant="default"] .octopus-editorial-card__link { background: var(--color-white); }
.dark [data-octopus-agenda-card][data-variant="default"] .octopus-editorial-card__link { background: var(--color-bg-surface); }
.octopus-agenda-card__date {
    display: flex;
    align-self: stretch;
    align-items: center;
    justify-content: center;
    flex: 0 0 calc(var(--space-layout-md) * 2 + var(--space-component-xs));
    min-width: 0;
    padding: var(--space-component-sm) var(--space-component-xs);
    border-radius: var(--shape-radius-input);
    background: var(--color-brand-primary-subtle);
    color: var(--color-text-brand);
    text-align: center;
    font-variant-numeric: tabular-nums;
}
.octopus-agenda-card__date-parts {
    display: flex;
    flex-direction: column;
    gap: calc(var(--space-component-xs) / 2);
}
.octopus-agenda-card__weekday,
.octopus-agenda-card__month {
    font-size: var(--type-caption-size);
    line-height: var(--type-caption-leading);
    letter-spacing: var(--type-caption-tracking);
    text-transform: uppercase;
}
.octopus-agenda-card__day {
    font-size: calc(var(--type-display-size) * .75);
    font-weight: var(--type-display-weight);
    line-height: var(--type-display-leading);
    letter-spacing: var(--type-display-tracking);
}
.octopus-agenda-card__date--pending {
    font-size: var(--type-caption-size);
    line-height: var(--type-caption-leading);
    overflow-wrap: anywhere;
}
[data-octopus-agenda-card] .octopus-editorial-card__body {
    align-self: stretch;
    gap: var(--space-component-xs);
    padding: 0;
}
[data-octopus-agenda-card] .octopus-editorial-card__body > :is(h2, h3, h4, h5, h6) {
    font-size: var(--type-heading-3-size);
    line-height: var(--type-heading-3-leading);
    font-weight: var(--type-heading-3-weight);
}
[data-octopus-agenda-card] .octopus-editorial-card__cta-footer {
    align-items: flex-end;
    gap: var(--space-component-sm);
    padding-top: var(--space-component-sm);
}
[data-octopus-agenda-card] [data-octopus-editorial-card-details] {
    flex: 1 1 16rem;
    align-items: flex-end;
}
/* The location shares the line with the time and CTA; keep it single-line and truncate it. */
[data-octopus-agenda-card][data-layout="horizontal"] .octopus-editorial-card__cta-footer { min-width: 0; }
[data-octopus-agenda-card][data-layout="horizontal"] [data-octopus-editorial-card-details] { min-width: 0; flex-wrap: nowrap; overflow: hidden; }
[data-octopus-agenda-card][data-layout="horizontal"] [data-octopus-editorial-card-details] [data-octopus-tag] { flex: 0 0 auto; max-width: 100%; white-space: nowrap; }
[data-octopus-agenda-card][data-layout="horizontal"] .octopus-editorial-card__location { min-width: 0; flex: 0 1 auto; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
[data-octopus-agenda-card][data-layout="horizontal"] .octopus-editorial-card__location [data-octopus-tag-label] { display: block; min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
@container agenda-card (max-width: 39.999rem) {
    [data-octopus-agenda-card] [data-octopus-cta] { width: 100%; }
}
@container agenda-card (max-width: 28rem) {
    [data-octopus-agenda-card] .octopus-editorial-card__link {
        align-items: flex-start;
        gap: var(--space-component-sm);
        padding: var(--space-component-sm);
    }
    .octopus-agenda-card__date {
        flex-basis: var(--space-layout-lg);
        padding-inline: calc(var(--space-component-xs) / 2);
    }
    .octopus-agenda-card__day { font-size: var(--type-heading-1-size); }
}
/* Vertical variant for related-content grids; the default list remains horizontal. */
[data-octopus-agenda-card][data-layout="vertical"] { height:100%; }
[data-octopus-agenda-card][data-layout="vertical"] .octopus-editorial-card__link {
    height:100%;flex-direction:column;align-items:stretch;
    padding:var(--space-layout-xs);gap:var(--space-layout-xs);line-height:var(--type-body-leading);
}
[data-octopus-agenda-card][data-layout="vertical"] .octopus-agenda-card__date {
    flex:0 0 auto;min-height:calc(var(--space-layout-md) * 2);width:100%;
    padding:var(--space-component-sm);
}
[data-octopus-agenda-card][data-layout="vertical"] .octopus-agenda-card__date-parts {
    display:grid;grid-template-columns:auto auto;column-gap:var(--space-component-sm);row-gap:0;align-items:center;text-align:left;
}
[data-octopus-agenda-card][data-layout="vertical"] .octopus-agenda-card__day {
    grid-column:1;grid-row:1 / span 2;font-size:calc(var(--type-display-size) * .75);
}
[data-octopus-agenda-card][data-layout="vertical"] .octopus-agenda-card__weekday { grid-column:2;grid-row:1;align-self:end; }
[data-octopus-agenda-card][data-layout="vertical"] .octopus-agenda-card__month { grid-column:2;grid-row:2;align-self:start; }
[data-octopus-agenda-card][data-layout="vertical"] .octopus-editorial-card__cta-footer { flex-direction:column;align-items:stretch; }
[data-octopus-agenda-card][data-layout="vertical"] [data-octopus-editorial-card-details] { flex:0 1 auto; }
[data-octopus-agenda-card][data-layout="vertical"] [data-octopus-cta] { width:100%; }
