:root{--paper:#f5f5f1;--white:#fff;--ink:#202521;--muted:#747c75;--line:#e2e5de;--green:#156b4c;--green-dark:#114c3a;--lime:#d4ef73;--mint:#e9f3e9;--orange:#e7895e;--red:#bc624c;--shadow:0 18px 50px rgba(29,47,37,.08);--radius:22px;font-family:'DM Sans',Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizeLegibility}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px;background:var(--paper)}button,input,select{font:inherit}button{cursor:pointer}a{color:inherit}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-shell{min-height:100vh;display:grid;grid-template-columns:248px minmax(0,1fr)}

.sidebar{position:sticky;top:0;height:100vh;padding:28px 18px 20px 22px;background:#e9ece5;border-right:1px solid #dfe3dc;display:flex;flex-direction:column;z-index:5}.brand{display:flex;align-items:center;gap:11px;text-decoration:none;margin:0 0 54px 2px}.brand-mark{width:36px;height:36px;border-radius:12px;background:var(--green);color:#e9f5cc;display:grid;place-items:center;font:800 19px Manrope,sans-serif;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2)}.brand strong{display:block;font:800 15px Manrope,sans-serif;letter-spacing:-.5px}.brand small{display:block;margin-top:3px;font-size:8px;font-weight:700;letter-spacing:1.8px;color:#748077}.sidebar-label{margin:0 0 11px 9px;color:#829087;font-size:9px;letter-spacing:1.6px;font-weight:700}.game-switch{display:grid;gap:4px}.game-option,.nav-item{border:0;background:transparent;color:#59635c;display:flex;align-items:center;text-align:left;width:100%;border-radius:12px;padding:10px 10px;font-size:12px;font-weight:600;transition:.2s}.game-option:hover,.nav-item:hover{background:rgba(255,255,255,.58);color:var(--green-dark)}.game-option.active,.nav-item.active{background:#fff;color:var(--green-dark);box-shadow:0 3px 14px rgba(42,62,44,.05)}.game-option .game-orb{width:23px;height:23px;margin-right:10px;border-radius:50%;display:grid;place-items:center;font:700 10px Manrope,sans-serif}.game-orb.mega{background:#e4f2c4;color:#42622c}.game-orb.power{background:#f8e2d6;color:#ad5a37}.game-check{margin-left:auto;color:var(--green);font-size:13px;opacity:0}.game-option.active .game-check{opacity:1}.menu-label{margin-top:42px}.side-nav{display:grid;gap:4px}.nav-item{gap:11px;padding:12px 10px;font-weight:600}.nav-icon{width:21px;text-align:center;font-size:16px;color:#8b948d}.nav-item.active .nav-icon{color:var(--green)}.sidebar-bottom{margin-top:auto}.sidebar-note{display:flex;align-items:center;gap:8px;padding:11px 9px;color:#7a857c;font-size:10px}.note-dot{width:7px;height:7px;border-radius:50%;background:#c0c9bf}.note-dot.online{background:#48a276;box-shadow:0 0 0 4px #d3e7d9}.quiet-button{border:0;border-top:1px solid #dce1d8;background:transparent;width:100%;display:flex;justify-content:space-between;align-items:center;padding:15px 9px 4px;color:#667167;font-size:10px;text-align:left}.quiet-button span{font-size:13px}

.main-content{min-width:0;max-width:1580px;width:100%;margin:0 auto;padding:0 54px 28px}.topbar{position:relative;height:72px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;align-items:center;gap:11px;color:#889089;font-size:11px}.breadcrumbs strong{color:#333c35;font-weight:600}.crumb-slash{color:#b7beb7}.top-actions{display:flex;align-items:center;gap:10px;position:relative}.top-game-select{position:relative;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.7);padding:7px 30px 7px 13px;color:#35413a;font-size:10px}.top-game-select select{appearance:none;border:0;outline:0;background:transparent;font-weight:600;color:inherit;cursor:pointer}.select-chevron{pointer-events:none;position:absolute;right:11px;top:4px;font-size:18px;color:#8b938b}.icon-button{width:34px;height:34px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#758078;font-size:13px;letter-spacing:1px}.menu-popover{position:absolute;right:0;top:46px;min-width:220px;padding:7px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);z-index:10}.menu-popover button{display:block;width:100%;padding:11px 12px;text-align:left;background:transparent;border:0;border-radius:8px;color:#4c554e;font-size:11px}.menu-popover button:hover{background:#f2f5f0}.mobile-brand{display:none;align-items:center;gap:8px;font:700 13px Manrope}.mobile-brand .brand-mark{width:30px;height:30px;border-radius:10px;font-size:16px}

.page-intro{padding:48px 0 37px;max-width:900px}.eyebrow,.section-kicker{font-size:9px;letter-spacing:1.8px;font-weight:700;color:#6e7c70}.eyebrow{display:flex;align-items:center;gap:8px}.eyebrow-dot{width:6px;height:6px;border-radius:50%;background:#89a94b}.page-intro h1,.analysis-hero h2,.suggestions-hero h2{font:500 clamp(48px,6vw,86px)/.99 Manrope,sans-serif;letter-spacing:-5px;margin:20px 0 16px;color:#23332a}.page-intro h1 span,.analysis-hero h2 span,.suggestions-hero h2 span{color:#7c8f72}.intro-copy{max-width:460px;margin:0;color:#778078;font-size:13px;line-height:1.7}.intro-foot{display:flex;align-items:center;gap:9px;margin-top:29px;font-size:9px;font-weight:700;letter-spacing:1.2px;color:#79857b}.intro-line{width:30px;height:1px;background:#9aa68f}.intro-separator{color:#b0b8ad}

.tabbar{display:flex;gap:28px;border-bottom:1px solid var(--line);margin:0 0 35px}.tab-button{position:relative;padding:0 0 14px;border:0;background:transparent;color:#8a938b;font-size:11px;font-weight:600;transition:.2s}.tab-button.active{color:#28372e}.tab-button.active:after{position:absolute;content:"";height:2px;left:0;right:0;bottom:-1px;background:var(--green);border-radius:2px}.tab-index{margin-right:7px;color:#a5aea5;font-size:9px;letter-spacing:1px}.tab-button.active .tab-index{color:var(--green)}.tab-panel{display:none;animation:rise .35s ease}.tab-panel.active{display:block}@keyframes rise{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px}.compact-heading{margin:0 0 25px}.section-heading h2{font:600 30px/1.08 Manrope,sans-serif;letter-spacing:-1.5px;margin:10px 0 0}.section-heading p{max-width:310px;margin:0 0 2px;color:#828b83;font-size:11px;line-height:1.65}.sync-card{position:relative;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:22px 24px;margin-bottom:13px;border-radius:var(--radius);background:#e8efe4;border:1px solid #dfe8dc;overflow:hidden}.sync-card:after{content:"";position:absolute;right:34%;top:-80px;width:180px;height:180px;border:1px solid rgba(21,107,76,.08);border-radius:50%;box-shadow:0 0 0 25px rgba(21,107,76,.025),0 0 0 52px rgba(21,107,76,.02);pointer-events:none}.sync-copy{position:relative;z-index:1}.status-pill{display:inline-flex;align-items:center;gap:6px;border-radius:14px;background:rgba(255,255,255,.75);padding:5px 8px;color:#728074;font-size:9px}.status-pill i{width:6px;height:6px;background:#b4beb3;border-radius:50%}.status-pill.good{color:var(--green)}.status-pill.good i{background:#48a276}.status-pill.warn i{background:#d9a04d}.status-pill.loading i{background:#559677;animation:pulse 1s infinite}@keyframes pulse{50%{opacity:.3}}.sync-copy h3{font:700 15px Manrope,sans-serif;margin:9px 0 4px;color:#34473a}.sync-copy p{font-size:10px;color:#758375;margin:0;max-width:480px}.sync-actions{position:relative;z-index:1;display:flex;align-items:center;gap:12px}.primary-button{display:inline-flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:12px;background:var(--green);color:#fff;padding:12px 16px;font-size:10px;font-weight:700;box-shadow:0 5px 15px rgba(19,102,72,.15);transition:background .2s,transform .2s}.primary-button:hover{background:#10573e;transform:translateY(-1px)}.primary-button:disabled{opacity:.45;cursor:not-allowed;transform:none}.button-icon{font-size:16px;line-height:10px}.text-button{border:0;background:transparent;color:#59715f;font-size:10px;font-weight:600;padding:10px}.sync-progress{position:absolute;bottom:0;left:0;right:0;height:3px;background:#d1dfd0}.sync-progress span{display:block;height:100%;width:30%;background:#4a9770;animation:progress 1.2s ease-in-out infinite}@keyframes progress{0%{transform:translateX(-110%)}100%{transform:translateX(400%)}}

.latest-grid{display:grid;grid-template-columns:1.35fr 1.05fr .72fr .85fr;gap:12px;margin-bottom:43px}.latest-card,.metric-card{min-height:156px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:17px 18px}.latest-result-card{background:#fdfdfa}.jackpot-card{background:var(--green-dark);color:#eef6e8;border-color:var(--green-dark)}.card-topline{display:flex;justify-content:space-between;align-items:center;font-size:8px;font-weight:700;letter-spacing:1.5px;color:#7c867e}.jackpot-card .card-topline{color:#bfcebd}.card-mark{font-size:13px;color:#8c988e}.jackpot-spark{font-size:16px;color:var(--lime)}.latest-date{margin:20px 0 2px;font:700 19px Manrope,sans-serif;letter-spacing:-.5px}.latest-draw-meta{display:flex;align-items:center;gap:7px;color:#9aa29a;font-size:9px}.tiny-separator{color:#bdc4bc}.number-row{display:flex;align-items:center;gap:6px}.latest-numbers{margin-top:14px}.ball{width:29px;height:29px;display:inline-grid;place-items:center;border-radius:50%;background:#edf3e8;color:#385b40;font:700 10px Manrope,sans-serif;box-shadow:inset 0 0 0 1px rgba(52,96,58,.06)}.ball.special-ball{margin-left:8px;background:#f9e5d7;color:#a14e31;position:relative}.ball.special-ball:before{content:"";position:absolute;left:-7px;width:1px;height:19px;background:#e1e6de}.power-number-row{display:flex;align-items:center;gap:7px;margin-top:9px;color:#a2aaa2;font-size:7px;letter-spacing:1px;font-weight:700}.power-number-row b{background:#f8e2d6;color:#a64f31;border-radius:50%;width:19px;height:19px;display:grid;place-items:center;font:700 9px Manrope}.empty-state{font-size:10px;color:#a2aaa2}.jackpot-value{margin:22px 0 11px;font:700 clamp(20px,2vw,27px) Manrope,sans-serif;letter-spacing:-1.2px;color:#fff}.jackpot-foot{display:flex;align-items:center;justify-content:space-between;color:#bdd1c1;font-size:9px}.jackpot-badge{padding:4px 6px;border:1px solid rgba(255,255,255,.2);border-radius:6px;font-size:7px;letter-spacing:1px}.metric-card{position:relative;padding-top:20px}.metric-icon{position:absolute;right:17px;top:15px;font-size:17px;color:#9da998}.metric-label{color:#8e978f;font-size:8px;letter-spacing:1.35px;font-weight:700}.metric-value{margin:17px 0 4px;color:#30443a;font:700 25px Manrope,sans-serif;letter-spacing:-1px}.metric-time{font-size:15px;letter-spacing:-.3px}.metric-note{font-size:9px;color:#9ba39c;line-height:1.45}

.history-section{padding-bottom:15px}.history-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:14px}.history-heading h3{font:700 19px Manrope,sans-serif;letter-spacing:-.8px;margin:7px 0 0}.history-tools{display:flex;align-items:center;gap:12px}.history-count{font-size:9px;color:#9aa29b}.outline-button{border:1px solid #dfe4dc;border-radius:9px;padding:8px 10px;color:#5f6b61;background:#fff;font-size:9px;font-weight:600}.outline-button:hover{border-color:#9cb39d;color:var(--green)}.history-table-wrap{border:1px solid var(--line);border-radius:16px;background:#fff;overflow:auto}.history-table{width:100%;border-collapse:collapse;min-width:690px}.history-table th{padding:12px 16px;text-align:left;color:#929b93;background:#fafbf8;font-size:8px;letter-spacing:1px;font-weight:700}.history-table td{padding:12px 16px;border-top:1px solid #eef0eb;color:#59625b;font-size:10px;white-space:nowrap}.history-table tbody tr:hover{background:#fafbf8}.history-table .table-empty{text-align:center;padding:28px;color:#9ca49d}.table-balls{display:flex;align-items:center;gap:4px}.table-balls .ball{width:22px;height:22px;font-size:8px}.table-balls .special-ball{width:21px;height:21px;margin-left:5px}.table-source{color:#829281;font-size:8px}.source-pending{color:#b78642}.load-more-button{display:block;margin:13px auto 0;padding:8px 12px;border:0;background:transparent;color:#6d796e;font-size:10px}.load-more-button span{margin-left:4px}

.analysis-hero,.suggestions-hero{padding:5px 0 29px;border-bottom:1px solid var(--line)}.analysis-hero h2,.suggestions-hero h2{font-size:clamp(40px,5vw,62px);letter-spacing:-3px;line-height:1.02;margin:15px 0 11px}.analysis-hero p,.suggestions-hero p{max-width:570px;color:#7c867e;font-size:12px;line-height:1.7;margin:0}.analysis-controls{display:flex;align-items:center;gap:13px;margin-top:23px;flex-wrap:wrap}.range-control{display:flex;align-items:center;gap:8px;border:1px solid #dfe3dc;border-radius:12px;background:#fff;padding:6px 10px;color:#758075;font-size:9px}.range-control input{width:58px;border:0;outline:0;padding:4px 3px;color:#2b4636;font:700 13px Manrope;text-align:center;border-left:1px solid #edf0eb;border-right:1px solid #edf0eb}.range-suffix{color:#99a198}.range-note{font-size:9px;color:#98a198}.analysis-content{padding:0 0 22px}.analysis-placeholder,.candidate-placeholder{min-height:250px;display:grid;align-content:center;justify-items:center;text-align:center;padding:32px}.placeholder-glyph{width:52px;height:52px;border:1px solid #d9e1d5;border-radius:18px;display:grid;place-items:center;color:#799171;font:24px Manrope;background:#eff3ec}.analysis-placeholder h3,.candidate-placeholder h3{margin:14px 0 5px;font:700 16px Manrope;color:#526357}.analysis-placeholder p,.candidate-placeholder p{max-width:400px;color:#929b92;font-size:10px;line-height:1.6;margin:0}

.story-block{padding:32px 0 36px;border-bottom:1px solid var(--line)}.story-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:19px}.story-head h3{font:700 21px Manrope,sans-serif;letter-spacing:-1px;margin:7px 0 0}.story-head p{max-width:330px;margin:0;color:#8b948c;font-size:10px;line-height:1.6}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.story-stat{padding:16px 17px;background:#fff;border:1px solid var(--line);border-radius:16px}.story-stat-label{color:#929b92;font-size:8px;font-weight:700;letter-spacing:1.15px}.story-stat-value{margin:12px 0 5px;font:700 25px Manrope,sans-serif;letter-spacing:-1px;color:#31493a}.story-stat-note{font-size:9px;color:#929b92;line-height:1.5}.chart-card{padding:18px 18px 15px;border:1px solid var(--line);border-radius:18px;background:#fff}.chart-caption{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px;color:#7a857a;font-size:9px}.chart-caption strong{font-size:10px;color:#465448}.chart-legend{display:flex;align-items:center;gap:6px;color:#9aa29a;font-size:8px}.legend-swatch{width:7px;height:7px;border-radius:50%;background:#7d9c6c}.bar-chart{display:grid;gap:9px}.bar-line{display:grid;grid-template-columns:60px 1fr 32px;gap:9px;align-items:center}.bar-label{color:#89938a;font-size:9px}.bar-track{height:9px;border-radius:8px;background:#eef1ec;overflow:hidden}.bar-fill{height:100%;border-radius:8px;background:linear-gradient(90deg,#8eaa77,#bfd475);min-width:2px;transition:width .4s}.bar-fill.alt{background:linear-gradient(90deg,#74a595,#b5d9bc)}.bar-number{text-align:right;color:#55675a;font:600 9px Manrope}.number-frequency-grid{display:grid;grid-template-columns:repeat(11,minmax(28px,1fr));gap:7px}.freq-cell{display:grid;justify-items:center;gap:5px}.freq-dot{width:31px;height:31px;border-radius:50%;display:grid;place-items:center;background:#f0f3ee;color:#546b56;font:600 9px Manrope;position:relative}.freq-dot.hot{background:#dcebd6;color:#276747;box-shadow:inset 0 0 0 1px #c5dcc0}.freq-dot.cold{background:#f5eae2;color:#a36d54}.freq-bar{width:100%;height:4px;background:#edf0ea;border-radius:5px;overflow:hidden}.freq-bar i{display:block;height:100%;background:#8eae74;border-radius:5px}.freq-count{color:#89938a;font-size:8px}.insight-callout{margin-top:13px;padding:13px 15px;border-left:2px solid #9eb877;background:#f4f6f1;color:#778176;font-size:9px;line-height:1.65}.insight-callout strong{color:#425544}.two-col{display:grid;grid-template-columns:1.1fr .9fr;gap:13px}.parity-chart{display:grid;gap:12px}.parity-row{display:grid;grid-template-columns:65px 1fr 62px;align-items:center;gap:10px}.parity-name{font-size:9px;color:#788379}.parity-track{height:12px;background:#eff2ed;border-radius:8px;overflow:hidden;display:flex}.parity-odd{height:100%;background:#89a877}.parity-even{height:100%;background:#ccd9aa}.parity-value{text-align:right;font:600 9px Manrope;color:#59665b}.sum-scale{position:relative;height:58px;margin:15px 5px 6px;background:linear-gradient(90deg,#f1ebe4,#edf3e8 45%,#dfead4 50%,#edf3e8 55%,#f1ebe4);border-radius:12px;overflow:hidden}.sum-scale:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:#90a47d}.sum-marker{position:absolute;top:8px;width:2px;height:42px;background:#345e43;border-radius:2px}.sum-marker:after{content:attr(data-label);position:absolute;top:43px;left:50%;transform:translateX(-50%);white-space:nowrap;font:700 8px Manrope;color:#345e43}.scale-labels{display:flex;justify-content:space-between;color:#9da59d;font-size:8px}.sequence-metric{display:flex;align-items:baseline;gap:7px;margin:10px 0 4px}.sequence-metric b{font:700 29px Manrope;letter-spacing:-1px;color:#345442}.sequence-metric span{font-size:9px;color:#8b958b}.sequence-list{display:flex;gap:5px;flex-wrap:wrap;margin:12px 0}.sequence-chip{padding:5px 7px;border:1px solid #e2e8dd;border-radius:9px;background:#f7f9f5;color:#667864;font-size:8px}.pair-list{display:grid;gap:8px}.pair-row{display:grid;grid-template-columns:45px 1fr 25px;gap:7px;align-items:center;font-size:9px;color:#778278}.pair-dots{display:flex;gap:4px}.pair-dot{width:21px;height:21px;display:grid;place-items:center;border-radius:50%;background:#edf2e7;color:#536b50;font:600 8px Manrope}.method-box{padding:16px 18px;border:1px solid #dfe7d8;border-radius:17px;background:#ebf2e5;color:#69766a;font-size:9px;line-height:1.7}.method-box strong{color:#3c5942}.method-box h4{margin:0 0 8px;font:700 12px Manrope;color:#3c5942}.method-box ul{padding-left:16px;margin:6px 0}.method-box li{margin:3px 0}

.suggestions-hero{padding-bottom:25px}.suggestions-toolbar{display:flex;align-items:center;gap:11px;flex-wrap:wrap;margin-top:20px}.range-chip{padding:9px 12px;border:1px solid #dfe5dc;border-radius:11px;background:#fff;color:#667567;font-size:9px}.count-select{display:flex;align-items:center;gap:7px;padding:7px 10px;border:1px solid #dfe5dc;border-radius:11px;background:#fff;color:#849085;font-size:9px}.count-select select{border:0;outline:0;background:transparent;color:#395440;font:700 11px Manrope}.candidate-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:24px 0 6px}.candidate-card{position:relative;padding:18px 18px 16px;border:1px solid var(--line);border-radius:19px;background:#fff;overflow:hidden}.candidate-card:before{content:"";position:absolute;right:-42px;top:-54px;width:132px;height:132px;border-radius:50%;border:1px solid #ecf0e9;box-shadow:0 0 0 18px #fafbf8}.candidate-top{position:relative;display:flex;justify-content:space-between;align-items:flex-start}.candidate-method{font-size:8px;letter-spacing:1.2px;text-transform:uppercase;font-weight:700;color:#80917e}.candidate-index{font:700 10px Manrope;color:#b0b9af}.candidate-title{position:relative;margin:8px 0 15px;font:700 14px Manrope;color:#37473a}.candidate-balls{position:relative;display:flex;gap:7px;flex-wrap:wrap}.candidate-balls .ball{width:38px;height:38px;font-size:11px;background:#eff5e9}.candidate-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:16px 0 0;padding-top:13px;border-top:1px solid #eef0eb}.candidate-meta div{color:#929b92;font-size:7px;letter-spacing:.5px}.candidate-meta b{display:block;margin-top:5px;color:#536456;font:600 10px Manrope;letter-spacing:0}.candidate-explain{margin:11px 0 0;color:#879087;font-size:9px;line-height:1.6}.copy-button{position:relative;margin-top:12px;padding:7px 9px;border:1px solid #e1e6df;border-radius:8px;background:#fff;color:#657268;font-size:8px}.copy-button:hover{color:var(--green);border-color:#a2b6a0}.odds-note{display:flex;align-items:flex-start;gap:12px;margin:15px 0 0;padding:15px 17px;border-radius:14px;background:#f0f2ed;border:1px solid #e5e8e2}.odds-symbol{width:21px;height:21px;border:1px solid #b7c1b3;border-radius:50%;display:grid;place-items:center;color:#687668;font:700 10px Manrope;flex:none}.odds-note strong{color:#485849;font-size:9px}.odds-note p{margin:5px 0 0;color:#879087;font-size:9px;line-height:1.55}.odds-note p span{font-weight:700;color:#596958}

.app-footer{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);margin-top:35px;padding:18px 0 5px;color:#a0a8a0;font-size:8px;letter-spacing:.8px}.app-footer button{border:0;background:transparent;color:#738174;font-size:8px}.toast{position:fixed;right:22px;bottom:22px;z-index:20;max-width:min(390px,calc(100vw - 32px));padding:13px 15px;border-radius:12px;background:#263d30;color:#fff;box-shadow:var(--shadow);font-size:10px;line-height:1.5;opacity:0;transform:translateY(8px);pointer-events:none;transition:.25s}.toast.show{opacity:1;transform:translateY(0)}.source-dialog{width:min(560px,calc(100vw - 28px));max-height:85vh;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fbfcf9;color:var(--ink);box-shadow:0 25px 90px rgba(25,38,29,.24)}.source-dialog::backdrop{background:rgba(24,37,29,.45);backdrop-filter:blur(4px)}.source-dialog h2{font:700 27px Manrope;letter-spacing:-1px;margin:10px 0}.dialog-lede{color:#808a80;font-size:11px;line-height:1.7}.dialog-close{position:absolute;top:15px;right:16px;width:30px;height:30px;border:1px solid var(--line);border-radius:50%;background:#fff;color:#788278;font-size:20px;line-height:1}.source-list{display:grid;margin-top:19px;border-top:1px solid var(--line)}.source-list a{display:grid;grid-template-columns:27px 1fr 15px;gap:11px;align-items:center;padding:12px 3px;border-bottom:1px solid var(--line);text-decoration:none}.source-index{color:#94a18e;font:700 9px Manrope}.source-list b{display:block;color:#435447;font-size:10px}.source-list small{display:block;margin-top:4px;color:#929b91;font-size:8px}.source-list a>span:last-child{color:#84917f;font-size:13px}.method-note{margin-top:12px;padding:12px 13px;border-radius:11px;background:#f0f3ed;color:#7c867c;font-size:9px;line-height:1.65}.method-note b{color:#4b5c4d}.runtime-note{background:#fff8e9;border:1px solid #eadcb9;color:#665d4c}.runtime-note ul{margin:8px 0 4px;padding-left:19px}.runtime-note li+li{margin-top:5px}.runtime-note code{padding:1px 4px;border-radius:4px;background:rgba(70,70,45,.08);color:#495447;font-size:.95em}.runtime-note>strong{display:block;margin-top:7px;color:#3f5143}

@media(max-width:1120px){.app-shell{grid-template-columns:210px minmax(0,1fr)}.sidebar{padding-left:16px;padding-right:14px}.main-content{padding:0 35px 24px}.latest-grid{grid-template-columns:1.2fr 1fr}.metric-card{min-height:130px}.number-frequency-grid{grid-template-columns:repeat(9,minmax(28px,1fr))}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:fixed;left:0;right:0;top:auto;bottom:0;width:100%;height:64px;padding:5px 8px calc(5px + env(safe-area-inset-bottom));border-right:0;border-top:1px solid var(--line);background:rgba(248,249,245,.96);backdrop-filter:blur(16px);display:flex;flex-direction:row;justify-content:space-around;align-items:center}.brand,.sidebar-label,.game-switch,.sidebar-bottom{display:none}.side-nav{display:flex;width:100%;justify-content:space-around;gap:4px}.nav-item{justify-content:center;flex-direction:column;gap:3px;width:33%;padding:6px 2px;border-radius:10px;font-size:8px}.nav-icon{font-size:16px;line-height:18px}.main-content{padding:0 19px 91px}.topbar{height:58px}.mobile-brand{display:flex}.breadcrumbs{display:none}.top-actions{gap:6px}.top-game-select{padding:6px 25px 6px 9px;font-size:9px}.top-game-select select{max-width:88px}.icon-button{width:31px;height:31px;font-size:10px}.page-intro{padding:38px 0 28px}.page-intro h1{font-size:55px;letter-spacing:-3.5px;margin:16px 0 12px}.intro-copy{font-size:11px;max-width:340px}.intro-foot{margin-top:21px}.tabbar{gap:22px;margin-bottom:27px}.tab-button{font-size:10px;padding-bottom:12px}.tab-index{font-size:8px;margin-right:4px}.section-heading{align-items:flex-start;flex-direction:column;gap:10px}.compact-heading{margin-bottom:18px}.section-heading h2{font-size:26px}.section-heading p{font-size:10px}.sync-card{display:block;padding:17px 15px;margin-bottom:10px}.sync-card:after{right:-40px}.sync-actions{margin-top:15px;justify-content:flex-start}.sync-actions .primary-button{padding:11px 13px}.sync-actions .text-button{padding:9px 4px;font-size:9px}.latest-grid{grid-template-columns:1fr 1fr;gap:8px;margin-bottom:31px}.latest-card,.metric-card{min-height:133px;padding:14px 13px;border-radius:17px}.latest-result-card{grid-column:span 2}.jackpot-value{font-size:23px;margin:18px 0 9px}.metric-label{font-size:7px}.metric-value{font-size:22px;margin-top:15px}.metric-time{font-size:12px}.latest-date{margin-top:15px;font-size:17px}.ball{width:27px;height:27px;font-size:9px}.history-heading{align-items:flex-end}.history-heading h3{font-size:17px}.history-tools{gap:7px}.history-count{font-size:8px}.small-button{font-size:8px;padding:7px 8px}.history-table th,.history-table td{padding:10px 12px}.analysis-hero h2,.suggestions-hero h2{font-size:42px;letter-spacing:-2.5px}.analysis-hero p,.suggestions-hero p{font-size:10px}.analysis-controls{gap:8px}.range-control{order:1}.analysis-controls .primary-button{order:2}.range-note{order:3;width:100%;padding-left:3px}.story-block{padding:25px 0}.story-head{display:block;margin-bottom:14px}.story-head h3{font-size:18px}.story-head p{margin-top:8px;max-width:100%}.story-grid{grid-template-columns:1fr;gap:8px}.story-stat{padding:13px 14px}.story-stat-value{font-size:21px;margin:8px 0 3px}.two-col{grid-template-columns:1fr;gap:9px}.chart-card{padding:14px}.number-frequency-grid{grid-template-columns:repeat(6,minmax(30px,1fr));gap:7px}.freq-dot{width:29px;height:29px}.candidate-grid{grid-template-columns:1fr;padding-top:18px}.candidate-card{padding:16px}.candidate-balls .ball{width:35px;height:35px}.suggestions-toolbar{gap:7px}.range-chip{flex:1 1 100%;font-size:8px}.count-select{padding:8px 9px}.suggestions-toolbar .primary-button{flex:1}.odds-note{padding:13px}.app-footer{font-size:7px;flex-wrap:wrap}.app-footer span:nth-child(2){display:none}.source-dialog{padding:22px 17px}.dialog-close{right:12px;top:11px}}
@media(max-width:380px){.page-intro h1{font-size:47px}.analysis-hero h2,.suggestions-hero h2{font-size:37px}.latest-grid{grid-template-columns:1fr}.latest-result-card{grid-column:auto}.latest-card,.metric-card{min-height:120px}.history-heading{align-items:flex-start;gap:10px;flex-direction:column}.history-tools{align-self:flex-end;margin-top:-5px}.range-control{gap:5px;padding:6px 7px}.range-control input{width:49px}.analysis-controls .primary-button{font-size:9px;padding:11px 10px}}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}

/* Higher contrast, clearer analysis, and a touch-first phone layout. */
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--ink:#18231d;--muted:#58665d}
body{overflow-x:hidden;color:#18231d}
.mobile-game-switch{display:none}
.section-kicker,.eyebrow{color:#526458;font-size:11px;letter-spacing:1.25px}
.analysis-hero p,.suggestions-hero p,.story-head p,.story-stat-note,.bar-label,.parity-name,.chart-caption,.chart-legend,.insight-callout,.method-box,.candidate-explain,.odds-note p{color:#536157}
.analysis-hero p,.suggestions-hero p{font-size:15px;line-height:1.7}
.story-head p{font-size:14px;line-height:1.65}
.story-head h3{font-size:25px}
.story-stat-label,.metric-label,.candidate-meta div,.candidate-method{color:#536157}
.story-stat-label{font-size:11px;letter-spacing:.8px}
.story-stat-note{font-size:13px;line-height:1.55}
.chart-caption{font-size:13px}
.chart-caption strong{font-size:14px;color:#263b2d}
.chart-legend,.bar-label,.parity-name,.bar-number,.parity-value{font-size:12px}
.bar-line{grid-template-columns:minmax(82px,auto) minmax(90px,1fr) 42px;gap:10px}
.bar-track{height:12px}
.freq-dot{color:#334a39;font-size:11px}
.freq-count{font-size:10px;color:#46584b}
.insight-callout{font-size:13px;line-height:1.7;padding:16px 18px}
.insight-callout strong{color:#263e2e}
.scale-labels{font-size:12px;color:#526157}
.sum-marker:after{font-size:11px;color:#263f2f}
.sequence-chip{font-size:11px;color:#455b49}
.pair-row{grid-template-columns:90px 1fr auto;font-size:12px;color:#3f5144}
.pair-row>span:first-child{font-variant-numeric:tabular-nums;font-weight:650}
.method-box{font-size:13px;line-height:1.75}
.method-box h4{font-size:16px}
.trend-legend{display:flex;gap:18px;flex-wrap:wrap;margin-top:17px;color:#3e5144;font-size:12px}
.trend-legend span{display:inline-flex;align-items:center;gap:7px}
.trend-dot{width:10px;height:10px;border-radius:50%;display:inline-block}
.hot-dot{background:#3b8b61}.warm-dot{background:#d69a2d}.cold-dot{background:#b77855}
.freq-dot.warming{background:#fff0c5;color:#684a0c;box-shadow:inset 0 0 0 1px #e8d28c}
.candidate-card{padding:22px}
.candidate-method{font-size:11px;letter-spacing:.7px}
.candidate-index{color:#55665b;font-size:12px}
.candidate-title{font-size:18px;line-height:1.35}
.candidate-balls .ball{width:46px;height:46px;font-size:15px;background:#e4f0df;color:#244733}
.fit-meter{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px 14px;margin-top:20px;padding:13px 14px;border:1px solid #e1e8df;border-radius:13px;background:#f8faf6;color:#435449}
.fit-meter>span{font-size:11px;font-weight:700;letter-spacing:.5px}
.fit-meter>b{font:750 21px system-ui;color:#185e43}
.fit-meter small{font-size:11px;color:#536157}
.fit-meter>i{grid-column:1/-1;display:block;height:8px;border-radius:9px;background:#e3e9e1;overflow:hidden}
.fit-meter em{display:block;height:100%;border-radius:9px;background:linear-gradient(90deg,#22815b,#9bc450)}
.candidate-meta{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:17px}
.candidate-meta div{font-size:10px;line-height:1.4}
.candidate-meta b{font-size:14px;color:#263f2f}
.candidate-explain{font-size:14px;line-height:1.7;color:#3f5044}
.copy-button{font-size:13px;padding:10px 13px;color:#31493a}
.range-chip,.count-select{color:#35473a;font-size:12px}
.count-select select{font-size:14px}
.primary-button{font-size:13px;min-height:44px}
.odds-note strong{font-size:13px}
.odds-note p{font-size:13px;line-height:1.65}

@media(max-width:760px){
  .main-content{padding:env(safe-area-inset-top) 16px calc(104px + env(safe-area-inset-bottom));}
  .sidebar{height:calc(72px + env(safe-area-inset-bottom));padding:7px 10px calc(8px + env(safe-area-inset-bottom));box-shadow:0 -8px 24px rgba(32,48,37,.08)}
  .side-nav{gap:8px}
  .nav-item{height:54px;gap:4px;font-size:12px;font-weight:700;color:#536157}
  .nav-icon{font-size:19px;line-height:22px}
  .nav-item.active{background:#e5f0e7;color:#115b40}
  .topbar{height:62px}
  .mobile-brand{font-size:14px}
  .mobile-brand .brand-mark{width:34px;height:34px}
  .top-game-select{display:none}
  .icon-button{width:40px;height:40px;font-size:14px}
  .menu-popover{position:fixed;right:12px;top:58px;min-width:245px;padding:8px}
  .menu-popover button{font-size:14px;padding:14px 12px}
  .mobile-game-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:12px 0 4px;padding:5px;border:1px solid #dce4da;border-radius:16px;background:#e9eee6}
  .mobile-game-switch .game-option{min-height:48px;padding:8px 10px;font-size:14px;justify-content:center;gap:8px;color:#47584a}
  .mobile-game-switch .game-option.active{background:#fff;color:#15583f;box-shadow:0 2px 8px rgba(22,57,37,.1)}
  .mobile-game-switch .game-orb{width:27px;height:27px;margin:0;font-size:11px}
  .page-intro{padding:21px 0 21px}
  .eyebrow{font-size:10px;letter-spacing:.9px}
  .page-intro h1{font-size:38px;letter-spacing:-1.8px;line-height:1.04;margin:12px 0 8px}
  .intro-copy{font-size:14px;line-height:1.55;color:#536157}
  .intro-foot{margin-top:14px;font-size:11px}
  .tabbar{display:none}
  .section-heading h2{font-size:27px}
  .section-heading p{font-size:14px;line-height:1.6;color:#536157}
  .sync-card{padding:17px;border-radius:18px}
  .sync-copy h3{font-size:18px}
  .sync-copy p{font-size:14px;line-height:1.55;color:#435348}
  .sync-actions{gap:8px;flex-wrap:wrap}
  .sync-actions .primary-button{min-height:48px;padding:12px 14px}
  .sync-actions .text-button{font-size:13px}
  .latest-grid{grid-template-columns:1fr 1fr;gap:9px}
  .latest-card,.metric-card{min-height:144px;padding:15px;border-radius:17px}
  .card-topline,.metric-label{font-size:10px;letter-spacing:.8px;color:#435348}
  .jackpot-card .card-topline{color:#e0eee0}
  .latest-date{font-size:20px}
  .latest-draw-meta,.jackpot-foot,.metric-note{font-size:12px;color:#526157;line-height:1.45}
  .jackpot-card .jackpot-foot{color:#d4e8d6}
  .jackpot-value{font-size:clamp(19px,6vw,26px);letter-spacing:-.5px}
  .metric-value{font-size:25px}
  .history-heading h3{font-size:20px}
  .history-count,.small-button{font-size:12px}
  .history-table th,.history-table td{font-size:12px}
  .analysis-hero,.suggestions-hero{padding:7px 0 21px}
  .analysis-hero h2,.suggestions-hero h2{font-size:35px;letter-spacing:-1.3px;line-height:1.07;margin:12px 0 9px}
  .analysis-hero p,.suggestions-hero p{font-size:14px;line-height:1.6}
  .analysis-controls{display:grid;grid-template-columns:1fr;gap:10px;margin-top:16px}
  .range-control{min-height:48px;justify-content:center;font-size:13px}
  .range-control input{font-size:17px;width:68px}
  .range-note{font-size:12px}
  .analysis-controls .primary-button{min-height:48px;font-size:14px}
  .story-block{padding:25px 0 28px}
  .story-head{margin-bottom:14px}
  .story-head h3{font-size:21px;letter-spacing:-.4px;line-height:1.24}
  .story-head p{font-size:13px;line-height:1.6}
  .story-grid{grid-template-columns:1fr 1fr;gap:8px}
  .story-stat{padding:14px;border-radius:15px}
  .story-stat-label{font-size:10px;letter-spacing:.45px}
  .story-stat-value{font-size:22px}
  .story-stat-note{font-size:12px}
  .chart-card{padding:15px;border-radius:16px}
  .chart-caption{align-items:flex-start;gap:8px;flex-wrap:wrap;margin-bottom:14px;font-size:12px}
  .chart-caption strong{font-size:14px}
  .chart-legend{font-size:11px}
  .bar-chart{gap:12px}
  .bar-line{grid-template-columns:88px minmax(60px,1fr) 34px;gap:8px}
  .bar-label{font-size:12px;line-height:1.25}
  .bar-number{font-size:12px}
  .number-frequency-grid{grid-template-columns:repeat(7,minmax(0,1fr));gap:8px 4px}
  .freq-cell{gap:5px}
  .freq-dot{width:min(38px,9vw);height:min(38px,9vw);font-size:11px}
  .freq-count{font-size:10px}
  .trend-legend{gap:9px 14px;font-size:11px}
  .insight-callout{font-size:13px;line-height:1.65;padding:14px}
  .sequence-metric b{font-size:31px}
  .sequence-metric span{font-size:13px;color:#536157}
  .pair-row{grid-template-columns:86px 1fr auto;font-size:12px}
  .pair-dot{width:28px;height:28px;font-size:11px}
  .sequence-chip{font-size:11px}
  .method-box{font-size:13px;padding:15px}
  .method-box li{margin:6px 0}
  .suggestions-toolbar{display:grid;grid-template-columns:auto 1fr;gap:9px}
  .range-chip{grid-column:1/-1;min-height:42px;display:flex;align-items:center;font-size:12px;line-height:1.4}
  .count-select{min-height:46px;justify-content:center;font-size:13px}
  .count-select select{font-size:16px}
  .suggestions-toolbar .primary-button{min-height:46px;font-size:13px}
  .candidate-grid{grid-template-columns:1fr;gap:12px;padding-top:15px}
  .candidate-card{padding:18px;border-radius:18px}
  .candidate-method{font-size:10px;max-width:75%;line-height:1.4}
  .candidate-index{font-size:11px}
  .candidate-title{font-size:17px;margin:8px 0 14px}
  .candidate-balls{gap:8px;justify-content:space-between}
  .candidate-balls .ball{width:clamp(40px,12vw,48px);height:clamp(40px,12vw,48px);font-size:15px}
  .fit-meter{margin-top:16px;padding:12px}
  .fit-meter>span{font-size:10px}
  .candidate-meta{grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 8px;margin-top:14px;padding-top:13px}
  .candidate-meta div{font-size:10px}
  .candidate-meta b{font-size:14px}
  .candidate-explain{font-size:13px;line-height:1.65;color:#36483b}
  .copy-button{min-height:42px;font-size:13px;padding:9px 13px}
  .odds-note{gap:10px;margin-top:12px}
  .odds-note strong,.odds-note p{font-size:12px}
  .app-footer{font-size:9px;line-height:1.5}
  .app-footer button{font-size:11px}
  .toast{left:12px;right:12px;bottom:calc(82px + env(safe-area-inset-bottom));max-width:none;font-size:13px}
  .source-dialog{padding:22px 17px}
  .dialog-lede,.source-list b{font-size:13px}
  .source-list small{font-size:11px}
  .method-note{font-size:12px}
}

.learning-toolbar{display:flex;align-items:center;gap:9px;margin-top:22px;flex-wrap:wrap}
.learning-filter{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #dfe3dc;border-radius:11px;background:#fff;color:#718075;font-size:10px}
.learning-filter select{border:0;outline:0;background:transparent;color:#304738;font:700 11px Manrope,sans-serif}
.learning-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:20px 0}
.learning-metric{display:flex;flex-direction:column;gap:8px;padding:17px 16px;border:1px solid #e1e6dd;border-radius:15px;background:#fff}
.learning-metric>span{color:#879287;font-size:9px;font-weight:750;letter-spacing:.8px}
.learning-metric strong{color:#314c38;font:700 28px Manrope,sans-serif;letter-spacing:-1px}
.learning-metric small{color:#8c968b;font-size:10px}
.learning-feedback{padding:16px 18px;border:1px solid #dfe7d8;border-radius:16px;background:#edf3e8;color:#536452}
.learning-feedback-copy strong{font:700 14px Manrope,sans-serif;color:#314b37}
.learning-feedback-copy p{margin:7px 0 0;font-size:11px;line-height:1.7}
.learning-method-section,.learning-benchmark-section,.learning-results-section{padding-top:27px}
.learning-benchmark-intro{max-width:820px;margin:10px 0 13px;color:#68766a;font-size:11px;line-height:1.7}
.learning-benchmark{display:grid;gap:11px}
.learning-benchmark-card{padding:17px 18px;border:1px solid #e1e6de;border-radius:16px;background:#fff}
.learning-benchmark-card>header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.learning-benchmark-card h4{margin:6px 0 0;color:#33473a;font:700 15px Manrope,sans-serif}
.learning-benchmark-max{flex:0 0 auto;padding:6px 9px;border-radius:20px;background:#f1f3ef;color:#69766b;font-size:9px;font-weight:750}
.learning-benchmark-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px}
.learning-benchmark-metrics>div{display:flex;flex-direction:column;gap:7px;padding:12px;border:1px solid #edf0eb;border-radius:12px;background:#fafbf9}
.learning-benchmark-metrics>div>span{color:#7b887c;font-size:8px;font-weight:750;letter-spacing:.55px;line-height:1.4}
.learning-benchmark-metrics strong{color:#314c38;font:700 20px Manrope,sans-serif}
.learning-benchmark-metrics small{color:#68766a;font-size:10px;line-height:1.45}
.learning-benchmark-card>p{margin:12px 0 0;color:#68766a;font-size:10px;line-height:1.6}
.learning-method-wrap{border:1px solid #e2e7df;border-radius:14px;background:#fff;overflow:hidden}
.learning-method-scroll{overflow-x:auto}
.learning-method-table{width:100%;border-collapse:collapse;min-width:720px}
.learning-method-table th,.learning-method-table td{padding:12px 13px;border-bottom:1px solid #edf0eb;text-align:left;font-size:10px;white-space:nowrap}
.learning-method-table th{background:#f5f7f2;color:#7b887c;font-size:9px;font-weight:750}
.learning-method-table td{color:#526153}
.learning-method-table tbody tr:last-child td{border-bottom:0}
.learning-empty{padding:20px;color:#879187;font-size:11px}
.learning-results{display:grid;gap:11px;padding-top:13px}
.learning-result-card{padding:17px 18px;border:1px solid #e1e6de;border-radius:16px;background:#fff}
.learning-result-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.learning-result-head h4{margin:6px 0 0;color:#33473a;font:700 15px Manrope,sans-serif}
.learning-outcome{flex:0 0 auto;padding:6px 9px;border-radius:20px;background:#f1f3ef;color:#69766b;font-size:9px;font-weight:750}
.learning-outcome-jp1{background:#e2f1da;color:#28623c}
.learning-outcome-jp2{background:#e4eef0;color:#32616b}
.learning-selected-meta{margin:10px 0 15px;color:#8c968d;font-size:9px}
.learning-ticket-line{display:flex;align-items:center;gap:13px;padding-bottom:13px;border-bottom:1px solid #edf0eb}
.learning-ticket-line>span{min-width:85px;color:#89938a;font-size:8px;font-weight:750;letter-spacing:.6px}
.learning-ticket-balls,.learning-draw-balls{gap:5px}
.learning-ticket-balls .ball,.learning-draw-balls .ball{width:32px;height:32px}
.learning-hit{background:#d8edcf!important;color:#1e6839!important;box-shadow:inset 0 0 0 1px #b4d9aa}
.learning-draw-meta{display:flex;align-items:center;gap:10px;margin:12px 0 8px;color:#889389;font-size:9px}
.learning-draw-meta strong{color:#4b614f}
.learning-draw-balls{margin-bottom:5px}
.learning-special{margin-top:8px;color:#869087;font-size:9px}
.learning-special>span{display:inline-grid;place-items:center;margin-left:5px;width:27px;height:27px;border-radius:50%;background:#f1f3ef;color:#718075;font:700 10px Manrope}
.learning-special .learning-special-hit{background:#fff0cf;color:#966919;box-shadow:inset 0 0 0 1px #edd49d}
.learning-waiting{margin-top:12px;padding:11px 12px;border-radius:10px;background:#f5f6f3;color:#798479;font-size:10px;line-height:1.6}
.learning-caveat{margin:20px 0 0}
@media(max-width:760px){
  .learning-toolbar{gap:7px}
  .learning-toolbar .primary-button{flex:1}
  .learning-filter{flex:1 1 100%;justify-content:space-between;font-size:11px}
  .learning-filter select{font-size:12px}
  .learning-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;padding:15px 0}
  .learning-metric{gap:6px;padding:13px 12px}
  .learning-metric>span{font-size:8px}
  .learning-metric strong{font-size:23px}
  .learning-metric small{font-size:9px}
  .learning-feedback{padding:13px}
  .learning-feedback-copy strong{font-size:13px}
  .learning-feedback-copy p{font-size:10px}
  .learning-method-section,.learning-benchmark-section,.learning-results-section{padding-top:22px}
  .learning-benchmark-intro{font-size:10px}
  .learning-benchmark-card{padding:14px}
  .learning-benchmark-card>header{display:block}
  .learning-benchmark-max{display:inline-block;margin-top:8px}
  .learning-benchmark-metrics{grid-template-columns:1fr 1fr;gap:7px}
  .learning-benchmark-metrics>div:last-child{grid-column:1/-1}
  .learning-benchmark-metrics strong{font-size:18px}
  .learning-benchmark-metrics small{font-size:9px}
  .learning-benchmark-card>p{font-size:9px}
  .learning-result-card{padding:14px}
  .learning-result-head{display:block}
  .learning-outcome{display:inline-block;margin-top:8px}
  .learning-ticket-line{align-items:flex-start;flex-direction:column;gap:9px}
  .learning-ticket-balls .ball,.learning-draw-balls .ball{width:clamp(34px,9vw,41px);height:clamp(34px,9vw,41px)}
  .learning-draw-meta{flex-wrap:wrap;gap:6px 9px;font-size:9px}
  .tabbar{gap:17px;overflow-x:auto;scrollbar-width:thin}
  .tab-button{flex-shrink:0}
  .nav-item{width:20%;font-size:7px;line-height:1.05}
  .nav-item span:last-child{max-width:68px;text-align:center;white-space:normal}
}
@media(max-width:390px){
  .main-content{padding-left:13px;padding-right:13px}
  .page-intro h1{font-size:35px}
  .analysis-hero h2,.suggestions-hero h2{font-size:32px}
  .latest-grid{grid-template-columns:1fr}
  .latest-result-card{grid-column:auto}
  .latest-card,.metric-card{min-height:126px}
  .number-frequency-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .freq-dot{width:35px;height:35px}
  .candidate-balls .ball{width:40px;height:40px}
}

.analysis-controls .all-history-button{min-height:44px;padding:10px 15px;font-size:13px;color:#1d583f;border-color:#9bb5a3}
.analysis-controls .all-history-button:disabled{opacity:.5}
.bar-number{line-height:1.2;font-size:12px}
.bar-number small{display:block;margin-top:2px;color:#526157;font:500 10px system-ui,sans-serif;white-space:nowrap}
.sum-probability-card{margin-top:14px}
.sum-prob-legend{display:flex;flex-wrap:wrap;gap:14px;margin:-5px 0 14px;color:#44564a;font-size:12px}
.sum-prob-legend span{display:inline-flex;align-items:center;gap:7px}
.theory-key,.observed-key{width:11px;height:11px;border-radius:3px;display:inline-block;background:#398367}
.observed-key{background:#d28c52}
.sum-probability-list{display:grid;gap:8px}
.sum-prob-row{display:grid;grid-template-columns:70px minmax(0,1fr);align-items:center;gap:7px 12px;padding:9px 10px;border:1px solid #edf0eb;border-radius:10px;background:#fcfdfa}
.sum-prob-row>b{grid-row:span 2;color:#263d2e;font:700 12px system-ui,sans-serif}
.sum-prob-values{display:grid;grid-template-columns:125px minmax(60px,1fr);align-items:center;gap:5px 10px;color:#46584b;font-size:11px}
.sum-prob-values>i{height:9px;border-radius:8px;background:#edf1eb;overflow:hidden}
.sum-prob-values>i>em{display:block;height:100%;border-radius:8px;background:#398367}
.sum-prob-values>.observed-track>em{background:#d28c52}
.analysis-placeholder p{font-size:13px;color:#536157}
.band-prob-card{min-width:0}
.band-prob-note{margin:0 0 12px;color:#435348;font-size:13px;line-height:1.55}
.band-prob-list{display:grid;gap:9px}
.band-prob-row{display:grid;grid-template-columns:62px minmax(0,1fr);align-items:center;gap:10px;padding:9px 10px;border:1px solid #e4e9e2;border-radius:11px;background:#fcfdfa}
.band-prob-label{color:#263d2e;font-size:13px;font-weight:750}
.band-prob-content{display:grid;gap:7px}
.band-prob-content>div{display:grid;grid-template-columns:170px minmax(45px,1fr);align-items:center;gap:8px;color:#435348;font-size:12px}
.band-prob-content b{color:#263d2e}
.band-prob-content i{height:10px;overflow:hidden;border-radius:8px;background:#e9eee8}
.band-prob-content i em{display:block;height:100%;border-radius:8px;background:#398367}
.band-prob-content .observed-track em{background:#d28c52}

@media(min-width:761px){
  .sidebar-label{font-size:10px;color:#536157}
  .brand small{font-size:9px;color:#536157}
  .game-option,.nav-item{font-size:13px}
  .nav-item{padding:13px 11px}
  .breadcrumbs{font-size:13px}
  .top-game-select{font-size:12px}
  .page-intro h1{font-size:clamp(56px,5vw,82px)}
  .intro-copy{font-size:15px;color:#48594d;line-height:1.7}
  .intro-foot{font-size:11px;color:#526157}
  .tab-button{font-size:13px;color:#536157}
  .section-heading p{font-size:13px;color:#4f5d53}
  .sync-copy h3{font-size:17px}
  .sync-copy p{font-size:13px;color:#435348;line-height:1.6}
  .status-pill{font-size:11px}
  .card-topline{font-size:10px;letter-spacing:1px;color:#46564b}
  .latest-draw-meta,.jackpot-foot,.metric-note{font-size:11px;color:#4e5d52}
  .jackpot-card .jackpot-foot{color:#d3e5d6}
  .metric-label{font-size:10px;color:#526157}
  .history-count,.outline-button,.history-table th,.history-table td{font-size:12px}
  .analysis-hero p,.suggestions-hero p{font-size:16px}
  .range-control,.range-note,.range-chip,.count-select{font-size:13px}
  .story-head h3{font-size:24px}
  .story-head p{font-size:14px}
  .story-stat-label{font-size:11px}
  .story-stat-value{font-size:28px}
  .story-stat-note{font-size:13px}
  .chart-caption,.chart-caption strong{font-size:13px}
  .bar-label,.bar-number,.parity-name,.parity-value,.chart-legend{font-size:12px}
  .candidate-meta div{font-size:11px}
  .candidate-meta b{font-size:14px}
  .candidate-explain{font-size:14px}
  .copy-button{font-size:13px}
  .method-box,.insight-callout{font-size:13px}
  .sum-prob-row{grid-template-columns:76px minmax(0,1fr)}
  .band-prob-note{font-size:14px}
  .band-prob-label{font-size:14px}
  .band-prob-content>div{grid-template-columns:180px minmax(45px,1fr);font-size:13px}
}
@media(max-width:760px){
  .analysis-controls .all-history-button{width:100%;min-height:48px;font-size:14px}
  .sum-prob-row{grid-template-columns:58px minmax(0,1fr);gap:7px}
  .sum-prob-values{grid-template-columns:102px minmax(45px,1fr);gap:5px 7px;font-size:10px}
  .sum-prob-row>b{font-size:11px}
  .sum-prob-legend{font-size:11px;gap:9px}
  .band-prob-row{grid-template-columns:52px minmax(0,1fr);gap:8px;padding:9px 8px}
  .band-prob-content>div{grid-template-columns:150px minmax(35px,1fr);gap:6px;font-size:11px}
  .band-prob-note{font-size:12px}
}
@media(max-width:390px){
  .band-prob-content>div{grid-template-columns:135px minmax(30px,1fr);font-size:10px}
}

/* Saved suggestion history and visible ticket-selection controls. */
.history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px}
.history-toolbar .range-chip{font-size:13px;color:#354a3b}
.history-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.history-actions .outline-button{min-height:44px;padding:10px 13px;font-size:13px;color:#254c35;border-color:#a9bfaa}
.history-archive-layout{display:grid;grid-template-columns:minmax(280px,330px) minmax(0,1fr);align-items:start;gap:22px;padding-top:22px}
.history-index-panel{position:sticky;top:18px;min-width:0;max-height:calc(100vh - 36px);overflow:hidden;display:flex;flex-direction:column;padding:16px;border:1px solid #b9cbb8;border-left:4px solid #4d8060;border-radius:16px;background:linear-gradient(145deg,#f1f6ef,#f8faf6 70%);box-shadow:0 8px 28px rgba(36,65,44,.08)}
.history-index-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-bottom:12px;border-bottom:1px solid #dbe5d9}
.history-index-heading h3{margin:4px 0 0;color:#20372a;font-size:19px;letter-spacing:-.4px}
.history-index-heading p{margin:5px 0 0;color:#617166;font-size:11px;line-height:1.4}
.history-index-count{flex:none;padding:5px 8px;border-radius:999px;background:#e7efe3;color:#31553b;font-size:11px;font-weight:750}
.history-index-controls{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:7px;padding:11px 0}
.history-select-all{display:flex;align-items:center;gap:7px;min-height:40px;color:#34483a;font-size:12px;font-weight:700;cursor:pointer}
.history-select-all input,.history-index-check input{width:19px;height:19px;margin:0;accent-color:#16724f}
.history-delete-button{min-height:40px;padding:7px 10px;border:1px solid #d8c3bd;border-radius:10px;background:#fff7f5;color:#874333;font-size:12px;font-weight:750}
.history-delete-button:hover:not(:disabled){border-color:#bd8272;background:#fff0ec}
.history-delete-button:disabled{cursor:not-allowed;opacity:.48}
.suggestion-history-index{display:grid;gap:7px;max-height:min(66vh,720px);overflow:auto;padding:1px 3px 2px 1px;overscroll-behavior:contain}
.history-index-item{display:grid;grid-template-columns:28px minmax(0,1fr);align-items:stretch;gap:5px;padding:5px;border:1px solid #d9e3d7;border-radius:12px;background:#fff;transition:border-color .18s,background .18s,box-shadow .18s}
.history-index-item:hover{border-color:#9cb69d;box-shadow:0 3px 12px rgba(37,69,47,.07)}
.history-index-item.is-selected{border-color:#6d9a75;background:#eff7ec;box-shadow:0 0 0 1px #dcebd9}
.history-index-check{display:grid;place-items:center;min-height:62px;cursor:pointer}
.history-index-jump{display:grid;gap:3px;min-width:0;min-height:62px;padding:7px 8px;border:0;border-radius:8px;background:transparent;text-align:left;color:#263b2c}
.history-index-jump:hover,.history-index-jump:focus-visible{outline:2px solid #a9c3a9;outline-offset:1px;background:#f4f8f2}
.history-index-game{color:#60735f;font-size:10px;font-weight:800;letter-spacing:.35px}
.history-index-jump strong{font-size:12px;line-height:1.35;font-variant-numeric:tabular-nums}
.history-index-summary{color:#58695c;font-size:11px;line-height:1.35}
.history-index-action{margin-top:1px;color:#18704c;font-size:10px;font-weight:750}
.history-index-empty{margin:0;padding:12px 8px;color:#69776c;font-size:12px;line-height:1.5}
.history-details-column{display:grid;align-content:start;gap:12px;min-width:0}
.suggestion-history-list{display:grid;gap:18px;min-width:0;padding:0 0 8px}
.history-detail-back{display:none}
.suggestion-session{padding:20px;border:1px solid #dfe6dc;border-radius:20px;background:#f7f9f5}
.suggestion-session[id]{scroll-margin-top:18px}
.suggestion-session-highlight{animation:history-session-flash 1.5s ease-out}
@keyframes history-session-flash{0%,35%{border-color:#398151;box-shadow:0 0 0 4px #d7edda}100%{border-color:#dfe6dc;box-shadow:0 0 0 0 transparent}}
.suggestion-session-head{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-bottom:16px;border-bottom:1px solid #dfe6dc}
.suggestion-session-head h3{margin:6px 0;font-size:20px;color:#20372a;font-variant-numeric:tabular-nums}
.suggestion-session-head p{margin:0;color:#526157;font-size:13px;line-height:1.5}
.session-count{flex:none;padding:8px 12px;border:1px solid #cbd8c9;border-radius:999px;background:#fff;color:#315940;font-size:13px;font-weight:700}
.history-basis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;padding:13px 0 0;color:#526157;font-size:11px}
.history-basis span{padding:8px 10px;border:1px solid #e2e8e0;border-radius:10px;background:#fff;line-height:1.4}
.history-basis b{display:block;margin-top:3px;color:#263e2f;font-size:13px}
.history-candidate-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding-top:15px}
.history-candidate{min-width:0;padding:16px;border:1px solid #dce4da;border-radius:16px;background:#fff}
.history-candidate.is-selected{border-color:#6e9a79;box-shadow:0 0 0 2px #e3f0e4}
.history-candidate-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px}
.history-candidate-top h4{margin:5px 0 0;color:#243a2c;font-size:16px;line-height:1.35}
.history-selection{flex:none;padding:5px 8px;border-radius:999px;background:#edf0eb;color:#526157;font-size:10px;font-weight:750;letter-spacing:.35px}
.history-selection.selected{background:#dceee0;color:#145d3c}
.history-balls{margin:13px 0 10px}
.history-balls .ball{width:42px;height:42px;background:#e8f1e2;color:#244733;font-size:15px}
.history-shape{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:11px 0;border-top:1px solid #edf0eb;border-bottom:1px solid #edf0eb;color:#58665d;font-size:11px}
.history-shape span{line-height:1.45}
.history-shape b{display:block;margin-top:3px;color:#263e2f;font-size:13px}
.history-reason{margin-top:12px;color:#36493b;font-size:13px;line-height:1.65}
.history-reason strong{color:#1e3929;font-size:14px}
.history-reason p{margin:5px 0 0;overflow-wrap:anywhere}
.history-storage-note{margin-bottom:15px}
.candidate-card.is-selected{border-color:#76a17d;background:#fbfefa;box-shadow:0 0 0 2px #e3f0e4}
.candidate-actions{position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:12px}
.candidate-actions .copy-button{margin-top:0}
.candidate-select{display:inline-flex;align-items:center;gap:9px;min-height:42px;padding:8px 12px;border:1px solid #aebfac;border-radius:11px;background:#f8fbf6;color:#294b34;font-size:13px;font-weight:700;cursor:pointer}
.candidate-select input{width:20px;height:20px;margin:0;accent-color:#16724f}
.candidate-select:has(input:checked){border-color:#58916b;background:#e8f4e8;color:#15583b}
.candidate-choice-state{white-space:nowrap}
.candidate-rationale{position:relative;margin-top:15px;padding-top:14px;border-top:1px solid #e8ede6;color:#35483a}
.rationale-method{padding:12px 13px;border:1px solid #e0e9dd;border-radius:12px;background:#f5f8f2}
.rationale-kicker{display:block;color:#526b56;font-size:10px;font-weight:800;letter-spacing:.8px}
.rationale-method h4{margin:5px 0 3px;color:#20392a;font-size:15px;line-height:1.35}
.rationale-method p{margin:0;color:#46594b;font-size:12px;line-height:1.45}
.rationale-highlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px}
.rationale-highlight{min-width:0;padding:11px;border:1px solid #e2e8df;border-radius:12px;background:#fff}
.rationale-highlight>span{display:block;color:#596d5d;font-size:9px;font-weight:800;letter-spacing:.45px}
.rationale-highlight>strong{display:block;margin-top:5px;color:#204b32;font-size:16px;line-height:1.3}
.rationale-highlight>p{margin:4px 0 0;color:#4b5d50;font-size:11px;line-height:1.45}
.rationale-number-panel{margin-top:10px;padding:12px;border:1px solid #e2e8df;border-radius:12px;background:#fff}
.rationale-number-heading{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}
.rationale-number-heading h5{margin:3px 0 0;color:#273e2e;font-size:14px}
.rationale-fit{flex:none;padding:5px 8px;border-radius:999px;background:#e8f1e2;color:#28543a;font-size:10px;font-weight:800}
.rationale-number-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;margin:0;padding:0;list-style:none}
.rationale-number-row{display:flex;align-items:flex-start;gap:8px;min-width:0;padding:8px;border-radius:10px;background:#f7f9f5}
.rationale-number{flex:none;width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#e4eedf;color:#234b32;font-size:12px;font-weight:800}
.rationale-number-copy{min-width:0;display:grid;gap:3px}
.rationale-number-copy>b{font-size:11px;line-height:1.25}
.rationale-number-copy>small{color:#536157;font-size:10px;line-height:1.4}
.signal-hot{color:#216441}.signal-warming{color:#8a5b16}.signal-cold{color:#89513c}.signal-neutral{color:#506154}
.rationale-weights{margin-top:9px;border:1px solid #e2e8df;border-radius:11px;background:#fff}
.rationale-weights summary{padding:10px 12px;color:#314c39;font-size:12px;font-weight:750;cursor:pointer}
.rationale-weights summary span{color:#667367;font-weight:500}
.rationale-weight-list{display:flex;flex-wrap:wrap;gap:6px;padding:0 10px 10px}
.rationale-weight{display:inline-flex;align-items:center;gap:7px;padding:6px 8px;border-radius:8px;background:#f0f4ed;color:#44584a;font-size:10px}
.rationale-weight strong{color:#1f5c3c;font-size:11px}
.rationale-game-note,.rationale-caveat{margin:9px 0 0;padding:10px 12px;border-left:3px solid #a7bd89;border-radius:0 9px 9px 0;background:#f2f6ed;color:#485a4c;font-size:11px;line-height:1.5}
.rationale-caveat{border-left-color:#d1a36b;background:#faf5eb}
.rationale-game-note b{color:#304e37}
.rationale-legacy h4{margin:0 0 7px;color:#20392a;font-size:15px}
.rationale-legacy ul{margin:0;padding-left:20px;color:#3f5144;font-size:12px;line-height:1.6}
.rationale-legacy li{padding:3px 0}
@media(max-width:980px){
  .history-archive-layout{grid-template-columns:minmax(0,1fr);gap:14px}
  .history-index-panel{position:static;max-height:none}
  .suggestion-history-index{max-height:320px}
  .suggestion-history-list{padding-top:0}
  .history-candidate-list{grid-template-columns:1fr}
}
@media(min-width:761px){
  .history-candidate-top h4{font-size:17px}
  .history-reason{font-size:14px;line-height:1.75}
  .history-reason strong{font-size:15px}
  .history-shape{font-size:12px}
  .history-shape b{font-size:14px}
  .rationale-method p,.rationale-highlight>p{font-size:12px}
  .rationale-number-copy>small{font-size:10px}
}
@media(max-width:760px){
  .sidebar{height:calc(64px + env(safe-area-inset-bottom))}
  .main-content{padding-bottom:calc(100px + env(safe-area-inset-bottom))}
  .nav-item{width:25%;min-width:0;min-height:52px;padding:5px 1px;font-size:9px;line-height:1.15}
  .side-nav{gap:1px}
  .nav-icon{font-size:18px}
  .history-toolbar{display:grid;grid-template-columns:1fr;gap:9px;margin-top:15px}
  .history-toolbar .range-chip{min-width:0;overflow-wrap:anywhere;line-height:1.45}
  .history-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .history-actions .outline-button{min-width:0;min-height:48px;padding:8px 7px;font-size:12px;line-height:1.3}
  .history-archive-layout{grid-template-columns:minmax(0,1fr);gap:14px;padding-top:15px}
  .history-index-panel{position:static;max-height:none;padding:13px;border-radius:15px}
  .history-index-heading h3{font-size:17px}
  .history-index-heading p{font-size:12px}
  .history-index-controls{grid-template-columns:minmax(0,1fr) auto;padding:8px 0}
  .history-select-all{min-height:44px;font-size:13px}
  .history-delete-button{min-height:44px;padding:7px 9px;font-size:12px}
  .suggestion-history-index{max-height:270px;gap:6px}
  .history-index-item{grid-template-columns:27px minmax(0,1fr);gap:5px;padding:4px}
  .history-index-check{min-height:66px}
  .history-index-check input,.history-select-all input{width:21px;height:21px}
  .history-index-jump{min-height:66px;padding:7px 8px}
  .history-index-game{font-size:10px}
  .history-index-jump strong{font-size:13px}
  .history-index-summary{font-size:12px}
  .history-index-action{font-size:11px}
  .suggestion-history-list{gap:13px;padding-top:0}
  .suggestion-session{padding:14px;border-radius:17px}
  .suggestion-session-head{align-items:flex-start;gap:8px}
  .suggestion-session-head>div{min-width:0}
  .suggestion-session-head h3{font-size:18px}
  .suggestion-session-head p{font-size:12px}
  .session-count{padding:6px 8px;font-size:11px}
  .history-basis{grid-template-columns:repeat(2,minmax(0,1fr));font-size:11px}
  .history-basis b{font-size:13px}
  .history-candidate-list{grid-template-columns:1fr;gap:10px;padding-top:12px}
  .history-candidate{padding:14px;border-radius:14px}
  .history-candidate-top{gap:7px}
  .history-candidate-top h4{font-size:16px}
  .history-selection{max-width:105px;white-space:normal;text-align:center;font-size:9px;line-height:1.25}
  .history-balls .ball{width:clamp(39px,11vw,46px);height:clamp(39px,11vw,46px);font-size:15px}
  .history-shape{grid-template-columns:repeat(2,minmax(0,1fr));font-size:11px}
  .history-shape b{font-size:13px}
  .history-reason{font-size:13px;line-height:1.65}
  .history-archive-layout.is-mobile-detail .history-index-panel{display:none}
  .history-archive-layout.is-mobile-detail .suggestion-history-list{display:grid}
  .history-detail-back:not([hidden]){display:inline-flex;align-items:center;justify-content:center;justify-self:start;min-height:46px;padding:8px 13px;border:1px solid #a8bea8;border-radius:11px;background:#f4f8f1;color:#22543a;font-size:13px;font-weight:750}
  .candidate-rationale{margin-top:13px;padding-top:12px}
  .rationale-method{padding:11px}
  .rationale-method h4{font-size:15px}
  .rationale-method p{font-size:12px;line-height:1.5}
  .rationale-highlight{padding:10px}
  .rationale-highlight>strong{font-size:15px}
  .rationale-highlight>p{font-size:11px;line-height:1.45}
  .rationale-number-panel{padding:10px}
  .rationale-number-list{grid-template-columns:1fr}
  .rationale-number-row{padding:8px 9px}
  .rationale-number-copy>small{font-size:11px}
  .rationale-weight{font-size:10px}
  .rationale-game-note,.rationale-caveat{font-size:12px;line-height:1.6}
  .candidate-actions{align-items:stretch}
  .candidate-actions .copy-button,.candidate-select{justify-content:center;flex:1 1 100%;min-height:44px;font-size:14px}
}

/* Bell distribution: exact combination baseline, selected-date structure, and Monte Carlo. */
.nav-label-short{display:none}
.nav-item[data-tab="bell"] .nav-label-full{display:inline}
.nav-item[data-tab="bell"] .nav-label-short{display:none}
.nav-item .nav-label-full,.nav-item .nav-label-short{max-width:100%;text-align:center}
.bell-hero{padding-bottom:27px}
.bell-data-stamp{display:inline-flex;align-items:center;min-height:39px;margin-top:17px;padding:8px 13px;border:1px solid #d7e3d6;border-radius:12px;background:#f4f8f1;color:#35543e;font-size:13px;font-weight:700}
.bell-section{padding:28px 0 31px;border-top:1px solid #dfe5dc}
.bell-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:19px}
.bell-section-heading h3{margin:7px 0 0;color:#20392a;font:750 25px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:-.7px}
.bell-section-heading>p{max-width:380px;margin:0;color:#4d5c51;font-size:14px;line-height:1.6}
.bell-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:13px}
.bell-summary-card{min-height:86px;padding:14px 15px;border:1px solid #dfe6de;border-radius:15px;background:#fff}
.bell-summary-card span{display:block;color:#59695c;font-size:11px;font-weight:750;letter-spacing:.4px}
.bell-summary-card strong{display:block;margin-top:8px;color:#1e4933;font:750 22px/1.15 system-ui,-apple-system,"Segoe UI",sans-serif;font-variant-numeric:tabular-nums}
.bell-summary-card small{display:block;margin-top:4px;color:#59675d;font-size:11px;line-height:1.4}
.bell-histogram{overflow:hidden;padding:14px 14px 7px;border:1px solid #dfe6de;border-radius:17px;background:#fff}
.bell-histogram svg{display:block;width:100%;height:auto;min-height:260px}
.bell-svg-grid{stroke:#e7ece5;stroke-width:1}
.bell-svg-axis{fill:#536157;font:12px system-ui,-apple-system,"Segoe UI",sans-serif}
.bell-svg-label{fill:#536157;font:10px system-ui,-apple-system,"Segoe UI",sans-serif}
.bell-svg-observed{fill:#9db77f;opacity:.78}
.bell-svg-theory{fill:none;stroke:#1e7957;stroke-width:3;stroke-linejoin:round;stroke-linecap:round}
.bell-chart-key{display:flex;flex-wrap:wrap;gap:14px;margin:12px 5px;color:#34473a;font-size:12px;font-weight:650}
.bell-chart-key span{display:inline-flex;align-items:center;gap:7px}
.bell-chart-key i{display:inline-block;width:11px;height:11px;border-radius:3px}
.bell-key-observed{background:#9db77f}.bell-key-theory{background:#1e7957}
.bell-method-note{margin-top:13px;padding:14px 16px;border-left:3px solid #83a36e;border-radius:0 11px 11px 0;background:#f0f5ec;color:#3f5144;font-size:13px;line-height:1.65}
.bell-method-note strong{color:#263e2e}
.bell-period-controls{display:grid;grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) auto;align-items:end;gap:10px;margin:17px 0 12px;padding:14px;border:1px solid #dfe6de;border-radius:15px;background:#fff}
.bell-period-controls label,.bell-mc-controls label{display:grid;gap:7px;color:#46584b;font-size:12px;font-weight:700}
.bell-period-controls input,.bell-mc-controls select{width:100%;min-height:44px;padding:9px 11px;border:1px solid #cfd9cf;border-radius:10px;background:#fff;color:#243c2c;font:600 14px system-ui,-apple-system,"Segoe UI",sans-serif}
.bell-period-controls .primary-button{min-height:44px;white-space:nowrap}
.bell-period-caption{margin:10px 1px 15px;color:#3f5144;font-size:13px;font-weight:700}
.bell-period-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.bell-card{min-width:0;padding:19px;border:1px solid #dfe6de;border-radius:17px;background:#fff}
.bell-card h4{margin:8px 0 6px;color:#263d2d;font:750 20px/1.3 system-ui,-apple-system,"Segoe UI",sans-serif}
.bell-card-copy{min-height:42px;margin:0 0 13px;color:#506054;font-size:13px;line-height:1.55}
.bell-distribution{display:grid;gap:10px}
.bell-distribution-row{display:grid;grid-template-columns:72px minmax(60px,1fr) 110px;align-items:center;gap:9px}
.bell-distribution-label{color:#3d5143;font-size:12px;font-weight:700;white-space:nowrap}
.bell-distribution-track{position:relative;height:13px;border-radius:10px;background:#e9eee7}
.bell-distribution-fill{height:100%;min-width:2px;border-radius:10px;background:linear-gradient(90deg,#74a185,#b0ca73)}
.bell-distribution-theory{position:absolute;top:-3px;bottom:-3px;width:2px;border-radius:3px;background:#1c6044}
.bell-distribution-value{text-align:right;color:#33473a;font-size:12px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.bell-distribution-value small{display:block;color:#56645a;font-size:10px;font-weight:500}
.bell-trend{margin-top:17px;padding:13px 14px;border-radius:12px;background:#f0f5ec;color:#3d5143;font-size:12px;line-height:1.65}
.bell-trend strong{color:#1e5e42}
.bell-trend .bell-trend-delta{display:inline-block;margin:4px 0 0;padding:3px 8px;border-radius:999px;background:#e1ecd9;color:#285b3d;font-weight:750}
.bell-mc-controls{display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:10px;padding:14px;border:1px solid #dfe6de;border-radius:15px;background:#fff}
.bell-mc-controls .primary-button{min-height:44px;white-space:nowrap}
.bell-filter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:12px}
.bell-filter-option{display:flex;align-items:flex-start;gap:10px;min-height:85px;padding:14px;border:1px solid #dfe6de;border-radius:13px;background:#fff;color:#33463a;cursor:pointer}
.bell-filter-option input{width:19px;height:19px;flex:none;margin:2px 0 0;accent-color:#16704d}
.bell-filter-option b{display:block;color:#2c4433;font-size:13px;line-height:1.4}
.bell-filter-option small{display:block;margin-top:5px;color:#536157;font-size:12px;line-height:1.5}
.bell-analysis-status{margin-top:11px;color:#59665d;font-size:12px;line-height:1.55}
.bell-mc-report{margin-top:15px}
.bell-mc-summary{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:12px}
.bell-mc-chip{padding:8px 11px;border:1px solid #d8e2d6;border-radius:999px;background:#f2f6ef;color:#304938;font-size:12px;font-weight:700}
.bell-mc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}
.bell-mc-ticket{padding:17px;border:1px solid #dce5dc;border-radius:16px;background:#fff}
.bell-mc-ticket-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px;color:#2c4936;font-size:13px;font-weight:750}
.bell-mc-ticket-head small{color:#5c6b60;font-size:11px;font-weight:600}
.bell-mc-balls{display:flex;flex-wrap:wrap;gap:7px}
.bell-mc-balls .ball{width:42px;height:42px;background:#e6f0df;color:#214c34;font-size:14px}
.bell-mc-shape{display:flex;flex-wrap:wrap;gap:8px 15px;margin-top:12px;color:#405246;font-size:12px}
.bell-mc-shape b{color:#1e5035}
.bell-mc-empty,.bell-empty{padding:18px;color:#526157;font-size:13px;line-height:1.6}
.bell-empty{border:1px dashed #d7e0d6;border-radius:13px;background:#fafbf9}

@media(max-width:760px){
  .sidebar{height:calc(112px + env(safe-area-inset-bottom));padding:5px 9px calc(5px + env(safe-area-inset-bottom))}
  .side-nav{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:2px;height:100%;align-content:center}
  .nav-item{width:auto;min-width:0;height:100%;min-height:0;padding:3px 2px;gap:3px;font-size:10px;line-height:1.05}
  .nav-icon{font-size:16px;line-height:17px}
  .nav-item span:last-child{max-width:100%;font-size:10px;line-height:1.05}
  .nav-item[data-tab="bell"] .nav-label-full{display:none}
  .nav-item[data-tab="bell"] .nav-label-short{display:block}
  .nav-item span:last-child{max-width:100%;text-align:center}
  .main-content{padding-bottom:calc(148px + env(safe-area-inset-bottom))}
  .bell-hero{padding-bottom:21px}
  .bell-data-stamp{min-height:40px;font-size:12px}
  .bell-section{padding:23px 0 25px}
  .bell-section-heading{display:block;margin-bottom:14px}
  .bell-section-heading h3{font-size:22px}
  .bell-section-heading>p{max-width:none;margin-top:8px;font-size:13px;line-height:1.55}
  .bell-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .bell-summary-card{min-height:84px;padding:12px}
  .bell-summary-card strong{font-size:21px}
  .bell-histogram{padding:8px 5px 3px;border-radius:13px}
  .bell-histogram svg{min-height:190px}
  .bell-svg-axis{font-size:18px}
  .bell-svg-label{font-size:16px}
  .bell-chart-key{gap:9px;font-size:11px}
  .bell-method-note{padding:12px 13px;font-size:12px;line-height:1.6}
  .bell-period-controls{grid-template-columns:1fr 1fr;gap:8px;padding:11px}
  .bell-period-controls label{font-size:11px}
  .bell-period-controls .primary-button{grid-column:1/-1;width:100%;min-height:48px}
  .bell-period-controls input{font-size:13px;padding:8px 7px}
  .bell-period-caption{font-size:12px;line-height:1.5}
  .bell-period-grid{grid-template-columns:1fr;gap:9px}
  .bell-card{padding:15px;border-radius:15px}
  .bell-card h4{font-size:18px}
  .bell-card-copy{min-height:0;font-size:12px}
  .bell-distribution{gap:9px}
  .bell-distribution-row{grid-template-columns:68px minmax(45px,1fr) 93px;gap:7px}
  .bell-distribution-label,.bell-distribution-value{font-size:11px}
  .bell-distribution-value small{font-size:9px}
  .bell-trend{margin-top:13px;padding:11px 12px;font-size:12px}
  .bell-mc-controls{grid-template-columns:1fr 1fr;gap:8px;padding:11px}
  .bell-mc-controls label{font-size:11px}
  .bell-mc-controls select{min-height:46px;font-size:13px;padding:8px}
  .bell-mc-controls .primary-button{grid-column:1/-1;width:100%;min-height:49px}
  .bell-filter-grid{grid-template-columns:1fr;gap:7px}
  .bell-filter-option{min-height:0;padding:12px}
  .bell-filter-option b{font-size:13px}
  .bell-filter-option small{font-size:11px}
  .bell-analysis-status{font-size:11px}
  .bell-mc-summary{gap:6px}
  .bell-mc-chip{font-size:11px;padding:7px 9px}
  .bell-mc-grid{grid-template-columns:1fr;gap:8px}
  .bell-mc-ticket{padding:14px}
  .bell-mc-balls .ball{width:clamp(39px,10vw,45px);height:clamp(39px,10vw,45px);font-size:14px}
  .bell-mc-shape{gap:7px 12px;font-size:11px}
}

/* Final synthesis dashboard: analysis, evaluated choices, bell baseline, then ticket selection. */
.summary-hero{padding-bottom:25px}
.summary-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:18px}
.summary-toolbar .range-chip{flex:0 1 auto;min-width:min(100%,400px);font-size:12px;color:#334c3a}
.summary-toolbar .primary-button{min-height:43px;font-size:13px}
.summary-insight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:22px 0 0}
.summary-insight-card{display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:202px;padding:18px;border:1px solid #dfe6de;border-radius:17px;background:linear-gradient(155deg,#fff,#f7faf5)}
.summary-insight-card h3{margin:12px 0 7px;color:#21452f;font:750 21px/1.25 system-ui,-apple-system,"Segoe UI",sans-serif;font-variant-numeric:tabular-nums}
.summary-insight-card p{flex:1;margin:0;color:#4c5e50;font-size:13px;line-height:1.6}
.summary-link{appearance:none;display:inline-flex;align-items:center;justify-content:flex-start;min-height:44px;margin-top:14px;padding:9px 12px;border:1px solid #cbd9cc;border-radius:10px;background:#fff;color:#145b40;font-size:13px;font-weight:750;text-align:left;cursor:pointer;transition:background .18s,border-color .18s,transform .18s}
.summary-link:hover{border-color:#82a98c;background:#eef6ee;transform:translateY(-1px)}
.summary-link:focus-visible,.summary-toolbar .primary-button:focus-visible{outline:3px solid #a6c65a;outline-offset:3px}
.summary-method-status{margin:13px 0 0;padding:14px 16px;border-left:3px solid #88a36e;border-radius:0 11px 11px 0;background:#f1f6ed;color:#415447;font-size:13px;line-height:1.65}
.summary-method-status strong{color:#23442e}
.summary-method-status p{margin:7px 0 0}
.summary-method-status p+p{margin-top:5px}
.summary-candidates{padding:31px 0 6px;border-top:1px solid #dfe5dc;margin-top:25px}
.summary-candidate-heading{align-items:flex-end;margin-bottom:13px}
.summary-candidate-heading h2{font-size:clamp(30px,4vw,44px);line-height:1.05;letter-spacing:-1.7px}
.summary-candidate-heading h2 span{color:#758d70}
.summary-candidate-heading p{max-width:480px;color:#4d5c51;font-size:14px;line-height:1.6}
.summary-candidates .suggestions-toolbar{margin-top:15px}

@media(max-width:760px){
  .summary-hero{padding-bottom:19px}
  .summary-toolbar{display:grid;grid-template-columns:1fr;gap:8px;margin-top:14px}
  .summary-toolbar .range-chip{font-size:11px;line-height:1.4}
  .summary-toolbar .primary-button{width:100%;min-height:48px}
  .summary-insight-grid{grid-template-columns:1fr;gap:8px;padding-top:15px}
  .summary-insight-card{min-height:0;padding:15px;border-radius:14px}
  .summary-insight-card h3{margin:8px 0 5px;font-size:19px}
  .summary-insight-card p{font-size:12px;line-height:1.55}
  .summary-link{min-height:44px;margin-top:7px;font-size:13px}
  .summary-method-status{margin-top:9px;padding:12px 13px;font-size:12px;line-height:1.6}
  .summary-candidates{margin-top:20px;padding-top:22px}
  .summary-candidate-heading{display:block}
  .summary-candidate-heading h2{font-size:33px;letter-spacing:-1.5px}
  .summary-candidate-heading p{margin-top:8px;font-size:12px;line-height:1.55}
}
@media(max-width:390px){
  .bell-distribution-row{grid-template-columns:61px minmax(38px,1fr) 85px;gap:6px}
  .bell-distribution-label,.bell-distribution-value{font-size:10px}
  .bell-data-stamp{font-size:11px}
  .nav-item span:last-child{font-size:9px}
}

.summary-monte-carlo{margin-top:28px;padding:27px 0 23px;border-top:1px solid #dfe5dc;border-bottom:1px solid #dfe5dc}
.summary-mc-heading{align-items:flex-end;margin-bottom:16px}
.summary-mc-heading h2{font-size:clamp(29px,3.8vw,42px);line-height:1.05;letter-spacing:-1.6px}
.summary-mc-heading h2 span{color:#758d70}
.summary-mc-heading p{max-width:510px;color:#4d5c51;font-size:14px;line-height:1.6}
.summary-mc-controls{display:grid;grid-template-columns:minmax(160px,1fr) minmax(160px,1fr) auto;align-items:end;gap:10px}
.summary-mc-controls label{display:grid;gap:7px;color:#445448;font-size:12px;font-weight:700}
.summary-mc-controls select{width:100%;min-height:44px;padding:8px 11px;border:1px solid #d7e0d7;border-radius:10px;background:#fff;color:#263b2d;font-size:14px}
.summary-mc-controls .primary-button{min-height:44px;font-size:13px;white-space:nowrap}
.summary-mc-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:11px}
.summary-mc-filters label{display:flex;align-items:center;gap:9px;min-height:43px;padding:9px 11px;border:1px solid #e0e7df;border-radius:10px;background:#fff;color:#405246;font-size:12px;line-height:1.35}
.summary-mc-filters input{width:17px;height:17px;accent-color:#176b49;flex:none}
.summary-mc-filters input:disabled{opacity:.45}
.summary-mc-status{margin-top:10px;padding:11px 13px;border-left:3px solid #88a36e;border-radius:0 10px 10px 0;background:#f1f6ed;color:#45584a;font-size:12px;line-height:1.55}
.summary-mc-report{margin-top:12px}
.summary-mc-report-meta{display:flex;flex-wrap:wrap;gap:7px;margin-bottom:12px;color:#4e5d51;font-size:12px;line-height:1.5}
.summary-mc-report-meta>*{padding:7px 10px;border:1px solid #dfe7de;border-radius:999px;background:#fff}
.summary-mc-report-meta strong{color:#1c553c}
.summary-mc-status-note{padding:12px 14px;border:1px solid #dfe7de;border-radius:12px;background:#fff;color:#3e5143;font-size:13px;line-height:1.55}
.summary-model-list{display:flex;flex-wrap:wrap;gap:7px;margin:8px 0}.summary-model-list span{padding:6px 9px;border:1px solid #dfe7de;border-radius:999px;background:#f7faf5;color:#34533d;font-size:11px;font-weight:700}
.summary-mc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.summary-mc-ticket{min-width:0;padding:15px;border:1px solid #dfe6de;border-radius:15px;background:#fff;transition:border-color .18s,box-shadow .18s}
.summary-mc-ticket.is-selected{border-color:#5e9b72;box-shadow:0 0 0 2px rgba(66,137,87,.11)}
.summary-mc-ticket-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:#647466;font-size:10px;font-weight:750;letter-spacing:.7px}
.summary-mc-ticket-head>span:last-child{letter-spacing:0;text-align:right}
.summary-mc-ticket-head b{color:#215c3c}
.summary-mc-balls{margin:12px 0}
.summary-mc-balls .ball{width:39px;height:39px;font-size:12px}
.summary-mc-shape{display:flex;flex-wrap:wrap;gap:7px 15px;color:#67746b;font-size:11px}
.summary-mc-shape b{margin-left:3px;color:#263b2d;font-size:12px}
.summary-mc-ticket-actions{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:13px;padding-top:11px;border-top:1px solid #edf0eb}
.summary-mc-ticket-actions .candidate-select{margin-left:auto;font-size:12px}
.summary-mc-caveat{margin-top:13px;padding:11px 13px;border-radius:10px;background:#f6f7f3;color:#59675d;font-size:12px;line-height:1.55}
.summary-mc-caveat strong{color:#344a39}
.learning-table-note{margin:10px 0 0;color:#506052;font-size:12px;line-height:1.55}

@media(max-width:760px){
  .summary-monte-carlo{margin-top:20px;padding:20px 0 18px}
  .summary-mc-heading{display:block;margin-bottom:12px}
  .summary-mc-heading h2{font-size:31px;letter-spacing:-1.3px}
  .summary-mc-heading p{margin-top:8px;font-size:12px;line-height:1.55}
  .summary-mc-controls{grid-template-columns:1fr 1fr;gap:8px}
  .summary-mc-controls label{font-size:11px}
  .summary-mc-controls select{min-height:46px;font-size:14px}
  .summary-mc-controls .primary-button{grid-column:1/-1;width:100%;min-height:48px}
  .summary-mc-filters{grid-template-columns:1fr;gap:6px;margin-top:8px}
  .summary-mc-filters label{min-height:43px;font-size:12px}
  .summary-mc-status{font-size:11px}
  .summary-mc-report-meta{gap:6px;font-size:11px}
  .summary-mc-status-note{font-size:12px}
  .summary-mc-grid{grid-template-columns:1fr;gap:8px}
  .summary-mc-ticket{padding:13px;border-radius:13px}
  .summary-mc-balls .ball{width:clamp(38px,9vw,44px);height:clamp(38px,9vw,44px);font-size:13px}
  .summary-mc-shape{font-size:11px;gap:6px 13px}
  .summary-mc-ticket-actions{align-items:flex-start;flex-wrap:wrap}
  .summary-mc-ticket-actions .candidate-select{width:100%;min-height:42px;justify-content:flex-end}
  .summary-mc-caveat{font-size:11px}
}

.summary-workflow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:17px 0 4px}
.summary-workflow-step{display:flex;align-items:flex-start;gap:12px;min-width:0;padding:15px;border:1px solid #dfe6de;border-radius:14px;background:#fff;transition:border-color .18s,background .18s,box-shadow .18s}
.summary-workflow-step.is-current{border-color:#8da778;background:#f6f9f1;box-shadow:0 0 0 2px rgba(111,144,91,.08)}
.summary-workflow-step.is-complete{border-color:#bbd4bd;background:#f0f7ef}
.summary-step-number{display:grid;place-items:center;flex:none;width:31px;height:31px;border-radius:50%;background:#edf1e9;color:#456348;font-size:14px;font-weight:800;font-variant-numeric:tabular-nums}
.summary-workflow-step.is-current .summary-step-number{background:#176b49;color:#fff}
.summary-workflow-step.is-complete .summary-step-number{background:#d9ecd8;color:#176b49}
.summary-workflow-step>div{min-width:0}
.summary-workflow-step strong{display:block;color:#253c2e;font-size:14px;line-height:1.35}
.summary-workflow-step p{margin:5px 0 8px;color:#536256;font-size:12px;line-height:1.5}
.summary-workflow-step small{display:block;color:#456348;font-size:11px;font-weight:750;line-height:1.45}
@media(max-width:760px){
  .summary-workflow{grid-template-columns:1fr;gap:7px;margin:12px 0 0}
  .summary-workflow-step{gap:10px;padding:12px;border-radius:12px}
  .summary-workflow-step strong{font-size:13px}
  .summary-workflow-step p{margin:4px 0 6px;font-size:12px}
  .summary-workflow-step small{font-size:11px}
}

/* Markov evaluation, shared Monte Carlo report, and history game filters. */
.history-game-filters{display:grid;grid-template-columns:1fr 1fr 1fr;gap:5px;margin:13px 13px 9px;padding:4px;border:1px solid #dfe6de;border-radius:12px;background:#f3f6f1}
.history-game-filters button{min-width:0;min-height:37px;padding:6px 5px;border:0;border-radius:8px;background:transparent;color:#526256;font-size:11px;font-weight:750;cursor:pointer}
.history-game-filters button.active{background:#fff;color:#145d41;box-shadow:0 1px 4px rgba(33,57,40,.12)}
.markov-controls{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px 16px;border:1px solid #dfe6de;border-radius:15px;background:#fff}
.markov-controls>div{display:grid;gap:4px}.markov-controls strong{color:#284532;font-size:14px}.markov-controls span{color:#59685d;font-size:12px;line-height:1.5}
.markov-controls .primary-button{min-height:44px;white-space:nowrap}
.markov-report{display:grid;gap:13px;margin-top:14px}
.markov-overview{display:grid;grid-template-columns:minmax(230px,.82fr) minmax(0,1.5fr);gap:12px}
.markov-pick,.markov-order-card,.markov-chart-card{min-width:0;padding:18px;border:1px solid #dfe6de;border-radius:16px;background:#fff}
.markov-pick{background:linear-gradient(145deg,#f1f7ee,#fff 72%)}
.markov-pick .section-kicker,.markov-order-card .section-kicker,.markov-chart-card .section-kicker{color:#527156;font-size:10px;font-weight:800;letter-spacing:.8px}
.markov-balls,.summary-markov-balls{display:flex;flex-wrap:wrap;gap:7px;margin:15px 0 12px}
.markov-balls .ball,.summary-markov-balls .ball{width:44px;height:44px;background:#dcebd5;color:#174b34;font-size:15px;font-weight:800}
.markov-pick p,.markov-order-card p,.markov-chart-card p{margin:8px 0;color:#435448;font-size:13px;line-height:1.6}
.markov-pick small{display:block;color:#5a685d;font-size:11px;line-height:1.5}
.markov-order-card h4,.markov-chart-card h4{margin:7px 0 10px;color:#243d2d;font-size:18px;line-height:1.35}
.markov-table-wrap{max-height:320px;overflow:auto;border:1px solid #e2e8e1;border-radius:10px}
.markov-order-table{width:100%;border-collapse:collapse;font-size:11px;white-space:nowrap}
.markov-order-table th,.markov-order-table td{padding:8px 9px;border-bottom:1px solid #e7ece6;text-align:left;color:#405145}
.markov-order-table th{position:sticky;top:0;background:#f2f6ef;color:#2d4937;font-size:10px;z-index:1}
.markov-order-table tr:last-child td{border-bottom:0}
.markov-chart-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:12px}
.markov-scatter{display:block;width:100%;height:auto;overflow:visible;margin-top:9px}
.markov-grid{stroke:#e4eae2;stroke-width:1}.markov-axis-label{fill:#56655a;font:11px system-ui,-apple-system,"Segoe UI",sans-serif}.markov-axis-title{fill:#405347;font:11px system-ui,-apple-system,"Segoe UI",sans-serif;font-weight:650}
.markov-point{fill:#24805b;stroke:#fff;stroke-width:1.5}.markov-regression{stroke:#cb8c39;stroke-width:2.5;stroke-dasharray:6 5}
.markov-chart-key{display:flex;flex-wrap:wrap;gap:15px;color:#506055;font-size:11px}.markov-chart-key span{display:inline-flex;align-items:center;gap:6px}.markov-chart-key i{width:9px;height:9px;border-radius:50%;background:#24805b}.markov-chart-key b{width:18px;border-top:2px dashed #cb8c39}
.markov-history-list{display:grid;gap:7px;margin-top:11px}.markov-history-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px;border:1px solid #e3e9e2;border-radius:10px;background:#fafbf9}.markov-history-row>div{display:grid;gap:4px;min-width:0}.markov-history-row strong{color:#334a39;font-size:11px}.markov-history-row span{overflow-wrap:anywhere;color:#5a675c;font-size:11px}.markov-history-row>b{flex:none;color:#1a6748;font-size:11px;text-align:right}.markov-history-empty{padding:13px;color:#58675b;font-size:12px}
.summary-learning-review,.summary-markov-panel{margin-top:12px}
.summary-review-card,.summary-markov-card,.summary-review-empty,.summary-markov-empty{padding:16px;border:1px solid #dfe6de;border-radius:15px;background:#fff}
.summary-review-empty,.summary-markov-empty{display:grid;gap:7px;background:#f7faf5;color:#435448;font-size:13px;line-height:1.55}.summary-review-empty strong,.summary-markov-empty strong{color:#244631}
.summary-review-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-bottom:11px;border-bottom:1px solid #e4eae2}
.summary-review-heading h3{margin:6px 0 0;color:#243f2e;font-size:19px}.summary-review-heading>span{padding:6px 9px;border-radius:999px;background:#edf5e9;color:#356144;font-size:11px;font-weight:750;white-space:nowrap}
.summary-review-result{display:flex;align-items:center;flex-wrap:wrap;gap:9px;margin:12px 0}.summary-review-result>span{color:#526156;font-size:10px;font-weight:800;letter-spacing:.6px}.summary-review-result .candidate-balls{margin:0}.summary-review-result small{color:#5b685e;font-size:11px}
.summary-review-ticket-list{display:grid;gap:7px}.summary-review-ticket{display:grid;grid-template-columns:minmax(150px,1fr) auto auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #e5ebe3;border-radius:10px;background:#fafbf9}.summary-review-ticket>div:first-child{display:grid;gap:3px}.summary-review-ticket strong{color:#334b39;font-size:11px}.summary-review-ticket span{color:#59675d;font-size:10px}.summary-review-ticket .ball{width:30px;height:30px;font-size:10px}.summary-review-ticket>b{color:#3a5443;font-size:11px;white-space:nowrap}
.summary-review-adjustment{margin-top:11px;padding:12px 13px;border-left:3px solid #86a16d;border-radius:0 10px 10px 0;background:#f1f6ed;color:#415347;font-size:12px;line-height:1.6}.summary-review-adjustment strong{color:#294832}.summary-review-adjustment p{margin:5px 0}.summary-review-adjustment small,.summary-review-last-check{color:#5a685d;font-size:11px;line-height:1.5}.summary-review-last-check{padding:8px 10px;border-radius:9px;background:#f8f7ef}
.candidate-markov-note{margin:10px 0;padding:10px 12px;border-left:3px solid #72966f;border-radius:0 9px 9px 0;background:#f0f6ed;color:#435748;font-size:12px;line-height:1.55}
.candidate-model-note{margin:10px 0;padding:11px 12px;border:1px solid #e0e9df;border-radius:10px;background:#f6f9f4;color:#435548;font-size:12px;line-height:1.6}.candidate-model-note strong{display:block;margin-bottom:4px;color:#294832}
.summary-markov-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;background:linear-gradient(145deg,#f1f7ee,#fff 78%)}
.summary-markov-card>div:first-child{min-width:0}.summary-markov-card strong{display:block;margin-top:6px;color:#244630;font-size:15px}.summary-markov-card p{margin:6px 0 0;color:#4e6053;font-size:12px;line-height:1.55}.summary-markov-card .summary-link{grid-column:1/-1;margin-top:1px}.summary-markov-balls{flex-wrap:nowrap;margin:0}.summary-markov-balls .ball{width:38px;height:38px;font-size:13px}
@media(max-width:1000px){.markov-overview{grid-template-columns:1fr}.markov-chart-grid{grid-template-columns:1fr}.markov-table-wrap{max-height:280px}}
@media(max-width:760px){
  .history-game-filters{margin:10px 9px 7px}.history-game-filters button{min-height:39px;font-size:10px}
  .markov-controls{align-items:stretch;flex-direction:column;padding:12px}.markov-controls .primary-button{width:100%;min-height:48px}
  .markov-pick,.markov-order-card,.markov-chart-card{padding:14px;border-radius:13px}.markov-overview,.markov-chart-grid{grid-template-columns:1fr;gap:9px}
  .markov-balls .ball{width:clamp(38px,10vw,45px);height:clamp(38px,10vw,45px)}.markov-scatter{min-width:500px}.markov-chart-card{overflow:hidden}.markov-scatter-card{overflow-x:auto}
  .markov-table-wrap{max-height:250px}.markov-order-table{font-size:10px}.markov-order-table th,.markov-order-table td{padding:7px}
  .markov-history-row{align-items:flex-start;flex-direction:column}.markov-history-row>b{text-align:left}
  .summary-review-card,.summary-markov-card,.summary-review-empty,.summary-markov-empty{padding:12px;border-radius:13px}
  .summary-review-heading{flex-direction:column;gap:6px}.summary-review-heading h3{font-size:17px}.summary-review-heading>span{white-space:normal}
  .summary-review-ticket{grid-template-columns:1fr auto;gap:7px}.summary-review-ticket .candidate-balls{grid-column:1/-1;grid-row:2}.summary-review-ticket>b{grid-column:2;grid-row:1}.summary-review-ticket .ball{width:clamp(29px,7vw,34px);height:clamp(29px,7vw,34px)}
  .summary-markov-card{grid-template-columns:1fr;align-items:start}.summary-markov-balls{flex-wrap:wrap}.summary-markov-card .summary-link{grid-column:auto}
}

/* Uniform-random mode controls and neutral candidate presentation. */
.advanced-only.mode-hidden{display:none!important}
.bell-mc-controls{grid-template-columns:minmax(190px,1.35fr) minmax(130px,1fr) minmax(130px,1fr) auto}
.summary-mc-controls{grid-template-columns:auto;justify-content:start}
.candidate-neutral-score{display:grid;gap:3px;margin:11px 0;padding:10px 12px;border-left:3px solid #3a7955;border-radius:0 9px 9px 0;background:#f1f6f1;color:#31493a}
.candidate-neutral-score strong{font-size:12px}.candidate-neutral-score span{color:#54665a;font-size:11px}
.candidate-meta-neutral{grid-template-columns:repeat(4,minmax(0,1fr))}
.rationale-uniform .rationale-highlights{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:760px){
  .bell-mc-controls,.summary-mc-controls{grid-template-columns:1fr 1fr}
  .bell-mc-controls .primary-button,.summary-mc-controls .primary-button{grid-column:1/-1}
  .candidate-meta-neutral{grid-template-columns:repeat(2,minmax(0,1fr))}
  .rationale-uniform .rationale-highlights{grid-template-columns:1fr}
}

/* External purchase tickets are kept as a separate random-control group. */
.learning-external-section{margin-top:26px;padding:19px;border:1px solid #d9e4d7;border-radius:17px;background:linear-gradient(145deg,#f3f7f0,#fff 72%)}
.learning-external-section .history-heading{padding:0;border:0}
.learning-external-form{display:grid;grid-template-columns:minmax(150px,.8fr) minmax(150px,.8fr) minmax(240px,1.6fr) auto;align-items:end;gap:10px;margin-top:14px}
.learning-external-form>label{display:grid;gap:6px;color:#445849;font-size:11px;font-weight:750}
.learning-external-form input,.learning-external-form select,.learning-external-form textarea{width:100%;min-width:0;min-height:43px;padding:10px 11px;border:1px solid #d9e2d8;border-radius:10px;background:#fff;color:#263d2e;font:500 12px Manrope,system-ui,sans-serif}
.learning-external-form textarea{min-height:67px;resize:vertical;line-height:1.5}
.learning-external-form .primary-button{min-height:43px;white-space:nowrap}
.learning-external-note,.learning-external-result{margin:11px 0 0;padding:10px 12px;border-left:3px solid #829c74;border-radius:0 9px 9px 0;background:#eef4ea;color:#4d604f;font-size:11px;line-height:1.6}
.learning-external-result{margin-top:8px;background:#f5f7f2}
.learning-external-result strong{color:#2d4936}
@media(max-width:900px){.learning-external-form{grid-template-columns:1fr 1fr}.learning-external-form .learning-external-numbers{grid-column:1/-1}.learning-external-form .primary-button{grid-column:1/-1}}
@media(max-width:760px){
  .learning-external-section{margin-top:21px;padding:13px;border-radius:14px}
  .learning-external-form{grid-template-columns:1fr 1fr;gap:8px;margin-top:11px}
  .learning-external-form>label{font-size:11px}
  .learning-external-form input,.learning-external-form select{min-height:46px;font-size:13px}
  .learning-external-form textarea{min-height:82px;font-size:13px}
  .learning-external-form .primary-button{min-height:48px;white-space:normal;font-size:12px}
  .learning-external-note,.learning-external-result{font-size:11px;line-height:1.6}
}

/* Transparent in-browser machine-learning report and its optional portfolio line. */
.learning-ml-section{margin-top:27px;padding-top:23px;border-top:1px solid #dce4da}
.learning-ml-section .history-heading{align-items:center;gap:14px}
.learning-ml-section .history-heading h3{margin-top:5px}
.learning-ml-section .primary-button{min-height:43px;white-space:nowrap}
.learning-ml-report{margin-top:13px}
.learning-ml-card{padding:18px;border:1px solid #dce5d9;border-radius:16px;background:linear-gradient(145deg,#f5f8f2,#fff 70%)}
.learning-ml-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.learning-ml-card-head h4{margin:6px 0 0;color:#283e30;font:700 17px Manrope,sans-serif}
.learning-ml-status{flex:none;padding:6px 9px;border-radius:999px;background:#e7f2e4;color:#2f6848;font-size:9px;font-weight:800;letter-spacing:.4px}
.learning-ml-status.is-stale{background:#fff0dc;color:#8b5e1c}
.learning-ml-period{margin:11px 0;color:#566559;font-size:11px;line-height:1.6}
.learning-ml-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
.learning-ml-metrics>div{display:flex;flex-direction:column;gap:6px;min-width:0;padding:11px;border:1px solid #e6ebe3;border-radius:11px;background:#fff}
.learning-ml-metrics span{color:#738075;font-size:8px;font-weight:800;letter-spacing:.45px;line-height:1.4}
.learning-ml-metrics strong{color:#2d4936;font:700 20px Manrope,sans-serif}
.learning-ml-metrics small{color:#6b786d;font-size:10px;line-height:1.4}
.learning-ml-assessment{margin:10px 0;padding:10px 12px;border-left:3px solid #879c72;border-radius:0 9px 9px 0;background:#eef3e9;color:#465749;font-size:11px;line-height:1.6}
.learning-ml-prediction{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,.62fr);gap:15px;align-items:center;padding:14px;border:1px solid #e1e8df;border-radius:13px;background:#fff}
.learning-ml-balls{margin:11px 0 8px}.learning-ml-balls .ball{width:42px;height:42px;background:#dcebd5;color:#174b34;font-size:14px;font-weight:800}
.learning-ml-prediction p{margin:5px 0 0;color:#59675c;font-size:11px;line-height:1.55}
.learning-ml-ranking{display:grid;grid-template-columns:1fr 1fr;gap:5px 8px;margin:0;padding:0;list-style:none}
.learning-ml-ranking li{display:grid;grid-template-columns:23px 29px 1fr;align-items:center;gap:6px;padding:6px 8px;border-radius:8px;background:#f5f7f3}
.learning-ml-ranking li>span{color:#869187;font-size:9px}.learning-ml-ranking li>b{color:#304938;font-size:12px}.learning-ml-ranking li>small{color:#6a776b;font-size:9px;white-space:nowrap}
.learning-ml-method{margin:11px 0;color:#566559;font-size:10px;line-height:1.6}.learning-ml-method strong{color:#324c39}
.learning-ml-use{min-height:42px}
.candidate-ml-note{margin:10px 0;padding:10px 12px;border-left:3px solid #6689a0;border-radius:0 9px 9px 0;background:#eff5f8;color:#415762;font-size:11px;line-height:1.55}
.candidate-ml-score{display:grid;gap:3px;margin:11px 0;padding:10px 12px;border-left:3px solid #5e8197;border-radius:0 9px 9px 0;background:#eff5f8;color:#344e5c}
.candidate-ml-score strong{font-size:12px}.candidate-ml-score span{color:#5e7079;font-size:11px}
.summary-ml-panel{margin-top:12px}
.summary-ml-card,.summary-ml-empty{padding:16px;border:1px solid #dce5d9;border-radius:15px;background:linear-gradient(145deg,#f3f7f0,#fff 78%)}
.summary-ml-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}
.summary-ml-copy{min-width:0}.summary-ml-copy strong{display:block;margin-top:6px;color:#294632;font-size:15px}.summary-ml-copy p{margin:6px 0 0;color:#506054;font-size:11px;line-height:1.55}
.summary-ml-variants{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.summary-ml-variant{min-width:0;padding:11px;border:1px solid #e1e8df;border-radius:11px;background:#fff}.summary-ml-variant>span{display:block;color:#657467;font-size:9px;font-weight:800;letter-spacing:.45px}.summary-ml-variant>strong{display:block;margin-top:6px;color:#294632;font-size:17px}.summary-ml-variant>strong small{color:#667568;font-size:10px;font-weight:600}.summary-ml-variant p{margin:5px 0 0;color:#556458;font-size:10px;line-height:1.5}
.summary-ml-balls{display:flex;flex-wrap:nowrap;gap:5px}.summary-ml-balls .ball{width:34px;height:34px;background:#dcebd5;color:#174b34;font-size:12px;font-weight:800}
.summary-ml-card .summary-link{grid-column:1/-1;margin-top:0}
.summary-ml-empty{display:grid;gap:8px;color:#4b5c4d;font-size:12px;line-height:1.5}.summary-ml-empty strong{color:#294632}
@media(max-width:760px){
  .learning-ml-section{margin-top:22px;padding-top:18px}
  .learning-ml-section .history-heading{align-items:stretch;flex-direction:column}
  .learning-ml-section .primary-button{width:100%;min-height:48px}
  .learning-ml-card{padding:13px;border-radius:14px}
  .learning-ml-card-head h4{font-size:15px}
  .learning-ml-metrics{grid-template-columns:1fr 1fr;gap:6px}
  .learning-ml-metrics>div{padding:9px}.learning-ml-metrics strong{font-size:17px}
  .learning-ml-prediction{grid-template-columns:1fr;gap:10px;padding:11px}
  .learning-ml-balls .ball{width:clamp(35px,9vw,41px);height:clamp(35px,9vw,41px)}
  .learning-ml-ranking{grid-template-columns:1fr 1fr}
  .summary-ml-card{grid-template-columns:1fr;align-items:start;padding:12px}
  .summary-ml-variants{grid-template-columns:1fr}
  .summary-ml-balls{flex-wrap:wrap}.summary-ml-card .summary-link{grid-column:auto}
}
