/* Shared branding and compact data tools. */
.sidebar{background:#0b0f17;overflow-y:auto}.brand-row{display:flex;align-items:center;justify-content:space-between;gap:16px}.brand{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:0 8px;min-width:0;letter-spacing:normal}.brand-logo{display:block;width:170px;max-width:100%;height:auto}.brand-subtitle{display:block;color:#a9b2bf;font-size:11px;font-weight:450;line-height:1.6;letter-spacing:0;max-width:190px}.menu-toggle{display:none}.nav-heading{margin-top:35px}.sidebar-bottom{font-size:9px;letter-spacing:1.3px}.topbar{flex-wrap:nowrap;position:relative;z-index:20;gap:20px}.header-page-title{font-size:16px;font-weight:650;line-height:1.4;min-width:0}.top-actions{flex-wrap:nowrap;gap:16px}.channel-control{min-width:150px;font-size:11px}.channel-control select{font-size:13px;min-height:40px}.data-actions{position:relative}.data-actions>summary{list-style:none;min-height:40px;font-size:12px;cursor:pointer}.data-actions>summary::-webkit-details-marker{display:none}.data-actions[open]>summary{background:#f1f3f5;border-color:#bdc5cf}.data-panel{position:absolute;right:0;top:calc(100% + 10px);width:min(300px,calc(100vw - 32px));padding:18px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 16px 45px #14253a22;display:flex;flex-direction:column;gap:12px}.data-panel .snapshot{display:block;font-size:12px;white-space:normal;color:#526377}.data-panel p{font-size:11px;line-height:1.6;overflow-wrap:anywhere}.data-panel .button{justify-content:flex-start;min-height:44px;font-size:12px}.data-panel .text-button{text-align:left;min-height:40px}.channel-context{margin:14px 38px 0;border:1px solid #dbe5df;border-radius:7px;background:#f0f5f2;font-size:11px;color:#496554}.channel-context>summary{padding:10px 14px;cursor:pointer;min-height:38px}.channel-context .channel-notice{margin:0;padding:0 14px 13px;border:0;background:none}.table-wrap:focus-visible{outline:2px solid #dfa399;outline-offset:3px}.table-wrap.has-overflow:before{display:none}
@media(max-width:1180px) and (min-width:901px){.brand-logo{width:150px}.brand-subtitle{font-size:10px}}
/* Phones and tablets share a single compact navigation menu. */
@media(max-width:900px){
  :root{--sidebar:0px}main{margin-left:0}.sidebar{position:sticky;top:0;inset:auto;z-index:40;width:100%;padding:12px 20px;display:block;overflow:visible}.brand{padding:0;gap:5px}.brand-logo{width:146px}.brand-subtitle{font-size:11px;max-width:none;line-height:1.5;color:#c0c7d1}.brand-row{gap:12px}.menu-toggle{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:8px 12px;color:#fff;border:1px solid #353d49;border-radius:8px;font-size:11px;flex-shrink:0}.menu-toggle .icon{width:19px;height:19px}.menu-toggle[aria-expanded=true]{background:#252d39;border-color:#758293}.nav-heading,.sidebar-note,.sidebar-bottom{display:none}.sidebar #mainNavigation{display:none;margin:15px 0 0;gap:6px;max-height:calc(100dvh - 130px);overflow-y:auto}.sidebar.menu-open #mainNavigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar .nav-item{justify-content:flex-start;width:100%;min-height:46px;margin:0;gap:10px;padding:11px 13px;font-size:12px}.sidebar .nav-item .icon{width:17px;height:17px}.sidebar .nav-dot{display:none}.topbar{padding:12px 20px;min-height:72px;gap:14px}.header-page-title{flex:1;font-size:14px}.top-actions{width:auto;flex-shrink:0;gap:12px}.channel-control{min-width:0;width:154px;font-size:10px}.channel-control select{margin-top:3px;font-size:16px;min-height:44px;padding:8px}.data-actions>summary{min-height:44px;padding:10px;font-size:12px}.channel-context{margin:12px 20px 0}.channel-context>summary{min-height:44px;font-size:12px}.channel-context .channel-notice{font-size:12px;line-height:1.7}.page{padding:24px 20px;max-width:100%}.page-heading{align-items:flex-start;flex-wrap:wrap;gap:14px}.page-heading h1{font-size:30px}.page-heading p{font-size:13px;line-height:1.7}.page-heading>.button{font-size:12px;min-height:44px;padding:10px 14px}.page-heading>.button .icon{width:17px;height:17px}.button{min-height:44px;font-size:12px;padding:10px 13px}.text-button{min-height:40px;font-size:12px}.filterbar{gap:12px;padding:14px}.filterbar>label{min-width:0;flex:1 1 calc(50% - 12px);font-size:12px}.filterbar .search-label{flex:1 1 100%;min-width:0}select,input[type=search]{font-size:16px;min-height:44px}.search-field .icon{top:20px}.period-caption{font-size:11px;line-height:1.7}.filter-note{font-size:12px}.metrics{gap:12px}.metric{padding:17px 15px;min-width:0}.metric-label{font-size:11px;line-height:1.5}.metric-footer{font-size:11px;line-height:1.6}.metric-value{font-size:29px}.metric-value.vehicle-name{font-size:20px;overflow-wrap:anywhere}.panel{padding:20px 17px}.panel-heading{flex-wrap:wrap;align-items:flex-start;gap:12px}.panel-heading h2{font-size:18px}.panel-heading p,.panel-note,.chart-footer{font-size:12px;line-height:1.7}.compact-label select{font-size:16px;min-height:44px}.table-footer{font-size:11px;align-items:center;line-height:1.6}th{font-size:11px}td{font-size:12px;padding-top:16px;padding-bottom:16px}.vehicle-link{font-size:13px;min-height:36px;display:flex;align-items:center}.vehicle-cell small{font-size:11px;line-height:1.5}.table-wrap.has-overflow:before{content:'Swipe to see more columns →';display:block;position:sticky;left:0;color:#7b8798;font-size:11px;padding:9px 0 12px;background:#fff}.table-wrap{overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch}.table-wrap.has-overflow table td:first-child,.table-wrap.has-overflow table th:first-child{position:sticky;left:0;background:#fff;z-index:1}.table-wrap.has-overflow #rankingTable td:first-child,.table-wrap.has-overflow #rankingTable th:first-child,.table-wrap.has-overflow #rackSetsTable td:first-child,.table-wrap.has-overflow #rackSetsTable th:first-child{position:static}.table-wrap.has-overflow #rankingTable td:nth-child(2),.table-wrap.has-overflow #rankingTable th:nth-child(2),.table-wrap.has-overflow #rackSetsTable td:nth-child(2),.table-wrap.has-overflow #rackSetsTable th:nth-child(2){position:sticky;left:0;background:#fff;z-index:1;min-width:150px;max-width:180px;white-space:normal}.race-filters>label{min-width:0;flex-basis:calc(50% - 12px)}.speed-label select{font-size:16px;min-height:44px}.race-player .timeline input{height:36px}.rack-controls select{font-size:16px}.rack-controls{flex-wrap:wrap}.rack-controls .button{white-space:normal}.observation-card p,.observation-action,.observations-section p,.observation-context p{font-size:12px}.observation-context h3{font-size:20px}.observation-methods{font-size:12px}.notice{margin:14px 20px 0;font-size:12px}.dialog-header h2{font-size:24px;overflow-wrap:anywhere}.detail-metrics small{font-size:11px}.detail-actions .button{flex:1}.detail-breadcrumbs,.detail-breadcrumbs button{font-size:12px}.detail-breadcrumbs button{min-height:36px}.detail-chart-heading{flex-wrap:wrap}#detailLayerNote,#detailCountNote,#detailChartNote,.detail-year-note{font-size:12px}
}
@media(max-width:480px){
  .sidebar{padding:12px 16px}.brand-logo{width:134px}.brand-subtitle{font-size:10px}.menu-toggle{width:44px;padding:10px}.menu-toggle span{display:none}.topbar{padding:10px 16px;gap:10px}.header-page-title{font-size:12px;max-width:120px}.top-actions{gap:8px}.channel-control{width:138px}.data-actions>summary{padding:9px;font-size:11px;gap:6px}.data-actions>summary .icon{width:15px}.page{padding:22px 16px}.page-heading{flex-direction:column;align-items:stretch}.page-heading h1{font-size:28px}.page-heading>.button{align-self:flex-start}.channel-context{margin:12px 16px 0}.metrics{gap:10px}.metric{padding:15px 12px}.metric-value{font-size:27px}.metric-value.vehicle-name{font-size:18px}.panel{padding:18px 14px}.filterbar{padding:12px}.notice{margin:12px 16px 0}.detail-metrics{grid-template-columns:1fr 1fr}.detail-metrics>div:last-child{grid-column:1/-1}.detail-metrics strong{font-size:23px}.data-panel{padding:16px}.observations-section table td:first-child{max-width:180px}.table-wrap table{font-size:12px}
}

@media(max-width:900px){.header-page-title{overflow-wrap:anywhere}.rivals-panel>select{font-size:16px;min-height:44px}.change{font-size:11px}.data-actions>summary:focus-visible{outline:3px solid #dfa399;outline-offset:3px}}
