/* Shared layout scale. Components respond to their available space. */
:root{--sidebar:232px;--page-gutter:clamp(16px,3vw,40px);--card-padding:clamp(18px,2.2vw,28px);--layout-gap:24px}
body{font-size:14px;line-height:1.5}
.main-content{max-width:1280px;padding:32px var(--page-gutter) 28px}
.app-footer{max-width:1280px;padding:24px var(--page-gutter) 36px;font-size:12px;gap:12px 24px}
.app-footer p{font-size:12px}
.app-header{padding:0 var(--page-gutter);height:84px;background:var(--surface);gap:24px}
.desktop-breadcrumb{min-width:0;font-size:13px;gap:12px}
.desktop-breadcrumb [data-breadcrumb]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.header-actions{gap:16px;flex-shrink:0}
.header-date{font-size:13px;white-space:nowrap}
.sidebar{padding:28px 18px;overflow-y:auto;overscroll-behavior:contain}
.sidebar-label{font-size:10px;margin-top:38px}
.sidebar .nav-item{font-size:14px;min-height:48px}
.sidebar-note p{font-size:12px}
.sidebar-foot{font-size:10px}
.sidebar-bottom{padding-top:28px}
.page-heading{margin-bottom:24px;align-items:center;gap:20px}
.page-heading h1{font-size:clamp(30px,3.1vw,42px);line-height:1.2;letter-spacing:-1.2px;text-wrap:balance}
.page-heading p{font-size:14px;max-width:64ch;margin-top:12px}
.page-heading .section-kicker{font-size:10px;margin-bottom:10px}
.quiet-link{font-size:12px;white-space:normal;flex-shrink:0}
.game-tabs{gap:10px;margin-bottom:26px;padding:4px 2px 10px;scroll-padding-inline:8px}
.game-tab{font-size:13px;min-height:44px;padding:10px 16px;line-height:1.35}
.card{padding:var(--card-padding);border-radius:20px;min-width:0}
.card-heading{align-items:flex-start;gap:16px;margin-bottom:18px}
.card-heading h2,.secondary-column .card-heading h2{font-size:20px;line-height:1.3}
.card-heading .section-kicker,.secondary-column .card-heading .section-kicker{font-size:10px;line-height:1.5;letter-spacing:1.2px}
.section-kicker,.eyebrow{line-height:1.5}
.small,.muted.small{font-size:13px}
.pill{font-size:11px;padding:6px 10px;line-height:1.4}
.soft-icon,.secondary-column .card-heading .soft-icon{width:44px;height:44px}
.icon-button,.menu-trigger,.games-drawer-header>[data-drawer-close],.small-draw .card-heading .icon-button{width:44px;height:44px;flex-shrink:0}
.language-switch summary{min-width:64px;min-height:44px;font-size:13px;padding:10px 12px}
.language-switch a{min-height:44px}
.button,.checker-actions .button,.feature-bottom .button{min-height:46px;padding:12px 18px;font-size:13px;gap:10px}
.text-link,.card-bottom .text-link,.coverage-card .text-link{font-size:13px;min-height:32px}
.plain-button,.checker-actions .plain-button{font-size:13px;min-height:44px;padding:10px 4px}

