/* /Components/Common/GifPicker.razor.rz.scp.css */
/* GIF Picker Modal Styles */
.gif-picker-overlay[b-2aphfpren4] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    z-index: 1050;
    animation: overlay-fade-b-2aphfpren4 0.2s ease;
}

@keyframes overlay-fade-b-2aphfpren4 {
    from { opacity: 0; }
    to { opacity: 1; }
}

.gif-picker-modal[b-2aphfpren4] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: white;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.2);
    width: 90%;
    max-width: 500px;
    max-height: 80vh;
    display: flex;
    flex-direction: column;
    z-index: 1051;
    animation: modal-slide-b-2aphfpren4 0.2s ease-out;
    overflow: hidden;
}

@keyframes modal-slide-b-2aphfpren4 {
    0% {
        opacity: 0;
        transform: translate(-50%, -45%);
    }
    100% {
        opacity: 1;
        transform: translate(-50%, -50%);
    }
}

.gif-picker-header[b-2aphfpren4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}

.gif-picker-header h6[b-2aphfpren4] {
    font-weight: 600;
    color: #212529;
    margin: 0;
}

.gif-picker-search[b-2aphfpren4] {
    padding: 12px 16px;
    border-bottom: 1px solid #eee;
    flex-shrink: 0;
}

.gif-picker-search input[b-2aphfpren4] {
    border-radius: 20px;
    border: 1px solid #ddd;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.gif-picker-search input:focus[b-2aphfpren4] {
    border-color: #0d6efd;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.1);
}

.gif-picker-content[b-2aphfpren4] {
    flex: 1;
    overflow-y: auto;
    padding: 12px;
    min-height: 300px;
    max-height: 50vh;
}

.gif-grid[b-2aphfpren4] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 8px;
}

.gif-item[b-2aphfpren4] {
    border: none;
    background: #f5f5f5;
    border-radius: 8px;
    overflow: hidden;
    cursor: pointer;
    padding: 0;
    aspect-ratio: 1 / 1;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
    position: relative;
}

.gif-item:hover[b-2aphfpren4] {
    transform: scale(1.03);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 1;
}

.gif-item:focus[b-2aphfpren4] {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
}

.gif-item img[b-2aphfpren4] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gif-skeleton[b-2aphfpren4] {
    background: linear-gradient(90deg, #f0f0f0 0%, #fafafa 50%, #f0f0f0 100%);
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-2aphfpren4 1.5s ease-in-out infinite;
    border-radius: 8px;
    aspect-ratio: 16/10;
}

@keyframes skeleton-shimmer-b-2aphfpren4 {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.gif-picker-footer[b-2aphfpren4] {
    padding: 10px 16px;
    border-top: 1px solid #eee;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    background: #fafafa;
}

.giphy-attribution[b-2aphfpren4] {
    width: 24px;
    height: 24px;
    object-fit: contain;
    border-radius: 4px;
}

/* Mobile responsive */
@media (max-width: 576px) {
    .gif-picker-modal[b-2aphfpren4] {
        width: 100%;
        max-width: 100%;
        max-height: 90vh;
        top: auto;
        bottom: 0;
        left: 0;
        right: 0;
        transform: none;
        border-radius: 16px 16px 0 0;
    }
    
    @keyframes modal-slide-b-2aphfpren4 {
        0% {
            opacity: 0;
            transform: translateY(100%);
        }
        100% {
            opacity: 1;
            transform: translateY(0);
        }
    }
    
    .gif-picker-content[b-2aphfpren4] {
        min-height: 350px;
        max-height: 60vh;
    }
    
    .gif-grid[b-2aphfpren4] {
        grid-template-columns: repeat(2, 1fr);
        gap: 8px;
    }
    
    .gif-item[b-2aphfpren4] {
        aspect-ratio: 1 / 1;
    }
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    .gif-picker-modal[b-2aphfpren4] {
        background: #1e1e1e;
    }
    
    .gif-picker-header h6[b-2aphfpren4] {
        color: #fff;
    }
    
    .gif-picker-header[b-2aphfpren4],
    .gif-picker-search[b-2aphfpren4],
    .gif-picker-footer[b-2aphfpren4] {
        border-color: #333;
    }
    
    .gif-picker-footer[b-2aphfpren4] {
        background: #252525;
    }
    
    .gif-picker-search input[b-2aphfpren4] {
        background: #2d2d2d;
        border-color: #444;
        color: #fff;
    }
    
    .gif-picker-search input[b-2aphfpren4]::placeholder {
        color: #888;
    }
    
    .gif-item[b-2aphfpren4] {
        background: #2d2d2d;
    }
    
    .gif-skeleton[b-2aphfpren4] {
        background: linear-gradient(90deg, #3a3a3a 0%, #4a4a4a 50%, #3a3a3a 100%);
        background-size: 200% 100%;
    }
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
    .gif-picker-overlay[b-2aphfpren4],
    .gif-picker-modal[b-2aphfpren4] {
        animation: none;
    }
    
    .gif-item:hover[b-2aphfpren4] {
        transform: none;
    }
    
    .gif-skeleton[b-2aphfpren4] {
        animation: none;
        background: #f0f0f0;
    }
}

/* /Components/Common/OtpInput.razor.rz.scp.css */
.otp-container[b-7l099rr4y3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
}

.otp-input-group[b-7l099rr4y3] {
    display: flex;
    justify-content: center;
    gap: 8px;
}

.otp-input[b-7l099rr4y3] {
    width: 44px;
    height: 52px;
    text-align: center;
    font-size: 1.5rem;
    font-family: 'SF Mono', 'Consolas', monospace;
    font-weight: 600;
    text-transform: uppercase;
    border: 2px solid #dee2e6;
    border-radius: 10px;
    background: #fff;
    transition: all 0.2s ease;
    caret-color: transparent;
}

.otp-input:focus[b-7l099rr4y3] {
    outline: none;
    border-color: #0d6efd;
    box-shadow: 0 0 0 3px rgba(13, 110, 253, 0.15);
}

.otp-input.filled[b-7l099rr4y3] {
    background: #f0f7ff;
    border-color: #86b7fe;
}

.otp-input:disabled[b-7l099rr4y3] {
    background: #e9ecef;
    cursor: not-allowed;
}

.otp-clear-btn[b-7l099rr4y3] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 14px;
    font-size: 0.85rem;
    color: #6c757d;
    background: transparent;
    border: 1px solid #dee2e6;
    border-radius: 20px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.otp-clear-btn:hover[b-7l099rr4y3] {
    color: #dc3545;
    border-color: #dc3545;
    background: rgba(220, 53, 69, 0.05);
}

/* Mobile responsive */
@media (max-width: 480px) {
    .otp-input-group[b-7l099rr4y3] {
        gap: 6px;
    }
    
    .otp-input[b-7l099rr4y3] {
        width: 36px;
        height: 44px;
        font-size: 1.25rem;
        border-radius: 8px;
    }
}

/* /Components/Common/Pagination.razor.rz.scp.css */
/* Pagination Component Styles */

.pagination .page-link[b-5ko7uq1mzg] {
    border-radius: 0.375rem;
    margin: 0 2px;
    min-width: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s ease-in-out;
}

.pagination-sm .page-link[b-5ko7uq1mzg] {
    padding: 0.25rem 0.5rem;
    font-size: 0.875rem;
    min-width: 28px;
}

.pagination-lg .page-link[b-5ko7uq1mzg] {
    padding: 0.75rem 1rem;
    font-size: 1.1rem;
    min-width: 42px;
}

.pagination .page-item.active .page-link[b-5ko7uq1mzg] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    box-shadow: 0 2px 4px rgba(var(--bs-primary-rgb), 0.25);
}

.pagination .page-link:hover:not(.disabled)[b-5ko7uq1mzg] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: white;
    transform: translateY(-1px);
}

.pagination .page-item.disabled .page-link[b-5ko7uq1mzg] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* /Components/Common/PlanCard.razor.rz.scp.css */
/* ============ PLAN CARD COMPONENT ============ */
.plan-card[b-ar9jgcg7l5] {
    padding: 36px 28px;
    background: var(--theme-bg-dark, #f8f9fa);
    border-radius: 16px;
    border: 2px solid transparent;
    position: relative;
    display: flex;
    flex-direction: column;
    transition: all 0.3s ease;
    height: 100%;
}

.plan-card:hover[b-ar9jgcg7l5] {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(0, 0, 0, 0.08);
}

.plan-card-featured[b-ar9jgcg7l5] {
    background: white;
    border-color: var(--bs-primary, #0056b3);
    box-shadow: 0 8px 30px rgba(0, 86, 179, 0.15);
}

.plan-card-current[b-ar9jgcg7l5] {
    border-color: var(--bs-primary, #0056b3);
    border-width: 3px;
}

.plan-card-compact[b-ar9jgcg7l5] {
    padding: 20px 16px;
}

.plan-popular-badge[b-ar9jgcg7l5] {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    padding: 4px 16px;
    background: var(--bs-primary, #0056b3);
    color: white;
    border-radius: 50px;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.plan-header[b-ar9jgcg7l5] {
    text-align: center;
    margin-bottom: 24px;
}

.plan-header h4[b-ar9jgcg7l5] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-text-main, #212529);
    margin-bottom: 12px;
}

.plan-amount[b-ar9jgcg7l5] {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 2px;
    margin-bottom: 4px;
}

.plan-currency[b-ar9jgcg7l5] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
}

.plan-price[b-ar9jgcg7l5] {
    font-size: 2.5rem;
    font-weight: 800;
    color: var(--theme-text-main, #212529);
    line-height: 1;
}

.plan-price.custom[b-ar9jgcg7l5] {
    font-size: 1.75rem;
}

.plan-period[b-ar9jgcg7l5] {
    font-size: 0.9rem;
    color: var(--theme-text-muted, #6c757d);
}

.plan-yearly-note[b-ar9jgcg7l5] {
    font-size: 0.8rem;
    color: var(--theme-text-muted, #6c757d);
    text-align: center;
    margin-bottom: 4px;
}

.plan-desc[b-ar9jgcg7l5] {
    font-size: 0.88rem;
    color: var(--theme-text-muted, #6c757d);
    margin: 8px 0 0;
}

.plan-features[b-ar9jgcg7l5] {
    list-style: none;
    padding: 0;
    margin: 0 0 28px;
    flex: 1;
}

.plan-features li[b-ar9jgcg7l5] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 8px 0;
    font-size: 0.9rem;
    color: var(--theme-text-main, #212529);
}

.plan-features i[b-ar9jgcg7l5] {
    color: var(--bs-success, #198754);
    font-size: 1rem;
    flex-shrink: 0;
}

.plan-card-compact .plan-header[b-ar9jgcg7l5] {
    margin-bottom: 12px;
}

.plan-card-compact .plan-header h4[b-ar9jgcg7l5] {
    font-size: 1rem;
}

.plan-card-compact .plan-price[b-ar9jgcg7l5] {
    font-size: 1.75rem;
}

.plan-card-compact .plan-features li[b-ar9jgcg7l5] {
    padding: 4px 0;
    font-size: 0.82rem;
}

.plan-card-compact .plan-features[b-ar9jgcg7l5] {
    margin-bottom: 16px;
}

.plan-btn[b-ar9jgcg7l5] {
    display: block;
    width: 100%;
    text-align: center;
    padding: 14px 24px;
    border-radius: 12px;
    font-size: 0.95rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    border: none;
    cursor: pointer;
    margin-top: auto;
}

.plan-btn.primary[b-ar9jgcg7l5] {
    background: linear-gradient(135deg, var(--bs-primary, #0056b3) 0%, #004494 100%);
    color: white;
    box-shadow: 0 4px 14px rgba(0, 86, 179, 0.3);
}

.plan-btn.primary:hover[b-ar9jgcg7l5] {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 86, 179, 0.4);
    color: white;
}

.plan-btn.outline[b-ar9jgcg7l5] {
    background: white;
    color: var(--bs-primary, #0056b3);
    border: 1px solid rgba(0, 86, 179, 0.3);
}

.plan-btn.outline:hover[b-ar9jgcg7l5] {
    background: rgba(0, 86, 179, 0.05);
    transform: translateY(-2px);
    color: var(--bs-primary, #0056b3);
}

.plan-btn:disabled[b-ar9jgcg7l5] {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none !important;
}

/* Responsive */
@media (max-width: 768px) {
    .plan-card[b-ar9jgcg7l5] {
        padding: 28px 22px;
        border-radius: 14px;
    }

    .plan-header h4[b-ar9jgcg7l5] {
        font-size: 1.1rem;
    }

    .plan-price[b-ar9jgcg7l5] {
        font-size: 2rem;
    }

    .plan-price.custom[b-ar9jgcg7l5] {
        font-size: 1.5rem;
    }
}

/* /Components/Common/SearchableSelect.razor.rz.scp.css */
/* SearchableSelect – Scoped CSS */

.searchable-select-container[b-3chi0nuzkp] {
    position: relative;
}

.searchable-select-dropdown[b-3chi0nuzkp] {
    position: absolute;
    z-index: 1050;
    max-height: 250px;
    overflow-y: auto;
    width: 100%;
    background: #fff;
    border: 1px solid #dee2e6;
    border-radius: 0.375rem;
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.12);
    margin-top: 2px;
    list-style: none;
    padding: 4px 0;
    scrollbar-width: thin;
}

.searchable-select-dropdown[b-3chi0nuzkp]::-webkit-scrollbar {
    width: 6px;
}

.searchable-select-dropdown[b-3chi0nuzkp]::-webkit-scrollbar-thumb {
    background: #ced4da;
    border-radius: 3px;
}

.searchable-select-item[b-3chi0nuzkp] {
    padding: 8px 12px;
    cursor: pointer;
    font-size: 0.875rem;
    transition: background-color 0.1s ease;
    border-radius: 4px;
    margin: 0 4px;
}

.searchable-select-item:hover[b-3chi0nuzkp],
.searchable-select-item.active[b-3chi0nuzkp] {
    background: #e9ecef;
}

.searchable-select-item.selected[b-3chi0nuzkp] {
    background: #0d6efd;
    color: #fff;
}

.searchable-select-item.selected:hover[b-3chi0nuzkp],
.searchable-select-item.selected.active[b-3chi0nuzkp] {
    background: #0b5ed7;
    color: #fff;
}

.searchable-select-empty[b-3chi0nuzkp] {
    padding: 16px 12px;
    text-align: center;
    color: #6c757d;
    font-size: 0.85rem;
}

/* /Components/Common/SkeletonLoader.razor.rz.scp.css */
/* Skeleton loader with shimmer animation */
.skeleton[b-bn12wpxyuf] {
    background: linear-gradient(
        90deg,
        #f0f0f0 0%,
        #fafafa 50%,
        #f0f0f0 100%
    );
    background-size: 200% 100%;
    animation: skeleton-shimmer-b-bn12wpxyuf 1.5s ease-in-out infinite;
}

@keyframes skeleton-shimmer-b-bn12wpxyuf {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Variant styles */
.skeleton-text[b-bn12wpxyuf] {
    border-radius: 4px;
    height: 14px;
}

.skeleton-circle[b-bn12wpxyuf] {
    border-radius: 50%;
}

.skeleton-rectangle[b-bn12wpxyuf] {
    border-radius: 8px;
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .skeleton[b-bn12wpxyuf] {
        background: linear-gradient(
            90deg,
            #3a3a3a 0%,
            #4a4a4a 50%,
            #3a3a3a 100%
        );
        background-size: 200% 100%;
    }
}

/* Reduced motion preference */
@media (prefers-reduced-motion: reduce) {
    .skeleton[b-bn12wpxyuf] {
        animation: none;
        background: #f0f0f0;
    }
    
    @media (prefers-color-scheme: dark) {
        .skeleton[b-bn12wpxyuf] {
            background: #3a3a3a;
        }
    }
}

/* /Components/Layout/MainLayout.razor.rz.scp.css */
/* Minimal styles, relying on global theme */
main[b-auxf1c3trh] {
    /* Ensure content doesn't get hidden behind fixed headers/footers if needed */
}

/* Adjust for mobile bottom nav space */
@media (max-width: 767.98px) {
    main[b-auxf1c3trh] {
        padding-bottom: 70px; /* Height of bottom nav */
    }
}

#blazor-error-ui[b-auxf1c3trh] {
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
    z-index: 2000;
}

#blazor-error-ui .dismiss[b-auxf1c3trh] {
    cursor: pointer;
    right: 0.75rem;
    top: 0.5rem;
    position: absolute;
}
/* /Components/Layout/ReconnectModal.razor.rz.scp.css */
.components-reconnect-first-attempt-visible[b-vmjbgs5hzm],
.components-reconnect-repeated-attempt-visible[b-vmjbgs5hzm],
.components-reconnect-failed-visible[b-vmjbgs5hzm],
.components-pause-visible[b-vmjbgs5hzm],
.components-resume-failed-visible[b-vmjbgs5hzm],
.components-rejoining-animation[b-vmjbgs5hzm] {
    display: none;
}

#components-reconnect-modal.components-reconnect-show .components-reconnect-first-attempt-visible[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-show .components-rejoining-animation[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-paused .components-pause-visible[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-resume-failed .components-resume-failed-visible[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-retrying[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-retrying .components-reconnect-repeated-attempt-visible[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-retrying .components-rejoining-animation[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-failed[b-vmjbgs5hzm],
#components-reconnect-modal.components-reconnect-failed .components-reconnect-failed-visible[b-vmjbgs5hzm] {
    display: block;
}


#components-reconnect-modal[b-vmjbgs5hzm] {
    background-color: white;
    width: 20rem;
    margin: 20vh auto;
    padding: 2rem;
    border: 0;
    border-radius: 0.5rem;
    box-shadow: 0 3px 6px 2px rgba(0, 0, 0, 0.3);
    opacity: 0;
    transition: display 0.5s allow-discrete, overlay 0.5s allow-discrete;
    animation: components-reconnect-modal-fadeOutOpacity-b-vmjbgs5hzm 0.5s both;
    &[open]

{
    animation: components-reconnect-modal-slideUp-b-vmjbgs5hzm 1.5s cubic-bezier(.05, .89, .25, 1.02) 0.3s, components-reconnect-modal-fadeInOpacity-b-vmjbgs5hzm 0.5s ease-in-out 0.3s;
    animation-fill-mode: both;
}

}

#components-reconnect-modal[b-vmjbgs5hzm]::backdrop {
    background-color: rgba(0, 0, 0, 0.4);
    animation: components-reconnect-modal-fadeInOpacity-b-vmjbgs5hzm 0.5s ease-in-out;
    opacity: 1;
}

@keyframes components-reconnect-modal-slideUp-b-vmjbgs5hzm {
    0% {
        transform: translateY(30px) scale(0.95);
    }

    100% {
        transform: translateY(0);
    }
}

@keyframes components-reconnect-modal-fadeInOpacity-b-vmjbgs5hzm {
    0% {
        opacity: 0;
    }

    100% {
        opacity: 1;
    }
}

@keyframes components-reconnect-modal-fadeOutOpacity-b-vmjbgs5hzm {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 0;
    }
}

.components-reconnect-container[b-vmjbgs5hzm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
}

#components-reconnect-modal p[b-vmjbgs5hzm] {
    margin: 0;
    text-align: center;
}

#components-reconnect-modal button[b-vmjbgs5hzm] {
    border: 0;
    background-color: #6b9ed2;
    color: white;
    padding: 4px 24px;
    border-radius: 4px;
}

    #components-reconnect-modal button:hover[b-vmjbgs5hzm] {
        background-color: #3b6ea2;
    }

    #components-reconnect-modal button:active[b-vmjbgs5hzm] {
        background-color: #6b9ed2;
    }

.components-rejoining-animation[b-vmjbgs5hzm] {
    position: relative;
    width: 80px;
    height: 80px;
}

    .components-rejoining-animation div[b-vmjbgs5hzm] {
        position: absolute;
        border: 3px solid #0087ff;
        opacity: 1;
        border-radius: 50%;
        animation: components-rejoining-animation-b-vmjbgs5hzm 1.5s cubic-bezier(0, 0.2, 0.8, 1) infinite;
    }

        .components-rejoining-animation div:nth-child(2)[b-vmjbgs5hzm] {
            animation-delay: -0.5s;
        }

@keyframes components-rejoining-animation-b-vmjbgs5hzm {
    0% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    4.9% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 0;
    }

    5% {
        top: 40px;
        left: 40px;
        width: 0;
        height: 0;
        opacity: 1;
    }

    100% {
        top: 0px;
        left: 0px;
        width: 80px;
        height: 80px;
        opacity: 0;
    }
}
/* /Features/AdminPortal/AdminDashboard.razor.rz.scp.css */
.welcome-panel[b-b6rgvg198y] {
    background: linear-gradient(135deg, #1e1e2d 0%, #2c3e50 100%) !important;
}

.card-hover-transform[b-b6rgvg198y] {
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.card-hover-transform:hover[b-b6rgvg198y] {
    transform: translateY(-3px);
    box-shadow: 0 0.5rem 1.5rem rgba(0,0,0,.1)!important;
}

.stat-card-icon[b-b6rgvg198y] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
}

.quick-action-icon[b-b6rgvg198y] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    transition: transform 0.2s ease;
}

.quick-action-card:hover .quick-action-icon[b-b6rgvg198y] {
    transform: scale(1.1);
}

.live-dot[b-b6rgvg198y] {
    width: 6px;
    height: 6px;
    background: white;
    border-radius: 50%;
    animation: pulse-dot-b-b6rgvg198y 1.5s ease-in-out infinite;
}

@keyframes pulse-dot-b-b6rgvg198y {
    0%, 100% { opacity: 1; transform: scale(1); }
    50% { opacity: 0.5; transform: scale(0.8); }
}

.date-box[b-b6rgvg198y] {
    width: 50px;
    padding: 8px;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 10px;
}

.date-box .day[b-b6rgvg198y] {
    font-size: 1.25rem;
    line-height: 1;
}

.date-box .month[b-b6rgvg198y] {
    font-size: 0.65rem;
    letter-spacing: 0.5px;
}

.session-item[b-b6rgvg198y] {
    transition: background-color 0.15s ease;
    margin: 0 -1rem;
    padding-left: 1rem !important;
    padding-right: 1rem !important;
    border-radius: 8px;
}

.session-item:hover[b-b6rgvg198y] {
    background-color: #f8f9fa;
}

.session-item:last-child[b-b6rgvg198y] {
    border-bottom: none !important;
}

.avatar-circle[b-b6rgvg198y] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-weight: 600;
    font-size: 0.875rem;
}

.attendance-item:last-child[b-b6rgvg198y] {
    border-bottom: none !important;
}

.checkin-indicator[b-b6rgvg198y] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 0.875rem;
}

.checkin-indicator.checkin[b-b6rgvg198y] {
    background-color: rgba(25, 135, 84, 0.1);
    color: #198754;
}

.checkin-indicator.checkout[b-b6rgvg198y] {
    background-color: rgba(108, 117, 125, 0.1);
    color: #6c757d;
}

.min-width-0[b-b6rgvg198y] {
    min-width: 0;
}

.step-circle[b-b6rgvg198y] {
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.2);
    border-radius: 50%;
    font-size: 0.75rem;
    font-weight: 600;
}

.bg-purple[b-b6rgvg198y] {
    background-color: rgba(111, 66, 193, 0.1) !important;
}

.text-purple[b-b6rgvg198y] {
    color: #6f42c1 !important;
}

.bg-success-subtle[b-b6rgvg198y] { background-color: rgba(25, 135, 84, 0.1) !important; }
.border-success-subtle[b-b6rgvg198y] { border-color: rgba(25, 135, 84, 0.2) !important; }
.bg-warning-subtle[b-b6rgvg198y] { background-color: rgba(255, 193, 7, 0.1) !important; }
.border-warning-subtle[b-b6rgvg198y] { border-color: rgba(255, 193, 7, 0.2) !important; }
.bg-secondary-subtle[b-b6rgvg198y] { background-color: rgba(108, 117, 125, 0.1) !important; }
.border-secondary-subtle[b-b6rgvg198y] { border-color: rgba(108, 117, 125, 0.2) !important; }

.hover-primary:hover[b-b6rgvg198y] {
    color: var(--bs-primary) !important;
}

.counter-value[b-b6rgvg198y] {
    font-size: 1.75rem;
}

@media (max-width: 576px) {
    .counter-value[b-b6rgvg198y] {
        font-size: 1.5rem;
    }
    .stat-card-icon[b-b6rgvg198y] {
        width: 40px;
        height: 40px;
    }
    .quick-action-icon[b-b6rgvg198y] {
        width: 48px;
        height: 48px;
    }
}

/* /Features/AdminPortal/AttendanceView.razor.rz.scp.css */
/* AttendanceView Component Styles */

/* Card hover animation for stats cards */
.card-hover-transform[b-wwmow9mzxv] {
    transition: transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out;
}

.card-hover-transform:hover[b-wwmow9mzxv] {
    transform: translateY(-5px);
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15) !important;
}

/* Stats card icon container */
.stat-card-icon[b-wwmow9mzxv] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
}

/* Avatar circle for user initials */
.avatar-circle[b-wwmow9mzxv] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1.1rem;
}

