/* Kairlay: a single marble slab, carved structure and painted live information. */
:root{
 --bg:#f3eee4;--panel:#f8f3e9;--raised:#e8dfd0;--border:#c9bead;
 --muted:#6b6257;--text:#302b25;--orange:#b44316;--yellow:#95501e;
 --paint:#eb5c18;--engraved:Georgia,'Times New Roman',serif;
 --carved-shadow:0 1px 0 #fffdf5,0 -1px 1px #62513b40;
 color-scheme:light;
}
body{background:var(--bg);isolation:isolate}
/* A fixed viewport layer avoids tiled seams, stretched veins on long pages and
   mobile background-attachment repainting. Content scrolls over the same slab. */
body::before{content:'';position:fixed;inset:0;z-index:-1;pointer-events:none;background:#f3eee4;background-image:linear-gradient(#f6f2e8aa,#f6f2e8aa),url('/ivory-limestone.webp');background-position:center;background-size:cover;background-repeat:no-repeat}
::selection{background:#ed672b40;color:#302b25}
button,a,input,select{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid #a13d13;outline-offset:4px}
button:disabled{opacity:.52}
.sidebar{background:#f4eee4d9;border-right-color:#bfb19c;box-shadow:inset -2px 0 2px #fff8;backdrop-filter:blur(5px)}
.brand{isolation:isolate}
.wordmark-kair,.wordmark-lay{font-family:Graffiti,cursive;font-weight:400;font-style:normal;letter-spacing:-1.5px;text-shadow:none;color:#302b25;transform:rotate(-6deg)}
.wordmark-lay{color:var(--orange);margin-left:0}
.wordmark-period{color:var(--orange)}
.brand:after{display:none}
.wordmark-swipe{color:var(--paint);bottom:3px}
.workspace{border-block:1px solid #c9bead;color:#463e35;border-radius:0;padding-block:13px}
.workspace small,.profile small{color:#6b6257}
.workspace-avatar,.lab-dot{color:var(--orange)}
.nav-label{color:#776c5c;font-family:var(--engraved);letter-spacing:1.8px}
.nav-item{color:#645b50;border-radius:2px}
.nav-item:hover{background:#d8c9b744;color:#302b25}
.nav-item.active{background:#e65b1810;color:#983b16;box-shadow:inset 3px 0 var(--paint)}
.nav-item b{background:#ded2c0;color:#713b20}
.sidebar-note-label,.sidebar-note p{color:#6b6257}
.sidebar-note p{font-family:var(--engraved);font-size:14px;line-height:1.6}
.profile{color:#584d41}
.topbar{background:#f4eee4bd;border-bottom-color:#c2b5a2;box-shadow:0 1px #fff9;backdrop-filter:blur(12px)}
.breadcrumb>span,.breadcrumb>.icon{color:#756a5e}
.breadcrumb strong{color:#40382f;font-family:var(--engraved);letter-spacing:.5px}
.research-pill{color:#6a5c4b;border-color:#bcae98;background:#faf6ec80}
.research-pill>i{background:var(--orange)}
.today-date,.icon-button,.header-help{color:#6b6257}
.topbar .icon-button{border-color:#c9bead}
.notification-dot{background:var(--paint);border-color:#f7f0e4}
.page-heading h1,.section-title h2,.ticket-heading h2,.saved-ticket h3,.modal h2,.empty-state h3,.ticket-empty h3,.lab-header h2,.lab-results-heading h3,.market-empty h3{font-family:var(--engraved);color:#342d25;text-shadow:var(--carved-shadow);font-weight:400;letter-spacing:-.5px}
.page-heading h1{font-size:29px}
.eyebrow{color:var(--orange)}
.page-description{color:#6b6257}
.button,.hero-button,.save-ticket{border-radius:2px}
.button.primary,.hero-button,.save-ticket{background:var(--paint);color:#fffaf0;border:1px solid #c34813;box-shadow:inset 0 1px #ffb27a70,0 2px 0 #90371033;text-shadow:0 1px #84300544}
.button.primary:hover,.hero-button:hover,.save-ticket:hover{background:#c74711;color:#fffaf0}
.button.subtle,.date-picker,.search-field,.filters select,.segmented,.target-presets button,.lab-limits select,.market-controls select,.football-lab .market-controls input{background:#f7f1e6a6;border-color:#bcad97;color:#5a4f42;box-shadow:inset 0 1px 3px #6b573011,0 1px #fff8}
.button.subtle:hover{background:#e8dfd0;color:#302b25}
.date-picker input,.search-field input,.filters select{color:#51483d}
.search-field input::placeholder{color:#7a6f61}
.segmented button{color:#6b6257}
.segmented button.selected{background:#ded2bf;color:#302b25;box-shadow:inset 0 1px 2px #6f5a2e22}
.hero{height:370px;border:1px solid #bdae98;border-radius:3px;background:#efe6d570;box-shadow:inset 0 0 0 3px #fff7,0 3px 8px #5c462216}
.hero:after{display:none}
.hero-art{inset:0 0 0 34%;width:auto;opacity:1;mix-blend-mode:multiply;mask-image:linear-gradient(90deg,transparent,#000 24%,#000 95%,transparent);pointer-events:none}
.hero-art>img{height:100%;width:100%;object-fit:contain;object-position:80% center;filter:sepia(.12) contrast(.94)}
.hero-copy{width:54%;max-width:54%;padding:27px 25px}
.hero-label{font:700 7px var(--font);letter-spacing:1.1px;color:#77664f}
.hero-label>span{background:var(--paint);box-shadow:none}
.hero-tag{font:400 clamp(42px,5vw,66px)/1.05 Graffiti,cursive;color:#b44316;transform:rotate(-6deg);transform-origin:left center;margin:15px 0 18px;text-shadow:1px 2px #fff6}
.hero h2{margin:0 0 16px;line-height:.98}
.hero h2>span,.hero h2>em{font-family:var(--engraved);font-weight:400;font-style:normal;font-size:clamp(30px,3.8vw,57px);letter-spacing:-1.8px;color:#302b25;transform:none;margin:0;line-height:1;text-shadow:0 2px 0 #fffdf3,0 -1px 1px #5b492980}
.hero p{font-size:11px;color:#665a4a;line-height:1.8;margin-bottom:16px}
.hero-button{padding:11px 14px;gap:18px;font-size:11px}
.hero-annotation{position:absolute;right:20px;bottom:19px;color:#a73f16;font:24px Graffiti,cursive;transform:rotate(-8deg);z-index:2}
.signal-strip{color:#716453;border-bottom-color:#baad98}
.signal-strip button{color:#8f3a18}
.stats-grid{border-bottom:3px double #baad98;padding-block:6px 20px}
.stat-label,.stat-card>span{color:#6d6254}
.stat-card>strong{font:400 36px/1.1 Graffiti,cursive;color:#a73f16!important;float:none;transform:rotate(-3deg);transform-origin:left center}
.stat-card>span{padding-top:0}
.sport-pill{background:#faf6ec80;border-color:#c2b49f;color:#6a5f51;border-radius:2px}
.sport-pill:hover{background:#e7dbc7;color:#302b25}
.sport-pill.selected{background:var(--paint);border-color:#c34813;color:#fffaf0;box-shadow:none}
.count{color:#9e421b;background:#e7672012;border:1px solid #b65b3438;border-radius:2px}
.game-card,.suggestion-card,.saved-ticket,.quote-card,.football-team,.source-post{background:#f8f3e5ad;border:1px solid #c0b19a;border-radius:3px;box-shadow:inset 1px 1px #fff9,0 2px 5px #79623a0d}
.game-card:hover{transform:translateY(-2px);border-color:#ac8d6c;box-shadow:0 5px 14px #67523012}
.game-meta{background:#e7ddcb65;border-bottom-color:#c9bead}
.game-meta>span:first-child{font-family:var(--engraved);color:#4c4033}
.game-time,.bookmark-button,.game-meta .icon{color:#746552}
.live-time,.bookmark-button.bookmarked{color:#b44316}
.bookmark-button.bookmarked svg{fill:#e95c1822}
.team-badge,.team:last-child .team-badge{position:relative;isolation:isolate;overflow:visible;width:48px;height:48px;border-radius:50%;transform:none;background:#e7decc8a;border:1px solid #b7a68a;box-shadow:inset 0 2px 3px #80623b22,0 1px #fff9;color:#514331;font:700 17px var(--engraved);text-shadow:var(--carved-shadow);display:grid;place-content:center}
button.team-badge:hover{border-color:var(--orange);background:#e9d7bd}
.team-badge.picked,.team:last-child .team-badge.picked{border-color:#bd4b19;color:#883410;background:#e85b1814}
.team-monogram{position:relative;z-index:1}
.team-logo{position:absolute;inset:7px;width:32px;height:32px;object-fit:contain;z-index:2;filter:saturate(.55) sepia(.1)}
.team-logo[hidden]{display:none}
.team-badge:has(.team-logo:not([hidden])) .team-monogram{visibility:hidden}
.team strong{color:#40372b}
.team>span,.versus,.market-label{color:#746957}
.pick-option{background:#fbf7ee75;border:1px solid #c0af95;border-radius:2px;box-shadow:inset 0 1px 2px #6c552a12}
.pick-option:hover{background:#e8dbc5;border-color:#b4855e}
.pick-name{color:#514331}
.pick-name small{color:#79674f}
.pick-option>strong{color:#624a30;font-family:var(--engraved);font-weight:400;text-shadow:var(--carved-shadow)}
.pick-option.picked{background:#e85b1815;border-color:#bb4b19;box-shadow:inset 0 0 0 1px #d8642322}
.pick-option.picked>strong{color:#a13c13}
.probability-track,.combined-track,.suggestion-meter{background:#d5c8b3}
.probability-track>i,.combined-track>i,.suggestion-meter>i{background:#bd5422}
.game-insight{background:#e9dfcd35;border-top-color:#c9bead}
.game-insight p,.game-source,.no-odds,.data-footnote{color:#6c6050}
.data-status,.data-status.is-live{background:#f8eed788;color:#776044;border-color:#cab38d;border-radius:2px}
.data-status>button,.data-status.is-live>button{color:#9b3d17}
.data-status.is-live .status-dot{box-shadow:none;background:#b64a19}
.ticket-sidebar{background:#eee5d4b3;border-left-color:#b9aa92;box-shadow:inset 2px 0 2px #fff8}
.ticket-heading h2{font-size:25px}
.ticket-subtitle,.ticket-type>span,.ticket-type>.selected,.ticket-pick p,.ticket-pick-meta,.combined-prob>p,.returns-note,.ticket-bottom,.play-responsibly{color:#72624e}
.ticket-target{border:1px solid #b7a98f;border-radius:2px;background:#f9f4e380;box-shadow:inset 0 2px 3px #6a532415}
.ticket-target>span,.ticket-target>small{color:#71624e}
.ticket-target b,.ticket-target>span:nth-child(2) b{color:#9a3e18;font-family:var(--engraved);text-shadow:var(--carved-shadow)}
.ticket-pick{position:relative;border-color:#c1b298;padding-bottom:13px}
.ticket-pick h3{font-family:var(--engraved);font-size:16px;font-weight:400;letter-spacing:.15px;color:#55422d;text-shadow:0 1px #fffaf0,0 -1px 1px #6a503b65}
.ticket-league{color:#8a542f}
.pick-sequence{background:#e0d2ba;border:1px solid #bfa98a;box-shadow:inset 0 1px 2px #7b5a2d22;border-radius:50%;color:#6c4b2b}
.remove-pick{color:#7a6b55}
.ticket-pick-meta>strong{color:#8b411f}
.combined-prob>span,.stake-label,.return-row{color:#64543f}
.combined-prob>strong,.return-row.total strong{color:#9e3b14;font-family:var(--engraved);text-shadow:var(--carved-shadow)}
.stake-input{background:#f7f0e3;border-color:#b7a68c;border-radius:2px;color:#66523c}
.stake-input input,.stake-input button,.return-row strong{color:#4a3e2d}
.ticket-warning{background:#efcc952e;border-color:#bd966a;color:#80502c}
.ticket-empty h3{font-size:28px}
.ticket-empty>p{color:#756551}
.ticket-empty>span{color:#a6784d}
.download-ticket{color:#8d431d}
.ticket-bottom{border-color:#c6b89f}
.ticket-lab{background:#faf6ed70;border:1px solid #bbad97;border-top:3px solid #b8a285;border-radius:3px;box-shadow:inset 0 0 0 3px #fff5,0 2px 8px #67523711}
.lab-header{position:relative;min-height:145px;margin-bottom:17px;gap:12px}
.lab-header>div{z-index:1;max-width:56%}
.lab-kicker{font:700 9px var(--font);letter-spacing:1.4px;color:#8c4828}
.lab-header h2{font-size:39px;line-height:1.05;margin-top:13px}
.lab-header h2 em{font:400 35px/1.15 Graffiti,cursive;color:#a53b13;transform:rotate(-4deg);display:inline-block;margin-top:3px}
.lab-header p{color:#6a5b47;font-size:11px;max-width:270px;line-height:1.7}
.lab-relief{position:absolute;left:56%;top:50%;transform:translate(-50%,-50%);width:160px;height:160px;object-fit:contain;mix-blend-mode:multiply;mask-image:radial-gradient(ellipse,#000 45%,transparent 73%);pointer-events:none}
.lab-header .date-picker{align-self:flex-start;margin-top:7px;z-index:1}
.lab-controls{border-color:#c6b89e}
.target-control>label,.lab-control-label,.lab-limits{color:#695a46}
.target-input{background:#f6f0e2a6;border-color:#b4a17f;box-shadow:inset 0 2px 4px #77613816;border-radius:2px}
.target-input input,.target-input>span{color:#483827;font-family:var(--engraved);text-shadow:var(--carved-shadow)}
.target-chance{background:#e9d9bb44;border:1px solid #bca482;border-radius:2px}
.target-chance>span,.target-chance>small{color:#766047}
.target-chance>strong{font-family:Graffiti,cursive;color:#a43f16;font-weight:400}
.target-presets button{border-radius:2px}
.target-presets button.selected{background:#e75d1815;color:#a43f16;border-color:#b75022;box-shadow:inset 0 -2px #b75022}
.target-control>p{color:#72614b}
.builder-sports button{background:#f8f3e88c;border-color:#c1b296;color:#6a5942;border-radius:2px}
.builder-sports button.selected{background:#e85b1810;border-color:#b27646;color:#98401a}
.builder-sports button:hover{color:#98401a}
.builder-sports button[data-builder-sport=all].selected,.builder-sports button[data-builder-sport=all].selected:hover{background:var(--paint);border-color:#b94a1c;color:#fffaf0}
.lab-limits{border-color:#c6b89e}
.lab-results-heading h3{font-size:23px}
.lab-results-heading p,.replace-note,.suggestion-assumption,.lab-disclaimer>p{color:#70614d}
.builder-data-tag,.builder-data-tag.is-example{background:#ecdfc422;border-color:#baa582;color:#786044}
.suggestion-card:first-child{border-color:#b36a3b;box-shadow:inset 0 2px #dd6228}
.suggestion-top>span{color:#9b4920}
.suggestion-top>b,.suggestion-numbers span{color:#746047}
.suggestion-numbers strong,.suggestion-numbers>div:last-child strong{font-family:var(--engraved);font-weight:400;color:#a44319;text-shadow:var(--carved-shadow)}
.suggestion-numbers strong>small{color:#855032}
.suggestion-card li{border-color:#c8b99e;color:#594a37}
.suggestion-card li>small,.suggestion-card li>.icon{color:#7b684e}
.lab-disclaimer{border-color:#c6b89e}
.lab-disclaimer>.icon,.lab-empty p{color:#79674f}
.lab-empty{background:#f3ebdb75;border-color:#bba98b;border-radius:2px}
.lab-empty h3{color:#5b4933;font-family:var(--engraved);font-weight:400}
.news-source,.news-content p,.read-story{color:#71624f}
.news-content h3{color:#44372a;font-family:var(--engraved);font-weight:400}
.news-category,.news-availability{color:#a13e15}
.news-card{border-bottom-color:#bdae94}
.news-photo{border-radius:2px;filter:saturate(.7)}
.saved-ticket-totals span{color:#70604c}
.saved-ticket-totals strong,.saved-ticket-totals>div:last-child strong{font-family:var(--engraved);color:#94411d;text-shadow:var(--carved-shadow)}
.market-workspace,.football-lab{color:#4b3f30}
.connection-grid strong{color:#483b2c}
.connection-grid .connection-state,.market-note,.quote-top,.quote-prob,.book-quote small,.source-post small,.market-empty p{color:#73634d}
.connection-grid,.connection-grid>div+div,.market-guide,.book-quote{border-color:#bdae94}
.market-definition{background:#e8dac36b;color:#493a28;border-left-color:#bd5423}
.market-definition p,.market-definition small,.market-guide p{color:#6d5b42}
.quote-price>strong,.football-team-title>strong{color:#a34319}
.market-message{background:#ebd9b53d;color:#75512c!important;border-color:#ba9566}
.evidence-note{border-left-color:#ad652c;background:#e8d5b62b}
.evidence-note strong,.football-report-label,.football-warning{color:#8b4a23}
.evidence-note p,.football-report-label span,.football-components small,.football-team td small{color:#72614b}
.football-import,.football-components>div,.football-team details,.football-team th,.football-team td{border-color:#c5b59a}
.football-import input::file-selector-button{color:#655038;background:#eee1cb;border-color:#bca17f;border-radius:2px}
footer,footer>button{color:#77644b;border-color:#bdad93}
.modal{background:#f3ecdd;border-color:#b5a183;border-radius:3px;box-shadow:inset 0 0 0 3px #fff6,0 20px 70px #30271e55}
.modal p,.modal li{color:#6d5c45}
.modal h3{color:#4d3b25}
.modal-backdrop,.nav-scrim,.results-scrim{background:#30292080}
#toast{background:#483827;color:#fff4dc;border-color:#756144;box-shadow:0 5px 20px #3c2d1833}
/* Paint remains on selected teams; only the newly selected team sprays. */
.team-paint{position:absolute;inset:-10px;opacity:0;pointer-events:none;z-index:3}
.picked .team-paint{opacity:1}
.team-paint:before{content:'';position:absolute;inset:2px;border:3px solid #e85b18cf;border-left-width:5px;border-bottom-width:2px;border-radius:48% 57% 46% 52%;transform:rotate(-16deg);box-shadow:0 0 2px #e85b1855,inset 0 0 2px #e85b1844}
.team-paint:after{content:'';position:absolute;inset:-7px;background:radial-gradient(circle at 6% 30%,#df5a18 0 1px,transparent 2px),radial-gradient(circle at 15% 72%,#df5a18 0 2px,transparent 3px),radial-gradient(circle at 80% 12%,#df5a18 0 1px,transparent 2px),radial-gradient(circle at 91% 77%,#df5a18 0 2px,transparent 3px),radial-gradient(circle at 65% 94%,#df5a18 0 1px,transparent 2px),radial-gradient(circle at 98% 43%,#df5a18 0 1px,transparent 2px),radial-gradient(circle at 30% 5%,#df5a1888 0 1px,transparent 2px)}
.spraying .team-paint{animation:spray-reveal .65s ease-out both}
.pick-option.spraying:after{content:'';position:absolute;left:8px;right:8px;bottom:5px;height:3px;transform:rotate(-2deg);background:#e85b18b3;animation:spray-line .65s ease-out both;pointer-events:none}
.ticket-pick.engraving h3{animation:carve-in .7s ease-out both}
.ticket-pick.engraving:after{content:'';position:absolute;inset:14px 5px 12px 26px;pointer-events:none;background:linear-gradient(110deg,transparent 30%,#b5966c30 50%,transparent 70%);animation:stone-dust .7s ease-out both}
@keyframes spray-reveal{0%{clip-path:inset(0 100% 0 0);transform:scale(.75) rotate(-12deg);filter:blur(3px)}55%{clip-path:inset(-10% 5% -10% -10%);transform:scale(1.08);filter:blur(.5px)}100%{clip-path:inset(-10%);transform:scale(1);filter:blur(0)}}
@keyframes spray-line{from{clip-path:inset(0 100% 0 0);opacity:0}to{clip-path:inset(0);opacity:1}}
@keyframes carve-in{from{clip-path:inset(0 100% 0 0);color:#bcaa8d;text-shadow:none}to{clip-path:inset(0);color:#55422d;text-shadow:0 1px #fffaf0,0 -1px 1px #6a503b65}}
@keyframes stone-dust{from{opacity:.9;transform:translateX(-25%)}to{opacity:0;transform:translateX(20%)}}
@media(min-width:1600px){.hero{height:400px}.hero-copy{padding:30px}.hero-tag{font-size:74px}.hero h2>span,.hero h2>em{font-size:62px}.lab-relief{width:175px;height:175px}.lab-header{min-height:165px}}
@media(min-width:641px) and (max-width:1250px){.hero{height:355px}.hero-copy{max-width:62%;width:62%;padding:26px 20px}.hero-tag{font-size:52px}.hero h2>span,.hero h2>em{font-size:39px}.hero-art{left:32%;mask-image:linear-gradient(90deg,transparent,#000 40%)}.hero-annotation{font-size:20px;right:12px;bottom:13px}.lab-relief{left:65%;width:132px;height:132px}.lab-header>div{max-width:64%}.lab-header h2{font-size:34px}.lab-header h2 em{font-size:31px}.lab-header p{max-width:230px}.lab-header .date-picker{margin-left:auto}.lab-header{min-height:147px}}
@media(min-width:641px) and (max-width:1050px){.lab-relief{left:77%;top:65%;width:120px;height:120px}.lab-header h2{font-size:31px}.lab-header h2 em{font-size:28px}.hero-art{opacity:.66}.hero-copy{max-width:72%;width:72%}.hero-annotation{display:none}}
@media(max-width:640px){
 body::before{background-size:auto 100lvh;background-position:48% center}
 .topbar{background:#f4eee4ed}.app-bottom-nav{background:#f4eee4f5;border-color:#b8a98f;box-shadow:0 -2px 12px #78603d12}
 .app-bottom-nav>button{color:#786750;border-radius:2px}
 .app-bottom-nav>button.selected{color:#a63c12;background:#df5d1810}
 .app-bottom-nav>button.selected:before{background:var(--paint)}
 .app-bottom-nav>button[data-view=lab] .app-nav-icon{background:#e3d6c0;color:#76634b;border-radius:3px}
 .app-bottom-nav>button[data-view=lab].selected .app-nav-icon{background:var(--paint);color:#fff9ef;box-shadow:0 2px 0 #a23e1622}
 .app-nav-icon>b{background:#d85819;color:#fff5e5;border-color:#f3e9d5}
 .page-heading h1{font-size:23px}.page-description{color:#77664e}
 .hero{height:365px}.hero-copy{width:66%;max-width:66%;padding:25px 16px}.hero-label{font-size:6px;letter-spacing:.6px;white-space:normal;line-height:1.7;max-width:165px}
 .hero-tag{font-size:49px;margin:17px 0 21px}.hero h2{margin-top:0;margin-bottom:15px}.hero h2>span,.hero h2>em{font-size:36px;letter-spacing:-1.6px}.hero p{font-size:10px;line-height:1.8;max-width:160px}.hero-art{left:30%;right:-45%;width:auto;opacity:.76;mask-image:linear-gradient(90deg,transparent,#000 40%);inset-block:0}.hero-art>img{object-position:center;object-fit:contain}.hero-annotation{font-size:18px;right:12px;bottom:17px}
 .signal-strip{font-size:8px}.signal-strip button{font-size:8px}
 .stat-card>strong{font-size:33px;float:none}.stat-card>span{padding-top:0}
 .team-badge,.team:last-child .team-badge{width:48px;height:48px;font-size:17px}
 .mobile-ticket-switcher{background:#e9decb;border-color:#bca88a;border-radius:3px}
 .mobile-ticket-switcher>button{color:#746044;border-radius:2px}.mobile-ticket-switcher>button.selected{color:#4d3a24;background:#f7f0df}.mobile-ticket-switcher span{color:#a03d13;background:#e2d1b4}
 html[data-view=lab] .ticket-lab{background:#faf6ed70;border-color:#bbad97;border-top-color:#b8a285;border-radius:3px}
 .lab-header{min-height:40px;margin-bottom:13px;gap:7px}.lab-header>div{max-width:none;flex-shrink:0}.lab-kicker{font-family:var(--engraved);font-size:14px;font-weight:400;letter-spacing:.2px;color:#57442e}.lab-header h2,.lab-header p{display:none}
 .lab-relief{position:static;transform:none;mask-image:radial-gradient(ellipse,#000 42%,transparent 74%);width:43px;height:43px;margin:auto;flex-shrink:0}
 .lab-header .date-picker{margin-top:0;align-self:center;background:#f7efdf80;padding:6px;flex-shrink:0}.lab-header .date-picker input{width:87px;font-size:9px}
 .lab-control-label,.target-control>label,.lab-limits{color:#6b5940}
 .target-input{background:#f7f0e2;border-radius:2px}.target-input input{font-size:46px}
 .target-chance{border-color:#b69c76;background:#ebd9b52e;border-radius:2px;padding-top:8px}.target-chance>span,.target-chance>small{color:#756043}.target-chance>strong{font-size:32px;margin-top:3px}
 .target-presets button{border-radius:2px}.builder-sports button{background:#f8f3e88c;border-color:#c1b296;border-radius:2px}
 .builder-sports button.selected{background:#e85b1810;border-color:#b27646;color:#98401a}
 .builder-sports button[data-builder-sport=all].selected{color:#fffaf0;background:var(--paint);border-color:#b94a1c}
 .lab-limits select{color:#695338;background:#f6ecda;border-color:#b59b77}
 .mobile-lab-preview{color:#756043}.mobile-lab-preview b{color:#963d17}.mobile-lab-preview small{color:#7a6244;border-color:#b6a17d}
 .mobile-lab-action>.button{border-radius:2px}.mobile-estimate-note{color:#79684e}.lab-disclaimer{border-color:#c6b89e}
 html[data-results=true] .ticket-lab>#builder-results{background:#f2eadb;border-color:#b5a183;border-radius:10px 10px 0 0;box-shadow:0 -10px 50px #46351f44}
 .mobile-results-toolbar{background:#f2eadb;border-color:#bca98a}.mobile-results-toolbar h2{font-family:var(--engraved);font-weight:400;color:#4c3922}.mobile-results-toolbar>button{color:#755d3c;background:#e6d8bf;border-color:#bda17b;border-radius:3px}
 .ticket-sidebar .ticket-heading h2{font-size:27px}html[data-view=slip] .ticket-sidebar{border-radius:3px;border-color:#b9a68a;background:#f4ecddbd}
 .suggestion-numbers strong{font-size:39px}.news-lead .news-content h3{font-size:25px}
}
@media(max-width:360px){.lab-kicker{font-size:12px}.lab-kicker>.icon{width:13px;height:13px}.lab-relief{width:36px;height:36px}.lab-header{min-height:36px}.lab-header .date-picker input{width:82px}.hero-tag{font-size:44px}.hero h2>span,.hero h2>em{font-size:32px}.hero{height:350px}.hero-annotation{font-size:16px}}
@media(max-width:640px) and (max-height:740px){.lab-header{min-height:32px;margin-bottom:8px}.lab-relief{width:32px;height:32px}.lab-header .date-picker{padding-block:5px}.target-input input{font-size:43px}.target-chance>strong{font-size:30px}}
@media(prefers-reduced-motion:reduce){.spraying .team-paint,.pick-option.spraying:after,.ticket-pick.engraving h3,.ticket-pick.engraving:after{animation:none}.ticket-pick.engraving:after{display:none}.game-card:hover{transform:none}}
/* The transparent carving shares the marble plane without a framed slab. */
.hero-art{mask-image:none;inset:12px 7px 12px 40%;mix-blend-mode:multiply}
.hero-art>img{object-position:center;filter:sepia(.1) drop-shadow(2px 4px 2px #6c543b35)}
.lab-relief{mask-image:none;filter:sepia(.1) drop-shadow(1px 2px 1px #6c543b25)}
@media(min-width:641px) and (max-width:1050px){.hero-art{inset-inline:38% -10%;mask-image:linear-gradient(90deg,transparent,#000 25%)}}
@media(max-width:640px){.hero-art{inset:12px -35% 16px 37%;mask-image:linear-gradient(90deg,transparent,#000 33%);opacity:.82}.hero-art>img{object-fit:contain;object-position:center}.lab-relief{mask-image:none}}
/* Keep the footer padding out of the compact builder's app viewport. */
@media(max-width:640px){html[data-view=lab] .main-content{padding-bottom:0}html[data-view=lab] .page-layout{min-height:0}}
@media(max-width:640px){html[data-view=lab] .ticket-lab{margin-bottom:0}.market-empty{border-block-color:#bdae94}}

/* Matchday refinement: clearer sculpture, etched stone and deliberate paint. */
:root{--text:#292820;--muted:#676155;--carved-shadow:0 1px 0 #fffef7,0 -1px 1px #796b514d}
.sidebar{background:#f6f2e8ed;backdrop-filter:none}
.topbar{background:#f5f1e8ed}
.explore-heading{position:relative;isolation:isolate;min-height:170px;padding:18px 19px 18px 23px;margin-bottom:21px;border-block:1px solid #c6bba5;box-shadow:0 1px #fff9,inset 0 1px #fff9;background:linear-gradient(100deg,#faf7efb3,transparent 75%)}
.explore-heading>div{position:relative;z-index:1;max-width:60%}
.explore-heading .eyebrow{font-size:8px;letter-spacing:1.6px;margin-bottom:10px}
.explore-heading h1{font-size:clamp(28px,2.8vw,43px);line-height:1.08;letter-spacing:-1.2px}
.explore-heading .page-description{font-size:12px;margin-top:9px;line-height:1.6}
.explore-graffiti{display:inline-block;font:27px/1.2 Graffiti,cursive;color:#bd4514;transform:rotate(-5deg);margin:13px 0 0 4px}
.explore-graffiti:after{content:'';display:block;height:2px;width:90%;background:#e75c1b;transform:rotate(-3deg);margin-top:4px;clip-path:polygon(0 35%,100% 0,85% 100%,6% 65%)}
.explore-relief{position:absolute;right:65px;top:50%;transform:translateY(-50%);width:184px;height:184px;object-fit:contain;filter:drop-shadow(2px 4px 2px #5e4b3138);mix-blend-mode:multiply;pointer-events:none;z-index:0}
.explore-heading .refresh-button{align-self:flex-start;z-index:1;width:32px;height:32px;padding:7px;margin:0;background:#fbf8efad}
.explore-heading .refresh-button span{display:none}
html[data-view=games] .sports-nav{gap:5px;margin-bottom:21px;padding-bottom:13px;border-bottom:1px solid #c6bba5}
html[data-view=games] .sport-pill{background:#f9f6ed80;border-color:transparent;font-size:11px;min-height:39px}
html[data-view=games] .sport-pill.selected{color:#fffaf0;background:#d74c10;border-color:#bd4210;box-shadow:0 2px 0 #95401722}
html[data-view=games] .games-section{margin-top:0}
html[data-view=games] .games-section>.section-title{align-items:center;margin-bottom:13px}
html[data-view=games] .games-section>.section-title h2{font-size:29px}
html[data-view=games] .games-section>.section-title p{display:none}
html[data-view=games] .data-status{padding:9px 0;background:none;border:0;border-bottom:1px solid #c6bba5;border-radius:0;font-size:10px;gap:7px;margin-bottom:13px}
html[data-view=games] .data-status button{font-size:10px}
html[data-view=games] .filter-toolbar{gap:12px;margin-bottom:19px}
html[data-view=games] .segmented{background:transparent;border:0;border-bottom:1px solid #b9ad96;box-shadow:none;border-radius:0;padding:0;gap:12px}
html[data-view=games] .segmented button{border-radius:0;padding:10px 0;font-size:11px;position:relative;min-height:39px}
html[data-view=games] .segmented button.selected{background:transparent;color:#983a13;box-shadow:inset 0 -2px #d8541a}
html[data-view=games] .search-field,html[data-view=games] .filters select{min-height:39px;background:#fcf9f2ab;font-size:11px;border-color:#bcb29e}
html[data-view=games] .search-field input{font-size:11px}
.game-card{position:relative;background:linear-gradient(125deg,#fffdf5d9,#f3eddfd9);border:1px solid #b8ad98;border-radius:3px;box-shadow:inset 0 0 0 3px #fff8,0 3px 5px #66533710,0 10px 20px #66533705}
.game-card:hover{border-color:#a59173;box-shadow:inset 0 0 0 3px #fffb,0 5px 14px #5a483518}
.game-card.is-marked{border-color:#b3744d}
.game-meta{padding:13px 15px;background:#e6dfd02e;border-bottom:1px solid #d0c7b5;gap:7px}
.game-meta>span:first-child{font-family:var(--engraved);font-size:12px;letter-spacing:1px;color:#4b4131}
.game-time{font-size:10px;color:#6b604e}
.bookmark-button{padding:5px;margin:-5px -5px -5px 0}
.match-mark{display:none;font:18px/1 Graffiti,cursive;color:#b53e10;transform:rotate(-8deg);margin-left:5px}
.is-marked .match-mark{display:inline-block}
.matchup{padding:27px 15px 23px;gap:12px}
.team-badge,.team:last-child .team-badge{width:64px;height:64px;font-size:22px;color:#61513b;background:radial-gradient(ellipse at 28% 18%,#fffdf7,#ede4d1 75%);border:1px solid #b9a78a;box-shadow:inset 0 0 0 3px #f7f2e7,inset 0 0 0 4px #c9bba355,inset 1px 3px 5px #77613c33,0 2px 0 #fffc,0 3px 8px #79613c14;text-shadow:0 1px #fffdf3,0 -1px 1px #79603866}
.team-badge.picked,.team:last-child .team-badge.picked{color:#7c3317;background:radial-gradient(ellipse at 28% 18%,#fff8e8,#efddc7 75%);border-color:#be672e}
.team-logo{inset:12px;width:40px;height:40px;filter:saturate(.72) sepia(.08)}
.team strong{font:700 12px/1.45 var(--font);margin-top:17px;color:#3e382d;max-width:100%}
.team>span{font-size:10px;color:#6d6353;margin-top:5px}
.versus{font:italic 15px var(--engraved);color:#938671}
.team-selection-check{display:none;position:absolute;right:-7px;bottom:-4px;z-index:4;place-content:center;width:20px;height:20px;background:#d64b12;border:2px solid #fbf5e7;transform:rotate(-8deg);border-radius:50%;color:#fff8e9;text-shadow:none}
.team-selection-check .icon{width:12px;height:12px;stroke-width:2.5}
.picked .team-selection-check{display:grid}
.team-paint{inset:-9px}
.team-paint:before{border-width:4px 3px 2px 5px;border-color:#e45616de;inset:0;border-radius:47% 54% 44% 53%;transform:rotate(-19deg);filter:drop-shadow(0 0 1px #e4561666)}
.team-paint:after{inset:-8px;background:radial-gradient(circle at 5% 27%,#d64b12 0 1px,transparent 2px),radial-gradient(circle at 12% 76%,#e05a18cc 0 2px,transparent 3px),radial-gradient(circle at 86% 10%,#d64b12 0 1px,transparent 2px),radial-gradient(circle at 94% 72%,#e75d1ed9 0 2px,transparent 3px),radial-gradient(circle at 66% 96%,#df5718 0 1px,transparent 2px),radial-gradient(circle at 98% 35%,#df5a18 0 1px,transparent 2px),radial-gradient(circle at 33% 2%,#d74c1280 0 1px,transparent 3px),radial-gradient(ellipse at 30% 80%,#ec69261a,transparent 60%)}
.market-label{padding-inline:15px;font-size:10px;letter-spacing:.2px;margin-bottom:10px;color:#746650}
.pick-options{gap:8px;padding:0 15px 17px}
.pick-option{padding:12px;background:#fcf9f1b3;border-color:#c6baa4;box-shadow:inset 0 2px 3px #79613b0d,0 1px #fff8}
.pick-name{font-size:11px;line-height:1.5;color:#5b4c38}
.pick-name small{font-size:10px;color:#6e5d45}
.pick-option>strong{font-size:32px;color:#5c4730;margin-top:10px;line-height:1}
.pick-option>strong .icon{width:16px;height:16px;color:#92826a}
.pick-option.picked{background:linear-gradient(165deg,#ea6b2620,#df591412);border-color:#bf531f;box-shadow:inset 0 0 0 1px #d9682722,0 1px #fff9}
.pick-option.picked>strong{color:#a13a10}
.pick-option.picked>strong .icon{color:#b33e10;stroke-width:2.5}
.probability-track{height:2px;background:#d7cdb9;margin-top:12px}
.probability-track>i{background:#bc5b2c}
.game-insight{padding:11px 15px;background:transparent;border-top:1px solid #d6ccba}
.game-insight p{font-size:10px;line-height:1.65;color:#71634f}
.game-source{font-size:10px;padding-inline:15px}
.ticket-sidebar{background:linear-gradient(100deg,#f5f0e4b3,#ece3d066);border-left-color:#b8a78b;box-shadow:inset 2px 0 #fffb}
.ticket-heading{padding-bottom:15px;border-bottom:3px double #b8a88d;margin-bottom:11px}
.ticket-heading>div{gap:8px}
.ticket-heading h2{font-size:23px;white-space:nowrap;letter-spacing:-.5px;text-shadow:0 1px #fffef5,0 -1px 1px #604b3273}
.ticket-relief{width:40px;height:40px;object-fit:contain;mix-blend-mode:multiply;filter:drop-shadow(1px 2px 1px #6e583c33);flex-shrink:0}
.ticket-subtitle{font-size:11px;line-height:1.6}
.ticket-target{background:#f6f0e18c;border-color:#b4a17f;box-shadow:inset 0 2px 5px #7b62311a,0 1px #fff9;padding:14px}
.ticket-target b{font-size:26px;letter-spacing:-.5px}
.ticket-pick{padding-block:20px;border-bottom:1px solid #c6b79b;box-shadow:0 1px #fff8}
.ticket-pick:after{display:none}
.ticket-pick h3{font-size:19px;line-height:1.3;color:#59432b;text-shadow:0 1px 0 #fffdf1,0 -1px 1px #69503380;letter-spacing:.1px;margin-block:6px}
.ticket-pick p{font-size:11px;line-height:1.5;color:#756248}
.ticket-league{font:700 9px var(--font);letter-spacing:.9px;color:#96613a}
.ticket-pick-meta{margin-top:10px;font-size:11px}
.ticket-pick-meta>strong{font-family:var(--engraved);font-size:16px;color:#8d4b25;text-shadow:var(--carved-shadow)}
.pick-sequence{width:22px;height:22px;font:12px var(--engraved);background:#e1d2b780;box-shadow:inset 0 2px 3px #795b3438,0 1px #fff9}
.ticket-pick.engraving:after{display:block}
.ticket-calculation{border-top:0}
.return-row{border-color:#cbbda4}
#toast{background:#fcf7ebf5;color:#5a3f28;border:1px solid #baa282;border-left:3px solid #d85216;border-radius:3px;box-shadow:0 5px 24px #4c382c26;font-size:12px;line-height:1.5}
@media(min-width:641px) and (max-width:1250px){.explore-heading{min-height:150px;padding-left:17px}.explore-relief{width:150px;height:150px;right:30px}.explore-heading>div{max-width:67%}.explore-heading h1{font-size:32px}.explore-heading .page-description{font-size:11px}.explore-graffiti{font-size:24px}.game-meta{padding-inline:12px}.game-meta>span:first-child{font-size:11px}.match-mark{font-size:15px}.game-time{font-size:9px}.ticket-heading h2{font-size:21px}.ticket-relief{width:32px;height:32px}.ticket-heading>div{gap:6px}.ticket-sidebar{padding-inline:17px}}
@media(min-width:641px) and (max-width:1050px){.explore-relief{opacity:.78;right:22px;width:125px;height:125px}.explore-heading h1{font-size:29px}.explore-heading .page-description{max-width:190px}.game-time{font-size:8px}.match-mark{font-size:14px;margin-left:0}.team-badge,.team:last-child .team-badge{width:56px;height:56px;font-size:19px}.team-logo{inset:10px;width:36px;height:36px}.team strong{font-size:11px}.pick-option{padding:9px}.pick-option>strong{font-size:29px}.ticket-heading h2{font-size:20px}.ticket-relief{width:26px;height:26px}.ticket-heading>div{gap:4px}}
@media(max-width:640px){
 html[data-view=games] .main-content{padding-inline:16px}.topbar{padding-inline:17px}
 html[data-view=games] .page-description{display:block}
 .explore-heading{min-height:154px;padding:13px 8px 14px 0;margin-bottom:18px;border-top:0;background:none}
 .explore-heading>div{max-width:65%}.explore-heading .eyebrow{display:flex;font-size:7px;letter-spacing:1.1px;margin-bottom:11px}
 .explore-heading h1{font-size:32px;letter-spacing:-1px;max-width:260px}.explore-heading .page-description{font-size:11px;margin-top:9px;max-width:240px}
 .explore-graffiti{font-size:26px;margin-top:12px}.explore-relief{width:163px;height:163px;right:30px;top:53%}.explore-heading .refresh-button{width:30px;height:30px;padding:6px;margin-top:0}
 html[data-view=games] .sports-nav{margin-right:-16px;padding-right:16px;margin-bottom:19px;padding-bottom:10px;gap:3px}
 html[data-view=games] .sport-pill{min-height:40px;padding:9px 11px;font-size:11px}
 html[data-view=games] .games-section>.section-title h2{font-size:27px}
 html[data-view=games] .data-status{font-size:10px;line-height:1.5;align-items:center;padding-block:8px;margin-bottom:7px}.data-status .status-dot{margin-top:0}
 html[data-view=games] .data-status button{font-size:10px}
 html[data-view=games] .filter-toolbar{gap:11px;margin-bottom:16px}
 html[data-view=games] .segmented{gap:22px;width:100%;justify-content:flex-start}html[data-view=games] .segmented>button{flex:0 1 auto}
 html[data-view=games] .segmented button{font-size:11px;min-height:36px;padding:8px 0}
 html[data-view=games] .filters{gap:8px}.filters .search-field{min-width:0}
 html[data-view=games] .search-field,html[data-view=games] .filters select{min-height:40px;font-size:11px}.filters select{max-width:138px}
 .games-grid{gap:20px}.game-meta{padding:13px 16px}.game-meta>span:first-child{font-size:12px}.game-time{font-size:10px}.match-mark{font-size:19px}
 .matchup{padding:28px 16px 24px}.team-badge,.team:last-child .team-badge{width:68px;height:68px;font-size:23px}.team-logo{inset:13px;width:42px;height:42px}
 .team strong{font-size:13px;line-height:1.45;margin-top:18px}.team>span{font-size:11px;margin-top:5px}.versus{font-size:16px}
 .market-label{padding-inline:16px;font-size:11px;margin-bottom:10px}.pick-options{padding:0 16px 18px;gap:10px}.pick-option{padding:12px}.pick-name{font-size:12px}.pick-name small{font-size:10px}.pick-option>strong{font-size:35px;margin-top:11px}
 .three-way .pick-name{font-size:11px;display:block;line-height:1.5}.three-way .pick-name small{font-size:9px;margin-left:4px}.three-way .pick-option{padding:11px 9px}.three-way .pick-option>strong{font-size:31px}
 .game-insight{padding:12px 16px}.game-insight p{font-size:11px;line-height:1.7}.game-source{font-size:10px;padding:11px 16px}
 html[data-view=slip] .ticket-sidebar{margin:16px 15px 24px;padding:19px 21px 22px;background:linear-gradient(115deg,#fffaf0c9,#eee4d2b3);box-shadow:inset 0 0 0 3px #fff8,0 5px 16px #5f493510}
 .ticket-sidebar .ticket-heading h2{font-size:29px}.ticket-relief{width:47px;height:47px}.ticket-heading>div{gap:9px}.ticket-heading{padding-bottom:14px}.ticket-subtitle{font-size:12px}
 .ticket-pick{padding-block:21px}.ticket-pick h3{font-size:21px}.ticket-pick p{font-size:12px}.ticket-league{font-size:10px}.ticket-pick-meta{font-size:12px}.ticket-pick-meta>strong{font-size:17px}
 .app-bottom-nav{background:#f8f3e8fa;box-shadow:0 -2px 15px #70582e14;border-top-color:#b5a484}.app-bottom-nav>button.selected{background:transparent}.app-bottom-nav>button.selected:before{width:28px;left:calc(50% - 14px);height:3px;transform:rotate(-4deg);border-radius:40%}
 .app-bottom-nav>button{font-size:11px}.app-bottom-nav .app-nav-icon{height:25px}.app-bottom-nav>button[data-view=lab] .app-nav-icon{border-radius:3px;background:#e4d5b8}
}
@media(max-width:400px){.explore-heading{min-height:153px}.explore-heading>div{max-width:64%}.explore-heading h1{font-size:28px;max-width:190px}.explore-heading .page-description{max-width:175px;font-size:10px}.explore-relief{width:140px;height:140px;right:10px;top:56%}.explore-graffiti{font-size:23px}.explore-heading .eyebrow{font-size:6px;letter-spacing:.8px}.game-meta{padding-inline:14px}.game-time{font-size:9px}.match-mark{font-size:17px}.team strong{font-size:12px}.pick-options{padding-inline:13px;gap:8px}.three-way .pick-option>strong{font-size:27px}.three-way .pick-option{padding-inline:8px}.ticket-sidebar .ticket-heading h2{font-size:25px}.ticket-relief{width:39px;height:39px}.ticket-heading>div{gap:7px}}
@media(prefers-reduced-motion:reduce){.game-card:hover{transform:none}}

/* Leave the refresh control clear of the carving at narrow widths. */
@media(max-width:640px){.explore-relief{right:48px;width:153px;height:153px}.explore-heading>div{max-width:60%}}
@media(max-width:400px){.explore-relief{right:39px;width:122px;height:122px;top:56%}.explore-heading>div{max-width:55%}.explore-heading h1{font-size:34px;white-space:nowrap}.explore-heading .page-description{max-width:170px}}
/* Let the card container decide its columns, including narrow desktop panels. */
.games-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))}
.team strong{white-space:normal;overflow:visible;text-overflow:clip;min-height:2.8em;display:flex;align-items:center;justify-content:center}
.no-odds{border-style:solid;border-color:#d0c5b0;background:#e9e2d43b;box-shadow:inset 0 1px 4px #7d68420c}
@media(min-width:641px) and (max-width:1250px){.explore-relief{right:62px}}