/* Results and tools remain readable in a narrow card as well as a wide page. */
.dashboard-grid{grid-template-columns:minmax(0,1fr);gap:28px}
.secondary-column{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;align-items:start}
.secondary-column>.card,.secondary-column .frequency-card,.secondary-column .reminder-card{margin:0;grid-column:auto;grid-row:auto}
.secondary-column .checker-card,.tool-grid .checker-card{padding:var(--card-padding)}
.tool-grid{grid-template-columns:minmax(0,1fr);gap:24px}
.tool-grid>aside{display:grid;grid-template-columns:minmax(0,1fr);gap:24px;min-width:0}
.tool-grid>aside>.card{margin-top:0}
.featured-draw,.tool-grid .featured-draw{padding:var(--card-padding);border-radius:22px;min-width:0}
.featured-draw .card-heading h2{font-size:clamp(26px,2.3vw,34px);line-height:1.2;letter-spacing:-.8px;overflow-wrap:break-word}
.featured-draw .section-kicker{font-size:10px;line-height:1.5;letter-spacing:1.2px}
.featured-draw>p.muted{font-size:14px;margin-bottom:24px}
.featured-draw .icon-button{width:44px;height:44px}
.featured-draw .balls,.tool-grid .featured-draw .balls{gap:8px;max-width:420px;width:100%;min-width:0}
.featured-draw .balls .ball,.tool-grid .featured-draw .balls .ball{flex:0 1 52px;min-width:0;width:52px;font-size:23px;letter-spacing:-.5px}
.featured-draw .balls .ball.shared-outcome,.tool-grid .featured-draw .balls .ball.shared-outcome{font-size:12px;line-height:1.2;text-align:center}
.draw-extras{font-size:12px;gap:14px 22px;margin-top:20px}
.draw-extras>span{min-width:0;flex-wrap:wrap}
.draw-extras strong.extra-value{font-size:13px;min-height:30px;height:auto;padding:3px 9px;overflow-wrap:anywhere;max-width:100%}
.draw-extras strong.extra-value:not(:only-child){width:auto}
.feature-bottom,.tool-grid .featured-draw .feature-bottom{display:flex;flex-wrap:wrap;gap:20px;margin-top:24px;padding-top:24px;align-items:flex-end}
.feature-bottom>div{flex:1 1 240px;min-width:0}
.feature-bottom>.button{flex:0 0 auto;max-width:100%;margin-left:auto}
.feature-bottom .eyebrow{font-size:10px;line-height:1.6;letter-spacing:1px;overflow-wrap:normal}
.jackpot-meta{gap:6px 14px}
.jackpot-date{font-size:13px}
.jackpot-basis,.jackpot-unavailable{font-size:13px;line-height:1.6}
.jackpot-value{font-size:clamp(34px,3vw,44px)}
.jackpot-value-full{font-size:clamp(24px,2.6vw,34px)}
.jackpot-unit{font-size:15px;white-space:normal}
.draw-closing{gap:16px;margin-top:24px;padding-top:22px}
.draw-closing-label{font-size:12px}
.draw-closing time{font-size:14px}
.draw-closing small{font-size:11px}
.countdown-caption{font-size:12px}
.countdown-clock{font-size:26px}
.section-heading{margin:30px 0 18px}
.section-heading h2{font-size:20px}
.other-games,.favorites-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:20px}
.small-draw,.favorites-grid .small-draw{padding:22px;height:100%}
.small-draw .game-name,.favorites-grid .small-draw .game-name{font-size:16px;line-height:1.35}
.small-draw .muted.small,.favorites-grid .small-draw .muted.small{font-size:13px}
.small-draw .section-kicker{font-size:10px;letter-spacing:.8px}
.small-draw .balls,.favorites-grid .small-draw .balls{gap:6px;min-width:0;margin-top:20px;max-width:300px}
.small-draw .balls .ball,.favorites-grid .small-draw .balls .ball{flex:0 1 34px;min-width:0;width:34px;font-size:14px}
.small-draw .draw-extras{color:var(--muted);font-size:12px}
.small-draw .draw-extras strong.extra-value{color:var(--ink);background:var(--surface-subtle);border-color:var(--line);font-size:13px}
.small-draw .balls .ball.shared-outcome{font-size:11px;line-height:1.2;text-align:center}
.card-bottom{margin-top:20px;padding-top:16px}
.card-bottom .muted,.favorites-grid .card-bottom .muted{font-size:12px}
.card-bottom strong,.favorites-grid .card-bottom strong{font-size:21px}
.learn-card,.reminder-card{padding:22px;gap:16px}
.learn-card h2{font-size:18px}
.learn-card p,.reminder-card p{font-size:13px}
.learn-card .section-kicker{font-size:10px}
.reminder-card strong{font-size:14px}
.demo-note,.source-note,.payment-term,.explanation-card .small,.coverage-card .demo-note{font-size:12px;line-height:1.65}
.explanation-card>p,.checker-card>p.muted{font-size:14px;line-height:1.65}
.checker-target{font-size:13px;padding:12px 14px}
.selected-numbers{gap:8px;margin:22px 0 18px}
.selection-slot{max-width:48px;font-size:18px}
.number-grid{grid-template-columns:repeat(auto-fit,minmax(44px,1fr));gap:8px}
.number-choice,.tool-grid .number-choice,.secondary-column .number-choice{min-height:44px;font-size:14px;border-radius:9px}
.star-grid{grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:8px}
.star-grid .star-choice{min-height:48px;padding:4px}
.field-label,.refund-label,.refund-label select{font-size:14px}
.refund-label{gap:16px;flex-wrap:wrap}
.refund-label select{min-height:44px;max-width:100%;padding:9px 12px}
.checker-result{font-size:14px;padding:14px}

