@import '_content/SimTelemetry.Achievements.Web/SimTelemetry.Achievements.Web.r2c45kml34.bundle.scp.css';
@import '_content/SimTelemetry.Billing.Web/SimTelemetry.Billing.Web.dk9xsamu1m.bundle.scp.css';
@import '_content/SimTelemetry.Cars.Web/SimTelemetry.Cars.Web.2iskl1dtw1.bundle.scp.css';
@import '_content/SimTelemetry.Fantasy.Web/SimTelemetry.Fantasy.Web.oo8fwruicp.bundle.scp.css';
@import '_content/SimTelemetry.Identity.Web/SimTelemetry.Identity.Web.e8sq9xpbmf.bundle.scp.css';
@import '_content/SimTelemetry.ReleaseNotes.Web/SimTelemetry.ReleaseNotes.Web.pqz0jcnfbx.bundle.scp.css';
@import '_content/SimTelemetry.SyntheticLaps.Web/SimTelemetry.SyntheticLaps.Web.w148zjejxa.bundle.scp.css';
@import '_content/SimTelemetry.Tracks.Web/SimTelemetry.Tracks.Web.8iuvxrk10k.bundle.scp.css';
@import '_content/Telemetry.SharedComponents/Telemetry.SharedComponents.ij0r9uctfr.bundle.scp.css';

/* /Components/Coaching/CoachPlaceHistoryList.razor.rz.scp.css */
/* 0.5 (#4234) — under 640 px each decision is a card: the fate, the reason and the time stay visible without a
   horizontal page scroll (docs/design/coach-place-history.md). */
.coach-place-history td[b-lrqfl7dbau] {
    overflow-wrap: anywhere;
}