/* Delete button hover state */
.btn-hover-danger:hover[b-wwmow9mzxv] {
    background-color: #dc3545 !important;
    color: white !important;
}

/* Employee dropdown custom styling */
.dropdown-item-custom[b-wwmow9mzxv] {
    cursor: pointer;
    transition: background-color 0.15s ease-in-out;
}

.dropdown-item-custom:hover[b-wwmow9mzxv] {
    background-color: rgba(var(--bs-primary-rgb), 0.08);
}

/* Utility classes */
.cursor-pointer[b-wwmow9mzxv] {
    cursor: pointer;
}

.min-width-0[b-wwmow9mzxv] {
    min-width: 0;
}

/* Loading spinner animation */
.spin-animation[b-wwmow9mzxv] {
    animation: spin-b-wwmow9mzxv 1s linear infinite;
}

@keyframes spin-b-wwmow9mzxv {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* ===== Summary View Enhanced Styles ===== */

/* Summary table styling */
.summary-table[b-wwmow9mzxv] {
    border-collapse: separate;
    border-spacing: 0;
}

.summary-table tbody tr[b-wwmow9mzxv] {
    transition: all 0.2s ease-in-out;
}

.summary-table tbody tr:hover[b-wwmow9mzxv] {
    background-color: rgba(var(--bs-primary-rgb), 0.04);
}

.summary-table tbody tr.table-active[b-wwmow9mzxv] {
    background-color: rgba(var(--bs-primary-rgb), 0.08);
}

/* Expanded row animation */
.expanded-row td[b-wwmow9mzxv] {
    animation: expandRow-b-wwmow9mzxv 0.3s ease-out;
}

@keyframes expandRow-b-wwmow9mzxv {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Session link hover effect */
.session-link[b-wwmow9mzxv] {
    transition: all 0.2s ease;
    padding: 2px 6px;
    border-radius: 4px;
    margin: -2px -6px;
}

.session-link:hover[b-wwmow9mzxv] {
    background-color: rgba(var(--bs-primary-rgb), 0.1);
    text-decoration: none !important;
}

.session-link:hover i.bi-box-arrow-up-right[b-wwmow9mzxv] {
    transform: translate(2px, -2px);
}

.session-link i.bi-box-arrow-up-right[b-wwmow9mzxv] {
    transition: transform 0.2s ease;
    opacity: 0.6;
}

/* Transition utilities */
.transition-all[b-wwmow9mzxv] {
    transition: all 0.2s ease-in-out;
}

/* Progress bar in table */
.summary-table .progress[b-wwmow9mzxv] {
    background-color: rgba(0,0,0,0.08);
    border-radius: 10px;
    overflow: hidden;
}

/* Badge improvements */
.summary-table .badge[b-wwmow9mzxv] {
    font-weight: 500;
}

/* Mobile card improvements */
@media (max-width: 767.98px) {
    .avatar-circle[b-wwmow9mzxv] {
        width: 36px;
        height: 36px;
        font-size: 0.9rem;
    }
    
    /* Better touch targets on mobile */
    .btn-sm[b-wwmow9mzxv] {
        min-height: 38px;
    }
    
    /* Card shadow on mobile */
    .card.shadow-sm[b-wwmow9mzxv] {
        box-shadow: 0 2px 8px rgba(0,0,0,0.08) !important;
    }
}

/* Button group responsiveness */
@media (max-width: 575.98px) {
    .btn-group .btn[b-wwmow9mzxv] {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }
}

/* Nested table in expanded row */
.expanded-row .table-responsive[b-wwmow9mzxv] {
    max-height: 400px;
    overflow-y: auto;
}

.expanded-row .table-sm td[b-wwmow9mzxv],
.expanded-row .table-sm th[b-wwmow9mzxv] {
    padding: 0.5rem 0.75rem;
}

/* Hover effect for nested table rows */
.expanded-row .table tbody tr:hover[b-wwmow9mzxv] {
    background-color: rgba(var(--bs-primary-rgb), 0.04);
}

/* Badge with icon alignment */
.badge i[b-wwmow9mzxv] {
    vertical-align: -1px;
}

/* Action button group on mobile */
@media (max-width: 991.98px) {
    .w-lg-auto[b-wwmow9mzxv] {
        width: 100% !important;
    }
}

/* ===== Modal Animations ===== */

/* Modal backdrop fade-in */
.modal-backdrop-animate[b-wwmow9mzxv] {
    animation: fadeIn-b-wwmow9mzxv 0.2s ease-out;
}

/* Modal content slide and scale animation */
.modal-animate-in[b-wwmow9mzxv] {
    animation: modalSlideIn-b-wwmow9mzxv 0.3s ease-out;
}

@keyframes modalSlideIn-b-wwmow9mzxv {
    from {
        opacity: 0;
        transform: scale(0.9) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

@keyframes fadeIn-b-wwmow9mzxv {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Icon bounce animation for delete modal */
.icon-bounce[b-wwmow9mzxv] {
    animation: iconBounce-b-wwmow9mzxv 0.6s ease-out;
}

@keyframes iconBounce-b-wwmow9mzxv {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    50% {
        transform: scale(1.2);
    }
    70% {
        transform: scale(0.9);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Subtle pulse for warning icon */
.icon-pulse[b-wwmow9mzxv] {
    animation: iconPulse-b-wwmow9mzxv 2s ease-in-out infinite;
}

@keyframes iconPulse-b-wwmow9mzxv {
    0%, 100% {
        transform: scale(1);
    }
    50% {
        transform: scale(1.05);
    }
}

/* Button hover effects */
.btn-animate[b-wwmow9mzxv] {
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

.btn-animate:hover:not(:disabled)[b-wwmow9mzxv] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.btn-animate:active:not(:disabled)[b-wwmow9mzxv] {
    transform: translateY(0);
}

/* Edit button hover state */
.btn-hover-primary:hover[b-wwmow9mzxv] {
    background-color: var(--bs-primary) !important;
    color: white !important;
}

/* View details button hover state */
.btn-hover-info:hover[b-wwmow9mzxv] {
    background-color: var(--bs-info) !important;
    color: white !important;
}

/* Details modal table */
.details-table tr td[b-wwmow9mzxv] {
    padding: 0.4rem 0;
    vertical-align: middle;
}

.details-table tr:first-child td[b-wwmow9mzxv] {
    padding-top: 0;
}

.details-table tr:last-child td[b-wwmow9mzxv] {
    padding-bottom: 0;
}

/* /Features/AttendanceLogging/ScanQR.razor.rz.scp.css */
/* SweetAlert-style warning icon */
.swal-icon-wrapper[b-722yha0yw6] {
    display: flex;
    justify-content: center;
}

.swal-icon[b-722yha0yw6] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.swal-warning[b-722yha0yw6] {
    border: 4px solid #f8bb86;
    animation: swal-warning-pulse-b-722yha0yw6 0.75s infinite alternate;
}

.swal-warning-body[b-722yha0yw6] {
    position: absolute;
    width: 5px;
    height: 30px;
    background-color: #f8bb86;
    border-radius: 3px;
    top: 15px;
}

.swal-warning-dot[b-722yha0yw6] {
    position: absolute;
    width: 7px;
    height: 7px;
    background-color: #f8bb86;
    border-radius: 50%;
    bottom: 15px;
}

@keyframes swal-warning-pulse-b-722yha0yw6 {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(1.05);
    }
}

/* SweetAlert-style success icon */
.swal-success[b-722yha0yw6] {
    border: 4px solid #a5dc86;
    animation: swal-success-pulse-b-722yha0yw6 0.75s ease-in-out;
}

.swal-success-line[b-722yha0yw6] {
    position: absolute;
    height: 5px;
    background-color: #a5dc86;
    border-radius: 3px;
}

.swal-success-line-tip[b-722yha0yw6] {
    width: 25px;
    transform: rotate(45deg);
    left: 8px;
    top: 40px;
}

.swal-success-line-long[b-722yha0yw6] {
    width: 45px;
    transform: rotate(-45deg);
    right: 4px;
    top: 33px;
}

@keyframes swal-success-pulse-b-722yha0yw6 {
    0% {
        transform: scale(0.8);
        opacity: 0;
    }
    50% {
        transform: scale(1.1);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Modal backdrop animation */
[b-722yha0yw6] .modal.show {
    animation: modal-fade-in-b-722yha0yw6 0.3s ease-out;
}

@keyframes modal-fade-in-b-722yha0yw6 {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

/* Modal content animation */
[b-722yha0yw6] .modal-content {
    animation: modal-scale-in-b-722yha0yw6 0.3s ease-out;
}

@keyframes modal-scale-in-b-722yha0yw6 {
    from {
        transform: scale(0.9);
        opacity: 0;
    }
    to {
        transform: scale(1);
        opacity: 1;
    }
}

/* Button hover effects */
[b-722yha0yw6] .btn-lg:hover {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transition: all 0.2s ease;
}

/* SweetAlert-style buttons */
.swal-btn[b-722yha0yw6] {
    font-size: 1rem;
    font-weight: 600;
    border-radius: 0.5rem;
    border: none;
    transition: all 0.2s ease;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.swal-btn:hover[b-722yha0yw6] {
    transform: translateY(-2px);
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.2);
}

.swal-btn:active[b-722yha0yw6] {
    transform: translateY(0);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.swal-btn-cancel[b-722yha0yw6] {
    background: linear-gradient(180deg, #7c858c 0%, #6e7881 100%);
    color: white;
}

.swal-btn-cancel:hover[b-722yha0yw6] {
    background: linear-gradient(180deg, #8a939b 0%, #7c858c 100%);
    color: white;
}

.swal-btn-confirm[b-722yha0yw6] {
    background: linear-gradient(180deg, #f9c97c 0%, #f8bb86 100%);
    color: #945a1c;
}

.swal-btn-confirm:hover[b-722yha0yw6] {
    background: linear-gradient(180deg, #fad48e 0%, #f9c97c 100%);
    color: #7a4a17;
}

.swal-btn-confirm:disabled[b-722yha0yw6] {
    background: linear-gradient(180deg, #e0e0e0 0%, #cccccc 100%);
    color: #888888;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

/* /Features/Authentication/ForgotPassword.razor.rz.scp.css */
.forgot-card[b-plhmssaqf6] {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.forgot-card:hover[b-plhmssaqf6] {
    transform: translateY(-2px);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.08);
}

.logo-container[b-plhmssaqf6] {
    width: 90px;
    height: 90px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 24px;
    padding: 4px;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.4);
    animation: float-b-plhmssaqf6 3s ease-in-out infinite;
}

.logo-inner[b-plhmssaqf6] {
    width: 100%;
    height: 100%;
    background: white;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@keyframes float-b-plhmssaqf6 {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-6px); }
}

.form-floating-custom[b-plhmssaqf6] {
    position: relative;
}

.form-floating-custom .form-control[b-plhmssaqf6] {
    height: 56px;
    padding-left: 52px !important;
    padding-right: 16px;
    padding-top: 16px;
    padding-bottom: 16px;
    border: 2px solid #e9ecef;
    border-radius: 14px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background-color: #f8f9fa;
}

.form-floating-custom .form-control[b-plhmssaqf6]::placeholder {
    color: #adb5bd;
    opacity: 1;
}

.form-floating-custom .form-control:focus[b-plhmssaqf6] {
    border-color: #667eea;
    background-color: #fff;
    box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1);
}

.form-floating-custom .input-icon[b-plhmssaqf6] {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #6c757d;
    font-size: 1.1rem;
    transition: color 0.3s ease;
    z-index: 5;
    pointer-events: none;
    line-height: 1;
    user-select: none;
    -webkit-user-select: none;
}

.form-floating-custom:focus-within .input-icon[b-plhmssaqf6] {
    color: #667eea;
}

.btn-login[b-plhmssaqf6] {
    height: 56px;
    border-radius: 14px;
    font-weight: 600;
    font-size: 1.05rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    box-shadow: 0 8px 24px rgba(102, 126, 234, 0.35);
    transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
    position: relative;
    overflow: hidden;
    color: #fff !important;
}

.btn-login span[b-plhmssaqf6],
.btn-login i[b-plhmssaqf6] {
    color: #fff !important;
}

.btn-login[b-plhmssaqf6]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s ease;
}

.btn-login:hover:not(:disabled)[b-plhmssaqf6]::before {
    left: 100%;
}

.btn-login:hover:not(:disabled)[b-plhmssaqf6] {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(102, 126, 234, 0.45);
    color: #fff !important;
}

.btn-login:disabled[b-plhmssaqf6] {
    opacity: 0.7;
    cursor: not-allowed;
}

.validation-message[b-plhmssaqf6] {
    color: #dc3545;
    font-size: 0.8rem;
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.validation-message[b-plhmssaqf6]::before {
    content: '\F33A';
    font-family: 'bootstrap-icons', sans-serif;
}

@media (max-width: 576px) {
    .forgot-card[b-plhmssaqf6] {
        border-radius: 20px;
        padding: 20px !important;
    }

    .btn-login[b-plhmssaqf6] {
        height: 50px;
        font-size: 0.95rem;
        border-radius: 12px;
    }

    .form-floating-custom .form-control[b-plhmssaqf6] {
        height: 50px;
        font-size: 16px;
        border-radius: 12px;
    }

    .logo-container[b-plhmssaqf6] {
        width: 72px;
        height: 72px;
        border-radius: 18px;
    }

    .logo-inner[b-plhmssaqf6] {
        border-radius: 14px;
    }

    .logo-inner img[b-plhmssaqf6] {
        width: 46px !important;
        height: 46px !important;
    }
}

/* /Features/Authentication/Login.razor.rz.scp.css */
.login-card[b-lydpgy8rto] {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.login-card:hover[b-lydpgy8rto] {
    transform: translateY(-2px);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.08);
}

.logo-container[b-lydpgy8rto] {
    width: 90px;
    height: 90px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 24px;
    padding: 4px;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.4);
    animation: float-b-lydpgy8rto 3s ease-in-out infinite;
}

.logo-inner[b-lydpgy8rto] {
    width: 100%;
    height: 100%;
    background: white;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@keyframes float-b-lydpgy8rto {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-6px); }
}

.form-floating-custom[b-lydpgy8rto] {
    position: relative;
}

.form-floating-custom .form-control[b-lydpgy8rto] {
    height: 56px;
    padding-left: 52px !important;
    padding-right: 16px;
    padding-top: 16px;
    padding-bottom: 16px;
    border: 2px solid #e9ecef;
    border-radius: 14px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background-color: #f8f9fa;
}

.form-floating-custom .form-control[b-lydpgy8rto]::placeholder {
    color: #adb5bd;
    opacity: 1;
}

.form-floating-custom .form-control:focus[b-lydpgy8rto] {
    border-color: #667eea;
    background-color: #fff;
    box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1);
}

.form-floating-custom .form-control:focus[b-lydpgy8rto]::placeholder {
    color: #c4c9cf;
}

.form-floating-custom .form-control.is-invalid[b-lydpgy8rto],
.form-floating-custom .form-control:invalid[b-lydpgy8rto] {
    border-color: #dc3545;
}

.form-floating-custom .input-icon[b-lydpgy8rto] {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #6c757d;
    font-size: 1.1rem;
    transition: color 0.3s ease;
    z-index: 5;
    pointer-events: none;
    line-height: 1;
    user-select: none;
    -webkit-user-select: none;
}

.form-floating-custom:focus-within .input-icon[b-lydpgy8rto] {
    color: #667eea;
}

.form-floating-custom .password-toggle[b-lydpgy8rto] {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #6c757d;
    cursor: pointer;
    padding: 4px;
    z-index: 4;
    transition: color 0.2s ease;
}

.form-floating-custom .password-toggle:hover[b-lydpgy8rto] {
    color: #667eea;
}

.btn-login[b-lydpgy8rto] {
    height: 56px;
    border-radius: 14px;
    font-weight: 600;
    font-size: 1.05rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    box-shadow: 0 8px 24px rgba(102, 126, 234, 0.35);
    transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
    position: relative;
    overflow: hidden;
    color: #fff !important;
}

.btn-login span[b-lydpgy8rto],
.btn-login i[b-lydpgy8rto] {
    color: #fff !important;
}

.btn-login .spinner-border[b-lydpgy8rto] {
    animation: spinner-border-b-lydpgy8rto 0.75s linear infinite;
}

@keyframes spinner-border-b-lydpgy8rto {
    to { transform: rotate(360deg); }
}

.btn-login[b-lydpgy8rto]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s ease;
}

.btn-login:hover:not(:disabled)[b-lydpgy8rto]::before {
    left: 100%;
}

.btn-login:hover:not(:disabled)[b-lydpgy8rto] {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(102, 126, 234, 0.45);
    color: #fff !important;
}

.btn-login:active:not(:disabled)[b-lydpgy8rto] {
    transform: translateY(0);
}

.btn-login:disabled[b-lydpgy8rto] {
    opacity: 0.7;
    cursor: not-allowed;
}

.remember-check[b-lydpgy8rto] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.remember-check .form-check-input[b-lydpgy8rto] {
    width: 20px;
    height: 20px;
    border: 2px solid #dee2e6;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.remember-check .form-check-input:checked[b-lydpgy8rto] {
    background-color: #667eea;
    border-color: #667eea;
}

.remember-check .form-check-input:focus[b-lydpgy8rto] {
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.2);
}

.divider[b-lydpgy8rto] {
    display: flex;
    align-items: center;
    gap: 16px;
    color: #adb5bd;
    font-size: 0.85rem;
}

.divider[b-lydpgy8rto]::before,
.divider[b-lydpgy8rto]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent, #dee2e6, transparent);
}

.signup-options-compact[b-lydpgy8rto] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.btn-signup-compact[b-lydpgy8rto] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border: 1.5px solid #e9ecef;
    border-radius: 10px;
    background: #fff;
    color: #495057;
    font-weight: 600;
    font-size: 0.82rem;
    text-decoration: none;
    transition: all 0.25s ease;
    white-space: nowrap;
}

.btn-signup-compact i[b-lydpgy8rto] {
    font-size: 1rem;
    color: #667eea;
    transition: color 0.25s ease;
}

.btn-signup-compact:hover[b-lydpgy8rto] {
    border-color: #667eea;
    color: #667eea;
    background: rgba(102, 126, 234, 0.05);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.12);
    text-decoration: none;
}

.btn-signup-compact:hover i[b-lydpgy8rto] {
    color: #764ba2;
}

.btn-signup-compact:active[b-lydpgy8rto] {
    transform: translateY(0);
}

.signup-sep[b-lydpgy8rto] {
    color: #adb5bd;
    font-size: 0.78rem;
    font-weight: 500;
}

.back-home-link[b-lydpgy8rto] {
    display: inline-flex;
    align-items: center;
    font-size: 0.82rem;
    font-weight: 500;
    color: #6c757d;
    text-decoration: none;
    transition: color 0.2s ease;
}

.back-home-link:hover[b-lydpgy8rto] {
    color: #667eea;
    text-decoration: none;
}

.forgot-link[b-lydpgy8rto] {
    color: #667eea;
    font-weight: 500;
    text-decoration: none;
    transition: color 0.2s ease;
}

.forgot-link:hover[b-lydpgy8rto] {
    color: #764ba2;
    text-decoration: underline;
}

.validation-message[b-lydpgy8rto] {
    color: #dc3545;
    font-size: 0.8rem;
    margin-top: 6px;
    display: flex;
    align-items: center;
    gap: 4px;
}

.validation-message[b-lydpgy8rto]::before {
    content: '\F33A';
    font-family: 'bootstrap-icons', sans-serif;
}

@media (max-width: 576px) {
    .signup-options-compact[b-lydpgy8rto] {
        gap: 8px;
    }
    
    .btn-signup-compact[b-lydpgy8rto] {
        padding: 7px 12px;
        font-size: 0.78rem;
        border-radius: 8px;
    }
    
    .btn-signup-compact i[b-lydpgy8rto] {
        font-size: 0.9rem;
    }
    
    .login-card[b-lydpgy8rto] {
        border-radius: 20px;
        padding: 20px !important;
    }
    
    .btn-login[b-lydpgy8rto] {
        height: 50px;
        font-size: 0.95rem;
        border-radius: 12px;
    }
    
    .form-floating-custom .form-control[b-lydpgy8rto] {
        height: 50px;
        font-size: 16px; /* Prevents iOS zoom on focus */
        border-radius: 12px;
    }
    
    .remember-check .form-check-input[b-lydpgy8rto] {
        width: 18px;
        height: 18px;
    }
    
    .remember-check .form-check-label[b-lydpgy8rto] {
        font-size: 0.85rem;
    }
    
    .forgot-link[b-lydpgy8rto] {
        font-size: 0.85rem;
    }
    
    .logo-container[b-lydpgy8rto] {
        width: 72px;
        height: 72px;
        border-radius: 18px;
    }
    
    .logo-inner[b-lydpgy8rto] {
        border-radius: 14px;
    }
    
    .logo-inner img[b-lydpgy8rto] {
        width: 46px !important;
        height: 46px !important;
    }
    
    .divider[b-lydpgy8rto] {
        margin: 16px 0 !important;
        font-size: 0.8rem;
    }
}

/* Tablet breakpoint */
@media (min-width: 577px) and (max-width: 768px) {
    .btn-signup-compact[b-lydpgy8rto] {
        padding: 8px 14px;
    }
}

/* Touch device optimizations */
@media (hover: none) and (pointer: coarse) {
    .btn-signup-compact[b-lydpgy8rto] {
        -webkit-tap-highlight-color: rgba(102, 126, 234, 0.2);
    }
    
    .btn-signup-compact:active[b-lydpgy8rto] {
        transform: scale(0.98);
        background: rgba(102, 126, 234, 0.08);
        border-color: #667eea;
    }
    
    .btn-login:active:not(:disabled)[b-lydpgy8rto] {
        transform: scale(0.98);
    }
    
    .form-floating-custom .password-toggle:active[b-lydpgy8rto] {
        color: #667eea;
    }
}

/* /Features/Authentication/ResetPassword.razor.rz.scp.css */
.reset-card[b-cf7fkv1ki6] {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.reset-card:hover[b-cf7fkv1ki6] {
    transform: translateY(-2px);
    box-shadow: 0 25px 70px rgba(0, 0, 0, 0.12), 0 2px 6px rgba(0, 0, 0, 0.08);
}

.logo-container[b-cf7fkv1ki6] {
    width: 90px;
    height: 90px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 24px;
    padding: 4px;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.4);
    animation: float-b-cf7fkv1ki6 3s ease-in-out infinite;
}

.logo-inner[b-cf7fkv1ki6] {
    width: 100%;
    height: 100%;
    background: white;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@keyframes float-b-cf7fkv1ki6 {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-6px); }
}

.btn-login[b-cf7fkv1ki6] {
    height: 56px;
    border-radius: 14px;
    font-weight: 600;
    font-size: 1.05rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    box-shadow: 0 8px 24px rgba(102, 126, 234, 0.35);
    transition: transform 0.3s ease, box-shadow 0.3s ease, opacity 0.3s ease;
    position: relative;
    overflow: hidden;
    color: #fff !important;
    text-decoration: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.btn-login span[b-cf7fkv1ki6],
.btn-login i[b-cf7fkv1ki6] {
    color: #fff !important;
}

.btn-login[b-cf7fkv1ki6]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s ease;
}

.btn-login:hover:not(:disabled)[b-cf7fkv1ki6]::before {
    left: 100%;
}

.btn-login:hover:not(:disabled)[b-cf7fkv1ki6] {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(102, 126, 234, 0.45);
    color: #fff !important;
    text-decoration: none;
}

.btn-login:disabled[b-cf7fkv1ki6] {
    opacity: 0.7;
    cursor: not-allowed;
}

@media (max-width: 576px) {
    .reset-card[b-cf7fkv1ki6] {
        border-radius: 20px;
        padding: 20px !important;
    }

    .btn-login[b-cf7fkv1ki6] {
        height: 50px;
        font-size: 0.95rem;
        border-radius: 12px;
    }

    .logo-container[b-cf7fkv1ki6] {
        width: 72px;
        height: 72px;
        border-radius: 18px;
    }

    .logo-inner[b-cf7fkv1ki6] {
        border-radius: 14px;
    }

    .logo-inner img[b-cf7fkv1ki6] {
        width: 46px !important;
        height: 46px !important;
    }
}

/* /Features/Billing/Pages/ManualPayment.razor.rz.scp.css */
/* ====================================================
   Manual Payment Page – Mobile-First Enhanced Styles
   Prefixed with 'mp-' to avoid collisions.
   ==================================================== */

/* ===== Container ===== */
.mp-container[b-qhgqmzdifg] {
    max-width: 960px;
    margin: 0 auto;
    padding: 1rem 1rem 4rem;
}

/* ===== Back Link ===== */
.mp-back-link[b-qhgqmzdifg] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    font-weight: 600;
    color: #6b7280;
    text-decoration: none;
    padding: 0.45rem 0.85rem;
    border-radius: 20px;
    border: 1px solid #e5e7eb;
    background: white;
    transition: all 0.15s;
    margin-bottom: 1.25rem;
}
.mp-back-link:hover[b-qhgqmzdifg] {
    background: #f3f4f6;
    color: #374151;
    border-color: #d1d5db;
}

/* ===== Loading ===== */
.mp-loading[b-qhgqmzdifg] {
    text-align: center;
    padding: 4rem 1rem;
}
.mp-loading p[b-qhgqmzdifg] {
    color: #9ca3af;
    margin-top: 0.75rem;
    font-size: 0.9rem;
}

/* ===== Page Title ===== */
.mp-page-title[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    gap: 0.85rem;
    margin-bottom: 1.5rem;
}
.mp-page-title-icon[b-qhgqmzdifg] {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: linear-gradient(135deg, #eef2ff, #e0e7ff);
    color: #4f46e5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    flex-shrink: 0;
}
.mp-page-title h1[b-qhgqmzdifg] {
    font-size: 1.35rem;
    font-weight: 800;
    color: #111827;
    margin-bottom: 0.1rem;
}
.mp-page-title p[b-qhgqmzdifg] {
    font-size: 0.85rem;
    color: #6b7280;
    margin-bottom: 0;
}

/* ===== Empty State ===== */
.mp-empty-state[b-qhgqmzdifg] {
    text-align: center;
    padding: 3.5rem 1.5rem;
    background: white;
    border-radius: 16px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}
.mp-empty-icon[b-qhgqmzdifg] {
    font-size: 3rem;
    color: #d1d5db;
    margin-bottom: 1rem;
}
.mp-empty-state h5[b-qhgqmzdifg] {
    font-weight: 700;
    color: #374151;
    margin-bottom: 0.35rem;
}
.mp-empty-state p[b-qhgqmzdifg] {
    font-size: 0.88rem;
    color: #9ca3af;
    max-width: 320px;
    margin: 0 auto 1.25rem;
}

/* ===== Progress Indicator ===== */
.mp-progress[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-bottom: 1.75rem;
    padding: 1rem 0.5rem;
    background: white;
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
.mp-progress-step[b-qhgqmzdifg] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
}
.mp-progress-dot[b-qhgqmzdifg] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #f3f4f6;
    color: #9ca3af;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}
.mp-step-active .mp-progress-dot[b-qhgqmzdifg] {
    background: #eef2ff;
    color: #4f46e5;
    border-color: #4f46e5;
}
.mp-step-done .mp-progress-dot[b-qhgqmzdifg] {
    background: #4f46e5;
    color: white;
    border-color: #4f46e5;
}
.mp-progress-label[b-qhgqmzdifg] {
    font-size: 0.68rem;
    font-weight: 600;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
}
.mp-step-active .mp-progress-label[b-qhgqmzdifg] {
    color: #4f46e5;
}
.mp-step-done .mp-progress-label[b-qhgqmzdifg] {
    color: #059669;
}
.mp-progress-line[b-qhgqmzdifg] {
    width: 40px;
    height: 2px;
    background: #e5e7eb;
    margin: 0 0.35rem;
    margin-bottom: 1.25rem; /* align with dot center */
    border-radius: 2px;
    transition: background 0.3s;
}
.mp-line-active[b-qhgqmzdifg] {
    background: #4f46e5;
}

/* ===== Cards ===== */
.mp-card[b-qhgqmzdifg] {
    background: white;
    border-radius: 14px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.06), 0 1px 2px rgba(0,0,0,0.04);
    border: 1px solid rgba(0,0,0,0.04);
    overflow: hidden;
    transition: opacity 0.2s;
}
.mp-card-dimmed[b-qhgqmzdifg] {
    opacity: 0.5;
    pointer-events: none;
}
.mp-card-header[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    padding: 0.85rem 1rem;
    border-bottom: 1px solid #f3f4f6;
}
.mp-card-header h5[b-qhgqmzdifg] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #111827;
    margin-bottom: 0;
    flex: 1;
}
.mp-card-body[b-qhgqmzdifg] {
    padding: 1rem;
}
.mp-step-badge[b-qhgqmzdifg] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: #4f46e5;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
    flex-shrink: 0;
}

/* ===== Payment Method Grid ===== */
.mp-method-grid[b-qhgqmzdifg] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.mp-method-card[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    background: white;
}
.mp-method-card:hover[b-qhgqmzdifg] {
    border-color: #c7d2fe;
    background: #fafafe;
}
.mp-method-selected[b-qhgqmzdifg] {
    border-color: #4f46e5;
    background: #eef2ff;
    box-shadow: 0 0 0 1px #4f46e5;
}
.mp-method-icon-wrap[b-qhgqmzdifg] {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    background: #f3f4f6;
    color: #6b7280;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
    transition: all 0.2s;
}
.mp-method-icon-active[b-qhgqmzdifg] {
    background: #4f46e5;
    color: white;
}
.mp-method-info[b-qhgqmzdifg] {
    flex: 1;
    min-width: 0;
}
.mp-method-name[b-qhgqmzdifg] {
    font-size: 0.88rem;
    font-weight: 700;
    color: #111827;
    line-height: 1.3;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mp-method-type[b-qhgqmzdifg] {
    font-size: 0.75rem;
    color: #9ca3af;
    font-weight: 500;
}
.mp-method-check[b-qhgqmzdifg] {
    flex-shrink: 0;
    font-size: 1.15rem;
}

/* ===== Account Details ===== */
.mp-account-details[b-qhgqmzdifg] {
    border-radius: 12px;
    border: 1px solid #e5e7eb;
    overflow: hidden;
    margin-bottom: 0.85rem;
}
.mp-account-header[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.65rem 0.85rem;
    background: #f9fafb;
    border-bottom: 1px solid #e5e7eb;
}
.mp-account-icon[b-qhgqmzdifg] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: #4f46e5;
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    flex-shrink: 0;
}
.mp-account-title[b-qhgqmzdifg] {
    font-size: 0.85rem;
    font-weight: 700;
    color: #111827;
}
.mp-account-body[b-qhgqmzdifg] {
    padding: 0.85rem;
}
.mp-account-text[b-qhgqmzdifg] {
    white-space: pre-wrap;
    font-family: inherit;
    font-size: 0.88rem;
    color: #374151;
    margin-bottom: 0;
    line-height: 1.6;
    background: none;
    border: none;
    padding: 0;
}

/* ===== Instructions ===== */
.mp-instructions[b-qhgqmzdifg] {
    display: flex;
    gap: 0.6rem;
    padding: 0.75rem;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 10px;
    margin-bottom: 0.85rem;
    font-size: 0.82rem;
    color: #92400e;
    align-items: flex-start;
}
.mp-instructions i[b-qhgqmzdifg] {
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

/* ===== QR Code Section ===== */
.mp-qr-section[b-qhgqmzdifg] {
    text-align: center;
    border: 2px dashed #e5e7eb;
    border-radius: 12px;
    padding: 1rem;
    background: #fafafa;
}
.mp-qr-label[b-qhgqmzdifg] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #6b7280;
    margin-bottom: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
.mp-qr-wrapper[b-qhgqmzdifg] {
    max-width: 280px;
    margin: 0 auto;
}
.mp-qr-image[b-qhgqmzdifg] {
    width: 100%;
    height: auto;
    border-radius: 8px;
}

/* ===== Upload Placeholder ===== */
.mp-upload-placeholder[b-qhgqmzdifg] {
    text-align: center;
    padding: 2rem 1rem;
    color: #d1d5db;
}
.mp-upload-placeholder i[b-qhgqmzdifg] {
    font-size: 2.5rem;
    display: block;
    margin-bottom: 0.5rem;
}
.mp-upload-placeholder p[b-qhgqmzdifg] {
    font-size: 0.85rem;
    color: #9ca3af;
    margin-bottom: 0;
}

/* ===== Form Fields ===== */
.mp-form-field[b-qhgqmzdifg] {
    margin-bottom: 1rem;
}
.mp-form-field label[b-qhgqmzdifg] {
    display: block;
    font-size: 0.78rem;
    font-weight: 700;
    color: #374151;
    margin-bottom: 0.3rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}
.mp-input[b-qhgqmzdifg] {
    border-color: #e5e7eb;
    font-size: 0.9rem;
    padding: 0.55rem 0.75rem;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.mp-input:focus[b-qhgqmzdifg] {
    border-color: #818cf8 !important;
    box-shadow: 0 0 0 3px rgba(79, 70, 229, 0.1) !important;
}
.mp-input-prefix[b-qhgqmzdifg] {
    border-radius: 10px 0 0 10px !important;
    background: #f9fafb;
    border-color: #e5e7eb;
    font-weight: 700;
    color: #6b7280;
}
.mp-file-upload[b-qhgqmzdifg] {
    position: relative;
}
.mp-file-hint[b-qhgqmzdifg] {
    font-size: 0.72rem;
    color: #9ca3af;
    margin-top: 0.35rem;
}

/* ===== Receipt Preview ===== */
.mp-receipt-preview[b-qhgqmzdifg] {
    border-radius: 12px;
    border: 1px solid #e5e7eb;
    overflow: hidden;
    margin-bottom: 1rem;
    background: #f9fafb;
    text-align: center;
}
.mp-receipt-preview img[b-qhgqmzdifg] {
    max-height: 200px;
    width: auto;
    max-width: 100%;
    display: block;
    margin: 0.5rem auto;
}
.mp-receipt-preview-label[b-qhgqmzdifg] {
    font-size: 0.78rem;
    font-weight: 600;
    color: #059669;
    padding: 0.5rem;
    background: #ecfdf5;
    border-top: 1px solid #d1fae5;
}
.mp-receipt-file[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1.25rem;
    color: #dc2626;
    font-size: 0.85rem;
    font-weight: 600;
}
.mp-receipt-file i[b-qhgqmzdifg] {
    font-size: 1.5rem;
}

/* ===== Submit Button ===== */
.mp-submit-btn[b-qhgqmzdifg] {
    border-radius: 12px !important;
    font-weight: 700;
    font-size: 0.92rem;
    padding: 0.65rem 1rem;
    transition: all 0.15s;
    margin-top: 0.25rem;
}
.mp-submit-btn:not(:disabled):hover[b-qhgqmzdifg] {
    transform: translateY(-1px);
    box-shadow: 0 4px 14px rgba(79, 70, 229, 0.3);
}
.mp-submit-btn:disabled[b-qhgqmzdifg] {
    opacity: 0.55;
}

/* ===== Review Notice ===== */
.mp-review-notice[b-qhgqmzdifg] {
    display: flex;
    gap: 0.65rem;
    padding: 0.75rem;
    background: #f0f9ff;
    border: 1px solid #bae6fd;
    border-radius: 10px;
    margin-top: 1rem;
    align-items: flex-start;
}
.mp-review-notice > i[b-qhgqmzdifg] {
    font-size: 1.1rem;
    color: #0284c7;
    flex-shrink: 0;
    margin-top: 0.1rem;
}
.mp-review-notice strong[b-qhgqmzdifg] {
    font-size: 0.82rem;
    color: #0c4a6e;
    display: block;
    margin-bottom: 0.15rem;
}
.mp-review-notice p[b-qhgqmzdifg] {
    font-size: 0.78rem;
    color: #0369a1;
    margin-bottom: 0;
    line-height: 1.5;
}

/* ===== Proof Count Badge ===== */
.mp-proof-count[b-qhgqmzdifg] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 22px;
    height: 22px;
    border-radius: 20px;
    background: #e5e7eb;
    color: #374151;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 0 0.4rem;
    margin-left: auto;
}

/* ===== Previous Submissions ===== */
.mp-proof-item[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.85rem 1rem;
    border-bottom: 1px solid #f3f4f6;
    transition: background 0.15s;
}
.mp-proof-item:last-child[b-qhgqmzdifg] {
    border-bottom: none;
}
.mp-proof-item:hover[b-qhgqmzdifg] {
    background: #f9fafb;
}
.mp-proof-status[b-qhgqmzdifg] {
    flex-shrink: 0;
}
.mp-proof-badge[b-qhgqmzdifg] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.55rem;
    border-radius: 20px;
    font-size: 0.68rem;
    font-weight: 700;
    white-space: nowrap;
}
.mp-proof-pending_review[b-qhgqmzdifg] {
    background: #fffbeb;
    color: #d97706;
}
.mp-proof-approved[b-qhgqmzdifg] {
    background: #ecfdf5;
    color: #059669;
}
.mp-proof-rejected[b-qhgqmzdifg] {
    background: #fef2f2;
    color: #dc2626;
}
.mp-proof-details[b-qhgqmzdifg] {
    flex: 1;
    min-width: 0;
}
.mp-proof-amount[b-qhgqmzdifg] {
    font-size: 0.92rem;
    font-weight: 700;
    color: #111827;
}
.mp-proof-ref[b-qhgqmzdifg] {
    font-size: 0.75rem;
    color: #6b7280;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}
.mp-proof-date[b-qhgqmzdifg] {
    font-size: 0.72rem;
    color: #9ca3af;
}
.mp-proof-view-btn[b-qhgqmzdifg] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 10px;
    border: 1px solid #e5e7eb;
    color: #6b7280;
    text-decoration: none;
    transition: all 0.15s;
    flex-shrink: 0;
}
.mp-proof-view-btn:hover[b-qhgqmzdifg] {
    background: #eef2ff;
    border-color: #c7d2fe;
    color: #4f46e5;
}

/* ===== Responsive / Mobile ===== */
@media (max-width: 991.98px) {
    .mp-container[b-qhgqmzdifg] {
        padding: 0.75rem 0.75rem 3rem;
    }

    .mp-page-title[b-qhgqmzdifg] {
        margin-bottom: 1.25rem;
    }
    .mp-page-title-icon[b-qhgqmzdifg] {
        width: 42px;
        height: 42px;
        font-size: 1.15rem;
    }
    .mp-page-title h1[b-qhgqmzdifg] {
        font-size: 1.15rem;
    }
    .mp-page-title p[b-qhgqmzdifg] {
        font-size: 0.78rem;
    }

    /* Stack progress steps tighter */
    .mp-progress[b-qhgqmzdifg] {
        padding: 0.75rem 0.35rem;
        margin-bottom: 1.25rem;
    }
    .mp-progress-line[b-qhgqmzdifg] {
        width: 24px;
    }
    .mp-progress-dot[b-qhgqmzdifg] {
        width: 28px;
        height: 28px;
        font-size: 0.7rem;
    }
    .mp-progress-label[b-qhgqmzdifg] {
        font-size: 0.6rem;
    }

    /* Cards tighter */
    .mp-card-header[b-qhgqmzdifg] {
        padding: 0.75rem 0.85rem;
    }
    .mp-card-body[b-qhgqmzdifg] {
        padding: 0.85rem;
    }

    /* Method cards more compact */
    .mp-method-card[b-qhgqmzdifg] {
        padding: 0.65rem;
    }
    .mp-method-icon-wrap[b-qhgqmzdifg] {
        width: 38px;
        height: 38px;
        font-size: 1rem;
    }
    .mp-method-name[b-qhgqmzdifg] {
        font-size: 0.82rem;
    }

    /* QR code responsive */
    .mp-qr-wrapper[b-qhgqmzdifg] {
        max-width: 220px;
    }
    .mp-qr-section[b-qhgqmzdifg] {
        padding: 0.85rem;
    }

    /* Account details tighter */
    .mp-account-text[b-qhgqmzdifg] {
        font-size: 0.82rem;
    }

    /* Form fields */
    .mp-input[b-qhgqmzdifg] {
        font-size: 0.85rem;
        padding: 0.5rem 0.65rem;
    }

    /* Receipt preview smaller */
    .mp-receipt-preview img[b-qhgqmzdifg] {
        max-height: 160px;
    }

    /* Submit button */
    .mp-submit-btn[b-qhgqmzdifg] {
        font-size: 0.88rem;
        padding: 0.6rem 0.85rem;
    }

    /* Proof items compact */
    .mp-proof-item[b-qhgqmzdifg] {
        padding: 0.7rem 0.85rem;
        gap: 0.6rem;
    }
    .mp-proof-amount[b-qhgqmzdifg] {
        font-size: 0.85rem;
    }
}

@media (max-width: 575.98px) {
    .mp-container[b-qhgqmzdifg] {
        padding: 0.5rem 0.5rem 3rem;
    }

    .mp-back-link[b-qhgqmzdifg] {
        font-size: 0.78rem;
        padding: 0.35rem 0.7rem;
    }

    .mp-page-title[b-qhgqmzdifg] {
        gap: 0.65rem;
    }
    .mp-page-title-icon[b-qhgqmzdifg] {
        width: 38px;
        height: 38px;
        font-size: 1rem;
        border-radius: 10px;
    }
    .mp-page-title h1[b-qhgqmzdifg] {
        font-size: 1.05rem;
    }

    /* Progress even tighter */
    .mp-progress[b-qhgqmzdifg] {
        gap: 0;
        padding: 0.6rem 0.25rem;
    }
    .mp-progress-line[b-qhgqmzdifg] {
        width: 16px;
        margin: 0 0.2rem;
    }
    .mp-progress-dot[b-qhgqmzdifg] {
        width: 26px;
        height: 26px;
    }
    .mp-progress-label[b-qhgqmzdifg] {
        font-size: 0.55rem;
        max-width: 60px;
        text-align: center;
        line-height: 1.2;
    }

    /* Cards minimal padding */
    .mp-card[b-qhgqmzdifg] {
        border-radius: 12px;
    }
    .mp-card-header[b-qhgqmzdifg] {
        padding: 0.65rem 0.75rem;
    }
    .mp-card-header h5[b-qhgqmzdifg] {
        font-size: 0.88rem;
    }
    .mp-card-body[b-qhgqmzdifg] {
        padding: 0.75rem;
    }
    .mp-step-badge[b-qhgqmzdifg] {
        width: 24px;
        height: 24px;
        font-size: 0.65rem;
    }

    /* Method cards stacked */
    .mp-method-card[b-qhgqmzdifg] {
        padding: 0.55rem;
        border-radius: 10px;
    }
    .mp-method-icon-wrap[b-qhgqmzdifg] {
        width: 36px;
        height: 36px;
        border-radius: 10px;
        font-size: 0.95rem;
    }
    .mp-method-name[b-qhgqmzdifg] {
        font-size: 0.8rem;
    }
    .mp-method-type[b-qhgqmzdifg] {
        font-size: 0.7rem;
    }
    .mp-method-check[b-qhgqmzdifg] {
        font-size: 1rem;
    }

    /* QR even smaller */
    .mp-qr-wrapper[b-qhgqmzdifg] {
        max-width: 180px;
    }

    /* Form */
    .mp-form-field label[b-qhgqmzdifg] {
        font-size: 0.72rem;
    }
    .mp-input[b-qhgqmzdifg] {
        font-size: 0.82rem;
        border-radius: 8px !important;
    }

    /* Review notice compact */
    .mp-review-notice[b-qhgqmzdifg] {
        padding: 0.6rem;
        gap: 0.5rem;
    }
    .mp-review-notice strong[b-qhgqmzdifg] {
        font-size: 0.78rem;
    }
    .mp-review-notice p[b-qhgqmzdifg] {
        font-size: 0.72rem;
    }

    /* Proof items */
    .mp-proof-item[b-qhgqmzdifg] {
        padding: 0.6rem 0.75rem;
        gap: 0.5rem;
    }
    .mp-proof-badge[b-qhgqmzdifg] {
        font-size: 0.62rem;
        padding: 0.15rem 0.4rem;
    }
    .mp-proof-amount[b-qhgqmzdifg] {
        font-size: 0.82rem;
    }
    .mp-proof-date[b-qhgqmzdifg] {
        font-size: 0.68rem;
    }
    .mp-proof-view-btn[b-qhgqmzdifg] {
        width: 32px;
        height: 32px;
        border-radius: 8px;
    }
}

/* /Features/EmployeePortal/Components/LeaveBalanceCard.razor.rz.scp.css */
/* ============ LEAVE BALANCE CARD ============ */
.leave-balance-card[b-hcgwa89di1] {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 16px;
    padding: 16px;
    border: 1px solid rgba(0, 0, 0, 0.05);
}

.leave-balance-card.compact[b-hcgwa89di1] {
    padding: 12px;
    border-radius: 12px;
}

.balance-header[b-hcgwa89di1] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--theme-text-main, #212529);
    margin-bottom: 12px;
    display: flex;
    align-items: center;
}

.leave-balance-card.compact .balance-header[b-hcgwa89di1] {
    font-size: 0.8rem;
    margin-bottom: 10px;
}

.balance-header i[b-hcgwa89di1] {
    color: var(--bs-primary, #0056b3);
}

.balance-grid[b-hcgwa89di1] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

@media (min-width: 576px) {
    .balance-grid[b-hcgwa89di1] {
        grid-template-columns: repeat(4, 1fr);
    }
}

.balance-item[b-hcgwa89di1] {
    background: white;
    border-radius: 12px;
    padding: 14px 12px;
    text-align: center;
    border: 2px solid transparent;
    transition: all 0.2s;
}

.leave-balance-card.compact .balance-item[b-hcgwa89di1] {
    padding: 10px 8px;
    border-radius: 10px;
}

.balance-item.low[b-hcgwa89di1] {
    border-color: #ffc107;
    background: #fffbf0;
}

.balance-item.exhausted[b-hcgwa89di1] {
    border-color: #dc3545;
    background: #fff5f5;
    opacity: 0.7;
}

.balance-icon[b-hcgwa89di1] {
    width: 36px;
    height: 36px;
    margin: 0 auto 8px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 86, 179, 0.08);
    color: var(--bs-primary, #0056b3);
}

.leave-balance-card.compact .balance-icon[b-hcgwa89di1] {
    width: 32px;
    height: 32px;
    margin-bottom: 6px;
}

.balance-icon i[b-hcgwa89di1] {
    font-size: 1.1rem;
}

.leave-balance-card.compact .balance-icon i[b-hcgwa89di1] {
    font-size: 0.95rem;
}

.balance-item.exhausted .balance-icon[b-hcgwa89di1] {
    background: rgba(220, 53, 69, 0.08);
    color: #dc3545;
}

.balance-item.low .balance-icon[b-hcgwa89di1] {
    background: rgba(255, 193, 7, 0.08);
    color: #ffc107;
}

.balance-type[b-hcgwa89di1] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
    margin-bottom: 6px;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.leave-balance-card.compact .balance-type[b-hcgwa89di1] {
    font-size: 0.65rem;
    margin-bottom: 4px;
}

.balance-value[b-hcgwa89di1] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 4px;
}

.leave-balance-card.compact .balance-value[b-hcgwa89di1] {
    font-size: 1.25rem;
}

.balance-value .remaining[b-hcgwa89di1] {
    color: var(--bs-primary, #0056b3);
}

.balance-item.exhausted .balance-value .remaining[b-hcgwa89di1] {
    color: #dc3545;
}

.balance-item.low .balance-value .remaining[b-hcgwa89di1] {
    color: #d4a017;
}

.balance-value .separator[b-hcgwa89di1] {
    color: var(--theme-text-muted, #6c757d);
    font-weight: 400;
    font-size: 1rem;
    margin: 0 2px;
}

.leave-balance-card.compact .balance-value .separator[b-hcgwa89di1] {
    font-size: 0.85rem;
}

.balance-value .total[b-hcgwa89di1] {
    color: var(--theme-text-muted, #6c757d);
    font-weight: 400;
    font-size: 1rem;
}

.leave-balance-card.compact .balance-value .total[b-hcgwa89di1] {
    font-size: 0.85rem;
}

.balance-label[b-hcgwa89di1] {
    font-size: 0.6rem;
    color: var(--theme-text-muted, #6c757d);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}

.leave-balance-card.compact .balance-label[b-hcgwa89di1] {
    font-size: 0.55rem;
}

/* Mobile responsive */
@media (max-width: 575.98px) {
    .leave-balance-card.compact .balance-grid[b-hcgwa89di1] {
        gap: 8px;
    }

    .leave-balance-card.compact .balance-item[b-hcgwa89di1] {
        padding: 8px 6px;
    }

    .leave-balance-card.compact .balance-icon[b-hcgwa89di1] {
        width: 28px;
        height: 28px;
        margin-bottom: 4px;
    }

    .leave-balance-card.compact .balance-icon i[b-hcgwa89di1] {
        font-size: 0.85rem;
    }

    .leave-balance-card.compact .balance-value[b-hcgwa89di1] {
        font-size: 1.1rem;
    }
}

/* Pending indicator */
.balance-pending[b-hcgwa89di1] {
    font-size: 0.6rem;
    font-weight: 600;
    color: #e67e22;
    margin-bottom: 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 3px;
}

.balance-pending i[b-hcgwa89di1] {
    font-size: 0.55rem;
}

.leave-balance-card.compact .balance-pending[b-hcgwa89di1] {
    font-size: 0.55rem;
}

.balance-item.has-pending[b-hcgwa89di1] {
    border-color: #e67e22;
    background: #fef9f3;
}

.balance-item.has-pending .balance-icon[b-hcgwa89di1] {
    background: rgba(230, 126, 34, 0.08);
    color: #e67e22;
}

/* Exhausted takes priority over has-pending */
.balance-item.exhausted.has-pending[b-hcgwa89di1] {
    border-color: #dc3545;
    background: #fff5f5;
}

/* /Features/EmployeePortal/WorkModeRequestForm.razor.rz.scp.css */
/* ==========================================
   WORK MODE REQUEST FORM - Enhanced UI
   Mobile-First, Clean UX
   ========================================== */

.wm-request-page[b-xyy159ogqc] {
    min-height: 100vh;
    background: var(--bg-tertiary, #f8f9fa);
}

/* ============ MOBILE HEADER ============ */
.wm-mobile-header[b-xyy159ogqc] {
    background: var(--bg-primary, #ffffff);
    border-bottom: 1px solid var(--border-color, #e9ecef);
    z-index: 100;
}

.wm-mobile-header-content[b-xyy159ogqc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
}

.wm-mobile-header-content h5[b-xyy159ogqc] {
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--theme-text-main, #212529);
    margin: 0;
}

.wm-back-btn[b-xyy159ogqc] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-text-main, #212529);
    text-decoration: none;
    transition: all 0.2s;
}

.wm-back-btn:hover[b-xyy159ogqc] {
    background: rgba(0, 86, 179, 0.1);
    color: var(--bs-primary, #0056b3);
}

/* ============ DESKTOP HEADER ============ */
.wm-back-link[b-xyy159ogqc] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--theme-text-muted, #6c757d);
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: 500;
    margin-bottom: 16px;
    padding: 6px 12px 6px 8px;
    border-radius: 8px;
    transition: all 0.2s;
}

.wm-back-link:hover[b-xyy159ogqc] {
    color: var(--bs-primary, #0056b3);
    background: rgba(0, 86, 179, 0.06);
}

.wm-page-title[b-xyy159ogqc] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-text-main, #212529);
    margin: 0 0 4px;
}

.wm-page-subtitle[b-xyy159ogqc] {
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.9rem;
    margin: 0;
}

/* ============ FORM CONTAINER ============ */
.wm-form-container[b-xyy159ogqc] {
    max-width: 720px;
    margin: 0 auto;
    padding: 24px 16px 100px;
}

@media (min-width: 768px) {
    .wm-form-container[b-xyy159ogqc] {
        padding: 0 16px 60px;
    }
}

/* ============ FORM CARD ============ */
.wm-form-card[b-xyy159ogqc] {
    background: var(--bg-primary, #ffffff);
    border: 1px solid var(--border-color, #e9ecef);
    border-radius: 16px;
    padding: 24px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

@media (min-width: 768px) {
    .wm-form-card[b-xyy159ogqc] {
        padding: 32px;
    }
}

/* ============ FORM SECTIONS ============ */
.wm-form-section[b-xyy159ogqc] {
    margin-bottom: 24px;
}

.wm-form-section .form-label[b-xyy159ogqc] {
    font-size: 0.9rem;
    margin-bottom: 8px;
    color: var(--theme-text-main, #212529);
}

/* ============ DATE INPUT ============ */
.wm-date-control[b-xyy159ogqc] {
    border-radius: 10px;
    border: 1.5px solid var(--border-color, #dee2e6);
    height: 44px;
    transition: border-color 0.2s, box-shadow 0.2s;
}

.wm-date-control:focus[b-xyy159ogqc] {
    border-color: var(--bs-primary, #0056b3);
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.1);
}

/* ============ MODE SELECTOR ============ */
.wm-mode-options[b-xyy159ogqc] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.wm-mode-option[b-xyy159ogqc] {
    cursor: pointer;
    margin: 0;
}

.wm-mode-option input[type="radio"][b-xyy159ogqc] {
    display: none;
}

.wm-mode-card[b-xyy159ogqc] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 16px;
    background: var(--bg-secondary, #f8f9fa);
    border: 2px solid var(--border-color, #e9ecef);
    border-radius: 14px;
    transition: all 0.2s ease;
}

.wm-mode-option:hover .wm-mode-card[b-xyy159ogqc] {
    border-color: rgba(0, 86, 179, 0.3);
    background: rgba(0, 86, 179, 0.02);
}

.wm-mode-option.active .wm-mode-card[b-xyy159ogqc] {
    border-color: var(--bs-primary, #0056b3);
    background: rgba(0, 86, 179, 0.04);
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.1);
}

.wm-mode-icon[b-xyy159ogqc] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 1.25rem;
}

.wm-mode-icon.wfh[b-xyy159ogqc] {
    background: rgba(25, 135, 84, 0.12);
    color: #198754;
}

.wm-mode-icon.wfo[b-xyy159ogqc] {
    background: rgba(0, 86, 179, 0.12);
    color: #0056b3;
}

.wm-mode-option.active .wm-mode-icon.wfh[b-xyy159ogqc] {
    background: rgba(25, 135, 84, 0.2);
}

.wm-mode-option.active .wm-mode-icon.wfo[b-xyy159ogqc] {
    background: rgba(0, 86, 179, 0.2);
}

.wm-mode-info[b-xyy159ogqc] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.wm-mode-name[b-xyy159ogqc] {
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
}

.wm-mode-desc[b-xyy159ogqc] {
    font-size: 0.8rem;
    color: var(--theme-text-muted, #6c757d);
}

.wm-mode-check[b-xyy159ogqc] {
    flex-shrink: 0;
    font-size: 1.25rem;
    color: transparent;
    transition: color 0.2s;
}

.wm-mode-option.active .wm-mode-check[b-xyy159ogqc] {
    color: var(--bs-primary, #0056b3);
}

/* ============ TEXTAREA ============ */
.wm-textarea[b-xyy159ogqc] {
    border-radius: 10px !important;
    border: 1.5px solid var(--border-color, #dee2e6) !important;
    transition: border-color 0.2s, box-shadow 0.2s !important;
    resize: vertical;
}

.wm-textarea:focus[b-xyy159ogqc] {
    border-color: var(--bs-primary, #0056b3) !important;
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.1) !important;
}

/* ============ FORM ACTIONS ============ */
.wm-form-actions[b-xyy159ogqc] {
    display: flex;
    gap: 12px;
    padding-top: 8px;
}

.wm-btn-cancel[b-xyy159ogqc] {
    flex: 1;
    border-radius: 10px;
    padding: 10px 16px;
    font-weight: 500;
    border: 1.5px solid var(--border-color, #dee2e6);
}

.wm-btn-cancel:hover[b-xyy159ogqc] {
    background: var(--bg-secondary, #f8f9fa);
    border-color: var(--theme-text-muted, #adb5bd);
}

.wm-btn-submit[b-xyy159ogqc] {
    flex: 1;
    border-radius: 10px;
    padding: 10px 16px;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(0, 86, 179, 0.2);
}

.wm-btn-submit:hover:not(:disabled)[b-xyy159ogqc] {
    box-shadow: 0 4px 14px rgba(0, 86, 179, 0.3);
    transform: translateY(-1px);
}

.wm-btn-submit:disabled[b-xyy159ogqc] {
    opacity: 0.65;
}

/* ============ MOBILE OVERRIDES ============ */
@media (max-width: 767.98px) {
    .wm-form-card[b-xyy159ogqc] {
        border-radius: 14px;
        padding: 20px;
    }

    .wm-mode-card[b-xyy159ogqc] {
        padding: 14px;
    }

    .wm-mode-icon[b-xyy159ogqc] {
        width: 42px;
        height: 42px;
        font-size: 1.1rem;
    }

    .wm-form-actions[b-xyy159ogqc] {
        flex-direction: column-reverse;
    }

    .wm-btn-cancel[b-xyy159ogqc],
    .wm-btn-submit[b-xyy159ogqc] {
        flex: none;
        width: 100%;
    }
}

/* /Features/Legal/Pages/PrivacyPolicy.razor.rz.scp.css */
/* Legal Page Layout */
.legal-page[b-vbgylzt011] {
    min-height: 100vh;
    background: linear-gradient(135deg, #f5f7fa 0%, #e4e8ec 100%);
}

.legal-card[b-vbgylzt011] {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
}

.legal-icon[b-vbgylzt011] {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.3);
}

.legal-icon i[b-vbgylzt011] {
    font-size: 2.2rem;
    color: white;
}

/* Content Styling */
.legal-content h2[b-vbgylzt011] {
    font-size: 1.35rem;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #e9ecef;
}

.legal-content h5[b-vbgylzt011] {
    font-size: 1rem;
    font-weight: 600;
    color: #495057;
}

.legal-content p[b-vbgylzt011] {
    color: #495057;
    line-height: 1.7;
}

.legal-content ul[b-vbgylzt011] {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.legal-content ul li[b-vbgylzt011] {
    color: #495057;
    line-height: 1.8;
    margin-bottom: 0.5rem;
}

.legal-content section[b-vbgylzt011] {
    scroll-margin-top: 100px;
}

/* Back Button */
.legal-page .btn-outline-secondary[b-vbgylzt011] {
    border-radius: 12px;
    padding: 12px 24px;
    font-weight: 600;
    border: 2px solid #e9ecef;
    transition: all 0.3s ease;
}

.legal-page .btn-outline-secondary:hover[b-vbgylzt011] {
    background: #667eea;
    border-color: #667eea;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
}

/* Responsive */
@media (max-width: 768px) {
    .legal-card[b-vbgylzt011] {
        border-radius: 16px;
    }
    
    .legal-icon[b-vbgylzt011] {
        width: 60px;
        height: 60px;
        border-radius: 16px;
    }
    
    .legal-icon i[b-vbgylzt011] {
        font-size: 1.75rem;
    }
    
    .legal-content h2[b-vbgylzt011] {
        font-size: 1.2rem;
    }
}

/* /Features/Legal/Pages/TermsOfService.razor.rz.scp.css */
/* Legal Page Layout */
.legal-page[b-ddku1021zk] {
    min-height: 100vh;
    background: linear-gradient(135deg, #f5f7fa 0%, #e4e8ec 100%);
}

.legal-card[b-ddku1021zk] {
    background: rgba(255, 255, 255, 0.98);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
}

.legal-icon[b-ddku1021zk] {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 20px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.3);
}

.legal-icon i[b-ddku1021zk] {
    font-size: 2.2rem;
    color: white;
}

/* Content Styling */
.legal-content h2[b-ddku1021zk] {
    font-size: 1.35rem;
    font-weight: 700;
    color: #1a1a2e;
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid #e9ecef;
}

.legal-content h5[b-ddku1021zk] {
    font-size: 1rem;
    font-weight: 600;
    color: #495057;
}

.legal-content p[b-ddku1021zk] {
    color: #495057;
    line-height: 1.7;
}

.legal-content ul[b-ddku1021zk] {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.legal-content ul li[b-ddku1021zk] {
    color: #495057;
    line-height: 1.8;
    margin-bottom: 0.5rem;
}

.legal-content section[b-ddku1021zk] {
    scroll-margin-top: 100px;
}

/* Back Button */
.legal-page .btn-outline-secondary[b-ddku1021zk] {
    border-radius: 12px;
    padding: 12px 24px;
    font-weight: 600;
    border: 2px solid #e9ecef;
    transition: all 0.3s ease;
}

.legal-page .btn-outline-secondary:hover[b-ddku1021zk] {
    background: #667eea;
    border-color: #667eea;
    color: white;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
}

/* Responsive */
@media (max-width: 768px) {
    .legal-card[b-ddku1021zk] {
        border-radius: 16px;
    }
    
    .legal-icon[b-ddku1021zk] {
        width: 60px;
        height: 60px;
        border-radius: 16px;
    }
    
    .legal-icon i[b-ddku1021zk] {
        font-size: 1.75rem;
    }
    
    .legal-content h2[b-ddku1021zk] {
        font-size: 1.2rem;
    }
}

/* /Features/Organizations/Pages/JoinOrganization.razor.rz.scp.css */
.join-page[b-jq6oaxprhw] {
    min-height: 100vh;
    background: linear-gradient(135deg, #f5f7fa 0%, #e4e8ec 100%);
    position: relative;
    overflow: hidden;
}

.join-page[b-jq6oaxprhw]::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 60%;
    height: 100%;
    background: radial-gradient(circle, rgba(102, 126, 234, 0.08) 0%, transparent 70%);
    pointer-events: none;
}

.join-page[b-jq6oaxprhw]::after {
    content: '';
    position: absolute;
    bottom: -30%;
    left: -10%;
    width: 50%;
    height: 80%;
    background: radial-gradient(circle, rgba(118, 75, 162, 0.06) 0%, transparent 70%);
    pointer-events: none;
}

.join-card[b-jq6oaxprhw] {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.logo-container[b-jq6oaxprhw] {
    width: 90px;
    height: 90px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 24px;
    padding: 4px;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.4);
    animation: float-b-jq6oaxprhw 3s ease-in-out infinite;
}

.logo-inner[b-jq6oaxprhw] {
    width: 100%;
    height: 100%;
    background: white;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@keyframes float-b-jq6oaxprhw {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-6px); }
}

.step-header[b-jq6oaxprhw] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    padding: 2rem;
    text-align: center;
}

.step-badge[b-jq6oaxprhw] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.2);
    backdrop-filter: blur(10px);
    padding: 8px 16px;
    border-radius: 50px;
    color: white;
    font-size: 0.85rem;
    font-weight: 500;
}

.org-badge[b-jq6oaxprhw] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: white;
    color: #667eea;
    padding: 10px 20px;
    border-radius: 50px;
    font-weight: 600;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.join-code-input[b-jq6oaxprhw] {
    text-align: center;
    font-size: 2rem !important;
    font-weight: 700;
    letter-spacing: 0.5em;
    text-transform: uppercase;
    border: 2px solid #e9ecef;
    border-radius: 16px;
    padding: 1.25rem 1rem;
    background: #f8f9fa;
    transition: all 0.3s ease;
}

.join-code-input:focus[b-jq6oaxprhw] {
    border-color: #667eea;
    background: white;
    box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1);
}

.join-code-input[b-jq6oaxprhw]::placeholder {
    color: #dee2e6;
    letter-spacing: 0.3em;
}

.form-floating-custom[b-jq6oaxprhw] {
    position: relative;
}

.form-floating-custom .form-control[b-jq6oaxprhw],
.form-floating-custom .form-select[b-jq6oaxprhw] {
    height: 56px;
    padding-left: 52px !important;
    padding-right: 16px;
    padding-top: 16px;
    padding-bottom: 16px;
    border: 2px solid #e9ecef;
    border-radius: 14px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background-color: #f8f9fa;
}

.form-floating-custom .form-control[b-jq6oaxprhw]::placeholder {
    color: #adb5bd;
    opacity: 1;
}

.form-floating-custom .form-control:focus[b-jq6oaxprhw],
.form-floating-custom .form-select:focus[b-jq6oaxprhw] {
    border-color: #667eea;
    background-color: #fff;
    box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1);
}

.form-floating-custom .form-control:focus[b-jq6oaxprhw]::placeholder {
    color: #c4c9cf;
}

.form-floating-custom .input-icon[b-jq6oaxprhw] {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #6c757d;
    font-size: 1.1rem;
    transition: color 0.3s ease;
    z-index: 5;
    pointer-events: none;
    line-height: 1;
    user-select: none;
    -webkit-user-select: none;
}

.form-floating-custom:focus-within .input-icon[b-jq6oaxprhw] {
    color: #667eea;
}

.form-floating-custom .password-toggle[b-jq6oaxprhw] {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #6c757d;
    cursor: pointer;
    padding: 4px;
    z-index: 4;
    transition: color 0.2s ease;
}

.form-floating-custom .password-toggle:hover[b-jq6oaxprhw] {
    color: #667eea;
}

.btn-primary-gradient[b-jq6oaxprhw] {
    height: 56px;
    border-radius: 14px;
    font-weight: 600;
    font-size: 1.05rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    box-shadow: 0 8px 24px rgba(102, 126, 234, 0.35);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    color: #fff !important;
}

.btn-primary-gradient span[b-jq6oaxprhw],
.btn-primary-gradient i[b-jq6oaxprhw] {
    color: #fff !important;
}

.btn-primary-gradient[b-jq6oaxprhw]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s ease;
}

.btn-primary-gradient:hover:not(:disabled)[b-jq6oaxprhw]::before {
    left: 100%;
}

.btn-primary-gradient:hover:not(:disabled)[b-jq6oaxprhw] {
    transform: translateY(-2px);
    box-shadow: 0 12px 32px rgba(102, 126, 234, 0.45);
    color: #fff !important;
}

.btn-primary-gradient:disabled[b-jq6oaxprhw] {
    opacity: 0.7;
    cursor: not-allowed;
}

.btn-secondary-outline[b-jq6oaxprhw] {
    height: 48px;
    border-radius: 14px;
    font-weight: 500;
    border: 2px solid #e9ecef;
    background: white;
    color: #6c757d;
    transition: all 0.3s ease;
}

.btn-secondary-outline:hover[b-jq6oaxprhw] {
    border-color: #667eea;
    color: #667eea;
    background: rgba(102, 126, 234, 0.05);
}

.password-strength[b-jq6oaxprhw] {
    height: 4px;
    border-radius: 2px;
    overflow: hidden;
    background: #e9ecef;
    margin-top: 8px;
}

.password-strength-bar[b-jq6oaxprhw] {
    height: 100%;
    transition: width 0.3s ease, background-color 0.3s ease;
    border-radius: 2px;
}

.info-tip[b-jq6oaxprhw] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: rgba(102, 126, 234, 0.08);
    border-radius: 12px;
    color: #667eea;
    font-size: 0.85rem;
}

.approval-notice[b-jq6oaxprhw] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 16px;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.1) 0%, rgba(255, 152, 0, 0.1) 100%);
    border: 1px solid rgba(255, 193, 7, 0.3);
    border-radius: 14px;
}

.approval-notice i[b-jq6oaxprhw] {
    font-size: 1.25rem;
    color: #f59e0b;
}

.back-link[b-jq6oaxprhw] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #6c757d;
    text-decoration: none;
    font-size: 0.9rem;
    transition: color 0.2s ease;
}

.back-link:hover[b-jq6oaxprhw] {
    color: #667eea;
}

@media (max-width: 576px) {
    .join-card[b-jq6oaxprhw] {
        border-radius: 20px;
    }
    
    .join-code-input[b-jq6oaxprhw] {
        font-size: 1.5rem !important;
        letter-spacing: 0.3em;
    }
}

/* /Features/Organizations/Pages/OrganizationSignup.razor.rz.scp.css */
/* Page Layout */
.signup-page[b-8mr49l3njg] {
    min-height: 100vh;
    background: linear-gradient(135deg, #f5f7fa 0%, #e4e8ec 100%);
    position: relative;
    overflow: hidden;
}

.signup-page[b-8mr49l3njg]::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -20%;
    width: 60%;
    height: 100%;
    background: radial-gradient(circle, rgba(102, 126, 234, 0.08) 0%, transparent 70%);
    pointer-events: none;
}

.signup-page[b-8mr49l3njg]::after {
    content: '';
    position: absolute;
    bottom: -30%;
    left: -10%;
    width: 50%;
    height: 80%;
    background: radial-gradient(circle, rgba(118, 75, 162, 0.06) 0%, transparent 70%);
    pointer-events: none;
}

/* Logo */
.logo-container[b-8mr49l3njg] {
    width: 90px;
    height: 90px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 24px;
    padding: 4px;
    box-shadow: 0 10px 30px rgba(102, 126, 234, 0.4);
    animation: float-b-8mr49l3njg 3s ease-in-out infinite;
}

.logo-inner[b-8mr49l3njg] {
    width: 100%;
    height: 100%;
    background: white;
    border-radius: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.logo-inner i[b-8mr49l3njg] {
    font-size: 2.5rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

@keyframes float-b-8mr49l3njg {
    0%, 100% { transform: translateY(0px); }
    50% { transform: translateY(-6px); }
}

/* Cards */
.signup-card[b-8mr49l3njg] {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(20px);
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.05);
    overflow: hidden;
}

.sidebar-card[b-8mr49l3njg] {
    background: rgba(255, 255, 255, 0.9);
    backdrop-filter: blur(10px);
    border-radius: 20px;
    border: 1px solid rgba(255, 255, 255, 0.5);
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.06);
}

.sidebar-card-primary[b-8mr49l3njg] {
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.08) 0%, rgba(118, 75, 162, 0.08) 100%);
    border: 1px solid rgba(102, 126, 234, 0.15);
}

/* Section Headers */
.section-header[b-8mr49l3njg] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 1.5rem;
}

.section-icon[b-8mr49l3njg] {
    width: 40px;
    height: 40px;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem;
    box-shadow: 0 4px 12px rgba(102, 126, 234, 0.3);
}

.section-title[b-8mr49l3njg] {
    font-weight: 700;
    color: #1a1a2e;
    margin: 0;
    font-size: 1.1rem;
}

/* Form Fields */
.form-floating-custom[b-8mr49l3njg] {
    position: relative;
}

.form-floating-custom .form-control[b-8mr49l3njg],
.form-floating-custom .form-select[b-8mr49l3njg] {
    height: 56px;
    padding-left: 52px !important;
    padding-right: 16px;
    padding-top: 16px;
    padding-bottom: 16px;
    border: 2px solid #e9ecef;
    border-radius: 14px;
    font-size: 1rem;
    transition: all 0.3s ease;
    background-color: #f8f9fa;
}

.form-floating-custom .form-control[b-8mr49l3njg]::placeholder {
    color: #adb5bd;
    opacity: 1;
}

.form-floating-custom .form-control:focus[b-8mr49l3njg],
.form-floating-custom .form-select:focus[b-8mr49l3njg] {
    border-color: #667eea;
    background-color: #fff;
    box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1);
}

.form-floating-custom .form-control:focus[b-8mr49l3njg]::placeholder {
    color: #c4c9cf;
}

.form-floating-custom .input-icon[b-8mr49l3njg] {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #6c757d;
    font-size: 1.1rem;
    transition: color 0.3s ease;
    z-index: 5;
    pointer-events: none;
    line-height: 1;
    user-select: none;
    -webkit-user-select: none;
}

.form-floating-custom:focus-within .input-icon[b-8mr49l3njg] {
    color: #667eea;
}


.form-floating-custom .password-toggle[b-8mr49l3njg] {
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    color: #6c757d;
    cursor: pointer;
    padding: 4px;
    z-index: 4;
    transition: color 0.2s ease;
}

.form-floating-custom .password-toggle:hover[b-8mr49l3njg] {
    color: #667eea;
}

/* Type Cards */
.type-card[b-8mr49l3njg] {
    cursor: pointer;
    border: 2px solid #e9ecef;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    border-radius: 16px;
    background: #fff;
}

.type-card:hover[b-8mr49l3njg] {
    transform: translateY(-4px);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.1);
    border-color: #dee2e6;
}

.type-card.selected[b-8mr49l3njg] {
    border-color: #667eea;
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.04) 0%, rgba(118, 75, 162, 0.04) 100%);
    box-shadow: 0 0 0 1px #667eea, 0 8px 20px rgba(102, 126, 234, 0.15);
}

.type-card .icon-box[b-8mr49l3njg] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.35rem;
    transition: transform 0.3s ease;
    border-radius: 14px;
}

.type-card:hover .icon-box[b-8mr49l3njg] {
    transform: scale(1.1);
}

.selection-indicator[b-8mr49l3njg] {
    position: absolute;
    top: 12px;
    right: 12px;
    color: #667eea;
    opacity: 0;
    transform: scale(0.5);
    transition: all 0.25s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    font-size: 1.25rem;
}

.type-card.selected .selection-indicator[b-8mr49l3njg] {
    opacity: 1;
    transform: scale(1);
}

/* Dropdown Buttons */
.dropdown-select[b-8mr49l3njg] {
    height: 56px;
    border: 2px solid #e9ecef !important;
    border-radius: 14px !important;
    background: #f8f9fa !important;
    transition: all 0.3s ease;
}

.dropdown-select:hover[b-8mr49l3njg],
.dropdown-select:focus[b-8mr49l3njg] {
    border-color: #667eea !important;
    background: #fff !important;
    box-shadow: 0 0 0 4px rgba(102, 126, 234, 0.1) !important;
}

.dropdown-menu-custom[b-8mr49l3njg] {
    border: none;
    border-radius: 16px;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.15);
    padding: 8px;
    max-height: 300px;
    overflow-y: auto;
}

