/* Shared column measures keep planning reviews stable as rows are loaded. */
.ap-workspace {
    --ap-review-identity-width: 17.5rem;
    --ap-review-schedule-width: 13.75rem;
    --ap-review-state-width: 6.25rem;
    --ap-review-clashes-width: 6.25rem;
    --ap-review-actions-width: 7rem;
}

.ap-workspace-main:not(.ap-settings-main):has(.ap-settings-navigation) {
    --ap-page-gutter: 0px;
}

/* Both standalone heroes and heroes inside a replaceable content frame use this layout. */
.ap-settings-main > .ap-settings-page-frame,
.ap-settings-main > :where(section, div):has(> .ap-page-shell > section > .ap-page-shell > [data-hero-card]) {
    padding-block-start: 0;
}

.ap-settings-main > :where(section, div):has([data-hero-card]) + .ap-settings-page-frame > .ap-page-shell > :first-child,
.ap-settings-page-frame > .ap-page-shell > section:has(> .ap-page-shell > [data-hero-card]) + :where(div, section, form, article),
.ap-settings-page-frame > .ap-page-shell > :where(div, section) > section:has(> .ap-page-shell > [data-hero-card]) + :where(div, section, form, article) {
    margin-block-start: .5rem;
}

.ap-workspace .ap-settings-main [data-hero-card] {
    border-bottom: 1px solid var(--ap-workspace-line);
}

.ap-workspace .ap-settings-main [data-hero-card] > .ap-hero-body {
    padding: .625rem 0 .5rem;
}

.ap-settings-main [data-hero-card] .ap-hero-row {
    flex-flow: row wrap;
    align-items: center;
    gap: .5rem .75rem;
}

.ap-settings-main [data-hero-card] .ap-hero-row > :first-child {
    flex: 1 1 14rem;
}

.ap-workspace .ap-settings-main [data-hero-card-title] {
    font-size: 1.25rem;
}

.ap-settings-main :is([data-hero-card-title] > span:first-child, [data-hero-card-subtitle]) {
    white-space: normal;
    overflow-wrap: anywhere;
}

.ap-settings-navigation {
    display: grid;
    gap: 1.5rem;
    padding: 1rem .75rem 0;
}

.ap-workspace .ap-settings-navigation .nav-card-grid.ap-hub-navigation {
    --nav-card-padding: .75rem 3.5rem .75rem .5rem;
    --nav-card-icon-box-size: 2rem;
    --nav-card-min-height: 0;
    --nav-card-grid-gap: 0;
    grid-template-columns: minmax(0, 1fr);
    gap: 0 2rem;
    border-top: 1px solid var(--ap-workspace-line);
}

