@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: url('/coop-assets/fonts/IBM_Plex_Sans_Arabic/ibmplexsansarabic-regular.woff2') format('woff2');
}

@font-face {
    font-family: 'IBM Plex Sans Arabic';
    font-style: normal;
    font-weight: 600;
    font-display: swap;
    src: url('/coop-assets/fonts/IBM_Plex_Sans_Arabic/ibmplexsansarabic-semibold.woff2') format('woff2');
}

:root {
    --dashboard-green: #1b8354;
    --dashboard-green-dark: #14573a;
    --dashboard-green-deep: #104631;
    --dashboard-green-soft: #edf8f1;
    --dashboard-navy: #183b56;
    --dashboard-blue: #2673a5;
    --dashboard-gold: #b78103;
    --dashboard-red: #b42318;
    --dashboard-ink: #172321;
    --dashboard-muted: #60706b;
    --dashboard-border: #dfe8e3;
    --dashboard-surface: #ffffff;
    --dashboard-page: #f5f8f6;
    --dashboard-shadow: 0 12px 35px rgba(20, 87, 58, 0.08);
}

body {
    background: var(--dashboard-page);
    color: var(--dashboard-ink);
    font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif;
}

a,
button,
input,
select,
textarea {
    font-family: inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
    outline: 3px solid rgba(27, 131, 84, 0.28) !important;
    outline-offset: 2px;
}

.layout-menu {
    border-left: 1px solid var(--dashboard-border);
    box-shadow: -8px 0 30px rgba(23, 35, 33, 0.04);
}

.layout-menu .app-brand {
    height: auto;
    min-height: 74px;
    margin: 0 !important;
    padding: 18px 20px 12px;
}

.layout-menu .app-brand-link {
    min-width: 0;
}

.layout-menu .app-brand-logo img {
    height: 38px !important;
    max-width: 112px;
}

.layout-menu .app-brand-text {
    max-width: 118px;
    overflow: hidden;
    color: var(--dashboard-green-deep);
    font-size: 0.9rem;
    line-height: 1.35;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar-workspace {
    display: flex;
    flex-direction: column;
    gap: 3px;
    margin: 4px 16px 12px;
    padding: 11px 13px;
    border: 1px solid #d9eee1;
    border-radius: 12px;
    background: var(--dashboard-green-soft);
}

.sidebar-workspace span {
    color: var(--dashboard-muted);
    font-size: 0.71rem;
}

.sidebar-workspace strong {
    overflow: hidden;
    color: var(--dashboard-green-deep);
    font-size: 0.82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sidebar-search {
    position: relative;
    display: flex;
    align-items: center;
    margin: 0 16px 10px;
}

.sidebar-search > i {
    position: absolute;
    right: 12px;
    z-index: 1;
    color: #77857f;
    font-size: 1rem;
    pointer-events: none;
}

.sidebar-search input {
    width: 100%;
    height: 40px;
    padding: 0 36px 0 34px;
    border: 1px solid var(--dashboard-border);
    border-radius: 11px;
    background: #fafcfb;
    color: var(--dashboard-ink);
    font-size: 0.8rem;
    transition: border-color 160ms ease, box-shadow 160ms ease, background 160ms ease;
}

.sidebar-search input:focus {
    border-color: var(--dashboard-green);
    background: #fff;
    box-shadow: 0 0 0 3px rgba(27, 131, 84, 0.1);
    outline: 0;
}

.sidebar-search__clear {
    position: absolute;
    left: 6px;
    display: grid;
    width: 28px;
    height: 28px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: 8px;
    background: transparent;
    color: var(--dashboard-muted);
}

.sidebar-search-empty {
    margin: 16px;
    color: var(--dashboard-muted);
    font-size: 0.8rem;
    text-align: center;
}

.layout-menu .menu-inner {
    padding-inline: 10px;
}

.layout-menu .menu-item[hidden] {
    display: none !important;
}

.layout-menu .menu-link {
    min-height: 43px;
    margin-block: 2px;
    border-radius: 10px;
    color: #43514d;
    font-size: 0.88rem;
}

html[dir='rtl'] .layout-menu.bg-menu-theme.menu-vertical.menu .menu-item.active > .menu-link:not(.menu-toggle),
html[dir='rtl'] .layout-menu.bg-menu-theme.menu-vertical.menu .menu-item.active > .menu-link:not(.menu-toggle):hover {
    background: var(--dashboard-green) !important;
    background-image: none !important;
    box-shadow: 0 7px 18px rgba(27, 131, 84, 0.2) !important;
    color: #fff !important;
}

.layout-menu .menu-item.active > .menu-link:not(.menu-toggle) i,
.layout-menu .menu-item.active > .menu-link:not(.menu-toggle) div {
    color: #fff !important;
}

.layout-menu .menu-item.open > .menu-link.menu-toggle {
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green-dark);
}

.layout-menu .menu-sub .menu-link {
    min-height: 39px;
    font-size: 0.82rem;
}

.layout-navbar.navbar-detached {
    min-height: 68px;
    border: 1px solid rgba(223, 232, 227, 0.9);
    border-radius: 14px;
    box-shadow: 0 8px 25px rgba(23, 35, 33, 0.06);
}

.navbar-workspace {
    align-items: center;
    gap: 10px;
}

.navbar-workspace__icon {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 11px;
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green);
    font-size: 1.2rem;
}