.dropdown-item-custom[b-8mr49l3njg] {
    padding: 12px 16px;
    border-radius: 10px;
    transition: all 0.2s ease;
    margin-bottom: 4px;
}

.dropdown-item-custom:hover[b-8mr49l3njg] {
    background: rgba(102, 126, 234, 0.08);
}

.dropdown-item-custom.active[b-8mr49l3njg] {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
}

/* Primary Button */
.btn-primary-gradient[b-8mr49l3njg] {
    height: 60px;
    border-radius: 16px;
    font-weight: 700;
    font-size: 1.1rem;
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    border: none;
    box-shadow: 0 8px 24px rgba(102, 126, 234, 0.35);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
    color: #fff !important;
    letter-spacing: 0.5px;
}

.btn-primary-gradient span[b-8mr49l3njg],
.btn-primary-gradient i[b-8mr49l3njg] {
    color: #fff !important;
}

.btn-primary-gradient[b-8mr49l3njg]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.2), transparent);
    transition: left 0.5s ease;
}

.btn-primary-gradient:hover:not(:disabled)[b-8mr49l3njg]::before {
    left: 100%;
}

.btn-primary-gradient:hover:not(:disabled)[b-8mr49l3njg] {
    transform: translateY(-3px);
    box-shadow: 0 12px 32px rgba(102, 126, 234, 0.45);
    color: #fff !important;
}