@media (min-width: 40rem) {
    .ap-workspace .ap-settings-navigation .nav-card-grid.ap-hub-navigation {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (min-width: 64rem) {
    .ap-workspace .ap-settings-navigation .nav-card-grid.ap-hub-navigation {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

.ap-workspace .ap-settings-navigation .nav-card-grid .nav-card-shell {
    min-height: 0;
    border: 0;
    border-bottom: 1px solid var(--ap-workspace-line);
    border-radius: 0;
    box-shadow: none;
    transform: none;
}

.ap-workspace .ap-settings-navigation .nav-card-grid .nav-card-shell:hover {
    background: var(--ap-workspace-hover);
    box-shadow: none;
    transform: none;
}

.ap-workspace .ap-settings-navigation .nav-card-body {
    padding: .75rem .5rem;
}

.ap-workspace .ap-settings-navigation .nav-card-row {
    align-items: center;
}

.ap-workspace .ap-settings-navigation .nav-card-icon {
    width: 2rem;
    height: 2rem;
    border-radius: var(--ap-workspace-radius);
}

.ap-workspace .ap-settings-navigation .nav-card-subtitle {
    margin-top: .125rem;
}

.ap-settings-menu [hidden] {
    display: none;
}

.ap-settings-menu {
    padding: 0 .5rem 1rem;
    border-inline-end: 1px solid var(--ap-workspace-line);
    background: var(--ap-workspace-canvas, var(--color-base-100));
}

@media (width > 42rem) {
    .ap-workspace:has(.ap-settings-menu) {
        --ap-settings-menu-width: 13rem;
        --ap-settings-rail-offset: 0px;
    }

    .ap-workspace:has(.ap-settings-menu):has(.ap-workspace-rail) {
        --ap-settings-rail-offset: var(--ap-workspace-rail-width);
    }

    .ap-workspace:has(.ap-settings-menu) .ap-workspace-navbar {
        left: calc(var(--ap-settings-rail-offset) + var(--ap-settings-menu-width));
    }

    .ap-workspace:has(.ap-settings-menu) .ap-workspace-main {
        margin-left: calc(var(--ap-settings-rail-offset) + var(--ap-settings-menu-width));
    }

    .ap-settings-menu {
        position: fixed;
        z-index: 99;
        inset: 0 auto 0 var(--ap-settings-rail-offset);
        width: var(--ap-settings-menu-width);
        overflow-y: auto;
    }

}

.ap-settings-menu-header {
    position: relative;
    display: flex;
    align-items: center;
    gap: .25rem;
    min-height: var(--ap-workspace-header-height);
    margin-bottom: .5rem;
    padding-inline: .25rem;
}

.ap-settings-menu-header::after {
    position: absolute;
    inset: auto -.5rem 0;
    border-bottom: 1px solid var(--ap-workspace-line);
    content: "";
}

.ap-settings-menu-title {
    flex: 1;
    color: var(--ap-workspace-ink);
    font-size: .9375rem;
    font-weight: 500;
}

.ap-settings-menu-toggle {
    display: none;
}

.ap-settings-icon-button {
    display: inline-flex;
    flex: 0 0 1.875rem;
    width: 1.875rem;
    height: 1.875rem;
    align-items: center;
    justify-content: center;
    border-radius: var(--ap-workspace-radius);
    color: var(--ap-workspace-muted);
    cursor: pointer;
}

.ap-settings-icon-button:hover {
    background: var(--ap-workspace-hover);
}

.ap-settings-search {
    position: absolute;
    inset: .375rem 0;
    display: flex;
    align-items: center;
    gap: .375rem;
    padding-inline: .5rem .125rem;
    border: 1px solid var(--ap-workspace-line);
    border-radius: var(--ap-workspace-radius);
    background: var(--ap-workspace-surface, var(--color-base-100));
    color: var(--ap-workspace-muted);
    font-size: .75rem;
}

.ap-settings-menu-header:has(.ap-settings-search:not([hidden])) > :is(h2, button) {
    visibility: hidden;
}

.ap-settings-search:has(input:focus) {
    outline: 2px solid var(--ap-workspace-accent);
    outline-offset: 1px;
}

.ap-settings-search input {
    width: 100%;
    min-width: 0;
    min-height: 0;
    flex: 1;
    align-self: stretch;
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--ap-workspace-ink);
    font-size: .75rem;
    line-height: 1.25;
    outline: none;
}

.ap-settings-search input:focus-visible {
    outline: none;
}

.ap-settings-search .ap-settings-icon-button:focus-visible {
    outline-offset: -2px;
}

.ap-settings-search input::-webkit-search-cancel-button {
    display: none;
}

.ap-settings-search-results :is(a, button) {
    display: flex;
    width: 100%;
    align-items: flex-start;
    gap: .625rem;
    padding: .625rem .5rem;
    border: 0;
    border-radius: var(--ap-workspace-radius);
    background: transparent;
    color: var(--ap-workspace-ink);
    font-size: .8125rem;
    text-align: start;
    overflow-wrap: anywhere;
}

.ap-settings-search-results :is(a, button):hover {
    background: var(--ap-workspace-hover);
}

.ap-settings-search-results :is(a, button):focus-visible {
    outline: 2px solid var(--ap-workspace-accent);
    outline-offset: -2px;
}

.ap-settings-search-results :is(a, button) > i {
    flex: 0 0 1rem;
    margin-top: .125rem;
    color: var(--ap-workspace-muted);
}

.ap-settings-search-result-detail {
    display: block;
    margin-top: .125rem;
    color: var(--ap-workspace-muted);
    font-size: .75rem;
    line-height: 1.5;
}

.ap-settings-menu-group + .ap-settings-menu-group {
    margin-top: .625rem;
}

.ap-settings-menu-group :is(summary, a, [data-settings-command]) {
    display: flex;
    min-height: 2.125rem;
    align-items: center;
    gap: .625rem;
    padding: .375rem .5rem;
    border-radius: var(--ap-workspace-radius);
    overflow-wrap: anywhere;
}

.ap-settings-menu-group summary {
    justify-content: space-between;
    color: var(--ap-workspace-muted);
    cursor: pointer;
    font-size: .75rem;
    font-weight: 500;
    list-style: none;
}

.ap-settings-menu-group summary::-webkit-details-marker {
    display: none;
}

.ap-settings-menu-group > summary .fa-chevron-down,
.ap-settings-menu-branch > summary .fa-chevron-down {
    transform: rotate(-90deg);
}

:is(.ap-settings-menu-group, .ap-settings-menu-branch)[open] > summary .fa-chevron-down {
    transform: none;
}

:is(.ap-settings-menu-group, .ap-settings-menu-branch) > .ap-settings-menu-children {
    margin-inline-start: .25rem;
    padding-inline-start: .125rem;
    border-inline-start: 1px solid var(--ap-workspace-line);
}

.ap-settings-menu-branch > summary {
    justify-content: flex-start;
    color: var(--ap-workspace-ink);
    font-size: .8125rem;
}

.ap-settings-menu-group summary > span {
    flex: 1;
}

.ap-settings-menu-group :is(summary, a, [data-settings-command]) > span {
    min-width: 0;
}

.ap-settings-menu-branch[open] > summary {
    background: var(--ap-workspace-hover);
}

.ap-settings-menu-group :is(a, [data-settings-command]) {
    color: var(--ap-workspace-ink);
    font-size: .8125rem;
}

.ap-settings-menu-group [data-settings-command] {
    width: 100%;
    background: transparent;
    border: 0;
    cursor: pointer;
    text-align: start;
}

.ap-settings-menu-group :is(summary, a, [data-settings-command]) > i:not(.fa-chevron-down) {
    flex: 0 0 1rem;
    color: var(--ap-workspace-muted);
    text-align: center;
}

.ap-settings-menu-group a > i.fa-draw-polygon,
.ap-settings-search-results a > i.fa-draw-polygon {
    height: 1rem;
    background-color: currentColor;
    mask: url('../core/rail_icons/route.svg') center / contain no-repeat;
}

.ap-settings-menu-group a > i.fa-draw-polygon::before,
.ap-settings-search-results a > i.fa-draw-polygon::before {
    content: none;
}

.ap-settings-menu-group :is(summary, a, [data-settings-command]):hover,
.ap-settings-menu-toggle:hover {
    background: var(--ap-workspace-hover);
}

.ap-settings-content {
    min-width: 0;
    scroll-margin-top: var(--ap-workspace-topbar-offset, 48px);
}

.ap-settings-menu-group :is(a, [data-settings-command])[aria-current="page"] {
    background: var(--ap-workspace-hover);
    color: var(--ap-workspace-accent);
    font-weight: 600;
}

.ap-settings-startup {
    display: grid;
    gap: 1rem;
}

.ap-settings-empty {
    margin: .75rem .5rem;
    color: var(--ap-workspace-muted);
    font-size: .875rem;
}

@media (max-width: 42rem) {
    .ap-settings-menu {
        padding-bottom: .375rem;
        border-inline-end: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
    }

    .ap-settings-menu nav {
        max-height: 60dvh;
        overflow-y: auto;
        overscroll-behavior: contain;
    }

    .ap-settings-menu-toggle:not([hidden]) {
        display: inline-flex;
        min-height: 2.75rem;
        align-items: center;
        gap: .5rem;
        padding: .25rem .5rem;
        border-radius: var(--ap-workspace-radius);
        font-size: .8125rem;
    }

    .ap-settings-menu:has(.ap-settings-menu-toggle:not([hidden])[aria-expanded="false"]):not(:has(.ap-settings-search:not([hidden]))) nav {
        display: none;
    }
}

/* These operational tables have their own column sizing and focus controls. */
:is(#possession-table-card, #worksite-table-card, #activity-table-card,
    #racecards-activity-table-card, #worksite-management-table) {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: var(--ap-workspace-surface);
}

:is(#possession-table-card, #worksite-table-card, #activity-table-card,
    #racecards-activity-table-card, #worksite-management-table) thead th {
    color: var(--ap-workspace-muted);
    background: var(--ap-workspace-subtle);
    border-bottom: 1px solid var(--ap-workspace-line);
    font-weight: 600;
}

/* The worksite search stays available above the list on narrow screens. */
.ap-worksite-management-header {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    background: transparent;
}

.ap-worksite-management-header > .card-body {
    padding: 0;
}

@media (max-width: 47.99rem) {
    .ap-worksite-management-heading {
        align-items: stretch;
        flex-direction: column;
    }

    .ap-worksite-management-search {
        width: 100%;
    }
}

@media screen {
    /* Shared flat surfaces also cover legacy template wrappers. */
    .ap-workspace .ap-workspace-main :where(.card, .premium-card,
        .tenant-library-option, .tenant-project-selection-card, .choice-tile,
        article[class*="rounded"], section[class*="rounded"], fieldset[class*="rounded"],
        div[class*="rounded"][class*="shadow"], div[class*="rounded"][class*="border"]):not(:where(
            .railway-schematic, .railway-schematic *, .modal-box, .modal-box *, dialog,
            .drawer-side *, [data-checkbox-drawer-panel] *,
            .dropdown, .dropdown *, .dropdown-content, .dropdown-content *,
            [role="listbox"], [role="listbox"] *, [role="menu"], [role="menu"] *,
            .flatpickr-calendar, .flatpickr-calendar *, .apexcharts-tooltip, .apexcharts-tooltip *,
            .alert, .alert *, [role="alert"], [role="alert"] *,
            [class*="bg-error"], [class*="bg-warning"], [class*="bg-success"],
            [class*="border-error"], [class*="border-warning"], [class*="border-success"],
            .tooltip, .tooltip *, .popover, .popover *,
            .my-works-week-meta, .racecards-week-meta, .planning-week-meta,
            [data-theme-preview], [data-theme-preview] *,
            .automation-report-email-preview *, .ql-toolbar, .ql-container, .ql-editor,
            :has(> .ql-toolbar), :has(> .ql-container),
            .reports-week-dropdown, .reports-week-options, .is-focused
        )) {
        border: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        box-shadow: none;
        background: transparent;
    }

    .ap-workspace .ap-workspace-main .card > .card-body:not(:where(
        .modal-box *, .drawer-side *, [data-checkbox-drawer-panel] *,
        [data-theme-preview] *, .automation-report-email-preview *
    )) {
        padding-inline: 0;
    }

    .ap-workspace .ap-workspace-main .premium-card:hover {
        box-shadow: none;
    }

    .ap-workspace .ap-workspace-main .alert,
    .ap-workspace .ap-workspace-main :is(div, section, article):is(
        [role="alert"], [class*="border-error"], [class*="border-warning"], [class*="border-success"]
    ):not(:where(.modal-box *, .drawer-side *, .railway-schematic *)) {
        border-width: 0 0 0 3px;
        border-radius: 0;
        box-shadow: none;
    }

    .ap-workspace .nav-card-grid.tenant-library-option-grid {
        --nav-card-padding: .875rem 3.5rem .875rem .5rem;
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }

    .ap-workspace .ap-workspace-main :is(.tenant-library-option, .tenant-project-selection-card).is-selected,
    .ap-workspace .ap-workspace-main .tenant-library-option:has(input:checked),
    .ap-workspace .ap-workspace-main .peer:checked + .choice-tile {
        border-left: 3px solid var(--ap-workspace-accent);
        border-radius: 0;
        background: color-mix(in srgb, var(--ap-workspace-accent) 6%, var(--ap-workspace-canvas));
        box-shadow: none;
    }

    .ap-workspace .ap-workspace-main .peer:focus-visible + .choice-tile {
        outline: 2px solid var(--ap-workspace-accent);
        outline-offset: 3px;
    }

    .ap-workspace .ap-workspace-main .choice-tile {
        transition: background-color 120ms ease, border-color 120ms ease;
    }

    .ap-workspace .context-switch-card {
        border: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .ap-workspace .context-switch-card:is(:hover, :focus-visible) {
        background: var(--ap-workspace-hover);
        box-shadow: none;
    }

    .ap-workspace-main :where(.card-title):not(:where(.drawer-side *, .modal *, [data-theme-preview] *)) {
        font-weight: 600;
    }

    .ap-workspace-main :where(.table):not(:where(.drawer-side *, .modal *, [data-theme-preview] *)) {
        font-size: .8125rem;
    }

    .ap-workspace-main :where(.table thead th):not(:where(.drawer-side *, .modal *, [data-theme-preview] *)) {
        font-weight: 600;
    }

    /* Planning editors keep their section boundaries without an outer card. */
    .ap-workspace .ap-workspace-main .ap-operational-form {
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .ap-operational-form > .card-body {
        padding: 0;
    }

    [data-planning-edit-drawer-panel] > header {
        background: var(--ap-workspace-surface);
        border-color: var(--ap-workspace-line);
    }

    [data-planning-edit-drawer-panel] > header h2 {
        color: var(--ap-workspace-ink);
        font-weight: 500;
    }

    /* Notification settings and template editors share this app selector. */
    [data-app-navigation-host] {
        min-height: 32rem;
        border: 0;
        border-top: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    [data-app-navigation-host] > div:first-child {
        width: 14rem;
        background: var(--ap-workspace-subtle);
        border-color: var(--ap-workspace-line);
    }

    [data-app-navigation-host] .app-nav-item {
        min-height: 2.5rem;
        height: auto;
        border-radius: var(--ap-workspace-radius);
        font-size: .8125rem;
        font-weight: 500;
    }

    [data-app-navigation-host] .app-nav-item.active {
        background: var(--ap-workspace-hover) !important;
        color: var(--ap-workspace-ink) !important;
        font-weight: 600 !important;
    }

    [data-app-navigation-host] .app-nav-item.active i {
        color: var(--ap-workspace-accent) !important;
    }

    [data-app-navigation-host] .app-workspace > div:first-child {
        padding: 1.25rem 1.5rem;
        border-color: var(--ap-workspace-line);
        background: var(--ap-workspace-surface);
    }

    [data-app-navigation-host] .app-workspace > div:first-child h2 {
        color: var(--ap-workspace-ink);
        font-size: 1.125rem;
        font-weight: 500;
    }

    [data-app-navigation-host] .app-workspace > div:nth-child(2) {
        padding: 1.5rem;
    }

    .ap-notification-preferences {
        display: flex;
        flex-direction: column;
        gap: 0;
    }

    .ap-notification-preference {
        gap: 1rem;
        margin: 0;
        padding: 1rem 0;
        border: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: transparent;
    }

    .ap-notification-preference h3 {
        font-size: .875rem;
        font-weight: 600;
    }

    /* Date selector settings are edited in place; keep each form intact. */
    .ap-date-selector-settings .rail-week-date-selector-group-heading {
        color: var(--ap-workspace-muted);
        font-weight: 600;
        letter-spacing: .04em;
    }

    .ap-date-selector-settings .rail-week-date-selector-card-grid article {
        border: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: transparent;
    }

    /* Weekly boards preserve pinned columns, state colours and scrolling. */
    #racecards-standalone-activity-table-card {
        border: 0;
        border-radius: 0;
        background: var(--ap-workspace-surface);
        box-shadow: none;
    }

    #racecards-weekly-layout-frame [data-racecards-weekly-section-header] {
        border-color: var(--ap-workspace-line);
        background: var(--ap-workspace-surface);
    }

    #racecards-weekly-layout-frame thead th {
        color: var(--ap-workspace-muted);
        font-weight: 600;
        letter-spacing: .02em;
    }

    /* Report focus mode keeps its existing overlay and geometry. */
    #shift-reporting-reports-dashboard .reports-hero-card {
        border: 0;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    #shift-reporting-reports-dashboard .reports-hero-card > .card-body {
        padding: .5rem 0 1rem;
    }

    #shift-reporting-reports-dashboard .reports-heading {
        color: var(--ap-workspace-ink);
        font-size: var(--ap-workspace-title-size);
        font-weight: 500;
    }

    #shift-reporting-reports-dashboard :is(.reports-control-stack, .report-chart-card,
        .reports-stat-card, .reports-stat-chip, .reports-panel-card, .reports-story-card,
        .reports-section-card, .reports-stage-panel, .reports-stage-visual,
        .reports-signal-rail, .reports-hero-period):not(.is-focused) {
        border: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    #shift-reporting-reports-dashboard [data-chart-card].is-focused {
        border: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: var(--ap-workspace-surface);
        box-shadow: none;
    }

    #shift-reporting-reports-dashboard .reports-section-tab {
        border: 0;
        border-bottom: 2px solid transparent;
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    #shift-reporting-reports-dashboard .reports-section-tab[aria-selected="true"] {
        border-bottom-color: var(--ap-workspace-accent);
    }

    .ap-feedback-reports > .grid {
        gap: 1rem;
    }

    .ap-feedback-reports .card {
        border: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .ap-feedback-reports .card-title {
        font-size: 1rem;
        font-weight: 600;
    }

    /* Public read-only pages use the same surface hierarchy as the workspace. */
    .ap-public-share {
        background: var(--ap-workspace-canvas);
        color: var(--ap-workspace-ink);
    }

    .ap-public-share > nav {
        background: var(--ap-workspace-surface);
        border-color: var(--ap-workspace-line);
    }

    .ap-public-share main section.card {
        border: 0;
        border-bottom: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        background: transparent;
        box-shadow: none;
    }

    .ap-public-share main .ap-hero-frame {
        border: 0;
        background: transparent;
    }

    .ap-public-share main .ap-hero-frame .card-body {
        padding-inline: 0;
    }

    .ap-public-share main h1 {
        font-size: var(--ap-workspace-title-size);
        font-weight: 500;
    }

    /* Only the schematic frame and toolbar are styled; the drawing is unchanged. */
    .railway-schematic.route-schematic:not(.is-route-focused):not([data-route-schematic-popout-enabled="true"]) {
        border: 0;
        border-block: 1px solid var(--ap-workspace-line);
        border-radius: 0;
        box-shadow: none;
    }

    .railway-schematic.route-schematic [data-schematic-toolbar] {
        border-color: var(--ap-workspace-line);
        background: var(--ap-workspace-subtle);
    }

    @media (max-width: 47.99rem) {
        [data-app-navigation-host] {
            flex-direction: column;
        }

        [data-app-navigation-host] > div:first-child {
            width: 100%;
            border-right: 0;
            border-bottom: 1px solid var(--ap-workspace-line);
        }

        [data-app-navigation-host] > div:first-child > div:last-child {
            display: flex;
            gap: .25rem;
            overflow-x: auto;
            padding: .5rem;
        }

        [data-app-navigation-host] .app-nav-item {
            width: auto;
            flex: 0 0 auto;
            margin: 0;
        }

        [data-app-navigation-host] .app-nav-item + .app-nav-item {
            margin-block-start: 0;
        }

        [data-app-navigation-host] .app-workspace > div {
            padding-inline: 1rem;
        }
    }
}