@media (max-width: 640px) {
    .coach-place-history thead[b-lrqfl7dbau] {
        display: none;
    }

    .coach-place-history[b-lrqfl7dbau],
    .coach-place-history tbody[b-lrqfl7dbau],
    .coach-place-history tr[b-lrqfl7dbau],
    .coach-place-history td[b-lrqfl7dbau] {
        display: block;
        width: 100%;
    }

    .coach-place-history tr[b-lrqfl7dbau] {
        border: 1px solid var(--bs-border-color, #dee2e6);
        border-radius: 0.375rem;
        margin-bottom: 0.75rem;
        padding: 0.5rem;
    }

    .coach-place-history td[b-lrqfl7dbau] {
        border: 0;
        padding: 0.25rem 0;
    }

    .coach-place-history td[b-lrqfl7dbau]::before {
        content: attr(data-label);
        display: block;
        font-size: 0.75rem;
        font-weight: 600;
        opacity: 0.7;
    }
}
/* /Components/Coaching/TrainingCornerAddDialog.razor.rz.scp.css */
/* The cone's short dialog (design canvas 2026-10-21, "Pachołek"): 440 px in the middle of a computer or tablet, a
   sheet from the bottom on a phone (upright or on its side). */
.tc-add__backdrop[b-3eir58vthp] {
    position: fixed;
    inset: 0;
    z-index: 1200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
    background: rgb(2 6 23 / 0.6);
}

.tc-add[b-3eir58vthp] {
    width: min(440px, 100%);
    max-height: calc(100vh - 32px);
    overflow-y: auto;
    display: flex;
    flex-direction: column;
    gap: 12px;
    padding: 18px;
    border-radius: 16px;
    border: 1px solid var(--ghostai-border, #262c44);
    background: var(--ghostai-color-surface, #131a2e);
    color: var(--ghostai-color-text, #e2e8f0);
    box-shadow: 0 24px 48px rgb(0 0 0 / 0.45);
}

.tc-add__head[b-3eir58vthp] { display: flex; gap: 12px; align-items: flex-start; }

.tc-add__icon[b-3eir58vthp] {
    width: 44px;
    height: 44px;
    flex: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: color-mix(in srgb, var(--ghostai-color-accent, #38bdf8) 14%, transparent);
    color: var(--ghostai-color-accent, #38bdf8);
}

.tc-add__title[b-3eir58vthp] { margin: 0; font-size: 18px; font-weight: 700; line-height: 1.25; }
.tc-add__sub[b-3eir58vthp] { display: block; margin-top: 2px; font-size: 12px; color: var(--ghostai-color-text-muted, #94a3b8); }

.tc-add__row[b-3eir58vthp] { display: flex; justify-content: space-between; gap: 8px; font-size: 13px; }
.tc-add__row b[b-3eir58vthp] { font-family: var(--ghostai-font-numeric); font-variant-numeric: tabular-nums; }

.tc-add__slots[b-3eir58vthp] { display: grid; grid-template-columns: repeat(auto-fit, minmax(84px, 1fr)); gap: 8px; }

.tc-add__slot[b-3eir58vthp] {
    min-height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px 8px;
    border-radius: 10px;
    border: 1px solid var(--ghostai-border, #262c44);
    background: var(--ghostai-color-surface-raised, #1b2340);
    color: inherit;
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    text-align: center;
}

button.tc-add__slot[b-3eir58vthp] { cursor: pointer; }

.tc-add__slot.is-new[b-3eir58vthp] {
    border: 1px dashed var(--ghostai-color-accent, #38bdf8);
    background: color-mix(in srgb, var(--ghostai-color-accent, #38bdf8) 10%, transparent);
    color: var(--ghostai-color-accent, #38bdf8);
}

.tc-add__slot.is-empty[b-3eir58vthp] { border-style: dashed; background: transparent; }
.tc-add__sr[b-3eir58vthp] { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }

.tc-add__note[b-3eir58vthp] {
    margin: 0;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid var(--ghostai-border, #262c44);
    font-size: 13px;
}

.tc-add__note.is-free[b-3eir58vthp] { color: var(--ghostai-color-success, #4ade80); }
.tc-add__note.is-warn[b-3eir58vthp] { color: var(--ghostai-color-warning, #f5b83d); }
.tc-add__note a[b-3eir58vthp] { color: var(--ghostai-color-accent, #38bdf8); }

.tc-add__changes[b-3eir58vthp] { display: flex; flex-direction: column; gap: 6px; }
.tc-add__changes small[b-3eir58vthp] { font-size: 11px; color: var(--ghostai-color-text-muted, #94a3b8); }

.tc-add__bar[b-3eir58vthp] { display: block; height: 4px; border-radius: 2px; background: var(--ghostai-border, #262c44); overflow: hidden; }
.tc-add__bar > span[b-3eir58vthp] { display: block; height: 100%; background: var(--ghostai-color-accent, #38bdf8); }
.tc-add__bar.is-full > span[b-3eir58vthp] { background: var(--ghostai-color-warning, #f5b83d); }

.tc-add__plans[b-3eir58vthp] {
    display: flex;
    justify-content: space-between;
    gap: 8px;
    padding: 10px 12px;
    border-radius: 10px;
    border: 1px solid var(--ghostai-border, #262c44);
    color: var(--ghostai-color-violet, #a78bfa);
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
}

.tc-add__actions[b-3eir58vthp] { display: grid; grid-template-columns: 1fr 1.4fr; gap: 10px; }

.tc-add__cancel[b-3eir58vthp],
.tc-add__confirm[b-3eir58vthp] {
    min-height: 48px;
    border-radius: 12px;
    font: inherit;
    font-weight: 700;
    cursor: pointer;
}

.tc-add__cancel[b-3eir58vthp] { border: 1px solid var(--ghostai-border, #262c44); background: transparent; color: inherit; }

.tc-add__confirm[b-3eir58vthp] {
    border: 0;
    background: var(--ghostai-color-violet, #8b5cf6);
    color: #fff;
}

.tc-add__confirm:disabled[b-3eir58vthp] { opacity: 0.45; cursor: default; }

.tc-add__many[b-3eir58vthp] {
    align-self: center;
    min-height: 36px;
    border: 0;
    background: transparent;
    color: var(--ghostai-color-accent, #38bdf8);
    font: inherit;
    font-size: 13px;
    cursor: pointer;
}

@media (max-width: 760px), (max-width: 1000px) and (max-height: 500px) {
    .tc-add__backdrop[b-3eir58vthp] { align-items: flex-end; padding: 0; }

    .tc-add[b-3eir58vthp] {
        width: 100%;
        max-height: 88vh;
        border-radius: 18px 18px 0 0;
    }

    .tc-add[b-3eir58vthp]::before {
        content: "";
        align-self: center;
        width: 40px;
        height: 4px;
        border-radius: 2px;
        background: var(--ghostai-border, #262c44);
    }
}
/* /Components/Coaching/TrainingCornerAreasDialog.razor.rz.scp.css */
/* "Trenuj dalej": the track's corners and sequences as a tick list, in the "Send to device" dialog's frame. Design-system
   tokens only; at 390 px the dialog is a full-screen sheet with the places as tiles two to a row, and the dialog
   scrolls inside the viewport. */
.tc-areas-dialog__backdrop[b-z7nw7jaxnj] {
    position: fixed;
    inset: 0;
    z-index: 1000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: var(--ghostai-space-3, 0.75rem);
    background: rgba(0, 0, 0, 0.55);
}

.tc-areas-dialog[b-z7nw7jaxnj] {
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-2, 0.5rem);
    width: min(34rem, 100%);
    max-height: calc(100dvh - 2 * var(--ghostai-space-3, 0.75rem));
    overflow-y: auto;
    padding: var(--ghostai-space-4, 1rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    background: var(--ghostai-color-surface);
    color: var(--ghostai-color-text-primary);
    text-align: left;
    white-space: normal;
    overflow-wrap: anywhere;
}

.tc-areas-dialog p[b-z7nw7jaxnj] {
    margin: 0;
}

.tc-areas-dialog__title[b-z7nw7jaxnj] {
    margin: 0;
    font-size: var(--ghostai-type-h3, 1.15rem);
}

.tc-areas-dialog__count[b-z7nw7jaxnj] {
    font-weight: 600;
}

.tc-areas-dialog__muted[b-z7nw7jaxnj] {
    color: var(--ghostai-color-text-muted);
    font-size: var(--ghostai-type-small, 0.85rem);
}

.tc-areas-dialog__refusal[b-z7nw7jaxnj] {
    color: var(--ghostai-color-warning, var(--ghostai-color-text-primary));
}

.tc-areas-dialog__refusal a[b-z7nw7jaxnj] {
    font-weight: 600;
    white-space: nowrap;
}

.tc-areas-dialog__bulk[b-z7nw7jaxnj] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ghostai-space-2, 0.5rem);
}

.tc-areas-dialog__list[b-z7nw7jaxnj] {
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-1, 0.25rem);
    margin: 0;
    padding: 0;
    list-style: none;
}

.tc-areas-dialog__row[b-z7nw7jaxnj] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-1, 0.25rem) var(--ghostai-space-3, 0.75rem);
    min-height: var(--ghostai-touch-target, 44px);
    padding: var(--ghostai-space-1, 0.25rem) var(--ghostai-space-2, 0.5rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    cursor: pointer;
}

.tc-areas-dialog__row--checked[b-z7nw7jaxnj] {
    border-color: var(--ghostai-color-accent, var(--ghostai-color-text-primary));
}

.tc-areas-dialog__row input[b-z7nw7jaxnj] {
    width: 1.25rem;
    height: 1.25rem;
    flex: 0 0 auto;
}

.tc-areas-dialog__text[b-z7nw7jaxnj] {
    display: flex;
    flex: 1 1 8rem;
    flex-direction: column;
    min-width: 0;
}

.tc-areas-dialog__name[b-z7nw7jaxnj] {
    font-weight: 600;
}

/* 0.4.1 — line 1: the area's number and its loss ("T14 +0,27 s"); line 2: its name. */
.tc-areas-dialog__head[b-z7nw7jaxnj] {
    display: flex;
    align-items: baseline;
    gap: var(--ghostai-space-2, 0.5rem);
    min-width: 0;
}

.tc-areas-dialog__code[b-z7nw7jaxnj] {
    font-weight: 700;
    white-space: nowrap;
}

.tc-areas-dialog__head .tc-areas-dialog__loss[b-z7nw7jaxnj] {
    min-width: 0;
    text-align: left;
}

.tc-areas-dialog__kind .tc-areas-dialog__name[b-z7nw7jaxnj] {
    color: var(--ghostai-color-text-primary, inherit);
    font-weight: 500;
}

.tc-areas-dialog__kind[b-z7nw7jaxnj] {
    color: var(--ghostai-color-text-muted);
    font-size: var(--ghostai-type-small, 0.85rem);
}

.tc-areas-dialog__icons[b-z7nw7jaxnj] {
    display: inline-flex;
    gap: var(--ghostai-space-1, 0.25rem);
    flex: 0 0 auto;
}

.tc-areas-dialog__icon[b-z7nw7jaxnj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex: 0 0 auto;
}

.tc-areas-dialog__icon[b-z7nw7jaxnj]  svg {
    width: 1.1rem;
    height: 1.1rem;
}

.tc-areas-dialog__icon--top[b-z7nw7jaxnj] {
    color: var(--ghostai-color-danger, var(--ghostai-color-warning, var(--ghostai-color-text-primary)));
}

.tc-areas-dialog__icon--uneven[b-z7nw7jaxnj] {
    color: var(--ghostai-color-warning, var(--ghostai-color-text-primary));
}

.tc-areas-dialog__loss[b-z7nw7jaxnj] {
    flex: 0 0 auto;
    min-width: 4.5rem;
    text-align: right;
    font-variant-numeric: tabular-nums;
    font-weight: 600;
    white-space: nowrap;
}

.tc-areas-dialog__loss--none[b-z7nw7jaxnj] {
    color: var(--ghostai-color-text-muted);
    font-weight: 400;
}

.tc-areas-dialog__legend[b-z7nw7jaxnj] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-1, 0.25rem) var(--ghostai-space-3, 0.75rem);
}

.tc-areas-dialog__legend-item[b-z7nw7jaxnj] {
    display: inline-flex;
    align-items: center;
    gap: var(--ghostai-space-1, 0.25rem);
}

.tc-areas-dialog__buttons[b-z7nw7jaxnj] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--ghostai-space-2, 0.5rem);
}

/* "Cały tor" with its plan badge (owner 2026-10-22): the button and the badge side by side; below Alien a link to the
   plan comparison, styled as a quiet button. */
.tc-areas-dialog__all[b-z7nw7jaxnj] {
    display: inline-flex;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
}

.tc-areas-dialog__all--locked[b-z7nw7jaxnj] {
    padding: 0.25rem 0.75rem;
    border: 1px solid var(--ghostai-color-border, rgba(148, 163, 184, 0.4));
    border-radius: 999px;
    color: inherit;
    text-decoration: none;
}

.tc-areas-dialog__all--locked:hover .tc-areas-dialog__all-text[b-z7nw7jaxnj] { text-decoration: underline; }

.tc-areas-dialog__all--locked:focus-visible[b-z7nw7jaxnj] {
    outline: 2px solid var(--ghostai-color-accent, #38bdf8);
    outline-offset: 2px;
}

/* 0.4 "Trenuj: wybierz zakręty" — the counter at the top right, the places as tiles (three per row on a wide screen,
   two on a phone), the place clicked green (new, #22c55e family), the trained ones blue (#3b82f6 family), and the plan
   line. */
.tc-areas-dialog[b-z7nw7jaxnj] {
    position: relative;
    width: min(48rem, 100%);
}

.tc-areas-dialog__title[b-z7nw7jaxnj] {
    padding-right: 9rem;
}

.tc-areas-dialog__count[b-z7nw7jaxnj] {
    position: absolute;
    top: var(--ghostai-space-4, 1rem);
    right: var(--ghostai-space-4, 1rem);
    padding: 0.2rem 0.6rem;
    border-radius: var(--ghostai-radius-md, 8px);
    background: color-mix(in srgb, var(--ghostai-color-text-muted, #94a3b8) 18%, transparent);
}

.tc-areas-dialog__plan[b-z7nw7jaxnj] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: var(--ghostai-space-2, 0.5rem);
    padding: var(--ghostai-space-2, 0.5rem) var(--ghostai-space-3, 0.75rem);
    border-radius: var(--ghostai-radius-md, 8px);
    background: color-mix(in srgb, var(--ghostai-color-text-muted, #94a3b8) 10%, transparent);
    font-size: var(--ghostai-type-small, 0.85rem);
}

.tc-areas-dialog__plan a[b-z7nw7jaxnj] {
    font-weight: 600;
    white-space: nowrap;
}

.tc-areas-dialog__swatch[b-z7nw7jaxnj] {
    display: inline-block;
    width: 0.65rem;
    height: 0.65rem;
    border-radius: 3px;
}

.tc-areas-dialog__swatch--new[b-z7nw7jaxnj] { background: #22c55e; }
.tc-areas-dialog__swatch--saved[b-z7nw7jaxnj] { background: #3b82f6; }

.tc-areas-dialog__list[b-z7nw7jaxnj] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: var(--ghostai-space-2, 0.5rem);
}

.tc-areas-dialog__row[b-z7nw7jaxnj] {
    height: 100%;
    align-content: flex-start;
    border-radius: var(--ghostai-radius-lg, 12px);
}

.tc-areas-dialog__row--new[b-z7nw7jaxnj] {
    border: 2px solid #22c55e;
    background: color-mix(in srgb, #22c55e 14%, var(--ghostai-color-surface, #0f172a));
}

.tc-areas-dialog__row--saved[b-z7nw7jaxnj] {
    border: 2px solid #3b82f6;
    background: color-mix(in srgb, #3b82f6 18%, var(--ghostai-color-surface, #0f172a));
}

.tc-areas-dialog__row--removing[b-z7nw7jaxnj] {
    border-style: dashed;
    opacity: 0.75;
}

.tc-areas-dialog__row--new input[b-z7nw7jaxnj] { accent-color: #22c55e; }
.tc-areas-dialog__row--saved input[b-z7nw7jaxnj] { accent-color: #3b82f6; }

@media (max-width: 760px) {
    .tc-areas-dialog__list[b-z7nw7jaxnj] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* 0.4.2 (e2e 0.4.1 #2) — on a phone the dialog is a full-screen sheet held to the viewport (never wider than the screen,
   even when the page behind it is), and the places wrap as tiles two to a row (390 px: two columns). */
@media (max-width: 480px) {
    .tc-areas-dialog__backdrop[b-z7nw7jaxnj] {
        right: auto;
        width: 100vw;
        max-width: 100vw;
        padding: 0;
        align-items: stretch;
    }

    .tc-areas-dialog[b-z7nw7jaxnj] {
        width: 100vw;
        max-width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        overflow-x: hidden;
        border: 0;
        border-radius: 0;
        padding: var(--ghostai-space-3, 0.75rem);
    }

    .tc-areas-dialog > *[b-z7nw7jaxnj] { flex-shrink: 0; min-width: 0; max-width: 100%; }
    .tc-areas-dialog__list[b-z7nw7jaxnj] { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .tc-areas-dialog__row[b-z7nw7jaxnj] { gap: var(--ghostai-space-1, 0.25rem) var(--ghostai-space-2, 0.5rem); padding: var(--ghostai-space-2, 0.5rem); }
    .tc-areas-dialog__text[b-z7nw7jaxnj] { flex: 1 1 0; }
    .tc-areas-dialog__head[b-z7nw7jaxnj] { flex-wrap: wrap; column-gap: var(--ghostai-space-1, 0.25rem); }
    .tc-areas-dialog__loss[b-z7nw7jaxnj] { min-width: 0; }
    .tc-areas-dialog__plan a[b-z7nw7jaxnj],
    .tc-areas-dialog__refusal a[b-z7nw7jaxnj] { white-space: normal; }
    .tc-areas-dialog__title[b-z7nw7jaxnj] { padding-right: 0; }
    .tc-areas-dialog__count[b-z7nw7jaxnj] { position: static; align-self: flex-start; }
}
/* /Components/Coaching/TrainingCornerBriefingHeader.razor.rz.scp.css */
.training-briefing[b-qwrgermrcx] { display: grid; gap: 1rem; min-width: 0; margin-block-end: 1.5rem; overflow-wrap: anywhere; }
.training-briefing__plot[b-qwrgermrcx] { width: 100%; max-height: 260px; }
.training-briefing__own[b-qwrgermrcx] { stroke: var(--ghostai-color-accent, #42bce7); fill: none; stroke-width: 2; }
.training-briefing__reference[b-qwrgermrcx] { stroke: currentColor; fill: none; stroke-width: 2; stroke-dasharray: 6 4; }
/* /Components/Coaching/TrainingCornerConeButton.razor.rz.scp.css */
/* A 44 × 44 cone beside a loss (design canvas 2026-10-21, "Pachołek"). Trained: filled with the accent. */
.tc-cone[b-9cczqt3k0m] { display: inline-flex; flex-direction: column; align-items: flex-end; gap: 4px; }

.tc-cone__button[b-9cczqt3k0m] {
    width: 44px;
    height: 44px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    border: 1px solid var(--ghostai-border, #262c44);
    background: transparent;
    color: var(--ghostai-color-text-muted, #94a3b8);
    cursor: pointer;
}

.tc-cone__button:hover:not(:disabled)[b-9cczqt3k0m],
.tc-cone__button:focus-visible[b-9cczqt3k0m] { color: var(--ghostai-color-accent, #38bdf8); border-color: var(--ghostai-color-accent, #38bdf8); }

.tc-cone[data-state="trained"] .tc-cone__button[b-9cczqt3k0m] {
    color: var(--ghostai-color-accent, #38bdf8);
    border-color: var(--ghostai-color-accent, #38bdf8);
    background: color-mix(in srgb, var(--ghostai-color-accent, #38bdf8) 14%, transparent);
}

.tc-cone[data-state="no-changes"] .tc-cone__button[b-9cczqt3k0m],
.tc-cone[data-state="mode-off"] .tc-cone__button[b-9cczqt3k0m] { border-style: dashed; }

.tc-cone__button:disabled[b-9cczqt3k0m] { opacity: 0.5; cursor: default; }

.tc-cone__error[b-9cczqt3k0m] { max-width: 220px; font-size: 12px; color: var(--ghostai-color-danger, #f87171); text-align: right; }
/* /Components/Coaching/TrainingCornerConeIcon.razor.rz.scp.css */
/* The cone (design canvas 2026-10-21, "Pachołek"): the badge carries the state's colour. */
.tc-cone-icon[b-s2lop2a72u] { display: block; flex: none; }
.tc-cone-icon__badge[b-s2lop2a72u] { fill: var(--ghostai-color-accent, #38bdf8); stroke: none; }
.tc-cone-icon__badge--warn[b-s2lop2a72u] { fill: var(--ghostai-color-warning, #f5b83d); }
.tc-cone-icon__badge--off[b-s2lop2a72u] { fill: var(--ghostai-color-text-muted, #94a3b8); }
.tc-cone-icon__ink[b-s2lop2a72u] { stroke: var(--ghostai-color-bg, #04111f); fill: none; }
/* /Components/Coaching/TrainingCornerHintView.razor.rz.scp.css */
/* The corner hint fits the narrowest window it is opened in (the MAUI popup, 320 px) up to a tablet's (900 px)
   without a horizontal scrollbar on the page: the hint never grows past its window, and the one part that cannot
   shrink — the details table — scrolls inside its own wrapper instead of widening the page.

   Nothing here makes a CARD a scroll container: the place card holds StickyColumns, whose drawing sticks while the
   charts scroll (position: sticky), and a scrolling ancestor would pin it inside a box that never scrolls. */
.ghostai-training-corner-hint[b-1yyd6b8bnv] {
    min-width: 0;
    max-width: 100%;
}

.ghostai-training-corner-hint[b-1yyd6b8bnv]  .ghostai-driver-report__scroll {
    max-width: 100%;
    overflow-x: auto;
}

.ghostai-training-corner-hint[data-embedded="true"][b-1yyd6b8bnv]  .ghostai-corner-panel,
.ghostai-training-corner-hint[data-embedded="true"][b-1yyd6b8bnv]  .ghostai-corner-panel svg,
.ghostai-training-corner-hint[data-embedded="true"][b-1yyd6b8bnv]  .ghostai-corner-panel canvas {
    max-width: 100%;
}

@media (max-width: 600px) {
    .ghostai-training-corner-hint[data-embedded="true"][b-1yyd6b8bnv]  .ghostai-report-card {
        padding-inline: 0.5rem;
    }
}
/* /Components/Coaching/TrainingCornerProgressChart.razor.rz.scp.css */
.training-corner-progress[b-z4sgl1ifcv] { min-width: 0; margin-block: 1rem; }
.training-corner-progress__plot[b-z4sgl1ifcv] { width: 100%; max-height: 260px; }
.training-corner-progress__axis[b-z4sgl1ifcv] { stroke: var(--ghostai-text-muted, currentColor); stroke-opacity: .4; }
.training-corner-progress__typical[b-z4sgl1ifcv] { stroke: var(--ghostai-color-accent, #42bce7); fill: var(--ghostai-color-accent, #42bce7); stroke-width: 2; }
.training-corner-progress__best[b-z4sgl1ifcv] { stroke: var(--ghostai-color-success, #53b97e); fill: var(--ghostai-color-success, #53b97e); stroke-width: 2; stroke-dasharray: 5 3; }
.training-corner-progress__reference[b-z4sgl1ifcv] { stroke: currentColor; stroke-width: 1; stroke-dasharray: 2 4; }
.training-corner-progress__table[b-z4sgl1ifcv] { overflow-x: auto; }
table[b-z4sgl1ifcv] { width: 100%; border-collapse: collapse; font-variant-numeric: tabular-nums; font-size: .875rem; }
th[b-z4sgl1ifcv], td[b-z4sgl1ifcv] { padding: .4rem; text-align: start; overflow-wrap: anywhere; }
/* /Components/Coaching/TrainingCornerSettingsSection.razor.rz.scp.css */
.training-corner-settings[b-j03ynexx57] { display: grid; gap: var(--ghostai-space-4); min-width: 0; }
.training-corner-settings p[b-j03ynexx57] { margin: 0; }
.training-corner-settings__note[b-j03ynexx57] { color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); line-height: 1.55; overflow-wrap: anywhere; }
.training-corner-settings__error[b-j03ynexx57] { color: var(--ghostai-color-danger); font-size: var(--ghostai-type-small); }
.training-corner-settings__empty[b-j03ynexx57] { color: var(--ghostai-color-text-primary); font-size: var(--ghostai-type-small); }
.training-corner-settings__saved[b-j03ynexx57] { margin: 0 auto 0 0; color: var(--ghostai-color-success); font-size: var(--ghostai-type-small); }

/* The switch at the end of the row, the label and what it does before it. */
.training-corner-switch[b-j03ynexx57] { display: flex; flex-wrap: nowrap; align-items: flex-start; justify-content: space-between; gap: var(--ghostai-space-4); min-width: 0; }
.training-corner-switch__text[b-j03ynexx57] { display: flex; flex-direction: column; gap: var(--ghostai-space-1); min-width: 0; }
.training-corner-switch__hint[b-j03ynexx57] { color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); font-weight: 400; line-height: 1.5; overflow-wrap: anywhere; }

/* The three numbers side by side while each keeps 150px, else stacked. */
.training-corner-fields[b-j03ynexx57] { display: flex; flex-wrap: wrap; gap: var(--ghostai-space-3); }
.training-corner-field[b-j03ynexx57] { display: flex; flex: 1 1 150px; flex-direction: column; gap: var(--ghostai-space-1); min-width: 0; }
.training-corner-field label[b-j03ynexx57] { color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); font-weight: 600; }
.training-corner-field input[b-j03ynexx57],
.training-corner-field select[b-j03ynexx57] { width: 100%; min-height: var(--ghostai-touch-target, 44px); padding: 0 var(--ghostai-space-3); border: 1px solid var(--ghostai-color-border-strong); border-radius: 10px; background: var(--ghostai-color-input-bg); color: var(--ghostai-color-text-primary); font: inherit; box-sizing: border-box; }
.training-corner-field input[readonly][b-j03ynexx57] { color: var(--ghostai-color-text-secondary); }
/* 0.4.2: the speech-overlap choice — a short select on its own row, its note under it. */
.training-corner-field--select select[b-j03ynexx57] { max-width: 12rem; }

.training-corner-chips[b-j03ynexx57] { display: flex; flex-wrap: wrap; gap: var(--ghostai-space-2); }
.training-corner-chip[b-j03ynexx57] { padding: 4px 10px; border-radius: var(--ghostai-radius-pill); background: var(--ghostai-color-surface-2); color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); font-weight: 600; }
.training-corner-chip--plan[b-j03ynexx57] { background: color-mix(in srgb, var(--ghostai-color-primary) 18%, transparent); color: var(--ghostai-color-text-primary); }

.training-corner-selection[b-j03ynexx57] { border-block-start: 1px solid var(--ghostai-color-border); padding-block: 1rem; min-width: 0; overflow-wrap: anywhere; }
.training-corner-selection button[b-j03ynexx57] { margin-inline-start: 1rem; }
.training-corner-combination[b-j03ynexx57] { display: grid; gap: .25rem; min-width: 0; border-block-start: 1px solid var(--ghostai-color-border); padding-block-start: .75rem; }
.training-corner-selection--inactive[b-j03ynexx57] { opacity: .6; }
.training-corner-selection__inactive[b-j03ynexx57] { font-style: italic; }
/* /Components/Coaching/TrainingCornerTrainCountButton.razor.rz.scp.css */
/* "Trening · n" in the phone's page bar (design canvas 2026-10-21). */
.tc-count[b-0wtcmyfrws] {
    min-height: 36px;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px;
    border-radius: 999px;
    border: 1px solid var(--ghostai-color-accent, #38bdf8);
    background: transparent;
    color: var(--ghostai-color-accent, #38bdf8);
    font: inherit;
    font-size: 13px;
    font-weight: 700;
    white-space: nowrap;
    cursor: pointer;
}
/* /Components/Coaching/TrainingCornerTrainedChip.razor.rz.scp.css */
/* "Trenujesz": the design-system badge as a blue pill (#3b82f6 family), the colour of every "trained" mark. */
.tc-trained-chip[b-lhh23lkp99] {
    display: inline-flex;
    margin-left: var(--ghostai-space-2, 0.5rem);
    vertical-align: middle;
    white-space: nowrap;
}

.tc-trained-chip[b-lhh23lkp99]  .tds-badge {
    border: 0;
    border-radius: 999px;
    padding: 0.15rem 0.6rem;
    background: #1d4ed8;
    color: #dbeafe;
    font-size: 0.6875rem;
    font-weight: 600;
}
/* /Components/Coaching/TrainingCornerTrainToggle.razor.rz.scp.css */
/* "Trenuj" / "Usuń z treningu" (0.4.2, canvas "Trenuj w kartach"): pills 36 px tall (44 px at phone width and on
   touch). Indigo outline = add; blue split pill = trained (#3b82f6 family, the colour every "trained" mark shares);
   red "×" = remove (confirmed in the shared TelemetryConfirmDialog); dashed grey with a lock = the plan's limit; green = just added. */
.tc-train[b-3x67d1cp1v] {
    --tc-pill-height: 36px;
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 6px 10px;
    vertical-align: middle;
    font-family: var(--ghostai-font-sans);
}

/* In a card header's top-right corner: right-aligned, wrapping inside the card, never wider than it. */
.tc-train--corner[b-3x67d1cp1v] {
    justify-content: flex-end;
    max-width: 100%;
}

.tc-pill[b-3x67d1cp1v] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    box-sizing: border-box;
    min-height: var(--tc-pill-height);
    padding: 0 14px;
    border-radius: 999px;
    border: 1.5px solid transparent;
    background: transparent;
    font: 700 0.8125rem/1.2 var(--ghostai-font-sans);
    white-space: nowrap;
    cursor: pointer;
}

.tc-pill:focus-visible[b-3x67d1cp1v],
.tc-split__remove:focus-visible[b-3x67d1cp1v] {
    outline: 2px solid #a5b4fc;
    outline-offset: 2px;
}

.tc-pill svg[b-3x67d1cp1v],
.tc-split svg[b-3x67d1cp1v] {
    flex: none;
}

/* Not trained: indigo outline. */
.tc-pill--add[b-3x67d1cp1v] {
    border-color: #818cf8;
    color: #c7d2fe;
}

.tc-pill--add svg[b-3x67d1cp1v] {
    color: #a5b4fc;
}

.tc-pill--add:hover[b-3x67d1cp1v],
.tc-pill--add:focus-visible[b-3x67d1cp1v] {
    border-color: #a5b4fc;
    background: #312e81;
    color: #eef2ff;
}

/* The plan's limit: dashed, a lock, disabled; the reason beside it. */
.tc-pill--locked[b-3x67d1cp1v] {
    border-style: dashed;
    border-color: #6b7280;
    color: #9ca3af;
    cursor: not-allowed;
}

.tc-train__limit[b-3x67d1cp1v] {
    max-width: 16rem;
    color: #d1d5db;
    font-size: 0.75rem;
    line-height: 1.35;
    white-space: normal;
}

.tc-train--corner .tc-train__limit[b-3x67d1cp1v] {
    max-width: var(--ghostai-loss-list-corner-room, 12rem);
    text-align: right;
}

.tc-train__limit a[b-3x67d1cp1v] {
    color: #a5b4fc;
}

.tc-train__limit a:hover[b-3x67d1cp1v] {
    color: #c7d2fe;
}

/* Trained: one blue pill split in two — the state (not a button) and "×". */
.tc-split[b-3x67d1cp1v] {
    display: inline-flex;
    align-items: stretch;
    box-sizing: border-box;
    min-height: var(--tc-pill-height);
    border-radius: 999px;
    /* The outline is drawn inside, so the two halves are the full pill height (44 px on a phone). */
    box-shadow: inset 0 0 0 1px #3b82f6;
    background: #172554;
    overflow: hidden;
}

.tc-split__state[b-3x67d1cp1v] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0 10px 0 12px;
    color: #bfdbfe;
    font-size: 0.8125rem;
    font-weight: 700;
    white-space: nowrap;
}

.tc-split__state svg[b-3x67d1cp1v] {
    color: #93c5fd;
}

.tc-split__remove[b-3x67d1cp1v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: var(--tc-pill-height);
    padding: 0;
    border: 0;
    border-left: 1px solid #3b82f6;
    background: transparent;
    color: #fca5a5;
    cursor: pointer;
}

.tc-split__remove:hover:not(:disabled)[b-3x67d1cp1v],
.tc-split__remove:focus-visible[b-3x67d1cp1v] {
    background: color-mix(in srgb, #7f1d1d 55%, transparent);
    color: #fecaca;
}

.tc-split__remove:disabled[b-3x67d1cp1v] {
    cursor: progress;
    opacity: 0.55;
}

/* "Zapisuję…": the write in flight. */
.tc-pill--busy[b-3x67d1cp1v] {
    border-color: #4b5563;
    color: #d1d5db;
    font-weight: 600;
    cursor: progress;
}

.tc-pill__spinner[b-3x67d1cp1v] {
    animation: tc-train-spin-b-3x67d1cp1v 0.8s linear infinite;
}

@keyframes tc-train-spin-b-3x67d1cp1v {
    to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
    .tc-pill__spinner[b-3x67d1cp1v] { animation: none; }
}

/* "Dodano — trener ćwiczy przy następnej jeździe", for a moment after the save. */
.tc-pill--added[b-3x67d1cp1v] {
    border: 1px solid #22c55e;
    background: #14532d;
    color: #bbf7d0;
    cursor: default;
}

/* In a card's corner, and at phone width, the sentence wraps inside the card. */
.tc-train--corner .tc-pill--added[b-3x67d1cp1v] {
    max-width: 15rem;
    white-space: normal;
}

.tc-pill--added svg[b-3x67d1cp1v] {
    color: #86efac;
}

.tc-train__error[b-3x67d1cp1v] {
    flex-basis: 100%;
    max-width: 18rem;
    color: var(--ghostai-color-warning, #fbbf24);
    font-size: 0.75rem;
    white-space: normal;
}

.tc-train--corner .tc-train__error[b-3x67d1cp1v] {
    text-align: right;
}

/* Phone / touch: every target is at least 44 px (WCAG 2.5.5). */
@media (max-width: 640px), (pointer: coarse) {
    .tc-train[b-3x67d1cp1v] {
        --tc-pill-height: 44px;
    }

    .tc-split__state[b-3x67d1cp1v] {
        padding: 0 8px 0 10px;
        font-size: 0.75rem;
    }

    .tc-pill--added[b-3x67d1cp1v] {
        max-width: 15rem;
        font-size: 0.75rem;
        white-space: normal;
    }
}
/* /Components/Dashboard/DashboardNextEventCard.razor.rz.scp.css */
/* T2004 — the next-round card's own rows. Design tokens only; every row wraps, so nothing overflows at 390 px. */
.ghostai-next-event-card__reference[b-mx3ybi4sd5] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2);
    margin: var(--ghostai-space-3) 0 var(--ghostai-space-2);
}

.ghostai-next-event-card__reference-label[b-mx3ybi4sd5],
.ghostai-next-event-card__change-label[b-mx3ybi4sd5] {
    font-size: var(--ghostai-type-caption);
    color: var(--ghostai-color-text-muted);
}

.ghostai-next-event-card__change[b-mx3ybi4sd5] {
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
    gap: var(--ghostai-space-1) var(--ghostai-space-2);
    margin-top: var(--ghostai-space-2);
}

.ghostai-next-event-card__change-list[b-mx3ybi4sd5] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ghostai-space-1) var(--ghostai-space-3);
    margin: 0;
    padding: 0;
    list-style: none;
}

.ghostai-next-event-card__change-list a[b-mx3ybi4sd5],
.ghostai-next-event-card__secondary[b-mx3ybi4sd5] {
    overflow-wrap: anywhere;
}

.ghostai-next-event-card__secondary[b-mx3ybi4sd5] {
    font-size: var(--ghostai-type-caption);
}
/* /Components/DriverDna/DriverDnaHistoryPolicyPanel.razor.rz.scp.css */
.dna-history-policy[b-lynem4nvy3] { min-width: 0; margin-block: var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-lg); background: var(--ghostai-color-surface); }
.dna-history-policy summary[b-lynem4nvy3] { cursor: pointer; padding: var(--ghostai-space-3) var(--ghostai-space-4); min-height: var(--ghostai-touch-target); font-weight: var(--ghostai-weight-semibold); }
.dna-history-policy__content[b-lynem4nvy3] { padding: 0 var(--ghostai-space-4) var(--ghostai-space-4); min-width: 0; }
.dna-history-policy__status[b-lynem4nvy3] { font-weight: var(--ghostai-weight-semibold); }
.dna-history-policy__current[b-lynem4nvy3] { display: flex; flex-wrap: wrap; gap: var(--ghostai-space-4) var(--ghostai-space-8); }
.dna-history-policy__current dt[b-lynem4nvy3] { font-size: var(--ghostai-type-small); color: var(--ghostai-color-text-secondary); }
.dna-history-policy__current dd[b-lynem4nvy3] { margin: var(--ghostai-space-1) 0; font-weight: var(--ghostai-weight-semibold); }
.dna-history-policy__table[b-lynem4nvy3] { max-width: 100%; overflow-x: auto; }
.dna-history-policy table[b-lynem4nvy3] { border-collapse: collapse; width: 100%; font-size: var(--ghostai-type-small); }
.dna-history-policy caption[b-lynem4nvy3] { text-align: start; padding-block: var(--ghostai-space-2); }
.dna-history-policy th[b-lynem4nvy3], .dna-history-policy td[b-lynem4nvy3] { text-align: start; vertical-align: top; padding: var(--ghostai-space-3); border-bottom: 1px solid var(--ghostai-color-border); }
/* /Components/DriverDna/DriverDnaProgressRadar.razor.rz.scp.css */
/* Archived radar SVG and token typography are shared in components/_dna-own-basis.scss. */
/* /Components/DriverDna/DriverDnaProgressReportPanel.razor.rz.scp.css */
.dna-progress-report[b-ie1guub4d9] { min-width: 0; padding: var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-xl); background: var(--ghostai-color-surface); }
.dna-progress-report summary[b-ie1guub4d9] { display: list-item; min-height: var(--ghostai-touch-target); cursor: pointer; font-weight: var(--ghostai-weight-semibold); }
.dna-progress-report article[b-ie1guub4d9] { min-width: 0; }
.dna-progress-report article > a[b-ie1guub4d9] { display: inline-flex; align-items: center; min-height: var(--ghostai-touch-target); margin-inline-end: var(--ghostai-space-4); }
.dna-progress-report li[b-ie1guub4d9] { padding-block: var(--ghostai-space-2); overflow-wrap: anywhere; }
.dna-progress-report li > span[b-ie1guub4d9] { display: block; font-size: var(--ghostai-type-small); color: var(--ghostai-color-text-secondary); }
.dna-progress-report__table[b-ie1guub4d9] { max-width: 100%; overflow-x: auto; margin-block: var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-lg); }
.dna-progress-report table[b-ie1guub4d9] { width: 100%; border-collapse: collapse; font-family: var(--ghostai-font-numeric); font-size: var(--ghostai-type-small); font-variant-numeric: tabular-nums; }
.dna-progress-report td[b-ie1guub4d9], .dna-progress-report th[b-ie1guub4d9] { padding: var(--ghostai-space-3); text-align: start; vertical-align: top; border-bottom: 1px solid var(--ghostai-color-border); }
.dna-progress-report th[b-ie1guub4d9] { background: var(--ghostai-color-surface-2); }

.dna-progress-report__event[b-ie1guub4d9] { margin-block: var(--ghostai-space-4); padding: var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-lg); }
.dna-progress-report__event h4[b-ie1guub4d9] { margin: 0; font-weight: var(--ghostai-weight-semibold); }
.dna-progress-report__event-date[b-ie1guub4d9], .dna-progress-report__reason[b-ie1guub4d9] { color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); }
.dna-progress-report__within-row[b-ie1guub4d9] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(12rem, 1fr) minmax(0, 1fr); gap: var(--ghostai-space-4); padding-block: var(--ghostai-space-3); border-top: 1px solid var(--ghostai-color-border); align-items: center; overflow-wrap: anywhere; }
.dna-progress-report__within-row a[b-ie1guub4d9] { display: inline-flex; align-items: center; min-height: var(--ghostai-touch-target); }
.dna-progress-report__within-row dl[b-ie1guub4d9] { display: grid; grid-template-columns: 1fr 1fr; gap: var(--ghostai-space-3); margin: 0; }
.dna-progress-report__within-row dt[b-ie1guub4d9] { font-size: var(--ghostai-type-small); color: var(--ghostai-color-text-secondary); }
.dna-progress-report__within-row dd[b-ie1guub4d9] { margin: 0; font-family: var(--ghostai-font-numeric); font-variant-numeric: tabular-nums; font-weight: var(--ghostai-weight-semibold); }
@media (max-width: 40rem) { .dna-progress-report__within-row[b-ie1guub4d9] { grid-template-columns: minmax(0, 1fr); gap: var(--ghostai-space-2); } }
/* /Components/DriverDna/DriverDnaProgressTypeSummary.razor.rz.scp.css */
.dna-type-summary[b-xjbtyeav0q] { display: grid; gap: var(--ghostai-space-6); min-width: 0; }
.dna-type-summary__intro h2[b-xjbtyeav0q] { margin-bottom: var(--ghostai-space-2); font-size: var(--ghostai-type-h2); }
.dna-type-summary__intro p[b-xjbtyeav0q], .dna-type-summary__heading p[b-xjbtyeav0q] { margin: 0; color: var(--ghostai-color-text-secondary); }
.dna-type-summary__list[b-xjbtyeav0q] { display: grid; gap: var(--ghostai-space-6); }
.dna-type-summary__type[b-xjbtyeav0q] { min-width: 0; padding: var(--ghostai-space-5); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-xl); background: var(--ghostai-color-surface); }
.dna-type-summary__heading[b-xjbtyeav0q] { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: var(--ghostai-space-2) var(--ghostai-space-5); align-items: baseline; margin-bottom: var(--ghostai-space-5); }
.dna-type-summary__heading h3[b-xjbtyeav0q] { margin: 0; font-size: var(--ghostai-type-h3); }
.dna-type-summary__heading h3 a[b-xjbtyeav0q] { color: var(--ghostai-color-text-primary); overflow-wrap: anywhere; }
.dna-type-summary__heading p[b-xjbtyeav0q] { grid-column: 1; font-size: var(--ghostai-type-small); }
.dna-type-summary__browse[b-xjbtyeav0q] { grid-column: 2; grid-row: 1 / 3; min-height: var(--ghostai-touch-target); display: inline-flex; align-items: center; }
.dna-type-summary__traits[b-xjbtyeav0q] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--ghostai-space-3); }
.dna-type-summary__delta[b-xjbtyeav0q] { font-size: var(--ghostai-type-metric-md); font-family: var(--ghostai-font-numeric); font-variant-numeric: tabular-nums; }
.dna-type-summary__delta small[b-xjbtyeav0q] { font-size: var(--ghostai-type-small); }
.dna-type-summary__coverage[b-xjbtyeav0q], .dna-type-summary__samples[b-xjbtyeav0q], .dna-type-summary__reason[b-xjbtyeav0q], .dna-type-summary__note[b-xjbtyeav0q] { font-size: var(--ghostai-type-small); color: var(--ghostai-color-text-secondary); }
.dna-type-summary__reason[b-xjbtyeav0q] { margin-top: auto; }
.dna-type-summary__choices[b-xjbtyeav0q] { display: flex; flex-wrap: wrap; gap: var(--ghostai-space-3); }
.dna-type-summary__choices a[b-xjbtyeav0q] { display: inline-flex; align-items: center; min-height: var(--ghostai-touch-target); padding: var(--ghostai-space-2) var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-lg); }
.dna-type-summary a:focus-visible[b-xjbtyeav0q] { outline: 3px solid var(--ghostai-color-accent); outline-offset: var(--ghostai-space-1); }
@media (max-width: 1024px) { .dna-type-summary__traits[b-xjbtyeav0q] { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .dna-type-summary__traits[b-xjbtyeav0q] { grid-template-columns: repeat(2, minmax(0, 1fr)); } .dna-type-summary__heading[b-xjbtyeav0q] { grid-template-columns: minmax(0, 1fr); } .dna-type-summary__browse[b-xjbtyeav0q] { grid-column: 1; grid-row: auto; } .dna-type-summary__type[b-xjbtyeav0q] { padding: var(--ghostai-space-3); } }
@media (max-width: 380px) { .dna-type-summary__traits[b-xjbtyeav0q] { grid-template-columns: minmax(0, 1fr); } }
/* /Components/DriverDna/DriverDnaProgressView.razor.rz.scp.css */
.dna-progress[b-gu7gdn7r8c] { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--ghostai-space-6); min-width: 0; margin-block: var(--ghostai-space-6); font: inherit; }
.dna-progress > *[b-gu7gdn7r8c] { min-width: 0; }
.dna-progress a[b-gu7gdn7r8c] { text-underline-offset: .2em; }
.dna-progress__filters[b-gu7gdn7r8c] { border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-xl); background: var(--ghostai-color-surface); }
.dna-progress__filters > summary[b-gu7gdn7r8c] { padding: var(--ghostai-space-4); min-height: var(--ghostai-touch-target); cursor: pointer; font-weight: var(--ghostai-weight-semibold); }
.dna-progress__pair[b-gu7gdn7r8c] { display: flex; flex-wrap: wrap; align-items: end; gap: var(--ghostai-space-3); padding: var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-xl); background: var(--ghostai-color-surface); }
.dna-progress__pair label[b-gu7gdn7r8c] { flex: 1 1 15rem; }
.dna-progress__note[b-gu7gdn7r8c] { font-size: var(--ghostai-type-small); line-height: var(--ghostai-line-normal); color: var(--ghostai-color-text-secondary); }
.dna-progress__place-list[b-gu7gdn7r8c] { list-style: none; padding: 0; }
.dna-progress__place-list li[b-gu7gdn7r8c] { display: flex; flex-wrap: wrap; gap: var(--ghostai-space-2) var(--ghostai-space-4); padding-block: var(--ghostai-space-4); border-bottom: 1px solid var(--ghostai-color-border); }
.dna-progress__place-list a[b-gu7gdn7r8c] { min-height: var(--ghostai-touch-target); display: inline-flex; align-items: center; font-weight: var(--ghostai-weight-semibold); overflow-wrap: anywhere; }
.dna-progress__timeline[b-gu7gdn7r8c] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 38rem), 1fr)); gap: var(--ghostai-space-6); min-width: 0; }
.dna-progress__point[b-gu7gdn7r8c] { padding: var(--ghostai-space-5); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-xl); min-width: 0; background: var(--ghostai-color-surface); }
.dna-progress__point header[b-gu7gdn7r8c] { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: var(--ghostai-space-2); }
.dna-progress__point h3[b-gu7gdn7r8c] { font-size: var(--ghostai-type-h3); margin: 0; overflow-wrap: anywhere; }
.dna-progress__point header > span[b-gu7gdn7r8c] { font-size: var(--ghostai-type-small); color: var(--ghostai-color-text-secondary); }
.dna-progress__levels[b-gu7gdn7r8c] { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 8rem), 1fr)); gap: var(--ghostai-space-3); margin-block: var(--ghostai-space-4); }
.dna-progress__table-region[b-gu7gdn7r8c] { max-width: 100%; overflow-x: auto; margin-block: var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-lg); }
.dna-progress table[b-gu7gdn7r8c] { width: 100%; border-collapse: collapse; font-family: var(--ghostai-font-numeric); font-size: var(--ghostai-type-small); font-variant-numeric: tabular-nums; }
.dna-progress th[b-gu7gdn7r8c], .dna-progress td[b-gu7gdn7r8c] { padding: var(--ghostai-space-3); text-align: start; border-bottom: 1px solid var(--ghostai-color-border); vertical-align: top; }
.dna-progress th[b-gu7gdn7r8c] { background: var(--ghostai-color-surface-2); font-weight: var(--ghostai-weight-semibold); }
.dna-progress td a[b-gu7gdn7r8c] { overflow-wrap: anywhere; }
.dna-progress__within > summary[b-gu7gdn7r8c] { cursor: pointer; padding-block: var(--ghostai-space-3); min-height: var(--ghostai-touch-target); font-weight: var(--ghostai-weight-semibold); }
.dna-progress__paging a[b-gu7gdn7r8c] { display: inline-flex; align-items: center; min-height: var(--ghostai-touch-target); padding-inline: var(--ghostai-space-3); }
.dna-progress :focus-visible[b-gu7gdn7r8c] { outline: 3px solid var(--ghostai-color-accent); outline-offset: var(--ghostai-space-1); }
@media (max-width: 640px) { .dna-progress[b-gu7gdn7r8c] { gap: var(--ghostai-space-4); } .dna-progress__point[b-gu7gdn7r8c] { padding: var(--ghostai-space-3); } .dna-progress__pair label[b-gu7gdn7r8c] { flex-basis: 100%; } }

.dna-progress__active-context[b-gu7gdn7r8c] { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ghostai-space-2); }
.dna-progress__active-context a[b-gu7gdn7r8c] { display: inline-flex; align-items: center; min-height: var(--ghostai-touch-target); padding-inline: var(--ghostai-space-2); }
.dna-progress__context-change[b-gu7gdn7r8c] { margin-block: var(--ghostai-space-4); min-width: 0; }
.dna-progress__context-change h3[b-gu7gdn7r8c] { font-size: var(--ghostai-type-h3); margin-bottom: var(--ghostai-space-3); }
.dna-progress__change-traits[b-gu7gdn7r8c] { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: var(--ghostai-space-3); }
.dna-progress__change-evidence[b-gu7gdn7r8c] { display: grid; gap: var(--ghostai-space-2); padding-block: var(--ghostai-space-2); }
.dna-progress__change-evidence + .dna-progress__change-evidence[b-gu7gdn7r8c] { border-top: 1px solid var(--ghostai-color-border); }
.dna-progress__change-evidence small[b-gu7gdn7r8c] { color: var(--ghostai-color-text-secondary); }
.dna-progress__change-values[b-gu7gdn7r8c] { font-family: var(--ghostai-font-numeric); font-size: var(--ghostai-type-body); font-variant-numeric: tabular-nums; }
@media (max-width: 1024px) { .dna-progress__change-traits[b-gu7gdn7r8c] { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 640px) { .dna-progress__change-traits[b-gu7gdn7r8c] { grid-template-columns: repeat(2, minmax(0, 1fr)); } }

.dna-progress__paging[b-gu7gdn7r8c] { display: flex; flex-wrap: wrap; gap: var(--ghostai-space-2); align-items: center; }

/* Narrow detail rows retain their native table/header roles and all cell values; labels repeat the original headings. */
.dna-progress td[b-gu7gdn7r8c] { overflow-wrap: anywhere; }
@media (max-width: 1100px) {
  .dna-progress__table-region[b-gu7gdn7r8c] { overflow-x: visible; }
  .dna-progress__table-region table[b-gu7gdn7r8c] { display: block; min-width: 0; }
  .dna-progress__table-region thead[b-gu7gdn7r8c] { position: absolute; inline-size: 1px; block-size: 1px; margin: -1px; padding: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .dna-progress__table-region tbody[b-gu7gdn7r8c] { display: grid; gap: var(--ghostai-space-3); padding: var(--ghostai-space-3); }
  .dna-progress__table-region tbody tr[b-gu7gdn7r8c] { display: grid; min-width: 0; border: 1px solid var(--ghostai-color-border); border-radius: var(--ghostai-radius-md); background: var(--ghostai-color-surface); }
  .dna-progress__table-region td[b-gu7gdn7r8c] { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: var(--ghostai-space-3); min-width: 0; }
  .dna-progress__table-region td[b-gu7gdn7r8c]::before { content: attr(data-label); color: var(--ghostai-color-text-secondary); font-weight: var(--ghostai-weight-semibold); }
  .dna-progress__table-region td > *[b-gu7gdn7r8c] { min-width: 0; max-width: 100%; }
  .dna-progress__table-region td:last-child[b-gu7gdn7r8c] { border-bottom: 0; }
}
/* /Components/DriverDna/DriverDnaVariantSourceNote.razor.rz.scp.css */
.driver-dna-variants__source[b-hr3ac2x0wa] {
    display: grid;
    gap: .125rem;
    min-width: 0;
}

.driver-dna-variants__source-line[b-hr3ac2x0wa] {
    display: block;
    overflow-wrap: anywhere;
}
/* /Components/Home/GuestHome.razor.rz.scp.css */
/* #3664 — the guest Home. GhostAI tokens only: no colour, radius or spacing literal. */
.guest-home[b-vdfya0g8ce] {
    display: grid;
    gap: var(--ghostai-space-6);
}

[b-vdfya0g8ce] .guest-home__cta {
    display: inline-flex;
    align-items: center;
    gap: var(--ghostai-space-2);
    min-height: var(--ghostai-touch-target);
    padding: 0 var(--ghostai-space-4);
    border-radius: var(--ghostai-radius-md);
    border: 1px solid var(--ghostai-color-border-strong);
    font-weight: 650;
    text-decoration: none;
    white-space: nowrap;
}

[b-vdfya0g8ce] .guest-home__cta--primary {
    background: var(--ghostai-color-accent);
    border-color: var(--ghostai-color-accent);
    color: var(--ghostai-color-bg);
}

[b-vdfya0g8ce] .guest-home__cta--secondary {
    background: transparent;
    color: var(--ghostai-color-text-primary);
}

[b-vdfya0g8ce] .guest-home__cta:hover {
    box-shadow: var(--ghostai-shadow-md);
}

[b-vdfya0g8ce] .guest-home__cta:focus-visible,
.guest-home__link:focus-visible[b-vdfya0g8ce] {
    outline: none;
    box-shadow: var(--ghostai-shadow-focus);
}

.guest-home__features[b-vdfya0g8ce] {
    display: grid;
    gap: var(--ghostai-space-5);
}

.guest-home__feature[b-vdfya0g8ce] {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: var(--ghostai-space-5);
    padding: var(--ghostai-space-5);
    border-radius: var(--ghostai-radius-lg);
    border: 1px solid var(--ghostai-color-border);
    background: var(--ghostai-surface-translucent, var(--ghostai-color-surface));
}

.guest-home__feature--reverse .guest-home__copy[b-vdfya0g8ce] {
    order: 2;
}

.guest-home__title[b-vdfya0g8ce] {
    margin: 0;
    font-size: var(--ghostai-type-h2);
    line-height: var(--ghostai-line-tight);
    color: var(--ghostai-color-text-primary);
}

.guest-home__body[b-vdfya0g8ce] {
    margin: var(--ghostai-space-2) 0 0;
    color: var(--ghostai-color-text-secondary);
}

.guest-home__link[b-vdfya0g8ce] {
    display: inline-flex;
    align-items: center;
    gap: var(--ghostai-space-1);
    min-height: var(--ghostai-touch-target);
    margin-top: var(--ghostai-space-3);
    border-radius: var(--ghostai-radius-md);
    color: var(--ghostai-color-accent);
    font-weight: 600;
    text-decoration: none;
}

.guest-home__visual[b-vdfya0g8ce] {
    aspect-ratio: 16 / 10;
    border-radius: var(--ghostai-radius-md);
    border: 1px solid var(--ghostai-color-border);
    background: var(--ghostai-panel-well-bg, var(--ghostai-color-surface-2));
    overflow: hidden;
}

.guest-home__image[b-vdfya0g8ce] {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: top left;
}

.guest-home__placeholder[b-vdfya0g8ce] {
    display: grid;
    place-items: center;
    width: 100%;
    height: 100%;
    color: var(--ghostai-color-accent);
    background: var(--ghostai-grid-surface, var(--ghostai-color-surface-2));
}

.guest-home__placeholder[b-vdfya0g8ce]  svg {
    width: var(--ghostai-space-8, 4rem);
    height: var(--ghostai-space-8, 4rem);
    opacity: 0.85;
}

@media (max-width: 767.98px) {
    .guest-home__feature[b-vdfya0g8ce] {
        grid-template-columns: minmax(0, 1fr);
        padding: var(--ghostai-space-4);
    }

    .guest-home__feature--reverse .guest-home__copy[b-vdfya0g8ce] {
        order: 0;
    }

    .guest-home__visual[b-vdfya0g8ce] {
        aspect-ratio: 16 / 9;
    }
}
/* /Components/Notifications/AchievementNotificationMark.razor.rz.scp.css */
.achievement-notification-mark[b-gg9upkjq40] {
    display: inline-block;
    width: 3rem;
    height: 3rem;
    flex-shrink: 0;
    vertical-align: middle;
    margin-block-end: var(--ghostai-space-2, .5rem);
}
.achievement-notification-mark[b-gg9upkjq40]  .tds-artwork,
.achievement-notification-mark[b-gg9upkjq40]  svg { display: block; width: 100%; height: 100%; }
/* /Components/SessionDetails/DynamicsLabLockedCard.razor.rz.scp.css */
.sd-lab-locked[b-jz8l4oe1mq] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--ghostai-space-2, 0.5rem);
    min-width: 0;
    padding: var(--ghostai-space-4, 1rem);
    border: 1px dashed var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    background: var(--ghostai-color-surface);
}

.sd-lab-locked__head[b-jz8l4oe1mq] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
}

.sd-lab-locked__title[b-jz8l4oe1mq] {
    margin: 0;
    font-size: var(--ghostai-type-body, 1rem);
    font-weight: 700;
    color: var(--ghostai-color-text-primary);
}

.sd-lab-locked__what[b-jz8l4oe1mq],
.sd-lab-locked__note[b-jz8l4oe1mq] {
    margin: 0;
    color: var(--ghostai-color-text-secondary);
    overflow-wrap: anywhere;
}

.sd-lab-locked__action[b-jz8l4oe1mq] {
    display: inline-flex;
    align-items: center;
    min-height: var(--ghostai-touch-target, 44px);
    padding: 0 var(--ghostai-space-3, 0.75rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    color: var(--ghostai-color-text-primary);
    background: var(--ghostai-color-surface);
    text-decoration: none;
}

.sd-lab-locked__action:hover[b-jz8l4oe1mq],
.sd-lab-locked__action:focus-visible[b-jz8l4oe1mq] {
    border-color: var(--ghostai-color-accent);
}
/* /Components/SessionDetails/GgAccelerationChart.razor.rz.scp.css */
.gg-chart[b-vz3k7r4goh] { margin: 0; display: grid; gap: .5rem; max-width: 26rem; }
.gg-chart svg[b-vz3k7r4goh] { width: 100%; aspect-ratio: 1; border: 1px solid currentColor; border-radius: .35rem; }
.gg-axis[b-vz3k7r4goh] { stroke: currentColor; stroke-width: .75; opacity: .45; }
.gg-tick[b-vz3k7r4goh], .gg-label[b-vz3k7r4goh] { fill: currentColor; font-size: 9px; opacity: .8; }
.gg-point[b-vz3k7r4goh] { fill: var(--ghostai-color-primary); opacity: .55; }
.gg-point--band[b-vz3k7r4goh] { fill: var(--ghostai-color-warning); opacity: .85; }
.gg-point--reference[b-vz3k7r4goh] { fill: var(--ghostai-color-text-muted); opacity: .45; }
.gg-ring[b-vz3k7r4goh] { fill: none; stroke: var(--ghostai-color-danger); stroke-width: 1.6; stroke-linejoin: round; }
.gg-ring-vertex[b-vz3k7r4goh] { fill: var(--ghostai-color-danger); }
.gg-legend[b-vz3k7r4goh] { display: flex; flex-wrap: wrap; gap: .75rem; margin: 0; padding: 0; list-style: none; }
.gg-legend li[b-vz3k7r4goh] { display: inline-flex; align-items: center; gap: .35rem; }
.gg-swatch[b-vz3k7r4goh] { width: .75rem; height: .75rem; border-radius: 50%; display: inline-block; }
.gg-swatch--lap[b-vz3k7r4goh] { background: var(--ghostai-color-primary); }
.gg-swatch--band[b-vz3k7r4goh] { background: var(--ghostai-color-warning); }
.gg-swatch--reference[b-vz3k7r4goh] { background: var(--ghostai-color-text-muted); }
.gg-swatch--ring[b-vz3k7r4goh] { background: var(--ghostai-color-danger); border-radius: .15rem; }
/* /Components/SessionDetails/RecurringProblemsLockedRows.razor.rz.scp.css */
.sd-rp-locked[b-0cl0aodive] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: var(--ghostai-space-2, 0.5rem);
    min-width: 0;
    padding: var(--ghostai-space-4, 1rem);
    border: 1px dashed var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    background: var(--ghostai-color-surface);
}

.sd-rp-locked__head[b-0cl0aodive] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
}

.sd-rp-locked__title[b-0cl0aodive] {
    margin: 0;
    font-size: var(--ghostai-type-body, 1rem);
    font-weight: 700;
    color: var(--ghostai-color-text-primary);
}

.sd-rp-locked__rows[b-0cl0aodive] {
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-1, 0.25rem);
    width: 100%;
    margin: 0;
    padding: 0;
    list-style: none;
}

.sd-rp-locked__row[b-0cl0aodive] {
    display: flex;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
    padding: var(--ghostai-space-2, 0.5rem) var(--ghostai-space-3, 0.75rem);
    border-radius: var(--ghostai-radius-sm, 4px);
    background: var(--ghostai-color-surface-muted, rgba(127, 127, 127, 0.08));
    color: var(--ghostai-color-text-secondary);
}

.sd-rp-locked__lock[b-0cl0aodive] {
    flex: none;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.sd-rp-locked__what[b-0cl0aodive],
.sd-rp-locked__note[b-0cl0aodive] {
    margin: 0;
    color: var(--ghostai-color-text-secondary);
    overflow-wrap: anywhere;
}

.sd-rp-locked__action[b-0cl0aodive] {
    display: inline-flex;
    align-items: center;
    min-height: var(--ghostai-touch-target, 44px);
    padding: 0 var(--ghostai-space-3, 0.75rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    color: var(--ghostai-color-text-primary);
    background: var(--ghostai-color-surface);
    text-decoration: none;
}

.sd-rp-locked__action:hover[b-0cl0aodive],
.sd-rp-locked__action:focus-visible[b-0cl0aodive] {
    border-color: var(--ghostai-color-accent);
}
/* /Components/SessionDetails/ReferenceLapPicker.razor.rz.scp.css */
/* #3662 — the reference-lap grid. Filters wrap rather than clip at 390 px; the table scrolls inside its own box and
   drops the date column on a phone, so no control is ever pushed off-screen. */
.ghostai-ref-laps[b-4m58yaq62p] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    min-width: 0;
    max-width: 100%;
    padding: 0.75rem;
    border: 1px solid var(--ghostai-border, rgba(127, 127, 127, 0.35));
    border-radius: 0.5rem;
}

.ghostai-ref-laps__header[b-4m58yaq62p] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.5rem;
}

.ghostai-ref-laps__titles[b-4m58yaq62p] {
    min-width: 0;
    flex: 1 1 14rem;
}

.ghostai-ref-laps__title[b-4m58yaq62p] {
    margin: 0;
    font-size: 1rem;
}

.ghostai-ref-laps__lead[b-4m58yaq62p],
.ghostai-ref-laps__note[b-4m58yaq62p] {
    margin: 0.25rem 0 0;
    font-size: 0.875rem;
    opacity: 0.85;
}

.ghostai-ref-laps__filters[b-4m58yaq62p] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
}

.ghostai-ref-laps__filter[b-4m58yaq62p] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 2rem;
    cursor: pointer;
}

.ghostai-ref-laps__state[b-4m58yaq62p] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
}

.ghostai-ref-laps__state--error[b-4m58yaq62p] {
    color: var(--ghostai-danger, #d9534f);
}

.ghostai-ref-laps__hint[b-4m58yaq62p] {
    opacity: 0.85;
}

.ghostai-ref-laps__grid[b-4m58yaq62p] {
    min-width: 0;
    max-width: 100%;
    overflow-x: auto;
}

.ghostai-ref-laps__grid[b-4m58yaq62p]  .ghostai-ref-laps__row,
.ghostai-ref-laps__grid[b-4m58yaq62p]  .ghostai-ref-laps__row--selected {
    cursor: pointer;
}

.ghostai-ref-laps__grid[b-4m58yaq62p]  .ghostai-ref-laps__row--selected {
    font-weight: 600;
}

@media (max-width: 480px) {
    .ghostai-ref-laps__grid[b-4m58yaq62p]  .ghostai-ref-laps__col-date {
        display: none;
    }
}
/* /Components/SessionDetails/SessionDynamicsPanel.razor.rz.scp.css */
.dynamics-filters[b-qc3f05zjoj] { display: flex; flex-wrap: wrap; align-items: center; gap: .75rem; }
.dynamics-filters p[b-qc3f05zjoj] { flex-basis: 100%; }
.dynamics-filters label[b-qc3f05zjoj] { display: flex; align-items: center; gap: .35rem; }
.dynamics-filters input[type=number][b-qc3f05zjoj] { width: 7rem; }
.dynamics-timeline[b-qc3f05zjoj] { margin-block: 1rem; overflow: auto; max-height: 24rem; }
.dynamics-axis[b-qc3f05zjoj] { display: flex; justify-content: space-between; margin-left: 8rem; min-width: 16rem; }
.dynamics-timeline-row[b-qc3f05zjoj] { display: grid; grid-template-columns: 8rem minmax(16rem, 1fr); min-height: 2rem; gap: .25rem; }
.dynamics-timeline-row > span[b-qc3f05zjoj] { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.dynamics-track[b-qc3f05zjoj] { position: relative; min-height: 1.8rem; overflow: hidden; border-bottom: 1px solid currentColor; }
.dynamics-bar[b-qc3f05zjoj] { position: absolute; height: 1.65rem; min-width: .25rem; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; border: 1px solid currentColor; border-radius: .2rem; }
.dynamics-bb[b-qc3f05zjoj] { text-align: center; background: transparent; }
.dynamics-style-grid[b-qc3f05zjoj] { display: grid; grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr)); gap: .75rem; }
.dynamics-style-grid section[b-qc3f05zjoj], .dynamics-style-episode[b-qc3f05zjoj] { padding: .75rem; border: 1px solid currentColor; border-radius: .35rem; }
.dynamics-style-grid h5[b-qc3f05zjoj], .dynamics-style-episode h5[b-qc3f05zjoj] { margin-block: 0 .5rem; }
.dynamics-style-grid dl[b-qc3f05zjoj], .dynamics-style-episode dl[b-qc3f05zjoj] { margin: 0; }
.dynamics-style-grid dd[b-qc3f05zjoj], .dynamics-style-episode dd[b-qc3f05zjoj] { margin-inline-start: 0; margin-block-end: .65rem; }
.dynamics-style-grid button[b-qc3f05zjoj], .dynamics-style-episode button[b-qc3f05zjoj] { display: block; margin-block-start: .35rem; }
.dynamics-gg[b-qc3f05zjoj] { display: grid; gap: .5rem; margin-block: 1rem; }
.dynamics-gg-figures[b-qc3f05zjoj] { padding: .75rem; border: 1px solid currentColor; border-radius: .35rem; }
.dynamics-gg-figures h6[b-qc3f05zjoj] { margin-block: 0 .5rem; }
.dynamics-gg-figures th[b-qc3f05zjoj], .dynamics-gg-figures td[b-qc3f05zjoj] { padding-inline-end: .75rem; text-align: start; font-variant-numeric: tabular-nums; }
/* /Components/SessionDetails/SessionReadingGuide.razor.rz.scp.css */
.sd-guide[b-tryxt3pu4u] {
    display: inline-flex;
}

.sd-guide__scrim[b-tryxt3pu4u] {
    position: fixed;
    inset: 0;
    z-index: 1090;
    background: rgba(0, 0, 0, 0.4);
}

.sd-guide__panel[b-tryxt3pu4u] {
    position: fixed;
    top: calc(var(--ghostai-shell-header-height, 56px) + 8px);
    right: 8px;
    bottom: 8px;
    z-index: 1100;
    display: flex;
    flex-direction: column;
    width: min(560px, calc(100vw - 16px));
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md);
    background: var(--ghostai-color-surface);
    color: var(--ghostai-color-text-primary);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.35);
}

.sd-guide__header[b-tryxt3pu4u] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: var(--ghostai-space-2);
    padding: var(--ghostai-space-3);
    border-bottom: 1px solid var(--ghostai-color-border);
}

.sd-guide__title[b-tryxt3pu4u] {
    margin: 0;
    font-size: 1.125rem;
}

.sd-guide__title:focus[b-tryxt3pu4u] {
    outline: none;
}

.sd-guide__title:focus-visible[b-tryxt3pu4u] {
    outline: 2px solid var(--ghostai-color-border-strong);
    outline-offset: 2px;
}

.sd-guide__close[b-tryxt3pu4u],
.sd-guide__example-toggle[b-tryxt3pu4u] {
    min-width: var(--ghostai-touch-target, 44px);
    min-height: var(--ghostai-touch-target, 44px);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md);
    background: transparent;
    color: inherit;
    cursor: pointer;
}

.sd-guide__close[b-tryxt3pu4u] {
    font-size: 1.25rem;
    line-height: 1;
}

.sd-guide__example-toggle[b-tryxt3pu4u] {
    padding: 0 var(--ghostai-space-3);
}

.sd-guide__body[b-tryxt3pu4u] {
    overflow-y: auto;
    padding: var(--ghostai-space-3);
}

.sd-guide__intro[b-tryxt3pu4u],
.sd-guide__limits[b-tryxt3pu4u] {
    margin: 0 0 var(--ghostai-space-3);
    color: var(--ghostai-color-text-secondary);
}

.sd-guide__topic[b-tryxt3pu4u] {
    margin-bottom: var(--ghostai-space-4);
}

.sd-guide__topic-title[b-tryxt3pu4u] {
    margin: 0 0 var(--ghostai-space-1);
    font-size: 1rem;
}

.sd-guide__topic-text[b-tryxt3pu4u] {
    margin: 0 0 var(--ghostai-space-2);
}

.sd-guide__facts[b-tryxt3pu4u],
.sd-guide__states[b-tryxt3pu4u] {
    display: grid;
    grid-template-columns: max-content 1fr;
    gap: var(--ghostai-space-1) var(--ghostai-space-3);
    margin: 0 0 var(--ghostai-space-2);
    font-size: var(--ghostai-type-small);
}

.sd-guide__facts dt[b-tryxt3pu4u],
.sd-guide__states dt[b-tryxt3pu4u] {
    color: var(--ghostai-color-text-secondary);
    font-weight: 600;
}

.sd-guide__facts dd[b-tryxt3pu4u],
.sd-guide__states dd[b-tryxt3pu4u] {
    margin: 0;
}

.sd-guide__topic-actions[b-tryxt3pu4u] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-3);
}

.sd-guide__more[b-tryxt3pu4u] {
    display: inline-flex;
    align-items: center;
    min-height: var(--ghostai-touch-target, 44px);
}

.sd-guide__example[b-tryxt3pu4u] {
    margin-top: var(--ghostai-space-2);
    padding: var(--ghostai-space-3);
    border-left: 3px solid var(--ghostai-color-border-strong);
    border-radius: var(--ghostai-radius-md);
    background: var(--ghostai-panel-well-bg, transparent);
}

.sd-guide__example p[b-tryxt3pu4u] {
    margin: var(--ghostai-space-1) 0 0;
}

.sd-guide__example-badge[b-tryxt3pu4u] {
    font-size: var(--ghostai-type-small);
    font-weight: 600;
    color: var(--ghostai-color-text-secondary);
}

@media (max-width: 480px) {
    .sd-guide__panel[b-tryxt3pu4u] {
        left: 8px;
        width: auto;
    }

    .sd-guide__facts[b-tryxt3pu4u],
    .sd-guide__states[b-tryxt3pu4u] {
        grid-template-columns: 1fr;
    }
}
/* /Components/SessionDetails/Track3DBetaView.razor.rz.scp.css */
.sd-beta3d[b-pd43m94yjf] {
    display: flex;
    flex: 1 1 0;
    flex-direction: column;
    gap: var(--ghostai-space-2, 0.5rem);
    width: 100%;
    min-width: 0;
}

.sd-beta3d__bar[b-pd43m94yjf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
    min-width: 0;
}

.sd-beta3d__group[b-pd43m94yjf] {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-1, 0.25rem);
}

.sd-beta3d__badge[b-pd43m94yjf] {
    display: inline-flex;
    align-items: center;
    padding: 0 var(--ghostai-space-2, 0.5rem);
    border: 1px solid var(--ghostai-color-accent);
    border-radius: var(--ghostai-radius-pill, 999px);
    color: var(--ghostai-color-accent);
    font-size: var(--ghostai-type-caption, 0.75rem);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.sd-beta3d__btn[b-pd43m94yjf] {
    min-height: var(--ghostai-touch-target, 44px);
    padding: 0 var(--ghostai-space-3, 0.75rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    color: var(--ghostai-color-text-primary);
    background: var(--ghostai-color-surface);
    font: inherit;
    cursor: pointer;
}

.sd-beta3d__btn:hover:not(:disabled)[b-pd43m94yjf],
.sd-beta3d__btn:focus-visible[b-pd43m94yjf] {
    border-color: var(--ghostai-color-accent);
}

.sd-beta3d__btn.is-active[b-pd43m94yjf],
.sd-beta3d__btn[aria-pressed="true"][b-pd43m94yjf] {
    border-color: var(--ghostai-color-accent);
    color: var(--ghostai-color-accent);
}

.sd-beta3d__btn:disabled[b-pd43m94yjf] {
    cursor: default;
    opacity: 0.55;
}

.sd-beta3d__classic[b-pd43m94yjf] {
    margin-left: auto;
}

.sd-beta3d__rate[b-pd43m94yjf] {
    display: inline-flex;
    align-items: center;
    gap: var(--ghostai-space-1, 0.25rem);
    color: var(--ghostai-color-text-secondary);
}

.sd-beta3d__rate select[b-pd43m94yjf] {
    min-height: var(--ghostai-touch-target, 44px);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    color: var(--ghostai-color-text-primary);
    background: var(--ghostai-color-input-bg, var(--ghostai-color-surface));
    font: inherit;
}

.sd-beta3d__stage[b-pd43m94yjf] {
    position: relative;
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-2, 0.5rem);
    width: 100%;
    min-width: 0;
    container-type: inline-size;
    container-name: tel25-scene;
}

.sd-beta3d__picture[b-pd43m94yjf] {
    position: relative;
    width: 100%;
    min-width: 0;
    aspect-ratio: 16 / 10;
    max-height: 70vh;
    overflow: hidden;
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    background: var(--ghostai-color-bg);
}

.sd-beta3d__canvas[b-pd43m94yjf] {
    display: block;
    width: 100%;
    height: 100%;
    touch-action: none;
}

.sd-beta3d__canvas:focus-visible[b-pd43m94yjf] {
    outline: 2px solid var(--ghostai-color-accent);
    outline-offset: -2px;
}

.sd-beta3d__cover[b-pd43m94yjf] {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: var(--ghostai-space-2, 0.5rem);
    padding: var(--ghostai-space-4, 1rem);
    color: var(--ghostai-color-text-primary);
    background: color-mix(in srgb, var(--ghostai-color-bg) 88%, transparent);
    text-align: center;
}

.sd-beta3d__cover--card[b-pd43m94yjf] {
    align-items: flex-start;
    justify-content: center;
    text-align: left;
}

.sd-beta3d__title[b-pd43m94yjf] {
    margin: 0;
    font-weight: 700;
}

.sd-beta3d__message[b-pd43m94yjf] {
    margin: 0;
    color: var(--ghostai-color-text-secondary);
    overflow-wrap: anywhere;
}

.sd-beta3d__actions[b-pd43m94yjf] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ghostai-space-2, 0.5rem);
}

.sd-beta3d__spinner[b-pd43m94yjf] {
    width: 2rem;
    height: 2rem;
    border: 3px solid var(--ghostai-color-border);
    border-top-color: var(--ghostai-color-accent);
    border-radius: 50%;
    animation: sd-beta3d-spin-b-pd43m94yjf 0.9s linear infinite;
}

.sd-beta3d__notes[b-pd43m94yjf] {
    margin: 0;
    padding-left: var(--ghostai-space-5, 1.25rem);
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small, 0.875rem);
}

@keyframes sd-beta3d-spin-b-pd43m94yjf {
    to {
        transform: rotate(360deg);
    }
}

@media (prefers-reduced-motion: reduce) {
    .sd-beta3d__spinner[b-pd43m94yjf] {
        animation: none;
    }
}

@media (max-width: 480px) {
    .sd-beta3d__picture[b-pd43m94yjf] {
        aspect-ratio: 4 / 5;
    }

    .sd-beta3d__classic[b-pd43m94yjf] {
        margin-left: 0;
    }
}
/* /Components/Setup/SessionSetupVersions.razor.rz.scp.css */
section[b-86orbt41z8] { display: grid; gap: .75rem; min-width: 0; }
label[b-86orbt41z8] { display: inline-flex; flex-wrap: wrap; align-items: center; gap: .5rem; margin: .25rem; }
fieldset > div[b-86orbt41z8] { display: flex; flex-wrap: wrap; gap: .5rem; margin-block: .75rem; }
code[b-86orbt41z8] { overflow-wrap: anywhere; }
table[b-86orbt41z8] { width: 100%; border-collapse: collapse; }
th[b-86orbt41z8], td[b-86orbt41z8] { text-align: start; padding: .5rem; overflow-wrap: anywhere; }
input:not([type=checkbox])[b-86orbt41z8] { max-width: 12rem; }
select[b-86orbt41z8] { max-width: 100%; }
/* /Components/Setup/SetupVersionEditor.razor.rz.scp.css */
fieldset[b-8xfjuhph03] { display: grid; gap: .75rem; } label[b-8xfjuhph03] { display: inline-flex; flex-wrap: wrap; gap: .5rem; margin: .25rem; } input[b-8xfjuhph03] { max-width: 12rem; }
/* /Components/Shared/AppBuildInfoBadge.razor.rz.scp.css */
/* T136-D — in the flow after the page, not `position: fixed` over it: the line reserves its own space at the
   bottom and can never cover content (it used to sit on cards, text and the phone map on every page). */
.app-build-info[b-6eg5fontj9] {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: var(--ghostai-space-1) var(--ghostai-space-2);
    padding: var(--ghostai-space-2) var(--ghostai-page-padding-inline, var(--ghostai-space-4));
    color: var(--ghostai-color-text-muted);
    font-size: var(--ghostai-type-caption);
    line-height: 1.2;
    user-select: none;
}

.app-build-info__item[b-6eg5fontj9] {
    overflow-wrap: anywhere;
}

/* The text is set on the items, not left to inherit: under a group skin the footer carries the skin's own
   `color` (the page's ink), and the build line must stay the quiet muted line it is — the skin's muted. Without a
   skin the value is the one the line already had. */
.app-build-info__item[b-6eg5fontj9],
.app-build-info__separator[b-6eg5fontj9] {
    color: var(--ghostai-color-text-muted);
}
/* /Components/Shared/ReconnectModal.razor.rz.scp.css */
/* 0.4.3 #275 — which line of the reconnect dialog shows is decided by the state class blazor.web.js puts on the dialog. */
.components-reconnect-first-attempt-visible[b-n8ltwkdeno],
.components-reconnect-repeated-attempt-visible[b-n8ltwkdeno],
.components-reconnect-failed-visible[b-n8ltwkdeno],
.components-pause-visible[b-n8ltwkdeno],
.components-resume-failed-visible[b-n8ltwkdeno],
.components-rejoining-animation[b-n8ltwkdeno] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-n8ltwkdeno],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-n8ltwkdeno],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-n8ltwkdeno],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-n8ltwkdeno],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-n8ltwkdeno],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-n8ltwkdeno],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-n8ltwkdeno] {
    display: block;
}

#components-reconnect-modal[b-n8ltwkdeno] {
    max-width: min(22rem, calc(100vw - 2rem));
    padding: 1.5rem;
    border: 1px solid var(--ghostai-border, rgba(255, 255, 255, 0.12));
    border-radius: 12px;
    background: var(--ghostai-surface, #15151c);
    color: var(--ghostai-text, #f2f2f5);
    text-align: center;
}

#components-reconnect-modal[b-n8ltwkdeno]::backdrop {
    background: rgba(0, 0, 0, 0.55);
}

.ghostai-reconnect__body p[b-n8ltwkdeno] {
    margin: 0 0 1rem;
}

.ghostai-reconnect__body button[b-n8ltwkdeno] {
    margin: 0 auto;
}

.ghostai-reconnect__spinner[b-n8ltwkdeno] {
    width: 2.5rem;
    height: 2.5rem;
    margin: 0 auto 1rem;
    border: 3px solid rgba(255, 255, 255, 0.15);
    border-top-color: var(--ghostai-primary, #8b5cf6);
    border-radius: 50%;
    animation: ghostai-reconnect-spin-b-n8ltwkdeno 0.9s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
    .ghostai-reconnect__spinner[b-n8ltwkdeno] {
        animation: none;
    }
}

@keyframes ghostai-reconnect-spin-b-n8ltwkdeno {
    to {
        transform: rotate(360deg);
    }
}
/* /Components/Shared/RecurringProblemsSection.razor.rz.scp.css */
/* #3661 — "My recurring problems": the heading with its "?" and cog, the driver's cards, the diagnostics view. */
.sd-rp__head[b-ff9j00sy2o] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
}

.sd-rp__head > h3[b-ff9j00sy2o] {
    margin: 0;
}

.sd-rp__cog[b-ff9j00sy2o] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: var(--ghostai-touch-target, 44px);
    min-height: var(--ghostai-touch-target, 44px);
    margin-left: auto;
    padding: 0;
    border: 1px solid transparent;
    border-radius: var(--ghostai-radius-md, 8px);
    color: var(--ghostai-color-text-secondary);
    background: transparent;
    cursor: pointer;
}

.sd-rp__cog svg[b-ff9j00sy2o] {
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
}

.sd-rp__cog:hover[b-ff9j00sy2o],
.sd-rp__cog:focus-visible[b-ff9j00sy2o],
.sd-rp__cog.is-active[b-ff9j00sy2o] {
    border-color: var(--ghostai-color-border);
    color: var(--ghostai-color-text-primary);
}

.sd-rp__settings[b-ff9j00sy2o] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem) var(--ghostai-space-4, 1rem);
    padding: var(--ghostai-space-3, 0.75rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    background: var(--ghostai-color-surface);
}

.sd-rp__cards[b-ff9j00sy2o] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 18rem), 1fr));
    gap: var(--ghostai-space-3, 0.75rem);
    margin: 0 0 var(--ghostai-space-3, 0.75rem);
    padding: 0;
    list-style: none;
}

.sd-rp-card[b-ff9j00sy2o] {
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-2, 0.5rem);
    min-width: 0;
    padding: var(--ghostai-space-3, 0.75rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    background: var(--ghostai-color-surface);
}

.sd-rp-card__title[b-ff9j00sy2o] {
    margin: 0;
    font-size: var(--ghostai-type-body, 1rem);
    font-weight: 700;
    color: var(--ghostai-color-text-primary);
    overflow-wrap: anywhere;
}

.sd-rp-card__map[b-ff9j00sy2o] {
    min-width: 0;
    max-height: 14rem;
    overflow: hidden;
}

.sd-rp-card__facts[b-ff9j00sy2o] {
    margin: 0;
}

.sd-rp-card__links[b-ff9j00sy2o] {
    margin: 0;
    overflow-wrap: anywhere;
}

.sd-rp__diagnostics[b-ff9j00sy2o] {
    margin-top: var(--ghostai-space-4, 1rem);
    padding-top: var(--ghostai-space-3, 0.75rem);
    border-top: 1px dashed var(--ghostai-color-border);
}
/* /Components/Shared/RehearsalInstanceBanner.razor.rz.scp.css */
.ghostai-rehearsal-banner[b-wm18j2ae0t] {
    padding: 0.5rem 1rem;
    background: #b45309;
    color: #ffffff;
    font-weight: 600;
    text-align: center;
}
/* /Components/Shared/SessionReprocessAction.razor.rz.scp.css */
/* #3574 — "Recalculate the session" on Session details. Design-system tokens only; wraps at phone width (375–390 px). */
.sd-reprocess[b-m7gvt7knyq] {
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-2, 0.5rem);
    margin-top: var(--ghostai-space-2, 0.5rem);
    max-width: 100%;
    min-width: 0;
}

.sd-reprocess__row[b-m7gvt7knyq] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
    min-width: 0;
}

.sd-reprocess__note[b-m7gvt7knyq] {
    margin: 0;
    color: var(--ghostai-color-text-muted);
    font-size: var(--ghostai-type-small, 0.85rem);
    overflow-wrap: anywhere;
}

.sd-reprocess__locked[b-m7gvt7knyq] {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
    min-height: var(--ghostai-touch-target, 44px);
    padding: 0 var(--ghostai-space-3, 0.75rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    color: var(--ghostai-color-text-primary);
    background: var(--ghostai-color-surface);
    text-decoration: none;
}

.sd-reprocess__locked:hover[b-m7gvt7knyq],
.sd-reprocess__locked:focus-visible[b-m7gvt7knyq] {
    border-color: var(--ghostai-color-accent);
}

.sd-reprocess__progress[b-m7gvt7knyq] {
    display: inline-flex;
    align-items: center;
    gap: var(--ghostai-space-2, 0.5rem);
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small, 0.85rem);
}

.sd-reprocess__spinner[b-m7gvt7knyq] {
    width: 0.9rem;
    height: 0.9rem;
    border: 2px solid var(--ghostai-color-border);
    border-top-color: var(--ghostai-color-accent);
    border-radius: 50%;
    animation: sd-reprocess-spin-b-m7gvt7knyq 1s linear infinite;
}

@media (prefers-reduced-motion: reduce) {
    .sd-reprocess__spinner[b-m7gvt7knyq] {
        animation: none;
    }
}

@keyframes sd-reprocess-spin-b-m7gvt7knyq {
    to {
        transform: rotate(360deg);
    }
}

.sd-reprocess__summary[b-m7gvt7knyq] {
    padding: var(--ghostai-space-3, 0.75rem);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md, 8px);
    background: var(--ghostai-color-surface-2);
    color: var(--ghostai-color-text-primary);
    font-size: var(--ghostai-type-small, 0.85rem);
    overflow-wrap: anywhere;
}

.sd-reprocess__summary p[b-m7gvt7knyq] {
    margin: 0;
}

.sd-reprocess__list[b-m7gvt7knyq] {
    margin: 0;
    padding-left: var(--ghostai-space-4, 1rem);
}

/* /Components/Shared/StickyColumns.razor.rz.scp.css */
.sticky-columns[b-c6v0d9ny3z] {
    --sticky-columns-gap: 12px;
    --sticky-columns-top: calc(var(--ghostai-bench-shell-top, var(--ghostai-shell-header-height, 56px)) + var(--sticky-columns-gap));
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);
    gap: var(--sticky-columns-gap);
    align-items: start;
    min-width: 0;
}

.sticky-columns__left[b-c6v0d9ny3z] {
    position: sticky;
    top: var(--sticky-columns-top);
    min-width: 0;
    /* Keep all controls reachable even when the left content is taller than a short browser window. */
    max-height: calc(100vh - var(--sticky-columns-top) - var(--sticky-columns-gap));
    max-height: calc(100dvh - var(--sticky-columns-top) - var(--sticky-columns-gap));
    overflow: auto;
}

.sticky-columns__right[b-c6v0d9ny3z] { min-width: 0; }

/* Release the sticky stacking context for a child's fixed-position fullscreen fallback. */
.sticky-columns__left:has([data-fullscreen="true"])[b-c6v0d9ny3z] {
    position: static;
    max-height: none;
    overflow: visible;
}

@media (max-width: 1100px), print {
    .sticky-columns[b-c6v0d9ny3z] { grid-template-columns: minmax(0, 1fr); }

    .sticky-columns__left[b-c6v0d9ny3z] {
        position: static;
        max-height: none;
        overflow: visible;
    }
}
/* /Layout/EmbedLayout.razor.rz.scp.css */
/* The page inside a client's window (the MAUI popup): GhostAiPage is the window's full width with its own side padding.
   Sized as content-box it was the window plus 32 px, so every embedded page (the training area's details, the corner
   hint) panned sideways at any width — measured in a browser at 320, 390 and 900 px. Border-box keeps the padding
   inside the window. */
.ghostai-embed[b-iduhh1eyz6]  .ghostai-page {
    box-sizing: border-box;
    max-width: 100%;
}
/* /Pages/Coaching/MeCoach.razor.rz.scp.css */
/* T136-D — /me/coach as a page of the account area: the live coach, the training corner, and the ten driver-facing
   groups as rows of one card. Scoped to this page (CSS isolation) and built only from the GhostAI theme tokens, so
   the dark and light themes both come from ghostai-theme.css. Every row wraps and every long word breaks, so a 390 px
   phone never scrolls sideways. */

.coach-settings__note[b-he508upvjf] {
    margin: 0;
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small);
    line-height: 1.55;
    overflow-wrap: anywhere;
}

/* A label whose text comes first and whose switch sits at the end of the row. */
.coach-switch-row[b-he508upvjf] {
    display: flex;
    flex-wrap: nowrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ghostai-space-4);
    min-width: 0;
}

.coach-switch-row__text[b-he508upvjf] {
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-1);
    min-width: 0;
}

.coach-switch-row__hint[b-he508upvjf] {
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small);
    font-weight: 400;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.coach-groups[b-he508upvjf] {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    list-style: none;
}

.coach-group[b-he508upvjf] {
    display: grid;
    gap: var(--ghostai-space-3);
    min-width: 0;
    padding: var(--ghostai-space-4) 0;
    border-top: 1px solid var(--ghostai-color-border);
}

.coach-group:last-child[b-he508upvjf] {
    padding-bottom: 0;
}

.coach-group__header[b-he508upvjf] {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--ghostai-space-3);
}