.btn-primary-gradient:disabled[b-8mr49l3njg] {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Terms Card */
.terms-card[b-8mr49l3njg] {
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.06) 0%, rgba(118, 75, 162, 0.06) 100%);
    border: 1px solid rgba(102, 126, 234, 0.15);
    border-radius: 14px;
    padding: 16px;
}

.terms-card .form-check-input[b-8mr49l3njg] {
    width: 22px;
    height: 22px;
    border: 2px solid #dee2e6;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.terms-card .form-check-input:checked[b-8mr49l3njg] {
    background-color: #667eea;
    border-color: #667eea;
}

.terms-card .form-check-input:focus[b-8mr49l3njg] {
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.2);
}

/* Feature List */
.feature-list[b-8mr49l3njg] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.feature-list li[b-8mr49l3njg] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 0;
}

.feature-list li i[b-8mr49l3njg] {
    color: #22c55e;
    font-size: 1rem;
    margin-top: 2px;
}

/* Info Tip */
.info-tip[b-8mr49l3njg] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    background: rgba(102, 126, 234, 0.08);
    border-radius: 10px;
    color: #667eea;
    font-size: 0.85rem;
}

/* Links */
.back-link[b-8mr49l3njg] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: #6c757d;
    text-decoration: none;
    font-size: 0.9rem;
    transition: color 0.2s ease;
}

