:root{--text:#374151;--text-light:#6b7280;--text-heading:#111827;--bg:#f9fafb;--surface:#fff;--border:#e5e7eb;--accent:#2563eb;--accent-light:#dbeafe;--danger:#ef4444;--tooltip-bg:#1e293b;--tooltip-text:#f8fafc;--grid-stroke:#e5e7eb;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;font:14px/1.5 system-ui,-apple-system,sans-serif}@media (prefers-color-scheme:dark){:root{--text:#d1d5db;--text-light:#9ca3af;--text-heading:#f3f4f6;--bg:#0d1b2a;--surface:#1b2a3b;--border:#2d3f52;--accent:#3b82f6;--accent-light:#1e3a5f;--danger:#f87171;--tooltip-bg:#f1f5f9;--tooltip-text:#1e293b;--grid-stroke:#2d3f52}}*,:before,:after{box-sizing:border-box}body{margin:0}#root{max-width:1100px;margin:0 auto;padding:0 16px}.app__header{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:28px 0 16px;display:flex}.app__logo-link{border-radius:4px;flex-shrink:0;line-height:0;text-decoration:none;transition:opacity .15s}.app__logo-link:hover{opacity:.8}.app__logo-link:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.app__logo{width:auto;height:56px}@media (width<=600px){.app__header{gap:10px;padding:16px 0 12px}.app__logo{height:40px}.player-search{flex-basis:100%;order:10;min-width:0;max-width:none}.app__toolbar{flex-direction:column;align-items:flex-start}.player-list{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;max-width:100%;overflow-x:auto}.baseline-toggle{flex-wrap:wrap}}.app__toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.app__empty{text-align:center;padding:80px 0}.app__empty-headline{color:var(--text-heading);text-transform:lowercase;margin:0 0 6px;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:28px;font-weight:700}.app__empty-sub{color:var(--text-light);margin:0 0 24px;font-size:15px}.app__presets{flex-wrap:wrap;justify-content:center;gap:8px;display:flex}.app__preset{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:16px;padding:6px 14px;font-size:13px;transition:border-color .15s,color .15s}.app__preset:hover:not(:disabled){border-color:var(--accent);color:var(--accent)}.app__preset:disabled{opacity:.5;cursor:default}.app__footer{text-align:center;color:var(--text-light);border-top:1px solid var(--border);margin-top:32px;padding:24px 0;font-size:12px}.app__loading{text-align:center;color:var(--text-light);padding:48px 0}.app__error{text-align:center;color:var(--danger);padding:24px;animation:4s ease-in-out forwards fade-in-out}@keyframes fade-in-out{0%{opacity:0}8%{opacity:1}75%{opacity:1}to{opacity:0}}.app__main{padding-bottom:48px}.player-search{flex:1;min-width:260px;max-width:400px;position:relative}.player-search__input{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:6px;outline:none;padding:8px 12px;font-size:14px;transition:border-color .15s}.player-search__input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.player-search__spinner{border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;width:16px;height:16px;animation:.6s linear infinite spin;position:absolute;top:50%;right:12px;transform:translateY(-50%)}@keyframes spin{to{transform:translateY(-50%)rotate(360deg)}}.player-search__dropdown{background:var(--surface);border:1px solid var(--border);z-index:100;border-radius:6px;max-height:320px;margin:4px 0 0;padding:4px 0;list-style:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a}.player-search__item{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.player-search__item:hover,.player-search__item--active{background:var(--accent-light)}.player-search__name{color:var(--text-heading);font-weight:500}.player-search__meta{color:var(--text-light);white-space:nowrap;font-size:12px}.player-list{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.player-list__chip{background:var(--surface);border:1px solid var(--border);white-space:nowrap;border-radius:16px;align-items:center;gap:6px;padding:4px 8px 4px 10px;font-size:13px;display:inline-flex}.player-list__dot-wrap{flex-shrink:0;position:relative}.player-list__dot-btn{cursor:pointer;border:none;border-radius:50%;width:10px;height:10px;padding:0;transition:transform .1s}.player-list__dot-btn:hover{transform:scale(1.3)}.player-list__color-picker{background:var(--surface);border:1px solid var(--border);z-index:70;border-radius:8px;grid-template-columns:repeat(5,1fr);gap:4px;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%);box-shadow:0 4px 12px #0000001a}.player-list__color-swatch{cursor:pointer;border:2px solid #0000;border-radius:50%;width:20px;height:20px;padding:0;transition:transform .1s}.player-list__color-swatch:hover{transform:scale(1.2)}.player-list__color-swatch--active{border-color:var(--text-heading)}.player-list__name{color:var(--text-heading);font-weight:500}.player-list__remove{cursor:pointer;color:var(--text-light);background:0 0;border:none;border-radius:50%;padding:0 2px;font-size:15px;line-height:1;transition:color .15s}.player-list__remove:hover{color:var(--danger,#dc2626)}.player-list__limit{color:var(--text-light);font-size:12px}.share-btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap;border-radius:4px;align-items:center;gap:5px;padding:4px 12px;font-size:13px;transition:border-color .15s,color .15s;display:inline-flex}.share-btn:hover{border-color:var(--accent);color:var(--accent)}.share-btn--copied{border-color:var(--accent);color:var(--accent);animation:.3s ease-out copied-pulse}@keyframes copied-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}.share-btn__icon{font-size:15px;line-height:1}.baseline-toggle{align-items:center;gap:6px;display:flex}.baseline-toggle__label{color:var(--text-light);margin-right:4px;font-size:13px}.baseline-toggle__btn{border:1px solid var(--border);background:var(--surface);color:var(--text);cursor:pointer;border-radius:4px;padding:4px 12px;font-size:13px;transition:background .15s,border-color .15s}.baseline-toggle__btn:hover{border-color:var(--accent)}.baseline-toggle__btn--active{background:var(--accent);color:#fff;border-color:var(--accent)}.baseline-toggle__info-wrap{position:relative}.baseline-toggle__info{color:var(--text-light);cursor:pointer;-webkit-user-select:none;user-select:none;background:0 0;border:none;margin-left:2px;padding:0 2px;font-size:16px;line-height:1;transition:color .15s}.baseline-toggle__info:hover{color:var(--accent)}.baseline-toggle__popover{width:280px;color:var(--text);background:var(--surface);border:1px solid var(--border);z-index:50;border-radius:8px;padding:12px 14px;font-size:13px;line-height:1.5;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 4px 12px #0000001a}.baseline-toggle__popover-intro{color:var(--text-heading);margin:0 0 8px;font-weight:500}.baseline-toggle__popover-row{align-items:center;gap:8px;margin-bottom:4px;font-size:12px;display:flex}.baseline-toggle__swatch{border-radius:3px;flex-shrink:0;width:32px;height:14px}.baseline-toggle__swatch--green{background:#228b2273}.baseline-toggle__swatch--red{background:#dc262673}.baseline-toggle__popover-modes{border-top:1px solid var(--border);margin:10px 0 0;padding-top:8px}.baseline-toggle__popover-modes dt{color:var(--text-heading);margin-top:6px;font-weight:600}.baseline-toggle__popover-modes dt:first-child{margin-top:0}.baseline-toggle__popover-modes dd{color:var(--text-light);margin:2px 0 0;font-size:12px}.app__section-label{color:var(--text-heading);text-transform:lowercase;margin:20px 0 6px;font-family:Barlow Condensed,Arial Narrow,sans-serif;font-size:18px;font-weight:700}.app__section-label:first-child{margin-top:0}.heatmap-table-wrapper{margin-bottom:16px;overflow-x:auto}.heatmap-table{border-collapse:separate;border-spacing:0;font-variant-numeric:tabular-nums;width:100%;font-size:13px}.heatmap-table th{color:var(--text-light);text-align:center;border-bottom:2px solid var(--border);white-space:nowrap;padding:6px 10px;font-size:12px;font-weight:500}.heatmap-table__stat-col{z-index:10;background:var(--bg);position:sticky;left:0;text-align:left!important;color:var(--text-heading)!important;font-size:13px!important;font-weight:600!important}.heatmap-table__stat-header{cursor:pointer;background:var(--bg);transition:background .1s}.heatmap-table__stat-header>td{border-top:1px solid var(--border)}.heatmap-table__stat-header:hover,.heatmap-table__stat-header:hover>.heatmap-table__label{background:var(--accent-light)}.heatmap-table__stat-header--selected{background:var(--accent-light);outline:2px solid var(--accent);outline-offset:-2px}.heatmap-table__stat-header--selected>.heatmap-table__label{background:var(--accent-light)}.heatmap-table__label{color:var(--text-heading);white-space:nowrap;border-right:1px solid var(--border);z-index:10;background:var(--bg);padding:5px 10px;font-weight:600;position:sticky;left:0}.heatmap-table__chevron{color:var(--accent);vertical-align:-1px;margin-right:6px;font-size:16px;transition:transform .15s;display:inline-block}.heatmap-table__chevron--open{transform:rotate(90deg)}.heatmap-table__cell--empty{border-bottom:none}.heatmap-table__player-label{color:var(--text-light);white-space:nowrap;border-right:1px solid var(--border);z-index:10;background:var(--bg);border-left:3px solid #0000;padding:3px 10px 3px 12px;font-size:12px;position:sticky;left:0}.heatmap-table__cell{text-align:center;white-space:nowrap;border-bottom:1px solid var(--border);padding:5px 10px;transition:background-color .2s}.heatmap-table__cell--h2h{vertical-align:middle;padding-top:4px;padding-bottom:4px;line-height:1.2}.heatmap-table__h2h-val{font-size:12px;font-weight:600;display:block}.heatmap-table__h2h-legend{color:var(--text-light);justify-content:center;gap:16px;padding:8px 0 4px;font-size:12px;display:flex}.heatmap-table__h2h-legend-item{align-items:center;gap:5px;display:flex}.heatmap-table__h2h-legend-dot{border-radius:50%;width:8px;height:8px}.heatmap-table__chart-row td{border-bottom:2px solid var(--border);padding:0}.heatmap-table__header-tip,.heatmap-table td[data-tip]{cursor:default;position:relative}.heatmap-table__header-tip[data-tip]:hover:after{content:attr(data-tip);white-space:nowrap;color:var(--tooltip-text);background:var(--tooltip-bg);z-index:60;pointer-events:none;border-radius:5px;padding:5px 9px;font-size:12px;line-height:1.4;position:absolute;top:calc(100% + 6px);left:50%;transform:translate(-50%)}.heatmap-table td[data-tip]:hover:after{content:attr(data-tip);white-space:nowrap;color:var(--tooltip-text);background:var(--tooltip-bg);z-index:60;pointer-events:none;border-radius:5px;padding:5px 9px;font-size:12px;line-height:1.4;position:absolute;bottom:calc(100% + 6px);left:50%;transform:translate(-50%)}.stat-chart-enter{animation:.25s ease-out chart-slide-in}@keyframes chart-slide-in{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:400px;padding-top:16px;padding-bottom:16px}}.stat-chart{background:var(--surface);border:1px solid var(--border);border-radius:8px;margin-top:16px;padding:16px;overflow:hidden}.stat-chart__title{color:var(--text-heading);margin:0 0 12px;font-size:14px;font-weight:500}.app__preset:focus-visible,.share-btn:focus-visible,.baseline-toggle__btn:focus-visible,.baseline-toggle__info:focus-visible,.player-list__remove:focus-visible,.player-list__dot-btn:focus-visible,.player-list__color-swatch:focus-visible,.heatmap-table__stat-header:focus-visible{outline:2px solid var(--accent);outline-offset:2px}