/* Prize tables keep number columns aligned and allow long labels to wrap. */
.table-scroll{max-width:100%;overscroll-behavior-inline:contain;scrollbar-width:thin}
table,.prizes-card table,.table-scroll table{font-size:13px;line-height:1.5}
thead,.prizes-card th,.table-scroll th{font-size:12px}
th,td{padding:14px 12px;vertical-align:top}
th:first-child,td:first-child{white-space:normal;min-width:120px;max-width:280px}
td:not(:first-child),th:not(:first-child){font-variant-numeric:tabular-nums}
td strong{font-weight:650}
.prizes-card .table-scroll th:last-child{white-space:normal;min-width:76px;max-width:120px}
.card:not(.prizes-card)>.table-scroll th:first-child,.card:not(.prizes-card)>.table-scroll td:first-child{min-width:30px;max-width:48px;white-space:nowrap}
.card:not(.prizes-card)>.table-scroll th:nth-child(2),.card:not(.prizes-card)>.table-scroll td:nth-child(2){min-width:108px;max-width:240px;white-space:normal}
.table-scroll:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:6px}
.ticket-numbers{gap:20px}
.ticket-numbers strong{font-size:34px}
.ticket-numbers small,.ticket-numbers.compact small{font-size:12px}
.small-draw .ticket-numbers strong,.ticket-numbers.compact strong{font-size:26px;letter-spacing:1px}
.match-signs{gap:7px}
.match-signs .mini-ball,.small-draw .match-signs .mini-ball,.match-signs.compact .mini-ball{font-size:12px;min-width:28px;min-height:28px;padding:4px 7px}
.award-grid{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:12px}
.award-grid>div{padding:14px}
.award-grid strong{font-size:18px}
.award-grid span{font-size:12px;line-height:1.5}

/* Statistics use deliberate columns; symbols always fit inside their tiles. */
.stats-summary{grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:20px;margin-bottom:24px}
.metric,.metric:last-child{display:flex;grid-column:auto;flex-direction:column;gap:12px;align-items:flex-start}
.metric>span,.metric:last-child>span{font-size:13px;grid-column:auto}
.metric>strong,.metric:last-child>strong{font-size:36px;letter-spacing:-1px;grid-column:auto;grid-row:auto;font-variant-numeric:tabular-nums}
.metric .metric-date,.metric:last-child .metric-date{font-size:22px;margin:0}
.metric>small,.metric:last-child>small{font-size:12px;grid-column:auto}
.frequency-card .muted{font-size:14px}
.insight-note{font-size:12px;line-height:1.65;gap:8px}
.insight-note .icon{width:16px;height:16px}
.frequency-group-title,.calendar-ranking-label{font-size:14px;line-height:1.5}
.euro-frequency-card>.frequency-group-title,.euro-frequency-matrices>.frequency-group-title{margin-top:24px}
.frequency-matrix{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-top:18px}
.frequency-cell{align-items:center;min-width:0;gap:9px;padding:14px 6px;border-radius:12px}
.frequency-cell strong{font-size:18px;font-variant-numeric:tabular-nums}
.frequency-cell span{font-size:12px;font-variant-numeric:tabular-nums}
.frequency-matrix[data-frequency-matrix="stars"]{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.frequency-matrix[data-frequency-matrix="stars"] .frequency-cell{min-height:88px;padding:14px 8px;gap:12px}
.archive-stars,.calendar-stars{margin-top:24px;padding-top:24px}
.calendar-star-sample{font-size:12px;gap:8px 12px;margin-bottom:18px}
.calendar-star-sample strong{font-size:16px}
.calendar-statistics{margin:32px 0}
.calendar-stats-heading{margin:0 0 22px}
.calendar-stats-heading h2{font-size:clamp(23px,2.2vw,28px);line-height:1.3;letter-spacing:-.6px;text-wrap:balance}
.calendar-stats-heading>.muted{font-size:14px;max-width:70ch;margin-top:10px}
.calendar-reference,.calendar-period{font-size:12px;margin-top:9px;line-height:1.6}
.calendar-stats-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px}
.calendar-stat-card:first-child,.calendar-stat-card[data-calendar-window="month_all"]{grid-column:auto}
.calendar-window-label{font-size:12px;line-height:1.5;margin-bottom:7px}
.calendar-stat-card h3{font-size:24px;line-height:1.3}
.calendar-sample{gap:12px 22px;margin:20px 0;padding:16px 0}
.calendar-sample>div{gap:8px}
.calendar-sample dt{font-size:12px}
.calendar-sample dd{font-size:20px}
.calendar-count-label{font-size:12px;margin-bottom:12px}
.calendar-number-list{gap:7px}
.calendar-number-list li{padding:12px 3px;gap:10px}
.calendar-number-list strong{width:32px;font-size:18px}
.calendar-number-list li>span{font-size:13px}
.calendar-star-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:250px;gap:12px}
.calendar-star-list li{padding:14px 8px}
.calendar-stat-note,.calendar-empty,.calendar-stored-range,.calendar-method{font-size:12px;line-height:1.7;margin-top:16px}
.calendar-method{max-width:90ch}