.navbar-workspace > span:last-child {
    display: flex;
    flex-direction: column;
}

.navbar-workspace small {
    color: var(--dashboard-muted);
    font-size: 0.68rem;
}

.navbar-workspace strong {
    color: var(--dashboard-ink);
    font-size: 0.84rem;
}

.navbar-public-link {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-inline: 4px;
    color: var(--dashboard-green-dark) !important;
    font-size: 0.82rem;
    font-weight: 600;
}

.dashboard-notification-bell {
    position: relative;
    display: grid !important;
    width: 42px;
    height: 42px;
    margin-inline: 3px;
    place-items: center;
    border-radius: 11px;
    color: var(--dashboard-ink) !important;
    font-size: 1.25rem;
}

.dashboard-notification-bell:hover {
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green) !important;
}

.dashboard-account-menu {
    width: min(290px, calc(100vw - 24px));
    padding: 8px;
    border: 1px solid var(--dashboard-border);
    border-radius: 14px;
    box-shadow: var(--dashboard-shadow);
}

.dashboard-account-menu__header {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px;
}

.dashboard-account-menu__header > span:last-child {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.dashboard-account-menu__header strong,
.dashboard-account-menu__header small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dashboard-account-menu__header small {
    color: var(--dashboard-muted);
}

.dashboard-account-menu__roles {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    padding: 0 10px 6px;
}

.dashboard-account-menu__roles span {
    padding: 4px 8px;
    border-radius: 999px;
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green-dark);
    font-size: 0.7rem;
    font-weight: 600;
}

.dashboard-account-menu .dropdown-item {
    border-radius: 9px;
}

.dashboard-account-menu__logout {
    color: var(--dashboard-red) !important;
}

.card {
    border: 1px solid var(--dashboard-border);
    border-radius: 14px;
    box-shadow: 0 7px 25px rgba(23, 35, 33, 0.045);
}

.btn {
    border-radius: 10px;
    font-weight: 600;
}

.btn-primary {
    border-color: var(--dashboard-green) !important;
    background: var(--dashboard-green) !important;
    box-shadow: none !important;
}

.btn-primary:hover,
.btn-primary:focus {
    border-color: var(--dashboard-green-dark) !important;
    background: var(--dashboard-green-dark) !important;
}

.btn-outline-primary,
.btn-label-primary {
    border-color: #b9d8c7 !important;
    background: var(--dashboard-green-soft) !important;
    color: var(--dashboard-green-dark) !important;
}