.coach-group__heading[b-he508upvjf] {
    flex: 1 1 10rem;
    min-width: 0;
}

.coach-group__title[b-he508upvjf] {
    margin: 0;
    color: var(--ghostai-color-text-primary);
    font-size: var(--ghostai-type-body);
    font-weight: 600;
    line-height: 1.3;
}

.coach-group__description[b-he508upvjf] {
    margin: var(--ghostai-space-1) 0 0;
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small);
    overflow-wrap: anywhere;
}

.coach-group__switch[b-he508upvjf] {
    flex: 0 0 auto;
    align-items: center;
    min-height: var(--ghostai-touch-target, 2.75rem);
}

.coach-group__switch-label[b-he508upvjf] {
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small);
}

.coach-group__status[b-he508upvjf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--ghostai-space-2);
}

.coach-group__mixed[b-he508upvjf] {
    color: var(--ghostai-color-text-muted);
    font-size: var(--ghostai-type-small);
}

.coach-group__status .ghostai-coach__linkbutton[b-he508upvjf] {
    margin-inline-start: auto;
}

.coach-group__status .ghostai-coach__linkbutton:disabled[b-he508upvjf] {
    color: var(--ghostai-color-text-muted);
    text-decoration: none;
    cursor: default;
}

.coach-group__summary[b-he508upvjf] {
    display: flex;
    align-items: center;
    min-height: var(--ghostai-touch-target, 2.75rem);
    color: var(--ghostai-color-accent);
    font-size: var(--ghostai-type-small);
    font-weight: 600;
    cursor: pointer;
}