/* Archive rows and saved preferences get the same comfortable spacing. */
.history-filter{gap:12px 16px;flex-wrap:wrap;align-items:flex-end;margin:18px 0}
.history-filter label{font-size:14px;display:flex;gap:10px;align-items:center}
.history-filter select{min-height:44px;font-size:14px;padding:10px 12px;margin-left:0}
.archive-notice{font-size:13px;padding:14px 16px;margin:18px 0}
.history-row{gap:20px;padding:22px 0;min-width:0}
.history-date{min-width:180px;font-size:14px;gap:12px;line-height:1.5}
.history-date small{font-size:12px;margin-top:5px}
.history-row .balls{gap:6px;min-width:0}
.history-row .balls .ball{width:32px;flex:0 1 32px;min-width:0;font-size:13px}
.history-row .match-signs{max-width:none;min-width:0}
.history-combination{gap:14px;min-width:0}
.pagination{gap:16px;font-size:13px;margin-top:24px}
.settings-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:24px;align-items:start}
.main-content[data-view="comprobar"]>.card+.featured-draw{margin-top:24px}
.settings-card{padding:var(--card-padding)}
.settings-card>h2{font-size:24px;margin:20px 0 12px;line-height:1.3}
.appearance-card>h2{margin-top:20px}
.settings-card>p{font-size:14px;line-height:1.7}
.appearance-options{gap:14px}
.appearance-option{min-height:84px;padding:18px 16px;gap:12px}
.appearance-option strong{font-size:15px}
.appearance-option small{font-size:13px;line-height:1.5}
.preference-row{font-size:14px;padding:16px 0;gap:16px}
.preference-row>span{min-width:0;line-height:1.5}
.toggle,.toggle.is-favorite{position:relative;width:48px;height:44px;min-width:48px;flex-shrink:0;padding:0;background:transparent;box-shadow:none}
.toggle:before{content:"";position:absolute;inset:9px 0;border-radius:999px;background:var(--disabled-bg);transition:background .15s}
.toggle>span{position:absolute;left:4px;top:13px;width:18px;height:18px;transform:translateX(0)}
.toggle.is-favorite:before{background:var(--accent-strong)}
.toggle.is-favorite>span{transform:translateX(22px)}
.empty-state{padding:44px var(--card-padding)}
.empty-state p{font-size:14px}
.games-drawer-header>[data-drawer-close]{width:44px;height:44px}
.drawer-game-date,.drawer-game-unit,.drawer-game-basis{font-size:12px}
.drawer-game-name,.drawer-game-amount{font-size:15px}
.drawer-settings{min-height:48px}

