/* Dashboard Heights & Shared Layout Styles */
:root {
    --header-height: 70px;
}

.jm-sidebar-brand {
    height: var(--header-height);
    display: flex;
    align-items: center;
    box-sizing: border-box;
}

.jm-topbar {
    height: var(--header-height);
    box-sizing: border-box;
    z-index: 1020;
}

/* Sidebar Brand Custom Styling */
.jm-brand-icon-box {
    width: 42px;
    height: 42px;
    background-color: #0d1b2a;
    border-radius: 10px;
    flex-shrink: 0;
}

.jm-brand-title {
    color: #0b192c !important;
    letter-spacing: -0.3px;
    line-height: 1.1;
}

.jm-brand-subtitle {
    font-size: 0.65rem;
    letter-spacing: 1.2px;
    color: #8d99ae !important;
    font-weight: 600;
}

/* Dashboard Utilities & Cards */
.jm-card-locked {
    filter: blur(0.2px);
}

.extra-small-text {
    font-size: 0.75rem;
    letter-spacing: 0.5px;
}

.small-text {
    font-size: 0.85rem;
}

.cursor-pointer {
    cursor: pointer;
}

/* Role Selection Card Styling */
.role-card {
    background-color: #fff;
    border: 1px solid #e0e0e0 !important;
    transition: all 0.2s ease-in-out;
    min-height: 90px;
}

.role-card:hover {
    border-color: #ffc107 !important;
    background-color: #fffdf5;
}

/* Selected State */
.btn-check:checked + .role-card {
    border-color: #ffc107 !important;
    border-width: 2px !important;
    background-color: #fffdf2;
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.15);
}

.btn-check:checked + .role-card .role-title {
    color: #000 !important;
}

/* Custom Soft Yellow Background for Icons */
.bg-warning-subtle {
    background-color: #fff9e6 !important;
}

/* Header User Profile Avatar Styling */
.jm-header-avatar {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
    border: 1px solid #e0e0e0;
}

.jm-header-avatar-placeholder {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #f1f3f5;
    border: 1px solid #dee2e6;
    flex-shrink: 0;
}