.back-link:hover[b-8mr49l3njg] {
    color: #667eea;
}

/* Responsive */
@media (max-width: 992px) {
    .signup-card[b-8mr49l3njg] {
        border-radius: 20px;
    }
    
    .type-card[b-8mr49l3njg] {
        border-radius: 14px;
    }
}

@media (max-width: 576px) {
    .logo-container[b-8mr49l3njg] {
        width: 80px;
        height: 80px;
    }
    
    .section-icon[b-8mr49l3njg] {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }
    
    .type-card .icon-box[b-8mr49l3njg] {
        width: 42px;
        height: 42px;
        font-size: 1.2rem;
    }
}

/* Blazor Dropdown Styles */
.blazor-dropdown[b-8mr49l3njg] {
    position: relative;
}

.blazor-dropdown .dropdown-menu.show[b-8mr49l3njg] {
    display: block;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1050;
    margin-top: 4px;
}

.dropdown-backdrop[b-8mr49l3njg] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1040;
    background: transparent;
}

/* Mobile touch improvements */
@media (hover: none) and (pointer: coarse) {
    .type-card[b-8mr49l3njg] {
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
    }
    
    .type-card:active[b-8mr49l3njg] {
        transform: scale(0.98);
    }
    
    .dropdown-select[b-8mr49l3njg] {
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
    }
    
    .dropdown-item-custom[b-8mr49l3njg] {
        -webkit-tap-highlight-color: transparent;
        touch-action: manipulation;
        padding: 14px 16px;
    }
}

/* Plan Selection Toggle */
.plan-option[b-8mr49l3njg] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 14px;
    border: 2px solid #e9ecef;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    background: white;
}

.plan-option:hover[b-8mr49l3njg] {
    border-color: #667eea;
    background: rgba(102, 126, 234, 0.03);
}

.plan-option-active[b-8mr49l3njg] {
    border-color: #667eea;
    background: rgba(102, 126, 234, 0.06);
    box-shadow: 0 0 0 1px rgba(102, 126, 234, 0.2);
}

.plan-option i:first-child[b-8mr49l3njg] {
    font-size: 1.1rem;
}

/* /Features/Recognition/Components/ComposeBox.razor.rz.scp.css */
/* ============ COMPOSE BOX STYLES ============ */
/* Scoped to ComposeBox.razor component */

/* Compose form styles */
.compose-input[b-eb3tn13pqf]::placeholder,
.compose-textarea[b-eb3tn13pqf]::placeholder {
    color: #6c757d !important;
    opacity: 1 !important;
}

.compose-textarea[b-eb3tn13pqf] {
    resize: none;
    font-size: 0.95rem;
    line-height: 1.4;
    background: transparent;
}

.compose-textarea:focus[b-eb3tn13pqf],
.compose-input:focus[b-eb3tn13pqf] {
    box-shadow: none;
    outline: none;
}

/* Avatar styles */
.avatar-3d[b-eb3tn13pqf] {
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 
        0 4px 6px rgba(0, 0, 0, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.06),
        inset 0 -3px 6px rgba(0, 0, 0, 0.1),
        inset 0 3px 6px rgba(255, 255, 255, 0.2);
    border: 2px solid rgba(255, 255, 255, 0.8);
    transition: all 0.3s ease;
}

.avatar-3d:hover[b-eb3tn13pqf] {
    transform: translateY(-2px) scale(1.05);
}

.avatar-3d.avatar-placeholder[b-eb3tn13pqf] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg, #7c8ce8 0%, #667eea 50%, #5a67d8 100%);
    position: relative;
    overflow: hidden;
}

.avatar-3d.avatar-placeholder[b-eb3tn13pqf]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0) 100%);
    border-radius: 50% 50% 0 0;
}

.avatar-3d.avatar-placeholder span[b-eb3tn13pqf],
.avatar-3d.avatar-placeholder small[b-eb3tn13pqf] {
    color: white;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 1;
}

.avatar-compose[b-eb3tn13pqf] {
    width: 44px;
    height: 44px;
}

.avatar-compose span[b-eb3tn13pqf] {
    font-size: 0.9rem;
}

.avatar-small[b-eb3tn13pqf] {
    width: 32px;
    height: 32px;
}

.avatar-small small[b-eb3tn13pqf] {
    font-size: 0.7rem;
}

/* Media buttons */
.media-btn[b-eb3tn13pqf] {
    width: 36px;
    height: 36px;
    min-width: 36px;
    min-height: 36px;
    cursor: pointer;
    transition: all 0.2s ease;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    background-color: #f8f9fa;
    border: 1px solid #dee2e6 !important;
}

.media-btn:hover[b-eb3tn13pqf] {
    background-color: #e3f2fd !important;
    border-color: #0d6efd !important;
    color: #0d6efd !important;
    transform: scale(1.05);
}

.media-btn i[b-eb3tn13pqf] {
    font-size: 1rem;
}

/* Mobile optimizations */
@media (max-width: 576px) {
    .media-btn[b-eb3tn13pqf] {
        width: 40px;
        height: 40px;
        min-width: 40px;
        min-height: 40px;
    }
    
    .media-btn i[b-eb3tn13pqf] {
        font-size: 1.1rem;
    }
}
/* /Features/Recognition/Components/LeaderboardSidebar.razor.rz.scp.css */
/* ============ LEADERBOARD SIDEBAR STYLES ============ */
/* Scoped to LeaderboardSidebar.razor component */

.leaderboard-list[b-3txqagtfbs] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.leaderboard-item[b-3txqagtfbs] {
    display: flex;
    align-items: center;
    padding: 10px 12px;
    border-radius: 8px;
    transition: all 0.15s ease;
    gap: 10px;
}

.leaderboard-item:hover[b-3txqagtfbs] {
    background: #f8f9fa;
}

.leaderboard-rank[b-3txqagtfbs] {
    width: 24px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #6c757d;
    flex-shrink: 0;
    text-align: center;
}

.leaderboard-avatar[b-3txqagtfbs] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid rgba(255, 255, 255, 0.8);
    box-shadow: 
        0 3px 6px rgba(0, 0, 0, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.06),
        inset 0 -2px 4px rgba(0, 0, 0, 0.08);
    transition: all 0.2s ease;
}

.leaderboard-avatar:hover[b-3txqagtfbs] {
    transform: scale(1.1);
    box-shadow: 
        0 5px 10px rgba(0, 0, 0, 0.15),
        0 3px 6px rgba(0, 0, 0, 0.1);
}

.leaderboard-avatar-placeholder[b-3txqagtfbs] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(145deg, #7c8ce8 0%, #667eea 50%, #5a67d8 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 2px solid rgba(255, 255, 255, 0.8);
    box-shadow: 
        0 3px 6px rgba(0, 0, 0, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.06),
        inset 0 -2px 4px rgba(0, 0, 0, 0.1),
        inset 0 2px 4px rgba(255, 255, 255, 0.2);
    position: relative;
    overflow: hidden;
    transition: all 0.2s ease;
}

.leaderboard-avatar-placeholder[b-3txqagtfbs]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0) 100%);
    border-radius: 50% 50% 0 0;
}

.leaderboard-avatar-placeholder:hover[b-3txqagtfbs] {
    transform: scale(1.1);
}

.leaderboard-avatar-placeholder span[b-3txqagtfbs] {
    font-size: 0.7rem;
    font-weight: 700;
    color: #ffffff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 1;
}

.leaderboard-name[b-3txqagtfbs] {
    flex: 1;
    font-size: 0.875rem;
    font-weight: 500;
    color: #212529;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.leaderboard-points[b-3txqagtfbs] {
    font-size: 0.8rem;
    font-weight: 600;
    color: #0d6efd;
    background: linear-gradient(135deg, #e7f1ff 0%, #cfe2ff 100%);
    padding: 4px 10px;
    border-radius: 12px;
    flex-shrink: 0;
}

/* /Features/Recognition/Components/MediaPreview.razor.rz.scp.css */
/* Media Preview Styles */
.media-preview[b-49esab1k0c] {
    margin: 8px 0;
}

.media-preview-container[b-49esab1k0c] {
    position: relative;
    display: inline-block;
    max-width: 100%;
}

.media-preview-image[b-49esab1k0c] {
    max-width: 100%;
    max-height: 300px;
    border-radius: 12px;
    object-fit: cover;
    cursor: zoom-in;
    transition: opacity 0.2s;
}

.media-preview-image:hover[b-49esab1k0c] {
    opacity: 0.95;
}

.media-preview-image:focus[b-49esab1k0c] {
    outline: 2px solid #0d6efd;
    outline-offset: 2px;
}

.media-preview-gif-container[b-49esab1k0c] {
    position: relative;
    display: inline-block;
}

.media-preview-gif[b-49esab1k0c] {
    max-width: 100%;
    max-height: 300px;
    border-radius: 12px;
    object-fit: cover;
}

.gif-badge[b-49esab1k0c] {
    position: absolute;
    bottom: 8px;
    left: 8px;
    background: rgba(0, 0, 0, 0.75);
    color: white;
    font-size: 0.65rem;
    font-weight: bold;
    padding: 3px 8px;
    border-radius: 4px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.media-remove-btn[b-49esab1k0c] {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: rgba(0, 0, 0, 0.6);
    color: white;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s, transform 0.2s;
    font-size: 0.9rem;
}

.media-remove-btn:hover[b-49esab1k0c] {
    background: rgba(220, 53, 69, 0.9);
    transform: scale(1.1);
}

.media-remove-btn:focus[b-49esab1k0c] {
    outline: 2px solid white;
    outline-offset: 2px;
}

/* Smaller variant for compose preview */
.media-preview.compact .media-preview-image[b-49esab1k0c],
.media-preview.compact .media-preview-gif[b-49esab1k0c] {
    max-height: 150px;
    border-radius: 8px;
}

.media-preview.compact .media-remove-btn[b-49esab1k0c] {
    width: 28px;
    height: 28px;
    top: 6px;
    right: 6px;
    font-size: 0.8rem;
}

/* Reduced motion for GIFs */
@media (prefers-reduced-motion: reduce) {
    .media-preview-gif[b-49esab1k0c] {
        /* Show first frame only - browsers will pause GIF animation */
    }
}

/* Dark mode adjustments */
@media (prefers-color-scheme: dark) {
    .media-preview-image[b-49esab1k0c],
    .media-preview-gif[b-49esab1k0c] {
        border: 1px solid #333;
    }
    
    .gif-badge[b-49esab1k0c] {
        background: rgba(255, 255, 255, 0.2);
    }
}

/* Mobile responsive */
@media (max-width: 576px) {
    .media-preview-image[b-49esab1k0c],
    .media-preview-gif[b-49esab1k0c] {
        max-height: 200px;
        border-radius: 8px;
    }
}

/* /Features/Recognition/Components/PointsBalanceCard.razor.rz.scp.css */
/* ============ POINTS BALANCE CARD STYLES ============ */
/* Scoped to PointsBalanceCard.razor component */

.balance-icon-wrapper[b-tj5m85tp9f] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffc107 0%, #ffca2c 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.3);
    flex-shrink: 0;
}

.balance-icon-wrapper i[b-tj5m85tp9f] {
    font-size: 1.5rem;
    color: white;
}

.budget-stat-card[b-tj5m85tp9f] {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 10px;
    padding: 12px 8px;
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.budget-stat-label[b-tj5m85tp9f] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #6c757d;
    margin-bottom: 4px;
}

.budget-stat-value[b-tj5m85tp9f] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #0d6efd;
}

.budget-stat-total[b-tj5m85tp9f] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #adb5bd;
}

/* /Features/Recognition/Components/ReactionPicker.razor.rz.scp.css */
/* Reaction Picker Container */
.reaction-picker-container[b-hnvp10nh7q] {
    position: relative;
    display: inline-block;
}

/* Trigger button */
.reaction-trigger[b-hnvp10nh7q] {
    transition: all 0.2s ease;
    border: none;
    background: transparent;
    text-decoration: none !important;
}

.reaction-trigger:hover[b-hnvp10nh7q] {
    color: #0d6efd !important;
    transform: scale(1.05);
    text-decoration: none !important;
}

.reaction-trigger.reacted[b-hnvp10nh7q] {
    color: #0d6efd !important;
}

.reaction-icons[b-hnvp10nh7q] {
    display: flex;
    align-items: center;
}

.reaction-mini[b-hnvp10nh7q] {
    font-size: 0.9rem;
    margin-right: -4px;
    display: inline-block;
}

.reaction-mini:first-child[b-hnvp10nh7q] {
    z-index: 3;
}

.reaction-mini:nth-child(2)[b-hnvp10nh7q] {
    z-index: 2;
}

.reaction-mini:nth-child(3)[b-hnvp10nh7q] {
    z-index: 1;
}

.reaction-count[b-hnvp10nh7q] {
    margin-left: 8px;
    font-size: 0.85rem;
    color: #6c757d;
    text-decoration: none !important;
}

/* Picker popup */
.reaction-picker-popup[b-hnvp10nh7q] {
    position: absolute;
    bottom: 100%;
    left: 50%;
    transform: translateX(-50%);
    background: white;
    border-radius: 30px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    padding: 6px 10px;
    display: flex;
    gap: 4px;
    margin-bottom: 8px;
    z-index: 1000;
    animation: picker-pop-b-hnvp10nh7q 0.2s ease-out;
}

@keyframes picker-pop-b-hnvp10nh7q {
    0% {
        opacity: 0;
        transform: translateX(-50%) scale(0.8) translateY(10px);
    }
    100% {
        opacity: 1;
        transform: translateX(-50%) scale(1) translateY(0);
    }
}

/* Reaction options */
.reaction-option[b-hnvp10nh7q] {
    border: none;
    background: transparent;
    padding: 8px;
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.15s ease;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
}

.reaction-option:hover[b-hnvp10nh7q] {
    transform: scale(1.3);
    background: #f0f0f0;
}

/* Unique hover animations for each reaction type */
.reaction-option[data-reaction="like"]:hover .reaction-emoji[b-hnvp10nh7q] {
    animation: like-bounce-b-hnvp10nh7q 0.4s ease;
}

.reaction-option[data-reaction="love"]:hover .reaction-emoji[b-hnvp10nh7q] {
    animation: love-pulse-b-hnvp10nh7q 0.6s ease;
}

.reaction-option[data-reaction="celebrate"]:hover .reaction-emoji[b-hnvp10nh7q] {
    animation: celebrate-pop-b-hnvp10nh7q 0.5s ease;
}

.reaction-option[data-reaction="inspire"]:hover .reaction-emoji[b-hnvp10nh7q] {
    animation: inspire-glow-b-hnvp10nh7q 0.5s ease;
}

/* Like - Thumbs up bounce */
@keyframes like-bounce-b-hnvp10nh7q {
    0%, 100% { transform: translateY(0) rotate(0deg); }
    25% { transform: translateY(-6px) rotate(-10deg); }
    50% { transform: translateY(-3px) rotate(5deg); }
    75% { transform: translateY(-5px) rotate(-5deg); }
}

/* Love - Heart pulse/beat */
@keyframes love-pulse-b-hnvp10nh7q {
    0%, 100% { transform: scale(1); }
    15% { transform: scale(1.25); }
    30% { transform: scale(1); }
    45% { transform: scale(1.2); }
    60% { transform: scale(1); }
}

/* Celebrate - Party pop with rotation */
@keyframes celebrate-pop-b-hnvp10nh7q {
    0% { transform: scale(1) rotate(0deg); }
    20% { transform: scale(1.3) rotate(-15deg); }
    40% { transform: scale(1.1) rotate(10deg); }
    60% { transform: scale(1.25) rotate(-5deg); }
    80% { transform: scale(1.1) rotate(5deg); }
    100% { transform: scale(1) rotate(0deg); }
}

/* Inspire - Light bulb glow/flash */
@keyframes inspire-glow-b-hnvp10nh7q {
    0%, 100% { 
        transform: scale(1); 
        filter: brightness(1);
    }
    25% { 
        transform: scale(1.15) translateY(-2px); 
        filter: brightness(1.3);
    }
    50% { 
        transform: scale(1.25) translateY(-4px); 
        filter: brightness(1.5);
    }
    75% { 
        transform: scale(1.15) translateY(-2px); 
        filter: brightness(1.3);
    }
}

.reaction-option.selected[b-hnvp10nh7q] {
    background: #e3f2fd;
}

.reaction-option.selected:hover[b-hnvp10nh7q] {
    background: #bbdefb;
}

.reaction-emoji[b-hnvp10nh7q] {
    font-size: 1.5rem;
    line-height: 1;
}

.reaction-option-count[b-hnvp10nh7q] {
    font-size: 0.55rem;
    color: #666;
    margin-top: 1px;
    font-weight: 500;
}

/* Mobile touch support - disable hover effects */
@media (hover: none) {
    .reaction-option:hover[b-hnvp10nh7q] {
        transform: none;
        background: transparent;
    }
    
    .reaction-option:active[b-hnvp10nh7q] {
        transform: scale(1.3);
        background: #f0f0f0;
    }
    
    .reaction-option.selected:hover[b-hnvp10nh7q] {
        background: #e3f2fd;
    }
}

/* Position adjustment for mobile */
@media (max-width: 576px) {
    .reaction-picker-popup[b-hnvp10nh7q] {
        left: 0;
        transform: translateX(0);
    }
    
    @keyframes picker-pop-b-hnvp10nh7q {
        0% {
            opacity: 0;
            transform: translateX(0) scale(0.8) translateY(10px);
        }
        100% {
            opacity: 1;
            transform: translateX(0) scale(1) translateY(0);
        }
    }
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    .reaction-picker-popup[b-hnvp10nh7q] {
        background: #2d2d2d;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
    }
    
    .reaction-option:hover[b-hnvp10nh7q] {
        background: #3d3d3d;
    }
    
    .reaction-option.selected[b-hnvp10nh7q] {
        background: #1a3a5c;
    }
    
    .reaction-option.selected:hover[b-hnvp10nh7q] {
        background: #234b73;
    }
    
    .reaction-option-count[b-hnvp10nh7q] {
        color: #aaa;
    }
    
    .reaction-count[b-hnvp10nh7q] {
        color: #aaa;
    }
}

/* /Features/Recognition/Components/RecognitionCard.razor.rz.scp.css */
/* ============ RECOGNITION CARD STYLES ============ */
/* Scoped to RecognitionCard.razor component */

.recognition-card:hover[b-qxosv14sn0] {
    transform: translateY(-2px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
}

.hover-underline:hover[b-qxosv14sn0] {
    text-decoration: underline !important;
}

.reaction-btn:hover[b-qxosv14sn0] {
    color: #dc3545 !important;
}

/* Action button styles - remove underlines */
.recognition-card .btn-link[b-qxosv14sn0] {
    text-decoration: none !important;
}

.recognition-card .btn-link:hover[b-qxosv14sn0] {
    text-decoration: none !important;
}

.recognition-card .btn-link span[b-qxosv14sn0] {
    text-decoration: none !important;
}

/* Celebrate button styles */
.celebrate-btn[b-qxosv14sn0] {
    transition: all 0.2s ease;
    position: relative;
}

.celebrate-btn:hover[b-qxosv14sn0] {
    color: #f59e0b !important;
    transform: scale(1.05);
}

.celebrate-btn.celebrated[b-qxosv14sn0] {
    color: #f59e0b !important;
    font-weight: 600;
}

.celebrate-btn.celebrated i[b-qxosv14sn0] {
    animation: celebrate-pulse-b-qxosv14sn0 0.6s ease;
}

@keyframes celebrate-pulse-b-qxosv14sn0 {
    0%, 100% { transform: scale(1); }
    25% { transform: scale(1.3) rotate(-10deg); }
    50% { transform: scale(1.1) rotate(10deg); }
    75% { transform: scale(1.2) rotate(-5deg); }
}


.min-width-0[b-qxosv14sn0] {
    min-width: 0;
}

/* Avatar styles */
.avatar-3d[b-qxosv14sn0] {
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 
        0 4px 6px rgba(0, 0, 0, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.06),
        inset 0 -3px 6px rgba(0, 0, 0, 0.1),
        inset 0 3px 6px rgba(255, 255, 255, 0.2);
    border: 2px solid rgba(255, 255, 255, 0.8);
    transition: all 0.3s ease;
}

.avatar-3d:hover[b-qxosv14sn0] {
    transform: translateY(-2px) scale(1.05);
}

.avatar-3d.avatar-placeholder[b-qxosv14sn0] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg, #7c8ce8 0%, #667eea 50%, #5a67d8 100%);
    position: relative;
    overflow: hidden;
}

.avatar-3d.avatar-placeholder[b-qxosv14sn0]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0) 100%);
    border-radius: 50% 50% 0 0;
}

.avatar-3d.avatar-placeholder span[b-qxosv14sn0] {
    color: white;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 1;
}

.avatar-feed[b-qxosv14sn0] {
    width: 48px;
    height: 48px;
}

.avatar-feed span[b-qxosv14sn0] {
    font-size: 1rem;
}

/* Mobile optimizations */
@media (max-width: 767.98px) {
    .recognition-card[b-qxosv14sn0] {
        border-radius: 16px !important;
        margin-bottom: 12px !important;
    }
    
    .recognition-card .card-body[b-qxosv14sn0] {
        padding: 14px;
    }
}

/* /Features/Recognition/Components/RecognitionDashboard.razor.rz.scp.css */
/* ============ RECOGNITION DASHBOARD STYLES ============ */
/* Scoped to RecognitionDashboard.razor component */

/* ============ PAGE LAYOUT ============ */
.dashboard-page[b-jflum27pv5] {
    min-height: 100vh;
    background: var(--theme-bg-dark, #f0f2f5);
    padding-bottom: 100px;
}

.dashboard-container[b-jflum27pv5] {
    max-width: 800px;
    margin: 0 auto;
    padding: 16px;
}


/* ============ MOBILE HEADER ============ */
.dashboard-mobile-header[b-jflum27pv5] {
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0, 86, 179, 0.1);
    z-index: 1000;
}

.mobile-header-content[b-jflum27pv5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
}

.mobile-header-content h5[b-jflum27pv5] {
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--theme-text-main, #212529);
    margin: 0;
}

.back-btn[b-jflum27pv5] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-text-main, #212529);
    text-decoration: none;
}

/* ============ DESKTOP HEADER ============ */
.back-link[b-jflum27pv5] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--theme-text-muted, #6c757d);
    text-decoration: none;
    font-size: 0.9rem;
    margin-bottom: 12px;
}

.back-link:hover[b-jflum27pv5] {
    color: var(--bs-primary, #0056b3);
}

.page-title[b-jflum27pv5] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-text-main, #212529);
    margin-bottom: 4px;
    display: flex;
    align-items: center;
}

