:root{color-scheme:dark;--bg:#071c21;--surface:#102a30;--line:#274149;--gold:#edc77a;--cream:#f5eedf;--muted:#9bb1b3;--mint:#8edcc1;--safe-top:max(env(safe-area-inset-top),var(--tg-content-safe-area-inset-top,0px));--safe-bottom:max(env(safe-area-inset-bottom),var(--tg-content-safe-area-inset-bottom,0px))}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--cream);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:14px;-webkit-tap-highlight-color:transparent}button,input,select{font:inherit}button,a{touch-action:manipulation}button{cursor:pointer;color:inherit}button:disabled{opacity:.42;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold);outline-offset:3px}button{border:0}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin:0}h1,h2,.display{font-family:Georgia,'Times New Roman',serif}h2{font-size:28px;font-weight:400}h3{font-size:16px}.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse at 80% 0,#284a462f,transparent 70%)}#app{position:relative;max-width:540px;margin:auto;min-height:100dvh;padding-bottom:calc(90px + var(--safe-bottom))}.topbar{display:flex;align-items:center;gap:12px;padding:calc(17px + var(--safe-top)) 20px 17px;background:#071c21e8;border-bottom:1px solid #27414980}.brand{display:flex;gap:8px;align-items:center;flex:1;min-width:0}.brand img{width:32px;height:36px}.brand>span{letter-spacing:3px;font-size:17px;font-weight:700}.brand small{display:block;letter-spacing:1.7px;font-size:7px;color:var(--muted);margin-top:3px}.wallet{text-align:right}.wallet small{display:block;color:var(--muted);font-size:13px;font-weight:600;letter-spacing:1.2px}.wallet strong{display:block;margin-top:4px;font-size:23px;color:var(--gold);font-variant-numeric:tabular-nums}.icon-button{min-width:38px;min-height:38px;border-radius:50%;background:#ffffff09;border:1px solid var(--line);font-size:21px}.eyebrow{font-size:9px;font-weight:600;letter-spacing:2px;color:var(--gold)}.hero{height:338px;background:linear-gradient(90deg,#061b2190,transparent 75%),linear-gradient(0deg,var(--bg),transparent 55%),url('./assets/ippodromo.webp') center center/cover;position:relative;padding:29px 24px;overflow:hidden}.hero:after{content:'';position:absolute;width:120px;height:120px;background:#edc77a15;filter:blur(25px);border-radius:100%;right:20px;bottom:20px;animation:glow 6s infinite alternate}main{animation:enter .25s ease}.section{padding:0 20px 24px}.section-title{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:22px 0 14px}.section-title .eyebrow{color:var(--muted);font-size:8px;letter-spacing:1px}.panel{border:1px solid var(--line);border-radius:16px;padding:20px;background:linear-gradient(145deg,#17363d,#0b252b);box-shadow:0 8px 30px #0002}.race-panel{position:relative;margin:-28px 20px 0;padding:21px;border-color:#edc77a70;z-index:1;background:linear-gradient(135deg,#18363b,#0e282e)}.race-top{display:flex;align-items:center;justify-content:space-between;gap:10px}.pill{padding:6px 9px;border-radius:30px;font-size:9px;font-weight:600;letter-spacing:.7px;background:#8edcc112;color:var(--mint);white-space:nowrap}.pill.live{background:#ec9c7c19;color:#f7b59b}.pill i{display:inline-block;width:5px;height:5px;background:currentColor;border-radius:50%;margin-right:5px;animation:glow 1.5s infinite alternate}.race-panel h2{margin-top:13px;font-size:30px}.race-meta{display:flex;gap:13px;color:var(--muted);font-size:11px;margin-top:10px;flex-wrap:wrap}.race-meta span+span{border-left:1px solid var(--line);padding-left:13px}.countdown-row{display:flex;align-items:center;justify-content:space-between;margin:22px 0 15px}.countdown-row small{font-size:10px;color:var(--muted)}.timer{color:var(--gold);font-size:22px;letter-spacing:2px;font-variant-numeric:tabular-nums}.primary{display:block;width:100%;min-height:50px;border-radius:10px;background:linear-gradient(120deg,#f4d595,#d5aa57);color:#17272a;font-weight:750;box-shadow:inset 0 1px #fff5,0 4px 16px #d5aa5715;transition:transform .16s}.primary:active{transform:scale(.97)}.secondary{min-height:44px;border:1px solid var(--line);border-radius:10px;background:#ffffff05;padding:10px 16px}.text-button{color:var(--gold);font-size:11px;padding:10px 0;background:transparent}.hint{font-size:11px;line-height:1.6;color:var(--muted)}.race-panel .hint{margin-top:12px;text-align:center}.stats-strip{display:grid;grid-template-columns:repeat(3,1fr);padding:19px 0;border-bottom:1px solid var(--line);gap:10px}.stats-strip>div{text-align:center}.stats-strip>div+div{border-left:1px solid var(--line)}.stats-strip strong{display:block;font-size:21px;color:var(--gold);font-variant-numeric:tabular-nums}.stats-strip small{font-size:9px;color:var(--muted);display:block;margin-top:5px}.horse-row{display:flex;align-items:center;gap:12px;padding:14px 0;width:100%;background:transparent;text-align:left;border-bottom:1px solid #27414999;min-height:68px}.silk{--color:#edc77a;display:flex;align-items:center;justify-content:center;width:39px;height:44px;flex-shrink:0;background:linear-gradient(145deg,var(--color),#0003);clip-path:polygon(12% 0,88% 0,100% 15%,94% 81%,50% 100%,6% 81%,0 15%);color:#071c21;font-size:18px;font-weight:800;box-shadow:0 4px 8px #0004}.horse-details{flex:1;min-width:0}.horse-details strong{display:block;font-size:14px;font-weight:600;overflow-wrap:anywhere}.horse-details small{display:block;font-size:10px;color:var(--muted);margin-top:5px}.odds{text-align:right;color:var(--gold);font-size:20px;font-variant-numeric:tabular-nums}.odds small{display:block;font-size:8px;letter-spacing:.8px;color:var(--muted);margin-bottom:4px}.round-tag{height:30px;width:30px;border-radius:50%;background:#ffffff0a;display:flex;align-items:center;justify-content:center;color:var(--gold);font-size:13px}.result-card{padding:17px;border:1px solid var(--line);border-radius:13px;background:#112b31;margin-bottom:12px}.result-card .race-top{margin-bottom:15px}.podium{display:flex;align-items:stretch;gap:8px}.podium>div{flex:1;min-width:0;padding:13px 6px 11px;border:1px solid var(--line);border-radius:10px;text-align:center;background:#ffffff03}.podium>div:first-child{border-color:#edc77a65;background:#edc77a0a}.podium b{font-size:21px;color:var(--gold);font-family:Georgia,serif}.podium span{display:block;font-size:11px;line-height:1.5;margin-top:9px;overflow-wrap:anywhere}.bottom-nav{position:fixed;bottom:0;left:50%;transform:translateX(-50%);width:100%;max-width:540px;z-index:5;display:grid;grid-template-columns:repeat(2,1fr);padding:10px 8px calc(10px + var(--safe-bottom));background:#081e24f5;backdrop-filter:blur(18px);border-top:1px solid var(--line)}.bottom-nav button{background:transparent;font-size:9px;letter-spacing:.5px;color:var(--muted);padding:5px;min-height:49px;position:relative}.bottom-nav span{display:block;font-size:24px;line-height:27px;margin-bottom:5px}.bottom-nav .active{color:var(--gold)}.bottom-nav .active:before{content:'';position:absolute;top:-11px;width:24px;height:2px;background:var(--gold);left:calc(50% - 12px)}.page-heading{padding:26px 20px 15px}.page-heading h1{font-size:35px;font-weight:400;margin:8px 0}.page-heading p{color:var(--muted);font-size:12px;line-height:1.6}.search{width:100%;background:#ffffff05;color:var(--cream);border:1px solid var(--line);border-radius:10px;padding:14px 16px;margin:10px 0 6px}.stable-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.horse-card{background:linear-gradient(160deg,#1b3c42,#0e282e);border:1px solid var(--line);border-radius:14px;padding:16px 13px;text-align:left;min-height:185px;position:relative;overflow:hidden}.horse-card .horse-symbol{font-size:65px;color:#edc77a99;display:block;margin:5px 0 10px;font-family:Georgia,serif;text-shadow:0 8px 18px #0008}.horse-card strong{display:block;font-size:14px;overflow-wrap:anywhere}.horse-card small{color:var(--muted);display:block;font-size:10px;margin-top:8px}.horse-card .ribbon{position:absolute;right:8px;top:10px;font-size:9px;color:var(--mint)}.tabs{display:flex;gap:8px;margin:14px 0;overflow-x:auto;scrollbar-width:none}.tabs button{background:#ffffff06;border:1px solid var(--line);border-radius:24px;padding:10px 14px;white-space:nowrap;font-size:11px;min-height:40px}.tabs button.active{color:var(--gold);border-color:#edc77a70;background:#edc77a12}.ticket{border:1px solid var(--line);border-radius:13px;padding:17px;margin:12px 0;background:#102a30}.ticket.won{border-color:#8edcc177;background:linear-gradient(120deg,#16382e,#102a30)}.ticket .selection{font-family:Georgia,serif;font-size:20px;line-height:1.5;margin:12px 0;overflow-wrap:anywhere}.ticket-footer{border-top:1px dashed var(--line);display:flex;justify-content:space-between;gap:12px;padding-top:12px;color:var(--muted);font-size:11px}.ticket-footer strong{color:var(--gold);font-size:16px}.empty{padding:38px 24px;text-align:center;color:var(--muted);line-height:1.7}.empty .emblem{font-family:Georgia,serif;font-size:54px;color:var(--gold);display:block;margin-bottom:12px}.empty h2{color:var(--cream);margin-bottom:12px;font-size:24px}.rank-row{display:flex;align-items:center;gap:13px;padding:18px 0;border-bottom:1px solid var(--line)}.rank-row .rank-number{font-family:Georgia,serif;color:var(--gold);font-size:25px;width:30px}.rank-row strong{flex:1;overflow-wrap:anywhere;font-size:14px}.rank-row .rank-value{text-align:right;color:var(--mint);font-size:17px}.rank-row small{font-size:9px;color:var(--muted);display:block;margin-top:5px}.rank-row.me{background:#edc77a09;margin:0 -12px;padding:18px 12px;border-radius:10px}dialog{position:fixed;inset:auto 0 0;margin:0 auto;width:100%;max-width:540px;max-height:calc(95dvh - var(--safe-top));background:linear-gradient(160deg,#16343b,#081e24);border:1px solid #456069;border-radius:22px 22px 0 0;color:var(--cream);padding:20px 22px calc(25px + var(--safe-bottom));overflow-y:auto;box-shadow:0 -10px 80px #0006}dialog[open]{animation:sheet-in .25s ease}dialog::backdrop{background:#0009;backdrop-filter:blur(4px)}.sheet-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.sheet-head .icon-button{font-size:26px}.sheet-title{font-weight:400;font-size:30px;margin-bottom:8px}.bet-step{margin-top:22px}.bet-step h3{font-size:11px;color:var(--muted);letter-spacing:1px;margin-bottom:12px}.bet-step .horse-row.selected{background:#edc77a0b;border:1px solid #edc77a80;border-radius:10px;padding:10px;margin-top:6px}.bet-step .horse-row.selected .round-tag{background:var(--gold);color:var(--bg)}.amount-row{display:flex;gap:8px}.amount-row button{flex:1;padding:12px 4px;border:1px solid var(--line);border-radius:9px;background:#ffffff05;min-height:44px}.amount-row button.selected{color:var(--gold);border-color:var(--gold)}.amount-input{display:flex;align-items:center;border:1px solid var(--line);background:#071c2160;border-radius:10px;margin-top:10px;padding-right:15px}.amount-input input{background:transparent;color:var(--cream);border:0;min-width:0;width:100%;font-size:25px;padding:13px 15px}.amount-input span{font-size:10px;color:var(--muted)}.quote-box{display:flex;justify-content:space-between;padding:16px 0;margin-top:12px;border-top:1px dashed var(--line);gap:12px}.quote-box small{display:block;font-size:10px;color:var(--muted);margin-bottom:7px}.quote-box strong{font-size:24px;color:var(--gold)}.quote-box>div:last-child{text-align:right}.confirm-box{background:#071c2190;border-radius:13px;border:1px solid var(--line);padding:20px;margin:20px 0}.confirm-box .selection{font-family:Georgia,serif;font-size:27px;line-height:1.5}.success{text-align:center;padding:20px 0}.success .seal{width:82px;height:82px;margin:0 auto 24px;border:1px solid var(--gold);border-radius:50%;background:#edc77a15;font-size:38px;line-height:82px;color:var(--gold);animation:stamp .4s}.success p{color:var(--muted);line-height:1.7;margin:13px 0 22px}.profile-head{display:flex;gap:20px;align-items:center}.profile-head .horse-symbol{font-size:85px;color:var(--gold)}.profile-meta{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:22px 0}.profile-meta small{display:block;font-size:9px;color:var(--muted);margin-bottom:6px}.profile-meta strong{font-size:12px}.form-line{display:flex;gap:8px;margin:12px 0}.form-line span{display:flex;width:32px;height:35px;align-items:center;justify-content:center;background:#ffffff06;border:1px solid var(--line);border-radius:8px;color:var(--gold)}.progress{height:3px;border-radius:4px;background:#274149;overflow:hidden;margin:12px 0}.progress>span{display:block;height:100%;background:var(--gold)}.loading{text-align:center;margin:0 20px;padding:32px 20px}.loading p{color:var(--muted);margin-top:12px}.spinner{display:block;width:28px;height:28px;border:2px solid var(--line);border-top-color:var(--gold);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 20px}#toast{position:fixed;z-index:12;bottom:calc(92px + var(--safe-bottom));left:50%;transform:translateX(-50%) translateY(15px);width:calc(100% - 40px);max-width:480px;padding:14px 18px;background:#233f46;border:1px solid #edc77a70;border-radius:12px;box-shadow:0 8px 30px #0006;font-size:12px;line-height:1.5;opacity:0;pointer-events:none;transition:.2s}#toast.visible{opacity:1;transform:translateX(-50%) translateY(0)}.offline{padding:12px 20px;background:#f6b69a15;color:#f6b69a;font-size:11px;line-height:1.5}.race-live{height:110px;margin-top:18px;border-radius:10px;background:repeating-linear-gradient(0deg,#ffffff04 0 1px,transparent 1px 22px),linear-gradient(90deg,#0c2a28,#183c36);overflow:hidden;position:relative}.race-live span{position:absolute;left:-35px;font-size:26px;color:var(--gold);animation:gallop 5s infinite linear}.race-live span:nth-child(2){top:35px;animation-duration:5.6s;animation-delay:-2s;color:var(--mint)}.race-live span:nth-child(3){top:68px;animation-duration:6.2s;animation-delay:-4s;color:#f6b69a}.prediction{padding:14px 0;border-bottom:1px solid var(--line)}.prediction p{font-size:13px;line-height:1.7;color:var(--muted);margin-top:8px}.refresh-note{font-size:9px;color:var(--muted);text-align:center;padding:15px}details{margin:15px 0;color:var(--muted);font-size:10px;overflow-wrap:anywhere}details p{margin-top:10px;line-height:1.7}summary{cursor:pointer;min-height:30px}@keyframes glow{to{opacity:.4}}@keyframes enter{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes sheet-in{from{transform:translateY(40px);opacity:.3}to{transform:translateY(0);opacity:1}}@keyframes stamp{from{transform:scale(.65);opacity:0}to{transform:scale(1);opacity:1}}@keyframes gallop{to{left:105%}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.race-live span{left:25%}.race-live span:nth-child(2){left:50%}.race-live span:nth-child(3){left:75%}}@media(max-width:350px){.topbar{gap:8px;padding-left:14px;padding-right:14px}.brand>span{font-size:14px;letter-spacing:2px}.hero{height:310px;padding:25px 20px}.race-panel{margin-left:14px;margin-right:14px;padding:17px}.section{padding-left:14px;padding-right:14px}.section-title h2{font-size:25px}.stable-grid{gap:8px}.horse-card{padding:13px 10px}.race-meta{gap:8px}.race-meta span+span{padding-left:8px}}

.hero-welcome{display:block;position:relative;z-index:1;max-width:340px;font-size:17px;line-height:1.5;font-weight:750;letter-spacing:1.1px;text-transform:uppercase;color:var(--gold);text-shadow:0 2px 14px #071c21;overflow-wrap:anywhere}.predictions-button{display:block;width:100%;min-height:58px;margin:20px 0 16px;padding:15px 18px;background:linear-gradient(135deg,#edc77a20,#edc77a0a);border:1px solid #edc77a90;border-radius:12px;color:var(--gold);font-size:16px;font-weight:650;line-height:1.5;text-align:left;box-shadow:0 4px 18px #0002}.predictions-button:active{transform:scale(.98)}@media(max-width:350px){.hero-welcome{font-size:16px}.wallet strong{font-size:22px}.predictions-button{font-size:15px;padding:14px}}

/* Ippodromo Universo: turf, racing programme and betting receipts. */
:root{--bg:#103b2d;--surface:#164635;--line:#ffffff24;--gold:#f2d494;--cream:#fff5df;--muted:#c1d0c4;--mint:#c5e4b5;--paper:#f6eedb;--ink:#20392c;--paper-line:#c9c1a9;--red:#c74833}
body{background:var(--bg)}.ambient{background:repeating-linear-gradient(90deg,#ffffff02 0 48px,transparent 48px 96px),radial-gradient(ellipse at 80% 0,#59785144,transparent 70%)}
.topbar{background:var(--paper);color:var(--ink);border-bottom:3px solid var(--red);padding-top:calc(14px + var(--safe-top));padding-bottom:14px;gap:10px}.brand>span{letter-spacing:2px;font-size:18px}.brand small{color:#536654;letter-spacing:1px;font-size:8px}.brand img{filter:brightness(.48) sepia(.5)}.wallet small{color:#536654}.wallet strong{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:800}.icon-button{background:#ffffff0a;border-color:#ffffff40}.topbar .icon-button{background:#e9e0c9;border-color:var(--paper-line);color:var(--ink)}
.hero{height:280px;padding:23px 24px;background:linear-gradient(180deg,#082b24cc,transparent 58%),linear-gradient(0deg,#103b2d88,transparent 45%),url('./assets/ippodromo.webp') center 58%/cover}.hero:after{display:none}.hero-welcome{color:#fff6dc;font-size:19px;font-weight:800;letter-spacing:.7px;line-height:1.4;max-width:340px;text-shadow:0 2px 9px #001b17}.track-rail{position:absolute;left:-10px;right:-10px;bottom:30px;height:13px;border-top:4px solid #fff2d7;border-bottom:3px solid #fff2d7;transform:rotate(-4deg);box-shadow:0 5px 12px #072b2670}.track-rail:after{content:'';position:absolute;inset:-4px 0 -22px;background:repeating-linear-gradient(90deg,transparent 0 49px,#fff2d7 49px 53px,transparent 53px 99px)}
.panel,.race-panel{background:var(--paper);color:var(--ink);border:1px solid #d2c5a2;border-radius:5px;box-shadow:0 8px 22px #001a1840}.race-panel{margin-top:-12px;border-top:5px solid var(--red);padding:20px}.race-panel .eyebrow{color:#6b5739}.race-panel h2{font-size:34px;font-weight:700}.race-panel .race-meta,.race-panel .hint,.race-panel .countdown-row small{color:#576353}.race-meta span+span{border-color:var(--paper-line)}.pill{background:#dbe6cc;color:#284831;border:1px solid #aabd9f;border-radius:4px;font-size:9px}.pill.live{background:#fae1d5;color:#973c29;border-color:#dfa694}.timer{color:var(--ink);background:#e8dfc9;padding:6px 10px;border-radius:3px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700;letter-spacing:1px}.primary{background:var(--red);color:#fff8e9;border-radius:5px;box-shadow:0 3px 0 #932e20;font-size:15px;letter-spacing:.3px;min-height:52px}.primary:active{transform:translateY(2px);box-shadow:0 1px 0 #932e20}.secondary{border-radius:5px}.stats-strip{margin-top:6px;padding:20px 0}.stats-strip strong{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-weight:700}.stats-strip small{font-size:10px}.section-title h2{font-size:29px}.section-title .eyebrow{font-size:9px}.horse-row{border-bottom-color:#ffffff28;padding:13px 0;gap:11px}.horse-details strong{font-size:15px}.horse-details small{font-size:10px;line-height:1.5}.silk{width:40px;height:40px;clip-path:none;border-radius:3px;background:var(--color);border:2px solid #fff6dc;box-shadow:2px 3px 0 #001b1640;font-family:Georgia,serif;font-size:23px;color:#0d211a}.odds{background:#09271d;border:1px solid #ffffff30;border-radius:3px;padding:7px 9px;min-width:62px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:20px;font-weight:700;color:#f2d494}.odds small{font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-size:8px;color:#c1d0c4}.predictions-button{background:var(--paper);color:var(--ink);border:0;border-left:5px solid var(--red);border-radius:4px;font-weight:750;box-shadow:0 4px 15px #001b1633;font-size:17px}.text-button{font-size:12px;font-weight:600}.refresh-note{font-size:10px;line-height:1.6}
.bottom-nav{grid-template-columns:repeat(3,minmax(0,1fr));background:#092e23f7;border-top:2px solid #d5c89d;padding:9px 8px calc(10px + var(--safe-bottom))}.bottom-nav button{font-size:11px;letter-spacing:0;font-weight:600;min-height:53px;color:#c7d3c5}.bottom-nav span{height:27px;margin-bottom:5px}.bottom-nav svg{width:32px;height:24px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linejoin:round;stroke-linecap:round}.bottom-nav svg .flag-fill{fill:currentColor;stroke:none}.bottom-nav .active{color:#f2d494}.bottom-nav .active:before{height:3px;top:-11px;width:38px;left:calc(50% - 19px);background:var(--red)}
.page-heading{padding-top:29px}.page-heading h1{font-size:38px;font-weight:700}.page-heading p{font-size:13px}.result-card{background:var(--paper);color:var(--ink);border:0;border-radius:5px;padding:18px;margin-bottom:18px;box-shadow:0 5px 16px #001b1630}.result-card .eyebrow{color:#6b5739}.result-card .hint{color:#606654}.result-card .text-button{color:#285239;margin-top:5px}.finish-strip{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;margin-bottom:17px;border-bottom:1px solid var(--paper-line);font-size:9px;letter-spacing:1.5px;font-weight:800}.finish-checks{width:68px;height:16px;background:conic-gradient(#23392d 25%,#f6eedb 0 50%,#23392d 0 75%,#f6eedb 0) 0 0/16px 16px}.podium{gap:7px}.podium>div{border:1px solid var(--paper-line);background:#eee5cf;border-radius:3px;padding-top:15px;position:relative}.podium>div:first-child{background:#e3e8d2;border-color:#849d70;border-top:4px solid #31583b;padding-top:12px}.podium b{color:var(--ink);font-size:28px}.podium span{font-size:12px;font-weight:650}
.ticket{background:var(--paper);color:var(--ink);border:0;border-radius:0;position:relative;margin:18px 0 24px;padding:20px 18px;box-shadow:0 7px 20px #001b1630}.ticket:before,.ticket:after{content:'';position:absolute;left:0;right:0;height:6px;background:linear-gradient(135deg,transparent 4px,var(--paper) 0) 0 0/8px 8px,linear-gradient(225deg,transparent 4px,var(--paper) 0) 0 0/8px 8px}.ticket:before{top:-6px}.ticket:after{bottom:-6px;transform:rotate(180deg)}.ticket.won{background:var(--paper);border:0}.receipt-brand{text-align:center;border-bottom:1px dashed var(--paper-line);padding-bottom:14px;margin-bottom:15px}.receipt-brand strong{display:block;font-size:13px;letter-spacing:1.4px}.receipt-brand small{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;margin-top:7px;letter-spacing:1.5px}.ticket .eyebrow{color:#625d49;letter-spacing:.7px;font-size:9px}.ticket .selection{font-size:23px;font-weight:700;margin:17px 0;line-height:1.4}.receipt-line{display:flex;justify-content:space-between;border-top:1px dashed var(--paper-line);padding:12px 0;color:#5c614f;font-size:12px}.receipt-line strong{color:var(--ink);font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.ticket-footer{border-color:var(--paper-line);color:#5c614f;padding-top:15px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px}.ticket-footer span:last-child{text-align:right}.ticket-footer strong{display:block;color:var(--ink);font-size:21px;margin-top:7px}.ticket .hint{color:#5c614f}.receipt-reference{text-align:center;margin-top:20px}.receipt-barcode{height:24px;width:134px;margin:0 auto 7px;background:repeating-linear-gradient(90deg,#20392c 0 2px,transparent 2px 4px,#20392c 4px 5px,transparent 5px 8px,#20392c 8px 11px,transparent 11px 13px,#20392c 13px 14px,transparent 14px 18px);opacity:.8}.receipt-reference small{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:9px;letter-spacing:1px}
dialog{--line:#c9c1a9;--muted:#596452;--gold:#315a3d;--cream:#20392c;background:var(--paper);color:var(--ink);border:1px solid #d2c5a2;border-top:5px solid var(--red);border-radius:14px 14px 0 0;box-shadow:0 -10px 80px #001c1b88}dialog .icon-button{border-color:var(--paper-line);background:#e8dfc9}dialog .eyebrow{color:#6b5739}dialog .sheet-title{font-weight:700}dialog .horse-row{border-bottom-color:var(--paper-line)}dialog .odds{color:#f2d494}dialog .tabs button{background:#eee5cf;border-color:#c9c1a9;font-size:12px;border-radius:4px}dialog .tabs button.active{background:#315a3d;color:#fff5df;border-color:#315a3d}dialog .round-tag{background:#e4dbc5;color:var(--ink)}dialog .bet-step .horse-row.selected{background:#dce5ce;border-color:#63805b;border-radius:5px}dialog .bet-step .horse-row.selected .round-tag{background:#315a3d;color:#fff5df}dialog .amount-row button{background:#eee5cf;border-color:#c9c1a9;border-radius:4px}dialog .amount-row button.selected{background:#315a3d;color:#fff5df;border-color:#315a3d}dialog .amount-input{background:#fff9ea;border-radius:4px}dialog .amount-input input{color:var(--ink)}dialog .confirm-box{background:#eee5cf;border-radius:4px}dialog .quote-box strong{color:#315a3d;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}dialog .success .seal{background:#dce5ce;border:2px solid #315a3d;color:#315a3d;width:66px;height:66px;line-height:62px;font-size:30px;margin-bottom:16px}dialog .success{padding-top:8px}dialog .success .ticket{text-align:left;border:1px solid #c9c1a9;box-shadow:0 4px 12px #3a372012}dialog .success h2{font-weight:700}dialog .secondary{background:#e8dfc9}dialog .progress{background:#d1c9b1}dialog .form-line span{background:#eee5cf}
#toast{background:#f6eedb;color:#20392c;border-color:#c74833;border-radius:5px}.race-live{background:repeating-linear-gradient(0deg,#ffffff38 0 1px,transparent 1px 22px),linear-gradient(90deg,#254b32,#52774b)}.race-live span{color:#fff5df}.offline{background:#623125;color:#fff1dc}
@media(max-width:350px){.brand>span{font-size:16px;letter-spacing:1.4px}.brand small{font-size:7px;letter-spacing:.5px}.brand img{width:27px}.hero{height:255px;padding:21px 20px}.hero-welcome{font-size:18px;line-height:1.4}.race-panel{padding:17px}.race-panel h2{font-size:30px}.section-title h2{font-size:25px}.predictions-button{font-size:16px}.bottom-nav button{font-size:10px}.horse-row{gap:9px}.horse-details strong{font-size:14px}.odds{min-width:58px;padding:7px;font-size:18px}.ticket{padding:18px 14px}.page-heading h1{font-size:34px}}
.topbar{--gold:#315a3d;--muted:#66705a}.receipt-barcode{display:block}
