.pw-explorer { padding-top:2rem; padding-bottom:2rem; }
.pw-explorer header { max-width:850px; margin-bottom:1.5rem; }
.pw-explorer-filters { display:grid; grid-template-columns:1fr 1.5fr 1.3fr 1.4fr auto; gap:1rem; align-items:end; padding:1rem; margin-bottom:1rem; }
.pw-explorer label { font-weight:500; }
.pw-explorer-filters label { display:block; margin-bottom:.4rem; }
.pw-explorer select,.pw-explorer button { min-height:44px; }
.pw-explorer-selection { padding:1.25rem; margin-bottom:2rem; }
.pw-explorer-selection legend { font-size:1.1rem; font-weight:600; }
.pw-explorer-player-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.6rem; }
.pw-explorer-player { display:flex; gap:.6rem; align-items:center; border:1px solid #dce3ed; border-radius:8px; padding:.65rem; min-height:48px; cursor:pointer; overflow-wrap:anywhere; }
.pw-explorer-player:has(input:checked) { border-color:#2563eb; background:#eff6ff; }
.pw-explorer-player input { width:18px; height:18px; flex-shrink:0; accent-color:#2563eb; }
.pw-explorer-selection-actions { display:flex; justify-content:space-between; align-items:center; gap:1rem; margin-top:1rem; }
.pw-explorer-results-heading { display:flex; align-items:start; justify-content:space-between; gap:1rem; flex-wrap:wrap; }
.pw-explorer-coverage { padding:1rem; }
.pw-explorer-chart-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.pw-explorer-chart { padding:1.25rem; min-width:0; }
.pw-explorer-chart h3 { font-size:1.1rem; }
.pw-explorer-chart-row { margin-top:1rem; }
.pw-explorer-chart-label { display:flex; justify-content:space-between; align-items:baseline; gap:.8rem; margin-bottom:.35rem; font-size:.85rem; }
.pw-explorer-chart-label span { overflow-wrap:anywhere; }
.pw-explorer-chart-label strong { white-space:nowrap; font-variant-numeric:tabular-nums; }
.pw-explorer-chart-label small { color:#64748b; }
.pw-explorer-track { height:12px; border-radius:6px; background:#edf1f7; overflow:hidden; }
.pw-explorer-track span { display:block; height:100%; border-radius:6px; }
.pw-explorer-track .is-together { background:#2563eb; }
.pw-explorer-track .is-apart { background:#64748b; }
.pw-explorer-metric-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.pw-explorer-metric-card { padding:1.25rem; min-width:0; }
.pw-explorer-metric-card h4 { font-size:1rem; }
.pw-explorer-metric-card dl { margin-bottom:0; }
.pw-explorer-metric-card dl div { display:flex; justify-content:space-between; gap:1rem; padding:.4rem 0; border-top:1px solid #edf1f7; }
.pw-explorer-metric-card dt { font-size:.85rem; font-weight:400; }
.pw-explorer-metric-card dd { font-weight:600; margin:0; white-space:nowrap; }
.pw-explorer summary { cursor:pointer; min-height:44px; padding:.7rem 0; }
.pw-explorer-method { padding:1rem; margin-top:2rem; }
.pw-explorer-other { margin-top:1rem; border-top:1px solid #dce3ed; }
.pw-explorer-tools { display:flex; flex-wrap:wrap; align-items:center; gap:.75rem; margin:1rem 0; }
.pw-explorer-tools select { width:auto; max-width:100%; }
.pw-explorer-production-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.pw-production-card { padding:1rem; min-width:0; }
.pw-production-card h4 { font-size:1.1rem; overflow-wrap:anywhere; }
.pw-goal-account { padding:.75rem; background:#f1f5f9; border-radius:8px; margin:.75rem 0; }
.pw-goal-account p { margin-bottom:.5rem; }
.pw-explorer-chart-label strong { white-space:normal; text-align:right; }
.pw-production-card h5 { font-size:1rem; margin-top:1rem; }
.pw-production-card dl div { display:flex; justify-content:space-between; align-items:baseline; gap:.7rem; padding:.35rem 0; border-top:1px solid #edf1f7; }
.pw-production-card dt { font-size:.85rem; font-weight:400; }
.pw-production-card dd { margin:0; font-weight:600; text-align:right; font-variant-numeric:tabular-nums; }
.pw-explorer-headings { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.pw-explorer-versus { width:100%; table-layout:fixed; font-variant-numeric:tabular-nums; }
.pw-explorer-versus th,.pw-explorer-versus td { padding:.65rem .35rem; border-bottom:1px solid #e2e8f0; overflow-wrap:anywhere; }
.pw-explorer-versus th:first-child { width:46%; }
.pw-explorer-versus td { text-align:right; }
.pw-explorer-versus thead th:not(:first-child) { text-align:right; }
.pw-explorer-game-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:1rem; }
.pw-explorer-game-list h4 { font-size:.9rem; }
.pw-explorer-game-list p { font-size:.85rem; }
.pw-explorer svg { width:100%; height:auto; display:block; }
.pw-explorer svg circle:focus { outline:2px solid #0f172a; }
.pw-key-a { color:#2563eb; }
.pw-key-b { color:#b45309; }
.pw-explorer [hidden] { display:none !important; }
.pw-explorer-step { font-size:.85rem; font-weight:700; color:#475569; margin-bottom:.5rem; }
.pw-explorer-picker { border:1px solid #dce3ed; border-radius:12px; padding:.5rem 1rem; margin-bottom:1rem; background:#fff; }
.pw-explorer-picker > summary { font-weight:600; }
.pw-explorer-picker > summary span { font-weight:400; margin-left:.5rem; }
.pw-explorer-picker .pw-explorer-selection { border:0; box-shadow:none; padding:.75rem 0; margin:0; }
.pw-explorer-picker .pw-explorer-filters { border:0; box-shadow:none; padding:.75rem 0; margin:0; }
.pw-explorer-coverage-line { display:flex; align-items:baseline; flex-wrap:wrap; gap:.25rem 1.25rem; font-size:.85rem; margin-bottom:1rem; color:#475569; }
.pw-explorer-coverage-line > strong { color:#166534; }
.pw-explorer-coverage-line details { flex-basis:100%; }
.pw-explorer-coverage-line details p { max-width:850px; }
.pw-explorer-coverage-line summary { min-height:36px; }
.pw-explorer-overview-stats { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:.75rem; margin:1rem 0; }
.pw-explorer-overview-stats > div { border:1px solid #dce3ed; border-radius:12px; padding:1rem; background:#f8fafc; min-width:0; }
.pw-explorer-overview-stats span,.pw-explorer-overview-stats small { display:block; font-size:.8rem; color:#64748b; }
.pw-explorer-overview-stats strong { display:block; margin:.3rem 0; font-size:1.5rem; overflow-wrap:anywhere; }
.pw-explorer-tabs { position:sticky; top:0; z-index:20; display:flex; gap:.3rem; overflow-x:auto; padding:.5rem; margin:1rem 0; background:#fff; border:1px solid #dce3ed; border-radius:12px; box-shadow:0 2px 5px #0f172a0d; }
.pw-explorer-tabs a { display:flex; align-items:center; justify-content:center; min-height:44px; padding:.6rem 1rem; border-radius:8px; text-decoration:none; font-weight:600; white-space:nowrap; color:#475569; }
.pw-explorer-tabs a[aria-selected="true"] { color:#fff; background:#2563eb; }
.pw-explorer [data-analysis-panel] { scroll-margin-top:85px; }
.pw-explorer [data-analysis-panel] > h3 { scroll-margin-top:85px; }
.pw-explorer-extra-metrics { padding:.5rem 1rem; }
.pw-explorer-extra-metrics .pw-explorer-metric-grid { margin-top:1rem; }
.pw-shot-inspector { padding:.9rem; background:#eff6ff; border:1px solid #dbeafe; border-radius:10px; margin-top:.75rem; min-height:130px; }
.pw-shot-inspector p { margin:.25rem 0; }
.pw-shot-inspector dl { display:grid; grid-template-columns:1fr 1fr; gap:.75rem; margin:.7rem 0; }
.pw-shot-inspector dt { font-size:.8rem; font-weight:400; color:#64748b; }
.pw-shot-inspector dd { font-size:1.05rem; font-weight:700; margin:0; }
.pw-shot-picker { margin-top:.75rem; }
.pw-shot-picker label { font-size:.8rem; display:block; margin-bottom:.35rem; }
.pw-explorer .pw-shot-marker { cursor:pointer; }
.pw-explorer .pw-shot-marker.is-selected .pw-shot-dot { stroke:#0f172a; stroke-width:1.2; opacity:1; }
.pw-explorer .pw-shot-marker:focus { outline:none; }
.pw-explorer .pw-shot-marker:focus .pw-shot-dot { stroke:#0f172a; stroke-width:1.5; }
@media(max-width:767px) { .pw-explorer-overview-stats { grid-template-columns:repeat(2,minmax(0,1fr)); } .pw-explorer-tabs a { padding:.6rem .85rem; font-size:.9rem; } }
@media(max-width:991px) { .pw-explorer-production-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:575px) { .pw-explorer-production-grid,.pw-explorer-headings,.pw-explorer-game-list { grid-template-columns:1fr; } .pw-explorer-versus { font-size:.85rem; } }
.pw-explorer a:focus-visible,.pw-explorer input:focus-visible,.pw-explorer summary:focus-visible { outline:3px solid #2563eb; outline-offset:3px; }
@media(max-width:1199px) { .pw-explorer-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } .pw-explorer-player-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:767px) { .pw-explorer-chart-grid,.pw-explorer-metric-grid { grid-template-columns:1fr; } .pw-explorer-player-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:399px) { .pw-explorer-filters,.pw-explorer-player-grid { grid-template-columns:1fr; } .pw-explorer-chart,.pw-explorer-metric-card { padding:1rem; } }
