
.mfd{
    --mfd-navy:#073a69;
    --mfd-navy-dark:#062f57;
    --mfd-red:#b20d18;
    --mfd-red-bright:#f01525;
    --mfd-gold:#c99537;
    --mfd-gold-dark:#8c5d16;
    --mfd-cream:#f8f3ea;
    --mfd-cream-2:#efe2cf;
    --mfd-line:#dbc9ad;
    --mfd-text:#0b3158;
    position:relative;
    color:var(--mfd-text);
    font-family:inherit;
    background:
        radial-gradient(circle at 8% 82%,rgba(201,149,55,.06) 0 3px,transparent 3.5px),
        radial-gradient(circle at 93% 66%,rgba(201,149,55,.05) 0 4px,transparent 4.5px),
        linear-gradient(180deg,#fffdf9,#fbf8f2);
}

/* HERO – obraz podle schváleného návrhu */
.mfd-hero{
    position:relative;
    overflow:hidden;
    background:#111;
}
.mfd-hero img{
    display:block;
    width:100%;
    height:auto;
    aspect-ratio:1448/295;
    object-fit:cover;
}
/* zakrytí jediné části, kterou uživatel nechce: červená stuha s koulí */
.mfd-hero__ribbon-cover{
    position:absolute;
    left:14%;
    bottom:0;
    width:30%;
    height:36%;
    z-index:2;
    pointer-events:none;
    background:
        linear-gradient(105deg,
            rgba(14,18,19,.97) 0%,
            rgba(14,18,19,.94) 38%,
            rgba(14,18,19,.72) 68%,
            rgba(14,18,19,0) 100%);
    clip-path:polygon(0 8%,82% 8%,100% 100%,0 100%);
}

/* menu přímo pod hero */
.mfd-nav{
    display:flex;
    align-items:center;
    background:linear-gradient(180deg,#fbfaf6,#f0eee9);
    border:1px solid #e5dfd4;
    border-top:0;
    border-radius:0 0 8px 8px;
    overflow:hidden;
    box-shadow:0 6px 16px rgba(43,34,20,.05);
    margin-bottom:14px;
}
.mfd-nav a{
    position:relative;
    min-width:138px;
    padding:13px 26px;
    text-align:center;
    color:var(--mfd-navy);
    text-decoration:none!important;
    text-transform:uppercase;
    font-weight:900;
    letter-spacing:.02em;
    font-size:.88rem;
    transition:.16s ease;
}
.mfd-nav a:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;
    top:25%;
    height:50%;
    width:1px;
    background:#ddd7cc;
}
.mfd-nav a:hover{
    background:#f8f1e5;
    color:var(--mfd-red);
}
.mfd-nav a.is-active{
    color:#fff;
    background:linear-gradient(180deg,#ff2633,#e80e1d);
    border-radius:7px;
    margin:0;
}
.mfd-nav a.is-active::after{display:none}

/* společné karty */
.mfd-standings{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    padding:0 10px;
    margin:0 0 12px;
}
.mfd-card,
.mfd-panel{
    background:rgba(255,255,255,.93);
    border:1px solid #e7d7bd;
    border-radius:9px;
    box-shadow:0 5px 18px rgba(78,54,22,.08);
    overflow:hidden;
}

/* nadpis poháru */
.mfd-cup-title{
    display:flex;
    align-items:center;
    gap:12px;
    min-height:60px;
    padding:0 15px;
}
.mfd-cup{
    width:38px;
    height:38px;
    fill:#dda112;
    flex:0 0 38px;
    filter:drop-shadow(0 1px 0 rgba(255,255,255,.8));
}
.mfd-cup-title h2{
    margin:0;
    font-size:clamp(1.5rem,2.1vw,2rem);
    line-height:1;
    font-weight:1000;
    text-transform:uppercase;
    letter-spacing:-.02em;
    white-space:nowrap;
}
.mfd-card--big .mfd-cup-title h2{color:var(--mfd-navy)}
.mfd-card--small .mfd-cup-title h2{color:var(--mfd-red)}
.mfd-cup-title__line{
    height:1px;
    flex:1;
    margin-left:4px;
    background:linear-gradient(90deg,#ddb76d,transparent);
}

/* tabulky */
.mfd-table-wrap,
.mfd-fixtures-table-wrap{
    width:100%;
    overflow-x:auto;
}
.mfd-table{
    width:100%;
    border-collapse:collapse;
    table-layout:auto;
}
.mfd-table--standings{
    min-width:570px;
}
.mfd-table th{
    padding:9px 10px;
    text-align:center;
    color:#fff;
    font-weight:900;
    font-size:.76rem;
    white-space:nowrap;
}
.mfd-table th:nth-child(2){text-align:left}
.mfd-card--big .mfd-table th{
    background:linear-gradient(180deg,#075081,#063c69);
}
.mfd-card--small .mfd-table th{
    background:linear-gradient(180deg,#b31119,#8f0710);
}
.mfd-table td{
    padding:8px 10px;
    text-align:center;
    border-bottom:1px solid #e8dfd1;
    color:#0b3158;
    font-size:.86rem;
    white-space:nowrap;
}
.mfd-table tbody tr:nth-child(even):not(.mfd-place-1):not(.mfd-place-2):not(.mfd-place-3){
    background:#fbfaf7;
}
.mfd-table tbody tr:last-child td{border-bottom:0}
.mfd-team{
    text-align:left!important;
    font-weight:800;
}
.mfd-points{font-weight:1000}
.mfd-rank span{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:26px;
    height:26px;
    padding:0 6px;
    border-radius:50%;
    font-weight:1000;
}
.mfd-place-1{
    background:linear-gradient(90deg,#fff1b9,#fff8dc 68%,#fff)!important;
}
.mfd-place-2{
    background:linear-gradient(90deg,#e8edf2,#f7f9fb 68%,#fff)!important;
}
.mfd-place-3{
    background:linear-gradient(90deg,#f1d2b1,#fbebdb 68%,#fff)!important;
}
.mfd-place-1 .mfd-rank span{
    color:#fff;background:#d7a52c;box-shadow:inset 0 0 0 2px #f9df86;
}
.mfd-place-2 .mfd-rank span{
    color:#fff;background:#aeb8c4;box-shadow:inset 0 0 0 2px #dbe0e6;
}
.mfd-place-3 .mfd-rank span{
    color:#fff;background:#c77b31;box-shadow:inset 0 0 0 2px #eab982;
}

/* hlavní sekční nadpis */
.mfd-section-heading{
    display:flex;
    align-items:center;
    gap:12px;
    padding:13px 16px 9px;
    background:#fff;
}
.mfd-section-heading__icon{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:var(--mfd-red-bright);
    font-size:1.7rem;
    line-height:1;
}
.mfd-section-heading h2{
    margin:0;
    color:var(--mfd-navy-dark);
    font-size:clamp(1.45rem,2vw,2rem);
    font-weight:1000;
    text-transform:uppercase;
    letter-spacing:-.02em;
}

/* nejbližší zápasy přesně jako v návrhu */
.mfd-next{
    margin:0 10px 14px;
}
.mfd-fixtures-table{
    width:100%;
    border-collapse:separate;
    border-spacing:0;
    min-width:760px;
    table-layout:fixed;
}
.mfd-fixtures-table th{
    padding:8px 10px;
    background:linear-gradient(180deg,#b30d17,#930810);
    color:#fff;
    text-align:center;
    font-size:.76rem;
    font-weight:900;
    white-space:nowrap;
}
.mfd-fixtures-table th:first-child{border-radius:6px 0 0 0}
.mfd-fixtures-table th:last-child{border-radius:0 6px 0 0}
.mfd-fixtures-table td{
    padding:8px 12px;
    border-right:1px solid #eee2cf;
    border-bottom:1px solid #e8dcc9;
    color:#0b3158;
    font-size:.86rem;
    background:#fff;
    vertical-align:middle;
}
.mfd-fixtures-table tbody tr:nth-child(even) td:not(.mfd-fixtures-date):not(.mfd-fixtures-service){
    background:#fbfaf7;
}
.mfd-fixtures-date{
    width:150px;
    text-align:center;
    font-weight:900;
    color:#3f2b0d!important;
    background:linear-gradient(180deg,#e1bf78,#cfaa5c)!important;
}
.mfd-fixtures-time{
    width:100px;
    text-align:center;
    color:#285585!important;
    font-weight:800;
    background:#f3f6f8!important;
}
.mfd-fixtures-home{
    text-align:right;
    font-weight:800;
}
.mfd-fixtures-away{
    text-align:left;
    font-weight:800;
}
.mfd-fixtures-home::after{
    content:"—";
    float:right;
    margin-left:20px;
    color:#6d6d6d;
}
.mfd-fixtures-service{
    width:240px;
    text-align:center;
    background:linear-gradient(180deg,#fbf5ea,#f3eadc)!important;
    border-right:0!important;
}
.mfd-fixtures-service span{
    display:block;
    margin-bottom:3px;
    color:#8c5d16;
    text-transform:uppercase;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.08em;
}
.mfd-fixtures-service strong{
    display:block;
    color:#0b3158;
    line-height:1.35;
    font-size:.85rem;
}

/* rozlosování */
.mfd-page{
    margin:0 10px 14px;
}
.mfd-schedule-list{
    display:grid;
    gap:15px;
    padding:5px 14px 16px;
}
.mfd-schedule-card{
    border:1px solid #e4d3b8;
    border-radius:8px;
    overflow:hidden;
    background:#fff;
    box-shadow:0 3px 12px rgba(84,59,24,.05);
}
.mfd-schedule-card__date{
    padding:10px 15px;
    text-align:center;
    background:linear-gradient(180deg,#f7efe4,#efe2cf);
    color:#7a4410;
    font-size:.92rem;
    font-weight:1000;
    letter-spacing:.04em;
}
.mfd-fixtures-table--schedule{
    min-width:680px;
}
.mfd-fixtures-table--schedule th:first-child{width:100px}
.mfd-fixtures-table--schedule .mfd-fixtures-service{width:250px}

/* jednotlivci */
.mfd-individuals{
    margin:0 10px 14px;
}
.mfd-individuals-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    padding:4px 14px 15px;
}
.mfd-card--individuals{
    box-shadow:none;
}
.mfd-individuals-title{
    padding:12px 15px;
    color:var(--mfd-navy);
    font-weight:1000;
    font-size:1.05rem;
    text-transform:uppercase;
    border-bottom:1px solid #e6d7c1;
}
.mfd-table--individuals{min-width:520px}
.mfd-table--individuals th{background:linear-gradient(180deg,#075081,#063c69)}

.mfd-empty{
    padding:22px!important;
    text-align:center!important;
    color:#777;
}
.mfd-empty--block{padding:30px!important}

/* responzivní */
@media(max-width:991.98px){
    .mfd-standings,
    .mfd-individuals-grid{
        grid-template-columns:1fr;
    }
    .mfd-nav a{
        min-width:0;
        flex:1 1 25%;
        padding:12px 12px;
        font-size:.78rem;
    }
    .mfd-hero__ribbon-cover{
        left:10%;
        width:38%;
    }
}

@media(max-width:640px){
    .mfd{
        margin-left:-1px;
        margin-right:-1px;
    }
    .mfd-hero{
        overflow:hidden;
    }
    .mfd-hero img{
        width:165%;
        max-width:none;
        margin-left:-32%;
        aspect-ratio:auto;
    }
    .mfd-hero__ribbon-cover{
        left:0;
        width:54%;
        height:38%;
    }
    .mfd-nav{
        display:grid;
        grid-template-columns:1fr 1fr;
        border-radius:0 0 7px 7px;
    }
    .mfd-nav a{
        padding:11px 7px;
        font-size:.72rem;
        border-bottom:1px solid #e1dbd1;
    }
    .mfd-nav a:not(:last-child)::after{display:none}
    .mfd-standings{
        padding:0 5px;
        gap:10px;
    }
    .mfd-cup-title{min-height:54px}
    .mfd-cup-title h2{font-size:1.45rem}
    .mfd-cup{width:32px;height:32px;flex-basis:32px}
    .mfd-next,.mfd-page,.mfd-individuals{margin-left:5px;margin-right:5px}
    .mfd-section-heading{padding:11px 12px 7px}
    .mfd-section-heading h2{font-size:1.35rem}
}


/* =========================================================
   v1.0.6 – větší písmo + čistší zarovnání zápasů
   ========================================================= */

/* větší a čitelnější text tabulek družstev */
.mfd-table td{
    font-size:1rem;
    line-height:1.35;
}
.mfd-table th{
    font-size:.9rem;
    line-height:1.25;
}
.mfd-team{
    font-size:1rem;
}

/* nejbližší zápasy – větší písmo */
.mfd-fixtures-table th{
    font-size:.95rem;
    padding:10px 12px;
}
.mfd-fixtures-table td{
    font-size:1.03rem;
    line-height:1.35;
    padding:11px 14px;
}
.mfd-fixtures-date{
    font-size:1.02rem!important;
}
.mfd-fixtures-time{
    font-size:1.02rem!important;
}
.mfd-fixtures-service span{
    font-size:.78rem;
}
.mfd-fixtures-service strong{
    font-size:1rem;
}

/* DOMÁCÍ / HOSTÉ – centrované stejně jako názvy týmů */
.mfd-fixtures-home,
.mfd-fixtures-away{
    position:relative;
    text-align:center!important;
    font-weight:900;
}

/* odstranění svislé čáry mezi týmy */
.mfd-fixtures-home{
    border-right:0!important;
}
.mfd-fixtures-away{
    border-left:0!important;
}

/* pouze jednoduchá pomlčka přesně mezi názvy */
.mfd-fixtures-home::after{
    content:"—";
    position:absolute;
    right:-8px;
    top:50%;
    transform:translateY(-50%);
    float:none;
    margin:0;
    color:#746b61;
    font-weight:700;
    z-index:2;
}

/* šířky sloupců na úvodní stránce */
.mfd-next .mfd-fixtures-table th:nth-child(1),
.mfd-next .mfd-fixtures-table td:nth-child(1){
    width:18%;
}
.mfd-next .mfd-fixtures-table th:nth-child(2),
.mfd-next .mfd-fixtures-table td:nth-child(2){
    width:11%;
}
.mfd-next .mfd-fixtures-table th:nth-child(3),
.mfd-next .mfd-fixtures-table td:nth-child(3){
    width:25%;
}
.mfd-next .mfd-fixtures-table th:nth-child(4),
.mfd-next .mfd-fixtures-table td:nth-child(4){
    width:25%;
}
.mfd-next .mfd-fixtures-table th:nth-child(5),
.mfd-next .mfd-fixtures-table td:nth-child(5){
    width:21%;
}

/* rozlosování – vyvážené sloupce, stejné centrování */
.mfd-fixtures-table--schedule th:nth-child(1),
.mfd-fixtures-table--schedule td:nth-child(1){
    width:11%;
}
.mfd-fixtures-table--schedule th:nth-child(2),
.mfd-fixtures-table--schedule td:nth-child(2){
    width:31%;
}
.mfd-fixtures-table--schedule th:nth-child(3),
.mfd-fixtures-table--schedule td:nth-child(3){
    width:31%;
}
.mfd-fixtures-table--schedule th:nth-child(4),
.mfd-fixtures-table--schedule td:nth-child(4){
    width:27%;
}

/* nadpis data v rozlosování trochu větší */
.mfd-schedule-card__date{
    font-size:1.05rem;
}

/* mobil – čitelnost bez přehnaného zmenšení */
@media(max-width:640px){
    .mfd-table td{
        font-size:.94rem;
    }
    .mfd-table th{
        font-size:.82rem;
    }
    .mfd-fixtures-table th{
        font-size:.86rem;
    }
    .mfd-fixtures-table td{
        font-size:.96rem;
        padding:10px 10px;
    }
    .mfd-fixtures-home::after{
        right:-7px;
    }
}
