:root {
    --xoso-ink: #000;
    --xoso-muted: #000;
    --xoso-paper: #fff;
    --xoso-line: #000;
    --xoso-line-strong: #000;
    --xoso-surface: #fff;
    --xoso-red: #b40000;
    --xoso-gold: #d6a72e;
    --xoso-green: #176b55;
}

* { box-sizing: border-box; }
body.xoso-page { margin: 0; color: var(--xoso-ink); background: repeating-linear-gradient(0deg, #f2eee5 0, #f2eee5 23px, #e9e3d7 24px); font-family: Georgia, "Times New Roman", serif; }
.xoso-main { width: min(100% - 32px, 980px); margin: 34px auto 64px; }
.xoso-widget { width: 100%; margin: 0 auto 34px; color: var(--xoso-ink); font-family: inherit; }
.xoso-heading { display: flex; align-items: end; justify-content: space-between; gap: 24px; padding-bottom: 16px; }
.xoso-heading h2 { margin: 0; color: var(--xoso-ink); font-size: clamp(28px, 5vw, 48px); line-height: 1; }
.xoso-heading label { color: var(--xoso-muted); font-size: 13px; font-weight: 700; line-height: 1.4; text-transform: uppercase; }
.xoso-date-control { position: relative; display: block; width: 190px; margin-top: 5px; }
.xoso-heading .xoso-date-display { display: block; width: 100%; height: 44px; margin: 0; padding: 0 48px 0 10px; border: 1px solid var(--xoso-line-strong); border-radius: 6px; background: var(--xoso-paper); color: var(--xoso-ink); font-family: inherit; font-size: 16px; font-weight: 700; line-height: 44px; }
.xoso-date-control:hover .xoso-date-display, .xoso-date-control:focus-within .xoso-date-display, .xoso-date-control.is-open .xoso-date-display { border-color: var(--xoso-green); box-shadow: 0 0 0 2px rgba(23, 107, 85, .14); outline: 0; }
.xoso-date-icon { position: absolute; z-index: 3; top: 50%; right: 10px; width: 25px; min-width: 25px; height: 25px; min-height: 25px; margin: 0; padding: 0; border: 0; border-radius: 3px; background: transparent; color: #000; box-shadow: none; transform: translateY(-50%); cursor: pointer; }
.xoso-date-icon::after { position: absolute; top: 6px; left: 5px; width: 15px; height: 14px; border: 2px solid currentColor; border-radius: 2px; content: ""; }
.xoso-date-icon::before { position: absolute; z-index: 1; top: 10px; left: 7px; width: 11px; border-top: 2px solid currentColor; content: ""; }
.xoso-date-icon:hover, .xoso-date-icon:focus, .xoso-date-control:hover .xoso-date-icon, .xoso-date-control:focus-within .xoso-date-icon, .xoso-date-control.is-open .xoso-date-icon { background: #eef4f2; color: var(--xoso-green); box-shadow: none; }
.xoso-heading input.xoso-date { position: absolute; z-index: 0; top: 0; right: 0; width: 1px; min-width: 0; height: 1px; margin: 0; padding: 0; border: 0; opacity: 0; pointer-events: none; }
.xoso-weekdays { display: grid; overflow-x: auto; grid-template-columns: repeat(7, minmax(68px, 1fr)); gap: 6px; margin: 16px 0 24px; border: 0; border-radius: 0; background: transparent; scrollbar-width: thin; }
.xoso-weekdays button { position: relative; min-height: 40px; padding: 7px 6px; border: 0; border-radius: 6px; background: #f3f4f6; color: var(--xoso-ink); font-family: inherit; font-size: 12px; font-weight: 700; cursor: pointer; transition: color .18s ease, background-color .18s ease; }
.xoso-weekdays button:hover { color: var(--xoso-green); background: #f2f7f5; }
.xoso-weekdays button[aria-selected="true"] { color: #fff; background: var(--xoso-green); box-shadow: inset 0 -3px 0 #0d4e3d; }
.xoso-weekdays button[aria-selected="true"]:hover { color: #fff; background: var(--xoso-green); }
.xoso-weekdays button:focus-visible { z-index: 1; outline: 2px solid var(--xoso-green); outline-offset: -2px; }
.xoso-lookup { width: 100%; margin: 0 0 24px; padding: 14px; border: 1px solid var(--xoso-line); border-radius: 6px; background: #fff; color: #000; font-family: inherit; }
.xoso-lookup h3 { margin: 0 0 12px; font-size: 18px; }
.xoso-lookup--standalone { overflow: hidden; padding: 0; border-color: #111; box-shadow: 0 6px 20px rgba(0, 0, 0, .08); }
.xoso-lookup__header { padding: 7px 12px; border-bottom: 1px solid #760000; background: linear-gradient(#d83d3d, #a90000); }
.xoso-lookup--standalone .xoso-lookup__header h2 { margin: 0; color: #fff; font-size: 16px; font-weight: 700; line-height: 1.35; }
.xoso-lookup__types { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; padding: 12px 14px; border-bottom: 1px solid #d8d8d8; background: #f3f4f6; }
.xoso-lookup__types button { min-height: 42px; margin: 0; padding: 8px 10px; border: 1px solid #c7cbd0; border-radius: 5px; background: #fff; color: #111; font-family: inherit; font-size: 14px; font-weight: 700; line-height: 1.2; cursor: pointer; }
.xoso-lookup__types button:hover { border-color: var(--xoso-green); color: var(--xoso-green); }
.xoso-lookup__types button[aria-pressed="true"] { border-color: var(--xoso-green); background: var(--xoso-green); color: #fff; box-shadow: inset 0 -3px 0 #0d4e3d; }
.xoso-lookup__types button:focus-visible { outline: 2px solid #111; outline-offset: 2px; }
.xoso-lookup__details { padding: 14px; background: #fff; }
.xoso-lookup__details[hidden] { display: none; }
.xoso-lookup__fields { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: end; gap: 12px; }
.xoso-lookup label { display: block; width: 100%; min-width: 0; margin: 0; color: #000; font-size: 13px; font-weight: 700; line-height: 1.4; text-transform: uppercase; }
.xoso-lookup input.xoso-lookup__number, .xoso-lookup select.xoso-lookup__target, .xoso-lookup input.xoso-lookup__date-display { display: block; width: 100%; min-width: 0; height: 44px !important; min-height: 44px; margin: 5px 0 0 !important; padding: 0 12px; border: 1px solid #aeb4ba; border-radius: 6px; background: #fff; color: #000; box-shadow: none; font-family: inherit; font-size: 15px; font-weight: 600; line-height: 42px; }
.xoso-lookup input.xoso-lookup__number:focus, .xoso-lookup select.xoso-lookup__target:focus, .xoso-lookup input.xoso-lookup__date-display:focus { border-color: var(--xoso-green); box-shadow: 0 0 0 2px rgba(23, 107, 85, .14); outline: 0; }
.xoso-lookup input.xoso-lookup__date-display { padding-right: 48px; }
.xoso-lookup__target:disabled { color: #666; background: #f3f4f6; }
.xoso-lookup__date-control { display: block; width: 100%; margin-top: 0; }
.xoso-lookup input.xoso-lookup__date { position: absolute; z-index: 0; top: 5px; right: 0; width: 1px; min-width: 0; height: 1px; margin: 0; padding: 0; border: 0; opacity: 0; pointer-events: none; }
.flatpickr-calendar { font-family: inherit; }
.flatpickr-months .flatpickr-month { height: 38px; }
.flatpickr-current-month { display: flex; align-items: center; justify-content: center; gap: 6px; }
.flatpickr-current-month .flatpickr-monthDropdown-months, .flatpickr-current-month .xoso-year-select { height: 32px !important; margin: 0 !important; padding: 0 28px 0 10px !important; border: 1px solid #d8dde3 !important; border-radius: 5px !important; background-color: #f7f8f9 !important; background-image: linear-gradient(45deg, transparent 50%, #333 50%), linear-gradient(135deg, #333 50%, transparent 50%) !important; background-position: calc(100% - 12px) 13px, calc(100% - 8px) 13px !important; background-repeat: no-repeat !important; background-size: 4px 4px, 4px 4px !important; color: #171717 !important; box-shadow: none !important; font: inherit; font-size: 16px; line-height: 30px; cursor: pointer; appearance: none; }
.flatpickr-current-month .flatpickr-monthDropdown-months { width: 136px; max-width: 136px; }
.flatpickr-current-month .xoso-year-select { width: 86px; }
.flatpickr-current-month .flatpickr-monthDropdown-months:hover, .flatpickr-current-month .flatpickr-monthDropdown-months:focus, .flatpickr-current-month .xoso-year-select:hover, .flatpickr-current-month .xoso-year-select:focus { border-color: #d8dde3 !important; background-color: #f7f8f9 !important; background-image: linear-gradient(45deg, transparent 50%, #333 50%), linear-gradient(135deg, #333 50%, transparent 50%) !important; background-position: calc(100% - 12px) 13px, calc(100% - 8px) 13px !important; background-repeat: no-repeat !important; background-size: 4px 4px, 4px 4px !important; box-shadow: none !important; outline: 0; }
.flatpickr-current-month .flatpickr-monthDropdown-months option, .flatpickr-current-month .xoso-year-select option { background: #fff; color: #171717; }
.flatpickr-current-month .numInputWrapper { display: none !important; }
.xoso-calendar-actions { display: flex; justify-content: flex-end; padding: 10px 12px; border-top: 1px solid #e5e7eb; background: #fafafa; }
.xoso-calendar-reset { min-height: 34px; margin: 0; padding: 6px 14px; border: 1px solid var(--xoso-green); border-radius: 5px; background: var(--xoso-green); color: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .12); font: inherit; font-size: 13px; font-weight: 700; letter-spacing: 0; cursor: pointer; transition: background-color .15s ease, box-shadow .15s ease, transform .15s ease; }
.xoso-calendar-reset:hover, .xoso-calendar-reset:focus-visible { border-color: #0d4e3d; background: #0d4e3d; box-shadow: 0 2px 5px rgba(0, 0, 0, .18); outline: 0; }
.xoso-calendar-reset:active { box-shadow: none; transform: translateY(1px); }
.xoso-lookup__submit { grid-column: 1 / -1; justify-self: end; width: 180px; height: 44px; margin: 2px 0 0; padding: 0 20px; border: 0; border-radius: 6px; background: var(--xoso-green); color: #fff; font-family: inherit; font-size: 14px; font-weight: 700; cursor: pointer; }
.xoso-lookup__submit:disabled { opacity: .55; cursor: wait; }
.xoso-lookup__result { display: none; margin-top: 12px; padding: 11px 12px; border-left: 3px solid var(--xoso-green); background: #f3f4f6; color: #000; font-size: 13px; line-height: 1.5; }
.xoso-lookup__result:not(:empty) { display: block; }
.xoso-lookup__result-title { margin-bottom: 8px; font-size: 14px; font-weight: 700; }
.xoso-lookup__result ul { display: grid; gap: 6px; margin: 0; padding: 0; list-style: none; }
.xoso-lookup__result li { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); align-items: center; gap: 10px; padding: 8px 10px; border: 1px solid #cfd8d4; border-radius: 4px; background: #fff; }
.xoso-lookup__result li span { min-width: 0; overflow-wrap: anywhere; }
.xoso-lookup__result li span:nth-child(2) { text-align: center; }
.xoso-lookup__result li strong { color: var(--xoso-red); font-size: 20px; letter-spacing: 0; text-align: right; }
.xoso-status { min-height: 22px; color: var(--xoso-muted); font-family: inherit; font-size: 14px; }
.xoso-status:empty { display: none; }
.xoso-board { overflow: hidden; margin-bottom: 18px; border: 1px solid var(--xoso-line); border-radius: 6px; background: #fff; box-shadow: none; }
.xoso-board__header { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 14px 18px; border-bottom: 1px solid var(--xoso-line); }
.xoso-board__title { display: flex; align-items: baseline; flex-wrap: wrap; gap: 6px 14px; }
.xoso-board__title h3 { margin: 0; color: var(--xoso-ink); font-size: 21px; text-transform: capitalize; }
.xoso-board__title time { color: var(--xoso-muted); font-size: 13px; font-weight: 700; }
.xoso-board__header span { color: var(--xoso-muted); font-size: 13px; font-weight: 700; }
.xoso-prize { display: grid; grid-template-columns: 145px 1fr; min-height: 65px; border-bottom: 1px solid var(--xoso-line); }
.xoso-prize:last-child { border-bottom: 0; }
.xoso-prize__name { display: flex; align-items: center; padding: 12px 16px; border-right: 1px solid var(--xoso-line); color: var(--xoso-muted); font-size: 14px; font-weight: 700; }
.xoso-prize__numbers { display: flex; min-width: 0; overflow: hidden; flex-wrap: wrap; align-items: center; justify-content: center; gap: 8px 26px; padding: 10px 16px; }
.xoso-prize__numbers strong { max-width: 100%; overflow: hidden; font-family: inherit; font-size: 28px; font-weight: 700; line-height: 1.25; letter-spacing: 0; white-space: nowrap; }
.xoso-prize[data-prize="giaidb"] .xoso-prize__numbers strong { color: var(--xoso-red); font-size: 38px; }
.xoso-electronic { overflow: hidden; margin-bottom: 20px; border: 1px solid var(--xoso-line); border-radius: 6px; background: #fff; color: #000; box-shadow: none; }
.xoso-electronic__header { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 8px 12px; border-bottom: 1px solid #760000; background: linear-gradient(#d83d3d, #a90000); }
.xoso-electronic__header h3 { margin: 0; color: #fff; font-size: 16px; text-transform: uppercase; }
.xoso-electronic__header span { flex: 0 0 auto; color: #fff; font-size: 13px; font-weight: 700; white-space: nowrap; }
.xoso-electronic__product { padding: 14px 16px 12px; border-bottom: 1px solid var(--xoso-line); background: var(--xoso-surface); }
.xoso-electronic__product:last-child { border-bottom: 0; }
.xoso-electronic__meta { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-bottom: 12px; }
.xoso-electronic__meta > strong { min-width: 0; overflow-wrap: anywhere; font-size: 14px; }
.xoso-electronic__meta span { white-space: nowrap; font-size: 13px; }
.xoso-electronic__balls { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; }
.xoso-electronic__balls.is-than-tai-4 { gap: 18px; }
.xoso-electronic__prizes { margin-top: 6px; }
.xoso-electronic-prize-list { display: grid; gap: 8px; }
.xoso-electronic-prize-list__head, .xoso-electronic-prize-list__row { display: grid; grid-template-columns: 1.1fr 1fr .9fr .95fr; gap: 10px; }
.xoso-electronic-prize-list { gap: 0; border-top: 0; }
.xoso-electronic-prize-list__head { padding: 0 0 4px; color: #111; font-size: 10px; font-weight: 400; letter-spacing: 0; text-transform: uppercase; }
.xoso-electronic-prize-list__row { padding: 8px 0; border-right: 0; border-bottom: 1px solid #d6d6d6; border-left: 0; border-top: 0; border-radius: 0; background: transparent; align-items: center; }
.xoso-electronic-prize-list__cell { min-width: 0; display: grid; gap: 1px; color: #111; font-size: 12px; line-height: 1.2; }
.xoso-electronic-prize-list__cell.is-winners, .xoso-electronic-prize-list__cell.is-value { justify-items: center; text-align: center; }
.xoso-electronic-prize-list__cell.is-tier strong { font-size: 15px; line-height: 1.1; font-weight: 700; }
.xoso-electronic-prize-list__cell.is-match { justify-items: start; }
.xoso-electronic-prize-list__label { display: none; color: #666; font-size: 10px; font-weight: 700; letter-spacing: 0; text-transform: uppercase; }
.xoso-electronic-prize-list__value { font-size: 12px; font-weight: 700; }
.xoso-electronic-prize-list__empty { color: #666; }
.xoso-electronic-prize-list__match-text { display: inline-block; }
.xoso-electronic-prize-match { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; min-height: 16px; }
.xoso-electronic-prize-ball { display: inline-block; width: 13px; height: 13px; border: 1px solid #111; border-radius: 50%; background: #fff; box-shadow: none; }
.xoso-electronic-prize-ball.is-special { border-color: #d75467; background: radial-gradient(circle at 30% 28%, #ffe2e5 0, #ffbdc6 34%, #f06a79 72%, #dc4256 100%); }
.xoso-electronic-prize-placeholder { display: inline-flex; align-items: center; justify-content: center; width: min(100%, 88px); height: 14px; vertical-align: middle; }
.xoso-electronic-prize-placeholder::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #d9d3c6; box-shadow: -14px 0 0 #ece7db, 14px 0 0 #ece7db; animation: xoso-live-dots 1.15s ease-in-out infinite; }
.xoso-electronic__ball, .xoso-electronic__balls strong { display: grid; overflow: hidden; place-items: center; width: 58px; height: 58px; border: 1px solid #d7dbe0; border-radius: 50%; background: linear-gradient(145deg, #fff 10%, #f0f1f3 58%, #d9dce0 100%); color: #000; box-shadow: inset 0 1px 0 #fff; font-family: inherit; font-size: 25px; font-weight: 700; line-height: 1; white-space: nowrap; }
.xoso-electronic__ball.is-power-special { border-color: #e7aab0; background: radial-gradient(circle at 30% 28%, #ffe2e5 0, #ffbdc6 34%, #f06a79 72%, #dc4256 100%); color: #000; }
.xoso-electronic__product[data-product="123"] .xoso-electronic__balls strong:nth-child(1), .xoso-electronic__product[data-product="123"] .xoso-electronic__balls strong:nth-child(3) { margin-right: 22px; }
.xoso-empty { padding: 44px 20px; border: 1px solid var(--xoso-line); border-radius: 6px; background: var(--xoso-surface); color: #000; font-family: inherit; text-align: center; }
.xoso-waiting { display: grid; justify-items: center; gap: 8px; padding: 42px 20px; border: 1px solid var(--xoso-line); border-radius: 6px; background: var(--xoso-surface); color: #000; text-align: center; }
.xoso-waiting strong { font-size: 18px; }
.xoso-waiting small { color: var(--xoso-muted); }
.xoso-waiting__dots { display: flex; gap: 6px; }
.xoso-waiting__dots i { width: 8px; height: 8px; border-radius: 50%; background: var(--xoso-red); animation: xoso-waiting 1.2s ease-in-out infinite; }
.xoso-waiting__dots i:nth-child(2) { animation-delay: .15s; }
.xoso-waiting__dots i:nth-child(3) { animation-delay: .3s; }
@keyframes xoso-waiting { 0%, 60%, 100% { opacity: .3; transform: translateY(0); } 30% { opacity: 1; transform: translateY(-4px); } }
.xoso-result-group { overflow: hidden; margin: 0 0 24px; border: 1px solid var(--xoso-line); border-radius: 6px; background: #fff; }
.xoso-result-group > .xoso-table-section, .xoso-result-group > .xoso-lotto { margin: 0 !important; border: 0; border-radius: 0; }
.xoso-result-group > .xoso-lotto { border-top: 0; }
.xoso-result-group > .xoso-lotto h3 { margin-top: -1px; border-top: 0; border-right: 0; border-left: 0; }
.xoso-table-section { overflow: hidden; margin-bottom: 0; border: 1px solid var(--xoso-line); border-radius: 6px; background: #fff; color: #000; box-shadow: none; }
.xoso-table-title { padding: 7px 12px; border-bottom: 1px solid #760000; background: linear-gradient(#d83d3d, #a90000); color: #fff; font-size: 14px; font-weight: 700; line-height: 1.35; text-align: left; text-transform: uppercase; }
.xoso-table-scroll { width: 100%; overflow-x: auto; }
.xoso-result-table, .xoso-lotto table { width: 100%; max-width: 100%; margin: 0 !important; border-collapse: collapse; border-spacing: 0; table-layout: fixed; }
.xoso-result-table th, .xoso-result-table td, .xoso-lotto th, .xoso-lotto td { min-width: 0; overflow: hidden; padding: 7px 8px; border: 1px solid var(--xoso-line); background: var(--xoso-surface); color: #000; text-align: center; vertical-align: middle; }
.xoso-result-group .xoso-result-table tr > :first-child, .xoso-result-group .xoso-lotto tr > :first-child { border-left: 0; }
.xoso-result-group .xoso-result-table tr > :last-child, .xoso-result-group .xoso-lotto tr > :last-child { border-right: 0; }
.xoso-result-group .xoso-result-table thead:first-child tr:first-child > th { border-top: 0; }
.xoso-result-group .xoso-lotto tbody:last-child tr:last-child > * { border-bottom: 0; }
.xoso-result-table tbody th, .xoso-result-table tbody td, .xoso-lotto tbody th, .xoso-lotto tbody td, .xoso-electronic__product { background: var(--xoso-surface) !important; }
.xoso-result-table thead th, .xoso-lotto thead th { overflow-wrap: anywhere; border-color: var(--xoso-line-strong); background: #fff; color: #003dc1; font-size: 12px; font-weight: 700; line-height: 1.3; text-transform: none; }
.xoso-result-table thead th small { display: block; margin-top: 4px; color: #111; font-size: 11px; font-weight: 400; text-transform: none; }
.xoso-live-header-placeholder { display: inline-flex; align-items: center; justify-content: center; width: 34px; height: 10px; vertical-align: middle; }
.xoso-live-header-placeholder.is-symbols { width: 42px; }
.xoso-live-header-placeholder::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #d9d3c6; box-shadow: -10px 0 0 #ece7db, 10px 0 0 #ece7db; animation: xoso-live-dots 1.15s ease-in-out infinite; }
.xoso-special-symbols { display: inline-flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 0; }
.xoso-special-symbol { color: #111; }
.xoso-special-symbol-separator { margin: 0 2px; color: #666; }
.xoso-result-table thead th:first-child, .xoso-result-table tbody th { width: 72px; }
.xoso-result-table tbody th, .xoso-lotto tbody th { color: #111; font-size: 12px; font-style: normal; font-weight: 400; line-height: 1.3; }
.xoso-number-list { min-width: 0; overflow: hidden; }
.xoso-result-table td strong { display: block; max-width: 100%; overflow: hidden; margin: 3px 0; font-family: inherit; font-size: 20px; font-weight: 700; line-height: 1.2; letter-spacing: 0; white-space: nowrap; }
.xoso-result-table.is-north .xoso-number-list { display: grid; align-items: center; }
.xoso-result-table.is-north tr[data-prize="giai7"] .xoso-number-list strong { color: var(--xoso-red); }
.xoso-result-table.is-north tr[data-prize="giai2"] .xoso-number-list { grid-template-columns: repeat(2, 1fr); }
.xoso-result-table.is-north tr[data-prize="giai3"] .xoso-number-list { grid-template-columns: repeat(3, 1fr); }
.xoso-result-table.is-north tr[data-prize="giai4"] .xoso-number-list, .xoso-result-table.is-north tr[data-prize="giai7"] .xoso-number-list { grid-template-columns: repeat(4, 1fr); }
.xoso-result-table.is-north tr[data-prize="giai5"] .xoso-number-list, .xoso-result-table.is-north tr[data-prize="giai6"] .xoso-number-list { grid-template-columns: repeat(3, 1fr); }
.xoso-result-table tr[data-prize="giai8"] td, .xoso-result-table tr[data-prize="giaidb"] td { background: var(--xoso-surface); }
.xoso-result-table tr[data-prize="giai8"] strong, .xoso-result-table tr[data-prize="giaidb"] strong { color: #9d0000; font-size: 30px; }
.xoso-live-placeholder { display: flex; align-items: center; justify-content: center; position: relative; height: 14px; max-width: 100%; margin: 6px auto; }
.xoso-live-placeholder[data-digits="2"] { width: 36px; }
.xoso-live-placeholder[data-digits="3"] { width: 48px; }
.xoso-live-placeholder[data-digits="4"] { width: 60px; }
.xoso-live-placeholder[data-digits="5"] { width: 72px; }
.xoso-live-placeholder[data-digits="6"] { width: 84px; }
.xoso-live-placeholder::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #d9d3c6; box-shadow: -14px 0 0 #ece7db, 14px 0 0 #ece7db; animation: xoso-live-dots 1.15s ease-in-out infinite; }
.xoso-live-ball-placeholder { display: grid; place-items: center; width: 58px; height: 58px; border: 1px solid #d7dbe0; border-radius: 50%; background: #fbfbfb; box-shadow: inset 0 1px 0 #fff; }
.xoso-live-ball-placeholder.is-power-special { border-color: #e7aab0; background: radial-gradient(circle at 30% 28%, #ffe2e5 0, #ffbdc6 34%, #f06a79 72%, #dc4256 100%); }
.xoso-live-ball-placeholder::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: #cfd4da; box-shadow: -14px 0 0 #e5e8ec, 14px 0 0 #e5e8ec; animation: xoso-live-dots 1.15s ease-in-out infinite; }
.xoso-live-ball-placeholder.is-power-special::before { background: rgba(255, 245, 247, .95); box-shadow: -14px 0 0 rgba(255, 224, 229, .95), 14px 0 0 rgba(255, 224, 229, .95); }
[data-number-key].is-live-new { animation: xoso-live-number 1.2s ease-in-out 3; }
@keyframes xoso-live-number { 0%, 100% { opacity: 1; } 50% { color: #e00000; opacity: .2; } }
@keyframes xoso-live-dots { 0%, 100% { opacity: .45; transform: scale(.9); } 50% { opacity: 1; transform: scale(1.08); } }
.xoso-lotto { overflow: hidden; margin: -1px 0 24px; border: 1px solid var(--xoso-line); border-radius: 6px; background: #fff; color: #000; }
.xoso-lotto h3 { margin: 0; padding: 8px; border: 1px solid var(--xoso-line-strong); background: #f1f1f1; color: #000; font-size: 13px; font-weight: 700; line-height: 1.3; text-align: center; text-transform: uppercase; }
.xoso-lotto table thead:first-child tr:first-child > th { border-top: 0; }
.xoso-lotto tbody th { width: 52px; color: #df4b00; font-style: normal; }
.xoso-lotto td { font-size: 12px; font-weight: 600; line-height: 1.4; }
.xoso-lotto-value { display: block; width: 100%; max-width: 100%; overflow: hidden; white-space: nowrap; }
.xoso-lotto-value sup { font-size: .72em; line-height: 0; vertical-align: super; }
.xoso-lotto-north th:nth-child(2), .xoso-lotto-north th:nth-child(5), .xoso-lotto-north td:nth-child(2), .xoso-lotto-north td:nth-child(5) { width: 42px; }
.xoso-lotto-regional th { width: auto; }

@media (max-width: 700px) {
    .xoso-heading { align-items: stretch; flex-direction: column; }
    .xoso-heading label, .xoso-date-control { width: 100%; max-width: 100%; }
    .xoso-weekdays { overflow-x: visible; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 4px; margin-bottom: 20px; }
    .xoso-weekdays button { min-width: 0; min-height: 36px; padding: 5px 1px; font-size: 0; white-space: nowrap; }
    .xoso-weekdays button::after { font-size: 10px; }
    .xoso-weekdays button:nth-child(1)::after { content: "T2"; }
    .xoso-weekdays button:nth-child(2)::after { content: "T3"; }
    .xoso-weekdays button:nth-child(3)::after { content: "T4"; }
    .xoso-weekdays button:nth-child(4)::after { content: "T5"; }
    .xoso-weekdays button:nth-child(5)::after { content: "T6"; }
    .xoso-weekdays button:nth-child(6)::after { content: "T7"; }
    .xoso-weekdays button:nth-child(7)::after { content: "CN"; }
    .xoso-lookup { padding: 12px; }
    .xoso-lookup--standalone { padding: 0; }
    .xoso-lookup__types { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .xoso-lookup__details { padding: 12px; }
    .xoso-lookup__fields { grid-template-columns: 1fr; }
    .xoso-lookup__fields label:nth-child(3) { grid-column: auto; }
    .xoso-lookup__submit { grid-column: auto; justify-self: stretch; width: 100%; }
    .xoso-lookup__result li { grid-template-columns: minmax(0, 1fr) 88px; }
    .xoso-lookup__result li span:nth-child(2) { grid-column: 1; grid-row: 2; color: #555; font-size: 12px; text-align: left; }
    .xoso-lookup__result li strong { grid-column: 2; grid-row: 1 / span 2; }
    .xoso-prize { grid-template-columns: 90px 1fr; }
    .xoso-prize__name { padding: 10px; }
    .xoso-prize__numbers { gap: 7px 14px; padding: 10px; }
    .xoso-prize__numbers strong { font-size: 22px; }
    .xoso-prize[data-prize="giaidb"] .xoso-prize__numbers strong { font-size: 30px; }
    .xoso-electronic__product { padding-inline: 10px; }
    .xoso-electronic__header { align-items: center; flex-direction: column; gap: 3px; text-align: center; }
    .xoso-electronic__header h3 { width: 100%; font-size: 13px; text-align: center; }
    .xoso-electronic__header span { width: 100%; font-size: 11px; text-align: center; }
    .xoso-electronic__meta { align-items: flex-start; flex-direction: column; gap: 4px; }
    .xoso-electronic__balls { gap: 7px; }
    .xoso-electronic__balls.is-than-tai-4 { gap: 12px; }
    .xoso-electronic__prizes { overflow-x: visible; }
    .xoso-electronic-prize-list { min-width: 0; }
    .xoso-electronic-prize-list__head, .xoso-electronic-prize-list__row { grid-template-columns: .9fr .76fr .68fr .86fr; gap: 4px; }
    .xoso-electronic-prize-list__head { display: grid; font-size: 7px; }
    .xoso-electronic-prize-list__head span { white-space: nowrap; }
    .xoso-electronic-prize-list__row { padding: 7px 0; }
    .xoso-electronic-prize-list__label { display: none; }
    .xoso-electronic-prize-list__cell { font-size: 10px; }
    .xoso-electronic-prize-list__cell.is-tier strong { font-size: 11px; }
    .xoso-electronic-prize-list__cell.is-winners, .xoso-electronic-prize-list__cell.is-value { justify-items: end; }
    .xoso-electronic-prize-list__cell.is-winners .xoso-electronic-prize-list__value { font-size: 9px; white-space: nowrap; }
    .xoso-electronic-prize-list__cell.is-value .xoso-electronic-prize-list__value { font-size: clamp(7px, 2.25vw, 9px); white-space: nowrap; }
    .xoso-electronic-prize-list__value { font-size: 10px; }
    .xoso-electronic-prize-match { gap: 3px; min-height: 14px; }
    .xoso-electronic-prize-ball { width: 11px; height: 11px; }
    .xoso-electronic__ball, .xoso-electronic__balls strong { width: 45px; height: 45px; font-size: 20px; }
    .xoso-live-ball-placeholder { width: 45px; height: 45px; }
    .xoso-electronic__product[data-product="123"] .xoso-electronic__balls strong:nth-child(1), .xoso-electronic__product[data-product="123"] .xoso-electronic__balls strong:nth-child(3) { margin-right: 8px; }
    .xoso-table-scroll { overflow-x: visible; }
    .xoso-result-table, .xoso-result-table.is-north, .xoso-lotto table { min-width: 0; }
    .xoso-result-table th, .xoso-result-table td { padding: 6px 3px; }
    .xoso-result-table thead th:first-child, .xoso-result-table tbody th { width: 54px; }
    .xoso-result-table td strong { font-size: 18px; }
    .xoso-result-table tr[data-prize="giai8"] strong, .xoso-result-table tr[data-prize="giaidb"] strong { font-size: 25px; }
    .xoso-result-table:not(.is-north) tr[data-prize="giaidb"] strong { font-size: clamp(14px, 4.5vw, 18px); white-space: nowrap; }
    .xoso-lotto th, .xoso-lotto td { padding: 4px 1px; overflow-wrap: normal; word-break: normal; white-space: nowrap; font-size: clamp(6px, 2vw, 9px); }
    .xoso-lotto thead th { font-size: clamp(6px, 2vw, 9px); }
    .xoso-lotto tbody th { width: 28px; }
    .xoso-lotto-regional.is-four-provinces th, .xoso-lotto-regional.is-four-provinces td { overflow: hidden; padding-inline: 0; font-size: clamp(5px, 1.65vw, 7px); text-overflow: clip; }
    .xoso-lotto-regional.is-four-provinces tbody th { width: 4%; }
    .xoso-lotto-regional.is-four-provinces thead tr:nth-child(2) > :nth-child(3n + 1), .xoso-lotto-regional.is-four-provinces thead tr:nth-child(2) > :nth-child(3n), .xoso-lotto-regional.is-four-provinces tbody tr > :nth-child(3n + 1), .xoso-lotto-regional.is-four-provinces tbody tr > :nth-child(3n) { width: 10.5%; }
    .xoso-lotto-regional.is-four-provinces thead tr:nth-child(2) > :nth-child(3n + 2), .xoso-lotto-regional.is-four-provinces tbody tr > :nth-child(3n + 2) { width: 4%; }
    .xoso-lotto-regional.is-four-provinces .xoso-lotto-value { display: block; width: 100%; overflow: hidden; font-size: clamp(5px, 1.65vw, 7px); line-height: 1.25; white-space: nowrap; }
    .xoso-lotto-regional.is-four-provinces .xoso-lotto-value.is-long { font-size: clamp(4.5px, 1.4vw, 6px); }
    .xoso-lotto-regional.is-four-provinces .xoso-lotto-value.is-extra-long { font-size: clamp(4px, 1.2vw, 5px); }
}