.gcc-results{font-family:inherit;max-width:100%;line-height:1.5}.gcc-results section{margin:2rem 0}.gcc-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:1rem 0}.gcc-filters label{display:flex;flex-direction:column;gap:4px;font-weight:600}.gcc-filters select,.gcc-filters input{min-height:38px;padding:6px 9px;max-width:250px;border:1px solid #bbb;border-radius:4px;background:#fff}.gcc-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}.gcc-table{border-collapse:collapse;width:100%;font-size:.92rem;white-space:nowrap}.gcc-table th,.gcc-table td{padding:9px 12px;border-bottom:1px solid #ddd;text-align:left}.gcc-table th{background:#202b39;color:#fff}.gcc-table tbody tr:nth-child(even){background:#f4f6f8}.gcc-table tbody tr:hover{background:#e9f1f8}.gcc-error{padding:12px;border-left:4px solid #c44;background:#fff4f4}
.gcc-tabs{display:flex;flex-wrap:wrap;gap:10px;margin:1.5rem 0}.gcc-tab{display:inline-block;padding:10px 16px;border:1px solid #202b39;border-radius:4px;text-decoration:none}.gcc-tab.is-active{background:#202b39;color:#fff}.gcc-time{border:0;background:none;padding:0;color:#075caa;text-decoration:underline;cursor:pointer;font:inherit}.gcc-time:hover{color:#003e73}.gcc-lap-row td{background:#f2f5f8!important}.gcc-laps{padding:12px 16px}.gcc-laps table{margin-top:8px;width:auto;min-width:220px}.gcc-laps th,.gcc-laps td{padding:5px 20px 5px 0;text-align:left}.gcc-hint{font-size:.9rem;color:#555}

/* Championship layout, inspired by the supplied ranking reference */
.gcc-champ-title{font-size:clamp(1.35rem,2.5vw,1.9rem);font-weight:500;margin:1.5rem 0 .75rem}
.gcc-champ-legend{display:flex;flex-wrap:wrap;gap:8px 15px;padding:12px;margin:0 0 16px;border:1px solid #ddd;background:#f8f8f8;font-size:.8rem}
.gcc-champ-legend span{display:inline-flex;align-items:center;gap:6px}.gcc-champ-legend b{display:inline-grid;place-items:center;min-width:30px;min-height:27px;padding:3px 5px;background:#aaa;color:white;font-size:.8rem}
.gcc-champ-legend .gcc-legend-rank{background:white;color:#c00;border:1px solid #ddd}.gcc-champ-legend .gcc-legend-race{background:#999}.gcc-champ-legend .gcc-legend-total{background:#ad0000}.gcc-champ-legend .gcc-legend-drop{background:#333}
.gcc-champ-table{border-collapse:separate;border-spacing:0 8px;width:100%;font-size:.9rem;min-width:620px}
.gcc-champ-table thead th{background:#333;color:#fff;text-align:left;padding:10px;border-right:1px solid #777;font-size:.82rem}
.gcc-champ-table tbody td{background:#eee;border-top:1px solid #c8c8c8;border-bottom:1px solid #c8c8c8;padding:12px 10px;vertical-align:middle}
.gcc-champ-table tbody tr:nth-child(even) td{background:#e2e2e2}
.gcc-champ-table tbody td:first-child{border-left:1px solid #c8c8c8}.gcc-champ-table tbody td:last-child{border-right:1px solid #c8c8c8}
.gcc-champ-position{font-size:1.5rem;font-weight:700;color:#d00000;text-align:center;min-width:50px}
.gcc-champ-country{text-align:center;width:60px;color:#777}.gcc-champ-person{min-width:190px}.gcc-champ-person strong{display:block;font-weight:700}.gcc-champ-person small{display:block;margin-top:12px;font-size:.9em;color:#777;white-space:normal}
.gcc-champ-score{font-weight:700;color:#777;text-align:center;font-size:1.1rem}.gcc-champ-breakdown{min-width:200px}.gcc-score-pair{display:flex;justify-content:flex-end;margin-bottom:12px}.gcc-score-pair span{display:inline-flex;align-items:center;justify-content:center;min-width:35px;padding:9px 7px;color:#fff;font-weight:700;font-size:.78rem}.gcc-score-total{background:#ad0000}.gcc-score-drop{background:#333}.gcc-race-points{display:flex;flex-wrap:wrap;gap:3px;justify-content:flex-end}.gcc-race-point{min-width:31px;text-align:center;background:#999;color:white;font-weight:700;font-size:.77rem;padding:8px 5px}
@media(max-width:680px){.gcc-champ-scroll{margin-right:-10px}.gcc-champ-table{min-width:0;font-size:.82rem}.gcc-champ-table thead th:nth-child(2),.gcc-champ-country{display:none}.gcc-champ-table tbody td{padding:8px 5px}.gcc-champ-person{min-width:110px}.gcc-champ-breakdown{min-width:105px}.gcc-champ-position{min-width:32px;font-size:1.2rem}.gcc-race-point{min-width:25px;padding:6px 3px}.gcc-champ-legend{gap:6px}}

.gcc-country-flag{width:30px;height:auto;vertical-align:middle;object-fit:contain}.gcc-driver-cell{display:flex;align-items:center;gap:12px}.gcc-driver-photo{width:54px;height:54px;object-fit:cover;border-radius:4px;flex:none}.gcc-driver-cell>div{min-width:0}

/* Empty race slots retain the same width and grey background as scored races. */
.gcc-race-point-empty{background:#999;color:transparent;min-height:1em}
/* Race results v1.6 */
.gcc-race-title{font-size:clamp(1.3rem,2.5vw,1.9rem);font-weight:600;margin:1.2rem 0 .35rem}.gcc-race-note{font-size:.9rem;color:#666;margin:0 0 12px}.gcc-race-table{border-collapse:separate;border-spacing:0 7px;min-width:740px;white-space:normal}.gcc-race-table thead th{background:#303030;color:#fff;font-size:.78rem;padding:12px 10px;border:0}.gcc-race-table tbody tr.gcc-race-entry td{background:#f0f0f0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:15px 10px;vertical-align:middle}.gcc-race-table tbody tr.gcc-race-entry:nth-of-type(4n+3) td{background:#e3e3e3}.gcc-race-table tbody tr.gcc-race-entry td:first-child{border-left:1px solid #ddd}.gcc-race-table tbody tr.gcc-race-entry td:last-child{border-right:1px solid #ddd}.gcc-race-position{color:#cf0000;font-weight:800;font-size:1.5rem;text-align:center}.gcc-race-country{text-align:center}.gcc-race-table .gcc-driver-cell{min-width:175px}.gcc-race-table .gcc-driver-cell strong{display:block;font-size:.94rem}.gcc-race-table .gcc-driver-cell small{display:block;color:#777;font-size:.77rem;margin-top:2px}.gcc-race-team{display:block;color:#666;margin-top:7px;font-size:.83rem}.gcc-xcc{display:block;font-size:.86rem;color:#555;white-space:nowrap}.gcc-bike{display:block;color:#777;font-size:.8rem;margin-top:6px}.gcc-race-time-cell{white-space:nowrap}.gcc-race-time-cell .gcc-time{color:#222;font-weight:700;text-decoration:underline;text-decoration-color:#d00000;text-underline-offset:4px}.gcc-race-time-cell small{display:block;color:#666;margin-top:7px}.gcc-certificate-link{display:inline-flex;align-items:center;gap:5px;background:#b50000;color:white!important;text-decoration:none!important;border-radius:4px;padding:8px 10px;font-size:.78rem;font-weight:700;white-space:nowrap}.gcc-certificate-link:hover{background:#8d0000}.gcc-race-table .gcc-lap-row td{background:#f5f6f7!important;padding:14px 22px!important}

/* 1.7: certificate beside position, independent premium photo column */
.gcc-race-table{min-width:790px}.gcc-race-position{white-space:nowrap}.gcc-race-position span{vertical-align:middle}.gcc-certificate-icon{display:inline-flex;vertical-align:middle;margin-left:9px;color:#777;text-decoration:none!important;align-items:center}.gcc-certificate-icon:hover,.gcc-certificate-icon:focus{color:#b40000}.gcc-race-picture{text-align:center;width:70px;min-width:65px}.gcc-race-picture .gcc-driver-photo{display:block;width:44px;height:54px;object-fit:cover;margin:auto;border-radius:2px}.gcc-race-table .gcc-driver-cell{min-width:170px}.gcc-laps h4{font-size:1.1rem;margin:0 0 14px}.gcc-laps h4 span{font-size:.82rem;font-weight:400;color:#666}.gcc-laps-layout{display:grid;grid-template-columns:minmax(200px,1fr) minmax(280px,1.3fr);gap:18px;align-items:start}.gcc-laps-side{display:flex;flex-direction:column;gap:20px}.gcc-laps-layout table{width:100%;min-width:0;border-collapse:collapse;margin:0}.gcc-laps-layout th,.gcc-laps-layout td{border:1px solid #d3d3d3;padding:8px 10px;text-align:left;white-space:nowrap}.gcc-laps-layout thead th{background:#303030;color:#fff}.gcc-laps-list tbody tr:nth-child(even),.gcc-laps-neighbors tbody tr:nth-child(even){background:#e5e5e5}.gcc-laps-layout .gcc-laps-current,.gcc-laps-layout .gcc-laps-current td{background:#ae0000!important;color:#fff;font-weight:700}.gcc-laps-stats tbody th{font-weight:400}@media(max-width:720px){.gcc-laps-layout{grid-template-columns:1fr}.gcc-race-table{min-width:790px}}

/* 1.8: larger certificate icon and accessible premium portrait lightbox */
.gcc-certificate-icon{margin-left:12px;min-width:32px;min-height:36px;justify-content:center}.gcc-certificate-icon svg{width:28px;height:28px;filter:drop-shadow(0 1px 1px #999)}
.gcc-photo-trigger{border:0;background:transparent;padding:0;cursor:zoom-in;display:inline-block;border-radius:6px;line-height:0}.gcc-photo-trigger:focus-visible{outline:3px solid #cc0000;outline-offset:3px}.gcc-photo-trigger .gcc-driver-photo{transition:transform .2s ease,box-shadow .2s ease;border-radius:5px}.gcc-photo-trigger:hover .gcc-driver-photo{transform:scale(1.08);box-shadow:0 4px 14px #0004}
.gcc-photo-lightbox{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;padding:24px;background:rgba(9,11,16,.88);backdrop-filter:blur(12px)}.gcc-photo-lightbox[hidden]{display:none}.gcc-photo-lightbox-inner{position:relative;max-width:min(90vw,740px);max-height:90vh;display:flex;flex-direction:column;align-items:center;gap:12px}.gcc-photo-lightbox img{max-width:100%;max-height:78vh;width:auto;height:auto;object-fit:contain;border-radius:12px;box-shadow:0 22px 80px #000a}.gcc-photo-lightbox-caption{color:#fff;font-size:1rem;font-weight:600;text-align:center}.gcc-photo-lightbox-close{position:absolute;right:-14px;top:-18px;border:1px solid #ffffff55;border-radius:50%;width:44px;height:44px;background:#222;color:#fff;font-size:30px;cursor:pointer;line-height:1}.gcc-photo-lightbox-close:focus-visible{outline:3px solid #fff;outline-offset:3px}@media(prefers-reduced-motion:reduce){.gcc-photo-trigger .gcc-driver-photo{transition:none}}

/* v1.9: dedicated premium portrait column in championship standings */
.gcc-champ-picture{width:78px;min-width:74px;text-align:center}.gcc-champ-picture .gcc-driver-photo{display:block;width:52px;height:62px;object-fit:cover;margin:auto;border-radius:3px}.gcc-champ-person{min-width:170px}.gcc-champ-person strong{display:block}.gcc-champ-person small{display:block;margin-top:10px}
/* MotoGP-inspired race paddock portrait presentation: graphite, racing red, speed stripes */
.gcc-photo-lightbox{background:rgba(5,7,10,.94);backdrop-filter:blur(18px);padding:clamp(14px,4vw,40px);animation:gccFadeIn .2s ease-out}
.gcc-photo-lightbox-inner{isolation:isolate;box-sizing:border-box;width:min(92vw,850px);max-width:850px;max-height:94vh;display:flex;gap:0;align-items:stretch;overflow:hidden;border:1px solid #41444b;border-radius:4px;background:linear-gradient(140deg,#24272d 0%,#111317 55%,#090b0f 100%);box-shadow:0 40px 120px #000e,0 0 0 1px #ffffff0c;position:relative}
.gcc-photo-lightbox-inner:before{content:'';position:absolute;z-index:-1;top:-100px;right:0;width:50%;height:250px;background:repeating-linear-gradient(125deg,transparent 0 19px,#d70b1b 20px 28px,transparent 29px 51px);opacity:.13;transform:skewX(-12deg);pointer-events:none}
.gcc-photo-lightbox-header{display:flex;justify-content:space-between;align-items:center;padding:14px 22px;border-bottom:1px solid #ffffff22;background:#0a0c10;color:#fff;font-size:.72rem;font-weight:900;letter-spacing:.19em;text-transform:uppercase}
.gcc-photo-lightbox-mark{display:flex;align-items:center;gap:10px}.gcc-photo-lightbox-mark:before{content:'';display:block;width:7px;height:19px;transform:skew(-17deg);background:#e20b20;box-shadow:11px 0 #e20b20}
.gcc-photo-lightbox-close{position:static;width:38px;height:38px;border:1px solid #ffffff44;border-radius:2px;background:#24262c;color:white;font-size:27px;line-height:1;transition:background .2s,border-color .2s}
.gcc-photo-lightbox-close:hover{background:#c20b1c;border-color:#c20b1c}
.gcc-photo-lightbox-media{display:flex;align-items:center;justify-content:center;min-height:150px;max-height:65vh;padding:22px;background:radial-gradient(ellipse at center,#333841 0%,#111317 65%,#08090b 100%);overflow:hidden}
.gcc-photo-lightbox-media img{max-width:100%;max-height:min(62vh,670px);width:auto;height:auto;object-fit:contain;border-radius:0;box-shadow:0 14px 42px #0009;animation:gccPhotoReveal .25s ease-out}
.gcc-photo-lightbox-footer{display:flex;align-items:center;gap:16px;min-height:68px;padding:15px 24px 17px;border-top:3px solid #c80b1d;background:#0e1014;color:#fff}
.gcc-photo-lightbox-number{font-size:1.7rem;font-weight:900;font-style:italic;color:#e20b20;line-height:1}.gcc-photo-lightbox-caption{color:#fff;font-size:clamp(1.05rem,2vw,1.45rem);font-weight:900;text-align:left;letter-spacing:.02em;text-transform:uppercase;overflow-wrap:anywhere}
.gcc-photo-lightbox-sub{font-size:.67rem;color:#a9adb6;text-transform:uppercase;letter-spacing:.16em;margin-top:3px}
.gcc-photo-trigger .gcc-driver-photo{transition:transform .2s,filter .2s,box-shadow .2s;filter:saturate(.95)}.gcc-photo-trigger:hover .gcc-driver-photo{transform:scale(1.06);filter:saturate(1.2);box-shadow:0 4px 0 #cc0a1d,0 9px 20px #0005}
@keyframes gccFadeIn{from{opacity:0}to{opacity:1}}@keyframes gccPhotoReveal{from{opacity:.65;transform:scale(.97)}to{opacity:1;transform:scale(1)}}
@media(max-width:680px){.gcc-champ-picture{min-width:54px;width:54px}.gcc-champ-picture .gcc-driver-photo{width:43px;height:52px}.gcc-photo-lightbox-media{padding:12px}.gcc-photo-lightbox-footer{padding:12px 16px}}
@media(prefers-reduced-motion:reduce){.gcc-photo-lightbox,.gcc-photo-lightbox-media img{animation:none}}

/* Downloads inherit the active theme primary button style. */
.gcc-download-wrap{display:flex;justify-content:flex-end;margin:18px 0 8px}.gcc-photo-trigger{position:relative;z-index:1;touch-action:manipulation}.gcc-photo-lightbox{z-index:2147483000!important}.gcc-photo-lightbox[hidden]{display:none!important}

/* Trophy standings and linked team profiles */
.gcc-trophy-table{min-width:720px}.gcc-trophy-table th{background:#303030}.gcc-trophy-table td{vertical-align:middle;padding:14px 12px}.gcc-trophy-table .gcc-trophy-name{white-space:normal;min-width:180px}.gcc-trophy-points{font-weight:700;font-size:1.1rem}.gcc-trophy-links{display:flex;gap:8px}.gcc-trophy-social{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;color:inherit;border:1px solid #ddd;border-radius:4px}.gcc-trophy-social:hover{color:#c00;border-color:currentColor}.gcc-trophy-social:focus-visible{outline:2px solid currentColor;outline-offset:3px}.gcc-trophy-summary{display:flex;flex-wrap:wrap;gap:12px 24px;padding:16px;margin:0 0 20px;background:#f4f4f4;border-left:4px solid #c00}.gcc-trophy-summary strong{flex-basis:100%;font-size:1.2rem}
