/*
 * CIFmarkets view — BXB Market-inspired 2 columns desktop → 1 column mobile
 * Lines: head-col = 3px, row = 1px. No pseudo-elements.
 */

.swth-view--cifmarkets {
    --gap-cols: 64px;
    --gap-cells: 16px;

    --c-pill-bg: #F4F5FD;

    --c-date: #001343;
    --c-title: #35BF9E;

    --c-head-label: #1f2f5c;
    --c-asset: #1d2752;

    --c-head-border: #E4E4E4;
    --c-row-border: #E4E4E4;

    --c-status-bg: rgba(255, 128, 0, 0.1);
    --c-status-text: rgba(255, 111, 0, 1);
    --c-status-closed-bg: rgba(245, 1, 0, 0.1);
    --c-status-closed-text: rgba(247, 103, 103, 1);
    --c-status-early-close-bg: rgba(255, 128, 0, 0.1);
    --c-status-early-close-text: rgba(255, 111, 0, 1);
    --c-status-open-bg: #e6f5ec;
    --c-status-open-text: #1d8b55;

    --c-empty: #6d789a;

    width: 100%;
    max-width: 1260px;
    margin: 0 auto;
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

/* CARD (brand modifier) */
.swth-card-event--cifmarkets {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

/* HEADER — pill with date & title */
.swth-card-event--cifmarkets .swth-card-event__header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: var(--gap-cells);
    text-align: center;
    background: var(--c-pill-bg);
    border-radius: 15px;
    padding: 14px 20px;
}

/* keep higher specificity vs page builders */
.swth-view--cifmarkets .swth-card-event--cifmarkets .swth-card-event__header .swth-card-event__date,
.swth-view--cifmarkets .swth-card-event--cifmarkets .swth-card-event__header .swth-card-event__title {
    margin: 0;
}

.swth-view--cifmarkets .swth-card-event--cifmarkets .swth-card-event__header .swth-card-event__date {
    color: var(--c-date);
}

.swth-view--cifmarkets .swth-card-event--cifmarkets .swth-card-event__header .swth-card-event__title {
    color: var(--c-title);
}

/* BODY */
.swth-card-event--cifmarkets .swth-card-event__table {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

/* ===== HEAD ===== — two independent columns: left | right */
.swth-card-event--cifmarkets .swth-card-event__head {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: var(--gap-cols);
}

/* each head-col — grid of 2 cells: Asset | Status with 3px bottom border */
.swth-card-event--cifmarkets .swth-card-event__head-col {
    display: grid;
    align-items: end;
    padding-bottom: 10px;
    border-bottom: 3px solid var(--c-head-border);
    grid-template-columns: repeat(2, 1fr);
    column-gap: var(--gap-cols);
}

.swth-card-event--cifmarkets .swth-card-event__head-label {
    color: var(--c-head-label);
}

/* ===== ROWS ===== */

/* rows container — groups of 2 */
.swth-card-event--cifmarkets .swth-card-event__rows {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* 2 columns on desktop (two rows side-by-side) */
.swth-card-event--cifmarkets .swth-card-event__row-group {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    column-gap: var(--gap-cols);
}

/* one row — asset | status + 1px bottom border */
.swth-card-event--cifmarkets .swth-card-event__row {
    display: grid;
    gap: var(--gap-cells);
    align-items: start;
    padding: 7px 0;
    border-bottom: 1px solid var(--c-row-border);
    grid-template-columns: repeat(2, 1fr);
    column-gap: var(--gap-cols);
}

.swth-card-event--cifmarkets .swth-card-event__asset {
    color: var(--c-asset);
    line-height: 1.35;
}

.swth-card-event--cifmarkets .swth-card-event__status {
    display: flex;
    align-items: center;
    justify-self: start;
}

/* Status badge */
.swth-card-event--cifmarkets .swth-card-event__status-badge {
    display: inline-flex;
    align-items: center;
    border-radius: 6px;
    padding-inline: 10px;
    padding-block: 3px;
    line-height: 20px;
    background: var(--c-status-bg);
    color: var(--c-status-text);
}

/* Status colors (modifier classes come from PHP) */
.swth-card-event--cifmarkets .swth-card-event__status-badge.trading-holidays__status--closed {
    background: var(--c-status-closed-bg);
    color: var(--c-status-closed-text);
}

.swth-card-event--cifmarkets .swth-card-event__status-badge.trading-holidays__status--early-close {
    background: var(--c-status-early-close-bg);
    color: var(--c-status-early-close-text);
}

.swth-card-event--cifmarkets .swth-card-event__status-badge.trading-holidays__status--open {
    background: var(--c-status-open-bg);
    color: var(--c-status-open-text);
}

/* empty state */
.swth-card-event--cifmarkets .swth-card-event__empty {
    color: var(--c-empty);
    text-align: center;
    padding-bottom: 8px;
}

/* ===== Tablet ===== */
@media (max-width: 1024px) {
    .swth-card-event--cifmarkets {
        padding: 28px;
        border-radius: 20px;
    }

    /* only left head-col remains */
    .swth-card-event--cifmarkets .swth-card-event__head {
        grid-template-columns: 1fr;
    }

    .swth-card-event--cifmarkets .swth-card-event__head-col:nth-child(n + 2) {
        display: none;
    }

    /* single column list of row-groups */
    .swth-card-event--cifmarkets .swth-card-event__row-group {
        grid-template-columns: 1fr;
    }

    .swth-card-event--cifmarkets .swth-card-event__row {
        row-gap: 10px;
    }
}

/* ===== Mobile ===== */
@media (max-width: 767px) {
    .swth-card-event--cifmarkets {
        padding: 0 25px;
    }

    .swth-card-event--cifmarkets .swth-card-event__header {
        flex-direction: column;
        gap: 0;
        border-radius: 16px;
    }
}
