/* Larger, stronger typography across desktop, tablet and phone. */
:root{--muted:#514363}
body{font-size:18px;font-weight:600;line-height:1.65}
input,select,button{font-weight:700}
p,small,label{line-height:1.65}
button,a,input,select{scroll-margin-block:95px}
.card-heading p,.page-heading p,.context-bar,.small-label,.eyebrow,.preset-row>span,.positions-header,.pos-label,.range-leader small,.range-footnote p,.filter-strip,.generate-card>p,.line-picker,.switch-label strong,.switch-label small,.generation-meta,.text-button,.gentle-note,.gentle-note strong,.line-number,.line-tag,.empty-state,.empty-state strong,.odds-note,.compact-card>span:last-child,.range-legend,.chart-row,.chart-footnote,.hot-cold-summary,.comparison-result,.history-toolbar,.history-row time,.draw-tag,.strategy-item small,.match-note,.tracker-totals span,.tracker-form label,.tracker-entry,footer,footer strong,footer p,.dialog-copy,.form-label,.source-row,.source-row strong,.source-row a,.notice,.confirm-row,.snapshot,.crumb,.crumb strong{color:#514063}
.selected-frequency{color:#563075!important;font-size:16px!important}
.game-card .game-card-format{color:#59416f}.game-card.selected .game-card-format{color:#fff}
.game-card .game-card-title{font-size:19px}.game-card{padding:16px 18px;min-height:100px}
.latest-banner .section-line>span,.latest-banner p,.latest-banner a{color:#514063}.latest-banner a{max-width:none;font-size:16px;font-weight:700}
.latest-banner h3{font-size:24px}.latest-banner .section-line>span{font-size:17px}
.card-heading h2,.generate-card h2{font-size:30px;font-weight:800}
.small-label,.eyebrow,.hero-kicker{letter-spacing:.5px}
.leader-line>strong{font-size:20px;color:#351657;font-weight:800}
.percentage{font-size:18px;color:#491577;font-weight:800}
.position-row{padding:22px 0;grid-template-columns:100px minmax(125px,1fr) minmax(180px,1.4fr) 145px;gap:15px}
.positions-header{grid-template-columns:100px minmax(125px,1fr) minmax(180px,1.4fr) 145px;gap:15px;letter-spacing:0;font-size:14px}
.pos-circle{width:43px;height:43px;font-size:17px;font-weight:800;flex-shrink:0}
.range-inputs{gap:8px}.range-inputs input{width:55px;min-height:48px;font-size:20px;font-weight:800;color:#351657;border-color:#a995bf}
.preference-controls select{width:102px;min-height:48px;font-size:16px;color:#351657;border-color:#a995bf}
.lock-button{height:44px;width:36px;color:#604575;flex-shrink:0}.lock-button .icon{height:20px;width:20px}.lock-value{min-height:44px;font-size:18px;color:#351657}
.grand-title,.grand-panel small,.grand-panel select{color:#66470d}.grand-panel select{font-size:17px;min-height:46px;max-width:none}
.info-dot{height:24px;width:24px;font-size:16px;line-height:20px;flex-shrink:0;color:#59397c;border-color:#8d72a8}
.nav-label,.nav-item,.side-bottom p,.side-note,.side-link{color:#f0e5ff}.nav-item{font-size:16px;padding:15px 10px}.nav-label{font-size:13px;letter-spacing:.4px}
.sidebar{width:250px}.app-shell{margin-left:250px}.toast{left:calc(50% + 125px);font-size:17px}
.hero-kicker,.hero-aside p,.hero-brand-copy p{color:#fff}.hero-kicker{font-size:14px}.hero-add{font-size:16px;min-height:44px}
.chip,.button,.text-button{font-size:16px;font-weight:700;min-height:44px}.button{white-space:normal}.generate-button{font-size:19px;min-height:58px}.generate-button>span:last-child{flex-shrink:0}
.window-picker select,.history-option>select,.filter-strip select,.card-heading>select,.tracker-form input,.tracker-form select,.form-label input,.form-label select{font-size:16px;min-height:44px;color:#351657;border-color:#a995bf}
.line-picker input{font-size:22px}.stepper{width:44px;height:44px;font-size:22px;color:#50266f}.switch-label input[role=switch]{flex-shrink:0}
.card{padding:28px}.latest-banner{padding:24px 28px}.generated-line .ball,.history-row .ball{width:45px;height:45px;font-size:18px;flex-shrink:0}.generated-line .balls,.history-row .balls{flex-wrap:wrap;gap:10px}.generated-line .line-info{color:#514063}.generated-line .icon-button{color:#604575;width:44px;height:44px}.ball-separator{color:#604575}.odds-note{line-height:1.8}.heat-cell strong{font-size:22px}.heat-cell span{font-size:16px}.heat-cell.impossible{color:#76667e!important}
@media(max-width:1450px){.studio-grid{grid-template-columns:1fr}.generator-column{display:block}.gentle-note{margin-top:20px}.generate-card{display:block}.generate-card h2{max-width:none}.latest-banner{grid-template-columns:1fr}.latest-banner .section-line{grid-column:1;grid-row:1;display:flex;gap:15px;justify-content:space-between;flex-wrap:wrap}.latest-banner .balls{grid-column:1;grid-row:2;margin:10px 0;justify-content:flex-start;flex-wrap:wrap}.latest-banner a{grid-column:1;grid-row:3}.latest-banner p{grid-column:1;grid-row:4}.hero-aside{display:none}.brand-hero{justify-content:center}.position-row,.positions-header{grid-template-columns:90px 135px minmax(160px,1fr) 145px}.pos-label>span:last-child{display:block}}
@media(max-width:1100px){.sidebar{display:none}.app-shell{margin-left:0}.mobile-nav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:30;justify-content:space-around;background:#fff8ff;border-top:1px solid #cdb7de;padding:8px;gap:4px}.mobile-nav button{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px;border:0;border-radius:9px;padding:7px 4px;background:transparent;color:#5a3971;font-size:16px;font-weight:700}.mobile-nav button.active{background:#edddff;color:#5815a6}.mobile-nav .icon{width:23px;height:23px}main{padding-bottom:115px}.toast{left:50%;bottom:100px}.game-selector{grid-template-columns:repeat(2,minmax(0,1fr))}.game-card .game-card-title{font-size:19px}.game-card .game-card-format{display:block;font-size:16px}.game-card .game-symbol{display:none}.topbar .crumb{font-size:16px}}
@media(max-width:760px){body{font-size:17px}.topbar{min-height:64px;height:auto;padding:12px 14px}.mobile-brand{font-size:20px}.top-actions .icon-button{width:40px;height:40px}.avatar{width:32px;height:32px;font-size:14px}.hero-wordmark{font-size:40px}.orbit-logo{width:116px;height:120px}.hero-brand-copy p{font-size:16px;white-space:normal}.brand-hero{min-height:190px;padding-bottom:14px}.hero-aside{display:none}.wordmark-sparkle{display:none}main{padding:16px 14px 115px}.game-selector{gap:8px;padding:8px}.game-card{padding:12px 7px;min-height:84px;display:block;text-align:center}.game-card .game-card-title{font-size:17px;white-space:normal}.game-card .game-card-format{font-size:14px}.latest-banner{padding:20px}.latest-banner h3{font-size:23px}.latest-banner .section-line{display:block}.latest-banner .section-line>span{display:inline-block;margin-top:7px;font-size:16px;color:#51306b}.latest-banner .balls{gap:8px;justify-content:flex-start;flex-wrap:wrap;width:auto}.latest-banner .ball{flex:0 0 44px;min-height:44px;height:44px;width:44px;font-size:20px}.latest-banner .ball-separator{flex:0 0 8px}.latest-banner p{font-size:16px}.context-bar{align-items:flex-start;flex-direction:column;gap:12px;font-size:16px}.context-bar>div:first-child{max-width:none}.window-picker{width:100%;justify-content:space-between}.window-picker select{max-width:none;font-size:16px}.card{padding:22px 18px}.card-heading{align-items:flex-start;flex-wrap:wrap;gap:12px}.card-heading h2,.generate-card h2{font-size:28px}.card-heading p,.generate-card>p{font-size:17px}.small-label{font-size:14px}.preset-row{gap:8px}.preset-row>span{width:100%}.chip{padding:9px 12px;min-height:44px;font-size:16px}.positions-header{display:none}.position-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 10px;padding:22px 0;min-height:0}.pos-label{grid-column:1/-1;grid-row:1;gap:10px;font-size:17px}.pos-label>span:last-child{display:block}.pos-circle{height:42px;width:42px;font-size:18px}.range-inputs{grid-column:1;grid-row:2;flex-wrap:wrap;gap:5px}.range-inputs input{width:51px;height:48px;padding:8px 2px;font-size:20px}.preference-controls{grid-column:2;grid-row:2;justify-content:flex-end;gap:2px;min-width:0}.preference-controls select{width:95px;height:48px;padding:8px 4px;font-size:16px}.lock-button{width:32px;height:44px}.lock-button .icon{width:20px;height:20px}.range-leader{grid-column:1/-1;grid-row:3;background:#f7f0ff;border-radius:10px;padding:13px}.range-leader .leader-line{gap:10px}.leader-line>strong{font-size:21px}.percentage{font-size:19px;padding:3px 8px}.range-leader small,.selected-frequency{font-size:16px!important}.range-footnote p{font-size:16px}.range-footnote .icon{width:20px;height:20px;flex-shrink:0}.grand-panel{padding:17px;display:flex;flex-wrap:wrap;gap:12px}.grand-title{font-size:18px}.grand-panel small{font-size:16px}.grand-panel select{max-width:100%;font-size:17px}.filter-strip{font-size:17px;gap:18px}.filter-strip label{flex-wrap:wrap}.filter-strip select{font-size:16px}.generate-card{padding:24px 20px}.generate-top .small-label{font-size:14px}.line-picker{font-size:18px;gap:10px;flex-wrap:wrap}.switch-label strong{font-size:18px}.switch-label small{font-size:16px}.history-option>select{font-size:16px;width:100%}.generation-meta,.gentle-note,.gentle-note strong,.odds-note{font-size:16px}.generated-card .card-heading h2{font-size:28px}.generated-line{display:grid;grid-template-columns:1fr auto;gap:10px;padding:20px 0}.generated-line .line-number{grid-column:1;font-size:16px;width:auto}.generated-line .balls{grid-column:1/-1;grid-row:2;gap:8px;flex-wrap:wrap}.generated-line .ball{height:43px;width:43px;font-size:18px}.generated-line .line-info{grid-column:2;grid-row:1;display:flex;gap:8px;font-size:16px}.line-tag{display:inline}.generated-line .icon-button{width:44px;height:44px}.history-row{display:flex;flex-wrap:wrap;gap:14px;padding:20px 0}.history-row time{font-size:18px}.history-row .balls{width:100%;flex-wrap:wrap;gap:8px}.history-row .ball{height:43px;width:43px;font-size:18px}.draw-tag{font-size:16px}.chart-footnote,.chart-row,.range-legend,.hot-cold-summary,.comparison-result,.match-note,.tracker-entry{font-size:16px}.chart-row{grid-template-columns:1fr;gap:7px}.stacked-bar{height:44px}.bar-segment{font-size:14px}.number-heatmap{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.heat-cell{padding:12px 2px}.heat-cell strong{font-size:21px}.heat-cell span{font-size:15px}.detail-card .card-heading>select{max-width:100%;font-size:16px}.insights-intro{grid-template-columns:1fr}.compact-card>span:last-child{font-size:16px}.compact-card>strong,.compact-card:last-child>strong{font-size:28px}.tracker-totals{grid-template-columns:1fr}.tracker-totals span,.tracker-form label{font-size:16px}.tracker-totals strong{font-size:25px}.saved-line .line-info{margin-left:0}.saved-line>div:not(.line-info){grid-column:1/-1;grid-row:2}.saved-line .balls{display:flex}.history-toolbar{flex-wrap:wrap;gap:14px}footer,footer p,footer .text-button{font-size:16px}.mobile-nav button{font-size:14px}.toast{font-size:16px}dialog{padding:24px 20px}.dialog-copy{font-size:17px}.dialog-heading h2{font-size:26px}}
@media(max-width:370px){.hero-wordmark{font-size:34px}.orbit-logo{width:98px}.mobile-brand{font-size:18px}.avatar{display:none}.card{padding:20px 14px}.range-inputs input{width:46px}.preference-controls select{width:88px}.game-card .game-card-title{font-size:16px}}
@media(min-width:761px){.position-row,.positions-header{grid-template-columns:130px 135px minmax(160px,1fr) 145px}.pos-label{gap:7px}}
@media(max-width:760px){.range-leader:before{content:'Most frequent range';display:block;margin-bottom:6px;font-size:16px;font-weight:700;color:#514063}.preference-controls select{min-width:0;flex:1}.preference-controls .lock-value{min-width:0;flex:1}.lock-button{width:30px}.game-card .game-card-format{line-height:1.5}}
/* In-app instructions use the same high-contrast, large type as the workspace. */
.guide-banner{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:18px;padding:20px 24px;border:1px solid #ccb2eb;border-radius:18px;background:#fff;color:#351657}.guide-banner strong{font-size:20px;font-weight:800}.guide-banner p{font-size:17px;color:#514063;margin-top:3px}.guide-banner .button{flex-shrink:0;color:#571e91;border-color:#a982cb}
.usage-guide{max-width:850px;padding:32px;max-height:88dvh;font-size:18px;color:#351657;line-height:1.75}.usage-guide .dialog-heading{align-items:flex-start}.usage-guide .dialog-heading h2{font-size:30px}.usage-guide .dialog-heading .icon-button{width:44px;height:44px;flex-shrink:0;color:#491577;background:#efe3ff}.guide-intro{color:#514063;font-size:18px;margin-bottom:22px}.guide-steps{padding-left:30px;margin:0}.guide-steps li{padding:0 0 23px 10px;margin-bottom:22px;border-bottom:1px solid #e4d4f2}.guide-steps li::marker{color:#7624c2;font-size:23px;font-weight:800}.usage-guide h3{font-size:22px;font-weight:800;line-height:1.4;margin-bottom:9px}.usage-guide p{font-size:18px;color:#514063;margin-bottom:12px}.usage-guide strong{color:#351657;font-weight:800}.guide-note{background:#f2e7ff;border:1px solid #d8c0ef;border-radius:14px;padding:20px;margin:8px 0 24px}.usage-guide details{padding:18px 0;border-top:1px solid #d9c5e9}.usage-guide summary{font-size:19px;line-height:1.6;font-weight:800;color:#4e1a7b;cursor:pointer;min-height:44px}.usage-guide details p{margin-top:14px}.usage-guide .dialog-actions{margin-top:24px}.usage-guide .dialog-actions .button{font-size:18px}.usage-guide .small-label{color:#623583;font-size:14px}
@media(max-width:760px){.guide-banner{align-items:flex-start;flex-direction:column;padding:20px;gap:14px}.guide-banner .button{width:100%;font-size:18px}.guide-banner p{font-size:17px}.usage-guide{padding:24px 20px;max-height:88dvh;width:calc(100% - 20px)}.usage-guide .dialog-heading h2{font-size:25px}.usage-guide .dialog-heading{gap:8px}.usage-guide .dialog-heading .icon-button{width:40px;height:40px}.guide-steps{padding-left:25px}.guide-steps li{padding-left:6px}.usage-guide h3{font-size:21px}.usage-guide p{font-size:17px}.usage-guide summary{font-size:18px}.guide-note{padding:17px}}
.usage-privacy{width:100%;display:flex;flex-wrap:wrap;gap:10px;align-items:center;font-size:16px;color:#514063}.usage-privacy .text-button{font-size:16px;text-align:left}.usage-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:24px 0}.usage-cards>div{background:#f2e7ff;border:1px solid #d8c0ef;padding:22px;border-radius:14px;display:flex;flex-direction:column;gap:8px}.usage-cards strong{font-size:34px;color:#571b91}.usage-cards span{font-size:17px;color:#514063}#usage-status{font-size:17px;margin:18px 0}.usage-table-title{margin-top:28px}.usage-table{width:100%;border-collapse:collapse;font-size:17px;margin:14px 0 24px}.usage-table th,.usage-table td{text-align:left;padding:14px 8px;border-bottom:1px solid #ddc9ef}.guide-banner{flex-wrap:wrap}@media(max-width:760px){.usage-cards{grid-template-columns:1fr}.usage-table{font-size:16px}.usage-table th,.usage-table td{padding:12px 4px}}