@media screen and (min-width: 64rem) {
    .ap-workspace:has(.ap-workspace-rail:not([x-cloak])) #shift-reporting-reports-dashboard [data-chart-card].is-focused {
        left: calc(var(--ap-workspace-rail-width) + 3vw);
    }
}

@media screen {
    .ap-workspace-main :is(thead.bg-primary, thead th.bg-primary) {
        background: var(--ap-workspace-subtle);
        color: var(--ap-workspace-ink);
        border-color: var(--ap-workspace-line);
        font-weight: 500;
    }

    .ap-workspace-main thead.bg-primary > tr > th {
        background: var(--ap-workspace-subtle);
        color: inherit;
        border-color: var(--ap-workspace-line);
    }

    .ap-workspace-main :is(thead.bg-primary, thead th.bg-primary)
        :is(.text-white, .text-primary-content):not(:where(.dropdown-content *)),
    .ap-workspace-main :is(thead.bg-primary, thead th.bg-primary)
        :is(a, button, summary):not(:where(.dropdown-content *)) {
        color: var(--ap-workspace-ink);
    }

    .ap-workspace-main :is(thead.bg-primary, thead th.bg-primary)
        :is(a, button, summary):not(:where(.dropdown-content *)):hover {
        background: var(--ap-workspace-hover);
    }

    .ap-workspace-main :is(thead.bg-primary, thead th.bg-primary)
        .badge-primary-content:not(:where(.dropdown-content *)) {
        background: var(--ap-workspace-surface);
        color: var(--ap-workspace-ink);
        border-color: var(--ap-workspace-line);
    }

    .ap-workspace :is(#assets-table-card .assets-table-header-gutter,
        #points-table-card .points-table-header-gutter,
        #routes-table-card .routes-table-header-gutter) {
        background: var(--ap-workspace-subtle);
        scrollbar-color: var(--ap-workspace-muted) var(--ap-workspace-subtle);
    }

    .ap-workspace #routes-table-card .routes-table-header-gutter::-webkit-scrollbar-track {
        background: var(--ap-workspace-subtle);
    }

    .ap-workspace #routes-table-card .routes-table-header-gutter::-webkit-scrollbar-thumb {
        background: var(--ap-workspace-muted);
    }
}