.coach-group__messages .ghostai-coach__list[b-he508upvjf] {
    padding-inline-start: var(--ghostai-space-3);
    border-inline-start: 2px solid var(--ghostai-color-border);
}

.coach-message__badges[b-he508upvjf] {
    display: flex;
    flex-wrap: wrap;
    gap: var(--ghostai-space-1);
}

.coach-message__badges:empty[b-he508upvjf] {
    display: none;
}

.coach-message__example[b-he508upvjf] {
    display: grid;
    gap: var(--ghostai-space-1);
    margin: 0;
    padding: var(--ghostai-space-2) var(--ghostai-space-3);
    border-inline-start: 3px solid var(--ghostai-color-accent);
    border-radius: var(--ghostai-radius-sm);
    background: var(--ghostai-color-surface-2);
}

.coach-message__example-label[b-he508upvjf] {
    color: var(--ghostai-color-text-muted);
    font-size: var(--ghostai-type-caption);
    font-weight: 600;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.coach-message__example-text[b-he508upvjf] {
    color: var(--ghostai-color-text-primary);
    font-size: var(--ghostai-type-body);
    overflow-wrap: anywhere;
}

.coach-message__example-text--missing[b-he508upvjf] {
    color: var(--ghostai-color-text-muted);
    font-size: var(--ghostai-type-small);
}

.coach-message__wording > .ghostai-coach__wording[b-he508upvjf] {
    margin-top: var(--ghostai-space-2);
}

.ghostai-coach__save-message[b-he508upvjf] {
    margin: 0 auto 0 0;
    font-size: var(--ghostai-type-small);
}
/* /Pages/DriverDna/MeOverview.razor.rz.scp.css */
.driver-dna-variants[b-trg7jqce60] {
    display: grid;
    gap: 1rem;
    min-width: 0;
}

.driver-dna-variants__toolbar[b-trg7jqce60] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem;
}