@media(min-width:640px){
 .frequency-matrix{grid-template-columns:repeat(7,minmax(0,1fr))}
 .frequency-matrix[data-frequency-matrix="main"]{grid-template-columns:repeat(10,minmax(0,1fr))}
 .frequency-matrix[data-frequency-matrix="stars"]{grid-template-columns:repeat(6,minmax(0,1fr))}
 .tool-grid>aside{grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr))}
}
@media(min-width:1200px){.frequency-matrix{grid-template-columns:repeat(10,minmax(0,1fr))}}
@media(min-width:1280px){
 .dashboard-grid{grid-template-columns:minmax(0,1fr) minmax(330px,.65fr);gap:28px}
 .secondary-column{display:flex;flex-direction:column;gap:24px}
 .secondary-column>.card{width:100%}
 .tool-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:28px}
 .tool-grid>aside{grid-template-columns:minmax(0,1fr)}
 .frequency-matrix[data-frequency-matrix="stars"]{grid-template-columns:repeat(12,minmax(0,1fr))}
}
@media(max-width:1100px){
 :root{--sidebar:0px}
 .sidebar,.desktop-breadcrumb{display:none}
 .app-shell{margin-left:0}
 .app-header{height:auto;min-height:76px;position:sticky;top:0;z-index:30;padding:12px var(--page-gutter);background:var(--surface)}
 .mobile-brand{display:block;min-width:0}
 .app-header .brand{font-size:24px;gap:9px}
 .app-header .brand small{font-size:6px;letter-spacing:1.4px}
 .app-header .brand-mark{grid-template-columns:repeat(2,11px);grid-template-rows:repeat(2,11px)}
 .main-content{max-width:1040px;min-height:calc(100svh - 180px)}
 .app-footer{max-width:1040px;padding-bottom:calc(112px + env(safe-area-inset-bottom))}
 .bottom-nav{position:fixed;inset:auto 0 0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:6px max(12px,env(safe-area-inset-left)) calc(6px + env(safe-area-inset-bottom));z-index:50;border-top:1px solid var(--line);background:var(--surface)}
 .bottom-nav .nav-item{display:flex;position:relative;flex-direction:column;gap:5px;min-height:58px;padding:8px 3px;font-size:11px;line-height:1.4;border-radius:10px}
 .bottom-nav .nav-item .icon{width:22px;height:22px}
 .bottom-nav .nav-item.is-active{background:transparent;color:var(--teal)}
 .bottom-nav .nav-item.is-active:before{content:"";position:absolute;top:0;height:2px;width:24px;border-radius:2px;background:var(--teal)}
 .toast{left:50%;bottom:calc(86px + env(safe-area-inset-bottom));font-size:13px;text-align:center}
}
@media(max-width:900px){
 .history-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;padding:22px 0}
 .history-date{grid-column:1;min-width:0}
 .history-row>.icon{grid-column:2;grid-row:1}
 .history-row>.balls,.history-row>.history-combination,.history-row>.match-signs,.history-row>.ticket-numbers{grid-column:1/-1;grid-row:2;max-width:100%}
}
@media(max-width:639px){
 :root{--page-gutter:16px;--card-padding:20px;--layout-gap:20px}
 .app-header{min-height:72px;gap:12px}
 .app-header .brand{font-size:23px;gap:8px}
 .app-header .brand-mark{grid-template-columns:repeat(2,10px);grid-template-rows:repeat(2,10px)}
 .app-header .brand small{font-size:5.5px;letter-spacing:1.1px}
 .header-date{display:none}
 .header-actions{gap:8px}
 .main-content{padding-top:24px}
 .page-heading{align-items:flex-start;gap:12px;flex-wrap:wrap;margin-bottom:20px}
 .page-heading>div{min-width:0;flex:1 1 220px}
 .page-heading h1{font-size:32px;letter-spacing:-1px}
 .page-heading h1 em{display:inline}
 .page-heading p{font-size:14px;max-width:100%;line-height:1.65}
 .page-heading .quiet-link{display:inline-flex;font-size:12px;min-height:32px}
 .game-tabs{margin-bottom:20px}
 .game-tab{font-size:12px;padding:10px 13px}
 .dashboard-grid,.secondary-column,.tool-grid,.settings-grid{gap:20px}
 .featured-draw,.tool-grid .featured-draw{padding:22px 20px}
 .featured-draw .card-heading h2{font-size:28px}
 .featured-draw .balls .ball,.tool-grid .featured-draw .balls .ball{width:46px;flex-basis:46px;font-size:21px}
 .featured-draw .balls,.tool-grid .featured-draw .balls{gap:6px}
 .feature-bottom,.tool-grid .featured-draw .feature-bottom{flex-wrap:wrap;gap:18px}
 .feature-bottom>div{flex:1 0 100%;width:100%}
 .feature-bottom>.button{width:100%;margin-left:0}
 .feature-bottom .eyebrow{max-width:none}
 .jackpot-meta{display:flex;gap:8px 12px}
 .jackpot-value{font-size:38px}
 .jackpot-value-full{font-size:28px}
 .draw-closing{grid-template-columns:minmax(0,1fr);gap:16px}
 .draw-countdown{text-align:left;display:flex;justify-content:space-between;align-items:center;gap:12px}
 .countdown-caption{margin:0}
 .countdown-clock{font-size:25px}
 .other-games,.favorites-grid{grid-template-columns:minmax(0,1fr);gap:16px}
 .small-draw,.favorites-grid .small-draw{padding:20px}
 .small-draw .card-heading{gap:12px}
 .card-heading h2,.secondary-column .card-heading h2{font-size:20px}
 .prizes-card .card-heading{padding:0;flex-wrap:wrap}
 .prizes-card .card-heading h2{font-size:20px}
 table,.prizes-card table,.table-scroll table{font-size:12px}
 thead,.prizes-card th,.table-scroll th{font-size:12px}
 th,td{padding:13px 10px}
 .stats-summary{grid-template-columns:minmax(0,1fr);gap:12px}
 .metric,.metric:last-child{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;padding:20px}
 .metric>span,.metric:last-child>span{grid-column:1;align-self:center}
 .metric>strong,.metric:last-child>strong{grid-column:2;grid-row:1/3;align-self:center;font-size:30px}
 .metric .metric-date,.metric:last-child .metric-date{font-size:20px}
 .metric>small,.metric:last-child>small{grid-column:1;font-size:11px}
 .frequency-card{padding:20px}
 .frequency-matrix{gap:8px}
 .frequency-cell{padding:12px 3px;gap:8px}
 .frequency-cell strong{font-size:17px}
 .frequency-cell span{font-size:12px}
 .frequency-matrix[data-frequency-matrix="stars"]{gap:10px}
 .calendar-stats-grid{gap:20px}
 .calendar-stat-card{padding:20px}
 .calendar-stat-card h3{font-size:23px}
 .calendar-number-list{gap:6px}
 .calendar-number-list strong{width:30px;font-size:17px}
 .calendar-number-list li>span{font-size:12px}
 .calendar-star-list{grid-template-columns:repeat(2,minmax(0,1fr));max-width:240px;gap:12px}
 .appearance-options{grid-template-columns:1fr}
 .appearance-option{min-height:76px;padding:16px}
 .app-footer{font-size:12px;gap:10px}
 .app-footer>span:last-child{margin-left:0}
 .app-footer p{font-size:12px}
}
@media(max-width:374px){
 :root{--card-padding:18px}
 .app-header{gap:8px}
 .app-header .brand{font-size:21px}
 .app-header .brand small{font-size:5px;letter-spacing:1px}
 .language-switch summary{min-width:58px;padding:9px}
 .page-heading h1{font-size:29px}
 .featured-draw,.tool-grid .featured-draw{padding:20px 18px}
 .featured-draw .card-heading h2{font-size:25px}
 .number-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px}
 .star-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
 .frequency-matrix[data-frequency-matrix="stars"]{grid-template-columns:repeat(3,minmax(0,1fr))}
 .calendar-stat-card{padding:18px}
 .calendar-number-list:not(.calendar-number-list-five):not(.calendar-star-list):not(.archive-number-list){grid-template-columns:repeat(3,minmax(0,1fr))}
 .calendar-number-list-five{gap:5px}
 .calendar-number-list-five li{padding:11px 1px}
 .calendar-number-list-five strong{width:28px;font-size:16px}
 .calendar-star-list{grid-template-columns:repeat(2,minmax(0,1fr))}
 .metric .metric-date,.metric:last-child .metric-date{font-size:18px}
}
@media(min-width:1101px){.admin-bar .sidebar{top:32px}}
@media(min-width:601px) and (max-width:782px){.admin-bar .app-header{top:46px}}
@media(min-width:783px) and (max-width:1100px){.admin-bar .app-header{top:32px}}
@media(prefers-reduced-motion:reduce){.toggle:before{transition:none}}