.table thead th {
    border-color: var(--dashboard-border);
    background: #f2f7f4;
    color: #455550;
    font-size: 0.78rem;
    font-weight: 600;
}

.dashboard-page {
    padding-top: 24px;
    padding-bottom: 42px;
}

.dashboard-welcome {
    position: relative;
    display: grid;
    min-height: 285px;
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 28px;
    overflow: hidden;
    padding: clamp(28px, 4vw, 48px);
    border-radius: 22px;
    background: var(--dashboard-green-deep);
    box-shadow: 0 20px 50px rgba(16, 70, 49, 0.18);
    color: #fff;
}

.dashboard-welcome::after {
    position: absolute;
    bottom: -95px;
    left: -65px;
    width: 260px;
    height: 260px;
    border: 42px solid rgba(255, 255, 255, 0.055);
    border-radius: 50%;
    content: '';
    pointer-events: none;
}

.dashboard-welcome__content {
    position: relative;
    z-index: 1;
    max-width: 760px;
}

.dashboard-welcome__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-bottom: 22px;
    padding: 7px 11px;
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #ddf6e7;
    font-size: 0.76rem;
    font-weight: 600;
}

.dashboard-welcome__greeting {
    margin-bottom: 4px;
    color: #c9ead6;
    font-size: 0.94rem;
}

.dashboard-welcome h1 {
    max-width: 720px;
    margin-bottom: 10px;
    color: #fff;
    font-size: clamp(1.55rem, 3vw, 2.35rem);
    font-weight: 600;
    line-height: 1.35;
}

.dashboard-welcome__subtitle {
    max-width: 680px;
    margin-bottom: 18px;
    color: #d5e9dd;
    font-size: 0.96rem;
    line-height: 1.8;
}

.dashboard-welcome__roles {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-bottom: 22px;
}

.dashboard-welcome__roles span {
    padding: 5px 9px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.11);
    color: #fff;
    font-size: 0.72rem;
}

.dashboard-welcome__primary-action {
    display: inline-grid;
    grid-template-columns: auto auto auto;
    align-items: center;
    gap: 8px;
    padding: 11px 14px;
    border-radius: 11px;
    background: #fff;
    color: var(--dashboard-green-deep) !important;
    transition: transform 160ms ease, box-shadow 160ms ease;
}

.dashboard-welcome__primary-action span {
    color: var(--dashboard-muted);
    font-size: 0.72rem;
}

.dashboard-welcome__primary-action:hover {
    box-shadow: 0 12px 22px rgba(0, 0, 0, 0.16);
    transform: translateY(-2px);
}

.dashboard-welcome__summary {
    position: relative;
    z-index: 1;
    display: grid;
    align-content: center;
    gap: 10px;
    padding: 20px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 17px;
    background: rgba(255, 255, 255, 0.075);
}

.dashboard-welcome__mark {
    display: grid;
    width: 54px;
    height: 54px;
    margin-bottom: 7px;
    place-items: center;
    border-radius: 15px;
    background: #fff;
    color: var(--dashboard-green);
    font-size: 1.65rem;
}

.dashboard-welcome__summary-item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 11px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.dashboard-welcome__summary-item span {
    color: #d5e9dd;
    font-size: 0.77rem;
}

.dashboard-welcome__summary-item strong {
    color: #fff;
    font-size: 1.35rem;
}

.dashboard-page__overview {
    --bs-gutter-y: 0 !important;
    margin-top: 28px !important;
    row-gap: 24px;
}

.dashboard-page__overview > * {
    margin-top: 0 !important;
}

.dashboard-page__partnership-actions {
    margin-top: 24px;
    margin-bottom: 24px;
}

.dashboard-section {
    height: 100%;
    padding: clamp(20px, 3vw, 28px);
    border: 1px solid var(--dashboard-border);
    border-radius: 18px;
    background: var(--dashboard-surface);
    box-shadow: var(--dashboard-shadow);
}

.dashboard-section--spaced {
    height: auto;
    margin-top: 24px;
}