.page-subtitle[b-jflum27pv5] {
    color: var(--theme-text-muted, #6c757d);
    margin: 0;
}

.loading-state[b-jflum27pv5] {
    text-align: center;
    padding: 60px 20px;
}

/* ============ POINTS CARD ============ */
.points-card[b-jflum27pv5] {
    background: white;
    border-radius: 16px;
    padding: 20px;
    margin-bottom: 16px;
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.points-header[b-jflum27pv5] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: var(--bs-primary, #0056b3);
    margin-bottom: 20px;
}

.points-header i[b-jflum27pv5] {
    font-size: 1.1rem;
}

.points-balance[b-jflum27pv5] {
    text-align: center;
    padding: 24px;
    background: linear-gradient(135deg, rgba(0, 86, 179, 0.08) 0%, rgba(0, 86, 179, 0.03) 100%);
    border-radius: 16px;
    margin-bottom: 20px;
}

.balance-amount[b-jflum27pv5] {
    font-size: 3rem;
    font-weight: 800;
    color: var(--bs-primary, #0056b3);
    line-height: 1;
}

.balance-label[b-jflum27pv5] {
    font-size: 0.85rem;
    color: var(--theme-text-muted, #6c757d);
    margin-top: 8px;
}

.points-stats[b-jflum27pv5] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 16px 0;
    margin-bottom: 20px;
}

.stat-item[b-jflum27pv5] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.stat-item i[b-jflum27pv5] {
    font-size: 1.5rem;
}

.stat-item.earned i[b-jflum27pv5] {
    color: var(--bs-success, #198754);
}

.stat-item.spent i[b-jflum27pv5] {
    color: #fd7e14;
}

.stat-info[b-jflum27pv5] {
    display: flex;
    flex-direction: column;
}

.stat-value[b-jflum27pv5] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-text-main, #212529);
}

.stat-label[b-jflum27pv5] {
    font-size: 0.75rem;
    color: var(--theme-text-muted, #6c757d);
}

.stat-divider[b-jflum27pv5] {
    width: 1px;
    height: 40px;
    background: rgba(0, 0, 0, 0.1);
}

/* ============ BUDGET SECTION ============ */
.budget-section[b-jflum27pv5] {
    padding-top: 16px;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.budget-title[b-jflum27pv5] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
    margin-bottom: 16px;
}

.budget-item[b-jflum27pv5] {
    margin-bottom: 14px;
}

.budget-header[b-jflum27pv5] {
    display: flex;
    justify-content: space-between;
    margin-bottom: 6px;
}

.budget-label[b-jflum27pv5] {
    font-size: 0.8rem;
    color: var(--theme-text-muted, #6c757d);
}

.budget-value[b-jflum27pv5] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
}

.budget-bar[b-jflum27pv5] {
    height: 8px;
    background: rgba(0, 0, 0, 0.06);
    border-radius: 4px;
    overflow: hidden;
}

.budget-fill[b-jflum27pv5] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.budget-fill.daily[b-jflum27pv5] {
    background: linear-gradient(90deg, var(--bs-success, #198754) 0%, #20c997 100%);
}

.budget-fill.weekly[b-jflum27pv5] {
    background: linear-gradient(90deg, #0dcaf0 0%, var(--bs-primary, #0056b3) 100%);
}

/* ============ ACTIVITY CARD ============ */
.activity-card[b-jflum27pv5] {
    background: white;
    border-radius: 16px;
    margin-bottom: 16px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

.activity-tabs[b-jflum27pv5] {
    display: flex;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    overflow-x: auto;
}

.tab-btn[b-jflum27pv5] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 14px 12px;
    border: none;
    background: none;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--theme-text-muted, #6c757d);
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: all 0.2s;
    white-space: nowrap;
}

.tab-btn.active[b-jflum27pv5] {
    color: var(--bs-primary, #0056b3);
    border-bottom-color: var(--bs-primary, #0056b3);
}

.tab-count[b-jflum27pv5] {
    padding: 2px 8px;
    background: rgba(0, 0, 0, 0.06);
    border-radius: 10px;
    font-size: 0.7rem;
}

.tab-btn.active .tab-count[b-jflum27pv5] {
    background: rgba(0, 86, 179, 0.15);
    color: var(--bs-primary, #0056b3);
}

.activity-content[b-jflum27pv5] {
    padding: 16px;
}

/* ============ RECOGNITION LIST ============ */
.recognition-list[b-jflum27pv5] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.recognition-item[b-jflum27pv5] {
    display: flex;
    gap: 12px;
    padding: 14px;
    background: var(--theme-bg-dark, #f8f9fa);
    border-radius: 12px;
}

.recognition-avatar[b-jflum27pv5] {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--bs-primary, #0056b3) 0%, #004494 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.recognition-avatar span[b-jflum27pv5] {
    color: white;
    font-size: 0.8rem;
    font-weight: 600;
}

.recognition-avatar.sent[b-jflum27pv5] {
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
}

.recognition-content[b-jflum27pv5] {
    flex: 1;
    min-width: 0;
}

.recognition-header[b-jflum27pv5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 4px;
}

.recognition-name[b-jflum27pv5] {
    font-weight: 600;
    color: var(--theme-text-main, #212529);
    font-size: 0.9rem;
}

.recognition-time[b-jflum27pv5] {
    font-size: 0.75rem;
    color: var(--theme-text-muted, #6c757d);
}

.recognition-message[b-jflum27pv5] {
    margin: 0 0 8px 0;
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.85rem;
    line-height: 1.4;
}

.points-badge[b-jflum27pv5] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    background: linear-gradient(135deg, #fff9e6 0%, #fff3cd 100%);
    border: 1px solid #ffe69c;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #664d03;
}

.points-badge i[b-jflum27pv5] {
    color: #ffc107;
}

.points-badge.sent[b-jflum27pv5] {
    background: linear-gradient(135deg, #e7f1ff 0%, #cfe2ff 100%);
    border-color: #9ec5fe;
    color: var(--bs-primary, #0056b3);
}

.points-badge.sent i[b-jflum27pv5] {
    color: var(--bs-primary, #0056b3);
}

/* ============ TRANSACTIONS ============ */
.transactions-list[b-jflum27pv5] {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.transaction-item[b-jflum27pv5] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: var(--theme-bg-dark, #f8f9fa);
    border-radius: 10px;
}

.transaction-icon[b-jflum27pv5] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.transaction-icon.earned[b-jflum27pv5] {
    background: rgba(25, 135, 84, 0.12);
    color: var(--bs-success, #198754);
}

.transaction-icon.spent[b-jflum27pv5] {
    background: rgba(255, 193, 7, 0.15);
    color: #d4a017;
}

.transaction-icon.bonus[b-jflum27pv5] {
    background: rgba(13, 202, 240, 0.15);
    color: #0aa2c0;
}

.transaction-icon.adjustment[b-jflum27pv5] {
    background: rgba(108, 117, 125, 0.12);
    color: #6c757d;
}

.transaction-content[b-jflum27pv5] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.transaction-desc[b-jflum27pv5] {
    font-size: 0.85rem;
    color: var(--theme-text-main, #212529);
}

.transaction-date[b-jflum27pv5] {
    font-size: 0.75rem;
    color: var(--theme-text-muted, #6c757d);
}

.transaction-amount[b-jflum27pv5] {
    font-size: 0.9rem;
    font-weight: 700;
}

.transaction-amount.positive[b-jflum27pv5] {
    color: var(--bs-success, #198754);
}

.transaction-amount.negative[b-jflum27pv5] {
    color: var(--bs-danger, #dc3545);
}

/* ============ EMPTY STATE ============ */
.empty-state[b-jflum27pv5] {
    text-align: center;
    padding: 40px 20px;
}

.empty-icon[b-jflum27pv5] {
    width: 64px;
    height: 64px;
    margin: 0 auto 16px;
    border-radius: 50%;
    background: linear-gradient(135deg, rgba(0, 86, 179, 0.1) 0%, rgba(0, 86, 179, 0.05) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.empty-icon i[b-jflum27pv5] {
    font-size: 1.75rem;
    color: var(--bs-primary, #0056b3);
    opacity: 0.5;
}

.empty-state h6[b-jflum27pv5] {
    font-weight: 600;
    margin-bottom: 4px;
}

.empty-state p[b-jflum27pv5] {
    font-size: 0.85rem;
    color: var(--theme-text-muted, #6c757d);
    margin: 0;
}

.btn-empty[b-jflum27pv5] {
    display: inline-flex;
    align-items: center;
    margin-top: 16px;
    padding: 10px 20px;
    background: var(--bs-primary, #0056b3);
    color: white;
    border-radius: 10px;
    text-decoration: none;
    font-size: 0.85rem;
    font-weight: 600;
}

/* ============ LEADERBOARD ============ */
.leaderboard-card[b-jflum27pv5] {
    background: white;
    border-radius: 16px;
    border: 1px solid rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

.leaderboard-header[b-jflum27pv5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 20px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.leaderboard-title[b-jflum27pv5] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
}

.leaderboard-title i[b-jflum27pv5] {
    color: #ffc107;
    font-size: 1.1rem;
}

.period-select[b-jflum27pv5] {
    padding: 6px 12px;
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    font-size: 0.8rem;
    background: white;
    cursor: pointer;
}

.leaderboard-content[b-jflum27pv5] {
    padding: 20px;
}

/* ============ PODIUM ============ */
.podium[b-jflum27pv5] {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 12px;
    margin-bottom: 24px;
    padding: 0 16px;
}

.podium-item[b-jflum27pv5] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 16px 12px;
    border-radius: 16px;
    background: var(--theme-bg-dark, #f8f9fa);
    flex: 1;
    max-width: 120px;
}

.podium-item.first[b-jflum27pv5] {
    background: linear-gradient(135deg, #fff9e6 0%, #fff3cd 100%);
    border: 1px solid #ffe69c;
    padding-bottom: 24px;
}

.podium-item.second[b-jflum27pv5] {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border: 1px solid #dee2e6;
}

.podium-item.third[b-jflum27pv5] {
    background: linear-gradient(135deg, #fff5f0 0%, #ffe8dd 100%);
    border: 1px solid #ffd4bd;
}

.podium-item.is-you[b-jflum27pv5] {
    border: 2px solid var(--bs-primary, #0056b3);
    box-shadow: 0 4px 12px rgba(0, 86, 179, 0.15);
}

.podium-avatar[b-jflum27pv5] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--bs-primary, #0056b3) 0%, #004494 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 8px;
}

.podium-item.first .podium-avatar[b-jflum27pv5] {
    width: 56px;
    height: 56px;
}

.podium-avatar span[b-jflum27pv5] {
    color: white;
    font-weight: 600;
    font-size: 0.85rem;
}

.podium-item.first .podium-avatar span[b-jflum27pv5] {
    font-size: 1rem;
}

.podium-medal[b-jflum27pv5] {
    font-size: 1.5rem;
    margin-bottom: 4px;
}

.podium-item.first .podium-medal[b-jflum27pv5] {
    font-size: 2rem;
}

.podium-name[b-jflum27pv5] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
    text-align: center;
    margin-bottom: 2px;
}

.podium-points[b-jflum27pv5] {
    font-size: 0.7rem;
    color: var(--theme-text-muted, #6c757d);
}

/* ============ LEADERBOARD LIST ============ */
.dashboard-leaderboard-list[b-jflum27pv5] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.dashboard-leaderboard-item[b-jflum27pv5] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 12px;
    background: var(--theme-bg-dark, #f8f9fa);
    border-radius: 10px;
}

.dashboard-leaderboard-item.is-you[b-jflum27pv5] {
    background: rgba(0, 86, 179, 0.08);
    border: 1px solid rgba(0, 86, 179, 0.2);
}

.dashboard-leaderboard-rank[b-jflum27pv5] {
    width: 32px;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--theme-text-muted, #6c757d);
}

.dashboard-leaderboard-avatar[b-jflum27pv5] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(135deg, #6c757d 0%, #495057 100%);
    display: flex;
    align-items: center;
    justify-content: center;
}

.dashboard-leaderboard-avatar span[b-jflum27pv5] {
    color: white;
    font-size: 0.75rem;
    font-weight: 600;
}

.dashboard-leaderboard-info[b-jflum27pv5] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.dashboard-leaderboard-name[b-jflum27pv5] {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--theme-text-main, #212529);
    display: flex;
    align-items: center;
    gap: 6px;
}

.you-badge[b-jflum27pv5] {
    font-size: 0.65rem;
    padding: 2px 6px;
    background: var(--bs-primary, #0056b3);
    color: white;
    border-radius: 8px;
}

.dashboard-leaderboard-points[b-jflum27pv5] {
    font-size: 0.75rem;
    color: var(--theme-text-muted, #6c757d);
}

/* ============ RESPONSIVE ============ */
@media (min-width: 768px) {
    .dashboard-container[b-jflum27pv5] {
        padding: 24px;
    }
}

@media (max-width: 479.98px) {
    .podium[b-jflum27pv5] {
        gap: 8px;
        padding: 0;
    }

    .podium-item[b-jflum27pv5] {
        padding: 12px 8px;
    }

    .podium-avatar[b-jflum27pv5] {
        width: 40px;
        height: 40px;
    }

    .podium-item.first .podium-avatar[b-jflum27pv5] {
        width: 48px;
        height: 48px;
    }

    .podium-medal[b-jflum27pv5] {
        font-size: 1.25rem;
    }

    .podium-item.first .podium-medal[b-jflum27pv5] {
        font-size: 1.5rem;
    }

    .podium-name[b-jflum27pv5] {
        font-size: 0.7rem;
    }
}

/* /Features/Recognition/Components/RecognitionDetail.razor.rz.scp.css */
/* ============ RECOGNITION DETAIL PAGE STYLES ============ */
/* Scoped to RecognitionDetail.razor component */

/* ============ PAGE LAYOUT ============ */
.recognition-detail-page[b-n0qte3igo8] {
    min-height: 100vh;
    background: var(--theme-bg-dark, #f0f2f5);
}

/* ============ STICKY HEADER ============ */
.detail-header[b-n0qte3igo8] {
    position: sticky;
    top: 0;
    z-index: 100;
    display: flex;
    align-items: center;
    padding: 12px 16px;
    background: rgba(255, 255, 255, 0.95);
    backdrop-filter: blur(10px);
    border-bottom: 1px solid rgba(0, 86, 179, 0.1);
}

.back-button[b-n0qte3igo8] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-text-main, #212529);
    text-decoration: none;
    transition: background 0.2s;
}

.back-button:hover[b-n0qte3igo8] {
    background: rgba(0, 86, 179, 0.1);
    color: var(--bs-primary, #0056b3);
}

.back-button i[b-n0qte3igo8] {
    font-size: 1.25rem;
}

.header-title[b-n0qte3igo8] {
    flex: 1;
    text-align: center;
    font-weight: 700;
    margin: 0;
    font-size: 1rem;
}

.header-spacer[b-n0qte3igo8] {
    width: 36px;
}

/* ============ CONTAINER ============ */
.detail-container[b-n0qte3igo8] {
    max-width: 600px;
    margin: 0 auto;
    background: #ffffff;
    min-height: calc(100vh - 60px);
}

[b-n0qte3igo8] .detail-container {
    border-left: 1px solid rgba(0, 86, 179, 0.1);
    border-right: 1px solid rgba(0, 86, 179, 0.1);
}

/* ============ LOADING & EMPTY STATES ============ */
.loading-state[b-n0qte3igo8],
.empty-state[b-n0qte3igo8] {
    text-align: center;
    padding: 60px 20px;
}

.empty-state i[b-n0qte3igo8] {
    font-size: 3rem;
    margin-bottom: 16px;
}

/* ============ RECOGNITION POST (Twitter Style) ============ */
.recognition-post[b-n0qte3igo8] {
    padding: 16px;
}

.post-header[b-n0qte3igo8] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 12px;
}

.avatar-wrapper[b-n0qte3igo8] {
    flex-shrink: 0;
}

.avatar[b-n0qte3igo8] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    object-fit: cover;
}

.avatar-placeholder[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--bs-primary, #0056b3) 0%, #004494 100%);
    color: white;
    font-weight: 600;
    font-size: 1rem;
}

.avatar-sm[b-n0qte3igo8] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    object-fit: cover;
}

.avatar-sm.avatar-placeholder[b-n0qte3igo8] {
    font-size: 0.8rem;
}

.post-meta[b-n0qte3igo8] {
    flex: 1;
    min-width: 0;
}

.user-line[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.user-name[b-n0qte3igo8] {
    font-weight: 700;
    color: var(--theme-text-main, #212529);
    font-size: 0.95rem;
}

.user-action[b-n0qte3igo8] {
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.9rem;
}

.recipient-line[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-top: 2px;
}

.recipient-name[b-n0qte3igo8] {
    font-weight: 600;
    color: var(--bs-primary, #0056b3);
    text-decoration: none;
    font-size: 0.9rem;
}

.recipient-name:hover[b-n0qte3igo8] {
    text-decoration: underline;
}

.post-time[b-n0qte3igo8] {
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.85rem;
}

/* Post Content */
.post-content[b-n0qte3igo8] {
    padding-left: 0;
}

.post-message[b-n0qte3igo8] {
    font-size: 1.1rem;
    line-height: 1.5;
    color: var(--theme-text-main, #212529);
    margin-bottom: 12px;
    white-space: pre-wrap;
    word-wrap: break-word;
}

.detail-points-badge[b-n0qte3igo8] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.15) 0%, rgba(255, 193, 7, 0.08) 100%);
    border: 1px solid rgba(255, 193, 7, 0.3);
    border-radius: 20px;
    margin-bottom: 12px;
}

.detail-points-badge i[b-n0qte3igo8] {
    color: #ffc107;
    font-size: 0.9rem;
}

.detail-points-badge span[b-n0qte3igo8] {
    font-weight: 600;
    color: #856404;
    font-size: 0.9rem;
}

.hashtags[b-n0qte3igo8] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 12px;
}

.hashtag[b-n0qte3igo8] {
    color: var(--bs-primary, #0056b3);
    text-decoration: none;
    font-size: 0.95rem;
}

.hashtag:hover[b-n0qte3igo8] {
    text-decoration: underline;
}

/* Post Timestamp */
.post-timestamp[b-n0qte3igo8] {
    padding: 12px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.9rem;
}

.post-timestamp .separator[b-n0qte3igo8] {
    margin: 0 6px;
}

/* Post Stats */
.post-stats[b-n0qte3igo8] {
    display: flex;
    gap: 24px;
    padding: 12px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
}

.detail-stat-item[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.detail-stat-value[b-n0qte3igo8] {
    font-weight: 700;
    color: var(--theme-text-main, #212529);
}

.detail-stat-label[b-n0qte3igo8] {
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.9rem;
}

/* Post Actions */
.post-actions[b-n0qte3igo8] {
    display: flex;
    justify-content: space-around;
    padding: 8px 0;
    border-top: 1px solid rgba(0, 0, 0, 0.06);
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.action-btn[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 10px 20px;
    border: none;
    background: transparent;
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.9rem;
    font-weight: 500;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s;
}

.action-btn:hover[b-n0qte3igo8] {
    background: rgba(0, 86, 179, 0.08);
    color: var(--bs-primary, #0056b3);
}

.action-btn.liked[b-n0qte3igo8] {
    color: #e91e63;
}

.action-btn.liked:hover[b-n0qte3igo8] {
    background: rgba(233, 30, 99, 0.08);
}

.action-btn i[b-n0qte3igo8] {
    font-size: 1.15rem;
}

/* ============ COMMENTS SECTION ============ */
.comments-section[b-n0qte3igo8] {
    border-top: 8px solid var(--theme-bg-dark, #f0f2f5);
}

/* Comment Composer */
.comment-composer[b-n0qte3igo8] {
    display: flex;
    gap: 12px;
    padding: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
}

.composer-avatar[b-n0qte3igo8] {
    flex-shrink: 0;
}

.composer-input-area[b-n0qte3igo8] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.comment-input[b-n0qte3igo8] {
    width: 100%;
    padding: 12px 0;
    border: none;
    outline: none;
    font-size: 1rem;
    color: var(--theme-text-main, #212529);
    background: transparent;
}

.comment-input[b-n0qte3igo8]::placeholder {
    color: var(--theme-text-muted, #6c757d);
}

.points-selector[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 8px;
}

.points-pills[b-n0qte3igo8] {
    display: flex;
    gap: 6px;
    flex-wrap: wrap;
}

.point-pill[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border: 1px solid rgba(0, 0, 0, 0.12);
    background: #ffffff;
    border-radius: 20px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--theme-text-muted, #6c757d);
    cursor: pointer;
    transition: all 0.2s;
}

.point-pill i[b-n0qte3igo8] {
    color: #ffc107;
    font-size: 0.7rem;
}

.point-pill:hover:not(.disabled)[b-n0qte3igo8] {
    border-color: var(--bs-primary, #0056b3);
    color: var(--bs-primary, #0056b3);
}

.point-pill.selected[b-n0qte3igo8] {
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.2) 0%, rgba(255, 193, 7, 0.1) 100%);
    border-color: #ffc107;
    color: #856404;
}

.point-pill.disabled[b-n0qte3igo8] {
    opacity: 0.4;
    cursor: not-allowed;
}

.budget-indicator[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.8rem;
    color: var(--theme-text-muted, #6c757d);
    background: #f8f9fa;
    padding: 6px 12px;
    border-radius: 20px;
    border: 1px solid #e9ecef;
}

.budget-indicator i[b-n0qte3igo8] {
    color: #6c757d;
}

.reply-actions[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    margin-top: 8px;
}

.post-btn[b-n0qte3igo8] {
    align-self: flex-end;
    padding: 8px 20px;
    background: var(--bs-primary, #0056b3);
    color: white;
    border: none;
    border-radius: 20px;
    font-weight: 600;
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s;
}

.post-btn:hover:not(:disabled)[b-n0qte3igo8] {
    background: #004494;
    transform: translateY(-1px);
}

.post-btn:disabled[b-n0qte3igo8] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Loading Comments */
.loading-comments[b-n0qte3igo8] {
    text-align: center;
    padding: 24px;
}

/* No Comments */
.no-comments[b-n0qte3igo8] {
    text-align: center;
    padding: 40px 20px;
    color: var(--theme-text-muted, #6c757d);
}

.no-comments i[b-n0qte3igo8] {
    font-size: 2.5rem;
    opacity: 0.5;
    margin-bottom: 12px;
}

.no-comments p[b-n0qte3igo8] {
    font-weight: 600;
    margin-bottom: 4px;
    color: var(--theme-text-main, #212529);
}

.no-comments span[b-n0qte3igo8] {
    font-size: 0.9rem;
}

/* Comments List */
.comments-list[b-n0qte3igo8] {
    display: flex;
    flex-direction: column;
}

.comment-item[b-n0qte3igo8] {
    display: flex;
    gap: 12px;
    padding: 16px;
    border-bottom: 1px solid rgba(0, 0, 0, 0.06);
    transition: background 0.2s;
}

.comment-item:hover[b-n0qte3igo8] {
    background: rgba(0, 86, 179, 0.02);
}

.comment-avatar[b-n0qte3igo8] {
    flex-shrink: 0;
}

.comment-body[b-n0qte3igo8] {
    flex: 1;
    min-width: 0;
}

.comment-header[b-n0qte3igo8] {
    display: flex;
    align-items: center;
    gap: 4px;
    margin-bottom: 4px;
}

.comment-user[b-n0qte3igo8] {
    font-weight: 700;
    color: var(--theme-text-main, #212529);
    font-size: 0.9rem;
}

.comment-time[b-n0qte3igo8] {
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.85rem;
}

.comment-text[b-n0qte3igo8] {
    margin: 0 0 8px 0;
    color: var(--theme-text-main, #212529);
    font-size: 0.95rem;
    line-height: 1.4;
    word-wrap: break-word;
}

.comment-points[b-n0qte3igo8] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 8px;
    background: rgba(255, 193, 7, 0.15);
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
    color: #856404;
    margin-bottom: 8px;
}

.comment-points i[b-n0qte3igo8] {
    color: #ffc107;
    font-size: 0.7rem;
}

.comment-actions[b-n0qte3igo8] {
    margin-top: 4px;
}

.delete-btn[b-n0qte3igo8] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border: none;
    background: transparent;
    color: var(--theme-text-muted, #6c757d);
    font-size: 0.75rem;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s;
}

.delete-btn:hover[b-n0qte3igo8] {
    background: rgba(211, 47, 47, 0.1);
    color: var(--bs-danger, #d32f2f);
}

.locked-notice[b-n0qte3igo8] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    font-size: 0.75rem;
    color: var(--theme-text-muted, #6c757d);
}

/* ============ RESPONSIVE ============ */
@media (max-width: 575.98px) {
    .post-message[b-n0qte3igo8] {
        font-size: 1rem;
    }

    .action-btn[b-n0qte3igo8] {
        padding: 10px 12px;
    }

    .points-selector[b-n0qte3igo8] {
        flex-direction: column;
        align-items: flex-start;
    }

    .budget-indicator[b-n0qte3igo8] {
        margin-top: 4px;
    }
}

@media (min-width: 768px) {
    .detail-container[b-n0qte3igo8] {
        border-left: 1px solid rgba(0, 86, 179, 0.1);
        border-right: 1px solid rgba(0, 86, 179, 0.1);
    }
}

/* ============ COMMENT MEDIA ============ */
.comment-media-row[b-n0qte3igo8] {
    display: flex;
    gap: 8px;
    margin-top: 8px;
}

.media-btn-sm[b-n0qte3igo8] {
    width: 28px;
    height: 28px;
    border: 1px solid #ddd;
    border-radius: 50%;
    background: transparent;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s;
    color: #6c757d;
}

.media-btn-sm:hover[b-n0qte3igo8] {
    background: #e3f2fd;
    border-color: #0d6efd;
    color: #0d6efd;
}

.media-btn-sm i[b-n0qte3igo8] {
    font-size: 0.8rem;
}

.comment-media-preview[b-n0qte3igo8] {
    margin-top: 8px;
}
/* /Features/Recognition/Components/RecognitionFeed.razor.rz.scp.css */
/* ============ RECOGNITION FEED STYLES ============ */
/* Scoped to RecognitionFeed.razor component */

/* 3D Avatar Styles */
.avatar-3d[b-3g8kxfyhp7] {
    border-radius: 50%;
    object-fit: cover;
    box-shadow: 
        0 4px 6px rgba(0, 0, 0, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.06),
        inset 0 -3px 6px rgba(0, 0, 0, 0.1),
        inset 0 3px 6px rgba(255, 255, 255, 0.2);
    border: 2px solid rgba(255, 255, 255, 0.8);
    transition: all 0.3s ease;
    position: relative;
}

.avatar-3d:hover[b-3g8kxfyhp7] {
    transform: translateY(-2px) scale(1.05);
    box-shadow: 
        0 8px 15px rgba(0, 0, 0, 0.15),
        0 4px 6px rgba(0, 0, 0, 0.1),
        inset 0 -3px 6px rgba(0, 0, 0, 0.1),
        inset 0 3px 6px rgba(255, 255, 255, 0.3);
}

.avatar-3d.avatar-placeholder[b-3g8kxfyhp7] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg, #7c8ce8 0%, #667eea 50%, #5a67d8 100%);
    position: relative;
    overflow: hidden;
}

.avatar-3d.avatar-placeholder[b-3g8kxfyhp7]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0) 100%);
    border-radius: 50% 50% 0 0;
}

.avatar-3d.avatar-placeholder span[b-3g8kxfyhp7],
.avatar-3d.avatar-placeholder small[b-3g8kxfyhp7] {
    color: white;
    font-weight: 700;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 1;
}

/* Avatar Sizes */
.avatar-feed[b-3g8kxfyhp7] {
    width: 48px;
    height: 48px;
}

.avatar-feed span[b-3g8kxfyhp7] {
    font-size: 1rem;
}

.avatar-compose[b-3g8kxfyhp7] {
    width: 44px;
    height: 44px;
}

.avatar-compose span[b-3g8kxfyhp7] {
    font-size: 0.9rem;
}

.avatar-small[b-3g8kxfyhp7] {
    width: 32px;
    height: 32px;
}

.avatar-small small[b-3g8kxfyhp7] {
    font-size: 0.7rem;
}

[b-3g8kxfyhp7] .recognition-card:hover {
    transform: translateY(-2px);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
}

.hover-underline:hover[b-3g8kxfyhp7] {
    text-decoration: underline !important;
}

[b-3g8kxfyhp7] .reaction-btn:hover {
    color: #dc3545 !important;
}

/* Balance Card Styles */
.balance-icon-wrapper[b-3g8kxfyhp7] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ffc107 0%, #ffca2c 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(255, 193, 7, 0.3);
    flex-shrink: 0;
}

.balance-icon-wrapper i[b-3g8kxfyhp7] {
    font-size: 1.5rem;
    color: white;
}

.budget-stat-card[b-3g8kxfyhp7] {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 10px;
    padding: 12px 8px;
    border: 1px solid rgba(0, 0, 0, 0.04);
}

.budget-stat-label[b-3g8kxfyhp7] {
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #6c757d;
    margin-bottom: 4px;
}

.budget-stat-value[b-3g8kxfyhp7] {
    font-size: 1.1rem;
    font-weight: 700;
    color: #0d6efd;
}

.budget-stat-total[b-3g8kxfyhp7] {
    font-size: 0.85rem;
    font-weight: 500;
    color: #adb5bd;
}

/* Trending Hashtags Styles */
[b-3g8kxfyhp7] .trending-hashtags-list {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

[b-3g8kxfyhp7] .trending-hashtag-item {
    display: block;
    padding: 10px 12px;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.15s ease;
    background: transparent;
}

[b-3g8kxfyhp7] .trending-hashtag-item:hover {
    background: #f8f9fa;
}

[b-3g8kxfyhp7] .trending-hashtag-item.active {
    background: linear-gradient(135deg, #e7f1ff 0%, #cfe2ff 100%);
}

[b-3g8kxfyhp7] .trending-hashtag-item .hashtag-name {
    font-weight: 600;
    font-size: 0.9rem;
    color: #212529;
}

[b-3g8kxfyhp7] .trending-hashtag-item.active .hashtag-name {
    color: #0d6efd;
}

[b-3g8kxfyhp7] .trending-hashtag-item .hashtag-count {
    font-size: 0.75rem;
    font-weight: 500;
    color: #6c757d;
    background: #e9ecef;
    padding: 2px 8px;
    border-radius: 10px;
}

[b-3g8kxfyhp7] .trending-hashtag-item.active .hashtag-count {
    background: #0d6efd;
    color: white;
}

/* Leaderboard Styles */
[b-3g8kxfyhp7] .leaderboard-list {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

[b-3g8kxfyhp7] .leaderboard-item {
    display: flex;
    align-items: center;
    padding: 10px 12px;
    border-radius: 8px;
    transition: all 0.15s ease;
    gap: 10px;
}

[b-3g8kxfyhp7] .leaderboard-item:hover {
    background: #f8f9fa;
}

[b-3g8kxfyhp7] .leaderboard-rank {
    width: 24px;
    font-size: 0.85rem;
    font-weight: 600;
    color: #6c757d;
    flex-shrink: 0;
    text-align: center;
}

[b-3g8kxfyhp7] .leaderboard-avatar {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    border: 2px solid rgba(255, 255, 255, 0.8);
    box-shadow: 
        0 3px 6px rgba(0, 0, 0, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.06),
        inset 0 -2px 4px rgba(0, 0, 0, 0.08);
    transition: all 0.2s ease;
}

[b-3g8kxfyhp7] .leaderboard-avatar:hover {
    transform: scale(1.1);
    box-shadow: 
        0 5px 10px rgba(0, 0, 0, 0.15),
        0 3px 6px rgba(0, 0, 0, 0.1);
}

[b-3g8kxfyhp7] .leaderboard-avatar-placeholder {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: linear-gradient(145deg, #7c8ce8 0%, #667eea 50%, #5a67d8 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    border: 2px solid rgba(255, 255, 255, 0.8);
    box-shadow: 
        0 3px 6px rgba(0, 0, 0, 0.1),
        0 2px 4px rgba(0, 0, 0, 0.06),
        inset 0 -2px 4px rgba(0, 0, 0, 0.1),
        inset 0 2px 4px rgba(255, 255, 255, 0.2);
    position: relative;
    overflow: hidden;
    transition: all 0.2s ease;
}

[b-3g8kxfyhp7] .leaderboard-avatar-placeholder::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0.25) 0%, rgba(255,255,255,0) 100%);
    border-radius: 50% 50% 0 0;
}

[b-3g8kxfyhp7] .leaderboard-avatar-placeholder:hover {
    transform: scale(1.1);
    box-shadow: 
        0 5px 10px rgba(0, 0, 0, 0.15),
        0 3px 6px rgba(0, 0, 0, 0.1),
        inset 0 -2px 4px rgba(0, 0, 0, 0.1),
        inset 0 2px 4px rgba(255, 255, 255, 0.3);
}

[b-3g8kxfyhp7] .leaderboard-avatar-placeholder span {
    font-size: 0.7rem;
    font-weight: 700;
    color: #ffffff;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    position: relative;
    z-index: 1;
}

[b-3g8kxfyhp7] .leaderboard-name {
    flex: 1;
    font-size: 0.875rem;
    font-weight: 500;
    color: #212529;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-3g8kxfyhp7] .leaderboard-points {
    font-size: 0.8rem;
    font-weight: 600;
    color: #0d6efd;
    background: linear-gradient(135deg, #e7f1ff 0%, #cfe2ff 100%);
    padding: 4px 10px;
    border-radius: 12px;
    flex-shrink: 0;
}

/* Who to Recognize Styles */
.recognize-suggestions[b-3g8kxfyhp7] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.suggest-item[b-3g8kxfyhp7] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 8px 10px;
    border-radius: 8px;
    background: #f8f9fa;
    transition: all 0.15s ease;
}

.suggest-item:hover[b-3g8kxfyhp7] {
    background: #e9ecef;
}

.suggest-icon[b-3g8kxfyhp7] {
    font-size: 1rem;
    flex-shrink: 0;
    line-height: 1.4;
}

.suggest-text[b-3g8kxfyhp7] {
    font-size: 0.8rem;
    color: #495057;
    line-height: 1.4;
}

/* ============ PAGE LAYOUT ============ */
.recognition-page[b-3g8kxfyhp7] {
    min-height: 100vh;
    background: var(--theme-bg-dark, #f0f2f5);
    padding-bottom: 100px;
}

.recognition-container[b-3g8kxfyhp7] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 16px;
}

@media (min-width: 768px) {
    .recognition-container[b-3g8kxfyhp7] {
        padding: 24px;
    }
}


/* ============ MOBILE HEADER ============ */
.recognition-mobile-header[b-3g8kxfyhp7] {
    background: rgba(255, 255, 255, 0.98);
    border-bottom: 1px solid rgba(0, 86, 179, 0.1);
    z-index: 1000;
}

.mobile-header-content[b-3g8kxfyhp7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
}

.mobile-header-content h5[b-3g8kxfyhp7] {
    font-weight: 700;
    font-size: 1.1rem;
    color: var(--theme-text-main, #212529);
}

/* Mobile Stats Bar */
.mobile-stats-bar[b-3g8kxfyhp7] {
    background: linear-gradient(135deg, #f8f9fa 0%, #ffffff 100%);
    padding: 12px 16px;
    border-bottom: 1px solid #e9ecef;
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.mobile-stat-item[b-3g8kxfyhp7] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.mobile-stat-icon[b-3g8kxfyhp7] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.mobile-stat-icon.balance[b-3g8kxfyhp7] {
    background: linear-gradient(135deg, #ffc107 0%, #ffca2c 100%);
    box-shadow: 0 3px 8px rgba(255, 193, 7, 0.35);
}

.mobile-stat-icon.balance i[b-3g8kxfyhp7] {
    color: white;
    font-size: 1rem;
}

.mobile-stat-content[b-3g8kxfyhp7] {
    display: flex;
    align-items: baseline;
    gap: 3px;
}

.mobile-stat-value[b-3g8kxfyhp7] {
    font-size: 1.25rem;
    font-weight: 700;
    color: #212529;
}

.mobile-stat-label[b-3g8kxfyhp7] {
    font-size: 0.75rem;
    color: #6c757d;
    font-weight: 500;
}

.mobile-budget-item[b-3g8kxfyhp7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 6px 12px;
    background: white;
    border-radius: 10px;
    border: 1px solid #e9ecef;
}

.mobile-budget-label[b-3g8kxfyhp7] {
    font-size: 0.65rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #6c757d;
    font-weight: 600;
    margin-bottom: 2px;
}

.mobile-budget-progress[b-3g8kxfyhp7] {
    display: flex;
    align-items: baseline;
}

.mobile-budget-value[b-3g8kxfyhp7] {
    font-size: 0.95rem;
    font-weight: 700;
    color: #0d6efd;
}

.mobile-budget-total[b-3g8kxfyhp7] {
    font-size: 0.8rem;
    color: #adb5bd;
    font-weight: 500;
}

/* Mobile Floating Action Button */
.mobile-fab[b-3g8kxfyhp7] {
    position: fixed;
    bottom: 90px;
    right: 20px;
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #0d6efd 0%, #0a58ca 100%);
    border: none;
    color: white;
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 16px rgba(13, 110, 253, 0.4);
    z-index: 1050;
    transition: all 0.2s ease;
}

.mobile-fab:active[b-3g8kxfyhp7] {
    transform: scale(0.95);
}

.mobile-fab i[b-3g8kxfyhp7] {
    transition: transform 0.2s ease;
}

/* Mobile Recognition Cards */
@media (max-width: 767.98px) {
    [b-3g8kxfyhp7] .container {
        padding-left: 12px;
        padding-right: 12px;
    }
    
    /* Add top padding for content after sticky header */
    [b-3g8kxfyhp7] .col-lg-6.col-md-8 > .card:first-of-type,
    [b-3g8kxfyhp7] .col-lg-6.col-md-8 > .d-md-none + .d-md-none + .card {
        margin-top: 8px;
    }
    
    [b-3g8kxfyhp7] .recognition-card {
        border-radius: 16px !important;
        margin-bottom: 12px !important;
    }
    
    [b-3g8kxfyhp7] .recognition-card .card-body {
        padding: 14px;
    }
    
    [b-3g8kxfyhp7] .recognition-card .me-3 {
        margin-right: 12px !important;
    }
    
    [b-3g8kxfyhp7] .recognition-card .me-3 .rounded-circle,
    [b-3g8kxfyhp7] .recognition-card .me-3 img {
        width: 42px !important;
        height: 42px !important;
    }
    
    [b-3g8kxfyhp7] .recognition-card .me-3 .rounded-circle span {
        font-size: 0.8rem;
    }
    
    [b-3g8kxfyhp7] .recognition-card p {
        font-size: 0.95rem !important;
        line-height: 1.5;
    }
    
    [b-3g8kxfyhp7] .recognition-card .badge {
        font-size: 0.75rem;
        padding: 6px 10px !important;
    }
    
    /* Action buttons */
    [b-3g8kxfyhp7] .recognition-card .d-flex.gap-4 {
        gap: 0 !important;
        justify-content: space-around;
    }
    
    [b-3g8kxfyhp7] .recognition-card .border-top {
        margin-top: 12px !important;
        padding-top: 12px !important;
    }
    
    [b-3g8kxfyhp7] .recognition-card .btn-link {
        font-size: 0.85rem;
    }
    
    /* Hashtags */
    [b-3g8kxfyhp7] .recognition-card .text-primary.text-decoration-none {
        font-size: 0.875rem;
    }
}

/* Hover shadow utility */
[b-3g8kxfyhp7] .hover-shadow:hover {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1) !important;
}

/* Compose form styles */
[b-3g8kxfyhp7] .compose-input::placeholder,
[b-3g8kxfyhp7] .compose-textarea::placeholder {
    color: #6c757d !important;
    opacity: 1 !important;
}

[b-3g8kxfyhp7] .compose-textarea {
    resize: none;
    font-size: 0.95rem;
    line-height: 1.4;
    background: transparent;
}

[b-3g8kxfyhp7] .compose-textarea:focus,
[b-3g8kxfyhp7] .compose-input:focus {
    box-shadow: none;
    outline: none;
}

/* Compact button group */
[b-3g8kxfyhp7] .btn-group-sm > .btn {
    font-size: 0.8rem;
    padding: 0.2rem 0.5rem;
}

.min-width-0[b-3g8kxfyhp7] {
    min-width: 0;
}

/* /Features/Recognition/Components/TrendingHashtags.razor.rz.scp.css */
/* ============ TRENDING HASHTAGS STYLES ============ */
/* Scoped to TrendingHashtags.razor component */

.trending-hashtags-list[b-6h4nxp2hb2] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.trending-hashtag-item[b-6h4nxp2hb2] {
    display: block;
    padding: 10px 12px;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.15s ease;
    background: transparent;
}

.trending-hashtag-item:hover[b-6h4nxp2hb2] {
    background: #f8f9fa;
}

.trending-hashtag-item.active[b-6h4nxp2hb2] {
    background: linear-gradient(135deg, #e7f1ff 0%, #cfe2ff 100%);
}

.trending-hashtag-item .hashtag-name[b-6h4nxp2hb2] {
    font-weight: 600;
    font-size: 0.9rem;
    color: #212529;
}

.trending-hashtag-item.active .hashtag-name[b-6h4nxp2hb2] {
    color: #0d6efd;
}

.trending-hashtag-item .hashtag-count[b-6h4nxp2hb2] {
    font-size: 0.75rem;
    font-weight: 500;
    color: #6c757d;
    background: #e9ecef;
    padding: 2px 8px;
    border-radius: 10px;
}

.trending-hashtag-item.active .hashtag-count[b-6h4nxp2hb2] {
    background: #0d6efd;
    color: white;
}

/* /Features/SessionManagement/CreateSession.razor.rz.scp.css */
/* CreateSession.razor.css - Enhanced Styling */

/* ========================================
   BACK BUTTON
   ======================================== */
.back-button[b-qsbw2gsks4] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background-color: #f8f9fa;
    border: 1px solid #e9ecef;
    color: #6c757d;
    text-decoration: none;
    transition: all 0.2s ease;
}

.back-button:hover[b-qsbw2gsks4] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: white;
    transform: translateX(-2px);
    box-shadow: 0 4px 12px rgba(0, 86, 179, 0.25);
}

.back-button i[b-qsbw2gsks4] {
    font-size: 1rem;
}

/* ========================================
   DATE BADGE
   ======================================== */
.date-badge[b-qsbw2gsks4] {
    display: inline-flex;
    align-items: center;
    padding: 0.5rem 1rem;
    font-size: 0.85rem;
    font-weight: 500;
    color: var(--bs-primary);
    background-color: rgba(0, 86, 179, 0.08);
    border: 1px solid rgba(0, 86, 179, 0.2);
    border-radius: 50px;
}

/* ========================================
   RECURRENCE PATTERN OPTIONS
   ======================================== */
.recurrence-option[b-qsbw2gsks4] {
    display: flex;
    align-items: center;
    padding: 1rem 1.25rem;
    background-color: #fff;
    border: 2px solid #e9ecef;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
    margin: 0;
    min-height: 70px;
}

.recurrence-option:hover[b-qsbw2gsks4] {
    border-color: var(--bs-primary);
    background-color: rgba(0, 86, 179, 0.03);
}

.recurrence-option.active[b-qsbw2gsks4] {
    border-color: var(--bs-primary);
    background-color: rgba(0, 86, 179, 0.08);
    box-shadow: 0 0 0 3px rgba(0, 86, 179, 0.1);
}

/* Hide the radio button input - multiple selectors for specificity */
.recurrence-radio[b-qsbw2gsks4],
.recurrence-option input[b-qsbw2gsks4],
.recurrence-option input[type="radio"][b-qsbw2gsks4],
.recurrence-option > input[b-qsbw2gsks4],
[b-qsbw2gsks4] .recurrence-option input {
    position: absolute !important;
    opacity: 0 !important;
    width: 0 !important;
    height: 0 !important;
    pointer-events: none !important;
    visibility: hidden !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
}

.recurrence-option i[b-qsbw2gsks4] {
    font-size: 1.5rem;
    color: #6c757d;
    transition: color 0.2s ease;
    flex-shrink: 0;
}

.recurrence-option.active i[b-qsbw2gsks4] {
    color: var(--bs-primary);
}

.recurrence-option span[b-qsbw2gsks4] {
    font-weight: 500;
    color: #495057;
}

.recurrence-option.active span[b-qsbw2gsks4] {
    color: var(--bs-primary);
    font-weight: 600;
}

.recurrence-option small[b-qsbw2gsks4] {
    font-size: 0.75rem;
    line-height: 1.2;
}

.recurrence-option.active small[b-qsbw2gsks4] {
    color: var(--bs-primary) !important;
    opacity: 0.8;
}

/* ========================================
   ACTION BUTTONS
   ======================================== */
.action-buttons-container[b-qsbw2gsks4] {
    margin-top: 1.5rem;
    padding: 1.25rem 1.5rem;
    background: linear-gradient(135deg, #2d3748 0%, #1a202c 100%);
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
}

.action-buttons-container .d-flex[b-qsbw2gsks4] {
    gap: 0.75rem !important;
}

.btn-cancel[b-qsbw2gsks4] {
    padding: 0.75rem 1.5rem;
    font-weight: 500;
    font-size: 0.9rem;
    border-radius: 10px;
    background-color: #ffffff;
    border: 1px solid #e2e8f0;
    color: #4a5568;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-cancel:hover[b-qsbw2gsks4] {
    background-color: #f7fafc;
    border-color: #cbd5e0;
    color: #2d3748;
}

.btn-reset[b-qsbw2gsks4] {
    padding: 0.75rem 1.5rem;
    font-weight: 500;
    font-size: 0.9rem;
    border-radius: 10px;
    background-color: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.4);
    color: #ffffff;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-reset:hover[b-qsbw2gsks4] {
    background-color: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.6);
    color: #ffffff;
}

.btn-create[b-qsbw2gsks4] {
    padding: 0.75rem 1.5rem;
    font-weight: 600;
    font-size: 0.9rem;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--bs-primary) 0%, #004494 100%);
    border: none;
    color: white;
    box-shadow: 0 4px 15px rgba(0, 86, 179, 0.3);
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn-create:hover:not(:disabled)[b-qsbw2gsks4] {
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 86, 179, 0.4);
    background: linear-gradient(135deg, #0066cc 0%, #003d80 100%);
    color: white;
}

.btn-create:disabled[b-qsbw2gsks4] {
    opacity: 0.7;
    cursor: not-allowed;
    box-shadow: none;
    color: white;
}

/* ========================================
   SESSION SUMMARY CARD
   ======================================== */
.session-summary-card[b-qsbw2gsks4] {
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    margin-bottom: 1.5rem;
    border: 1px solid rgba(0, 86, 179, 0.1);
}

.summary-header[b-qsbw2gsks4] {
    background: linear-gradient(135deg, var(--bs-primary) 0%, #004494 100%);
    padding: 1rem 1.25rem;
}

.summary-header h6[b-qsbw2gsks4] {
    font-size: 0.8rem;
    letter-spacing: 1px;
}

.summary-body[b-qsbw2gsks4] {
    padding: 1.25rem;
}

.summary-list[b-qsbw2gsks4] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.summary-list li[b-qsbw2gsks4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid #f0f0f0;
}

.summary-list li:last-child[b-qsbw2gsks4] {
    border-bottom: none;
}

.summary-label[b-qsbw2gsks4] {
    color: #6c757d;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
}

.summary-label i[b-qsbw2gsks4] {
    font-size: 0.85rem;
}

.summary-value[b-qsbw2gsks4] {
    font-weight: 600;
    color: #212529;
    font-size: 0.9rem;
    text-align: right;
    max-width: 55%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Features Section */
.features-section[b-qsbw2gsks4] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #f0f0f0;
}

.features-label[b-qsbw2gsks4] {
    font-size: 0.75rem;
    font-weight: 600;
    color: #6c757d;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.feature-badge[b-qsbw2gsks4] {
    display: inline-flex;
    align-items: center;
    padding: 0.35rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 500;
    border-radius: 50px;
    border: 1px solid;
}

.feature-badge-info[b-qsbw2gsks4] {
    background-color: rgba(13, 202, 240, 0.1);
    color: #0aa2c0;
    border-color: rgba(13, 202, 240, 0.3);
}

.feature-badge-warning[b-qsbw2gsks4] {
    background-color: rgba(255, 193, 7, 0.1);
    color: #cc9a00;
    border-color: rgba(255, 193, 7, 0.3);
}

.feature-badge-success[b-qsbw2gsks4] {
    background-color: rgba(25, 135, 84, 0.1);
    color: #198754;
    border-color: rgba(25, 135, 84, 0.3);
}

.feature-badge-primary[b-qsbw2gsks4] {
    background-color: rgba(0, 86, 179, 0.1);
    color: var(--bs-primary);
    border-color: rgba(0, 86, 179, 0.3);
}

/* ========================================
   QUICK TIPS CARD - HIGHLIGHTED
   ======================================== */
.quick-tips-card[b-qsbw2gsks4] {
    background: linear-gradient(135deg, #1a3a5c 0%, #0d2137 100%);
    border-radius: 16px;
    padding: 1.25rem;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    position: relative;
    overflow: hidden;
}

.quick-tips-card[b-qsbw2gsks4]::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -50%;
    width: 100%;
    height: 100%;
    background: radial-gradient(circle, rgba(255,255,255,0.05) 0%, transparent 60%);
    pointer-events: none;
}

.tips-header[b-qsbw2gsks4] {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
    position: relative;
}

.tips-icon[b-qsbw2gsks4] {
    font-size: 1.25rem;
    color: #ffc107;
    margin-right: 0.75rem;
    filter: drop-shadow(0 0 8px rgba(255, 193, 7, 0.5));
}

.tips-title[b-qsbw2gsks4] {
    font-size: 0.85rem;
    font-weight: 700;
    color: white;
    letter-spacing: 1px;
}

.tips-list[b-qsbw2gsks4] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.tips-list li[b-qsbw2gsks4] {
    display: flex;
    align-items: flex-start;
    color: rgba(255, 255, 255, 0.85);
    font-size: 0.875rem;
    margin-bottom: 0.75rem;
    line-height: 1.5;
}

.tips-list li:last-child[b-qsbw2gsks4] {
    margin-bottom: 0;
}

.tips-bullet[b-qsbw2gsks4] {
    color: #4ade80;
    margin-right: 0.75rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

.tips-list li strong[b-qsbw2gsks4] {
    color: #fff;
    font-weight: 600;
}

/* ========================================
   GENERAL CARD IMPROVEMENTS
   ======================================== */
.card[b-qsbw2gsks4] {
    transition: box-shadow 0.3s ease, transform 0.2s ease;
}

.card:hover[b-qsbw2gsks4] {
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.08) !important;
}

/* Input Groups Enhancement */
.input-group:focus-within[b-qsbw2gsks4] {
    box-shadow: 0 0 0 0.2rem rgba(0, 86, 179, 0.15);
    border-radius: 0.375rem;
}

.input-group:focus-within .input-group-text[b-qsbw2gsks4] {
    border-color: var(--bs-primary);
    color: var(--bs-primary);
}

.input-group:focus-within .form-control[b-qsbw2gsks4],
.input-group:focus-within .form-select[b-qsbw2gsks4] {
    border-color: var(--bs-primary);
}

/* Switch Controls */
.form-check-input[role="switch"][b-qsbw2gsks4] {
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.form-check-input[role="switch"]:checked[b-qsbw2gsks4] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

/* Collapsible Animation */
.card-body[class*="pt-0"][b-qsbw2gsks4] {
    animation: slideDown-b-qsbw2gsks4 0.3s ease;
}

@keyframes slideDown-b-qsbw2gsks4 {
    from {
        opacity: 0;
        transform: translateY(-10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Alert Enhancement */
.alert[b-qsbw2gsks4] {
    animation: slideInDown-b-qsbw2gsks4 0.3s ease;
}

@keyframes slideInDown-b-qsbw2gsks4 {
    from {
        opacity: 0;
        transform: translateY(-20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ========================================
   MOBILE RESPONSIVENESS
   ======================================== */

/* Tablet View (768px - 991px) */
@media (max-width: 991.98px) {
    .container-fluid[b-qsbw2gsks4] {
        padding-left: 1rem;
        padding-right: 1rem;
    }
    
    .sticky-lg-top[b-qsbw2gsks4] {
        position: relative !important;
        top: 0 !important;
    }
    
    .session-summary-card[b-qsbw2gsks4],
    .quick-tips-card[b-qsbw2gsks4] {
        margin-bottom: 1rem;
    }
}

/* Mobile View (up to 767px) */
@media (max-width: 767.98px) {
    /* Container & Layout */
    .container-fluid[b-qsbw2gsks4] {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
        margin-top: 1rem !important;
    }
    
    /* Header Section */
    .d-flex.flex-column.flex-md-row.mb-4[b-qsbw2gsks4] {
        margin-bottom: 1rem !important;
    }
    
    h4.fw-bold[b-qsbw2gsks4] {
        font-size: 1.15rem;
    }
    
    h4.fw-bold i[b-qsbw2gsks4] {
        font-size: 1rem;
    }
    
    .date-badge[b-qsbw2gsks4] {
        padding: 0.4rem 0.75rem;
        font-size: 0.75rem;
    }
    
    /* Cards */
    .card[b-qsbw2gsks4] {
        border-radius: 12px !important;
        margin-bottom: 1rem !important;
    }
    
    .card-body.p-4[b-qsbw2gsks4] {
        padding: 1rem !important;
    }
    
    .card-header.py-3[b-qsbw2gsks4] {
        padding: 0.75rem 1rem !important;
    }
    
    /* Section Headers */
    h6[style*="letter-spacing"][b-qsbw2gsks4] {
        font-size: 0.7rem !important;
        margin-bottom: 0.75rem !important;
    }
    
    /* Quick Presets */
    .d-flex.flex-wrap.gap-2 .btn-outline-primary[b-qsbw2gsks4] {
        flex: 1 1 calc(50% - 0.5rem);
        min-width: 0;
        padding: 0.5rem 0.75rem;
        font-size: 0.8rem;
        justify-content: center;
    }
    
    .d-flex.flex-wrap.gap-2 .btn-outline-primary i[b-qsbw2gsks4] {
        font-size: 0.85rem;
    }
    
    /* Form Controls */
    .form-label[b-qsbw2gsks4] {
        font-size: 0.875rem;
        margin-bottom: 0.4rem;
    }
    
    .form-control[b-qsbw2gsks4],
    .form-select[b-qsbw2gsks4] {
        font-size: 16px !important; /* Prevents iOS zoom on focus */
        padding: 0.625rem 0.875rem;
    }
    
    .form-control-lg[b-qsbw2gsks4] {
        font-size: 16px !important;
        padding: 0.75rem 1rem;
    }
    
    .input-group-text[b-qsbw2gsks4] {
        padding: 0.5rem 0.75rem;
        font-size: 0.875rem;
    }
    
    .form-text[b-qsbw2gsks4] {
        font-size: 0.75rem;
    }
    
    /* Duration Mode Buttons */
    .btn-group.w-100 .btn[b-qsbw2gsks4] {
        padding: 0.5rem 0.25rem;
        font-size: 0.75rem;
    }
    
    .btn-group.w-100 .btn i[b-qsbw2gsks4] {
        display: none;
    }
    
    /* Recurrence Pattern Options */
    .recurrence-option[b-qsbw2gsks4] {
        padding: 0.75rem 1rem;
        flex-direction: row;
    }
    
    .recurrence-radio-indicator[b-qsbw2gsks4] {
        width: 18px;
        height: 18px;
        margin-right: 10px;
    }
    
    .recurrence-radio-indicator[b-qsbw2gsks4]::after {
        width: 8px;
        height: 8px;
    }
    
    .recurrence-option i[b-qsbw2gsks4] {
        font-size: 1rem;
        margin-right: 0.5rem !important;
    }
    
    .recurrence-option span[b-qsbw2gsks4] {
        font-size: 0.875rem;
    }
    
    /* Day Selection Buttons */
    .btn.rounded-pill[b-qsbw2gsks4] {
        min-width: 40px;
        padding: 0.5rem 0.6rem;
        font-size: 0.75rem;
    }
    
    /* Number Stepper */
    .input-group[style*="max-width: 200px"][b-qsbw2gsks4] {
        max-width: 160px !important;
    }
    
    /* Preview List */
    div[style*="max-height: 180px"][b-qsbw2gsks4] {
        max-height: 150px !important;
    }
    
    /* Advanced Settings */
    .mb-4.p-3.bg-light[b-qsbw2gsks4] {
        padding: 0.875rem !important;
        margin-bottom: 1rem !important;
    }
    
    .mb-4.p-3.bg-light h6[b-qsbw2gsks4] {
        font-size: 0.85rem;
        margin-bottom: 0.75rem !important;
    }
    
    .row.g-3[b-qsbw2gsks4] {
        --bs-gutter-y: 0.75rem;
    }
    
    /* Action Buttons Container */
    .action-buttons-container[b-qsbw2gsks4] {
        padding: 1rem;
        margin-top: 1rem;
        margin-left: -0.75rem;
        margin-right: -0.75rem;
        border-radius: 16px 16px 0 0;
        position: sticky;
        bottom: 0;
        background: linear-gradient(135deg, #2d3748 0%, #1a202c 100%);
        backdrop-filter: blur(10px);
        -webkit-backdrop-filter: blur(10px);
        box-shadow: 0 -4px 20px rgba(0, 0, 0, 0.2);
        z-index: 100;
        border: 1px solid rgba(255, 255, 255, 0.1);
        border-bottom: none;
    }
    
    .action-buttons-container .d-flex[b-qsbw2gsks4] {
        flex-direction: column !important;
        gap: 0.5rem !important;
    }
    
    .btn-cancel[b-qsbw2gsks4],
    .btn-reset[b-qsbw2gsks4],
    .btn-create[b-qsbw2gsks4] {
        width: 100%;
        padding: 0.875rem 1rem;
        font-size: 0.9rem;
        border-radius: 10px;
    }
    
    .btn-cancel[b-qsbw2gsks4] {
        order: 3;
        background-color: #ffffff;
        color: #4a5568;
    }
    
    .btn-reset[b-qsbw2gsks4] {
        order: 2;
        background-color: transparent;
        border-color: var(--bs-primary);
        color: var(--bs-primary);
    }
    
    .btn-create[b-qsbw2gsks4] {
        order: 1;
    }
    
    /* Session Summary Card */
    .session-summary-card[b-qsbw2gsks4] {
        border-radius: 12px;
    }
    
    .summary-header[b-qsbw2gsks4] {
        padding: 0.875rem 1rem;
    }
    
    .summary-header h6[b-qsbw2gsks4] {
        font-size: 0.75rem;
    }
    
    .summary-body[b-qsbw2gsks4] {
        padding: 1rem;
    }
    
    .summary-list li[b-qsbw2gsks4] {
        padding: 0.6rem 0;
    }
    
    .summary-label[b-qsbw2gsks4] {
        font-size: 0.8rem;
    }
    
    .summary-label i[b-qsbw2gsks4] {
        font-size: 0.75rem;
    }
    
    .summary-value[b-qsbw2gsks4] {
        font-size: 0.8rem;
        max-width: 50%;
    }
    
    .features-section[b-qsbw2gsks4] {
        margin-top: 0.75rem;
        padding-top: 0.75rem;
    }
    
    .features-label[b-qsbw2gsks4] {
        font-size: 0.7rem;
        margin-bottom: 0.5rem;
    }
    
    .feature-badge[b-qsbw2gsks4] {
        padding: 0.3rem 0.6rem;
        font-size: 0.7rem;
    }
    
    /* Quick Tips Card */
    .quick-tips-card[b-qsbw2gsks4] {
        padding: 1rem;
        border-radius: 12px;
    }
    
    .tips-icon[b-qsbw2gsks4] {
        font-size: 1.1rem;
    }
    
    .tips-title[b-qsbw2gsks4] {
        font-size: 0.75rem;
    }
    
    .tips-list li[b-qsbw2gsks4] {
        font-size: 0.8rem;
        margin-bottom: 0.6rem;
    }
    
    .tips-bullet[b-qsbw2gsks4] {
        margin-right: 0.5rem;
        font-size: 0.8rem;
    }
    
    /* Breadcrumb */
    .breadcrumb[b-qsbw2gsks4] {
        font-size: 0.75rem;
    }
    
    .breadcrumb-item + .breadcrumb-item[b-qsbw2gsks4]::before {
        font-size: 0.7rem;
    }
    
    /* Location Picker */
    [b-qsbw2gsks4] .leaflet-container {
        height: 200px !important;
    }
    
    /* End Time Preview */
    .bg-light.rounded-3.d-flex[b-qsbw2gsks4] {
        padding: 0.75rem !important;
    }
    
    .bg-light.rounded-3.d-flex .bg-primary[b-qsbw2gsks4] {
        padding: 0.4rem !important;
    }
    
    .bg-light.rounded-3.d-flex .small[b-qsbw2gsks4] {
        font-size: 0.7rem;
    }
    
    .bg-light.rounded-3.d-flex .fw-bold[b-qsbw2gsks4] {
        font-size: 0.85rem;
    }
    
    /* Alert Messages */
    .alert[b-qsbw2gsks4] {
        padding: 0.75rem 1rem;
        font-size: 0.875rem;
        border-radius: 10px;
    }
    
    .alert i.fs-4[b-qsbw2gsks4] {
        font-size: 1.25rem !important;
    }
}

/* Small Mobile View (up to 375px) */
@media (max-width: 375px) {
    .container-fluid[b-qsbw2gsks4] {
        padding-left: 0.5rem;
        padding-right: 0.5rem;
    }
    
    h4.fw-bold[b-qsbw2gsks4] {
        font-size: 1rem;
    }
    
    .back-button[b-qsbw2gsks4] {
        width: 32px;
        height: 32px;
    }
    
    .back-button i[b-qsbw2gsks4] {
        font-size: 0.875rem;
    }
    
    /* Preset buttons - single column */
    .d-flex.flex-wrap.gap-2 .btn-outline-primary[b-qsbw2gsks4] {
        flex: 1 1 100%;
    }
    
    /* Recurrence options - stack vertically */
    .row.g-2 > .col-md-4[b-qsbw2gsks4] {
        flex: 0 0 100%;
        max-width: 100%;
    }
    
    .recurrence-option[b-qsbw2gsks4] {
        margin-bottom: 0.5rem;
    }
    
    /* Day buttons smaller */
    .btn.rounded-pill[b-qsbw2gsks4] {
        min-width: 36px;
        padding: 0.4rem 0.5rem;
        font-size: 0.7rem;
    }
    
    .summary-value[b-qsbw2gsks4] {
        max-width: 45%;
        font-size: 0.75rem;
    }
    
    .tips-list li[b-qsbw2gsks4] {
        font-size: 0.75rem;
    }
}

/* Touch-friendly enhancements */
@media (hover: none) and (pointer: coarse) {
    /* Larger touch targets */
    .btn[b-qsbw2gsks4] {
        min-height: 44px;
    }
    
    .form-check-input[role="switch"][b-qsbw2gsks4] {
        width: 3em !important;
        height: 1.5em !important;
    }
    
    .recurrence-option[b-qsbw2gsks4] {
        min-height: 52px;
    }
    
    .btn.rounded-pill[b-qsbw2gsks4] {
        min-height: 40px;
    }
    
    /* Remove hover effects on touch devices */
    .card:hover[b-qsbw2gsks4] {
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.02) !important;
        transform: none;
    }
    
    .back-button:hover[b-qsbw2gsks4] {
        transform: none;
    }
    
    /* Active states for touch feedback */
    .btn:active[b-qsbw2gsks4] {
        transform: scale(0.98);
    }
    
    .recurrence-option:active[b-qsbw2gsks4] {
        transform: scale(0.99);
    }
}

/* Landscape Mobile */
@media (max-width: 767.98px) and (orientation: landscape) {
    .action-buttons-container[b-qsbw2gsks4] {
        position: relative;
        box-shadow: none;
    }
    
    .action-buttons-container .d-flex[b-qsbw2gsks4] {
        flex-direction: row !important;
    }
    
    .btn-cancel[b-qsbw2gsks4],
    .btn-reset[b-qsbw2gsks4],
    .btn-create[b-qsbw2gsks4] {
        flex: 1;
        margin-bottom: 0;
    }
    
    .btn-cancel[b-qsbw2gsks4] {
        order: 1;
    }
    
    .btn-reset[b-qsbw2gsks4] {
        order: 2;
    }
    
    .btn-create[b-qsbw2gsks4] {
        order: 3;
    }
}

/* Safe area support for notched devices */
@supports (padding-bottom: env(safe-area-inset-bottom)) {
    @media (max-width: 767.98px) {
        .action-buttons-container[b-qsbw2gsks4] {
            padding-bottom: calc(1rem + env(safe-area-inset-bottom));
        }
        
        .container-fluid.pb-5[b-qsbw2gsks4] {
            padding-bottom: calc(3rem + env(safe-area-inset-bottom)) !important;
        }
    }
}



/* /Features/SessionManagement/SessionList.razor.rz.scp.css */
.stat-icon[b-3cas71qqyy] {
    width: 40px;
    height: 40px;
    min-width: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    transition: transform 0.2s ease;
}

.stat-icon:hover[b-3cas71qqyy] {
    transform: scale(1.1);
}

.spin[b-3cas71qqyy] {
    animation: spin-b-3cas71qqyy 1s linear infinite;
}

@keyframes spin-b-3cas71qqyy {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

@keyframes fadeIn-b-3cas71qqyy {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideUp-b-3cas71qqyy {
    from { 
        opacity: 0;
        transform: translateY(20px);
    }
    to { 
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes scaleIn-b-3cas71qqyy {
    from { 
        opacity: 0;
        transform: scale(0.8);
    }
    to { 
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes shake-b-3cas71qqyy {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-5px); }
    20%, 40%, 60%, 80% { transform: translateX(5px); }
}

@keyframes pulse-b-3cas71qqyy {
    0%, 100% { transform: scale(1); }
    50% { transform: scale(1.05); }
}

@keyframes iconPop-b-3cas71qqyy {
    0% { transform: scale(0); opacity: 0; }
    50% { transform: scale(1.2); }
    100% { transform: scale(1); opacity: 1; }
}

.session-avatar[b-3cas71qqyy] {
    transition: all 0.2s ease;
}

[b-3cas71qqyy] tr:hover .session-avatar {
    transform: scale(1.1);
}

[b-3cas71qqyy] .table > tbody > tr {
    transition: all 0.15s ease;
    animation: fadeIn-b-3cas71qqyy 0.3s ease;
}

[b-3cas71qqyy] .page-link {
    border-radius: 6px !important;
    margin: 0 2px;
    border: none;
    color: var(--bs-primary);
    transition: all 0.15s ease;
}

[b-3cas71qqyy] .page-item.active .page-link {
    background-color: var(--bs-primary);
    color: white;
}

[b-3cas71qqyy] .page-link:hover {
    background-color: rgba(0, 86, 179, 0.1);
    color: var(--bs-primary);
    transform: scale(1.05);
}

/* Card Animations */
.card-accent-success[b-3cas71qqyy],
.card-accent-info[b-3cas71qqyy],
.card-accent-primary[b-3cas71qqyy],
.card-accent-warning[b-3cas71qqyy] {
    transition: all 0.2s ease;
}

.card-accent-success:hover[b-3cas71qqyy],
.card-accent-info:hover[b-3cas71qqyy],
.card-accent-primary:hover[b-3cas71qqyy],
.card-accent-warning:hover[b-3cas71qqyy] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.card-accent-success[b-3cas71qqyy] {
    border-left: 3px solid var(--bs-success) !important;
}

.card-accent-info[b-3cas71qqyy] {
    border-left: 3px solid var(--bs-info) !important;
}

.card-accent-primary[b-3cas71qqyy] {
    border-left: 3px solid var(--bs-primary) !important;
}

.card-accent-warning[b-3cas71qqyy] {
    border-left: 3px solid var(--bs-warning) !important;
}

/* Custom Dropdown Styles */
[b-3cas71qqyy] .dropdown-menu {
    font-size: 0.875rem;
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
    border-radius: 8px;
    padding: 0.5rem 0;
    animation: slideUp-b-3cas71qqyy 0.15s ease;
}

[b-3cas71qqyy] .dropdown-item {
    padding: 0.5rem 1rem;
    transition: all 0.15s ease;
    cursor: pointer;
}

[b-3cas71qqyy] .dropdown-item:hover {
    background-color: rgba(0, 86, 179, 0.08);
    padding-left: 1.25rem;
}

[b-3cas71qqyy] .dropdown-item.active,
[b-3cas71qqyy] .dropdown-item:active {
    background-color: rgba(0, 86, 179, 0.12);
    color: var(--bs-primary);
    font-weight: 500;
}

[b-3cas71qqyy] .dropdown-item.active i,
[b-3cas71qqyy] .dropdown-item:active i {
    color: inherit;
}

.filter-dropdown-btn[b-3cas71qqyy] {
    background-color: #fff;
    border: 1px solid #dee2e6;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    transition: all 0.15s ease;
}

.filter-dropdown-btn:hover[b-3cas71qqyy] {
    background-color: #f8f9fa;
    border-color: #ced4da;
    transform: translateY(-1px);
}

.filter-dropdown-btn:focus[b-3cas71qqyy] {
    box-shadow: 0 0 0 0.2rem rgba(0, 86, 179, 0.15);
    border-color: var(--bs-primary);
}

/* Clear Filters Button */
.btn-clear-filters[b-3cas71qqyy] {
    background-color: #fff;
    border: 1px solid var(--bs-danger);
    color: var(--bs-danger);
    transition: all 0.2s ease;
}

.btn-clear-filters:hover[b-3cas71qqyy] {
    background-color: var(--bs-danger);
    color: #fff;
    transform: scale(1.02);
}

.btn-clear-filters:active[b-3cas71qqyy] {
    transform: scale(0.98);
}

/* SweetAlert Style Modal using Bootstrap */
.swal-modal-content[b-3cas71qqyy] {
    border: none;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
    animation: scaleIn-b-3cas71qqyy 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.swal-icon[b-3cas71qqyy] {
    width: 80px;
    height: 80px;
    margin-bottom: 1.25rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: iconPop-b-3cas71qqyy 0.4s ease 0.1s both;
}

.swal-icon-warning[b-3cas71qqyy] {
    background: linear-gradient(135deg, #fff3cd 0%, #ffeaa7 100%);
    border: 4px solid #ffc107;
}

.swal-icon-warning i[b-3cas71qqyy] {
    color: #856404;
    font-size: 2.25rem;
    line-height: 1;
}

.swal-icon-danger[b-3cas71qqyy] {
    background: linear-gradient(135deg, #f8d7da 0%, #f5c6cb 100%);
    border: 4px solid #dc3545;
}

.swal-icon-danger i[b-3cas71qqyy] {
    color: #721c24;
    font-size: 2.25rem;
    line-height: 1;
}

.swal-title[b-3cas71qqyy] {
    font-size: 1.5rem;
    font-weight: 600;
    color: #333;
    margin-bottom: 0.75rem;
}

.swal-text[b-3cas71qqyy] {
    color: #666;
    font-size: 1rem;
    margin-bottom: 1.5rem;
    line-height: 1.5;
}

.swal-text strong[b-3cas71qqyy] {
    color: #333;
}

.swal-warning-box[b-3cas71qqyy] {
    background: linear-gradient(135deg, #fff8e1 0%, #fff3cd 100%);
    border: 1px solid #ffeeba;
    border-radius: 10px;
    padding: 0.875rem 1rem;
    margin-bottom: 1.5rem;
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    text-align: left;
}

.swal-warning-box i[b-3cas71qqyy] {
    color: #856404;
    font-size: 1.1rem;
    margin-top: 0.1rem;
}

.swal-warning-box span[b-3cas71qqyy] {
    color: #856404;
    font-size: 0.875rem;
    line-height: 1.4;
}

.swal-buttons[b-3cas71qqyy] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
}

.swal-btn[b-3cas71qqyy] {
    padding: 0.75rem 2rem;
    border-radius: 8px;
    font-weight: 500;
    font-size: 1rem;
    transition: all 0.2s ease;
    border: none;
    cursor: pointer;
    min-width: 100px;
}

.swal-btn-cancel[b-3cas71qqyy] {
    background-color: #f0f0f0;
    color: #666;
}

.swal-btn-cancel:hover[b-3cas71qqyy] {
    background-color: #e0e0e0;
    transform: translateY(-1px);
}

.swal-btn-confirm[b-3cas71qqyy] {
    background: linear-gradient(135deg, #dc3545 0%, #c82333 100%);
    color: #fff;
    box-shadow: 0 4px 15px rgba(220, 53, 69, 0.3);
}

.swal-btn-confirm:hover[b-3cas71qqyy] {
    background: linear-gradient(135deg, #c82333 0%, #bd2130 100%);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(220, 53, 69, 0.4);
}

.swal-btn-confirm:active[b-3cas71qqyy] {
    transform: translateY(0);
}

.swal-btn:disabled[b-3cas71qqyy] {
    opacity: 0.7;
    cursor: not-allowed;
    transform: none !important;
}

.swal-spinner[b-3cas71qqyy] {
    width: 18px;
    height: 18px;
    border: 2px solid transparent;
    border-top-color: currentColor;
    border-radius: 50%;
    animation: spin-b-3cas71qqyy 0.6s linear infinite;
    display: inline-block;
    margin-right: 0.5rem;
    vertical-align: middle;
}

/* Mobile Card Animation */
[b-3cas71qqyy] .card.shadow-sm {
    animation: slideUp-b-3cas71qqyy 0.3s ease;
}

/* Button hover effects */
[b-3cas71qqyy] .btn-group .btn {
    transition: all 0.15s ease;
}

[b-3cas71qqyy] .btn-group .btn:hover {
    transform: translateY(-2px);
    z-index: 1;
}

/* Session Row Highlighting for Active/Upcoming */
[b-3cas71qqyy] .session-row-active {
    background: linear-gradient(90deg, rgba(25, 135, 84, 0.1) 0%, rgba(25, 135, 84, 0.03) 100%) !important;
    border-left: 4px solid var(--bs-success) !important;
}

[b-3cas71qqyy] .session-row-upcoming {
    background: linear-gradient(90deg, rgba(13, 202, 240, 0.08) 0%, rgba(13, 202, 240, 0.02) 100%) !important;
    border-left: 4px solid var(--bs-info) !important;
}

[b-3cas71qqyy] .session-row-active:hover,
[b-3cas71qqyy] .session-row-upcoming:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

/* Ensure table doesn't overflow */
[b-3cas71qqyy] .table {
    table-layout: fixed;
}

[b-3cas71qqyy] .table td,
[b-3cas71qqyy] .table th {
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Allow dropdown to overflow in action column */
[b-3cas71qqyy] .table td:last-child {
    overflow: visible;
}

/* Fix: Prevent containers from clipping action dropdown menus */
[b-3cas71qqyy] .sessions-list-card {
    overflow: visible !important;
}

[b-3cas71qqyy] .sessions-list-card > .card-body {
    overflow: visible !important;
}

[b-3cas71qqyy] .sessions-list-card .table-responsive {
    overflow: visible !important;
}

/* Actions dropdown button */
[b-3cas71qqyy] .table td .dropdown .dropdown-toggle {
    font-size: 0.8rem;
    padding: 0.35rem 0.65rem;
    transition: all 0.15s ease;
    white-space: nowrap;
}

[b-3cas71qqyy] .table td .dropdown .dropdown-toggle:hover {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 86, 179, 0.25);
}

[b-3cas71qqyy] .table td .dropdown .dropdown-toggle:hover .bi {
    color: #fff !important;
}

/* Actions dropdown menu - use fixed positioning to escape all overflow containers */
[b-3cas71qqyy] .table td .dropdown-menu {
    min-width: 180px;
    z-index: 1050;
    position: absolute;
}

[b-3cas71qqyy] .table td .dropdown-item.text-danger:hover {
    background-color: rgba(220, 53, 69, 0.08);
    color: var(--bs-danger) !important;
}

.min-width-0[b-3cas71qqyy] {
    min-width: 0;
}

