/* Release48: the established cream/copper/teal collector world, organized around departure. */
.drive48{--drive48-ink:#f4ebdd;--drive48-muted:#b9c4bd;--drive48-accent:#ffc382;--drive48-teal:#88e5d1;color:var(--drive48-ink);max-width:1320px;margin-inline:auto;line-height:1.5;min-width:0;scrollbar-color:#62887c #182321}
.drive48 ::selection{background:var(--drive48-accent);color:#182321}.drive48 :is(input,select){accent-color:var(--drive48-teal);caret-color:var(--drive48-teal)}.drive48 :is(button,select,summary):focus-visible{outline:3px solid var(--drive48-teal);outline-offset:4px}.drive48 button:disabled{opacity:.5;cursor:not-allowed}.drive48 :is(h1,h2,h3,h4){text-wrap:balance}.drive48 svg{width:24px;height:24px;flex-shrink:0}.drive48 p{max-width:68ch}.drive48-heading{display:flex;gap:24px;justify-content:space-between;align-items:flex-end;margin-bottom:28px}.drive48-heading h1{font-size:clamp(3.2rem,6vw,5.6rem);line-height:.95;margin:0}.drive48-heading p{margin:.85rem 0 0;color:var(--drive48-muted)}.drive48-wallet{text-align:right;display:grid;white-space:nowrap;font-variant-numeric:tabular-nums}.drive48-wallet strong{font-size:1.35rem;color:var(--drive48-accent)}.drive48-wallet span{font-size:.77rem;color:var(--drive48-muted)}
.drive48-tabs{display:flex;gap:0;border-bottom:1px solid #53635c;margin-bottom:24px}.drive48-tabs button{display:flex;align-items:center;gap:10px;flex:1;min-height:62px;color:var(--drive48-muted);background:transparent;border:0;border-bottom:3px solid transparent;padding:12px 20px;cursor:pointer;font:inherit}.drive48-tabs button span{font-weight:750;font-size:1.05rem}.drive48-tabs button small{margin-left:auto;color:inherit;font-size:.75rem}.drive48-tabs [aria-pressed=true]{border-bottom-color:var(--drive48-accent);color:var(--drive48-ink);background:#31403855}.drive48-tabs [aria-pressed=true] svg{color:var(--drive48-accent)}
.drive48-departure{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(290px,1fr);gap:0;background:#1a2425;border:1px solid #51615b;border-radius:14px;overflow:hidden}.drive48-atlas{position:relative;min-width:0;overflow:hidden;background:#15363e;display:grid;align-items:center;min-height:390px}.drive48-atlas>img{display:block;width:100%;height:auto;aspect-ratio:5/3;object-fit:contain}.drive48-route{position:absolute;inset:50% 0 auto;width:100%!important;height:auto!important;aspect-ratio:5/3;transform:translateY(-50%);pointer-events:none}.drive48-route path{fill:none;stroke:var(--drive48-teal);stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round}.drive48-route .drive48-route-shadow{stroke:#0b252a;stroke-width:6}.drive48-atlas-caption{position:absolute;left:24px;right:24px;bottom:20px;display:grid;gap:4px;padding:12px 16px;background:#102a30eb;border-radius:8px;color:#edf1df}.drive48-atlas-caption>span:first-child{display:flex;gap:8px;align-items:center;color:#9ce7d5;font-size:.8rem}.drive48-atlas-caption svg{width:19px;height:19px}.drive48-atlas-caption strong{font-size:1.15rem}.drive48-atlas-caption>span:last-child{color:#c2d0c0;font-size:.76rem}
.drive48-selection{padding:22px 26px 20px;min-width:0;border-left:1px solid #51615b;background:#202a28}.drive48-vehicle-art{height:148px;display:flex;align-items:center;justify-content:center;margin:-10px -12px 0}.drive48-vehicle-art img{width:100%;height:100%;object-fit:contain;max-width:360px}.drive48-selection h2{font-size:1.55rem;line-height:1.1;margin:10px 0 22px;overflow-wrap:anywhere}.drive48-selection label{display:grid;gap:6px;font-size:.76rem;color:#d5d9cc;min-width:0}.drive48 .field{width:100%;max-width:100%;min-width:0;min-height:44px;background:#15201f;border:1px solid #687870;color:#f4ebdd;border-radius:6px;padding:10px;font:inherit}.drive48-preferences{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:16px}.drive48-device-note{font-size:.72rem;color:var(--drive48-muted);margin:14px 0 0}.drive48-empty{display:flex;flex-direction:column;justify-content:center;height:100%;padding:20px 0}.drive48-empty p{color:var(--drive48-muted)}.drive48-empty .button{align-self:flex-start;white-space:normal;min-height:44px}
.drive48-activities{display:flex;gap:0;margin:24px 0 38px;background:#252b2b;border-radius:12px;overflow:hidden}.drive48-activity{flex:1;display:flex;flex-direction:column;gap:14px;align-items:flex-start;text-align:left;min-width:0;padding:24px;background:transparent;border:0;border-right:1px solid #52625a;color:var(--drive48-ink);font:inherit;cursor:pointer}.drive48-activity:last-child{border-right:0}.drive48-activity>span:first-child{display:flex;align-items:center;gap:12px}.drive48-activity strong{font-size:1.65rem;line-height:1.1}.drive48-activity>span:nth-child(2){font-size:.85rem;color:#c0c9bf;max-width:28ch}.drive48-activity b{font-size:.8rem;color:var(--drive48-accent);display:flex;align-items:center;gap:10px;margin-top:auto}.drive48-activity b svg{width:18px;height:18px}.drive48-cruise{background:#31443a}.drive48-activity:active{background:#3b4b42}.drive48-racing{margin-bottom:26px}.drive48-fold{border-top:1px solid #52625a;padding:0;margin:0;background:transparent}.drive48-fold>summary{display:flex;justify-content:space-between;gap:16px;align-items:center;min-height:68px;padding:18px 0;cursor:pointer;font-weight:750;font-size:1.12rem;list-style:none}.drive48-fold>summary::-webkit-details-marker{display:none}.drive48-fold>summary:after{content:'+';color:var(--drive48-accent);font-size:1.5rem;margin-left:8px}.drive48-fold[open]>summary:after{content:'−'}.drive48-fold>summary span{margin-left:auto;font-size:.76rem;font-weight:450;color:var(--drive48-muted)}.drive48-fold>.race-course-selection{margin-top:0;padding-bottom:24px}.drive48 .race-course-selection>h3{display:none}.drive48 .race-course-selection{background:transparent;border:0;padding-inline:0}.drive48 .race-course-grid{gap:0 24px;grid-template-columns:repeat(3,minmax(0,1fr))}.drive48 .race-course-item{background:transparent;border:0;border-top:1px solid #4d5b56;border-radius:0;padding:18px 0;margin-top:18px;display:flex;gap:14px;align-items:flex-start}.drive48 .race-course-item.is-selected{border-top-color:var(--drive48-teal)}.drive48 .race-course-preview{width:70px;height:70px;color:#b2bfae;flex:0 0 70px}.drive48 .is-selected .race-course-preview{color:var(--drive48-teal)}.drive48 .race-course-item h4{font-size:1rem;margin:0 0 8px}.drive48 .race-course-item p{font-size:.74rem;color:var(--drive48-muted);margin:4px 0}.drive48 .championship-lobby{padding:0;margin:0 0 24px;background:transparent;border:0;border-radius:0}.drive48 .championship-lobby h2{font-size:1.5rem}.drive48 .championship-cups article{border-top:1px solid #52625a}.drive48 .championship-cups{gap:24px}.drive48 .championship-cups p{min-height:0}.drive48 .championship-trial{margin-bottom:0}.drive48-workshop{margin:10px 0 32px}.drive48-workshop>p{color:var(--drive48-muted);margin-bottom:24px}.drive48-daily{display:grid;grid-template-columns:1fr 1.2fr;gap:40px;margin:40px 0 30px;padding:28px 0;border-top:1px solid #52625a}.drive48-daily h2{font-size:1.6rem;line-height:1.15;margin:0 0 12px}.drive48-daily p{color:var(--drive48-muted);font-size:.9rem;margin:0}.drive48-daily ul{padding:0;margin:0;list-style:none}.drive48-daily li{display:flex;gap:16px;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #3e4d46;font-size:.8rem}.drive48-daily li strong{color:var(--drive48-accent);white-space:nowrap;font-variant-numeric:tabular-nums}.drive48 .drive-help{padding:0;border:0;border-top:1px solid #52625a}.drive48 .drive-help p{color:var(--drive48-muted);font-size:.85rem}
@media(hover:hover) and (pointer:fine){.drive48-activity:hover{background:#394b41}.drive48-tabs button:hover{color:var(--drive48-ink);background:#31403855}.drive48 summary:hover{color:var(--drive48-accent)}}
@media(max-width:900px){.drive48-departure{grid-template-columns:minmax(0,1.2fr) minmax(270px,1fr)}.drive48-atlas{min-height:360px}.drive48-selection{padding:20px}.drive48 .race-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.drive48-activity{padding:20px}.drive48-activity>span:nth-child(2){font-size:.8rem}.drive48-daily{gap:24px}}
@media(max-width:620px){.drive48-heading{align-items:flex-start;gap:12px;margin-bottom:22px}.drive48-heading h1{font-size:3.1rem}.drive48-heading p{font-size:.84rem}.drive48-wallet strong{font-size:1.05rem}.drive48-wallet span{font-size:.63rem}.drive48-tabs{margin-bottom:18px}.drive48-tabs button{padding:12px 8px;gap:7px;justify-content:center;flex-wrap:wrap;min-height:68px}.drive48-tabs button svg{width:20px;height:20px}.drive48-tabs button span{font-size:.95rem}.drive48-tabs button small{margin:0;width:100%;font-size:.68rem;line-height:1;text-align:center}.drive48-departure{grid-template-columns:minmax(0,1fr)}.drive48-atlas{min-height:275px}.drive48-atlas-caption{left:14px;right:14px;bottom:12px;padding:9px 12px}.drive48-atlas-caption strong{font-size:1rem}.drive48-atlas-caption>span:last-child{font-size:.66rem}.drive48-selection{border-left:0;border-top:1px solid #51615b;padding:18px}.drive48-vehicle-art{height:124px;margin:-14px 0 0}.drive48-selection h2{font-size:1.45rem;margin:0 0 18px}.drive48-preferences{gap:12px;margin-top:12px}.drive48-activities{flex-direction:column;margin:20px 0 26px}.drive48-activity{display:grid;grid-template-columns:1fr auto;gap:8px 14px;padding:18px;border-right:0;border-bottom:1px solid #52625a}.drive48-activity:last-child{border-bottom:0}.drive48-activity>span:first-child{gap:9px}.drive48-activity strong{font-size:1.35rem}.drive48-activity>span:nth-child(2){grid-column:1/-1;grid-row:2;font-size:.78rem;max-width:45ch}.drive48-activity b{grid-column:2;grid-row:1;font-size:.7rem;margin:0;gap:4px}.drive48-fold>summary{font-size:1rem;flex-wrap:wrap;gap:2px 12px;min-height:66px}.drive48-fold>summary span{font-size:.7rem;order:3;flex-basis:100%;margin:0}.drive48-fold>summary:after{margin-left:auto}.drive48 .race-course-grid{grid-template-columns:minmax(0,1fr)}.drive48 .race-course-item{margin-top:12px;padding:14px 0;align-items:center}.drive48 .race-course-preview{width:68px;height:68px;flex-basis:68px}.drive48-daily{grid-template-columns:1fr;gap:18px;margin:28px 0 20px;padding:24px 0}.drive48-daily h2{font-size:1.45rem}.drive48-daily p{font-size:.82rem}.drive48-daily li{font-size:.76rem}.drive48 .championship-lobby h2{font-size:1.35rem}}
@media(prefers-reduced-motion:reduce){.drive48 *{scroll-behavior:auto}}

/* An idle empty live region must never protrude into a viewport. */
#toast:not(.show){visibility:hidden}
