/* Existing results/statistics/tool components, consolidated; no site shell. */
input,textarea,select{font:inherit;}
summary{touch-action:manipulation;}
button:focus-visible,a:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #d99117;outline-offset:3px;}
.dashboard-grid{display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:16px;}
.main-column{min-width:0;}
.meta,.empty{font-size:13px;color:#65738a;}
.empty{padding:9px 0;}
.two-columns,.three-columns,.prediction-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;}
.three-columns{grid-template-columns:repeat(3,minmax(0,1fr));}
.prediction-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.prediction-grid article,.stat-card{border:1px solid #e4e9ef;border-radius:7px;padding:14px;background:#fbfcfe;}
[hidden]{display:none!important;}
.result-table,.loto-table{width:100%;border-collapse:collapse;table-layout:fixed;}
.prize-label-column{width:65px;}
.result-table th{width:65px;font-size:13px;background:#f8f9fc;}
.prize-numbers{display:grid;gap:5px 3px;align-items:center;}
.prize-columns-1{grid-template-columns:1fr;}
.prize-columns-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.prize-columns-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.prize-columns-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.prize-numbers span{font-size:23px;font-weight:750;letter-spacing:.4px;font-variant-numeric:tabular-nums;}
.special-prize{background:#fff1f1;color:#ad202f;}
.codes{font-size:12px;overflow-wrap:anywhere;}
.loto-details{margin-top:14px;}
.loto-details summary{font-weight:650;cursor:pointer;padding:8px 0;}
.loto-table{font-size:13px;}
.head-tail-table th:first-child,.head-tail-table th:last-child{width:42px;}
.loto-table td{overflow-wrap:anywhere;}
.loto-table th{background:#f2f5f9;}
.link-grid a,.unavailable{padding:11px;background:#f4f7fb;border-radius:6px;font-size:13px;overflow-wrap:anywhere;}
.unavailable{color:#7b8492;}
.text-link{display:block;font-size:13px;margin-top:12px;font-weight:650;}
.article-list span{display:block;color:#738098;font-size:12px;}
.sidebar{align-self:start;}
.sidebar p{font-size:13px;}
.notice{padding:13px;background:#fff5d9;border:1px solid #efd28b;border-radius:6px;}
.regional-grid{display:grid;gap:15px;}
#number-tools label{display:block;font-weight:650;font-size:13px;margin:12px 0 6px;}
#number-tools textarea,#number-tools select{width:100%;padding:10px;border:1px solid #cbd5e1;border-radius:6px;background:white;}
#tool-output{display:block;overflow-wrap:anywhere;margin:14px 0;white-space:pre-wrap;}
.sr-only,.skip{position:absolute;left:-10000px;}
.skip:focus{left:15px;top:10px;padding:10px;background:#fff;z-index:10;}
@media(max-width:960px){.dashboard-grid{grid-template-columns:minmax(0,1fr);}
.sidebar{display:grid;grid-template-columns:1fr 1fr;gap:15px;}}
@media(max-width:640px){.panel{padding:12px;margin-bottom:12px;}
.panel>h2{margin:-12px -12px 12px;padding:9px 12px;}
.sidebar .panel>h2{margin:-16px -16px 12px;}
.two-columns,.three-columns{grid-template-columns:1fr;}
.prediction-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
.prediction-grid article{padding:10px;}
.number-grid{gap:5px;}
.number-item strong{font-size:19px;}
.prize-numbers span{font-size:20px;}
.special-prize .prize-numbers span{font-size:29px;}
.prize-label-column{width:49px;}
.result-table th{width:49px;}
.sidebar{display:block;}
.link-grid a{padding:10px;font-size:12px;}
.loto-table{font-size:12px;}
.result-card h3{font-size:13px;}}
@media(max-width:360px){.prize-numbers span{font-size:18px;letter-spacing:0;}
.prize-columns-4{grid-template-columns:repeat(2,minmax(0,1fr));}}
.eyebrow{font-size:11px;font-weight:800;letter-spacing:.6px;color:#276b23;}
.panel{background:#fff;border:1px solid #e1e6ed;border-radius:0;padding:12px;margin-bottom:10px;border-color:var(--border);}
.panel>h2{background:var(--brand-green);color:#fff;margin:-12px -12px 10px;padding:7px 10px;border-radius:0;font-size:16px;}
.sidebar .panel{padding:12px;}
.sidebar .panel>h2{margin:-12px -12px 10px;}
.meta{margin:6px 0 10px;}
.two-columns{gap:10px;}
.stat-card{border:0;border-radius:0;padding:0;background:white;}
.stat-card h3{font-size:14px;margin:0 0 6px;padding:6px 0;border-bottom:1px solid #e3e7e1;}
.number-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-top:1px solid #e4e8e2;border-left:1px solid #e4e8e2;}
.number-item{border:0;border-radius:0;text-align:center;padding:4px 1px;background:#fff;border-right:1px solid #e4e8e2;border-bottom:1px solid #e4e8e2;}
.number-item strong{display:block;font-size:19px;color:#c32222;font-variant-numeric:tabular-nums;}
.number-item span{font-size:11px;color:#647187;}
.tabs,.result-options{display:flex;gap:5px;flex-wrap:wrap;margin:9px 0;}
.tabs button,.result-options button{border:1px solid #d8e0eb;border-radius:3px;background:white;padding:7px 11px;color:var(--text);min-height:40px;}
.tabs [aria-selected=true],.result-options [aria-pressed=true]{background:var(--brand-green);color:#fff;border-color:var(--brand-green);}
.result-card{min-width:0;margin:10px 0;}
.result-card h3{background:#f0f6ed;padding:8px;border-radius:0;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;color:#185a1a;margin-bottom:8px;}
.result-card h3 span{font-weight:750;}
.result-table td,.result-table th,.loto-table td,.loto-table th{border:1px solid #dce2eb;padding:7px 4px;text-align:center;border-color:#d9dfd6;}
.result-table th,.loto-table th{background:#f6f7f4;}
.link-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;}
.link-grid a{border-radius:0;border:1px solid #e0e6db;background:#f8faf5;padding:9px;}
.article-list a{display:block;padding:9px 0;border-bottom:1px solid #edf0f5;font-size:14px;}
.side-links a{display:block;border-bottom:1px solid #edf0f5;padding:9px 0;}
.calculated-numbers{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:10px;}
.calculated-numbers strong{padding:5px 9px;border:1px solid #d8e0d3;color:var(--brand-green);font-size:18px;}
.prediction-table th{width:40%;text-align:left;}
.prediction-table strong{font-size:22px;color:#c32222;}
.tool-links strong,.tool-links span{display:block;}
.tool-links strong{font-size:15px;}
.tool-links span{font-size:12px;color:#667266;margin-top:5px;}
.tool-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;}
.tool-actions button{min-height:44px;padding:8px 12px;border:1px solid #cbd7c6;border-radius:3px;}
.tool-actions button:disabled{opacity:.55;cursor:default;}
.regional-desktop{display:block;}
.regional-mobile{display:none;}
.regional-table th{width:auto;}
.regional-table th:first-child{width:65px;}
.regional-table .prize-numbers span{font-size:22px;letter-spacing:0;}
.regional-table .special-prize .prize-numbers span{font-size:27px;}
.regional-table small{display:block;font-size:11px;font-weight:400;}
.special-statistics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.special-statistics table{break-inside:auto;}
.special-statistics thead{display:table-header-group;}
.special-statistics tr{break-inside:avoid;}
@media(min-width:961px){.dashboard-grid{gap:12px;grid-template-columns:minmax(0,1fr) 240px;}}
@media(max-width:1100px) and (min-width:961px){.dashboard-grid{grid-template-columns:minmax(0,1fr) 200px;}
.regional-table .prize-numbers span{font-size:20px;}
.regional-table .special-prize .prize-numbers span{font-size:23px;}}
@media(max-width:767px){.regional-desktop{display:none;}
.regional-mobile{display:grid;}
.special-statistics{grid-template-columns:1fr;}}
@media(max-width:640px){.panel{padding:12px;}
.panel>h2{margin:-12px -12px 10px;}
.two-columns{gap:12px;}
.sidebar .panel>h2{margin:-12px -12px 10px;}
.prize-numbers span{font-size:21px;}
.number-item strong{font-size:18px;}
.tool-links{grid-template-columns:1fr;}}
@media(max-width:360px){.prize-numbers span{font-size:18px;letter-spacing:0;}
.prize-columns-4{grid-template-columns:repeat(2,minmax(0,1fr));}}
.news-list{list-style:none;margin:0;padding:0;}
.news-list li{padding:12px 0;border-bottom:1px solid #e1e6dd;overflow-wrap:anywhere;}
.news-list h2{font-size:17px;}
.news-list p{font-size:14px;margin:5px 0;}
.pagination{display:flex;flex-wrap:wrap;list-style:none;gap:6px;padding:0;}
.page-link{display:block;padding:8px 12px;border:1px solid var(--border);background:white;}
.page-item.active .page-link{background:var(--brand-green);color:white;}
.frequency-top .number-item{display:block;min-height:52px;text-decoration:none;}
.frequency-top .number-item:hover{background:#eef7e9;}
.frequency-label-column{width:120px;}
.frequency-sets th{width:120px;}
.frequency-sets .calculated-numbers{margin:0;gap:4px;justify-content:flex-start;}
.frequency-sets .calculated-numbers strong{font-size:18px;padding:4px 7px;}
.ranking-list article{padding:10px 0;border-bottom:1px solid #e1e6dd;scroll-margin-top:12px;}
.ranking-list h3{margin:0 0 5px;}
.ranking-list h3 strong{color:#c32222;font-size:20px;}
.ranking-list p{font-size:14px;margin:0;overflow-wrap:anywhere;}
#main code{overflow-wrap:anywhere;}
@media(max-width:360px){.frequency-label-column{width:82px;}
.frequency-sets th{width:82px;}
.frequency-sets .calculated-numbers strong{font-size:17px;padding:4px 6px;}}
.phase2-numbers{flex-wrap:wrap;overflow-wrap:anywhere;}
.phase2-table-wrap{max-width:100%;overflow-x:auto;}
.phase2-stats{table-layout:fixed;width:100%;}
.phase2-stats th,.phase2-stats td{overflow-wrap:anywhere;padding:7px 4px;}
@media(max-width:400px){.phase2-stats{font-size:12px;}
.phase2-stats th,.phase2-stats td{padding:6px 2px;}}
.phase2-summary-row td{text-align:left;}
.phase2-summary-row .calculated-numbers{display:inline-flex;vertical-align:middle;}
.phase2-summary-row .text-link{font-size:12px;display:inline-block;vertical-align:middle;margin:0 0 0 8px;}
#nuoi-khung-xsmb .campaign-links{grid-template-columns:repeat(3,minmax(0,1fr));}
#nuoi-khung-xsmb h3{margin:12px 0 8px;}
@media(max-width:900px){#nuoi-khung-xsmb .campaign-links{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:480px){#nuoi-khung-xsmb .campaign-links{grid-template-columns:1fr;}}
.loto-set-links a{padding:8px;overflow-wrap:anywhere;}
.loto-set-links strong,.loto-set-links span{display:block;}
.loto-set-links span{font-size:12px;color:#626c60;margin-top:4px;}
#nuoi-khung-xsmb .campaign-links a{padding:7px 8px;}
#nuoi-khung-xsmb .campaign-links span{margin-top:3px;}
#nuoi-khung-xsmb .campaign-links strong{font-size:14px;}
.special-prize .prize-numbers span{font-size:30px;color:#d11919;font-weight:800;}
@media(max-width:360px){.special-prize .prize-numbers span{font-size:25px;}
.loto-set-links{grid-template-columns:1fr;}}
/* Legacy result/cau digits use one common prize grid; digit order is unchanged. */
.kqmb{width:100%;table-layout:fixed;border-collapse:collapse}
.kqmb td{border:1px solid var(--border);padding:6px 3px}
.kqmb td:first-child:not(.v-giai){width:54px;font-size:12px}
.kqmb td.number{white-space:normal;font-size:20px;text-align:center;font-variant-numeric:tabular-nums}
.kqmb td.number>span[class^="v-"]{display:inline-block;vertical-align:middle;text-align:center}
.kqmb td.number>span[class^="v-g2"]{width:50%}
.kqmb td.number>span[class^="v-g3"],.kqmb td.number>span[class^="v-g5"],.kqmb td.number>span[class^="v-g6"]{width:33.333%}
.kqmb td.number>span[class^="v-g4"],.kqmb td.number>span[class^="v-g7"]{width:25%}
.kqmb .madb{font-size:12px;overflow-wrap:anywhere}
.kqmb tr.db td.number{font-weight:800;color:var(--danger);font-size:26px}
@media(max-width:360px){.kqmb td.number{font-size:18px}.kqmb td:first-child:not(.v-giai){width:42px}}
