.replay-open-btn{border:1px solid rgba(255,255,255,.55);background:rgba(255,255,255,.12);color:#fff;font-size:17px;font-weight:700;padding:6px 10px;border-radius:8px;cursor:pointer;white-space:nowrap}
.replay-open-btn.replay-open-btn--locked{opacity:.5;cursor:not-allowed}
.replay-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.8);z-index:1200;padding:0}
.replay-modal.show{display:block}
.replay-wrap{position:relative;width:100%;max-width:100%;margin:0;background:#000;border:1px solid #1f2937;height:600px}
.replay-close{position:absolute;right:8px;top:8px;border:none;background:rgba(0,0,0,.55);color:#fff;width:34px;height:34px;border-radius:50%;font-size:22px;line-height:1;z-index:3;cursor:pointer}
.replay-ratio{position:relative;height:100%}
#replayPlayer{position:absolute;inset:0;width:100%;height:100%;background:#000;object-fit:contain}
.replay-overlay{position:absolute;left:0;right:0;bottom:0}
.replay-progress-wrap{height:4px;background:#8da0b3}
#replayProgress{height:100%;width:0;background:#1f5fff}
.replay-tabs{display:grid;grid-template-columns:repeat(4,1fr);background:rgba(20,28,40,.9)}
.replay-tab{border:none;border-right:1px solid rgba(255,255,255,.15);padding:12px 6px;font-size:16px;color:#fff;background:rgba(30,39,52,.92);cursor:pointer}
.replay-tab:last-child{border-right:none}
.replay-tab.active{background:rgba(132,140,148,.85)}
.replay-tab:disabled{opacity:.35;cursor:not-allowed}
.replay-ctl{display:grid;grid-template-columns:1fr auto auto;align-items:center;background:rgba(10,20,30,.9)}
.replay-left{display:flex;align-items:center;gap:10px;padding:12px 14px}
#replayPlayPause{font-size:28px;border:none;background:transparent;color:#fff;cursor:pointer}
#replayTimeText{font-size:20px;font-weight:800;color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.55)}
.replay-ctl-btn{border-left:1px solid rgba(255,255,255,.12);padding:12px 14px;font-size:22px;background:rgba(255,255,255,.06);color:#fff;border-top:none;border-right:none;border-bottom:none;cursor:pointer}
.replay-qbtn{min-width:94px}
.replay-qbtn.active{background:rgba(255,255,255,.26)}
.official-page-modal{display:none;position:fixed;inset:0;background:rgba(6,10,18,.78);z-index:1250;padding:10px}
.official-page-modal.show{display:block}
.official-page-wrap{width:min(100%,980px);height:min(calc(100vh - 20px),900px);margin:0 auto;background:#fff;border-radius:18px;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 28px 80px rgba(0,0,0,.34)}
.official-page-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;background:linear-gradient(135deg,#0f3b8f 0%,#163a7a 56%,#1e4fb5 100%);color:#fff;border-bottom:1px solid rgba(255,255,255,.12)}
.official-page-head-copy{min-width:0;display:flex;flex-direction:column;gap:3px}
.official-page-title{min-width:0;font-size:16px;font-weight:800;line-height:1.3}
.official-page-subtitle{min-width:0;font-size:12px;line-height:1.35;color:rgba(255,255,255,.86)}
.official-page-close{border:none;width:32px;height:32px;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:22px;line-height:1;cursor:pointer}
.official-page-body{flex:1 1 auto;overflow:auto;background:#f3f4f6;padding:12px}
.official-local-loading,.official-local-empty{padding:18px;border-radius:16px;background:#fff;border:1px solid #dbe6f6;color:#5b6b82;font-size:14px;font-weight:700;box-shadow:0 8px 20px rgba(18,44,104,.06)}
.official-local-empty-inline{padding:10px 12px;border-radius:12px;background:#f8fbff;border:1px dashed #d2deef;color:#6b7b8f;font-size:13px}
.official-local-list{display:flex;flex-direction:column;gap:14px}
.official-local-card{padding:12px;border-radius:12px;background:#fff;border:1px solid #d5dbe4;box-shadow:0 4px 12px rgba(15,23,42,.04)}
.official-local-card-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.official-local-card-head-stack{display:block}
.official-local-card-formline .official-local-card-head{margin:-12px -12px 12px;padding:10px 12px;background:#f0f2f5;border-bottom:1px solid #d6dde6;border-radius:12px 12px 0 0}
.official-local-silk{width:40px;height:40px;object-fit:contain;flex:0 0 auto}
.official-local-card-copy{min-width:0}
.official-local-card-title{font-size:15px;font-weight:800;line-height:1.3;color:#24364f}
.official-local-card-meta{margin-top:4px;font-size:12px;line-height:1.45;color:#637286}
.official-local-card-body{display:flex;flex-direction:column;gap:8px}
.official-local-entry{padding:10px 12px;border-radius:14px;background:#f8fbff;border:1px solid #dbe7fb}
.official-local-entry-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.official-local-inline-btn{margin-left:auto}
.official-local-entry-date{font-size:12px;font-weight:800;color:#163a7a}
.official-local-entry-type{display:inline-flex;align-items:center;min-height:24px;padding:0 9px;border-radius:999px;background:linear-gradient(135deg,#ffd84a 0%,#ffc400 100%);color:#142a63;font-size:12px;font-weight:800}
.official-local-entry-sub{margin-top:6px;font-size:13px;line-height:1.55;color:#44536a}
.official-local-formline-table{display:flex;flex-direction:column;gap:8px}
.official-local-formline-board{display:flex;flex-direction:column;border:1px solid #cfd6df;border-radius:8px;overflow:hidden}
.official-local-formline-head,.official-local-formline-row{display:grid;grid-template-columns:minmax(160px,1.5fr) .9fr .9fr .9fr 1.2fr .8fr .9fr .9fr .8fr .8fr;gap:0}
.official-local-formline-head{background:#e7ecf2}
.official-local-formline-head span{padding:9px 8px;font-size:12px;font-weight:700;color:#344256;border-right:1px solid #d2d8e0}
.official-local-formline-head span:last-child{border-right:none}
.official-local-formline-head span:nth-child(9),
.official-local-formline-head span:nth-child(10){font-size:11px}
.official-local-formline-row{background:#fff;border-top:1px solid #e1e6ed}
.official-local-formline-row.is-current{background:#fffbea}
.official-local-formline-cell,.official-local-formline-horse{padding:9px 8px;font-size:13px;line-height:1.45;color:#24364f;border-right:1px solid #eef1f5}
.official-local-formline-cell:last-child{border-right:none}
.official-local-formline-horse{display:flex;align-items:center;gap:8px;font-weight:800;color:#162a63}
.official-local-formline-no{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:28px;padding:0 8px;border-radius:999px;background:#f7c948;color:#24364f;font-size:12px;font-weight:800;border:1px solid #e6bc3d}
.official-local-formline-name{min-width:0}
.official-local-formline-sub{display:block;margin-top:4px;font-size:11px;color:#70819a}
.official-local-formline-jockey .official-local-formline-sub{margin-top:2px}
.official-local-formline-place-cell{display:flex;align-items:center;justify-content:center}
.official-local-formline-place-cell .detail-place-badge{width:40px;height:40px;min-width:40px}
.official-local-card-note{margin-top:10px;font-size:12px;line-height:1.5;color:#6a7a91}
.official-local-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:14px}
.official-local-result-wrap .official-local-meta-grid{gap:8px}
.official-local-meta-card{padding:12px 14px;border-radius:10px;background:#fff;border:1px solid #d6dde6;box-shadow:none}
.official-local-meta-grid-official{grid-template-columns:1.3fr .7fr}
.official-local-meta-card-official{border-radius:8px;background:#f7f8fa}
.official-local-meta-line+.official-local-meta-line{margin-top:6px}
.official-local-meta-line{font-size:13px;line-height:1.5;color:#334155}
.official-panel-local-result,.official-panel-local-report{margin-top:14px}
.official-local-report-list{display:flex;flex-direction:column;gap:10px}
.official-local-report-row{padding:12px 14px;border-radius:10px;background:#fff;border:1px solid #d6dde6}
.official-local-report-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.official-local-report-place{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;padding:0 8px;border-radius:999px;background:#eef1f5;color:#344256;font-size:12px;font-weight:800}
.official-local-report-name{font-size:14px;font-weight:800;color:#24364f}
.official-local-report-copy{margin-top:8px;font-size:13px;line-height:1.6;color:#475569}
.official-local-bt-summary{margin-bottom:12px;padding:12px 14px;border-radius:14px;background:#fff;border:1px solid #dbe6f6;font-size:13px;line-height:1.55;color:#334155}
.official-local-bt-group-title{margin-bottom:0;padding:10px 12px;border:1px solid #cfd6df;border-bottom:none;border-radius:8px 8px 0 0;background:#eceff3;font-size:14px;font-weight:800;line-height:1.35;color:#24364f}
.official-local-btresult-wrap .official-result-table th:last-child,
.official-local-btresult-wrap .official-result-table td:last-child{min-width:220px}
.official-local-btresult-wrap .official-panel-local-result{margin-top:0}
.official-local-btresult-wrap .official-panel-local-result .official-result-table{border-top-left-radius:0;border-top-right-radius:0}
.official-local-result-wrap .official-panel + .official-panel{margin-top:14px}
.official-local-panel-title{margin-bottom:10px;font-size:15px;font-weight:800;color:#24364f}
@media(max-width:768px){
  .replay-wrap{height:100%}
  .official-page-modal{padding:4px}
  .official-page-wrap{width:100%;height:calc(100vh - 8px);border-radius:12px}
  .official-page-body{padding:10px}
  .official-local-inline-btn{margin-left:0}
  .official-local-formline-head{display:none}
  .official-local-formline-row{grid-template-columns:1fr 1fr}
  .official-local-formline-horse,.official-local-formline-cell{border-right:none;border-bottom:1px solid #edf2fa}
  .official-local-formline-horse{grid-column:1 / -1}
  .official-local-formline-cell:last-child{border-bottom:none}
  .official-local-meta-grid{grid-template-columns:1fr}
}
