/* Saved-template layout only: names use available row space before they wrap. */
.hot-match_list,.match_box{container-type:inline-size}
.hot-match_list .hot-match-item,.match_box .match-item{
    display:grid!important;
    grid-template-columns:minmax(280px,1fr) minmax(0,1.7fr) max-content;
    align-items:center;
    gap:16px;
}
.hot-match-item .hot-info_left,.match-item .info_left{display:flex;align-items:center;gap:12px;min-width:0}
.hot-match-item .hot-time,.match-item .info_left .time{flex:0 0 auto;min-width:0;width:auto;padding-right:0;white-space:nowrap}
.match-item .info_left .time em{white-space:nowrap}
.hot-match-item .hot-league,.match-item .info_left .league{
    display:block!important;flex:1 1 auto;min-width:0;width:auto!important;height:auto!important;max-height:none;
    padding:0!important;white-space:normal;word-break:normal;overflow-wrap:anywhere;
    overflow:visible!important;-webkit-line-clamp:unset!important;line-height:1.5;
}
.hot-match-item .hot-league a{display:block;white-space:inherit}
.hot-match-item .hot-info_center,.match-item .info_center{
    display:grid!important;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);
    align-items:center;gap:8px;min-width:0;width:auto!important;
}
.hot-match-item :is(.hot-home,.hot-away),.match-item .info_center :is(.home,.away){width:auto!important;min-width:0}
.hot-match-item :is(.hot-left,.hot-right),.match-item .info_center :is(.left,.right){
    display:flex;align-items:center;width:100%!important;min-width:0;gap:6px;
}
.hot-match-item :is(.hot-left,.hot-right)>.text,.match-item .info_center :is(.left,.right)>.text{
    display:block!important;flex:1 1 auto;width:auto!important;min-width:0;height:auto!important;max-height:none;padding:0!important;
    white-space:normal;word-break:normal;overflow-wrap:anywhere;overflow:visible!important;
    -webkit-line-clamp:unset!important;line-height:1.5;
}
.hot-match-item .text a{display:block;white-space:inherit}
.hot-match-item .hot-score{width:100%!important;min-width:0;white-space:nowrap;text-align:center}
.hot-match-item .hot-live-badge{right:8px!important}
.hot-match-item :is(.hot-left,.hot-right)>img,.match-item .info_center :is(.left,.right)>img{flex:0 0 auto;object-fit:contain}
.match-item .live_div_btn{justify-self:end}
@container(max-width:1000px){
    .hot-match_list .hot-match-item,.match_box .match-item{grid-template-columns:minmax(0,1fr) max-content;gap:10px 16px}
    .hot-match-item .hot-info_left,.match-item .info_left{grid-column:1/-1;width:auto!important}
    .hot-match-item .hot-info_center,.match-item .info_center{grid-column:1}
    .hot-match-item .hot-info_right,.match-item .live_div_btn{grid-column:2;width:auto!important}
}
@media(max-width:600px){
    .hot-match_list .hot-match-item,.match_box .match-item{grid-template-columns:minmax(0,1fr);height:auto;min-height:0}
    .hot-match-item .hot-info_left,.match-item .info_left{grid-column:1;width:auto!important}
    .hot-match-item .hot-info_right,.match-item .live_div_btn{grid-column:1;justify-self:end;width:auto!important;min-width:80px}
    .hot-match-item .hot-live-badge{position:absolute!important;top:0;right:0}
}

