/* Final R24 geometry with live-controller integration. */
html[data-v2] { color-scheme:dark; }
body[data-v2] { font-family:Inter,"Segoe UI",Arial,sans-serif; isolation:isolate; }
body[data-v2]::before,body[data-v2]::after { display:none; }
body[data-v2] .track-backdrop { z-index:0; pointer-events:none; }
/* Static track photos between short fades; no continuous zoom or paint pulses. */
body[data-v2] .track-layer,body[data-v2] .track-layer.is-active { animation:none; transform:none; }
body[data-v2] .points-pulse { animation:none; color:#ffe48d; text-shadow:0 0 5px #ffc33655; }
body[data-v2] .progress span::after { animation:none; opacity:0; transform:translateX(-120%); }
body[data-v2] .modal-overlay:not(.is-open) .loading::before { animation:none; }
body[data-v2].v2-motion-paused *,body[data-v2].v2-motion-paused *::before,body[data-v2].v2-motion-paused *::after { animation-play-state:paused!important; }
body[data-v2].v2-motion-paused .track-layer { transition:none; }
body[data-v2] [data-dock-open="false"] .sidebar-content *,body[data-v2] [data-dock-open="false"] .sidebar-content *::before,body[data-v2] [data-dock-open="false"] .sidebar-content *::after { animation-play-state:paused!important; }
body[data-v2] .site-shell { position:relative; z-index:1; }
/* Medal colors follow the absolute rank, never the visible row position. */
body[data-v2] #v2-rating-table tbody tr td:first-child { color:var(--muted); }
body[data-v2] #v2-rating-table .rank-gold { color:#f7cc43; }
body[data-v2] #v2-rating-table .rank-silver { color:#c3d0df; }
body[data-v2] #v2-rating-table .rank-bronze { color:#d69a65; }
body[data-v2] .table-footer { display:grid; grid-template-columns:auto minmax(0,1fr) auto; align-items:center; gap:10px; }
body[data-v2] .pagination { justify-content:center; gap:4px; min-width:0; }
body[data-v2] .pagination .pagination-pages { display:flex; align-items:center; gap:4px; padding:0; background:none; color:inherit; }
body[data-v2] .pagination button { min-width:30px; min-height:32px; padding:4px 6px; font-size:12px; background:#142231; border:1px solid #40556b; }
body[data-v2] .pagination button:hover:not(:disabled) { background:#29415b; border-color:#78a9ce; }
body[data-v2] .pagination button.is-current { background:#a51832; border-color:#ff4059; color:#fff; }
body[data-v2] .pagination .page-gap { background:none; padding:0 2px; color:#a8b3c2; }
body[data-v2] .pagination button span { background:none; color:inherit; padding:0; }
body[data-v2] .page-jump,body[data-v2] .page-jump label { display:flex; align-items:center; gap:6px; white-space:nowrap; }
body[data-v2] .page-jump input { width:65px; height:32px; padding:4px 6px; color:#eef3fa; background:#0f1c29; border:1px solid #40556b; border-radius:2px; appearance:textfield; }
body[data-v2] .page-jump input::-webkit-inner-spin-button,body[data-v2] .page-jump input::-webkit-outer-spin-button { appearance:none; margin:0; }
body[data-v2] .page-jump button { min-height:32px; padding:4px 9px; border:1px solid #40556b; border-radius:2px; background:#142231; font-size:12px; }
@media(max-width:1500px){body[data-v2] .table-footer { grid-template-columns:1fr auto; }body[data-v2] .pagination { grid-column:1/-1; grid-row:2; }body[data-v2] .page-jump { justify-self:end; }}
@media(max-width:600px){body[data-v2] .pagination,body[data-v2] .pagination .pagination-pages { gap:3px; }body[data-v2] .pagination button { min-width:28px; padding:4px 3px; font-size:11px; }body[data-v2] .page-jump label>[data-copy="page"] { display:none; }body[data-v2] .page-jump input { width:48px; }body[data-v2] .page-jump,body[data-v2] .page-jump label { gap:4px; }}
body[data-v2] .header-actions>.auth-header,body[data-v2] .header-actions>.top-nav-news-bell { display:none!important; }
body[data-v2] .header-actions #news-bell-button,body[data-v2] #news-notifications-panel { display:none!important; }
body[data-v2] .profile-trigger { min-width:0; }
body[data-v2] .profile-trigger img { object-fit:cover; }
body[data-v2] #v2-header-profile-ratings { display:flex; gap:4px; align-items:center; }
body[data-v2] #v2-header-profile-ratings .rating-badge { font-size:10px; padding:1px 4px; }
body[data-v2] .notification-trigger { position:relative; }
body[data-v2] .v2-notification-count { position:absolute; top:-3px; right:-3px; border-radius:12px; background:#f51d3b; color:#fff; font-size:9px; min-width:15px; padding:1px 3px; }
body[data-v2] .v2-notice { display:flex; flex-direction:column; gap:5px; padding:13px 10px; border-bottom:1px solid #5b7d9455; }
body[data-v2] .v2-notice:hover { background:#397bb32b; }
body[data-v2] .v2-notice small { font-size:11px; color:#a7b9cd; }
body[data-v2] .v2-notice b { font-size:14px; }
body[data-v2] .v2-notice span { font-size:12px; }
body[data-v2] .v2-auth-actions { display:grid; gap:8px; margin-top:12px; }
body[data-v2] .footer-links a { font-size:12px; font-weight:400; background:none; border:0; border-radius:0; padding:0; box-shadow:none; }
body[data-v2] .metric b { font-size:17px; }
body[data-v2] .rating-history-controls .segmented-control { border:0; border-radius:3px; background:none; padding:0; }
body[data-v2] .header-popover .button { display:flex; justify-content:center; margin-top:9px; }
body[data-v2] .modal-close,body[data-v2] .popover-head button { display:grid; place-items:center; padding:0; line-height:1; flex-shrink:0; }
body[data-v2] #v2-modal { color:#eef3fa; max-height:calc(100dvh - 28px); padding:0; }
body[data-v2] #v2-modal .modal-body { overflow:auto; max-height:calc(100dvh - 142px); }
body[data-v2] .top-guide { height:auto; min-height:0; max-height:calc(100dvh - 90px); width:min(365px,calc(100vw - 24px)); overflow:auto; inset:auto 340px 110px auto; transform:none; }
body[data-v2] .top-guide-title { font-family:inherit; font-size:19px; }
body[data-v2] .top-guide-body { font-family:inherit; font-size:14px; }
body[data-v2] .elo-category-card { display:grid; gap:9px; align-items:center; min-width:0; }
body[data-v2] .elo-category-card strong { overflow-wrap:anywhere; }
body[data-v2] .elo-category-card small { white-space:nowrap; }
body[data-v2] #v2-modal[data-kind="elo"] { width:min(960px,calc(100vw - 28px)); }
body[data-v2] #v2-modal[data-kind="driver-day"] {width:min(760px,calc(100vw - 28px));}
body[data-v2] .driver-day-summary {display:grid;gap:7px;margin-bottom:16px;}
body[data-v2] .driver-day-profile {font-size:22px;font-weight:700;line-height:1.3;color:#d7edff;overflow-wrap:anywhere;}
body[data-v2] a.driver-day-profile:hover {color:#8edaff;}
body[data-v2] .driver-day-stats {grid-template-columns:repeat(3,minmax(0,1fr));}
body[data-v2] .driver-day-stats>div {min-width:0;}
body[data-v2] .driver-day-stats span {white-space:normal;}
body[data-v2] .driver-day-lap {padding:12px 0;border-top:1px solid #63799055;border-bottom:1px solid #63799055;}
body[data-v2] .driver-day-lap-details {display:flex;align-items:center;gap:8px 14px;flex-wrap:wrap;margin-top:5px;}
body[data-v2] .driver-day-lap-details .best-lap-value {font-size:23px;}
body[data-v2] .driver-day-lap-details .car-cell {white-space:normal;min-width:0;}
@media(max-width:600px){body[data-v2] .driver-day-stats {grid-template-columns:repeat(2,minmax(0,1fr));}body[data-v2] .driver-day-profile {font-size:19px;}}
body[data-v2] #v2-modal .elo-about-block { display:block; padding:0; margin:0; border:0; border-radius:0; background:transparent; }
body[data-v2] #v2-modal .elo-about-copy { max-width:none; margin-bottom:18px; }
body[data-v2] #v2-modal .elo-category-card { grid-template-columns:36px minmax(0,1fr) auto; padding:14px 10px; }
body[data-v2] .rating-history-summary { flex-wrap:wrap; }
body[data-v2] .rating-history-summary .rating-badge { display:inline-flex; }
#v1-runtime-host { display:none!important; }
body[data-v2] .home-loader[hidden] { display:none; }
body[data-v2] .version-switch { color:#d1dbe7; border:1px solid #405365; padding:7px 9px; border-radius:3px; font-size:11px; white-space:nowrap; }
.v2-language { display:flex; gap:5px; align-items:center; border:1px solid #35495a; padding:4px; border-radius:3px; }
.v2-language a { font-size:11px; padding:4px 7px; color:#aab6c4; }
.v2-language a.active { background:#c91c36; color:white; }
body[data-v2] .header-actions { gap:8px; }
body[data-v2] .auth-header { margin:0; }
body[data-v2] .auth-profile { min-width:140px; }
body[data-v2] .news-notify-trigger { width:34px; height:34px; }
body[data-v2] .auth-profile-avatar { width:32px; height:32px; }
body[data-v2] .auth-profile-panel, body[data-v2] .news-notify-panel { position:fixed; top:48px; right:10px; max-height:calc(100dvh - 80px); overflow:auto; z-index:100; }
body[data-v2] .upcoming-panel { background-image:linear-gradient(90deg,#0b162be0,#0b162b67),var(--event-image); background-size:cover; background-position:center; }
body[data-v2] .event-photo { background:transparent; }
body[data-v2] .upcoming-panel[data-event-kind="mono"] { border-color:#91d5f8; box-shadow:inset 0 0 22px #65a9c51f; }
body[data-v2] .upcoming-panel[data-event-kind="championship"] { border-color:#a958ff; box-shadow:inset 0 0 22px #a958ff24; }
body[data-v2] .upcoming-panel[data-event-kind="endurance"] { border-color:#35dd64; box-shadow:inset 0 0 22px #35dd6424; }
body[data-v2] .upcoming-panel[data-event-kind="hourly"] { border-color:#f7cc43; box-shadow:inset 0 0 22px #f7cc4324; }
body[data-v2] .event-kind { background:#508ead85; border:1px solid #8bd5fa; }
body[data-v2] [data-event-kind="championship"] .event-kind { background:#7c30c1; border-color:#bd73ff; }
body[data-v2] [data-event-kind="endurance"] .event-kind { background:#1d7e3b; border-color:#48e16d; }
body[data-v2] [data-event-kind="hourly"] .event-kind { background:#826824; border-color:#f7cc43; }
body[data-v2] .event-car-row { display:flex; gap:8px; align-items:center; }
body[data-v2] .event-car-image { width:66px; height:26px; object-fit:contain; }
body[data-v2] .winner-car { object-fit:contain; }
body[data-v2] .chart-column { display:flex; flex-direction:column; align-items:center; justify-content:flex-end; flex:1; min-width:0; height:100%; }
body[data-v2] .chart-column b { font-size:10px; }
body[data-v2] .chart-column small { font-size:9px; color:#b2c0d1; }
body[data-v2] .bar-track { height:80px; width:26px; display:flex; align-items:flex-end; margin:5px 0; }
body[data-v2] .bar-track span { width:100%; background:linear-gradient(#829bad,#506d84); border-radius:1px; }
body[data-v2] .server-card { color:inherit; width:100%; text-align:left; cursor:pointer; }
body[data-v2] .server-card.is-sr-blocked,body[data-v2] .server-summary-item.is-sr-blocked { border-color:#e9586c; background:linear-gradient(110deg,#801d3045,#30141f50); box-shadow:inset 3px 0 #e9586c; }
body[data-v2] .server-card.is-sr-blocked:hover,body[data-v2] .server-card.is-sr-blocked:focus-visible,body[data-v2] .server-summary-item.is-sr-blocked:hover,body[data-v2] .server-summary-item.is-sr-blocked:focus-visible { border-color:#ff8797; background:#6d203b66; }
body[data-v2] .server-card.is-sr-blocked .server-admission,body[data-v2] .server-sr-warning { color:#ff9baa; }
body[data-v2] .server-sr-warning { padding:9px 12px; background:#801d3033; border:1px solid #e9586c; border-radius:3px; }
body[data-v2] .participation-active { background:#15834f; border-color:#45dc8c; }
body[data-v2] .v2-error { color:#ff8091; }
body[data-v2] .seo-panel { padding:14px 16px; }
body[data-v2] .seo-intro { padding:0; margin:0; border:0; }
body[data-v2] .seo-intro h2 { font-size:18px; }
body[data-v2] .about-content ul { margin-left:0; padding-left:18px; }
body[data-v2] .modal-overlay { z-index:400; background:#04070bd9; padding:64px 12px 18px; }
body[data-v2] .modal-overlay .modal-card { border:1px solid #40546a; border-radius:5px; background:linear-gradient(135deg,#192433,#0c131d); box-shadow:0 28px 90px #0008; max-height:calc(100dvh - 86px); }
body[data-v2] .modal-overlay .modal-close { display:grid; place-items:center; padding:0; line-height:1; border-radius:3px; }
body[data-v2] .modal-overlay .modal-card-slot, body[data-v2] #server-players-modal .modal-card { width:min(1080px,calc(100vw - 32px)); }
body[data-v2] .modal-overlay .modal-content { overflow:auto; }
body[data-v2] .modal-overlay .elo-badge { color:#bf86ff; border-color:#855cba; }
body[data-v2] #v2-modal[data-kind="server"] { width:min(1080px,calc(100vw - 30px)); height:min(850px,calc(100dvh - 36px)); }
body[data-v2] #v2-modal[data-kind="server"][open] { display:flex; flex-direction:column; }
body[data-v2] #v2-modal[data-kind="server"] .modal-head { flex-shrink:0; }
body[data-v2] #v2-modal[data-kind="server"] .modal-head h2 { overflow-wrap:anywhere; }
body[data-v2] #v2-modal[data-kind="server"] .modal-body { flex:1; min-height:0; height:auto; max-height:none; }
body[data-v2] .server-search-note { margin:10px 0 16px; }
body[data-v2] .server-roster-heading { font-size:17px; margin:0 0 10px; }
body[data-v2] .server-updated { margin-top:16px; }
body[data-v2] .server-driver-list .pilot-car .car-cell { display:flex; gap:8px; align-items:center; min-width:0; }
body[data-v2] .server-driver-list .pilot-car img { width:59px; height:30px; flex-shrink:0; }
body[data-v2] .server-driver-list .pilot-car .car-cell>span { overflow-wrap:anywhere; }
body[data-v2] .server-driver-list .pilot-identity .pilot-name { min-width:0; }
body[data-v2] .server-summary-list { display:grid; gap:10px; }
body[data-v2] .server-summary-item { display:flex; flex-direction:column; gap:5px; text-align:left; border-bottom:1px solid #53698055; padding:10px 0; }
body[data-v2] .server-summary-item>b { font-size:15px; }
body[data-v2] .server-summary-item>span { color:#acbfd5; font-size:13px; }
body[data-v2] .server-summary-item:hover { background:#23354a60; }
body[data-v2] .server-summary-item .is-online { color:#36f0ad; }
body[data-v2] .server-summary-item .is-offline { color:#f7cc43; }
body[data-v2] .sr-category-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
body[data-v2] .elo-category-grid.safety-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
body[data-v2] .elo-category-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
body[data-v2] .rating-badge.elo-1 { color:#cb90ff; border-color:#9c5af0; background:#693ca65e; }
body[data-v2] .rating-badge.elo-2 { color:#66d9ff; border-color:#46bce5; background:#2472935e; }
body[data-v2] .rating-badge.elo-3 { color:#ffcb49; border-color:#e6b836; background:#8a671b5e; }
body[data-v2] .rating-badge.elo-4 { color:#b0d9ff; border-color:#6c98be; background:#4469855e; }
body[data-v2] .rating-badge.sr-a { color:#36f0ad; border-color:#19c887; background:#146d4c6b; }
body[data-v2] .rating-badge.sr-b { color:#ffe477; border-color:#c3a034; background:#8a671b5e; }
body[data-v2] .rating-badge.sr-c { color:#ff8990; border-color:#d34a5b; background:#7827355e; }
body[data-v2] .auth-profile-panel a { color:#dce9fa; }
@media(max-width:1000px){body[data-v2] .header { height:auto; min-height:48px; } body[data-v2] .header-actions { flex-wrap:wrap; } body[data-v2] .auth-profile { min-width:0; } body[data-v2] .bar-track { width:20px; } body[data-v2] .top-guide { right:12px; bottom:12px; } }
@media(max-width:600px){body[data-v2] .header .navigation { overflow-x:auto; justify-content:flex-start; } body[data-v2] .header .brand { width:140px; } body[data-v2] .version-switch { font-size:10px; } body[data-v2] .auth-profile-copy { display:none; } body[data-v2] .elo-category-grid { grid-template-columns:repeat(2,1fr); } body[data-v2] .event-title-row { flex-wrap:wrap; } body[data-v2] .event-badge { font-size:13px; }}
@media(max-width:600px){body[data-v2] #v2-modal[data-kind="elo"] .elo-category-grid { grid-template-columns:1fr; } body[data-v2] #v2-modal[data-kind="safety"] .elo-category-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } body[data-v2] #v2-modal[data-kind="safety"] .elo-category-card { grid-template-columns:1fr; text-align:center; } body[data-v2] #v2-modal[data-kind="safety"] .elo-category-card span { margin:auto; } body[data-v2] #v2-modal[data-kind="safety"] .elo-category-card small { grid-column:1; }}

/* Compact homepage and profile presentation over the existing data controllers. */
body[data-v2] #v2-day-ratings { display:flex; align-items:center; flex-wrap:wrap; gap:8px; margin-bottom:7px; }
body[data-v2] #v2-day-ratings .rating-prefix { font-weight:600; }
body[data-v2] .winner-results .metric b { font-size:17px; line-height:1.2; margin-top:0; }
body[data-v2] .hour-chart>div>span { background:linear-gradient(#829bad,#506d84); }
@media(min-width:1001px){
 body[data-v2] .dashboard.left-closed.right-closed .winner-results .metric:not(:last-child) { border-bottom:1px solid #b6d0e833; padding-bottom:5px; }
}
body[data-v2] .upcoming-panel .event-photo { justify-content:flex-start; }
body[data-v2] .event-kind.kind-hourly { background:#f7cc43; border-color:#f7cc43; color:#17202a; }
body[data-v2] .event-kind.kind-championship { background:#7c30c1; border-color:#bd73ff; }
body[data-v2] .event-kind.kind-endurance { background:#1d7e3b; border-color:#48e16d; color:#e8ffef; }
body[data-v2] .event-kind.kind-public { background:#58616a55; border-color:#9ca5ae80; color:#cbd0d5; }
body[data-v2] .driver-achievement-title { margin:0 0 10px; color:#aebdd0; font-size:13px; }
body[data-v2] .driver-achievement-title b { color:#f7d577; }
body[data-v2] .driver-status-row { gap:10px; flex-wrap:wrap; align-items:center; }
body[data-v2] .driver-strikes,body[data-v2] .driver-ban-status { font-size:13px; padding:5px 8px; border:1px solid #40556b; border-radius:3px; white-space:nowrap; }
body[data-v2] .driver-strikes.has-strikes { color:#f7cc43; border-color:#91752d; }
body[data-v2] .driver-ban-status.is-banned { color:#ff8990; border-color:#b54154; background:#7827355e; }
body[data-v2] .driver-ban-status.is-clear { color:#36f0ad; border-color:#278060; background:#146d4c40; }
body[data-v2] #v2-driver-lap-value { grid-column:1/-1; display:grid; grid-template-columns:auto minmax(0,1fr) auto auto; align-items:center; gap:10px; }
body[data-v2] #v2-driver-lap-value .best-lap-value,body[data-v2] .lap-session,body[data-v2] .lap-date { white-space:nowrap; }
body[data-v2] #v2-driver-lap-value .lap-car,body[data-v2] #v2-driver-lap-value .car-cell { min-width:0; }
body[data-v2] #v2-driver-lap-value .car-cell { display:flex; align-items:center; gap:8px; }
body[data-v2] #v2-driver-lap-value .car-cell span { overflow-wrap:anywhere; }
body[data-v2] #v2-driver-lap-value .car-cell img { flex:0 0 42px; }
body[data-v2] .lap-session { border:1px solid #40556b; padding:2px 6px; border-radius:2px; color:#bfd3e9; }
body[data-v2] .lap-date { color:#aebdd0; font-size:13px; }
body[data-v2] .asg-legal-banner { width:min(500px,calc(100vw - 24px)); right:12px; bottom:12px; font-family:inherit; }
body[data-v2] .asg-legal-banner-card { border-radius:4px; border-color:#40546a; background:linear-gradient(135deg,#192433f7,#0c131df7); padding:16px; box-shadow:0 18px 55px #0008; }
body[data-v2] .asg-legal-banner-title { font-size:17px; }
body[data-v2] .asg-legal-banner-body { font-size:13px; line-height:1.5; }
body[data-v2] .asg-legal-banner-btn,body[data-v2] .asg-legal-link-button { border-radius:3px; padding:9px 12px; font-size:13px; }
body[data-v2] .asg-legal-banner-btn-primary { background:linear-gradient(#f52b43,#be152e); border:1px solid #ff4059; box-shadow:none; }
body[data-v2] .asg-legal-banner-btn-secondary { background:#162434; border-color:#40546a; }
body[data-v2] .asg-legal-link-row a { color:#a7d4f6; }
/* Full-width partner art replaces the top intro; its text remains below ratings. */
body[data-v2] .home-partner-banner {
 display:block;
 width:100%;
 padding:0;
 overflow:hidden;
 border:0;
 border-radius:6px;
 background:#fff;
}
body[data-v2] .home-partner-banner picture,
body[data-v2] .home-partner-banner img { display:block; width:100%; }
body[data-v2] .home-partner-banner picture { aspect-ratio:1150 / 80; }
body[data-v2] .home-partner-banner picture > img { height:100%; object-fit:contain; }
@media(max-width:640px){ body[data-v2] .home-partner-banner picture { aspect-ratio:300 / 160; } }
body[data-v2] .home-partner-banner:focus-visible { outline:2px solid #73caff; outline-offset:2px; }
/* The home list uses Hourly's renderer; scope its compact presentation to this dialog. */
#v2-modal.home-races-mode[data-kind="home-recent"] {width:min(900px,calc(100vw - 24px));}
#v2-modal.home-races-mode[data-kind="home-calendar"] {width:min(1080px,calc(100vw - 24px));}
body[data-v2] .upcoming-panel .event-calendar-link {font-size:11px;white-space:nowrap;padding:4px 6px;flex-shrink:0;color:#bce4ff;border:1px solid #80b8d44d;border-radius:2px;}
body[data-v2] .upcoming-panel .event-calendar-link:hover {color:#fff;background:#3286b944;}
.home-races-mode .page-calendar {background:transparent;border:0;}
.home-races-mode .page-calendar>.panel-head {display:none;}
.home-races-mode .calendar-controls {display:flex;align-items:center;gap:10px;padding:0 0 12px;flex-wrap:wrap;}
.home-races-mode .calendar-controls>b {text-transform:capitalize;font-size:16px;}
.home-races-mode .calendar-controls button {border:1px solid #637d994a;background:#12213377;border-radius:3px;padding:5px 10px;}
.home-races-mode .calendar-controls [data-month-reset] {margin-left:auto;font-size:12px;}
.home-races-mode .calendar-grid {display:grid;grid-template-columns:repeat(7,minmax(72px,1fr));gap:4px;overflow:auto;padding:2px 1px 8px;scrollbar-width:thin;}
.home-races-mode .calendar-weekday {font-size:12px;text-align:center;padding:3px;color:#91a5ba;}
.home-races-mode .calendar-day {min-height:79px;min-width:0;padding:3px;background:#0914216b;border:1px solid #647d932b;display:flex;flex-direction:column;gap:3px;border-radius:2px;}
.home-races-mode .calendar-date {font-size:13px;line-height:16px;color:#c1cedb;flex-shrink:0;}
.home-races-mode .calendar-day.is-outside {background:transparent;border-color:transparent;}
.home-races-mode .calendar-day.snapshot-day {border-color:#ff3c57aa;background:#50202d44;}
.home-races-mode .calendar-entry {display:flex;flex-direction:column;text-align:left;gap:2px;border-left:2px solid #e8c645;background:#d1a92516;padding:4px;color:#f9e294;font-size:12px;line-height:1.2;min-height:39px;overflow:hidden;justify-content:center;}
.home-races-mode .calendar-entry span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.home-races-mode .calendar-entry.kind-monoclass {border-color:#8ed8f8;background:#559dc71a;color:#b6e5fa;}
.home-races-mode .calendar-entry.kind-endurance {border-color:#39ff14;background:#64ce521a;color:#a6f194;}
.home-races-mode .calendar-entry.kind-championship {border-color:#a855f7;background:#a855f71a;color:#e2b7ff;}
.home-races-mode .calendar-entry.is-finished {border-color:#758ea6;background:#758ea618;color:#b7c9d9;}
.home-races-mode .calendar-entry:hover {filter:brightness(1.4);}
.home-races-mode .calendar-legend {display:flex;gap:10px;flex-wrap:wrap;font-size:12px;margin-top:8px;}
.home-races-mode .calendar-legend .legend-kind {display:inline-flex;gap:5px;align-items:center;--kind-color:#facc15;color:#b9cbdc;background:transparent;border:0;}
.home-races-mode .calendar-legend .kind-monoclass {--kind-color:#8ed8f8;}
.home-races-mode .calendar-legend .kind-championship {--kind-color:#a855f7;}
.home-races-mode .calendar-legend .kind-endurance {--kind-color:#39ff14;}
.home-races-mode .calendar-legend i {width:8px;height:8px;border-radius:1px;background:var(--kind-color);}
.home-calendar-note {margin-top:12px;color:#a5b7c9;font-size:12px;}
.home-races-mode .page-participants {font-size:12px;color:#a5b7c9;}
.home-races-mode .modal-participation .page-participants {display:block;margin-top:6px;}
#v2-modal.home-races-mode[data-kind="home-race"] {width:min(1450px,calc(100vw - 24px));background:linear-gradient(110deg,#101925ed,#0d1822eb),var(--modal-track) center/cover;}
.home-races-mode .page-recent {background:transparent;border:0;}
.home-races-mode .page-recent>.panel-head {display:none;}
.home-races-mode .page-recent-race {display:flex;align-items:center;gap:9px;padding:15px 4px;border-bottom:1px solid #7391a631;cursor:pointer;}
.home-races-mode .page-recent-race:hover {background:#25405650;}
.home-races-mode .page-recent-race:focus-visible {outline:1px solid #ff536b;outline-offset:-1px;}
.home-races-mode .recent-track-image {width:54px;height:43px;object-fit:cover;border:1px solid #6f91aa55;border-radius:2px;flex-shrink:0;}
.home-races-mode .recent-content {display:flex;flex-direction:column;gap:5px;min-width:0;flex:1;}
.home-races-mode .recent-titleline,.home-races-mode .recent-metaline {display:flex;align-items:center;gap:6px;min-width:0;white-space:nowrap;}
.home-races-mode .recent-circuit {font-size:16px;min-width:0;max-width:38%;overflow:hidden;text-overflow:ellipsis;}
.home-races-mode .recent-winner {display:flex;gap:5px;align-items:center;min-width:0;flex:1;font-size:13px;}
.home-races-mode .recent-winner>span {display:none;}
.home-races-mode .recent-winner::before {content:'·';color:#8ea5b9;}
.home-races-mode .recent-profile-link {display:inline-block;min-width:0;overflow:hidden;text-overflow:ellipsis;padding:2px 4px;border-radius:2px;color:#bce4ff;background:#529bc51c;text-decoration:underline;text-underline-offset:3px;}
.home-races-mode .recent-profile-link:hover,.home-races-mode .recent-profile-link:focus-visible {color:#fff;background:#3286b966;outline:1px solid #8dd9ff;}
.home-races-mode .recent-average-elo {color:#a5b7c9;font-size:12px;margin-left:auto;flex-shrink:0;}
.home-races-mode .recent-metaline {font-size:12px;color:#a5b7c9;overflow-x:auto;scrollbar-width:none;}
.home-races-mode .recent-metaline>span:not(.recent-best-lap) {flex-shrink:0;}
.home-races-mode .recent-best-lap {display:flex;align-items:center;gap:4px;min-width:110px;flex:1;}
.home-races-mode .recent-best-lap>b {flex-shrink:0;}
.home-races-mode .recent-lap-author {min-width:0;}
.home-races-mode .recent-open {display:grid;place-items:center;width:20px;flex-shrink:0;}
.home-races-mode .page-pagination {display:flex;align-items:center;gap:9px;padding:12px 4px;font-size:13px;}
.home-races-mode .page-pagination>span {margin-right:auto;color:#a5b7c7;}
.home-races-mode .page-pagination button {display:grid;place-items:center;width:30px;height:28px;padding:0;border:1px solid #7c92a943;border-radius:2px;background:#14233875;}
.home-races-mode .page-pagination button svg {width:12px;height:12px;}
.home-races-mode .page-pagination button:disabled {opacity:.35;}
.home-recent-archive {margin:8px 0 0;}
.home-race-back {margin-bottom:12px;}
.home-races-mode .race-summary-grid {grid-template-columns:repeat(5,minmax(0,1fr));}
#v2-modal.home-races-mode .best-lap-value {color:#c49aff;}
.home-races-mode .best-lap-driver {display:block;margin-top:5px;font-size:12px;}
.home-races-mode .page-table-scroll {overflow:auto;max-width:100%;padding-bottom:8px;}
.home-races-mode .page-table {border-collapse:collapse;width:100%;font-size:12px;white-space:nowrap;}
.home-races-mode .page-table th {color:#9db6cb;background:#14202c9c;padding:9px 10px;border-bottom:1px solid #7e9cb64f;font-size:11px;font-weight:500;text-align:left;}
.home-races-mode .page-table td {padding:9px 10px;border-bottom:1px solid #63799027;}
.home-races-mode .page-table th,.home-races-mode .page-table td {position:static!important;left:auto!important;}
.home-races-mode .page-table th:first-child,.home-races-mode .page-table td:first-child,.home-races-mode .page-table th:nth-child(2),.home-races-mode .page-table td:nth-child(2) {width:auto;min-width:0;background:transparent;}
.home-races-mode .page-table td:first-child {color:inherit;}
.home-races-mode .page-table tbody tr:nth-child(even) {background:#07131d35;}
.home-races-mode .page-table a {color:#deedf9;font-weight:700;}
.home-races-mode .page-table a:hover {color:#83d4fa;text-decoration:underline;}
.home-races-mode .page-table .car-cell img {width:33px;height:24px;}
.home-races-mode .result-driver-identity {display:flex;gap:8px;align-items:center;}
.home-races-mode .result-driver-identity small {color:#a8bccd;min-width:30px;}
.home-races-mode .race-rating-delta {margin-left:6px;}
body .home-races-mode .results-table tr[data-podium-place="1"] td:first-child {color:#f3cf70;}
body .home-races-mode .results-table tr[data-podium-place="2"] td:first-child {color:#c9d4df;}
body .home-races-mode .results-table tr[data-podium-place="3"] td:first-child {color:#d49b73;}
.home-races-mode .results-table tr.current-user-row td {background-color:#283141;}
.home-races-mode .page-help {color:#a5b7c9;font-size:12px;}
@media(max-width:600px){
 body[data-v2] .upcoming-panel .panel-head {gap:5px;flex-wrap:wrap;padding-top:5px;padding-bottom:5px;height:auto;min-height:39px;}
 body[data-v2] .upcoming-panel .panel-head h2 {font-size:11px;}
 body[data-v2] .upcoming-panel .event-calendar-link {font-size:10px;padding:3px 4px;}
 .home-races-mode .calendar-controls {gap:6px;}
 .home-races-mode .calendar-controls>b {font-size:14px;}
 .home-races-mode .calendar-controls [data-month-reset] {font-size:11px;}
 .home-races-mode .calendar-grid {grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;}
 .home-races-mode .calendar-day {min-height:73px;padding:2px;gap:2px;}
 .home-races-mode .calendar-entry {font-size:10px;padding:3px 2px;}
 .home-races-mode .recent-track-image {width:36px;height:38px;}
 .home-races-mode .recent-circuit {font-size:14px;max-width:38%;}
 .home-races-mode .recent-winner {font-size:12px;}
 .home-races-mode .recent-average-elo {font-size:10px;}
 .home-races-mode .recent-metaline {font-size:11px;}
 .home-races-mode .race-summary-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .home-races-mode .recent-open {width:12px;}
}
@media(max-width:600px){
 body[data-v2] #v2-driver-lap-value { grid-template-columns:auto minmax(0,1fr) auto; gap:8px; }
 body[data-v2] #v2-driver-lap-value .lap-car { grid-column:1/-1; grid-row:2; }
 body[data-v2] #v2-driver-lap-value .lap-date { justify-self:end; font-size:12px; }
 body[data-v2] #v2-driver-lap-value .lap-session { justify-self:center; }
}
