.page-template-page-dashboard {

    .dashboard-header {
        font-size: 2rem;
        line-height: 1.2;
        font-weight: 500;
        color: var(--global-palette5);
        margin-bottom: 1.5rem;
    }

    .dashboard-layout {
        display: flex;
        flex-direction: column;
    }

    .nowl_profile_card--guest {
        align-items: center;
        padding: 2rem 2.5rem;
        background-color: var(--warning-background);
        border: 1px solid var(--warning-border);
        border-radius: 20px;
    }

    .dashboard-profile {
        margin-bottom: 2.5rem;
    }

    .nowl_profile_card--guest-inner {
        display: inline;
        gap: .5rem;
    }

    .nowl_profile_card--guest a {
        color: var(--global-palette4);
        text-decoration: underline;
    }

    .nowl_profile_card--guest i {
        color: var(--global-palette4);
        font-size: 1.1rem;
        margin-right: 2px;
    }

    .dashboard-row {
        display: flex;
        flex-wrap: wrap;
        gap: 2rem;
        width: 100%;
        margin-bottom: 4rem;
    }

    .nowl_profile_card {
        display: flex;
        flex-direction: row;
        gap: 2rem;
        flex-wrap: wrap;
    }

    .nowl_profile_image img {
        max-width: 120px;
        border-radius: 50%;
    }

    .nowl_profile_info {
        display: flex;
        flex-direction: column;
        gap: .5rem;
        width: auto;
    }

    .nowl_full_name {
        display: block;
        font-size: 1.1rem;
        line-height: 1.2;
        font-weight: 500;
        color: var(--global-palette3);
    }

    .nowl_job_and_company {
        font-size: 0.9rem;
    }

    .nowl_access_level {
        margin-top: 0.5rem;
    }

    .dashboard-row {
        display: flex;
        flex-direction: row;
        gap: 2rem;
    }

    .dashboard-row__left {
        flex: 1;
    }

    .dashboard-row__right {
        flex: 2;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }

    .dashboard-tasks-activity {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
        gap: 2rem;
    }

    .dashboard-platform-cards {
        width: 100%;
    }

    .nightly-task-container {
        container-type: inline-size;
        width: 100%;
        background-color: var(--global-palette9);
        border: 1px solid var(--outline-color);
        border-radius: 20px;
        padding: 2rem 2.5rem;
    }

    .nightly-task {
        display: flex;
        align-items: center;
        gap: 1rem;
    }

    .nightly-task__image-container {
        flex-shrink: 0;
    }

    .nightly-task__image {
        width: 180px;
        #height: 120px;
        border-radius: 10px;
        object-fit: cover;
    }

    .nightly-task__content {
        display: flex;
        flex-direction: column;
        row-gap: 1rem;
        align-items: start;
    }

    .nightly-task__header {
        font-size: 1.5rem;
        line-height: 1.2;
        font-weight: 500;
    }

    .nightly-task__body {
        font-size: 1.1rem;
        line-height: 1.5;
        font-weight: 400;
        margin: 0;
    }

    .nightly-task button {
        height: 3rem;
    }

    .nightly-task__completed {
        display: flex;
        column-gap: 0.5rem;
        align-items: center;
        background-color: var(--success-background);
        border: 2px solid var(--success-border);
        padding: 0.8rem 2rem;
        border-radius: 3px;
        height: 3rem;
    }

    @container (max-width: 420px) {
        .nightly-task {
            flex-direction: column;
            align-items: start;
        }
    }

    .recent-activity-widget {
        display: flex;
        flex-direction: column;
        background-color: var(--global-palette9);
        border: 1px solid var(--outline-color);
        border-radius: 20px;
        padding: 2rem 2.5rem;
    }

    .recent-activity-widget__title {
        font-size: 1.5rem;
        line-height: 1.2;
        font-weight: 500;
        color: var(--global-palette3);
        margin-bottom: 1.5rem;
    }

    .recent-activity-widget__inner {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: stretch;
        column-gap: 0;
    }

    .recent-activity-widget--preview {
        opacity: 0.5;
    }

    .task-progress-widget {
        display: flex;
        flex-direction: column;
        row-gap: 1.5rem;
        background-color: var(--global-palette9);
        border: 1px solid var(--outline-color);
        border-radius: 20px;
        padding: 2rem 2.5rem;
    }

    .tasks-progress-widget--preview {
        opacity: 0.5;
        pointer-events: none;
    }

    .task-progress__title {
        font-size: 1.5rem;
        line-height: 1.2;
        font-weight: 500;
    }

    .task-progress__section {
        display: flex;
        flex-direction: column;
        row-gap: 0.8rem;
    }

    .task-progress__section-title {
        font-size: 1rem;
        color: var(--global-palette5);
    }

    .task-progress {
        display: flex;
        flex-direction: column;
        row-gap: 0.2rem;
    }

    .task-progress__text {
        color: var(--global-palette3);
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        column-gap: 1rem;
    }

    .task-progress--link:hover .task-progress__text {
        color: var(--global-palette2);
    }

    .progress-bar {
        width: 100%;
        background-color: #e0e0e0;
        height: 20px;
        border-radius: 10px;
        overflow: hidden;
    }

    .progress-bar__fill {
        height: 100%;
        background-color: var(--global-palette2);
        width: 0;
        transition: width 0.3s ease;
    }

    .dashboard-platform-cards__title {
        font-size: 2rem;
        line-height: 1.2;
        font-weight: 700;
        color: var(--global-palette5);
        margin-bottom: 2rem;
    }

    .portal-cards-container {
        container-type: inline-size;
        width: 100%;
    }

    .portal-cards {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 2rem;
        column-gap: 2rem;
    }

    @container (max-width: 780px) {
        .portal-cards {
            grid-template-columns: 1fr;
        }
    }

    .portal-card {
        background-color: var(--global-palette9);
        flex-direction: column;
        row-gap: 1rem;
        column-gap: 1rem;
        border-radius: 20px;
        border: 1px solid var(--outline-color);
        padding: 2rem;
        display: flex;
    }

    .portal-card--disabled {
        display: none;
    }

    .portal-card:hover {
    }

    .portal-card__icon {
        font-size: 2.5rem;
        width: 60px;
        height: 60px;
        border-radius: 8px;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .portal-card__icon.icon-box {
        background-color: #4D4839;
    }

    .portal-card__icon.icon-ai-tools {
        background-color: var(--ai-tools-bg);
    }

    .portal-card__icon.icon-learning {
        background-color: var(--learning-hub-bg);
    }

    .portal-card__icon.icon-community {
        background-color: var(--community-bg);
    }

    .portal-card__icon.icon-journeys {
        background-color: var(--journeys-bg);
    }

    .portal-card__icon.icon-tasks {
        background-color: var(--tasks-bg);
    }

    .portal-card__icon.icon-videos {
        background-color: var(--expert-videos-bg);
    }

    .portal-card__icon.icon-job-search {
        background-color: var(--job-search-bg);
    }

    .portal-card__content {
        display: flex;
        flex-direction: column;
        row-gap: 1rem;
        align-items: start;
    }

    .portal-card__title {
        margin: 0;
        font-size: 1.5rem;
        line-height: 1.2;
        font-weight: 500;
    }

    .portal-card__description {
        font-size: 1rem;
        line-height: 1.5;
        margin: 0;
    }

    .portal-card__button {
    }

    .nowl-button--outline.disabled {
        border-color: var(--global-palette5) !important;
        pointer-events: none;
    }

    .portal-card__button:hover {
    }

    .nowl-button--locked {
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }

    @media (max-width: 1266px) {
        .dashboard-row {
            flex-direction: column;
        }
    }

    @media (max-width: 767px) {
        .nowl_profile_card--guest {
            padding: 1rem 1rem;
        }
    }
}