@charset "UTF-8";
:root{--ink:#242323;--muted:#696561;--red:#a91c2c;--paper:#fffefa;--ground:#f3f1ec;--line:#dedbd3;--green:#266747;font-family:Pretendard,'Noto Sans KR',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;color:var(--ink);background:var(--ground);font-synthesis:none}*{box-sizing:border-box}body{margin:0;font-size:16px;line-height:1.65}button,select{font:inherit;color:inherit}button,a,select{touch-action:manipulation}button{cursor:pointer}a{color:inherit}button:disabled{cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #386aaa;outline-offset:3px}[hidden]{display:none!important}.skip{position:fixed;top:-80px;background:#fff;padding:10px;z-index:20}.skip:focus{top:0}.masthead{max-width:1140px;margin:auto;padding:25px 28px 22px;display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--ink)}.brand{display:flex;gap:19px;align-items:center;text-decoration:none}.brand-name{font-size:18px;font-weight:750}.brand-name small{font-weight:400;font-size:12px;letter-spacing:.03em;display:block;color:var(--muted)}.edition{font-size:10px;letter-spacing:.14em;text-align:center;line-height:1.2}.edition b{font-size:23px;font-weight:500}main{max-width:1140px;margin:auto;padding:24px 28px 45px}.section-label{display:flex;align-items:center;justify-content:space-between;font-weight:750;margin-bottom:12px}.text-button,.help-button{background:none;border:0;color:var(--red);min-height:44px;padding:0 8px;font-size:14px;font-weight:600}.selectors{display:grid;grid-template-columns:160px 220px;gap:12px}.selectors label{font-size:12px;color:var(--muted)}select{display:block;width:100%;border:1px solid #b8b3aa;border-radius:4px;padding:10px 32px 10px 12px;min-height:46px;background:var(--paper);font-size:16px;font-weight:650}.race-picker{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.race-picker button{border:1px solid var(--line);background:var(--paper);min-width:49px;height:46px;font-size:15px;border-radius:4px}.race-picker button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white;font-weight:750}.sync{font-size:12px;color:var(--muted);margin:10px 0 0}.race-heading{display:flex;justify-content:space-between;align-items:center;margin:25px 0 0;padding:25px 0;border-top:1px solid var(--line)}.eyebrow{text-transform:uppercase;letter-spacing:.11em;font-size:11px;font-weight:750;color:var(--red);margin:0 0 7px}h1{font-size:39px;line-height:1.2;letter-spacing:-.05em;margin:0}#race-meta{margin:10px 0 0;color:var(--muted);font-size:14px}.start{border-left:1px solid var(--line);padding-left:28px;display:flex;flex-direction:column}.start span{font-size:12px;color:var(--green);font-weight:700}.start strong{font-size:30px;line-height:1.4;font-variant-numeric:tabular-nums;letter-spacing:-.03em}.start small{font-size:11px;color:var(--muted)}.changes{border-left:3px solid var(--red);padding:12px 16px;background:#f8e9e8;font-size:14px;margin-bottom:20px}.changes p{margin:4px 0}.view-tabs{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);margin:0 0 30px}.view-tabs button{border:0;border-bottom:3px solid transparent;background:none;padding:13px 2px;color:var(--muted);font-weight:650;font-size:15px}.view-tabs button[aria-selected=true]{border-bottom-color:var(--red);color:var(--red)}.view-tabs span{font-size:11px;margin-left:2px}.content-grid{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:55px}.panel-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}h2{font-size:23px;line-height:1.4;margin:0;letter-spacing:-.035em}.help-button{font-size:13px;white-space:nowrap}.bet-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:23px}.bet-tabs button{background:var(--paper);border:1px solid var(--line);border-radius:4px;min-height:51px;font-weight:650}.bet-tabs button[aria-pressed=true]{background:var(--red);border-color:var(--red);color:#fff}.ticket{background:var(--paper);border:1px solid var(--line);border-top:4px solid var(--red);box-shadow:0 5px 12px #33271706;position:relative}.ticket-header{padding:22px 25px 18px;border-bottom:1px dashed #c4bfb5;text-align:center}.ticket-header p{margin:3px 0;color:var(--muted);font-size:13px}.ticket-header h3{font-size:24px;margin:0;letter-spacing:.04em}.ticket-header small{font-size:11px;letter-spacing:.08em;color:var(--muted)}.ticket-row{padding:20px 25px;border-bottom:1px dashed var(--line)}.combination{display:flex;align-items:center;gap:12px}.row-label{width:23px;color:var(--red);font-size:20px;font-weight:750}.numbers{display:flex;align-items:center;gap:12px;flex:1}.number{font-size:31px;font-weight:780;line-height:1.2;font-variant-numeric:tabular-nums;letter-spacing:-.04em}.number-link{font-size:18px;color:#aca59a}.save{min-height:44px;padding:5px 12px;font-size:13px;border:1px solid #c9c4ba;background:transparent;border-radius:4px}.save[aria-pressed=true]{color:var(--red);border-color:var(--red);background:#fff3f1}.horse-names{font-size:13px;color:var(--muted);margin:10px 0 0 35px}.ticket-row details{margin-top:12px;font-size:13px;color:var(--muted)}summary{cursor:pointer;padding:8px 0;min-height:36px}details p{margin:8px 0 12px}.ticket-bottom{padding:13px 24px;font-size:11px;color:var(--muted);display:flex;justify-content:space-between}.barcode{height:17px;width:66px;background:repeating-linear-gradient(90deg,#5e5a530 0 2px,#5e5a53 2px 3px,#5e5a530 3px 5px,#5e5a53 5px 7px);opacity:.6}.disclaimer{font-size:12px;color:var(--muted);margin:18px 0;line-height:1.8}.place-rule{font-size:13px;padding:12px 18px;background:#eee9df}.place-switch{display:flex;gap:8px;padding:14px 18px 0}.place-switch button{flex:1;background:transparent;border:1px solid var(--line);font-size:12px;min-height:42px}.place-switch button[aria-pressed=true]{border-color:var(--red);color:var(--red);font-weight:700}.aside{border-top:3px solid var(--ink);padding-top:20px}.aside h2{font-size:30px;line-height:1.45}.aside>p:not(.eyebrow){font-size:15px;color:var(--muted);margin:22px 0}.rule-line{border-top:1px solid var(--line);margin:25px 0}.aside .aside-small{font-size:13px!important}.aside details{font-size:12px;color:var(--muted)}.aside a{display:block;margin-top:22px;color:var(--red);font-size:13px;text-underline-offset:5px}.sort-label{font-size:11px;color:var(--muted)}.sort-label select{font-size:13px;min-height:42px;padding:6px 20px 6px 8px}.runner{border-top:1px solid var(--line);padding:18px 0}.runner-top{display:flex;align-items:center;gap:12px}.saddle{width:36px;height:36px;background:var(--ink);color:#fff;display:inline-flex;align-items:center;justify-content:center;flex:none;font-size:20px;font-weight:700}.runner-name{flex:1}.runner-name strong{font-size:18px}.runner-name small{font-size:12px;color:var(--muted);display:block}.ranking{font-size:12px;color:var(--red)}.runner-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;margin-top:14px}.runner-stats span{font-size:11px;color:var(--muted);display:block}.runner-stats b{font-size:14px;font-weight:650}.runner details{font-size:13px;color:var(--muted);margin-top:8px}.saved-item{background:var(--paper);border:1px solid var(--line);padding:20px;margin-bottom:12px}.saved-item .numbers{margin:14px 0}.saved-item small{color:var(--muted)}.saved-item button{min-height:44px;background:transparent;border:1px solid #c9c4ba;padding:7px 12px;border-radius:4px;font-size:13px}.saved-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:16px}.empty{padding:32px 24px;border:1px solid var(--line);background:var(--paper)}.empty h3{font-size:21px;margin:0 0 10px}.empty p{font-size:14px;color:var(--muted);margin:0}.empty .numbers{margin:18px 0}.error{padding:24px;border-left:3px solid var(--red);background:#fff;margin:20px 0;font-size:15px}.error button{display:block;margin-top:15px;min-height:44px;background:var(--red);color:#fff;border:0;padding:8px 20px}.loading{padding:55px 20px;text-align:center;color:var(--muted)}footer{max-width:1084px;border-top:1px solid var(--line);margin:0 auto;padding:26px 0 40px;color:var(--muted);font-size:12px}.footer-brand{font-weight:900;font-size:20px;font-style:italic;color:var(--ink)}footer small{font-size:11px}dialog{width:min(520px,calc(100% - 30px));border:1px solid var(--line);border-radius:8px;padding:22px;background:var(--paper);max-height:85dvh}dialog::backdrop{background:#17131080}.dialog-head{display:flex;justify-content:space-between;align-items:center}.dialog-head h2{font-size:21px}.dialog-head button{width:44px;height:44px;background:none;border:0;font-size:28px}.guide-row{padding:14px 0;border-bottom:1px solid var(--line)}.guide-row p{font-size:14px;color:var(--muted);margin:4px 0}#toast{position:fixed;bottom:max(25px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);background:var(--ink);color:#fff;padding:13px 22px;border-radius:4px;font-size:14px;max-width:90%;width:max-content;z-index:30}@media(min-width:900px){.selection{display:grid;grid-template-columns:1fr 1fr;gap:0 35px}.section-label{grid-column:1/-1}.race-picker{display:grid;grid-template-columns:repeat(5,56px);justify-content:end;margin-top:0;align-self:center}.sync{grid-column:1/-1}.bet-tabs{grid-template-columns:repeat(6,1fr)}}@media(max-width:760px){.masthead{padding:18px 20px 17px;margin:0 16px}.brand{gap:14px}.brand-name{font-size:15px}.brand-name small{font-size:10px}.edition{display:none}main{padding:15px 20px 28px}.selectors{grid-template-columns:1fr 1.35fr;gap:10px}.selection{padding-bottom:2px}.race-picker{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:6px}.race-picker button{min-width:0;width:100%;font-size:14px}.race-heading{margin-top:19px;padding:23px 0;gap:12px}h1{font-size:31px}#race-meta{font-size:12px;max-width:195px}.start{padding-left:15px}.start strong{font-size:26px}.start small{font-size:10px;max-width:95px}.view-tabs{margin-bottom:25px}.view-tabs button{font-size:13px;white-space:nowrap;min-height:49px}.content-grid{display:block}.aside{margin-top:35px;padding-top:19px}.aside h2{font-size:24px}.aside h2 br{display:none}.aside>p:not(.eyebrow){font-size:14px;margin:15px 0}.aside>p br{display:none}.aside .rule-line{margin:18px 0}.panel-head{margin-bottom:17px}h2{font-size:21px}.bet-tabs{gap:7px;margin-bottom:20px}.bet-tabs button{min-height:49px}.ticket-header{padding:21px 16px 17px}.ticket-row{padding:20px 17px}.combination{gap:10px}.numbers{gap:10px}.number{font-size:28px}.row-label{width:19px;font-size:18px}.save{padding:5px 10px;font-size:12px}.horse-names{font-size:12px;margin-left:29px}.ticket-bottom{padding:12px 16px;font-size:10px}.barcode{width:48px}.ticket-row details{font-size:12px}.runner-stats b{font-size:13px}.runner-stats{grid-template-columns:1.1fr 1fr 1fr}footer{margin:0 20px;padding-bottom:30px}.changes{font-size:12px;padding:10px 12px}.empty{padding:26px 18px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

@media(max-width:760px){.race-picker:has(button:nth-child(10)):not(:has(button:nth-child(11))){grid-template-columns:repeat(5,minmax(0,1fr))}.section-label{margin-bottom:5px}.race-heading{padding:18px 0}.changes{margin-bottom:10px}.view-tabs{margin-bottom:20px}}

.recent-form{margin-top:16px}.recent-form>span{font-size:12px;color:var(--muted)}.form-sequence{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px;max-width:420px;margin-top:7px}.form-sequence b{font-size:15px;text-align:center;padding:4px 0;border-bottom:2px solid var(--line);font-variant-numeric:tabular-nums}.record-caution{font-size:12px;color:#835017;line-height:1.7;margin:12px 0}.past-runs p{padding:9px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}

.recovery-actions{display:grid;gap:10px;margin-top:20px}.recovery-actions button{min-height:48px;border:1px solid var(--line);background:var(--paper);padding:9px 12px;font-size:14px;font-weight:650}.recovery-actions button:first-child{background:var(--red);color:white;border-color:var(--red)}@media(max-width:760px){.race-picker:has(button:nth-child(7)):not(:has(button:nth-child(8))){grid-template-columns:repeat(4,minmax(0,1fr))}}

.brand-logo{width:96px;height:48px;display:inline-flex;overflow:hidden;flex:none;background:#ba1220}.brand-logo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.footer-brand{display:inline-flex;align-items:center;gap:12px}.footer-brand .brand-logo{width:76px;height:38px}@media(max-width:760px){.brand-logo{width:76px;height:40px}.brand{gap:12px}}

.strategy-picker{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:0;border-block:1px solid #b8b3aa}
.strategy-picker button{font-size:13px;font-weight:700;text-align:left;border:0;border-right:1px solid var(--line);background:transparent;min-height:62px;padding:9px 10px}
.strategy-picker button:last-child{border-right:0}.strategy-picker button span{display:block;font-size:10px;letter-spacing:.06em;color:var(--muted);margin-bottom:2px}
.strategy-picker button[aria-pressed=true]{background:var(--ink);color:var(--paper)}.strategy-picker button[aria-pressed=true] span{color:#e3c4c4}
.strategy-description{font-size:14px;margin:16px 0 6px}.data-check{font-size:12px;color:var(--muted);margin-bottom:21px}.data-check summary{font-weight:600}.data-check p{line-height:1.8}
.more-picks{display:block;width:calc(100% - 36px);margin:15px 18px;min-height:48px;background:transparent;border:1px solid #b8b3aa;font-weight:700;font-size:14px}
.ticket-header .overlap-note{font-size:12px;color:var(--red);margin-top:10px}.no-combinations{font-size:14px;padding:20px}
#odds-entry{border-left:3px solid var(--red);padding:12px 16px;background:#eee9df;margin-bottom:20px}
#odds-entry summary{font-weight:700;font-size:14px}#odds-entry p{font-size:12px;line-height:1.8}
.odds-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.odds-grid label{font-size:13px;min-width:0}.odds-grid b{display:block}.odds-grid b span{font-size:11px;font-weight:400;display:block;overflow-wrap:anywhere}
.odds-grid input{font:inherit;font-size:16px;min-height:46px;width:100%;padding:8px;border:1px solid #b8b3aa;background:var(--paper);border-radius:3px;margin-top:5px;min-width:0}
.odds-grid input:focus-visible{outline:3px solid #386aaa;outline-offset:2px}#apply-odds{background:var(--red);color:white;border:0;min-height:48px;width:100%;font-size:15px;font-weight:700;margin-top:17px;padding:8px}
#apply-odds:disabled{opacity:.45}.recipe-summary{padding:18px;background:#eee9df;font-size:12px}.recipe-summary>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}.recipe-summary span{text-align:center;border-right:1px solid #c8c2b7}.recipe-summary span:last-child{border:0}.recipe-summary strong{font-size:24px;display:block}.recipe-summary small{display:block}.recipe-summary p{margin:10px 0 0}
@media(max-width:760px){.strategy-picker{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-picker button{min-height:48px;border-bottom:1px solid var(--line);display:flex;gap:9px;align-items:center;font-size:14px}.strategy-picker button:nth-child(even){border-right:0}.strategy-picker button:last-child{grid-column:1/-1;border-bottom:0}.strategy-picker button span{margin:0;min-width:16px}.odds-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.strategy-description{font-size:13px}.ticket-row .row-label{font-size:14px;font-variant-numeric:tabular-nums}}
