@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root{color-scheme:light;--ink:#19231f;--muted:#747d77;--paper:#f4f6f2;--surface:#fff;--line:#e4e9e2;--forest:#10211e;--forest-2:#1a3931;--lime:#c8f169;--lime-dark:#91b937;--coral:#ef745d;--green:#218050;--red:#ae473d;--yellow:#f1bd57;--shadow:0 8px 24px rgba(23,42,33,.055);--safe-bottom:env(safe-area-inset-bottom,0px);font-family:'DM Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
*{box-sizing:border-box}html{background:var(--paper);scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);min-width:320px;-webkit-font-smoothing:antialiased}button,input,select{font:inherit}button{color:inherit;cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(145,185,55,.4);outline-offset:2px}.app-shell{min-height:100dvh;padding-bottom:calc(74px + var(--safe-bottom))}.topbar{height:64px;padding:0 max(18px,calc((100vw - 1160px)/2));background:var(--forest);display:flex;align-items:center;justify-content:space-between;color:#fff;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:10px;color:inherit;text-decoration:none}.brand-mark{position:relative;width:34px;height:34px;border-radius:10px;background:var(--lime);display:grid;place-items:center;overflow:hidden}.brand-mark:before,.brand-mark:after,.brand-mark span{content:"";position:absolute;width:23px;height:1.5px;background:var(--forest);transform:rotate(-35deg)}.brand-mark:before{top:11px;left:4px}.brand-mark:after{top:20px;right:4px}.brand-mark span{width:4px;height:4px;border-radius:50%;top:8px;right:8px;box-shadow:-14px 10px 0 var(--forest),-5px 15px 0 var(--forest)}.brand-copy{display:flex;flex-direction:column;line-height:1}.brand-copy strong{font:800 17px 'Manrope',sans-serif;letter-spacing:.1px}.brand-copy small{font-size:8px;letter-spacing:1.15px;color:#a7b6ae;margin-top:4px}.icon-button{width:40px;height:40px;border:1px solid rgba(255,255,255,.16);border-radius:12px;background:rgba(255,255,255,.08);color:inherit;display:grid;place-items:center}.icon-button svg,.primary-button svg,.secondary-button svg,.search-box svg,.nav-item svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.screen{display:none;max-width:1160px;margin:0 auto;padding:27px 24px 30px}.screen.active{display:block}.screen-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:19px}.eyebrow{margin:0 0 6px;color:var(--muted);font-size:9px;font-weight:700;letter-spacing:1.35px}.screen h1{font:800 28px/1.05 'Manrope',sans-serif;letter-spacing:0;margin:0}.live-indicator{display:inline-flex;gap:7px;align-items:center;padding:7px 10px;border-radius:999px;background:#e6eee6;color:#2d6143;font-size:10px;font-weight:700}.live-indicator i{display:block;width:7px;height:7px;border-radius:50%;background:#42a36d;box-shadow:0 0 0 3px rgba(66,163,109,.15)}.quota-strip{min-height:64px;padding:11px 13px;display:flex;align-items:center;gap:11px;background:var(--forest);color:white;border-radius:8px;margin:0 0 24px;box-shadow:var(--shadow)}.quota-icon{display:grid;place-items:center;width:33px;height:33px;flex:0 0 auto;border-radius:9px;background:rgba(200,241,105,.14);color:var(--lime);font-size:21px}.quota-copy{min-width:0;flex:1;display:flex;flex-direction:column;gap:3px}.quota-copy b{font-size:11px;font-weight:700}.quota-copy small{font-size:10px;color:#a8b5af;line-height:1.35}.text-button,.quiet-button{border:0;background:none;color:var(--forest-2);font-size:11px;font-weight:700;padding:8px 4px}.quota-strip .text-button{color:var(--lime);white-space:nowrap}.filter-section{margin-bottom:21px}.section-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.section-row h2,.results-heading h2,.settings-block h2{font:700 14px 'Manrope',sans-serif;margin:0}.segmented{display:flex;gap:4px;padding:4px;background:#e9ede7;border-radius:9px;width:max-content;max-width:100%;overflow:auto;scrollbar-width:none}.segmented::-webkit-scrollbar{display:none}.segmented button{white-space:nowrap;border:0;border-radius:7px;background:transparent;padding:8px 11px;color:#758077;font-size:10px;font-weight:700;min-height:32px}.segmented button.selected{background:var(--surface);color:var(--forest);box-shadow:0 1px 3px rgba(23,42,33,.1)}.market-options{display:flex;gap:8px;flex-wrap:wrap}.market-chip{height:41px;display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:8px;padding:0 10px;background:var(--surface);font-size:11px;font-weight:600;color:#667168;user-select:none}.market-chip input{position:absolute;opacity:0;width:1px;height:1px}.market-chip.selected{background:#eef6df;border-color:#c3d89a;color:#3d5622}.chip-icon{width:24px;height:24px;border-radius:7px;background:#edf0eb;display:grid;place-items:center;font:700 9px 'Manrope',sans-serif;color:#34443a}.market-chip.selected .chip-icon{background:var(--lime);color:#24351e}.microcopy,.update-note,.field-help{margin:8px 0 0;color:var(--muted);font-size:10px;line-height:1.5}.action-row{display:flex;gap:8px;margin-top:20px}.primary-button,.secondary-button,.outline-button,.danger-button{height:44px;border:0;border-radius:8px;font-size:12px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;gap:9px}.primary-button{flex:1;background:var(--lime);color:#1c2b1b;box-shadow:0 3px 0 #b0d856}.primary-button:active{transform:translateY(1px);box-shadow:0 2px 0 #b0d856}.secondary-button{width:48px;flex:0 0 auto;border:1px solid var(--line);background:var(--surface);color:var(--forest)}.update-note{text-align:center;margin-top:8px}.summary-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:14px 0 17px;border-bottom:1px solid var(--line);margin:0 0 19px}.summary-stat{display:flex;flex-direction:column;gap:4px;padding:0 10px;border-right:1px solid var(--line)}.summary-stat:first-child{padding-left:0}.summary-stat:last-child{border:0}.summary-stat span{font-size:9px;color:var(--muted)}.summary-stat b{font:700 17px 'Manrope',sans-serif}.results-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.sort-select select{height:31px;max-width:142px;border:1px solid var(--line);border-radius:7px;background:var(--surface);padding:0 25px 0 8px;color:#435047;font-size:10px;font-weight:600}.forecast-list{display:grid;grid-template-columns:1fr;gap:9px}.match-card{background:var(--surface);border:1px solid var(--line);border-radius:8px;overflow:hidden;box-shadow:0 3px 10px rgba(23,42,33,.025)}.match-card.value-card{border-left:3px solid var(--green)}.match-top{display:flex;align-items:start;justify-content:space-between;gap:10px;padding:12px 13px 8px}.match-league{font-size:9px;color:var(--muted);font-weight:700;letter-spacing:.3px}.match-time{font-size:9px;color:#858e87;white-space:nowrap}.match-event{font:700 13px/1.35 'Manrope',sans-serif;margin:4px 0 0}.match-pick-row{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 13px;background:#f8faf6;border-top:1px solid #eef1ec;border-bottom:1px solid #eef1ec}.pick-copy{min-width:0}.market-label{font-size:9px;color:var(--muted)}.pick-name{font-size:11px;font-weight:700;line-height:1.35;margin-top:3px}.pick-odds{flex:0 0 auto;text-align:right}.pick-odds b{display:block;font:700 15px 'Manrope',sans-serif}.pick-odds small{font-size:8px;color:var(--muted)}.match-bottom{padding:9px 13px 11px;display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.probability-block{display:flex;align-items:center;gap:8px}.prob-ring{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(var(--green) var(--p),#e7ece5 0);position:relative}.prob-ring:after{content:"";position:absolute;inset:4px;border-radius:50%;background:var(--surface)}.prob-ring b{z-index:1;font:700 9px 'Manrope',sans-serif}.prob-label{font-size:8px;color:var(--muted);line-height:1.35}.prob-label strong{display:block;color:var(--ink);font-size:9px}.decision{display:flex;align-items:center;gap:5px;padding:6px 8px;border-radius:6px;font-size:9px;font-weight:700;white-space:nowrap}.decision.good{background:#e5f3e9;color:#267147}.decision.no{background:#f2f0e9;color:#74705e}.edge-text{grid-column:1/-1;margin:0;color:var(--muted);font-size:9px}.edge-text b{color:var(--ink)}.empty-state{min-height:270px;display:flex;align-items:center;flex-direction:column;justify-content:center;text-align:center;padding:20px 24px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.empty-art{width:90px;height:72px;position:relative;margin-bottom:13px;background:#edf3e7;border-radius:14px;overflow:hidden}.empty-art .orb{position:absolute;width:39px;height:39px;border:2px solid #91b937;border-radius:50%;left:24px;top:16px}.empty-art .orb:before,.empty-art .orb:after{content:"";position:absolute;left:17px;top:-1px;width:1px;height:37px;background:#91b937;transform:rotate(42deg)}.empty-art .orb:after{transform:rotate(-42deg)}.empty-art .line{position:absolute;height:2px;background:var(--forest-2);transform:rotate(-18deg)}.line-one{width:28px;right:4px;top:35px}.line-two{width:18px;left:4px;top:51px}.empty-art .dot{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--coral)}.dot-one{top:11px;right:11px}.dot-two{top:19px;left:11px}.dot-three{bottom:8px;right:23px}.empty-state h3{font:700 14px 'Manrope',sans-serif;margin:0 0 6px}.empty-state p{max-width:340px;margin:0;color:var(--muted);font-size:11px;line-height:1.5}.outline-button{height:37px;padding:0 13px;border:1px solid #cbd5c8;background:transparent;color:var(--forest-2);margin-top:14px}.disclaimer{text-align:center;color:#8b938b;font-size:9px;line-height:1.45;margin:17px 0 0}.bottom-nav{position:fixed;z-index:22;bottom:0;left:0;right:0;padding:7px 10px calc(7px + var(--safe-bottom));height:calc(66px + var(--safe-bottom));background:rgba(255,255,255,.96);backdrop-filter:blur(18px);border-top:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr)}.nav-item{border:0;background:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#8b958d;font-size:9px;font-weight:600}.nav-item svg{width:20px;height:20px}.nav-item.active{color:var(--forest)}.nav-item.active svg{stroke:var(--green)}.page-intro{margin:-8px 0 17px;color:var(--muted);font-size:11px;line-height:1.5}.sports-tools{display:flex;gap:10px;align-items:center;margin-bottom:10px}.search-box{height:40px;flex:1;display:flex;align-items:center;gap:8px;padding:0 11px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.search-box svg{width:16px;height:16px;color:#768077}.search-box input{min-width:0;flex:1;border:0;background:transparent;outline:0;font-size:11px;color:var(--ink)}.selected-count{display:flex;justify-content:space-between;color:var(--muted);font-size:9px;padding:0 2px 8px}.sports-list{display:flex;flex-direction:column;gap:6px;padding-bottom:60px}.sport-row{min-height:54px;display:flex;align-items:center;gap:11px;padding:8px 11px;background:var(--surface);border:1px solid var(--line);border-radius:8px}.sport-check{appearance:none;width:19px;height:19px;flex:0 0 auto;border:1.5px solid #c6cec4;border-radius:6px;margin:0;display:grid;place-items:center}.sport-check:checked{background:var(--forest-2);border-color:var(--forest-2)}.sport-check:checked:after{content:"✓";font-size:12px;color:white;font-weight:700}.sport-main{min-width:0;flex:1}.sport-title{font-size:11px;font-weight:700;display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sport-subtitle{font-size:9px;color:var(--muted);margin-top:3px;display:block}.sport-category{flex:0 0 auto;max-width:96px;text-align:right;font-size:8px;color:#859087}.list-placeholder{padding:26px 17px;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--muted);font-size:11px;text-align:center}.sticky-action{position:sticky;bottom:calc(75px + var(--safe-bottom));width:100%;z-index:5;margin-top:-47px}.button-count{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:7px;background:rgba(25,43,23,.12);font-size:10px}.settings-block{padding:16px;background:var(--surface);border:1px solid var(--line);border-radius:8px;margin-bottom:11px}.field-label{display:block;font-size:10px;font-weight:700;margin:0 0 7px}.key-field{height:43px;display:flex;align-items:center;background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:0 5px 0 10px}.key-field input{min-width:0;flex:1;border:0;outline:0;background:transparent;color:var(--ink);font-size:12px}.key-field .icon-button{width:34px;height:34px;color:#69776d;border:0;background:none}.key-field .icon-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}.settings-block .field-help{margin:6px 0 16px}.full-select{width:100%;height:42px;background:var(--paper);border:1px solid var(--line);border-radius:7px;padding:0 10px;color:var(--ink);font-size:11px}.full-button{width:100%;margin-top:17px}.compact-settings .section-row{margin-bottom:4px}.cache-badge{padding:5px 8px;border-radius:999px;background:#eef1ec;color:#687568;font-size:9px;font-weight:700}.settings-actions{display:flex;gap:8px}.settings-actions .outline-button,.settings-actions .danger-button{flex:1;margin:0}.danger-button{height:37px;padding:0 12px;border:1px solid #f0d6d0;background:#fff8f6;color:#a3473e}.settings-footnote{color:#89928a;font-size:9px;text-align:center;margin:18px 0}.toast{position:fixed;z-index:40;left:50%;bottom:calc(79px + var(--safe-bottom));transform:translate(-50%,12px);max-width:calc(100% - 32px);padding:10px 14px;border-radius:8px;background:var(--forest);color:white;font-size:11px;line-height:1.4;box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:.2s}.toast.visible{opacity:1;transform:translate(-50%,0)}.busy-overlay{position:fixed;z-index:50;inset:0;background:rgba(10,23,18,.45);display:grid;place-items:center;padding:25px}.busy-overlay[hidden]{display:none}.busy-dialog{width:min(320px,100%);display:flex;align-items:center;flex-direction:column;gap:10px;padding:24px;background:var(--surface);border-radius:9px;text-align:center;box-shadow:var(--shadow)}.busy-dialog b{font:700 14px 'Manrope',sans-serif}.busy-dialog small{font-size:10px;color:var(--muted)}.spinner{width:26px;height:26px;border-radius:50%;border:3px solid #e4ebdf;border-top-color:var(--green);animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.busy-dialog .quiet-button{margin-top:2px}.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}
.desktop-table-wrap{display:none}.desktop-table{width:100%;border-collapse:collapse;background:var(--surface);font-size:11px}.desktop-table th{padding:10px;text-align:left;background:#edf1e9;color:#59665c;font-size:9px;white-space:nowrap}.desktop-table th[data-sort]{cursor:pointer}.desktop-table td{padding:10px;border-top:1px solid var(--line);vertical-align:middle}.desktop-table tr.value-row td:first-child{border-left:3px solid var(--green)}.table-event{font-weight:700;min-width:170px}.table-muted{font-size:9px;color:var(--muted);margin-top:3px}.table-pick{font-weight:700}.table-decision{font-size:9px;font-weight:700;color:var(--green)}.table-decision.no{color:#78776a}
body.dark{color-scheme:dark;--ink:#edf2e9;--muted:#a3aea4;--paper:#121915;--surface:#1a241e;--line:#2e3931;--forest:#0b1713;--forest-2:#bfdc8b;--lime:#badf62;--lime-dark:#91b937;--coral:#ee8069;--green:#7ccc9b;--red:#e69483;--yellow:#ecc673;--shadow:0 8px 22px rgba(0,0,0,.2)}body.dark .live-indicator{background:#20392b;color:#a8dbb8}body.dark .segmented{background:#232d26}body.dark .segmented button.selected{background:#344138;color:#edf2e9}body.dark .market-chip{color:#bec7be}body.dark .market-chip.selected{background:#304029;border-color:#566b3f;color:#e1f1c5}body.dark .chip-icon{background:#2c3830;color:#e2e9df}body.dark .market-chip.selected .chip-icon{background:#4d6234;color:#ecf8d2}body.dark .match-pick-row,body.dark .sport-check:checked{background:#202b24}body.dark .summary-stat{border-color:var(--line)}body.dark .sports-list .sport-row,body.dark .search-box,body.dark .settings-block,body.dark .empty-state,body.dark .match-card{background:var(--surface)}body.dark .bottom-nav{background:rgba(26,36,30,.96)}body.dark .sort-select select,body.dark .full-select,body.dark .key-field{background:#202b24;color:var(--ink)}body.dark .outline-button{border-color:#546358;color:#d6e5d4}body.dark .danger-button{background:#322523;border-color:#593933;color:#f0b5a9}body.dark .cache-badge{background:#2c382f;color:#c1d0c2}body.dark .desktop-table th{background:#2a352d;color:#ccd5cc}body.dark .match-pick-row{border-color:var(--line)}body.dark .match-card{border-color:var(--line)}body.dark .decision.good{background:#244431;color:#a9e3bc}body.dark .decision.no{background:#39382e;color:#dbd4b5}body.dark .prob-ring:after{background:var(--surface)}body.dark .empty-art{background:#27372b}body.dark .toast{background:#d4ed9b;color:#172118}
@media(min-width:760px){.app-shell{padding-bottom:0}.topbar{height:70px}.screen{padding-top:32px}.screen h1{font-size:34px}.quota-strip{max-width:780px}.filter-section{max-width:780px}.action-row{max-width:500px}.update-note{text-align:left;margin-left:6px}.summary-row{max-width:610px}.forecast-list{display:none}.desktop-table-wrap{display:block;overflow:auto;border:1px solid var(--line);border-radius:8px;background:var(--surface)}.desktop-table{min-width:950px}.empty-state{max-width:660px;margin:0 auto 14px}.bottom-nav{position:static;height:55px;max-width:1160px;margin:0 auto;background:transparent;border:0;display:flex;justify-content:flex-start;gap:16px;padding:0 24px}.nav-item{flex-direction:row;padding:0 13px;height:40px;border-radius:8px}.nav-item.active{background:#e6eddf}.nav-item svg{width:17px;height:17px}.nav-item span{font-size:10px}.sticky-action{position:static;max-width:500px;margin-top:14px}.sports-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:0}.sports-tools,.selected-count{max-width:800px}.page-intro{max-width:700px}.settings-block{max-width:650px;padding:20px}.settings-footnote{text-align:left;max-width:650px}.toast{bottom:25px}.busy-overlay{z-index:60}.summary-row{padding-top:17px}.desktop-table tbody tr:hover{background:#f6f9f2}body.dark .desktop-table tbody tr:hover{background:#233027}body.dark .nav-item.active{background:#28382d}}
@media(max-width:380px){.screen{padding-left:14px;padding-right:14px}.screen h1{font-size:25px}.segmented button{padding:7px 9px;font-size:9px}.market-chip{padding:0 8px;font-size:10px}.quota-copy small{font-size:9px}.time-options{width:100%;justify-content:flex-start}.match-event{font-size:12px}}
.advanced-markets{margin-top:11px;border-top:1px solid var(--line);padding-top:10px}.advanced-markets summary{display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;min-height:34px;color:var(--forest-2);font-size:11px;font-weight:700;cursor:pointer}.advanced-markets summary::-webkit-details-marker{display:none}.advanced-markets summary:after{content:"+";font-size:17px;line-height:1;color:var(--muted)}.advanced-markets[open] summary:after{content:"−"}.advanced-markets summary span{margin-left:auto;color:var(--muted);font-size:9px;font-weight:600}.advanced-market-options{margin-top:9px}.advanced-market-options .market-chip{height:auto;min-height:41px;max-width:100%;padding:7px 10px;white-space:normal}.advanced-market-options .market-chip>span:last-child{line-height:1.25}.advanced-markets .microcopy{margin-top:10px}
@media print{body,body.dark{background:#fff;color:#111}.topbar,.bottom-nav,.filter-section,.action-row,.update-note,.summary-row,.results-heading,.quota-strip,.disclaimer,.screen:not(.active){display:none!important}.app-shell{padding:0}.screen.active{display:block;padding:0;max-width:none}.screen-heading{margin-bottom:12px}.screen h1{font-size:20px}.forecast-list{display:none}.desktop-table-wrap{display:block}.desktop-table{display:table;min-width:0;font-size:9px}.desktop-table th,.desktop-table td{padding:5px;border:1px solid #ccc;color:#111}.desktop-table th{background:#eee!important}.table-decision{color:#176c3d}.empty-state{display:none}}
.number-filters{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:8px;margin-top:11px}.number-filters label{min-width:0;display:flex;align-items:center;justify-content:space-between;gap:5px;padding:7px 8px;background:var(--surface);border:1px solid var(--line);border-radius:7px}.number-filters label span{font-size:8px;color:var(--muted);white-space:nowrap}.number-filters input{min-width:34px;width:48px;border:0;outline:0;text-align:right;background:transparent;color:var(--ink);font-size:11px;font-weight:700}.number-filters label:last-child input{width:35px}
.empty-state[hidden]{display:none!important}
