/* Ty Le Keo Final UI - scoped only to .bong-da.bong-da--ty-le-keo */
.bong-da.bong-da--ty-le-keo {
    --bd-bg: #ffffff;
    --bd-surface: #ffffff;
    --bd-soft: #f8fafc;
    --bd-soft-2: #f1f5f9;
    --bd-border: #e2e8f0;
    --bd-border-strong: #cbd5e1;
    --bd-text: #0f172a;
    --bd-muted: #64748b;
    --bd-muted-2: #94a3b8;
    --bd-primary: #2563eb;
    --bd-primary-dark: #1d4ed8;
    --bd-primary-deep: #1e40af;
    --bd-primary-soft: #eff6ff;
    --bd-primary-border: #bfdbfe;
    --bd-danger: #ef4444;
    --bd-success: #10b981;
    --bd-warning: #f59e0b;
    --bd-live-bg: #fffbeb;
    --bd-shadow: 0 10px 30px rgba(15, 23, 42, 0.08);
    --bd-shadow-soft: 0 4px 14px rgba(15, 23, 42, 0.06);
    --bd-radius: 18px;
    --bd-radius-sm: 10px;
    --bd-height: 40px;
    --bd-font: inherit;

    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    color: var(--bd-text);
    font-family: var(--bd-font);
    font-size: 13px;
    line-height: 1.45;
    box-sizing: border-box;
}

.bong-da.bong-da--ty-le-keo,
.bong-da.bong-da--ty-le-keo * {
    box-sizing: border-box;
}

.bong-da.bong-da--ty-le-keo [hidden] {
    display: none !important;
}

.bong-da.bong-da--ty-le-keo input,
.bong-da.bong-da--ty-le-keo button,
.bong-da.bong-da--ty-le-keo select {
    font: inherit;
    margin: 0;
    outline: none;
    box-shadow: none;
    text-transform: none;
    letter-spacing: normal;
}

.bong-da.bong-da--ty-le-keo button {
    cursor: pointer;
}

.bong-da.bong-da--ty-le-keo select {
    appearance: none;
    background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 16px;
}

.bong-da.bong-da--ty-le-keo .bong-da__main {
    width: 100%;
    max-width: 1400px;
    margin: 0 auto;
    background: var(--bd-bg);
    border: 1px solid var(--bd-border);
    border-radius: var(--bd-radius);
    box-shadow: var(--bd-shadow);
    overflow: hidden;
}

.bong-da.bong-da--ty-le-keo .bong-da__header,
.bong-da.bong-da--ty-le-keo .bong-da__toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 14px 16px;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
}

.bong-da.bong-da--ty-le-keo .bong-da__header {
    border-bottom: 1px solid var(--bd-border);
}

.bong-da.bong-da--ty-le-keo .bong-da__toolbar {
    border-bottom: 1px solid var(--bd-border);
    background: var(--bd-soft);
}

