/* ScoreInsight 1.9.0 - 상세 분석 양팀 비교 UI */
.siv3-match-detail .siv3-analysis-section{overflow:hidden}
.siv3-match-detail .siv3-analysis-section__body{min-width:0}
.siv3-versus-board,.siv3-lineup-board,.siv3-market-board{width:100%;min-width:0}
.siv3-versus-board{overflow:hidden;border:1px solid rgba(22,224,232,.16);border-radius:18px;background:linear-gradient(145deg,rgba(8,20,31,.98),rgba(5,13,23,.98))}
.siv3-versus-board__head{display:grid;grid-template-columns:minmax(0,1fr) 54px minmax(0,1fr);align-items:center;gap:8px;padding:13px 14px;border-bottom:1px solid rgba(141,154,173,.12);background:rgba(255,255,255,.018)}
.siv3-versus-team{display:flex;align-items:center;gap:9px;min-width:0}
.siv3-versus-team--home{flex-direction:row-reverse;text-align:right}
.siv3-versus-team>span{flex:0 0 34px;width:34px;height:34px;border:1px solid rgba(22,224,232,.18);border-radius:11px;display:grid;place-items:center;background:rgba(22,224,232,.045);overflow:hidden}
.siv3-versus-team>span img{width:28px;height:28px;object-fit:contain}
.siv3-versus-team>span b{color:var(--siv3-accent);font-size:13px}
.siv3-versus-team>strong{min-width:0;color:#f2f7fb;font-size:13px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.siv3-versus-board__vs{color:#617187;font-size:10px;font-weight:950;letter-spacing:.08em;text-align:center}
.siv3-edge-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(125px,1fr));gap:1px;border-bottom:1px solid rgba(141,154,173,.1);background:rgba(141,154,173,.1)}
.siv3-edge-strip>span{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;background:#07121e}
.siv3-edge-strip small{color:#718299;font-size:9px;font-weight:900}
.siv3-edge-strip strong{color:var(--siv3-success);font-size:11px;text-align:right}
.siv3-versus-rows{padding:3px 13px 8px}
.siv3-versus-row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(84px,112px) minmax(0,1fr);align-items:center;gap:8px;padding:12px 0 15px;border-bottom:1px solid rgba(141,154,173,.09)}
.siv3-versus-row:last-child{border-bottom:0}
.siv3-versus-row__value{min-width:0;color:#d9e3ec;font-size:14px;font-weight:950;line-height:1.25;overflow-wrap:anywhere}
.siv3-versus-row__value--away{text-align:right}
.siv3-versus-row__value--home{text-align:left}
.siv3-versus-row__value.is-better{color:var(--siv3-success);text-shadow:0 0 18px rgba(43,213,118,.14)}
.siv3-versus-row__value.is-weaker{color:#77869a}
.siv3-versus-row__label{color:#8e9caf;font-size:10px;font-weight:900;text-align:center;line-height:1.25;word-break:keep-all}
.siv3-versus-meter{position:absolute;left:50%;right:0;bottom:7px;width:min(72%,430px);height:3px;transform:translateX(-50%);display:flex;gap:4px;overflow:hidden;border-radius:999px}
.siv3-versus-meter i{display:block;height:100%;min-width:4px}
.siv3-versus-meter__away{margin-left:auto;background:linear-gradient(90deg,rgba(22,224,232,.2),var(--siv3-accent));border-radius:999px 0 0 999px}
.siv3-versus-meter__home{background:linear-gradient(90deg,var(--siv3-success),rgba(43,213,118,.2));border-radius:0 999px 999px 0}

.siv3-lineup-board{overflow:hidden;border:1px solid rgba(22,224,232,.16);border-radius:18px;background:#07121e}
.siv3-lineup-rows{padding:4px 12px 8px}
.siv3-lineup-row{display:grid;grid-template-columns:minmax(0,1fr) 30px minmax(0,1fr);align-items:center;gap:8px;padding:9px 0;border-bottom:1px solid rgba(141,154,173,.09)}
.siv3-lineup-row:last-child{border-bottom:0}
.siv3-lineup-row>b{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:rgba(22,224,232,.07);color:var(--siv3-accent);font-size:10px}
.siv3-lineup-player{min-width:0}
.siv3-lineup-player--away{text-align:right}
.siv3-lineup-player--home{text-align:left}
.siv3-lineup-player strong{display:block;color:#edf4fa;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.siv3-lineup-player small{display:block;margin-top:3px;color:#78889d;font-size:8.5px;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.siv3-market-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.siv3-market-card{min-width:0;padding:13px;border:1px solid rgba(22,224,232,.15);border-radius:16px;background:linear-gradient(145deg,rgba(9,24,35,.98),rgba(6,15,25,.98))}
.siv3-market-card>header{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;margin-bottom:12px}
.siv3-market-card>header span{color:#8c9aad;font-size:10px;font-weight:900}
.siv3-market-card>header strong{max-width:64%;color:var(--siv3-success);font-size:10px;font-weight:950;text-align:right;line-height:1.35}
.siv3-market-card__compare{display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);align-items:center;gap:5px}
.siv3-market-card__compare>span{min-width:0;text-align:center}
.siv3-market-card__compare small{display:block;min-height:27px;color:#718197;font-size:8.5px;line-height:1.25;word-break:keep-all}
.siv3-market-card__compare b{display:block;margin-top:5px;color:#f0f6fa;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.siv3-market-card__compare em{color:var(--siv3-accent);font-size:9px;font-style:normal;font-weight:950;text-align:center}
.siv3-odds-details{margin-top:10px}

/* 기존 Python 원본 카드가 혹시 남아도 과도하게 커지지 않게 제한 */
.siv3-match-detail .siv3-analysis-box>h3{margin:0 0 10px;color:#91a0b3;font-size:11px}
.siv3-match-detail .siv3-data-grid>article{min-height:0}

@media(max-width:760px){
  .siv3-match-detail .siv3-analysis-section{padding:14px 11px!important}
  .siv3-match-detail .siv3-analysis-section__head{margin-bottom:10px!important}
  .siv3-versus-board__head{grid-template-columns:minmax(0,1fr) 38px minmax(0,1fr);padding:11px 10px}
  .siv3-versus-team{gap:6px}
  .siv3-versus-team>span{flex-basis:29px;width:29px;height:29px;border-radius:9px}
  .siv3-versus-team>span img{width:24px;height:24px}
  .siv3-versus-team>strong{font-size:11px}
  .siv3-versus-board__vs{font-size:8px}
  .siv3-edge-strip{grid-template-columns:repeat(2,minmax(0,1fr))}
  .siv3-edge-strip>span{padding:8px 9px}
  .siv3-edge-strip small{font-size:8px}
  .siv3-edge-strip strong{font-size:9px}
  .siv3-versus-rows{padding:2px 9px 6px}
  .siv3-versus-row{grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr);gap:6px;padding:10px 0 13px}
  .siv3-versus-row__value{font-size:12px}
  .siv3-versus-row__label{font-size:8.5px}
  .siv3-versus-meter{bottom:6px;width:78%;height:2px;gap:3px}
  .siv3-lineup-rows{padding:3px 8px 6px}
  .siv3-lineup-row{grid-template-columns:minmax(0,1fr) 26px minmax(0,1fr);gap:5px;padding:8px 0}
  .siv3-lineup-row>b{width:24px;height:24px;border-radius:8px;font-size:9px}
  .siv3-lineup-player strong{font-size:10.5px}
  .siv3-lineup-player small{font-size:7.5px}
  .siv3-market-board{grid-template-columns:1fr;gap:8px}
  .siv3-market-card{padding:11px 12px;border-radius:14px}
  .siv3-market-card>header{margin-bottom:8px}
  .siv3-market-card__compare small{min-height:auto;font-size:8px}
  .siv3-market-card__compare b{font-size:14px}
  .siv3-market-card__compare em{font-size:8px}
}

/* 1.9.0: PythonAnywhere DB에서 직접 만든 완성형 양팀 비교 UI */
.siv3-direct-compare{width:100%;overflow:hidden;border:1px solid rgba(22,224,232,.18);border-radius:18px;background:linear-gradient(145deg,rgba(7,21,32,.99),rgba(4,12,21,.99))}
.siv3-direct-compare__head{display:grid;grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);align-items:center;gap:8px;padding:13px 14px;border-bottom:1px solid rgba(141,154,173,.12)}
.siv3-direct-compare__team{display:flex;align-items:center;gap:8px;min-width:0}
.siv3-direct-compare__team--home{flex-direction:row-reverse;text-align:right}
.siv3-direct-compare__team img{width:34px;height:34px;padding:3px;border:1px solid rgba(22,224,232,.18);border-radius:11px;object-fit:contain;background:rgba(22,224,232,.04)}
.siv3-direct-compare__team strong{min-width:0;color:#f2f7fb;font-size:13px;font-weight:950;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.siv3-direct-compare__team small{display:block;margin-top:2px;color:#7f8fa4;font-size:9px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.siv3-direct-compare__center{color:#617187;font-size:9px;font-weight:950;text-align:center;letter-spacing:.08em}
.siv3-direct-compare__summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;background:rgba(141,154,173,.1);border-bottom:1px solid rgba(141,154,173,.08)}
.siv3-direct-compare__summary span{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 11px;background:#07121e}
.siv3-direct-compare__summary small{color:#73849a;font-size:8.5px;font-weight:900}
.siv3-direct-compare__summary b{color:var(--siv3-success);font-size:10px;text-align:right}
.siv3-direct-compare__rows{padding:3px 12px 7px}
.siv3-direct-compare__row{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(78px,112px) minmax(0,1fr);align-items:center;gap:7px;padding:11px 0 14px;border-bottom:1px solid rgba(141,154,173,.09)}
.siv3-direct-compare__row:last-child{border-bottom:0}
.siv3-direct-compare__value{min-width:0;color:#e4ebf2;font-size:14px;font-weight:950;line-height:1.25;overflow-wrap:anywhere}
.siv3-direct-compare__value--away{text-align:right}
.siv3-direct-compare__value--home{text-align:left}
.siv3-direct-compare__value.is-better{color:var(--siv3-success)}
.siv3-direct-compare__value.is-weaker{color:#748399}
.siv3-direct-compare__label{color:#8d9caf;font-size:9.5px;font-weight:900;text-align:center;word-break:keep-all}
.siv3-direct-compare__bar{--away-ratio:50%;--home-ratio:50%;position:absolute;left:50%;bottom:5px;width:min(78%,460px);height:4px;display:grid;grid-template-columns:var(--away-ratio) var(--home-ratio);gap:4px;transform:translateX(-50%);overflow:hidden;border-radius:999px;background:rgba(141,154,173,.07)}
.siv3-direct-compare__bar i{display:block;width:100%;height:100%;min-width:0}
.siv3-direct-compare__bar i:first-child{background:linear-gradient(90deg,rgba(22,224,232,.12),var(--siv3-accent));border-radius:999px 0 0 999px}
.siv3-direct-compare__bar i:last-child{background:linear-gradient(90deg,var(--siv3-success),rgba(43,213,118,.12));border-radius:0 999px 999px 0}
.siv3-ratio-05{--away-ratio:5%;--home-ratio:95%}.siv3-ratio-10{--away-ratio:10%;--home-ratio:90%}.siv3-ratio-15{--away-ratio:15%;--home-ratio:85%}.siv3-ratio-20{--away-ratio:20%;--home-ratio:80%}.siv3-ratio-25{--away-ratio:25%;--home-ratio:75%}.siv3-ratio-30{--away-ratio:30%;--home-ratio:70%}.siv3-ratio-35{--away-ratio:35%;--home-ratio:65%}.siv3-ratio-40{--away-ratio:40%;--home-ratio:60%}.siv3-ratio-45{--away-ratio:45%;--home-ratio:55%}.siv3-ratio-50{--away-ratio:50%;--home-ratio:50%}.siv3-ratio-55{--away-ratio:55%;--home-ratio:45%}.siv3-ratio-60{--away-ratio:60%;--home-ratio:40%}.siv3-ratio-65{--away-ratio:65%;--home-ratio:35%}.siv3-ratio-70{--away-ratio:70%;--home-ratio:30%}.siv3-ratio-75{--away-ratio:75%;--home-ratio:25%}.siv3-ratio-80{--away-ratio:80%;--home-ratio:20%}.siv3-ratio-85{--away-ratio:85%;--home-ratio:15%}.siv3-ratio-90{--away-ratio:90%;--home-ratio:10%}.siv3-ratio-95{--away-ratio:95%;--home-ratio:5%}
.siv3-direct-compare__empty{margin:0;padding:15px;color:#8190a3;font-size:11px;text-align:center}

.siv3-odds-board{display:grid;gap:10px;margin-top:10px}
.siv3-odds-market{overflow:hidden;border:1px solid rgba(22,224,232,.16);border-radius:16px;background:#07121e}
.siv3-odds-market__head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:11px 13px;border-bottom:1px solid rgba(141,154,173,.1);background:rgba(255,255,255,.018)}
.siv3-odds-market__head h3{margin:0!important;color:#f2f7fb!important;font-size:12px!important;font-weight:950}
.siv3-odds-market__head span{color:var(--siv3-success);font-size:9px;font-weight:900;text-align:right}
.siv3-odds-table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
.siv3-odds-table{width:100%;min-width:440px;border-collapse:collapse;table-layout:fixed}
.siv3-odds-table th,.siv3-odds-table td{padding:9px 8px;border-bottom:1px solid rgba(141,154,173,.08);text-align:center;white-space:nowrap}
.siv3-odds-table th{color:#78899e;font-size:8px;font-weight:900;background:#06101b}
.siv3-odds-table td{color:#e3ebf2;font-size:10px;font-weight:800}
.siv3-odds-table th:first-child,.siv3-odds-table td:first-child{width:26%;text-align:left;padding-left:12px}
.siv3-odds-table tbody tr:last-child td{border-bottom:0}
.siv3-odds-table td.is-best{color:var(--siv3-success);font-weight:950}
.siv3-odds-table td.is-line{color:var(--siv3-accent)}
.siv3-odds-board__note{margin:0;color:#75869a;font-size:9px;line-height:1.55}

.siv3-compact-fallback{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;margin:0;overflow:hidden;border:1px solid rgba(22,224,232,.14);border-radius:15px;background:rgba(141,154,173,.08)}
.siv3-compact-fallback>div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 11px;background:#07121e}
.siv3-compact-fallback dt{color:#7d8da2;font-size:9px;font-weight:900}
.siv3-compact-fallback dd{margin:0;color:#eef4f8;font-size:11px;font-weight:950;text-align:right;overflow-wrap:anywhere}
.siv3-compare-empty{margin:0;padding:14px;border:1px solid rgba(141,154,173,.12);border-radius:14px;color:#8190a3;font-size:11px;text-align:center;background:#07121e}

@media(max-width:760px){
  .siv3-direct-compare__head{grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);padding:10px 9px}
  .siv3-direct-compare__team{gap:5px}
  .siv3-direct-compare__team img{width:29px;height:29px;border-radius:9px}
  .siv3-direct-compare__team strong{font-size:10.5px}
  .siv3-direct-compare__team small{font-size:7.5px}
  .siv3-direct-compare__center{font-size:7px}
  .siv3-direct-compare__summary{grid-template-columns:repeat(2,minmax(0,1fr))}
  .siv3-direct-compare__summary span{padding:8px 9px}
  .siv3-direct-compare__rows{padding:2px 8px 6px}
  .siv3-direct-compare__row{grid-template-columns:minmax(0,1fr) 70px minmax(0,1fr);gap:5px;padding:9px 0 12px}
  .siv3-direct-compare__value{font-size:11.5px}
  .siv3-direct-compare__label{font-size:8px}
  .siv3-direct-compare__bar{bottom:4px;height:3px;width:82%}
  .siv3-odds-market__head{padding:9px 10px}
  .siv3-odds-market__head h3{font-size:11px!important}
  .siv3-odds-table{min-width:390px}
  .siv3-odds-table th,.siv3-odds-table td{padding:8px 6px}
  .siv3-odds-table td{font-size:9px}
  .siv3-compact-fallback{grid-template-columns:1fr}
}

/* 1.9.1: 상세 북메이커 표는 화면에서 사용하지 않는다. */
.siv3-analysis-section__body--odds>.siv3-odds-board,.siv3-analysis-section__body--odds>.siv3-odds-details{display:none!important}

/* ScoreInsight: 그래프 아래 중복 승패 배당 제거, 핸디캡·언더오버만 표시 */
.siv3-market-board.siv3-market-board--compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:0}
@media(max-width:760px){
  .siv3-market-board.siv3-market-board--compact{grid-template-columns:1fr}
}

/* MLB injury cards: Manager strips inline <style>, so layout belongs in the theme. */
.siv3-injury-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.siv3-injury-card{min-width:0;padding:11px;border:1px solid rgba(141,154,173,.16);border-radius:14px;background:#07121e}
.siv3-injury-card small,.siv3-injury-card strong,.siv3-injury-card span{display:block}
.siv3-injury-card small{color:#7f8fa4;font-size:8.5px}
.siv3-injury-card strong{margin-top:4px;color:#f2f7fb;font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.siv3-injury-card span{margin-top:5px;color:#9aa8b8;font-size:9.5px;line-height:1.4}
@media(min-width:768px){.siv3-injury-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:1180px){.siv3-injury-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

.siv3-injury-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;width:100%!important;min-width:0!important}
.siv3-injury-card{min-width:0!important;overflow:hidden!important;padding:12px!important;border:1px solid rgba(141,154,173,.16)!important;border-radius:14px!important;background:#0a1523!important}
.siv3-injury-card>*{min-width:0!important;overflow-wrap:anywhere!important;word-break:keep-all!important}
@media(min-width:768px){.siv3-injury-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(min-width:1180px){.siv3-injury-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}}

/* 1.10.2 soccer three-way odds */
.siv3-market-card--three-way{grid-column:1/-1}
.siv3-three-way-odds{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.siv3-three-way-odds>span{display:grid;gap:4px;min-width:0;padding:14px 10px;border:1px solid rgba(141,154,173,.14);border-radius:12px;background:rgba(255,255,255,.03);text-align:center}
.siv3-three-way-odds>span.is-draw{background:rgba(22,224,232,.06);border-color:rgba(22,224,232,.18)}
.siv3-three-way-odds small{color:#8c9aad;font-size:10px;line-height:1.3;word-break:keep-all}
.siv3-three-way-odds b{color:#f4f8fb;font-size:22px;line-height:1.1;font-variant-numeric:tabular-nums}
.siv3-three-way-odds em{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--siv3-muted);font-size:9px;font-style:normal}
@media(max-width:640px){
  .siv3-three-way-odds{gap:5px}
  .siv3-three-way-odds>span{padding:11px 5px}
  .siv3-three-way-odds small{font-size:9px}
  .siv3-three-way-odds b{font-size:18px}
  .siv3-three-way-odds em{font-size:8px}
}
