:root {
    --navy-950: #031d3b;
    --navy-900: #06294f;
    --navy-800: #093b6e;
    --blue-700: #0757cb;
    --blue-600: #0b6df0;
    --blue-100: #e9f2ff;
    --red-700: #bd1428;
    --red-600: #e21e34;
    --gold-700: #ae7611;
    --gold-500: #dfa926;
    --gold-200: #f4dc9a;
    --ink: #0b1d39;
    --muted: #5a6980;
    --line: #dbe3ed;
    --surface: #ffffff;
    --page: #f4f7fb;
    --shadow-sm: 0 3px 10px rgba(6, 34, 68, .09);
    --shadow-md: 0 12px 32px rgba(6, 34, 68, .13);
    --radius: 10px;
    color-scheme: light;
}

* { box-sizing: border-box; }
html { min-width: 320px; scroll-behavior: smooth; }
body { margin: 0; min-width: 320px; min-height: 100vh; color: var(--ink); background: var(--page); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 15px; line-height: 1.5; }
a { color: inherit; text-decoration: none; }
img { display: block; max-width: 100%; }
button, input, select { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
.shell { width: min(1460px, calc(100% - 56px)); margin-inline: auto; }
.skip-link { position: fixed; left: 14px; top: -80px; z-index: 9999; padding: 10px 16px; color: #fff; background: var(--red-700); border-radius: 0 0 8px 8px; }
.skip-link:focus { top: 0; }
.icon, .nav-icon, .panel-icon, .calendar-icon, .tiny-icon, .seal-icon, .note-icon { display: inline-block; flex: 0 0 auto; }
.tiny-icon { width: 18px; height: 18px; }

.utility-bar { min-height: 40px; color: #fff; background: linear-gradient(100deg, #042448 0%, #082f5c 58%, #041d3a 100%); font-size: 13px; }
.utility-inner { display: flex; min-height: 40px; align-items: center; justify-content: space-between; gap: 22px; }
.utility-left, .utility-right, .utility-item { display: flex; align-items: center; gap: 8px; }
.utility-left, .utility-right { min-width: 0; }
.utility-divider { width: 1px; height: 18px; background: rgba(255,255,255,.28); }

.brand-bar { min-height: 126px; background: linear-gradient(115deg, #fff 0%, #fff 68%, #f2f6fc 100%); border-bottom: 1px solid #d9e1eb; }
.brand-inner { display: flex; min-height: 126px; align-items: center; justify-content: space-between; gap: 36px; }
.brand-link { display: inline-flex; align-items: center; min-width: 0; }
.brand-logo { width: auto; height: 92px; max-width: min(620px, 60vw); object-fit: contain; object-position: left center; }
.official-seal { display: flex; width: 330px; align-items: center; gap: 16px; padding-left: 28px; border-left: 1px solid #aebdd0; color: #25436d; }
.seal-icon { width: 55px; height: 55px; color: var(--blue-700); stroke-width: 1.4; }
.official-seal strong, .official-seal span { display: block; }
.official-seal strong { font-size: 16px; }
.official-seal span { margin-top: 3px; font-size: 13px; line-height: 1.35; }

.main-nav { position: relative; z-index: 30; min-height: 48px; color: #fff; background: linear-gradient(90deg, #064ebd, #0b6ef2 54%, #155ae0); box-shadow: 0 4px 14px rgba(0, 45, 116, .16); }
.nav-inner { display: flex; min-height: 48px; align-items: stretch; }
.nav-menu { display: flex; width: 100%; align-items: stretch; justify-content: center; }
.nav-link { position: relative; display: flex; min-width: 170px; align-items: center; justify-content: center; gap: 10px; padding: 0 22px; font-size: 14px; font-weight: 800; letter-spacing: .02em; text-transform: uppercase; transition: background .2s ease; }
.nav-link:hover { background: rgba(2, 28, 67, .24); }
.nav-link.active { background: var(--navy-900); }
.nav-link.active::after { position: absolute; right: 0; bottom: 0; left: 0; height: 4px; background: var(--red-600); content: ""; }
.nav-icon { width: 20px; height: 20px; }
.nav-toggle { display: none; color: #fff; background: transparent; border: 0; }

.site-main { min-height: 60vh; }
.page-shell { padding-block: 16px 34px; }
.home-page { padding-top: 14px; }
.setup-notice { margin: 12px 0; padding: 10px 14px; color: #704b05; background: #fff7dc; border: 1px solid #ecd084; border-radius: 8px; font-size: 13px; }

.next-draw-strip { display: grid; grid-template-columns: minmax(255px, 1.15fr) minmax(210px, .8fr) minmax(410px, 1.6fr) minmax(210px, .85fr); min-height: 86px; overflow: hidden; background: #fff; border: 1px solid #d3dce7; border-radius: 10px; box-shadow: var(--shadow-sm); }
.next-label { position: relative; display: flex; align-items: center; gap: 14px; padding: 14px 22px; color: #fff; background: linear-gradient(120deg, var(--navy-950), var(--navy-800)); }
.next-label::after { position: absolute; top: 0; right: -22px; width: 44px; height: 100%; background: inherit; clip-path: polygon(0 0, 50% 0, 100% 50%, 50% 100%, 0 100%); content: ""; }
.next-label p, .next-label h1, .next-date span, .next-date strong, .next-date small, .next-note strong, .next-note span { display: block; margin: 0; }
.next-label p { color: #9dc8ff; font-size: 10px; font-weight: 800; letter-spacing: .12em; }
.next-label h1 { color: #ffd055; font-size: 22px; line-height: 1.1; }
.calendar-ring { position: relative; z-index: 1; display: grid; width: 56px; height: 56px; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; }
.calendar-icon { width: 29px; height: 29px; color: #fff; }
.next-date { display: flex; flex-direction: column; justify-content: center; padding: 12px 22px 12px 40px; border-right: 1px solid var(--line); }
.next-date span { color: var(--blue-700); font-size: 12px; font-weight: 800; letter-spacing: .04em; }
.next-date strong { font-size: 17px; }
.next-date small { color: var(--muted); font-size: 11px; }
.countdown { display: flex; align-items: center; justify-content: center; gap: 12px; padding: 10px 18px; }
.countdown > div { display: grid; min-width: 86px; place-items: center; padding: 5px 9px; background: linear-gradient(#fff, #f4f7fb); border: 1px solid #d6dee9; border-radius: 9px; box-shadow: inset 0 1px 0 #fff; }
.countdown strong { color: var(--red-700); font-family: Georgia, "Times New Roman", serif; font-size: 31px; line-height: 1.1; letter-spacing: .05em; }
.countdown span { color: #263951; font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.countdown > b { color: var(--navy-900); font-size: 25px; }
.next-note { display: flex; flex-direction: column; justify-content: center; padding: 12px 22px; color: var(--muted); font-size: 12px; }
.next-note strong { color: var(--ink); font-size: 13px; }
.next-unavailable { grid-column: 2 / -1; display: flex; flex-direction: column; align-items: center; justify-content: center; color: var(--muted); }
.next-unavailable strong { color: var(--navy-900); }

.home-grid { display: grid; grid-template-columns: 238px minmax(0, 1fr) 278px; gap: 14px; margin-top: 14px; align-items: start; }
.panel-card, .result-card, .table-card, .filter-card, .schedule-board { background: #fff; border: 1px solid var(--line); border-radius: var(--radius); box-shadow: var(--shadow-sm); }
.panel-card { overflow: hidden; }
.panel-heading { display: flex; min-height: 58px; align-items: center; gap: 11px; padding: 12px 15px; }
.panel-heading h2 { margin: 0; font-size: 15px; line-height: 1.15; }
.navy-heading { color: #fff; background: linear-gradient(105deg, var(--navy-950), var(--navy-800)); }
.red-icon { display: grid; width: 34px; height: 34px; place-items: center; color: #fff; background: var(--red-600); border-radius: 50%; }
.panel-icon { width: 18px; height: 18px; }
.panel-link { display: flex; min-height: 44px; align-items: center; justify-content: space-between; padding: 10px 15px; color: var(--blue-700); background: #f6f9fd; border-top: 1px solid var(--line); font-size: 11px; font-weight: 900; letter-spacing: .03em; }
.panel-link span { font-size: 20px; line-height: 1; }
.schedule-timeline { position: relative; padding: 12px 12px 8px 17px; }
.schedule-timeline::before { position: absolute; top: 30px; bottom: 30px; left: 37px; width: 2px; background: #cdd9e9; content: ""; }
.schedule-item { position: relative; display: flex; min-height: 72px; align-items: center; gap: 12px; }
.timeline-dot { position: relative; z-index: 1; display: grid; width: 42px; height: 42px; flex: 0 0 auto; place-items: center; color: var(--navy-900); background: #fff; border: 2px solid #2b70d7; border-radius: 50%; font-weight: 900; box-shadow: 0 0 0 4px #fff; }
.schedule-item.today .timeline-dot { color: #fff; background: var(--red-600); border-color: var(--red-600); }
.schedule-item p, .schedule-item strong, .schedule-item div > span { display: block; margin: 0; }
.schedule-item p { color: var(--red-700); font-size: 10px; font-weight: 900; }
.schedule-item strong { font-size: 12px; }
.schedule-item div > span { width: max-content; margin-top: 2px; padding: 2px 8px; color: #fff; background: var(--navy-800); border-radius: 10px; font-size: 10px; font-weight: 800; }
.schedule-item.today div > span { background: var(--red-600); }

.result-column { min-width: 0; }
.result-card { position: relative; overflow: hidden; border-color: #dcb552; box-shadow: 0 4px 14px rgba(72, 49, 5, .13); }
.result-card::before, .result-card::after { position: absolute; z-index: 2; width: 72px; height: 72px; border: 3px double rgba(191, 132, 21, .65); content: ""; transform: rotate(45deg); pointer-events: none; }
.result-card::before { top: -50px; left: -50px; }
.result-card::after { right: -50px; bottom: -50px; }
.result-watermark { position: absolute; inset: 0; opacity: .2; pointer-events: none; background-image: radial-gradient(circle at center, transparent 0 43px, rgba(204, 159, 50, .2) 44px 45px, transparent 46px), repeating-radial-gradient(circle at center, transparent 0 15px, rgba(210, 170, 76, .12) 16px 17px); background-size: 220px 220px; }
.result-top-grid { position: relative; z-index: 1; display: grid; grid-template-columns: minmax(210px, .9fr) minmax(260px, 1.3fr) minmax(190px, .8fr); min-height: 320px; padding: 18px 20px 16px; }
.result-meta { min-width: 0; padding-right: 17px; border-right: 1px solid rgba(198, 153, 46, .45); }
.result-title-row { display: flex; align-items: center; gap: 10px; margin-bottom: 13px; }
.gold-medal, .medal-placeholder { display: grid; width: 50px; height: 50px; flex: 0 0 auto; place-items: center; color: #fff4bf; background: radial-gradient(circle at 38% 35%, #f8d66a, #ad6f08 73%); border: 4px solid #dfb63d; border-radius: 50%; box-shadow: 0 3px 8px rgba(104, 66, 3, .24); }
.eyebrow { margin: 0 0 2px; color: var(--red-700); font-size: 10px; font-weight: 900; letter-spacing: .13em; }
.result-title-row h2 { margin: 0; color: var(--navy-900); font-size: 21px; line-height: 1.05; }
.result-meta dl { margin: 0; font-size: 11px; }
.result-meta dl div { display: grid; grid-template-columns: 86px 1fr; gap: 6px; padding: 4px 0; border-bottom: 1px dashed #e1e1de; }
.result-meta dt { color: var(--muted); }
.result-meta dd { margin: 0; color: var(--ink); font-weight: 700; overflow-wrap: anywhere; }
.first-prize-zone { display: flex; min-width: 0; flex-direction: column; align-items: center; justify-content: center; padding: 8px 14px; }
.prize-heading { display: flex; width: 100%; align-items: center; justify-content: center; gap: 12px; color: var(--gold-700); }
.prize-heading span { width: 50px; height: 1px; background: var(--gold-500); }
.prize-heading strong { font-size: 18px; }
.digit-boxes { display: flex; align-items: center; justify-content: center; gap: 8px; }
.digit-boxes span { display: grid; place-items: center; color: #111a28; background: linear-gradient(#fff, #f4f5f7); border: 1px solid #cfd5de; border-radius: 8px; box-shadow: inset 0 1px 0 #fff, 0 3px 7px rgba(8, 31, 62, .09); font-family: Georgia, "Times New Roman", serif; font-weight: 800; line-height: 1; }
.first-digits { margin: 18px 0 13px; }
.first-digits span { width: 55px; height: 70px; font-size: 42px; }
.official-stamp { display: flex; align-items: center; gap: 6px; color: var(--gold-700); border: 2px solid #cf9d27; border-radius: 50%; padding: 8px 10px; transform: rotate(-5deg); }
.official-stamp b { font-size: 18px; }
.official-stamp span { font-size: 7px; font-weight: 900; line-height: 1.05; text-align: center; }
.secondary-prizes { display: grid; align-content: center; padding-left: 14px; }
.secondary-prizes article { padding: 17px 0; text-align: center; }
.secondary-prizes article + article { border-top: 1px solid rgba(198,153,46,.4); }
.secondary-prizes h3 { margin: 0 0 10px; color: var(--blue-700); font-size: 13px; }
.secondary-digits { gap: 5px; }
.secondary-digits span { width: 36px; height: 44px; font-size: 26px; border-radius: 6px; }
.support-prizes { position: relative; z-index: 1; display: grid; grid-template-columns: 1fr 76px 1fr; align-items: stretch; color: #fff; background: linear-gradient(115deg, var(--navy-950), var(--navy-800)); border-top: 1px solid #dcb552; }
.support-column { padding: 13px 16px 16px; min-width: 0; }
.support-column h3 { margin: 0 0 9px; color: #ffdb72; font-size: 11px; letter-spacing: .04em; text-align: center; }
.number-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 6px; }
.number-grid span { display: grid; min-width: 0; min-height: 27px; place-items: center; padding: 3px 2px; color: var(--navy-950); background: #fff; border: 1px solid #d7e0ec; border-radius: 5px; font-size: 11px; font-weight: 900; letter-spacing: .04em; }
.trophy-separator { display: flex; flex-direction: column; align-items: center; justify-content: center; color: #ffd462; background: rgba(255,255,255,.04); border-inline: 1px solid rgba(255,255,255,.12); }
.trophy-cup { display: grid; width: 38px; height: 38px; place-items: center; color: #634100; background: radial-gradient(circle, #ffe38a, #c58a17); border-radius: 50%; box-shadow: 0 0 0 4px rgba(236,188,55,.15); }
.trophy-separator > span { margin-top: 5px; font-size: 7px; font-weight: 900; letter-spacing: .08em; }
.empty-result { position: relative; z-index: 1; display: flex; min-height: 430px; align-items: center; justify-content: center; gap: 20px; padding: 40px; text-align: left; }
.empty-result h2 { margin: 0; color: var(--navy-900); font-size: 24px; }
.empty-result p:last-child { margin: 6px 0 0; color: var(--muted); }
.result-detail-link { display: flex; min-height: 44px; align-items: center; justify-content: center; gap: 8px; margin-top: 8px; color: var(--blue-700); background: #fff; border: 1px solid var(--line); border-radius: 8px; font-size: 11px; font-weight: 900; letter-spacing: .04em; box-shadow: var(--shadow-sm); }
.result-detail-link span { font-size: 18px; }

.history-card { min-width: 0; }
.mini-history { padding: 5px 10px; }
.mini-history a { display: grid; grid-template-columns: .8fr 1fr 12px; gap: 5px; align-items: center; min-height: 57px; padding: 8px 4px; border-bottom: 1px solid var(--line); }
.mini-history a:hover { background: #f6f9fd; }
.mini-history div span, .mini-history div strong, .mini-history div b { display: block; }
.mini-history div:first-child span { color: var(--muted); font-size: 8px; font-weight: 800; }
.mini-history div:first-child strong { color: var(--blue-700); font-size: 12px; }
.mini-history div:nth-child(2) { text-align: right; }
.mini-history div:nth-child(2) span { color: var(--muted); font-size: 9px; }
.mini-history div:nth-child(2) b { font-size: 15px; letter-spacing: .08em; }
.mini-history em { color: var(--blue-700); font-size: 19px; font-style: normal; }
.panel-empty { display: flex; min-height: 330px; flex-direction: column; align-items: center; justify-content: center; padding: 24px; color: var(--muted); text-align: center; }
.panel-empty > span { display: grid; width: 42px; height: 42px; place-items: center; margin-bottom: 10px; background: var(--blue-100); border-radius: 50%; }
.panel-empty strong { color: var(--navy-900); font-size: 12px; }
.panel-empty p { margin: 5px 0; font-size: 11px; }

.inner-page { padding-top: 24px; }
.page-heading { display: flex; align-items: center; justify-content: space-between; gap: 32px; margin-bottom: 18px; padding: 22px 26px; color: #fff; background: linear-gradient(110deg, var(--navy-950), var(--navy-800)); border-radius: var(--radius); box-shadow: var(--shadow-md); }
.page-heading h1 { margin: 2px 0 5px; font-family: Georgia, "Times New Roman", serif; font-size: clamp(25px, 2.4vw, 38px); letter-spacing: .01em; }
.page-heading p:not(.eyebrow) { max-width: 760px; margin: 0; color: #c7d8ed; }
.page-heading .eyebrow { color: #ffca4b; }
.compact-heading { min-height: 120px; }
.heading-stat { display: flex; min-width: 190px; flex-direction: column; padding: 12px 18px; background: rgba(255,255,255,.08); border: 1px solid rgba(255,255,255,.2); border-radius: 8px; text-align: center; }
.heading-stat span { color: #9fc7fb; font-size: 9px; font-weight: 900; letter-spacing: .14em; }
.heading-stat strong { color: #fff; font-size: 22px; }
.heading-stat small { color: #c8d8ea; }
.page-actions { display: flex; justify-content: center; gap: 10px; margin-top: 18px; }
.button { display: inline-flex; min-height: 42px; align-items: center; justify-content: center; padding: 10px 18px; border: 1px solid transparent; border-radius: 6px; font-size: 12px; font-weight: 900; letter-spacing: .04em; cursor: pointer; }
.button-primary { color: #fff; background: var(--blue-700); }
.button-primary:hover { background: var(--navy-800); }
.button-outline { color: var(--blue-700); background: #fff; border-color: #b9cbe3; }
.button-light { color: var(--navy-950); background: #fff; }

.filter-card { margin-bottom: 16px; padding: 16px; }
.filter-card form { display: grid; grid-template-columns: 1fr 1fr 1.3fr auto auto; gap: 10px; align-items: end; }
.filter-card label, .filter-card label span { display: block; }
.filter-card label span { margin-bottom: 5px; color: var(--navy-900); font-size: 11px; font-weight: 800; }
.filter-card input { width: 100%; min-height: 42px; padding: 8px 10px; color: var(--ink); background: #fff; border: 1px solid #c9d4e2; border-radius: 6px; }
.table-card { overflow: hidden; }
.section-title-row { display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 18px; border-bottom: 1px solid var(--line); }
.section-title-row h2 { margin: 0; color: var(--navy-900); font-size: 16px; }
.section-title-row span { color: var(--muted); font-size: 11px; }
.table-scroll { overflow-x: auto; }
.data-table { width: 100%; border-collapse: collapse; white-space: nowrap; }
.data-table th { padding: 12px 14px; color: #fff; background: linear-gradient(90deg, var(--navy-950), var(--navy-800)); font-size: 10px; letter-spacing: .04em; text-align: left; text-transform: uppercase; }
.data-table td { padding: 12px 14px; border-bottom: 1px solid var(--line); font-size: 12px; }
.data-table tbody tr:hover { background: #f7faff; }
.winning-cell { color: var(--red-700); font-size: 16px !important; font-weight: 900; letter-spacing: .1em; }
.table-action { color: var(--blue-700); font-size: 10px; font-weight: 900; }
.empty-table { height: 150px; color: var(--muted); text-align: center; }
.pagination { display: flex; align-items: center; justify-content: center; gap: 18px; min-height: 58px; padding: 10px; }
.pagination a { color: var(--blue-700); font-size: 12px; font-weight: 800; }
.pagination span { color: var(--muted); font-size: 11px; }

.schedule-board { overflow: hidden; }
.schedule-board-head, .schedule-board-row { display: grid; grid-template-columns: 1fr 1.5fr 1.2fr 1fr; align-items: center; }
.schedule-board-head { min-height: 48px; padding: 0 24px; color: #fff; background: linear-gradient(90deg, var(--navy-950), var(--navy-800)); font-size: 11px; font-weight: 900; text-transform: uppercase; }
.schedule-board-row { min-height: 76px; padding: 11px 24px; border-bottom: 1px solid var(--line); }
.schedule-board-row:last-child { border-bottom: 0; }
.schedule-board-row.is-today { background: linear-gradient(90deg, #fff5f5, #fff); border-left: 5px solid var(--red-600); padding-left: 19px; }
.schedule-board-row > div { min-width: 0; }
.schedule-board-row > div > strong { color: var(--navy-900); }
.schedule-board-row > div:nth-child(3) { display: flex; flex-direction: column; }
.schedule-board-row > div:nth-child(3) b { color: var(--blue-700); font-size: 20px; }
.schedule-board-row small { color: var(--muted); }
.mobile-label { display: none; }

.status-badge { display: inline-flex; width: max-content; min-height: 24px; align-items: center; justify-content: center; padding: 4px 9px; border-radius: 999px; font-size: 9px; font-weight: 900; letter-spacing: .06em; }
.status-published, .status-active { color: #09633e; background: #dff8ed; border: 1px solid #a5e5cc; }
.status-draft, .status-upcoming, .status-info { color: #0755aa; background: #e5f1ff; border: 1px solid #afd1f6; }
.status-live, .status-danger { color: #a80017; background: #ffe7ea; border: 1px solid #f4b2bb; }
.status-waiting-result, .status-warning { color: #815800; background: #fff2cb; border: 1px solid #e9ce7d; }
.status-not-available, .status-disabled, .status-muted { color: #5a6574; background: #eef1f5; border: 1px solid #d1d8e1; }

.live-stage { position: relative; overflow: hidden; padding: 28px 34px 36px; color: #fff; background: radial-gradient(circle at 50% -10%, #196cd1 0, transparent 42%), linear-gradient(135deg, #031a35, #073a70 62%, #031d3b); border: 1px solid #224e7e; border-radius: 14px; box-shadow: var(--shadow-md); text-align: center; }
.live-stage::before { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(30deg, transparent 48%, #fff 49% 50%, transparent 51%); background-size: 48px 48px; content: ""; pointer-events: none; }
.live-stage > * { position: relative; z-index: 1; }
.live-stage-top { display: flex; align-items: center; justify-content: center; gap: 10px; }
.live-stage-top p { margin: 0; color: #b9d6f6; font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.live-pulse { position: relative; display: inline-block; width: 10px; height: 10px; background: #8aa0b7; border-radius: 50%; }
.live-pulse.danger { background: #ff334d; box-shadow: 0 0 0 7px rgba(255,51,77,.15); animation: pulse 1.5s infinite; }
.live-pulse.success { background: #3bd49a; box-shadow: 0 0 0 7px rgba(59,212,154,.13); }
.live-pulse.info { background: #4ca1ff; box-shadow: 0 0 0 7px rgba(76,161,255,.14); }
.live-pulse.warning { background: #ffca4b; box-shadow: 0 0 0 7px rgba(255,202,75,.14); }
@keyframes pulse { 50% { transform: scale(1.2); box-shadow: 0 0 0 12px rgba(255,51,77,0); } }
.live-emblem { display: flex; width: max-content; align-items: center; gap: 12px; margin: 26px auto 12px; text-align: left; }
.live-emblem > span { display: grid; width: 58px; height: 66px; place-items: center; color: #fff; background: linear-gradient(#1783ff, #064eb8); border: 3px solid #fff; border-radius: 12px 12px 20px 20px; font-family: Georgia, serif; font-size: 30px; font-weight: 900; box-shadow: 0 0 0 5px rgba(255,255,255,.1); }
.live-emblem strong, .live-emblem small { display: block; }
.live-emblem strong { font-size: 20px; }
.live-emblem small { color: #9fc9f7; font-size: 9px; font-weight: 900; letter-spacing: .16em; }
.live-stage h1 { margin: 0; font-family: Georgia, "Times New Roman", serif; font-size: clamp(30px, 4vw, 54px); }
.live-description { max-width: 730px; margin: 10px auto 24px; color: #c2d6ea; }
.live-meta-grid { display: grid; max-width: 860px; grid-template-columns: repeat(3, 1fr); margin: 0 auto 20px; background: rgba(255,255,255,.07); border: 1px solid rgba(255,255,255,.15); border-radius: 10px; }
.live-meta-grid > div { display: flex; min-height: 92px; flex-direction: column; align-items: center; justify-content: center; padding: 14px; }
.live-meta-grid > div + div { border-left: 1px solid rgba(255,255,255,.14); }
.live-meta-grid span { color: #91b8e3; font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.live-meta-grid strong { margin-top: 3px; font-size: 18px; }
.live-meta-grid small { color: #bcd0e6; }
.live-countdown-label { margin: 8px 0 0; color: #ffda6d; font-size: 10px; font-weight: 900; letter-spacing: .16em; }
.countdown-large { margin: 5px auto 18px; }
.countdown-large > div { min-width: 110px; background: rgba(255,255,255,.96); }
.countdown-large strong { font-size: 40px; }
.live-now-banner { display: inline-flex; align-items: center; gap: 10px; margin: 7px auto 18px; padding: 12px 18px; color: #fff; background: rgba(222, 26, 50, .85); border: 1px solid rgba(255,255,255,.32); border-radius: 7px; font-size: 11px; letter-spacing: .08em; }
.live-now-banner span { width: 9px; height: 9px; background: #fff; border-radius: 50%; animation: pulse 1.5s infinite; }

.site-footer { position: relative; min-height: 170px; overflow: hidden; color: #c1d0e2; background: linear-gradient(100deg, #02162f, #062d58 52%, #02162f); border-top: 4px solid var(--red-600); }
.footer-inner { position: relative; z-index: 2; display: flex; min-height: 170px; flex-direction: column; align-items: center; justify-content: center; padding-block: 20px; text-align: center; }
.footer-logo { height: 50px; width: auto; max-width: 290px; object-fit: contain; filter: brightness(0) invert(1); opacity: .96; }
.footer-domain { display: flex; align-items: center; gap: 8px; margin: 7px 0 3px; color: #fff; font-size: 16px; }
.globe-mark { font-size: 22px; }
.footer-inner p { margin: 2px 0; font-size: 11px; }
.footer-inner .copyright { color: #8095ae; font-size: 10px; }
.footer-angle { position: absolute; bottom: -55px; width: 33%; height: 120px; background: var(--red-600); transform: skewX(-35deg); opacity: .85; }
.footer-angle-left { left: -12%; }
.footer-angle-right { right: -12%; transform: skewX(35deg); }

*:focus-visible { outline: 3px solid #69aaff; outline-offset: 2px; }