.bong-da.bong-da--ty-le-keo .bong-da__tabs,
.bong-da.bong-da--ty-le-keo .bong-da__actions,
.bong-da.bong-da--ty-le-keo .bong-da__filters,
.bong-da.bong-da--ty-le-keo .bong-da__stats {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.bong-da.bong-da--ty-le-keo .bong-da__tabs {
    flex-wrap: wrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__actions {
    flex: 0 0 auto;
}

.bong-da.bong-da--ty-le-keo .bong-da__filters {
    flex: 1 1 auto;
}

.bong-da.bong-da--ty-le-keo .bong-da__stats {
    flex: 0 0 auto;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.bong-da.bong-da--ty-le-keo .bong-da__tab {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 36px;
    border: 1px solid var(--bd-border);
    border-radius: 999px;
    background: var(--bd-surface);
    color: var(--bd-muted);
    padding: 0 13px;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
    transition: background .18s ease, color .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease;
}

.bong-da.bong-da--ty-le-keo .bong-da__tab:hover {
    background: var(--bd-primary-soft);
    border-color: var(--bd-primary-border);
    color: var(--bd-primary);
}

.bong-da.bong-da--ty-le-keo .bong-da__tab.is-active {
    background: var(--bd-primary);
    border-color: var(--bd-primary);
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(37, 99, 235, .22);
}

.bong-da.bong-da--ty-le-keo .bong-da__live-dot {
    width: 8px;
    height: 8px;
    display: inline-block;
    border-radius: 999px;
    background: var(--bd-danger);
    animation: bd-live-pulse 1.4s infinite;
}

.bong-da.bong-da--ty-le-keo .bong-da__tab-badge {
    display: none;
    min-width: 18px;
    padding: 2px 6px;
    border-radius: 999px;
    background: var(--bd-primary-soft);
    color: var(--bd-primary);
    font-size: 10px;
    font-weight: 900;
    line-height: 1;
}

.bong-da.bong-da--ty-le-keo .bong-da__tab.is-active .bong-da__tab-badge {
    background: rgba(255,255,255,.22);
    color: #ffffff;
}

.bong-da.bong-da--ty-le-keo .bong-da__date,
.bong-da.bong-da--ty-le-keo .bong-da__select,
.bong-da.bong-da--ty-le-keo .bong-da__search-input {
    height: var(--bd-height);
    min-height: var(--bd-height);
    border: 1px solid var(--bd-border-strong);
    border-radius: var(--bd-radius-sm);
    background-color: #ffffff;
    color: var(--bd-text);
    padding: 0 12px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    transition: border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.bong-da.bong-da--ty-le-keo .bong-da__select {
    padding-right: 36px;
}

.bong-da.bong-da--ty-le-keo .bong-da__date:focus,
.bong-da.bong-da--ty-le-keo .bong-da__select:focus,
.bong-da.bong-da--ty-le-keo .bong-da__search-input:focus {
    border-color: var(--bd-primary);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, .12);
}

.bong-da.bong-da--ty-le-keo .bong-da__search {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    flex: 1 1 320px;
}

.bong-da.bong-da--ty-le-keo .bong-da__search-input {
    width: 100%;
    min-width: 180px;
    font-weight: 600;
}

.bong-da.bong-da--ty-le-keo .bong-da__select--competition {
    min-width: 210px;
    max-width: 300px;
}

.bong-da.bong-da--ty-le-keo .bong-da__select--bookmaker {
    width: 140px;
}

.bong-da.bong-da--ty-le-keo .bong-da__button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    min-height: var(--bd-height);
    border: 1px solid var(--bd-primary);
    border-radius: var(--bd-radius-sm);
    background: var(--bd-primary);
    color: #ffffff;
    padding: 0 13px;
    font-size: 13px;
    font-weight: 900;
    line-height: 1;
    transition: background .18s ease, border-color .18s ease, transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}

.bong-da.bong-da--ty-le-keo .bong-da__button:hover:not(:disabled) {
    background: var(--bd-primary-dark);
    border-color: var(--bd-primary-dark);
    transform: translateY(-1px);
    box-shadow: 0 8px 20px rgba(37, 99, 235, .22);
}

.bong-da.bong-da--ty-le-keo .bong-da__button:disabled,
.bong-da.bong-da--ty-le-keo .bong-da__button.is-loading {
    opacity: .55;
    cursor: not-allowed;
    pointer-events: none;
}

.bong-da.bong-da--ty-le-keo .bong-da__button--search {
    width: var(--bd-height);
    flex: 0 0 var(--bd-height);
    padding: 0;
}

.bong-da.bong-da--ty-le-keo .bong-da__button--load-more {
    width: 100%;
    min-height: 44px;
}

.bong-da.bong-da--ty-le-keo .bong-da__button.is-spinning .bong-da__button-icon {
    animation: bd-spin .75s linear infinite;
}

.bong-da.bong-da--ty-le-keo .bong-da__button.is-loading::after {
    content: "";
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,.35);
    border-top-color: #fff;
    border-radius: 999px;
    animation: bd-spin .65s linear infinite;
}

.bong-da.bong-da--ty-le-keo .bong-da__stat {
    display: inline-flex;
    align-items: baseline;
    gap: 4px;
    min-height: 34px;
    padding: 5px 9px;
    border: 1px solid var(--bd-primary-border);
    border-radius: var(--bd-radius-sm);
    background: var(--bd-primary-soft);
    white-space: nowrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__stat-value {
    color: var(--bd-primary);
    font-size: 17px;
    font-weight: 900;
    line-height: 1;
}

.bong-da.bong-da--ty-le-keo .bong-da__stat-label {
    color: var(--bd-muted);
    font-size: 12px;
    font-weight: 700;
}

.bong-da.bong-da--ty-le-keo .bong-da__toggle {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    min-height: 34px;
    border: 1px solid var(--bd-border);
    border-radius: var(--bd-radius-sm);
    background: var(--bd-surface);
    color: var(--bd-muted);
    padding: 0 10px;
    font-size: 12px;
    font-weight: 800;
    cursor: pointer;
    white-space: nowrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__toggle input {
    width: 14px;
    height: 14px;
    accent-color: var(--bd-primary);
}

.bong-da.bong-da--ty-le-keo .bong-da__update {
    display: none;
}

.bong-da.bong-da--ty-le-keo .bong-da__loading,
.bong-da.bong-da--ty-le-keo .bong-da__empty {
    margin: 16px;
    padding: 32px 18px;
    min-height: 240px;
    border: 1px dashed var(--bd-border-strong);
    border-radius: var(--bd-radius);
    background: var(--bd-soft);
    text-align: center;
}

.bong-da.bong-da--ty-le-keo .bong-da__loading {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 12px;
}

.bong-da.bong-da--ty-le-keo .bong-da__spinner {
    width: 34px;
    height: 34px;
    border-radius: 999px;
    border: 3px solid var(--bd-border);
    border-top-color: var(--bd-primary);
    animation: bd-spin .8s linear infinite;
}

.bong-da.bong-da--ty-le-keo .bong-da__loading-text,
.bong-da.bong-da--ty-le-keo .bong-da__empty-desc {
    margin: 0;
    color: var(--bd-muted);
    font-size: 13px;
    font-weight: 700;
}

.bong-da.bong-da--ty-le-keo .bong-da__empty-icon {
    font-size: 34px;
    line-height: 1;
    margin-bottom: 8px;
}

.bong-da.bong-da--ty-le-keo .bong-da__empty-title {
    margin-bottom: 4px;
    color: var(--bd-text);
    font-size: 16px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__content--matches {
    display: flex;
    flex-direction: column;
    gap: 10px;
    padding: 14px 16px 16px;
}

.bong-da.bong-da--ty-le-keo .bong-da__league {
    overflow: hidden;
    border: 1px solid var(--bd-border);
    border-radius: var(--bd-radius-sm);
    background: var(--bd-surface);
    box-shadow: var(--bd-shadow-soft);
}

.bong-da.bong-da--ty-le-keo .bong-da__league-header {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    min-height: 38px;
    border: 0;
    border-bottom: 1px solid var(--bd-border);
    background: var(--bd-soft);
    color: var(--bd-text);
    padding: 9px 12px;
}

.bong-da.bong-da--ty-le-keo .bong-da__league-info {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.bong-da.bong-da--ty-le-keo .bong-da__league-flag {
    width: 20px;
    height: 20px;
    object-fit: cover;
    flex: 0 0 20px;
    border-radius: 5px;
    border: 1px solid var(--bd-border);
    background: #fff;
}

.bong-da.bong-da--ty-le-keo .bong-da__league-country {
    color: var(--bd-muted);
    font-size: 12px;
    font-weight: 800;
    white-space: nowrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__league-name {
    min-width: 0;
    color: var(--bd-text);
    font-size: 13px;
    font-weight: 900;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__league-count {
    flex: 0 0 auto;
    border: 1px solid var(--bd-primary-border);
    border-radius: 999px;
    background: var(--bd-primary-soft);
    color: var(--bd-primary);
    padding: 3px 8px;
    font-size: 11px;
    font-weight: 900;
    white-space: nowrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__table {
    width: 100%;
    margin: 0;
    border: 0;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
    background: var(--bd-surface);
}

.bong-da.bong-da--ty-le-keo .bong-da__th,
.bong-da.bong-da--ty-le-keo .bong-da__table th {
    background: #f8fafc;
    color: var(--bd-muted);
    border: 0;
    border-bottom: 1px solid var(--bd-border);
    padding: 8px 6px;
    font-size: 12px;
    font-weight: 900;
    line-height: 1.2;
    text-align: center;
    white-space: nowrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__table td {
    border: 0;
    border-bottom: 1px solid var(--bd-border);
    padding: 7px 6px;
    color: var(--bd-text);
    font-size: 12px;
    line-height: 1.25;
    text-align: center;
    vertical-align: middle;
}

.bong-da.bong-da--ty-le-keo .bong-da__table tbody tr:last-child td {
    border-bottom: 0;
}

.bong-da.bong-da--ty-le-keo .bong-da__match-row.is-live {
    background: var(--bd-live-bg);
}

.bong-da.bong-da--ty-le-keo .bong-da__th--time {
    width: 82px;
}

.bong-da.bong-da--ty-le-keo .bong-da__th--teams {
    width: 210px;
}

.bong-da.bong-da--ty-le-keo .bong-da__th--score {
    width: 72px;
}

.bong-da.bong-da--ty-le-keo .bong-da__th--ft,
.bong-da.bong-da--ty-le-keo .bong-da__th--ht {
    width: 225px;
}

.bong-da.bong-da--ty-le-keo .bong-da__th--expand {
    width: 54px;
}

.bong-da.bong-da--ty-le-keo .bong-da__match-time {
    color: var(--bd-primary);
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__time-live {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 42px;
    min-height: 24px;
    border: 1px solid #86efac;
    border-radius: 8px;
    background: #dcfce7;
    color: #059669;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__time-sub {
    margin-top: 2px;
    color: var(--bd-muted);
    font-size: 11px;
    font-weight: 700;
}

.bong-da.bong-da--ty-le-keo .bong-da__blink {
    animation: bd-blink 1s ease-in-out infinite;
}

.bong-da.bong-da--ty-le-keo .bong-da__teams {
    text-align: left;
}

.bong-da.bong-da--ty-le-keo .bong-da__team {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
    padding: 2px 0;
}

.bong-da.bong-da--ty-le-keo .bong-da__team-logo {
    width: 21px;
    height: 21px;
    flex: 0 0 21px;
    object-fit: contain;
    border-radius: 999px;
    background: #ffffff;
}

.bong-da.bong-da--ty-le-keo .bong-da__team-name {
    flex: 1 1 auto;
    min-width: 0;
    overflow: hidden;
    color: var(--bd-text);
    font-size: 12px;
    font-weight: 800;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.bong-da.bong-da--ty-le-keo .bong-da__team-name.is-winner,
.bong-da.bong-da--ty-le-keo .bong-da__score-home.is-winner,
.bong-da.bong-da--ty-le-keo .bong-da__score-away.is-winner {
    color: var(--bd-success);
}

.bong-da.bong-da--ty-le-keo .bong-da__team-name.is-loser,
.bong-da.bong-da--ty-le-keo .bong-da__score-home.is-loser,
.bong-da.bong-da--ty-le-keo .bong-da__score-away.is-loser {
    color: var(--bd-muted);
}

.bong-da.bong-da--ty-le-keo .bong-da__team-cards {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    flex: 0 0 auto;
}

.bong-da.bong-da--ty-le-keo .bong-da__card {
    min-width: 12px;
    height: 14px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 3px;
    padding: 0 2px;
    font-size: 9px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__card--red {
    background: var(--bd-danger);
    color: #ffffff;
}

.bong-da.bong-da--ty-le-keo .bong-da__card--yellow {
    background: var(--bd-warning);
    color: #111827;
}

.bong-da.bong-da--ty-le-keo .bong-da__score-main {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
    color: var(--bd-text);
    font-size: 17px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__score-half {
    margin-top: 2px;
    color: var(--bd-muted);
    font-size: 10px;
    font-weight: 700;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    width: 100%;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-col {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-label,
.bong-da.bong-da--ty-le-keo .bong-da__mobile-odds-header {
    border-radius: 6px;
    background: var(--bd-soft-2);
    color: var(--bd-muted);
    padding: 3px 4px;
    font-size: 10px;
    font-weight: 900;
    text-align: center;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-row,
.bong-da.bong-da--ty-le-keo .bong-da__mobile-odds-item {
    min-height: 22px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 4px;
    border: 1px solid var(--bd-border);
    border-radius: 6px;
    background: #ffffff;
    padding: 3px 5px;
    line-height: 1;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-row.is-live,
.bong-da.bong-da--ty-le-keo .bong-da__mobile-odds-item.is-live {
    border-color: #fde68a;
    background: #fffbeb;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-handicap {
    color: var(--bd-primary);
    font-size: 10px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-value {
    color: var(--bd-text);
    font-size: 12px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-value.is-up {
    color: var(--bd-success);
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-value.is-down {
    color: var(--bd-danger);
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-1x2 {
    color: var(--bd-danger);
    font-size: 10px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__odds-empty,
.bong-da.bong-da--ty-le-keo .bong-da__odds-updating {
    color: var(--bd-muted);
    font-size: 12px;
    font-weight: 700;
}

.bong-da.bong-da--ty-le-keo .bong-da__load-more {
    padding: 0 16px 16px;
}

.bong-da.bong-da--ty-le-keo .bong-da__mobile-only {
    display: none;
}

.bong-da.bong-da--ty-le-keo .bong-da__desktop-only {
    display: table-cell;
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 34px;
    height: 30px;
    border: 1px solid var(--bd-primary);
    border-radius: 8px;
    background: var(--bd-primary);
    color: #ffffff;
    font-size: 12px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-icon {
    transition: transform .18s ease;
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-icon.is-expanded {
    transform: rotate(180deg);
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-row {
    background: var(--bd-soft);
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-row > td {
    padding: 8px !important;
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-section {
    border: 1px solid var(--bd-border);
    border-radius: var(--bd-radius-sm);
    background: #ffffff;
    padding: 8px;
}

.bong-da.bong-da--ty-le-keo .bong-da__expand-label {
    margin-bottom: 6px;
    color: var(--bd-text);
    font-size: 12px;
    font-weight: 900;
}

.bong-da.bong-da--ty-le-keo .bong-da__mobile-odds {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 6px;
}

.bong-da.bong-da--ty-le-keo .bong-da__mobile-odds-col {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

@keyframes bd-spin {
    to {
        transform: rotate(360deg);
    }
}

@keyframes bd-live-pulse {
    0%, 100% {
        transform: scale(1);
        box-shadow: 0 0 0 0 rgba(239, 68, 68, .55);
    }
    50% {
        transform: scale(1.2);
        box-shadow: 0 0 0 5px rgba(239, 68, 68, 0);
    }
}

@keyframes bd-blink {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: .35;
    }
}

@media (max-width: 1024px) {
    .bong-da.bong-da--ty-le-keo .bong-da__header,
    .bong-da.bong-da--ty-le-keo .bong-da__toolbar {
        align-items: stretch;
        flex-direction: column;
        gap: 10px;
        padding: 12px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__tabs,
    .bong-da.bong-da--ty-le-keo .bong-da__actions,
    .bong-da.bong-da--ty-le-keo .bong-da__filters,
    .bong-da.bong-da--ty-le-keo .bong-da__stats {
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__tabs {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 6px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__tab {
        width: 100%;
        padding: 0 8px;
        font-size: 12px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) auto;
        gap: 8px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__date,
    .bong-da.bong-da--ty-le-keo .bong-da__select--bookmaker {
        width: 100%;
        min-width: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__filters {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 8px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__search {
        width: 100%;
        min-width: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__search-input {
        min-width: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__select--competition {
        width: 100%;
        max-width: none;
        min-width: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__stats {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 8px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__stat,
    .bong-da.bong-da--ty-le-keo .bong-da__toggle {
        justify-content: center;
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__desktop-only {
        display: none;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__mobile-only {
        display: table-cell;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__content--matches {
        padding: 10px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__league-header {
        padding: 8px 10px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__league-country {
        display: none;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table {
        table-layout: fixed;
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__th--time {
        width: 48px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__th--teams {
        width: auto;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__th--score {
        width: 48px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__th--expand {
        width: 48px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__th,
    .bong-da.bong-da--ty-le-keo .bong-da__table td {
        padding: 6px 4px;
        font-size: 11px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-logo {
        width: 18px;
        height: 18px;
        flex-basis: 18px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-name {
        font-size: 11px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__score-main {
        font-size: 14px;
    }
}

@media (max-width: 640px) {
    .bong-da.bong-da--ty-le-keo {
        --bd-mobile-gap: 8px;
        --bd-mobile-radius: 14px;
        --bd-mobile-control-h: 42px;
        width: 100%;
        max-width: 100%;
        overflow-x: hidden;
        background: #f8fafc;
        font-size: 12px;
    }

    .bong-da.bong-da--ty-le-keo,
    .bong-da.bong-da--ty-le-keo * {
        max-width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__main {
        width: 100%;
        border-radius: 16px;
        overflow: hidden;
        border: 1px solid #e2e8f0;
        box-shadow: 0 6px 22px rgba(15, 23, 42, .08);
    }

    .bong-da.bong-da--ty-le-keo .bong-da__header,
    .bong-da.bong-da--ty-le-keo .bong-da__toolbar {
        display: block;
        padding: 10px;
        border-bottom: 1px solid #e2e8f0;
        background: #f8fafc;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__tabs {
        display: grid;
        grid-template-columns: repeat(4, minmax(0, 1fr));
        gap: 6px;
        width: 100%;
        margin: 0 0 8px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__tab {
        width: 100%;
        height: 38px;
        min-height: 38px;
        padding: 0 4px;
        border-radius: 12px;
        border: 1px solid #dbe3ee;
        background: #ffffff;
        color: #475569;
        font-size: 11px;
        font-weight: 900;
        line-height: 1;
        text-align: center;
        white-space: nowrap;
        box-shadow: none;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__tab.is-active {
        background: #2563eb;
        border-color: #2563eb;
        color: #ffffff;
        box-shadow: 0 6px 14px rgba(37, 99, 235, .22);
    }

    .bong-da.bong-da--ty-le-keo .bong-da__live-dot {
        width: 6px;
        height: 6px;
        flex: 0 0 6px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__tab-badge {
        display: none !important;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__actions {
        display: grid;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 44px;
        gap: 8px;
        width: 100%;
        margin: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__date,
    .bong-da.bong-da--ty-le-keo .bong-da__select,
    .bong-da.bong-da--ty-le-keo .bong-da__search-input,
    .bong-da.bong-da--ty-le-keo .bong-da__button {
        height: var(--bd-mobile-control-h);
        min-height: var(--bd-mobile-control-h);
        border-radius: 13px;
        font-size: 12px;
        font-weight: 900;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__date,
    .bong-da.bong-da--ty-le-keo .bong-da__select,
    .bong-da.bong-da--ty-le-keo .bong-da__search-input {
        width: 100%;
        min-width: 0;
        border: 1px solid #cbd5e1;
        background-color: #ffffff;
        padding: 0 12px;
        color: #0f172a;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__select {
        padding-right: 30px;
        background-position: right 9px center;
        background-size: 14px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__button {
        border: 0;
        background: #2563eb;
        color: #ffffff;
        padding: 0 10px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__button--refresh {
        width: 44px;
        padding: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__button--refresh span:not(.bong-da__button-icon) {
        display: none !important;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__toolbar {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__filters {
        display: grid;
        grid-template-columns: 1fr 44px;
        gap: 8px;
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__search {
        display: contents;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__button--search {
        width: 44px;
        padding: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__select--competition {
        grid-column: 1 / -1;
        width: 100%;
        max-width: none;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__stats {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 8px;
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__stat {
        display: flex;
        justify-content: center;
        align-items: center;
        min-height: 36px;
        border-radius: 13px;
        border: 1px solid #bfdbfe;
        background: #eff6ff;
        padding: 5px 8px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__stat-value {
        font-size: 17px;
        line-height: 1;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__stat-label {
        display: inline;
        font-size: 10px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__toggle {
        grid-column: 1 / -1;
        justify-content: center;
        min-height: 36px;
        border-radius: 13px;
        background: #ffffff;
        border: 1px solid #e2e8f0;
        color: #475569;
        font-size: 12px;
        font-weight: 900;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__content--matches {
        display: flex;
        flex-direction: column;
        gap: 10px;
        padding: 10px;
        background: #ffffff;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__league-header {
        min-height: 42px;
        padding: 0 12px;
        background: #ffffff;
        border: 0;
        border-bottom: 1px solid #e2e8f0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__league-info {
        width: 100%;
        min-width: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__league-flag,
    .bong-da.bong-da--ty-le-keo .bong-da__league-country,
    .bong-da.bong-da--ty-le-keo .bong-da__league-count {
        display: none !important;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__league-name {
        font-size: 15px;
        font-weight: 950;
        color: #0f172a;
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table {
        display: block;
        width: 100%;
        min-width: 0;
        table-layout: auto;
        border: 0;
        background: #ffffff;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table thead,
    .bong-da.bong-da--ty-le-keo .bong-da__table tbody,
    .bong-da.bong-da--ty-le-keo .bong-da__table tr {
        display: block;
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table thead tr {
        display: grid;
        grid-template-columns: 54px minmax(0, 1fr) 54px 46px;
        background: #f8fafc;
        border-bottom: 1px solid #e2e8f0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__th,
    .bong-da.bong-da--ty-le-keo .bong-da__table th {
        display: flex;
        align-items: center;
        justify-content: center;
        min-height: 32px;
        padding: 0 4px;
        border: 0;
        background: transparent;
        color: #64748b;
        font-size: 11px;
        font-weight: 950;
        text-align: center;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table tbody tr.bong-da__match-row {
        display: grid;
        grid-template-columns: 54px minmax(0, 1fr) 54px 46px;
        align-items: stretch;
        width: 100%;
        min-height: 72px;
        border-bottom: 1px solid #e2e8f0;
        background: #ffffff;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table tbody tr.bong-da__match-row.is-live {
        background: #fffbeb;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table td {
        display: flex;
        align-items: center;
        justify-content: center;
        min-width: 0;
        min-height: 72px;
        border: 0;
        padding: 6px 4px;
        font-size: 11px;
        text-align: center;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__desktop-only {
        display: none !important;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__mobile-only {
        display: flex !important;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__match-time {
        min-width: 0;
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__time-live {
        min-width: 38px;
        min-height: 28px;
        border-radius: 10px;
        background: #dcfce7;
        border: 1px solid #86efac;
        color: #059669;
        font-size: 12px;
        font-weight: 950;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__time-sub {
        display: none;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__teams {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
        min-width: 0;
        text-align: left;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team {
        display: grid;
        grid-template-columns: 18px minmax(0, 1fr) auto;
        align-items: center;
        gap: 5px;
        min-height: 26px;
        padding: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-logo {
        width: 18px;
        height: 18px;
        flex: 0 0 18px;
        object-fit: contain;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-name {
        min-width: 0;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        color: #0f172a;
        font-size: 13px;
        font-weight: 950;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-name.is-winner {
        color: #10b981;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-name.is-loser {
        color: #64748b;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-cards {
        display: inline-flex;
        gap: 2px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__card {
        min-width: 14px;
        height: 16px;
        border-radius: 4px;
        font-size: 9px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__score {
        min-width: 0;
        font-weight: 950;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__score-main {
        gap: 3px;
        color: #0f172a;
        font-size: 18px;
        font-weight: 950;
        white-space: nowrap;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__score-home,
    .bong-da.bong-da--ty-le-keo .bong-da__score-away {
        font-size: 18px;
        font-weight: 950;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__score-half {
        display: none;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-cell {
        min-height: 72px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-button {
        width: 38px;
        height: 38px;
        min-width: 38px;
        border-radius: 12px;
        background: #2563eb;
        color: #ffffff;
        font-size: 13px;
        border: 0;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-row {
        display: block !important;
        width: 100%;
        background: #ffffff;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-row[style*="display: none"] {
        display: none !important;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-row > td {
        display: block;
        width: 100%;
        min-height: 0;
        padding: 8px 10px 10px !important;
        border: 0;
        border-bottom: 1px solid #e2e8f0;
        background: #ffffff;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-content {
        display: grid;
        grid-template-columns: 1fr;
        gap: 8px;
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-section {
        width: 100%;
        border: 1px solid #e2e8f0;
        border-radius: 14px;
        background: #f8fafc;
        padding: 8px;
        overflow: hidden;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__expand-label {
        margin: 0 0 6px;
        color: #0f172a;
        font-size: 13px;
        font-weight: 950;
        text-align: center;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__mobile-odds {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 6px;
        width: 100%;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__mobile-odds-col {
        min-width: 0;
        display: flex;
        flex-direction: column;
        gap: 4px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__mobile-odds-header {
        min-height: 26px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 9px;
        background: #e2e8f0;
        color: #475569;
        padding: 0 3px;
        font-size: 11px;
        font-weight: 950;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__mobile-odds-item {
        min-height: 26px;
        display: grid;
        grid-template-columns: minmax(0, 1fr) auto;
        align-items: center;
        gap: 4px;
        border: 1px solid #fde68a;
        border-radius: 8px;
        background: #fffbeb;
        padding: 3px 5px;
        font-size: 11px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__odds-handicap,
    .bong-da.bong-da--ty-le-keo .bong-da__odds-1x2 {
        min-width: 0;
        color: #2563eb;
        font-size: 11px;
        font-weight: 950;
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__odds-value {
        color: #0f172a;
        font-size: 12px;
        font-weight: 950;
        text-align: right;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__odds-value.is-up {
        color: #10b981;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__odds-value.is-down {
        color: #ef4444;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__loading,
    .bong-da.bong-da--ty-le-keo .bong-da__empty {
        margin: 10px;
        min-height: 180px;
        padding: 24px 12px;
        border-radius: 14px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__load-more {
        padding: 0 10px 10px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__button--load-more {
        min-height: 40px;
        border-radius: 13px;
    }
}

@media (max-width: 390px) {
    .bong-da.bong-da--ty-le-keo .bong-da__tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bong-da.bong-da--ty-le-keo .bong-da__actions {
        grid-template-columns: 1fr 1fr 40px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__table thead tr,
    .bong-da.bong-da--ty-le-keo .bong-da__table tbody tr.bong-da__match-row {
        grid-template-columns: 48px minmax(0, 1fr) 48px 42px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__team-name {
        font-size: 12px;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__score-main,
    .bong-da.bong-da--ty-le-keo .bong-da__score-home,
    .bong-da.bong-da--ty-le-keo .bong-da__score-away {
        font-size: 16px;
    }
}

@media (max-width: 420px) {
    .bong-da.bong-da--ty-le-keo .bong-da__tabs {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bong-da.bong-da--ty-le-keo .bong-da__stats {
        grid-template-columns: 1fr 1fr;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__toggle {
        grid-column: 1 / -1;
    }

    .bong-da.bong-da--ty-le-keo .bong-da__mobile-odds {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}