/* Dashboard-only adjustments layered over the same Finlab theme used by mobile.app. */

html,
body {
    min-height: 100%;
}

body.dashboard-shell {
    --dashboard-gutter: clamp(15px, 2vw, 30px);
    background: var(--body-bg, #e6ebee);
    overflow-x: hidden;
}

/* Keep the content below the fixed app header. The theme calculates the
 * header height through --dz-header-height, so tab strips can use the same
 * value when they become sticky. */
body.dashboard-shell .dashboard-content-body {
    min-height: 100vh;
    padding-top: var(--dz-header-height, 5rem) !important;
}

/* The brand header and its controls must remain one fixed app chrome layer
 * while dashboard content scrolls underneath it. */
body.dashboard-shell .header {
    position: fixed;
    top: 0;
    z-index: 6;
}

body.dashboard-shell .dashboard-content-body > .container-fluid {
    padding-bottom: 3rem;
    padding-top: 0 !important;
}

body.dashboard-shell .dashboard-content-body > .container-fluid > .row:first-child {
    margin-left: 0;
    margin-right: 0;
}

body.dashboard-shell.dashboard-tabs .dashboard-content-body > .container-fluid > .row:first-child {
    margin-top: 0 !important;
}

/* The mobile app uses custom-tab-1 for its primary tab navigation. Apply the
 * same visual contract to the dashboard's existing tab markup. */
body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified {
    align-items: stretch;
    background: var(--body-bg, #e6ebee);
    border-bottom: 1px solid var(--border, #d4d8db) !important;
    display: flex;
    flex-wrap: nowrap;
    margin: 0 !important;
    overflow-x: auto;
    padding: 0;
    position: sticky;
    scrollbar-width: none;
    top: var(--dz-header-height, 5rem);
    z-index: 5;
}

body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified::-webkit-scrollbar {
    display: none;
}

body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-item {
    flex: 1 1 0;
    min-width: 0;
}

body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-link {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    color: #6f7b91;
    display: block;
    font-size: .875rem;
    font-weight: 500;
    line-height: 1.25;
    margin: 0;
    min-height: 3.75rem;
    overflow: hidden;
    padding: 1rem .9rem .85rem;
    text-align: center;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-link:hover,
body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-link:focus,
body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-link.active {
    background: var(--card, #fff) !important;
    border-bottom-color: var(--primary, #01a3ff) !important;
    color: var(--primary, #01a3ff) !important;
}

body.dashboard-shell.dashboard-tabs .tab-content {
    padding: 1rem 0 2rem !important;
}

body.dashboard-shell.dashboard-tabs .tab-pane {
    padding: 0;
}

/* Forms read like the Finder forms: white surface, quiet border, generous
 * controls, and short labels. */
body.dashboard-shell.dashboard-tabs .tab-pane > form,
body.dashboard-shell.dashboard-tabs .tab-pane > .card,
body.dashboard-shell.dashboard-tabs .tab-pane > .billing-panel {
    background: var(--card, #fff);
    border: 1px solid var(--border, #d4d8db);
    border-radius: .625rem;
    box-shadow: 0 .25rem 1rem rgba(42, 53, 58, .04);
    padding: 1.25rem;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-group:last-child {
    margin-bottom: 0;
}

body.dashboard-shell.dashboard-tabs label {
    color: #252b33;
    font-size: .9375rem;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: .55rem;
}

body.dashboard-shell.dashboard-tabs .form-control,
body.dashboard-shell.dashboard-tabs select.form-control,
body.dashboard-shell.dashboard-tabs textarea.form-control {
    background-color: #fff;
    border: 1px solid var(--border, #d4d8db);
    border-radius: .75rem;
    box-shadow: none;
    color: #202833;
    font-size: 1rem;
    font-weight: 500;
    min-height: 3.25rem;
    padding: .75rem 1rem;
}

body.dashboard-shell.dashboard-tabs .form-control::placeholder {
    color: #9aa1aa;
    opacity: 1;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-group,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-group,
body.dashboard-shell.dashboard-tabs .billing-panel .form-group {
    margin-bottom: 1.25rem;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-row,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-row {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    margin-left: -.5rem;
    margin-right: -.5rem;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-row > [class*="col-"],
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-row > [class*="col-"] {
    padding-left: .5rem;
    padding-right: .5rem;
}

/* Bootstrap 5 no longer ships the Bootstrap 4 form-row helper used by the
 * dashboard views. Restore its layout so multi-column fields share one
 * predictable row and stack cleanly on small screens. */
body.dashboard-shell.dashboard-tabs .tab-pane > form .form-row > [class*="col-"],
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-row > [class*="col-"] {
    min-width: 0;
}

@media only screen and (max-width: 47.9375rem) {
    body.dashboard-shell.dashboard-tabs .tab-pane > form .form-row > [class*="col-"],
    body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-row > [class*="col-"] {
        flex-basis: 100%;
        max-width: 100%;
    }
}

body.dashboard-shell.dashboard-tabs .form-check-label {
    color: #252b33;
    font-size: .9375rem;
    font-weight: 500;
}

/* Search fields use one continuous Finder-style control. The icon is kept
 * inside the input so it cannot look detached on narrow screens. */
body.dashboard-shell.dashboard-tabs .dashboard-live-search {
    margin-bottom: 1.25rem;
    position: relative;
}

body.dashboard-shell.dashboard-tabs .dashboard-live-search .material-icons {
    color: #697586;
    font-size: 1.35rem;
    left: 1rem;
    pointer-events: none;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

body.dashboard-shell.dashboard-tabs .dashboard-live-search .form-control {
    padding-left: 3rem;
}

body.dashboard-shell.dashboard-tabs .form-control:focus,
body.dashboard-shell.dashboard-tabs select.form-control:focus,
body.dashboard-shell.dashboard-tabs textarea.form-control:focus {
    border-color: var(--primary, #01a3ff);
    box-shadow: 0 0 0 .2rem rgba(1, 163, 255, .12);
}

body.dashboard-shell.dashboard-tabs .input-group-text {
    background: #f8fafc;
    border-color: var(--border, #d4d8db);
    color: #6f7b91;
}

body.dashboard-shell.dashboard-tabs .btn,
body.dashboard-shell.dashboard-tabs button,
body.dashboard-shell.dashboard-tabs .btn-dark {
    font-weight: 600;
}

body.dashboard-shell.dashboard-tabs #managedSectionName {
    color: #252b33;
    margin: 0;
    padding: .5rem 0 .25rem;
    text-align: center;
}

/* Match the quick-finder/chat-settings checkbox list: one quiet container
 * with simple stacked rows that are easy to scan and tap. */
body.dashboard-shell.dashboard-tabs .category-choice-list {
    background: #fff;
    border-color: var(--border, #d4d8db) !important;
    max-height: 28rem;
    overflow-y: auto;
}

body.dashboard-shell.dashboard-tabs .category-choice-list .form-check {
    border-radius: .5rem;
    margin: 0;
    min-height: 2rem;
    padding: .35rem .5rem .35rem 1.9rem;
}

body.dashboard-shell.dashboard-tabs .category-choice-list .form-check:hover {
    background: #f7fbff;
}

body.dashboard-shell.dashboard-tabs .category-choice-list .form-check-input {
    margin-left: -1.65rem;
    margin-top: .35rem;
}

body.dashboard-shell.dashboard-tabs .category-choice-list .form-check-label {
    color: #6f7b91;
    font-size: .9rem;
    font-weight: 400;
    margin: 0;
}

body.dashboard-shell.dashboard-tabs .category-choice-list .form-check-input:checked {
    background-color: var(--primary, #01a3ff);
    border-color: var(--primary, #01a3ff);
}

body.dashboard-shell.dashboard-tabs .btn-dark {
    background: var(--primary, #01a3ff);
    border-color: var(--primary, #01a3ff);
    color: #fff;
}

body.dashboard-shell.dashboard-tabs .btn-dark:hover,
body.dashboard-shell.dashboard-tabs .btn-dark:focus {
    background: var(--primary-hover, #008edc);
    border-color: var(--primary-hover, #008edc);
    color: #fff;
}

/* Keep module cards close to the Finder card treatment without touching the
 * dashboard home tiles or modal cards. */
body.dashboard-shell.dashboard-tabs .tab-pane .card {
    background: var(--card, #fff);
    border: 1px solid var(--border, #d4d8db) !important;
    border-radius: .625rem;
    box-shadow: 0 .25rem 1rem rgba(42, 53, 58, .04);
    height: auto;
}

body.dashboard-shell.dashboard-tabs .tab-pane .card-body {
    padding: 1.25rem;
}

body.dashboard-shell.dashboard-tabs .tab-pane .card-footer {
    background: #fff;
    border-top: 1px solid var(--border, #d4d8db);
}

/* Billing has a small inline stylesheet of its own. These selectors keep its
 * tabs consistent with the rest of the dashboard. */
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs {
    border-bottom: 1px solid var(--border, #d4d8db) !important;
}

body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs .nav-link {
    border: 0 !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    color: #6f7b91 !important;
    font-size: .875rem !important;
    min-height: 3.75rem;
    padding: 1rem .9rem .85rem !important;
}

body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs .nav-link.active {
    background: var(--card, #fff) !important;
    border-bottom-color: var(--primary, #01a3ff) !important;
    color: var(--primary, #01a3ff) !important;
}

body.dashboard-shell .card-footer {
    flex-wrap: wrap;
    gap: .5rem;
}

/* The dashboard views are loaded inside a Bootstrap row. Cancel its negative
 * gutters so tabs, forms, cards and billing panels keep the same side margins
 * as the mobile app. */
body.dashboard-shell .dashboard-content-body > .container-fluid {
    padding-left: var(--dashboard-gutter);
    padding-right: var(--dashboard-gutter);
}

body.dashboard-shell .dashboard-content-body > .container-fluid > .row {
    margin-left: 0;
    margin-right: 0;
}

body.dashboard-shell .dashboard-content-body > .container-fluid > .row > [class*="col-"] {
    padding-left: 0;
    padding-right: 0;
}

/* Header actions are plain app controls. Avoid the notification badge from
 * the original desktop template and keep the controls easy to tap. */
body.dashboard-shell .header-right {
    align-items: center;
    display: flex;
    gap: .5rem;
}

body.dashboard-shell .dashboard-header-action .nav-link {
    align-items: center;
    background: #fff;
    border: 1px solid var(--border, #d4d8db);
    border-radius: .75rem;
    color: #667085;
    display: flex;
    height: 3rem;
    justify-content: center;
    margin: 0;
    padding: 0;
    width: 3rem;
}

body.dashboard-shell .dashboard-header-action .nav-link:hover,
body.dashboard-shell .dashboard-header-action .nav-link:focus {
    background: #f7fbff;
    color: var(--primary, #01a3ff);
}

body.dashboard-shell .dashboard-header-action .nav-link::before,
body.dashboard-shell .dashboard-header-action .nav-link::after {
    content: none !important;
    display: none !important;
}

body.dashboard-shell .dashboard-header-action .material-icons {
    font-size: 1.5rem;
}

/* Dashboard home uses a different wrapper from the tab views. Keep its
 * welcome panel and tiles on the same compact, app-like grid. */
body.dashboard-shell .dashboard-home {
    margin: 0;
}

body.dashboard-shell .dashboard-home > .row {
    margin-left: -.5rem;
    margin-right: -.5rem;
}

body.dashboard-shell .dashboard-home > .row > [class*="col-"] {
    padding-left: .5rem;
    padding-right: .5rem;
}

body.dashboard-shell .dashboard-home > .row > [class*="col-"] > a {
    color: inherit;
    display: block;
    height: 100%;
    text-decoration: none;
}

body.dashboard-shell .dashboard-home > .row .card {
    border: 1px solid var(--border, #d4d8db) !important;
    border-radius: .75rem;
    box-shadow: 0 .25rem 1rem rgba(42, 53, 58, .05);
    min-height: 9rem;
    overflow: hidden;
}

body.dashboard-shell .dashboard-home > .row .card-content {
    height: 100%;
}

body.dashboard-shell .dashboard-home > .row .card-body {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 9rem;
    padding: 1.25rem .75rem;
}

body.dashboard-shell .dashboard-home > .row .card-body svg {
    background: #eaf2ff;
    border-radius: .75rem;
    height: 2.75rem !important;
    margin-bottom: .75rem;
    padding: .5rem;
    width: 2.75rem !important;
}

body.dashboard-shell .dashboard-home > .row .card-title {
    color: #17223b;
    font-size: .95rem;
    font-weight: 600;
    margin-bottom: 0;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-link {
        font-size: .9375rem;
        min-height: 3.5rem;
        padding-left: .75rem;
        padding-right: .75rem;
    }

    body.dashboard-shell .dashboard-home > .row {
        margin-left: -.375rem;
        margin-right: -.375rem;
    }

    body.dashboard-shell .dashboard-home > .row > [class*="col-"] {
        padding-left: .375rem;
        padding-right: .375rem;
    }

    body.dashboard-shell .dashboard-home > .row .card {
        min-height: 8.25rem;
    }

    body.dashboard-shell .dashboard-home > .row .card-body {
        min-height: 8.25rem;
        padding-left: .5rem;
        padding-right: .5rem;
    }

    body.dashboard-shell .dashboard-home > .row .card-title {
        font-size: .8125rem;
        text-align: center;
    }

    body.dashboard-shell .dashboard-header-action .nav-link {
        height: 2.75rem;
        width: 2.75rem;
    }
}

/* Saved Contacts is a first-class directory view, with the same calm density
 * as the rest of the Dashboard while keeping actions easy to reach. */
body.dashboard-shell .dashboard-saved-contacts-page {
    padding: .75rem 0 2rem;
}

body.dashboard-shell .dashboard-saved-contacts-toolbar {
    align-items: center;
    display: flex;
    gap: .75rem;
    margin: 1.25rem 0 1rem;
}

body.dashboard-shell .dashboard-saved-contacts-search {
    align-items: center;
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: .85rem;
    box-shadow: 0 .35rem 1.2rem rgba(32, 55, 85, .06);
    display: flex;
    flex: 1 1 auto;
    gap: .65rem;
    min-height: 3.2rem;
    padding: 0 .95rem;
}

body.dashboard-shell .dashboard-saved-contacts-search:focus-within {
    border-color: rgba(7, 159, 242, .65);
    box-shadow: 0 0 0 .2rem rgba(7, 159, 242, .1);
}

body.dashboard-shell .dashboard-saved-contacts-search > .material-icons {
    color: var(--dashboard-accent, #079ff2);
    font-size: 1.55rem;
}

body.dashboard-shell .dashboard-saved-contacts-search input {
    background: transparent;
    border: 0;
    color: var(--dashboard-ink, #18253b);
    flex: 1 1 auto;
    font-size: 1rem;
    min-width: 0;
    outline: 0;
    padding: .75rem 0;
}

body.dashboard-shell .dashboard-saved-contacts-search input::placeholder {
    color: var(--dashboard-muted, #7d8ca5);
    opacity: 1;
}

body.dashboard-shell .dashboard-saved-contacts-list {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.dashboard-shell .dashboard-saved-contact-card {
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1.1rem;
    box-shadow: var(--dashboard-shadow, 0 .7rem 2rem rgba(32, 55, 85, .08));
    display: flex;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
}

body.dashboard-shell .dashboard-saved-contact-main {
    display: flex;
    gap: 1rem;
    min-width: 0;
    padding: 1.25rem;
}

body.dashboard-shell .dashboard-saved-contact-logo {
    background: #f1f5f9;
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1rem;
    flex: 0 0 4.5rem;
    height: 4.5rem;
    object-fit: cover;
    width: 4.5rem;
}

body.dashboard-shell .dashboard-saved-contact-copy {
    min-width: 0;
}

body.dashboard-shell .dashboard-saved-contact-heading {
    align-items: flex-start;
    display: flex;
    gap: .6rem;
    justify-content: space-between;
}

body.dashboard-shell .dashboard-saved-contact-heading h2 {
    color: var(--dashboard-ink, #18253b);
    font-size: 1.1rem;
    font-weight: 700;
    line-height: 1.25;
    margin: 0;
    overflow-wrap: anywhere;
}

body.dashboard-shell .dashboard-saved-contact-badge {
    align-items: center;
    background: #e8f8f1;
    border-radius: 999px;
    color: #198f68;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: .8125rem;
    font-weight: 700;
    gap: .25rem;
    padding: .35rem .55rem;
}

body.dashboard-shell .dashboard-saved-contact-badge .material-icons,
body.dashboard-shell .dashboard-saved-contact-meta .material-icons {
    font-size: 1rem;
}

body.dashboard-shell .dashboard-saved-contact-category {
    color: var(--dashboard-accent, #079ff2);
    font-size: .84rem;
    font-weight: 700;
    margin: .3rem 0 .4rem;
}

body.dashboard-shell .dashboard-saved-contact-summary {
    color: var(--dashboard-muted, #7d8ca5);
    font-size: .88rem;
    line-height: 1.5;
    margin: 0;
}

body.dashboard-shell .dashboard-saved-contact-meta {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem .85rem;
    margin-top: .85rem;
}

body.dashboard-shell .dashboard-saved-contact-meta > span {
    align-items: center;
    color: var(--dashboard-muted, #7d8ca5);
    display: inline-flex;
    font-size: .8125rem;
    gap: .25rem;
    max-width: 100%;
    overflow-wrap: anywhere;
}

body.dashboard-shell .dashboard-saved-contact-actions {
    align-items: center;
    background: #f8fbfe;
    border-top: 1px solid var(--dashboard-line, #e3eaf2);
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    justify-content: center;
    margin-top: auto;
    padding: .85rem 1rem;
}

body.dashboard-shell .dashboard-saved-contact-actions .btn {
    align-items: center;
    display: inline-flex;
    font-size: .82rem;
    gap: .3rem;
    justify-content: center;
    margin: 0;
    min-height: 2.45rem;
    padding: .55rem .75rem;
}

body.dashboard-shell .dashboard-saved-contact-actions .material-icons {
    font-size: 1.05rem;
}

body.dashboard-shell .dashboard-saved-contacts-empty {
    background: var(--dashboard-surface, #fff);
    border: 1px dashed var(--dashboard-line, #e3eaf2);
    border-radius: 1rem;
    color: var(--dashboard-muted, #7d8ca5);
    grid-column: 1 / -1;
    padding: 3rem 1.25rem;
    text-align: center;
}

body.dashboard-shell .dashboard-saved-contacts-empty .material-icons {
    color: var(--dashboard-accent, #079ff2);
    font-size: 3rem;
}

body.dashboard-shell .dashboard-saved-contacts-empty h2 {
    color: var(--dashboard-ink, #18253b);
    font-size: 1.2rem;
    margin: .65rem 0 .35rem;
}

body.dashboard-shell .dashboard-saved-contacts-empty p {
    margin: 0;
}

/* The menu control and Notifications control share one fixed touch target. */
body.dashboard-shell .header .header-content > .dashboard-nav-toggle,
body.dashboard-shell .dashboard-header-action .nav-link {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    flex: 0 0 3.65rem;
    height: 3.65rem !important;
    justify-content: center;
    min-height: 3.65rem;
    min-width: 3.65rem;
    padding: 0 !important;
    width: 3.65rem !important;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle .hamburger {
    align-items: center;
    display: flex;
    height: 100%;
    justify-content: center;
    width: 100%;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .header .header-content > .dashboard-nav-toggle,
    body.dashboard-shell .dashboard-header-action .nav-link {
        flex-basis: 3.5rem;
        height: 3.5rem !important;
        min-height: 3.5rem;
        min-width: 3.5rem;
        width: 3.5rem !important;
    }
}
    body.dashboard-shell .dashboard-saved-contacts-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    body.dashboard-shell .dashboard-saved-contacts-toolbar .dashboard-secondary-button {
        align-self: flex-start;
    }

    body.dashboard-shell .dashboard-saved-contacts-list {
        grid-template-columns: 1fr;
    }

    body.dashboard-shell .dashboard-saved-contact-main {
        padding: 1rem;
    }

    body.dashboard-shell .dashboard-saved-contact-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: .45rem;
    }
}

/* Account, settings and messages are full Dashboard screens rather than
 * empty route shells. Keep their surfaces consistent with the existing
 * billing and notification views. */
body.dashboard-shell .dashboard-account-page,
body.dashboard-shell .dashboard-settings-page,
body.dashboard-shell .dashboard-messages-page {
    margin: 0 auto;
    max-width: 84rem;
    padding: 1rem 0 3rem;
}

body.dashboard-shell .dashboard-account-grid,
body.dashboard-shell .dashboard-settings-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.dashboard-shell .dashboard-account-card,
body.dashboard-shell .dashboard-settings-card {
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1.05rem;
    box-shadow: var(--dashboard-shadow, 0 .7rem 2rem rgba(32, 55, 85, .08));
    min-width: 0;
    padding: 1.35rem;
}

body.dashboard-shell .dashboard-notification-preferences {
    grid-column: 1 / -1;
}

body.dashboard-shell .dashboard-section-heading {
    align-items: center;
    display: flex;
    gap: .8rem;
    margin-bottom: 1.25rem;
}

body.dashboard-shell .dashboard-section-icon {
    align-items: center;
    background: #eaf4ff;
    border-radius: .85rem;
    color: var(--dashboard-accent, #079ff2);
    display: inline-flex;
    flex: 0 0 3rem;
    height: 3rem;
    justify-content: center;
    width: 3rem;
}

body.dashboard-shell .dashboard-section-icon .material-icons {
    font-size: 1.55rem;
}

body.dashboard-shell .dashboard-section-icon.account-icon {
    background: #f0edff;
    color: #6555de;
}

body.dashboard-shell .dashboard-section-icon.security-icon,
body.dashboard-shell .dashboard-section-icon.device-icon {
    background: #e9f8f3;
    color: #119d78;
}

body.dashboard-shell .dashboard-section-icon.recovery-icon {
    background: #eef2ff;
    color: #4f46c5;
}

body.dashboard-shell .dashboard-section-icon.replies-icon {
    background: #fff3df;
    color: #d88a00;
}

body.dashboard-shell .dashboard-section-heading h2 {
    color: var(--dashboard-ink, #18253b);
    font-size: 1.12rem;
    font-weight: 800;
    margin: 0;
}

body.dashboard-shell .dashboard-section-heading p {
    color: var(--dashboard-muted, #71809a);
    font-size: .84rem;
    margin: .2rem 0 0;
}

body.dashboard-shell .dashboard-recovery-methods {
    display: grid;
    gap: .7rem;
    margin: .25rem 0 1rem;
}

body.dashboard-shell .dashboard-recovery-method {
    align-items: center;
    background: var(--dashboard-surface-soft, #f6f9fc);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: .85rem;
    display: flex;
    gap: .75rem;
    min-height: 4.35rem;
    padding: .8rem .9rem;
}

body.dashboard-shell .dashboard-recovery-method-icon {
    align-items: center;
    background: #fff;
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: .7rem;
    color: var(--dashboard-accent-dark, #0879c7);
    display: inline-flex;
    flex: 0 0 2.5rem;
    height: 2.5rem;
    justify-content: center;
    width: 2.5rem;
}

body.dashboard-shell .dashboard-recovery-method-icon .material-icons {
    font-size: 1.25rem;
}

body.dashboard-shell .dashboard-recovery-method-copy {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .18rem;
    min-width: 0;
}

body.dashboard-shell .dashboard-recovery-method-copy strong {
    color: var(--dashboard-ink, #18253b);
    font-size: .92rem;
    font-weight: 800;
}

body.dashboard-shell .dashboard-recovery-method-copy span,
body.dashboard-shell .dashboard-recovery-note {
    color: var(--dashboard-muted, #71809a);
    font-size: .8125rem;
    line-height: 1.45;
}

body.dashboard-shell .dashboard-recovery-status {
    background: #eef2f6;
    border-radius: 999px;
    color: var(--dashboard-muted, #71809a);
    flex: 0 0 auto;
    font-size: .8125rem;
    font-weight: 800;
    padding: .35rem .55rem;
}

body.dashboard-shell .dashboard-recovery-status.is-available {
    background: #e8f8f1;
    color: #198f68;
}

body.dashboard-shell .dashboard-recovery-note {
    margin: 0 0 1rem;
}

body.dashboard-shell .dashboard-recovery-link {
    width: 100%;
}

body.dashboard-shell .dashboard-form-group {
    margin-bottom: 1rem;
}

body.dashboard-shell .dashboard-form-group label,
body.dashboard-shell .dashboard-message-search,
body.dashboard-shell .dashboard-message-filter {
    color: var(--dashboard-ink, #18253b);
    font-size: .86rem;
    font-weight: 750;
}

body.dashboard-shell .dashboard-form-group label {
    display: block;
    margin-bottom: .42rem;
}

body.dashboard-shell .dashboard-form-group input,
body.dashboard-shell .dashboard-form-group select,
body.dashboard-shell .dashboard-form-group textarea,
body.dashboard-shell .dashboard-message-search,
body.dashboard-shell .dashboard-message-filter select,
body.dashboard-shell .dashboard-reply-form textarea {
    background: #fff;
    border: 1px solid var(--dashboard-line, #dbe5ef);
    border-radius: .75rem;
    box-shadow: none;
    color: var(--dashboard-ink, #18253b);
    font: inherit;
    min-height: 3rem;
    padding: .72rem .85rem;
    width: 100%;
}

body.dashboard-shell .dashboard-form-group textarea {
    min-height: 8rem;
    resize: vertical;
}

body.dashboard-shell .dashboard-form-group input:focus,
body.dashboard-shell .dashboard-form-group select:focus,
body.dashboard-shell .dashboard-form-group textarea:focus,
body.dashboard-shell .dashboard-message-search:focus-within,
body.dashboard-shell .dashboard-message-filter select:focus,
body.dashboard-shell .dashboard-reply-form textarea:focus {
    border-color: var(--dashboard-accent, #079ff2);
    box-shadow: 0 0 0 .2rem rgba(7, 159, 242, .12);
    outline: 0;
}

body.dashboard-shell .dashboard-form-help {
    color: var(--dashboard-muted, #71809a);
    display: block;
    font-size: .8125rem;
    margin-top: .35rem;
}

body.dashboard-shell .dashboard-primary-button,
body.dashboard-shell .dashboard-secondary-button,
body.dashboard-shell .dashboard-quiet-button,
body.dashboard-shell .dashboard-danger-button {
    align-items: center;
    display: inline-flex;
    gap: .4rem;
    justify-content: center;
    min-height: 2.75rem;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-secondary-button,
body.dashboard-shell .dashboard-quiet-button {
    background: #fff;
    border: 1px solid var(--dashboard-line, #dbe5ef);
    border-radius: .75rem;
    color: var(--dashboard-ink, #18253b);
    font-weight: 700;
    padding: .6rem .9rem;
}

body.dashboard-shell .dashboard-secondary-button:hover,
body.dashboard-shell .dashboard-secondary-button:focus-visible,
body.dashboard-shell .dashboard-quiet-button:hover,
body.dashboard-shell .dashboard-quiet-button:focus-visible {
    background: #f4f8fc;
    border-color: var(--dashboard-accent, #079ff2);
    color: var(--dashboard-ink, #18253b);
}

body.dashboard-shell .dashboard-danger-button {
    background: #fff;
    border: 1px solid #f2c2cc;
    border-radius: .75rem;
    color: #c0394f;
    font-weight: 700;
    padding: .6rem .9rem;
}

body.dashboard-shell .dashboard-danger-button:hover,
body.dashboard-shell .dashboard-danger-button:focus-visible {
    background: #fff4f5;
    color: #a62e42;
}

body.dashboard-shell .dashboard-settings-card-danger {
    background: linear-gradient(145deg, var(--dashboard-surface, #fff) 0%, #fff8f8 100%);
    border-color: #f1caca;
}

body.dashboard-shell .dashboard-section-icon.danger-icon {
    background: #fff0f0;
    color: #c0392b;
}

body.dashboard-shell .dashboard-danger-copy {
    color: var(--dashboard-muted, #71809a);
    font-size: .84rem;
    line-height: 1.55;
    margin: -.15rem 0 1rem;
}

body.dashboard-shell .dashboard-delete-confirm {
    background: var(--dashboard-surface, #fff);
    border: 1px solid #f1caca;
    border-radius: .8rem;
    margin-top: 1rem;
    padding: .9rem;
}

body.dashboard-shell .dashboard-delete-confirm[hidden] {
    display: none;
}

body.dashboard-shell .dashboard-delete-confirm p {
    color: var(--dashboard-muted, #71809a);
    font-size: .82rem;
    margin: 0 0 .7rem;
}

body.dashboard-shell .dashboard-delete-confirm label {
    color: var(--dashboard-ink, #18253b);
    display: block;
    font-size: .84rem;
    font-weight: 750;
    margin-bottom: .42rem;
}

body.dashboard-shell .dashboard-delete-confirm input {
    background: #fff;
    border: 1px solid var(--dashboard-line, #dbe5ef);
    border-radius: .75rem;
    color: var(--dashboard-ink, #18253b);
    font: inherit;
    min-height: 2.75rem;
    padding: .6rem .75rem;
    width: 100%;
}

body.dashboard-shell .dashboard-delete-confirm input:focus {
    border-color: var(--dashboard-accent, #079ff2);
    box-shadow: 0 0 0 .2rem rgba(7, 159, 242, .12);
    outline: 0;
}

body.dashboard-shell .dashboard-delete-actions {
    display: flex;
    gap: .5rem;
    justify-content: flex-end;
    margin-top: .85rem;
}

body.dashboard-shell .dashboard-checkbox-row {
    align-items: center;
    color: var(--dashboard-ink, #18253b);
    display: flex;
    font-size: .86rem;
    gap: .5rem;
    margin: .15rem 0 1rem;
}

body.dashboard-shell .dashboard-checkbox-row input {
    accent-color: var(--dashboard-accent, #079ff2);
    height: 1.1rem;
    width: 1.1rem;
}

body.dashboard-shell .dashboard-inline-message {
    border-radius: .65rem;
    font-size: .82rem;
    margin: .6rem 0 .85rem;
    padding: .65rem .75rem;
}

body.dashboard-shell .dashboard-inline-message.success {
    background: #e9f8f3;
    color: #117d62;
}

body.dashboard-shell .dashboard-inline-message.error {
    background: #fff0f2;
    color: #b6364b;
}

body.dashboard-shell .dashboard-inline-message.loading,
body.dashboard-shell .dashboard-inline-message.info {
    background: #eef5ff;
    color: #39648f;
}

body.dashboard-shell .dashboard-account-meta {
    border-top: 1px solid var(--dashboard-line, #e3eaf2);
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: 1.35rem 0 0;
    padding-top: 1.1rem;
}

body.dashboard-shell .dashboard-account-meta div {
    min-width: 0;
}

body.dashboard-shell .dashboard-account-meta dt {
    color: var(--dashboard-muted, #71809a);
    font-size: .8125rem;
    font-weight: 700;
    margin-bottom: .22rem;
    text-transform: uppercase;
}

body.dashboard-shell .dashboard-account-meta dd {
    color: var(--dashboard-ink, #18253b);
    font-size: .84rem;
    font-weight: 750;
    margin: 0;
    overflow-wrap: anywhere;
}

body.dashboard-shell .dashboard-settings-list {
    border-top: 1px solid var(--dashboard-line, #e3eaf2);
    margin-top: 1.3rem;
}

body.dashboard-shell .dashboard-settings-row {
    align-items: center;
    border-bottom: 1px solid var(--dashboard-line, #e3eaf2);
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    padding: .85rem 0;
}

body.dashboard-shell .dashboard-settings-row-copy {
    display: grid;
    gap: .2rem;
    min-width: 0;
}

body.dashboard-shell .dashboard-settings-row-copy strong {
    color: var(--dashboard-ink, #18253b);
    font-size: .86rem;
}

body.dashboard-shell .dashboard-settings-row-copy span {
    color: var(--dashboard-muted, #71809a);
    font-size: .8125rem;
    overflow-wrap: anywhere;
}

body.dashboard-shell .dashboard-settings-row-actions {
    display: flex;
    flex: 0 0 auto;
    gap: .4rem;
}

body.dashboard-shell .dashboard-settings-row-actions button {
    font-size: .8125rem;
    min-height: 2.25rem;
    padding: .45rem .65rem;
}

body.dashboard-shell .dashboard-settings-empty {
    color: var(--dashboard-muted, #71809a);
    font-size: .82rem;
    padding: 1rem 0 0;
}

body.dashboard-shell .dashboard-settings-note {
    align-items: flex-start;
    background: #f4f8fc;
    border-radius: .75rem;
    color: var(--dashboard-muted, #71809a);
    display: flex;
    font-size: .82rem;
    gap: .5rem;
    line-height: 1.5;
    padding: .8rem;
}

body.dashboard-shell .dashboard-settings-note .material-icons {
    color: var(--dashboard-accent, #079ff2);
    font-size: 1.15rem;
}

body.dashboard-shell .dashboard-messages-summary {
    align-items: center;
    color: var(--dashboard-muted, #71809a);
    display: flex;
    font-size: .86rem;
    gap: 1.1rem;
    margin: -.25rem 0 1rem;
}

body.dashboard-shell .dashboard-messages-summary strong {
    color: var(--dashboard-ink, #18253b);
    font-size: 1rem;
}

body.dashboard-shell .dashboard-messages-toolbar {
    align-items: center;
    display: flex;
    gap: .75rem;
    margin-bottom: 1rem;
}

body.dashboard-shell .dashboard-message-search {
    align-items: center;
    display: flex;
    gap: .55rem;
    max-width: 32rem;
}

body.dashboard-shell .dashboard-message-search .material-icons {
    color: var(--dashboard-accent, #079ff2);
    font-size: 1.35rem;
}

body.dashboard-shell .dashboard-message-search input {
    border: 0;
    color: var(--dashboard-ink, #18253b);
    min-height: 0;
    outline: 0;
    padding: 0;
    width: 100%;
}

body.dashboard-shell .dashboard-message-filter {
    min-width: 12rem;
}

body.dashboard-shell .dashboard-message-filter select {
    min-height: 3rem;
}

body.dashboard-shell .dashboard-messages-layout {
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(18rem, 26rem) minmax(0, 1fr);
    min-width: 0;
}

body.dashboard-shell .dashboard-conversation-list,
body.dashboard-shell .dashboard-conversation-panel {
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1.05rem;
    box-shadow: var(--dashboard-shadow, 0 .7rem 2rem rgba(32, 55, 85, .08));
    min-width: 0;
    overflow: hidden;
}

body.dashboard-shell .dashboard-conversation-list {
    align-self: start;
    max-height: 46rem;
    overflow-y: auto;
}

body.dashboard-shell .dashboard-conversation-row {
    align-items: flex-start;
    background: #fff;
    border: 0;
    border-bottom: 1px solid var(--dashboard-line, #e3eaf2);
    color: inherit;
    cursor: pointer;
    display: flex;
    gap: .7rem;
    padding: 1rem;
    text-align: left;
    width: 100%;
}

body.dashboard-shell .dashboard-conversation-row:hover,
body.dashboard-shell .dashboard-conversation-row:focus-visible,
body.dashboard-shell .dashboard-conversation-row.is-selected {
    background: #f4f8fc;
    outline: 0;
}

body.dashboard-shell .dashboard-conversation-row.is-selected {
    box-shadow: inset 3px 0 0 var(--dashboard-accent, #079ff2);
}

body.dashboard-shell .dashboard-conversation-avatar {
    align-items: center;
    background: #eaf4ff;
    border-radius: 50%;
    color: var(--dashboard-accent, #079ff2);
    display: inline-flex;
    flex: 0 0 2.4rem;
    height: 2.4rem;
    justify-content: center;
    width: 2.4rem;
}

body.dashboard-shell .dashboard-conversation-copy {
    display: grid;
    gap: .24rem;
    min-width: 0;
    width: 100%;
}

body.dashboard-shell .dashboard-conversation-row-top {
    align-items: baseline;
    display: flex;
    gap: .5rem;
    justify-content: space-between;
}

body.dashboard-shell .dashboard-conversation-row-top strong,
body.dashboard-shell .dashboard-conversation-title,
body.dashboard-shell .dashboard-conversation-preview {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-conversation-row-top strong {
    color: var(--dashboard-ink, #18253b);
    font-size: .86rem;
}

body.dashboard-shell .dashboard-conversation-row-top small {
    color: var(--dashboard-muted, #71809a);
    flex: 0 0 auto;
    font-size: .8125rem;
}

body.dashboard-shell .dashboard-conversation-title {
    color: var(--dashboard-ink, #18253b);
    font-size: .8125rem;
    font-weight: 700;
}

body.dashboard-shell .dashboard-conversation-preview {
    color: var(--dashboard-muted, #71809a);
    font-size: .8125rem;
}

body.dashboard-shell .dashboard-conversation-row-side {
    align-items: flex-end;
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: .35rem;
}

body.dashboard-shell .dashboard-status-pill,
body.dashboard-shell .dashboard-unread-pill {
    border-radius: 999px;
    display: inline-flex;
    font-size: .8125rem;
    font-weight: 800;
    padding: .28rem .52rem;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-status-pill.is-open {
    background: #e9f8f3;
    color: #118b6c;
}

body.dashboard-shell .dashboard-status-pill.is-closed {
    background: #f0f3f7;
    color: #66758b;
}

body.dashboard-shell .dashboard-unread-pill {
    background: #ff5d73;
    color: #fff;
    min-width: 1.35rem;
    justify-content: center;
}

body.dashboard-shell .dashboard-conversation-panel {
    display: flex;
    flex-direction: column;
    min-height: 34rem;
}

body.dashboard-shell .dashboard-conversation-header {
    align-items: flex-start;
    border-bottom: 1px solid var(--dashboard-line, #e3eaf2);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1.2rem 1.35rem;
}

body.dashboard-shell .dashboard-conversation-header h2 {
    color: var(--dashboard-ink, #18253b);
    font-size: 1.1rem;
    font-weight: 800;
    margin: .55rem 0 .18rem;
}

body.dashboard-shell .dashboard-conversation-header p {
    color: var(--dashboard-muted, #71809a);
    font-size: .8125rem;
    margin: 0;
}

body.dashboard-shell .dashboard-conversation-actions {
    display: flex;
    flex: 0 0 auto;
    gap: .4rem;
}

body.dashboard-shell .dashboard-conversation-actions button {
    font-size: .8125rem;
    min-height: 2.25rem;
    padding: .45rem .65rem;
}

body.dashboard-shell .dashboard-conversation-thread {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: .75rem;
    max-height: 32rem;
    min-height: 22rem;
    overflow-y: auto;
    padding: 1.2rem 1.35rem;
}

body.dashboard-shell .dashboard-message-bubble {
    align-self: flex-start;
    background: #f1f5f9;
    border-radius: .9rem .9rem .9rem .25rem;
    max-width: 78%;
    padding: .7rem .8rem;
}

body.dashboard-shell .dashboard-message-bubble.is-mine {
    align-self: flex-end;
    background: #eaf4ff;
    border-radius: .9rem .9rem .25rem .9rem;
}

body.dashboard-shell .dashboard-message-author {
    color: var(--dashboard-muted, #71809a);
    display: block;
    font-size: .8125rem;
    font-weight: 800;
    margin-bottom: .2rem;
}

body.dashboard-shell .dashboard-message-bubble p {
    color: var(--dashboard-ink, #18253b);
    font-size: .84rem;
    line-height: 1.5;
    margin: 0;
    white-space: pre-wrap;
    overflow-wrap: anywhere;
}

body.dashboard-shell .dashboard-message-bubble small {
    color: var(--dashboard-muted, #71809a);
    display: block;
    font-size: .8125rem;
    margin-top: .3rem;
}

body.dashboard-shell .dashboard-reply-form {
    align-items: flex-end;
    border-top: 1px solid var(--dashboard-line, #e3eaf2);
    display: flex;
    gap: .65rem;
    padding: 1rem 1.35rem;
}

body.dashboard-shell .dashboard-reply-form textarea {
    min-height: 3.25rem;
    resize: vertical;
}

body.dashboard-shell .dashboard-reply-form button {
    flex: 0 0 auto;
}

body.dashboard-shell .dashboard-conversation-closed,
body.dashboard-shell .dashboard-thread-empty {
    color: var(--dashboard-muted, #71809a);
    font-size: .84rem;
    padding: 1rem;
    text-align: center;
}

body.dashboard-shell .dashboard-conversation-closed {
    align-items: center;
    background: #f7f9fb;
    display: flex;
    gap: .4rem;
    justify-content: center;
}

body.dashboard-shell .dashboard-conversation-closed .material-icons {
    font-size: 1.1rem;
}

body.dashboard-shell .dashboard-list-empty,
body.dashboard-shell .dashboard-conversation-empty {
    border: 0;
    border-radius: 0;
    box-shadow: none;
    min-height: 18rem;
}

@media only screen and (max-width: 61.9375rem) {
    body.dashboard-shell .dashboard-account-grid,
    body.dashboard-shell .dashboard-settings-grid {
        grid-template-columns: 1fr;
    }

    body.dashboard-shell .dashboard-notification-preferences {
        grid-column: auto;
    }

    body.dashboard-shell .dashboard-messages-layout {
        grid-template-columns: 1fr;
    }

    body.dashboard-shell .dashboard-conversation-list {
        max-height: 25rem;
    }
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-account-page,
    body.dashboard-shell .dashboard-settings-page,
    body.dashboard-shell .dashboard-messages-page {
        padding-top: .75rem;
    }

    body.dashboard-shell .dashboard-account-card,
    body.dashboard-shell .dashboard-settings-card {
        padding: 1rem;
    }

    body.dashboard-shell .dashboard-page-heading .dashboard-secondary-button {
        width: 100%;
    }

    body.dashboard-shell .dashboard-account-meta {
        grid-template-columns: 1fr;
    }

    body.dashboard-shell .dashboard-settings-row {
        align-items: flex-start;
        flex-direction: column;
    }

    body.dashboard-shell .dashboard-settings-row-actions {
        width: 100%;
    }

    body.dashboard-shell .dashboard-settings-row-actions button {
        flex: 1 1 auto;
    }

    body.dashboard-shell .dashboard-delete-actions {
        flex-direction: column-reverse;
    }

    body.dashboard-shell .dashboard-delete-actions button {
        width: 100%;
    }

    body.dashboard-shell .dashboard-messages-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    body.dashboard-shell .dashboard-message-search {
        max-width: none;
    }

    body.dashboard-shell .dashboard-message-filter {
        min-width: 0;
    }

    body.dashboard-shell .dashboard-conversation-header,
    body.dashboard-shell .dashboard-reply-form {
        flex-direction: column;
    }

    body.dashboard-shell .dashboard-conversation-actions,
    body.dashboard-shell .dashboard-reply-form button {
        width: 100%;
    }

    body.dashboard-shell .dashboard-conversation-actions button {
        flex: 1 1 auto;
    }

    body.dashboard-shell .dashboard-message-bubble {
        max-width: 92%;
    }
}

/* Final cross-viewport contract: prevent input zoom and keep tab rows swipeable. */
html {
    overflow-x: hidden;
    touch-action: pan-y;
}

body.dashboard-shell {
    overflow-x: hidden;
    overscroll-behavior-x: none;
}

body.dashboard-shell input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),
body.dashboard-shell select,
body.dashboard-shell textarea {
    font-size: 16px;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs,
body.dashboard-shell .billing-page .nav-tabs,
body.dashboard-shell .dashboard-home-tabs {
    align-items: stretch;
    display: flex !important;
    flex-wrap: nowrap !important;
    max-width: 100%;
    overflow-x: auto !important;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs::-webkit-scrollbar,
body.dashboard-shell .billing-page .nav-tabs::-webkit-scrollbar,
body.dashboard-shell .dashboard-home-tabs::-webkit-scrollbar {
    display: none;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs > .nav-item,
body.dashboard-shell .billing-page .nav-tabs > .nav-item,
body.dashboard-shell .dashboard-home-tabs > .nav-item {
    flex: 1 0 0 !important;
    min-width: max-content !important;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs > .nav-item > .nav-link,
body.dashboard-shell .billing-page .nav-tabs > .nav-item > .nav-link,
body.dashboard-shell .dashboard-home-tabs > .nav-item > .nav-link {
    flex: 1 0 auto !important;
    max-width: none !important;
    min-width: max-content !important;
    white-space: nowrap !important;
    width: auto !important;
}

/* -------------------------------------------------------------------------
 * Dashboard home and shared native-style surface pass
 * ------------------------------------------------------------------------- */
body.dashboard-shell {
    --dashboard-surface: #ffffff;
    --dashboard-surface-soft: #f6f9fc;
    --dashboard-ink: #18253b;
    --dashboard-muted: #71809a;
    --dashboard-line: #e3eaf2;
    --dashboard-accent: #079ff2;
    --dashboard-accent-dark: #0879c7;
    --dashboard-accent-soft: #eaf6ff;
    --dashboard-danger: #ff5c70;
    --dashboard-radius: 1.15rem;
    --dashboard-shadow: 0 .7rem 2rem rgba(32, 55, 85, .08);
}

body.dashboard-shell .dashboard-header-action .nav-link {
    align-items: center;
    background: var(--dashboard-surface);
    border: 1px solid var(--dashboard-line);
    border-radius: 1rem;
    box-shadow: 0 .4rem 1rem rgba(32, 55, 85, .08);
    display: inline-flex;
    height: 3.35rem;
    justify-content: center;
    margin-left: .45rem;
    padding: 0;
    position: relative;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
    width: 3.35rem;
}

body.dashboard-shell .dashboard-header-action .nav-link:hover,
body.dashboard-shell .dashboard-header-action .nav-link:focus-visible {
    border-color: rgba(7, 159, 242, .45);
    box-shadow: 0 .65rem 1.25rem rgba(7, 159, 242, .14);
    transform: translateY(-1px);
}

body.dashboard-shell .dashboard-header-action .material-icons {
    color: var(--dashboard-ink);
    font-size: 1.85rem !important;
}

body.dashboard-shell .dashboard-notification-badge {
    align-items: center;
    background: var(--dashboard-danger);
    border: 2px solid var(--dashboard-surface);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: .8125rem;
    font-weight: 800;
    height: 1.25rem;
    justify-content: center;
    line-height: 1;
    min-width: 1.25rem;
    padding: 0 .28rem;
    position: absolute;
    right: -.22rem;
    top: -.22rem;
}

body.dashboard-shell .dashboard-notification-badge[hidden] {
    display: none;
}

body.dashboard-shell .modal-backdrop.show {
    background: rgba(11, 24, 42, .56) !important;
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
    opacity: 1 !important;
}

body.dashboard-shell .modal-dialog {
    margin: 1.25rem auto;
    max-width: min(94vw, 58rem);
}

body.dashboard-shell .modal-content {
    border: 1px solid rgba(255, 255, 255, .58);
    border-radius: 1.25rem;
    box-shadow: 0 1.5rem 4rem rgba(10, 25, 45, .24);
    overflow: hidden;
}

body.dashboard-shell .modal-header {
    align-items: center;
    border-bottom: 1px solid var(--dashboard-line);
    min-height: 4.25rem;
    padding: 1rem 1.25rem;
}

body.dashboard-shell .modal-header .close {
    align-items: center;
    background: var(--dashboard-surface-soft);
    border-radius: .8rem;
    color: var(--dashboard-ink);
    display: inline-flex;
    float: none;
    font-size: 1.55rem;
    height: 2.55rem;
    justify-content: center;
    line-height: 1;
    margin: 0 0 0 auto;
    opacity: .78;
    padding: 0;
    width: 2.55rem;
}

body.dashboard-shell .modal-header .close:hover,
body.dashboard-shell .modal-header .close:focus-visible {
    background: #eaf6ff;
    color: var(--dashboard-accent-dark);
    opacity: 1;
}

body.dashboard-shell.dashboard-page .content-body,
body.dashboard-shell.dashboard-tabs .content-body {
    background: #f3f7fb;
}

body.dashboard-shell .content-body > .container-fluid {
    padding-left: clamp(.85rem, 2.2vw, 2rem);
    padding-right: clamp(.85rem, 2.2vw, 2rem);
}

/* Home: a quiet overview band followed by actionable, compact cards. */
body.dashboard-shell .dashboard-home {
    margin: 0 auto;
    max-width: 78rem;
    padding: clamp(.85rem, 2.2vw, 1.75rem) 0 2.5rem;
}

body.dashboard-shell .dashboard-home-intro {
    align-items: flex-start;
    background: var(--dashboard-surface);
    border: 1px solid var(--dashboard-line);
    border-radius: var(--dashboard-radius);
    box-shadow: var(--dashboard-shadow);
    display: flex;
    justify-content: space-between;
    margin-bottom: 1rem;
    padding: clamp(1.15rem, 3vw, 1.75rem);
}

body.dashboard-shell .dashboard-home-kicker {
    color: var(--dashboard-accent-dark);
    display: block;
    font-size: .8125rem;
    font-weight: 850;
    letter-spacing: .1em;
    margin-bottom: .38rem;
    text-transform: uppercase;
}

body.dashboard-shell .dashboard-home-intro h1,
body.dashboard-shell .dashboard-home-section-heading h2 {
    color: var(--dashboard-ink);
    font-weight: 800;
    letter-spacing: -.02em;
    margin: 0;
}

body.dashboard-shell .dashboard-home-intro h1 {
    font-size: clamp(1.35rem, 2.7vw, 2rem);
    line-height: 1.2;
}

body.dashboard-shell .dashboard-home-intro p {
    color: var(--dashboard-muted);
    font-size: .94rem;
    margin: .45rem 0 0;
}

body.dashboard-shell .dashboard-home-live {
    align-items: center;
    background: #eefaf5;
    border: 1px solid #d6f0e2;
    border-radius: 999px;
    color: #287653;
    display: inline-flex;
    flex: 0 0 auto;
    font-size: .8125rem;
    font-weight: 750;
    gap: .4rem;
    margin-left: 1rem;
    padding: .48rem .72rem;
}

body.dashboard-shell .dashboard-home-live > span {
    background: #31b76a;
    border-radius: 50%;
    display: inline-block;
    height: .45rem;
    width: .45rem;
}

body.dashboard-shell .dashboard-home-shortcuts {
    display: grid;
    gap: .85rem;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    margin-bottom: 1.25rem;
}

body.dashboard-shell .dashboard-shortcut-card {
    align-items: center;
    background: var(--dashboard-surface);
    border: 1px solid var(--dashboard-line);
    border-radius: var(--dashboard-radius);
    box-shadow: var(--dashboard-shadow);
    color: var(--dashboard-ink);
    display: flex;
    gap: .8rem;
    min-width: 0;
    padding: 1rem;
    text-decoration: none;
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease;
}

body.dashboard-shell .dashboard-shortcut-card:hover,
body.dashboard-shell .dashboard-shortcut-card:focus-visible {
    border-color: rgba(7, 159, 242, .35);
    box-shadow: 0 1rem 2rem rgba(32, 55, 85, .13);
    color: var(--dashboard-ink);
    transform: translateY(-2px);
}

body.dashboard-shell .dashboard-shortcut-icon {
    align-items: center;
    background: var(--dashboard-accent-soft);
    border-radius: .9rem;
    color: var(--dashboard-accent-dark);
    display: inline-flex;
    flex: 0 0 2.65rem;
    height: 2.65rem;
    justify-content: center;
    width: 2.65rem;
}

body.dashboard-shell .dashboard-shortcut-icon .material-icons {
    font-size: 1.45rem;
}

body.dashboard-shell .dashboard-shortcut-copy {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

body.dashboard-shell .dashboard-shortcut-copy strong {
    font-size: .94rem;
    font-weight: 800;
    line-height: 1.25;
}

body.dashboard-shell .dashboard-shortcut-copy small {
    color: var(--dashboard-muted);
    font-size: .8125rem;
    line-height: 1.35;
    margin-top: .2rem;
}

body.dashboard-shell .dashboard-shortcut-arrow {
    color: #9aa9ba;
    flex: 0 0 auto;
    font-size: 1.2rem;
}

body.dashboard-shell .dashboard-home-section {
    background: var(--dashboard-surface);
    border: 1px solid var(--dashboard-line);
    border-radius: var(--dashboard-radius);
    box-shadow: var(--dashboard-shadow);
    overflow: hidden;
}

body.dashboard-shell .dashboard-home-section-heading {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 1.2rem 1.25rem 1rem;
}

body.dashboard-shell .dashboard-home-section-heading h2 {
    font-size: 1.12rem;
}

body.dashboard-shell .dashboard-text-link,
body.dashboard-shell .dashboard-home-view-more {
    align-items: center;
    color: var(--dashboard-accent-dark);
    display: inline-flex;
    font-size: .82rem;
    font-weight: 800;
    gap: .25rem;
    text-decoration: none;
}

body.dashboard-shell .dashboard-text-link .material-icons,
body.dashboard-shell .dashboard-home-view-more .material-icons {
    font-size: 1rem;
}

body.dashboard-shell .dashboard-home-tabs {
    border-bottom: 1px solid var(--dashboard-line);
    display: flex;
    flex-wrap: nowrap;
    gap: .2rem;
    margin: 0;
    overflow-x: auto;
    padding: 0 1rem;
    scrollbar-width: none;
}

body.dashboard-shell .dashboard-home-tabs::-webkit-scrollbar {
    display: none;
}

body.dashboard-shell .dashboard-home-tabs .nav-item {
    flex: 0 0 auto;
}

body.dashboard-shell .dashboard-home-tabs .nav-link {
    align-items: center;
    border: 0;
    border-bottom: 3px solid transparent;
    border-radius: 0;
    color: var(--dashboard-muted);
    display: inline-flex;
    font-size: .86rem;
    font-weight: 800;
    gap: .35rem;
    min-height: 3.1rem;
    padding: .55rem .75rem;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-tabs .nav-link:hover,
body.dashboard-shell .dashboard-home-tabs .nav-link:focus-visible {
    color: var(--dashboard-accent-dark);
}

body.dashboard-shell .dashboard-home-tabs .nav-link.active {
    background: transparent;
    border-bottom-color: var(--dashboard-accent);
    color: var(--dashboard-accent-dark);
}

body.dashboard-shell .dashboard-home-tabs .material-icons {
    font-size: 1.08rem;
}

body.dashboard-shell .dashboard-home-tab-count {
    align-items: center;
    background: var(--dashboard-surface-soft);
    border-radius: 999px;
    color: var(--dashboard-muted);
    display: inline-flex;
    font-size: .8125rem;
    height: 1.25rem;
    justify-content: center;
    min-width: 1.25rem;
    padding: 0 .28rem;
}

body.dashboard-shell .dashboard-home-tabs .nav-link.active .dashboard-home-tab-count {
    background: var(--dashboard-accent-soft);
    color: var(--dashboard-accent-dark);
}

body.dashboard-shell .dashboard-home-chat-content {
    padding: 1rem 1.1rem 1.15rem;
}

body.dashboard-shell .dashboard-home-request-list {
    display: grid;
    gap: .7rem;
}

body.dashboard-shell .dashboard-request-card {
    background: var(--dashboard-surface-soft);
    border: 1px solid var(--dashboard-line);
    border-radius: .95rem;
    padding: .9rem 1rem .78rem;
}

body.dashboard-shell .dashboard-request-card-main {
    align-items: center;
    display: flex;
    gap: .7rem;
    min-width: 0;
}

body.dashboard-shell .dashboard-request-icon {
    align-items: center;
    background: var(--dashboard-accent-soft);
    border-radius: .75rem;
    color: var(--dashboard-accent-dark);
    display: inline-flex;
    flex: 0 0 2.35rem;
    height: 2.35rem;
    justify-content: center;
    width: 2.35rem;
}

body.dashboard-shell .dashboard-request-copy {
    flex: 1 1 auto;
    min-width: 0;
}

body.dashboard-shell .dashboard-request-copy h3 {
    color: var(--dashboard-ink);
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.3;
    margin: 0;
    overflow-wrap: anywhere;
}

body.dashboard-shell .dashboard-request-copy p {
    color: var(--dashboard-muted);
    font-size: .8125rem;
    line-height: 1.35;
    margin: .22rem 0 0;
    overflow-wrap: anywhere;
}

body.dashboard-shell .dashboard-request-status {
    background: #eefaf5;
    border: 1px solid #d6f0e2;
    border-radius: 999px;
    color: #287653;
    flex: 0 0 auto;
    font-size: .8125rem;
    font-weight: 800;
    padding: .32rem .5rem;
    text-transform: capitalize;
}

body.dashboard-shell .dashboard-request-status.status-pending,
body.dashboard-shell .dashboard-request-status.status-delivered,
body.dashboard-shell .dashboard-request-status.status-open {
    background: #fff8e8;
    border-color: #f7e6b8;
    color: #9c6a00;
}

body.dashboard-shell .dashboard-request-status.status-closed,
body.dashboard-shell .dashboard-request-status.status-archived {
    background: #f2f4f7;
    border-color: #e0e5eb;
    color: #71809a;
}

body.dashboard-shell .dashboard-request-card-footer {
    align-items: center;
    border-top: 1px solid var(--dashboard-line);
    color: var(--dashboard-muted);
    display: flex;
    font-size: .8125rem;
    gap: .7rem;
    justify-content: space-between;
    margin-top: .78rem;
    padding-top: .65rem;
}

body.dashboard-shell .dashboard-request-card-footer > span {
    align-items: center;
    display: inline-flex;
    gap: .22rem;
    min-width: 0;
}

body.dashboard-shell .dashboard-request-card-footer .material-icons {
    font-size: .95rem;
}

body.dashboard-shell .dashboard-request-last-message {
    max-width: 48%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-view-more {
    border-top: 1px solid var(--dashboard-line);
    display: flex;
    justify-content: center;
    margin: 1rem -.1rem 0;
    padding-top: .95rem;
}

body.dashboard-shell .dashboard-home-empty {
    align-items: center;
    background: var(--dashboard-surface-soft);
    border: 1px dashed #cfdae6;
    border-radius: .95rem;
    color: var(--dashboard-muted);
    display: flex;
    flex-direction: column;
    gap: .45rem;
    padding: 1.6rem 1rem;
    text-align: center;
}

body.dashboard-shell .dashboard-home-empty .material-icons {
    color: #9aabbd;
    font-size: 2rem;
}

body.dashboard-shell .dashboard-home-empty strong {
    color: var(--dashboard-ink);
    font-size: .88rem;
    font-weight: 750;
}

body.dashboard-shell .dashboard-home-empty a {
    color: var(--dashboard-accent-dark);
    font-size: .8125rem;
    font-weight: 800;
    text-decoration: none;
}

@media only screen and (max-width: 47.9375rem) {
    body.dashboard-shell .dashboard-home-shortcuts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    body.dashboard-shell .dashboard-shortcut-card {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    body.dashboard-shell .dashboard-shortcut-copy small {
        display: none;
    }

    body.dashboard-shell .dashboard-shortcut-arrow {
        margin-left: auto;
    }
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-header-action .nav-link {
        height: 3rem;
        width: 3rem;
    }

    body.dashboard-shell .dashboard-header-action .material-icons {
        font-size: 1.65rem !important;
    }

    body.dashboard-shell .dashboard-home {
        padding-top: .65rem;
    }

    body.dashboard-shell .dashboard-home-intro {
        align-items: flex-start;
        display: block;
        padding: 1rem;
    }

    body.dashboard-shell .dashboard-home-intro p {
        font-size: .82rem;
    }

    body.dashboard-shell .dashboard-home-live {
        margin: .75rem 0 0;
    }

    body.dashboard-shell .dashboard-home-shortcuts {
        gap: .65rem;
    }

    body.dashboard-shell .dashboard-shortcut-card {
        border-radius: 1rem;
        gap: .55rem;
        min-height: 4.7rem;
        padding: .78rem;
    }

    body.dashboard-shell .dashboard-shortcut-icon {
        border-radius: .72rem;
        flex-basis: 2.25rem;
        height: 2.25rem;
        width: 2.25rem;
    }

    body.dashboard-shell .dashboard-shortcut-icon .material-icons {
        font-size: 1.2rem;
    }

    body.dashboard-shell .dashboard-shortcut-copy strong {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-shortcut-arrow {
        display: none;
    }

    body.dashboard-shell .dashboard-home-section-heading {
        align-items: flex-start;
        display: block;
        padding: 1rem 1rem .8rem;
    }

    body.dashboard-shell .dashboard-home-section-heading .dashboard-text-link {
        margin-top: .6rem;
    }

    body.dashboard-shell .dashboard-home-chat-content {
        padding: .8rem .75rem 1rem;
    }

    body.dashboard-shell .dashboard-request-card {
        padding: .8rem .8rem .72rem;
    }

    body.dashboard-shell .dashboard-request-status {
        font-size: .8125rem;
        padding: .27rem .4rem;
    }

    body.dashboard-shell .dashboard-request-card-footer {
        align-items: flex-start;
        flex-direction: column;
        gap: .35rem;
    }

    body.dashboard-shell .dashboard-request-last-message {
        max-width: 100%;
    }
}

/* -------------------------------------------------------------------------
 * 2026 content cards and modal surfaces
 * ------------------------------------------------------------------------- */
body.dashboard-shell.dashboard-tabs {
    --dashboard-surface: #ffffff;
    --dashboard-surface-soft: #f7fbff;
    --dashboard-ink: #202b3d;
    --dashboard-muted: #71809a;
    --dashboard-line: #e7edf4;
    --dashboard-accent: #01a3ff;
    --dashboard-accent-soft: #eaf6ff;
    --dashboard-danger: #ff5a6d;
    --dashboard-card-radius: 1.05rem;
    --dashboard-card-shadow: 0 .65rem 1.8rem rgba(35, 55, 78, .075);
}

/* Give every module list the same native-style rhythm. */
body.dashboard-shell.dashboard-tabs #profileSectionsList,
body.dashboard-shell.dashboard-tabs #sectionContentList,
body.dashboard-shell.dashboard-tabs #dealsList,
body.dashboard-shell.dashboard-tabs #eventsList {
    row-gap: 1rem;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList > [class*="col-"],
body.dashboard-shell.dashboard-tabs #sectionContentList > [class*="col-"],
body.dashboard-shell.dashboard-tabs #dealsList > [class*="col-"],
body.dashboard-shell.dashboard-tabs #eventsList > [class*="col-"] {
    display: flex;
    margin-bottom: 0;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList > [class*="col-"] > .card,
body.dashboard-shell.dashboard-tabs #sectionContentList > [class*="col-"] > .card,
body.dashboard-shell.dashboard-tabs #dealsList > [class*="col-"] > .card,
body.dashboard-shell.dashboard-tabs #eventsList > [class*="col-"] > .card {
    background: var(--dashboard-surface);
    border: 1px solid rgba(207, 219, 232, .82);
    border-radius: var(--dashboard-card-radius);
    box-shadow: var(--dashboard-card-shadow);
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
    overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList > [class*="col-"] > .card:hover,
body.dashboard-shell.dashboard-tabs #sectionContentList > [class*="col-"] > .card:hover,
body.dashboard-shell.dashboard-tabs #dealsList > [class*="col-"] > .card:hover,
body.dashboard-shell.dashboard-tabs #eventsList > [class*="col-"] > .card:hover {
    border-color: rgba(1, 163, 255, .35);
    box-shadow: 0 1rem 2.25rem rgba(35, 55, 78, .12);
    transform: translateY(-2px);
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .card-content,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-content,
body.dashboard-shell.dashboard-tabs #dealsList .card-content,
body.dashboard-shell.dashboard-tabs #eventsList .card-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

/* Sections and content use a compact preview tile with a stronger hierarchy. */
body.dashboard-shell.dashboard-tabs #profileSectionsList .card-body,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-body {
    align-items: center;
    display: flex;
    min-height: 9.25rem;
    padding: 1.15rem 1.2rem;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media,
body.dashboard-shell.dashboard-tabs #sectionContentList .media {
    align-items: center;
    gap: 1rem;
    width: 100%;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media-body,
body.dashboard-shell.dashboard-tabs #sectionContentList .media-body {
    min-width: 0;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media-body h4,
body.dashboard-shell.dashboard-tabs #sectionContentList .media-body h4 {
    color: var(--dashboard-ink);
    font-size: 1.05rem;
    font-weight: 750;
    line-height: 1.3;
    margin-bottom: .55rem;
    overflow-wrap: anywhere;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media-body .text-muted,
body.dashboard-shell.dashboard-tabs #sectionContentList .media-body .text-muted {
    color: var(--dashboard-muted) !important;
    font-size: .86rem;
    font-weight: 600;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center,
body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center {
    flex: 0 0 5.6rem;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center img,
body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center img,
body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center > div,
body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center > div {
    border: 0 !important;
    border-radius: .9rem !important;
    height: 5.6rem !important;
    object-fit: cover;
    overflow: hidden;
    width: 5.6rem !important;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center > div,
body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center > div {
    align-items: center;
    background: linear-gradient(145deg, #eef8ff, #f2f4ff) !important;
    color: var(--dashboard-accent);
    display: flex;
    justify-content: center;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center i,
body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center i {
    color: var(--dashboard-accent) !important;
    font-size: 1.8rem;
}

/* Deals and Events get a visual media header and readable metadata blocks. */
body.dashboard-shell.dashboard-tabs #dealsList .deal-card-media,
body.dashboard-shell.dashboard-tabs #eventsList .event-card-media {
    background: linear-gradient(145deg, #edf8ff, #f1f3ff);
    border-radius: .9rem;
    height: 11rem;
    margin: .75rem .75rem 0;
    overflow: hidden;
    position: relative;
    width: auto;
}

body.dashboard-shell.dashboard-tabs #dealsList .deal-card-media img,
body.dashboard-shell.dashboard-tabs #eventsList .event-card-media img {
    height: 100%;
    object-fit: cover;
    object-position: center;
    width: 100%;
}

body.dashboard-shell.dashboard-tabs #dealsList .deal-card-media > i,
body.dashboard-shell.dashboard-tabs #eventsList .event-card-media > i {
    color: var(--dashboard-accent);
    font-size: 2.5rem;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body,
body.dashboard-shell.dashboard-tabs #eventsList .card-body {
    padding: 1.05rem 1.1rem 1.1rem;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-title,
body.dashboard-shell.dashboard-tabs #eventsList .card-title {
    color: var(--dashboard-ink);
    font-size: 1.02rem;
    font-weight: 750;
    line-height: 1.35;
    margin-top: .8rem !important;
    overflow-wrap: anywhere;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body > .text-muted,
body.dashboard-shell.dashboard-tabs #eventsList .card-body > .text-muted {
    color: var(--dashboard-muted) !important;
    font-size: .84rem;
    font-weight: 600;
}

body.dashboard-shell.dashboard-tabs #dealsList .badge-dark,
body.dashboard-shell.dashboard-tabs #eventsList .badge-dark {
    background: var(--dashboard-accent-soft);
    border: 1px solid rgba(1, 163, 255, .14);
    border-radius: 999px;
    color: #087ebd;
    font-size: .8125rem;
    font-weight: 750;
    letter-spacing: .02em;
    padding: .42rem .62rem;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body > .d-flex > strong,
body.dashboard-shell.dashboard-tabs #eventsList .card-body > .d-flex > strong {
    color: var(--dashboard-ink);
    font-size: .92rem;
    font-weight: 800;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body > .row.text-center,
body.dashboard-shell.dashboard-tabs #eventsList .card-body > .row.text-center {
    background: var(--dashboard-surface-soft);
    border: 1px solid var(--dashboard-line);
    border-radius: .8rem;
    margin: 1rem 0 0 !important;
    padding: .65rem .15rem;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body > .row.text-center > [class*="col-"],
body.dashboard-shell.dashboard-tabs #eventsList .card-body > .row.text-center > [class*="col-"] {
    border-right: 1px solid var(--dashboard-line);
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body > .row.text-center > [class*="col-"]:last-child,
body.dashboard-shell.dashboard-tabs #eventsList .card-body > .row.text-center > [class*="col-"]:last-child {
    border-right: 0;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body > .row.text-center strong,
body.dashboard-shell.dashboard-tabs #eventsList .card-body > .row.text-center strong {
    color: var(--dashboard-ink);
    font-size: .95rem;
}

body.dashboard-shell.dashboard-tabs #dealsList .card-body > .row.text-center small,
body.dashboard-shell.dashboard-tabs #eventsList .card-body > .row.text-center small {
    color: var(--dashboard-muted);
    font-size: .8125rem;
    font-weight: 650;
}

/* One compact, touch-friendly action rail for every module card. */
body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer,
body.dashboard-shell.dashboard-tabs #dealsList .card-footer,
body.dashboard-shell.dashboard-tabs #eventsList .card-footer {
    background: var(--dashboard-surface-soft);
    border-top: 1px solid var(--dashboard-line);
    padding: 0 !important;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer .d-flex,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer .d-flex,
body.dashboard-shell.dashboard-tabs #dealsList .card-footer .d-flex,
body.dashboard-shell.dashboard-tabs #eventsList .card-footer .d-flex {
    min-height: 3.2rem;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer a,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer a,
body.dashboard-shell.dashboard-tabs #dealsList .card-footer a,
body.dashboard-shell.dashboard-tabs #eventsList .card-footer a {
    align-items: center;
    color: #4b5c75;
    display: flex;
    font-size: .8125rem;
    font-weight: 750;
    gap: .28rem;
    justify-content: center;
    min-height: 3.2rem;
    padding: .55rem .35rem !important;
    transition: background .2s ease, color .2s ease;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer a + a,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer a + a,
body.dashboard-shell.dashboard-tabs #dealsList .card-footer a + a,
body.dashboard-shell.dashboard-tabs #eventsList .card-footer a + a {
    border-left: 1px solid var(--dashboard-line);
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer a:hover,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer a:hover,
body.dashboard-shell.dashboard-tabs #dealsList .card-footer a:hover,
body.dashboard-shell.dashboard-tabs #eventsList .card-footer a:hover {
    background: #eef8ff;
    color: var(--dashboard-accent);
    text-decoration: none;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer a.text-danger:hover,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer a.text-danger:hover,
body.dashboard-shell.dashboard-tabs #dealsList .card-footer a.text-danger:hover,
body.dashboard-shell.dashboard-tabs #eventsList .card-footer a.text-danger:hover {
    background: #fff1f3;
    color: var(--dashboard-danger) !important;
}

body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer i,
body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer i,
body.dashboard-shell.dashboard-tabs #dealsList .card-footer i,
body.dashboard-shell.dashboard-tabs #eventsList .card-footer i {
    font-size: 1rem;
    margin-right: 0 !important;
}

/* Shared modal treatment: lighter chrome, generous breathing room, clear title. */
body.dashboard-shell .modal .modal-content {
    background: #fff;
    border: 1px solid rgba(207, 219, 232, .78);
    border-radius: 1.1rem;
    box-shadow: 0 1.5rem 4rem rgba(27, 43, 61, .2);
    overflow: hidden;
}

body.dashboard-shell .modal .modal-header {
    align-items: center;
    background: linear-gradient(180deg, #ffffff, #f7fbff);
    border-bottom: 1px solid var(--dashboard-line);
    min-height: 4rem;
    padding: .95rem 1.2rem;
}

body.dashboard-shell .modal .modal-title {
    color: var(--dashboard-ink);
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.3;
}

body.dashboard-shell .modal .modal-header .close {
    align-items: center;
    background: #eef5fb;
    border-radius: 50%;
    color: #4d627c;
    display: inline-flex;
    font-size: 1.35rem;
    height: 2.25rem;
    justify-content: center;
    margin: 0 0 0 auto;
    opacity: 1;
    padding: 0;
    text-shadow: none;
    width: 2.25rem;
}

body.dashboard-shell .modal .modal-header .close:hover {
    background: var(--dashboard-accent-soft);
    color: var(--dashboard-accent);
}

body.dashboard-shell .modal .modal-body {
    color: var(--dashboard-ink);
    padding: 1.25rem;
}

body.dashboard-shell .modal .modal-footer {
    background: #fbfdff;
    border-top: 1px solid var(--dashboard-line);
    padding: .85rem 1.2rem;
}

body.dashboard-shell .modal .modal-body hr {
    border-color: var(--dashboard-line);
    margin: 1.15rem 0;
}

body.dashboard-shell #dealViewModal .deal-modal-image,
body.dashboard-shell #eventViewModal .event-modal-image,
body.dashboard-shell #contentViewModalImage {
    background: #f2f6fa;
    border: 1px solid var(--dashboard-line);
    border-radius: .95rem !important;
    max-height: 22rem;
    object-fit: cover;
}

body.dashboard-shell #dealViewModal .modal-body > .row.text-center,
body.dashboard-shell #eventStatsModal .modal-body > .row,
body.dashboard-shell #contentViewModal .modal-body > #contentViewModalMeta {
    background: var(--dashboard-surface-soft);
    border-radius: .9rem;
}

body.dashboard-shell #dealViewModal .modal-body > .row.text-center {
    border: 1px solid var(--dashboard-line);
    margin: 1.1rem 0 0 !important;
    padding: .75rem .2rem;
}

body.dashboard-shell #dealViewModal .modal-body > .row.text-center > [class*="col-"] {
    border-right: 1px solid var(--dashboard-line);
}

body.dashboard-shell #dealViewModal .modal-body > .row.text-center > [class*="col-"]:last-child {
    border-right: 0;
}

body.dashboard-shell #eventStatsModal .modal-body > .row {
    margin: 0;
    padding: .35rem;
}

body.dashboard-shell #eventStatsModal .modal-body > .row .border.rounded,
body.dashboard-shell #eventStatsModal .modal-body > .border.rounded {
    background: #fff;
    border: 1px solid var(--dashboard-line) !important;
    border-radius: .85rem !important;
    box-shadow: 0 .35rem 1rem rgba(35, 55, 78, .05);
}

body.dashboard-shell #eventStatsModal .modal-body h3 {
    color: var(--dashboard-accent);
    font-weight: 800;
}

body.dashboard-shell #contentViewModal .modal-body > #contentViewModalMeta {
    border: 1px solid var(--dashboard-line);
    margin-bottom: 1rem;
    padding: .85rem 1rem;
}

body.dashboard-shell #contentViewModal .modal-body > #contentViewModalBody {
    color: #34435a;
    line-height: 1.75;
}

body.dashboard-shell #contentMediaPreviewModal .modal-body,
body.dashboard-shell #sectionFilePreviewModal .modal-body {
    background: #f7faff;
    min-height: 18rem;
}

/* Manage Files cards share the same surface language as the main module cards. */
body.dashboard-shell.dashboard-tabs #profileFilesList,
body.dashboard-shell.dashboard-tabs #sectionFilesList {
    row-gap: 1rem;
}

body.dashboard-shell.dashboard-tabs #profileFilesList > [class*="col-"],
body.dashboard-shell.dashboard-tabs #sectionFilesList > [class*="col-"] {
    display: flex;
    margin-bottom: 0;
}

body.dashboard-shell.dashboard-tabs #profileFilesList > [class*="col-"] > .card,
body.dashboard-shell.dashboard-tabs #sectionFilesList > [class*="col-"] > .card {
    background: var(--dashboard-surface);
    border: 1px solid rgba(207, 219, 232, .82);
    border-radius: var(--dashboard-card-radius);
    box-shadow: var(--dashboard-card-shadow);
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    overflow: hidden;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.dashboard-shell.dashboard-tabs #profileFilesList > [class*="col-"] > .card:hover,
body.dashboard-shell.dashboard-tabs #sectionFilesList > [class*="col-"] > .card:hover {
    border-color: rgba(1, 163, 255, .35);
    box-shadow: 0 1rem 2.25rem rgba(35, 55, 78, .12);
    transform: translateY(-2px);
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-content,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-content {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-content > a,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-content > a,
body.dashboard-shell.dashboard-tabs #profileFilesList .card-content > div[style*="height"],
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-content > div[style*="height"] {
    background: linear-gradient(145deg, #edf8ff, #f1f3ff) !important;
    border: 0;
    height: 10.5rem !important;
    overflow: hidden;
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-content > a img,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-content > a img,
body.dashboard-shell.dashboard-tabs #profileFilesList .card-content > a iframe,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-content > a iframe {
    border: 0 !important;
    height: 100% !important;
    object-fit: cover;
    width: 100% !important;
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-body,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-body {
    padding: 1rem 1.05rem;
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-title,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-title {
    color: var(--dashboard-ink);
    font-size: .95rem;
    font-weight: 750;
    line-height: 1.35;
    margin-bottom: .35rem;
    overflow-wrap: anywhere;
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-text,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-text {
    color: var(--dashboard-muted);
    font-size: .8125rem;
    font-weight: 650;
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-footer,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-footer {
    background: var(--dashboard-surface-soft);
    border-top: 1px solid var(--dashboard-line);
    color: var(--dashboard-muted) !important;
    font-size: .8125rem;
    font-weight: 650;
    min-height: 2.8rem;
    padding: .7rem .9rem !important;
}

body.dashboard-shell.dashboard-tabs #profileFilesList .card-footer a,
body.dashboard-shell.dashboard-tabs #sectionFilesList .card-footer a {
    color: var(--dashboard-danger);
    font-weight: 750;
}

body.dashboard-shell .modal .btn {
    border-radius: .72rem;
    font-weight: 750;
    min-height: 2.65rem;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell.dashboard-tabs #profileSectionsList .card-body,
    body.dashboard-shell.dashboard-tabs #sectionContentList .card-body {
        min-height: 8.25rem;
        padding: 1rem;
    }

    body.dashboard-shell.dashboard-tabs #profileSectionsList .media,
    body.dashboard-shell.dashboard-tabs #sectionContentList .media {
        gap: .75rem;
    }

    body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center,
    body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center,
    body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center img,
    body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center img,
    body.dashboard-shell.dashboard-tabs #profileSectionsList .media > .align-self-center > div,
    body.dashboard-shell.dashboard-tabs #sectionContentList .media > .align-self-center > div {
        flex-basis: 4.75rem;
        height: 4.75rem !important;
        width: 4.75rem !important;
    }

    body.dashboard-shell.dashboard-tabs #dealsList .deal-card-media,
    body.dashboard-shell.dashboard-tabs #eventsList .event-card-media {
        height: 10rem;
    }

    body.dashboard-shell.dashboard-tabs #profileSectionsList .card-footer a,
    body.dashboard-shell.dashboard-tabs #sectionContentList .card-footer a,
    body.dashboard-shell.dashboard-tabs #dealsList .card-footer a,
    body.dashboard-shell.dashboard-tabs #eventsList .card-footer a {
        font-size: .8125rem;
    }

    body.dashboard-shell .modal .modal-body {
        padding: 1rem;
    }
}

/* Normalize enhanced selects and form rhythm across every dashboard module.
 * bootstrap-select copies the source select's form-control class onto its
 * wrapper. Keep the wrapper transparent and draw the control frame once on
 * the generated dropdown button. */
body.dashboard-shell.dashboard-tabs .tab-pane > form .form-group,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-group,
body.dashboard-shell.dashboard-tabs .billing-panel .form-group {
    margin-bottom: 1.35rem !important;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-group:last-child,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-group:last-child,
body.dashboard-shell.dashboard-tabs .billing-panel .form-group:last-child {
    margin-bottom: 0 !important;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-row,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-row {
    row-gap: .15rem;
}

body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select.form-control {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    display: block;
    height: auto !important;
    min-height: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select.form-control > .dropdown-toggle,
body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select > .dropdown-toggle {
    align-items: center;
    background: #fff;
    border: 1px solid var(--border, #d4d8db);
    border-radius: .75rem;
    box-shadow: none;
    color: #202833;
    display: flex;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.5;
    min-height: 3.25rem;
    padding: .75rem 1rem;
    width: 100%;
}

body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select.form-control > .dropdown-toggle:focus,
body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select > .dropdown-toggle:focus,
body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select.show > .dropdown-toggle {
    border-color: var(--primary, #01a3ff);
    box-shadow: 0 0 0 .2rem rgba(1, 163, 255, .12);
    outline: 0;
}

body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select > .dropdown-toggle .filter-option {
    align-items: center;
    display: flex;
    min-width: 0;
}

body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select > .dropdown-toggle .filter-option-inner-inner {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select > .dropdown-toggle .bs-caret {
    flex: 0 0 auto;
    margin-left: .75rem;
}

body.dashboard-shell.dashboard-tabs .form-group > .bootstrap-select + .form-text,
body.dashboard-shell.dashboard-tabs .form-group > select + .form-text {
    display: block;
    margin-top: .45rem;
}

/* Remove isolated legacy offsets from the Deal/Event editors. Their field
 * groups already receive the shared vertical rhythm above. */
body.dashboard-shell.dashboard-tabs #dealEditorForm label.mt-3,
body.dashboard-shell.dashboard-tabs #eventEditorForm label.mt-3 {
    margin-top: 0 !important;
}

body.dashboard-shell.dashboard-tabs #eventEditorForm .form-group.pt-2 {
    padding-top: 0 !important;
}

body.dashboard-shell.dashboard-tabs #dealEditorForm .form-group,
body.dashboard-shell.dashboard-tabs #eventEditorForm .form-group,
body.dashboard-shell.dashboard-tabs .business-tab-form .form-group {
    display: block;
}

body.dashboard-shell.dashboard-tabs #dealEditorForm .form-group > label,
body.dashboard-shell.dashboard-tabs #eventEditorForm .form-group > label,
body.dashboard-shell.dashboard-tabs .business-tab-form .form-group > label {
    display: block;
    margin-bottom: .55rem;
}

/* Use explicit gaps instead of relying on flex-item margins. This prevents
 * labels from touching the preceding control when a multi-column row stacks
 * on a phone-sized viewport. */
body.dashboard-shell.dashboard-tabs .tab-pane > form .form-row,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-row {
    row-gap: 1.25rem;
    margin-bottom: 1.25rem;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-row > .form-group,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-row > .form-group {
    margin-bottom: 0 !important;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form > .form-group,
body.dashboard-shell.dashboard-tabs .tab-pane > .card > .form-group,
body.dashboard-shell.dashboard-tabs .business-tab-form > .form-group,
body.dashboard-shell.dashboard-tabs #dealEditorForm > .form-group,
body.dashboard-shell.dashboard-tabs #eventEditorForm > .form-group {
    margin-bottom: 1.25rem !important;
}

#dashboard-access-gate {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: grid;
    place-items: center;
    padding: 1.25rem;
    background: rgba(230, 235, 238, .96);
}

#dashboard-access-gate[hidden] {
    display: none;
}

.dashboard-access-card {
    align-items: center;
    background: #fff;
    border: 1px solid var(--border, #d4d8db);
    border-radius: .75rem;
    box-shadow: 0 .75rem 2rem rgba(49, 42, 42, .08);
    display: flex;
    flex-direction: column;
    gap: .45rem;
    max-width: 22rem;
    padding: 2rem;
    text-align: center;
}

.dashboard-access-card strong {
    color: #2a353a;
    font-size: 1.05rem;
}

.dashboard-access-card span {
    color: #737b8b;
    font-size: .875rem;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-content-body > .container-fluid {
        padding-bottom: 1.5rem;
    }

    body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-item {
        flex: 0 0 auto;
    }

    body.dashboard-shell.dashboard-tabs .nav-tabs.nav-justified .nav-link {
        max-width: 13rem;
        min-width: 7.5rem;
    }

    body.dashboard-shell.dashboard-tabs .tab-pane > form,
    body.dashboard-shell.dashboard-tabs .tab-pane > .card,
    body.dashboard-shell.dashboard-tabs .tab-pane > .billing-panel {
        padding: 1rem;
    }
}

/* Final cascade guard: legacy mobile rules above must not undo the app shell. */
body.dashboard-shell .dashboard-header-action .nav-link {
    height: 3.35rem;
    width: 3.35rem;
}

body.dashboard-shell .dashboard-header-action .material-icons {
    font-size: 1.85rem !important;
}

body.dashboard-shell.dashboard-tabs .tab-pane > form,
body.dashboard-shell.dashboard-tabs .tab-pane > .card,
body.dashboard-shell.dashboard-tabs .tab-pane > .billing-panel {
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1.05rem;
    box-shadow: var(--dashboard-shadow, 0 .7rem 2rem rgba(32, 55, 85, .08));
}

body.dashboard-shell.dashboard-tabs .tab-pane > form .form-control,
body.dashboard-shell.dashboard-tabs .tab-pane > .card .form-control,
body.dashboard-shell.dashboard-tabs .tab-pane > .billing-panel .form-control,
body.dashboard-shell.dashboard-tabs .tab-pane > form select,
body.dashboard-shell.dashboard-tabs .tab-pane > .card select,
body.dashboard-shell.dashboard-tabs .tab-pane > .billing-panel select {
    border-radius: .85rem;
}

body.dashboard-shell.dashboard-tabs .tab-pane .card-footer {
    align-items: center;
    background: var(--dashboard-surface, #fff);
    min-height: 3.4rem;
    padding: .7rem 1rem;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-header-action .nav-link {
        height: 3.15rem;
        width: 3.15rem;
    }

    body.dashboard-shell .dashboard-header-action .material-icons {
        font-size: 1.75rem !important;
    }
}

/* Dashboard home composition: balanced module tiles and a calmer inbox surface. */
body.dashboard-shell .dashboard-home {
    max-width: 84rem;
    margin: 0 auto;
    padding: 1.25rem 1.25rem 2.5rem;
}

body.dashboard-shell .dashboard-home-shortcuts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
    margin: 1rem 0 1.25rem;
}

body.dashboard-shell .dashboard-home-module-card {
    position: relative;
    display: flex;
    min-height: 11.5rem;
    flex-direction: column;
    justify-content: space-between;
    gap: .9rem;
    overflow: hidden;
    padding: 1.15rem 1.15rem 1.25rem;
    color: #17243b;
    text-decoration: none;
    background: #fff;
    border: 1px solid #e3eaf2;
    border-radius: 1.2rem;
    box-shadow: 0 .7rem 1.8rem rgba(29, 55, 87, .08);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

body.dashboard-shell .dashboard-home-module-card:hover,
body.dashboard-shell .dashboard-home-module-card:focus-visible {
    color: #17243b;
    border-color: #c8d9ee;
    box-shadow: 0 1rem 2rem rgba(29, 55, 87, .13);
    transform: translateY(-2px);
    outline: 0;
}

body.dashboard-shell .dashboard-home-module-card:focus-visible {
    box-shadow: 0 0 0 3px rgba(20, 156, 244, .2), 0 1rem 2rem rgba(29, 55, 87, .13);
}

body.dashboard-shell .dashboard-home-module-card-top {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: .75rem;
}

body.dashboard-shell .dashboard-home-module-icon {
    display: grid;
    width: 3.45rem;
    height: 3.45rem;
    place-items: center;
    color: #167ee8;
    background: #eaf4ff;
    border-radius: 1rem;
}

body.dashboard-shell .dashboard-home-module-icon .material-icons {
    font-size: 2rem;
}

body.dashboard-shell .dashboard-home-module-arrow {
    display: grid;
    width: 2rem;
    height: 2rem;
    place-items: center;
    color: #8090a7;
    font-size: 1.35rem;
    background: #f4f7fb;
    border-radius: 50%;
}

body.dashboard-shell .dashboard-home-module-copy {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: .3rem;
}

body.dashboard-shell .dashboard-home-module-copy strong {
    overflow: hidden;
    color: #1a2943;
    font-size: 1.08rem;
    font-weight: 800;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-module-copy small {
    max-width: 28rem;
    color: #7d8ca4;
    font-size: .8125rem;
    line-height: 1.4;
}

body.dashboard-shell .dashboard-home-module-accent {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: .28rem;
    background: #167ee8;
}

body.dashboard-shell .dashboard-home-module-card--profile .dashboard-home-module-icon {
    color: #167ee8;
    background: #eaf4ff;
}

body.dashboard-shell .dashboard-home-module-card--sections .dashboard-home-module-icon {
    color: #6556d8;
    background: #f0edff;
}

body.dashboard-shell .dashboard-home-module-card--deals .dashboard-home-module-icon {
    color: #d28b00;
    background: #fff5dc;
}

body.dashboard-shell .dashboard-home-module-card--events .dashboard-home-module-icon {
    color: #079b8c;
    background: #e3faf6;
}

body.dashboard-shell .dashboard-home-module-card--saved-contacts .dashboard-home-module-icon {
    color: #c34da0;
    background: #fff0fa;
}

body.dashboard-shell .dashboard-home-module-card--billing .dashboard-home-module-icon {
    color: #536783;
    background: #eef2f7;
}

body.dashboard-shell .dashboard-home-module-card--sections .dashboard-home-module-accent {
    background: #6556d8;
}

body.dashboard-shell .dashboard-home-module-card--deals .dashboard-home-module-accent {
    background: #e8a400;
}

body.dashboard-shell .dashboard-home-module-card--events .dashboard-home-module-accent {
    background: #079b8c;
}

body.dashboard-shell .dashboard-home-module-card--saved-contacts .dashboard-home-module-accent {
    background: #c34da0;
}

body.dashboard-shell .dashboard-home-module-card--billing .dashboard-home-module-accent {
    background: #536783;
}

body.dashboard-shell.dashboard-listing-modal-open {
    overflow: hidden;
}

body.dashboard-shell .dashboard-listing-required-modal[hidden] {
    display: none !important;
}

body.dashboard-shell .dashboard-listing-required-modal {
    position: fixed;
    z-index: 2500;
    inset: 0;
    display: grid;
    align-items: center;
    justify-items: center;
    padding: 1.25rem;
}

body.dashboard-shell .dashboard-listing-required-modal-scrim {
    position: absolute;
    inset: 0;
    background: rgba(12, 23, 41, .54);
    -webkit-backdrop-filter: blur(16px) saturate(.8);
    backdrop-filter: blur(16px) saturate(.8);
}

body.dashboard-shell .dashboard-listing-required-modal-dialog {
    position: relative;
    width: min(100%, 27rem);
    padding: 1.5rem;
    text-align: center;
    background: #fff;
    border: 1px solid rgba(224, 232, 241, .95);
    border-radius: 1.65rem;
    box-shadow: 0 1.6rem 4rem rgba(9, 24, 44, .28);
}

body.dashboard-shell .dashboard-listing-required-modal-icon {
    display: grid;
    width: 4rem;
    height: 4rem;
    margin: 0 auto .9rem;
    place-items: center;
    color: #fff;
    background: #167ee8;
    border-radius: 1.25rem;
    box-shadow: 0 .65rem 1.2rem rgba(22, 126, 232, .22);
}

body.dashboard-shell .dashboard-listing-required-modal-icon .material-icons {
    font-size: 2rem;
}

body.dashboard-shell .dashboard-listing-required-modal-kicker {
    display: block;
    margin-bottom: .35rem;
    color: #167ee8;
    font-size: .8125rem;
    font-weight: 800;
    letter-spacing: .08em;
    line-height: 1.2;
    text-transform: uppercase;
}

body.dashboard-shell .dashboard-listing-required-modal-dialog h2 {
    margin: 0;
    color: #17243b;
    font-size: 1.35rem;
    font-weight: 800;
    line-height: 1.2;
}

body.dashboard-shell .dashboard-listing-required-modal-dialog p {
    margin: .7rem auto 1.25rem;
    max-width: 22rem;
    color: #718198;
    font-size: .88rem;
    line-height: 1.55;
}

body.dashboard-shell .dashboard-listing-required-modal-actions {
    display: grid;
    gap: .6rem;
}

body.dashboard-shell .dashboard-listing-required-modal-primary,
body.dashboard-shell .dashboard-listing-required-modal-secondary {
    display: inline-flex;
    min-height: 3rem;
    align-items: center;
    justify-content: center;
    gap: .45rem;
    padding: .7rem 1rem;
    font-size: .85rem;
    font-weight: 800;
    line-height: 1.2;
    border-radius: .9rem;
    transition: transform .18s ease, box-shadow .18s ease, background-color .18s ease;
}

body.dashboard-shell .dashboard-listing-required-modal-primary {
    color: #fff;
    background: #17243b;
    box-shadow: 0 .5rem 1rem rgba(23, 36, 59, .16);
}

body.dashboard-shell .dashboard-listing-required-modal-primary:hover,
body.dashboard-shell .dashboard-listing-required-modal-primary:focus-visible {
    color: #fff;
    background: #243754;
    box-shadow: 0 .65rem 1.2rem rgba(23, 36, 59, .22);
    text-decoration: none;
    transform: translateY(-1px);
}

body.dashboard-shell .dashboard-listing-required-modal-secondary {
    width: 100%;
    color: #536783;
    background: #f5f7fa;
    border: 1px solid #e3eaf2;
}

body.dashboard-shell .dashboard-listing-required-modal-secondary:hover,
body.dashboard-shell .dashboard-listing-required-modal-secondary:focus-visible {
    color: #17243b;
    background: #edf2f7;
    outline: 0;
}

body.dashboard-shell .dashboard-listing-required-modal-primary:focus-visible,
body.dashboard-shell .dashboard-listing-required-modal-secondary:focus-visible {
    box-shadow: 0 0 0 3px rgba(22, 126, 232, .25);
    outline: 0;
}

body.dashboard-shell .dashboard-listing-required-modal .material-icons {
    font-size: 1.1rem;
}

body.dashboard-shell .dashboard-home-chat {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3eaf2;
    border-radius: 1.25rem;
    box-shadow: 0 .7rem 1.8rem rgba(29, 55, 87, .08);
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading {
    padding: 1.25rem 1.25rem .95rem;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs {
    display: flex;
    gap: .25rem;
    margin: 0 1rem;
    padding: .25rem;
    background: #f3f6fa;
    border: 1px solid #e4eaf1;
    border-radius: .95rem;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-item {
    flex: 1 1 0;
    min-width: 0;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-link {
    display: flex;
    min-height: 2.85rem;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    padding: .5rem .45rem;
    overflow: hidden;
    color: #74849c;
    font-size: .8125rem;
    font-weight: 750;
    line-height: 1.1;
    text-overflow: ellipsis;
    white-space: nowrap;
    border: 0;
    border-radius: .7rem;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-link:hover,
body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-link:focus-visible {
    color: #167ee8;
    border: 0;
    outline: 0;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-link.active {
    color: #167ee8;
    background: #fff;
    border: 0;
    box-shadow: 0 .3rem .75rem rgba(41, 75, 112, .1);
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .material-icons {
    flex: 0 0 auto;
    font-size: 1.1rem;
}

body.dashboard-shell .dashboard-home-tab-count {
    display: inline-grid;
    min-width: 1.35rem;
    height: 1.35rem;
    align-items: center;
    justify-content: center;
    padding: 0 .25rem;
    color: #536783;
    font-size: .8125rem;
    font-weight: 800;
    background: #edf1f6;
    border-radius: 999px;
}

body.dashboard-shell .dashboard-home-chat .nav-link.active .dashboard-home-tab-count {
    color: #167ee8;
    background: #eaf4ff;
}

body.dashboard-shell .dashboard-home-chat-content {
    padding: 1rem;
}

body.dashboard-shell .dashboard-home-request-list {
    display: grid;
    gap: .65rem;
}

body.dashboard-shell .dashboard-home-request {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    gap: .75rem;
    padding: .9rem;
    background: #fbfcfe;
    border: 1px solid #e5ebf2;
    border-radius: 1rem;
    transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.dashboard-shell .dashboard-home-request:hover {
    border-color: #cbdced;
    box-shadow: 0 .45rem 1rem rgba(29, 55, 87, .07);
    transform: translateY(-1px);
}

body.dashboard-shell .dashboard-home-request-leading {
    display: grid;
    width: 2.75rem;
    height: 2.75rem;
    flex: 0 0 2.75rem;
    place-items: center;
    color: #167ee8;
    background: #eaf4ff;
    border-radius: .85rem;
}

body.dashboard-shell .dashboard-home-request-leading .material-icons {
    font-size: 1.45rem;
}

body.dashboard-shell .dashboard-home-request-leading--business {
    color: #6556d8;
    background: #f0edff;
}

body.dashboard-shell .dashboard-home-request-leading--requests {
    color: #d28b00;
    background: #fff5dc;
}

body.dashboard-shell .dashboard-home-request-body {
    min-width: 0;
    flex: 1 1 auto;
}

body.dashboard-shell .dashboard-home-request-topline {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: .6rem;
}

body.dashboard-shell .dashboard-home-request-topline h3 {
    min-width: 0;
    margin: .05rem 0 0;
    overflow: hidden;
    color: #1b2b45;
    font-size: .96rem;
    font-weight: 800;
    line-height: 1.25;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-request-status {
    flex: 0 0 auto;
    padding: .28rem .52rem;
    color: #167447;
    font-size: .8125rem;
    font-weight: 800;
    line-height: 1;
    background: #e8f8ef;
    border-radius: 999px;
    text-transform: capitalize;
}

body.dashboard-shell .dashboard-home-request-status.status-pending,
body.dashboard-shell .dashboard-home-request-status.status-delivered,
body.dashboard-shell .dashboard-home-request-status.status-opened {
    color: #a46500;
    background: #fff3d8;
}

body.dashboard-shell .dashboard-home-request-status.status-closed,
body.dashboard-shell .dashboard-home-request-status.status-archived,
body.dashboard-shell .dashboard-home-request-status.status-won {
    color: #5f6f87;
    background: #edf1f6;
}

body.dashboard-shell .dashboard-home-request-meta,
body.dashboard-shell .dashboard-home-request-footline {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: .75rem;
    color: #7d8ca4;
    font-size: .8125rem;
    line-height: 1.3;
}

body.dashboard-shell .dashboard-home-request-meta {
    margin-top: .38rem;
}

body.dashboard-shell .dashboard-home-request-meta > span,
body.dashboard-shell .dashboard-home-request-footline > span {
    display: inline-flex;
    min-width: 0;
    align-items: center;
    gap: .2rem;
}

body.dashboard-shell .dashboard-home-request-meta > span:first-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-request-meta .material-icons,
body.dashboard-shell .dashboard-home-request-footline .material-icons {
    flex: 0 0 auto;
    font-size: .95rem;
}

body.dashboard-shell .dashboard-home-request-preview {
    display: -webkit-box;
    margin: .5rem 0 .4rem;
    overflow: hidden;
    color: #52647d;
    font-size: .8125rem;
    line-height: 1.4;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.dashboard-shell .dashboard-home-request-footline {
    justify-content: space-between;
    gap: .5rem;
}

body.dashboard-shell .dashboard-home-request-footline > span:last-child {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-request-open {
    display: grid;
    width: 2.35rem;
    height: 2.35rem;
    flex: 0 0 2.35rem;
    place-items: center;
    align-self: center;
    color: #167ee8;
    text-decoration: none;
    background: #eaf4ff;
    border-radius: 50%;
}

body.dashboard-shell .dashboard-home-request-open:hover,
body.dashboard-shell .dashboard-home-request-open:focus-visible {
    color: #fff;
    background: #167ee8;
    outline: 0;
}

body.dashboard-shell .dashboard-home-request-open .material-icons {
    font-size: 1.35rem;
}

body.dashboard-shell .dashboard-home-view-more {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    margin-top: .85rem;
    color: #167ee8;
    font-size: .8125rem;
    font-weight: 800;
    text-decoration: none;
}

body.dashboard-shell .dashboard-home-view-more:hover,
body.dashboard-shell .dashboard-home-view-more:focus-visible {
    color: #0a63b8;
    text-decoration: none;
}

body.dashboard-shell .dashboard-home-view-more .material-icons {
    font-size: 1rem;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-listing-required-modal {
        align-items: end;
        padding: .75rem;
    }

    body.dashboard-shell .dashboard-listing-required-modal-dialog {
        width: 100%;
        padding: 1.35rem 1rem calc(1rem + env(safe-area-inset-bottom));
        border-radius: 1.5rem;
    }

    body.dashboard-shell .dashboard-home {
        padding: .85rem .8rem 1.5rem;
    }

    body.dashboard-shell .dashboard-home-shortcuts {
        gap: .7rem;
        margin-top: .8rem;
    }

    body.dashboard-shell .dashboard-home-module-card {
        min-height: 9.35rem;
        gap: .55rem;
        padding: .85rem .8rem 1rem;
        border-radius: 1rem;
    }

    body.dashboard-shell .dashboard-home-module-icon {
        width: 2.75rem;
        height: 2.75rem;
        border-radius: .8rem;
    }

    body.dashboard-shell .dashboard-home-module-icon .material-icons {
        font-size: 1.65rem;
    }

    body.dashboard-shell .dashboard-home-module-arrow {
        width: 1.7rem;
        height: 1.7rem;
        font-size: 1.05rem;
    }

    body.dashboard-shell .dashboard-home-module-copy strong {
        font-size: .84rem;
    }

    body.dashboard-shell .dashboard-home-module-copy small {
        display: none;
    }

    body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading {
        padding: 1rem .9rem .75rem;
    }

    body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs {
        margin: 0 .7rem;
    }

    body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-link {
        min-height: 2.65rem;
        gap: .2rem;
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .material-icons {
        display: none;
    }

    body.dashboard-shell .dashboard-home-chat-content {
        padding: .75rem .7rem .9rem;
    }

    body.dashboard-shell .dashboard-home-request {
        gap: .6rem;
        padding: .75rem;
        border-radius: .9rem;
    }

    body.dashboard-shell .dashboard-home-request-leading {
        width: 2.35rem;
        height: 2.35rem;
        flex-basis: 2.35rem;
        border-radius: .7rem;
    }

    body.dashboard-shell .dashboard-home-request-leading .material-icons {
        font-size: 1.2rem;
    }

    body.dashboard-shell .dashboard-home-request-topline h3 {
        font-size: .82rem;
    }

    body.dashboard-shell .dashboard-home-request-status {
        padding: .24rem .38rem;
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-meta,
    body.dashboard-shell .dashboard-home-request-footline {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-preview {
        margin-top: .4rem;
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-open {
        width: 2rem;
        height: 2rem;
        flex-basis: 2rem;
    }

    body.dashboard-shell .dashboard-home-request-open .material-icons {
        font-size: 1.15rem;
    }
}

/* Final home readability pass. */
body.dashboard-shell .dashboard-home {
    font-size: 1rem;
}

body.dashboard-shell .dashboard-home-intro h1 {
    font-size: clamp(1.55rem, 2.9vw, 2.15rem);
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading {
    min-height: 4.6rem;
    align-items: center;
    padding: 1.3rem 1.3rem 1.1rem;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading h2 {
    font-size: clamp(1.3rem, 2.3vw, 1.6rem);
    letter-spacing: -.01em;
}

body.dashboard-shell .dashboard-home-chat-content {
    padding: 1.15rem 1.2rem 1.3rem;
}

body.dashboard-shell .dashboard-home-request-list {
    gap: .8rem;
}

body.dashboard-shell .dashboard-home-request {
    min-height: 8.15rem;
    align-items: stretch;
    gap: .9rem;
    padding: 1rem;
    border-radius: 1.05rem;
}

body.dashboard-shell .dashboard-home-request-leading {
    align-self: flex-start;
    width: 3rem;
    height: 3rem;
    flex-basis: 3rem;
    border-radius: .9rem;
}

body.dashboard-shell .dashboard-home-request-leading .material-icons {
    font-size: 1.55rem;
}

body.dashboard-shell .dashboard-home-request-body {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: .25rem;
}

body.dashboard-shell .dashboard-home-request-topline h3 {
    margin-top: 0;
    color: #17243b;
    font-size: 1rem;
    line-height: 1.3;
    white-space: normal;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.dashboard-shell .dashboard-home-request-status {
    padding: .34rem .6rem;
    font-size: .8125rem;
}

body.dashboard-shell .dashboard-home-request-meta {
    flex-wrap: wrap;
    margin-top: .35rem;
    color: #60718a;
    font-size: .8125rem;
}

body.dashboard-shell .dashboard-home-request-preview {
    margin: .5rem 0 .35rem;
    color: #50627b;
    font-size: .83rem;
    line-height: 1.45;
}

body.dashboard-shell .dashboard-home-request-footline {
    margin-top: auto;
    padding-top: .45rem;
    color: #8190a7;
    font-size: .8125rem;
    border-top: 1px solid #edf1f5;
}

body.dashboard-shell .dashboard-home-request-open {
    width: auto;
    height: 2.45rem;
    flex: 0 0 auto;
    align-self: center;
    gap: .28rem;
    padding: 0 .8rem;
    color: #167ee8;
    font-size: .8125rem;
    font-weight: 800;
    background: #eaf4ff;
    border-radius: 999px;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-request-open .material-icons {
    font-size: 1.1rem;
}

body.dashboard-shell .dashboard-home-view-more--button {
    width: 100%;
    min-height: 3rem;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    margin-top: 1rem;
    padding: .75rem 1rem;
    color: #fff;
    font-size: .84rem;
    font-weight: 800;
    line-height: 1.2;
    background: #149cf2;
    border: 1px solid #149cf2;
    border-radius: .85rem;
    box-shadow: 0 .45rem 1rem rgba(20, 156, 242, .2);
    transition: background .2s ease, box-shadow .2s ease, transform .2s ease;
}

body.dashboard-shell .dashboard-home-view-more--button:hover,
body.dashboard-shell .dashboard-home-view-more--button:focus-visible {
    color: #fff;
    background: #087dcb;
    border-color: #087dcb;
    box-shadow: 0 .6rem 1.2rem rgba(20, 156, 242, .25);
    text-decoration: none;
    transform: translateY(-1px);
    outline: 0;
}

body.dashboard-shell .dashboard-home-view-more--button .material-icons {
    font-size: 1.05rem;
}

body.dashboard-shell .dashboard-home-empty {
    min-height: 8rem;
    padding: 1.25rem;
    background: #f8fafc;
    border: 1px solid #e7edf4;
    border-radius: 1rem;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading {
        min-height: 4.1rem;
        padding: 1rem .9rem .8rem;
    }

    body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading h2 {
        font-size: 1.18rem;
    }

    body.dashboard-shell .dashboard-home-chat-content {
        padding: .85rem .7rem 1rem;
    }

    body.dashboard-shell .dashboard-home-request {
        min-height: 7.25rem;
        gap: .65rem;
        padding: .8rem;
    }

    body.dashboard-shell .dashboard-home-request-leading {
        width: 2.55rem;
        height: 2.55rem;
        flex-basis: 2.55rem;
        border-radius: .75rem;
    }

    body.dashboard-shell .dashboard-home-request-leading .material-icons {
        font-size: 1.25rem;
    }

    body.dashboard-shell .dashboard-home-request-topline h3 {
        font-size: .9rem;
    }

    body.dashboard-shell .dashboard-home-request-status {
        padding: .28rem .45rem;
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-meta {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-preview {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-footline {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-open {
        width: 2.2rem;
        height: 2.2rem;
        padding: 0;
    }

    body.dashboard-shell .dashboard-home-request-open > span:first-child {
        display: none;
    }

    body.dashboard-shell .dashboard-home-request-open .material-icons {
        font-size: 1.1rem;
    }

    body.dashboard-shell .dashboard-home-view-more--button {
        min-height: 2.85rem;
        font-size: .8125rem;
    }
}

/* Native-readable dashboard home typography. */
body.dashboard-shell .dashboard-home {
    --dashboard-home-ink: #16243b;
    --dashboard-home-muted: #5f718b;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-size: 1rem;
    line-height: 1.45;
    letter-spacing: 0;
}

body.dashboard-shell .dashboard-home .material-icons {
    font-family: "Material Icons";
    font-weight: normal;
    letter-spacing: normal;
    line-height: 1;
}

body.dashboard-shell .dashboard-home-intro h1,
body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading h2,
body.dashboard-shell .dashboard-home-module-copy strong,
body.dashboard-shell .dashboard-home-request-topline h3 {
    color: var(--dashboard-home-ink);
    letter-spacing: 0;
}

body.dashboard-shell .dashboard-home-kicker {
    color: #176fb4;
    font-size: .84rem;
    font-weight: 800;
    letter-spacing: .06em;
    line-height: 1.2;
}

body.dashboard-shell .dashboard-home-intro h1 {
    font-size: clamp(1.7rem, 3vw, 2.2rem);
    font-weight: 800;
    line-height: 1.2;
}

body.dashboard-shell .dashboard-home-intro p {
    color: var(--dashboard-home-muted);
    font-size: 1rem;
    font-weight: 500;
    line-height: 1.5;
}

body.dashboard-shell .dashboard-home-live {
    color: #236b4a;
    font-size: .82rem;
    font-weight: 700;
}

body.dashboard-shell .dashboard-home-module-copy strong {
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.3;
    white-space: normal;
}

body.dashboard-shell .dashboard-home-module-copy small {
    color: var(--dashboard-home-muted);
    font-size: .85rem;
    font-weight: 500;
    line-height: 1.45;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-section-heading h2 {
    font-size: clamp(1.35rem, 2.5vw, 1.7rem);
    font-weight: 800;
    line-height: 1.25;
}

body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-link {
    color: #52657f;
    font-size: 1rem;
    font-weight: 750;
    letter-spacing: 0;
}

body.dashboard-shell .dashboard-home-tab-count {
    font-size: .8125rem;
    font-weight: 800;
}

body.dashboard-shell .dashboard-home-request-topline h3 {
    color: #17243b !important;
    font-size: 1.12rem;
    font-weight: 800;
    line-height: 1.35;
}

body.dashboard-shell .dashboard-home-request-status {
    font-size: .8125rem;
    font-weight: 800;
}

body.dashboard-shell .dashboard-home-request-meta {
    color: var(--dashboard-home-muted) !important;
    font-size: .88rem;
    font-weight: 600;
    line-height: 1.4;
}

body.dashboard-shell .dashboard-home-request-preview {
    color: #40536d !important;
    font-size: .94rem;
    font-weight: 500;
    line-height: 1.5;
}

body.dashboard-shell .dashboard-home-request-footline {
    color: #697b94 !important;
    font-size: .84rem;
    font-weight: 600;
    line-height: 1.35;
}

body.dashboard-shell .dashboard-home-request-open {
    font-size: .8125rem;
    font-weight: 800;
}

body.dashboard-shell .dashboard-home-view-more--button {
    color: #fff !important;
    font-size: .94rem;
    font-weight: 800;
    letter-spacing: 0;
}

body.dashboard-shell .dashboard-home-view-more--button > span {
    color: #fff !important;
}

body.dashboard-shell .dashboard-home-view-more--button:hover,
body.dashboard-shell .dashboard-home-view-more--button:focus-visible {
    color: #fff !important;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-home-intro h1 {
        font-size: 1.7rem;
    }

    body.dashboard-shell .dashboard-home-intro p {
        font-size: .94rem;
    }

    body.dashboard-shell .dashboard-home-live {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-module-copy strong {
        font-size: .96rem;
        line-height: 1.3;
    }

    body.dashboard-shell .dashboard-home-chat .dashboard-home-tabs .nav-link {
        font-size: .86rem;
    }

    body.dashboard-shell .dashboard-home-request-topline h3 {
        font-size: .99rem;
    }

    body.dashboard-shell .dashboard-home-request-status {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-request-meta {
        font-size: .82rem;
    }

    body.dashboard-shell .dashboard-home-request-preview {
        font-size: .86rem;
    }

    body.dashboard-shell .dashboard-home-request-footline {
        font-size: .8125rem;
    }

    body.dashboard-shell .dashboard-home-view-more--button {
        color: #fff !important;
        font-size: .88rem;
    }
}

/* Dashboard-wide tab selector contract.
 * Keep the existing tab behavior, but give every dashboard tab bar the same
 * full-width dark surface and high-contrast active state. */
body.dashboard-shell .custom-tab-1 {
    width: 100%;
    max-width: none;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs,
body.dashboard-shell .billing-page .nav-tabs {
    align-items: stretch;
    background: #fff !important;
    border: 0 !important;
    border-radius: 0;
    display: flex;
    flex-wrap: nowrap;
    gap: .55rem;
    margin: 0 !important;
    min-width: 100%;
    overflow-x: auto;
    padding: .35rem !important;
    position: sticky;
    scrollbar-width: none;
    top: var(--dz-header-height, 5rem);
    z-index: 5;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs::-webkit-scrollbar,
body.dashboard-shell .billing-page .nav-tabs::-webkit-scrollbar {
    display: none;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs > .nav-item,
body.dashboard-shell .billing-page .nav-tabs > .nav-item {
    flex: 1 1 0;
    min-width: 0;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs .nav-link,
body.dashboard-shell .billing-page .nav-tabs .nav-link {
    align-items: center;
    background: #fff !important;
    border: 1px solid #d8e1ee !important;
    border-radius: .7rem !important;
    color: #111827 !important;
    display: flex;
    font-size: .95rem;
    font-weight: 750;
    justify-content: center;
    line-height: 1.25;
    margin: 0 !important;
    min-height: 3.65rem;
    overflow: hidden;
    padding: .9rem .8rem;
    text-align: center;
    text-overflow: ellipsis;
    white-space: normal;
    width: 100%;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs .nav-link:hover,
body.dashboard-shell .custom-tab-1 > .nav-tabs .nav-link:focus-visible,
body.dashboard-shell .billing-page .nav-tabs .nav-link:hover,
body.dashboard-shell .billing-page .nav-tabs .nav-link:focus-visible {
    background: #f3f6fa !important;
    border-color: #b9c9dc !important;
    color: #111827 !important;
    outline: 0;
}

body.dashboard-shell .custom-tab-1 > .nav-tabs .nav-link.active,
body.dashboard-shell .custom-tab-1 > .nav-tabs .nav-link.active:hover,
body.dashboard-shell .custom-tab-1 > .nav-tabs .nav-link.active:focus-visible,
body.dashboard-shell .billing-page .nav-tabs .nav-link.active,
body.dashboard-shell .billing-page .nav-tabs .nav-link.active:hover,
body.dashboard-shell .billing-page .nav-tabs .nav-link.active:focus-visible {
    background: #182338 !important;
    border-color: #182338 !important;
    box-shadow: 0 .25rem .8rem rgba(24, 35, 56, .12);
    color: #fff !important;
}

body.dashboard-shell .custom-tab-1 .nav-link .tab-count-badge {
    align-items: center;
    color: #fff !important;
    display: inline-flex;
    font-size: .8125rem;
    justify-content: center;
    line-height: 1;
    margin-left: .45rem;
    min-width: 1.55rem;
    padding: .35rem .45rem;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .custom-tab-1 > .nav-tabs .nav-link,
    body.dashboard-shell .billing-page .nav-tabs .nav-link {
        font-size: .86rem;
        min-height: 3.35rem;
        padding-left: .65rem;
        padding-right: .65rem;
    }
}

/* Keep the first tab dark on initial render as well as after a tab change.
 * These selectors intentionally outrank the older dashboard tab defaults. */
body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs {
    background: #fff !important;
    border: 0 !important;
    border-bottom: 0 !important;
}

body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified .nav-link,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs .nav-link {
    background: #fff !important;
    border: 1px solid #d8e1ee !important;
    border-radius: .7rem !important;
    color: #111827 !important;
}

body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified .nav-link.active,
body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified .nav-link.active:hover,
body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified .nav-link.active:focus,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs .nav-link.active,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs .nav-link.active:hover,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs .nav-link.active:focus {
    background: #182338 !important;
    border-color: #182338 !important;
    color: #fff !important;
}

/* Keep module tabs equally justified at every viewport width. The older
 * mobile tab rule intentionally allows horizontal scrolling, so this final
 * module-scoped rule restores equal-width buttons without affecting Requests. */
body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified > .nav-item,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs.nav-justified > .nav-item,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs > .nav-item {
    flex: 1 1 0 !important;
    min-width: 0 !important;
}

body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified > .nav-item > .nav-link,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs.nav-justified > .nav-item > .nav-link,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs > .nav-item > .nav-link {
    max-width: none !important;
    min-width: 0 !important;
    width: 100% !important;
}

/* -------------------------------------------------------------------------
 * Business area search and notifications
 * ------------------------------------------------------------------------- */
body.dashboard-shell .dashboard-header-search {
    position: relative;
    width: min(32rem, 48vw);
    z-index: 20;
}

body.dashboard-shell .header-left {
    min-width: 0;
}

body.dashboard-shell .header-left .search-area {
    align-items: center;
    background: #fff;
    border: 1px solid #d7e0ea !important;
    border-radius: 1rem;
    box-shadow: 0 .35rem 1rem rgba(24, 35, 56, .08);
    display: flex !important;
    height: 3.35rem;
    overflow: hidden;
    width: 100% !important;
}

body.dashboard-shell .header-left .search-area .input-group-text {
    align-items: center;
    background: transparent !important;
    color: var(--dashboard-accent, #079ff2);
    display: inline-flex;
    height: 100%;
    padding: 0 .9rem 0 1.05rem;
}

body.dashboard-shell .header-left .search-area .input-group-text .material-icons {
    font-size: 1.45rem;
}

body.dashboard-shell .header-left .search-area .form-control {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    color: var(--dashboard-ink, #18253b);
    font-size: .98rem;
    height: 100%;
    min-width: 0;
    padding: 0 1rem 0 0;
}

body.dashboard-shell .header-left .search-area .form-control::placeholder {
    color: #8a98aa;
    opacity: 1;
}

body.dashboard-shell .dashboard-search-results {
    background: #fff;
    border: 1px solid #d7e0ea;
    border-radius: 1rem;
    box-shadow: 0 1rem 2.75rem rgba(24, 35, 56, .18);
    left: 0;
    max-height: min(65vh, 32rem);
    overflow-y: auto;
    padding: .45rem;
    position: absolute;
    right: 0;
    top: calc(100% + .55rem);
}

body.dashboard-shell .dashboard-search-results[hidden] {
    display: none;
}

body.dashboard-shell .dashboard-search-result,
body.dashboard-shell .dashboard-search-empty {
    align-items: center;
    border: 0;
    border-radius: .75rem;
    display: flex;
    gap: .75rem;
    min-height: 3.25rem;
    padding: .65rem .75rem;
    text-align: left;
    width: 100%;
}

body.dashboard-shell .dashboard-search-result {
    background: transparent;
    color: var(--dashboard-ink, #18253b);
    cursor: pointer;
    text-decoration: none;
}

body.dashboard-shell .dashboard-search-result:hover,
body.dashboard-shell .dashboard-search-result:focus-visible {
    background: var(--dashboard-accent-soft, #eaf6ff);
    outline: 0;
}

body.dashboard-shell .dashboard-search-result .material-icons {
    color: var(--dashboard-accent, #079ff2);
    font-size: 1.3rem;
}

body.dashboard-shell .dashboard-search-result-copy {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

body.dashboard-shell .dashboard-search-result-copy strong,
body.dashboard-shell .dashboard-search-result-copy small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-search-result-copy strong {
    font-size: .88rem;
    font-weight: 700;
}

body.dashboard-shell .dashboard-search-result-copy small {
    color: var(--dashboard-muted, #71809a);
    font-size: .8125rem;
    margin-top: .1rem;
}

body.dashboard-shell .dashboard-search-empty {
    color: var(--dashboard-muted, #71809a);
    font-size: .85rem;
    justify-content: center;
}

body.dashboard-shell .content-section-title {
    color: var(--dashboard-ink, #18253b);
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: 0;
    padding-top: .25rem;
}

body.dashboard-shell .dashboard-notifications-page {
    margin: 0 auto;
    max-width: 58rem;
    padding: 1rem 0 3rem;
}

body.dashboard-shell .dashboard-page-heading {
    align-items: center;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    margin-bottom: 1.25rem;
}

body.dashboard-shell .dashboard-page-kicker {
    color: var(--dashboard-accent, #079ff2);
    display: block;
    font-size: .8125rem;
    font-weight: 800;
    letter-spacing: .08em;
    margin-bottom: .25rem;
    text-transform: uppercase;
}

body.dashboard-shell .dashboard-page-heading h1 {
    color: var(--dashboard-ink, #18253b);
    font-size: clamp(1.45rem, 2.4vw, 2rem);
    font-weight: 800;
    margin: 0;
}

body.dashboard-shell .dashboard-page-heading p {
    color: var(--dashboard-muted, #71809a);
    margin: .35rem 0 0;
}

body.dashboard-shell .dashboard-primary-button {
    align-items: center;
    background: var(--dashboard-accent, #079ff2);
    border: 0;
    border-radius: .8rem;
    color: #fff;
    display: inline-flex;
    font-weight: 700;
    gap: .4rem;
    min-height: 2.8rem;
    padding: .65rem 1rem;
}

body.dashboard-shell .dashboard-primary-button:hover,
body.dashboard-shell .dashboard-primary-button:focus-visible {
    background: var(--dashboard-accent-dark, #0879c7);
    color: #fff;
}

body.dashboard-shell .dashboard-primary-button:disabled {
    cursor: not-allowed;
    opacity: .55;
}

body.dashboard-shell .dashboard-notification-status {
    border-radius: .8rem;
    margin-bottom: 1rem;
    padding: .8rem 1rem;
}

body.dashboard-shell .dashboard-notification-status.loading,
body.dashboard-shell .dashboard-notification-status.info {
    background: var(--dashboard-accent-soft, #eaf6ff);
    color: var(--dashboard-accent-dark, #0879c7);
}

body.dashboard-shell .dashboard-notification-status.error {
    background: #fff0f2;
    color: #c0394f;
}

body.dashboard-shell .dashboard-notifications-list {
    display: grid;
    gap: .75rem;
}

body.dashboard-shell .dashboard-notification-card {
    align-items: center;
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1rem;
    box-shadow: var(--dashboard-shadow, 0 .7rem 2rem rgba(32, 55, 85, .08));
    color: var(--dashboard-ink, #18253b);
    cursor: pointer;
    display: flex;
    gap: .85rem;
    padding: 1rem;
    text-align: left;
    transition: border-color .18s ease, transform .18s ease, box-shadow .18s ease;
    width: 100%;
}

body.dashboard-shell .dashboard-notification-card:hover,
body.dashboard-shell .dashboard-notification-card:focus-visible {
    border-color: rgba(7, 159, 242, .45);
    box-shadow: 0 .9rem 2rem rgba(7, 159, 242, .12);
    outline: 0;
    transform: translateY(-1px);
}

body.dashboard-shell .dashboard-notification-card.is-unread {
    border-left: .25rem solid var(--dashboard-accent, #079ff2);
}

body.dashboard-shell .dashboard-notification-icon {
    align-items: center;
    background: var(--dashboard-accent-soft, #eaf6ff);
    border-radius: .8rem;
    color: var(--dashboard-accent, #079ff2);
    display: inline-flex;
    flex: 0 0 2.8rem;
    height: 2.8rem;
    justify-content: center;
    width: 2.8rem;
}

body.dashboard-shell .dashboard-notification-copy {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    min-width: 0;
}

body.dashboard-shell .dashboard-notification-copy strong {
    font-size: .95rem;
    font-weight: 800;
}

body.dashboard-shell .dashboard-notification-copy p {
    color: var(--dashboard-muted, #71809a);
    font-size: .84rem;
    line-height: 1.45;
    margin: .2rem 0;
}

body.dashboard-shell .dashboard-notification-copy small {
    color: #96a3b3;
    font-size: .8125rem;
    margin-top: .1rem;
}

body.dashboard-shell .dashboard-notification-state {
    align-self: flex-start;
    flex: 0 0 .5rem;
    height: .5rem;
    width: .5rem;
}

body.dashboard-shell .dashboard-notification-state span {
    background: var(--dashboard-accent, #079ff2);
    border-radius: 50%;
    display: block;
    height: .5rem;
    width: .5rem;
}

body.dashboard-shell .dashboard-empty-state {
    align-items: center;
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1rem;
    box-shadow: var(--dashboard-shadow, 0 .7rem 2rem rgba(32, 55, 85, .08));
    color: var(--dashboard-muted, #71809a);
    display: flex;
    flex-direction: column;
    gap: .4rem;
    padding: 3rem 1.25rem;
    text-align: center;
}

body.dashboard-shell .dashboard-empty-state .material-icons {
    color: var(--dashboard-accent, #079ff2);
    font-size: 2rem;
    margin-bottom: .35rem;
}

body.dashboard-shell .dashboard-empty-state strong {
    color: var(--dashboard-ink, #18253b);
}

@media only screen and (max-width: 68.75rem) {
    body.dashboard-shell .dashboard-header-search {
        width: min(27rem, 55vw);
    }
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-header-search {
        width: 100%;
    }

    body.dashboard-shell .dashboard-header-search .search-area {
        height: 3rem;
    }

    body.dashboard-shell .dashboard-search-results {
        max-height: 50vh;
    }

    body.dashboard-shell .dashboard-page-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    body.dashboard-shell .dashboard-primary-button {
        width: 100%;
        justify-content: center;
    }

    body.dashboard-shell .dashboard-notifications-page {
        padding-top: .75rem;
    }
}

/* Keep the sidebar control visually consistent with the header action buttons. */
body.dashboard-shell .header .header-content {
    align-items: center;
    gap: .75rem;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle {
    align-items: center;
    background: var(--dashboard-surface, #fff);
    border: 1px solid var(--dashboard-line, #e3eaf2);
    border-radius: 1rem;
    box-shadow: 0 .4rem 1rem rgba(32, 55, 85, .08);
    display: flex;
    flex: 0 0 3.35rem;
    height: 3.35rem;
    justify-content: center;
    padding: 0;
    position: static;
    right: auto;
    top: auto;
    transform: none;
    width: 3.35rem;
}

body.dashboard-shell .header .header-content > nav {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
}

body.dashboard-shell .header .header-content > nav .navbar-collapse {
    min-width: 0;
}

body.dashboard-shell .header .header-content > nav .header-left {
    flex: 1 1 auto;
    min-width: 0;
}

body.dashboard-shell .header .header-content > nav .header-right {
    flex: 0 0 auto;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle .hamburger,
body.dashboard-shell .header .header-content > .dashboard-nav-toggle .hamburger.is-active {
    align-items: center;
    display: flex;
    flex: 0 0 auto;
    height: 100%;
    justify-content: center;
    left: 0;
    width: 100%;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle .material-icons {
    color: var(--dashboard-ink, #18253b);
    font-size: 1.85rem;
    line-height: 1;
}

body.dashboard-shell .dlabnav .metismenu > li > a,
body.dashboard-shell .dlabnav .metismenu > li > a .nav-text,
body.dashboard-shell .dlabnav .metismenu > li > a > i {
    color: #000 !important;
}

body.dashboard-shell .dlabnav .metismenu > li > a:hover,
body.dashboard-shell .dlabnav .metismenu > li > a:focus-visible {
    color: var(--dashboard-ink, #18253b) !important;
}

body.dashboard-shell .dlabnav .metismenu > li.mm-active > a {
    background: var(--dashboard-ink, #18253b) !important;
    color: #fff !important;
}

body.dashboard-shell .dlabnav .metismenu > li.mm-active > a .nav-text,
body.dashboard-shell .dlabnav .metismenu > li.mm-active > a > i {
    color: #fff !important;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .header .header-content {
        gap: .5rem;
    }

    body.dashboard-shell .header .header-content > .dashboard-nav-toggle {
        flex-basis: 3.15rem;
        height: 3.15rem;
        width: 3.15rem;
    }

    body.dashboard-shell .header .header-content > .dashboard-nav-toggle .material-icons {
        font-size: 1.75rem;
    }
}

/* Final cascade: every dashboard tab bar stays one line and scrolls sideways. */
body.dashboard-shell .nav-tabs {
    align-items: stretch;
    display: flex !important;
    flex-wrap: nowrap !important;
    max-width: 100%;
    overflow-x: auto !important;
    overflow-y: hidden;
    overscroll-behavior-x: contain;
    scrollbar-width: none;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap !important;
}

body.dashboard-shell .nav-tabs::-webkit-scrollbar {
    display: none;
}

body.dashboard-shell .nav-tabs > .nav-item {
    flex: 1 0 0 !important;
    min-width: max-content !important;
}

body.dashboard-shell .nav-tabs > .nav-item > .nav-link {
    flex: 1 0 auto !important;
    max-width: none !important;
    min-width: max-content !important;
    white-space: nowrap !important;
    width: auto !important;
}

/* -------------------------------------------------------------------------
 * Fixed dashboard tabs and navigation stacking
 * -------------------------------------------------------------------------
 * The dashboard header is fixed app chrome. Primary module tabs therefore
 * need their own fixed layer below it; otherwise they scroll away with the
 * content. The content receives an equal top reserve so the first form/card
 * remains visible below the tab strip. Keep the navigation above the tabs so
 * an opened sidebar can cover the tab strip on small screens.
 */
body.dashboard-shell.dashboard-tabs {
    --dashboard-tabbar-height: 4.35rem;
}

body.dashboard-shell.dashboard-tabs .dashboard-content-body > .container-fluid {
    padding-top: var(--dashboard-tabbar-height) !important;
}

body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs,
body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs {
    left: var(--dz-sidebar-width, 16.5rem) !important;
    min-width: 0 !important;
    max-width: none !important;
    position: fixed !important;
    right: 0 !important;
    top: var(--dz-header-height, 5rem) !important;
    width: auto !important;
    z-index: 10 !important;
}

body.dashboard-shell .nav-header {
    z-index: 31 !important;
}

body.dashboard-shell .header {
    z-index: 30 !important;
}

body.dashboard-shell .dlabnav {
    z-index: 20 !important;
}

@media only screen and (min-width: 48rem) and (max-width: 74.9375rem) {
    body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs,
    body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs {
        left: 5rem !important;
    }
}

@media only screen and (max-width: 47.9375rem) {
    body.dashboard-shell.dashboard-tabs {
        --dashboard-tabbar-height: 4.05rem;
    }

    body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs,
    body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs {
        left: 0 !important;
    }
}

/* On narrow screens, dashboard module tabs follow the mobile app pattern:
 * one line with native horizontal touch scrolling when the labels overflow. */
@media only screen and (max-width: 47.9375rem) {
    body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs,
    body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs {
        flex-wrap: nowrap !important;
        justify-content: flex-start !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        overscroll-behavior-x: contain;
        scroll-behavior: smooth;
        scrollbar-width: none;
        touch-action: pan-x;
        -webkit-overflow-scrolling: touch;
        white-space: nowrap !important;
    }

    body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs::-webkit-scrollbar,
    body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs::-webkit-scrollbar {
        display: none;
    }

    body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs > .nav-item,
    body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs > .nav-item {
        flex: 1 0 0 !important;
        min-width: max-content !important;
    }

    body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs > .nav-item > .nav-link,
    body.dashboard-shell.dashboard-tabs .billing-page .nav-tabs > .nav-item > .nav-link {
        flex: 1 0 auto !important;
        max-width: none !important;
        min-width: max-content !important;
        width: auto !important;
        white-space: nowrap !important;
    }
}

/* The Content page starts with an icon-only back control. Keep its tap target
 * compact instead of letting the justified tab rule stretch it across a
 * quarter of the selector row. */
body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified > .dashboard-tab-back-item {
    flex: 0 0 auto !important;
    min-width: 0 !important;
}

body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified > .dashboard-tab-back-item > .dashboard-tab-back {
    box-sizing: border-box;
    flex: 0 0 auto !important;
    height: 3.65rem;
    max-width: none !important;
    min-width: 0 !important;
    min-height: 3.65rem;
    padding-left: .9rem;
    padding-right: .9rem;
    width: auto !important;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell.dashboard-tabs .custom-tab-1 > .nav-tabs.nav-justified > .dashboard-tab-back-item > .dashboard-tab-back {
        height: 3.35rem;
        min-height: 3.35rem;
    }
}
.pezani-dropzone {
    border: 2px dashed #cfd9e8;
    border-radius: 14px;
    min-height: 128px;
    padding: 20px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    text-align: center;
    cursor: pointer;
    background: #f8fafc;
    transition: border-color .2s ease, background-color .2s ease;
}

.pezani-dropzone:hover,
.pezani-dropzone.is-dragover {
    border-color: #159ff0;
    background: #eef8ff;
}

.pezani-dropzone__prompt {
    flex: 1 1 100%;
    min-width: 0;
    color: #6f7f99;
}

.pezani-dropzone__prompt .material-icons {
    display: block;
    font-size: 32px;
    margin-bottom: 6px;
    color: #159ff0;
}

.pezani-dropzone__previews {
    display: flex;
    flex: 1 1 100%;
    flex-wrap: nowrap;
    gap: 12px;
    min-width: 0;
    width: 100%;
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    margin: 12px 0 0;
    padding: 2px 2px 6px;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-x: contain;
    scroll-snap-type: x proximity;
    scrollbar-width: thin;
}

.pezani-dropzone__item {
    position: relative;
    flex: 0 0 150px;
    width: 150px;
    min-width: 150px;
    padding: 8px;
    border: 1px solid #dbe4ef;
    border-radius: 12px;
    background: #fff;
    scroll-snap-align: start;
    cursor: grab;
}

.pezani-dropzone__item:active {
    cursor: grabbing;
}

.pezani-dropzone__item.is-dragging {
    opacity: .55;
}

.pezani-dropzone__drag-handle {
    display: block;
    margin: -3px 0 3px;
    color: #8390a4;
    font-size: 16px;
    line-height: 1;
    text-align: center;
}

.pezani-dropzone__thumb {
    height: 82px;
    width: 100%;
    padding: 0;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    border-radius: 8px;
    background: #eef2f7;
    color: #159ff0;
    cursor: zoom-in;
}

.pezani-dropzone__preview-button {
    appearance: none;
    -webkit-appearance: none;
}

.pezani-dropzone__preview-button:focus-visible {
    outline: 3px solid rgba(21, 159, 240, .38);
    outline-offset: 2px;
}

.pezani-dropzone__thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.pezani-dropzone__thumb .material-icons {
    font-size: 34px;
}

.pezani-dropzone__details {
    display: block;
    margin-top: 7px;
    overflow: hidden;
    color: #1b2a41;
    font-size: .8125rem;
    line-height: 1.3;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.pezani-dropzone__remove {
    position: absolute;
    top: 3px;
    right: 3px;
    width: 25px;
    height: 25px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #fff;
    background: #ef476f;
    line-height: 25px;
    cursor: pointer;
}

.pezani-dropzone__remove .material-icons {
    font-size: 16px;
    line-height: 25px;
}

.pezani-dropzone.is-processing {
    cursor: progress;
    opacity: .9;
}

.pezani-dropzone-viewer[hidden] {
    display: none;
}

.pezani-dropzone-viewer {
    position: fixed;
    inset: 0;
    z-index: 2000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.pezani-dropzone-viewer__backdrop {
    position: absolute;
    inset: 0;
    background: rgba(15, 27, 48, .78);
}

.pezani-dropzone-viewer__dialog {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .75rem;
    width: min(92vw, 900px);
    max-height: 92vh;
    padding: 1rem;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 24px 70px rgba(15, 27, 48, .3);
}

.pezani-dropzone-viewer__close {
    position: absolute;
    top: .5rem;
    right: .5rem;
    z-index: 2;
    width: 2.25rem;
    height: 2.25rem;
    padding: 0;
    border: 0;
    border-radius: 50%;
    color: #1b2a41;
    background: rgba(255, 255, 255, .92);
    cursor: pointer;
}

.pezani-dropzone-viewer__image {
    display: block;
    max-width: 100%;
    max-height: calc(92vh - 4.5rem);
    object-fit: contain;
}

.pezani-dropzone-viewer__caption {
    max-width: 100%;
    overflow: hidden;
    color: #1b2a41;
    font-size: .9rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.pezani-dropzone-viewer-open {
    overflow: hidden;
}

/* Final header cascade: keep the title and the two primary controls aligned
 * after the legacy template rules above have been loaded. */
body.dashboard-shell .header .header-content > .header-page-title {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    margin: 0 .2rem 0 .1rem;
    min-width: 0;
}

body.dashboard-shell .header-page-title h1 {
    color: #fff;
    font-family: inherit;
    font-size: 1.4rem;
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.2;
    margin: 0;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.dashboard-shell .header .header-content > nav {
    flex: 0 0 auto !important;
    min-width: 0;
    width: auto !important;
}

body.dashboard-shell .header .header-content > nav .navbar-collapse {
    display: flex !important;
    flex: 0 0 auto;
    min-width: 0;
}

/* The menu is in the header flow now, so do not retain the legacy inset that
 * was reserved for the old absolutely positioned menu control. */
body.dashboard-shell .header .header-content {
    gap: .75rem;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

@media only screen and (max-width: 47.9375rem) {
    body.dashboard-shell .header .header-content {
        gap: .5rem;
        padding-left: 1rem !important;
        padding-right: .75rem !important;
    }

    /* On phones the title takes the menu's former position and the two
     * tappable actions stay together at the far edge of the header. */
    body.dashboard-shell .header .header-content > .header-page-title {
        margin-left: 0;
        order: 1;
    }

    body.dashboard-shell .header .header-content > nav {
        order: 2;
    }

    body.dashboard-shell .header .header-content > .dashboard-nav-toggle {
        order: 3;
    }
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle,
body.dashboard-shell .dashboard-header-action .nav-link {
    align-items: center;
    box-sizing: border-box;
    display: flex;
    flex: 0 0 3.65rem;
    height: 3.65rem !important;
    justify-content: center;
    min-height: 3.65rem;
    min-width: 3.65rem;
    padding: 0 !important;
    width: 3.65rem !important;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle {
    flex-basis: 3.65rem;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle .material-icons,
body.dashboard-shell .dashboard-header-action .material-icons {
    font-size: 2.05rem !important;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .header .header-content > .dashboard-nav-toggle,
    body.dashboard-shell .dashboard-header-action .nav-link {
        flex-basis: 3.5rem;
        height: 3.5rem !important;
        min-height: 3.5rem;
        min-width: 3.5rem;
        width: 3.5rem !important;
    }

    body.dashboard-shell .header .header-content > .dashboard-nav-toggle {
        flex-basis: 3.5rem;
    }

    body.dashboard-shell .header .header-content > .dashboard-nav-toggle .material-icons,
    body.dashboard-shell .dashboard-header-action .material-icons {
        font-size: 1.95rem !important;
    }

    body.dashboard-shell .header-page-title h1 {
        font-size: 1.15rem;
    }
}

/* Native-style shell chrome with a dark, high-contrast toolbar. Keep this at
 * the end of the dashboard stylesheet so legacy theme rules cannot flatten it. */
body.dashboard-shell .header {
    background: #18253b !important;
    border-bottom: 1px solid rgba(255, 255, 255, .16) !important;
    box-shadow: 0 .45rem 1.25rem rgba(8, 15, 29, .28);
}

body.dashboard-shell .header .header-content {
    position: relative;
    z-index: 1;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle,
body.dashboard-shell .dashboard-header-action .nav-link {
    transition: background-color .2s ease, border-color .2s ease,
        box-shadow .2s ease, transform .2s ease;
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle:hover,
body.dashboard-shell .header .header-content > .dashboard-nav-toggle:focus-visible,
body.dashboard-shell .dashboard-header-action .nav-link:hover,
body.dashboard-shell .dashboard-header-action .nav-link:focus-visible {
    border-color: #c4d2df;
    box-shadow: 0 .45rem 1rem rgba(24, 37, 59, .14);
    transform: translateY(-1px);
}

body.dashboard-shell .header .header-content > .dashboard-nav-toggle:active,
body.dashboard-shell .dashboard-header-action .nav-link:active {
    transform: scale(.96);
}

/* A listing identifier is a first-class part of the business home, so keep it
 * readable at a glance while giving the sharing actions comfortable targets. */
body.dashboard-shell .dashboard-home-business-number {
    align-items: center;
    background: #ffffff;
    border: 1px solid #dce5ed;
    border-radius: 1rem;
    box-shadow: 0 .65rem 1.5rem rgba(24, 37, 59, .07);
    display: grid;
    gap: 1.25rem;
    grid-template-columns: minmax(0, 1.4fr) auto minmax(15rem, auto);
    margin: 1.25rem 0 1.5rem;
    padding: 1.25rem 1.5rem;
}

body.dashboard-shell .dashboard-home-business-number-kicker {
    color: #2477bd;
    display: block;
    font-size: .8125rem;
    font-weight: 800;
    letter-spacing: .08em;
    margin-bottom: .3rem;
    text-transform: uppercase;
}

body.dashboard-shell .dashboard-home-business-number h2 {
    color: #18253b;
    font-size: 1.1rem;
    font-weight: 800;
    margin: 0 0 .25rem;
}

body.dashboard-shell .dashboard-home-business-number p {
    color: #687b93;
    font-size: .88rem;
    line-height: 1.45;
    margin: 0;
}

body.dashboard-shell .dashboard-home-business-number-value-wrap {
    text-align: center;
}

body.dashboard-shell .dashboard-home-business-number-value {
    color: #18253b;
    display: block;
    font-size: clamp(1.15rem, 2vw, 1.55rem);
    letter-spacing: .08em;
    line-height: 1.2;
    white-space: nowrap;
}

body.dashboard-shell .dashboard-home-business-number-value-wrap small {
    color: #8493a8;
    display: block;
    font-size: .8125rem;
    margin-top: .35rem;
}

body.dashboard-shell .dashboard-home-business-number-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: .6rem;
    justify-content: flex-end;
}

body.dashboard-shell .dashboard-home-business-number-action {
    align-items: center;
    background: #ffffff;
    border: 1px solid #cbd8e5;
    border-radius: .7rem;
    color: #18253b;
    display: inline-flex;
    font-size: .85rem;
    font-weight: 700;
    gap: .35rem;
    justify-content: center;
    min-height: 2.75rem;
    padding: .55rem .85rem;
    transition: background-color .2s ease, border-color .2s ease, transform .2s ease;
}

body.dashboard-shell .dashboard-home-business-number-action:hover,
body.dashboard-shell .dashboard-home-business-number-action:focus-visible {
    border-color: #8fa8c0;
    transform: translateY(-1px);
}

body.dashboard-shell .dashboard-home-business-number-action--primary {
    background: #18253b;
    border-color: #18253b;
    color: #ffffff;
}

body.dashboard-shell .dashboard-home-business-number-action .material-icons {
    font-size: 1.1rem;
}

body.dashboard-shell .dashboard-home-business-number-feedback {
    color: #198754;
    font-size: .8125rem;
    min-width: 7rem;
}

@media only screen and (max-width: 61.9375rem) {
    body.dashboard-shell .dashboard-home-business-number {
        grid-template-columns: 1fr auto;
    }

    body.dashboard-shell .dashboard-home-business-number-value-wrap {
        text-align: right;
    }

    body.dashboard-shell .dashboard-home-business-number-actions {
        grid-column: 1 / -1;
        justify-content: flex-start;
    }
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-home-business-number {
        align-items: flex-start;
        display: block;
        padding: 1rem;
    }

    body.dashboard-shell .dashboard-home-business-number-value-wrap {
        margin: 1rem 0;
        text-align: left;
    }

    body.dashboard-shell .dashboard-home-business-number-actions {
        justify-content: flex-start;
    }

    body.dashboard-shell .dashboard-home-business-number-action {
        flex: 1 1 8rem;
    }

    body.dashboard-shell .dashboard-home-business-number-feedback {
        flex-basis: 100%;
    }
}

/* Align the overview's outer edges with the fixed header content. */
body.dashboard-shell.dashboard-overview .dashboard-content-body > .container-fluid {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
}

body.dashboard-shell.dashboard-overview .dashboard-home {
    padding-left: 0;
    padding-right: 0;
}

@media only screen and (max-width: 47.9375rem) {
    body.dashboard-shell.dashboard-overview .dashboard-content-body > .container-fluid {
        padding-left: 1rem !important;
        padding-right: .75rem !important;
    }
}

/* Inactive dashboard tabs are navigation labels, not outlined buttons. Keep
 * the active tab treatment and the Content back control unchanged. */
body.dashboard-shell .nav-tabs > .nav-item > .nav-link:not(.active):not(.dashboard-tab-back),
body.dashboard-shell .nav-tabs > .nav-item > .nav-link:not(.active):not(.dashboard-tab-back):hover,
body.dashboard-shell .nav-tabs > .nav-item > .nav-link:not(.active):not(.dashboard-tab-back):focus,
body.dashboard-shell .nav-tabs > .nav-item > .nav-link:not(.active):not(.dashboard-tab-back):focus-visible {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 3px solid transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}

body.dashboard-shell .nav-tabs > .nav-item > .nav-link:not(.active):not(.dashboard-tab-back):focus-visible {
    color: var(--dashboard-accent-dark, #0879c7) !important;
    outline: 0;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: .2rem;
}

/* -------------------------------------------------------------------------
 * Readable Dashboard type scale
 * -------------------------------------------------------------------------
 * Keep normal content at a comfortable reading size. Compact metadata and
 * status labels may remain smaller, but never fall into 9- or 10px text.
 */
body.dashboard-shell {
    font-size: 1rem;
    line-height: 1.5;
}

body.dashboard-shell .dashboard-content-body p,
body.dashboard-shell .dashboard-content-body li,
body.dashboard-shell .dashboard-content-body label,
body.dashboard-shell .dashboard-content-body td,
body.dashboard-shell .dashboard-content-body th,
body.dashboard-shell .dashboard-content-body a,
body.dashboard-shell .dashboard-content-body .form-text {
    font-size: .9375rem !important;
    line-height: 1.5;
}

body.dashboard-shell .dashboard-content-body button {
    font-size: 1rem !important;
    line-height: 1.4;
}

body.dashboard-shell .dashboard-content-body input,
body.dashboard-shell .dashboard-content-body select,
body.dashboard-shell .dashboard-content-body textarea {
    font-size: 1rem !important;
    line-height: 1.4;
}

body.dashboard-shell .dashboard-content-body small,
body.dashboard-shell .dashboard-content-body [class*="-kicker"],
body.dashboard-shell .dashboard-content-body [class*="-meta"],
body.dashboard-shell .dashboard-content-body [class*="-status"],
body.dashboard-shell .dashboard-content-body [class*="-count"],
body.dashboard-shell .dashboard-content-body [class*="-badge"] {
    font-size: .8125rem !important;
    line-height: 1.4;
}

body.dashboard-shell .dashboard-content-body dt {
    font-size: .8125rem !important;
    line-height: 1.4;
}

body.dashboard-shell .dashboard-content-body dd {
    font-size: .9375rem !important;
    line-height: 1.5;
}

body.dashboard-shell .dashboard-content-body h1,
body.dashboard-shell .dashboard-content-body h2,
body.dashboard-shell .dashboard-content-body h3,
body.dashboard-shell .dashboard-content-body h4,
body.dashboard-shell .dashboard-content-body h5,
body.dashboard-shell .dashboard-content-body h6 {
    letter-spacing: 0;
}

body.dashboard-shell .dashboard-content-body h1 {
    font-size: 2rem !important;
    line-height: 1.2;
}

body.dashboard-shell .dashboard-content-body h2 {
    font-size: 1.5rem !important;
    line-height: 1.25;
}

body.dashboard-shell .dashboard-content-body h3 {
    font-size: 1.25rem !important;
    line-height: 1.3;
}

body.dashboard-shell .dashboard-content-body h4 {
    font-size: 1.125rem !important;
    line-height: 1.35;
}

body.dashboard-shell .dashboard-content-body h5,
body.dashboard-shell .dashboard-content-body h6 {
    font-size: 1rem !important;
    line-height: 1.4;
}

/* Overview-specific hierarchy. These rules also correct the small-screen
 * overrides that previously reduced important labels below a readable size.
 */
body.dashboard-shell .dashboard-home-intro h1,
body.dashboard-shell .dashboard-page-heading h1 {
    font-size: 2rem !important;
    letter-spacing: 0;
}

body.dashboard-shell .dashboard-home-kicker,
body.dashboard-shell .dashboard-home-business-number-kicker,
body.dashboard-shell .dashboard-page-kicker {
    font-size: .8125rem !important;
    letter-spacing: 0;
}

body.dashboard-shell .dashboard-home-intro p,
body.dashboard-shell .dashboard-page-heading p {
    font-size: 1rem !important;
}

body.dashboard-shell .dashboard-home-live {
    font-size: .875rem !important;
}

body.dashboard-shell .dashboard-shortcut-copy strong {
    font-size: 1rem !important;
}

body.dashboard-shell .dashboard-shortcut-copy small {
    font-size: .875rem !important;
}

body.dashboard-shell .dashboard-home-section-heading h2,
body.dashboard-shell .dashboard-section-heading h2 {
    font-size: 1.25rem !important;
}

body.dashboard-shell .dashboard-text-link,
body.dashboard-shell .dashboard-home-view-more {
    font-size: .9375rem !important;
}

body.dashboard-shell .dashboard-home-tabs .nav-link {
    font-size: 1rem !important;
}

body.dashboard-shell .dashboard-home-tab-count,
body.dashboard-shell .dashboard-request-status,
body.dashboard-shell .dashboard-request-card-footer,
body.dashboard-shell .dashboard-home-request-footline {
    font-size: .8125rem !important;
}

body.dashboard-shell .dashboard-home-request h3 {
    font-size: 1rem !important;
}

body.dashboard-shell .dashboard-home-request-meta {
    font-size: .875rem !important;
}

body.dashboard-shell .dashboard-home-request-preview {
    font-size: .9375rem !important;
}

body.dashboard-shell .dashboard-home-empty strong {
    font-size: .9375rem !important;
}

body.dashboard-shell .dashboard-home-empty a {
    font-size: .875rem !important;
}

@media only screen and (max-width: 35.9375rem) {
    body.dashboard-shell .dashboard-home-intro h1,
    body.dashboard-shell .dashboard-page-heading h1 {
        font-size: 1.75rem !important;
    }

    body.dashboard-shell .dashboard-home-intro p {
        font-size: 1rem !important;
    }

    body.dashboard-shell .dashboard-shortcut-copy strong {
        font-size: .9375rem !important;
    }

    body.dashboard-shell .dashboard-request-status {
        font-size: .8125rem !important;
    }
}