/* All-time rankings use the same number-and-count tiles as calendar periods. */
.archive-number-list{grid-template-columns:repeat(var(--archive-columns,5),minmax(0,1fr));max-width:640px;margin:18px 0 20px}
.archive-number-list.calendar-star-list{max-width:250px}
.archive-number-list li>strong:not(.stats-star){width:auto;min-width:30px;max-width:100%;height:32px;aspect-ratio:auto;padding:0 4px;font-size:18px;letter-spacing:0}
.archive-number-list li>strong.archive-symbol{font-size:14px;border-radius:9px}
.archive-number-list li>span{font-size:12px}
.archive-count-label{margin-top:20px}

/* Odd/even mixes are observed draw counts, with separate star samples. */
.parity-breakdown{margin-top:24px;border-top:1px solid var(--line);padding-top:0;min-width:0}
.parity-breakdown>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:48px;padding:16px 0;font-size:15px;font-weight:700;line-height:1.4;cursor:pointer;list-style:none;color:var(--ink)}
.parity-breakdown>summary::-webkit-details-marker{display:none}
.parity-breakdown>summary::marker{content:""}
.parity-breakdown>summary:after{content:"";width:8px;height:8px;flex-shrink:0;margin-right:3px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:transform .15s}
.parity-breakdown[open]>summary:after{transform:rotate(225deg)}
.parity-breakdown>summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:6px}
.parity-group{min-width:0;margin-top:4px}
.parity-group+.parity-group{margin-top:24px;padding-top:20px;border-top:1px solid var(--line)}
.parity-group-heading{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}
.parity-group-heading>strong{font-size:13px;line-height:1.5;color:var(--ink)}
.parity-group-heading>span{font-size:12px;line-height:1.6;color:var(--muted)}
.parity-group-heading b{font-size:14px;font-weight:700;color:var(--ink);margin-left:6px;font-variant-numeric:tabular-nums}
.parity-patterns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,136px),1fr));gap:10px;list-style:none;padding:0;margin:16px 0 0}
.parity-pattern{display:flex;flex-direction:column;gap:12px;min-width:0;padding:14px 10px;border:1px solid var(--line);border-radius:12px;background:var(--surface-subtle)}
.parity-pattern.is-most-frequent{border-color:var(--accent-border);background:var(--accent-soft)}
.parity-values{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:6px;width:100%;font-variant-numeric:tabular-nums}
.parity-values>span:not(.parity-plus){display:flex;flex-direction:column;align-items:center;gap:6px;min-width:0;text-align:center}
.parity-values strong{font-size:22px;line-height:1;font-weight:750;color:var(--ink)}
.parity-values small{font-size:12px;line-height:1.4;color:var(--muted);overflow-wrap:anywhere;max-width:100%}
.parity-plus{font-size:14px;line-height:1;padding-top:4px;color:var(--muted)}
.parity-result{display:flex;justify-content:space-between;align-items:baseline;flex-wrap:wrap;gap:6px;font-variant-numeric:tabular-nums}
.parity-result>strong{font-size:16px;line-height:1.4;color:var(--ink);font-weight:700}
.parity-result>span{font-size:12px;line-height:1.5;color:var(--muted)}
.parity-most-label{font-size:11px;line-height:1.5;font-weight:700;color:var(--accent)}
.parity-method,.parity-empty{font-size:12px;line-height:1.7;color:var(--muted);margin-top:16px;max-width:90ch}
@media(prefers-reduced-motion:reduce){.parity-breakdown>summary:after{transition:none}}