.dashboard-section__header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
}

.dashboard-section__header--with-action {
    align-items: center;
}

.dashboard-section__eyebrow {
    display: block;
    margin-bottom: 3px;
    color: var(--dashboard-green);
    font-size: 0.72rem;
    font-weight: 600;
}

.dashboard-section h2,
.dashboard-notifications h2 {
    margin: 0;
    color: var(--dashboard-ink);
    font-size: 1.14rem;
    font-weight: 600;
}

.dashboard-section__header p {
    margin: 5px 0 0;
    color: var(--dashboard-muted);
    font-size: 0.82rem;
    line-height: 1.6;
}

.dashboard-actions-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 11px;
}

.dashboard-action {
    position: relative;
    display: grid;
    min-height: 104px;
    grid-template-columns: 45px minmax(0, 1fr) auto;
    align-items: center;
    gap: 12px;
    padding: 15px;
    overflow: hidden;
    border: 1px solid var(--dashboard-border);
    border-radius: 13px;
    background: #fff;
    color: var(--dashboard-ink) !important;
    transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.dashboard-action:hover {
    border-color: #b7d8c5;
    box-shadow: 0 10px 24px rgba(20, 87, 58, 0.09);
    transform: translateY(-2px);
}

.dashboard-action__icon {
    display: grid;
    width: 45px;
    height: 45px;
    place-items: center;
    border-radius: 12px;
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green);
    font-size: 1.35rem;
}

.dashboard-action--navy .dashboard-action__icon { background: #edf3f7; color: var(--dashboard-navy); }
.dashboard-action--blue .dashboard-action__icon { background: #edf7fb; color: var(--dashboard-blue); }
.dashboard-action--gold .dashboard-action__icon { background: #fff7df; color: var(--dashboard-gold); }

.dashboard-action__content {
    display: flex;
    min-width: 0;
    flex-direction: column;
    gap: 4px;
}

.dashboard-action__content strong {
    font-size: 0.86rem;
}

.dashboard-action__content small {
    overflow: hidden;
    color: var(--dashboard-muted);
    font-size: 0.73rem;
    line-height: 1.45;
    text-overflow: ellipsis;
}

.dashboard-action__arrow {
    color: #8c9a95;
}

.dashboard-notifications {
    height: 100%;
    overflow: hidden;
    border: 1px solid var(--dashboard-border);
    border-radius: 18px;
    background: var(--dashboard-surface);
    box-shadow: var(--dashboard-shadow);
}

.dashboard-notifications__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 22px 22px 16px;
}

.dashboard-notifications__header > div {
    display: flex;
    flex-direction: column;
}

.dashboard-notifications__header > div > span {
    color: var(--dashboard-green);
    font-size: 0.7rem;
    font-weight: 600;
}

.dashboard-notifications__count {
    display: grid;
    min-width: 34px;
    height: 34px;
    padding-inline: 8px;
    place-items: center;
    border-radius: 10px;
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green-dark);
    font-weight: 600;
}

.dashboard-notifications__list {
    border-top: 1px solid var(--dashboard-border);
}

.dashboard-notification {
    position: relative;
    display: grid;
    grid-template-columns: 38px minmax(0, 1fr);
    gap: 10px;
    padding: 15px 20px;
    border-bottom: 1px solid #edf1ef;
}

.dashboard-notification--unread {
    background: #f8fcf9;
}

.dashboard-notification--unread::before {
    position: absolute;
    top: 17px;
    right: 0;
    width: 3px;
    height: 34px;
    border-radius: 3px 0 0 3px;
    background: var(--dashboard-green);
    content: '';
}

.dashboard-notification__icon {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 10px;
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green);
}

.dashboard-notification__content {
    min-width: 0;
}

.dashboard-notification__content strong {
    display: block;
    color: var(--dashboard-ink);
    font-size: 0.79rem;
}

