*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}:root{--bg:#0d0d1a;--surface:#13132b;--surface2:#1a1a35;--border:#2a2a50;--text:#e8e8f5;--muted:#9ba0bc;--gold:#f5c518;--cyan:#00c6ff;--font-head:'Rajdhani',sans-serif;--font-body:'Exo 2',sans-serif}body{background:var(--bg);color:var(--text);font-family:var(--font-body);min-height:100vh}.back-btn{background:rgba(255,255,255,0.12);border:1.5px solid var(--gold);color:var(--gold);padding:0.8rem 1.4rem;cursor:pointer;border-radius:4px;font-family:var(--font-head);font-weight:700;transition:all 0.2s ease;font-size:1.2rem;letter-spacing:0.5px}.back-btn:hover{background:rgba(245,197,24,0.2);border-color:#fff;color:#fff;transform:translateX(4px)}.site-footer{margin-top:4rem;padding:2.5rem 2rem;border-top:1px solid var(--border);background:var(--surface);text-align:center;font-size:0.8rem;color:var(--muted)}.footer-inner{max-width:900px;margin:0 auto;display:flex;flex-direction:column;gap:1.5rem}.footer-credits-section{display:flex;flex-direction:column;gap:0.5rem}.footer-credits-title{font-family:var(--font-head);font-size:0.65rem;font-weight:700;letter-spacing:2px;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-bottom:0.25rem}.footer-credits-list{display:flex;flex-wrap:wrap;justify-content:center;gap:0.35rem 1.25rem;font-size:0.85rem;color:rgba(255,255,255,0.7)}.footer-credits-list a{color:#9ba0bc;text-decoration:none;border-bottom:1px solid transparent;transition:color 0.15s,border-color 0.15s}.footer-credits-list a:hover{color:var(--gold);border-bottom-color:var(--gold)}.footer-credits-list .credit-sep{color:rgba(255,255,255,0.25)}.footer-discord-contact{display:flex;justify-content:center}.footer-discord-btn{display:inline-flex;align-items:center;gap:8px;background:rgba(88,101,242,0.15);border:1px solid #5865F2;color:#c8cbff;padding:0.45rem 1.2rem;border-radius:4px;text-decoration:none;font-family:var(--font-head);font-size:0.85rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;transition:all 0.2s ease}.footer-discord-btn:hover{background:#5865F2;color:#fff;box-shadow:0 4px 15px rgba(88,101,242,0.4)}.footer-discord-btn .discord-logo{font-size:1rem;line-height:1}.footer-divider{border:none;border-top:1px solid rgba(255,255,255,0.07)}.footer-disclaimer{max-width:700px;margin:0 auto;line-height:1.6;font-size:0.75rem;color:rgba(255,255,255,0.4)}.footer-bottom{font-family:var(--font-head);font-size:0.78rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:rgba(255,255,255,0.35)}.back-to-top{position:fixed;bottom:2rem;left:2rem;width:48px;height:48px;border-radius:50%;background:var(--surface2);border:1px solid var(--gold);color:var(--gold);font-size:1.5rem;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all 0.3s ease;z-index:200;box-shadow:0 4px 12px rgba(0,0,0,0.3)}.back-to-top.show{opacity:1;visibility:visible}.back-to-top:hover{background:var(--gold);color:#000;transform:translateY(-3px);box-shadow:0 6px 16px rgba(245,197,24,0.3)}@media (max-width:768px){.back-to-top{bottom:2.5rem;left:1rem}}#fx{display:none}@media (pointer:fine){#fx{display:block;position:fixed;inset:0;pointer-events:none;z-index:9998}}#career-view{padding:2rem;min-height:100vh;box-sizing:border-box}.career-header{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:1rem;margin-bottom:1.25rem}.career-header h1{font-family:var(--font-head);font-size:2rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin:0}.career-header h1 .gradient{background:linear-gradient(90deg,#00c6ff,#0072ff);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.career-tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:1px solid var(--border);margin-bottom:1.5rem}.career-tab-btn{font-family:var(--font-head);font-size:0.9rem;font-weight:700;letter-spacing:0.5px;text-transform:uppercase;padding:0.65rem 1.4rem;border:none;background:transparent;color:var(--muted);cursor:pointer;border-bottom:2px solid transparent;transition:color 0.15s,border-color 0.15s;position:relative;bottom:-1px}.career-tab-btn:hover{color:var(--text)}.career-tab-btn.active{color:var(--cyan);border-bottom-color:var(--cyan)}#cg-loading{display:none;justify-content:center;align-items:center;padding:4rem 2rem;flex-direction:column;gap:1rem;color:var(--gold);font-family:var(--font-head);font-size:1rem;text-transform:uppercase;letter-spacing:1px}.cg-filters-bar{display:flex;align-items:center;flex-wrap:wrap;gap:0.6rem;margin-bottom:1.25rem}.cg-class-btn{font-family:var(--font-head);font-size:0.82rem;font-weight:700;letter-spacing:0.5px;padding:0.28rem 0.8rem;border:1px solid var(--border);background:transparent;color:rgba(232,232,245,0.7);border-radius:3px;cursor:pointer;transition:all 0.15s}.cg-class-btn:hover{border-color:var(--cyan);color:var(--cyan)}.cg-class-btn.active{border-color:var(--cyan);background:rgba(0,198,255,0.12);color:var(--cyan)}.cg-class-btn[data-cls="S"].active{border-color:#FF4C4C;background:rgba(255,76,76,0.1);color:#FF4C4C}.cg-class-btn[data-cls="A"].active{border-color:#FF8C00;background:rgba(255,140,0,0.1);color:#FF8C00}.cg-class-btn[data-cls="B"].active{border-color:#7ED4FB;background:rgba(126,212,251,0.1);color:#7ED4FB}.cg-class-btn[data-cls="C"].active{border-color:#76E87E;background:rgba(118,232,126,0.1);color:#76E87E}.cg-class-btn[data-cls="D"].active{border-color:#C8B8F0;background:rgba(200,184,240,0.1);color:#C8B8F0}.cg-search-input{flex:1;min-width:160px;max-width:260px;background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--font-body);font-size:0.9rem;padding:0.38rem 0.75rem;outline:none;transition:border-color 0.2s}.cg-search-input:focus{border-color:var(--cyan)}.cg-search-input::placeholder{color:var(--muted)}.cg-sort-select{background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--font-body);font-size:0.88rem;padding:0.38rem 0.75rem;cursor:pointer;outline:none;transition:border-color 0.2s}.cg-sort-select:focus{border-color:var(--cyan)}.cg-chapter-chips{display:flex;flex-wrap:wrap;gap:0.4rem;margin-bottom:1rem}.cg-chapter-chip{font-family:var(--font-head);font-size:0.78rem;font-weight:700;padding:0.25rem 0.7rem;border:1px solid var(--border);border-radius:4px;background:transparent;color:var(--muted);cursor:pointer;transition:all 0.15s;display:inline-flex;align-items:center;gap:0.35rem}.cg-chapter-chip span{background:rgba(255,255,255,0.06);border-radius:3px;padding:0 5px;font-size:0.72rem}.cg-chapter-chip:hover{border-color:var(--cyan);color:var(--cyan)}.cg-chapter-chip.active{border-color:var(--cyan);background:rgba(0,198,255,0.1);color:var(--cyan)}.cg-chip-all{border-color:rgba(255,76,76,0.4);color:#ff6b6b}.cg-chip-all:hover{border-color:#ff4c4c;background:rgba(255,76,76,0.08);color:#ff4c4c}.cg-totals-line{font-family:var(--font-head);font-size:0.8rem;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:1rem}.cg-section-head{display:flex;align-items:center;flex-wrap:wrap;gap:0.75rem;margin-bottom:0.85rem;padding-bottom:0.5rem;border-bottom:1px solid var(--border)}.cg-section-title{font-family:var(--font-head);font-size:1.05rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text)}.cg-section-badge{font-family:var(--font-head);font-size:0.7rem;font-weight:700;background:rgba(0,198,255,0.12);border:1px solid rgba(0,198,255,0.3);color:var(--cyan);padding:2px 8px;border-radius:4px}.cg-section-desc{font-size:0.88rem;color:var(--muted);margin-bottom:0.85rem;line-height:1.5}.cg-banner{display:flex;align-items:flex-start;gap:1rem;background:rgba(0,198,255,0.06);border:1px solid rgba(0,198,255,0.2);border-radius:10px;padding:0.85rem 1rem;margin-bottom:1.25rem}.cg-banner-body{flex:1;font-size:0.88rem;color:var(--text);line-height:1.55}.cg-banner-body strong{color:var(--cyan)}.cg-banner-close{background:transparent;border:none;color:var(--muted);font-size:1rem;cursor:pointer;padding:0 0.25rem;line-height:1;transition:color 0.15s;flex-shrink:0}.cg-banner-close:hover{color:var(--text)}.career-unlock-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:0.85rem;margin-bottom:0.5rem}.cg-card{background:var(--surface);border:1px solid var(--border);border-radius:8px;overflow:hidden;cursor:pointer;transition:transform 0.15s,box-shadow 0.15s,border-color 0.15s;display:flex;flex-direction:column}.cg-card:hover{transform:translateY(-3px);box-shadow:0 8px 24px rgba(0,0,0,0.5);border-color:rgba(0,198,255,0.4)}.cg-card:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.cg-card-image{height:110px;background:#0a0a18;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.cg-card-image img{width:100%;height:100%;object-fit:cover;transition:transform 0.3s}.cg-card:hover .cg-card-image img{transform:scale(1.06)}.cg-placeholder{font-family:var(--font-head);font-size:1.6rem;font-weight:700;color:var(--border);letter-spacing:2px}.cg-star-badge{position:absolute;top:6px;left:6px;font-family:var(--font-head);font-size:0.65rem;font-weight:700;letter-spacing:0.5px;padding:2px 7px;border-radius:4px;line-height:1.5}.cg-unlockable-badge{background:rgba(118,232,126,0.85);color:#000}.cg-partial-badge{background:rgba(245,197,24,0.75);color:#000}.cg-class-pip{position:absolute;top:6px;right:6px;font-family:var(--font-head);font-size:0.65rem;font-weight:700;color:#000;width:20px;height:20px;border-radius:3px;display:flex;align-items:center;justify-content:center}.cg-progress-track{height:3px;background:rgba(255,255,255,0.06);flex-shrink:0}.cg-progress-fill{height:100%;border-radius:0;transition:width 0.3s ease}.cg-card-body{padding:0.6rem 0.75rem 0.7rem;display:flex;flex-direction:column;gap:0.3rem;flex:1}.cg-card-brand{font-family:var(--font-head);font-size:0.65rem;color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-card-model{font-family:var(--font-head);font-size:0.85rem;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-card-chips{display:flex;gap:0.3rem;flex-wrap:wrap;margin-top:0.15rem}.cg-bp-chip{font-family:var(--font-head);font-size:0.65rem;font-weight:700;color:var(--gold);background:rgba(245,197,24,0.1);border:1px solid rgba(245,197,24,0.25);border-radius:3px;padding:1px 6px}.cg-eip-chip{font-family:var(--font-head);font-size:0.65rem;font-weight:700;color:#00c6ff;background:rgba(0,198,255,0.1);border:1px solid rgba(0,198,255,0.25);border-radius:3px;padding:1px 6px}.cg-deficit{font-size:0.65rem;color:var(--muted);font-style:italic;margin-top:0.1rem}#career-detail-panel{position:fixed;top:0;right:0;width:420px;max-width:100vw;height:100vh;background:var(--surface);border-left:1px solid var(--border);z-index:500;overflow-y:auto;transform:translateX(100%);transition:transform 0.28s cubic-bezier(0.4,0,0.2,1);box-shadow:-8px 0 40px rgba(0,0,0,0.5)}#career-detail-panel.open{transform:translateX(0)}.cg-panel-inner{padding:1.25rem 1.25rem 3rem;position:relative}.cg-panel-close{position:absolute;top:1rem;right:1rem;background:rgba(255,255,255,0.06);border:1px solid var(--border);color:var(--muted);width:30px;height:30px;border-radius:50%;cursor:pointer;font-size:0.9rem;display:flex;align-items:center;justify-content:center;transition:all 0.15s}.cg-panel-close:hover{background:rgba(255,76,76,0.12);border-color:#ff4c4c;color:#ff4c4c}.cg-panel-hero{display:flex;gap:1rem;align-items:flex-start;margin-bottom:1.25rem;padding-right:2rem}.cg-panel-img{flex-shrink:0;width:120px;height:80px;background:#080812;border-radius:6px;display:flex;align-items:center;justify-content:center;overflow:hidden}.cg-panel-brand{font-family:var(--font-head);font-size:0.72rem;color:var(--muted);text-transform:uppercase;letter-spacing:1px;font-weight:700}.cg-panel-model{font-family:var(--font-head);font-size:1.25rem;font-weight:700;color:var(--text);margin:0.2rem 0 0.4rem;line-height:1.2}.cg-panel-summary{font-size:0.82rem;color:var(--muted);line-height:1.5}.cg-panel-summary strong{color:var(--text)}.cg-panel-label{font-family:var(--font-head);font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--muted);margin-bottom:0.6rem}.cg-threshold-section{background:var(--surface2);border:1px solid var(--border);border-radius:8px;padding:0.85rem 1rem;margin-bottom:1rem}.cg-threshold-row{margin-bottom:0.65rem}.cg-threshold-row:last-child{margin-bottom:0}.cg-threshold-label{font-size:0.82rem;color:var(--text);margin-bottom:0.3rem;display:flex;align-items:center;gap:0.4rem;flex-wrap:wrap}.cg-check{color:#76E87E;font-weight:700}.cg-thresh-short{color:var(--muted);font-size:0.75rem}.cg-timeline{display:flex;flex-direction:column;gap:0}.cg-race-row{display:flex;align-items:flex-start;gap:0.6rem;padding:0.65rem 0;border-bottom:1px solid var(--border)}.cg-race-row:last-child{border-bottom:none}.cg-ch-badge{font-family:var(--font-head);font-size:0.65rem;font-weight:700;background:rgba(0,198,255,0.1);border:1px solid rgba(0,198,255,0.25);color:var(--cyan);padding:2px 7px;border-radius:3px;flex-shrink:0;margin-top:2px}.cg-race-info{flex:1;min-width:0}.cg-race-season{font-family:var(--font-head);font-size:0.7rem;color:var(--muted);margin-bottom:0.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-race-track{font-family:var(--font-head);font-size:0.88rem;font-weight:700;color:var(--text);margin-bottom:0.25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cg-race-meta{display:flex;flex-wrap:wrap;gap:0.3rem}.cg-race-rewards{display:flex;flex-direction:column;gap:0.2rem;align-items:flex-end;flex-shrink:0}.cg-race-bp{font-family:var(--font-head);font-size:0.72rem;font-weight:700;color:var(--gold);background:rgba(245,197,24,0.1);border:1px solid rgba(245,197,24,0.25);border-radius:3px;padding:2px 7px;white-space:nowrap}.cg-race-eip{font-family:var(--font-head);font-size:0.72rem;font-weight:700;color:#00c6ff;background:rgba(0,198,255,0.1);border:1px solid rgba(0,198,255,0.25);border-radius:3px;padding:2px 7px;white-space:nowrap}.career-layout{display:grid;grid-template-columns:300px 1fr;gap:1.5rem;align-items:start}.career-filter-panel{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:1.5rem;box-shadow:0 8px 32px rgba(0,0,0,0.2);position:sticky;top:1rem}.career-filter-panel h2{font-family:var(--font-head);font-size:1rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--cyan);margin:0 0 1.25rem 0}.career-filter-group{margin-bottom:1.25rem}.career-filter-label{font-family:var(--font-head);font-size:0.8rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--text);margin-bottom:0.5rem;display:block}.career-filter-select{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--font-body);font-size:0.95rem;padding:0.5rem 0.75rem;cursor:pointer;outline:none;transition:border-color 0.2s;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239ba0bc' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0.75rem center;padding-right:2rem}.career-filter-select:focus{border-color:var(--cyan)}.career-search-input{width:100%;background:var(--surface2);border:1px solid var(--border);border-radius:8px;color:var(--text);font-family:var(--font-body);font-size:0.95rem;padding:0.5rem 0.75rem;outline:none;transition:border-color 0.2s}.career-search-input:focus{border-color:var(--cyan)}.career-search-input::placeholder{color:var(--muted)}.career-mode-btns{display:flex;flex-wrap:wrap;gap:0.4rem}.career-mode-btn{font-family:var(--font-head);font-size:0.82rem;font-weight:700;letter-spacing:1px;padding:0.3rem 0.75rem;border:1px solid var(--border);background:transparent;color:rgba(232,232,245,0.75);border-radius:4px;cursor:pointer;transition:all 0.15s}.career-mode-btn:hover{border-color:var(--cyan);color:var(--cyan)}.career-mode-btn.active{border-color:var(--cyan);background:rgba(0,198,255,0.12);color:var(--cyan)}.career-reset-btn{width:100%;font-family:var(--font-head);font-size:0.85rem;font-weight:700;letter-spacing:1px;text-transform:uppercase;padding:0.6rem;border:1px solid var(--border);background:transparent;color:var(--muted);border-radius:8px;cursor:pointer;transition:all 0.2s;margin-top:0.5rem}.career-reset-btn:hover{border-color:var(--text);color:var(--text)}.career-divider{border:none;border-top:1px solid var(--border);margin:1.25rem 0}.career-results-panel{min-height:400px}.career-results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:1rem;flex-wrap:wrap}.career-results-count{font-family:var(--font-head);font-size:0.85rem;color:var(--muted);text-transform:uppercase;letter-spacing:1px}.career-results-count span{color:var(--cyan);font-size:1.1rem}.career-results-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:0.75rem}.career-race-card{background:var(--surface);border:1px solid var(--border);border-radius:10px;display:flex;flex-direction:column;justify-content:space-between;gap:0.5rem;padding:1rem 1.1rem 0.75rem;min-height:120px;transition:border-color 0.15s,background 0.15s}.career-race-card:hover{border-color:rgba(0,198,255,0.35);background:var(--surface2)}.career-breadcrumb{font-family:var(--font-head);font-size:0.82rem;font-weight:700;letter-spacing:0.5px;margin-bottom:0.3rem;word-break:break-word}.career-breadcrumb .bc-chapter{color:var(--cyan)}.career-breadcrumb .bc-sep{color:var(--border);margin:0 0.3rem}.career-breadcrumb .bc-season{color:var(--text)}.career-breadcrumb .bc-race{color:var(--gold)}.career-race-info{display:flex;flex-direction:column;gap:0.2rem;min-width:0}.career-track-name{font-family:var(--font-head);font-size:1.15rem;font-weight:700;color:var(--text);letter-spacing:0.5px;word-break:break-word}.career-race-meta{display:flex;flex-wrap:wrap;gap:0.4rem;align-items:center}.career-tag{font-family:var(--font-head);font-size:0.7rem;font-weight:700;letter-spacing:0.5px;padding:0.15rem 0.5rem;border-radius:3px;text-transform:uppercase;white-space:nowrap}.career-tag.location{background:rgba(0,198,255,0.1);border:1px solid rgba(0,198,255,0.25);color:var(--cyan)}.career-tag.mode-classic{background:rgba(245,197,24,0.1);border:1px solid rgba(245,197,24,0.25);color:var(--gold)}.career-tag.mode-cops{background:rgba(255,76,76,0.1);border:1px solid rgba(255,76,76,0.25);color:#FF4C4C}.career-tag.mode-hunted{background:rgba(153,76,255,0.1);border:1px solid rgba(153,76,255,0.25);color:#994CFF}.career-tag.mode-time{background:rgba(0,255,128,0.1);border:1px solid rgba(0,255,128,0.25);color:#00FF80}.career-tag.track-time{background:#05050b;border:1px solid var(--border);color:var(--cyan);box-shadow:inset 0 2px 5px rgba(0,0,0,0.8);display:inline-flex;align-items:center;gap:4px;font-weight:800}.career-tag.track-time i{font-style:normal;opacity:0.5;color:var(--text);font-size:0.75rem}.career-car-req{display:flex;align-items:baseline;gap:0.4rem;border-top:1px solid var(--border);padding-top:0.5rem;margin-top:auto;flex-wrap:wrap}.career-car-req-label{font-family:var(--font-head);font-size:0.6rem;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:0.5px;flex-shrink:0}.career-car-req-value{font-family:var(--font-head);font-size:0.85rem;font-weight:700;color:var(--gold);line-height:1.4;word-break:break-word}.career-car-req-value.class-req{color:var(--cyan)}.career-car-req-value.brand-req{color:#a78bfa}.career-car-req-value.open-req{color:var(--muted);font-weight:400;font-style:italic}.career-empty{text-align:center;padding:4rem 2rem;color:var(--muted)}.career-empty .icon{font-size:3rem;margin-bottom:1rem;opacity:0.4}.career-empty p{font-family:var(--font-head);font-size:1rem;text-transform:uppercase;letter-spacing:1px}@media (max-width:768px){#career-view{padding:1rem 0.5rem}.career-unlock-gallery{grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:0.6rem}.cg-filters-bar{gap:0.4rem}.cg-search-input{max-width:100%}#career-detail-panel{width:100%;height:85vh;top:auto;bottom:0;right:0;border-left:none;border-top:1px solid var(--border);border-radius:16px 16px 0 0;transform:translateY(100%)}#career-detail-panel.open{transform:translateY(0)}.cg-panel-hero{flex-direction:column}.cg-panel-img{width:100%;height:100px}.career-layout{grid-template-columns:1fr}.career-filter-panel{position:static;padding:1rem}.career-race-card{grid-template-columns:1fr;padding:1rem}.career-header h1{font-size:1.4rem}.career-results-grid{grid-template-columns:1fr}}