.driver-dna-variants__label[b-trg7jqce60] {
    font-weight: 600;
}

.driver-dna-variants__basis[b-trg7jqce60] {
    display: flex;
    flex-wrap: wrap;
    gap: .375rem;
}

.driver-dna-variants__basis-button[b-trg7jqce60] {
    border: 1px solid var(--bs-border-color, #ced4da);
    border-radius: 999px;
    background: transparent;
    color: inherit;
    padding: .375rem .75rem;
}

.driver-dna-variants__basis-button--selected[b-trg7jqce60] {
    border-color: var(--bs-primary, #0d6efd);
    background: var(--bs-primary, #0d6efd);
    color: #fff;
}

.driver-dna-variants__basis-button:disabled[b-trg7jqce60] {
    cursor: not-allowed;
    opacity: .65;
}

/* The only chosen group cannot be taken away; it still reads as chosen. */
.driver-dna-variants__basis-button--selected:disabled[b-trg7jqce60] {
    opacity: 1;
}

.driver-dna-variants__hint[b-trg7jqce60] {
    font-size: .8125rem;
    opacity: .75;
}

.driver-dna-variants__basis-button .driver-dna-variants__hint[b-trg7jqce60] {
    margin-left: .25rem;
}

.driver-dna-variants__grid[b-trg7jqce60] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    min-width: 0;
}

.driver-dna-variants__slot[b-trg7jqce60] {
    min-width: 0;
}

/* T2003 (#4111) — the slot a link (the dashboard card's) opened the page on. */
.driver-dna-variants__slot[data-linked="true"][b-trg7jqce60] {
    outline: 2px solid var(--bs-primary, #0d6efd);
    outline-offset: 2px;
    border-radius: .5rem;
}

.driver-dna-variants__updating[b-trg7jqce60] {
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    background: color-mix(in srgb, var(--bs-warning, #ffc107) 18%, transparent);
    padding: .25rem .625rem;
    font-size: .8125rem;
    font-weight: 600;
    white-space: nowrap;
}

/* T2002 (#4110) — a failed recalculation is a fact about the job, not a warning that the shown result is wrong. */
.driver-dna-variants__updating--failed[b-trg7jqce60] {
    background: color-mix(in srgb, var(--bs-danger, #dc3545) 14%, transparent);
    white-space: normal;
}

.driver-dna-variants__action[b-trg7jqce60] {
    margin: 0;
    font-size: .875rem;
}

@media (max-width: 600px) {
    .driver-dna-variants__grid[b-trg7jqce60] {
        grid-template-columns: minmax(0, 1fr);
    }

    .driver-dna-variants__basis[b-trg7jqce60],
    .driver-dna-variants__basis-button[b-trg7jqce60] {
        width: 100%;
    }
}
/* /Pages/Help/HelpPage.razor.rz.scp.css */
.help-article[b-1cnbqhbgv8] {
    max-width: 72ch;
}

.help-article__toc-heading[b-1cnbqhbgv8] {
    margin: 0 0 var(--ghostai-space-2);
    font-size: var(--ghostai-type-small);
    color: var(--ghostai-color-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.help-article__toc ul[b-1cnbqhbgv8] {
    display: grid;
    gap: var(--ghostai-space-2);
    margin: 0;
    padding: 0;
    list-style: none;
}

/* The articles as tiles, as many to a row as keep 240px each; on a phone one column. */
.help-index__list[b-1cnbqhbgv8] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: var(--ghostai-space-3);
    margin: 0;
    padding: 0;
    list-style: none;
}

.help-index__item[b-1cnbqhbgv8] {
    display: flex;
    min-width: 0;
}

.help-index__link[b-1cnbqhbgv8] {
    display: flex;
    flex: 1;
    flex-direction: column;
    gap: var(--ghostai-space-2);
    min-width: 0;
    padding: var(--ghostai-space-4);
    border: 1px solid var(--ghostai-color-border);
    border-radius: 14px;
    background: var(--ghostai-color-input-bg);
    text-decoration: none;
}

.help-index__link:hover[b-1cnbqhbgv8] {
    border-color: var(--ghostai-color-border-strong);
}

.help-index__title[b-1cnbqhbgv8] {
    color: var(--ghostai-color-text-primary);
    font-weight: 600;
}

.help-index__summary[b-1cnbqhbgv8] {
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small);
    line-height: 1.5;
}

.help-index__read[b-1cnbqhbgv8] {
    margin-top: auto;
    color: var(--ghostai-color-accent);
    font-size: var(--ghostai-type-small);
}

.help-article__note[b-1cnbqhbgv8] {
    margin: 0 0 var(--ghostai-space-3);
    color: var(--ghostai-color-text-secondary);
}

.help-article__toc[b-1cnbqhbgv8] {
    margin-bottom: var(--ghostai-space-4);
    padding: var(--ghostai-space-3);
    border: 1px solid var(--ghostai-color-border);
    border-radius: var(--ghostai-radius-md);
}

.help-article__toc a[b-1cnbqhbgv8] {
    display: inline-block;
    min-height: var(--ghostai-touch-target, 44px);
    line-height: var(--ghostai-touch-target, 44px);
}

.help-article__body[b-1cnbqhbgv8] {
    line-height: 1.6;
    overflow-wrap: anywhere;
}

.help-article__body[b-1cnbqhbgv8]  h2,
.help-article__body[b-1cnbqhbgv8]  h3 {
    scroll-margin-top: calc(var(--ghostai-shell-header-height, 56px) + var(--ghostai-space-3));
}

.help-article__body[b-1cnbqhbgv8]  .help-example {
    margin: var(--ghostai-space-3) 0;
    padding: var(--ghostai-space-3);
    border-left: 3px solid var(--ghostai-color-border-strong);
    border-radius: var(--ghostai-radius-md);
    background: var(--ghostai-panel-well-bg, transparent);
}

.help-article__body[b-1cnbqhbgv8]  .help-example p {
    margin: 0 0 var(--ghostai-space-2);
}

.help-article__body[b-1cnbqhbgv8]  .help-example p:last-child {
    margin-bottom: 0;
}

.help-article__body[b-1cnbqhbgv8]  .help-figure {
    margin: var(--ghostai-space-3) 0;
}

.help-article__body[b-1cnbqhbgv8]  .help-figure img {
    display: block;
    max-width: 100%;
    height: auto;
}
/* /Pages/Me/Appearance.razor.rz.scp.css */
.appearance-backdrop__text[b-aldb2cazbp] {
    margin: 0;
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small);
    line-height: 1.55;
}

/* Three tiles side by side while each keeps 200px, else stacked: the picture is what tells the options apart. */
.appearance-backdrop__options[b-aldb2cazbp] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: var(--ghostai-space-3);
    margin: 0;
    padding: 0;
    border: 0;
}

.appearance-backdrop__option[b-aldb2cazbp] {
    display: flex;
    flex-direction: column;
    gap: var(--ghostai-space-3);
    min-width: 0;
    padding: var(--ghostai-space-3);
    border: 1px solid var(--ghostai-color-border);
    border-radius: 14px;
    background: var(--ghostai-color-input-bg);
    cursor: pointer;
}

.appearance-backdrop__option:has(input:checked)[b-aldb2cazbp] {
    border-color: var(--ghostai-color-primary);
    box-shadow: inset 0 0 0 1px var(--ghostai-color-primary);
}

.appearance-backdrop__option:has(input:focus-visible)[b-aldb2cazbp] {
    outline: 2px solid var(--ghostai-color-primary);
    outline-offset: 2px;
}

/* A page in miniature: two lines of "content" and, behind them, what the option draws. */
.appearance-backdrop__preview[b-aldb2cazbp] {
    position: relative;
    display: block;
    height: 96px;
    overflow: hidden;
    border-radius: 10px;
    background: var(--ghostai-color-bg);
}

.appearance-backdrop__preview[b-aldb2cazbp]::before,
.appearance-backdrop__preview[b-aldb2cazbp]::after {
    position: absolute;
    content: "";
}

.appearance-backdrop__preview--fixed[b-aldb2cazbp]::before {
    right: 14px;
    bottom: 10px;
    width: 54px;
    height: 54px;
    border: 3px solid color-mix(in srgb, var(--ghostai-color-primary) 55%, transparent);
    border-radius: 16px;
}

.appearance-backdrop__preview--fixed[b-aldb2cazbp]::after {
    right: 30px;
    bottom: 26px;
    width: 22px;
    height: 22px;
    border-radius: 999px;
    background: color-mix(in srgb, var(--ghostai-color-accent) 35%, transparent);
}

.appearance-backdrop__preview--random[b-aldb2cazbp]::before {
    left: 14px;
    bottom: 12px;
    width: 44px;
    height: 44px;
    border: 3px solid color-mix(in srgb, var(--ghostai-color-accent) 40%, transparent);
    border-radius: 999px;
}

.appearance-backdrop__preview--random[b-aldb2cazbp]::after {
    top: 14px;
    right: 18px;
    width: 30px;
    height: 30px;
    border: 3px solid color-mix(in srgb, var(--ghostai-color-primary) 45%, transparent);
    border-radius: 8px;
    transform: rotate(14deg);
}

.appearance-backdrop__preview-line[b-aldb2cazbp] {
    position: absolute;
    top: 12px;
    left: 12px;
    width: 60%;
    height: 10px;
    border-radius: 4px;
    background: var(--ghostai-color-border);
}

.appearance-backdrop__preview-line--short[b-aldb2cazbp] {
    top: 30px;
    width: 40%;
}

.appearance-backdrop__choice[b-aldb2cazbp] {
    display: flex;
    align-items: center;
    gap: var(--ghostai-space-3);
}

.appearance-backdrop__choice input[b-aldb2cazbp] {
    flex: none;
    width: 18px;
    height: 18px;
    margin: 0;
    accent-color: var(--ghostai-color-primary);
}

.appearance-backdrop__label[b-aldb2cazbp] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    min-width: 0;
}

.appearance-backdrop__name[b-aldb2cazbp] {
    color: var(--ghostai-color-text-primary);
    font-weight: 600;
}

.appearance-backdrop__hint[b-aldb2cazbp] {
    color: var(--ghostai-color-text-secondary);
    font-size: var(--ghostai-type-small);
}

.appearance-backdrop__saved[b-aldb2cazbp] {
    margin: 0;
    color: var(--ghostai-color-text-secondary);
}
/* /Pages/MySetups.razor.rz.scp.css */
p[b-30wpmt6dkq], h3[b-30wpmt6dkq], button[b-30wpmt6dkq] { min-width: 0; overflow-wrap: anywhere; }
code[b-30wpmt6dkq] { overflow-wrap: anywhere; }

.setup-library__text[b-30wpmt6dkq] { margin: 0; color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); line-height: 1.55; }
.setup-library__text--small[b-30wpmt6dkq] { color: var(--ghostai-color-text-muted); }
.setup-library__status[b-30wpmt6dkq] { margin: 0; color: var(--ghostai-color-text-secondary); }
.setup-library__alert[b-30wpmt6dkq] { margin: 0; padding: var(--ghostai-space-3); border-radius: 10px; background: color-mix(in srgb, var(--ghostai-color-danger) 14%, transparent); color: var(--ghostai-color-text-primary); }
.setup-library__actions[b-30wpmt6dkq] { display: flex; flex-wrap: wrap; align-items: center; gap: var(--ghostai-space-2); margin: 0; }
.setup-library__new[b-30wpmt6dkq] { margin-inline-start: auto; }

/* Filters as a row of fields that wraps; the buttons end the row. */
.setup-library__filters[b-30wpmt6dkq] { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--ghostai-space-3); margin: 0; padding: 0; border: 0; min-width: 0; }
.setup-library__field[b-30wpmt6dkq] { display: flex; flex: 1 1 160px; flex-direction: column; gap: var(--ghostai-space-1); min-width: 0; color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); font-weight: 600; }
.setup-library__field input[b-30wpmt6dkq], .setup-library__field select[b-30wpmt6dkq] { width: 100%; min-height: var(--ghostai-touch-target, 44px); padding: 0 var(--ghostai-space-3); border: 1px solid var(--ghostai-color-border-strong); border-radius: 10px; background: var(--ghostai-color-input-bg); color: var(--ghostai-color-text-primary); font: inherit; font-weight: 400; box-sizing: border-box; }
.setup-library__check[b-30wpmt6dkq] { display: flex; align-items: flex-start; gap: var(--ghostai-space-2); color: var(--ghostai-color-text-primary); font-size: var(--ghostai-type-small); }
.setup-library__check input[b-30wpmt6dkq] { flex: none; margin-top: 3px; accent-color: var(--ghostai-color-primary); }

/* Rows of the library: the name (a button that opens it), what it is for and when it was made. */
.setup-library__rows[b-30wpmt6dkq] { display: flex; flex-direction: column; }
.setup-library__row[b-30wpmt6dkq] { display: grid; grid-template-columns: 1fr auto; gap: var(--ghostai-space-1) var(--ghostai-space-3); padding: var(--ghostai-space-3) 0; border-top: 1px solid var(--ghostai-color-border); }
.setup-library__row:last-child[b-30wpmt6dkq] { border-bottom: 1px solid var(--ghostai-color-border); }
.setup-library__row-name[b-30wpmt6dkq] { grid-column: 1; margin: 0; font-size: var(--ghostai-type-body); }
.setup-library__row-name button[b-30wpmt6dkq] { padding: 0; border: 0; background: none; color: var(--ghostai-color-text-primary); font: inherit; font-weight: 600; text-align: start; cursor: pointer; }
.setup-library__row-name button:hover[b-30wpmt6dkq] { color: var(--ghostai-color-accent); }
.setup-library__row-facts[b-30wpmt6dkq] { grid-column: 1; margin: 0; color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); }
.setup-library__row-date[b-30wpmt6dkq] { grid-column: 2; grid-row: 1; color: var(--ghostai-color-text-muted); font-size: var(--ghostai-type-small); }