.dashboard-notification__content p {
    display: -webkit-box;
    margin: 4px 0;
    overflow: hidden;
    color: var(--dashboard-muted);
    font-size: 0.72rem;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.dashboard-notification__content small {
    display: flex;
    align-items: center;
    gap: 4px;
    color: #8a9793;
    font-size: 0.66rem;
}

.dashboard-notification__actions {
    display: flex;
    gap: 12px;
    margin-top: 7px;
}

.dashboard-notification__actions a,
.dashboard-notification__actions button {
    padding: 0;
    border: 0;
    background: transparent;
    color: var(--dashboard-green-dark);
    font-size: 0.68rem;
    font-weight: 600;
}

.dashboard-notifications__read-all {
    display: flex;
    width: 100%;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 13px;
    border: 0;
    border-top: 1px solid var(--dashboard-border);
    background: #fff;
    color: var(--dashboard-green-dark);
    font-size: 0.76rem;
    font-weight: 600;
}

.dashboard-notifications__read-all:hover {
    background: var(--dashboard-green-soft);
}

.dashboard-notifications__pagination {
    padding: 14px 16px;
    border-top: 1px solid var(--dashboard-border);
    background: #fbfdfc;
}

.dashboard-pagination {
    display: grid;
    grid-template-columns: auto minmax(120px, 1fr) auto;
    align-items: center;
    gap: 10px;
}

.dashboard-pagination__button {
    display: inline-flex;
    min-height: 36px;
    align-items: center;
    justify-content: center;
    gap: 4px;
    padding: 7px 10px;
    border: 1px solid var(--dashboard-border);
    border-radius: 10px;
    background: #fff;
    color: var(--dashboard-green-dark);
    font-size: 0.7rem;
    font-weight: 600;
    transition: border-color 160ms ease, background 160ms ease, color 160ms ease;
}

.dashboard-pagination__button:hover:not(:disabled) {
    border-color: #b7d8c5;
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green-deep);
}

.dashboard-pagination__button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.dashboard-pagination__status {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    color: var(--dashboard-ink);
    text-align: center;
}

.dashboard-pagination__status strong {
    font-size: 0.72rem;
}

.dashboard-pagination__status small {
    color: var(--dashboard-muted);
    font-size: 0.64rem;
}

.dashboard-notifications__empty {
    display: flex;
    min-height: 225px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 28px;
    color: var(--dashboard-muted);
    text-align: center;
}

.dashboard-notifications__empty i {
    margin-bottom: 8px;
    color: var(--dashboard-green);
    font-size: 2.2rem;
}

.dashboard-notifications__empty strong { color: var(--dashboard-ink); font-size: 0.84rem; }
.dashboard-notifications__empty p { margin: 4px 0 0; font-size: 0.73rem; }

.dashboard-metrics-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
}

.dashboard-metric {
    display: flex;
    min-height: 112px;
    align-items: center;
    gap: 13px;
    padding: 17px;
    border: 1px solid var(--dashboard-border);
    border-radius: 13px;
    background: #fff;
    color: var(--dashboard-ink) !important;
    transition: border-color 160ms ease, transform 160ms ease;
}

a.dashboard-metric:hover {
    border-color: #b7d8c5;
    transform: translateY(-2px);
}

.dashboard-metric__icon {
    display: grid;
    width: 43px;
    height: 43px;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 12px;
    background: var(--dashboard-green-soft);
    color: var(--dashboard-green);
    font-size: 1.25rem;
}

.dashboard-metric > div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.dashboard-metric span:not(.dashboard-metric__icon) {
    color: var(--dashboard-muted);
    font-size: 0.73rem;
    line-height: 1.45;
}

.dashboard-metric strong {
    margin-top: 4px;
    color: var(--dashboard-ink);
    font-size: 1.55rem;
}

.dashboard-metric small {
    margin-top: 3px;
    color: var(--dashboard-green);
    font-size: 0.65rem;
}

