/* soccer/analysis.blade.php 스타일 추출 — 2026-08-12 */
  .anw{max-width:1000px;margin:0 auto;padding:6px;font-size:12px;color:#222;font-family:'Helvetica Neue',Arial,sans-serif}
  .anw a{color:#1565c0;text-decoration:none}
  .an-hd{background:#303030;color:#fff;padding:8px 11px;border-radius:4px 4px 0 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}
  .an-hd b{font-size:15px}.an-hd .mt{color:#bbb;font-size:11px}
  .an-bar{background:#E9E9DF;color:#303030;font-weight:800;padding:5px 10px;margin:11px 0 0;border-left:3px solid #1565c0;font-size:12px;
    display:flex;flex-wrap:wrap;align-items:center;gap:6px}
  .an-t{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums;font-size:11px}
  .an-t th,.an-t td{border:1px solid #e2e2e2;padding:3px 4px;text-align:center;white-space:nowrap}
  .an-t th{background:#f4f3ee;color:#555;font-weight:700;font-size:10.5px}
  .an-t td.lb{background:#faf9f5;font-weight:700;text-align:left}
  .an-note{color:#666;font-size:10.5px;margin:4px 2px 8px;line-height:1.7;background:#faf9f5;padding:5px 8px;border:1px solid #eee}
  .an-note b.r{color:#c0392b}.an-note b.b{color:#2c5aa0}.an-note b.g{color:#127a2e}
  .badge{display:inline-block;color:#fff;font-weight:700;font-size:9.5px;padding:1px 5px;border-radius:2px;min-width:44px;text-align:center}
  .win{color:#c0392b;font-weight:700}.los{color:#2c5aa0}.drw{color:#666}
  .ov{color:#c0392b}.un{color:#2c5aa0}
  .tabs{display:inline-flex;border:1px solid #ccc;border-radius:3px;overflow:hidden}
  .tabs button{border:0;background:#fff;padding:2px 12px;font-size:11px;cursor:pointer;color:#333}
  .tabs button.on{background:#1565c0;color:#fff;font-weight:700}
  .lgchk{font-size:10.5px;font-weight:700;display:inline-flex;align-items:center;gap:2px}
  .oc-tip{position:relative;cursor:help}
  .oc-tip .otb{display:none;position:absolute;z-index:60;left:50%;top:calc(100% + 3px);transform:translateX(-50%);
    background:#fff;border:1px solid #b9b9b9;box-shadow:0 3px 12px rgba(0,0,0,.28);border-radius:4px;
    padding:7px 10px;white-space:nowrap;font-weight:400;color:#333;font-size:11px;text-align:left;line-height:1.85}
  .oc-tip:hover .otb{display:block}.oc-tip .otb em{font-style:normal;font-weight:800;color:#c0392b}
  tr:last-child .oc-tip .otb,tr:nth-last-child(2) .oc-tip .otb{top:auto;bottom:calc(100% + 3px)}
  .odds3{display:flex;gap:6px;margin-top:6px;flex-wrap:wrap}
  .odds3 .oc{flex:1;min-width:150px;background:#faf9f5;border:1px solid #e2e0d8;border-radius:4px;padding:6px 8px}
  .odds3 .oc h4{margin:0 0 4px;font-size:11px;color:#666;font-weight:700}
  .obar{display:flex;height:22px;border-radius:3px;overflow:hidden;font-size:10.5px;font-weight:700;color:#fff}
  .obar .w{background:#c0392b}.obar .d{background:#7f8c8d}.obar .l{background:#2c5aa0}
  .obar span{display:flex;align-items:center;justify-content:center;min-width:0}
  .fix-t td{background:#eaf3fc;color:#333}.fix-t td a{color:#2c5aa0}
  .lu-g{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}
  @media(max-width:640px){.lu-g{grid-template-columns:1fr}}
  .lu-c .lt{font-weight:800;font-size:12px;margin-bottom:3px}
  .lu-c .pos{font-size:10px;color:#888;margin:4px 0 1px;font-weight:700}
  .lu-c .pl{font-size:11px;padding:1px 0}
  .ow-wrap{overflow-x:auto}
  /* 모바일: 통계표 자체를 스크롤 박스로(2026-08-14 사장님 — 야구분석과 동일 원칙).
     구운 HTML 1만장에 래퍼를 못 넣으므로 table display:block 트릭 — 열 눌림 없이 표 안에서 좌우 스크롤 */
  @media(max-width:640px){
    .an-t{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
    .anw{padding:4px 2px}
  }
  .top-tabs{display:flex;gap:5px;flex-wrap:wrap;margin:10px 0 2px;position:sticky;top:0;background:#fff;z-index:5;padding:6px 0;border-bottom:1px solid #e2e0d8}
  .top-tabs .tt{font-size:12px;font-weight:700;color:#555;background:#faf9f5;border:1px solid #ddd;border-radius:7px;padding:7px 13px;cursor:pointer}
  .top-tabs .tt.on{background:#1565c0;color:#fff;border-color:#1565c0}
  .top-tabs .tgroup{display:flex;gap:4px;flex-wrap:wrap;align-items:center;background:#f4f3ee;border:1px solid #e2e0d8;border-radius:9px;padding:4px 6px}
  .top-tabs .glabel{font-size:11px;font-weight:800;color:#888;padding:0 4px;white-space:nowrap}
  tr.cur-game td{background:rgba(58,123,213,.16);font-weight:700}
  th.sortable{cursor:pointer;user-select:none}th.sortable:hover{color:#1565c0}
  .sort-ar{font-size:9px;color:#c8622e}

/* ══ 분석 페이지 통일안 A(2026-09-11 사장님 확정, 시안 claude.ai/code/artifact/bee43e77) ══
   액센트 = 브랜드 오렌지 #e04a00 하나(축구 원산 파랑 #1565c0·베이지 바 #E9E9DF 폐기). 승/패·오버/언더 의미색·배당 변동 하이라이트는 유지.
   외부 CSS라 구운 페이지(축구·농구·배구)에 즉시 적용 — CF는 이 URL 퍼지. 토큰 정본 docs/vb-roadmap.md → 디자인 시안 아트보드 '공통 토큰'. */
@font-face{font-family:'Do Hyeon';src:url('/vendor/fonts/do-hyeon-korean-400-normal.woff2') format('woff2');font-weight:400;font-display:swap}
.anw{color:#222}
.anw a{color:#b83d00}.anw a:hover{color:#e04a00}
.an-hd{background:#faf9f5;color:#222;border:1px solid #e2e0d8;border-radius:8px}
.an-hd b{font-family:'Do Hyeon','Helvetica Neue',Arial,sans-serif;font-size:20px;font-weight:400;letter-spacing:.3px}
.an-hd .mt{color:#6b6b64}
.an-bar{background:transparent;color:#222;border-left:0;border-bottom:1px solid #e2e0d8;padding:6px 0 6px;margin:22px 0 8px;font-size:15px;position:relative}
.an-bar::before{content:"";position:absolute;left:0;bottom:-1px;width:28px;height:3px;background:#e04a00}
.an-bar span{font-size:12px}
.an-t th{background:#f4f3ee;color:#6b6b64}
.an-t th,.an-t td{border-color:#e2e0d8;padding:4px 6px}
.an-t td.lb{background:#faf9f5}
.an-note{background:#faf9f5;border-color:#e2e0d8;color:#6b6b64}
.tabs{border-color:#e2e0d8;border-radius:6px}
.tabs button.on{background:#e04a00;color:#fff}
.top-tabs{border-bottom-color:#e2e0d8}
.top-tabs .tt{border-radius:6px;background:transparent;border-color:transparent;color:#444}
.top-tabs .tt.on{background:#e04a00;color:#fff;border-color:#e04a00}
.top-tabs .tgroup{background:#f4f3ee;border-color:#e2e0d8;border-radius:8px}
.top-tabs .glabel{color:#8a8a82}
.odds3 .oc{background:#fff;border-color:#e2e0d8;border-radius:6px;padding:10px 12px}
.odds3 .oc h4{color:#6b6b64;font-size:12px}
tr.cur-game td{background:rgba(224,74,0,.10)}
th.sortable:hover{color:#b83d00}.sort-ar{color:#e04a00}
.fix-t td{background:#faf9f5}.fix-t td a{color:#b83d00}
.pkx-btn{background:#e04a00}.pkx-btn.o{color:#e04a00;border-color:#e04a00}

/* ══ 공용 헤더 배너 kt-hd(통일안 A 2단계, 2026-09-11) — partials/kt-header.blade.php · 세 줄: 맥락 / 스코어라인 / 라인 스코어 표 ══ */
.kt-hd{background:#faf9f5;border:1px solid #e2e0d8;border-radius:8px;padding:12px 18px 14px;display:flex;flex-direction:column;gap:10px;margin:6px 0 10px;font-family:'Helvetica Neue',Arial,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;color:#222}
.kt-hd .ctx{display:flex;align-items:center;flex-wrap:wrap;gap:10px;font-size:12px;color:#6b6b64}
.kt-hd .ctx .lg{font-weight:700;color:#222}.kt-hd .ctx .rt{margin-left:auto}
.kt-hd .ctx svg{flex:0 0 auto}
.kt-hd .chip{font-size:11px;font-weight:800;padding:2px 8px;border-radius:4px;white-space:nowrap}
.kt-hd .chip.pre{background:#fff;border:1px solid #e2e0d8;color:#444}.kt-hd .chip.live{background:#e04a00;color:#fff}.kt-hd .chip.end{background:#e9e7df;color:#444}
.kt-hd .line{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px}
.kt-hd .team{display:flex;flex-direction:column;gap:4px;min-width:0}.kt-hd .team.h{align-items:flex-end;text-align:right}.kt-hd .team.a{align-items:flex-start}
.kt-hd .name{font-family:'Do Hyeon','Helvetica Neue',Arial,sans-serif;font-size:30px;line-height:1;color:#222;font-weight:400}
.kt-hd .sub{font-size:12px;color:#6b6b64;display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.kt-hd .center{display:flex;flex-direction:column;align-items:center;gap:5px}
.kt-hd .score{font-family:'Do Hyeon',sans-serif;font-size:52px;line-height:1;letter-spacing:4px;color:#222}
.kt-hd .score span{font:inherit;font-size:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;display:inline}
.kt-hd .score span.lead{color:#c0392b}   /* 이겼거나 이기고 있는 팀(2026-09-11 사장님) — span 상속 고정(외부 span 규칙에 크기 깨짐 실착) */
.kt-hd .vs{font-family:'Do Hyeon',sans-serif;font-size:34px;line-height:1;letter-spacing:2px;color:#8a8a82}
.kt-hd .mk{font-size:12.5px;color:#444;text-align:center}.kt-hd .mk b{color:#222}
.kt-hd .f{display:inline-flex;gap:3px;vertical-align:middle}.kt-hd .f span{width:18px;height:18px;border-radius:3px;font-size:11px;font-weight:800;color:#fff;display:inline-flex;align-items:center;justify-content:center}
.kt-hd .f .w{background:#c0392b}.kt-hd .f .l{background:#2c5aa0}.kt-hd .f .d{background:#8a8a82}
.kt-hd .strip{padding-top:10px;border-top:1px solid #e9e7df;display:flex;flex-direction:column;align-items:center;gap:6px}
.kt-hd .strip .cap{font-size:11.5px;color:#6b6b64;text-align:center}
.kt-hd .ls{border-collapse:collapse;font-variant-numeric:tabular-nums;margin:0 auto;max-width:100%}
.kt-hd .ls th,.kt-hd .ls td{border:1px solid #e2e0d8;padding:4px 9px;text-align:center;font-size:12px;min-width:26px;white-space:nowrap}
.kt-hd .ls th{background:#f4f3ee;color:#6b6b64;font-weight:700;font-size:11px}
.kt-hd .ls td.tm{text-align:left;font-weight:700;background:#faf9f5;min-width:70px}
.kt-hd .ls td.tot{font-weight:800;background:#fff7e0}.kt-hd .ls td.hi{color:#c0392b;font-weight:800}.kt-hd .ls td.lo{color:#2c5aa0;font-weight:800}.kt-hd .ls td.pre{color:#c9c7bf}
@media(max-width:640px){
  .kt-hd{padding:12px 12px 12px}.kt-hd .line{gap:10px}.kt-hd .name{font-size:22px}.kt-hd .score{font-size:40px;letter-spacing:3px}.kt-hd .vs{font-size:26px}
  .kt-hd .team.h,.kt-hd .team.a{align-items:center;text-align:center}.kt-hd .sub{justify-content:center}.kt-hd .ctx .rt{margin-left:0;flex-basis:100%}
  .kt-hd .strip{overflow-x:auto;align-items:flex-start}.kt-hd .ls th,.kt-hd .ls td{padding:3px 6px;font-size:11px}
}
/* 야구 뷰(.bban) 표 규칙이 헤더 라인스코어 표를 덮는 것 차단(2026-09-11 스크린샷 실착: 전폭·오렌지 머리행·줄무늬) */
.bban .kt-hd table.ls{width:auto;table-layout:auto;margin:0 auto}
.bban .kt-hd .ls thead th{background:#f4f3ee;color:#6b6b64;font-size:11px;padding:4px 9px;border:1px solid #e2e0d8}
.bban .kt-hd .ls tbody td{padding:4px 9px;border:1px solid #e2e0d8;white-space:nowrap}
.bban .kt-hd .ls tbody tr,.bban .kt-hd .ls tbody tr:nth-child(even){background:transparent}
/* 연장 열(야구 10회~): 옅은 오렌지 바탕으로 정규 이닝과 구분(2026-09-12) */
.kt-hd .ls th.x{background:#f3c4a6 !important;color:#7a2a00 !important}   /* !important: app-neo.css 'thead th{background:#fdeee2 !important}' 가 전 표 머리행을 강제 */
.kt-hd .ls td.x{background:#fdeee3}
/* 모바일: .bban 덮어쓰기(9px 패딩)가 미디어쿼리 압축을 이기던 것 수정 — 12~13열까지 전폭, 그 이상은 strip 안에서만 가로 스크롤(본문 스크롤 없음) */
@media(max-width:640px){
  .bban .kt-hd .ls thead th,.bban .kt-hd .ls tbody td{padding:3px 4px;font-size:11px;min-width:0}
  .bban .kt-hd .ls td.tm{min-width:0;padding-left:5px;padding-right:5px}
  .bban .kt-hd .strip{overflow-x:auto;-webkit-overflow-scrolling:touch}
}
.bban .kt-hd .ls td.tm{background:#faf9f5}.bban .kt-hd .ls td.tot{background:#fff7e0}
.kt-hd .ctx .rt{white-space:normal;text-align:right;flex:1 1 160px;min-width:0}
.bban .kt-hd{padding:12px 18px 14px !important}   /* 야구 뷰 padding 리셋이 헤더 박스를 0으로 덮음(우측 텍스트 잘림 실착) */
