/* === PAGE TITLE === */
.page-title{
    font-weight:800;
    margin:.5rem 0 1rem;
    color:var(--fc-text);
}

/* === FILTERS === */
.schedule-filters.card{
    border:1px solid var(--fc-border);
    border-radius:12px;
    background:var(--fc-surface);
    box-shadow:0 6px 18px var(--fc-shadow);
}
.schedule-filters .form-label{
    color:var(--fc-red);
    font-weight:700;
}
.schedule-filters .form-control{
    background:var(--fc-surface);
    color:var(--fc-text);
    border:1px solid var(--fc-border);
    border-radius:.6rem;
}
.schedule-filters .form-control::placeholder{ color:var(--fc-muted); }
.schedule-filters .form-control:focus{
    border-color:var(--fc-red);
    box-shadow:0 0 0 .15rem rgba(227,27,35,.18);
}
.schedule-filters .btn.btn-read{
    background:var(--fc-red);
    color:#fff;
    border:none;
    border-radius:.6rem;
    font-weight:800;
    line-height:1.1;
    padding:.5rem .9rem;
}
.schedule-filters .btn.btn-read:hover{ background:#c0161c; color:#fff; }
@media (max-width:576px){
    .schedule-filters .row.g-2{ row-gap:.5rem; }
}

/* === HEAD + LINKS NEAR TABLE (если понадобится) === */
.schedule > .d-flex{ gap:.75rem; }
.schedule h2.h4{
    font-weight:800; letter-spacing:.2px; line-height:1.1; margin:0;
    display:flex; align-items:center; gap:.6rem;
}
.schedule h2.h4::after{
    content:""; height:3px; width:28px; background:var(--fc-red);
    border-radius:2px; display:inline-block;
}
.schedule a.link-primary{
    color:var(--fc-red)!important; font-weight:700; text-decoration:none!important;
    white-space:nowrap; display:inline-flex; align-items:center; gap:.35rem;
}
.schedule a.link-primary::after{ content:"›"; opacity:.85; line-height:1; transform:translateY(-1px); }

/* === TABLE WRAP === */
.schedule .table-responsive{
    border:1px solid var(--fc-border);
    border-radius:12px;
    overflow:hidden;
    background:var(--fc-surface);
    box-shadow:0 6px 18px var(--fc-shadow);
}

/* === THEAD === */
.schedule thead.table-light th{
    background:#fafafa; color:#374151; font-weight:700; border-bottom:1px solid var(--fc-border);
}
[data-theme="dark"] .schedule thead.table-light th{
    background:#141414; color:#e0e0e0; border-bottom:1px solid var(--fc-border);
}

/* === TBODY === */
.schedule tbody td{ vertical-align:middle; }
.schedule tbody tr + tr td{ border-top:1px solid #f3f4f6; }
[data-theme="dark"] .schedule tbody tr + tr td{ border-top:1px solid #1a1a1a; }

/* переносы на мобиле */
@media (max-width:576px){
    .schedule td:nth-child(2), .schedule td:nth-child(3){ word-break:break-word; }
}

/* === DATE BADGE === */
.schedule .badge{
    background:var(--fc-red)!important; color:#fff!important; border:none!important;
    border-radius:999px; font-weight:800; line-height:1;
    padding:.35rem .6rem; white-space:nowrap;
}
@media (max-width:576px){
    .schedule .badge{ padding:.25rem .5rem; white-space:normal; line-height:1.25; }
}

/* фикс ширины "Date" на ≥992px */
@media (min-width:992px){
    .schedule thead th:first-child,
    .schedule tbody td:first-child{ width:140px; }
}

/* === MOBILE CARD MODE === */
@media (max-width:575.98px){
    .schedule thead{ display:none; }

    .schedule table tr{
        display:grid;
        grid-template-columns: 92px 1fr;
        grid-auto-rows:auto;
        gap:.35rem .6rem;
        padding:.75rem;
        border-top:1px solid var(--fc-border);
        background:var(--fc-surface);
    }
    .schedule table tr:first-child{ border-top:0; }

    .schedule table td{
        border:0 !important;
        padding:0 !important;
        min-width:0;
    }

    .schedule table td::before{
        grid-column:1;
        align-self:start;
        color:var(--fc-muted);
        font-weight:700;
        font-size:.9rem;
        content:"";
    }
    .schedule table td > *{ grid-column:2; }

    .schedule table td:nth-child(1)::before{ content:"Date"; }
    .schedule table td:nth-child(2)::before{ content:"Fighters"; }
    .schedule table td:nth-child(3)::before{ content:"Event"; }

    .schedule table td:nth-child(1){
        grid-column:1 / -1;
        display:flex; gap:.35rem; align-items:center;
    }

    .schedule .badge{
        display:inline-block; max-width:100%;
        word-break:break-word;
    }
}

/* === PAGINATION === */
.fc-pager{ gap:6px; margin-top:20px; }
.fc-pager .page-item{ display:inline-flex; }
.fc-pager .page-link{
    color:var(--fc-text);
    background:var(--fc-surface);
    border:1px solid var(--fc-border);
    border-radius:10px;
    padding:.45rem .8rem;
    line-height:1.1;
}
.fc-pager .page-link:hover,
.fc-pager .page-link:focus{
    color:#fff; background:var(--fc-red); border-color:var(--fc-red);
    box-shadow:0 0 0 .16rem rgba(227,27,35,.18);
}
.fc-pager .page-item.active .page-link{
    color:#fff; background:var(--fc-red); border-color:var(--fc-red);
    box-shadow:0 6px 14px rgba(227,27,35,.25);
}
.fc-pager .page-item.disabled .page-link{
    color:#9ca3af; background:#f3f4f6; border-color:var(--fc-border);
}
[data-theme="dark"] .fc-pager .page-item.disabled .page-link{
    color:#7a7a7a; background:#151515;
}