.dashboard-metric--navy .dashboard-metric__icon { background: #edf3f7; color: var(--dashboard-navy); }
.dashboard-metric--blue .dashboard-metric__icon { background: #edf7fb; color: var(--dashboard-blue); }
.dashboard-metric--gold .dashboard-metric__icon { background: #fff7df; color: var(--dashboard-gold); }
.dashboard-metric--red .dashboard-metric__icon { background: #fff0ee; color: var(--dashboard-red); }

.dashboard-priority-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
    margin-top: 16px;
}

.dashboard-priority-list > a {
    display: grid;
    min-height: 78px;
    grid-template-columns: 40px minmax(0, 1fr) auto auto;
    align-items: center;
    gap: 10px;
    padding: 12px 14px;
    border: 1px solid var(--dashboard-border);
    border-radius: 12px;
    color: var(--dashboard-ink) !important;
}

.dashboard-priority-list > a:hover {
    border-color: #b7d8c5;
    background: #fbfdfc;
}

.dashboard-priority-list__icon {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border-radius: 10px;
    background: #edf7fb;
    color: var(--dashboard-blue);
    font-size: 1.15rem;
}

.dashboard-priority-list__icon--gold { background: #fff7df; color: var(--dashboard-gold); }
.dashboard-priority-list__icon--green { background: var(--dashboard-green-soft); color: var(--dashboard-green); }
.dashboard-priority-list__icon--red { background: #fff0ee; color: var(--dashboard-red); }

.dashboard-priority-list > a > span:nth-child(2) {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.dashboard-priority-list strong { font-size: 0.8rem; }
.dashboard-priority-list small { color: var(--dashboard-muted); font-size: 0.69rem; line-height: 1.45; }
.dashboard-priority-list b { color: var(--dashboard-green-dark); font-size: 1rem; }
.dashboard-priority-list > a > i { color: #8d9995; }

.dashboard-status {
    padding: 7px 10px;
    border-radius: 9px;
    font-size: 0.73rem;
    font-weight: 600;
}

.dashboard-status--warning { background: #fff7df; color: #815c00; }
.dashboard-status--success { background: var(--dashboard-green-soft); color: var(--dashboard-green-dark); }

.dashboard-empty-state {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 116px;
    padding: 22px;
    border: 1px dashed #bad5c6;
    border-radius: 14px;
    background: #f9fcfa;
}

.dashboard-empty-state > i {
    color: var(--dashboard-green);
    font-size: 2rem;
}

.dashboard-empty-state strong { display: block; color: var(--dashboard-ink); font-size: 0.86rem; }
.dashboard-empty-state p { margin: 3px 0 0; color: var(--dashboard-muted); font-size: 0.75rem; }
.dashboard-empty-state--action .btn { margin-inline-start: auto; }

.dashboard-notifications-menu {
    width: min(385px, calc(100vw - 24px));
    overflow: hidden;
    padding: 0;
    border: 1px solid var(--dashboard-border);
    border-radius: 15px;
    box-shadow: var(--dashboard-shadow);
}

.dashboard-notifications-menu__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 18px;
    border-bottom: 1px solid var(--dashboard-border);
}

.dashboard-notifications-menu__header span { display: flex; flex-direction: column; }
.dashboard-notifications-menu__header small { color: var(--dashboard-green); font-size: 0.67rem; }
.dashboard-notifications-menu__header strong { color: var(--dashboard-ink); font-size: 0.94rem; }
.dashboard-notifications-menu__header b { display: grid; min-width: 32px; height: 32px; padding-inline: 7px; place-items: center; border-radius: 9px; background: var(--dashboard-green-soft); color: var(--dashboard-green-dark); }

.dashboard-notifications-menu__list { max-height: 350px; }
.dashboard-notifications-menu__item { display: grid; width: 100%; grid-template-columns: 38px minmax(0, 1fr); gap: 10px; padding: 3px 0; border: 0; background: transparent; text-align: right; }
.dashboard-notifications-menu__item > span:first-child { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 10px; background: var(--dashboard-green-soft); color: var(--dashboard-green); }
.dashboard-notifications-menu__item > span:last-child { display: flex; min-width: 0; flex-direction: column; }
.dashboard-notifications-menu__item strong { color: var(--dashboard-ink); font-size: 0.77rem; }
.dashboard-notifications-menu__item small { display: -webkit-box; overflow: hidden; color: var(--dashboard-muted); font-size: 0.7rem; line-height: 1.45; -webkit-box-orient: vertical; -webkit-line-clamp: 2; }
.dashboard-notifications-menu__item time { margin-top: 3px; color: #8a9793; font-size: 0.63rem; }
.dashboard-notifications-menu__empty { display: flex; min-height: 160px; flex-direction: column; align-items: center; justify-content: center; gap: 7px; color: var(--dashboard-muted); font-size: 0.77rem; }
.dashboard-notifications-menu__empty i { color: var(--dashboard-green); font-size: 2rem; }
.dashboard-notifications-menu__footer button { display: flex; width: 100%; align-items: center; justify-content: center; gap: 6px; padding: 13px; border: 0; border-top: 1px solid var(--dashboard-border); background: #fff; color: var(--dashboard-green-dark); font-size: 0.74rem; font-weight: 600; }
.dashboard-notifications-menu__footer button:hover { background: var(--dashboard-green-soft); }

.dark-style {
    --dashboard-ink: #ecf4ef;
    --dashboard-muted: #aebdb6;
    --dashboard-border: #344a40;
    --dashboard-surface: #23332c;
    --dashboard-page: #18251f;
    --dashboard-green-soft: #253f33;
}

.dark-style body,
.dark-style .card,
.dark-style .dashboard-action,
.dark-style .dashboard-metric,
.dark-style .dashboard-notifications__read-all,
.dark-style .dashboard-notifications-menu__footer button,
.dark-style .dashboard-account-menu,
.dark-style .dashboard-notifications-menu {
    background: var(--dashboard-surface);
}

.dark-style .table thead th,
.dark-style .sidebar-search input,
.dark-style .dashboard-notification--unread,
.dark-style .dashboard-empty-state,
.dark-style .dashboard-notifications__pagination {
    background: #1e3028;
}

.dark-style .dashboard-pagination__button {
    border-color: var(--dashboard-border);
    background: var(--dashboard-surface);
}

@media (max-width: 1199.98px) {
    .dashboard-metrics-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

@media (max-width: 767.98px) {
    .dashboard-page { padding-top: 16px; }
    .dashboard-welcome { min-height: 0; grid-template-columns: 1fr; padding: 26px 22px; border-radius: 17px; }
    .dashboard-welcome__summary { grid-template-columns: repeat(2, 1fr); padding: 14px; }
    .dashboard-welcome__mark { display: none; }
    .dashboard-welcome__summary-item { border-top: 0; }
    .dashboard-actions-grid,
    .dashboard-priority-list { grid-template-columns: 1fr; }
    .dashboard-section__header--with-action { align-items: flex-start; flex-direction: column; }
    .dashboard-section__header--with-action .btn { width: 100%; justify-content: center; }
}

@media (max-width: 479.98px) {
    .dashboard-welcome__primary-action { width: 100%; grid-template-columns: auto minmax(0, 1fr) auto; }
    .dashboard-welcome__summary { grid-template-columns: 1fr; }
    .dashboard-welcome__summary-item + .dashboard-welcome__summary-item { border-top: 1px solid rgba(255, 255, 255, 0.14); }
    .dashboard-metrics-grid { grid-template-columns: 1fr; }
    .dashboard-empty-state--action { align-items: flex-start; flex-direction: column; }
    .dashboard-empty-state--action .btn { width: 100%; margin-inline-start: 0; }
    .navbar-public-link span { display: none; }
    .dashboard-pagination { grid-template-columns: 38px minmax(100px, 1fr) 38px; }
    .dashboard-pagination__button { padding-inline: 8px; }
    .dashboard-pagination__button span { display: none; }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
    }
}