.setup-library__table[b-30wpmt6dkq] { overflow-x: auto; }
.setup-library__table table[b-30wpmt6dkq] { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: var(--ghostai-type-small); }
.setup-library__table th[b-30wpmt6dkq], .setup-library__table td[b-30wpmt6dkq] { padding: var(--ghostai-space-2); border-bottom: 1px solid var(--ghostai-color-border); text-align: start; overflow-wrap: anywhere; }
.setup-library__table th[b-30wpmt6dkq] { color: var(--ghostai-color-text-secondary); font-weight: 600; }
.setup-library__more[b-30wpmt6dkq] { color: var(--ghostai-color-text-secondary); font-size: var(--ghostai-type-small); }
.setup-library__more summary[b-30wpmt6dkq] { cursor: pointer; color: var(--ghostai-color-accent); font-weight: 600; }

/* A group of related controls inside a card: its own frame and legend. */
.setup-library__group[b-30wpmt6dkq] { display: grid; gap: var(--ghostai-space-3); min-width: 0; margin: 0; padding: var(--ghostai-space-4); border: 1px solid var(--ghostai-color-border); border-radius: 12px; }
.setup-library__group legend[b-30wpmt6dkq] { padding: 0 var(--ghostai-space-1); color: var(--ghostai-color-text-primary); font-weight: 600; }
.setup-library__group--danger[b-30wpmt6dkq] { border-color: color-mix(in srgb, var(--ghostai-color-danger) 45%, var(--ghostai-color-border)); }
.setup-library__share[b-30wpmt6dkq] { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--ghostai-space-2); margin: 0; }