/* A01/A06 share this original fixture markup. */
.fixture__list .fixture__list__data{
    display:grid!important;grid-template-columns:minmax(180px,1fr) 84px 56px minmax(0,2.6fr) max-content;
    align-items:center;gap:10px;min-width:0;width:100%;height:auto!important;min-height:52px;
}
.fixture__list .fixture__list__league{
    width:auto!important;min-width:0;max-width:none;padding:0;white-space:normal;overflow:visible;overflow-wrap:anywhere;line-height:1.5;
}
.fixture__list :is(.fixture__list__time,.fixture__list__status){width:auto!important;min-width:0;white-space:nowrap}
.fixture__list .fixture__list__info{
    display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);align-items:center;gap:8px;
    width:auto!important;min-width:0;height:auto;min-height:52px;
}
.fixture__list .fixture__list__team{min-width:0;max-width:none;width:auto;justify-content:center}
.fixture__list .fixture__list__team>span{
    min-width:0;max-width:none;width:auto;white-space:normal;overflow:visible;overflow-wrap:anywhere;line-height:1.5;
}
.fixture__list .fixture__list__score{width:auto;white-space:nowrap}
.fixture__list .fixture__list__extra{width:auto!important;min-width:0;white-space:nowrap}
.qmw__tab__container .qmw__tab__list_zb{flex:0 0 auto;min-width:max-content;white-space:nowrap}
.qmw__tab__container .qmw__tab__list_zb>span{white-space:nowrap}
.recommend__game__team>span{white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere;max-width:none;height:auto;line-height:1.5}
.recommend__game .recommend__game__info{display:grid;grid-template-columns:minmax(0,1fr);gap:6px;height:auto!important;max-height:none;min-height:44px;align-items:center;overflow:visible!important}
.recommend__game .recommend__game__team{height:auto;min-height:0}
.recommend__game{height:auto!important;min-height:90px;align-items:center}
@media(max-width:1000px){
    .fixture__list .fixture__list__data{grid-template-columns:minmax(0,1fr) 84px 56px;gap:8px}
    .fixture__list .fixture__list__info{grid-column:1/-1;width:100%!important;min-height:36px}
    .fixture__list .fixture__list__extra{grid-column:1/-1;justify-self:end}
}

/* A03: remove the empty source type column and let the names take its space. */
.topic_match_list .list_block>.a{display:grid;grid-template-columns:76px 112px minmax(0,1fr);gap:12px;height:auto;min-height:68px}
.topic_match_list .list_block>.a>.type:empty{display:none}
.topic_match_list .list_block .match_name{
    display:grid;grid-template-columns:minmax(0,1fr) 32px 8px 32px minmax(0,1fr);
    width:auto;min-width:0;gap:6px;align-items:center;
}
.topic_match_list .match_name>a{width:auto;min-width:0}
.topic_match_list .match_name :is(.text_left,.text_right){
    width:auto;max-width:none;white-space:normal;overflow:visible;overflow-wrap:anywhere;height:auto;line-height:1.5;
}
.topic_match_list .match_name>strong{width:auto}
@media(max-width:767px){
    .topic_match_list .list_block>.a{grid-template-columns:76px minmax(0,1fr);gap:8px;padding:10px 0}
    .topic_match_list .list_block .match_name{grid-column:1/-1}
}

/* A04's source positions assumed a short competition name. */
.xcon .xcis{left:16px;right:16px;width:auto;max-width:none;top:38px}
.xcon .xcis .x_c{width:auto;margin:0;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.xcon .xdwvs{left:12px;right:12px;width:auto;display:flex;align-items:center;gap:8px}
.xcon .xdwvs .xp_dw{flex:1 1 0;min-width:0;width:auto;height:auto;white-space:normal;overflow-wrap:anywhere;line-height:1.4}
.xcon .xdwvs .xp_vs{flex:0 0 auto;width:auto}

/* A02's main table uses the same data as its popular schedule. */
.live-table tr[data-fan-match]>td:first-child{width:200px;min-width:180px}
.live-table tr[data-fan-match] .match-teams-logo:not(:has(img)){width:0!important;padding:0!important}
.live-table tr[data-fan-match]>td :is(p,a){white-space:normal!important;overflow:visible!important;height:auto!important;line-height:1.5;overflow-wrap:anywhere}
.match-info[data-fan-match] .match-info-bottom{display:grid;grid-template-columns:minmax(0,1fr) 32px minmax(0,1fr);align-items:center;gap:8px}
.match-info[data-fan-match] :is(.left-team,.right-team){min-width:0;width:auto;height:auto}
.match-info[data-fan-match] :is(.left-team,.right-team)>p{height:auto!important;white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere;line-height:1.5}
.match-info[data-fan-match]{height:auto!important;min-height:150px}
