/* /Components/Auth/PasswordStrengthIndicator.razor.rz.scp.css */
/* Password strength indicator — token-driven so dark mode and tenant brand both flow through. */

.password-strength-meter .strength-bar[b-jc125iyilm] {
    height: 4px;
    border-radius: 2px;
    background: var(--border-color);
    transition: background 0.3s ease;
}

.password-strength-meter .strength-bar.strength-weak[b-jc125iyilm]    { background: var(--theme-danger); }
.password-strength-meter .strength-bar.strength-fair[b-jc125iyilm]    { background: var(--theme-warning); }
.password-strength-meter .strength-bar.strength-good[b-jc125iyilm]    { background: var(--theme-info); }
.password-strength-meter .strength-bar.strength-strong[b-jc125iyilm]  { background: var(--theme-success); }

.password-strength-meter .text-strength-weak[b-jc125iyilm]    { color: var(--theme-danger); }
.password-strength-meter .text-strength-fair[b-jc125iyilm]    { color: var(--theme-warning); }
.password-strength-meter .text-strength-good[b-jc125iyilm]    { color: var(--theme-info); }
.password-strength-meter .text-strength-strong[b-jc125iyilm]  { color: var(--theme-success); }
/* /Components/Blog/AuthorCard.razor.rz.scp.css */
.author-card[b-kuybppxv33] {
    display: flex;
    gap: 1.25rem;
    padding: 1.5rem;
    background: var(--theme-surface);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.author-avatar[b-kuybppxv33] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    overflow: hidden;
    flex-shrink: 0;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-secondary));
    display: flex;
    align-items: center;
    justify-content: center;
}

.author-avatar img[b-kuybppxv33] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.avatar-initials[b-kuybppxv33] {
    color: white;
    font-size: 1.5rem;
    font-weight: 600;
}

.author-info[b-kuybppxv33] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.author-label[b-kuybppxv33] {
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 4px;
}

.author-name[b-kuybppxv33] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0 0 8px 0;
}

.author-bio[b-kuybppxv33] {
    font-size: 0.9rem;
    color: var(--theme-text-secondary);
    line-height: 1.6;
    margin: 0 0 12px 0;
}

.author-socials[b-kuybppxv33] {
    display: flex;
    gap: 8px;
}

.social-link[b-kuybppxv33] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: var(--theme-background);
    color: var(--theme-text-secondary);
    text-decoration: none;
    transition: all 0.2s ease;
}

.social-link:hover[b-kuybppxv33] {
    background: var(--theme-primary);
    color: white;
    transform: translateY(-2px);
}

.social-link i[b-kuybppxv33] {
    font-size: 1.1rem;
}

/* Compact Mode */
.author-card-compact[b-kuybppxv33] {
    padding: 0;
    background: transparent;
    box-shadow: none;
    gap: 0.75rem;
    align-items: center;
}

.author-card-compact .author-avatar[b-kuybppxv33] {
    width: 44px;
    height: 44px;
}

.author-card-compact .avatar-initials[b-kuybppxv33] {
    font-size: 1rem;
}

.author-card-compact .author-name[b-kuybppxv33] {
    font-size: 0.95rem;
    margin: 0;
}

.author-card-compact .author-socials[b-kuybppxv33] {
    margin-top: 4px;
}

.author-card-compact .social-link[b-kuybppxv33] {
    width: 28px;
    height: 28px;
}

.author-card-compact .social-link i[b-kuybppxv33] {
    font-size: 0.9rem;
}

@media (max-width: 576px) {
    .author-card[b-kuybppxv33] {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }

    .author-socials[b-kuybppxv33] {
        justify-content: center;
    }
}
/* /Components/Blog/BlogCard.razor.rz.scp.css */
.blog-card[b-93mlb432qu] {
    background: var(--theme-surface);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    cursor: pointer;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.blog-card:hover[b-93mlb432qu] {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

.blog-card-featured[b-93mlb432qu] {
    border: 2px solid var(--theme-primary);
}

.blog-card-image[b-93mlb432qu] {
    position: relative;
    width: 100%;
    height: 200px;
    overflow: hidden;
}

.blog-card-image img[b-93mlb432qu] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
}

.blog-card:hover .blog-card-image img[b-93mlb432qu] {
    transform: scale(1.05);
}

.featured-badge[b-93mlb432qu] {
    position: absolute;
    top: 12px;
    left: 12px;
    background: linear-gradient(135deg, var(--theme-warning), color-mix(in srgb, var(--theme-warning) 80%, black));
    color: white;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 4px;
}

.category-badge[b-93mlb432qu] {
    position: absolute;
    bottom: 12px;
    left: 12px;
    background: var(--theme-primary);
    color: white;
    padding: 4px 12px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 500;
}

.blog-card-content[b-93mlb432qu] {
    padding: 1.25rem;
    flex: 1;
    display: flex;
    flex-direction: column;
}

.blog-card-meta[b-93mlb432qu] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-bottom: 0.75rem;
}

.meta-item[b-93mlb432qu] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.8rem;
    color: var(--theme-text-secondary);
}

.meta-item i[b-93mlb432qu] {
    font-size: 0.875rem;
}

.blog-card-title[b-93mlb432qu] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0 0 0.75rem 0;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.blog-card:hover .blog-card-title[b-93mlb432qu] {
    color: var(--theme-primary);
}

.blog-card-excerpt[b-93mlb432qu] {
    font-size: 0.875rem;
    color: var(--theme-text-secondary);
    line-height: 1.6;
    margin: 0 0 1rem 0;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    flex: 1;
}

.blog-card-tags[b-93mlb432qu] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 1rem;
}

.more-tags[b-93mlb432qu] {
    font-size: 0.75rem;
    color: var(--theme-text-tertiary);
    padding: 2px 8px;
}

.blog-card-footer[b-93mlb432qu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 0.75rem;
    border-top: 1px solid var(--theme-border);
    margin-top: auto;
}

.blog-card-stats[b-93mlb432qu] {
    display: flex;
    gap: 12px;
}

.stat-item[b-93mlb432qu] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
}

.read-more-link[b-93mlb432qu] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--theme-primary);
    text-decoration: none;
    transition: gap 0.2s ease;
}

.read-more-link:hover[b-93mlb432qu] {
    gap: 8px;
}

/* Compact mode */
.blog-card-compact[b-93mlb432qu] {
    flex-direction: row;
    height: auto;
}

.blog-card-compact .blog-card-image[b-93mlb432qu] {
    width: 120px;
    height: 100px;
    flex-shrink: 0;
}

.blog-card-compact .blog-card-content[b-93mlb432qu] {
    padding: 0.75rem 1rem;
}

.blog-card-compact .blog-card-title[b-93mlb432qu] {
    font-size: 0.95rem;
    -webkit-line-clamp: 2;
    margin-bottom: 0.5rem;
}

.blog-card-compact .blog-card-meta[b-93mlb432qu] {
    margin-bottom: 0.5rem;
}

.blog-card-compact .blog-card-footer[b-93mlb432qu] {
    display: none;
}

@media (max-width: 768px) {
    .blog-card-image[b-93mlb432qu] {
        height: 160px;
    }

    .blog-card-content[b-93mlb432qu] {
        padding: 1rem;
    }

    .blog-card-title[b-93mlb432qu] {
        font-size: 1rem;
    }
}
/* /Components/Blog/BlogSidebar.razor.rz.scp.css */
.blog-sidebar[b-awjwpflc7m] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.sidebar-section[b-awjwpflc7m] {
    background: var(--theme-surface);
    border-radius: 12px;
    padding: 1.25rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.sidebar-title[b-awjwpflc7m] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0 0 1rem 0;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid var(--theme-primary);
    display: flex;
    align-items: center;
    gap: 8px;
}

.sidebar-title i[b-awjwpflc7m] {
    color: var(--theme-primary);
}

/* Search Box */
.search-box[b-awjwpflc7m] {
    display: flex;
    gap: 0;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    overflow: hidden;
}

.search-box input[b-awjwpflc7m] {
    flex: 1;
    padding: 10px 14px;
    border: none;
    outline: none;
    font-size: 0.9rem;
    background: transparent;
}

.search-box input[b-awjwpflc7m]::placeholder {
    color: var(--theme-text-tertiary);
}

.search-btn[b-awjwpflc7m] {
    padding: 10px 14px;
    border: none;
    background: var(--theme-primary);
    color: white;
    cursor: pointer;
    transition: background 0.2s ease;
}

.search-btn:hover[b-awjwpflc7m] {
    background: var(--theme-primary-dark);
}

/* Category List */
.category-list[b-awjwpflc7m] {
    list-style: none;
    margin: 0;
    padding: 0;
}

.category-list li[b-awjwpflc7m] {
    border-bottom: 1px solid var(--theme-border);
}

.category-list li:last-child[b-awjwpflc7m] {
    border-bottom: none;
}

.category-link[b-awjwpflc7m] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    text-decoration: none;
    color: var(--theme-text-secondary);
    transition: all 0.2s ease;
}

.category-link:hover[b-awjwpflc7m],
.category-link.active[b-awjwpflc7m] {
    color: var(--theme-primary);
}

.category-link:hover .category-name[b-awjwpflc7m],
.category-link.active .category-name[b-awjwpflc7m] {
    padding-left: 8px;
}

.category-name[b-awjwpflc7m] {
    transition: padding 0.2s ease;
}

.category-count[b-awjwpflc7m] {
    background: var(--theme-background);
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: 500;
}

.category-link:hover .category-count[b-awjwpflc7m],
.category-link.active .category-count[b-awjwpflc7m] {
    background: var(--theme-primary);
    color: white;
}

/* Recent Posts */
.recent-posts[b-awjwpflc7m] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.recent-post-item[b-awjwpflc7m] {
    display: flex;
    gap: 12px;
    text-decoration: none;
    padding: 8px;
    border-radius: 8px;
    transition: background 0.2s ease;
}

.recent-post-item:hover[b-awjwpflc7m] {
    background: var(--theme-background);
}

.recent-post-image[b-awjwpflc7m] {
    width: 70px;
    height: 55px;
    border-radius: 6px;
    object-fit: cover;
    flex-shrink: 0;
}

.recent-post-content[b-awjwpflc7m] {
    flex: 1;
    min-width: 0;
}

.recent-post-title[b-awjwpflc7m] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--theme-text-primary);
    margin: 0 0 4px 0;
    line-height: 1.4;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.recent-post-item:hover .recent-post-title[b-awjwpflc7m] {
    color: var(--theme-primary);
}

.recent-post-date[b-awjwpflc7m] {
    font-size: 0.75rem;
    color: var(--theme-text-tertiary);
    display: flex;
    align-items: center;
    gap: 4px;
}

@media (max-width: 992px) {
    .blog-sidebar[b-awjwpflc7m] {
        flex-direction: row;
        flex-wrap: wrap;
    }

    .sidebar-section[b-awjwpflc7m] {
        flex: 1;
        min-width: 280px;
    }
}
/* /Components/Blog/CommentForm.razor.rz.scp.css */
.comment-form[b-rwhm4ru13y] {
    background: var(--theme-background);
    border-radius: 12px;
    padding: 1.25rem;
}

.form-row[b-rwhm4ru13y] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 1rem;
}

.form-group[b-rwhm4ru13y] {
    margin-bottom: 1rem;
}

.form-group:last-of-type[b-rwhm4ru13y] {
    margin-bottom: 0;
}

.form-group label[b-rwhm4ru13y] {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--theme-text-secondary);
    margin-bottom: 6px;
}

.form-group .required[b-rwhm4ru13y] {
    color: var(--theme-danger);
}

.form-group input[b-rwhm4ru13y],
.form-group textarea[b-rwhm4ru13y] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    font-size: 0.95rem;
    background: var(--theme-surface);
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
    font-family: inherit;
}

.form-group input:focus[b-rwhm4ru13y],
.form-group textarea:focus[b-rwhm4ru13y] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--theme-primary) 10%, transparent);
}

.form-group input[b-rwhm4ru13y]::placeholder,
.form-group textarea[b-rwhm4ru13y]::placeholder {
    color: var(--theme-text-tertiary);
}

.form-group textarea[b-rwhm4ru13y] {
    resize: vertical;
    min-height: 100px;
}

.form-group .validation-message[b-rwhm4ru13y] {
    font-size: 0.8rem;
    color: var(--theme-danger);
    margin-top: 4px;
}

.form-actions[b-rwhm4ru13y] {
    margin-top: 1rem;
    display: flex;
    justify-content: flex-end;
}

.submit-btn[b-rwhm4ru13y] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--theme-primary);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.95rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.submit-btn:hover:not(:disabled)[b-rwhm4ru13y] {
    background: var(--theme-primary-emphasis);
    transform: translateY(-1px);
}

.submit-btn:disabled[b-rwhm4ru13y] {
    opacity: 0.7;
    cursor: not-allowed;
}

/* Note: Spinner is now centralized in app.css. */

.form-disclaimer[b-rwhm4ru13y] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--theme-border);
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
    display: flex;
    align-items: center;
    gap: 6px;
}

@media (max-width: 576px) {
    .form-row[b-rwhm4ru13y] {
        grid-template-columns: 1fr;
    }

    .comment-form[b-rwhm4ru13y] {
        padding: 1rem;
    }
}
/* /Components/Blog/CommentSection.razor.rz.scp.css */
.comment-section[b-tnaafa86c7] {
    background: var(--theme-surface);
    border-radius: 12px;
    padding: 1.5rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.comment-section-header[b-tnaafa86c7] {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--theme-border);
}

.comment-section-title[b-tnaafa86c7] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.comment-section-title i[b-tnaafa86c7] {
    color: var(--theme-primary);
}

.comment-count[b-tnaafa86c7] {
    background: var(--theme-primary);
    color: white;
    padding: 2px 10px;
    border-radius: 12px;
    font-size: 0.8rem;
    font-weight: 500;
}

.comment-form-wrapper[b-tnaafa86c7] {
    margin-bottom: 2rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--theme-border);
}

/* Comments List */
.comments-list[b-tnaafa86c7] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.comment-item[b-tnaafa86c7] {
    display: flex;
    gap: 1rem;
}

.comment-avatar[b-tnaafa86c7] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-secondary));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1rem;
    flex-shrink: 0;
}

.comment-avatar.small[b-tnaafa86c7] {
    width: 36px;
    height: 36px;
    font-size: 0.8rem;
}

.comment-body[b-tnaafa86c7] {
    flex: 1;
    min-width: 0;
}

.comment-header[b-tnaafa86c7] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 6px;
}

.comment-author[b-tnaafa86c7] {
    font-weight: 600;
    color: var(--theme-text-primary);
}

.comment-date[b-tnaafa86c7] {
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
}

.comment-content[b-tnaafa86c7] {
    font-size: 0.95rem;
    color: var(--theme-text-secondary);
    line-height: 1.6;
}

.reply-btn[b-tnaafa86c7] {
    margin-top: 8px;
    padding: 4px 12px;
    border: none;
    background: transparent;
    color: var(--theme-primary);
    font-size: 0.85rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 4px;
    transition: background 0.2s ease;
    border-radius: 4px;
}

.reply-btn:hover[b-tnaafa86c7] {
    background: var(--theme-primary-light);
}

.reply-form-wrapper[b-tnaafa86c7] {
    margin-top: 1rem;
    padding: 1rem;
    background: var(--theme-background);
    border-radius: 8px;
}

.cancel-reply-btn[b-tnaafa86c7] {
    margin-top: 8px;
    padding: 4px 12px;
    border: none;
    background: transparent;
    color: var(--theme-text-tertiary);
    font-size: 0.85rem;
    cursor: pointer;
}

.cancel-reply-btn:hover[b-tnaafa86c7] {
    color: var(--theme-text-secondary);
}

/* Nested Replies */
.comment-replies[b-tnaafa86c7] {
    margin-top: 1rem;
    margin-left: 1.5rem;
    padding-left: 1.5rem;
    border-left: 2px solid var(--theme-border);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.comment-item.reply[b-tnaafa86c7] {
    padding-top: 0.75rem;
}

/* No Comments */
.no-comments[b-tnaafa86c7] {
    text-align: center;
    padding: 3rem 1rem;
    color: var(--theme-text-tertiary);
}

.no-comments i[b-tnaafa86c7] {
    font-size: 3rem;
    margin-bottom: 1rem;
    display: block;
}

.no-comments p[b-tnaafa86c7] {
    margin: 0;
    font-size: 0.95rem;
}

@media (max-width: 576px) {
    .comment-section[b-tnaafa86c7] {
        padding: 1rem;
    }

    .comment-avatar[b-tnaafa86c7] {
        width: 40px;
        height: 40px;
        font-size: 0.9rem;
    }

    .comment-replies[b-tnaafa86c7] {
        margin-left: 0.75rem;
        padding-left: 0.75rem;
    }
}
/* /Components/Blog/RelatedPosts.razor.rz.scp.css */
.related-posts[b-lvm9i937ks] {
    margin-top: 2rem;
}

.related-posts-title[b-lvm9i937ks] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0 0 1.5rem 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.related-posts-title i[b-lvm9i937ks] {
    color: var(--theme-primary);
}

.related-posts-grid[b-lvm9i937ks] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
}

.no-related[b-lvm9i937ks] {
    text-align: center;
    padding: 2rem;
    color: var(--theme-text-tertiary);
}

.no-related p[b-lvm9i937ks] {
    margin: 0;
}

@media (max-width: 768px) {
    .related-posts-grid[b-lvm9i937ks] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Blog/SocialShare.razor.rz.scp.css */
.social-share[b-imhw9sd30v] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.share-label[b-imhw9sd30v] {
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--theme-text-secondary);
}

.share-buttons[b-imhw9sd30v] {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
}

.share-btn[b-imhw9sd30v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    padding: 8px 12px;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    color: white;
}

.share-btn i[b-imhw9sd30v] {
    font-size: 1.1rem;
}

.share-btn:hover[b-imhw9sd30v] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.share-facebook[b-imhw9sd30v] {
    background: var(--theme-info);
}

.share-facebook:hover[b-imhw9sd30v] {
    background: var(--theme-info);
}

.share-twitter[b-imhw9sd30v] {
    background: var(--text-heading);
}

.share-twitter:hover[b-imhw9sd30v] {
    background: var(--text-heading);
}

.share-linkedin[b-imhw9sd30v] {
    background: var(--theme-info-emphasis);
}

.share-linkedin:hover[b-imhw9sd30v] {
    background: var(--theme-info-text);
}

.share-whatsapp[b-imhw9sd30v] {
    background: var(--theme-success);
}

.share-whatsapp:hover[b-imhw9sd30v] {
    background: var(--theme-success);
}

.share-copy[b-imhw9sd30v] {
    background: var(--theme-secondary);
}

.share-copy:hover[b-imhw9sd30v] {
    background: var(--theme-text-secondary);
}

.share-copy.copied[b-imhw9sd30v] {
    background: var(--theme-success);
}

/* Icon-only mode (when ShowLabels is false) */
.share-btn:not(:has(span))[b-imhw9sd30v] {
    padding: 10px;
    border-radius: 50%;
    width: 40px;
    height: 40px;
}

@media (max-width: 576px) {
    .social-share[b-imhw9sd30v] {
        flex-direction: column;
        align-items: flex-start;
    }

    .share-buttons[b-imhw9sd30v] {
        width: 100%;
    }
}
/* /Components/Blog/TagCloud.razor.rz.scp.css */
.tag-cloud[b-3nudah12c5] {
    background: var(--theme-surface);
    border-radius: 12px;
    padding: 1.25rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.tag-cloud-title[b-3nudah12c5] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0 0 1rem 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.tag-cloud-title i[b-3nudah12c5] {
    color: var(--theme-primary);
}

.tag-cloud-items[b-3nudah12c5] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag-item[b-3nudah12c5] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 12px;
    background: var(--theme-background);
    border: 1px solid var(--theme-border);
    border-radius: 20px;
    text-decoration: none;
    color: var(--theme-text-secondary);
    transition: all 0.2s ease;
    cursor: pointer;
}

.tag-item:hover[b-3nudah12c5] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
    transform: translateY(-2px);
}

.tag-item:hover .tag-count[b-3nudah12c5] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.tag-count[b-3nudah12c5] {
    font-size: 0.7rem;
    padding: 2px 6px;
    background: var(--theme-primary-light);
    color: var(--theme-primary);
    border-radius: 10px;
    font-weight: 500;
    transition: all 0.2s ease;
}

/* Tag sizes based on popularity */
.tag-sm[b-3nudah12c5] {
    font-size: 0.8rem;
}

.tag-md[b-3nudah12c5] {
    font-size: 0.9rem;
    font-weight: 500;
}

.tag-lg[b-3nudah12c5] {
    font-size: 1rem;
    font-weight: 600;
}

.no-tags[b-3nudah12c5] {
    color: var(--theme-text-tertiary);
    font-size: 0.875rem;
    margin: 0;
}
/* /Components/Blog/TagSelector.razor.rz.scp.css */
.tag-selector[b-nacmvix7s0] {
    position: relative;
}

.tag-selector-label[b-nacmvix7s0] {
    display: block;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--theme-text-secondary);
    margin-bottom: 6px;
}

.tag-selector-container[b-nacmvix7s0] {
    position: relative;
}

.selected-tags[b-nacmvix7s0] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    padding: 8px 12px;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    background: var(--theme-surface);
    min-height: 42px;
    align-items: center;
    cursor: text;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.selected-tags:focus-within[b-nacmvix7s0] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-light, rgba(99, 102, 241, 0.1));
}

.selected-tag[b-nacmvix7s0] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    background: var(--theme-primary);
    color: white;
    border-radius: 6px;
    font-size: 0.85rem;
    font-weight: 500;
}

.remove-tag[b-nacmvix7s0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    padding: 0;
    border: none;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 50%;
    color: white;
    cursor: pointer;
    transition: background 0.2s ease;
}

.remove-tag:hover[b-nacmvix7s0] {
    background: rgba(255, 255, 255, 0.3);
}

.remove-tag i[b-nacmvix7s0] {
    font-size: 12px;
}

.tag-input[b-nacmvix7s0] {
    flex: 1;
    min-width: 120px;
    border: none;
    outline: none;
    font-size: 0.9rem;
    background: transparent;
    padding: 4px;
}

.tag-input[b-nacmvix7s0]::placeholder {
    color: var(--theme-text-tertiary);
}

/* Dropdown */
.tag-dropdown[b-nacmvix7s0] {
    position: absolute;
    top: calc(100% + 4px);
    left: 0;
    right: 0;
    background: var(--theme-surface);
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    max-height: 240px;
    overflow-y: auto;
    z-index: 100;
}

.tag-option[b-nacmvix7s0] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 14px;
    cursor: pointer;
    transition: background 0.15s ease;
}

.tag-option:hover[b-nacmvix7s0],
.tag-option.highlighted[b-nacmvix7s0] {
    background: var(--theme-background);
}

.tag-name[b-nacmvix7s0] {
    font-size: 0.9rem;
    color: var(--theme-text-primary);
}

.tag-count[b-nacmvix7s0] {
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
}

.tag-option.create-new[b-nacmvix7s0] {
    color: var(--theme-primary);
    font-weight: 500;
    gap: 8px;
    justify-content: flex-start;
}

.tag-option.create-new i[b-nacmvix7s0] {
    font-size: 1.1rem;
}

/* Backdrop for click outside */
.tag-selector-backdrop[b-nacmvix7s0] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 99;
}

.helper-text[b-nacmvix7s0] {
    display: block;
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
    margin-top: 4px;
}
/* /Components/Common/ActionsMenu.razor.rz.scp.css */
/**
 * ActionsMenu - Scoped Styles
 * Uses CSS variables for theme consistency.
 */

/* ========================================
   ACTIONS MENU CONTAINER
   ======================================== */

.actions-menu[b-4avdm1ubxe] {
    min-width: fit-content;
}

.actions-menu-trigger[b-4avdm1ubxe] {
    padding: 0.25rem 0.5rem !important;
    min-width: auto !important;
}

[b-4avdm1ubxe] .actions-menu .rz-button-icon-only {
    min-width: auto;
}
/* /Components/Common/BusyOverlay.razor.rz.scp.css */
/* BusyOverlay - Using Theme Variables */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.busy-overlay-container[b-5vfgk25tcn] {
    position: relative;
}

.busy-overlay-container.is-busy[b-5vfgk25tcn] {
    pointer-events: none;
    user-select: none;
}

.busy-overlay-container.is-busy > *:not(.busy-overlay)[b-5vfgk25tcn] {
    opacity: 0.5;
    filter: grayscale(30%);
    transition: opacity 0.2s ease, filter 0.2s ease;
}

.busy-overlay[b-5vfgk25tcn] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 100;
    border-radius: inherit;
    animation: fadeIn 0.2s ease;
}

@keyframes    to-b-5vfgk25tcn {
        opacity: 1;
    }
}

/* Overlay Styles */
.overlay-light[b-5vfgk25tcn] {
    background: color-mix(in srgb, var(--bg-surface) 85%, transparent);
}

.overlay-dark[b-5vfgk25tcn] {
    background: color-mix(in srgb, var(--theme-gray-900) 75%, transparent);
}

.overlay-dark .busy-message[b-5vfgk25tcn] {
    color: var(--theme-gray-100);
}

.overlay-dark .spinner-border[b-5vfgk25tcn] {
    color: var(--theme-gray-100);
}

.overlay-blur[b-5vfgk25tcn] {
    background: color-mix(in srgb, var(--bg-surface) 60%, transparent);
    backdrop-filter: blur(4px);
}

/* Content */
.busy-overlay-content[b-5vfgk25tcn] {
    text-align: center;
    padding: 1.5rem;
}

/* Spinner */
.busy-spinner[b-5vfgk25tcn] {
    margin-bottom: 0.75rem;
}

.busy-spinner .spinner-border[b-5vfgk25tcn] {
    color: var(--theme-primary);
}

.spinner-sm .spinner-border[b-5vfgk25tcn] {
    width: 1.5rem;
    height: 1.5rem;
    border-width: 0.15em;
}

.spinner-md .spinner-border[b-5vfgk25tcn] {
    width: 2.5rem;
    height: 2.5rem;
    border-width: 0.2em;
}

.spinner-lg .spinner-border[b-5vfgk25tcn] {
    width: 3.5rem;
    height: 3.5rem;
    border-width: 0.25em;
}

/* Message */
.busy-message[b-5vfgk25tcn] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
    margin: 0;
    letter-spacing: -0.01em;
}

/* Progress */
.busy-progress[b-5vfgk25tcn] {
    margin-top: 1rem;
    min-width: 200px;
}

.busy-progress .progress[b-5vfgk25tcn] {
    height: 6px;
    background-color: var(--bg-surface-secondary);
    border-radius: 3px;
    overflow: hidden;
}

.busy-progress .progress-bar[b-5vfgk25tcn] {
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-info));
}

.busy-progress .progress-text[b-5vfgk25tcn] {
    display: block;
    margin-top: 0.5rem;
    color: var(--text-secondary);
    font-size: 0.75rem;
}
/* /Components/Common/ConfirmDialog.razor.rz.scp.css */
/* ConfirmDialog — wraps FshModal, so most chrome comes from FshModal.razor.css.
   Token-driven: dark mode and tenant brand both flow through automatically. */

.fsh-confirm[b-5nrklvx8qi] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.fsh-confirm-message[b-5nrklvx8qi] {
    margin: 0;
    color: var(--text-primary);
    line-height: 1.5;
}

.fsh-confirm-details[b-5nrklvx8qi] {
    background: var(--bg-surface-secondary);
    border-left: 3px solid var(--theme-warning);
    padding: 0.75rem 1rem;
    border-radius: var(--radius-md);
    color: var(--text-secondary);
    font-size: 0.9rem;
}

.fsh-confirm-gate[b-5nrklvx8qi] {
    margin-top: 0.5rem;
}

.fsh-confirm-gate :deep(.fsh-form-group)[b-5nrklvx8qi] {
    margin-bottom: 0;
}
/* /Components/Common/ContentCard.razor.rz.scp.css */
/* =============================================
   CONTENT CARD COMPONENT STYLES
   Uses CSS variables for dark mode compatibility
   ============================================= */

.content-card[b-xuoeyc0duv] {
    background: var(--bg-surface);
    border-radius: 1rem;
    box-shadow: var(--card-shadow, 0 1px 3px rgba(0, 0, 0, 0.1));
    border: 1px solid var(--border-color);
    overflow: visible; /* Allow dropdowns to overflow */
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* Card header pattern consolidated in app.css */
.card-header[b-xuoeyc0duv] {
    gap: 1rem; /* Component-specific override */
    padding: 1.25rem 1.5rem; /* Component-specific override */
}

.card-header.gradient[b-xuoeyc0duv] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
    border-bottom: none;
}

.card-header.gradient .header-text h3[b-xuoeyc0duv],
.card-header.gradient .header-text p[b-xuoeyc0duv] {
    color: white;
}

.card-header.gradient .header-text p[b-xuoeyc0duv] {
    opacity: 0.85;
}

/* Header Icon Wrapper */
.header-icon-wrapper[b-xuoeyc0duv] {
    width: 44px;
    height: 44px;
    border-radius: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.header-icon-wrapper i[b-xuoeyc0duv] {
    font-size: 1.25rem;
}

/* Icon Color Variants */
.header-icon-wrapper.icon-primary[b-xuoeyc0duv] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-primary) 15%, transparent) 0%, color-mix(in srgb, var(--theme-purple) 15%, transparent) 100%);
    color: var(--theme-primary);
}

.header-icon-wrapper.icon-purple[b-xuoeyc0duv] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-purple) 15%, transparent) 0%, color-mix(in srgb, var(--theme-purple) 15%, transparent) 100%);
    color: var(--theme-purple);
}

.header-icon-wrapper.icon-teal[b-xuoeyc0duv] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-teal) 15%, transparent) 0%, color-mix(in srgb, var(--theme-teal) 15%, transparent) 100%);
    color: var(--theme-teal);
}

.header-icon-wrapper.icon-emerald[b-xuoeyc0duv] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-success) 15%, transparent) 0%, color-mix(in srgb, var(--theme-success) 15%, transparent) 100%);
    color: var(--theme-success);
}

.header-icon-wrapper.icon-orange[b-xuoeyc0duv] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 15%, transparent) 0%, color-mix(in srgb, var(--theme-warning) 15%, transparent) 100%);
    color: var(--theme-warning);
}

.header-icon-wrapper.icon-pink[b-xuoeyc0duv] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-pink) 15%, transparent) 0%, color-mix(in srgb, var(--theme-pink) 15%, transparent) 100%);
    color: var(--theme-pink);
}

.header-icon-wrapper.icon-red[b-xuoeyc0duv] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-danger) 15%, transparent) 0%, color-mix(in srgb, var(--theme-danger) 15%, transparent) 100%);
    color: var(--theme-danger);
}

/* Header Text */
.header-text[b-xuoeyc0duv] {
    flex: 1;
    min-width: 0;
}

.header-text h3[b-xuoeyc0duv] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
}

.header-text p[b-xuoeyc0duv] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0.25rem 0 0 0;
}

/* Header Actions */
.header-actions[b-xuoeyc0duv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

/* Card Content */
.card-content[b-xuoeyc0duv] {
    padding: 1.5rem;
}

.card-content.no-padding[b-xuoeyc0duv] {
    padding: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .card-header[b-xuoeyc0duv] {
        padding: 1rem 1.25rem;
    }

    .card-content[b-xuoeyc0duv] {
        padding: 1.25rem;
    }

    .header-icon-wrapper[b-xuoeyc0duv] {
        width: 40px;
        height: 40px;
    }

    .header-icon-wrapper i[b-xuoeyc0duv] {
        font-size: 1.125rem;
    }

    .header-text h3[b-xuoeyc0duv] {
        font-size: 1rem;
    }
}
/* /Components/Common/DataTableShell.razor.rz.scp.css */
/* DataTableShell — wraps the standard table container + list footer.
   The .table-container and .list-footer base styles live in app.css and are
   shared globally; this scoped sheet only adds wrapper-specific niceties. */

.fsh-data-table[b-te4m0lmlmd] {
    background: var(--bg-surface);
    border-radius: var(--radius-lg);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.fsh-data-table-footer[b-te4m0lmlmd] {
    margin-top: 0.75rem;
}

.fsh-data-table-footer .footer-right[b-te4m0lmlmd] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.fsh-data-table-footer .page-size-selector[b-te4m0lmlmd] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: 1rem;
    color: var(--text-secondary);
    font-size: 0.825rem;
}

.fsh-data-table-footer .page-size-selector select[b-te4m0lmlmd] {
    padding: 0.2rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-sm);
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.825rem;
}

.fsh-data-table-footer .results-text[b-te4m0lmlmd] {
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.fsh-data-table-footer .results-text strong[b-te4m0lmlmd] {
    color: var(--text-primary);
}
/* /Components/Common/DecisionPanel.razor.rz.scp.css */
/* DecisionPanel Component Styles */

/* Card Structure */
.decision-card[b-ywgzhkqtkw] {
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg, 12px);
    background: var(--surface-primary);
    overflow: hidden;
}

.decision-card .card-header[b-ywgzhkqtkw] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--surface-secondary);
}

.decision-card .card-header h3[b-ywgzhkqtkw] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.9375rem;
    font-weight: 600;
    margin: 0;
    color: var(--text-primary);
}

.decision-card .card-header h3 i[b-ywgzhkqtkw] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

.decision-card .card-body[b-ywgzhkqtkw] {
    padding: 1.25rem;
}

/* Form Groups */
.form-group[b-ywgzhkqtkw] {
    margin-bottom: 1rem;
}

.form-group:last-child[b-ywgzhkqtkw] {
    margin-bottom: 0;
}

.form-label[b-ywgzhkqtkw] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
    color: var(--text-primary);
}

.form-label i[b-ywgzhkqtkw] {
    font-size: 1rem;
    color: var(--text-secondary);
}

.form-input[b-ywgzhkqtkw] {
    width: 100%;
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 6px);
    background: var(--surface-primary);
    color: var(--text-primary);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.form-input:focus[b-ywgzhkqtkw] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(var(--theme-primary-rgb, 99, 102, 241), 0.1);
}

.form-input[b-ywgzhkqtkw]::placeholder {
    color: var(--text-tertiary);
}

textarea.form-input[b-ywgzhkqtkw] {
    resize: vertical;
    min-height: 80px;
}

/* Score Wrapper */
.score-wrapper[b-ywgzhkqtkw] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.score-input[b-ywgzhkqtkw] {
    width: 80px;
    text-align: center;
}

.score-max[b-ywgzhkqtkw] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
}

/* Divider */
.divider[b-ywgzhkqtkw] {
    margin: 1rem 0;
    border: none;
    border-top: 1px solid var(--border-color);
}

/* Decision Actions */
.decision-actions[b-ywgzhkqtkw] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

/* Decision Hint */
.decision-hint[b-ywgzhkqtkw] {
    display: flex;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    border-radius: var(--border-radius, 6px);
    font-size: 0.8125rem;
    line-height: 1.5;
    background: var(--surface-secondary);
    color: var(--text-secondary);
}

.decision-hint i[b-ywgzhkqtkw] {
    flex-shrink: 0;
    font-size: 1rem;
    margin-top: 0.125rem;
    color: var(--text-tertiary);
}

.decision-hint strong[b-ywgzhkqtkw] {
    color: var(--text-primary);
}
/* /Components/Common/DocumentDownloadLink.razor.rz.scp.css */
/* ============================================
   DocumentDownloadLink — Animated download link
   ============================================ */

.doc-download-link[b-j1l57ugsz7] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--theme-primary);
    text-decoration: none;
    cursor: pointer;
    padding: 0.175rem 0.5rem 0.175rem 0.375rem;
    border-radius: 6px;
    background: rgba(99, 102, 241, 0.06);
    border: 1px solid rgba(99, 102, 241, 0.12);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    animation: link-attention-b-j1l57ugsz7 2.5s ease-in-out 1s 2;
    max-width: 100%;
}

.doc-download-link .link-title[b-j1l57ugsz7] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.doc-download-link .link-icon[b-j1l57ugsz7] {
    font-size: 0.875rem;
    flex-shrink: 0;
    opacity: 0.7;
    transition: all 0.25s ease;
    animation: icon-bounce-b-j1l57ugsz7 2.5s ease-in-out 1s 2;
}

.doc-download-link .tap-hint[b-j1l57ugsz7] {
    font-size: 0.625rem;
    font-weight: 400;
    opacity: 0;
    max-width: 0;
    overflow: hidden;
    white-space: nowrap;
    color: rgba(99, 102, 241, 0.6);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    flex-shrink: 0;
}

.doc-download-link:hover[b-j1l57ugsz7] {
    color: var(--text-inverse);
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    box-shadow: 0 2px 10px rgba(99, 102, 241, 0.3);
    transform: translateY(-1px);
}

.doc-download-link:hover .link-icon[b-j1l57ugsz7] {
    opacity: 1;
    animation: icon-nudge-b-j1l57ugsz7 0.4s ease forwards;
}

.doc-download-link:hover .tap-hint[b-j1l57ugsz7] {
    opacity: 1;
    max-width: 80px;
    margin-left: 0.125rem;
}

.doc-download-link:active[b-j1l57ugsz7] {
    transform: translateY(0) scale(0.97);
    box-shadow: 0 1px 4px rgba(99, 102, 241, 0.2);
}

/* ---- Admission letter variant — green ---- */

.doc-download-link.admission-variant[b-j1l57ugsz7] {
    color: var(--theme-success);
    background: rgba(16, 185, 129, 0.06);
    border-color: rgba(16, 185, 129, 0.15);
    animation-name: link-attention-green-b-j1l57ugsz7;
}

.doc-download-link.admission-variant .link-icon[b-j1l57ugsz7] {
    animation-name: icon-bounce-green-b-j1l57ugsz7;
}

.doc-download-link.admission-variant .tap-hint[b-j1l57ugsz7] {
    color: rgba(16, 185, 129, 0.6);
}

.doc-download-link.admission-variant:hover[b-j1l57ugsz7] {
    color: var(--text-inverse);
    background: var(--theme-success);
    border-color: var(--theme-success);
    box-shadow: 0 2px 10px rgba(16, 185, 129, 0.3);
}

/* ---- Keyframes ---- */

@keyframes link-attention-b-j1l57ugsz7 {
    0%, 100% {
        background: rgba(99, 102, 241, 0.06);
        border-color: rgba(99, 102, 241, 0.12);
        box-shadow: 0 0 0 0 rgba(99, 102, 241, 0);
    }
    50% {
        background: rgba(99, 102, 241, 0.14);
        border-color: rgba(99, 102, 241, 0.35);
        box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.08);
    }
}

@keyframes link-attention-green-b-j1l57ugsz7 {
    0%, 100% {
        background: rgba(16, 185, 129, 0.06);
        border-color: rgba(16, 185, 129, 0.15);
        box-shadow: 0 0 0 0 rgba(16, 185, 129, 0);
    }
    50% {
        background: rgba(16, 185, 129, 0.14);
        border-color: rgba(16, 185, 129, 0.35);
        box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.08);
    }
}

@keyframes icon-bounce-b-j1l57ugsz7 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(2px); }
}

@keyframes icon-bounce-green-b-j1l57ugsz7 {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(2px); }
}

@keyframes icon-nudge-b-j1l57ugsz7 {
    0% { transform: translateY(0); }
    40% { transform: translateY(3px); }
    100% { transform: translateY(1px); }
}

/* ---- Mobile: always show tap hint ---- */

@media (max-width: 640px) {
    .doc-download-link .tap-hint[b-j1l57ugsz7] {
        opacity: 0.6;
        max-width: 80px;
    }
}

/* ---- Reduced motion ---- */

@media (prefers-reduced-motion: reduce) {
    .doc-download-link[b-j1l57ugsz7] {
        animation: none;
    }

    .doc-download-link .link-icon[b-j1l57ugsz7] {
        animation: none;
    }

    .doc-download-link:hover[b-j1l57ugsz7] {
        transform: none;
    }

    .doc-download-link:active[b-j1l57ugsz7] {
        transform: none;
    }

    .doc-download-link:hover .link-icon[b-j1l57ugsz7] {
        animation: none;
    }
}
/* /Components/Common/DocumentViewer.razor.rz.scp.css */
/* =============================================
   DOCUMENT VIEWER - Scoped CSS
   Critical styles for component isolation
   Full styles are in app.css
   ============================================= */

/* Overlay - Positioned within content area (respects sidebar and header) */
.document-viewer-overlay[b-n1kp367lqh] {
    position: fixed !important;
    top: var(--header-height, 65px) !important; /* Start below header */
    left: var(--sidebar-width, 280px) !important; /* Start after sidebar */
    right: 0 !important;
    bottom: 0 !important;
    width: auto !important;
    height: calc(100vh - var(--header-height, 65px)) !important;
    background: rgba(0, 0, 0, 0.92);
    z-index: 1050 !important; /* Above content but respects layout */
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 20px;
    backdrop-filter: blur(8px);
    animation: docViewerFadeIn-b-n1kp367lqh 0.25s ease-out;
    isolation: isolate;
    transform: translateZ(0);
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* When sidebar is collapsed */
.sidebar-collapsed .document-viewer-overlay[b-n1kp367lqh],
.sidebar-mini .document-viewer-overlay[b-n1kp367lqh] {
    left: var(--sidebar-collapsed-width, 70px) !important;
}

/* When sidebar is hidden (mobile) */
@media (max-width: 991px) {
    .document-viewer-overlay[b-n1kp367lqh] {
        left: 0 !important;
        width: 100vw !important;
    }
}

.document-viewer-overlay.closing[b-n1kp367lqh] {
    animation: docViewerFadeOut-b-n1kp367lqh 0.2s ease-out forwards;
}

@keyframes docViewerFadeIn-b-n1kp367lqh {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes docViewerFadeOut-b-n1kp367lqh {
    from { opacity: 1; }
    to { opacity: 0; }
}

/* Container - Large modal-like viewer */
.document-viewer-container[b-n1kp367lqh] {
    display: flex !important;
    flex-direction: column !important;
    width: calc(100% - 40px);
    max-width: 1400px;
    height: calc(100vh - var(--header-height, 65px) - 80px);
    max-height: calc(100vh - var(--header-height, 65px) - 80px);
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow:
        0 0 0 1px rgba(255, 255, 255, 0.1),
        0 25px 50px -12px rgba(0, 0, 0, 0.6),
        0 0 100px rgba(0, 0, 0, 0.3);
    overflow: hidden;
    animation: docViewerSlideIn-b-n1kp367lqh 0.3s cubic-bezier(0.16, 1, 0.3, 1);
    position: relative;
    z-index: 1;
    margin: 20px auto;
}

.document-viewer-container:fullscreen[b-n1kp367lqh] {
    width: 100vw;
    height: 100vh;
    max-width: none;
    max-height: none;
    border-radius: 0;
}

@keyframes docViewerSlideIn-b-n1kp367lqh {
    from {
        transform: scale(0.92) translateY(30px);
        opacity: 0;
    }
    to {
        transform: scale(1) translateY(0);
        opacity: 1;
    }
}

/* Toolbar */
.document-viewer-toolbar[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 16px 24px;
    background: var(--bg-surface-elevated);
    border-bottom: 1px solid var(--border-color);
    flex-shrink: 0;
    gap: 16px;
}

.toolbar-left[b-n1kp367lqh],
.toolbar-center[b-n1kp367lqh],
.toolbar-right[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.toolbar-left[b-n1kp367lqh] {
    flex: 1;
    min-width: 0;
}

.toolbar-center[b-n1kp367lqh] {
    flex: 0 0 auto;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 6px 8px;
}

.toolbar-right[b-n1kp367lqh] {
    flex: 0 0 auto;
    gap: 8px;
}

/* File icon in toolbar */
.document-viewer-toolbar .file-icon[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    background: linear-gradient(135deg, rgba(26, 179, 148, 0.1), rgba(26, 179, 148, 0.05));
    border-radius: 12px;
    flex-shrink: 0;
    border: 1px solid rgba(26, 179, 148, 0.15);
}

.document-viewer-toolbar .file-icon i[b-n1kp367lqh] {
    font-size: 22px;
    color: var(--theme-primary);
}

/* File name */
.document-viewer-toolbar .file-name[b-n1kp367lqh] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-heading);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 400px;
}

/* Toolbar buttons */
.toolbar-btn[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
}

.toolbar-btn:hover:not(:disabled)[b-n1kp367lqh] {
    background: rgba(26, 179, 148, 0.1);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    transform: translateY(-1px);
}

.toolbar-btn:disabled[b-n1kp367lqh] {
    opacity: 0.4;
    cursor: not-allowed;
}

.toolbar-btn i[b-n1kp367lqh] {
    font-size: 20px;
}

.toolbar-btn.close-btn[b-n1kp367lqh] {
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.2);
    color: var(--theme-danger);
}

.toolbar-btn.close-btn:hover[b-n1kp367lqh] {
    background: rgba(239, 68, 68, 0.15);
    border-color: var(--theme-danger);
    color: var(--theme-danger-emphasis);
}

.toolbar-divider[b-n1kp367lqh] {
    width: 1px;
    height: 28px;
    background: var(--border-color);
    margin: 0 4px;
}

.page-indicator[b-n1kp367lqh],
.zoom-indicator[b-n1kp367lqh] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
    min-width: 50px;
    text-align: center;
}

/* Content Area */
.document-viewer-content[b-n1kp367lqh] {
    flex: 1;
    overflow: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(180deg, var(--border-subtle) 0%, var(--border-color) 100%);
    padding: 32px;
    position: relative;
}

.document-viewer-content[b-n1kp367lqh]::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image: radial-gradient(circle at 1px 1px, rgba(0,0,0,0.03) 1px, transparent 0);
    background-size: 20px 20px;
    pointer-events: none;
}

/* Loading State */
.viewer-loading[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 60px;
    color: var(--text-secondary);
    z-index: 1;
}

.viewer-loading .loading-spinner[b-n1kp367lqh] {
    position: relative;
    width: 64px;
    height: 64px;
}

.viewer-loading .spinner-ring[b-n1kp367lqh] {
    position: absolute;
    inset: 0;
    border-radius: 50%;
    border: 4px solid transparent;
    border-top-color: var(--theme-primary);
    animation: spinnerRing-b-n1kp367lqh 1s linear infinite;
}

.viewer-loading .spinner-ring:nth-child(2)[b-n1kp367lqh] {
    inset: 8px;
    border-top-color: var(--theme-secondary);
    animation-delay: -0.3s;
}

.viewer-loading .spinner-ring:nth-child(3)[b-n1kp367lqh] {
    inset: 16px;
    border-top-color: var(--theme-info);
    animation-delay: -0.6s;
}

@keyframes spinnerRing-b-n1kp367lqh {
    to { transform: rotate(360deg); }
}

/* PDF Viewer (Canvas - legacy) */
.pdf-viewer[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    transition: transform 0.2s ease;
    z-index: 1;
}

/* PDF Viewer (Iframe - stable) */
.pdf-iframe-viewer[b-n1kp367lqh] {
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.pdf-iframe-viewer iframe[b-n1kp367lqh] {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 8px;
    background: white; /* intentional: PDF iframe content is universally white */
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

.pdf-viewer canvas[b-n1kp367lqh] {
    display: block;
    box-shadow: 0 10px 40px -8px rgba(0, 0, 0, 0.2);
    background: white; /* intentional: PDF canvas surface */
    border-radius: 4px;
}

/* Mobile PDF Viewer - Action Card */
.pdf-mobile-viewer[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    max-width: 420px;
    gap: 24px;
    z-index: 1;
    animation: mobileDocFadeIn-b-n1kp367lqh 0.4s ease-out;
}

@keyframes mobileDocFadeIn-b-n1kp367lqh {
    from { opacity: 0; transform: translateY(16px); }
    to { opacity: 1; transform: translateY(0); }
}

.mobile-doc-preview[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    padding: 40px 32px 32px;
    background: var(--bg-surface);
    border-radius: 20px;
    box-shadow: 0 10px 40px -8px rgba(0, 0, 0, 0.15);
    text-align: center;
    width: 100%;
}

.mobile-doc-icon-wrapper[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--theme-danger) 0%, var(--theme-danger-emphasis) 100%);
    border-radius: 20px;
    box-shadow: 0 8px 24px rgba(239, 68, 68, 0.3);
}

.mobile-doc-icon-wrapper i[b-n1kp367lqh] {
    font-size: 40px;
    color: white;
}

.mobile-doc-preview h4[b-n1kp367lqh] {
    font-size: 18px;
    font-weight: 700;
    color: var(--text-heading);
    margin: 0;
    word-break: break-word;
}

.mobile-doc-badge[b-n1kp367lqh] {
    display: inline-flex;
    padding: 4px 12px;
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger-emphasis);
    border-radius: 20px;
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.mobile-doc-hint[b-n1kp367lqh] {
    font-size: 14px;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.5;
}

.mobile-doc-actions[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    width: 100%;
}

.mobile-action-btn[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 16px 20px;
    border: 1px solid var(--border-color);
    border-radius: 16px;
    background: var(--bg-surface);
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: left;
    width: 100%;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.mobile-action-btn:active[b-n1kp367lqh] {
    transform: scale(0.97);
}

.mobile-action-btn .action-icon[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 14px;
    flex-shrink: 0;
}

.mobile-action-btn .action-icon i[b-n1kp367lqh] {
    font-size: 24px;
    color: white;
}

.mobile-action-btn.view-btn .action-icon[b-n1kp367lqh] {
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-emphasis));
}

.mobile-action-btn.view-btn:active[b-n1kp367lqh] {
    border-color: var(--theme-primary);
    background: rgba(26, 179, 148, 0.04);
}

.mobile-action-btn.download-btn .action-icon[b-n1kp367lqh] {
    background: linear-gradient(135deg, var(--theme-secondary), var(--theme-info-emphasis));
}

.mobile-action-btn.download-btn:active[b-n1kp367lqh] {
    border-color: var(--theme-secondary);
    background: rgba(28, 132, 198, 0.04);
}

.mobile-action-btn.print-btn .action-icon[b-n1kp367lqh] {
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning));
}

.mobile-action-btn.print-btn:active[b-n1kp367lqh] {
    border-color: var(--theme-warning);
    background: rgba(248, 172, 89, 0.04);
}

.mobile-action-btn .action-text[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.mobile-action-btn .action-label[b-n1kp367lqh] {
    font-size: 16px;
    font-weight: 600;
    color: var(--text-heading);
}

.mobile-action-btn .action-hint[b-n1kp367lqh] {
    font-size: 13px;
    color: var(--text-secondary);
}

/* Staggered entrance for action buttons */
.mobile-action-btn:nth-child(1)[b-n1kp367lqh] { animation: mobileDocFadeIn-b-n1kp367lqh 0.3s ease-out 0.1s both; }
.mobile-action-btn:nth-child(2)[b-n1kp367lqh] { animation: mobileDocFadeIn-b-n1kp367lqh 0.3s ease-out 0.2s both; }
.mobile-action-btn:nth-child(3)[b-n1kp367lqh] { animation: mobileDocFadeIn-b-n1kp367lqh 0.3s ease-out 0.3s both; }

/* Image Viewer */
.image-viewer[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 1;
}

.image-viewer img[b-n1kp367lqh] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    transition: transform 0.2s ease;
    box-shadow: 0 10px 40px -8px rgba(0, 0, 0, 0.2);
    border-radius: 8px;
}

/* Video Viewer */
.video-viewer[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.video-viewer video[b-n1kp367lqh] {
    max-width: 100%;
    max-height: 100%;
    border-radius: 12px;
    box-shadow: 0 10px 40px -8px rgba(0, 0, 0, 0.2);
}

/* Audio Viewer */
.audio-viewer[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 32px;
    padding: 60px 80px;
    background: var(--bg-surface);
    border-radius: 20px;
    box-shadow: 0 10px 40px -8px rgba(0, 0, 0, 0.15);
    z-index: 1;
}

.audio-viewer .audio-icon[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100px;
    height: 100px;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    border-radius: 50%;
    color: white;
}

.audio-viewer .audio-icon i[b-n1kp367lqh] {
    font-size: 44px;
}

.audio-viewer audio[b-n1kp367lqh] {
    width: 100%;
    max-width: 450px;
}

/* Office Viewer (Google Docs) */
.office-viewer[b-n1kp367lqh] {
    width: 100%;
    height: 100%;
    z-index: 1;
}

.office-viewer iframe[b-n1kp367lqh] {
    width: 100%;
    height: 100%;
    border: none;
    border-radius: 12px;
    background: white; /* intentional: Office document iframe surface */
}

/* Text Viewer */
.text-viewer[b-n1kp367lqh] {
    width: 100%;
    max-width: 900px;
    height: 100%;
    overflow: auto;
    background: var(--bg-surface);
    border-radius: 12px;
    padding: 32px;
    box-shadow: 0 10px 40px -8px rgba(0, 0, 0, 0.15);
    z-index: 1;
}

.text-viewer pre[b-n1kp367lqh] {
    margin: 0;
    font-family: 'JetBrains Mono', 'SF Mono', 'Consolas', monospace;
    font-size: 14px;
    line-height: 1.7;
    white-space: pre-wrap;
    word-break: break-word;
}

/* Unsupported/Error Viewer */
.unsupported-viewer[b-n1kp367lqh],
.viewer-error[b-n1kp367lqh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 60px 80px;
    text-align: center;
    background: var(--bg-surface);
    border-radius: 20px;
    box-shadow: 0 10px 40px -8px rgba(0, 0, 0, 0.15);
    z-index: 1;
    max-width: 520px;
}

.unsupported-icon[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 88px;
    height: 88px;
    background: linear-gradient(135deg, var(--border-subtle) 0%, var(--border-color) 100%);
    border-radius: 20px;
    border: 1px solid var(--border-color);
}

.unsupported-icon i[b-n1kp367lqh],
.unsupported-viewer > i[b-n1kp367lqh] {
    font-size: 44px;
    color: var(--text-muted);
}

.viewer-error .unsupported-icon[b-n1kp367lqh] {
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-border) 100%);
    border: 1px solid var(--theme-warning-text);
}

.viewer-error .unsupported-icon i[b-n1kp367lqh] {
    color: var(--theme-warning-emphasis);
}

.unsupported-viewer h4[b-n1kp367lqh],
.viewer-error h4[b-n1kp367lqh] {
    font-size: 22px;
    font-weight: 700;
    color: var(--text-heading);
    margin: 0;
}

.unsupported-viewer p[b-n1kp367lqh],
.viewer-error p[b-n1kp367lqh] {
    font-size: 15px;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.6;
    max-width: 360px;
}

.unsupported-actions[b-n1kp367lqh],
.error-actions[b-n1kp367lqh] {
    display: flex;
    gap: 16px;
    margin-top: 8px;
}

.unsupported-actions .btn[b-n1kp367lqh],
.error-actions .btn[b-n1kp367lqh] {
    padding: 12px 24px;
    font-size: 14px;
    font-weight: 600;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    transition: all 0.2s ease;
}

.unsupported-actions .btn-primary[b-n1kp367lqh],
.error-actions .btn-primary[b-n1kp367lqh] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.unsupported-actions .btn-primary:hover[b-n1kp367lqh],
.error-actions .btn-primary:hover[b-n1kp367lqh] {
    background: var(--theme-primary-emphasis);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(26, 179, 148, 0.3);
}

.unsupported-actions .btn-outline-secondary[b-n1kp367lqh],
.error-actions .btn-outline-secondary[b-n1kp367lqh] {
    background: transparent;
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
}

.unsupported-actions .btn-outline-secondary:hover[b-n1kp367lqh],
.error-actions .btn-outline-secondary:hover[b-n1kp367lqh] {
    background: var(--bg-surface-sunken);
    border-color: var(--text-secondary);
    color: var(--text-primary);
}

/* Footer */
.document-viewer-footer[b-n1kp367lqh] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 12px 24px;
    background: var(--bg-surface-elevated);
    border-top: 1px solid var(--border-color);
    flex-shrink: 0;
}

.footer-nav-btn[b-n1kp367lqh] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 16px;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    color: var(--text-secondary);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.footer-nav-btn:hover:not(:disabled)[b-n1kp367lqh] {
    background: rgba(26, 179, 148, 0.1);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.footer-nav-btn:disabled[b-n1kp367lqh] {
    opacity: 0.4;
    cursor: not-allowed;
}

.footer-page-info[b-n1kp367lqh] {
    font-size: 14px;
    font-weight: 600;
    color: var(--text-primary);
}

/* Mobile responsive */
@media (max-width: 991px) {
    .document-viewer-overlay[b-n1kp367lqh] {
        left: 0 !important;
        padding: 10px;
    }

    .document-viewer-container[b-n1kp367lqh] {
        width: calc(100% - 20px);
        height: calc(100vh - var(--header-height, 65px) - 30px);
        max-height: calc(100vh - var(--header-height, 65px) - 30px);
        margin: 10px auto;
        border-radius: 8px;
    }

    .document-viewer-toolbar[b-n1kp367lqh] {
        padding: 12px 16px;
    }

    .document-viewer-toolbar .file-name[b-n1kp367lqh] {
        max-width: 150px;
        font-size: 14px;
    }

    .document-viewer-content[b-n1kp367lqh] {
        padding: 16px;
    }

    .unsupported-viewer[b-n1kp367lqh],
    .viewer-error[b-n1kp367lqh] {
        padding: 40px 24px;
        margin: 16px;
    }
}

@media (max-width: 576px) {
    .document-viewer-overlay[b-n1kp367lqh] {
        padding: 0;
    }

    .document-viewer-container[b-n1kp367lqh] {
        width: 100%;
        height: calc(100vh - var(--header-height, 65px));
        max-height: calc(100vh - var(--header-height, 65px));
        margin: 0;
        border-radius: 0;
    }

    .toolbar-center[b-n1kp367lqh] {
        display: none;
    }
}

/* Dark mode */
[data-bs-theme="dark"] .document-viewer-overlay[b-n1kp367lqh] {
    background: rgba(0, 0, 0, 0.95);
}

[data-bs-theme="dark"] .document-viewer-container[b-n1kp367lqh] {
    background: var(--text-heading);
}

[data-bs-theme="dark"] .document-viewer-toolbar[b-n1kp367lqh] {
    background: var(--bg-darkest);
    border-color: var(--text-primary);
}

[data-bs-theme="dark"] .toolbar-center[b-n1kp367lqh] {
    background: var(--text-heading);
    border-color: var(--text-primary);
}

[data-bs-theme="dark"] .toolbar-btn[b-n1kp367lqh] {
    background: var(--text-heading);
    border-color: var(--text-primary);
    color: var(--text-muted);
}

[data-bs-theme="dark"] .document-viewer-content[b-n1kp367lqh] {
    background: linear-gradient(180deg, var(--bg-darkest) 0%, var(--text-heading) 100%);
}

[data-bs-theme="dark"] .unsupported-viewer[b-n1kp367lqh],
[data-bs-theme="dark"] .viewer-error[b-n1kp367lqh],
[data-bs-theme="dark"] .audio-viewer[b-n1kp367lqh],
[data-bs-theme="dark"] .text-viewer[b-n1kp367lqh] {
    background: var(--text-heading);
}

[data-bs-theme="dark"] .document-viewer-footer[b-n1kp367lqh] {
    background: var(--bg-darkest);
    border-color: var(--text-primary);
}

/* Dark mode - Mobile PDF Viewer */
[data-bs-theme="dark"] .mobile-doc-preview[b-n1kp367lqh] {
    background: var(--text-heading);
}

[data-bs-theme="dark"] .mobile-action-btn[b-n1kp367lqh] {
    background: var(--text-heading);
    border-color: var(--text-primary);
}

[data-bs-theme="dark"] .mobile-action-btn:active[b-n1kp367lqh] {
    background: var(--bg-darkest);
}

[data-bs-theme="dark"] .mobile-action-btn.view-btn:active[b-n1kp367lqh] {
    background: rgba(26, 179, 148, 0.1);
}

[data-bs-theme="dark"] .mobile-action-btn.download-btn:active[b-n1kp367lqh] {
    background: rgba(28, 132, 198, 0.1);
}

[data-bs-theme="dark"] .mobile-action-btn.print-btn:active[b-n1kp367lqh] {
    background: rgba(248, 172, 89, 0.1);
}
/* /Components/Common/DownloadLimitEditor.razor.rz.scp.css */
/* ========================================
   DOWNLOAD LIMIT EDITOR COMPONENT
   Reusable download limit configuration
   ======================================== */

/* ========================================
   CARD MODE
   ======================================== */

.dl-editor-card[b-34v7s9iqnp] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.dl-editor-card-header[b-34v7s9iqnp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.dl-editor-card-header i[b-34v7s9iqnp] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

.dl-editor-card-body[b-34v7s9iqnp] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.dl-editor-toggle[b-34v7s9iqnp] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.dl-editor-toggle-label[b-34v7s9iqnp] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.dl-editor-toggle-label span[b-34v7s9iqnp] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

.dl-editor-toggle-label small[b-34v7s9iqnp] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.dl-editor-input-row[b-34v7s9iqnp] {
    padding-left: 3rem;
}

.dl-editor-label[b-34v7s9iqnp] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.dl-editor-input-group[b-34v7s9iqnp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.dl-editor-input-group[b-34v7s9iqnp]  .form-control-modern {
    max-width: 120px;
}

.dl-editor-unit[b-34v7s9iqnp] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.dl-editor-hint[b-34v7s9iqnp] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.25rem;
}

.dl-editor-count[b-34v7s9iqnp] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.dl-editor-count i[b-34v7s9iqnp] {
    color: var(--theme-info);
}

/* ========================================
   INLINE MODE
   ======================================== */

.dl-editor-inline[b-34v7s9iqnp] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.dl-editor-inline-row[b-34v7s9iqnp] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.dl-editor-inline-label[b-34v7s9iqnp] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap;
}

.dl-editor-inline-input[b-34v7s9iqnp] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.dl-editor-inline-input[b-34v7s9iqnp]  .form-control-sm {
    max-width: 80px;
    height: 30px;
    font-size: 0.8125rem;
}

.dl-editor-unit-sm[b-34v7s9iqnp] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.dl-editor-unlimited[b-34v7s9iqnp] {
    font-size: 0.75rem;
    color: var(--text-muted);
    font-style: italic;
}

.dl-editor-count-inline[b-34v7s9iqnp] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    padding-left: 2.75rem;
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 640px) {
    .dl-editor-input-row[b-34v7s9iqnp] {
        padding-left: 0;
    }

    .dl-editor-inline-row[b-34v7s9iqnp] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }
}
/* /Components/Common/EmptyState.razor.rz.scp.css */
/* =============================================
   EMPTY STATE COMPONENT STYLES
   Native div implementation for full control.
   ============================================= */

/* Empty State Base - replaces RadzenCard */
.empty-state[b-2zssro34oh] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    text-align: center;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.75rem;
}

/* Empty Icon */
.empty-icon[b-2zssro34oh] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
}

.empty-icon i[b-2zssro34oh] {
    font-size: 2.5rem;
}

/* Color Variants */
.empty-icon.color-primary[b-2zssro34oh] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-primary) 10%, transparent) 0%, color-mix(in srgb, var(--theme-purple) 10%, transparent) 100%);
    color: var(--theme-primary);
}

.empty-icon.color-purple[b-2zssro34oh] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-purple) 10%, transparent) 0%, color-mix(in srgb, var(--theme-purple-emphasis) 10%, transparent) 100%);
    color: var(--theme-purple);
}

.empty-icon.color-teal[b-2zssro34oh] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-teal) 10%, transparent) 0%, color-mix(in srgb, var(--theme-teal-emphasis) 10%, transparent) 100%);
    color: var(--theme-teal);
}

.empty-icon.color-emerald[b-2zssro34oh] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-success) 10%, transparent) 0%, color-mix(in srgb, var(--theme-success-emphasis) 10%, transparent) 100%);
    color: var(--theme-success);
}

.empty-icon.color-orange[b-2zssro34oh] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 10%, transparent) 0%, color-mix(in srgb, var(--theme-warning-emphasis) 10%, transparent) 100%);
    color: var(--theme-warning);
}

.empty-icon.color-gray[b-2zssro34oh] {
    background: rgba(100, 116, 139, 0.1);
    color: var(--text-muted);
}

/* Info color - same as teal/info */
.empty-icon.color-info[b-2zssro34oh] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-info) 10%, transparent) 0%, color-mix(in srgb, var(--theme-info) 10%, transparent) 100%);
    color: var(--theme-info);
}

/* Empty Title */
.empty-title[b-2zssro34oh] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
}

/* Empty Message */
.empty-message[b-2zssro34oh] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    margin: 0 auto 1.5rem auto;
    max-width: 400px;
    line-height: 1.5;
    text-align: center;
}

/* Empty Actions */
.empty-actions[b-2zssro34oh] {
    display: flex;
    gap: 0.75rem;
    flex-wrap: wrap;
    justify-content: center;
}

/* Dark Mode */
:global([data-bs-theme="dark"]) .empty-state[b-2zssro34oh] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

/* Responsive */
@media (max-width: 768px) {
    .empty-state[b-2zssro34oh] {
        padding: 2rem 1.5rem;
    }

    .empty-icon[b-2zssro34oh] {
        width: 64px;
        height: 64px;
    }

    .empty-icon i[b-2zssro34oh] {
        font-size: 2rem;
    }

    .empty-title[b-2zssro34oh] {
        font-size: 1.125rem;
    }

    .empty-message[b-2zssro34oh] {
        font-size: 0.875rem;
    }
}
/* /Components/Common/FilterStrip.razor.rz.scp.css */
/* FilterStrip — canonical .navigation-bar implementation.
   Mirrors AdmissionsNavigationBar.razor.css so any page using <FilterStrip>
   gets the standard look without copy-paste. Token-driven; dark-mode aware. */

.navigation-bar[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

[b-j94wo7zvuo] .tabs-inline {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

[b-j94wo7zvuo] .filter-inline {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 480px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.search-inline[b-j94wo7zvuo] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: all 0.15s ease;
}

.nav-search-box:focus-within[b-j94wo7zvuo] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--theme-primary-subtle);
}

.nav-search-box i[b-j94wo7zvuo] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-j94wo7zvuo] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-j94wo7zvuo]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-j94wo7zvuo] {
    background: var(--border-color);
    color: var(--text-primary);
}

.view-toggle-inline[b-j94wo7zvuo] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
}

.view-toggle-inline .toggle-btn[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
}

.view-toggle-inline .toggle-btn:hover[b-j94wo7zvuo] {
    color: var(--text-secondary);
    background: var(--bg-hover);
}

.view-toggle-inline .toggle-btn.active[b-j94wo7zvuo] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-sm);
}

.view-toggle-inline .toggle-btn i[b-j94wo7zvuo] {
    font-size: 1rem;
}

.sort-inline[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.sort-select[b-j94wo7zvuo] {
    padding: 0.375rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    outline: none;
}

.sort-select:focus[b-j94wo7zvuo] {
    border-color: var(--theme-primary);
}

.sort-dir-btn[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    font-size: 1rem;
    transition: all 0.15s ease;
}

.sort-dir-btn:hover[b-j94wo7zvuo] {
    color: var(--theme-primary);
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.filter-toggle-btn[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-j94wo7zvuo] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-j94wo7zvuo] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-j94wo7zvuo] {
    font-size: 1rem;
}

.filter-active-dot[b-j94wo7zvuo] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

.refresh-btn[b-j94wo7zvuo] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-j94wo7zvuo] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-j94wo7zvuo] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-j94wo7zvuo] {
    font-size: 1rem;
}

.spinner-sm[b-j94wo7zvuo] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: fsh-filter-spin-b-j94wo7zvuo 0.6s linear infinite;
}

@keyframes fsh-filter-spin-b-j94wo7zvuo {
    to { transform: rotate(360deg); }
}

@media (max-width: 1200px) {
    .navigation-bar[b-j94wo7zvuo] {
        flex-wrap: wrap;
    }
    [b-j94wo7zvuo] .filter-inline {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }
    .search-inline[b-j94wo7zvuo] {
        flex: 1 1 150px;
        min-width: 120px;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-j94wo7zvuo] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }
    .search-inline[b-j94wo7zvuo] {
        flex: 1 1 100%;
        max-width: none;
    }
    .filter-toggle-btn span[b-j94wo7zvuo] {
        display: none;
    }
}

@media (max-width: 480px) {
    .filter-toggle-btn span[b-j94wo7zvuo] {
        display: none;
    }
}
/* /Components/Common/FshColorPicker.razor.rz.scp.css */
/* =============================================
   FshColorPicker — combined Radzen swatch + hex text input
   ============================================= */

.fsh-color-picker[b-nlns1mb53y] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.fsh-color-picker-label[b-nlns1mb53y] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.fsh-color-picker-wrapper[b-nlns1mb53y] {
    display: flex;
    align-items: stretch;
    gap: 0.375rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 6px);
    padding: 0.25rem;
    background: var(--bg-surface);
    transition: border-color 0.15s ease;
}

.fsh-color-picker-wrapper:focus-within[b-nlns1mb53y] {
    border-color: var(--theme-primary);
    outline: 2px solid var(--theme-primary-subtle, rgba(26, 179, 148, 0.2));
    outline-offset: 0;
}

[b-nlns1mb53y] .fsh-color-picker-wrapper .rz-colorpicker {
    flex-shrink: 0;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    height: 32px;
    width: 40px;
    overflow: hidden;
}

.fsh-color-picker-text[b-nlns1mb53y] {
    flex: 1;
    border: 0;
    background: transparent;
    color: var(--text-primary);
    font-family: var(--font-mono, monospace);
    font-size: 0.875rem;
    padding: 0 0.5rem;
    outline: none;
    min-width: 80px;
}

.fsh-color-picker-text[b-nlns1mb53y]::placeholder {
    color: var(--text-muted);
}

.fsh-color-picker-helper[b-nlns1mb53y] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Dark mode */
[data-bs-theme="dark"] .fsh-color-picker-wrapper[b-nlns1mb53y] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .fsh-color-picker-text[b-nlns1mb53y] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .fsh-color-picker-label[b-nlns1mb53y] {
    color: var(--text-secondary);
}
/* /Components/Common/FshDateRangePicker.razor.rz.scp.css */
/* FshDateRangePicker — paired date picker. Token-driven; dark-mode aware. */

.fsh-date-range[b-mhdn94jf6u] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.fsh-date-range-fields[b-mhdn94jf6u] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    align-items: stretch;
}

.fsh-date-range-fields :deep(.fsh-form-group)[b-mhdn94jf6u] {
    margin-bottom: 0;
    flex: 1 1 0;
    min-width: 0;
}

.fsh-date-range-arrow[b-mhdn94jf6u] {
    align-self: center;
    color: var(--text-muted);
    font-weight: 600;
    user-select: none;
}

.fsh-date-range-presets[b-mhdn94jf6u] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem;
}

.fsh-date-range-preset-btn[b-mhdn94jf6u] {
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-full);
    padding: 0.2rem 0.65rem;
    font-size: 0.78rem;
    cursor: pointer;
    transition: background 120ms ease, color 120ms ease, border-color 120ms ease;
}

.fsh-date-range-preset-btn:hover:not(:disabled)[b-mhdn94jf6u] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.fsh-date-range-preset-btn:disabled[b-mhdn94jf6u] {
    opacity: 0.55;
    cursor: not-allowed;
}

.fsh-helper-text[b-mhdn94jf6u] {
    color: var(--text-muted);
    font-size: 0.8rem;
}

@media (min-width: 768px) {
    .fsh-date-range-fields[b-mhdn94jf6u] {
        flex-direction: row;
        align-items: flex-end;
    }
    .fsh-date-range-arrow[b-mhdn94jf6u] {
        align-self: flex-end;
        padding-bottom: 0.65rem;
    }
}
/* /Components/Common/FshModal.razor.rz.scp.css */
/* =============================================
   FSH MODAL - Scoped CSS
   All styles moved to centralized app.css
   Dark mode overrides in bootstrap-theme.css
   ============================================= */
/* /Components/Common/FshPasswordInput.razor.rz.scp.css */
/* =============================================
   FshPasswordInput — show/hide toggle styling
   Re-uses .fsh-input + .fsh-form-group from global app.css.
   ============================================= */

[b-dm7tviq0de] .fsh-input-password {
    padding-right: 2.5rem;
}

[b-dm7tviq0de] .fsh-input-toggle {
    position: absolute;
    right: 0.5rem;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: 0;
    padding: 0.25rem 0.5rem;
    color: var(--text-muted);
    cursor: pointer;
    border-radius: 4px;
    line-height: 1;
    transition: background 0.15s ease, color 0.15s ease;
}

[b-dm7tviq0de] .fsh-input-toggle:hover {
    background: var(--theme-primary-subtle, rgba(26, 179, 148, 0.1));
    color: var(--theme-primary);
}

[b-dm7tviq0de] .fsh-input-toggle:focus {
    outline: 2px solid var(--theme-primary);
    outline-offset: 2px;
}

[b-dm7tviq0de] .fsh-input-toggle i {
    font-size: 1.125rem;
}

/* Ensure wrapper relative-positions the toggle */
[b-dm7tviq0de] .fsh-input-wrapper {
    position: relative;
}
/* /Components/Common/FshRadioGroup.razor.rz.scp.css */
/* =============================================
   FshRadioGroup — accessible card-style radio options
   Replaces ad-hoc <input type="radio"> + <label> markup.
   ============================================= */

.fsh-radio-options[b-3v4sl4yrk2] {
    display: flex;
    gap: 0.5rem;
}

.fsh-radio-vertical[b-3v4sl4yrk2] {
    flex-direction: column;
}

.fsh-radio-horizontal[b-3v4sl4yrk2] {
    flex-direction: row;
    flex-wrap: wrap;
}

.fsh-radio-option[b-3v4sl4yrk2] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 6px);
    background: var(--bg-surface);
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease, box-shadow 0.15s ease;
    flex: 1 1 auto;
    min-width: 0;
}

.fsh-radio-option:hover:not(.fsh-radio-disabled)[b-3v4sl4yrk2] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle, rgba(26, 179, 148, 0.08));
}

.fsh-radio-option:focus-within[b-3v4sl4yrk2] {
    outline: 2px solid var(--theme-primary);
    outline-offset: 2px;
}

.fsh-radio-selected[b-3v4sl4yrk2] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle, rgba(26, 179, 148, 0.12));
    box-shadow: 0 0 0 1px var(--theme-primary) inset;
}

.fsh-radio-disabled[b-3v4sl4yrk2] {
    opacity: 0.6;
    cursor: not-allowed;
}

.fsh-radio-option input[type="radio"][b-3v4sl4yrk2] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
}

.fsh-radio-indicator[b-3v4sl4yrk2] {
    width: 18px;
    height: 18px;
    border: 2px solid var(--border-color);
    border-radius: 50%;
    flex-shrink: 0;
    position: relative;
    transition: border-color 0.15s ease;
}

.fsh-radio-selected .fsh-radio-indicator[b-3v4sl4yrk2] {
    border-color: var(--theme-primary);
}

.fsh-radio-selected .fsh-radio-indicator[b-3v4sl4yrk2]::after {
    content: "";
    position: absolute;
    inset: 3px;
    border-radius: 50%;
    background: var(--theme-primary);
}

.fsh-radio-icon[b-3v4sl4yrk2] {
    color: var(--theme-primary);
    font-size: 1.125rem;
    flex-shrink: 0;
}

.fsh-radio-label[b-3v4sl4yrk2] {
    font-size: 0.9375rem;
    color: var(--text-primary);
    flex: 1;
    min-width: 0;
}

.fsh-radio-description[b-3v4sl4yrk2] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-left: 0.5rem;
}

/* Dark mode */
[data-bs-theme="dark"] .fsh-radio-option[b-3v4sl4yrk2] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .fsh-radio-label[b-3v4sl4yrk2] {
    color: var(--text-primary);
}

@media (max-width: 640px) {
    .fsh-radio-horizontal[b-3v4sl4yrk2] {
        flex-direction: column;
    }
}
/* /Components/Common/FshSelect.razor.rz.scp.css */
/* ============================================
   FshSelect Component - Modern Styling
   Enhanced dropdown with clean borders and focus states
   ============================================ */

/* ===== Form Group Container ===== */
.fsh-form-group[b-ddm8bqjfsr] {
    margin-bottom: 0;
}

/* ===== Form Label ===== */
.fsh-form-label[b-ddm8bqjfsr] {
    display: block;
    margin-bottom: 0.3rem;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-primary);
}

.fsh-form-label.fsh-required[b-ddm8bqjfsr]::after {
    content: " *";
    color: var(--theme-danger);
}

/* ===== Standard Select Wrapper ===== */
.fsh-select-wrapper[b-ddm8bqjfsr] {
    position: relative;
    display: flex;
    align-items: center;
}

.fsh-select[b-ddm8bqjfsr] {
    width: 100%;
    padding: 0.35rem 2rem 0.35rem 0.5rem;
    font-size: 0.82rem;
    line-height: 1.4;
    color: var(--input-text);
    background-color: var(--input-bg);
    border: 1px solid var(--input-border);
    border-radius: 6px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    cursor: pointer;
}

.fsh-select:hover:not(:disabled)[b-ddm8bqjfsr] {
    border-color: var(--theme-primary);
}

.fsh-select:focus[b-ddm8bqjfsr] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(var(--theme-primary-rgb, 26, 179, 148), 0.12);
}

.fsh-select:disabled[b-ddm8bqjfsr] {
    background-color: var(--bg-surface-tertiary);
    cursor: not-allowed;
    opacity: 0.6;
}

/* Select Sizes */
.fsh-select.fsh-select-xs[b-ddm8bqjfsr] {
    padding: 0.2rem 1.75rem 0.2rem 0.4rem;
    font-size: 0.75rem;
}

.fsh-select.fsh-select-sm[b-ddm8bqjfsr] {
    padding: 0.25rem 1.75rem 0.25rem 0.4rem;
    font-size: 0.78rem;
}

.fsh-select.fsh-select-lg[b-ddm8bqjfsr] {
    padding: 0.5rem 2.25rem 0.5rem 0.75rem;
    font-size: 0.9375rem;
}

.fsh-select.fsh-select-xl[b-ddm8bqjfsr] {
    padding: 0.625rem 2.5rem 0.625rem 0.875rem;
    font-size: 1rem;
}

/* Validation States */
.fsh-select.fsh-input-valid[b-ddm8bqjfsr] {
    border-color: var(--theme-success);
}

.fsh-select.fsh-input-invalid[b-ddm8bqjfsr] {
    border-color: var(--theme-danger);
    animation: fshShake-b-ddm8bqjfsr 0.4s ease-in-out;
}

@keyframes fshShake-b-ddm8bqjfsr {
    0%, 100% { transform: translateX(0); }
    20% { transform: translateX(-4px); }
    40% { transform: translateX(4px); }
    60% { transform: translateX(-3px); }
    80% { transform: translateX(2px); }
}

/* ===== Select Arrow Icon ===== */
.fsh-select-arrow[b-ddm8bqjfsr] {
    position: absolute;
    right: 0.5rem;
    top: 50%;
    transform: translateY(-50%);
    pointer-events: none;
    color: var(--text-secondary);
    font-size: 0.85rem;
    transition: transform 0.15s ease;
}

.fsh-select:focus ~ .fsh-select-arrow[b-ddm8bqjfsr] {
    color: var(--theme-primary);
    transform: translateY(-50%) rotate(180deg);
}

/* ===== Clear Button ===== */
.fsh-select-clear[b-ddm8bqjfsr] {
    position: absolute;
    right: 1.75rem;
    top: 50%;
    transform: translateY(-50%);
    background: transparent;
    border: none;
    padding: 0.125rem;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
    transition: color 0.15s ease;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.2rem;
}

.fsh-select-clear:hover[b-ddm8bqjfsr] {
    color: var(--text-primary);
}

/* ===== Searchable Select ===== */
.fsh-searchable-select[b-ddm8bqjfsr] {
    position: relative;
}

.fsh-searchable-trigger[b-ddm8bqjfsr] {
    width: 100%;
    padding: 0.35rem 0.5rem;
    min-height: 0;
    font-size: 0.82rem;
    line-height: 1.4;
    background-color: var(--input-bg);
    border: 1px solid var(--input-border);
    border-radius: 6px;
    cursor: pointer;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.25rem;
    user-select: none;
    text-align: left;
    color: var(--input-text);
    font-family: inherit;
}

.fsh-searchable-trigger:hover:not(:disabled)[b-ddm8bqjfsr] {
    border-color: var(--theme-primary);
}

.fsh-searchable-trigger:focus[b-ddm8bqjfsr] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(var(--theme-primary-rgb, 26, 179, 148), 0.12);
}

.fsh-searchable-open .fsh-searchable-trigger[b-ddm8bqjfsr] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(var(--theme-primary-rgb, 26, 179, 148), 0.12);
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
}

/* Searchable Select Sizes */
.fsh-searchable-trigger.fsh-select-xs[b-ddm8bqjfsr] {
    padding: 0.15rem 0.375rem;
    font-size: 0.75rem;
    border-radius: 4px;
}

.fsh-searchable-trigger.fsh-select-sm[b-ddm8bqjfsr] {
    padding: 0.25rem 0.4rem;
    font-size: 0.78rem;
    border-radius: 5px;
}

.fsh-searchable-trigger.fsh-select-lg[b-ddm8bqjfsr] {
    padding: 0.5rem 0.75rem;
    font-size: 0.9375rem;
    border-width: 2px;
    border-radius: 8px;
}

.fsh-searchable-trigger.fsh-select-xl[b-ddm8bqjfsr] {
    padding: 0.625rem 1rem;
    font-size: 1rem;
    border-width: 2px;
    border-radius: 8px;
}

.fsh-searchable-icon[b-ddm8bqjfsr] {
    display: flex;
    align-items: center;
    margin-right: 0.35rem;
    color: var(--text-secondary);
    font-size: 0.9rem;
    flex-shrink: 0;
}

.fsh-searchable-value[b-ddm8bqjfsr] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--input-text);
}

.fsh-searchable-placeholder[b-ddm8bqjfsr] {
    color: var(--input-placeholder);
}

.fsh-searchable-actions[b-ddm8bqjfsr] {
    display: flex;
    align-items: center;
    gap: 0.125rem;
    margin-left: 0.125rem;
    flex-shrink: 0;
}

.fsh-searchable-clear[b-ddm8bqjfsr] {
    background: transparent;
    border: none;
    padding: 0.125rem;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
    transition: color 0.15s ease;
    display: flex;
    align-items: center;
    border-radius: 0.2rem;
}

.fsh-searchable-clear:hover[b-ddm8bqjfsr] {
    color: var(--text-primary);
}

.fsh-searchable-arrow[b-ddm8bqjfsr] {
    color: var(--text-secondary);
    font-size: 0.85rem;
    transition: transform 0.2s ease;
    display: flex;
    align-items: center;
}

.fsh-searchable-arrow.fsh-arrow-up[b-ddm8bqjfsr] {
    transform: rotate(180deg);
}

/* ===== Dropdown Panel ===== */
.fsh-searchable-dropdown[b-ddm8bqjfsr] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    background: var(--input-bg);
    border: 1px solid var(--theme-primary);
    border-top: none;
    border-bottom-left-radius: 6px;
    border-bottom-right-radius: 6px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    z-index: 1000;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

/* ===== Search Input Section ===== */
.fsh-searchable-search[b-ddm8bqjfsr] {
    padding: 0.375rem;
    border-bottom: 1px solid var(--border-color);
    position: relative;
    background: var(--bg-surface-secondary);
}

.fsh-search-input[b-ddm8bqjfsr] {
    width: 100%;
    padding: 0.3rem 0.5rem 0.3rem 1.75rem;
    font-size: 0.82rem;
    color: var(--input-text);
    background-color: var(--input-bg);
    border: 1px solid var(--input-border);
    border-radius: 4px;
    transition: border-color 0.15s ease;
}

.fsh-search-input:focus[b-ddm8bqjfsr] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(var(--theme-primary-rgb, 26, 179, 148), 0.1);
}

.fsh-search-input[b-ddm8bqjfsr]::placeholder {
    color: var(--input-placeholder);
}

.fsh-search-icon[b-ddm8bqjfsr] {
    position: absolute;
    left: 0.75rem;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    font-size: 0.85rem;
    pointer-events: none;
}

/* ===== Options List ===== */
.fsh-searchable-options[b-ddm8bqjfsr] {
    max-height: 220px;
    overflow-y: auto;
    padding: 0.2rem;
}

.fsh-searchable-option[b-ddm8bqjfsr] {
    width: 100%;
    padding: 0.3rem 0.5rem;
    cursor: pointer;
    border-radius: 4px;
    transition: background 0.1s ease;
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: var(--text-primary);
    font-size: 0.82rem;
    min-height: 0;
    user-select: none;
    background: transparent;
    border: none;
    text-align: left;
    font-family: inherit;
    line-height: 1.5;
}

.fsh-searchable-option:hover[b-ddm8bqjfsr] {
    background-color: var(--theme-primary-subtle, rgba(26, 179, 148, 0.08));
}

.fsh-searchable-option:active[b-ddm8bqjfsr] {
    background-color: var(--theme-primary-subtle, rgba(26, 179, 148, 0.15));
}

.fsh-searchable-option:focus-visible[b-ddm8bqjfsr] {
    outline: 2px solid var(--theme-primary);
    outline-offset: -2px;
}

.fsh-searchable-option.fsh-option-selected[b-ddm8bqjfsr] {
    background-color: var(--theme-primary-subtle, rgba(26, 179, 148, 0.1));
    color: var(--theme-primary);
    font-weight: 500;
}

.fsh-option-text[b-ddm8bqjfsr] {
    flex: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.fsh-option-check[b-ddm8bqjfsr] {
    color: var(--theme-primary);
    font-size: 0.85rem;
    flex-shrink: 0;
    margin-left: 0.35rem;
}

.fsh-searchable-empty[b-ddm8bqjfsr] {
    padding: 1.25rem 0.75rem;
    text-align: center;
    color: var(--text-muted);
    font-size: 0.82rem;
}

/* ===== Validation Messages ===== */
.fsh-validation-message[b-ddm8bqjfsr] {
    margin-top: 0.25rem;
    font-size: 0.75rem;
    line-height: 1.4;
}

.fsh-validation-error[b-ddm8bqjfsr] {
    color: var(--theme-danger);
}

.fsh-helper-text[b-ddm8bqjfsr] {
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

/* ===== Disabled State ===== */
.fsh-disabled[b-ddm8bqjfsr] {
    opacity: 0.6;
    cursor: not-allowed;
}

.fsh-disabled .fsh-searchable-trigger[b-ddm8bqjfsr] {
    background-color: var(--bg-surface-tertiary);
    cursor: not-allowed;
}
/* /Components/Common/FshSplitButton.razor.rz.scp.css */
/* =============================================
   FSH SPLIT BUTTON COMPONENT STYLES
   Dark mode handled automatically via CSS variables from theme-core.css
   ============================================= */

.fsh-split-btn-container[b-y83ecqgpk1] {
    position: relative;
    display: inline-flex;
    vertical-align: middle;
}

/* Ensure dropdown isn't clipped by overflow:hidden parents */
.fsh-split-btn-container.open[b-y83ecqgpk1] {
    z-index: 1001;
}

/* Split Button Group */
.fsh-split-btn[b-y83ecqgpk1] {
    display: inline-flex;
    border-radius: var(--radius-md, 0.5rem);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

/* Main Button */
.fsh-split-btn-main[b-y83ecqgpk1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    font-size: 0.875rem;
    font-weight: 500;
    line-height: 1.5;
    border: none;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    white-space: nowrap;
}

.fsh-split-btn-main.icon-only[b-y83ecqgpk1] {
    padding: 0.5rem 0.625rem;
}

.fsh-split-btn-main i[b-y83ecqgpk1] {
    font-size: 1.125rem;
    line-height: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* Dropdown Toggle */
.fsh-split-btn-toggle[b-y83ecqgpk1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.5rem 0.5rem;
    min-width: 36px;
    border: none;
    border-left: 1px solid rgba(255, 255, 255, 0.2);
    cursor: pointer;
    transition: all 0.15s ease-in-out;
}

.fsh-split-btn-toggle i[b-y83ecqgpk1] {
    font-size: 1rem;
    transition: transform 0.2s ease;
}

.fsh-split-btn-toggle i.rotated[b-y83ecqgpk1] {
    transform: rotate(180deg);
}

.fsh-split-btn-container.open .fsh-split-btn-toggle i[b-y83ecqgpk1] {
    transform: rotate(180deg);
}

/* Active/Press State */
.fsh-split-btn-main:active:not(:disabled)[b-y83ecqgpk1],
.fsh-split-btn-toggle:active:not(:disabled)[b-y83ecqgpk1] {
    transform: scale(0.96);
}

/* Disabled State */
.fsh-split-btn-main:disabled[b-y83ecqgpk1],
.fsh-split-btn-toggle:disabled[b-y83ecqgpk1] {
    opacity: 0.65;
    cursor: not-allowed;
}

/* =============================================
   VARIANT STYLES
   ============================================= */

/* Primary */
.fsh-split-primary[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: var(--text-inverse);
}

.fsh-split-primary:hover:not(:disabled)[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-primary-emphasis) 0%, var(--theme-primary) 100%);
}

/* Secondary */
.fsh-split-secondary[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-secondary) 0%, var(--theme-secondary-emphasis) 100%);
    color: var(--text-inverse);
}

.fsh-split-secondary:hover:not(:disabled)[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-secondary-emphasis) 0%, var(--theme-secondary) 100%);
}

/* Success */
.fsh-split-success[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
    color: var(--text-inverse);
}

.fsh-split-success:hover:not(:disabled)[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-success-emphasis) 0%, var(--theme-success) 100%);
}

/* Danger */
.fsh-split-danger[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-danger) 0%, var(--theme-danger-emphasis) 100%);
    color: var(--text-inverse);
}

.fsh-split-danger:hover:not(:disabled)[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-danger-emphasis) 0%, var(--theme-danger) 100%);
}

/* Warning */
.fsh-split-warning[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-warning-emphasis) 100%);
    color: var(--text-primary);
}

.fsh-split-warning:hover:not(:disabled)[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-warning-emphasis) 0%, var(--theme-warning) 100%);
}

/* Info */
.fsh-split-info[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info-emphasis) 100%);
    color: var(--text-inverse);
}

.fsh-split-info:hover:not(:disabled)[b-y83ecqgpk1] {
    background: linear-gradient(135deg, var(--theme-info-emphasis) 0%, var(--theme-info) 100%);
}

/* Light */
.fsh-split-light[b-y83ecqgpk1] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border: 1px solid var(--border-color);
}

.fsh-split-light:hover:not(:disabled)[b-y83ecqgpk1] {
    background: var(--bg-surface-tertiary);
}

.fsh-split-light .fsh-split-btn-toggle[b-y83ecqgpk1] {
    border-left-color: var(--border-color);
}

/* Dark */
.fsh-split-dark[b-y83ecqgpk1] {
    background: var(--theme-gray-800);
    color: var(--text-inverse);
}

.fsh-split-dark:hover:not(:disabled)[b-y83ecqgpk1] {
    background: var(--theme-gray-700);
}

/* =============================================
   SIZE VARIANTS
   ============================================= */

.fsh-split-xs .fsh-split-btn-main[b-y83ecqgpk1] {
    padding: 0.175rem 0.375rem;
    font-size: 0.7rem;
    gap: 0.25rem;
    line-height: 1.3;
}

.fsh-split-xs .fsh-split-btn-main i[b-y83ecqgpk1] {
    font-size: 0.8rem;
}

.fsh-split-xs .fsh-split-btn-toggle[b-y83ecqgpk1] {
    padding: 0.175rem 0.25rem;
    min-width: 22px;
}

.fsh-split-xs .fsh-split-btn-toggle i[b-y83ecqgpk1] {
    font-size: 0.7rem;
}

.fsh-split-xs[b-y83ecqgpk1] {
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.1);
}

.fsh-split-sm .fsh-split-btn-main[b-y83ecqgpk1] {
    padding: 0.375rem 0.75rem;
    font-size: 0.8125rem;
}

.fsh-split-sm .fsh-split-btn-toggle[b-y83ecqgpk1] {
    padding: 0.375rem 0.5rem;
}

.fsh-split-lg .fsh-split-btn-main[b-y83ecqgpk1] {
    padding: 0.625rem 1.25rem;
    font-size: 1rem;
}

.fsh-split-lg .fsh-split-btn-toggle[b-y83ecqgpk1] {
    padding: 0.625rem 0.75rem;
}

.fsh-split-xl .fsh-split-btn-main[b-y83ecqgpk1] {
    padding: 0.75rem 1.5rem;
    font-size: 1.125rem;
}

.fsh-split-xl .fsh-split-btn-toggle[b-y83ecqgpk1] {
    padding: 0.75rem 0.875rem;
}

/* =============================================
   DROPDOWN MENU
   ============================================= */

.fsh-split-btn-menu[b-y83ecqgpk1] {
    position: absolute;
    z-index: 1000;
    min-width: 180px;
    padding: 0.375rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md, 0.5rem);
    box-shadow: var(--shadow-lg);
    animation: fsh-split-menu-in-b-y83ecqgpk1 0.15s ease-out;
}

.fsh-split-btn-menu.dropdown-down[b-y83ecqgpk1] {
    top: 100%;
    left: 0;
    margin-top: 0.25rem;
}

.fsh-split-btn-menu.dropdown-up[b-y83ecqgpk1] {
    bottom: 100%;
    left: 0;
    margin-bottom: 0.25rem;
}

@keyframes fsh-split-menu-in-b-y83ecqgpk1 {
    from {
        opacity: 0;
        transform: translateY(-4px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Menu Items */
.fsh-split-btn-item[b-y83ecqgpk1] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 400;
    color: var(--text-primary);
    background: transparent;
    border: none;
    border-radius: var(--radius-sm, 0.375rem);
    cursor: pointer;
    transition: background 0.15s ease, color 0.15s ease;
    text-align: left;
}

.fsh-split-btn-item:hover:not(:disabled)[b-y83ecqgpk1] {
    background: var(--bg-surface-tertiary);
    color: var(--theme-primary);
}

.fsh-split-btn-item:active:not(:disabled)[b-y83ecqgpk1] {
    background: var(--bg-body);
}

.fsh-split-btn-item.disabled[b-y83ecqgpk1] {
    opacity: 0.5;
    cursor: not-allowed;
}

.fsh-split-btn-item i[b-y83ecqgpk1] {
    font-size: 1.125rem;
    line-height: 1;
    color: var(--text-secondary);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.fsh-split-btn-item:hover:not(:disabled) i[b-y83ecqgpk1] {
    color: var(--theme-primary);
}

/* Separator */
.fsh-split-btn-separator[b-y83ecqgpk1] {
    height: 1px;
    margin: 0.375rem 0;
    background: var(--border-color);
}
/* /Components/Common/GenericBulkActionsToolbar.razor.rz.scp.css */
/* Bulk Actions Toolbar - Using Theme Variables */
.bulk-actions-toolbar[b-bld6n8xy31] {
    position: sticky;
    top: 0;
    z-index: 100;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    border-radius: 8px;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--theme-primary) 30%, transparent);
    margin-bottom: 1rem;
    animation: slideDown 0.3s ease-out;
}

@keyframes    to-b-bld6n8xy31 {
        opacity: 1;
        transform: translateY(0);
    }
}

.bulk-actions-container[b-bld6n8xy31] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.5rem;
    gap: 1rem;
}

.bulk-actions-info[b-bld6n8xy31] {
    display: flex;
    align-items: center;
    gap: 1rem;
    color: white;
    font-size: 0.9375rem;
}

.selected-count[b-bld6n8xy31] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.selected-count strong[b-bld6n8xy31] {
    font-size: 1.125rem;
    font-weight: 700;
}

.bulk-actions-buttons[b-bld6n8xy31] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* Responsive Design */
@media (max-width: 768px) {
    .bulk-actions-container[b-bld6n8xy31] {
        flex-direction: column;
        align-items: flex-start;
        padding: 1rem;
    }

    .bulk-actions-buttons[b-bld6n8xy31] {
        width: 100%;
        justify-content: flex-start;
    }

    .selected-count[b-bld6n8xy31] {
        font-size: 0.875rem;
    }
}

@media (max-width: 576px) {
    .bulk-actions-buttons[b-bld6n8xy31] {
        flex-direction: column;
        width: 100%;
    }

    .bulk-actions-buttons button[b-bld6n8xy31] {
        width: 100%;
    }
}
/* /Components/Common/GlobalErrorBoundary.razor.rz.scp.css */
/**
 * GlobalErrorBoundary - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   ERROR CONTAINER
   ======================================== */

.error-boundary-container[b-2lnnq69xwd] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 100vh;
    padding: 2rem;
    background: var(--bg-body);
}

.error-boundary-content[b-2lnnq69xwd] {
    max-width: 700px;
    text-align: center;
    background: var(--bg-surface);
    padding: 3rem;
    border-radius: 12px;
    box-shadow: var(--shadow-lg);
}

/* ========================================
   ERROR ICON & TITLE
   ======================================== */

.error-icon[b-2lnnq69xwd] {
    font-size: 4rem;
    color: var(--theme-warning);
    margin-bottom: 1.5rem;
}

.error-title[b-2lnnq69xwd] {
    font-size: 1.75rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 1rem;
}

.error-message[b-2lnnq69xwd] {
    font-size: 1rem;
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

/* ========================================
   ACTION POINTS
   ======================================== */

.action-points[b-2lnnq69xwd] {
    background: var(--theme-info-subtle);
    border-left: 4px solid var(--theme-info);
    padding: 1.5rem;
    margin: 2rem 0;
    border-radius: 6px;
    text-align: left;
}

.action-points-title[b-2lnnq69xwd] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--theme-info-emphasis);
    margin-bottom: 1rem;
    display: flex;
    align-items: center;
}

.action-list[b-2lnnq69xwd] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.action-list li[b-2lnnq69xwd] {
    padding: 0.5rem 0 0.5rem 1.75rem;
    color: var(--text-primary);
    position: relative;
    line-height: 1.6;
}

.action-list li[b-2lnnq69xwd]:before {
    content: "→";
    position: absolute;
    left: 0;
    color: var(--theme-info);
    font-weight: bold;
    font-size: 1.25rem;
}

/* ========================================
   ERROR DETAILS PANEL
   ======================================== */

.error-details[b-2lnnq69xwd] {
    margin: 2rem 0;
    text-align: left;
}

.error-details details[b-2lnnq69xwd] {
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    padding: 1rem;
}

.error-details summary[b-2lnnq69xwd] {
    cursor: pointer;
    font-weight: 600;
    color: var(--text-muted);
    user-select: none;
    padding: 0.5rem;
}

.error-details summary:hover[b-2lnnq69xwd] {
    color: var(--text-primary);
    background: var(--bg-body);
    border-radius: 4px;
}

.error-info[b-2lnnq69xwd] {
    margin-top: 1rem;
    padding: 1rem;
    background: var(--bg-surface);
    border-radius: 4px;
}

.error-info-item[b-2lnnq69xwd] {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

.error-info-item:last-child[b-2lnnq69xwd] {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.error-info-item strong[b-2lnnq69xwd] {
    display: block;
    margin-bottom: 0.5rem;
    color: var(--text-muted);
    font-size: 0.875rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.error-info-item pre[b-2lnnq69xwd] {
    margin: 0;
    padding: 0.75rem;
    background: var(--bg-code);
    color: var(--text-code);
    border-radius: 4px;
    overflow-x: auto;
    font-size: 0.75rem;
    line-height: 1.5;
    font-family: 'Courier New', monospace;
}

.copy-error-btn-container[b-2lnnq69xwd] {
    margin-top: 1rem;
    text-align: right;
}

/* ========================================
   ACTION BUTTONS
   ======================================== */

.error-actions[b-2lnnq69xwd] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    margin-top: 2rem;
    flex-wrap: wrap;
}

.error-actions .btn[b-2lnnq69xwd] {
    padding: 0.75rem 1.5rem;
    border-radius: 6px;
    font-weight: 500;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    display: inline-flex;
    align-items: center;
}

.error-actions .btn-primary[b-2lnnq69xwd] {
    background: var(--theme-info);
    color: white;
}

.error-actions .btn-primary:hover[b-2lnnq69xwd] {
    background: var(--theme-info-emphasis);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(59, 130, 246, 0.3);
}

.error-actions .btn-secondary[b-2lnnq69xwd] {
    background: var(--text-secondary);
    color: white;
}

.error-actions .btn-secondary:hover[b-2lnnq69xwd] {
    background: var(--text-muted);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(107, 114, 128, 0.3);
}

.error-actions .btn-outline-secondary[b-2lnnq69xwd] {
    background: transparent;
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

.error-actions .btn-outline-secondary:hover[b-2lnnq69xwd] {
    background: var(--bg-surface-tertiary);
    border-color: var(--text-muted);
    transform: translateY(-1px);
}

.error-actions .btn-sm[b-2lnnq69xwd] {
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
}

/* ========================================
   SUPPORT MESSAGE
   ======================================== */

.support-message[b-2lnnq69xwd] {
    margin-top: 2rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--border-color);
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

@media (max-width: 640px) {
    .error-boundary-content[b-2lnnq69xwd] {
        padding: 2rem 1.5rem;
    }

    .error-actions[b-2lnnq69xwd] {
        flex-direction: column;
    }

    .error-actions .btn[b-2lnnq69xwd] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Common/HeaderActions/NotificationBell.razor.rz.scp.css */
/* Notification Bell Wrapper - uses modern-icon-btn from parent layout */

/* Ensure dropdown container is above other content when open */
:host-context(.header-action-item:has(.notification-dropdown))[b-4l3z45pmaq] {
    z-index: 1050;
}

/* Notification Overlay - closes dropdown when clicking outside */
.notification-overlay[b-4l3z45pmaq] {
    position: fixed;
    inset: 0;
    z-index: 1049;
    background: transparent;
}

/* Notification Dropdown */
.notification-dropdown[b-4l3z45pmaq] {
    position: absolute;
    top: calc(100% + 12px);
    right: -60px;
    width: 400px;
    max-height: 600px;
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-lg);
    z-index: 1050;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: dropdownSlide-b-4l3z45pmaq 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes dropdownSlide-b-4l3z45pmaq {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Notification Header */
.notification-header[b-4l3z45pmaq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.notification-header-left h6[b-4l3z45pmaq] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.unread-count[b-4l3z45pmaq] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 2px;
    display: block;
}

.notification-header-actions[b-4l3z45pmaq] {
    display: flex;
    gap: 0.5rem;
}

.header-action-link[b-4l3z45pmaq] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--text-secondary);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.header-action-link:hover[b-4l3z45pmaq] {
    background: var(--bg-hover);
    color: var(--theme-primary);
}

/* Notification Tabs */
.notification-tabs[b-4l3z45pmaq] {
    display: flex;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-sunken);
}

.notification-tab[b-4l3z45pmaq] {
    flex: 1;
    padding: 0.75rem 0.5rem;
    border: none;
    background: transparent;
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.notification-tab[b-4l3z45pmaq]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-tertiary));
    transition: width 0.3s ease;
}

.notification-tab:hover[b-4l3z45pmaq] {
    color: var(--text-primary);
    background: var(--theme-primary-subtle);
}

.notification-tab.active[b-4l3z45pmaq] {
    color: var(--theme-primary);
    font-weight: 600;
}

.notification-tab.active[b-4l3z45pmaq]::after {
    width: 80%;
}

/* Notification List */
.notification-list[b-4l3z45pmaq] {
    flex: 1;
    overflow-y: auto;
    max-height: 400px;
}

/* Date Group */
.notification-date-group[b-4l3z45pmaq] {
    margin-bottom: 0.25rem;
}

.notification-date-label[b-4l3z45pmaq] {
    padding: 0.5rem 1.25rem;
    font-size: 0.6875rem;
    font-weight: 700;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    background: var(--bg-surface-sunken);
    position: sticky;
    top: 0;
    z-index: 1;
}

/* Notification Item */
.notification-item[b-4l3z45pmaq] {
    display: flex;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
    border-bottom: 1px solid var(--border-color-light);
}

.notification-item:hover[b-4l3z45pmaq] {
    background: var(--bg-hover);
}

.notification-item.unread[b-4l3z45pmaq] {
    background: linear-gradient(90deg, var(--theme-primary-subtle) 0%, transparent 100%);
    border-left: 3px solid var(--theme-primary);
}

.notification-item.unread:hover[b-4l3z45pmaq] {
    background: linear-gradient(90deg, var(--theme-primary-subtle) 0%, var(--bg-hover) 100%);
}

/* Notification Icon */
.notification-icon[b-4l3z45pmaq] {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.notification-icon i[b-4l3z45pmaq] {
    font-size: 1.125rem;
}

.notification-icon.icon-primary[b-4l3z45pmaq] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.notification-icon.icon-success[b-4l3z45pmaq] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.notification-icon.icon-warning[b-4l3z45pmaq] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.notification-icon.icon-danger[b-4l3z45pmaq] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--color-danger);
}

.notification-icon.icon-info[b-4l3z45pmaq] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.notification-icon.icon-purple[b-4l3z45pmaq] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.notification-icon.icon-orange[b-4l3z45pmaq] {
    background: rgba(249, 115, 22, 0.1);
    color: var(--theme-warning);
}

.notification-icon.icon-gray[b-4l3z45pmaq] {
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
}

/* Notification Content */
.notification-content[b-4l3z45pmaq] {
    flex: 1;
    min-width: 0;
}

.notification-title[b-4l3z45pmaq] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
    line-height: 1.4;
}

.notification-message[b-4l3z45pmaq] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin-bottom: 0.375rem;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.notification-time[b-4l3z45pmaq] {
    font-size: 0.75rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.notification-time i[b-4l3z45pmaq] {
    font-size: 0.75rem;
}

/* Unread Dot */
.unread-dot[b-4l3z45pmaq] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-tertiary));
    flex-shrink: 0;
    animation: pulse 2s ease-in-out infinite;
}

/* Loading State */
.notification-loading[b-4l3z45pmaq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    gap: 1rem;
    color: var(--text-secondary);
}

.loading-spinner[b-4l3z45pmaq] {
    width: 32px;
    height: 32px;
    border: 3px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

/* Empty State */
.notification-empty[b-4l3z45pmaq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    text-align: center;
}

.empty-icon[b-4l3z45pmaq] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
}

.empty-icon i[b-4l3z45pmaq] {
    font-size: 1.75rem;
    color: var(--text-muted);
}

.notification-empty p[b-4l3z45pmaq] {
    margin: 0;
    font-size: 0.9375rem;
    color: var(--text-secondary);
}

/* Load More */
.notification-load-more[b-4l3z45pmaq] {
    padding: 0.75rem;
    text-align: center;
}

.load-more-btn[b-4l3z45pmaq] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border: none;
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.load-more-btn:hover[b-4l3z45pmaq] {
    background: var(--bg-hover);
    color: var(--theme-primary);
}

/* Notification Footer */
.notification-footer[b-4l3z45pmaq] {
    padding: 0.875rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.view-all-link[b-4l3z45pmaq] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    color: var(--theme-primary);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.view-all-link:hover[b-4l3z45pmaq] {
    color: var(--theme-primary-emphasis);
}

/* Notification Footer Layout */
.notification-footer[b-4l3z45pmaq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Settings Button */
.notification-settings-btn[b-4l3z45pmaq] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: var(--text-secondary);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.notification-settings-btn:hover[b-4l3z45pmaq] {
    background: var(--bg-hover);
    color: var(--theme-primary);
}

.notification-settings-btn i[b-4l3z45pmaq] {
    font-size: 1.1rem;
}

/* Settings Panel */
.notification-settings-panel[b-4l3z45pmaq] {
    border-top: 1px solid var(--border-color);
    max-height: 400px;
    overflow-y: auto;
}

/* Responsive */
@media (max-width: 480px) {
    .notification-dropdown[b-4l3z45pmaq] {
        position: fixed;
        top: 60px;
        left: 1rem;
        right: 1rem;
        width: auto;
        max-height: calc(100vh - 80px);
    }

    .notification-settings-panel[b-4l3z45pmaq] {
        max-height: 300px;
    }
}
/* /Components/Common/HeaderActions/NotificationConnection.razor.rz.scp.css */
/* Connection Status - uses modern-icon-btn from parent layout */
/* Dark mode handled automatically via CSS variables from theme-core.css */

/* Connection Button - additional styling */
.connection-btn[b-z8zso9du67] {
    position: relative;
}

.connection-btn.connected .connection-icon[b-z8zso9du67] {
    color: var(--theme-success);
}

.connection-btn.connecting .connection-icon[b-z8zso9du67] {
    color: var(--theme-warning);
}

.connection-btn.disconnected .connection-icon[b-z8zso9du67] {
    color: var(--theme-danger);
}

.connection-btn.auth-failed .connection-icon[b-z8zso9du67] {
    color: var(--theme-warning);
}

/* Connection Icon Wrapper */
.connection-icon-wrapper[b-z8zso9du67] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

.connection-icon[b-z8zso9du67] {
    font-size: 1.25rem;
    transition: all 0.3s ease;
}

.connection-icon.spinning[b-z8zso9du67] {
    animation: spin 1s linear infinite;
}

/* Connected Pulse Effect */
.connection-pulse[b-z8zso9du67] {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: rgba(16, 185, 129, 0.3);
    animation: connectionPulse-b-z8zso9du67 2s ease-out infinite;
}

@keyframes connectionPulse-b-z8zso9du67 {
    0% {
        transform: scale(0.8);
        opacity: 1;
    }
    100% {
        transform: scale(2);
        opacity: 0;
    }
}

/* Connection Overlay - transparent backdrop to close popup on outside click */
.connection-overlay[b-z8zso9du67] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    background: transparent;
}

/* Connection Popup */
.connection-popup[b-z8zso9du67] {
    position: fixed;
    top: 60px;
    right: 1rem;
    width: 320px;
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-lg);
    z-index: 1060;
    overflow: hidden;
    animation: popupSlide-b-z8zso9du67 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes popupSlide-b-z8zso9du67 {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Popup Header */
.connection-popup-header[b-z8zso9du67] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
}

.connection-status-indicator[b-z8zso9du67] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.status-dot[b-z8zso9du67] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    position: relative;
}

.connection-status-indicator.connected .status-dot[b-z8zso9du67] {
    background: var(--theme-success);
    box-shadow: 0 0 0 3px rgba(16, 185, 129, 0.2);
}

.connection-status-indicator.connecting .status-dot[b-z8zso9du67] {
    background: var(--theme-warning);
    animation: blinkDot-b-z8zso9du67 1s ease-in-out infinite;
}

.connection-status-indicator.disconnected .status-dot[b-z8zso9du67] {
    background: var(--theme-danger);
    box-shadow: 0 0 0 3px rgba(239, 68, 68, 0.2);
}

.connection-status-indicator.auth-failed .status-dot[b-z8zso9du67] {
    background: var(--theme-warning);
    box-shadow: 0 0 0 3px rgba(245, 158, 11, 0.2);
}

@keyframes blinkDot-b-z8zso9du67 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.3; }
}

.status-label[b-z8zso9du67] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.connection-status-indicator.connected .status-label[b-z8zso9du67] {
    color: var(--theme-success);
}

.connection-status-indicator.connecting .status-label[b-z8zso9du67] {
    color: var(--theme-warning);
}

.connection-status-indicator.disconnected .status-label[b-z8zso9du67] {
    color: var(--theme-danger);
}

.connection-status-indicator.auth-failed .status-label[b-z8zso9du67] {
    color: var(--theme-warning);
}

.popup-close-btn[b-z8zso9du67] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--text-secondary);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.popup-close-btn:hover[b-z8zso9du67] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

/* Popup Body */
.connection-popup-body[b-z8zso9du67] {
    padding: 1.25rem;
}

/* Connection Visual */
.connection-visual[b-z8zso9du67] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
}

.device-icon[b-z8zso9du67],
.server-icon[b-z8zso9du67] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
    box-shadow: var(--shadow-sm);
}

.device-icon i[b-z8zso9du67],
.server-icon i[b-z8zso9du67] {
    font-size: 1.5rem;
    color: var(--text-secondary);
}

.server-icon.connected i[b-z8zso9du67] {
    color: var(--theme-success);
}

.server-icon.connecting i[b-z8zso9du67] {
    color: var(--theme-warning);
}

.server-icon.disconnected i[b-z8zso9du67] {
    color: var(--theme-danger);
}

.server-icon.auth-failed i[b-z8zso9du67] {
    color: var(--theme-warning);
}

/* Connection Line */
.connection-line[b-z8zso9du67] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 0 1rem;
}

.signal-dot[b-z8zso9du67] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--border-color);
}

.connection-line.connected .signal-dot[b-z8zso9du67] {
    background: var(--theme-success);
    animation: signalFlow-b-z8zso9du67 1.5s ease-in-out infinite;
}

.connection-line.connected .signal-dot:nth-child(2)[b-z8zso9du67] {
    animation-delay: 0.2s;
}

.connection-line.connected .signal-dot:nth-child(3)[b-z8zso9du67] {
    animation-delay: 0.4s;
}

.connection-line.connecting .signal-dot[b-z8zso9du67] {
    background: var(--theme-warning);
    animation: signalPulse-b-z8zso9du67 0.8s ease-in-out infinite;
}

.connection-line.connecting .signal-dot:nth-child(2)[b-z8zso9du67] {
    animation-delay: 0.15s;
}

.connection-line.connecting .signal-dot:nth-child(3)[b-z8zso9du67] {
    animation-delay: 0.3s;
}

.connection-line.disconnected .signal-dot[b-z8zso9du67] {
    background: var(--theme-danger);
    opacity: 0.5;
}

.connection-line.auth-failed .signal-dot[b-z8zso9du67] {
    background: var(--theme-warning);
    opacity: 0.5;
}

@keyframes signalFlow-b-z8zso9du67 {
    0%, 100% {
        transform: scale(1);
        opacity: 0.5;
    }
    50% {
        transform: scale(1.3);
        opacity: 1;
    }
}

@keyframes signalPulse-b-z8zso9du67 {
    0%, 100% {
        opacity: 0.3;
    }
    50% {
        opacity: 1;
    }
}

/* Connection Details */
.connection-details[b-z8zso9du67] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.detail-item[b-z8zso9du67] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.detail-item i[b-z8zso9du67] {
    font-size: 1.125rem;
    flex-shrink: 0;
}

.detail-item.connecting i.spinning[b-z8zso9du67] {
    animation: spin 1s linear infinite;
}

.detail-item.error[b-z8zso9du67] {
    color: var(--theme-danger);
}

.text-success[b-z8zso9du67] { color: var(--theme-success) !important; }
.text-warning[b-z8zso9du67] { color: var(--theme-warning) !important; }
.text-danger[b-z8zso9du67] { color: var(--theme-danger) !important; }
.text-info[b-z8zso9du67] { color: var(--theme-info) !important; }

/* Connection Message */
.connection-message[b-z8zso9du67] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    margin-top: 1rem;
    padding: 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.connection-message i[b-z8zso9du67] {
    flex-shrink: 0;
    margin-top: 2px;
}

/* Popup Footer */
.connection-popup-footer[b-z8zso9du67] {
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.reconnect-btn[b-z8zso9du67] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border: none;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-purple));
    color: white;
    font-size: 0.9375rem;
    font-weight: 600;
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.reconnect-btn:hover[b-z8zso9du67] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);
}

.reconnect-btn:active[b-z8zso9du67] {
    transform: translateY(0);
}

.reconnect-btn.login-btn[b-z8zso9du67] {
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-danger));
}

.reconnect-btn.login-btn:hover[b-z8zso9du67] {
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4);
}

.connection-id[b-z8zso9du67] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
}

.connection-id .label[b-z8zso9du67] {
    color: var(--text-secondary);
}

.connection-id code[b-z8zso9du67] {
    padding: 0.25rem 0.5rem;
    background: var(--bg-surface-secondary);
    border-radius: 4px;
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.75rem;
    color: var(--theme-primary);
}

/* Responsive */
@media (max-width: 480px) {
    .connection-popup[b-z8zso9du67] {
        position: fixed;
        top: auto;
        bottom: 1rem;
        left: 1rem;
        right: 1rem;
        width: auto;
    }
}

/* ============ Compact Dropdown ============ */
.conn-dropdown[b-z8zso9du67] {
    position: absolute;
    top: calc(100% + 8px);
    right: 0;
    width: 280px;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.15);
    z-index: 1060;
    animation: connSlide-b-z8zso9du67 0.2s ease-out;
}

@keyframes connSlide-b-z8zso9du67 {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}

.conn-dropdown-header[b-z8zso9du67] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
}

.conn-status[b-z8zso9du67] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
}

.conn-dot[b-z8zso9du67] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--text-muted);
}

.conn-status.connected .conn-dot[b-z8zso9du67] { background: var(--theme-success); }
.conn-status.connecting .conn-dot[b-z8zso9du67] { background: var(--theme-info); animation: pulse-b-z8zso9du67 1s infinite; }
.conn-status.disconnected .conn-dot[b-z8zso9du67] { background: var(--theme-danger); }
.conn-status.auth-failed .conn-dot[b-z8zso9du67] { background: var(--theme-warning); }

@keyframes pulse-b-z8zso9du67 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.4; }
}

.conn-close[b-z8zso9du67] {
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 1rem;
    padding: 0.125rem;
    line-height: 1;
}

.conn-dropdown-body[b-z8zso9du67] {
    padding: 0.75rem 1rem;
}

.conn-dropdown-body p[b-z8zso9du67] {
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.conn-dropdown-footer[b-z8zso9du67] {
    padding: 0.5rem 1rem 0.75rem;
    display: flex;
    gap: 0.5rem;
}

@media (max-width: 480px) {
    .conn-dropdown[b-z8zso9du67] {
        position: fixed;
        top: 60px;
        right: 0.5rem;
        left: 0.5rem;
        width: auto;
    }
}
/* /Components/Common/HeaderActions/NotificationSettings.razor.rz.scp.css */
/* Notification Settings Component */
.notification-settings[b-1eteicqv4y] {
    padding: 16px;
    min-width: 320px;
}

.settings-title[b-1eteicqv4y] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--bs-body-color);
    margin-bottom: 16px;
    display: flex;
    align-items: center;
}

.settings-section[b-1eteicqv4y] {
    margin-bottom: 20px;
}

.section-title[b-1eteicqv4y] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--bs-secondary-color);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 12px;
}

.setting-item[b-1eteicqv4y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 0;
    border-bottom: 1px solid var(--bs-border-color-translucent);
}

.setting-item:last-child[b-1eteicqv4y] {
    border-bottom: none;
}

.setting-info[b-1eteicqv4y] {
    flex: 1;
    min-width: 0;
}

.setting-label[b-1eteicqv4y] {
    display: block;
    font-weight: 500;
    color: var(--bs-body-color);
    margin-bottom: 2px;
}

.setting-description[b-1eteicqv4y] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color);
}

.setting-control[b-1eteicqv4y] {
    flex-shrink: 0;
    margin-left: 12px;
}

/* Toggle Switch */
.toggle-switch[b-1eteicqv4y] {
    position: relative;
    display: inline-block;
    width: 44px;
    height: 24px;
}

.toggle-switch input[b-1eteicqv4y] {
    opacity: 0;
    width: 0;
    height: 0;
}

.toggle-slider[b-1eteicqv4y] {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--bs-secondary-bg);
    transition: 0.3s;
    border-radius: 24px;
}

.toggle-slider[b-1eteicqv4y]:before {
    position: absolute;
    content: "";
    height: 18px;
    width: 18px;
    left: 3px;
    bottom: 3px;
    background-color: white; /* intentional: toggle switch knob (universal UI) */
    transition: 0.3s;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.toggle-switch input:checked + .toggle-slider[b-1eteicqv4y] {
    background-color: var(--bs-primary);
}

.toggle-switch input:checked + .toggle-slider[b-1eteicqv4y]:before {
    transform: translateX(20px);
}

.toggle-slider.disabled[b-1eteicqv4y] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Volume Control */
.volume-control[b-1eteicqv4y] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.volume-icon[b-1eteicqv4y] {
    color: var(--bs-secondary-color);
    font-size: 1rem;
}

.volume-slider[b-1eteicqv4y] {
    width: 100px;
    height: 4px;
    appearance: none;
    background: var(--bs-secondary-bg);
    border-radius: 4px;
    outline: none;
}

.volume-slider[b-1eteicqv4y]::-webkit-slider-thumb {
    appearance: none;
    width: 16px;
    height: 16px;
    background: var(--bs-primary);
    border-radius: 50%;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.volume-slider[b-1eteicqv4y]::-moz-range-thumb {
    width: 16px;
    height: 16px;
    background: var(--bs-primary);
    border-radius: 50%;
    cursor: pointer;
    border: none;
}

/* Support Badges */
.support-badges[b-1eteicqv4y] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.support-badge[b-1eteicqv4y] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 500;
}

.support-badge.supported[b-1eteicqv4y] {
    background-color: rgba(34, 197, 94, 0.1);
    color: var(--theme-success);
}

.support-badge.not-supported[b-1eteicqv4y] {
    background-color: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.support-badge i[b-1eteicqv4y] {
    font-size: 0.8rem;
}

/* Button styles */
.notification-settings .btn[b-1eteicqv4y] {
    font-size: 0.8rem;
    padding: 6px 12px;
}

/* Dark mode adjustments */
:root[data-bs-theme="dark"] .toggle-slider[b-1eteicqv4y] {
    background-color: var(--bs-secondary-bg);
}

:root[data-bs-theme="dark"] .volume-slider[b-1eteicqv4y] {
    background: var(--bs-secondary-bg);
}
/* /Components/Common/HeaderActions/ThemeToggle.razor.rz.scp.css */
/* Theme Toggle - uses modern-icon-btn from parent layout
   Dark mode handled automatically via CSS variables from theme-core.css */

/* Theme Toggle Button - additional styling */
.theme-toggle-btn[b-1jsb5eu7ox] {
    overflow: visible;
}

.theme-icon-container[b-1jsb5eu7ox] {
    position: relative;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.theme-icon[b-1jsb5eu7ox] {
    position: absolute;
    font-size: 1.25rem;
    transition: all 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

/* Light Mode - Show Sun */
.theme-toggle-btn.light .sun-icon[b-1jsb5eu7ox],
.theme-toggle-btn.system .sun-icon[b-1jsb5eu7ox] {
    opacity: 1;
    transform: rotate(0deg) scale(1);
    color: var(--theme-warning);
}

.theme-toggle-btn.light .moon-icon[b-1jsb5eu7ox],
.theme-toggle-btn.system .moon-icon[b-1jsb5eu7ox] {
    opacity: 0;
    transform: rotate(-90deg) scale(0.5);
}

/* Dark Mode - Show Moon */
.theme-toggle-btn.dark .sun-icon[b-1jsb5eu7ox] {
    opacity: 0;
    transform: rotate(90deg) scale(0.5);
}

.theme-toggle-btn.dark .moon-icon[b-1jsb5eu7ox] {
    opacity: 1;
    transform: rotate(0deg) scale(1);
    color: var(--theme-purple);
}

/* Hover Effects */
.theme-toggle-btn:hover .sun-icon[b-1jsb5eu7ox] {
    animation: sunRays-b-1jsb5eu7ox 0.6s ease-in-out;
}

.theme-toggle-btn.dark:hover .moon-icon[b-1jsb5eu7ox] {
    animation: moonGlow-b-1jsb5eu7ox 0.6s ease-in-out;
}

@keyframes sunRays-b-1jsb5eu7ox {
    0%, 100% { transform: rotate(0deg) scale(1); }
    50% { transform: rotate(15deg) scale(1.1); }
}

@keyframes moonGlow-b-1jsb5eu7ox {
    0%, 100% { transform: rotate(0deg) scale(1); filter: brightness(1); }
    50% { transform: rotate(-10deg) scale(1.1); filter: brightness(1.3); }
}

/* Theme Overlay */
.theme-overlay[b-1jsb5eu7ox] {
    position: fixed;
    inset: 0;
    z-index: 999;
}

/* Theme Menu */
.theme-menu[b-1jsb5eu7ox] {
    position: absolute;
    top: calc(100% + 12px);
    right: 0;
    width: 280px;
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-lg);
    z-index: 1000;
    overflow: hidden;
    animation: menuSlide-b-1jsb5eu7ox 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

@keyframes menuSlide-b-1jsb5eu7ox {
    from {
        opacity: 0;
        transform: translateY(-10px) scale(0.95);
    }
    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Menu Header */
.theme-menu-header[b-1jsb5eu7ox] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.theme-menu-header i[b-1jsb5eu7ox] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

/* Theme Options */
.theme-options[b-1jsb5eu7ox] {
    padding: 0.5rem;
}

.theme-option[b-1jsb5eu7ox] {
    width: 100%;
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    border: none;
    background: transparent;
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
    text-align: left;
}

.theme-option:hover[b-1jsb5eu7ox] {
    background: var(--bg-surface-tertiary);
}

.theme-option.active[b-1jsb5eu7ox] {
    background: var(--theme-primary-subtle);
}

/* Option Icon */
.option-icon[b-1jsb5eu7ox] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.option-icon i[b-1jsb5eu7ox] {
    font-size: 1.375rem;
}

.option-icon.light[b-1jsb5eu7ox] {
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-border) 100%);
    color: var(--theme-warning);
}

.option-icon.dark[b-1jsb5eu7ox] {
    background: linear-gradient(135deg, var(--theme-indigo-dark) 0%, var(--theme-indigo-dark) 100%);
    color: var(--theme-indigo-light);
}

.option-icon.system[b-1jsb5eu7ox] {
    background: linear-gradient(135deg, var(--theme-info-subtle) 0%, var(--theme-info-border) 100%);
    color: var(--theme-indigo);
}

.theme-option:hover .option-icon[b-1jsb5eu7ox] {
    transform: scale(1.05);
}

.theme-option.active .option-icon[b-1jsb5eu7ox] {
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
}

/* Option Content */
.option-content[b-1jsb5eu7ox] {
    flex: 1;
    min-width: 0;
}

.option-label[b-1jsb5eu7ox] {
    display: block;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.125rem;
}

.option-desc[b-1jsb5eu7ox] {
    display: block;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* Option Check */
.option-check[b-1jsb5eu7ox] {
    font-size: 1.25rem;
    color: var(--theme-primary);
    flex-shrink: 0;
}

/* Responsive */
@media (max-width: 480px) {
    .theme-menu[b-1jsb5eu7ox] {
        position: fixed;
        top: auto;
        bottom: 1rem;
        left: 1rem;
        right: 1rem;
        width: auto;
    }
}
/* /Components/Common/HeaderActions/ToastNotification.razor.rz.scp.css */
/* Toast Notification Container */
.toast-notification-container[b-c7x162qylk] {
    position: fixed;
    top: 70px;
    right: 20px;
    z-index: 10000;
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-width: 400px;
    pointer-events: none;
}

.toast-notification-container.has-toasts[b-c7x162qylk] {
    pointer-events: auto;
}

/* Individual Toast */
.toast-notification[b-c7x162qylk] {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    padding: 14px 16px;
    background: var(--bs-body-bg);
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15),
                0 2px 8px rgba(0, 0, 0, 0.1);
    border-left: 4px solid var(--toast-accent-color);
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    animation: toast-slide-in-b-c7x162qylk 0.4s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.toast-notification:hover[b-c7x162qylk] {
    transform: translateX(-4px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.2),
                0 4px 12px rgba(0, 0, 0, 0.15);
}

.toast-notification.exiting[b-c7x162qylk] {
    animation: toast-slide-out-b-c7x162qylk 0.3s cubic-bezier(0.4, 0, 0.2, 1) forwards;
}

/* Toast Type Variants */
.toast-default[b-c7x162qylk] {
    --toast-accent-color: var(--theme-info);
    --toast-icon-bg: rgba(59, 130, 246, 0.1);
    --toast-icon-color: var(--theme-info);
}

.toast-mention[b-c7x162qylk] {
    --toast-accent-color: var(--theme-purple);
    --toast-icon-bg: rgba(168, 85, 247, 0.1);
    --toast-icon-color: var(--theme-purple);
}

.toast-urgent[b-c7x162qylk] {
    --toast-accent-color: var(--theme-danger);
    --toast-icon-bg: rgba(239, 68, 68, 0.1);
    --toast-icon-color: var(--theme-danger);
}

.toast-success[b-c7x162qylk] {
    --toast-accent-color: var(--theme-success);
    --toast-icon-bg: rgba(34, 197, 94, 0.1);
    --toast-icon-color: var(--theme-success);
}

.toast-warning[b-c7x162qylk] {
    --toast-accent-color: var(--theme-warning);
    --toast-icon-bg: rgba(245, 158, 11, 0.1);
    --toast-icon-color: var(--theme-warning);
}

.toast-info[b-c7x162qylk] {
    --toast-accent-color: var(--theme-info);
    --toast-icon-bg: rgba(6, 182, 212, 0.1);
    --toast-icon-color: var(--theme-info);
}

.toast-system[b-c7x162qylk] {
    --toast-accent-color: var(--theme-gray-500);
    --toast-icon-bg: rgba(107, 114, 128, 0.1);
    --toast-icon-color: var(--theme-gray-500);
}

/* Toast Icon */
.toast-icon-wrapper[b-c7x162qylk] {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 10px;
    background: var(--toast-icon-bg);
    color: var(--toast-icon-color);
}

.toast-icon-wrapper i[b-c7x162qylk] {
    font-size: 1.25rem;
}

/* Toast Content */
.toast-content[b-c7x162qylk] {
    flex: 1;
    min-width: 0;
}

.toast-title[b-c7x162qylk] {
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--bs-body-color);
    margin-bottom: 4px;
    line-height: 1.3;
}

.toast-message[b-c7x162qylk] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color);
    line-height: 1.4;
    margin-bottom: 4px;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.toast-time[b-c7x162qylk] {
    font-size: 0.7rem;
    color: var(--bs-tertiary-color);
}

/* Toast Close Button */
.toast-close[b-c7x162qylk] {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: var(--bs-secondary-color);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s;
    opacity: 0.6;
}

.toast-close:hover[b-c7x162qylk] {
    background: var(--bs-tertiary-bg);
    color: var(--bs-body-color);
    opacity: 1;
}

.toast-close i[b-c7x162qylk] {
    font-size: 0.875rem;
}

/* Toast Progress Bar */
.toast-progress[b-c7x162qylk] {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 3px;
    background: var(--toast-accent-color);
    width: 100%;
    transform-origin: left;
    animation: toast-progress-b-c7x162qylk linear forwards;
    opacity: 0.7;
}

/* Animations */
@keyframes toast-slide-in-b-c7x162qylk {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes toast-slide-out-b-c7x162qylk {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(100%);
    }
}

@keyframes toast-progress-b-c7x162qylk {
    from {
        transform: scaleX(1);
    }
    to {
        transform: scaleX(0);
    }
}

/* Dark mode support */
:root[data-bs-theme="dark"] .toast-notification[b-c7x162qylk] {
    background: var(--bs-body-bg);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.4),
                0 2px 8px rgba(0, 0, 0, 0.3);
}

/* Mobile responsiveness */
@media (max-width: 480px) {
    .toast-notification-container[b-c7x162qylk] {
        right: 10px;
        left: 10px;
        max-width: none;
    }

    .toast-notification[b-c7x162qylk] {
        padding: 12px 14px;
    }

    .toast-icon-wrapper[b-c7x162qylk] {
        width: 36px;
        height: 36px;
    }

    .toast-icon-wrapper i[b-c7x162qylk] {
        font-size: 1.1rem;
    }

    .toast-title[b-c7x162qylk] {
        font-size: 0.85rem;
    }

    .toast-message[b-c7x162qylk] {
        font-size: 0.75rem;
    }
}

/* Reduced motion support */
@media (prefers-reduced-motion: reduce) {
    .toast-notification[b-c7x162qylk] {
        animation: none;
        opacity: 1;
    }

    .toast-notification.exiting[b-c7x162qylk] {
        animation: none;
        opacity: 0;
    }

    .toast-progress[b-c7x162qylk] {
        animation: none;
    }
}
/* /Components/Common/HelpCard.razor.rz.scp.css */
/* =============================================
   HELP CARD COMPONENT STYLES
   ============================================= */

.help-card[b-juig792aes] {
    background: linear-gradient(135deg, var(--bg-surface) 0%, var(--text-primary) 100%);
    border-radius: 1rem;
    padding: 1.5rem;
    text-align: center;
    border: 1px solid var(--border-color);
}

/* Help Icon */
.help-icon-wrapper[b-juig792aes] {
    width: 56px;
    height: 56px;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
}

.help-icon-wrapper i[b-juig792aes] {
    font-size: 1.5rem;
    color: var(--theme-indigo);
}

/* Help Title */
.help-title[b-juig792aes] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--bg-card);
    margin: 0 0 0.5rem 0;
}

/* Help Message */
.help-message[b-juig792aes] {
    font-size: 0.875rem;
    color: var(--text-muted);
    margin: 0 0 1rem 0;
    line-height: 1.5;
}

/* Help Links Container */
.help-links[b-juig792aes] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Responsive */
@media (max-width: 768px) {
    .help-card[b-juig792aes] {
        padding: 1.25rem;
    }

    .help-icon-wrapper[b-juig792aes] {
        width: 48px;
        height: 48px;
    }

    .help-icon-wrapper i[b-juig792aes] {
        font-size: 1.25rem;
    }
}
/* /Components/Common/HelpLink.razor.rz.scp.css */
/* =============================================
   HELP LINK COMPONENT STYLES
   ============================================= */

.help-link[b-smq5l0sxt0] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface);
    border-radius: 0.5rem;
    text-decoration: none;
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    transition: all 0.2s ease;
    border: 1px solid var(--border-color);
}

.help-link:hover[b-smq5l0sxt0] {
    background: var(--bg-hover);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.help-link i[b-smq5l0sxt0] {
    font-size: 1rem;
    color: var(--theme-primary);
}
/* /Components/Common/ImageCaptureDialog.razor.rz.scp.css */
/* =============================================
   ImageCaptureDialog — Scoped Styles
   ============================================= */

/* Backdrop */
.icd-backdrop[b-iv6sjvvc6f] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1rem;
    animation: icd-fade-in-b-iv6sjvvc6f 0.25s ease-out;
}

.icd-backdrop.icd-closing[b-iv6sjvvc6f] {
    animation: icd-fade-out-b-iv6sjvvc6f 0.2s ease-out forwards;
}

/* Dialog */
.icd-dialog[b-iv6sjvvc6f] {
    background: var(--bg-surface);
    border-radius: var(--radius-xl, 12px);
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
    width: 100%;
    max-width: 700px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    animation: icd-dialog-enter-b-iv6sjvvc6f 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.icd-dialog.icd-closing[b-iv6sjvvc6f] {
    animation: icd-slide-out-b-iv6sjvvc6f 0.2s ease-out forwards;
}

/* Header */
.icd-header[b-iv6sjvvc6f] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.icd-header-title[b-iv6sjvvc6f] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.icd-header-title i[b-iv6sjvvc6f] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

.icd-header-title h5[b-iv6sjvvc6f] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.icd-close-btn[b-iv6sjvvc6f] {
    background: none;
    border: none;
    padding: 0.25rem;
    cursor: pointer;
    color: var(--text-secondary);
    font-size: 1.25rem;
    border-radius: var(--radius-sm, 4px);
    transition: color 0.15s, background 0.15s, transform 0.15s;
    display: flex;
    align-items: center;
    justify-content: center;
}

.icd-close-btn:hover[b-iv6sjvvc6f] {
    color: var(--theme-danger);
    background: rgba(237, 85, 101, 0.1);
    transform: rotate(90deg);
}

/* Tabs */
.icd-tabs[b-iv6sjvvc6f] {
    display: flex;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface);
}

.icd-tab[b-iv6sjvvc6f] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.75rem;
    background: none;
    border: none;
    border-bottom: 2px solid transparent;
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: color 0.2s, border-color 0.2s, background 0.2s;
    position: relative;
}

.icd-tab:hover[b-iv6sjvvc6f] {
    color: var(--text-primary);
    background: var(--bg-surface-secondary);
}

.icd-tab.active[b-iv6sjvvc6f] {
    color: var(--theme-primary);
    border-bottom-color: var(--theme-primary);
}

.icd-tab.active i[b-iv6sjvvc6f] {
    animation: icd-tab-icon-pop-b-iv6sjvvc6f 0.3s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.icd-tab i[b-iv6sjvvc6f] {
    font-size: 1.125rem;
    transition: transform 0.15s;
}

.icd-tab:hover i[b-iv6sjvvc6f] {
    transform: translateY(-1px);
}

/* Body */
.icd-body[b-iv6sjvvc6f] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    animation: icd-content-enter-b-iv6sjvvc6f 0.25s ease-out;
}

/* =============================================
   Signature Canvas
   ============================================= */

.icd-pen-toolbar[b-iv6sjvvc6f] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    animation: icd-toolbar-enter-b-iv6sjvvc6f 0.3s ease-out;
}

.icd-pen-colors[b-iv6sjvvc6f] {
    display: flex;
    gap: 0.375rem;
}

.icd-color-btn[b-iv6sjvvc6f] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    border: 2px solid transparent;
    cursor: pointer;
    transition: border-color 0.15s, transform 0.2s, box-shadow 0.2s;
}

.icd-color-btn:hover[b-iv6sjvvc6f] {
    transform: scale(1.2);
}

.icd-color-btn.active[b-iv6sjvvc6f] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(26, 179, 148, 0.3);
    transform: scale(1.1);
}

.icd-pen-widths[b-iv6sjvvc6f] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--text-secondary);
}

.icd-pen-widths input[type="range"][b-iv6sjvvc6f] {
    width: 80px;
    accent-color: var(--theme-primary);
}

.icd-pen-widths span[b-iv6sjvvc6f] {
    min-width: 1rem;
    text-align: center;
}

.icd-pen-actions[b-iv6sjvvc6f] {
    display: flex;
    gap: 0.25rem;
    margin-left: auto;
}

.icd-canvas-container[b-iv6sjvvc6f] {
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md, 6px);
    overflow: hidden;
    background: var(--bg-surface);
    display: flex;
    justify-content: center;
    animation: icd-canvas-enter-b-iv6sjvvc6f 0.35s ease-out;
}

.icd-signature-canvas[b-iv6sjvvc6f] {
    width: 100%;
    max-width: 560px;
    height: auto;
    cursor: crosshair;
    display: block;
}

/* =============================================
   Camera
   ============================================= */

.icd-camera-container[b-iv6sjvvc6f] {
    position: relative;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md, 6px);
    overflow: hidden;
    background: var(--text-heading);
    min-height: 250px;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: icd-camera-enter-b-iv6sjvvc6f 0.4s ease-out;
}

.icd-video[b-iv6sjvvc6f] {
    width: 100%;
    max-height: 400px;
    object-fit: contain;
    display: block;
    animation: icd-viewfinder-on-b-iv6sjvvc6f 0.5s ease-out;
}

.icd-video-hidden[b-iv6sjvvc6f] {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none;
}

.icd-camera-error[b-iv6sjvvc6f] {
    text-align: center;
    padding: 2rem;
    color: var(--text-secondary);
    animation: icd-content-enter-b-iv6sjvvc6f 0.3s ease-out;
}

.icd-camera-error i[b-iv6sjvvc6f] {
    font-size: 3rem;
    color: var(--text-muted);
    margin-bottom: 0.75rem;
    display: block;
}

.icd-camera-error p[b-iv6sjvvc6f] {
    margin: 0 0 1rem;
    font-size: 0.875rem;
}

.icd-camera-loading[b-iv6sjvvc6f] {
    text-align: center;
    padding: 2rem;
    color: var(--text-secondary);
}

.icd-camera-loading p[b-iv6sjvvc6f] {
    margin: 0.75rem 0 0;
    font-size: 0.875rem;
}

.icd-camera-actions[b-iv6sjvvc6f] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    animation: icd-toolbar-enter-b-iv6sjvvc6f 0.3s ease-out 0.15s both;
}

.icd-btn-capture[b-iv6sjvvc6f] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--theme-primary);
    color: white;
    border: 3px solid rgba(26, 179, 148, 0.3);
    font-size: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.15s, background 0.15s, box-shadow 0.15s;
    animation: icd-capture-pulse-b-iv6sjvvc6f 2s ease-in-out infinite;
}

.icd-btn-capture:hover[b-iv6sjvvc6f] {
    transform: scale(1.1);
    background: var(--theme-primary-emphasis);
    box-shadow: 0 0 0 6px rgba(26, 179, 148, 0.15);
    animation: none;
}

/* =============================================
   Upload
   ============================================= */

.icd-upload-container[b-iv6sjvvc6f] {
    min-height: 200px;
    animation: icd-content-enter-b-iv6sjvvc6f 0.3s ease-out;
}

/* =============================================
   Preview & Edit Phase
   ============================================= */

.icd-preview-container[b-iv6sjvvc6f] {
    display: flex;
    justify-content: center;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md, 6px);
    background: var(--theme-gray-50);
    padding: 0.5rem;
    overflow: hidden;
    animation: icd-preview-enter-b-iv6sjvvc6f 0.35s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.icd-preview-image[b-iv6sjvvc6f] {
    max-width: 100%;
    max-height: 300px;
    object-fit: contain;
    border-radius: var(--radius-sm, 4px);
    transition: transform 0.3s ease;
}

/* Enhancement Toolbar */
.icd-enhance-toolbar[b-iv6sjvvc6f] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    animation: icd-toolbar-enter-b-iv6sjvvc6f 0.3s ease-out 0.1s both;
}

.icd-enhance-sliders[b-iv6sjvvc6f] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.icd-slider-group[b-iv6sjvvc6f] {
    flex: 1;
    min-width: 180px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--text-secondary);
}

.icd-slider-group label[b-iv6sjvvc6f] {
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.icd-slider-group input[type="range"][b-iv6sjvvc6f] {
    flex: 1;
    accent-color: var(--theme-primary);
}

.icd-slider-group span[b-iv6sjvvc6f] {
    min-width: 2rem;
    text-align: right;
    font-variant-numeric: tabular-nums;
}

.icd-enhance-actions[b-iv6sjvvc6f] {
    display: flex;
    gap: 0.25rem;
    flex-wrap: wrap;
}

/* Action buttons (small icon buttons) */
.icd-action-btn[b-iv6sjvvc6f] {
    width: 36px;
    height: 36px;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md, 6px);
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    transition: color 0.15s, background 0.15s, border-color 0.15s, transform 0.15s;
}

.icd-action-btn:hover[b-iv6sjvvc6f] {
    color: var(--theme-primary);
    border-color: var(--theme-primary-border, rgba(26, 179, 148, 0.2));
    background: var(--theme-primary-subtle, rgba(26, 179, 148, 0.1));
    transform: translateY(-1px);
}

.icd-action-btn:active[b-iv6sjvvc6f] {
    transform: translateY(0) scale(0.95);
}

/* =============================================
   Crop
   ============================================= */

.icd-crop-container[b-iv6sjvvc6f] {
    display: flex;
    justify-content: center;
    background: var(--theme-gray-100);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md, 6px);
    overflow: hidden;
    animation: icd-content-enter-b-iv6sjvvc6f 0.3s ease-out;
}

.icd-crop-canvas[b-iv6sjvvc6f] {
    cursor: move;
    max-width: 100%;
    display: block;
}

.icd-crop-actions[b-iv6sjvvc6f] {
    display: flex;
    justify-content: center;
    gap: 0.5rem;
    animation: icd-toolbar-enter-b-iv6sjvvc6f 0.25s ease-out;
}

/* =============================================
   Footer
   ============================================= */

.icd-footer[b-iv6sjvvc6f] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

/* Buttons */
.icd-btn[b-iv6sjvvc6f] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    border-radius: var(--radius-md, 6px);
    font-size: 0.875rem;
    font-weight: 500;
    border: 1px solid transparent;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, box-shadow 0.15s, transform 0.15s;
}

.icd-btn:disabled[b-iv6sjvvc6f] {
    opacity: 0.6;
    cursor: not-allowed;
}

.icd-btn:active:not(:disabled)[b-iv6sjvvc6f] {
    transform: scale(0.97);
}

.icd-btn-primary[b-iv6sjvvc6f] {
    background: var(--theme-primary);
    color: var(--text-inverse);
    border-color: var(--theme-primary);
}

.icd-btn-primary:hover:not(:disabled)[b-iv6sjvvc6f] {
    background: var(--theme-primary-emphasis);
    box-shadow: 0 2px 8px rgba(26, 179, 148, 0.3);
}

.icd-btn-secondary[b-iv6sjvvc6f] {
    background: var(--bg-surface);
    color: var(--text-secondary);
    border-color: var(--border-color);
}

.icd-btn-secondary:hover:not(:disabled)[b-iv6sjvvc6f] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
}

/* =============================================
   Spinners
   ============================================= */

.icd-spinner[b-iv6sjvvc6f] {
    width: 32px;
    height: 32px;
    border: 3px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: icd-spin-b-iv6sjvvc6f 0.6s linear infinite;
}

.icd-spinner-sm[b-iv6sjvvc6f] {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: var(--bg-surface);
    border-radius: 50%;
    animation: icd-spin-b-iv6sjvvc6f 0.6s linear infinite;
    display: inline-block;
}

/* =============================================
   Keyframes
   ============================================= */

@keyframes icd-fade-in-b-iv6sjvvc6f {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes icd-fade-out-b-iv6sjvvc6f {
    from { opacity: 1; }
    to { opacity: 0; }
}

@keyframes icd-dialog-enter-b-iv6sjvvc6f {
    from { opacity: 0; transform: scale(0.9) translateY(20px); }
    to { opacity: 1; transform: scale(1) translateY(0); }
}

@keyframes icd-slide-out-b-iv6sjvvc6f {
    from { opacity: 1; transform: scale(1) translateY(0); }
    to { opacity: 0; transform: scale(0.95) translateY(-10px); }
}

@keyframes icd-content-enter-b-iv6sjvvc6f {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes icd-toolbar-enter-b-iv6sjvvc6f {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes icd-canvas-enter-b-iv6sjvvc6f {
    from { opacity: 0; transform: scale(0.97); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes icd-camera-enter-b-iv6sjvvc6f {
    from { opacity: 0; background: var(--text-heading); }
    to { opacity: 1; background: var(--text-heading); }
}

@keyframes icd-viewfinder-on-b-iv6sjvvc6f {
    0% { opacity: 0; filter: brightness(2) saturate(0); }
    50% { opacity: 1; filter: brightness(1.2) saturate(0.5); }
    100% { opacity: 1; filter: brightness(1) saturate(1); }
}

@keyframes icd-preview-enter-b-iv6sjvvc6f {
    from { opacity: 0; transform: scale(0.92); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes icd-capture-pulse-b-iv6sjvvc6f {
    0%, 100% { box-shadow: 0 0 0 0 rgba(26, 179, 148, 0.4); }
    50% { box-shadow: 0 0 0 8px rgba(26, 179, 148, 0); }
}

@keyframes icd-tab-icon-pop-b-iv6sjvvc6f {
    0% { transform: scale(1); }
    50% { transform: scale(1.25); }
    100% { transform: scale(1); }
}

@keyframes icd-spin-b-iv6sjvvc6f {
    to { transform: rotate(360deg); }
}

/* =============================================
   Responsive
   ============================================= */

@media (max-width: 768px) {
    .icd-dialog[b-iv6sjvvc6f] {
        max-width: 100%;
        max-height: 95vh;
        border-radius: var(--radius-lg, 8px);
    }

    .icd-body[b-iv6sjvvc6f] {
        padding: 0.75rem;
    }

    .icd-header[b-iv6sjvvc6f] {
        padding: 0.75rem;
    }

    .icd-footer[b-iv6sjvvc6f] {
        padding: 0.625rem 0.75rem;
    }

    .icd-enhance-sliders[b-iv6sjvvc6f] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .icd-slider-group[b-iv6sjvvc6f] {
        min-width: unset;
    }

    .icd-pen-toolbar[b-iv6sjvvc6f] {
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    .icd-tab-label[b-iv6sjvvc6f] {
        display: none;
    }

    .icd-tab[b-iv6sjvvc6f] {
        padding: 0.625rem;
    }

    .icd-tab i[b-iv6sjvvc6f] {
        font-size: 1.25rem;
    }

    .icd-pen-widths[b-iv6sjvvc6f] {
        display: none;
    }

    .icd-btn[b-iv6sjvvc6f] {
        padding: 0.4rem 0.75rem;
        font-size: 0.8125rem;
    }
}
/* /Components/Common/InfoBanner.razor.rz.scp.css */
/* =============================================
   INFO BANNER COMPONENT STYLES
   ============================================= */

.info-banner[b-ljqgfuozdf] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-radius: 0.75rem;
    position: relative;
}

.info-banner.compact[b-ljqgfuozdf] {
    padding: 0.75rem 1rem;
    align-items: center;
}

/* Banner Icon */
.banner-icon[b-ljqgfuozdf] {
    width: 40px;
    height: 40px;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.info-banner.compact .banner-icon[b-ljqgfuozdf] {
    width: 32px;
    height: 32px;
}

.banner-icon i[b-ljqgfuozdf] {
    font-size: 1.25rem;
}

.info-banner.compact .banner-icon i[b-ljqgfuozdf] {
    font-size: 1rem;
}

/* Banner Content */
.banner-content[b-ljqgfuozdf] {
    flex: 1;
    min-width: 0;
}

.banner-title[b-ljqgfuozdf] {
    display: block;
    font-size: 0.9375rem;
    font-weight: 600;
    margin-bottom: 0.25rem;
}

.info-banner.compact .banner-title[b-ljqgfuozdf] {
    display: inline;
    margin-right: 0.5rem;
}

.banner-message[b-ljqgfuozdf] {
    font-size: 0.875rem;
    margin: 0;
    line-height: 1.5;
    opacity: 0.9;
}

.info-banner.compact .banner-message[b-ljqgfuozdf] {
    display: inline;
}

/* Banner Action */
.banner-action[b-ljqgfuozdf] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    border-radius: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    flex-shrink: 0;
    white-space: nowrap;
}

.banner-action i[b-ljqgfuozdf] {
    font-size: 1rem;
    transition: transform 0.2s ease;
}

.banner-action:hover i[b-ljqgfuozdf] {
    transform: translateX(2px);
}

/* Banner Dismiss */
.banner-dismiss[b-ljqgfuozdf] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    width: 28px;
    height: 28px;
    border: none;
    border-radius: 0.375rem;
    background: transparent;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease;
}

.banner-dismiss i[b-ljqgfuozdf] {
    font-size: 1.125rem;
}

/* Type: Info */
.info-banner.banner-info[b-ljqgfuozdf] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-info) 10%, transparent) 0%, color-mix(in srgb, var(--theme-primary) 10%, transparent) 100%);
    border: 1px solid color-mix(in srgb, var(--theme-info) 20%, transparent);
}

.info-banner.banner-info .banner-icon[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-info) 15%, transparent);
    color: var(--theme-info);
}

.info-banner.banner-info .banner-title[b-ljqgfuozdf] {
    color: var(--theme-info-emphasis);
}

.info-banner.banner-info .banner-message[b-ljqgfuozdf] {
    color: var(--theme-info);
}

.info-banner.banner-info .banner-action[b-ljqgfuozdf] {
    background: var(--theme-info);
    color: white;
}

.info-banner.banner-info .banner-action:hover[b-ljqgfuozdf] {
    background: var(--theme-blue);
}

.info-banner.banner-info .banner-dismiss[b-ljqgfuozdf] {
    color: var(--theme-info);
}

.info-banner.banner-info .banner-dismiss:hover[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-info) 15%, transparent);
}

/* Type: Warning */
.info-banner.banner-warning[b-ljqgfuozdf] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 10%, transparent) 0%, color-mix(in srgb, var(--theme-warning) 10%, transparent) 100%);
    border: 1px solid color-mix(in srgb, var(--theme-warning) 20%, transparent);
}

.info-banner.banner-warning .banner-icon[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-warning) 15%, transparent);
    color: var(--theme-warning);
}

.info-banner.banner-warning .banner-title[b-ljqgfuozdf] {
    color: var(--theme-warning-emphasis);
}

.info-banner.banner-warning .banner-message[b-ljqgfuozdf] {
    color: var(--theme-warning);
}

.info-banner.banner-warning .banner-action[b-ljqgfuozdf] {
    background: var(--theme-warning);
    color: white;
}

.info-banner.banner-warning .banner-action:hover[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-warning) 90%, black);
}

.info-banner.banner-warning .banner-dismiss[b-ljqgfuozdf] {
    color: var(--theme-warning);
}

.info-banner.banner-warning .banner-dismiss:hover[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-warning) 15%, transparent);
}

/* Type: Success */
.info-banner.banner-success[b-ljqgfuozdf] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-success) 10%, transparent) 0%, color-mix(in srgb, var(--theme-success) 10%, transparent) 100%);
    border: 1px solid color-mix(in srgb, var(--theme-success) 20%, transparent);
}

.info-banner.banner-success .banner-icon[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-success) 15%, transparent);
    color: var(--theme-success);
}

.info-banner.banner-success .banner-title[b-ljqgfuozdf] {
    color: var(--theme-success-emphasis);
}

.info-banner.banner-success .banner-message[b-ljqgfuozdf] {
    color: var(--theme-success);
}

.info-banner.banner-success .banner-action[b-ljqgfuozdf] {
    background: var(--theme-success);
    color: white;
}

.info-banner.banner-success .banner-action:hover[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-success) 90%, black);
}

.info-banner.banner-success .banner-dismiss[b-ljqgfuozdf] {
    color: var(--theme-success);
}

.info-banner.banner-success .banner-dismiss:hover[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-success) 15%, transparent);
}

/* Type: Error */
.info-banner.banner-error[b-ljqgfuozdf] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-danger) 10%, transparent) 0%, color-mix(in srgb, var(--theme-danger) 10%, transparent) 100%);
    border: 1px solid color-mix(in srgb, var(--theme-danger) 20%, transparent);
}

.info-banner.banner-error .banner-icon[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-danger) 15%, transparent);
    color: var(--theme-danger);
}

.info-banner.banner-error .banner-title[b-ljqgfuozdf] {
    color: var(--theme-danger-emphasis);
}

.info-banner.banner-error .banner-message[b-ljqgfuozdf] {
    color: var(--theme-danger);
}

.info-banner.banner-error .banner-action[b-ljqgfuozdf] {
    background: var(--theme-danger);
    color: white;
}

.info-banner.banner-error .banner-action:hover[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-danger) 90%, black);
}

.info-banner.banner-error .banner-dismiss[b-ljqgfuozdf] {
    color: var(--theme-danger);
}

.info-banner.banner-error .banner-dismiss:hover[b-ljqgfuozdf] {
    background: color-mix(in srgb, var(--theme-danger) 15%, transparent);
}

/* Responsive */
@media (max-width: 768px) {
    .info-banner[b-ljqgfuozdf] {
        flex-wrap: wrap;
    }

    .banner-action[b-ljqgfuozdf] {
        width: 100%;
        justify-content: center;
        margin-top: 0.5rem;
    }
}
/* /Components/Common/InfoSection.razor.rz.scp.css */
/* =============================================
   InfoSection / InfoItem — shared detail-page section
   ============================================= */

.fsh-info-section[b-3pb2nf8mwa] {
    margin-bottom: 1.25rem;
}

.fsh-info-section-header[b-3pb2nf8mwa] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--theme-primary);
    margin: 0 0 0.75rem;
    padding-bottom: 0.375rem;
    border-bottom: 1px solid var(--border-color);
}

.fsh-info-section-header i[b-3pb2nf8mwa] {
    font-size: 1rem;
    flex-shrink: 0;
}

.fsh-info-section-sub .fsh-info-section-header[b-3pb2nf8mwa] {
    border-bottom: 0;
    padding-bottom: 0;
    color: var(--text-muted);
    font-size: 0.8125rem;
}

.fsh-info-section-card[b-3pb2nf8mwa] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 6px);
    padding: 1rem 1.25rem;
}

.fsh-info-grid[b-3pb2nf8mwa] {
    display: grid;
    gap: 0.5rem 1.25rem;
}

.fsh-info-grid-1col[b-3pb2nf8mwa] { grid-template-columns: 1fr; }
.fsh-info-grid-2col[b-3pb2nf8mwa] { grid-template-columns: repeat(2, 1fr); }
.fsh-info-grid-3col[b-3pb2nf8mwa] { grid-template-columns: repeat(3, 1fr); }
.fsh-info-grid-4col[b-3pb2nf8mwa] { grid-template-columns: repeat(4, 1fr); }

.fsh-info-section-compact .fsh-info-grid[b-3pb2nf8mwa] {
    gap: 0.25rem 1.25rem;
}

/* InfoItem */
.fsh-info-item[b-3pb2nf8mwa] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.fsh-info-label[b-3pb2nf8mwa] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
}

.fsh-info-value[b-3pb2nf8mwa] {
    font-size: 0.9375rem;
    color: var(--text-primary);
    word-break: break-word;
    line-height: 1.4;
}

.fsh-info-empty[b-3pb2nf8mwa] {
    color: var(--text-muted);
    font-style: italic;
}

/* Responsive collapse — matches CLAUDE.md detail-page anatomy */
@media (max-width: 1200px) {
    .fsh-info-grid-4col[b-3pb2nf8mwa] { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
    .fsh-info-grid-3col[b-3pb2nf8mwa],
    .fsh-info-grid-4col[b-3pb2nf8mwa] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
    .fsh-info-grid-2col[b-3pb2nf8mwa],
    .fsh-info-grid-3col[b-3pb2nf8mwa],
    .fsh-info-grid-4col[b-3pb2nf8mwa] { grid-template-columns: 1fr; }
}

/* Dark mode */
[data-bs-theme="dark"] .fsh-info-section-header[b-3pb2nf8mwa] {
    border-bottom-color: var(--border-color);
}

[data-bs-theme="dark"] .fsh-info-section-card[b-3pb2nf8mwa] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .fsh-info-value[b-3pb2nf8mwa] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .fsh-info-label[b-3pb2nf8mwa],
[data-bs-theme="dark"] .fsh-info-empty[b-3pb2nf8mwa] {
    color: var(--text-muted);
}
/* /Components/Common/LoadingState.razor.rz.scp.css */
/* LoadingState.razor.css - Using Theme Variables */

/* Loading Spinner Container */
.loading-spinner-container[b-tqov5s2ahk] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem;
}

.spinner-border-lg[b-tqov5s2ahk] {
    width: 3rem;
    height: 3rem;
    border-width: 0.3em;
}

/* Circular Progress Container */
.loading-circular-container[b-tqov5s2ahk] {
    padding: 3rem 0;
}

/* Skeleton Loader */
.loading-skeleton-container[b-tqov5s2ahk] {
    padding: 1rem;
}

.skeleton-row[b-tqov5s2ahk] {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
    padding: 1rem;
    background: var(--bg-surface);
    border-radius: 8px;
}

.skeleton-avatar[b-tqov5s2ahk] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    flex-shrink: 0;
}

.skeleton-content[b-tqov5s2ahk] {
    flex: 1;
    margin-left: 1rem;
}

.skeleton-line[b-tqov5s2ahk] {
    height: 16px;
    border-radius: 4px;
    margin-bottom: 0.5rem;
}

.skeleton-line-title[b-tqov5s2ahk] {
    width: 70%;
}

.skeleton-line-subtitle[b-tqov5s2ahk] {
    width: 40%;
}

.skeleton-item[b-tqov5s2ahk] {
    background: linear-gradient(90deg, var(--border-color) 25%, var(--theme-gray-300) 50%, var(--border-color) 75%);
    background-size: 200% 100%;
    animation: skeleton-loading-b-tqov5s2ahk 1.5s ease-in-out infinite;
}

@keyframes skeleton-loading-b-tqov5s2ahk {
    0% {
        background-position: 200% 0;
    }
    100% {
        background-position: -200% 0;
    }
}

/* Progress Bar Container */
.loading-progress-container[b-tqov5s2ahk] {
    padding: 1.5rem;
}

/* Shimmer Loader */
.loading-shimmer-container[b-tqov5s2ahk] {
    padding: 1rem;
}

.shimmer-row[b-tqov5s2ahk] {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
    gap: 1rem;
}

.shimmer-circle[b-tqov5s2ahk] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    flex-shrink: 0;
}

.shimmer-content[b-tqov5s2ahk] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.shimmer-line[b-tqov5s2ahk] {
    height: 12px;
    border-radius: 6px;
    width: 100%;
}

.shimmer-line-short[b-tqov5s2ahk] {
    width: 60%;
}

.shimmer-item[b-tqov5s2ahk] {
    background: linear-gradient(
        90deg,
        color-mix(in srgb, var(--bg-surface) 0%, transparent) 0%,
        color-mix(in srgb, var(--bg-surface) 20%, transparent) 20%,
        color-mix(in srgb, var(--bg-surface) 50%, transparent) 60%,
        color-mix(in srgb, var(--bg-surface) 0%, transparent)
    );
    background-color: var(--border-color);
    background-size: 200% 100%;
    animation: shimmer-b-tqov5s2ahk 2s ease-in-out infinite;
}

@keyframes shimmer-b-tqov5s2ahk {
    0% {
        background-position: -200% 0;
    }
    100% {
        background-position: 200% 0;
    }
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .skeleton-avatar[b-tqov5s2ahk],
    .shimmer-circle[b-tqov5s2ahk] {
        width: 36px;
        height: 36px;
    }

    .skeleton-row[b-tqov5s2ahk],
    .shimmer-row[b-tqov5s2ahk] {
        padding: 0.75rem;
    }
}
/* /Components/Common/ManageUserRolesModal.razor.rz.scp.css */
/**
 * ManageUserRolesModal - Scoped Styles
 * Shared component for managing user role assignments.
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   MODAL CONTAINER
   ======================================== */

.manage-roles-modal[b-qhvxxw0hxs] {
    min-width: 400px;
}

/* ========================================
   MODAL ICON
   ======================================== */

.modal-icon[b-qhvxxw0hxs] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.modal-icon i[b-qhvxxw0hxs] {
    font-size: 1.5rem;
}

/* ========================================
   USER AVATAR
   ======================================== */

.user-avatar[b-qhvxxw0hxs] {
    font-size: 1rem;
}

/* ========================================
   ROLE SELECTION
   ======================================== */

.role-selection[b-qhvxxw0hxs] {
    max-height: 250px;
    overflow-y: auto;
    padding: 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
}

.role-checkbox .form-check-input:checked[b-qhvxxw0hxs] {
    background-color: var(--theme-primary);
    border-color: var(--theme-primary);
}
/* /Components/Common/ModernFileUpload.razor.rz.scp.css */
/* Modern File Upload Component - Using Theme Variables */
.modern-file-upload[b-tnz1sf1d0c] {
    width: 100%;
    min-height: 200px;
    position: relative;
    transition: all 0.3s ease;
}

/* Upload Area */
.upload-area[b-tnz1sf1d0c] {
    position: relative;
    border: 2px dashed var(--border-color);
    border-radius: 12px;
    padding: 2rem;
    text-align: center;
    cursor: pointer;
    transition: all 0.3s ease;
    background: var(--bg-surface-secondary);
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
}

.upload-area:hover[b-tnz1sf1d0c] {
    border-color: var(--theme-primary);
    background: var(--bg-hover);
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.modern-file-upload.drag-over .upload-area[b-tnz1sf1d0c] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
    border-style: solid;
    box-shadow: 0 0 0 4px var(--theme-primary-subtle);
}

.modern-file-upload.disabled .upload-area[b-tnz1sf1d0c] {
    opacity: 0.6;
    cursor: not-allowed;
    pointer-events: none;
}

/* Upload Content */
.upload-content[b-tnz1sf1d0c] {
    width: 100%;
}

.upload-icon[b-tnz1sf1d0c] {
    margin-bottom: 1rem;
}

.upload-icon i[b-tnz1sf1d0c] {
    font-size: 4rem;
    color: var(--theme-primary);
    opacity: 0.7;
    transition: all 0.3s ease;
}

.upload-area:hover .upload-icon i[b-tnz1sf1d0c] {
    opacity: 1;
    transform: scale(1.1);
}

.upload-title[b-tnz1sf1d0c] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.upload-description[b-tnz1sf1d0c] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin-bottom: 0.5rem;
}

.upload-hint[b-tnz1sf1d0c] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    display: block;
}

/* Small text (max file size, accepted formats) */
.upload-content small[b-tnz1sf1d0c],
.upload-content .text-muted[b-tnz1sf1d0c] {
    color: var(--text-muted);
}

/* File Input - Make it clickable but visually hidden */
.file-input[b-tnz1sf1d0c] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
    z-index: 10;
}

/* Ensure the native file input doesn't show text */
.file-input[b-tnz1sf1d0c]::file-selector-button {
    visibility: hidden;
}

/* For browsers that show file name text */
.file-input[b-tnz1sf1d0c]::after {
    content: none;
}

/* File Preview */
.file-preview[b-tnz1sf1d0c] {
    position: relative;
    border-radius: 12px;
    overflow: hidden;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    min-height: 200px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.preview-image[b-tnz1sf1d0c] {
    max-width: 100%;
    max-height: 400px;
    border-radius: 12px;
    object-fit: contain;
}

.file-icon[b-tnz1sf1d0c] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    padding: 2rem;
}

.file-icon i[b-tnz1sf1d0c] {
    font-size: 4rem;
    color: var(--theme-primary);
}

.file-name[b-tnz1sf1d0c] {
    font-size: 0.875rem;
    color: var(--text-primary);
    word-break: break-word;
    text-align: center;
}

/* Preview Overlay */
.preview-overlay[b-tnz1sf1d0c] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.file-preview:hover .preview-overlay[b-tnz1sf1d0c] {
    opacity: 1;
}

/* Upload Progress */
.upload-progress[b-tnz1sf1d0c] {
    margin-top: 1rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
}

.upload-progress small[b-tnz1sf1d0c] {
    display: block;
    text-align: center;
    color: var(--theme-primary);
    font-weight: 500;
}

/* Note: Radzen component base styles are now centralized in app.css. */

/* Alert Messages */
.modern-file-upload .alert[b-tnz1sf1d0c] {
    border-radius: 8px;
    display: flex;
    align-items: center;
    animation: slideDown 0.3s ease;
}

@keyframes    to-b-tnz1sf1d0c {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive */
@media (max-width: 576px) {
    .upload-area[b-tnz1sf1d0c] {
        padding: 1.5rem 1rem;
        min-height: 150px;
    }

    .upload-icon i[b-tnz1sf1d0c] {
        font-size: 3rem;
    }

    .upload-title[b-tnz1sf1d0c] {
        font-size: 1rem;
    }

    .upload-description[b-tnz1sf1d0c] {
        font-size: 0.813rem;
    }

    .preview-image[b-tnz1sf1d0c] {
        max-height: 250px;
    }
}
/* /Components/Common/PageHeader.razor.rz.scp.css */
/* =============================================
   PAGE HEADER COMPONENT STYLES
   Supports two variants: Rich (gradient) and Simple (plain text)
   ============================================= */

/* =============================================
   SIMPLE VARIANT STYLES
   ============================================= */

.page-header-wrapper[b-pcvjzteq6i] {
    margin-bottom: 1.5rem;
}

.page-header-title[b-pcvjzteq6i] {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.page-header-subtitle[b-pcvjzteq6i] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
}

/* =============================================
   RICH VARIANT STYLES
   ============================================= */

.page-header[b-pcvjzteq6i] {
    padding: 1.5rem 2rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    position: relative;
    overflow: hidden;
}

.page-header[b-pcvjzteq6i]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    opacity: 0.5;
}

/* Theme Colors - Monochromatic gradients (Inspinia-style) */
.page-header.theme-primary[b-pcvjzteq6i] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
}

.page-header.theme-purple[b-pcvjzteq6i] {
    background: linear-gradient(135deg, var(--theme-tertiary) 0%, color-mix(in srgb, var(--theme-tertiary) 90%, black) 100%);
}

.page-header.theme-teal[b-pcvjzteq6i] {
    background: linear-gradient(135deg, var(--theme-info) 0%, color-mix(in srgb, var(--theme-info) 90%, black) 100%);
}

.page-header.theme-emerald[b-pcvjzteq6i] {
    background: linear-gradient(135deg, var(--theme-success) 0%, color-mix(in srgb, var(--theme-success) 90%, black) 100%);
}

.page-header.theme-orange[b-pcvjzteq6i] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, color-mix(in srgb, var(--theme-warning) 90%, black) 100%);
}

.header-content[b-pcvjzteq6i] {
    display: flex;
    align-items: center;
    gap: 1rem;
    position: relative;
    z-index: 1;
}

.back-btn[b-pcvjzteq6i] {
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    text-decoration: none;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.back-btn:hover[b-pcvjzteq6i] {
    background: rgba(255, 255, 255, 0.3);
    color: white;
}

.back-btn i[b-pcvjzteq6i] {
    font-size: 1.25rem;
}

.header-icon[b-pcvjzteq6i] {
    width: 56px;
    height: 56px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 0.75rem;
    display: flex;
    align-items: center;
    justify-content: center;
    backdrop-filter: blur(10px);
    flex-shrink: 0;
}

.header-icon i[b-pcvjzteq6i] {
    font-size: 1.75rem;
    color: white;
}

.header-text h1[b-pcvjzteq6i] {
    font-size: 1.5rem;
    font-weight: 700;
    color: white;
    margin: 0 0 0.25rem 0;
    line-height: 1.2;
}

.header-text p[b-pcvjzteq6i] {
    font-size: 0.9375rem;
    color: rgba(255, 255, 255, 0.85);
    margin: 0;
}

.header-right[b-pcvjzteq6i] {
    display: flex;
    align-items: center;
    gap: 1rem;
    position: relative;
    z-index: 1;
}

.header-badge[b-pcvjzteq6i] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 9999px;
    color: white;
    font-size: 0.875rem;
    font-weight: 500;
}

.header-badge[b-pcvjzteq6i]  i {
    font-size: 1rem;
}

.header-stats[b-pcvjzteq6i] {
    display: flex;
    gap: 1rem;
}

/* Responsive */
@media (max-width: 768px) {
    .page-header[b-pcvjzteq6i] {
        padding: 1.25rem 1rem;
    }

    .header-text h1[b-pcvjzteq6i] {
        font-size: 1.25rem;
    }

    .header-badge[b-pcvjzteq6i] {
        display: none;
    }

    .header-icon[b-pcvjzteq6i] {
        width: 48px;
        height: 48px;
    }

    .header-icon i[b-pcvjzteq6i] {
        font-size: 1.5rem;
    }
}

@media (max-width: 480px) {
    .header-icon[b-pcvjzteq6i] {
        display: none;
    }
}
/* /Components/Common/PageLayout.razor.rz.scp.css */
/*
    PageLayout Component Styles
    ===========================
    Provides consistent styling for page layouts across the application.
    Uses CSS variables from theme-core.css for automatic light/dark mode support.
*/

/* Base Layout */
.page-layout[b-h2l3b5qoxj] {
    min-height: 100%;
    display: flex;
    flex-direction: column;
}

/* ============================================
   Page Header - Compact
   ============================================ */
.page-header[b-h2l3b5qoxj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1.5rem;
    background: linear-gradient(135deg, var(--header-bg-start) 0%, var(--header-bg-end) 100%);
    color: var(--header-text);
    gap: 0.75rem;
    flex-wrap: wrap;
}

.header-content[b-h2l3b5qoxj] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
    min-width: 0;
}

.header-right[b-h2l3b5qoxj] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex-shrink: 0;
}

/* Back Button */
.back-btn[b-h2l3b5qoxj] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--header-btn-bg);
    color: var(--header-text);
    text-decoration: none;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.back-btn:hover[b-h2l3b5qoxj] {
    background: var(--header-btn-hover);
    color: var(--header-text);
    transform: translateX(-2px);
}

.back-btn i[b-h2l3b5qoxj] {
    font-size: 1.125rem;
}

.back-btn .back-text[b-h2l3b5qoxj] {
    display: none;
}

/* Header Icon */
.header-icon[b-h2l3b5qoxj] {
    width: 40px !important;
    height: 40px !important;
    border-radius: 10px !important;
    background: var(--header-icon-bg) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
}

.header-icon i[b-h2l3b5qoxj] {
    font-size: 1.25rem !important;
    color: var(--header-text) !important;
    /* Ensure Tabler icons font is applied */
    font-family: 'tabler-icons' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Header Text */
.header-text[b-h2l3b5qoxj] {
    flex: 1;
    min-width: 0;
}

.header-text h1[b-h2l3b5qoxj] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--header-text);
    line-height: 1.2;
}

.header-text p[b-h2l3b5qoxj] {
    margin: 0.125rem 0 0;
    font-size: 0.8125rem;
    opacity: 0.85;
    color: var(--header-text);
}

/* Header Badges */
.header-badges[b-h2l3b5qoxj] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

[b-h2l3b5qoxj] .header-badges .stat-pill,
[b-h2l3b5qoxj] .header-badges .badge-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    background: var(--header-badge-bg);
    border-radius: 16px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--header-text);
}

/* Header Actions */
.header-actions[b-h2l3b5qoxj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Legacy Bootstrap button styles - exclude FshButton (.fsh-btn) which has its own styles */
[b-h2l3b5qoxj] .header-actions .btn:not(.fsh-btn),
[b-h2l3b5qoxj] .header-actions button:not(.fsh-btn) {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.875rem;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

[b-h2l3b5qoxj] .header-actions .btn-primary:not(.fsh-btn),
[b-h2l3b5qoxj] .header-actions .btn-action.primary:not(.fsh-btn) {
    background: var(--header-action-bg);
    color: var(--header-action-text);
}

[b-h2l3b5qoxj] .header-actions .btn-primary:not(.fsh-btn):hover,
[b-h2l3b5qoxj] .header-actions .btn-action.primary:not(.fsh-btn):hover {
    background: var(--header-action-hover);
    transform: translateY(-1px);
}

[b-h2l3b5qoxj] .header-actions .btn-outline:not(.fsh-btn),
[b-h2l3b5qoxj] .header-actions .btn-secondary:not(.fsh-btn) {
    background: var(--header-btn-bg);
    color: var(--header-text);
}

[b-h2l3b5qoxj] .header-actions .btn-outline:not(.fsh-btn):hover,
[b-h2l3b5qoxj] .header-actions .btn-secondary:not(.fsh-btn):hover {
    background: var(--header-btn-hover);
}

/* ============================================
   Content Wrapper
   ============================================ */
.content-wrapper[b-h2l3b5qoxj] {
    flex: 1;
    padding: 0.375rem 1.5rem 0.75rem;
    background: var(--bg-body);
    width: 100%;
    box-sizing: border-box;
}

/* Stats Grid */
.stats-grid[b-h2l3b5qoxj] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: 0.375rem;
    margin-bottom: 0.375rem;
}

[b-h2l3b5qoxj] .stats-grid .stat-card {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 0.875rem;
    background: var(--bg-surface);
    border-radius: 0.5rem;
    box-shadow: var(--shadow-sm);
    transition: all 0.2s ease;
    min-height: 52px;
}

[b-h2l3b5qoxj] .stats-grid .stat-card:hover {
    box-shadow: var(--shadow-md);
}

[b-h2l3b5qoxj] .stats-grid .stat-icon {
    width: 32px;
    height: 32px;
    border-radius: 0.375rem;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

[b-h2l3b5qoxj] .stats-grid .stat-info {
    display: flex;
    flex-direction: column;
}

[b-h2l3b5qoxj] .stats-grid .stat-value {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

[b-h2l3b5qoxj] .stats-grid .stat-label {
    font-size: 0.6875rem;
    color: var(--text-secondary);
    margin-top: 0;
}

/* Info Banner Wrapper */
.info-banner-wrapper[b-h2l3b5qoxj] {
    margin-bottom: 1.5rem;
}

/* Two Column Layout */
.two-column-layout[b-h2l3b5qoxj] {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 1.5rem;
    align-items: start;
}

.main-column[b-h2l3b5qoxj] {
    min-width: 0;
}

.sidebar-column[b-h2l3b5qoxj] {
    position: sticky;
    top: 1.5rem;
}

/* Main Content (single column) */
.main-content[b-h2l3b5qoxj] {
    width: 100%;
}

/* ============================================
   Theme: Neutral (Default)
   ============================================ */
.theme-neutral[b-h2l3b5qoxj] {
    --header-bg-start: var(--bg-surface);
    --header-bg-end: var(--bg-body);
    --header-text: var(--text-primary);
    --header-btn-bg: rgba(0, 0, 0, 0.05);
    --header-btn-hover: rgba(0, 0, 0, 0.1);
    --header-icon-bg: rgba(0, 0, 0, 0.08);
    --header-badge-bg: rgba(0, 0, 0, 0.08);
    --header-action-bg: var(--theme-primary);
    --header-action-text: white;
    --header-action-hover: var(--theme-primary-emphasis);
}

.theme-neutral .page-header[b-h2l3b5qoxj] {
    border-bottom: 1px solid var(--border-color);
}

/* Theme: Neutral - Dark Mode Overrides */
[data-bs-theme="dark"] .theme-neutral[b-h2l3b5qoxj] {
    --header-bg-start: var(--bg-card);
    --header-bg-end: var(--bg-surface);
    --header-text: var(--text-primary);
    --header-btn-bg: rgba(255, 255, 255, 0.1);
    --header-btn-hover: rgba(255, 255, 255, 0.2);
    --header-icon-bg: rgba(255, 255, 255, 0.15);
    --header-badge-bg: rgba(255, 255, 255, 0.15);
}

[data-bs-theme="dark"] .theme-neutral .page-header[b-h2l3b5qoxj] {
    border-bottom-color: var(--border-color, rgba(255, 255, 255, 0.1));
}

[data-bs-theme="dark"] .theme-neutral .header-icon i[b-h2l3b5qoxj] {
    color: var(--text-primary) !important;
}

/* ============================================
   Theme: Primary (Unified Dark Teal)
   ============================================ */
.theme-primary[b-h2l3b5qoxj] {
    --header-bg-start: var(--theme-primary-900);
    --header-bg-end: var(--theme-primary-950);
    --header-text: var(--bg-surface);
    --header-btn-bg: rgba(255, 255, 255, 0.15);
    --header-btn-hover: rgba(255, 255, 255, 0.25);
    --header-icon-bg: rgba(255, 255, 255, 0.2);
    --header-badge-bg: rgba(255, 255, 255, 0.2);
    --header-action-bg: white;
    --header-action-text: var(--theme-primary-900);
    --header-action-hover: rgba(15, 76, 92, 0.1);
}

/* ============================================
   Theme: Emerald (Unified Dark Teal)
   ============================================ */
.theme-emerald[b-h2l3b5qoxj] {
    --header-bg-start: var(--theme-primary-900);
    --header-bg-end: var(--theme-primary-950);
    --header-text: var(--bg-surface);
    --header-btn-bg: rgba(255, 255, 255, 0.15);
    --header-btn-hover: rgba(255, 255, 255, 0.25);
    --header-icon-bg: rgba(255, 255, 255, 0.2);
    --header-badge-bg: rgba(255, 255, 255, 0.2);
    --header-action-bg: white;
    --header-action-text: var(--theme-primary-900);
    --header-action-hover: rgba(15, 76, 92, 0.1);
}

/* ============================================
   Theme: Blue (Unified Dark Teal)
   ============================================ */
.theme-blue[b-h2l3b5qoxj] {
    --header-bg-start: var(--theme-primary-900);
    --header-bg-end: var(--theme-primary-950);
    --header-text: var(--bg-surface);
    --header-btn-bg: rgba(255, 255, 255, 0.15);
    --header-btn-hover: rgba(255, 255, 255, 0.25);
    --header-icon-bg: rgba(255, 255, 255, 0.2);
    --header-badge-bg: rgba(255, 255, 255, 0.2);
    --header-action-bg: white;
    --header-action-text: var(--theme-primary-900);
    --header-action-hover: rgba(15, 76, 92, 0.1);
}

/* ============================================
   Theme: Purple (Unified Dark Teal)
   ============================================ */
.theme-purple[b-h2l3b5qoxj] {
    --header-bg-start: var(--theme-primary-900);
    --header-bg-end: var(--theme-primary-950);
    --header-text: var(--bg-surface);
    --header-btn-bg: rgba(255, 255, 255, 0.15);
    --header-btn-hover: rgba(255, 255, 255, 0.25);
    --header-icon-bg: rgba(255, 255, 255, 0.2);
    --header-badge-bg: rgba(255, 255, 255, 0.2);
    --header-action-bg: white;
    --header-action-text: var(--theme-primary-900);
    --header-action-hover: rgba(15, 76, 92, 0.1);
}

/* ============================================
   Theme: Orange (Unified Dark Teal)
   ============================================ */
.theme-orange[b-h2l3b5qoxj] {
    --header-bg-start: var(--theme-primary-900);
    --header-bg-end: var(--theme-primary-950);
    --header-text: var(--bg-surface);
    --header-btn-bg: rgba(255, 255, 255, 0.15);
    --header-btn-hover: rgba(255, 255, 255, 0.25);
    --header-icon-bg: rgba(255, 255, 255, 0.2);
    --header-badge-bg: rgba(255, 255, 255, 0.2);
    --header-action-bg: white;
    --header-action-text: var(--theme-warning);
    --header-action-hover: var(--theme-warning-subtle);
}

/* ============================================
   Theme: Red (Unified Dark Teal)
   ============================================ */
.theme-red[b-h2l3b5qoxj] {
    --header-bg-start: var(--theme-primary-900);
    --header-bg-end: var(--theme-primary-950);
    --header-text: var(--bg-surface);
    --header-btn-bg: rgba(255, 255, 255, 0.15);
    --header-btn-hover: rgba(255, 255, 255, 0.25);
    --header-icon-bg: rgba(255, 255, 255, 0.2);
    --header-badge-bg: rgba(255, 255, 255, 0.2);
    --header-action-bg: white;
    --header-action-text: var(--theme-primary-900);
    --header-action-hover: rgba(15, 76, 92, 0.1);
}

/* ============================================
   Theme: Teal (Unified Dark Teal)
   ============================================ */
.theme-teal[b-h2l3b5qoxj] {
    --header-bg-start: var(--theme-primary-900);
    --header-bg-end: var(--theme-primary-950);
    --header-text: var(--bg-surface);
    --header-btn-bg: rgba(255, 255, 255, 0.15);
    --header-btn-hover: rgba(255, 255, 255, 0.25);
    --header-icon-bg: rgba(255, 255, 255, 0.2);
    --header-badge-bg: rgba(255, 255, 255, 0.2);
    --header-action-bg: white;
    --header-action-text: var(--theme-primary-900);
    --header-action-hover: rgba(15, 76, 92, 0.1);
}

/* ============================================
   Responsive Design
   ============================================ */
@media (max-width: 1200px) {
    .two-column-layout[b-h2l3b5qoxj] {
        grid-template-columns: 1fr 300px;
    }
}

@media (max-width: 992px) {
    .two-column-layout[b-h2l3b5qoxj] {
        display: flex;
        flex-direction: column;
        gap: 1.5rem;
    }

    .main-column[b-h2l3b5qoxj] {
        order: 1;
    }

    .sidebar-column[b-h2l3b5qoxj] {
        position: static;
        order: 0; /* Default: sidebar comes first on mobile */
    }

    /* Pages that want sidebar AFTER content on mobile use AdditionalClass */
    .apply-page .two-column-layout .main-column[b-h2l3b5qoxj] {
        order: 0;
    }

    .apply-page .two-column-layout .sidebar-column[b-h2l3b5qoxj] {
        order: 1; /* Override: sidebar comes after on mobile */
    }

    .stats-grid[b-h2l3b5qoxj] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .page-header[b-h2l3b5qoxj] {
        padding: 0.75rem 1rem;
        flex-direction: column;
        align-items: flex-start;
    }

    .header-content[b-h2l3b5qoxj] {
        width: 100%;
    }

    .header-right[b-h2l3b5qoxj] {
        width: 100%;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

    .header-text h1[b-h2l3b5qoxj] {
        font-size: 1rem;
    }

    .header-icon[b-h2l3b5qoxj] {
        width: 36px !important;
        height: 36px !important;
    }

    .content-wrapper[b-h2l3b5qoxj] {
        padding: 0.5rem 0.75rem 1rem;
    }

    .stats-grid[b-h2l3b5qoxj] {
        grid-template-columns: 1fr;
    }

    .back-btn[b-h2l3b5qoxj] {
        width: 28px;
        height: 28px;
    }
}

@media (max-width: 576px) {
    .header-actions[b-h2l3b5qoxj] {
        width: 100%;
        flex-wrap: wrap;
    }

    [b-h2l3b5qoxj] .header-actions .btn:not(.fsh-btn),
    [b-h2l3b5qoxj] .header-actions button:not(.fsh-btn) {
        flex: 1;
        justify-content: center;
        padding: 0.5rem 0.75rem;
        font-size: 0.8125rem;
    }

    /* FshButton responsive - make buttons stack nicely on mobile */
    [b-h2l3b5qoxj] .header-actions .fsh-btn {
        flex: 1;
        min-width: 100px;
    }
}

/* ============================================
   Common Content Card Styling
   ============================================ */
[b-h2l3b5qoxj] .content-card {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    overflow: visible; /* Allow dropdowns to overflow */
}

[b-h2l3b5qoxj] .content-card .card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

[b-h2l3b5qoxj] .content-card .card-header h2,
[b-h2l3b5qoxj] .content-card .card-header h3 {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-h2l3b5qoxj] .content-card .card-body {
    padding: 1.25rem;
}

/* ============================================
   Sidebar Card Styling
   ============================================ */
[b-h2l3b5qoxj] .sidebar-card {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    overflow: visible; /* Allow dropdowns to overflow */
    margin-bottom: 1rem;
}

[b-h2l3b5qoxj] .sidebar-card:last-child {
    margin-bottom: 0;
}

[b-h2l3b5qoxj] .sidebar-card .card-header {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

[b-h2l3b5qoxj] .sidebar-card .card-header h3 {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-h2l3b5qoxj] .sidebar-card .card-body {
    padding: 1rem 1.25rem;
}
/* /Components/Common/PageLoader.razor.rz.scp.css */
/* PageLoader - Using Theme Variables */

/* ========================================
   FULL-PAGE LOADER (Default)
   ======================================== */

.page-loader-overlay[b-5aqemjscub] {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, color-mix(in srgb, var(--bg-surface) 98%, transparent) 0%, color-mix(in srgb, var(--bg-body) 98%, transparent) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    backdrop-filter: blur(4px);
}

/* ========================================
   CONTENT-SCOPED LOADER
   ======================================== */

.page-loader-overlay.scoped[b-5aqemjscub] {
    position: absolute;
    z-index: 100;
    background: color-mix(in srgb, var(--bg-body) 95%, transparent);
    backdrop-filter: blur(2px);
    border-radius: inherit;
    min-height: 300px;
}

/* ========================================
   LOADER CONTENT
   ======================================== */

.page-loader-content[b-5aqemjscub] {
    text-align: center;
    padding: 2rem;
}

.scoped .page-loader-content[b-5aqemjscub] {
    padding: 1.5rem;
}

/* ========================================
   SPINNER
   ======================================== */

.page-loader-spinner[b-5aqemjscub] {
    position: relative;
    width: 80px;
    height: 80px;
    margin: 0 auto 1.5rem;
}

/* Smaller spinner for scoped loader */
.page-loader-spinner.spinner-sm[b-5aqemjscub] {
    width: 60px;
    height: 60px;
    margin-bottom: 1rem;
}

.spinner-ring[b-5aqemjscub] {
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid transparent;
    animation: spin 1.5s ease-in-out infinite;
}

.spinner-ring:nth-child(1)[b-5aqemjscub] {
    border-top-color: var(--theme-primary);
    animation-delay: 0s;
}

.spinner-ring:nth-child(2)[b-5aqemjscub] {
    width: 65px;
    height: 65px;
    top: 7.5px;
    left: 7.5px;
    border-right-color: var(--theme-success);
    animation-delay: 0.15s;
    animation-direction: reverse;
}

.spinner-ring:nth-child(3)[b-5aqemjscub] {
    width: 50px;
    height: 50px;
    top: 15px;
    left: 15px;
    border-bottom-color: var(--theme-warning);
    animation-delay: 0.3s;
}

/* Smaller ring sizes for scoped spinner */
.spinner-sm .spinner-ring:nth-child(2)[b-5aqemjscub] {
    width: 48px;
    height: 48px;
    top: 6px;
    left: 6px;
}

.spinner-sm .spinner-ring:nth-child(3)[b-5aqemjscub] {
    width: 36px;
    height: 36px;
    top: 12px;
    left: 12px;
}


/* ========================================
   TEXT
   ======================================== */

.page-loader-message[b-5aqemjscub] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
    letter-spacing: -0.025em;
}

.scoped .page-loader-message[b-5aqemjscub] {
    font-size: 1rem;
}

.page-loader-submessage[b-5aqemjscub] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
}

.scoped .page-loader-submessage[b-5aqemjscub] {
    font-size: 0.8125rem;
}
/* /Components/Common/QuickActionItem.razor.rz.scp.css */
/* =============================================
   QUICK ACTION ITEM COMPONENT STYLES
   ============================================= */

.quick-action-item[b-8uevm9cmeh] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 0.5rem;
    text-decoration: none;
    transition: all 0.2s ease;
    cursor: pointer;
    border: none;
    background: transparent;
    width: 100%;
    text-align: left;
    font-family: inherit;
}

.quick-action-item:hover[b-8uevm9cmeh] {
    background: var(--bg-tertiary);
}

.quick-action-item:disabled[b-8uevm9cmeh] {
    opacity: 0.5;
    cursor: not-allowed;
}

.quick-action-item:disabled:hover[b-8uevm9cmeh] {
    background: transparent;
}

/* Action Icon */
.action-icon[b-8uevm9cmeh] {
    width: 36px;
    height: 36px;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.action-icon i[b-8uevm9cmeh] {
    font-size: 1.125rem;
}

/* Color Variants */
.quick-action-item.color-primary .action-icon[b-8uevm9cmeh] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.1) 0%, rgba(139, 92, 246, 0.1) 100%);
    color: var(--theme-indigo);
}

.quick-action-item.color-purple .action-icon[b-8uevm9cmeh] {
    background: linear-gradient(135deg, rgba(139, 92, 246, 0.1) 0%, rgba(124, 58, 237, 0.1) 100%);
    color: var(--theme-purple);
}

.quick-action-item.color-teal .action-icon[b-8uevm9cmeh] {
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.1) 0%, rgba(8, 145, 178, 0.1) 100%);
    color: var(--theme-info);
}

.quick-action-item.color-emerald .action-icon[b-8uevm9cmeh] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.1) 0%, rgba(5, 150, 105, 0.1) 100%);
    color: var(--theme-success);
}

.quick-action-item.color-orange .action-icon[b-8uevm9cmeh] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.1) 0%, rgba(217, 119, 6, 0.1) 100%);
    color: var(--theme-warning);
}

.quick-action-item.color-red .action-icon[b-8uevm9cmeh] {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.1) 0%, rgba(220, 38, 38, 0.1) 100%);
    color: var(--theme-danger);
}

/* Action Text */
.action-text[b-8uevm9cmeh] {
    flex: 1;
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

/* Action Badge */
.action-badge[b-8uevm9cmeh] {
    padding: 0.25rem 0.5rem;
    background: var(--theme-danger);
    color: white;
    font-size: 0.75rem;
    font-weight: 600;
    border-radius: 9999px;
    min-width: 1.25rem;
    text-align: center;
}

/* Action Arrow */
.action-arrow[b-8uevm9cmeh] {
    font-size: 1.125rem;
    color: var(--text-muted);
    transition: transform 0.2s ease;
}

.quick-action-item:hover .action-arrow[b-8uevm9cmeh] {
    transform: translateX(2px);
    color: var(--text-secondary);
}
/* /Components/Common/QuickActions.razor.rz.scp.css */
/* =============================================
   QUICK ACTIONS COMPONENT STYLES
   Uses CSS variables for dark mode compatibility
   ============================================= */

.quick-actions-card[b-njfcg3w4gs] {
    background: var(--bg-surface);
    border-radius: 1rem;
    box-shadow: var(--card-shadow, 0 1px 3px rgba(0, 0, 0, 0.1));
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

/* Header */
.quick-actions-header[b-njfcg3w4gs] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1.25rem 1.25rem 0.75rem;
}

.quick-actions-header i[b-njfcg3w4gs] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

.quick-actions-header h4[b-njfcg3w4gs] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

/* Actions List */
.quick-actions-list[b-njfcg3w4gs] {
    padding: 0.5rem 0.75rem 0.75rem;
}
/* /Components/Common/RegistrationProgress.razor.rz.scp.css */
/* RegistrationProgress Component Styles */

.registration-progress[b-f5c1uufj70] {
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.registration-progress.visible[b-f5c1uufj70] {
    opacity: 1;
    transform: translateY(0);
}

.progress-container[b-f5c1uufj70] {
    padding: 2rem;
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

/* Header */
.progress-header[b-f5c1uufj70] {
    text-align: center;
    margin-bottom: 2rem;
}

.progress-title[b-f5c1uufj70] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
}

.progress-subtitle[b-f5c1uufj70] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
}

/* Steps Container */
.progress-steps[b-f5c1uufj70] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Individual Step */
.progress-step[b-f5c1uufj70] {
    display: flex;
    align-items: flex-start;
    position: relative;
    padding: 0.75rem 0;
    opacity: 0;
    animation: stepFadeIn-b-f5c1uufj70 0.4s ease forwards;
}

.progress-step:nth-child(1)[b-f5c1uufj70] { animation-delay: 0.1s; }
.progress-step:nth-child(2)[b-f5c1uufj70] { animation-delay: 0.2s; }
.progress-step:nth-child(3)[b-f5c1uufj70] { animation-delay: 0.3s; }
.progress-step:nth-child(4)[b-f5c1uufj70] { animation-delay: 0.4s; }
.progress-step:nth-child(5)[b-f5c1uufj70] { animation-delay: 0.5s; }

@keyframes stepFadeIn-b-f5c1uufj70 {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Step Indicator */
.step-indicator[b-f5c1uufj70] {
    flex-shrink: 0;
    margin-right: 1rem;
    z-index: 1;
}

.step-icon[b-f5c1uufj70] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.step-icon i[b-f5c1uufj70] {
    font-size: 1.125rem;
}

/* Pending State */
.step-icon.pending[b-f5c1uufj70] {
    background: var(--theme-gray-100);
    color: var(--theme-gray-500);
    border: 2px dashed var(--theme-gray-300);
}

/* In Progress State */
.step-icon.in-progress[b-f5c1uufj70] {
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-info));
    color: white;
    box-shadow: 0 4px 15px rgba(var(--theme-primary-rgb), 0.4);
    animation: pulse 2s infinite;
}

@keyframes    70%[b-f5c1uufj70] {
        box-shadow: 0 0 0 10px rgba(var(--theme-primary-rgb), 0);
    }
    100%[b-f5c1uufj70] {
        box-shadow: 0 0 0 0 rgba(var(--theme-primary-rgb), 0);
    }
}

.step-icon.in-progress .spinner-border[b-f5c1uufj70] {
    width: 1.25rem;
    height: 1.25rem;
    border-width: 2px;
    color: white;
}

/* Completed State */
.step-icon.completed[b-f5c1uufj70] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success));
    color: white;
    transform: scale(1);
    animation: completePop-b-f5c1uufj70 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

@keyframes completePop-b-f5c1uufj70 {
    0% {
        transform: scale(0.8);
    }
    50% {
        transform: scale(1.15);
    }
    100% {
        transform: scale(1);
    }
}

/* Failed State */
.step-icon.failed[b-f5c1uufj70] {
    background: linear-gradient(135deg, var(--theme-danger), var(--theme-danger));
    color: white;
    animation: shake-b-f5c1uufj70 0.5s cubic-bezier(0.36, 0.07, 0.19, 0.97);
}

@keyframes shake-b-f5c1uufj70 {
    0%, 100% { transform: translateX(0); }
    10%, 30%, 50%, 70%, 90% { transform: translateX(-4px); }
    20%, 40%, 60%, 80% { transform: translateX(4px); }
}

/* Step Content */
.step-content[b-f5c1uufj70] {
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 40px;
}

.step-label[b-f5c1uufj70] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
    transition: color 0.3s ease;
}

.progress-step.pending .step-label[b-f5c1uufj70] {
    color: var(--text-secondary);
}

.progress-step.in-progress .step-label[b-f5c1uufj70] {
    color: var(--theme-primary);
    font-weight: 600;
}

.progress-step.completed .step-label[b-f5c1uufj70] {
    color: var(--theme-success);
}

.progress-step.failed .step-label[b-f5c1uufj70] {
    color: var(--theme-danger);
}

.step-status[b-f5c1uufj70] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
    opacity: 0;
    animation: statusFadeIn-b-f5c1uufj70 0.3s ease 0.2s forwards;
}

@keyframes statusFadeIn-b-f5c1uufj70 {
    from {
        opacity: 0;
        transform: translateY(-5px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.progress-step.in-progress .step-status[b-f5c1uufj70] {
    color: var(--theme-primary);
}

.step-status.completed[b-f5c1uufj70] {
    color: var(--theme-success);
}

.step-status.failed[b-f5c1uufj70] {
    color: var(--theme-danger);
}

/* Connector Line */
.step-connector[b-f5c1uufj70] {
    position: absolute;
    left: 19px;
    top: 56px;
    width: 2px;
    height: calc(100% - 16px);
    background: var(--theme-gray-200);
    transition: background 0.3s ease;
}

.step-connector.completed[b-f5c1uufj70] {
    background: linear-gradient(180deg, var(--theme-success), var(--theme-success-light));
}

/* Overall Progress Bar */
.overall-progress[b-f5c1uufj70] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--theme-gray-200);
}

.overall-progress .progress[b-f5c1uufj70] {
    height: 8px;
    background: var(--theme-gray-100);
    border-radius: 4px;
    overflow: hidden;
}

.overall-progress .progress-bar[b-f5c1uufj70] {
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-info));
    transition: width 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.overall-progress .progress-text[b-f5c1uufj70] {
    display: block;
    text-align: center;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.5rem;
}

/* Current Step Highlight */
.progress-step.current[b-f5c1uufj70] {
    background: color-mix(in srgb, var(--theme-primary) 5%, transparent);
    border-radius: 12px;
    margin: 0 -0.75rem;
    padding: 0.75rem;
}

/* Responsive */
@media (max-width: 480px) {
    .progress-container[b-f5c1uufj70] {
        padding: 1.25rem;
    }

    .step-icon[b-f5c1uufj70] {
        width: 36px;
        height: 36px;
    }

    .step-icon i[b-f5c1uufj70] {
        font-size: 1rem;
    }

    .step-connector[b-f5c1uufj70] {
        left: 17px;
    }

    .step-label[b-f5c1uufj70] {
        font-size: 0.875rem;
    }
}
/* /Components/Common/RejectionTypeSelector.razor.rz.scp.css */
/* RejectionTypeSelector Component Styles */
.rejection-options[b-x98zueqp3r] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.rejection-header[b-x98zueqp3r] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.rejection-header h4[b-x98zueqp3r] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    margin: 0;
    color: var(--text-primary);
}

.rejection-header h4 i[b-x98zueqp3r] {
    font-size: 1.125rem;
    color: var(--theme-warning);
}

.btn-link[b-x98zueqp3r] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    background: transparent;
    border: none;
    border-radius: var(--border-radius, 6px);
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-link:hover[b-x98zueqp3r] {
    background: var(--surface-secondary);
    color: var(--text-primary);
}

.btn-link i[b-x98zueqp3r] {
    font-size: 1rem;
}

.rejection-types[b-x98zueqp3r] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.rejection-type-card[b-x98zueqp3r] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    border: 2px solid var(--border-color);
    border-radius: var(--border-radius, 8px);
    background: var(--surface-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.rejection-type-card:hover[b-x98zueqp3r] {
    transform: translateX(4px);
    border-color: var(--border-hover);
}

.rejection-type-card.selected[b-x98zueqp3r] {
    background: rgba(var(--theme-primary-rgb, 99, 102, 241), 0.08);
    border-color: var(--theme-primary);
}

/* Type Icon Base */
.rejection-type-card .type-icon[b-x98zueqp3r] {
    width: 40px;
    height: 40px;
    border-radius: var(--border-radius, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.rejection-type-card .type-icon i[b-x98zueqp3r] {
    font-size: 1.25rem;
}

/* Hard Reject Icon */
.rejection-type-card .type-icon.hard[b-x98zueqp3r] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

/* Conditional Icon */
.rejection-type-card .type-icon.conditional[b-x98zueqp3r] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

/* Waitlist Icon */
.rejection-type-card .type-icon.waitlist[b-x98zueqp3r] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

/* Type Info */
.rejection-type-card .type-info[b-x98zueqp3r] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    flex: 1;
}

.rejection-type-card .type-name[b-x98zueqp3r] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.rejection-type-card .type-desc[b-x98zueqp3r] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* Check Icon */
.rejection-type-card .check-icon[b-x98zueqp3r] {
    position: absolute;
    right: 1rem;
    font-size: 1.25rem;
    color: var(--theme-primary);
}

/* Rejection Reason */
.rejection-reason-group[b-x98zueqp3r] {
    margin-top: 0.5rem;
    padding-top: 0.75rem;
    border-top: 1px dashed var(--border-color);
}

.rejection-reason-group .form-label[b-x98zueqp3r] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
    margin-bottom: 0.5rem;
    color: var(--text-primary);
}

.rejection-reason-group .form-label i[b-x98zueqp3r] {
    font-size: 1rem;
    color: var(--text-secondary);
}

.rejection-reason-group .form-label .required[b-x98zueqp3r] {
    color: var(--theme-danger);
}

.rejection-reason-group .form-input[b-x98zueqp3r] {
    width: 100%;
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 6px);
    resize: vertical;
    transition: border-color 0.15s ease;
}

.rejection-reason-group .form-input:focus[b-x98zueqp3r] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(var(--theme-primary-rgb, 99, 102, 241), 0.1);
}

.rejection-reason-group .form-hint[b-x98zueqp3r] {
    display: block;
    margin-top: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* Decision Actions */
.decision-actions[b-x98zueqp3r] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-top: 0.5rem;
}

/* Decision Hint */
.decision-hint[b-x98zueqp3r] {
    display: flex;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    border-radius: var(--border-radius, 6px);
    font-size: 0.8125rem;
    line-height: 1.5;
    background: var(--surface-secondary);
    color: var(--text-secondary);
}

.decision-hint i[b-x98zueqp3r] {
    flex-shrink: 0;
    font-size: 1rem;
    margin-top: 0.125rem;
}

.decision-hint.hint-danger[b-x98zueqp3r] {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
}

.decision-hint.hint-warning[b-x98zueqp3r] {
    background: rgba(245, 158, 11, 0.08);
    color: var(--theme-warning-dark);
}

.decision-hint.hint-info[b-x98zueqp3r] {
    background: rgba(59, 130, 246, 0.08);
    color: var(--theme-info);
}
/* /Components/Common/ReportLayout.razor.rz.scp.css */
/* =============================================
   ReportLayout — print-friendly tenant-themed report wrapper
   ============================================= */

.fsh-report[b-ykfu7fx1yg] {
    background: var(--bg-surface);
    color: var(--text-primary);
    padding: 1rem 1.5rem 2rem;
    font-family: var(--font-family, system-ui, sans-serif);
    font-size: var(--font-size-base, 14px);
    line-height: var(--line-height-base, 1.5);
}

.fsh-report-header[b-ykfu7fx1yg] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1.5rem;
    padding-bottom: 1rem;
    margin-bottom: 1.25rem;
    border-bottom: 2px solid var(--theme-primary);
}

.fsh-report-brand[b-ykfu7fx1yg] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.fsh-report-logo[b-ykfu7fx1yg] {
    max-height: 60px;
    max-width: 180px;
    object-fit: contain;
}

.fsh-report-brand-text[b-ykfu7fx1yg] {
    min-width: 0;
}

.fsh-report-app-name[b-ykfu7fx1yg] {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0;
    color: var(--theme-primary);
    line-height: 1.2;
}

.fsh-report-tagline[b-ykfu7fx1yg] {
    font-size: 0.8125rem;
    margin: 0.125rem 0 0;
    color: var(--text-muted);
}

.fsh-report-meta[b-ykfu7fx1yg] {
    text-align: right;
    flex-shrink: 0;
}

.fsh-report-title[b-ykfu7fx1yg] {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
    color: var(--text-primary);
}

.fsh-report-subtitle[b-ykfu7fx1yg] {
    font-size: 0.875rem;
    margin: 0.25rem 0 0;
    color: var(--text-muted);
}

.fsh-report-generated[b-ykfu7fx1yg] {
    font-size: 0.75rem;
    margin: 0.375rem 0 0;
    color: var(--text-muted);
}

.fsh-report-toolbar[b-ykfu7fx1yg] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    margin-bottom: 1rem;
    padding: 0.5rem 0;
}

.fsh-report-body[b-ykfu7fx1yg] {
    min-height: 200px;
}

.fsh-report-footer[b-ykfu7fx1yg] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    margin-top: 1.5rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--border-color);
    font-size: 0.75rem;
    color: var(--text-muted);
}

.fsh-report-support[b-ykfu7fx1yg] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
}

/* =============================================
   PRINT — relies on global print.css for @page + utilities
   ============================================= */
@media print {
    .fsh-report[b-ykfu7fx1yg] {
        padding: 0;
        background: #fff;
        color: #000;
    }

    .fsh-report-header[b-ykfu7fx1yg] {
        margin-bottom: 0.75rem;
        padding-bottom: 0.5rem;
        border-bottom: 1.5pt solid #000;
        break-inside: avoid;
        page-break-inside: avoid;
    }

    .fsh-report-app-name[b-ykfu7fx1yg] {
        color: #000;
    }

    .fsh-report-footer[b-ykfu7fx1yg] {
        position: fixed;
        bottom: 0.5cm;
        left: 1cm;
        right: 1cm;
        border-top: 0.5pt solid #999;
        font-size: 9pt;
    }

    .fsh-report-body[b-ykfu7fx1yg] {
        min-height: 0;
    }
}

/* =============================================
   DARK MODE
   ============================================= */
[data-bs-theme="dark"] .fsh-report[b-ykfu7fx1yg] {
    background: var(--bg-surface);
    color: var(--text-primary);
}

[data-bs-theme="dark"] .fsh-report-header[b-ykfu7fx1yg] {
    border-bottom-color: var(--theme-primary);
}
/* /Components/Common/ScoreBar.razor.rz.scp.css */
/* ScoreBar Component Styles */
.score-display[b-a4dcli45km] {
    padding: 1rem;
    border-radius: var(--border-radius, 8px);
    background: var(--surface-secondary);
}

.score-bar-bg[b-a4dcli45km] {
    height: 8px;
    background: var(--surface-tertiary);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.score-bar[b-a4dcli45km] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.score-bar.excellent[b-a4dcli45km] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-light));
}

.score-bar.good[b-a4dcli45km] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-light));
}

.score-bar.average[b-a4dcli45km] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-light));
}

.score-bar.poor[b-a4dcli45km] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-light));
}

.score-info[b-a4dcli45km] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.score-number[b-a4dcli45km] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
}

.score-text[b-a4dcli45km] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}
/* /Components/Common/ServerStatusBanner.razor.rz.scp.css */
/* Server Status Banner Styles */
.server-status-banner[b-8b9f9fg226] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 9999;
    padding: 0.75rem 1rem;
    animation: slideDown 0.3s ease-out;
}

@keyframes    to-b-8b9f9fg226 {
        transform: translateY(0);
        opacity: 1;
    }
}

.banner-content[b-8b9f9fg226] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1rem;
    max-width: 1200px;
    margin: 0 auto;
}

.banner-icon[b-8b9f9fg226] {
    font-size: 1.25rem;
    display: flex;
    align-items: center;
}

.banner-message[b-8b9f9fg226] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}

.banner-title[b-8b9f9fg226] {
    font-weight: 600;
}

.banner-detail[b-8b9f9fg226] {
    opacity: 0.9;
}

.banner-countdown[b-8b9f9fg226] {
    font-size: 0.875rem;
    opacity: 0.8;
}

.banner-actions[b-8b9f9fg226] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-left: auto;
}

/* Banner color variants */
.banner-danger[b-8b9f9fg226] {
    background: linear-gradient(135deg, var(--theme-danger) 0%, var(--theme-danger-emphasis) 100%);
    color: white;
    box-shadow: 0 2px 8px rgba(220, 53, 69, 0.3);
}

.banner-warning[b-8b9f9fg226] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-warning-emphasis) 100%);
    color: var(--text-primary);
    box-shadow: 0 2px 8px rgba(255, 193, 7, 0.3);
}

.banner-warning .btn-link[b-8b9f9fg226] {
    color: var(--text-primary) !important;
}

.banner-info[b-8b9f9fg226] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info-emphasis) 100%);
    color: white;
    box-shadow: 0 2px 8px rgba(23, 162, 184, 0.3);
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .banner-content[b-8b9f9fg226] {
        flex-wrap: wrap;
        text-align: center;
    }

    .banner-message[b-8b9f9fg226] {
        flex-direction: column;
        width: 100%;
    }

    .banner-actions[b-8b9f9fg226] {
        margin-left: 0;
        margin-top: 0.5rem;
    }
}
/* /Components/Common/ServerUnavailablePage.razor.rz.scp.css */
/* Server Unavailable Page Styles
   Dark mode handled automatically via CSS variables from theme-core.css */

.server-unavailable-page[b-tb4q6rr1bb] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 2rem;
    background: var(--bg-body);
}

.unavailable-container[b-tb4q6rr1bb] {
    max-width: 500px;
    text-align: center;
    padding: 3rem;
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-lg);
}

.unavailable-icon[b-tb4q6rr1bb] {
    font-size: 5rem;
    color: var(--text-muted);
    margin-bottom: 1.5rem;
    animation: pulse 2s ease-in-out infinite;
}

@keyframes    50%[b-tb4q6rr1bb] {
        opacity: 0.7;
        transform: scale(0.95);
    }
}

.unavailable-icon .ti-tool[b-tb4q6rr1bb] {
    color: var(--theme-warning);
}

.unavailable-icon .ti-cloud-off[b-tb4q6rr1bb] {
    color: var(--theme-danger);
}

.unavailable-title[b-tb4q6rr1bb] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 1rem;
}

.unavailable-message[b-tb4q6rr1bb] {
    font-size: 1rem;
    color: var(--text-muted);
    margin-bottom: 1.5rem;
    line-height: 1.6;
}

.unavailable-reasons[b-tb4q6rr1bb] {
    text-align: left;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
}

.reasons-title[b-tb4q6rr1bb] {
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--text-secondary);
}

.unavailable-reasons ul[b-tb4q6rr1bb] {
    margin: 0;
    padding-left: 1.25rem;
    color: var(--text-muted);
}

.unavailable-reasons li[b-tb4q6rr1bb] {
    margin-bottom: 0.25rem;
}

.retry-countdown[b-tb4q6rr1bb] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    font-size: 1rem;
    color: var(--text-muted);
}

.countdown-number[b-tb4q6rr1bb] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-primary);
    min-width: 2rem;
}

.unavailable-actions[b-tb4q6rr1bb] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.unavailable-actions .btn[b-tb4q6rr1bb] {
    padding: 0.75rem 1.5rem;
}

.last-connected[b-tb4q6rr1bb] {
    font-size: 0.875rem;
    color: var(--text-muted);
    margin-bottom: 1rem;
}

.technical-details[b-tb4q6rr1bb] {
    text-align: left;
    margin-top: 1rem;
    font-size: 0.875rem;
}

.technical-details summary[b-tb4q6rr1bb] {
    cursor: pointer;
    color: var(--text-muted);
    padding: 0.5rem;
}

.technical-details pre[b-tb4q6rr1bb] {
    background: var(--bg-surface-tertiary);
    padding: 1rem;
    border-radius: 4px;
    overflow-x: auto;
    font-size: 0.75rem;
    margin-top: 0.5rem;
}

/* Responsive */
@media (max-width: 576px) {
    .unavailable-container[b-tb4q6rr1bb] {
        padding: 2rem 1.5rem;
    }

    .unavailable-icon[b-tb4q6rr1bb] {
        font-size: 4rem;
    }

    .unavailable-title[b-tb4q6rr1bb] {
        font-size: 1.5rem;
    }
}
/* /Components/Common/SharedInvoiceCard.razor.rz.scp.css */
/* Invoice Card Container */
.shared-invoice-card[b-tlsovox65q] {
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-md);
    overflow: hidden;
}

.shared-invoice-card.compact .invoice-body[b-tlsovox65q] {
    padding: 1rem;
}

.shared-invoice-card.compact .invoice-header[b-tlsovox65q] {
    padding: 1rem;
}

/* Header */
.invoice-header[b-tlsovox65q] {
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.invoice-title[b-tlsovox65q] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.invoice-title h2[b-tlsovox65q] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-primary);
}

.invoice-title h2 i[b-tlsovox65q] {
    color: var(--theme-primary);
}

.status-badge[b-tlsovox65q] {
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.status-badge.pending[b-tlsovox65q] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-badge.paid[b-tlsovox65q] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-badge.overdue[b-tlsovox65q] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--color-danger);
}

.status-badge.cancelled[b-tlsovox65q] {
    background: rgba(107, 114, 128, 0.15);
    color: var(--text-muted);
}

.status-badge.refunded[b-tlsovox65q] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.invoice-meta[b-tlsovox65q] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.invoice-date[b-tlsovox65q] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Due Date Alert */
.due-date-alert[b-tlsovox65q] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    background: var(--theme-info-subtle);
    color: var(--theme-info);
    font-size: 0.875rem;
}

.due-date-alert.warning[b-tlsovox65q] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.due-date-alert.overdue[b-tlsovox65q] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--color-danger);
}

.due-date-alert i[b-tlsovox65q] {
    font-size: 1.125rem;
}

/* Body */
.invoice-body[b-tlsovox65q] {
    padding: 1.5rem;
}

/* Billing Period */
.billing-period[b-tlsovox65q] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    margin-bottom: 1.25rem;
}

.billing-period .label[b-tlsovox65q] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.billing-period .value[b-tlsovox65q] {
    font-weight: 500;
    color: var(--text-primary);
}

/* Description */
.invoice-description[b-tlsovox65q] {
    margin-bottom: 1.25rem;
}

.invoice-description h4[b-tlsovox65q] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.5rem;
}

.invoice-description p[b-tlsovox65q] {
    margin: 0;
    color: var(--text-primary);
}

/* Line Items */
.line-items[b-tlsovox65q] {
    margin-bottom: 1.25rem;
}

.line-items h4[b-tlsovox65q] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.items-table[b-tlsovox65q] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.items-table th[b-tlsovox65q] {
    padding: 0.75rem 0.5rem;
    text-align: left;
    font-weight: 600;
    color: var(--text-secondary);
    border-bottom: 2px solid var(--border-color);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.items-table td[b-tlsovox65q] {
    padding: 0.75rem 0.5rem;
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

.items-table .text-right[b-tlsovox65q] {
    text-align: right;
}

/* Totals */
.invoice-totals[b-tlsovox65q] {
    background: var(--bg-surface-secondary);
    border-radius: 12px;
    padding: 1rem;
    margin-bottom: 1.25rem;
}

.total-row[b-tlsovox65q] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
}

.total-row:not(:last-child)[b-tlsovox65q] {
    border-bottom: 1px solid var(--border-color);
}

.total-row .label[b-tlsovox65q] {
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.total-row .value[b-tlsovox65q] {
    font-weight: 500;
    color: var(--text-primary);
}

.total-row.discount .value[b-tlsovox65q] {
    color: var(--theme-success);
}

.total-row.grand-total[b-tlsovox65q] {
    padding-top: 0.75rem;
    margin-top: 0.25rem;
}

.total-row.grand-total .label[b-tlsovox65q] {
    font-weight: 600;
    font-size: 1rem;
    color: var(--text-primary);
}

.total-row.grand-total .value[b-tlsovox65q] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-primary);
}

.total-row.paid .value[b-tlsovox65q] {
    color: var(--theme-success);
}

.total-row.balance[b-tlsovox65q] {
    background: var(--theme-primary-subtle);
    margin: 0.5rem -1rem -1rem -1rem;
    padding: 0.75rem 1rem;
    border-radius: 0 0 12px 12px;
}

.total-row.balance .label[b-tlsovox65q] {
    font-weight: 600;
    color: var(--text-primary);
}

.total-row.balance .value[b-tlsovox65q] {
    font-weight: 700;
    color: var(--theme-primary);
}

/* Payment History */
.payment-history-section[b-tlsovox65q] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--border-color);
}

.payment-history-section h4[b-tlsovox65q] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.payment-history-list[b-tlsovox65q] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.payment-history-item[b-tlsovox65q] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border-left: 3px solid transparent;
}

.payment-history-item.completed[b-tlsovox65q],
.payment-history-item.paid[b-tlsovox65q] {
    border-left-color: var(--theme-success);
}

.payment-history-item.pending[b-tlsovox65q],
.payment-history-item.processing[b-tlsovox65q],
.payment-history-item.initiated[b-tlsovox65q] {
    border-left-color: var(--theme-warning);
}

.payment-history-item.failed[b-tlsovox65q],
.payment-history-item.cancelled[b-tlsovox65q] {
    border-left-color: var(--color-danger);
}

.payment-info[b-tlsovox65q] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.payment-date[b-tlsovox65q] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

.payment-method[b-tlsovox65q] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.payment-amount-status[b-tlsovox65q] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.25rem;
}

.payment-amount[b-tlsovox65q] {
    font-weight: 600;
    color: var(--text-primary);
}

.payment-status[b-tlsovox65q] {
    font-size: 0.625rem;
    padding: 2px 6px;
    border-radius: 4px;
    text-transform: uppercase;
    font-weight: 600;
}

.payment-status.completed[b-tlsovox65q],
.payment-status.paid[b-tlsovox65q] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.payment-status.pending[b-tlsovox65q],
.payment-status.processing[b-tlsovox65q],
.payment-status.initiated[b-tlsovox65q] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.payment-status.failed[b-tlsovox65q],
.payment-status.cancelled[b-tlsovox65q] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--color-danger);
}

/* Custom Content */
.custom-content[b-tlsovox65q] {
    margin-top: 1rem;
}

/* Actions */
.invoice-actions[b-tlsovox65q] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.btn-action[b-tlsovox65q] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.875rem;
    border: none;
    cursor: pointer;
    transition: all 0.2s;
}

.btn-action.outline[b-tlsovox65q] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

.btn-action.outline:hover:not(:disabled)[b-tlsovox65q] {
    background: var(--bg-hover);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.btn-action:disabled[b-tlsovox65q] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-action .spinner[b-tlsovox65q] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

/* Print Styles */
@media print {
    .shared-invoice-card[b-tlsovox65q] {
        box-shadow: none;
        border: 1px solid #dee2e6;
    }

    .invoice-actions[b-tlsovox65q] {
        display: none;
    }

    .status-badge[b-tlsovox65q] {
        border: 1px solid currentColor;
    }
}

/* Responsive */
@media (max-width: 576px) {
    .invoice-header[b-tlsovox65q] {
        padding: 1rem;
    }

    .invoice-body[b-tlsovox65q] {
        padding: 1rem;
    }

    .invoice-title[b-tlsovox65q] {
        flex-direction: column;
        align-items: flex-start;
    }

    .invoice-title h2[b-tlsovox65q] {
        font-size: 1.125rem;
    }

    .items-table[b-tlsovox65q] {
        font-size: 0.8125rem;
    }

    .items-table th[b-tlsovox65q],
    .items-table td[b-tlsovox65q] {
        padding: 0.5rem 0.25rem;
    }

    .payment-history-item[b-tlsovox65q] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .payment-amount-status[b-tlsovox65q] {
        align-items: flex-start;
        flex-direction: row;
        gap: 0.5rem;
    }

    .invoice-actions[b-tlsovox65q] {
        flex-direction: column;
        padding: 1rem;
    }

    .btn-action[b-tlsovox65q] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Common/SharedPaymentDialog.razor.rz.scp.css */
/* Overlay */
.shared-payment-dialog-overlay[b-8ofxmbyipi] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1rem;
}

/* Dialog Container */
.shared-payment-dialog[b-8ofxmbyipi] {
    background: var(--bg-surface);
    border-radius: 16px;
    width: 100%;
    max-width: 480px;
    max-height: 90vh;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: var(--shadow-lg);
    animation: slideUp 0.3s ease-out;
}

/* Header */
.dialog-header[b-8ofxmbyipi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid var(--border-color);
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-dark) 100%);
    color: white;
}

.dialog-header h3[b-8ofxmbyipi] {
    margin: 0;
    font-size: 1.125rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.close-btn[b-8ofxmbyipi] {
    background: rgba(255, 255, 255, 0.2);
    border: none;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: white;
    transition: background 0.2s;
}

.close-btn:hover:not(:disabled)[b-8ofxmbyipi] {
    background: rgba(255, 255, 255, 0.3);
}

.close-btn:disabled[b-8ofxmbyipi] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Body */
.dialog-body[b-8ofxmbyipi] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
}

/* Payment Summary */
.payment-summary[b-8ofxmbyipi] {
    background: var(--bg-surface-secondary);
    border-radius: 12px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.summary-item[b-8ofxmbyipi] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
}

.summary-item:not(:last-child)[b-8ofxmbyipi] {
    border-bottom: 1px solid var(--border-color);
}

.summary-item .label[b-8ofxmbyipi] {
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.summary-item .value[b-8ofxmbyipi] {
    font-weight: 500;
    color: var(--text-primary);
}

.summary-item .value.amount[b-8ofxmbyipi] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-primary);
}

/* Payment Methods */
.payment-methods[b-8ofxmbyipi] {
    margin-bottom: 1.5rem;
}

.section-label[b-8ofxmbyipi] {
    display: block;
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
}

.loading-gateways[b-8ofxmbyipi] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    color: var(--text-secondary);
}

.no-gateways[b-8ofxmbyipi] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--theme-warning-subtle);
    border-radius: 8px;
    color: var(--theme-warning);
}

.method-grid[b-8ofxmbyipi] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.method-option[b-8ofxmbyipi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    border: 2px solid var(--border-color);
    border-radius: 12px;
    background: var(--bg-surface);
    cursor: pointer;
    transition: all 0.2s;
    position: relative;
}

.method-option:hover[b-8ofxmbyipi] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.method-option.selected[b-8ofxmbyipi] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.method-icon[b-8ofxmbyipi] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: white;
}

.method-icon.mtn[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-warning) 100%);
    color: var(--text-heading);
}

.method-icon.airtel[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-danger) 0%, var(--theme-danger-emphasis) 100%);
}

.method-icon.mobile[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.method-icon.bank[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-info-emphasis) 0%, var(--theme-info-emphasis) 100%);
}

.method-icon.stripe[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-indigo) 0%, var(--theme-indigo-dark) 100%);
}

.method-icon.flutterwave[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-warning-emphasis) 100%);
}

.method-icon.paystack[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info) 100%);
}

.method-icon.paypal[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-info-text) 0%, var(--theme-info-text) 100%);
}

.method-icon.cash[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.method-icon.manual[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--text-secondary) 0%, var(--text-secondary) 100%);
}

.method-icon.card[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-purple-emphasis) 0%, var(--theme-indigo-dark) 100%);
}

.method-name[b-8ofxmbyipi] {
    font-size: 0.875rem;
    font-weight: 500;
    text-align: center;
    color: var(--text-primary);
}

.default-badge[b-8ofxmbyipi] {
    position: absolute;
    top: -8px;
    right: -8px;
    background: var(--theme-success);
    color: white;
    font-size: 0.625rem;
    padding: 2px 6px;
    border-radius: 4px;
    text-transform: uppercase;
    font-weight: 600;
}

/* Payment Forms */
.payment-form[b-8ofxmbyipi] {
    background: var(--bg-surface-secondary);
    border-radius: 12px;
    padding: 1rem;
    margin-bottom: 1rem;
}

.form-group[b-8ofxmbyipi] {
    margin-bottom: 1rem;
}

.form-group label[b-8ofxmbyipi] {
    display: block;
    font-weight: 500;
    margin-bottom: 0.5rem;
    color: var(--text-primary);
}

.phone-input[b-8ofxmbyipi] {
    display: flex;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
    background: var(--bg-surface);
}

.country-code[b-8ofxmbyipi] {
    padding: 0.75rem 1rem;
    background: var(--bg-surface-secondary);
    border-right: 1px solid var(--border-color);
    font-weight: 500;
    color: var(--text-secondary);
}

.form-input[b-8ofxmbyipi] {
    flex: 1;
    border: none;
    padding: 0.75rem 1rem;
    font-size: 1rem;
    outline: none;
    background: transparent;
    color: var(--text-primary);
}

.hint[b-8ofxmbyipi] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.5rem;
}

.how-it-works[b-8ofxmbyipi] {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
}

.how-it-works h5[b-8ofxmbyipi] {
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--theme-primary);
}

.how-it-works ol[b-8ofxmbyipi] {
    margin: 0;
    padding-left: 1.25rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.how-it-works li[b-8ofxmbyipi] {
    margin-bottom: 0.25rem;
}

.bank-details h4[b-8ofxmbyipi] {
    font-size: 1rem;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-primary);
}

.bank-note[b-8ofxmbyipi],
.manual-note[b-8ofxmbyipi],
.redirect-note[b-8ofxmbyipi] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
    margin: 0;
}

.bank-note i[b-8ofxmbyipi],
.manual-note i[b-8ofxmbyipi],
.redirect-note i[b-8ofxmbyipi] {
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 2px;
}

/* Error Message */
.error-message[b-8ofxmbyipi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: rgba(239, 68, 68, 0.1);
    color: var(--color-danger);
    border-radius: 8px;
    font-size: 0.875rem;
}

/* Processing State */
.processing-state[b-8ofxmbyipi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 1rem;
    text-align: center;
}

.spinner-large[b-8ofxmbyipi] {
    width: 48px;
    height: 48px;
    border: 4px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 1rem;
}

.processing-state p[b-8ofxmbyipi] {
    color: var(--text-secondary);
    margin: 0;
}

/* Result State */
.result-state[b-8ofxmbyipi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1rem;
}

.result-icon[b-8ofxmbyipi] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    margin-bottom: 1rem;
}

.result-state.success .result-icon[b-8ofxmbyipi] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.result-state.error .result-icon[b-8ofxmbyipi] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--color-danger);
}

.result-state h4[b-8ofxmbyipi] {
    margin-bottom: 0.5rem;
    color: var(--text-primary);
}

.result-message[b-8ofxmbyipi] {
    color: var(--text-secondary);
    margin-bottom: 1rem;
}

.transaction-info[b-8ofxmbyipi] {
    background: var(--bg-surface-secondary);
    padding: 0.75rem 1rem;
    border-radius: 8px;
    margin-bottom: 1rem;
    font-size: 0.875rem;
}

.transaction-info .label[b-8ofxmbyipi] {
    color: var(--text-secondary);
}

.transaction-info .value[b-8ofxmbyipi] {
    font-weight: 600;
    font-family: monospace;
    color: var(--text-primary);
}

.mobile-money-instructions[b-8ofxmbyipi],
.payment-instructions[b-8ofxmbyipi] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    background: var(--theme-info-subtle);
    color: var(--theme-info);
    padding: 1rem;
    border-radius: 8px;
    text-align: left;
    font-size: 0.875rem;
}

.mobile-money-instructions i[b-8ofxmbyipi],
.payment-instructions i[b-8ofxmbyipi] {
    font-size: 1.5rem;
    flex-shrink: 0;
}

.mobile-money-instructions p[b-8ofxmbyipi],
.payment-instructions p[b-8ofxmbyipi] {
    margin: 0;
}

/* Footer */
.dialog-footer[b-8ofxmbyipi] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.btn-action[b-8ofxmbyipi] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.9375rem;
    border: none;
    cursor: pointer;
    transition: all 0.2s;
    /* Prevent button from expanding */
    flex-shrink: 0;
    flex-grow: 0;
    height: auto;
    min-height: 48px;
    max-height: 48px;
}

.btn-action.primary[b-8ofxmbyipi] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-dark) 100%);
    color: white;
}

.btn-action.primary:hover:not(:disabled)[b-8ofxmbyipi] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(26, 179, 148, 0.4);
}

.btn-action.secondary[b-8ofxmbyipi] {
    background: var(--text-secondary);
    color: white;
}

.btn-action.secondary:hover:not(:disabled)[b-8ofxmbyipi] {
    background: var(--text-muted);
}

.btn-action.outline[b-8ofxmbyipi] {
    background: transparent;
    border: 1px solid var(--border-color);
    color: var(--text-primary);
}

.btn-action.outline:hover:not(:disabled)[b-8ofxmbyipi] {
    background: var(--bg-hover);
}

.btn-action:disabled[b-8ofxmbyipi] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-action .spinner[b-8ofxmbyipi] {
    width: 16px;
    height: 16px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

/* Note: Small button spinner is now centralized in app.css. */

/* Responsive */
@media (max-width: 480px) {
    .shared-payment-dialog[b-8ofxmbyipi] {
        max-height: 100vh;
        border-radius: 0;
    }

    .method-grid[b-8ofxmbyipi] {
        grid-template-columns: 1fr;
    }

    .dialog-footer[b-8ofxmbyipi] {
        flex-direction: column-reverse;
    }

    .btn-action[b-8ofxmbyipi] {
        width: 100%;
        justify-content: center;
        min-height: 48px;
        max-height: 48px;
    }
}
/* /Components/Common/StageTimeline.razor.rz.scp.css */
/* =============================================
   StageTimeline — generic vertical-rail timeline
   ============================================= */

.fsh-timeline[b-c2lltnigdn] {
    position: relative;
    padding-left: 2.25rem;
}

/* The continuous rail */
.fsh-timeline[b-c2lltnigdn]::before {
    content: "";
    position: absolute;
    left: 0.875rem;
    top: 0.5rem;
    bottom: 0.5rem;
    width: 2px;
    background: var(--border-color);
}

.fsh-timeline-item[b-c2lltnigdn] {
    position: relative;
    margin-bottom: 1rem;
}

.fsh-timeline-item:last-child[b-c2lltnigdn] {
    margin-bottom: 0;
}

/* Marker circle on the rail */
.fsh-timeline-marker[b-c2lltnigdn] {
    position: absolute;
    left: -2.25rem;
    top: 0;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
    border: 2px solid var(--border-color);
    color: var(--text-muted);
    font-size: 0.75rem;
    font-weight: 600;
    z-index: 1;
    transition: border-color 0.15s ease, background 0.15s ease;
}

.fsh-timeline-marker i[b-c2lltnigdn] {
    font-size: 0.875rem;
}

/* State variants — consumers add these via StateClassFunc */
.fsh-timeline-marker.accepted[b-c2lltnigdn],
.fsh-timeline-marker.success[b-c2lltnigdn] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: var(--text-inverse);
}

.fsh-timeline-marker.rejected[b-c2lltnigdn],
.fsh-timeline-marker.danger[b-c2lltnigdn] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: var(--text-inverse);
}

.fsh-timeline-marker.current[b-c2lltnigdn],
.fsh-timeline-marker.active[b-c2lltnigdn],
.fsh-timeline-marker.in-progress[b-c2lltnigdn] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: var(--text-inverse);
}

.fsh-timeline-marker.warning[b-c2lltnigdn] {
    background: var(--theme-warning);
    border-color: var(--theme-warning);
    color: var(--text-inverse);
}

.fsh-timeline-marker.muted[b-c2lltnigdn] {
    background: var(--bg-surface-alt);
    border-color: var(--border-color);
}

/* Item content card */
.fsh-timeline-content[b-c2lltnigdn] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 6px);
    padding: 0.75rem 1rem;
}

/* Empty state */
.fsh-timeline-empty[b-c2lltnigdn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
    background: var(--bg-surface-alt);
    border: 1px dashed var(--border-color);
    border-radius: var(--border-radius, 6px);
}

/* Spinning loader for "current" markers (consumer can also use ti ti-loader directly) */
.fsh-timeline-marker .spinning[b-c2lltnigdn] {
    animation: fsh-timeline-spin-b-c2lltnigdn 1s linear infinite;
}

@keyframes fsh-timeline-spin-b-c2lltnigdn {
    to { transform: rotate(360deg); }
}

/* Print-friendly */
@media print {
    .fsh-timeline-marker[b-c2lltnigdn] {
        background: #fff !important;
        color: #000 !important;
    }
    .fsh-timeline-marker.accepted[b-c2lltnigdn] { background: #16a34a !important; color: #fff !important; }
    .fsh-timeline-marker.rejected[b-c2lltnigdn] { background: #dc2626 !important; color: #fff !important; }
}

/* Dark mode */
[data-bs-theme="dark"] .fsh-timeline[b-c2lltnigdn]::before {
    background: var(--border-color);
}

[data-bs-theme="dark"] .fsh-timeline-marker[b-c2lltnigdn] {
    background: var(--bg-surface);
    border-color: var(--border-color);
    color: var(--text-muted);
}

[data-bs-theme="dark"] .fsh-timeline-marker.muted[b-c2lltnigdn] {
    background: var(--bg-surface-alt);
}

[data-bs-theme="dark"] .fsh-timeline-content[b-c2lltnigdn] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .fsh-timeline-empty[b-c2lltnigdn] {
    background: var(--bg-surface-alt);
    border-color: var(--border-color);
    color: var(--text-muted);
}

/* === ItemTemplate content classes (shared timeline content vocabulary) ===
   These rules style the legacy `.timeline-*` content vocabulary used inside
   <ItemTemplate> blocks across consuming pages (ApplicationDetail,
   ApplicationJourneyCard, MyApplicationDetails, etc.). They were lifted here
   from per-page scoped CSS so every StageTimeline consumer benefits without
   duplication. `::deep` is required because ItemTemplate content is rendered
   with the consumer's scope, not StageTimeline's. */

[b-c2lltnigdn] .timeline-header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.5rem;
    gap: 0.75rem;
}

[b-c2lltnigdn] .timeline-title-section {
    flex: 1;
}

[b-c2lltnigdn] .timeline-title {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
}

[b-c2lltnigdn] .timeline-level {
    font-size: 0.6875rem;
    color: var(--text-muted);
    font-weight: 500;
}

[b-c2lltnigdn] .timeline-status {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 0.25rem 0.5rem;
    border-radius: 12px;
    white-space: nowrap;
}

[b-c2lltnigdn] .timeline-status.completed {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-c2lltnigdn] .timeline-status.rejected,
[b-c2lltnigdn] .timeline-status.rejected-conditional {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

[b-c2lltnigdn] .timeline-status.rejected-waitlisted {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

[b-c2lltnigdn] .timeline-status.current {
    background: rgba(var(--theme-primary-rgb), 0.12);
    color: var(--theme-primary);
}

[b-c2lltnigdn] .timeline-status.pending {
    background: var(--bg-secondary);
    color: var(--text-secondary);
}

[b-c2lltnigdn] .timeline-details {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    margin-bottom: 0.625rem;
}

[b-c2lltnigdn] .timeline-detail {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

[b-c2lltnigdn] .timeline-detail i {
    font-size: 0.8125rem;
    color: var(--text-muted);
    width: 16px;
    text-align: center;
    flex-shrink: 0;
}

[b-c2lltnigdn] .timeline-detail.full-width {
    flex-direction: column;
    align-items: flex-start;
    gap: 0.375rem;
}

[b-c2lltnigdn] .timeline-detail .note {
    background: var(--bg-secondary);
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    font-style: italic;
    width: 100%;
    line-height: 1.4;
    font-size: 0.75rem;
    border-left: 2px solid var(--border-color);
}

[b-c2lltnigdn] .timeline-detail .unassigned {
    color: var(--text-muted);
    font-style: italic;
}

/* Timeline Actions */
[b-c2lltnigdn] .timeline-actions {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    padding-top: 0.625rem;
    border-top: 1px solid var(--border-color);
}

[b-c2lltnigdn] .timeline-btn {
    font-size: 0.75rem !important;
    padding: 0.375rem 0.625rem !important;
}

/* Dark mode overrides for ItemTemplate content classes */
:global([data-bs-theme="dark"])[b-c2lltnigdn]  .timeline-level {
    color: var(--text-muted);
}

:global([data-bs-theme="dark"])[b-c2lltnigdn]  .timeline-title {
    color: var(--text-primary);
}

/* Status / timeline markers - flip light bg+dark fg to translucent */
:global([data-bs-theme="dark"])[b-c2lltnigdn]  .timeline-status.completed {
    background: rgba(22, 163, 74, 0.18);
    border-color: rgba(22, 163, 74, 0.5);
    color: var(--theme-success);
}

:global([data-bs-theme="dark"])[b-c2lltnigdn]  .timeline-status.rejected,
:global([data-bs-theme="dark"])[b-c2lltnigdn]  .timeline-status.rejected-conditional {
    background: rgba(220, 38, 38, 0.18);
    border-color: rgba(220, 38, 38, 0.5);
    color: var(--theme-danger);
}

:global([data-bs-theme="dark"])[b-c2lltnigdn]  .timeline-status.rejected-waitlisted {
    background: rgba(217, 119, 6, 0.18);
    border-color: rgba(217, 119, 6, 0.5);
    color: var(--theme-warning);
}
/* /Components/Common/StatsCard.razor.rz.scp.css */
/* =============================================
   STATS CARD COMPONENT STYLES
   Native div implementation for full control over height.
   ============================================= */

/* Stats Card Base - replaces RadzenCard */
.stats-card[b-2wgoqex3yn] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    position: relative;
    overflow: hidden;
    transition: all 0.2s ease;
    box-shadow: var(--shadow-sm);
}

/* Clickable Variant */
.stats-card.clickable[b-2wgoqex3yn] {
    cursor: pointer;
    user-select: none;
}

.stats-card.clickable:hover[b-2wgoqex3yn] {
    box-shadow: var(--shadow-md);
    transform: translateY(-1px);
}

.stats-card.clickable:active[b-2wgoqex3yn] {
    transform: translateY(0);
}

/* Active State */
.stats-card.active[b-2wgoqex3yn] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px color-mix(in srgb, var(--theme-primary) 15%, transparent);
}

.stats-card.active .stats-value[b-2wgoqex3yn] {
    color: var(--theme-primary);
}

/* Stats Icon */
.stats-icon[b-2wgoqex3yn] {
    width: 24px;
    height: 24px;
    border-radius: 0.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.stats-icon i[b-2wgoqex3yn] {
    font-size: 0.75rem;
}

/* Icon Color Variants */
.stats-icon.icon-primary[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-primary) 15%, transparent) 0%, color-mix(in srgb, var(--theme-purple) 15%, transparent) 100%);
    color: var(--theme-primary);
}

.stats-icon.icon-purple[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-purple) 15%, transparent) 0%, color-mix(in srgb, var(--theme-purple) 15%, transparent) 100%);
    color: var(--theme-purple);
}

.stats-icon.icon-teal[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-teal) 15%, transparent) 0%, color-mix(in srgb, var(--theme-teal) 15%, transparent) 100%);
    color: var(--theme-teal);
}

.stats-icon.icon-emerald[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-success) 15%, transparent) 0%, color-mix(in srgb, var(--theme-success) 15%, transparent) 100%);
    color: var(--theme-success);
}

.stats-icon.icon-orange[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 15%, transparent) 0%, color-mix(in srgb, var(--theme-warning) 15%, transparent) 100%);
    color: var(--theme-warning);
}

.stats-icon.icon-pink[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-pink) 15%, transparent) 0%, color-mix(in srgb, var(--theme-pink) 15%, transparent) 100%);
    color: var(--theme-pink);
}

.stats-icon.icon-red[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-danger) 15%, transparent) 0%, color-mix(in srgb, var(--theme-danger) 15%, transparent) 100%);
    color: var(--theme-danger);
}

.stats-icon.icon-blue[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-blue) 15%, transparent) 0%, color-mix(in srgb, var(--theme-blue) 15%, transparent) 100%);
    color: var(--theme-blue);
}

.stats-icon.icon-amber[b-2wgoqex3yn] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 15%, transparent) 0%, color-mix(in srgb, var(--theme-warning) 15%, transparent) 100%);
    color: var(--theme-warning);
}

/* Stats Info */
.stats-info[b-2wgoqex3yn] {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-width: 0;
}

.stats-value[b-2wgoqex3yn] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1;
}

.stats-label[b-2wgoqex3yn] {
    font-size: 0.625rem;
    color: var(--text-secondary);
    margin-top: 0;
    line-height: 1;
}

.stats-sublabel[b-2wgoqex3yn] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
}

/* Trend Indicator */
.stats-trend[b-2wgoqex3yn] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
}

.stats-trend i[b-2wgoqex3yn] {
    font-size: 0.875rem;
}

.stats-trend.trend-up[b-2wgoqex3yn] {
    background: color-mix(in srgb, var(--theme-success) 10%, transparent);
    color: var(--theme-success);
}

.stats-trend.trend-down[b-2wgoqex3yn] {
    background: color-mix(in srgb, var(--theme-danger) 10%, transparent);
    color: var(--theme-danger);
}

.stats-trend.trend-neutral[b-2wgoqex3yn] {
    background: color-mix(in srgb, var(--text-secondary) 10%, transparent);
    color: var(--text-secondary);
}

/* Active Indicator */
.stats-active-indicator[b-2wgoqex3yn] {
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--theme-primary);
    border-radius: 0.75rem 0 0 0.75rem;
}

/* Badge */
.stats-badge[b-2wgoqex3yn] {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 0.375rem;
    border-radius: 10px;
    font-size: 0.6875rem;
    font-weight: 600;
    background: var(--border-color);
    color: var(--text-secondary);
}

.stats-badge.default[b-2wgoqex3yn] {
    background: var(--border-color);
    color: var(--text-secondary);
}

.stats-badge.primary[b-2wgoqex3yn] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.stats-badge.success[b-2wgoqex3yn] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

.stats-badge.warning[b-2wgoqex3yn] {
    background: var(--theme-warning);
    color: var(--text-inverse);
}

.stats-badge.danger[b-2wgoqex3yn] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.stats-badge.info[b-2wgoqex3yn] {
    background: var(--theme-info);
    color: var(--text-inverse);
}

/* Dark Mode */
:global([data-bs-theme="dark"]) .stats-card[b-2wgoqex3yn] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

/* Responsive */
@media (max-width: 768px) {
    .stats-card[b-2wgoqex3yn] {
        padding: 0.375rem 0.5rem;
    }

    .stats-icon[b-2wgoqex3yn] {
        width: 22px;
        height: 22px;
    }

    .stats-icon i[b-2wgoqex3yn] {
        font-size: 0.6875rem;
    }

    .stats-value[b-2wgoqex3yn] {
        font-size: 0.8125rem;
    }

    .stats-label[b-2wgoqex3yn] {
        font-size: 0.5625rem;
    }
}
/* /Components/Common/StatsGrid.razor.rz.scp.css */
/* =============================================
   STATS GRID COMPONENT STYLES
   ============================================= */

.stats-grid[b-a24lu2sp10] {
    display: grid;
    gap: 0.75rem;
}

/* Column Variants */
.stats-grid.cols-2[b-a24lu2sp10] {
    grid-template-columns: repeat(2, 1fr);
}

.stats-grid.cols-3[b-a24lu2sp10] {
    grid-template-columns: repeat(3, 1fr);
}

.stats-grid.cols-4[b-a24lu2sp10] {
    grid-template-columns: repeat(4, 1fr);
}

.stats-grid.cols-5[b-a24lu2sp10] {
    grid-template-columns: repeat(5, 1fr);
}

.stats-grid.cols-6[b-a24lu2sp10] {
    grid-template-columns: repeat(6, 1fr);
}

/* Responsive */
@media (max-width: 1024px) {
    .stats-grid.cols-6[b-a24lu2sp10],
    .stats-grid.cols-5[b-a24lu2sp10],
    .stats-grid.cols-4[b-a24lu2sp10] {
        grid-template-columns: repeat(2, 1fr);
    }

    .stats-grid.cols-3[b-a24lu2sp10] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .stats-grid.cols-6[b-a24lu2sp10],
    .stats-grid.cols-5[b-a24lu2sp10],
    .stats-grid.cols-4[b-a24lu2sp10],
    .stats-grid.cols-3[b-a24lu2sp10],
    .stats-grid.cols-2[b-a24lu2sp10] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .stats-grid.cols-6[b-a24lu2sp10],
    .stats-grid.cols-5[b-a24lu2sp10],
    .stats-grid.cols-4[b-a24lu2sp10],
    .stats-grid.cols-3[b-a24lu2sp10],
    .stats-grid.cols-2[b-a24lu2sp10] {
        grid-template-columns: 1fr;
    }
}
/* /Components/Common/StatusBadge.razor.rz.scp.css */
/* =============================================
   STATUS BADGE COMPONENT STYLES
   ============================================= */

.status-badge[b-bu644c4j5g] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    border-radius: 9999px;
    font-weight: 500;
    white-space: nowrap;
}

.status-badge i[b-bu644c4j5g] {
    flex-shrink: 0;
}

/* Size Variants */
.status-badge.badge-sm[b-bu644c4j5g] {
    padding: 0.25rem 0.625rem;
    font-size: 0.75rem;
}

.status-badge.badge-sm i[b-bu644c4j5g] {
    font-size: 0.75rem;
}

.status-badge.badge-md[b-bu644c4j5g] {
    padding: 0.375rem 0.875rem;
    font-size: 0.8125rem;
}

.status-badge.badge-md i[b-bu644c4j5g] {
    font-size: 0.875rem;
}

.status-badge.badge-lg[b-bu644c4j5g] {
    padding: 0.5rem 1rem;
    font-size: 0.875rem;
}

.status-badge.badge-lg i[b-bu644c4j5g] {
    font-size: 1rem;
}

/* Color: Primary */
.status-badge.badge-primary[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-primary) 15%, transparent) 0%, color-mix(in srgb, var(--theme-purple) 15%, transparent) 100%);
    color: var(--theme-primary);
}

.status-badge.badge-primary.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-primary);
}

/* Color: Purple */
.status-badge.badge-purple[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-purple) 15%, transparent) 0%, color-mix(in srgb, var(--theme-purple-emphasis) 15%, transparent) 100%);
    color: var(--theme-purple);
}

.status-badge.badge-purple.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-purple);
}

/* Color: Teal */
.status-badge.badge-teal[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-teal) 15%, transparent) 0%, color-mix(in srgb, var(--theme-teal-emphasis) 15%, transparent) 100%);
    color: var(--theme-teal);
}

.status-badge.badge-teal.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-teal);
}

/* Color: Emerald */
.status-badge.badge-emerald[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-success) 15%, transparent) 0%, color-mix(in srgb, var(--theme-success-emphasis) 15%, transparent) 100%);
    color: var(--theme-success);
}

.status-badge.badge-emerald.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-success);
}

/* Color: Orange */
.status-badge.badge-orange[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 15%, transparent) 0%, color-mix(in srgb, var(--theme-warning-emphasis) 15%, transparent) 100%);
    color: var(--theme-warning);
}

.status-badge.badge-orange.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-warning);
}

/* Color: Pink */
.status-badge.badge-pink[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-pink) 15%, transparent) 0%, color-mix(in srgb, var(--theme-pink-emphasis) 15%, transparent) 100%);
    color: var(--theme-pink);
}

.status-badge.badge-pink.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-pink);
}

/* Color: Red */
.status-badge.badge-red[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-danger) 15%, transparent) 0%, color-mix(in srgb, var(--theme-danger-emphasis) 15%, transparent) 100%);
    color: var(--theme-danger);
}

.status-badge.badge-red.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-danger);
}

/* Color: Blue */
.status-badge.badge-blue[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-blue) 15%, transparent) 0%, color-mix(in srgb, var(--theme-primary) 15%, transparent) 100%);
    color: var(--theme-blue);
}

.status-badge.badge-blue.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-blue);
}

/* Color: Gray */
.status-badge.badge-gray[b-bu644c4j5g] {
    background: rgba(100, 116, 139, 0.15);
    color: var(--text-muted);
}

.status-badge.badge-gray.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--text-secondary);
}

/* Color: Yellow */
.status-badge.badge-yellow[b-bu644c4j5g] {
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 15%, transparent) 0%, color-mix(in srgb, var(--theme-warning-emphasis) 15%, transparent) 100%);
    color: var(--theme-warning-emphasis);
}

.status-badge.badge-yellow.outlined[b-bu644c4j5g] {
    background: transparent;
    border: 1px solid var(--theme-warning);
}
/* /Components/Common/StepIndicator.razor.rz.scp.css */
/* =============================================
   StepIndicator — Shared animated stepper
   Uses CSS variables from theme-core.css for
   automatic dark mode support.
   ============================================= */

.fsh-stepper[b-npgfe1u2ln] {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 1rem 1.5rem;
    gap: 0;
    user-select: none;
}

/* ---- Step item ---- */
.fsh-stepper-step[b-npgfe1u2ln] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    position: relative;
    min-width: 4rem;
}

/* ---- Node wrapper (circle + pulse) ---- */
.fsh-stepper-node[b-npgfe1u2ln] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ---- Circle ---- */
.fsh-stepper-circle[b-npgfe1u2ln] {
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9rem;
    position: relative;
    z-index: 2;
    transition: all 0.4s cubic-bezier(0.34, 1.56, 0.64, 1);
    /* Default (pending) */
    background: var(--bg-surface);
    color: var(--text-tertiary);
    border: 2.5px solid var(--border-color);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
}

/* Active */
.fsh-stepper-step.active .fsh-stepper-circle[b-npgfe1u2ln] {
    background: var(--theme-primary);
    color: var(--text-inverse);
    border-color: var(--theme-primary);
    box-shadow:
        0 0 0 4px var(--theme-primary-subtle, rgba(79, 70, 229, 0.12)),
        0 4px 12px rgba(79, 70, 229, 0.25);
    transform: scale(1.05);
}

/* Completed */
.fsh-stepper-step.completed .fsh-stepper-circle[b-npgfe1u2ln] {
    background: var(--theme-success);
    color: var(--text-inverse);
    border-color: var(--theme-success);
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.2);
    cursor: pointer;
}

.fsh-stepper-step.completed:hover .fsh-stepper-circle[b-npgfe1u2ln] {
    box-shadow:
        0 0 0 3px rgba(16, 185, 129, 0.15),
        0 4px 12px rgba(16, 185, 129, 0.3);
    transform: scale(1.08);
}

/* Failed */
.fsh-stepper-step.failed .fsh-stepper-circle[b-npgfe1u2ln] {
    background: var(--theme-danger);
    color: var(--text-inverse);
    border-color: var(--theme-danger);
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.12), 0 2px 8px rgba(239, 68, 68, 0.2);
}

.fsh-stepper-step.failed .fsh-stepper-label[b-npgfe1u2ln] {
    color: var(--theme-danger);
    font-weight: 600;
}

/* ---- Checkmark SVG ---- */
.fsh-stepper-check[b-npgfe1u2ln] {
    width: 1.25rem;
    height: 1.25rem;
    stroke-dasharray: 30;
    stroke-dashoffset: 30;
    animation: stepper-check-draw 0.4s ease forwards 0.1s;
}

/* ---- X mark SVG (failed) ---- */
.fsh-stepper-x[b-npgfe1u2ln] {
    width: 1.25rem;
    height: 1.25rem;
    stroke-dasharray: 20;
    stroke-dashoffset: 20;
    animation: stepper-x-draw-b-npgfe1u2ln 0.3s ease forwards 0.1s;
}

@keyframes stepper-x-draw-b-npgfe1u2ln {
    to { stroke-dashoffset: 0; }
}

/* ---- Pulse ring for active step ---- */
.fsh-stepper-pulse[b-npgfe1u2ln] {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 2.75rem;
    height: 2.75rem;
    border-radius: 50%;
    transform: translate(-50%, -50%);
    border: 2px solid var(--theme-primary);
    opacity: 0;
    z-index: 1;
    animation: stepper-pulse-b-npgfe1u2ln 2s cubic-bezier(0, 0, 0.2, 1) infinite;
}

@keyframes stepper-pulse-b-npgfe1u2ln {
    0% {
        transform: translate(-50%, -50%) scale(1);
        opacity: 0.5;
    }
    100% {
        transform: translate(-50%, -50%) scale(1.7);
        opacity: 0;
    }
}

/* ---- Label ---- */
.fsh-stepper-label[b-npgfe1u2ln] {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-secondary);
    text-align: center;
    white-space: nowrap;
    transition: all 0.3s ease;
}

.fsh-stepper-step.active .fsh-stepper-label[b-npgfe1u2ln] {
    color: var(--theme-primary);
    font-weight: 700;
}

.fsh-stepper-step.completed .fsh-stepper-label[b-npgfe1u2ln] {
    color: var(--theme-success);
    font-weight: 600;
}

/* ---- Connector line ---- */
.fsh-stepper-connector[b-npgfe1u2ln] {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 2.5rem;
    max-width: 6rem;
    padding-top: 1.375rem; /* vertically center with circle */
}

.fsh-stepper-connector-track[b-npgfe1u2ln] {
    width: 100%;
    height: 3px;
    border-radius: 3px;
    background: var(--border-color);
    overflow: hidden;
    position: relative;
}

.fsh-stepper-connector-fill[b-npgfe1u2ln] {
    height: 100%;
    border-radius: 3px;
    background: var(--theme-success);
    width: 0%;
    transition: width 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
}

.fsh-stepper-connector.filled .fsh-stepper-connector-fill[b-npgfe1u2ln] {
    width: 100%;
}

/* ---- Clickable step cursor ---- */
.fsh-stepper-step.clickable[b-npgfe1u2ln] {
    cursor: pointer;
}

.fsh-stepper-step.clickable .fsh-stepper-circle[b-npgfe1u2ln] {
    cursor: pointer;
}

/* Pending steps that are clickable (visited but navigated past) */
.fsh-stepper-step.pending.clickable .fsh-stepper-circle[b-npgfe1u2ln] {
    border-color: var(--text-tertiary);
}

.fsh-stepper-step.pending.clickable:hover .fsh-stepper-circle[b-npgfe1u2ln] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    transform: scale(1.05);
}

.fsh-stepper-step.pending.clickable .fsh-stepper-label[b-npgfe1u2ln] {
    color: var(--text-secondary);
}

/* =============================================
   Compact variant — for use inside modals/dialogs
   Horizontal inline layout with smaller circles
   ============================================= */
.fsh-stepper-compact[b-npgfe1u2ln] {
    padding: 0.375rem 0;
    border-bottom: 1px solid var(--border-color);
    flex-shrink: 0;
    justify-content: flex-start;
}

.fsh-stepper-compact .fsh-stepper-step[b-npgfe1u2ln] {
    flex-direction: row;
    gap: 0.25rem;
    min-width: 0;
}

.fsh-stepper-compact .fsh-stepper-circle[b-npgfe1u2ln] {
    width: 1.375rem;
    height: 1.375rem;
    font-size: 0.6rem;
    border-width: 1.5px;
    box-shadow: none;
    flex-shrink: 0;
}

.fsh-stepper-compact .fsh-stepper-step.active .fsh-stepper-circle[b-npgfe1u2ln] {
    box-shadow: 0 0 0 2px var(--theme-primary-subtle, rgba(79, 70, 229, 0.12));
    transform: none;
}

.fsh-stepper-compact .fsh-stepper-step.completed .fsh-stepper-circle[b-npgfe1u2ln] {
    box-shadow: none;
}

.fsh-stepper-compact .fsh-stepper-step.completed:hover .fsh-stepper-circle[b-npgfe1u2ln] {
    box-shadow: none;
    transform: scale(1.1);
}

.fsh-stepper-compact .fsh-stepper-check[b-npgfe1u2ln],
.fsh-stepper-compact .fsh-stepper-x[b-npgfe1u2ln] {
    width: 0.75rem;
    height: 0.75rem;
}

.fsh-stepper-compact .fsh-stepper-step.failed .fsh-stepper-circle[b-npgfe1u2ln] {
    box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.12);
}

.fsh-stepper-compact .fsh-stepper-step.failed[b-npgfe1u2ln] {
    opacity: 1;
}

.fsh-stepper-compact .fsh-stepper-label[b-npgfe1u2ln] {
    font-size: 0.6875rem;
    font-weight: 500;
    white-space: nowrap;
    line-height: 1;
}

.fsh-stepper-compact .fsh-stepper-step.active .fsh-stepper-label[b-npgfe1u2ln] {
    font-weight: 600;
}

.fsh-stepper-compact .fsh-stepper-connector[b-npgfe1u2ln] {
    min-width: 0.75rem;
    max-width: 1.25rem;
    padding-top: 0; /* inline, no vertical offset needed */
    align-self: center;
}

.fsh-stepper-compact .fsh-stepper-connector-track[b-npgfe1u2ln] {
    height: 1.5px;
}

/* Pending steps in compact: dimmed like original */
.fsh-stepper-compact .fsh-stepper-step.pending[b-npgfe1u2ln] {
    opacity: 0.45;
}

.fsh-stepper-compact .fsh-stepper-step.pending.clickable[b-npgfe1u2ln] {
    opacity: 0.65;
}

.fsh-stepper-compact .fsh-stepper-step.pending.clickable:hover[b-npgfe1u2ln] {
    opacity: 0.85;
}

/* ---- Responsive ---- */
@media (max-width: 768px) {
    .fsh-stepper[b-npgfe1u2ln] {
        padding: 0.75rem 0.5rem;
    }

    .fsh-stepper-circle[b-npgfe1u2ln] {
        width: 2.25rem;
        height: 2.25rem;
        font-size: 0.8rem;
    }

    .fsh-stepper-pulse[b-npgfe1u2ln] {
        width: 2.25rem;
        height: 2.25rem;
    }

    .fsh-stepper-connector[b-npgfe1u2ln] {
        padding-top: 1.125rem;
        min-width: 1.5rem;
    }

    .fsh-stepper-label[b-npgfe1u2ln] {
        font-size: 0.7rem;
    }
}

@media (max-width: 480px) {
    .fsh-stepper-circle[b-npgfe1u2ln] {
        width: 2rem;
        height: 2rem;
        font-size: 0.75rem;
        border-width: 2px;
    }

    .fsh-stepper-pulse[b-npgfe1u2ln] {
        width: 2rem;
        height: 2rem;
    }

    .fsh-stepper-connector[b-npgfe1u2ln] {
        padding-top: 1rem;
        min-width: 1rem;
    }

    .fsh-stepper-step[b-npgfe1u2ln] {
        min-width: 3rem;
    }
}
/* /Components/Dialogs/DeleteConfirmation.razor.rz.scp.css */
/**
 * DeleteConfirmation - Scoped Styles
 * Uses CSS variables for theme consistency.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   DELETE CONFIRMATION DIALOG
   ======================================== */

.delete-confirmation-header[b-3da0m1bz1e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--theme-danger);
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.delete-confirmation-content[b-3da0m1bz1e] {
    margin-bottom: 1.5rem;
    color: var(--text-primary);
}

.delete-confirmation-actions[b-3da0m1bz1e] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
}
/* /Components/Dialogs/InstallApp.razor.rz.scp.css */
/**
 * InstallApp - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   INSTALL APP DIALOG
   ======================================== */

.install-app-dialog[b-eoug9zel95] {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   LOGO SECTION
   ======================================== */

.install-app-logo[b-eoug9zel95] {
    display: flex;
    justify-content: center;
}

.install-app-logo img[b-eoug9zel95] {
    height: 80px;
    object-fit: contain;
}

/* ========================================
   TEXT CONTENT
   ======================================== */

.install-app-title[b-eoug9zel95] {
    text-align: center;
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
}

.install-app-description[b-eoug9zel95] {
    text-align: center;
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

/* ========================================
   ACTION BUTTONS
   ======================================== */

.install-app-actions[b-eoug9zel95] {
    margin-top: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

[b-eoug9zel95] .install-app-actions .rz-button {
    border-radius: 0.5rem;
}
/* /Components/EntityTable/AddEditModal.razor.rz.scp.css */
/**
 * AddEditModal - Scoped Styles
 * Uses CSS variables for theme consistency.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   MODAL HEADER
   ======================================== */

.add-edit-modal-header[b-8eyhmccv6b] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.25rem;
    font-weight: 600;
    margin-bottom: 1.5rem;
    color: var(--text-primary);
}

.add-edit-modal-header i[b-8eyhmccv6b] {
    color: var(--theme-primary);
}

/* ========================================
   MODAL CONTENT
   ======================================== */

.add-edit-modal-content[b-8eyhmccv6b] {
    margin-bottom: 1.5rem;
}

/* ========================================
   MODAL ACTIONS
   ======================================== */

.add-edit-modal-actions[b-8eyhmccv6b] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    margin-top: 1.5rem;
}
/* /Components/EntityTable/EntityTable.razor.rz.scp.css */
/**
 * EntityTable - Scoped Styles
 * Uses CSS variables for theme consistency.
 */

/* ========================================
   TABLE CONTAINER
   ======================================== */

.table-container[b-qz816pzhxi] {
    overflow: auto;
}

/* ========================================
   TOOLBAR
   ======================================== */

.table-toolbar[b-qz816pzhxi] {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
    gap: 0.5rem;
}

.table-toolbar-end[b-qz816pzhxi] {
    margin-left: auto;
}

/* ========================================
   ADVANCED SEARCH PANEL
   ======================================== */

.advanced-search-panel[b-qz816pzhxi] {
    padding: 1rem;
    margin-bottom: 1rem;
    border: 1px solid var(--border-color);
    border-radius: var(--radius-sm, 4px);
    background: var(--bg-surface-secondary);
}

.advanced-search-header[b-qz816pzhxi] {
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-weight: 600;
    margin-bottom: 0.5rem;
    color: var(--text-primary);
    transition: color var(--sidenav-transition-fast);
}

.advanced-search-header:hover[b-qz816pzhxi] {
    color: var(--theme-primary);
}

.advanced-search-content[b-qz816pzhxi] {
    margin-top: 1rem;
}

/* ========================================
   HIGHLIGHT FOR SEARCH
   ======================================== */

.highlight[b-qz816pzhxi] {
    background-color: var(--theme-warning-subtle);
    color: var(--theme-warning);
    padding: 0 2px;
    border-radius: 2px;
}
/* /Components/General/PersonCard.razor.rz.scp.css */
/**
 * PersonCard - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   AVATAR CIRCLE
   ======================================== */

.avatar-circle[b-obhrssm1y1] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 14px;
    object-fit: cover;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: background 0.2s ease;
}

.avatar-circle:hover[b-obhrssm1y1] {
    filter: brightness(1.05);
}

/* ========================================
   USER IMAGE SIZE VARIANT
   ======================================== */

.user-img .avatar-circle[b-obhrssm1y1] {
    width: 50px;
    height: 50px;
    font-size: 16px;
}
/* /Components/Help/HelpViewer.razor.rz.scp.css */
/* ============================================= */
/* HelpViewer — Page-Based Help System Styles    */
/* ============================================= */

/* Base */
.help-viewer[b-9fhxp3h3b2] {
    font-size: 0.875rem;
    line-height: 1.65;
    color: var(--text-primary);
}

/* ===================== */
/* Sections              */
/* ===================== */
[b-9fhxp3h3b2] .help-section {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--border-subtle);
}

[b-9fhxp3h3b2] .help-section:last-child {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

[b-9fhxp3h3b2] .help-section h6 {
    font-weight: 600;
    font-size: 0.95rem;
    margin-bottom: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-primary);
}

[b-9fhxp3h3b2] .help-section h6 i {
    font-size: 1.1rem;
    opacity: 0.7;
}

[b-9fhxp3h3b2] .help-section p {
    margin-bottom: 0.5rem;
    color: var(--text-secondary);
}

[b-9fhxp3h3b2] .help-section ul,
[b-9fhxp3h3b2] .help-section ol {
    padding-left: 1.25rem;
    margin-bottom: 0.5rem;
    color: var(--text-secondary);
}

[b-9fhxp3h3b2] .help-section li {
    margin-bottom: 0.25rem;
}

/* ===================== */
/* Callout Boxes         */
/* ===================== */
[b-9fhxp3h3b2] .help-callout {
    padding: 0.875rem 1rem;
    border-radius: 0.5rem;
    border-left: 4px solid;
    margin-bottom: 0.75rem;
}

[b-9fhxp3h3b2] .help-callout p {
    margin: 0;
}

[b-9fhxp3h3b2] .help-callout p + p {
    margin-top: 0.375rem;
}

[b-9fhxp3h3b2] .help-callout.info {
    background: var(--theme-info-subtle);
    border-left-color: var(--theme-info);
}

[b-9fhxp3h3b2] .help-callout.success {
    background: var(--theme-success-subtle);
    border-left-color: var(--theme-success);
}

[b-9fhxp3h3b2] .help-callout.warning {
    background: var(--theme-warning-subtle);
    border-left-color: var(--theme-warning);
}

[b-9fhxp3h3b2] .help-callout.danger {
    background: var(--theme-danger-subtle);
    border-left-color: var(--theme-danger);
}

/* ===================== */
/* Workflow Diagram      */
/* ===================== */
[b-9fhxp3h3b2] .help-workflow {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    padding: 1rem 0.5rem;
    background: var(--bg-surface-sunken);
    border-radius: 0.5rem;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

[b-9fhxp3h3b2] .help-workflow-step {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
    padding: 0.75rem 1.25rem;
    background: var(--bg-card);
    border-radius: 0.5rem;
    border: 1px solid var(--border-subtle);
    min-width: 110px;
    text-align: center;
    transition: border-color 0.2s, box-shadow 0.2s;
}

[b-9fhxp3h3b2] .help-workflow-step.active {
    border-color: var(--theme-info);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

[b-9fhxp3h3b2] .help-workflow-step .step-num {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: var(--theme-info);
    color: var(--text-inverse);
    font-size: 0.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

[b-9fhxp3h3b2] .help-workflow-step.active .step-num {
    background: var(--theme-info-text);
}

[b-9fhxp3h3b2] .help-workflow-step .step-label {
    font-weight: 600;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

[b-9fhxp3h3b2] .help-workflow-step .step-desc {
    font-size: 0.7rem;
    color: var(--text-muted);
}

[b-9fhxp3h3b2] .help-workflow-arrow {
    font-size: 1.25rem;
    color: var(--text-muted);
    padding: 0 0.375rem;
}

/* ===================== */
/* Tables                */
/* ===================== */
[b-9fhxp3h3b2] .help-table-wrap {
    overflow-x: auto;
    border-radius: 0.375rem;
    border: 1px solid var(--border-color);
    margin-bottom: 0.75rem;
}

[b-9fhxp3h3b2] .help-table-wrap table {
    width: 100%;
    border-collapse: collapse;
    margin: 0;
    font-size: 0.8125rem;
}

[b-9fhxp3h3b2] .help-table-wrap th {
    background: var(--bg-surface-sunken);
    font-weight: 600;
    padding: 0.5rem 0.75rem;
    text-align: left;
    border-bottom: 1px solid var(--border-color);
    white-space: nowrap;
    color: var(--text-primary);
}

[b-9fhxp3h3b2] .help-table-wrap td {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--border-subtle);
    vertical-align: top;
    color: var(--text-secondary);
}

[b-9fhxp3h3b2] .help-table-wrap tr:last-child td {
    border-bottom: none;
}

[b-9fhxp3h3b2] .help-table-wrap tr.row-required {
    background: var(--highlight-row-bg);
}

[b-9fhxp3h3b2] .help-table-wrap tr.row-required td {
    color: var(--text-primary);
}

/* ===================== */
/* Consequence Cards     */
/* ===================== */
[b-9fhxp3h3b2] .help-consequence {
    border-radius: 0.5rem;
    border: 1px solid;
    margin-bottom: 0.75rem;
    overflow: hidden;
}

[b-9fhxp3h3b2] .help-consequence-header {
    padding: 0.625rem 0.875rem;
    font-weight: 600;
    font-size: 0.8125rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-9fhxp3h3b2] .help-consequence-body {
    padding: 0.75rem 0.875rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

[b-9fhxp3h3b2] .help-consequence-body ul {
    margin: 0.375rem 0 0;
    padding-left: 1.25rem;
}

[b-9fhxp3h3b2] .help-consequence-body li {
    margin-bottom: 0.25rem;
}

/* Consequence variants */
[b-9fhxp3h3b2] .help-consequence.success {
    border-color: var(--theme-success-border);
}

[b-9fhxp3h3b2] .help-consequence.success .help-consequence-header {
    background: var(--theme-success-subtle);
    color: var(--theme-success-text);
}

[b-9fhxp3h3b2] .help-consequence.success .help-consequence-body {
    background: var(--theme-success-subtle);
}

[b-9fhxp3h3b2] .help-consequence.warning {
    border-color: var(--theme-warning-border);
}

[b-9fhxp3h3b2] .help-consequence.warning .help-consequence-header {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
}

[b-9fhxp3h3b2] .help-consequence.warning .help-consequence-body {
    background: var(--theme-warning-subtle);
}

[b-9fhxp3h3b2] .help-consequence.info {
    border-color: var(--theme-info-border);
}

[b-9fhxp3h3b2] .help-consequence.info .help-consequence-header {
    background: var(--theme-info-subtle);
    color: var(--theme-info-text);
}

[b-9fhxp3h3b2] .help-consequence.info .help-consequence-body {
    background: var(--theme-info-subtle);
}

[b-9fhxp3h3b2] .help-consequence.danger {
    border-color: var(--theme-danger-border);
}

[b-9fhxp3h3b2] .help-consequence.danger .help-consequence-header {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-text);
}

[b-9fhxp3h3b2] .help-consequence.danger .help-consequence-body {
    background: var(--theme-danger-subtle);
}

[b-9fhxp3h3b2] .help-consequence.muted {
    border-color: var(--border-color);
}

[b-9fhxp3h3b2] .help-consequence.muted .help-consequence-header {
    background: var(--border-subtle);
    color: var(--text-secondary);
}

[b-9fhxp3h3b2] .help-consequence.muted .help-consequence-body {
    background: var(--bg-surface-sunken);
}

/* ===================== */
/* Tags / Badges         */
/* ===================== */
[b-9fhxp3h3b2] .help-tag {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    vertical-align: middle;
}

[b-9fhxp3h3b2] .help-tag.required {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

[b-9fhxp3h3b2] .help-tag.optional {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

[b-9fhxp3h3b2] .help-tag.new {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-9fhxp3h3b2] .help-tag.duplicate {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

[b-9fhxp3h3b2] .help-tag.error {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

/* ===================== */
/* Example Box           */
/* ===================== */
[b-9fhxp3h3b2] .help-example {
    background: var(--bg-surface-sunken);
    border: 1px solid var(--border-color);
    border-radius: 0.375rem;
    padding: 0.75rem;
    margin-bottom: 0.75rem;
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-size: 0.8rem;
    overflow-x: auto;
    white-space: pre-wrap;
    color: var(--text-primary);
}

[b-9fhxp3h3b2] .help-example-label {
    font-family: inherit;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    margin-bottom: 0.375rem;
    display: block;
}

/* ===================== */
/* Numbered Steps        */
/* ===================== */
[b-9fhxp3h3b2] .help-steps {
    counter-reset: help-step;
    margin: 0;
    padding: 0;
    list-style: none;
}

[b-9fhxp3h3b2] .help-steps li {
    counter-increment: help-step;
    position: relative;
    padding: 0.75rem 0 0.75rem 3rem;
    border-bottom: 1px solid var(--border-subtle);
    color: var(--text-secondary);
}

[b-9fhxp3h3b2] .help-steps li:last-child {
    border-bottom: none;
}

[b-9fhxp3h3b2] .help-steps li::before {
    content: counter(help-step);
    position: absolute;
    left: 0;
    top: 0.75rem;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--theme-info);
    color: var(--text-inverse);
    font-size: 0.75rem;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
}

[b-9fhxp3h3b2] .help-steps li strong {
    display: block;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

/* ===================== */
/* Tips                  */
/* ===================== */
[b-9fhxp3h3b2] .help-tip {
    display: flex;
    gap: 0.625rem;
    padding: 0.75rem;
    background: var(--theme-info-subtle);
    border-radius: 0.375rem;
    margin-bottom: 0.5rem;
    align-items: flex-start;
}

[b-9fhxp3h3b2] .help-tip i {
    color: var(--theme-info);
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

[b-9fhxp3h3b2] .help-tip span {
    color: var(--text-secondary);
}

/* ===================== */
/* Code Reference        */
/* ===================== */
[b-9fhxp3h3b2] .help-code {
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-size: 0.8125em;
    background: var(--bg-surface-sunken);
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    color: var(--text-primary);
}

/* ===================== */
/* Illustration Boxes    */
/* ===================== */
[b-9fhxp3h3b2] .help-illustration {
    background: var(--bg-surface-sunken);
    border: 1px dashed var(--border-color);
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 0.75rem;
    text-align: center;
}

[b-9fhxp3h3b2] .help-illustration-label {
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    margin-bottom: 0.625rem;
}

/* Matrix / decision grid */
[b-9fhxp3h3b2] .help-matrix {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

[b-9fhxp3h3b2] .help-matrix-cell {
    border-radius: 0.375rem;
    border: 1px solid var(--border-color);
    padding: 0.75rem;
    text-align: center;
}

[b-9fhxp3h3b2] .help-matrix-cell .matrix-icon {
    font-size: 1.5rem;
    margin-bottom: 0.25rem;
}

[b-9fhxp3h3b2] .help-matrix-cell .matrix-label {
    font-weight: 600;
    font-size: 0.8125rem;
    display: block;
    margin-bottom: 0.25rem;
    color: var(--text-primary);
}

[b-9fhxp3h3b2] .help-matrix-cell .matrix-desc {
    font-size: 0.75rem;
    color: var(--text-muted);
}

[b-9fhxp3h3b2] .help-matrix-cell.matrix-success {
    background: var(--theme-success-subtle);
    border-color: var(--theme-success-border);
}

[b-9fhxp3h3b2] .help-matrix-cell.matrix-success .matrix-icon {
    color: var(--theme-success-emphasis);
}

[b-9fhxp3h3b2] .help-matrix-cell.matrix-warning {
    background: var(--theme-warning-subtle);
    border-color: var(--theme-warning-border);
}

[b-9fhxp3h3b2] .help-matrix-cell.matrix-warning .matrix-icon {
    color: var(--theme-warning-emphasis);
}

[b-9fhxp3h3b2] .help-matrix-cell.matrix-muted {
    background: var(--bg-surface-sunken);
    border-color: var(--border-color);
}

[b-9fhxp3h3b2] .help-matrix-cell.matrix-muted .matrix-icon {
    color: var(--text-muted);
}

/* ===================== */
/* Dark Mode             */
/* ===================== */
:global([data-bs-theme="dark"]) .help-viewer[b-9fhxp3h3b2] {
    color: var(--border-color);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-section h6 {
    color: var(--border-subtle);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-section p,
:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-section ul,
:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-section ol,
:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-section li {
    color: var(--border-strong);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-workflow {
    background: var(--text-heading);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-workflow-step {
    background: var(--bg-darkest);
    border-color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-table-wrap {
    border-color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-table-wrap th {
    background: var(--text-heading);
    border-color: var(--text-primary);
    color: var(--border-color);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-table-wrap td {
    border-color: var(--text-heading);
    color: var(--border-strong);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-table-wrap tr.row-required {
    background: rgba(234, 179, 8, 0.08);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-callout.info {
    background: rgba(59, 130, 246, 0.1);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-callout.success {
    background: rgba(34, 197, 94, 0.1);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-callout.warning {
    background: rgba(245, 158, 11, 0.1);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-callout.danger {
    background: rgba(239, 68, 68, 0.1);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.success .help-consequence-header {
    background: rgba(34, 197, 94, 0.15);
    color: var(--theme-success-text);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.success .help-consequence-body {
    background: rgba(34, 197, 94, 0.05);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.warning .help-consequence-header {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning-text);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.warning .help-consequence-body {
    background: rgba(245, 158, 11, 0.05);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.info .help-consequence-header {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info-text);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.info .help-consequence-body {
    background: rgba(59, 130, 246, 0.05);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.danger .help-consequence-header {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger-text);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.danger .help-consequence-body {
    background: rgba(239, 68, 68, 0.05);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.muted .help-consequence-header {
    background: var(--text-heading);
    color: var(--text-muted);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-consequence.muted .help-consequence-body {
    background: var(--bg-darkest);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-example {
    background: var(--text-heading);
    border-color: var(--text-primary);
    color: var(--border-color);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-tip {
    background: rgba(14, 165, 233, 0.08);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-illustration {
    background: var(--text-heading);
    border-color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-matrix-cell {
    border-color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-matrix-cell.matrix-success {
    background: rgba(34, 197, 94, 0.08);
    border-color: rgba(34, 197, 94, 0.2);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-matrix-cell.matrix-warning {
    background: rgba(245, 158, 11, 0.08);
    border-color: rgba(245, 158, 11, 0.2);
}

:global([data-bs-theme="dark"])[b-9fhxp3h3b2]  .help-code {
    background: var(--text-heading);
    color: var(--border-color);
}

/* ===================== */
/* Responsive            */
/* ===================== */
@media (max-width: 640px) {
    [b-9fhxp3h3b2] .help-workflow {
        flex-direction: column;
        gap: 0;
    }

    [b-9fhxp3h3b2] .help-workflow-arrow {
        transform: rotate(90deg);
    }

    [b-9fhxp3h3b2] .help-matrix {
        grid-template-columns: 1fr;
    }

    [b-9fhxp3h3b2] .help-steps li {
        padding-left: 2.5rem;
    }

    [b-9fhxp3h3b2] .help-steps li::before {
        width: 24px;
        height: 24px;
        font-size: 0.7rem;
    }
}
/* /Components/Identity/BackupCodesModal.razor.rz.scp.css */
/* Backup Codes Modal Styles - Using Theme Variables */

.backup-codes-modal[b-qf11itp8lf] {
    max-width: 550px;
    margin: 0 auto;
}

.modal-header-custom[b-qf11itp8lf] {
    display: flex;
    align-items: center;
    padding: 1.5rem;
    border-bottom: 1px solid var(--border-color);
}

.modal-body-custom[b-qf11itp8lf] {
    padding: 2rem 1.5rem;
    max-height: 60vh;
    overflow-y: auto;
}

.modal-footer-custom[b-qf11itp8lf] {
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* Backup Codes Grid */
.backup-codes-grid[b-qf11itp8lf] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.backup-code-card[b-qf11itp8lf] {
    background: linear-gradient(135deg, var(--bg-body) 0%, var(--bg-surface) 100%);
    border: 2px solid var(--theme-gray-300);
    border-radius: 8px;
    padding: 1rem;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    transition: all 0.2s ease;
}

.backup-code-card:hover[b-qf11itp8lf] {
    border-color: var(--theme-gray-600);
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.code-number[b-qf11itp8lf] {
    background: var(--theme-gray-600);
    color: white;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 700;
    flex-shrink: 0;
}

.code-value[b-qf11itp8lf] {
    font-size: 1rem;
    font-weight: 700;
    letter-spacing: 0.15em;
    color: var(--text-primary);
    flex: 1;
    text-align: center;
}

/* Responsive Design */
@media (max-width: 576px) {
    .backup-codes-grid[b-qf11itp8lf] {
        grid-template-columns: 1fr;
    }

    .modal-body-custom[b-qf11itp8lf] {
        padding: 1.5rem 1rem;
    }

    .modal-footer-custom[b-qf11itp8lf] {
        flex-direction: column;
    }

    .modal-footer-custom button[b-qf11itp8lf] {
        width: 100%;
    }
}
/* /Components/Identity/CloneRoleModal.razor.rz.scp.css */
/* Clone Role Modal Styles - Using Theme Variables */

.clone-role-modal[b-yd0m2rglsx] {
    min-width: 500px;
}

.modal-header-custom[b-yd0m2rglsx] {
    padding: 1.5rem;
    border-bottom: 1px solid var(--border-color);
}

.modal-title[b-yd0m2rglsx] {
    margin: 0;
    font-weight: 600;
    color: var(--text-primary);
    font-size: 1.25rem;
}

.modal-title i[b-yd0m2rglsx] {
    color: var(--theme-primary);
}

.modal-body-custom[b-yd0m2rglsx] {
    padding: 1.5rem;
}

.alert-info[b-yd0m2rglsx] {
    background: color-mix(in srgb, var(--theme-info) 15%, white);
    border: 1px solid color-mix(in srgb, var(--theme-info) 30%, white);
    color: var(--theme-info);
    border-radius: 8px;
}

.alert-info strong[b-yd0m2rglsx] {
    color: color-mix(in srgb, var(--theme-info) 100%, black 20%);
}

/* Permissions Preview */
.permissions-preview[b-yd0m2rglsx] {
    background: var(--bg-body);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 1rem;
}

.permissions-list[b-yd0m2rglsx] {
    max-height: 200px;
    overflow-y: auto;
}

.permission-chips[b-yd0m2rglsx] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.permission-chips .badge[b-yd0m2rglsx] {
    font-size: 0.813rem;
    padding: 0.375rem 0.75rem;
    font-weight: 500;
}

.badge.bg-success-subtle[b-yd0m2rglsx] {
    background-color: color-mix(in srgb, var(--theme-success) 20%, white) !important;
    color: var(--theme-green) !important;
}

.badge.bg-secondary[b-yd0m2rglsx] {
    background-color: var(--theme-gray-600) !important;
}

/* Modal Footer */
.modal-footer-custom[b-yd0m2rglsx] {
    padding: 1.5rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
}

/* Form Elements */
.form-label[b-yd0m2rglsx] {
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.form-label .text-danger[b-yd0m2rglsx] {
    color: var(--theme-danger) !important;
}

/* Validation Message */
[b-yd0m2rglsx] .validation-message {
    color: var(--theme-danger);
    font-size: 0.875rem;
    margin-top: 0.25rem;
}

/* Responsive */
@media (max-width: 576px) {
    .clone-role-modal[b-yd0m2rglsx] {
        min-width: auto;
        width: 100%;
    }

    .modal-header-custom[b-yd0m2rglsx],
    .modal-body-custom[b-yd0m2rglsx],
    .modal-footer-custom[b-yd0m2rglsx] {
        padding: 1rem;
    }

    .permission-chips .badge[b-yd0m2rglsx] {
        font-size: 0.75rem;
        padding: 0.25rem 0.5rem;
    }
}
/* /Components/Identity/Disable2FAModal.razor.rz.scp.css */
/* Disable 2FA Modal Styles - Using Theme Variables */

.disable-2fa-modal[b-6cah0mpr0y] {
    max-width: 500px;
    margin: 0 auto;
}

.modal-header-custom[b-6cah0mpr0y] {
    display: flex;
    align-items: center;
    padding: 1.5rem;
    border-bottom: 1px solid var(--border-color);
}

.modal-body-custom[b-6cah0mpr0y] {
    padding: 2rem 1.5rem;
}

.modal-footer-custom[b-6cah0mpr0y] {
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}

/* Consequences List */
.consequences-list[b-6cah0mpr0y] {
    padding-left: 1.5rem;
    margin: 1rem 0;
}

.consequences-list li[b-6cah0mpr0y] {
    margin-bottom: 0.75rem;
    color: var(--text-primary);
}

.consequences-list li:last-child[b-6cah0mpr0y] {
    margin-bottom: 0;
}

/* Confirmation Container */
.confirmation-container[b-6cah0mpr0y] {
    background: var(--bg-body);
    padding: 1.5rem;
    border-radius: 8px;
}

/* Responsive Design */
@media (max-width: 576px) {
    .modal-body-custom[b-6cah0mpr0y] {
        padding: 1.5rem 1rem;
    }

    .modal-footer-custom[b-6cah0mpr0y] {
        flex-direction: column-reverse;
    }

    .modal-footer-custom button[b-6cah0mpr0y] {
        width: 100%;
    }
}
/* /Components/Identity/Enable2FAModal.razor.rz.scp.css */
/* Enable 2FA Modal Styles - Using Theme Variables */

.enable-2fa-modal[b-h6vnkzsqx7] {
    max-width: 600px;
    margin: 0 auto;
}

.modal-header-custom[b-h6vnkzsqx7] {
    display: flex;
    align-items: center;
    padding: 1.5rem;
    border-bottom: 1px solid var(--border-color);
}

.modal-body-custom[b-h6vnkzsqx7] {
    padding: 2rem 1.5rem;
    max-height: 70vh;
    overflow-y: auto;
}

.modal-footer-custom[b-h6vnkzsqx7] {
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
}

/* QR Code Container */
.qr-code-container[b-h6vnkzsqx7] {
    background: var(--bg-body);
    border-radius: 12px;
    padding: 2rem;
}

.qr-code-wrapper[b-h6vnkzsqx7] {
    background: var(--bg-surface);
    padding: 1.5rem;
    border-radius: 8px;
    display: inline-block;
    box-shadow: var(--shadow-md);
}

.qr-code-image[b-h6vnkzsqx7] {
    width: 200px;
    height: 200px;
    display: block;
}

/* Manual Key Container */
.manual-key-container .font-monospace[b-h6vnkzsqx7] {
    letter-spacing: 0.05em;
    font-size: 0.875rem;
}

/* Backup Codes Grid */
.backup-codes-grid[b-h6vnkzsqx7] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.backup-code-item[b-h6vnkzsqx7] {
    background: var(--bg-body);
    padding: 0.75rem;
    border-radius: 6px;
    text-align: center;
    border: 1px solid var(--theme-gray-300);
}

.backup-code-item code[b-h6vnkzsqx7] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    letter-spacing: 0.1em;
}

/* Setup Steps */
.setup-steps[b-h6vnkzsqx7] {
    padding-left: 1.5rem;
    margin: 0;
}

.setup-steps li[b-h6vnkzsqx7] {
    margin-bottom: 0.75rem;
    color: var(--text-primary);
}

.setup-steps li:last-child[b-h6vnkzsqx7] {
    margin-bottom: 0;
}

/* Verification Container */
.verification-container input[type="text"][b-h6vnkzsqx7] {
    font-size: 1.125rem;
    letter-spacing: 0.2em;
    text-align: center;
    font-weight: 600;
}

/* Responsive Design */
@media (max-width: 576px) {
    .modal-body-custom[b-h6vnkzsqx7] {
        padding: 1.5rem 1rem;
    }

    .qr-code-container[b-h6vnkzsqx7] {
        padding: 1rem;
    }

    .qr-code-image[b-h6vnkzsqx7] {
        width: 160px;
        height: 160px;
    }

    .backup-codes-grid[b-h6vnkzsqx7] {
        grid-template-columns: 1fr;
    }

    .verification-container .d-flex[b-h6vnkzsqx7] {
        flex-direction: column;
    }

    .verification-container input[type="text"][b-h6vnkzsqx7] {
        max-width: 100% !important;
    }
}
/* /Components/Identity/PermissionMatrixView.razor.rz.scp.css */
/* Permission Matrix Styles - Using Theme Variables */

.permission-matrix[b-ush7ixoql6] {
    background: var(--bg-surface);
    border-radius: 12px;
    padding: 1.5rem;
}

/* Matrix Header */
.matrix-header h5[b-ush7ixoql6] {
    color: var(--text-primary);
    font-weight: 600;
    margin: 0;
}

/* Category Section */
.category-section[b-ush7ixoql6] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
    transition: all 0.3s ease;
}

.category-section:hover[b-ush7ixoql6] {
    box-shadow: var(--shadow-sm);
}

.category-header[b-ush7ixoql6] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    color: white;
    padding: 1rem 1.5rem;
    cursor: pointer;
    user-select: none;
    transition: all 0.2s ease;
}

.category-header:hover[b-ush7ixoql6] {
    opacity: 0.95;
}

.category-header h6[b-ush7ixoql6] {
    color: white;
    font-weight: 600;
    margin: 0;
}

.category-header i[b-ush7ixoql6] {
    font-size: 1.25rem;
    transition: transform 0.3s ease;
}

.category-header .badge[b-ush7ixoql6] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
}

/* Matrix Grid */
.matrix-grid[b-ush7ixoql6] {
    padding: 0;
    background: var(--bg-surface);
}

.matrix-grid table[b-ush7ixoql6] {
    margin: 0;
}

.matrix-grid thead[b-ush7ixoql6] {
    background: var(--bg-body);
}

.matrix-grid thead th[b-ush7ixoql6] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
    border-color: var(--theme-gray-300);
    padding: 0.75rem;
    vertical-align: middle;
}

.matrix-grid thead th i[b-ush7ixoql6] {
    font-size: 1rem;
    margin-right: 0.25rem;
}

.matrix-grid tbody td[b-ush7ixoql6] {
    padding: 0.75rem;
    vertical-align: middle;
    border-color: var(--theme-gray-300);
}

.resource-name[b-ush7ixoql6] {
    font-weight: 500;
    color: var(--text-primary);
}

.permission-cell[b-ush7ixoql6] {
    background: var(--bg-surface);
    transition: background-color 0.2s ease;
}

.permission-cell:hover[b-ush7ixoql6] {
    background: var(--bg-body);
}

.disabled-cell[b-ush7ixoql6] {
    background: var(--bg-body);
    cursor: not-allowed;
}

/* Checkbox Styling */
.permission-cell[b-ush7ixoql6]  .rz-chkbox {
    margin: 0 auto;
    display: flex;
    justify-content: center;
}

.permission-cell[b-ush7ixoql6]  .rz-chkbox-box {
    width: 24px;
    height: 24px;
    border-width: 2px;
    border-radius: 4px;
}

.permission-cell[b-ush7ixoql6]  .rz-chkbox-box.rz-state-active {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-green) 100%);
    border-color: var(--theme-success);
}

.permission-cell[b-ush7ixoql6]  .rz-chkbox-icon {
    font-size: 14px;
}

/* Matrix Footer */
.matrix-footer[b-ush7ixoql6] {
    background: var(--bg-body);
    padding: 1rem 1.5rem;
    border-radius: 8px;
}

/* Badge Colors */
.badge.bg-danger[b-ush7ixoql6] {
    background-color: var(--theme-danger) !important;
}

.badge.bg-success[b-ush7ixoql6] {
    background-color: var(--theme-success) !important;
}

.badge.bg-warning[b-ush7ixoql6] {
    background-color: var(--theme-warning) !important;
}

/* Responsive Design */
@media (max-width: 1200px) {
    .matrix-grid[b-ush7ixoql6] {
        overflow-x: auto;
    }

    .matrix-grid table[b-ush7ixoql6] {
        min-width: 800px;
    }
}

@media (max-width: 768px) {
    .permission-matrix[b-ush7ixoql6] {
        padding: 1rem;
    }

    .category-header[b-ush7ixoql6] {
        padding: 0.75rem 1rem;
    }

    .matrix-header[b-ush7ixoql6] {
        flex-direction: column;
        align-items: flex-start !important;
    }

    .matrix-header > div[b-ush7ixoql6] {
        width: 100%;
        margin-bottom: 1rem;
    }

    .matrix-header > div:last-child[b-ush7ixoql6] {
        margin-bottom: 0;
    }

    .matrix-grid thead th[b-ush7ixoql6] {
        font-size: 0.75rem;
        padding: 0.5rem;
    }

    .matrix-grid tbody td[b-ush7ixoql6] {
        padding: 0.5rem;
    }
}

/* Animation */
@keyframes expandCategory-b-ush7ixoql6 {
    from {
        opacity: 0;
        max-height: 0;
    }
    to {
        opacity: 1;
        max-height: 1000px;
    }
}

.category-section .matrix-grid[b-ush7ixoql6] {
    animation: expandCategory-b-ush7ixoql6 0.3s ease;
}

/* Selection Highlight */
.permission-cell:has(.rz-chkbox-box.rz-state-active)[b-ush7ixoql6] {
    background: color-mix(in srgb, var(--theme-success) 10%, transparent);
}

/* Empty State */
.permission-matrix .spinner-border[b-ush7ixoql6] {
    width: 3rem;
    height: 3rem;
}
/* /Components/Identity/SessionCard.razor.rz.scp.css */
/* Session Card Styles - Using Theme Variables */

.session-card[b-2hc7f6vh12] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1rem;
    transition: all 0.3s ease;
}

.session-card:hover[b-2hc7f6vh12] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.session-card.active-session[b-2hc7f6vh12] {
    border-left: 4px solid var(--theme-success);
}

.session-card.expired-session[b-2hc7f6vh12] {
    border-left: 4px solid var(--theme-gray-600);
    background: var(--bg-body);
    opacity: 0.8;
}

/* Session Icon */
.session-icon[b-2hc7f6vh12] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.expired-session .session-icon[b-2hc7f6vh12] {
    background: linear-gradient(135deg, var(--theme-gray-600) 0%, var(--theme-gray-700) 100%);
}

/* Session Info */
.session-title[b-2hc7f6vh12] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.session-meta[b-2hc7f6vh12] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Session Details */
.session-details[b-2hc7f6vh12] {
    margin-top: 1rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.session-detail-row[b-2hc7f6vh12] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.session-detail-row i[b-2hc7f6vh12] {
    color: var(--text-secondary);
    font-size: 1rem;
}

/* Session Actions */
.session-actions[b-2hc7f6vh12] {
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* Responsive Design */
@media (max-width: 768px) {
    .session-details[b-2hc7f6vh12] {
        grid-template-columns: 1fr;
    }

    .session-card[b-2hc7f6vh12] {
        padding: 1rem;
    }

    .session-icon[b-2hc7f6vh12] {
        width: 40px;
        height: 40px;
        font-size: 1.25rem;
    }
}
/* /Components/Identity/UserBulkActionsToolbar.razor.rz.scp.css */
/* User Bulk Actions Toolbar - Using Theme Variables */

.user-bulk-toolbar[b-mu9n0d6zo1] {
    position: sticky;
    top: 0;
    z-index: 100;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    color: white;
    padding: 1rem 1.5rem;
    border-radius: 12px;
    box-shadow: 0 4px 16px color-mix(in srgb, var(--theme-primary) 30%, transparent);
    margin-bottom: 1.5rem;
    animation: slideDown 0.3s ease;
}

@keyframes    to-b-mu9n0d6zo1 {
        opacity: 1;
        transform: translateY(0);
    }
}

.toolbar-container[b-mu9n0d6zo1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
}

.toolbar-info[b-mu9n0d6zo1] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.toolbar-info .rz-chkbox-box[b-mu9n0d6zo1] {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.5);
}

.toolbar-info .rz-chkbox-box.rz-state-active[b-mu9n0d6zo1] {
    background: white; /* intentional: white check on primary-coloured toolbar */
    border-color: white; /* intentional: white check on primary-coloured toolbar */
}

.selected-count[b-mu9n0d6zo1] {
    font-size: 1rem;
    color: white;
}

.selected-count strong[b-mu9n0d6zo1] {
    font-weight: 700;
    font-size: 1.125rem;
}

.toolbar-actions[b-mu9n0d6zo1] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* FshSplitButton styling in toolbar */
.user-bulk-toolbar[b-mu9n0d6zo1]  .fsh-split-btn-container {
    flex-shrink: 0;
}

.user-bulk-toolbar[b-mu9n0d6zo1]  .fsh-split-light {
    background: white; /* intentional: white pill on primary-coloured toolbar */
    color: var(--theme-primary);
}

.user-bulk-toolbar[b-mu9n0d6zo1]  .fsh-split-light:hover:not(:disabled) {
    background: var(--bg-body);
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
}

/* Responsive Design */
@media (max-width: 768px) {
    .user-bulk-toolbar[b-mu9n0d6zo1] {
        padding: 1rem;
    }

    .toolbar-container[b-mu9n0d6zo1] {
        flex-direction: column;
        align-items: stretch;
    }

    .toolbar-info[b-mu9n0d6zo1],
    .toolbar-actions[b-mu9n0d6zo1] {
        width: 100%;
        justify-content: center;
    }

    .toolbar-actions[b-mu9n0d6zo1] {
        margin-top: 0.5rem;
    }
}
/* /Components/Multitenancy/TenantNavigationTabs.razor.rz.scp.css */
/* ============ Tenant Navigation Tabs ============ */
.tenant-nav-tabs[b-x8ma8571ry] {
    margin-bottom: 0.75rem;
}

.tabs-inline[b-x8ma8571ry] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.2rem;
    gap: 0.125rem;
    overflow-x: auto;
}

.tab-compact[b-x8ma8571ry] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.4rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    white-space: nowrap;
    transition: all 0.15s ease;
    text-decoration: none;
}

.tab-compact:hover[b-x8ma8571ry] {
    color: var(--text-primary);
    background: var(--bg-hover);
    text-decoration: none;
}

.tab-compact.active[b-x8ma8571ry] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
    font-weight: 600;
}

.tab-compact i[b-x8ma8571ry] {
    font-size: 1rem;
}

@media (max-width: 768px) {
    .tabs-inline[b-x8ma8571ry] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
}

@media (max-width: 480px) {
    .tab-compact span[b-x8ma8571ry] {
        display: none;
    }

    .tab-compact[b-x8ma8571ry] {
        padding: 0.4rem 0.5rem;
    }
}
/* /Components/Public/GuestDocumentLibrary.razor.rz.scp.css */
/* ========================================
   GUEST DOCUMENT LIBRARY COMPONENT
   Folder-based document organization for guest applicants
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

.guest-document-library[b-o3dt22nafm] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ========================================
   PAYMENT NOTICE BANNER
   ======================================== */

.payment-notice[b-o3dt22nafm] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
    border-radius: 10px;
    border-left: 4px solid var(--theme-warning);
}

.payment-notice-icon[b-o3dt22nafm] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.payment-notice-content strong[b-o3dt22nafm] {
    display: block;
    font-size: 0.875rem;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

.payment-notice-content p[b-o3dt22nafm] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* ========================================
   FOLDER LIST
   ======================================== */

.folder-list[b-o3dt22nafm] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ========================================
   FOLDER ITEM
   ======================================== */

.folder-item[b-o3dt22nafm] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.folder-item:hover[b-o3dt22nafm] {
    border-color: var(--theme-primary-light);
}

.folder-item.locked[b-o3dt22nafm] {
    opacity: 0.85;
}

.folder-item.locked:hover[b-o3dt22nafm] {
    border-color: var(--border-color);
}

.folder-item.admission-folder[b-o3dt22nafm] {
    border-color: var(--theme-success);
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.03) 0%, var(--bg-surface) 100%);
}

/* ========================================
   FOLDER HEADER
   ======================================== */

.folder-header[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    cursor: pointer;
    transition: background 0.2s ease;
}

.folder-header:hover[b-o3dt22nafm] {
    background: var(--bg-surface-tertiary);
}

.folder-item.locked .folder-header[b-o3dt22nafm] {
    cursor: pointer;
}

.folder-icon[b-o3dt22nafm] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.folder-header:hover .folder-icon[b-o3dt22nafm] {
    transform: scale(1.05);
}

/* Folder Icon Color Variants */
.folder-icon.info[b-o3dt22nafm] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.folder-icon.primary[b-o3dt22nafm] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-primary);
}

.folder-icon.warning[b-o3dt22nafm] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.folder-icon.success[b-o3dt22nafm] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.folder-icon.purple[b-o3dt22nafm] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.folder-icon.teal[b-o3dt22nafm] {
    background: rgba(20, 184, 166, 0.1);
    color: var(--theme-teal);
}

.folder-icon.secondary[b-o3dt22nafm] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.folder-icon.admission[b-o3dt22nafm] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
}

.folder-info[b-o3dt22nafm] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.folder-name[b-o3dt22nafm] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.folder-meta[b-o3dt22nafm] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.folder-item.locked .folder-meta[b-o3dt22nafm] {
    color: var(--theme-warning);
}

/* ========================================
   FOLDER BADGES
   ======================================== */

.folder-badge[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.folder-badge.locked[b-o3dt22nafm] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.folder-badge.available[b-o3dt22nafm] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.folder-badge.success[b-o3dt22nafm] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
}

.folder-badge.warning[b-o3dt22nafm] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.folder-badge i[b-o3dt22nafm] {
    font-size: 0.75rem;
}

.folder-toggle[b-o3dt22nafm] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    color: var(--text-muted);
    transition: all 0.2s ease;
}

.folder-header:hover .folder-toggle[b-o3dt22nafm] {
    background: var(--bg-body);
    color: var(--theme-primary);
}

.folder-toggle i[b-o3dt22nafm] {
    font-size: 1.25rem;
    transition: transform 0.2s ease;
}

/* ========================================
   FOLDER CONTENT
   ======================================== */

.folder-content[b-o3dt22nafm] {
    padding: 0.5rem;
    background: var(--bg-surface-tertiary);
    border-top: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.folder-item.admission-folder .folder-content[b-o3dt22nafm] {
    background: rgba(16, 185, 129, 0.03);
}

/* ========================================
   ACCESS RESTRICTED STATE
   ======================================== */

.access-restricted[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    background: var(--bg-surface);
    border: 1px dashed var(--border-color);
    border-radius: 8px;
}

.restricted-icon[b-o3dt22nafm] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.restricted-info h5[b-o3dt22nafm] {
    margin: 0 0 0.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.restricted-info p[b-o3dt22nafm] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* ========================================
   FOLDER EMPTY STATE
   ======================================== */

.folder-empty[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1.25rem;
    color: var(--text-muted);
    font-size: 0.8125rem;
}

.folder-empty i[b-o3dt22nafm] {
    font-size: 1.25rem;
}

/* ========================================
   FILE ITEM
   ======================================== */

.file-item[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    text-align: left;
}

.file-item:hover:not(:disabled):not(.locked)[b-o3dt22nafm] {
    border-color: var(--theme-primary);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.1);
    transform: translateX(4px);
}

.file-item:disabled[b-o3dt22nafm] {
    cursor: not-allowed;
    opacity: 0.7;
}

.file-item.admission-letter[b-o3dt22nafm] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.05) 0%, var(--bg-surface) 100%);
    border-color: rgba(16, 185, 129, 0.3);
}

.file-item.admission-letter:not(.locked):hover[b-o3dt22nafm] {
    border-color: var(--theme-success);
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.15);
}

.file-item.admission-letter.locked[b-o3dt22nafm] {
    cursor: default;
    opacity: 0.8;
}

/* ========================================
   FILE ICON
   ======================================== */

.file-icon[b-o3dt22nafm] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.file-icon.pdf[b-o3dt22nafm] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger-emphasis);
}

.file-icon.word[b-o3dt22nafm] {
    background: rgba(37, 99, 235, 0.1);
    color: var(--theme-info-emphasis);
}

.file-icon.excel[b-o3dt22nafm] {
    background: rgba(22, 163, 74, 0.1);
    color: var(--theme-success-emphasis);
}

.file-icon.powerpoint[b-o3dt22nafm] {
    background: rgba(234, 88, 12, 0.1);
    color: var(--theme-warning-emphasis);
}

.file-icon.image[b-o3dt22nafm] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.file-icon.archive[b-o3dt22nafm] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

.file-icon.default[b-o3dt22nafm] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

/* ========================================
   FILE INFO
   ======================================== */

.file-info[b-o3dt22nafm] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.file-name[b-o3dt22nafm] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.file-meta[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.file-type[b-o3dt22nafm] {
    padding: 0.125rem 0.375rem;
    background: var(--bg-surface-secondary);
    border-radius: 4px;
    font-weight: 500;
    font-size: 0.625rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.file-size[b-o3dt22nafm] {
    color: var(--text-muted);
}

.file-desc[b-o3dt22nafm] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.file-locked-reason[b-o3dt22nafm] {
    font-size: 0.75rem;
    color: var(--theme-warning);
    margin-top: 0.125rem;
}

.download-count[b-o3dt22nafm] {
    color: var(--text-muted);
    font-style: italic;
}

.download-tracker[b-o3dt22nafm] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    color: var(--text-secondary);
    font-size: 0.75rem;
}

.download-tracker i[b-o3dt22nafm] {
    font-size: 0.8rem;
    opacity: 0.7;
}

.downloads-remaining[b-o3dt22nafm] {
    font-weight: 600;
    font-size: 0.7rem;
}

.downloads-remaining.success[b-o3dt22nafm] {
    color: var(--theme-success);
}

.downloads-remaining.danger[b-o3dt22nafm] {
    color: var(--theme-danger);
}

/* ========================================
   FILE ACTIONS
   ======================================== */

.file-actions[b-o3dt22nafm] {
    flex-shrink: 0;
}

.action-buttons[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.download-btn[b-o3dt22nafm],
.view-btn[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: none;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.download-btn[b-o3dt22nafm] {
    background: var(--theme-primary);
    color: white;
}

.download-btn:hover:not(:disabled)[b-o3dt22nafm] {
    background: var(--theme-primary-emphasis);
}

.download-btn:disabled[b-o3dt22nafm] {
    opacity: 0.6;
    cursor: not-allowed;
}

.view-btn[b-o3dt22nafm] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.1), rgba(99, 102, 241, 0.05));
    color: var(--theme-primary);
    border: 1px solid rgba(99, 102, 241, 0.15);
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.8125rem;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
}

.view-btn[b-o3dt22nafm]::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, transparent 0%, rgba(99, 102, 241, 0.08) 100%);
    opacity: 0;
    transition: opacity 0.25s ease;
}

.view-btn:hover:not(:disabled)[b-o3dt22nafm] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.18), rgba(99, 102, 241, 0.1));
    border-color: rgba(99, 102, 241, 0.3);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.15);
}

.view-btn:hover:not(:disabled)[b-o3dt22nafm]::before {
    opacity: 1;
}

.view-btn:hover:not(:disabled) .btn-icon-arrow[b-o3dt22nafm] {
    transform: translateX(3px);
}

.view-btn:active:not(:disabled)[b-o3dt22nafm] {
    transform: translateY(0) scale(0.98);
    box-shadow: 0 1px 4px rgba(99, 102, 241, 0.1);
}

.view-btn:disabled[b-o3dt22nafm] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-icon-view[b-o3dt22nafm] {
    font-size: 1rem;
    flex-shrink: 0;
}

.btn-icon-arrow[b-o3dt22nafm] {
    font-size: 0.75rem;
    opacity: 0.6;
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1);
    margin-left: 0.125rem;
    flex-shrink: 0;
}

.file-item.admission-letter .download-btn[b-o3dt22nafm] {
    background: var(--theme-success);
}

.file-item.admission-letter .download-btn:hover:not(:disabled)[b-o3dt22nafm] {
    background: var(--theme-success-emphasis);
}

.file-item.admission-letter .view-btn[b-o3dt22nafm] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.12), rgba(16, 185, 129, 0.05));
    color: var(--theme-success);
    border-color: rgba(16, 185, 129, 0.2);
}

.file-item.admission-letter .view-btn:hover:not(:disabled)[b-o3dt22nafm] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.2), rgba(16, 185, 129, 0.1));
    border-color: rgba(16, 185, 129, 0.35);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.15);
}

.locked-badge[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.downloading[b-o3dt22nafm] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.spinning[b-o3dt22nafm] {
    animation: spin-b-o3dt22nafm 1s linear infinite;
}

@keyframes spin-b-o3dt22nafm {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* ========================================
   LIBRARY EMPTY STATE
   ======================================== */

.library-empty[b-o3dt22nafm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    text-align: center;
    background: var(--bg-surface-tertiary);
    border: 2px dashed var(--border-color);
    border-radius: 12px;
}

.empty-icon[b-o3dt22nafm] {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: var(--bg-surface);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    margin-bottom: 1rem;
}

.library-empty h5[b-o3dt22nafm] {
    margin: 0 0 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.library-empty p[b-o3dt22nafm] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--text-secondary);
    max-width: 300px;
}

/* ========================================
   RESPONSIVE DESIGN
   ======================================== */

@media (max-width: 640px) {
    .payment-notice[b-o3dt22nafm] {
        flex-direction: column;
        gap: 0.5rem;
        padding: 0.875rem 1rem;
    }

    .folder-header[b-o3dt22nafm] {
        padding: 0.75rem;
        gap: 0.625rem;
    }

    .folder-icon[b-o3dt22nafm] {
        width: 36px;
        height: 36px;
        font-size: 1.125rem;
    }

    .folder-badge[b-o3dt22nafm] {
        padding: 0.125rem 0.5rem;
        font-size: 0.625rem;
    }

    .folder-badge span[b-o3dt22nafm] {
        display: none;
    }

    .file-item[b-o3dt22nafm] {
        padding: 0.625rem 0.75rem;
        gap: 0.625rem;
    }

    .file-icon[b-o3dt22nafm] {
        width: 32px;
        height: 32px;
        font-size: 1rem;
    }

    .action-buttons[b-o3dt22nafm] {
        flex-direction: column;
        gap: 0.25rem;
    }

    .download-btn[b-o3dt22nafm],
    .view-btn[b-o3dt22nafm] {
        padding: 0.375rem 0.625rem;
        font-size: 0.6875rem;
        justify-content: center;
    }

    .btn-icon-arrow[b-o3dt22nafm] {
        display: none;
    }

    .access-restricted[b-o3dt22nafm] {
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

}

/* ========================================
   REDUCED MOTION
   ======================================== */

@media (prefers-reduced-motion: reduce) {
    .folder-item[b-o3dt22nafm],
    .folder-header[b-o3dt22nafm],
    .folder-icon[b-o3dt22nafm],
    .folder-toggle i[b-o3dt22nafm],
    .file-item[b-o3dt22nafm],
    .download-btn[b-o3dt22nafm],
    .view-btn[b-o3dt22nafm],
    .btn-icon-arrow[b-o3dt22nafm] {
        transition: none;
    }

    .file-item:hover:not(:disabled):not(.locked)[b-o3dt22nafm] {
        transform: none;
    }

    .folder-header:hover .folder-icon[b-o3dt22nafm] {
        transform: none;
    }

    .spinning[b-o3dt22nafm] {
        animation: none;
    }
}
/* /Components/Recruiter/Analytics/ApplicationTrendChart.razor.rz.scp.css */
/**
 * ApplicationTrendChart - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* ========================================
   CHART CONTAINER
   ======================================== */

.chart-container[b-zyzqyh0n5h] {
    min-height: 400px;
    padding: 1rem;
    background: var(--bg-surface);
    border-radius: var(--radius-lg, 8px);
}
/* /Components/Recruiter/Analytics/ConversionFunnelChart.razor.rz.scp.css */
/**
 * ConversionFunnelChart - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* ========================================
   FUNNEL CONTAINER
   ======================================== */

.funnel-container[b-jbrg05ij9j] {
    padding: 1rem;
}

/* ========================================
   FUNNEL STAGES
   ======================================== */

.funnel-stages[b-jbrg05ij9j] {
    margin: 2rem 0;
}

.funnel-stage[b-jbrg05ij9j] {
    margin-bottom: 1.5rem;
    cursor: pointer;
}

/* ========================================
   FUNNEL BAR
   ======================================== */

.funnel-bar-container[b-jbrg05ij9j] {
    display: flex;
    justify-content: center;
    margin-bottom: 0.5rem;
}

.funnel-bar[b-jbrg05ij9j] {
    min-height: 60px;
    border-radius: var(--radius-lg, 8px);
    transition: all var(--sidenav-transition-fast, 0.3s);
    box-shadow: var(--shadow-sm, 0 2px 4px rgba(0, 0, 0, 0.1));
    position: relative;
    overflow: hidden;
}

.funnel-bar:hover[b-jbrg05ij9j] {
    transform: scale(1.02);
    box-shadow: var(--shadow-md, 0 4px 8px rgba(0, 0, 0, 0.15));
}

.funnel-bar[b-jbrg05ij9j]::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(255, 255, 255, 0) 100%);
}

/* ========================================
   FUNNEL BAR CONTENT
   ======================================== */

.funnel-bar-content[b-jbrg05ij9j] {
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: white;
    position: relative;
    z-index: 1;
}

.funnel-bar-label[b-jbrg05ij9j] {
    font-weight: var(--font-semibold, 600);
    font-size: 0.875rem;
}

.funnel-bar-count[b-jbrg05ij9j] {
    font-size: 1.5rem;
    font-weight: var(--font-bold, 700);
}

/* ========================================
   CONVERSION INDICATOR
   ======================================== */

.conversion-indicator[b-jbrg05ij9j] {
    text-align: center;
    padding: 0.5rem;
}

.conversion-stat[b-jbrg05ij9j] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: var(--recruiter-text-secondary);
}
/* /Components/Recruiter/Analytics/CustomReportBuilder.razor.rz.scp.css */
/**
 * CustomReportBuilder - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* ========================================
   STEP CONTENT
   ======================================== */

.step-content[b-zfgdk0lnkg] {
    min-height: 400px;
    padding: 1rem 0;
}

/* ========================================
   REPORT TYPE CARD
   ======================================== */

.report-type-card[b-zfgdk0lnkg] {
    padding: 1.5rem;
    border: 2px solid var(--border-subtle);
    border-radius: var(--radius-lg, 8px);
    text-align: center;
    cursor: pointer;
    transition: all var(--sidenav-transition-fast, 0.2s);
}

.report-type-card:hover[b-zfgdk0lnkg] {
    border-color: var(--recruiter-primary-teal);
    background: rgba(26, 179, 148, 0.05);
}

.report-type-card.selected[b-zfgdk0lnkg] {
    border-color: var(--recruiter-primary-teal);
    background: rgba(26, 179, 148, 0.1);
}

/* ========================================
   METRIC LIST
   ======================================== */

.metric-list[b-zfgdk0lnkg] {
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg, 8px);
    padding: 1rem;
    min-height: 300px;
    max-height: 400px;
    overflow-y: auto;
}

.metric-item[b-zfgdk0lnkg] {
    padding: 0.75rem;
    border-radius: var(--radius-md, 6px);
    margin-bottom: 0.5rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    transition: background var(--sidenav-transition-fast, 0.2s);
}

.metric-item:hover[b-zfgdk0lnkg] {
    background: var(--recruiter-gray-50);
}

.metric-item.selected[b-zfgdk0lnkg] {
    background: rgba(26, 179, 148, 0.05);
    border: 1px solid var(--recruiter-primary-teal);
}

/* ========================================
   PREVIEW CONTAINER
   ======================================== */

.preview-container[b-zfgdk0lnkg] {
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg, 8px);
    padding: 1rem;
    background: var(--bg-surface);
}

/* ========================================
   TEMPLATE LIST
   ======================================== */

.template-list[b-zfgdk0lnkg] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.template-item[b-zfgdk0lnkg] {
    padding: 1rem;
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md, 6px);
    transition: background var(--sidenav-transition-fast, 0.2s);
}

.template-item:hover[b-zfgdk0lnkg] {
    background: var(--recruiter-gray-50);
}
/* /Components/Recruiter/Analytics/StageDistributionChart.razor.rz.scp.css */
/**
 * StageDistributionChart - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* ========================================
   CHART CONTAINER
   ======================================== */

.chart-container[b-xfkgfi0dpe] {
    min-height: 400px;
    padding: 1rem;
    background: var(--bg-surface);
    border-radius: var(--radius-lg, 8px);
}

/* ========================================
   BREAKDOWN TABLE
   ======================================== */

.breakdown-table[b-xfkgfi0dpe] {
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-lg, 8px);
    overflow: hidden;
}

.breakdown-row[b-xfkgfi0dpe] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    border-bottom: 1px solid var(--border-subtle);
    cursor: pointer;
    transition: background var(--sidenav-transition-fast, 0.2s);
}

.breakdown-row:last-child[b-xfkgfi0dpe] {
    border-bottom: none;
}

.breakdown-row:hover[b-xfkgfi0dpe] {
    background: var(--recruiter-gray-50);
}

/* ========================================
   BREAKDOWN STAGE
   ======================================== */

.breakdown-stage[b-xfkgfi0dpe] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
}

.stage-color-indicator[b-xfkgfi0dpe] {
    width: 12px;
    height: 12px;
    border-radius: var(--radius-full, 50%);
    flex-shrink: 0;
}

.stage-info[b-xfkgfi0dpe] {
    flex: 1;
}

.stage-name[b-xfkgfi0dpe] {
    font-size: 0.875rem;
    font-weight: var(--font-medium, 500);
    color: var(--recruiter-text-primary);
}

/* ========================================
   BREAKDOWN METRICS
   ======================================== */

.breakdown-metrics[b-xfkgfi0dpe] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.breakdown-count[b-xfkgfi0dpe] {
    font-size: 1.25rem;
    font-weight: var(--font-semibold, 600);
    color: var(--recruiter-primary-teal);
    min-width: 50px;
    text-align: right;
}

.breakdown-percentage[b-xfkgfi0dpe] {
    font-size: 0.875rem;
    font-weight: var(--font-medium, 500);
    color: var(--recruiter-text-secondary);
    min-width: 50px;
    text-align: right;
}
/* /Components/Recruiter/Collaboration/ActivityFeed.razor.rz.scp.css */
/**
 * ActivityFeed - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 *
 * Dark mode rules use the .activity-feed parent selector to boost
 * specificity above any global .activity-item rules in app.css /
 * bootstrap-theme.css that load AFTER WebApp.styles.css. Nested cards
 * use --bg-surface-elevated (tenant-stable) instead of --bg-surface so
 * tenant palette overrides cannot blow out the dark-mode appearance.
 */

/* ========================================
   ACTIVITY ITEM
   ======================================== */

.activity-feed .activity-item[b-cyg3bb0z5h] {
    padding: 0.75rem;
    border-radius: var(--radius-md, 6px);
    transition: all var(--sidenav-transition-fast, 0.2s);
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-primary);
}

.activity-feed .activity-item:hover[b-cyg3bb0z5h] {
    background: var(--bg-hover);
    border-color: var(--theme-primary);
    box-shadow: var(--shadow-sm);
}

.activity-feed .activity-item.unread[b-cyg3bb0z5h] {
    background: var(--theme-primary-subtle);
    border-left: 3px solid var(--theme-primary);
}

[data-bs-theme="dark"] .activity-feed .activity-item[b-cyg3bb0z5h] {
    background-color: var(--bg-surface-elevated);
    background-image: none;
    border-color: var(--border-color);
    color: var(--text-primary);
}

[data-bs-theme="dark"] .activity-feed .activity-item:hover[b-cyg3bb0z5h] {
    background-color: var(--bg-surface-secondary);
    border-color: var(--theme-primary);
}

[data-bs-theme="dark"] .activity-feed .activity-item.unread[b-cyg3bb0z5h] {
    background-color: rgba(26, 179, 148, 0.15);
    border-color: var(--theme-primary);
}

/* ========================================
   ACTIVITY ICON
   ======================================== */

.activity-icon[b-cyg3bb0z5h] {
    width: 36px;
    height: 36px;
    border-radius: var(--radius-full, 50%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* ========================================
   ACTIVITY AVATAR
   ======================================== */

.activity-avatar-small[b-cyg3bb0z5h] {
    width: 24px;
    height: 24px;
    border-radius: var(--radius-full, 50%);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: var(--font-semibold, 600);
    color: white;
}

/* ========================================
   UNREAD DOT
   ======================================== */

.unread-dot[b-cyg3bb0z5h] {
    width: 8px;
    height: 8px;
    border-radius: var(--radius-full, 50%);
    background: var(--theme-primary);
    flex-shrink: 0;
    animation: pulse-b-cyg3bb0z5h 2s infinite;
}

@keyframes pulse-b-cyg3bb0z5h {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* ========================================
   STATUS INDICATOR
   ======================================== */

.status-indicator[b-cyg3bb0z5h] {
    display: inline-block;
    width: 8px;
    height: 8px;
    border-radius: var(--radius-full, 50%);
    margin-right: 0.25rem;
}

.status-connected[b-cyg3bb0z5h] {
    background: var(--recruiter-success);
    animation: pulse-b-cyg3bb0z5h 2s infinite;
}

.status-disconnected[b-cyg3bb0z5h] {
    background: var(--recruiter-gray-400);
}
/* /Components/Recruiter/Forms/TimelineVisualization.razor.rz.scp.css */
/* ========================================
   Timeline Visualization Component
   Theme-aligned with rejection state support
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

.timeline-container[b-gejwbfoxvt] {
    width: 100%;
}

.timeline[b-gejwbfoxvt] {
    position: relative;
    padding-left: 2rem;
}

.timeline[b-gejwbfoxvt]::before {
    content: '';
    position: absolute;
    left: 0.75rem;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--border-color);
}

/* Timeline Item */
.timeline-item[b-gejwbfoxvt] {
    position: relative;
    padding-bottom: 1.5rem;
    display: flex;
    gap: 1rem;
}

.timeline-item:last-child[b-gejwbfoxvt] {
    padding-bottom: 0;
}

/* Timeline Dot - Base */
.timeline-dot[b-gejwbfoxvt] {
    position: absolute;
    left: -2rem;
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1;
    flex-shrink: 0;
}

/* Completed Stage (Accepted) */
.timeline-dot.completed[b-gejwbfoxvt] {
    background: var(--theme-success);
    color: white;
    box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
}

/* Rejected Stage - Hard Reject */
.timeline-dot.rejected[b-gejwbfoxvt] {
    background: var(--theme-danger);
    color: white;
    box-shadow: 0 0 0 4px rgba(239, 68, 68, 0.2);
}

/* Rejected Stage - Conditional */
.timeline-dot.rejected-conditional[b-gejwbfoxvt] {
    background: var(--theme-warning);
    color: white;
    box-shadow: 0 0 0 4px rgba(245, 158, 11, 0.2);
}

/* Rejected Stage - Waitlisted */
.timeline-dot.rejected-waitlisted[b-gejwbfoxvt] {
    background: var(--theme-info);
    color: white;
    box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.2);
}

/* Active Stage */
.timeline-dot.active[b-gejwbfoxvt] {
    background: var(--theme-primary);
    color: white;
    box-shadow: 0 0 0 4px rgba(99, 102, 241, 0.2);
    animation: pulse 2s ease-in-out infinite;
}

/* Pending Stage */
.timeline-dot.pending[b-gejwbfoxvt] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
    border: 2px dashed var(--border-color);
}

@keyframes    50%[b-gejwbfoxvt] {
        box-shadow: 0 0 0 8px rgba(99, 102, 241, 0.1);
    }
}

/* Timeline Content */
.timeline-content[b-gejwbfoxvt] {
    flex: 1;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 1rem;
    transition: all 0.2s ease;
}

.timeline-content:hover[b-gejwbfoxvt] {
    box-shadow: var(--shadow-sm);
}

/* Rejected Content Styling */
.timeline-content.rejected[b-gejwbfoxvt] {
    border-color: var(--theme-danger);
    background: rgba(239, 68, 68, 0.03);
}

.timeline-content.rejected-conditional[b-gejwbfoxvt] {
    border-color: var(--theme-warning);
    background: rgba(245, 158, 11, 0.03);
}

.timeline-content.rejected-waitlisted[b-gejwbfoxvt] {
    border-color: var(--theme-info);
    background: rgba(59, 130, 246, 0.03);
}

.timeline-content.active[b-gejwbfoxvt] {
    border: 2px solid var(--theme-primary);
    background: rgba(99, 102, 241, 0.03);
}

.timeline-content.pending[b-gejwbfoxvt] {
    opacity: 0.7;
}

/* Status Badge Styles */
.status-badge[b-gejwbfoxvt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge.completed[b-gejwbfoxvt] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-badge.rejected[b-gejwbfoxvt] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.status-badge.rejected-conditional[b-gejwbfoxvt] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-badge.rejected-waitlisted[b-gejwbfoxvt] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.status-badge.active[b-gejwbfoxvt] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.status-badge.pending[b-gejwbfoxvt] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* Rejection Info */
.rejection-info[b-gejwbfoxvt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    font-size: 0.8125rem;
}

.rejection-info.hard[b-gejwbfoxvt] {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
}

.rejection-info.conditional[b-gejwbfoxvt] {
    background: rgba(245, 158, 11, 0.08);
    color: var(--theme-warning-emphasis);
}

.rejection-info.waitlisted[b-gejwbfoxvt] {
    background: rgba(59, 130, 246, 0.08);
    color: var(--theme-info);
}

.rejection-info i[b-gejwbfoxvt] {
    font-size: 1rem;
}

/* Score Bar */
.score-bar-container[b-gejwbfoxvt] {
    height: 6px;
    background: var(--border-color);
    border-radius: 3px;
    overflow: hidden;
}

.score-bar[b-gejwbfoxvt] {
    height: 100%;
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-primary-light));
    border-radius: 3px;
    transition: width 0.3s ease;
}

/* Avatar */
.comment-avatar[b-gejwbfoxvt] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--theme-primary);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    flex-shrink: 0;
}

/* Small Text */
.small-text[b-gejwbfoxvt] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* Summary Stats */
.summary-stats[b-gejwbfoxvt] {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    margin-top: 1rem;
}

.stat-item[b-gejwbfoxvt] {
    text-align: center;
}

.stat-item .label[b-gejwbfoxvt] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-bottom: 0.25rem;
}

.stat-item .value[b-gejwbfoxvt] {
    font-size: 1.25rem;
    font-weight: 700;
}

.stat-item .value.success[b-gejwbfoxvt] {
    color: var(--theme-success);
}

.stat-item .value.danger[b-gejwbfoxvt] {
    color: var(--theme-danger);
}

.stat-item .value.info[b-gejwbfoxvt] {
    color: var(--theme-info);
}

.stat-item .value.muted[b-gejwbfoxvt] {
    color: var(--text-muted);
}

.stat-item .value.primary[b-gejwbfoxvt] {
    color: var(--theme-primary);
}
/* /Components/Recruiter/Shared/ApplicationCard.razor.rz.scp.css */
/* ApplicationCard Component Styles */
.app-card[b-ncvda9fe9b] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    transition: all 0.2s ease;
    position: relative;
    color: var(--text-primary);
}

.app-card:hover[b-ncvda9fe9b] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    border-color: var(--border-color);
}

.app-card.selected[b-ncvda9fe9b] {
    border-color: var(--theme-primary);
    background: color-mix(in srgb, var(--theme-primary) 2%, transparent);
}

.app-card.fee-blocked[b-ncvda9fe9b] {
    border-left: 3px solid var(--theme-danger);
}

/* Selection Checkbox */
.card-select[b-ncvda9fe9b] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 1;
}

/* Card header pattern consolidated in app.css */
.card-header[b-ncvda9fe9b] {
    align-items: flex-start;
    gap: 0.75rem; /* Component-specific override */
}

.applicant-info[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
    min-width: 0;
}

.avatar[b-ncvda9fe9b] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9375rem;
    color: white;
    flex-shrink: 0;
}

.avatar.high[b-ncvda9fe9b] {
    background: linear-gradient(135deg, var(--theme-success), color-mix(in srgb, var(--theme-success) 80%, black));
}

.avatar.medium[b-ncvda9fe9b] {
    background: linear-gradient(135deg, var(--theme-warning), color-mix(in srgb, var(--theme-warning) 80%, black));
}

.avatar.low[b-ncvda9fe9b] {
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-emphasis));
}

.info[b-ncvda9fe9b] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.name[b-ncvda9fe9b] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.name:hover[b-ncvda9fe9b] {
    color: var(--theme-primary);
}

.index[b-ncvda9fe9b] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: 0.125rem;
}

.badges[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.duplicate-badge[b-ncvda9fe9b] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: color-mix(in srgb, var(--theme-warning) 10%, transparent);
    color: var(--theme-warning);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
}

/* Card Body */
.card-body[b-ncvda9fe9b] {
    padding-top: 0.25rem;
}

.meta-grid[b-ncvda9fe9b] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.meta-item[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.meta-item i[b-ncvda9fe9b] {
    color: var(--text-muted);
    font-size: 0.875rem;
}

.meta-item.vacancy a[b-ncvda9fe9b] {
    color: var(--theme-primary);
    text-decoration: none;
}

.meta-item.vacancy a:hover[b-ncvda9fe9b] {
    text-decoration: underline;
}

/* Stage Section */
.card-stage[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.stage-info[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.unassigned-badge[b-ncvda9fe9b],
.assignee-badge[b-ncvda9fe9b] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 500;
}

.unassigned-badge[b-ncvda9fe9b] {
    background: color-mix(in srgb, var(--theme-danger) 10%, transparent);
    color: var(--theme-danger);
}

.assignee-badge[b-ncvda9fe9b] {
    background: color-mix(in srgb, var(--theme-primary) 10%, transparent);
    color: var(--theme-primary);
}

.fee-alert[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    background: color-mix(in srgb, var(--theme-danger) 10%, transparent);
    color: var(--theme-danger);
    font-size: 0.75rem;
    font-weight: 500;
    animation: pulse-fee-b-ncvda9fe9b 2s infinite;
}

@keyframes pulse-fee-b-ncvda9fe9b {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

/* Stage Context (Homework/Interview details) */
.stage-context[b-ncvda9fe9b] {
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    background: var(--bg-surface-secondary);
}

.context-badge[b-ncvda9fe9b] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
}

.context-badge.waiting[b-ncvda9fe9b] {
    color: var(--text-secondary);
}

.context-badge.deadline[b-ncvda9fe9b] {
    color: var(--theme-warning);
}

.context-badge.overdue[b-ncvda9fe9b] {
    color: var(--theme-danger);
}

.context-badge.scheduled[b-ncvda9fe9b] {
    color: var(--theme-info);
}

.context-badge.ready[b-ncvda9fe9b] {
    color: var(--theme-success);
}

.context-badge.warning[b-ncvda9fe9b] {
    color: var(--theme-orange);
}

/* Card footer pattern consolidated in app.css */
.card-footer[b-ncvda9fe9b] {
    padding-top: 0.75rem; /* Component-specific override */
    border-top: 1px solid var(--bg-surface-secondary); /* Component-specific override */
}

.applied-date[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-muted);
}

.actions[b-ncvda9fe9b] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.btn-process[b-ncvda9fe9b] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: linear-gradient(135deg, var(--theme-success), color-mix(in srgb, var(--theme-success) 80%, black));
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-process:hover[b-ncvda9fe9b] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px color-mix(in srgb, var(--theme-success) 30%, transparent);
}

.btn-view[b-ncvda9fe9b] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-view:hover[b-ncvda9fe9b] {
    background: var(--border-color);
    color: var(--text-primary);
}

.btn-quickview[b-ncvda9fe9b] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.875rem;
}

.btn-quickview:hover[b-ncvda9fe9b] {
    background: var(--theme-primary-light);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

[b-ncvda9fe9b] .btn-more {
    height: 32px;
}

[b-ncvda9fe9b] .btn-more .rz-button {
    padding: 0 0.5rem;
    min-width: 32px;
}

/* Application Status Badge Overrides */
[b-ncvda9fe9b] .status-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

[b-ncvda9fe9b] .stage-approval { background: color-mix(in srgb, var(--theme-success) 10%, transparent); color: var(--theme-success); }
[b-ncvda9fe9b] .stage-verification { background: color-mix(in srgb, var(--theme-info) 10%, transparent); color: var(--theme-info); }
[b-ncvda9fe9b] .stage-phonecall { background: color-mix(in srgb, var(--theme-orange) 10%, transparent); color: var(--theme-orange); }
[b-ncvda9fe9b] .stage-homework { background: color-mix(in srgb, var(--theme-teal) 10%, transparent); color: var(--theme-teal); }
[b-ncvda9fe9b] .stage-interview { background: color-mix(in srgb, var(--theme-purple) 10%, transparent); color: var(--theme-purple); }
[b-ncvda9fe9b] .stage-admission { background: color-mix(in srgb, var(--theme-pink) 10%, transparent); color: var(--theme-pink); }
[b-ncvda9fe9b] .stage-completed { background: color-mix(in srgb, var(--theme-success) 10%, transparent); color: var(--theme-success); }
[b-ncvda9fe9b] .stage-finished { background: color-mix(in srgb, var(--theme-success) 10%, transparent); color: var(--theme-success); }
[b-ncvda9fe9b] .stage-rejected { background: color-mix(in srgb, var(--theme-danger) 10%, transparent); color: var(--theme-danger); }

/* AI Score Badge Overrides */
[b-ncvda9fe9b] .ai-score-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

[b-ncvda9fe9b] .score-high { background: color-mix(in srgb, var(--theme-success) 10%, transparent); color: var(--theme-success); }
[b-ncvda9fe9b] .score-medium { background: color-mix(in srgb, var(--theme-warning) 10%, transparent); color: var(--theme-warning); }
[b-ncvda9fe9b] .score-low { background: color-mix(in srgb, var(--theme-danger) 10%, transparent); color: var(--theme-danger); }

/* Responsive */
@media (max-width: 480px) {
    .card-header[b-ncvda9fe9b] {
        flex-wrap: wrap;
    }

    .badges[b-ncvda9fe9b] {
        width: 100%;
        margin-top: 0.5rem;
    }

    .card-stage[b-ncvda9fe9b] {
        flex-direction: column;
        align-items: flex-start;
    }

    .card-footer[b-ncvda9fe9b] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .actions[b-ncvda9fe9b] {
        width: 100%;
        justify-content: flex-end;
    }
}
/* /Components/Recruiter/Shared/ApplicationDetailSlideOver.razor.rz.scp.css */
/* ========================================
   ApplicationDetailSlideOver - Right Panel
   ======================================== */

/* Backdrop */
.slideover-backdrop[b-jhdo1oa1g5] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1040;
    animation: fadeIn-b-jhdo1oa1g5 0.2s ease;
}

@keyframes fadeIn-b-jhdo1oa1g5 {
    from { opacity: 0; }
    to { opacity: 1; }
}

/* Panel */
.slideover-panel[b-jhdo1oa1g5] {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 500px;
    max-width: 90vw;
    background: var(--bg-page);
    z-index: 1050;
    display: flex;
    flex-direction: column;
    box-shadow: -4px 0 24px rgba(0, 0, 0, 0.15);
    transform: translateX(100%);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.slideover-panel.open[b-jhdo1oa1g5] {
    transform: translateX(0);
}

/* Header */
.slideover-header[b-jhdo1oa1g5] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    flex-shrink: 0;
}

.slideover-header-top[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
}

.slideover-title-area[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
    min-width: 0;
}

.slideover-avatar[b-jhdo1oa1g5] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-info), var(--theme-indigo));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    font-weight: 700;
    flex-shrink: 0;
}

.slideover-title-text[b-jhdo1oa1g5] {
    min-width: 0;
}

.slideover-title-text h3[b-jhdo1oa1g5] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.slideover-subtitle[b-jhdo1oa1g5] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.slideover-close[b-jhdo1oa1g5] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    border: none;
    border-radius: 8px;
    cursor: pointer;
    color: var(--text-secondary);
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.slideover-close:hover[b-jhdo1oa1g5] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

/* Quick Search / Jump */
.slideover-search-row[b-jhdo1oa1g5] {
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--border-color);
    position: relative;
}

.slideover-search-box[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.625rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    transition: border-color 0.15s ease;
}

.slideover-search-box:focus-within[b-jhdo1oa1g5] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.slideover-search-box i[b-jhdo1oa1g5] {
    color: var(--text-muted);
    font-size: 0.875rem;
    flex-shrink: 0;
}

.slideover-search-box input[b-jhdo1oa1g5] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.slideover-search-box input[b-jhdo1oa1g5]::placeholder {
    color: var(--text-muted);
}

.search-clear[b-jhdo1oa1g5] {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-secondary);
    font-size: 0.625rem;
    flex-shrink: 0;
}

.search-clear:hover[b-jhdo1oa1g5] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

/* Jump Results Dropdown */
.slideover-jump-results[b-jhdo1oa1g5] {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    margin-top: 4px;
    background: var(--bg-page);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    z-index: 10;
    max-height: 320px;
    overflow-y: auto;
}

.jump-result-item[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: none;
    background: transparent;
    cursor: pointer;
    text-align: left;
    transition: background 0.1s ease;
}

.jump-result-item:hover[b-jhdo1oa1g5] {
    background: var(--bg-surface);
}

.jump-result-item.active[b-jhdo1oa1g5] {
    background: var(--theme-primary-light);
}

.jump-result-item:not(:last-child)[b-jhdo1oa1g5] {
    border-bottom: 1px solid var(--border-color-light);
}

.jump-avatar[b-jhdo1oa1g5] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-indigo), var(--theme-purple));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 700;
    flex-shrink: 0;
}

.jump-info[b-jhdo1oa1g5] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

.jump-name[b-jhdo1oa1g5] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.jump-index[b-jhdo1oa1g5] {
    font-size: 0.6875rem;
    color: var(--text-secondary);
}

.jump-check[b-jhdo1oa1g5] {
    color: var(--theme-primary);
    font-size: 1rem;
    flex-shrink: 0;
}

.jump-more[b-jhdo1oa1g5] {
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: center;
    border-top: 1px solid var(--border-color-light);
}

/* Prev/Next Row */
.slideover-nav-row[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-top: 0.75rem;
    padding-top: 0.75rem;
    border-top: 1px solid var(--border-color);
}

.slideover-nav-btn[b-jhdo1oa1g5] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    transition: all 0.15s ease;
}

.slideover-nav-btn:hover:not(:disabled)[b-jhdo1oa1g5] {
    background: var(--theme-primary-light);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.slideover-nav-btn:disabled[b-jhdo1oa1g5] {
    opacity: 0.4;
    cursor: not-allowed;
}

.slideover-nav-pos[b-jhdo1oa1g5] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

/* Body */
.slideover-body[b-jhdo1oa1g5] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem 1.25rem;
}

.slideover-loading[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 2rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.spinner-sm[b-jhdo1oa1g5] {
    width: 18px;
    height: 18px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin-b-jhdo1oa1g5 0.6s linear infinite;
}

@keyframes spin-b-jhdo1oa1g5 {
    to { transform: rotate(360deg); }
}

.slideover-error[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 2rem;
    color: var(--theme-danger-emphasis);
    font-size: 0.875rem;
}

/* Sections */
.slideover-section[b-jhdo1oa1g5] {
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

.slideover-section:last-child[b-jhdo1oa1g5] {
    border-bottom: none;
    margin-bottom: 0;
}

.section-title[b-jhdo1oa1g5] {
    margin: 0 0 0.625rem 0;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.section-title i[b-jhdo1oa1g5] {
    font-size: 0.875rem;
}

/* Status Row */
.slideover-status-row[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.slideover-status-badge[b-jhdo1oa1g5] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: color-mix(in srgb, var(--theme-primary) 10%, transparent);
    color: var(--theme-primary);
}

/* Stats Grid */
.slideover-stats-grid[b-jhdo1oa1g5] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem;
}

.slideover-stat[b-jhdo1oa1g5] {
    padding: 0.5rem;
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-color);
    text-align: center;
}

.stat-label[b-jhdo1oa1g5] {
    display: block;
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    margin-bottom: 0.125rem;
}

.stat-value[b-jhdo1oa1g5] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

/* Info Grid */
.slideover-info-grid[b-jhdo1oa1g5] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.info-item[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.375rem 0;
}

.info-label[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.info-label i[b-jhdo1oa1g5] {
    font-size: 0.875rem;
    width: 16px;
    text-align: center;
}

.info-value[b-jhdo1oa1g5] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    text-align: right;
    max-width: 60%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Stage Timeline */
.slideover-timeline[b-jhdo1oa1g5] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.timeline-item[b-jhdo1oa1g5] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.5rem 0;
    position: relative;
}

.timeline-item:not(:last-child)[b-jhdo1oa1g5]::after {
    content: '';
    position: absolute;
    left: 9px;
    top: 28px;
    bottom: -4px;
    width: 2px;
    background: var(--border-color);
}

.timeline-item.finished:not(:last-child)[b-jhdo1oa1g5]::after {
    background: var(--theme-success);
}

.timeline-marker[b-jhdo1oa1g5] {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    z-index: 1;
}

.timeline-item.finished .timeline-marker[b-jhdo1oa1g5] {
    color: var(--theme-success);
}

.timeline-item.in-progress .timeline-marker[b-jhdo1oa1g5] {
    color: var(--theme-info);
    animation: spin-b-jhdo1oa1g5 2s linear infinite;
}

.timeline-item.waiting .timeline-marker[b-jhdo1oa1g5] {
    color: var(--text-muted);
}

.timeline-content[b-jhdo1oa1g5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    min-height: 20px;
}

.timeline-name[b-jhdo1oa1g5] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
}

.timeline-result[b-jhdo1oa1g5] {
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
}

.timeline-result.approved[b-jhdo1oa1g5] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-text);
}

.timeline-result.rejected[b-jhdo1oa1g5] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

/* Footer */
.slideover-footer[b-jhdo1oa1g5] {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--border-color);
    flex-shrink: 0;
    display: flex;
    justify-content: center;
}

.slideover-full-link[b-jhdo1oa1g5] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1.25rem;
    background: var(--theme-primary);
    color: white;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.15s ease;
}

.slideover-full-link:hover[b-jhdo1oa1g5] {
    background: color-mix(in srgb, var(--theme-primary) 85%, black);
    color: white;
    text-decoration: none;
}

/* Responsive */
@media (max-width: 600px) {
    .slideover-panel[b-jhdo1oa1g5] {
        width: 100vw;
        max-width: 100vw;
    }

    .slideover-stats-grid[b-jhdo1oa1g5] {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* Dark mode */
:global([data-bs-theme="dark"]) .slideover-panel[b-jhdo1oa1g5] {
    background: var(--bg-page);
    box-shadow: -4px 0 24px rgba(0, 0, 0, 0.4);
}

:global([data-bs-theme="dark"]) .slideover-backdrop[b-jhdo1oa1g5] {
    background: rgba(0, 0, 0, 0.6);
}
/* /Components/Recruiter/Shared/ApplicationFilters.razor.rz.scp.css */
/* ApplicationFilters Component Styles */

/* Main Filters Panel */
.filters-panel[b-rcjshpxl12] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.filter-section[b-rcjshpxl12] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.filter-label[b-rcjshpxl12] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.filter-label i[b-rcjshpxl12] {
    font-size: 0.8125rem;
}

/* Vacancy Section */
.vacancy-section[b-rcjshpxl12] {
    min-width: 250px;
    flex: 0 0 auto;
}

[b-rcjshpxl12] .vacancy-dropdown .rz-dropdown {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface-secondary);
}

[b-rcjshpxl12] .vacancy-dropdown .rz-dropdown:hover {
    border-color: var(--theme-primary);
}

/* Search Section */
.search-section[b-rcjshpxl12] {
    flex: 1;
    min-width: 240px;
}

.search-box[b-rcjshpxl12] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    transition: all 0.2s ease;
}

.search-box:focus-within[b-rcjshpxl12] {
    background: var(--bg-surface);
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.search-box i[b-rcjshpxl12] {
    color: var(--text-muted);
    font-size: 1.125rem;
}

.search-box input[b-rcjshpxl12] {
    flex: 1;
    border: none;
    background: transparent;
    outline: none;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.search-box input[b-rcjshpxl12]::placeholder {
    color: var(--text-muted);
}

.clear-search[b-rcjshpxl12] {
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--border-color);
    border: none;
    border-radius: 7px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.clear-search:hover[b-rcjshpxl12] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

.clear-search i[b-rcjshpxl12] {
    font-size: 0.875rem;
}

/* Quick Filters Section */
.quick-filters-section[b-rcjshpxl12] {
    flex: 0 0 auto;
}

/* View Toggle Section */
.view-toggle-section[b-rcjshpxl12] {
    flex: 0 0 auto;
}

.view-toggle[b-rcjshpxl12] {
    display: flex;
    background: var(--bg-tertiary);
    border-radius: 10px;
    padding: 0.25rem;
    gap: 0.25rem;
}

.toggle-btn[b-rcjshpxl12] {
    width: 38px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    border-radius: 8px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.toggle-btn:hover[b-rcjshpxl12] {
    color: var(--text-primary);
}

.toggle-btn.active[b-rcjshpxl12] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-sm);
}

.toggle-btn i[b-rcjshpxl12] {
    font-size: 1.125rem;
}

/* Actions Section */
.actions-section[b-rcjshpxl12] {
    flex: 0 0 auto;
    margin-left: auto;
}

/* Stage Pills - Compact Badge Style */
.stage-pills[b-rcjshpxl12] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0;
    margin-bottom: 0.5rem;
}

.stage-pill[b-rcjshpxl12] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    background: var(--bg-tertiary);
    border: 1px solid transparent;
    border-radius: 16px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.stage-pill:hover[b-rcjshpxl12] {
    background: var(--bg-hover);
}

.stage-pill.active[b-rcjshpxl12] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: var(--text-inverse);
}

.stage-pill i[b-rcjshpxl12] {
    font-size: 0.8125rem;
    display: none; /* Hide icons by default for compact look */
}

.pill-count[b-rcjshpxl12] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: color-mix(in srgb, var(--text-primary) 8%, transparent);
    border-radius: 9px;
    font-size: 0.625rem;
    font-weight: 600;
}

.stage-pill.active .pill-count[b-rcjshpxl12] {
    background: rgba(255, 255, 255, 0.25);
}

/* Stage-specific pill colors — semantic vivid colors retained for stage identity */
.stage-pill.pill-approval:not(.active)[b-rcjshpxl12] { color: var(--theme-success); border-color: rgba(16, 185, 129, 0.3); background: rgba(16, 185, 129, 0.08); }
.stage-pill.pill-verification:not(.active)[b-rcjshpxl12] { color: var(--theme-info); border-color: rgba(59, 130, 246, 0.3); background: rgba(59, 130, 246, 0.08); }
.stage-pill.pill-phonecall:not(.active)[b-rcjshpxl12] { color: var(--theme-warning); border-color: rgba(249, 115, 22, 0.3); background: rgba(249, 115, 22, 0.08); }
.stage-pill.pill-homework:not(.active)[b-rcjshpxl12] { color: var(--theme-info); border-color: rgba(6, 182, 212, 0.3); background: rgba(6, 182, 212, 0.08); }
.stage-pill.pill-interview:not(.active)[b-rcjshpxl12] { color: var(--theme-purple); border-color: rgba(139, 92, 246, 0.3); background: rgba(139, 92, 246, 0.08); }
.stage-pill.pill-admission:not(.active)[b-rcjshpxl12] { color: var(--theme-purple); border-color: rgba(236, 72, 153, 0.3); background: rgba(236, 72, 153, 0.08); }

.stage-pill.pill-approval.active[b-rcjshpxl12] { background: var(--theme-success); border-color: var(--theme-success); color: var(--text-inverse); }
.stage-pill.pill-verification.active[b-rcjshpxl12] { background: var(--theme-info); border-color: var(--theme-info); color: var(--text-inverse); }
.stage-pill.pill-phonecall.active[b-rcjshpxl12] { background: var(--theme-warning); border-color: var(--theme-warning); color: var(--text-inverse); }
.stage-pill.pill-homework.active[b-rcjshpxl12] { background: var(--theme-info); border-color: var(--theme-info); color: var(--text-inverse); }
.stage-pill.pill-interview.active[b-rcjshpxl12] { background: var(--theme-purple); border-color: var(--theme-purple); color: var(--text-inverse); }
.stage-pill.pill-admission.active[b-rcjshpxl12] { background: var(--theme-purple); border-color: var(--theme-purple); color: var(--text-inverse); }

/* Dark mode pair: brighten stage-pill text and lift background contrast */
[data-bs-theme="dark"] .stage-pill.pill-approval:not(.active)[b-rcjshpxl12] { background: rgba(16, 185, 129, 0.15); color: var(--theme-success); border-color: rgba(16, 185, 129, 0.4); }
[data-bs-theme="dark"] .stage-pill.pill-verification:not(.active)[b-rcjshpxl12] { background: rgba(59, 130, 246, 0.15); color: var(--theme-info); border-color: rgba(59, 130, 246, 0.4); }
[data-bs-theme="dark"] .stage-pill.pill-phonecall:not(.active)[b-rcjshpxl12] { background: rgba(249, 115, 22, 0.15); color: var(--theme-warning); border-color: rgba(249, 115, 22, 0.4); }
[data-bs-theme="dark"] .stage-pill.pill-homework:not(.active)[b-rcjshpxl12] { background: rgba(6, 182, 212, 0.15); color: var(--theme-info); border-color: rgba(6, 182, 212, 0.4); }
[data-bs-theme="dark"] .stage-pill.pill-interview:not(.active)[b-rcjshpxl12] { background: rgba(139, 92, 246, 0.15); color: var(--theme-purple); border-color: rgba(139, 92, 246, 0.4); }
[data-bs-theme="dark"] .stage-pill.pill-admission:not(.active)[b-rcjshpxl12] { background: rgba(236, 72, 153, 0.15); color: var(--theme-purple); border-color: rgba(236, 72, 153, 0.4); }

/* Responsive */
@media (max-width: 1024px) {
    .filters-panel[b-rcjshpxl12] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-section[b-rcjshpxl12] {
        width: 100%;
    }

    .vacancy-section[b-rcjshpxl12] {
        min-width: unset;
    }

    .search-section[b-rcjshpxl12] {
        min-width: unset;
    }

    .view-toggle-section[b-rcjshpxl12] {
        align-self: flex-end;
    }

    .actions-section[b-rcjshpxl12] {
        margin-left: 0;
        width: 100%;
    }
}

@media (max-width: 768px) {
    .stage-pills[b-rcjshpxl12] {
        padding: 0.375rem 0;
        gap: 0.25rem;
    }

    .stage-pill[b-rcjshpxl12] {
        padding: 0.1875rem 0.5rem;
        font-size: 0.6875rem;
    }

    .pill-count[b-rcjshpxl12] {
        min-width: 16px;
        height: 16px;
        font-size: 0.5625rem;
    }
}
/* /Components/Recruiter/Shared/ChoiceValidationModal.razor.rz.scp.css */
/* ============ Choice Validation Modal ============ */

.validation-modal-content[b-8kwj4dl2qi] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.validation-summary[b-8kwj4dl2qi] {
    display: flex;
    gap: 1rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
}

.validation-stat[b-8kwj4dl2qi] {
    flex: 1;
    text-align: center;
    padding: 0.75rem;
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.validation-stat .stat-value[b-8kwj4dl2qi] {
    display: block;
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1;
}

.validation-stat .stat-label[b-8kwj4dl2qi] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

.validation-stat.success .stat-value[b-8kwj4dl2qi] {
    color: var(--theme-success-emphasis);
}

.validation-stat.danger .stat-value[b-8kwj4dl2qi] {
    color: var(--theme-danger-emphasis);
}

:global([data-bs-theme="dark"]) .validation-stat.success .stat-value[b-8kwj4dl2qi] {
    color: var(--theme-success);
}

:global([data-bs-theme="dark"]) .validation-stat.danger .stat-value[b-8kwj4dl2qi] {
    color: var(--theme-danger);
}

.flagged-list[b-8kwj4dl2qi] {
    max-height: 400px;
    overflow-y: auto;
    border: 1px solid var(--border-color);
    border-radius: 8px;
}

.validation-table[b-8kwj4dl2qi] {
    width: 100%;
    border-collapse: collapse;
}

.validation-table th[b-8kwj4dl2qi] {
    position: sticky;
    top: 0;
    background: var(--bg-surface-tertiary);
    padding: 0.625rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-align: left;
    border-bottom: 1px solid var(--border-color);
}

.validation-table td[b-8kwj4dl2qi] {
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

.validation-table tr:last-child td[b-8kwj4dl2qi] {
    border-bottom: none;
}

.validation-table .table-index-link[b-8kwj4dl2qi] {
    color: var(--theme-primary);
    font-weight: 600;
    text-decoration: none;
    transition: color 0.2s ease;
}

.validation-table .table-index-link:hover[b-8kwj4dl2qi] {
    color: var(--theme-primary-emphasis);
    text-decoration: underline;
}

/* Choice badge inside validation table */
.validation-choice-badge[b-8kwj4dl2qi] {
    display: inline-block;
    padding: 0.15rem 0.4rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

/* Choice flag badges */
.choice-flag[b-8kwj4dl2qi] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.choice-flag.mismatch[b-8kwj4dl2qi] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
    border: 1px solid var(--theme-danger-border);
}

.choice-flag.mismatch i[b-8kwj4dl2qi] {
    font-size: 0.8rem;
}

:global([data-bs-theme="dark"]) .choice-flag.mismatch[b-8kwj4dl2qi] {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger);
    border-color: rgba(220, 38, 38, 0.3);
}

@media (max-width: 576px) {
    .validation-summary[b-8kwj4dl2qi] {
        flex-direction: column;
    }
}
/* /Components/Recruiter/Shared/DocumentLibrary.razor.rz.scp.css */
/* ========================================
   DOCUMENT LIBRARY COMPONENT
   Folder-based document organization
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

.document-library[b-lo67uxih7t] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ========================================
   LIBRARY HEADER
   ======================================== */

.library-header[b-lo67uxih7t] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

.header-title[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.header-title i[b-lo67uxih7t] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

.header-title h4[b-lo67uxih7t] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.toggle-all-btn[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.toggle-all-btn:hover[b-lo67uxih7t] {
    background: var(--bg-body);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

/* ========================================
   FOLDER LIST
   ======================================== */

.folder-list[b-lo67uxih7t] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ========================================
   FOLDER ITEM
   ======================================== */

.folder-item[b-lo67uxih7t] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    transition: all 0.2s ease;
}

.folder-item:hover[b-lo67uxih7t] {
    border-color: var(--theme-primary-light);
}

.folder-item.locked[b-lo67uxih7t] {
    opacity: 0.85;
}

.folder-item.locked:hover[b-lo67uxih7t] {
    border-color: var(--border-color);
}

.folder-item.admission-folder[b-lo67uxih7t] {
    border-color: var(--theme-success);
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.03) 0%, var(--bg-surface) 100%);
}

/* ========================================
   FOLDER HEADER
   ======================================== */

.folder-header[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    cursor: pointer;
    transition: background 0.2s ease;
}

.folder-header:hover[b-lo67uxih7t] {
    background: var(--bg-surface-tertiary);
}

.folder-item.locked .folder-header[b-lo67uxih7t] {
    cursor: pointer;
}

.folder-icon[b-lo67uxih7t] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.folder-header:hover .folder-icon[b-lo67uxih7t] {
    transform: scale(1.05);
}

/* Folder Icon Color Variants */
.folder-icon.info[b-lo67uxih7t] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.folder-icon.primary[b-lo67uxih7t] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-primary);
}

.folder-icon.warning[b-lo67uxih7t] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.folder-icon.success[b-lo67uxih7t] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.folder-icon.purple[b-lo67uxih7t] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.folder-icon.teal[b-lo67uxih7t] {
    background: rgba(20, 184, 166, 0.1);
    color: var(--theme-teal);
}

.folder-icon.secondary[b-lo67uxih7t] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.folder-icon.admission[b-lo67uxih7t] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
}

.folder-info[b-lo67uxih7t] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.folder-name[b-lo67uxih7t] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.folder-meta[b-lo67uxih7t] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.folder-item.locked .folder-meta[b-lo67uxih7t] {
    color: var(--theme-warning);
}

/* ========================================
   FOLDER BADGES
   ======================================== */

.folder-badge[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.folder-badge.locked[b-lo67uxih7t] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.folder-badge.available[b-lo67uxih7t] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.folder-badge.success[b-lo67uxih7t] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
}

.folder-badge i[b-lo67uxih7t] {
    font-size: 0.75rem;
}

.folder-toggle[b-lo67uxih7t] {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    color: var(--text-muted);
    transition: all 0.2s ease;
}

.folder-header:hover .folder-toggle[b-lo67uxih7t] {
    background: var(--bg-body);
    color: var(--theme-primary);
}

.folder-toggle i[b-lo67uxih7t] {
    font-size: 1.25rem;
    transition: transform 0.2s ease;
}

/* ========================================
   FOLDER CONTENT
   ======================================== */

.folder-content[b-lo67uxih7t] {
    padding: 0.5rem;
    background: var(--bg-surface-tertiary);
    border-top: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.folder-item.admission-folder .folder-content[b-lo67uxih7t] {
    background: rgba(16, 185, 129, 0.03);
}

/* ========================================
   ACCESS RESTRICTED STATE
   ======================================== */

.access-restricted[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    background: var(--bg-surface);
    border: 1px dashed var(--border-color);
    border-radius: 8px;
}

.restricted-icon[b-lo67uxih7t] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.restricted-info h5[b-lo67uxih7t] {
    margin: 0 0 0.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.restricted-info p[b-lo67uxih7t] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* ========================================
   FOLDER EMPTY STATE
   ======================================== */

.folder-empty[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1.25rem;
    color: var(--text-muted);
    font-size: 0.8125rem;
}

.folder-empty i[b-lo67uxih7t] {
    font-size: 1.25rem;
}

/* ========================================
   FILE ITEM
   ======================================== */

.file-item[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    text-align: left;
}

.file-item:hover:not(:disabled)[b-lo67uxih7t] {
    border-color: var(--theme-primary);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.1);
    transform: translateX(4px);
}

.file-item:disabled[b-lo67uxih7t] {
    cursor: not-allowed;
    opacity: 0.7;
}

.file-item.admission-letter[b-lo67uxih7t] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.05) 0%, var(--bg-surface) 100%);
    border-color: rgba(16, 185, 129, 0.3);
    text-decoration: none;
}

.file-item.admission-letter:hover[b-lo67uxih7t] {
    border-color: var(--theme-success);
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.15);
}

/* ========================================
   FILE ICON
   ======================================== */

.file-icon[b-lo67uxih7t] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

/* File Type Color Variants */
.file-icon.pdf[b-lo67uxih7t] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger-emphasis);
}

.file-icon.word[b-lo67uxih7t] {
    background: rgba(37, 99, 235, 0.1);
    color: var(--theme-info-emphasis);
}

.file-icon.excel[b-lo67uxih7t] {
    background: rgba(22, 163, 74, 0.1);
    color: var(--theme-success-emphasis);
}

.file-icon.powerpoint[b-lo67uxih7t] {
    background: rgba(234, 88, 12, 0.1);
    color: var(--theme-warning-emphasis);
}

.file-icon.image[b-lo67uxih7t] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.file-icon.archive[b-lo67uxih7t] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

.file-icon.default[b-lo67uxih7t] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

/* ========================================
   FILE INFO
   ======================================== */

.file-info[b-lo67uxih7t] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.file-name[b-lo67uxih7t] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.file-meta[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.file-type[b-lo67uxih7t] {
    padding: 0.125rem 0.375rem;
    background: var(--bg-surface-secondary);
    border-radius: 4px;
    font-weight: 500;
    font-size: 0.625rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.file-size[b-lo67uxih7t] {
    color: var(--text-muted);
}

.file-desc[b-lo67uxih7t] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ========================================
   FILE ACTIONS
   ======================================== */

.file-actions[b-lo67uxih7t] {
    flex-shrink: 0;
}

.action-buttons[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.download-btn[b-lo67uxih7t],
.view-btn[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: none;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
}

.download-btn[b-lo67uxih7t] {
    background: var(--theme-primary);
    color: white;
}

.download-btn:hover:not(:disabled)[b-lo67uxih7t] {
    background: var(--theme-primary-emphasis);
    color: white;
}

.download-btn:disabled[b-lo67uxih7t] {
    opacity: 0.6;
    cursor: not-allowed;
}

.view-btn[b-lo67uxih7t] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-primary);
}

.view-btn:hover:not(:disabled)[b-lo67uxih7t] {
    background: rgba(99, 102, 241, 0.2);
}

.view-btn:disabled[b-lo67uxih7t] {
    opacity: 0.6;
    cursor: not-allowed;
}

.file-item.admission-letter .download-btn[b-lo67uxih7t] {
    background: var(--theme-success);
}

.file-item.admission-letter .download-btn:hover:not(:disabled)[b-lo67uxih7t] {
    background: var(--theme-success-emphasis);
}

.file-item.admission-letter .view-btn[b-lo67uxih7t] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.file-item.admission-letter .view-btn:hover:not(:disabled)[b-lo67uxih7t] {
    background: rgba(16, 185, 129, 0.2);
}

.downloading[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.spinning[b-lo67uxih7t] {
    animation: spin 1s linear infinite;
}

/* ========================================
   LIBRARY EMPTY STATE
   ======================================== */

.library-empty[b-lo67uxih7t] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    text-align: center;
    background: var(--bg-surface-tertiary);
    border: 2px dashed var(--border-color);
    border-radius: 12px;
}

.empty-icon[b-lo67uxih7t] {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    background: var(--bg-surface);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    margin-bottom: 1rem;
}

.library-empty h5[b-lo67uxih7t] {
    margin: 0 0 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.library-empty p[b-lo67uxih7t] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--text-secondary);
    max-width: 300px;
}

/* ========================================
   LIBRARY LEGEND
   ======================================== */

.library-legend[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    flex-wrap: wrap;
}

.legend-title[b-lo67uxih7t] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.legend-items[b-lo67uxih7t] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.legend-item[b-lo67uxih7t] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-muted);
}

.legend-item i[b-lo67uxih7t] {
    font-size: 0.875rem;
}

/* ========================================
   RESPONSIVE DESIGN
   ======================================== */

@media (max-width: 640px) {
    .folder-header[b-lo67uxih7t] {
        padding: 0.75rem;
        gap: 0.625rem;
    }

    .folder-icon[b-lo67uxih7t] {
        width: 36px;
        height: 36px;
        font-size: 1.125rem;
    }

    .folder-badge[b-lo67uxih7t] {
        padding: 0.125rem 0.5rem;
        font-size: 0.625rem;
    }

    .folder-badge span[b-lo67uxih7t] {
        display: none;
    }

    .file-item[b-lo67uxih7t] {
        padding: 0.625rem 0.75rem;
        gap: 0.625rem;
    }

    .file-icon[b-lo67uxih7t] {
        width: 32px;
        height: 32px;
        font-size: 1rem;
    }

    .action-buttons[b-lo67uxih7t] {
        flex-direction: column;
        gap: 0.25rem;
    }

    .download-btn[b-lo67uxih7t],
    .view-btn[b-lo67uxih7t] {
        padding: 0.25rem 0.5rem;
        font-size: 0.6875rem;
        justify-content: center;
    }

    .access-restricted[b-lo67uxih7t] {
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

    .library-legend[b-lo67uxih7t] {
        flex-direction: column;
        align-items: flex-start;
    }

    .legend-items[b-lo67uxih7t] {
        gap: 0.5rem;
    }
}

/* ========================================
   REDUCED MOTION
   ======================================== */

@media (prefers-reduced-motion: reduce) {
    .folder-item[b-lo67uxih7t],
    .folder-header[b-lo67uxih7t],
    .folder-icon[b-lo67uxih7t],
    .folder-toggle i[b-lo67uxih7t],
    .file-item[b-lo67uxih7t],
    .download-btn[b-lo67uxih7t],
    .view-btn[b-lo67uxih7t] {
        transition: none;
    }

    .file-item:hover:not(:disabled)[b-lo67uxih7t] {
        transform: none;
    }

    .folder-header:hover .folder-icon[b-lo67uxih7t] {
        transform: none;
    }

    .spinning[b-lo67uxih7t] {
        animation: none;
    }
}
/* /Components/Recruiter/Shared/KpiMetric.razor.rz.scp.css */
/* KpiMetric Component Styles
   Compact horizontal layout for dashboard KPI cards
   Dark mode handled automatically via CSS variables from theme-core.css */

.kpi-metric[b-ua6ltsxncl] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--bg-surface);
    border-radius: 0.75rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    min-height: 64px;
    height: 100%;
    transition: all 0.2s ease;
}

.kpi-metric:hover[b-ua6ltsxncl] {
    box-shadow: var(--shadow-md);
}

/* KPI Icon */
.kpi-icon[b-ua6ltsxncl] {
    width: 40px;
    height: 40px;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* Icon Color Variants */
.kpi-icon.primary[b-ua6ltsxncl] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
}

.kpi-icon.success[b-ua6ltsxncl] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.kpi-icon.warning[b-ua6ltsxncl] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-warning-emphasis) 100%);
}

.kpi-icon.info[b-ua6ltsxncl] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info-emphasis) 100%);
}

.kpi-icon.danger[b-ua6ltsxncl] {
    background: linear-gradient(135deg, var(--theme-danger) 0%, var(--theme-danger-emphasis) 100%);
}

.kpi-icon.purple[b-ua6ltsxncl] {
    background: linear-gradient(135deg, var(--theme-purple) 0%, var(--theme-purple-emphasis) 100%);
}

/* KPI Content */
.kpi-content[b-ua6ltsxncl] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.kpi-value[b-ua6ltsxncl] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.kpi-title[b-ua6ltsxncl] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.3;
}

/* Trend Indicator */
.kpi-trend[b-ua6ltsxncl] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    margin-top: 0.125rem;
}

.kpi-trend.positive[b-ua6ltsxncl] {
    color: var(--theme-success);
}

.kpi-trend.negative[b-ua6ltsxncl] {
    color: var(--theme-danger);
}

.kpi-trend.neutral[b-ua6ltsxncl] {
    color: var(--text-secondary);
}

.kpi-trend .trend-label[b-ua6ltsxncl] {
    color: var(--text-secondary);
    margin-left: 0.125rem;
}

/* Additional Content */
.kpi-additional[b-ua6ltsxncl] {
    margin-top: 0.25rem;
}

/* Responsive */
@media (max-width: 768px) {
    .kpi-metric[b-ua6ltsxncl] {
        padding: 0.75rem;
        min-height: 56px;
    }

    .kpi-icon[b-ua6ltsxncl] {
        width: 36px;
        height: 36px;
    }

    .kpi-value[b-ua6ltsxncl] {
        font-size: 1.125rem;
    }

    .kpi-title[b-ua6ltsxncl] {
        font-size: 0.75rem;
    }
}
/* /Components/Recruiter/Shared/QuickFiltersBar.razor.rz.scp.css */
/* QuickFiltersBar Component Styles */
.quick-filters[b-x5nqc3o14e] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.filter-buttons[b-x5nqc3o14e] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.quick-btn[b-x5nqc3o14e] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.quick-btn:hover[b-x5nqc3o14e] {
    border-color: var(--theme-primary);
    background: var(--bg-hover);
}

.quick-btn.active[b-x5nqc3o14e] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: var(--text-inverse);
}

.quick-btn i[b-x5nqc3o14e] {
    font-size: 1rem;
}

/* Colored variants */
.quick-btn.overdue:not(.active)[b-x5nqc3o14e] {
    color: var(--theme-danger);
    border-color: color-mix(in srgb, var(--theme-danger) 30%, transparent);
}

.quick-btn.overdue:not(.active):hover[b-x5nqc3o14e] {
    background: var(--theme-danger-subtle);
    border-color: color-mix(in srgb, var(--theme-danger) 50%, transparent);
}

.quick-btn.overdue.active[b-x5nqc3o14e] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: var(--text-inverse);
}

.quick-btn.today:not(.active)[b-x5nqc3o14e] {
    color: var(--theme-warning);
    border-color: color-mix(in srgb, var(--theme-warning) 30%, transparent);
}

.quick-btn.today:not(.active):hover[b-x5nqc3o14e] {
    background: var(--theme-warning-subtle);
    border-color: color-mix(in srgb, var(--theme-warning) 50%, transparent);
}

.quick-btn.today.active[b-x5nqc3o14e] {
    background: var(--theme-warning);
    border-color: var(--theme-warning);
    color: var(--text-inverse);
}

.quick-btn.high:not(.active)[b-x5nqc3o14e] {
    color: var(--theme-success);
    border-color: color-mix(in srgb, var(--theme-success) 30%, transparent);
}

.quick-btn.high:not(.active):hover[b-x5nqc3o14e] {
    background: var(--theme-success-subtle);
    border-color: color-mix(in srgb, var(--theme-success) 50%, transparent);
}

.quick-btn.high.active[b-x5nqc3o14e] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: var(--text-inverse);
}

.filter-badge[b-x5nqc3o14e] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    background: color-mix(in srgb, var(--text-primary) 10%, transparent);
    border-radius: 10px;
    font-size: 0.6875rem;
    font-weight: 600;
}

.quick-btn.active .filter-badge[b-x5nqc3o14e] {
    background: rgba(255, 255, 255, 0.25);
}

/* Auto Refresh */
.auto-refresh[b-x5nqc3o14e] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding-left: 1rem;
    border-left: 1px solid var(--border-color);
}

.refresh-toggle[b-x5nqc3o14e] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
}

.toggle-label[b-x5nqc3o14e] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.toggle-label i[b-x5nqc3o14e] {
    font-size: 0.9375rem;
}

.toggle-label i.spinning[b-x5nqc3o14e] {
    animation: spin 2s linear infinite;
    color: var(--theme-success);
}

.last-refresh[b-x5nqc3o14e] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Clear Button */
.clear-btn[b-x5nqc3o14e] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.625rem;
    background: var(--bg-tertiary);
    border: none;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.clear-btn:hover[b-x5nqc3o14e] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

/* Responsive */
@media (max-width: 768px) {
    .quick-filters[b-x5nqc3o14e] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-buttons[b-x5nqc3o14e] {
        width: 100%;
    }

    .quick-btn[b-x5nqc3o14e] {
        flex: 1;
        justify-content: center;
    }

    .quick-btn span:not(.filter-badge)[b-x5nqc3o14e] {
        display: none;
    }

    .auto-refresh[b-x5nqc3o14e] {
        padding-left: 0;
        border-left: none;
        padding-top: 0.75rem;
        border-top: 1px solid var(--border-color);
        justify-content: space-between;
    }
}
/* /Components/Recruiter/Shared/RecruiterCard.razor.rz.scp.css */
/* =============================================
   RECRUITER CARD COMPONENT STYLES
   Native div implementation for full control.
   ============================================= */

/* Card Base */
.recruiter-card[b-t7owdeoo09] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.75rem;
    padding: 1rem;
    transition: all 0.2s ease;
}

.recruiter-card:hover[b-t7owdeoo09] {
    box-shadow: var(--shadow-md);
}

/* Card Header */
.card-header-custom[b-t7owdeoo09] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.card-title[b-t7owdeoo09] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.card-actions[b-t7owdeoo09] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    flex: 1;
}

/* Card Content */
.card-content[b-t7owdeoo09] {
    flex: 1;
}

/* Card Footer */
.card-footer-custom[b-t7owdeoo09] {
    border-top: 1px solid var(--border-color);
    padding-top: 1rem;
    margin-top: auto;
}

/* Dark Mode */
:global([data-bs-theme="dark"]) .recruiter-card[b-t7owdeoo09] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

:global([data-bs-theme="dark"]) .card-footer-custom[b-t7owdeoo09] {
    border-color: var(--border-color);
}

/* Responsive */
@media (max-width: 768px) {
    .recruiter-card[b-t7owdeoo09] {
        padding: 0.75rem;
        gap: 0.75rem;
    }

    .card-header-custom[b-t7owdeoo09] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .card-actions[b-t7owdeoo09] {
        width: 100%;
        justify-content: flex-end;
    }
}
/* /Components/Recruiter/Shared/StageReviewContext.razor.rz.scp.css */
.review-context[b-qpdkpedlcq] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Section Base Styles */
.context-section[b-qpdkpedlcq] {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    overflow: hidden;
}

.section-header[b-qpdkpedlcq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--section-header-bg);
    border-bottom: 1px solid var(--border-color);
    font-weight: 500;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.section-header i[b-qpdkpedlcq] {
    font-size: 1rem;
    color: var(--primary-color);
}

.section-header .badge[b-qpdkpedlcq] {
    margin-left: auto;
    padding: 0.125rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 500;
    border-radius: 9999px;
    background: var(--badge-bg);
    color: var(--badge-text);
}

.section-body[b-qpdkpedlcq] {
    padding: 0.75rem 1rem;
}

/* Notification Section */
.notification-channels[b-qpdkpedlcq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.channel[b-qpdkpedlcq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    border-radius: 0.375rem;
    background: var(--channel-bg);
}

.channel.enabled[b-qpdkpedlcq] {
    background: var(--success-bg);
}

.channel.enabled i[b-qpdkpedlcq] {
    color: var(--success-color);
}

.channel.disabled[b-qpdkpedlcq] {
    background: var(--muted-bg);
}

.channel.disabled i[b-qpdkpedlcq] {
    color: var(--muted-color);
}

.channel > i[b-qpdkpedlcq] {
    font-size: 1.25rem;
}

.channel-info[b-qpdkpedlcq] {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.channel-name[b-qpdkpedlcq] {
    font-weight: 500;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.channel-status[b-qpdkpedlcq] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.channel-target[b-qpdkpedlcq] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    padding: 0.125rem 0.5rem;
    background: var(--tag-bg);
    border-radius: 0.25rem;
    max-width: 150px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.channel-warning[b-qpdkpedlcq] {
    font-size: 0.75rem;
    color: var(--warning-color);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.notification-warning[b-qpdkpedlcq] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.5rem;
    margin-top: 0.5rem;
    background: var(--warning-bg);
    border: 1px solid var(--warning-border);
    border-radius: 0.375rem;
    font-size: 0.75rem;
    color: var(--warning-text);
}

.notification-warning i[b-qpdkpedlcq] {
    color: var(--warning-color);
    flex-shrink: 0;
}

/* Fee Section */
.fee-section.blocked[b-qpdkpedlcq] {
    border-color: var(--danger-border);
}

.fee-section.blocked .section-header[b-qpdkpedlcq] {
    background: var(--danger-bg-light);
}

.fee-section.blocked .section-header i[b-qpdkpedlcq] {
    color: var(--danger-color);
}

.fee-section.paid .section-header i[b-qpdkpedlcq] {
    color: var(--success-color);
}

.fee-alert[b-qpdkpedlcq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem;
    background: var(--danger-bg);
    border-radius: 0.375rem;
    text-align: center;
}

.fee-amount[b-qpdkpedlcq] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
}

.fee-amount .currency[b-qpdkpedlcq] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--danger-color);
}

.fee-amount .amount[b-qpdkpedlcq] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--danger-color);
}

.fee-label[b-qpdkpedlcq] {
    font-size: 0.75rem;
    color: var(--danger-text);
}

.fee-paid[b-qpdkpedlcq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--success-color);
    font-size: 0.875rem;
}

.fee-paid i[b-qpdkpedlcq] {
    font-size: 1rem;
}

/* Resubmission Section */
.resubmission-section .section-header i[b-qpdkpedlcq] {
    color: var(--warning-color);
}

.resubmission-badge[b-qpdkpedlcq] {
    background: var(--warning-bg) !important;
    color: var(--warning-text) !important;
}

.resubmission-info[b-qpdkpedlcq] {
    display: flex;
    gap: 1.5rem;
}

.resubmission-stat[b-qpdkpedlcq] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.resubmission-stat .stat-value[b-qpdkpedlcq] {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--text-primary);
}

.resubmission-stat .stat-label[b-qpdkpedlcq] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.resubmission-warning[b-qpdkpedlcq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    margin-top: 0.75rem;
    background: var(--warning-bg);
    border: 1px solid var(--warning-border);
    border-radius: 0.375rem;
    font-size: 0.75rem;
    color: var(--warning-text);
}

.resubmission-warning i[b-qpdkpedlcq] {
    color: var(--warning-color);
}

/* Appeal Section */
.appeal-section.pending[b-qpdkpedlcq] {
    border-color: var(--primary-border);
}

.appeal-section.pending .section-header[b-qpdkpedlcq] {
    background: var(--primary-bg-light);
}

.appeal-pending[b-qpdkpedlcq] {
    background: var(--primary-color) !important;
    color: white !important;
}

.appeal-text[b-qpdkpedlcq] {
    margin-bottom: 0.5rem;
}

.appeal-text label[b-qpdkpedlcq] {
    display: block;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    margin-bottom: 0.25rem;
}

.appeal-text p[b-qpdkpedlcq] {
    margin: 0;
    padding: 0.5rem;
    background: var(--muted-bg);
    border-radius: 0.375rem;
    font-size: 0.875rem;
    color: var(--text-primary);
    white-space: pre-wrap;
}

.appeal-date[b-qpdkpedlcq] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.appeal-deadline[b-qpdkpedlcq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.appeal-deadline i[b-qpdkpedlcq] {
    color: var(--primary-color);
}

/* History Section */
.history-section .section-header i[b-qpdkpedlcq] {
    color: var(--text-secondary);
}

.history-list[b-qpdkpedlcq] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.history-item[b-qpdkpedlcq] {
    padding: 0.75rem;
    border-radius: 0.375rem;
    border-left: 3px solid var(--border-color);
    background: var(--muted-bg);
}

.history-item.success[b-qpdkpedlcq] {
    border-left-color: var(--success-color);
}

.history-item.danger[b-qpdkpedlcq] {
    border-left-color: var(--danger-color);
}

.history-item.warning[b-qpdkpedlcq] {
    border-left-color: var(--warning-color);
}

.history-item.info[b-qpdkpedlcq] {
    border-left-color: var(--info-color);
}

.history-outcome[b-qpdkpedlcq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.25rem;
}

.outcome-badge[b-qpdkpedlcq] {
    padding: 0.125rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 500;
    border-radius: 0.25rem;
}

.outcome-badge.success[b-qpdkpedlcq] {
    background: var(--success-bg);
    color: var(--success-text);
}

.outcome-badge.danger[b-qpdkpedlcq] {
    background: var(--danger-bg);
    color: var(--danger-text);
}

.outcome-badge.warning[b-qpdkpedlcq] {
    background: var(--warning-bg);
    color: var(--warning-text);
}

.outcome-badge.info[b-qpdkpedlcq] {
    background: var(--info-bg);
    color: var(--info-text);
}

.history-date[b-qpdkpedlcq] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.history-reviewer[b-qpdkpedlcq] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.history-reviewer i[b-qpdkpedlcq] {
    font-size: 0.875rem;
}

.history-rating[b-qpdkpedlcq] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 0.125rem;
    color: var(--warning-color);
}

.history-reason[b-qpdkpedlcq] {
    display: flex;
    align-items: flex-start;
    gap: 0.25rem;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.history-reason i[b-qpdkpedlcq] {
    margin-top: 0.125rem;
    flex-shrink: 0;
}

.history-appeal[b-qpdkpedlcq] {
    margin-top: 0.25rem;
    font-size: 0.75rem;
    color: var(--primary-color);
}
/* /Components/Recruiter/Shared/VacancyFormDialog.razor.rz.scp.css */
/* ========================================
   VACANCY FORM DIALOG - WIZARD LAYOUT
   Now hosted inside FshModal (ExtraLarge)
   ======================================== */

/* Fill the FshModal body area */
.vacancy-form-container[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    height: 100%;
    max-height: calc(100vh - 6rem);
    background: var(--bg-surface);
}

/* EditForm renders as <form> - make it a flex container too */
.vacancy-form-container[b-shoh8m2quy]  form {
    display: flex;
    flex-direction: column;
    flex: 1;
    min-height: 0;
    overflow: hidden;
}

/* ---- Form Content ---- */
.form-content[b-shoh8m2quy] {
    flex: 1;
    overflow-y: auto;
    padding: 1rem 0.5rem;
}

.step-content[b-shoh8m2quy] {
    max-width: 800px;
    margin: 0 auto;
}

/* ---- Section Header (single-line: icon + title + subtitle) ---- */
.section-header[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid var(--border-color);
}

.section-icon-inline[b-shoh8m2quy] {
    font-size: 0.9375rem;
    color: var(--theme-primary);
    flex-shrink: 0;
}

.section-icon-inline.success[b-shoh8m2quy] {
    color: var(--theme-success);
}

.section-header h4[b-shoh8m2quy] {
    margin: 0;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1;
}

.section-header small[b-shoh8m2quy] {
    font-size: 0.6875rem;
    color: var(--text-secondary);
    opacity: 0.8;
}

/* ---- Form Row ---- */
.form-row[b-shoh8m2quy] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.form-control-modern[b-shoh8m2quy] {
    width: 100% !important;
}

/* ---- Toggle Option ---- */
.toggle-option[b-shoh8m2quy] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.toggle-label[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
}

.toggle-label span[b-shoh8m2quy] {
    font-weight: 500;
    color: var(--text-primary);
    font-size: 0.875rem;
}

.toggle-label small[b-shoh8m2quy] {
    color: var(--text-muted);
    font-size: 0.75rem;
    margin-top: 0.125rem;
}

/* ---- Fees Grid ---- */
.fees-grid[b-shoh8m2quy] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.fee-card[b-shoh8m2quy] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
}

.fee-card:hover[b-shoh8m2quy] {
    border-color: var(--theme-primary);
    box-shadow: var(--shadow-sm);
}

.fee-icon[b-shoh8m2quy] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.fee-details[b-shoh8m2quy] {
    flex: 1;
    min-width: 0;
}

/* ---- Total Summary ---- */
.total-summary[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.25rem;
    background: linear-gradient(135deg, var(--theme-primary-light) 0%, var(--theme-primary-subtle, rgba(26, 179, 148, 0.05)) 100%);
    border-radius: 10px;
    margin-top: 1rem;
    border: 1px solid var(--border-color);
}

.total-label[b-shoh8m2quy] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.total-amount[b-shoh8m2quy] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-primary);
}

.stage-fees-total[b-shoh8m2quy] {
    background: linear-gradient(135deg, var(--theme-success-light) 0%, rgba(16, 185, 129, 0.05) 100%);
    border-color: rgba(16, 185, 129, 0.2);
}

.stage-fees-total .total-amount[b-shoh8m2quy] {
    color: var(--theme-success);
}

/* ---- Recruitment Stages ---- */
.stages-list[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.stage-card[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
}

.stage-card.enabled[b-shoh8m2quy] {
    border-color: var(--theme-primary);
    background: linear-gradient(135deg, rgba(var(--theme-primary-rgb, 26, 179, 148), 0.02) 0%, rgba(var(--theme-primary-rgb, 26, 179, 148), 0.05) 100%);
}

.stage-toggle[b-shoh8m2quy] {
    flex-shrink: 0;
}

.stage-indicator[b-shoh8m2quy] {
    width: 3px;
    height: 32px;
    border-radius: 3px;
    flex-shrink: 0;
}

.stage-info[b-shoh8m2quy] {
    flex: 1;
    min-width: 0;
}

.stage-name[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-weight: 600;
    color: var(--text-primary);
    font-size: 0.875rem;
}

.stage-name i[b-shoh8m2quy] {
    font-size: 1rem;
    color: var(--text-secondary);
}

.stage-description[b-shoh8m2quy] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
}

.stage-config[b-shoh8m2quy] {
    width: 260px;
    flex-shrink: 0;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.notification-options[b-shoh8m2quy] {
    display: flex;
    gap: 0.75rem;
    margin-top: 0.25rem;
    align-items: center;
}

.notification-toggle[b-shoh8m2quy] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
    cursor: pointer;
    user-select: none;
    line-height: 1;
    margin: 0;
}

/* Ensure FshCheckBox wrapper inside notification-toggle is inline */
.notification-toggle[b-shoh8m2quy]  .fsh-checkbox-wrapper {
    display: inline-flex;
    align-items: center;
}

.notification-toggle[b-shoh8m2quy]  .fsh-checkbox {
    gap: 0;
}

.notification-toggle[b-shoh8m2quy]  .fsh-checkbox-mark {
    width: 16px;
    height: 16px;
    min-width: 16px;
}

.notification-toggle[b-shoh8m2quy]  .fsh-checkbox-mark svg {
    width: 10px;
    height: 10px;
}

.notification-toggle i[b-shoh8m2quy] {
    font-size: 0.875rem;
}

.notification-toggle:hover[b-shoh8m2quy] {
    color: var(--text-primary);
}

.stages-summary[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    margin-top: 0.75rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.stages-summary i[b-shoh8m2quy] {
    color: var(--theme-info);
}

/* ---- Stage Fees ---- */
.stage-fees-container[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.stage-fee-section[b-shoh8m2quy] {
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.stage-fee-header[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.625rem 1rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.stage-fee-title[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.stage-dot[b-shoh8m2quy] {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    flex-shrink: 0;
}

.btn-add-fee[b-shoh8m2quy] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border: none;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    transition: all 0.2s ease;
}

.btn-add-fee:hover[b-shoh8m2quy] {
    background: var(--theme-primary);
    color: white;
}

.stage-fee-items[b-shoh8m2quy] {
    padding: 0.75rem 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.stage-fee-item[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem;
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.fee-input-group[b-shoh8m2quy] {
    flex: 1;
}

.fee-input-group.amount[b-shoh8m2quy] {
    flex: 0 0 140px;
}

.fee-input-group.mandatory[b-shoh8m2quy] {
    flex: 0 0 100px;
}

.checkbox-modern[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: pointer;
}

.btn-icon[b-shoh8m2quy] {
    width: 32px;
    height: 32px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    border: none;
    flex-shrink: 0;
}

.btn-danger-light[b-shoh8m2quy] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
    transition: all 0.2s ease;
}

.btn-danger-light:hover[b-shoh8m2quy] {
    background: var(--theme-danger);
    color: white;
}

.no-fees-message[b-shoh8m2quy] {
    padding: 1.25rem;
    text-align: center;
    color: var(--text-muted);
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
}

.no-fees-message i[b-shoh8m2quy] {
    font-size: 1.25rem;
    opacity: 0.5;
}

/* ---- Review Section ---- */
.review-sections[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.review-card[b-shoh8m2quy] {
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.review-card-header[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.review-card-header i[b-shoh8m2quy] {
    color: var(--theme-primary);
    font-size: 1rem;
}

.review-card-body[b-shoh8m2quy] {
    padding: 0.625rem 1rem;
}

.review-item[b-shoh8m2quy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.375rem 0;
    border-bottom: 1px solid var(--border-color);
}

.review-item:last-child[b-shoh8m2quy] {
    border-bottom: none;
}

.review-item.total[b-shoh8m2quy] {
    margin-top: 0.375rem;
    padding-top: 0.5rem;
    border-top: 2px solid var(--border-color);
    font-weight: 600;
}

.review-label[b-shoh8m2quy] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.review-value[b-shoh8m2quy] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
}

.review-item.total .review-value[b-shoh8m2quy] {
    color: var(--theme-primary);
    font-size: 0.9375rem;
}

.stages-flow[b-shoh8m2quy] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.stage-badge[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface);
    border-radius: 20px;
    border: 2px solid;
    font-size: 0.75rem;
    font-weight: 500;
}

/* ---- Form Footer ---- */
.form-footer[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0.5rem;
    background: var(--bg-surface);
    border-top: 1px solid var(--border-color);
    flex-shrink: 0;
}

.footer-left[b-shoh8m2quy],
.footer-right[b-shoh8m2quy] {
    display: flex;
    gap: 0.5rem;
}

/* ---- Offer Acceptance Settings ---- */
.offer-settings-container[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.settings-card[b-shoh8m2quy] {
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.settings-card-header[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.settings-card-header i[b-shoh8m2quy] {
    font-size: 1rem;
    color: var(--theme-primary);
}

.settings-card-body[b-shoh8m2quy] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.input-with-unit[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.input-with-unit[b-shoh8m2quy]  .fsh-form-group {
    margin-bottom: 0;
    width: 100px;
}

.input-with-unit .unit-label[b-shoh8m2quy] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    white-space: nowrap;
}

.input-with-currency[b-shoh8m2quy] {
    display: flex;
    gap: 0.5rem;
    align-items: flex-start;
}

/* Remove form-group bottom margin when inline */
.input-with-currency[b-shoh8m2quy]  .fsh-form-group {
    margin-bottom: 0;
}

.input-with-currency[b-shoh8m2quy]  .currency-select {
    width: 90px;
    flex-shrink: 0;
}

/* Normalize select border to match numeric input height */
.input-with-currency[b-shoh8m2quy]  .fsh-select {
    border-width: 1px;
}

.input-with-currency[b-shoh8m2quy]  .amount-input {
    flex: 1;
    max-width: 200px;
}

.deposit-fields[b-shoh8m2quy] {
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.offer-settings-summary[b-shoh8m2quy] {
    display: flex;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--theme-info-subtle);
    border: 1px solid var(--theme-info-border, rgba(59, 130, 246, 0.2));
    border-radius: 8px;
    color: var(--text-primary);
    font-size: 0.8125rem;
    line-height: 1.5;
}

.offer-settings-summary i[b-shoh8m2quy] {
    font-size: 1rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.offer-settings-summary strong[b-shoh8m2quy] {
    color: var(--theme-info);
}

/* ---- Responsive ---- */
@media (max-width: 768px) {
    .step-indicator[b-shoh8m2quy] {
        padding: 0.5rem;
        flex-wrap: wrap;
    }

    .step-connector[b-shoh8m2quy] {
        width: 20px;
    }

    .step-label[b-shoh8m2quy] {
        display: none;
    }

    .form-content[b-shoh8m2quy] {
        padding: 0.75rem;
    }

    .form-row[b-shoh8m2quy] {
        grid-template-columns: 1fr;
    }

    .fees-grid[b-shoh8m2quy] {
        grid-template-columns: 1fr;
    }

    .stage-card[b-shoh8m2quy] {
        flex-wrap: wrap;
    }

    .stage-config[b-shoh8m2quy] {
        width: 100%;
        margin-top: 0.5rem;
    }

    .stage-fee-item[b-shoh8m2quy] {
        flex-wrap: wrap;
    }

    .fee-input-group[b-shoh8m2quy],
    .fee-input-group.amount[b-shoh8m2quy],
    .fee-input-group.mandatory[b-shoh8m2quy] {
        flex: 1 1 100%;
    }

    .form-footer[b-shoh8m2quy] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .footer-left[b-shoh8m2quy],
    .footer-right[b-shoh8m2quy] {
        width: 100%;
        justify-content: center;
    }
}

/* ========================================
   SYNC OPTIONS SECTION
   ======================================== */

.sync-options-section[b-shoh8m2quy] {
    margin-top: 1.5rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
}

.sync-header[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

.sync-header i[b-shoh8m2quy] {
    font-size: 1.25rem;
    color: var(--primary);
    margin-bottom: 0.25rem;
}

.sync-header h5[b-shoh8m2quy] {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 600;
    color: var(--text-primary);
}

.sync-header small[b-shoh8m2quy] {
    font-size: 0.8rem;
    color: var(--text-muted);
}

.sync-options[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.sync-option[b-shoh8m2quy] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.375rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.sync-option:hover[b-shoh8m2quy] {
    border-color: var(--primary);
    background: var(--bg-surface-hover);
}

.sync-option[b-shoh8m2quy]  .fsh-checkbox {
    margin-top: 0.125rem;
    flex-shrink: 0;
}

.option-content[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1;
}

.option-label[b-shoh8m2quy] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

.option-hint[b-shoh8m2quy] {
    font-size: 0.75rem;
    color: var(--text-muted);
    line-height: 1.4;
}

.option-hint.text-warning[b-shoh8m2quy] {
    color: var(--warning);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.option-hint.text-warning i[b-shoh8m2quy] {
    font-size: 0.875rem;
}

/* Fee Settings Section */
.fee-settings-section[b-shoh8m2quy] {
    margin-top: 1rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
}

.fee-settings-section .sync-header i[b-shoh8m2quy] {
    color: var(--success);
}

.fee-grace-period[b-shoh8m2quy] {
    padding: 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.375rem;
    margin-bottom: 0.75rem;
}

.fee-grace-period .form-label[b-shoh8m2quy] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.grace-period-input[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.grace-period-input[b-shoh8m2quy]  .rz-numeric {
    width: 120px;
}

.grace-period-hint[b-shoh8m2quy] {
    font-size: 0.75rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.grace-period-hint i[b-shoh8m2quy] {
    font-size: 0.875rem;
    color: var(--info);
}

/* ========================================
   SUBMISSION NOTIFICATIONS SECTION
   ======================================== */

.submission-notifications-section[b-shoh8m2quy] {
    margin-bottom: 1.25rem;
    padding: 1rem;
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.03) 0%, rgba(16, 185, 129, 0.08) 100%);
    border: 1px solid rgba(16, 185, 129, 0.2);
    border-radius: 0.5rem;
}

.submission-notifications-section .sync-header[b-shoh8m2quy] {
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
}

.submission-notifications-section .sync-header i[b-shoh8m2quy] {
    color: var(--success);
}

.notification-options-row[b-shoh8m2quy] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

@media (max-width: 640px) {
    .notification-options-row[b-shoh8m2quy] {
        grid-template-columns: 1fr;
    }
}

.notification-toggle-large[b-shoh8m2quy] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.notification-toggle-large:hover[b-shoh8m2quy] {
    border-color: var(--success);
    background: rgba(16, 185, 129, 0.02);
}

.notification-toggle-large[b-shoh8m2quy]  .fsh-checkbox {
    margin-top: 0.125rem;
    flex-shrink: 0;
}

.notification-toggle-large .toggle-content[b-shoh8m2quy] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    flex: 1;
}

.notification-toggle-large .toggle-content > i[b-shoh8m2quy] {
    font-size: 1.25rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
    flex-shrink: 0;
}

.notification-toggle-large .toggle-text[b-shoh8m2quy] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.notification-toggle-large .toggle-title[b-shoh8m2quy] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

.notification-toggle-large .toggle-hint[b-shoh8m2quy] {
    font-size: 0.75rem;
    color: var(--text-muted);
    line-height: 1.4;
}

/* ========================================
   DYNAMIC STAGE MANAGEMENT
   ======================================== */

/* Stage category badge */
.stage-category-badge[b-shoh8m2quy] {
    display: inline-flex;
    align-items: center;
    padding: 0.125rem 0.5rem;
    font-size: 0.625rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 10px;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

/* Stage action buttons (move up/down, remove) */
.stage-actions[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.stage-action-btn[b-shoh8m2quy] {
    width: 28px;
    height: 28px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    font-size: 0.8125rem;
}

.stage-action-btn:hover[b-shoh8m2quy] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.stage-action-btn.danger:hover[b-shoh8m2quy] {
    border-color: var(--theme-danger);
    color: var(--theme-danger);
    background: var(--theme-danger-subtle);
}

/* Add Stage button */
.add-stage-section[b-shoh8m2quy] {
    margin-left: auto;
}

.btn-add-stage[b-shoh8m2quy] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    border: 1px dashed var(--theme-primary);
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-add-stage:hover[b-shoh8m2quy] {
    background: var(--theme-primary);
    color: white;
    border-style: solid;
}

/* Add Stage Form */
.add-stage-form[b-shoh8m2quy] {
    margin-top: 0.75rem;
    border: 1px solid var(--theme-primary);
    border-radius: 10px;
    overflow: hidden;
    background: var(--bg-surface-secondary);
}

.add-stage-form-header[b-shoh8m2quy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--theme-primary-subtle);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--theme-primary);
}

.add-stage-form-header i[b-shoh8m2quy] {
    font-size: 1rem;
}

.add-stage-form-body[b-shoh8m2quy] {
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.category-options[b-shoh8m2quy] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.category-option[b-shoh8m2quy] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    border: 1.5px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
}

.category-option:hover[b-shoh8m2quy] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.category-option.selected[b-shoh8m2quy] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    font-weight: 600;
}

.category-option i[b-shoh8m2quy] {
    font-size: 1rem;
}

.add-stage-form-actions[b-shoh8m2quy] {
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    padding-top: 0.5rem;
    border-top: 1px solid var(--border-color);
}

@media (max-width: 768px) {
    .stage-actions[b-shoh8m2quy] {
        width: 100%;
        justify-content: flex-end;
        margin-top: 0.5rem;
    }

    .category-options[b-shoh8m2quy] {
        flex-direction: column;
    }

    .category-option[b-shoh8m2quy] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Shared/Reports/DateRangeFilter.razor.rz.scp.css */
/* DateRangeFilter Component Styles */

.date-range-filter[b-pagyc3wvss] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Preset Buttons */
.preset-buttons[b-pagyc3wvss] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.preset-btn[b-pagyc3wvss] {
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
}

.preset-btn:hover[b-pagyc3wvss] {
    border-color: var(--bs-primary);
    color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), 0.05);
}

.preset-btn.active[b-pagyc3wvss] {
    border-color: var(--bs-primary);
    background: var(--bs-primary);
    color: white;
}

/* Date Inputs */
.date-inputs[b-pagyc3wvss] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.date-field[b-pagyc3wvss] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 140px;
}

.date-field label[b-pagyc3wvss] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--bs-secondary);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.date-separator[b-pagyc3wvss] {
    color: var(--bs-secondary);
    font-size: 0.875rem;
    padding-bottom: 0.5rem;
}

.apply-btn[b-pagyc3wvss] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    border: none;
    border-radius: 6px;
    background: var(--bs-primary);
    color: white;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s ease;
}

.apply-btn:hover[b-pagyc3wvss] {
    background: var(--bs-primary-dark);
}

.clear-btn[b-pagyc3wvss] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.clear-btn:hover[b-pagyc3wvss] {
    border-color: var(--bs-danger);
    color: var(--bs-danger);
    background: rgba(var(--bs-danger-rgb), 0.05);
}

/* Responsive */
@media (max-width: 576px) {
    .date-inputs[b-pagyc3wvss] {
        flex-direction: column;
        align-items: stretch;
    }

    .date-field[b-pagyc3wvss] {
        width: 100%;
    }

    .date-separator[b-pagyc3wvss] {
        display: none;
    }

    .apply-btn[b-pagyc3wvss],
    .clear-btn[b-pagyc3wvss] {
        width: 100%;
        justify-content: center;
    }
}
/* /Components/Shared/Reports/ExportDropdown.razor.rz.scp.css */
/* ExportDropdown Component Styles */

.export-dropdown[b-f1jmz17wor] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    position: relative;
}

.export-option[b-f1jmz17wor] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0;
}

.export-option i[b-f1jmz17wor] {
    font-size: 1.125rem;
}

.export-option i.ti-file-type-pdf[b-f1jmz17wor] {
    color: var(--theme-danger);
}

.export-option i.ti-file-spreadsheet[b-f1jmz17wor] {
    color: var(--theme-success);
}

.export-option i.ti-file-text[b-f1jmz17wor] {
    color: var(--theme-info);
}

.export-option i.ti-printer[b-f1jmz17wor] {
    color: var(--theme-gray-500);
}

.export-spinner[b-f1jmz17wor] {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
}

[b-f1jmz17wor] .rz-dropdown {
    border-radius: 6px;
}

[b-f1jmz17wor] .rz-dropdown .rz-inputtext {
    font-weight: 500;
}
/* /Components/Shared/Reports/PaymentReceipt.razor.rz.scp.css */
/*
 * PaymentReceipt Component Styles
 * Professional receipt styling with print optimization
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ===== Container ===== */
.payment-receipt[b-8xoatdyp7n] {
    max-width: 800px;
    margin: 0 auto;
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
}

/* ===== Receipt Paper ===== */
.receipt-paper[b-8xoatdyp7n] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 2.5rem;
    position: relative;
    overflow: hidden;
    box-shadow: var(--shadow-md);
}

/* ===== Watermark ===== */
.receipt-watermark[b-8xoatdyp7n] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%) rotate(-30deg);
    font-size: 8rem;
    font-weight: 800;
    /* Theme-aware watermark — falls back to receipt-green if --theme-success-rgb missing */
    color: rgba(var(--theme-success-rgb, 16, 185, 129), 0.08);
    pointer-events: none;
    z-index: 0;
    letter-spacing: 0.2em;
}

/* ===== Header ===== */
.receipt-header[b-8xoatdyp7n] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
    gap: 2rem;
    position: relative;
    z-index: 1;
}

.company-info[b-8xoatdyp7n] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.company-logo[b-8xoatdyp7n] {
    width: 80px;
    height: 80px;
    object-fit: contain;
    border-radius: 8px;
}

.company-logo-placeholder[b-8xoatdyp7n] {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-inverse);
    font-size: 2.5rem;
}

.company-details[b-8xoatdyp7n] {
    flex: 1;
}

.company-name[b-8xoatdyp7n] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.25rem 0;
}

.company-address[b-8xoatdyp7n],
.company-contact[b-8xoatdyp7n] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0.25rem 0;
}

.company-contact[b-8xoatdyp7n] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.company-contact span[b-8xoatdyp7n] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
}

.receipt-title-section[b-8xoatdyp7n] {
    text-align: right;
}

.receipt-title[b-8xoatdyp7n] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-primary);
    margin: 0 0 0.5rem 0;
    letter-spacing: 0.05em;
}

.receipt-meta[b-8xoatdyp7n] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.meta-item[b-8xoatdyp7n] {
    display: flex;
    justify-content: flex-end;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.meta-label[b-8xoatdyp7n] {
    color: var(--text-secondary);
}

.meta-value[b-8xoatdyp7n] {
    font-weight: 600;
    color: var(--text-primary);
}

/* ===== Divider ===== */
.receipt-divider[b-8xoatdyp7n] {
    height: 1px;
    background: linear-gradient(90deg, transparent, var(--border-color), transparent);
    margin: 1.5rem 0;
}

/* ===== Sections ===== */
.receipt-section[b-8xoatdyp7n] {
    margin-bottom: 1.5rem;
    position: relative;
    z-index: 1;
}

.section-title[b-8xoatdyp7n] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin: 0 0 0.75rem 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.section-title i[b-8xoatdyp7n] {
    font-size: 1rem;
    color: var(--theme-primary);
}

/* ===== Customer Section ===== */
.customer-details[b-8xoatdyp7n] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 1rem 1.25rem;
}

.detail-row[b-8xoatdyp7n] {
    display: flex;
    gap: 0.75rem;
    padding: 0.375rem 0;
}

.detail-row:not(:last-child)[b-8xoatdyp7n] {
    border-bottom: 1px dashed var(--border-color);
}

.detail-label[b-8xoatdyp7n] {
    color: var(--text-secondary);
    font-size: 0.875rem;
    min-width: 100px;
}

.detail-value[b-8xoatdyp7n] {
    color: var(--text-primary);
    font-weight: 500;
    font-size: 0.875rem;
}

/* ===== Payment Details Grid ===== */
.payment-details-grid[b-8xoatdyp7n] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.payment-detail[b-8xoatdyp7n] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.875rem 1rem;
}

.payment-detail .detail-label[b-8xoatdyp7n] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-bottom: 0.25rem;
}

.payment-detail .detail-value[b-8xoatdyp7n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    color: var(--text-primary);
}

.payment-detail .detail-value.mono[b-8xoatdyp7n] {
    font-family: 'SF Mono', 'Fira Code', 'Consolas', monospace;
    font-size: 0.8125rem;
    letter-spacing: 0.025em;
}

/* ===== Items Table ===== */
.items-table[b-8xoatdyp7n] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
}

.items-table thead[b-8xoatdyp7n] {
    background: var(--bg-surface-tertiary);
}

.items-table th[b-8xoatdyp7n] {
    padding: 0.75rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-align: left;
    border-bottom: 2px solid var(--border-color);
}

.items-table th.col-amount[b-8xoatdyp7n] {
    text-align: right;
}

.items-table td[b-8xoatdyp7n] {
    padding: 0.875rem 1rem;
    font-size: 0.875rem;
    color: var(--text-primary);
    border-bottom: 1px solid var(--border-color);
}

.items-table td.col-amount[b-8xoatdyp7n] {
    text-align: right;
    font-weight: 500;
    white-space: nowrap;
}

.items-table td.col-reference[b-8xoatdyp7n] {
    font-family: 'SF Mono', 'Fira Code', 'Consolas', monospace;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.items-table tfoot td[b-8xoatdyp7n] {
    padding: 0.75rem 1rem;
    font-size: 0.875rem;
    background: var(--bg-surface-tertiary);
}

.items-table .subtotal-row td[b-8xoatdyp7n],
.items-table .tax-row td[b-8xoatdyp7n],
.items-table .discount-row td[b-8xoatdyp7n] {
    color: var(--text-secondary);
}

.items-table .discount-row td.col-amount[b-8xoatdyp7n] {
    color: var(--theme-success);
}

.items-table .total-row td[b-8xoatdyp7n] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: var(--text-inverse) !important;
    font-size: 1rem;
}

.items-table .total-row td:first-child[b-8xoatdyp7n] {
    border-radius: 0 0 0 8px;
}

.items-table .total-row td:last-child[b-8xoatdyp7n] {
    border-radius: 0 0 8px 0;
}

/* ===== Amount in Words ===== */
.amount-words[b-8xoatdyp7n] {
    background: var(--theme-warning-subtle);
    border: 1px dashed var(--theme-warning);
    border-radius: 8px;
    padding: 0.875rem 1rem;
    margin-top: 1rem;
}

.words-label[b-8xoatdyp7n] {
    font-size: 0.75rem;
    color: var(--theme-warning-emphasis);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-right: 0.5rem;
}

.words-value[b-8xoatdyp7n] {
    font-size: 0.875rem;
    color: var(--theme-warning-emphasis);
    font-style: italic;
}

/* ===== Status Section ===== */
.status-section[b-8xoatdyp7n] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.status-info[b-8xoatdyp7n] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.status-badge[b-8xoatdyp7n] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    border-radius: 9999px;
    font-weight: 600;
    font-size: 0.875rem;
}

.status-badge.status-success[b-8xoatdyp7n] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-badge.status-pending[b-8xoatdyp7n] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-badge.status-failed[b-8xoatdyp7n] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.confirmation-info[b-8xoatdyp7n] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.confirmation-date[b-8xoatdyp7n] {
    color: var(--text-muted);
}

.verification-qr[b-8xoatdyp7n] {
    text-align: center;
}

.qr-code[b-8xoatdyp7n] {
    width: 80px;
    height: 80px;
    border: 2px solid var(--border-color);
    border-radius: 8px;
    padding: 4px;
    background: var(--bg-surface);
}

.qr-label[b-8xoatdyp7n] {
    display: block;
    font-size: 0.6875rem;
    color: var(--text-muted);
    margin-top: 0.25rem;
}

/* ===== Notes Section ===== */
.notes-text[b-8xoatdyp7n] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 1rem;
    font-size: 0.875rem;
    color: var(--text-primary);
    margin: 0;
    white-space: pre-wrap;
}

/* ===== Footer ===== */
.receipt-footer[b-8xoatdyp7n] {
    text-align: center;
    padding-top: 1.5rem;
    border-top: 2px dashed var(--border-color);
    margin-top: 1.5rem;
}

.footer-message[b-8xoatdyp7n] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--theme-primary);
    margin: 0 0 0.5rem 0;
}

.footer-notice[b-8xoatdyp7n] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin: 0 0 0.25rem 0;
}

.footer-timestamp[b-8xoatdyp7n] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    margin: 0;
}

/* ===== Action Buttons ===== */
.receipt-actions[b-8xoatdyp7n] {
    display: flex;
    justify-content: center;
    gap: 1rem;
    margin-top: 1.5rem;
}

.btn-download[b-8xoatdyp7n] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    background: var(--theme-primary);
    color: var(--text-inverse);
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.btn-download:hover[b-8xoatdyp7n] {
    background: var(--theme-primary-emphasis);
    transform: translateY(-1px);
}

/* ===== Responsive ===== */
@media (max-width: 640px) {
    .receipt-paper[b-8xoatdyp7n] {
        padding: 1.5rem;
        border-radius: 0;
        border-left: none;
        border-right: none;
    }

    .receipt-header[b-8xoatdyp7n] {
        flex-direction: column;
        gap: 1rem;
    }

    .receipt-title-section[b-8xoatdyp7n] {
        text-align: left;
    }

    .meta-item[b-8xoatdyp7n] {
        justify-content: flex-start;
    }

    .payment-details-grid[b-8xoatdyp7n] {
        grid-template-columns: 1fr;
    }

    .status-section[b-8xoatdyp7n] {
        flex-direction: column;
        gap: 1rem;
    }

    .receipt-watermark[b-8xoatdyp7n] {
        font-size: 4rem;
    }
}

/* ===== Print Styles ===== */
@media print {
    .no-print[b-8xoatdyp7n] {
        display: none !important;
    }

    .payment-receipt[b-8xoatdyp7n] {
        max-width: 100%;
        margin: 0;
    }

    .receipt-paper[b-8xoatdyp7n] {
        border: none;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
    }

    .receipt-watermark[b-8xoatdyp7n] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .items-table .total-row td[b-8xoatdyp7n] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .status-badge[b-8xoatdyp7n] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .company-logo-placeholder[b-8xoatdyp7n] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}
/* /Components/Shared/Reports/TransactionReport.razor.rz.scp.css */
/* TransactionReport Component Styles */

.transaction-report[b-3izphd0sku] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Report Header */
.report-header[b-3izphd0sku] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.header-left[b-3izphd0sku] {
    flex: 1;
    min-width: 200px;
}

.report-title[b-3izphd0sku] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.25rem 0;
}

.report-subtitle[b-3izphd0sku] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    margin: 0;
}

.header-right[b-3izphd0sku] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    flex-wrap: wrap;
}

/* Report Table */
.report-table-wrapper[b-3izphd0sku] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.report-table[b-3izphd0sku] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

.report-table thead[b-3izphd0sku] {
    background: var(--bg-surface-secondary);
}

.report-table th[b-3izphd0sku] {
    padding: 0.875rem 1rem;
    text-align: left;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.025em;
    border-bottom: 2px solid var(--border-color);
    white-space: nowrap;
}

.report-table td[b-3izphd0sku] {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

.report-table tbody tr:last-child td[b-3izphd0sku] {
    border-bottom: none;
}

.report-table tbody tr:hover[b-3izphd0sku] {
    background: var(--bg-hover);
}

/* Column widths */
.col-date[b-3izphd0sku] { width: 110px; }
.col-ref[b-3izphd0sku] { width: 150px; }
.col-description[b-3izphd0sku] { min-width: 200px; }
.col-type[b-3izphd0sku] { width: 120px; }
.col-debit[b-3izphd0sku],
.col-credit[b-3izphd0sku],
.col-amount[b-3izphd0sku] { width: 120px; text-align: right; }
.col-balance[b-3izphd0sku] { width: 130px; text-align: right; }
.col-status[b-3izphd0sku] { width: 100px; }

.report-table th.col-debit[b-3izphd0sku],
.report-table th.col-credit[b-3izphd0sku],
.report-table th.col-amount[b-3izphd0sku],
.report-table th.col-balance[b-3izphd0sku] {
    text-align: right;
}

/* Reference Number */
.ref-number[b-3izphd0sku] {
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', monospace;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

/* Description */
.description-text[b-3izphd0sku] {
    display: block;
    color: var(--text-primary);
}

.sub-description[b-3izphd0sku] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

/* Type Badge */
.type-badge[b-3izphd0sku] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.type-badge.invoice[b-3izphd0sku] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.type-badge.payment[b-3izphd0sku] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.type-badge.credit-note[b-3izphd0sku] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.type-badge.refund[b-3izphd0sku] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.type-badge.adjustment[b-3izphd0sku] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

/* Amount */
.amount[b-3izphd0sku] {
    font-weight: 600;
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', monospace;
}

.amount.debit[b-3izphd0sku] {
    color: var(--text-primary);
}

.amount.credit[b-3izphd0sku] {
    color: var(--theme-success);
}

/* Balance */
.balance[b-3izphd0sku] {
    font-weight: 600;
    font-family: 'SF Mono', 'Monaco', 'Inconsolata', monospace;
}

.balance.negative[b-3izphd0sku] {
    color: var(--theme-danger);
}

.cr-label[b-3izphd0sku] {
    font-size: 0.625rem;
    margin-left: 0.25rem;
    vertical-align: super;
}

/* Status Badge */
.status-badge[b-3izphd0sku] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.status-badge.paid[b-3izphd0sku],
.status-badge.completed[b-3izphd0sku] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-badge.pending[b-3izphd0sku] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-badge.overdue[b-3izphd0sku] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.status-badge.cancelled[b-3izphd0sku] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.status-badge.partial[b-3izphd0sku] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

/* Row Styles */
.credit-row[b-3izphd0sku] {
    background: rgba(var(--theme-success-rgb, 16, 185, 129), 0.02);
}

.credit-row:hover[b-3izphd0sku] {
    background: rgba(var(--theme-success-rgb, 16, 185, 129), 0.05) !important;
}

.highlighted[b-3izphd0sku] {
    background: rgba(var(--theme-warning-rgb, 245, 158, 11), 0.05);
}

/* Totals Row */
.totals-row[b-3izphd0sku] {
    background: var(--bg-surface-secondary) !important;
    font-weight: 600;
}

.totals-row td[b-3izphd0sku] {
    border-top: 2px solid var(--border-color);
    padding-top: 1rem;
    padding-bottom: 1rem;
}

/* Empty State */
.empty-row td[b-3izphd0sku] {
    padding: 3rem;
}

.empty-state[b-3izphd0sku] {
    text-align: center;
    color: var(--text-secondary);
}

.empty-state i[b-3izphd0sku] {
    font-size: 2.5rem;
    margin-bottom: 0.5rem;
    display: block;
}

.empty-state p[b-3izphd0sku] {
    margin: 0;
}

/* Report Footer */
.report-footer[b-3izphd0sku] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* Print Styles */
@media print {
    .transaction-report[b-3izphd0sku] {
        padding: 0;
    }

    .header-right[b-3izphd0sku] {
        display: none !important;
    }

    .report-table-wrapper[b-3izphd0sku] {
        box-shadow: none;
        border: 1px solid #dee2e6;
    }

    .report-table th[b-3izphd0sku],
    .report-table td[b-3izphd0sku] {
        padding: 0.5rem;
        font-size: 0.75rem;
    }

    .report-table tbody tr:hover[b-3izphd0sku] {
        background: transparent;
    }

    .report-footer[b-3izphd0sku] {
        background: transparent;
        border-top: 1px solid #dee2e6;
        padding: 0.5rem 0;
        margin-top: 1rem;
    }

    @page {
        margin: 1cm;
    }
}

/* Responsive */
@media (max-width: 992px) {
    .report-header[b-3izphd0sku] {
        flex-direction: column;
    }

    .header-right[b-3izphd0sku] {
        width: 100%;
    }

    .report-table-wrapper[b-3izphd0sku] {
        overflow-x: auto;
    }

    .report-table[b-3izphd0sku] {
        min-width: 800px;
    }
}

@media (max-width: 576px) {
    .report-footer[b-3izphd0sku] {
        flex-direction: column;
        gap: 0.5rem;
        text-align: center;
    }
}

/* ===== Company/Platform Branding Header ===== */
.report-company-header[b-3izphd0sku] {
    padding: 1.5rem;
    border-bottom: 2px solid var(--bs-border-color);
    margin-bottom: 1.5rem;
}

.report-company-header .company-branding[b-3izphd0sku] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1rem;
}

.report-company-header .company-logo[b-3izphd0sku] {
    width: 60px;
    height: 60px;
    object-fit: contain;
}

.report-company-header .company-info .company-name[b-3izphd0sku] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--bs-dark);
    margin: 0 0 0.25rem 0;
}

.report-company-header .company-info .company-address[b-3izphd0sku],
.report-company-header .company-info .company-contact[b-3izphd0sku] {
    font-size: 0.8125rem;
    color: var(--bs-secondary);
    margin: 0;
}

.report-company-header .statement-title[b-3izphd0sku] {
    text-align: center;
    border-top: 1px dashed var(--bs-border-color);
    padding-top: 1rem;
}

.report-company-header .statement-title h2[b-3izphd0sku] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--bs-dark);
    margin: 0 0 0.25rem 0;
}

.report-company-header .statement-title p[b-3izphd0sku] {
    font-size: 0.875rem;
    color: var(--bs-secondary);
    margin: 0;
}

/* ===== Action Column ===== */
.col-action[b-3izphd0sku] {
    width: 80px;
    text-align: center;
}

.action-link[b-3izphd0sku] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--theme-success);
    background: rgba(16, 185, 129, 0.1);
    text-decoration: none;
    transition: all 0.2s ease;
}

.action-link:hover[b-3izphd0sku] {
    background: rgba(16, 185, 129, 0.2);
    color: var(--theme-success-emphasis);
}

.action-link i[b-3izphd0sku] {
    font-size: 0.875rem;
}

/* ===== Footer Company Info ===== */
.footer-company[b-3izphd0sku] {
    margin-bottom: 0.25rem;
    color: var(--bs-dark);
}

/* ===== Print/Screen Visibility ===== */
.print-only[b-3izphd0sku] {
    display: none;
}

.no-print[b-3izphd0sku] {
    display: flex;
}

@media print {
    .print-only[b-3izphd0sku] {
        display: block !important;
    }

    .no-print[b-3izphd0sku] {
        display: none !important;
    }

    .report-company-header[b-3izphd0sku] {
        display: block !important;
        border-bottom: 2px solid #000;
        page-break-inside: avoid;
    }

    .report-company-header .company-logo[b-3izphd0sku] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .footer-company[b-3izphd0sku] {
        display: block !important;
    }

    .col-action[b-3izphd0sku] {
        display: none !important;
    }
}
/* /Components/Shared/Reports/TransactionSummaryCards.razor.rz.scp.css */
/* TransactionSummaryCards Component Styles */

.summary-cards-grid[b-lv2rmkk5ap] {
    display: grid;
    gap: 1rem;
}

.summary-card[b-lv2rmkk5ap] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    background: var(--bg-surface, white);
    border-radius: 12px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
    position: relative;
}

.summary-card.clickable[b-lv2rmkk5ap] {
    cursor: pointer;
}

.summary-card.clickable:hover[b-lv2rmkk5ap] {
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
}

/* Card Icon */
.card-icon[b-lv2rmkk5ap] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.card-icon i[b-lv2rmkk5ap] {
    font-size: 1.5rem;
}

/* Card Content */
.card-content[b-lv2rmkk5ap] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
    flex: 1;
}

.card-label[b-lv2rmkk5ap] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.025em;
    font-weight: 500;
}

.card-value[b-lv2rmkk5ap] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.card-value.positive[b-lv2rmkk5ap] {
    color: var(--theme-success);
}

.card-value.negative[b-lv2rmkk5ap] {
    color: var(--theme-danger);
}

.value-prefix[b-lv2rmkk5ap],
.value-suffix[b-lv2rmkk5ap] {
    font-size: 0.875rem;
    font-weight: 600;
}

.card-sublabel[b-lv2rmkk5ap] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* Card Badge */
.card-badge[b-lv2rmkk5ap] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
}

.card-badge.success[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-success) 10%, transparent);
    color: var(--theme-success);
}

.card-badge.warning[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-warning) 10%, transparent);
    color: var(--theme-warning);
}

.card-badge.danger[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-danger) 10%, transparent);
    color: var(--theme-danger);
}

.card-badge.info[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-info) 10%, transparent);
    color: var(--theme-info);
}

/* Theme Variants */
.summary-card.default .card-icon[b-lv2rmkk5ap] {
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
}

.summary-card.primary .card-icon[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-blue) 10%, transparent);
    color: var(--theme-blue);
}

.summary-card.success .card-icon[b-lv2rmkk5ap],
.summary-card.emerald .card-icon[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-success) 10%, transparent);
    color: var(--theme-success);
}

.summary-card.warning .card-icon[b-lv2rmkk5ap],
.summary-card.orange .card-icon[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-warning) 10%, transparent);
    color: var(--theme-warning);
}

.summary-card.danger .card-icon[b-lv2rmkk5ap],
.summary-card.red .card-icon[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-danger) 10%, transparent);
    color: var(--theme-danger);
}

.summary-card.info .card-icon[b-lv2rmkk5ap],
.summary-card.blue .card-icon[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-info) 10%, transparent);
    color: var(--theme-info);
}

.summary-card.purple .card-icon[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-purple) 10%, transparent);
    color: var(--theme-purple);
}

.summary-card.teal .card-icon[b-lv2rmkk5ap] {
    background: color-mix(in srgb, var(--theme-teal) 10%, transparent);
    color: var(--theme-teal);
}

/* Value colors by theme */
.summary-card.success .card-value[b-lv2rmkk5ap],
.summary-card.emerald .card-value[b-lv2rmkk5ap] {
    color: var(--theme-success);
}

.summary-card.warning .card-value[b-lv2rmkk5ap],
.summary-card.orange .card-value[b-lv2rmkk5ap] {
    color: var(--theme-warning);
}

.summary-card.danger .card-value[b-lv2rmkk5ap],
.summary-card.red .card-value[b-lv2rmkk5ap] {
    color: var(--theme-danger);
}

/* Responsive */
@media (max-width: 768px) {
    .summary-card[b-lv2rmkk5ap] {
        padding: 1rem;
    }

    .card-icon[b-lv2rmkk5ap] {
        width: 40px;
        height: 40px;
    }

    .card-icon i[b-lv2rmkk5ap] {
        font-size: 1.25rem;
    }

    .card-value[b-lv2rmkk5ap] {
        font-size: 1.125rem;
    }
}
/* /Layout/AuthLayout.razor.rz.scp.css */
/* =============================================================================
   AuthLayout — split-screen auth pattern
   -----------------------------------------------------------------------------
   Brand panel (left, tenant primary gradient) + form panel (right, surface).
   Card is constrained so a 2-field login form doesn't sprawl across the page.
   Dark-mode and tenant-brand aware via CSS custom properties.
   ============================================================================= */

/* --- Shell ------------------------------------------------------------------ */

.auth-shell[b-2l2vv6g0on] {
    min-height: 100vh;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: clamp(1rem, 4vw, 3rem) clamp(1rem, 4vw, 2rem);
    gap: 1rem;
    background-color: var(--bg-body);
    background-image:
        radial-gradient(1200px 600px at 10% -10%, var(--theme-primary-subtle, rgba(26,179,148,0.08)), transparent 60%),
        radial-gradient(900px 500px at 110% 110%, var(--theme-primary-subtle, rgba(26,179,148,0.06)), transparent 60%);
    position: relative;
}

.auth-shell-tools[b-2l2vv6g0on] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: flex;
    gap: 0.5rem;
    z-index: 5;
}

/* --- Decorative academic illusions ---------------------------------------- */
/* Outline icons (graduation cap, open book, atom, microscope, pencil) embedded
   as inline SVG data URIs — no extra HTTP requests, no animations, intentionally
   faint. Stroke colour is hex-encoded inside the SVG (URL-safe %23 prefix). */

.auth-shell-pattern[b-2l2vv6g0on] {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    opacity: 0.05;
    background-repeat: no-repeat;
    /* Five icons scattered through the empty space around the card. */
    background-image:
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='1.4' stroke-linecap='round' stroke-linejoin='round'><path d='M22 9 12 5 2 9l10 4 10-4Z'/><path d='M6 10.6V16a6 3 0 0 0 12 0v-5.4'/><path d='M22 9v5'/></svg>"),
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'><path d='M3 19a4 4 0 0 1 4-4h11V5H7a4 4 0 0 0-4 4Z'/><path d='M3 19a4 4 0 0 0 4 4h11v-4'/><path d='M11 9h6'/><path d='M11 13h6'/></svg>"),
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='40' height='40' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='1.5'/><ellipse cx='12' cy='12' rx='10' ry='4' transform='rotate(45 12 12)'/><ellipse cx='12' cy='12' rx='10' ry='4' transform='rotate(-45 12 12)'/></svg>"),
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='38' height='38' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'><path d='M5 22h14'/><path d='M9 18h6l-1 4h-4Z'/><path d='M11 14a3 3 0 0 0 3-3l-3-7a3 3 0 0 0-3 3Z'/><path d='M11 14h6a4 4 0 0 1 0 4'/></svg>"),
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='34' height='34' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'><path d='M4 20h4L20 8l-4-4L4 16Z'/><path d='m14 6 4 4'/><path d='M3 21h18'/></svg>");
    background-position:
        12% 18%,
        78% 30%,
        20% 72%,
        70% 80%,
        45% 8%;
}

/* Brand-panel pattern — same idea but white-stroked (overlays the gradient)
   and positioned in the corners so it never overlaps the logo / title. */
.auth-brand-pattern[b-2l2vv6g0on] {
    position: absolute;
    inset: 0;
    pointer-events: none;
    z-index: 0;
    opacity: 0.10;
    background-repeat: no-repeat;
    background-image:
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'><path d='M22 9 12 5 2 9l10 4 10-4Z'/><path d='M6 10.6V16a6 3 0 0 0 12 0v-5.4'/></svg>"),
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'><circle cx='12' cy='12' r='1.4'/><ellipse cx='12' cy='12' rx='10' ry='4' transform='rotate(45 12 12)'/><ellipse cx='12' cy='12' rx='10' ry='4' transform='rotate(-45 12 12)'/></svg>"),
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='44' height='44' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'><path d='M3 19a4 4 0 0 1 4-4h11V5H7a4 4 0 0 0-4 4Z'/><path d='M3 19a4 4 0 0 0 4 4h11v-4'/></svg>"),
        url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='36' height='36' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='1.3' stroke-linecap='round' stroke-linejoin='round'><path d='M9 18h6l-1 4h-4Z'/><path d='M11 14a3 3 0 0 0 3-3l-3-7a3 3 0 0 0-3 3Z'/></svg>");
    background-position:
        88% 88%,
        18% 78%,
        82% 28%,
        22% 22%;
}

/* Spacer that pushes the support block to the bottom of the brand panel. */
.auth-brand-spacer[b-2l2vv6g0on] { flex: 1 1 auto; min-height: 1rem; }

.auth-shell-foot[b-2l2vv6g0on] {
    margin: 0;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: center;
}

/* --- Card ------------------------------------------------------------------- */

.auth-card[b-2l2vv6g0on] {
    width: 100%;
    max-width: 880px;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 16px;
    box-shadow: 0 20px 50px -20px rgba(15, 23, 42, 0.18),
                0 8px 20px -10px rgba(15, 23, 42, 0.10);
    display: grid;
    grid-template-columns: 380px 1fr;
    overflow: hidden;
    animation: auth-card-in-b-2l2vv6g0on 360ms cubic-bezier(0.16, 1, 0.3, 1) both;
}

@keyframes auth-card-in-b-2l2vv6g0on {
    from { opacity: 0; transform: translateY(12px) scale(0.99); }
    to   { opacity: 1; transform: translateY(0) scale(1); }
}

/* --- Brand panel (left) ----------------------------------------------------- */

.auth-brand[b-2l2vv6g0on] {
    position: relative;
    padding: 2.25rem 2rem 2rem;
    display: flex;
    flex-direction: column;
    color: var(--text-inverse);
    background: linear-gradient(155deg,
        var(--auth-primary) 0%,
        var(--auth-secondary) 100%);
    overflow: hidden;
    isolation: isolate;
}

/* Subtle pattern: a single soft glow + a faint diagonal shimmer.
   Replaces the 12 floating animated icons. */
.auth-brand[b-2l2vv6g0on]::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(420px 320px at 20% 0%, rgba(255, 255, 255, 0.18), transparent 60%),
        radial-gradient(360px 280px at 90% 100%, rgba(0, 0, 0, 0.10), transparent 60%);
    pointer-events: none;
    z-index: -1;
}

.auth-brand[b-2l2vv6g0on]::after {
    content: "";
    position: absolute;
    inset: -10%;
    background-image: linear-gradient(115deg,
        transparent 47%,
        rgba(255, 255, 255, 0.06) 49%,
        rgba(255, 255, 255, 0.06) 51%,
        transparent 53%);
    pointer-events: none;
    z-index: -1;
}

.auth-brand-mark[b-2l2vv6g0on] {
    width: 96px;
    height: 96px;
    border-radius: 20px;
    background: rgba(255, 255, 255, 0.96);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 12px;
    box-shadow: 0 12px 24px -10px rgba(0, 0, 0, 0.25);
    margin-bottom: 1.25rem;
}

.auth-brand-mark img[b-2l2vv6g0on] {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
}

.auth-brand-mark-fallback[b-2l2vv6g0on] {
    font-size: 2.25rem;
    color: var(--auth-primary);
}

.auth-brand-title[b-2l2vv6g0on] {
    font-size: 1.375rem;
    font-weight: 700;
    margin: 0 0 0.4rem;
    letter-spacing: -0.01em;
    line-height: 1.25;
    color: var(--text-inverse);
}

.auth-brand-tagline[b-2l2vv6g0on] {
    margin: 0 0 1.5rem;
    font-size: 0.9rem;
    line-height: 1.5;
    color: rgba(255, 255, 255, 0.85);
}

/* Legacy .auth-brand-points rules removed 2026-05-03 — bullet copy was dropped from
   the brand panel. Layout flow is now: logo → tenant name → tagline → spacer → support. */

.auth-brand-support[b-2l2vv6g0on] {
    margin-top: auto;
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.18);
    display: flex;
    align-items: flex-start;
    gap: 0.6rem;
    font-size: 0.8125rem;
}

.auth-brand-support > i[b-2l2vv6g0on] {
    margin-top: 2px;
    color: rgba(255, 255, 255, 0.85);
}

.auth-brand-support-lines[b-2l2vv6g0on] {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
    min-width: 0;
}

.auth-brand-support-label[b-2l2vv6g0on] {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.7rem;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.auth-brand-support a[b-2l2vv6g0on] {
    color: var(--text-inverse);
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.auth-brand-support a:hover[b-2l2vv6g0on] {
    text-decoration: underline;
}

/* --- Form panel (right) ----------------------------------------------------- */

.auth-form-panel[b-2l2vv6g0on] {
    padding: clamp(1.75rem, 4vw, 2.75rem) clamp(1.5rem, 4vw, 2.5rem);
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
}

.auth-form-column[b-2l2vv6g0on] {
    width: 100%;
    max-width: 400px;
    display: flex;
    flex-direction: column;
}

/* Form-level typography so child @code blocks render at consistent sizes.
   .text-center is preserved as Bootstrap intends — success/error state pages
   rely on it; the form column is narrow enough that centred headings look fine. */

.auth-form-column[b-2l2vv6g0on]  h1,
.auth-form-column[b-2l2vv6g0on]  h2 {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    margin: 0 0 0.35rem;
    color: var(--text-heading);
}

.auth-form-column[b-2l2vv6g0on]  h2 + p,
.auth-form-column[b-2l2vv6g0on]  h1 + p {
    margin: 0 0 1.5rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

/* Tenant signing-in banner (shown when tenant context is resolved) */
.auth-form-column[b-2l2vv6g0on]  .tenant-login-banner {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.625rem 0.875rem;
    margin-bottom: 1.25rem;
    background: var(--theme-primary-subtle);
    border: 1px solid var(--theme-primary);
    border-radius: 8px;
    color: var(--text-primary);
    font-size: 0.8125rem;
}

.auth-form-column[b-2l2vv6g0on]  .tenant-login-banner i {
    color: var(--theme-primary);
}

/* Browser autofill: don't let Chrome paint the inputs banana-yellow.
   The long-duration box-shadow mask + matching text-fill-color keeps the
   theme's input colours visible even after autofill. */
.auth-form-column[b-2l2vv6g0on]  input:-webkit-autofill,
.auth-form-column[b-2l2vv6g0on]  input:-webkit-autofill:hover,
.auth-form-column[b-2l2vv6g0on]  input:-webkit-autofill:focus,
.auth-form-column[b-2l2vv6g0on]  input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px var(--input-bg) inset !important;
    -webkit-text-fill-color: var(--input-text) !important;
    caret-color: var(--input-text);
    transition: background-color 9999s ease-out 0s;
}

/* Tighten spacing between rows in the form column. */
.auth-form-column[b-2l2vv6g0on]  .mb-3 { margin-bottom: 1rem !important; }

/* Social / oauth row: smaller, single-row buttons. */
.auth-form-column[b-2l2vv6g0on]  .social-login-providers,
.auth-form-column[b-2l2vv6g0on]  .oauth-providers {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* --- Responsive ------------------------------------------------------------- */

/* Tablet: keep split but trim brand width. */
@media (max-width: 920px) {
    .auth-card[b-2l2vv6g0on] { grid-template-columns: 320px 1fr; max-width: 760px; }
    .auth-brand[b-2l2vv6g0on] { padding: 1.75rem 1.5rem; }
}

/* Mobile: stack — brand becomes a compact header strip. */
@media (max-width: 720px) {
    .auth-shell[b-2l2vv6g0on] { padding: 1rem 1rem 2rem; }

    .auth-card[b-2l2vv6g0on] {
        grid-template-columns: 1fr;
        max-width: 460px;
    }

    .auth-brand[b-2l2vv6g0on] {
        padding: 1.5rem 1.25rem 1.25rem;
        text-align: center;
        align-items: center;
    }

    .auth-brand-mark[b-2l2vv6g0on] {
        width: 72px;
        height: 72px;
        border-radius: 16px;
        margin-bottom: 0.75rem;
    }

    .auth-brand-title[b-2l2vv6g0on] { font-size: 1.125rem; margin-bottom: 0.25rem; }
    .auth-brand-tagline[b-2l2vv6g0on] { margin-bottom: 0; font-size: 0.8125rem; }

    /* Hide support and the brand pattern on mobile to keep the brand header
       compact — the form is the priority. Support contact is still reachable
       from the standard help link in the form footer. */
    .auth-brand-support[b-2l2vv6g0on] { display: none; }
    .auth-brand-pattern[b-2l2vv6g0on] { opacity: 0.06; }

    .auth-form-panel[b-2l2vv6g0on] { padding: 1.5rem 1.25rem 1.75rem; }
}

@media (max-width: 380px) {
    .auth-shell[b-2l2vv6g0on] { padding: 0.5rem 0.5rem 1.5rem; }
    .auth-form-panel[b-2l2vv6g0on] { padding: 1.25rem 1rem 1.5rem; }
}

/* --- Dark mode -------------------------------------------------------------- */

:global([data-bs-theme="dark"]) .auth-shell[b-2l2vv6g0on] {
    background-color: var(--bg-body);
    background-image:
        radial-gradient(1200px 600px at 10% -10%, rgba(118, 209, 191, 0.08), transparent 60%),
        radial-gradient(900px 500px at 110% 110%, rgba(118, 209, 191, 0.06), transparent 60%);
}

:global([data-bs-theme="dark"]) .auth-card[b-2l2vv6g0on] {
    border-color: var(--border-color);
    box-shadow: 0 25px 60px -25px rgba(0, 0, 0, 0.55),
                0 8px 24px -12px rgba(0, 0, 0, 0.40);
}

/* Brand panel keeps tenant gradient in dark mode (intentional — brand colour is
   the constant). Slightly darker glow overlay so the contrast stays comfortable. */
:global([data-bs-theme="dark"]) .auth-brand[b-2l2vv6g0on]::before {
    background:
        radial-gradient(420px 320px at 20% 0%, rgba(255, 255, 255, 0.10), transparent 60%),
        radial-gradient(360px 280px at 90% 100%, rgba(0, 0, 0, 0.30), transparent 60%);
}

:global([data-bs-theme="dark"]) .auth-form-panel[b-2l2vv6g0on] {
    background: var(--bg-surface);
}

/* --- Reduced motion --------------------------------------------------------- */

@media (prefers-reduced-motion: reduce) {
    .auth-card[b-2l2vv6g0on] { animation: none !important; }
}
/* /Layout/CategoryMenu.razor.rz.scp.css */
/* Categories Button */
.categories-btn[b-igs9k0a9qw] {
    display: flex;
    align-items: center;
    padding: var(--space-2) var(--space-4);
    color: var(--text-primary);
    font-weight: var(--font-semibold);
    font-size: var(--text-lg);
    background-color: var(--theme-gray-50);
    border-radius: var(--radius-lg);
    transition: all var(--transition-slow);
    cursor: pointer;
    margin: var(--space-3) auto;
}

    .categories-btn:hover[b-igs9k0a9qw] {
        background-color: var(--theme-gray-200);
    }

/* Main Categories Menu */
.category-menu[b-igs9k0a9qw] {
    position: absolute;
    left: 0;
    display: flex;
    flex-direction: column;
    background-color: var(--bg-surface);
    box-shadow: var(--shadow-md);
    border-radius: var(--radius-lg);
    padding: var(--space-2) 0;
    margin-top: var(--space-1);
    z-index: var(--z-dropdown);
    width: 318px;
}

.category-item[b-igs9k0a9qw] {
    padding: var(--space-2) var(--space-4);
    color: var(--text-primary);
    font-size: var(--text-base);
    display: flex;
    align-items: center;
    justify-content: space-between;
    cursor: pointer;
    transition: background-color var(--transition-slow);
    position: relative;
}

    .category-item:hover[b-igs9k0a9qw] {
        background-color: var(--theme-gray-50);
        color: var(--theme-info);
    }

    .category-item i[b-igs9k0a9qw] {
        font-size: var(--text-lg);
        color: var(--theme-info);
        margin-right: var(--space-2);
    }

/* Submenu */
.submenu[b-igs9k0a9qw] {
    position: absolute;
    left: 100%;
    top: 0;
    background-color: var(--bg-surface);
    box-shadow: var(--shadow-md);
    border-radius: var(--radius-lg);
    padding: var(--space-2) var(--space-4);
    min-width: 200px;
    display: none;
}

.category-item:hover .submenu[b-igs9k0a9qw] {
    display: block;
}

.submenu-item[b-igs9k0a9qw] {
    display: flex;
    align-items: center;
    padding: var(--space-2) var(--space-2);
    color: var(--text-primary);
    font-size: var(--text-sm);
    transition: color var(--transition-slow);
}

    .submenu-item:hover[b-igs9k0a9qw] {
        color: var(--theme-success);
    }

    .submenu-item i[b-igs9k0a9qw] {
        font-size: var(--text-lg);
        color: var(--theme-success);
        margin-right: var(--space-2);
    }
/* Mobile Styles */
@media (max-width: 768px) {
    .categories-btn[b-igs9k0a9qw] {
        display:none;
    }
}
/* /Layout/MainLayout.razor.rz.scp.css */
/* MainLayout.razor.css - Using Theme Variables */

/* PWA Update Dialog Styles */

.update-overlay[b-jzswhejw2w] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: color-mix(in srgb, var(--text-primary) 60%, transparent);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 9999;
    animation: fadeIn 0.3s ease-out;
}

.update-dialog[b-jzswhejw2w] {
    background: var(--bg-surface);
    border-radius: 16px;
    padding: 2rem;
    max-width: 450px;
    width: 90%;
    box-shadow: var(--shadow-lg);
    animation: slideUp 0.3s ease-out;
    text-align: center;
}

.update-dialog-icon[b-jzswhejw2w] {
    width: 80px;
    height: 80px;
    margin: 0 auto 1.5rem;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-info) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    animation: pulse 2s ease-in-out infinite;
}

.update-dialog-icon i[b-jzswhejw2w] {
    font-size: 2.5rem;
    color: white;
}

.update-dialog-title[b-jzswhejw2w] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 1rem;
}

.update-dialog-message[b-jzswhejw2w] {
    font-size: 1rem;
    color: var(--text-secondary);
    line-height: 1.6;
    margin-bottom: 2rem;
}

.update-dialog-actions[b-jzswhejw2w] {
    display: flex;
    gap: 1rem;
    justify-content: center;
}

.update-dialog-actions .btn[b-jzswhejw2w] {
    padding: 0.75rem 1.5rem;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 8px;
    border: none;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.2s ease;
}

.update-dialog-actions .btn-primary[b-jzswhejw2w] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-info) 100%);
    color: white;
}

.update-dialog-actions .btn-primary:hover[b-jzswhejw2w] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.update-dialog-actions .btn-secondary[b-jzswhejw2w] {
    background: var(--bg-body);
    color: var(--text-secondary);
}

.update-dialog-actions .btn-secondary:hover[b-jzswhejw2w] {
    background: var(--border-color);
}

/* Animations */
@keyframes    to-b-jzswhejw2w {
        opacity: 1;
    }
}

@keyframes    to-b-jzswhejw2w {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes    50%[b-jzswhejw2w] {
        transform: scale(1.05);
    }
}
/* /Layout/Partials/Footer.razor.rz.scp.css */
/**
 * Admin Footer - Scoped Styles
 * Sticky footer at bottom using flexbox (defined in admin-layout.css)
 * This file provides additional scoped styling
 */

[b-s50baiiaeo] .footer .row {
    margin: 0;
    align-items: center;
}

[b-s50baiiaeo] .footer .col-md-6 {
    padding-top: 0;
    padding-bottom: 0;
}
/* /Layout/Partials/PublicFooter.razor.rz.scp.css */
/**
 * PublicFooter - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* Modern Footer Styles */
.modern-footer[b-cxswp2bjzu] {
    background: var(--gradient-footer);
    color: var(--theme-gray-300);
    margin-top: auto;
}

.footer-main[b-cxswp2bjzu] {
    padding: 80px 0 40px;
    position: relative;
}

.footer-main[b-cxswp2bjzu]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.02'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    pointer-events: none;
}

.footer-widget[b-cxswp2bjzu] {
    position: relative;
    z-index: 1;
}

.footer-logo[b-cxswp2bjzu] {
    margin-bottom: 24px;
}

.footer-logo img[b-cxswp2bjzu] {
    max-height: 50px;
}

.footer-description[b-cxswp2bjzu] {
    font-size: 0.9375rem;
    line-height: 1.8;
    color: var(--theme-gray-400);
    margin-bottom: 24px;
}

.footer-social[b-cxswp2bjzu] {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
}

.social-link[b-cxswp2bjzu] {
    width: 42px;
    height: 42px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    transition: all 0.3s ease;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.15);
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
}

.social-link i[b-cxswp2bjzu] {
    color: inherit;
}

.social-link:hover[b-cxswp2bjzu] {
    transform: translateY(-4px);
    color: white;
    border-color: transparent;
}

/* Social media brand colors */
.social-link.facebook[b-cxswp2bjzu] {
    background: rgba(24, 119, 242, 0.15);
    color: var(--theme-info);
    border-color: rgba(24, 119, 242, 0.3);
}

.social-link.facebook:hover[b-cxswp2bjzu] {
    background: var(--theme-info);
    color: white;
}

.social-link.twitter[b-cxswp2bjzu] {
    background: rgba(29, 161, 242, 0.15);
    color: var(--theme-info);
    border-color: rgba(29, 161, 242, 0.3);
}

.social-link.twitter:hover[b-cxswp2bjzu] {
    background: var(--theme-info);
    color: white;
}

.social-link.instagram[b-cxswp2bjzu] {
    background: rgba(221, 42, 123, 0.15);
    color: var(--theme-purple);
    border-color: rgba(221, 42, 123, 0.3);
}

.social-link.instagram:hover[b-cxswp2bjzu] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-purple) 50%, var(--theme-purple-emphasis) 100%);
    color: white;
}

.social-link.youtube[b-cxswp2bjzu] {
    background: rgba(255, 0, 0, 0.15);
    color: var(--theme-danger);
    border-color: rgba(255, 0, 0, 0.3);
}

.social-link.youtube:hover[b-cxswp2bjzu] {
    background: var(--theme-danger);
    color: white;
}

.social-link.linkedin[b-cxswp2bjzu] {
    background: rgba(0, 119, 181, 0.15);
    color: var(--theme-info);
    border-color: rgba(0, 119, 181, 0.3);
}

.social-link.linkedin:hover[b-cxswp2bjzu] {
    background: var(--theme-info-emphasis);
    color: white;
}

.social-link.whatsapp[b-cxswp2bjzu] {
    background: rgba(37, 211, 102, 0.15);
    color: var(--theme-success);
    border-color: rgba(37, 211, 102, 0.3);
}

.social-link.whatsapp:hover[b-cxswp2bjzu] {
    background: var(--theme-success);
    color: white;
}

.footer-widget-title[b-cxswp2bjzu] {
    font-size: 1.125rem;
    font-weight: 700;
    color: white;
    margin-bottom: 24px;
    position: relative;
    padding-bottom: 12px;
}

.footer-widget-title[b-cxswp2bjzu]::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 40px;
    height: 3px;
    background: var(--gradient-indigo);
    border-radius: 3px;
}

.footer-links[b-cxswp2bjzu] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.footer-links li[b-cxswp2bjzu] {
    margin-bottom: 12px;
}

.footer-links a[b-cxswp2bjzu] {
    color: var(--theme-gray-400);
    text-decoration: none;
    font-size: 0.9375rem;
    display: flex;
    align-items: center;
    gap: 8px;
    transition: all 0.3s ease;
}

.footer-links a:hover[b-cxswp2bjzu] {
    color: var(--theme-indigo);
    transform: translateX(4px);
}

.footer-links a i[b-cxswp2bjzu] {
    font-size: 0.875rem;
}

.footer-newsletter-text[b-cxswp2bjzu] {
    font-size: 0.875rem;
    color: var(--theme-gray-400);
    margin-bottom: 16px;
    line-height: 1.6;
}

.footer-newsletter[b-cxswp2bjzu] {
    margin-bottom: 24px;
}

.newsletter-input-group[b-cxswp2bjzu] {
    position: relative;
    display: flex;
    background: var(--bg-surface-overlay-dark);
    border-radius: 12px;
    overflow: hidden;
    border: 2px solid rgba(255, 255, 255, 0.1);
    transition: all 0.3s ease;
}

.newsletter-input-group:focus-within[b-cxswp2bjzu] {
    border-color: var(--theme-indigo);
    background: rgba(255, 255, 255, 0.08);
}

.newsletter-input[b-cxswp2bjzu] {
    flex: 1;
    background: transparent;
    border: none;
    padding: 12px 16px;
    color: white;
    font-size: 0.9375rem;
}

.newsletter-input[b-cxswp2bjzu]::placeholder {
    color: var(--theme-gray-500);
}

.newsletter-input:focus[b-cxswp2bjzu] {
    outline: none;
}

.newsletter-btn[b-cxswp2bjzu] {
    background: var(--gradient-indigo);
    border: none;
    color: white;
    padding: 0 20px;
    cursor: pointer;
    transition: all 0.3s ease;
    font-size: 1.125rem;
}

.newsletter-btn:hover[b-cxswp2bjzu] {
    background: linear-gradient(135deg, var(--theme-indigo-dark) 0%, var(--theme-purple-emphasis) 100%);
}

.footer-contact-info[b-cxswp2bjzu] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.contact-item[b-cxswp2bjzu] {
    display: flex;
    align-items: center;
    gap: 10px;
    font-size: 0.875rem;
    color: var(--theme-gray-400);
}

.contact-item i[b-cxswp2bjzu] {
    width: 32px;
    height: 32px;
    background: rgba(99, 102, 241, 0.1);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-indigo);
    flex-shrink: 0;
    font-size: 1rem;
}

.footer-bottom[b-cxswp2bjzu] {
    padding: 24px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.footer-copyright[b-cxswp2bjzu] {
    font-size: 0.9375rem;
    color: var(--theme-gray-400);
    margin: 0;
}

.footer-copyright .fw-semibold[b-cxswp2bjzu] {
    color: white;
}

.footer-bottom-links[b-cxswp2bjzu] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    flex-wrap: wrap;
}

.footer-bottom-links a[b-cxswp2bjzu] {
    color: var(--theme-gray-400);
    text-decoration: none;
    font-size: 0.9375rem;
    transition: all 0.3s ease;
}

.footer-bottom-links a:hover[b-cxswp2bjzu] {
    color: var(--theme-indigo);
}

.footer-bottom-links .separator[b-cxswp2bjzu] {
    color: var(--theme-gray-600);
}

/* Responsive */
@media (max-width: 767px) {
    .footer-main[b-cxswp2bjzu] {
        padding: 60px 0 30px;
    }

    .footer-widget[b-cxswp2bjzu] {
        margin-bottom: 40px;
    }

    .footer-widget:last-child[b-cxswp2bjzu] {
        margin-bottom: 0;
    }

    .footer-bottom[b-cxswp2bjzu] {
        padding: 20px 0;
    }

    .footer-copyright[b-cxswp2bjzu],
    .footer-bottom-links[b-cxswp2bjzu] {
        text-align: center !important;
        margin-bottom: 12px;
    }

    .footer-bottom-links[b-cxswp2bjzu] {
        justify-content: center;
    }

    .footer-social[b-cxswp2bjzu] {
        justify-content: center;
    }

    .footer-widget-title[b-cxswp2bjzu]::after {
        left: 50%;
        transform: translateX(-50%);
    }

    .footer-widget[b-cxswp2bjzu] {
        text-align: center;
    }

    .footer-links a[b-cxswp2bjzu] {
        justify-content: center;
    }

    .footer-description[b-cxswp2bjzu] {
        text-align: center;
    }

    .footer-contact-info[b-cxswp2bjzu] {
        align-items: center;
    }
}

@media (min-width: 768px) {
    .footer-bottom-links[b-cxswp2bjzu] {
        justify-content: flex-end;
    }
}
/* /Layout/Partials/PublicHeader.razor.rz.scp.css */
/**
 * PublicHeader - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   UTILITY CLASSES
   ======================================== */

.position-relative[b-4frv5r5c07] {
    position: relative;
}

.text-decoration-none[b-4frv5r5c07] {
    text-decoration: none;
}

.text-decoration-none:hover[b-4frv5r5c07] {
    text-decoration: none;
}

/* ========================================
   DROPDOWN HEADER STYLES
   ======================================== */

.dropdown-header-spacer[b-4frv5r5c07] {
    justify-content: space-between;
}

.dropdown-title[b-4frv5r5c07] {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
}

.dropdown-title-icon[b-4frv5r5c07] {
    margin-right: 0.5rem;
}

.view-all-link[b-4frv5r5c07] {
    font-size: 0.8125rem;
    color: var(--theme-primary);
    text-decoration: none;
    font-weight: 600;
}

.view-all-link:hover[b-4frv5r5c07] {
    text-decoration: underline;
}

/* ========================================
   CART DROPDOWN CONTENT
   ======================================== */

.cart-scroll-container[b-4frv5r5c07] {
    max-height: 300px;
    overflow-y: auto;
}

.cart-instructor-icon[b-4frv5r5c07] {
    font-size: 0.75rem;
}

.cart-item-footer[b-4frv5r5c07] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

/* ========================================
   CART PRICING STYLES
   ======================================== */

.cart-price-original[b-4frv5r5c07] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-left: 0.25rem;
}

.cart-subtotal-label[b-4frv5r5c07] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.cart-subtotal-value[b-4frv5r5c07] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.cart-total-label[b-4frv5r5c07] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.cart-total-value[b-4frv5r5c07] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-primary);
}

/* ========================================
   CHECKOUT BUTTON
   ======================================== */

.checkout-btn[b-4frv5r5c07] {
    display: block;
    margin-top: 0.75rem;
    padding: 0.625rem;
    text-align: center;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: white;
    border-radius: 8px;
    text-decoration: none;
    font-weight: 600;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.checkout-btn:hover[b-4frv5r5c07] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
    color: white;
}

.checkout-btn-icon[b-4frv5r5c07] {
    margin-right: 0.5rem;
}

/* ========================================
   USER MENU AVATAR
   ======================================== */

.avatar-container[b-4frv5r5c07] {
    position: relative;
}

/* ========================================
   LOGOUT LINK
   ======================================== */

.logout-link[b-4frv5r5c07] {
    color: var(--theme-danger) !important;
}

.logout-link:hover[b-4frv5r5c07] {
    background-color: var(--theme-danger-subtle);
}

/* ========================================
   SIGNUP SPLIT BUTTON
   ======================================== */

.signup-btn-group[b-4frv5r5c07] {
    display: flex;
    align-items: stretch;
    border-radius: 8px;
    overflow: hidden;
}

.signup-btn-group .modern-auth-btn.signup[b-4frv5r5c07] {
    border-radius: 8px 0 0 8px;
    border-right: 1px solid rgba(255, 255, 255, 0.2);
}

.signup-toggle-btn[b-4frv5r5c07] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 0.5rem;
    background: var(--theme-primary);
    border: none;
    border-radius: 0 8px 8px 0;
    color: white;
    cursor: pointer;
    transition: background 0.2s ease;
}

.signup-toggle-btn:hover[b-4frv5r5c07] {
    background: var(--theme-primary-emphasis);
}

.signup-toggle-btn i[b-4frv5r5c07] {
    font-size: 0.875rem;
}

/* ========================================
   SIGNUP MENU (Click-based)
   ======================================== */

.signup-menu-overlay[b-4frv5r5c07] {
    position: fixed;
    inset: 0;
    z-index: 1040;
}

.signup-menu[b-4frv5r5c07] {
    position: absolute;
    top: calc(100% + 0.5rem);
    right: 0;
    min-width: 280px;
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-lg);
    padding: 0.5rem;
    z-index: 1050;
    animation: slideDown 0.2s ease;
}

@keyframes    to-b-4frv5r5c07 {
        opacity: 1;
        transform: translateY(0);
    }
}

.signup-menu-item[b-4frv5r5c07] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem;
    border-radius: 8px;
    text-decoration: none;
    transition: background 0.2s ease;
}

.signup-menu-item:hover[b-4frv5r5c07] {
    background: var(--bg-surface-tertiary);
    text-decoration: none;
}

.signup-menu-icon[b-4frv5r5c07] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: white;
    font-size: 1.125rem;
}

.signup-menu-icon.institution[b-4frv5r5c07] {
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-secondary));
}

.signup-menu-icon.user[b-4frv5r5c07] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
}

.signup-menu-text[b-4frv5r5c07] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.signup-menu-text strong[b-4frv5r5c07] {
    color: var(--text-primary);
    font-size: 0.875rem;
}

.signup-menu-text span[b-4frv5r5c07] {
    color: var(--text-secondary);
    font-size: 0.75rem;
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

@media (max-width: 768px) {
    .header-three[b-4frv5r5c07] {
        padding: 10px 15px;
    }

    .navbar-brand img[b-4frv5r5c07] {
        width: 120px;
    }

    .header-navbar-rht li[b-4frv5r5c07] {
        margin-left: 10px;
    }

    .header-top .icon-btn[b-4frv5r5c07] {
        font-size: 0.85rem;
    }

    .signup-dropdown[b-4frv5r5c07] {
        min-width: 260px;
    }

    .signup-dropdown-item[b-4frv5r5c07] {
        padding: 0.75rem;
    }
}

@media (max-width: 576px) {
    .header-top .icon-btn[b-4frv5r5c07] {
        display: none;
    }

    .header-three .header-nav-three[b-4frv5r5c07] {
        padding: 5px 10px;
    }

    .signup-dropdown[b-4frv5r5c07] {
        min-width: 240px;
    }

    .signup-icon-box[b-4frv5r5c07] {
        width: 36px;
        height: 36px;
    }

    .signup-icon[b-4frv5r5c07] {
        font-size: 1rem;
    }

    .signup-option-description[b-4frv5r5c07] {
        font-size: 0.75rem;
    }
}
/* /Layout/Partials/Topbar.razor.rz.scp.css */
/**
 * Topbar - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* ========================================
   USER PILL  (avatar + name + chevron)
   ----------------------------------------
   One cohesive button. flex-shrink:0 so it never gets squeezed by neighbours.
   max-width on the name with ellipsis so long usernames truncate gracefully.
   Subtle hover affordance so it reads as actionable. Whitelabel-safe via tokens.
   ======================================== */

.user-pill[b-y75n2dpeqh] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.625rem 0.25rem 0.25rem;
    border-radius: 999px;
    color: var(--text-primary);
    text-decoration: none;
    line-height: 1;
    transition: background-color var(--sidenav-transition-fast, 0.15s ease);
    flex-shrink: 0;
    max-width: 280px;
    min-width: 0; /* allow inner name to honour its own max-width */
}

/* Suppress Bootstrap's .dropdown-toggle::after caret — we render our own .user-pill-chevron. */
.user-pill.dropdown-toggle[b-y75n2dpeqh]::after {
    display: none !important;
}

.user-pill:hover[b-y75n2dpeqh],
.user-pill:focus-visible[b-y75n2dpeqh] {
    background: var(--bg-hover, rgba(0, 0, 0, 0.05));
    color: var(--text-primary);
}

.user-pill-avatar[b-y75n2dpeqh] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    object-fit: cover;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

/* MUST be block-level (inline-block, not inline) for max-width + ellipsis to take effect.
   Bootstrap's `.d-lg-inline` would reset this to display:inline and silently break clipping —
   the markup uses `.d-lg-inline-block`, and we re-assert here so any stray utility cannot
   undo the truncation. */
.user-pill-name[b-y75n2dpeqh] {
    display: none;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 180px;
    min-width: 0;
    vertical-align: middle;
}

@media (min-width: 992px) {
    .user-pill-name[b-y75n2dpeqh] {
        display: inline-block;
    }
}

.user-pill-chevron[b-y75n2dpeqh] {
    display: none;
    color: var(--text-muted);
    font-size: 0.875rem;
    flex-shrink: 0;
    transition: transform 0.15s ease;
    vertical-align: middle;
}

@media (min-width: 992px) {
    .user-pill-chevron[b-y75n2dpeqh] {
        display: inline-block;
    }
}

.user-pill[aria-expanded="true"] .user-pill-chevron[b-y75n2dpeqh] {
    transform: rotate(180deg);
}

/* Vertical divider between the icon cluster and the user pill. */
.topbar-divider[b-y75n2dpeqh] {
    width: 1px;
    height: 24px;
    background: var(--border-color);
    margin: 0 0.25rem;
    flex-shrink: 0;
    align-self: center;
}

/* ========================================
   AVATAR INITIALS (when no profile image)
   ======================================== */

/* Initials fallback shares the .user-pill-avatar dimensions; this rule only
   sets colour + font. */
.avatar-initials[b-y75n2dpeqh] {
    background: var(--theme-primary);
    color: var(--text-inverse);
    font-weight: 600;
    font-size: 13px;
    transition: background var(--sidenav-transition-fast);
}

.user-pill-avatar.avatar-initials:hover[b-y75n2dpeqh] {
    background: var(--theme-primary-emphasis);
}

/* ========================================
   APP NAME IN TOPBAR
   ======================================== */

.app-name[b-y75n2dpeqh] {
    font-size: var(--text-base, 1rem);
    letter-spacing: -0.01em;
}

/* ========================================
   LOGO ADJUSTMENTS
   ======================================== */

.logo-topbar .logo-lg img[b-y75n2dpeqh],
.logo-topbar .logo-sm img[b-y75n2dpeqh] {
    max-height: 40px;
    width: auto;
    object-fit: contain;
}

/* ========================================
   TOPBAR BRAND  (logo + tenant name on the left)
   ----------------------------------------
   Sits beside the menu-toggle so the tenant identity is always visible
   on the topbar, regardless of sidebar state. Token-driven so it adapts
   to dark mode and per-tenant whitelabel colours automatically.
   ======================================== */

.topbar-brand[b-y75n2dpeqh] {
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.25rem 0.5rem;
    text-decoration: none;
    color: var(--text-primary);
    border-radius: var(--radius-md, 8px);
    transition: background-color var(--sidenav-transition-fast, 0.15s ease);
    flex-shrink: 0;
    min-width: 0;
    max-width: 320px;
}

.topbar-brand:hover[b-y75n2dpeqh],
.topbar-brand:focus-visible[b-y75n2dpeqh] {
    background: var(--bg-hover, rgba(0, 0, 0, 0.05));
    color: var(--text-primary);
}

.topbar-brand-logo[b-y75n2dpeqh] {
    height: 32px;
    width: auto;
    max-width: 140px;
    object-fit: contain;
    flex-shrink: 0;
}

.topbar-brand-mark[b-y75n2dpeqh] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    /* Solid tenant-primary fill so the mark is unambiguously visible against the white
       topbar surface — the previous --theme-primary-subtle (10% alpha) gave a barely-
       visible chip on light mode and was easy to miss. */
    background: var(--theme-primary);
    color: var(--text-inverse);
    font-size: 1.125rem;
    flex-shrink: 0;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.08);
}

/* Dark mode: keep the same tenant-primary fill — tokens already darken via
   [data-bs-theme="dark"] palette overrides. No literal hex needed. */

.topbar-brand-name[b-y75n2dpeqh] {
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.2;
    color: var(--text-heading);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 220px;
    letter-spacing: -0.01em;
}

@media (max-width: 1199px) {
    .topbar-brand-name[b-y75n2dpeqh] { max-width: 160px; }
    .topbar-brand[b-y75n2dpeqh] { max-width: 240px; }
}

@media (max-width: 767px) {
    .topbar-brand-name[b-y75n2dpeqh] { display: none !important; }
    .topbar-brand[b-y75n2dpeqh] { max-width: none; }
}

/* ========================================
   TOPBAR SEARCH
   ======================================== */

.topbar-search[b-y75n2dpeqh] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    transition: all var(--sidenav-transition-fast);
}

.topbar-search:focus[b-y75n2dpeqh] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

/* ========================================
   USER DROPDOWN
   ======================================== */

.nav-user .dropdown-menu[b-y75n2dpeqh] {
    min-width: 200px;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-lg);
}

.nav-user .dropdown-header[b-y75n2dpeqh] {
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
}

.nav-user .dropdown-item[b-y75n2dpeqh] {
    padding: 0.5rem 1rem;
    color: var(--text-primary);
    transition: all var(--sidenav-transition-fast);
}

.nav-user .dropdown-item:hover[b-y75n2dpeqh] {
    background: var(--bg-hover);
    color: var(--theme-primary);
}

.nav-user .dropdown-item.text-danger:hover[b-y75n2dpeqh] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--color-danger);
}

/* ========================================
   TOPBAR LINKS & BUTTONS
   ======================================== */

.topbar-link[b-y75n2dpeqh] {
    color: var(--text-secondary);
    transition: color var(--sidenav-transition-fast);
}

.topbar-link:hover[b-y75n2dpeqh] {
    color: var(--theme-primary);
}

/* ========================================
   NOTIFICATION BADGE
   ======================================== */

.topbar-badge[b-y75n2dpeqh] {
    background: var(--color-danger);
    color: white;
    font-size: 0.625rem;
    min-width: 16px;
    height: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ========================================
   RESPONSIVE STYLES
   ======================================== */

@media (max-width: 991px) {
    .app-name[b-y75n2dpeqh] {
        display: none;
    }

    .logo-topbar .logo-lg img[b-y75n2dpeqh] {
        max-height: 32px;
    }
}

/* Tablet: trim the user-pill name max-width so it can't push other items off-screen. */
@media (max-width: 1199px) {
    .user-pill-name[b-y75n2dpeqh] { max-width: 140px; }
    .user-pill[b-y75n2dpeqh] { max-width: 220px; }
}

/* Below lg the name + chevron are display:none (both via the markup .d-none
   .d-lg-inline-block AND the scoped .user-pill-name/.user-pill-chevron rules above)
   so the pill collapses to just the avatar. */
@media (max-width: 991px) {
    .user-pill[b-y75n2dpeqh] { padding: 0.25rem; }
    .topbar-divider[b-y75n2dpeqh] { display: none; }
}

@media (max-width: 575px) {
    .user-pill-avatar[b-y75n2dpeqh] {
        width: 28px;
        height: 28px;
        font-size: 12px;
    }

    .logo-topbar .logo-lg img[b-y75n2dpeqh],
    .logo-topbar .logo-sm img[b-y75n2dpeqh] {
        max-height: 28px;
    }
}
/* /Layout/PortalLayout.razor.rz.scp.css */
/**
 * Portal Layout - Scoped Styles
 * Public-facing tenant portal with whitelabeling support.
 */

/* ========================================
   LAYOUT STRUCTURE
   ======================================== */

.portal-layout[b-cnh85gm1fy] {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
    background: var(--bg-body);
}

.portal-main[b-cnh85gm1fy] {
    flex: 1;
}

/* ========================================
   HEADER
   ======================================== */

.portal-header[b-cnh85gm1fy] {
    background: var(--bg-surface);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
    position: sticky;
    top: 0;
    z-index: 100;
}

.header-content[b-cnh85gm1fy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 0;
    gap: 1rem;
}

.header-brand[b-cnh85gm1fy] {
    display: flex;
    align-items: center;
    text-decoration: none;
}

.header-logo[b-cnh85gm1fy] {
    height: 40px;
    width: auto;
    object-fit: contain;
}

.header-title[b-cnh85gm1fy] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--portal-primary);
}

.header-nav[b-cnh85gm1fy] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.nav-link[b-cnh85gm1fy] {
    padding: 0.5rem 1rem;
    color: var(--text-secondary);
    text-decoration: none;
    border-radius: 0.375rem;
    font-weight: 500;
    transition: all 0.2s ease;
}

.nav-link:hover[b-cnh85gm1fy] {
    color: var(--portal-primary);
    background: var(--bg-hover);
}

.nav-link.active[b-cnh85gm1fy] {
    color: var(--portal-primary);
    background: var(--theme-primary-subtle);
}

.header-actions[b-cnh85gm1fy] {
    display: flex;
    align-items: center;
}

/* ========================================
   FOOTER
   ======================================== */

.portal-footer[b-cnh85gm1fy] {
    background: var(--bg-surface);
    border-top: 1px solid var(--border-color);
    padding: 2rem 0;
    margin-top: auto;
}

.footer-content[b-cnh85gm1fy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1rem;
    text-align: center;
}

.footer-brand[b-cnh85gm1fy] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.footer-name[b-cnh85gm1fy] {
    font-weight: 600;
    color: var(--text-primary);
}

.footer-tagline[b-cnh85gm1fy] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.footer-links[b-cnh85gm1fy] {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
    justify-content: center;
}

.footer-link[b-cnh85gm1fy] {
    color: var(--text-secondary);
    text-decoration: none;
    font-size: 0.875rem;
    transition: color 0.2s ease;
}

.footer-link:hover[b-cnh85gm1fy] {
    color: var(--portal-primary);
}

.footer-copyright[b-cnh85gm1fy] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* ========================================
   LOADING & ERROR STATES
   ======================================== */

.portal-loading[b-cnh85gm1fy],
.portal-error[b-cnh85gm1fy],
.portal-no-context[b-cnh85gm1fy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    text-align: center;
    padding: 2rem;
}

.loading-spinner[b-cnh85gm1fy] {
    margin-bottom: 1rem;
}

.loading-text[b-cnh85gm1fy] {
    color: var(--text-muted);
}

.error-icon[b-cnh85gm1fy],
.no-context-icon[b-cnh85gm1fy] {
    font-size: 4rem;
    color: var(--theme-warning);
    margin-bottom: 1rem;
}

.portal-error h2[b-cnh85gm1fy],
.portal-no-context h2[b-cnh85gm1fy] {
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.portal-error p[b-cnh85gm1fy],
.portal-no-context p[b-cnh85gm1fy] {
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
    max-width: 400px;
}

/* ========================================
   HERO SECTION
   ======================================== */

[b-cnh85gm1fy] .portal-hero {
    background: linear-gradient(135deg, var(--portal-primary) 0%, var(--portal-secondary) 100%);
    color: white;
    padding: 4rem 0;
}

[b-cnh85gm1fy] .hero-logo {
    max-height: 80px;
    width: auto;
}

[b-cnh85gm1fy] .hero-title {
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
}

[b-cnh85gm1fy] .hero-subtitle {
    font-size: 1.25rem;
    opacity: 0.9;
}

[b-cnh85gm1fy] .hero-actions .btn-outline-light {
    border-color: rgba(255, 255, 255, 0.5);
}

[b-cnh85gm1fy] .hero-actions .btn-outline-light:hover {
    background: rgba(255, 255, 255, 0.1);
    border-color: white; /* intentional: outline button on coloured hero */
}

/* ========================================
   QUICK LINKS
   ======================================== */

[b-cnh85gm1fy] .quick-link-card {
    display: block;
    background: var(--bg-surface);
    border-radius: 0.75rem;
    padding: 2rem;
    text-align: center;
    text-decoration: none;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

[b-cnh85gm1fy] .quick-link-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
}

[b-cnh85gm1fy] .quick-link-icon {
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background: var(--theme-primary-subtle);
    color: var(--portal-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    margin: 0 auto 1rem;
}

[b-cnh85gm1fy] .quick-link-card h3 {
    color: var(--text-primary);
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

[b-cnh85gm1fy] .quick-link-card p {
    color: var(--text-secondary);
    font-size: 0.875rem;
    margin: 0;
}

/* ========================================
   SHARE SECTION
   ======================================== */

[b-cnh85gm1fy] .portal-share {
    border-top: 1px solid var(--border-color);
}

[b-cnh85gm1fy] .share-link-container {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
}

[b-cnh85gm1fy] .share-link {
    background: var(--bg-surface);
    padding: 0.5rem 1rem;
    border-radius: 0.375rem;
    font-size: 0.875rem;
    max-width: 400px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 768px) {
    .header-content[b-cnh85gm1fy] {
        flex-wrap: wrap;
    }

    .header-nav[b-cnh85gm1fy] {
        order: 3;
        width: 100%;
        justify-content: center;
        padding-top: 0.5rem;
        border-top: 1px solid var(--border-color);
        margin-top: 0.5rem;
    }

    .nav-link[b-cnh85gm1fy] {
        padding: 0.5rem 0.75rem;
        font-size: 0.875rem;
    }

    [b-cnh85gm1fy] .hero-title {
        font-size: 1.75rem;
    }

    [b-cnh85gm1fy] .hero-subtitle {
        font-size: 1rem;
    }

    [b-cnh85gm1fy] .hero-actions {
        display: flex;
        flex-direction: column;
        gap: 0.75rem;
    }

    [b-cnh85gm1fy] .hero-actions .btn:not(.fsh-btn) {
        width: 100%;
    }

    [b-cnh85gm1fy] .hero-actions .fsh-btn {
        width: 100%;
    }
}

/* ========================================
   DARK MODE
   ======================================== */

:global([data-bs-theme="dark"]) .portal-layout[b-cnh85gm1fy] {
    background: var(--bg-body);
}

:global([data-bs-theme="dark"]) .portal-header[b-cnh85gm1fy] {
    background: var(--bg-surface-tertiary);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
}

:global([data-bs-theme="dark"]) .header-title[b-cnh85gm1fy] {
    color: var(--theme-primary);
}

:global([data-bs-theme="dark"]) .nav-link[b-cnh85gm1fy] {
    color: var(--text-secondary);
}

:global([data-bs-theme="dark"]) .nav-link:hover[b-cnh85gm1fy] {
    color: var(--theme-primary);
    background: var(--bg-surface-secondary, rgba(255, 255, 255, 0.05));
}

:global([data-bs-theme="dark"]) .nav-link.active[b-cnh85gm1fy] {
    color: var(--theme-primary);
    background: rgba(var(--theme-primary-rgb, 96, 165, 250), 0.15);
}

:global([data-bs-theme="dark"]) .portal-footer[b-cnh85gm1fy] {
    background: var(--bg-surface-tertiary);
    border-top-color: var(--border-color);
}

:global([data-bs-theme="dark"]) .footer-name[b-cnh85gm1fy] {
    color: var(--text-primary);
}

:global([data-bs-theme="dark"]) .footer-tagline[b-cnh85gm1fy] {
    color: var(--text-muted);
}

:global([data-bs-theme="dark"]) .footer-link[b-cnh85gm1fy] {
    color: var(--text-secondary);
}

:global([data-bs-theme="dark"]) .footer-link:hover[b-cnh85gm1fy] {
    color: var(--theme-primary);
}

:global([data-bs-theme="dark"]) .footer-copyright[b-cnh85gm1fy] {
    color: var(--text-muted);
}

:global([data-bs-theme="dark"]) .loading-text[b-cnh85gm1fy] {
    color: var(--text-muted);
}

:global([data-bs-theme="dark"]) .portal-error h2[b-cnh85gm1fy],
:global([data-bs-theme="dark"]) .portal-no-context h2[b-cnh85gm1fy] {
    color: var(--text-primary);
}

:global([data-bs-theme="dark"]) .portal-error p[b-cnh85gm1fy],
:global([data-bs-theme="dark"]) .portal-no-context p[b-cnh85gm1fy] {
    color: var(--text-secondary);
}

/* Dark Mode - Quick Links */
:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .quick-link-card {
    background: var(--bg-surface-tertiary);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .quick-link-card:hover {
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.3);
}

:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .quick-link-icon {
    background: rgba(var(--theme-primary-rgb, 96, 165, 250), 0.15);
}

:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .quick-link-card h3 {
    color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .quick-link-card p {
    color: var(--text-secondary);
}

/* Dark Mode - Share Section */
:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .portal-share {
    background: var(--bg-surface-secondary);
    border-top-color: var(--border-color);
}

:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .share-link {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

/* Dark Mode - Portal Page Loading */
:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .portal-page-loading {
    background: var(--bg-body);
}

:global([data-bs-theme="dark"])[b-cnh85gm1fy]  .portal-page-loading .loading-text {
    color: var(--text-secondary);
}

/* Dark Mode - Buttons */
:global([data-bs-theme="dark"]) .btn-outline-primary[b-cnh85gm1fy] {
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

:global([data-bs-theme="dark"]) .btn-outline-primary:hover[b-cnh85gm1fy] {
    background: var(--theme-primary);
    color: white;
}
/* /Pages/Accounting/AcademicYearSettings.razor.rz.scp.css */
/* ============ Active Year Banner ============ */
.active-year-banner[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: rgba(16, 185, 129, 0.06);
    border: 1px solid rgba(16, 185, 129, 0.2);
    border-radius: 12px;
    margin-bottom: 1.25rem;
}

.active-year-icon[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success);
    font-size: 1.25rem;
    flex-shrink: 0;
}

.active-year-info[b-f8m6ew6l1c] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.active-year-label[b-f8m6ew6l1c] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.active-year-name[b-f8m6ew6l1c] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.active-year-dates[b-f8m6ew6l1c] {
    margin-left: auto;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    white-space: nowrap;
}

/* ============ Status Badges ============ */
.status-badge[b-f8m6ew6l1c] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-f8m6ew6l1c] {
    background: var(--theme-success-bg, rgba(16, 185, 129, 0.1));
    color: var(--theme-success);
}

.status-muted[b-f8m6ew6l1c] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.status-info[b-f8m6ew6l1c] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

/* ============ Year Name Cell ============ */
.year-name-cell[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.short-name[b-f8m6ew6l1c] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.term-count-badge[b-f8m6ew6l1c] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 24px;
    height: 24px;
    padding: 0 0.375rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 700;
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

/* ============ Terms Section (Row Detail) ============ */
.terms-section[b-f8m6ew6l1c] {
    padding: 1rem 1.5rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
}

.terms-header[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.75rem;
}

.terms-header h4[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.terms-list[b-f8m6ew6l1c] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.term-item[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.625rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
}

.term-info[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.term-name[b-f8m6ew6l1c] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.term-short[b-f8m6ew6l1c] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.term-dates[b-f8m6ew6l1c] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.term-actions[b-f8m6ew6l1c] {
    display: flex;
    gap: 0.375rem;
}

.terms-empty[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

/* ============ Action Buttons ============ */
.action-buttons[b-f8m6ew6l1c] {
    display: flex;
    gap: 0.375rem;
}

/* ============ Content Area ============ */
.content-area[b-f8m6ew6l1c] {
    margin-bottom: 1rem;
}

.table-container[b-f8m6ew6l1c] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-f8m6ew6l1c] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ============ Form ============ */
.form-group[b-f8m6ew6l1c] {
    margin-bottom: 1rem;
}

.form-label[b-f8m6ew6l1c] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-input[b-f8m6ew6l1c] {
    width: 100%;
    height: 38px;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    transition: border-color 0.2s ease;
}

.form-input:focus[b-f8m6ew6l1c] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color, rgba(99, 102, 241, 0.15));
}

.form-row[b-f8m6ew6l1c] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-check-group[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
}

.form-check-label[b-f8m6ew6l1c] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
}

.form-check-input[b-f8m6ew6l1c] {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    cursor: pointer;
}

.text-danger[b-f8m6ew6l1c] {
    color: var(--theme-danger);
}

.text-muted[b-f8m6ew6l1c] {
    color: var(--text-muted);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .active-year-banner[b-f8m6ew6l1c] {
        flex-wrap: wrap;
        gap: 0.75rem;
    }

    .active-year-dates[b-f8m6ew6l1c] {
        margin-left: 0;
        flex-basis: 100%;
        padding-left: 3.5rem;
    }

    .form-row[b-f8m6ew6l1c] {
        grid-template-columns: 1fr;
    }

    .term-item[b-f8m6ew6l1c] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .term-info[b-f8m6ew6l1c] {
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .active-year-banner[b-f8m6ew6l1c] {
        padding: 0.75rem;
    }

    .active-year-icon[b-f8m6ew6l1c] {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }

    .terms-section[b-f8m6ew6l1c] {
        padding: 0.75rem;
    }
}
/* /Pages/Accounting/AccountGroupList.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-c20d3vop3w] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-c20d3vop3w] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-c20d3vop3w] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-c20d3vop3w] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-c20d3vop3w] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-c20d3vop3w] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Code Badge ============ */
.code-badge[b-c20d3vop3w] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.8125rem;
    font-weight: 600;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
    color: var(--theme-primary);
}

/* ============ Group Name Cell ============ */
.group-name-cell[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ============ Parent Link ============ */
.parent-link[b-c20d3vop3w] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.parent-link i[b-c20d3vop3w] {
    font-size: 0.75rem;
    color: var(--theme-primary);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-c20d3vop3w] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-c20d3vop3w] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-c20d3vop3w] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-c20d3vop3w] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-c20d3vop3w] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-c20d3vop3w] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-c20d3vop3w] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-c20d3vop3w] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-c20d3vop3w] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-c20d3vop3w],
.tab-compact.active .tab-badge.warning[b-c20d3vop3w],
.tab-compact.active .tab-badge.danger[b-c20d3vop3w],
.tab-compact.active .tab-badge.info[b-c20d3vop3w] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-c20d3vop3w] {
    flex: 1;
    min-width: 130px;
    max-width: 300px;
}

.nav-search-box[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-c20d3vop3w] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-c20d3vop3w] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-c20d3vop3w] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-c20d3vop3w]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-c20d3vop3w] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-c20d3vop3w] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-c20d3vop3w] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-c20d3vop3w] {
    font-size: 1rem;
}

/* ============ Content Area ============ */
.content-area[b-c20d3vop3w] {
    min-height: 200px;
}

.table-container[b-c20d3vop3w] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-c20d3vop3w] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-c20d3vop3w] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-c20d3vop3w] {
    color: var(--text-primary);
}

.page-size-selector[b-c20d3vop3w] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-c20d3vop3w] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-c20d3vop3w] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-c20d3vop3w] {
    border-color: var(--theme-primary);
}

/* ============ Form Grid ============ */
.form-grid[b-c20d3vop3w] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-row[b-c20d3vop3w] {
    width: 100%;
}

.fsh-form-group[b-c20d3vop3w] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.fsh-form-label[b-c20d3vop3w] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0;
}

.form-select-native[b-c20d3vop3w] {
    height: 40px;
    padding: 0.375rem 2rem 0.375rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    cursor: pointer;
    transition: border-color 0.15s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
    width: 100%;
}

.form-select-native:focus[b-c20d3vop3w] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ============ Spinner ============ */
.spinner-sm[b-c20d3vop3w] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-c20d3vop3w 0.6s linear infinite;
}

@keyframes spin-b-c20d3vop3w {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-c20d3vop3w] {
        flex-wrap: wrap;
    }

    .search-inline[b-c20d3vop3w] {
        max-width: none;
        flex: 1 1 150px;
    }

    .tab-compact[b-c20d3vop3w] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-c20d3vop3w] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-c20d3vop3w] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-c20d3vop3w] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .refresh-btn[b-c20d3vop3w] {
        order: 3;
    }

    .list-footer[b-c20d3vop3w] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-c20d3vop3w] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-c20d3vop3w] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-c20d3vop3w] {
        display: none;
    }

    .tab-compact[b-c20d3vop3w] {
        padding: 0.5rem 0.625rem;
    }
}
/* /Pages/Accounting/AccountGroupReport.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-smrz7sgwiv] {
    min-height: 300px;
}

.table-container[b-smrz7sgwiv] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-smrz7sgwiv] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.amount-negative[b-smrz7sgwiv] {
    color: var(--theme-danger);
}

/* ============ Nature Badges ============ */
.nature-badge[b-smrz7sgwiv] {
    display: inline-flex;
    padding: 0.1875rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
}

.nature-asset[b-smrz7sgwiv] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.nature-liability[b-smrz7sgwiv] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.nature-income[b-smrz7sgwiv] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.nature-expense[b-smrz7sgwiv] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.nature-equity[b-smrz7sgwiv] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.nature-default[b-smrz7sgwiv] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

/* ============ Report Totals ============ */
.report-totals[b-smrz7sgwiv] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-smrz7sgwiv] {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--border-color);
}

.totals-label[b-smrz7sgwiv] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    flex: 1;
}

.totals-value[b-smrz7sgwiv] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 150px;
    text-align: right;
}

.totals-value.debit[b-smrz7sgwiv] {
    color: var(--theme-primary);
}

.totals-value.credit[b-smrz7sgwiv] {
    color: var(--theme-success);
}

.totals-value.balance[b-smrz7sgwiv] {
    color: var(--text-primary);
}

/* DataGrid Overrides */
[b-smrz7sgwiv] .rz-datatable {
    border: none;
}

[b-smrz7sgwiv] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-smrz7sgwiv] .rz-datatable-data > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-smrz7sgwiv] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .totals-row[b-smrz7sgwiv] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-smrz7sgwiv] {
        min-width: auto;
    }
}

/* /Pages/Accounting/AccountingDashboard.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-gdedly23ou] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-gdedly23ou] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-warning[b-gdedly23ou] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-danger[b-gdedly23ou] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-muted[b-gdedly23ou] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Section Title ============ */
.section-title[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.section-title i[b-gdedly23ou] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

/* ============ Quick Navigation Section ============ */
.quick-nav-section[b-gdedly23ou] {
    margin-bottom: 1.5rem;
}

.quick-nav-section .section-title[b-gdedly23ou] {
    margin-bottom: 1rem;
}

.quick-nav-grid[b-gdedly23ou] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
    gap: 0.875rem;
}

.quick-nav-card[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.125rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.quick-nav-card:hover[b-gdedly23ou] {
    border-color: var(--theme-primary);
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.quick-nav-icon[b-gdedly23ou] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.quick-nav-icon.journals[b-gdedly23ou] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.quick-nav-icon.payments[b-gdedly23ou] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.quick-nav-icon.receipts[b-gdedly23ou] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.quick-nav-icon.invoices[b-gdedly23ou] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.quick-nav-icon.banking[b-gdedly23ou] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.quick-nav-icon.budgets[b-gdedly23ou] {
    background: rgba(168, 85, 247, 0.1);
    color: var(--theme-purple);
}

.quick-nav-icon.reconciliation[b-gdedly23ou] {
    background: rgba(20, 184, 166, 0.1);
    color: var(--theme-primary);
}

.quick-nav-icon.cheques[b-gdedly23ou] {
    background: rgba(168, 85, 247, 0.1);
    color: var(--theme-purple);
}

.quick-nav-icon.brs-report[b-gdedly23ou] {
    background: rgba(20, 184, 166, 0.1);
    color: var(--theme-primary);
}

.quick-nav-info[b-gdedly23ou] {
    flex: 1;
    min-width: 0;
}

.quick-nav-info h4[b-gdedly23ou] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
}

.quick-nav-info p[b-gdedly23ou] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin: 0;
}

.quick-nav-arrow[b-gdedly23ou] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.quick-nav-card:hover .quick-nav-arrow[b-gdedly23ou] {
    color: var(--theme-primary);
    transform: translateX(3px);
}

/* ============ Summary Stats Row ============ */
.summary-stats-row[b-gdedly23ou] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.summary-stat-card[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
}

.summary-stat-icon[b-gdedly23ou] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.summary-stat-icon.vouchers[b-gdedly23ou] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.summary-stat-icon.pending[b-gdedly23ou] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.summary-stat-icon.ledgers[b-gdedly23ou] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.summary-stat-info[b-gdedly23ou] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.summary-stat-value[b-gdedly23ou] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.summary-stat-label[b-gdedly23ou] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 500;
}

/* ============ Inline Alerts ============ */
.inline-alerts[b-gdedly23ou] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.inline-alert[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.inline-alert.warning[b-gdedly23ou] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.inline-alert.warning i[b-gdedly23ou] {
    color: var(--theme-warning);
}

.inline-alert.info[b-gdedly23ou] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.inline-alert.info i[b-gdedly23ou] {
    color: var(--theme-info);
}

.alert-action-btn[b-gdedly23ou] {
    margin-left: auto;
    padding: 0.25rem 0.625rem;
    background: transparent;
    border: 1px solid currentColor;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--theme-warning);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.alert-action-btn:hover[b-gdedly23ou] {
    background: var(--theme-warning);
    color: white;
    border-color: var(--theme-warning);
}

/* ============ Recent Transactions Section ============ */
.recent-transactions-section[b-gdedly23ou] {
    margin-bottom: 1.5rem;
}

.section-header[b-gdedly23ou] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

/* ============ Content Area ============ */
.content-area[b-gdedly23ou] {
    min-height: 200px;
}

.table-container[b-gdedly23ou] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ Voucher Type Badges ============ */
.voucher-type-badge[b-gdedly23ou] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.voucher-type-badge i[b-gdedly23ou] {
    font-size: 0.75rem;
}

.type-payment[b-gdedly23ou] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.type-receipt[b-gdedly23ou] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.type-journal[b-gdedly23ou] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.type-invoice[b-gdedly23ou] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.type-contra[b-gdedly23ou] {
    background: rgba(20, 184, 166, 0.1);
    color: var(--theme-primary);
}

.type-default[b-gdedly23ou] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

/* ============ Transaction Table Cells ============ */
.voucher-number[b-gdedly23ou] {
    font-family: 'SF Mono', 'Fira Code', monospace;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-primary);
}

.trans-date[b-gdedly23ou] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.trans-description[b-gdedly23ou] {
    font-size: 0.8125rem;
    color: var(--text-primary);
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.trans-amount[b-gdedly23ou] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

/* ============ Refresh Button ============ */
.refresh-btn[b-gdedly23ou] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-gdedly23ou] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-gdedly23ou] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-gdedly23ou] {
    font-size: 1rem;
}

/* ============ Spinner ============ */
.spinner-sm[b-gdedly23ou] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-gdedly23ou 0.6s linear infinite;
}

@keyframes spin-b-gdedly23ou {
    to { transform: rotate(360deg); }
}

/* ============ Analytics Section ============ */
.analytics-section[b-gdedly23ou] {
    margin-bottom: 1.5rem;
}

.analytics-toggle-btn[b-gdedly23ou] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.analytics-toggle-btn:hover[b-gdedly23ou] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.analytics-toggle-btn .toggle-icon[b-gdedly23ou] {
    font-size: 0.875rem;
    transition: transform 0.2s ease;
}

.analytics-row[b-gdedly23ou] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-top: 0.75rem;
}

.analytics-card[b-gdedly23ou] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 1rem;
}

.analytics-card h4[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.875rem;
}

.analytics-card h4 i[b-gdedly23ou] {
    font-size: 1rem;
    color: var(--theme-primary);
}

/* ============ Cash Analytics ============ */
.cash-analytics[b-gdedly23ou] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.cash-stat[b-gdedly23ou] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
}

.cash-label[b-gdedly23ou] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.cash-value[b-gdedly23ou] {
    font-size: 0.875rem;
    font-weight: 700;
    font-variant-numeric: tabular-nums;
}

.cash-value.success[b-gdedly23ou] {
    color: var(--theme-success);
}

.cash-value.info[b-gdedly23ou] {
    color: var(--theme-info);
}

.cash-value.primary[b-gdedly23ou] {
    color: var(--theme-primary);
}

/* ============ Income vs Expense Analytics ============ */
.income-expense-analytics[b-gdedly23ou] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.ie-bar-container[b-gdedly23ou] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.ie-bar-label[b-gdedly23ou] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.ie-bar-value[b-gdedly23ou] {
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.ie-bar-value.success[b-gdedly23ou] {
    color: var(--theme-success);
}

.ie-bar-value.warning[b-gdedly23ou] {
    color: var(--theme-warning);
}

.ie-bar-track[b-gdedly23ou] {
    height: 8px;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    overflow: hidden;
}

.ie-bar-fill[b-gdedly23ou] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.6s ease;
}

.ie-bar-fill.success[b-gdedly23ou] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success));
}

.ie-bar-fill.warning[b-gdedly23ou] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning));
}

.ie-net-result[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    font-size: 0.875rem;
    font-weight: 600;
    font-variant-numeric: tabular-nums;
}

.ie-net-result.positive[b-gdedly23ou] {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success);
}

.ie-net-result.negative[b-gdedly23ou] {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
}

.ie-net-result i[b-gdedly23ou] {
    font-size: 1rem;
}

/* ============ List Footer ============ */
.list-footer[b-gdedly23ou] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.footer-right[b-gdedly23ou] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.results-text[b-gdedly23ou] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-gdedly23ou] {
    color: var(--text-primary);
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .quick-nav-grid[b-gdedly23ou] {
        grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    }

    .summary-stats-row[b-gdedly23ou] {
        grid-template-columns: repeat(3, 1fr);
    }

    .analytics-row[b-gdedly23ou] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .quick-nav-grid[b-gdedly23ou] {
        grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
        gap: 0.625rem;
    }

    .quick-nav-card[b-gdedly23ou] {
        padding: 0.875rem;
    }

    .quick-nav-icon[b-gdedly23ou] {
        width: 38px;
        height: 38px;
        font-size: 1.125rem;
    }

    .summary-stats-row[b-gdedly23ou] {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }

    .analytics-row[b-gdedly23ou] {
        grid-template-columns: 1fr;
    }

    .list-footer[b-gdedly23ou] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-gdedly23ou] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .section-header[b-gdedly23ou] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .quick-nav-grid[b-gdedly23ou] {
        grid-template-columns: 1fr;
    }

    .quick-nav-info p[b-gdedly23ou] {
        display: none;
    }

    .summary-stats-row[b-gdedly23ou] {
        grid-template-columns: 1fr;
    }

    .summary-stat-card[b-gdedly23ou] {
        padding: 0.75rem;
    }

    .summary-stat-value[b-gdedly23ou] {
        font-size: 1.125rem;
    }

    .inline-alert[b-gdedly23ou] {
        flex-wrap: wrap;
        gap: 0.375rem;
    }

    .alert-action-btn[b-gdedly23ou] {
        margin-left: 0;
        flex: 1 1 100%;
        text-align: center;
    }
}
/* /Pages/Accounting/AccountingSettings.razor.rz.scp.css */
/* ============ Settings Grid ============ */
.settings-grid[b-n4klqto55w] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

/* ============ Settings Card ============ */
.settings-card[b-n4klqto55w] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.settings-card:hover[b-n4klqto55w] {
    border-color: var(--theme-primary);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
}

.settings-card-icon[b-n4klqto55w] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    flex-shrink: 0;
    font-size: 1.5rem;
}

.settings-card-body[b-n4klqto55w] {
    flex: 1;
    min-width: 0;
}

.settings-card-title[b-n4klqto55w] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.25rem 0;
}

.settings-card-desc[b-n4klqto55w] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.4;
}

.settings-card-arrow[b-n4klqto55w] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.settings-card:hover .settings-card-arrow[b-n4klqto55w] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.settings-card-arrow i[b-n4klqto55w] {
    font-size: 1rem;
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .settings-grid[b-n4klqto55w] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .settings-grid[b-n4klqto55w] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .settings-card[b-n4klqto55w] {
        padding: 1rem;
        gap: 0.75rem;
    }

    .settings-card-icon[b-n4klqto55w] {
        width: 40px;
        height: 40px;
        font-size: 1.25rem;
    }

    .settings-card-desc[b-n4klqto55w] {
        display: none;
    }
}
/* /Pages/Accounting/AccountLedgerDetail.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-80n72it8zv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-80n72it8zv] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-80n72it8zv] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-80n72it8zv] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-80n72it8zv] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-80n72it8zv] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Code Badge ============ */
.code-badge[b-80n72it8zv] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.8125rem;
    font-weight: 600;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
    color: var(--theme-primary);
}

/* ============ Ledger Info Row ============ */
.ledger-info-row[b-80n72it8zv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.ledger-info-card[b-80n72it8zv] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-elevated);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.info-item[b-80n72it8zv] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 100px;
}

.info-label[b-80n72it8zv] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.info-value[b-80n72it8zv] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

/* ============ Amount Display ============ */
.amount-debit[b-80n72it8zv] {
    font-weight: 600;
    font-size: 0.875rem;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
    color: var(--theme-success);
}

.amount-credit[b-80n72it8zv] {
    font-weight: 600;
    font-size: 0.875rem;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
    color: var(--theme-danger);
}

.amount-balance[b-80n72it8zv] {
    font-weight: 700;
    font-size: 0.875rem;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
}

.amount-balance.positive[b-80n72it8zv] {
    color: var(--text-primary);
}

.amount-balance.negative[b-80n72it8zv] {
    color: var(--theme-danger);
}

/* ============ Date Text ============ */
.date-text[b-80n72it8zv] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ============ Reconciled Badge ============ */
.reconciled-badge[b-80n72it8zv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    font-size: 0.75rem;
}

.reconciled-badge.reconciled[b-80n72it8zv] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.reconciled-badge.not-reconciled[b-80n72it8zv] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Date Filter ============ */
.date-filter-inline[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.date-filter-item[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.date-label[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    margin: 0;
}

.date-label i[b-80n72it8zv] {
    font-size: 0.875rem;
}

.date-input[b-80n72it8zv] {
    height: 34px;
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface-secondary);
    font-size: 0.8125rem;
    color: var(--text-primary);
    cursor: pointer;
    transition: border-color 0.15s ease;
    max-width: 150px;
}

.date-input:focus[b-80n72it8zv] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.date-clear-btn[b-80n72it8zv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.date-clear-btn:hover[b-80n72it8zv] {
    background: var(--theme-danger);
    color: white;
}

.date-clear-btn i[b-80n72it8zv] {
    font-size: 0.875rem;
}

/* ============ Search ============ */
.search-inline[b-80n72it8zv] {
    flex: 1;
    min-width: 130px;
    max-width: 300px;
}

.nav-search-box[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-80n72it8zv] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-80n72it8zv] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-80n72it8zv] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-80n72it8zv]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-80n72it8zv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-80n72it8zv] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-80n72it8zv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-80n72it8zv] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-80n72it8zv] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-80n72it8zv] {
    font-size: 1rem;
}

/* ============ Content Area ============ */
.content-area[b-80n72it8zv] {
    min-height: 200px;
}

.table-container[b-80n72it8zv] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-80n72it8zv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.footer-right[b-80n72it8zv] {
    display: flex;
    align-items: center;
}

.results-text[b-80n72it8zv] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-80n72it8zv] {
    color: var(--text-primary);
}

.page-size-selector[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-80n72it8zv] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-80n72it8zv] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-80n72it8zv] {
    border-color: var(--theme-primary);
}

/* ============ Footer Totals ============ */
.footer-totals[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
}

.footer-total-item[b-80n72it8zv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.footer-total-label[b-80n72it8zv] {
    font-weight: 500;
    color: var(--text-secondary);
}

.footer-total-sep[b-80n72it8zv] {
    color: var(--text-muted);
    margin: 0 0.25rem;
}

/* ============ Form Grid ============ */
.form-grid[b-80n72it8zv] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-row[b-80n72it8zv] {
    width: 100%;
}

.form-row-2col[b-80n72it8zv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-col[b-80n72it8zv] {
    min-width: 0;
}

.fsh-form-group[b-80n72it8zv] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.fsh-form-label[b-80n72it8zv] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0;
}

.form-select-native[b-80n72it8zv] {
    height: 40px;
    padding: 0.375rem 2rem 0.375rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    cursor: pointer;
    transition: border-color 0.15s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
    width: 100%;
}

.form-select-native:focus[b-80n72it8zv] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ============ Spinner ============ */
.spinner-sm[b-80n72it8zv] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-80n72it8zv 0.6s linear infinite;
}

@keyframes spin-b-80n72it8zv {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-80n72it8zv] {
        flex-wrap: wrap;
    }

    .search-inline[b-80n72it8zv] {
        max-width: none;
        flex: 1 1 150px;
    }

    .ledger-info-row[b-80n72it8zv] {
        grid-template-columns: 1fr;
    }

    .form-row-2col[b-80n72it8zv] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-80n72it8zv] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .date-filter-inline[b-80n72it8zv] {
        order: 1;
        flex: 1 1 100%;
        flex-wrap: wrap;
    }

    .search-inline[b-80n72it8zv] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .refresh-btn[b-80n72it8zv] {
        order: 3;
    }

    .ledger-info-row[b-80n72it8zv] {
        grid-template-columns: 1fr;
    }

    .list-footer[b-80n72it8zv] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-80n72it8zv] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .footer-totals[b-80n72it8zv] {
        flex-wrap: wrap;
        justify-content: center;
    }

    .form-row-2col[b-80n72it8zv] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .date-filter-inline[b-80n72it8zv] {
        flex-direction: column;
        align-items: stretch;
    }

    .date-filter-item[b-80n72it8zv] {
        flex: 1;
    }

    .date-input[b-80n72it8zv] {
        max-width: none;
        flex: 1;
    }

    .ledger-info-card[b-80n72it8zv] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .footer-totals[b-80n72it8zv] {
        flex-direction: column;
        gap: 0.25rem;
    }

    .footer-total-sep[b-80n72it8zv] {
        display: none;
    }
}
/* /Pages/Accounting/AccountLedgerList.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-1i5ymxtzn1] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-1i5ymxtzn1] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-1i5ymxtzn1] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-1i5ymxtzn1] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-1i5ymxtzn1] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-1i5ymxtzn1] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Code Badge ============ */
.code-badge[b-1i5ymxtzn1] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.8125rem;
    font-weight: 600;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
    color: var(--theme-primary);
}

/* ============ Ledger Name Cell ============ */
.ledger-name-cell[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.alias-text[b-1i5ymxtzn1] {
    font-size: 0.75rem;
    color: var(--text-muted);
    font-style: italic;
}

/* ============ Group Tag ============ */
.group-tag[b-1i5ymxtzn1] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.group-tag i[b-1i5ymxtzn1] {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

/* ============ Balance Value ============ */
.balance-value[b-1i5ymxtzn1] {
    font-weight: 600;
    font-size: 0.875rem;
    font-family: 'Fira Code', 'Cascadia Code', monospace;
}

.balance-value.positive[b-1i5ymxtzn1] {
    color: var(--text-primary);
}

.balance-value.negative[b-1i5ymxtzn1] {
    color: var(--theme-danger);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-1i5ymxtzn1] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-1i5ymxtzn1] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-1i5ymxtzn1] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-1i5ymxtzn1] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-1i5ymxtzn1] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-1i5ymxtzn1] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-1i5ymxtzn1] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-1i5ymxtzn1] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-1i5ymxtzn1] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-1i5ymxtzn1],
.tab-compact.active .tab-badge.warning[b-1i5ymxtzn1],
.tab-compact.active .tab-badge.danger[b-1i5ymxtzn1],
.tab-compact.active .tab-badge.info[b-1i5ymxtzn1] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-1i5ymxtzn1] {
    flex: 1;
    min-width: 130px;
    max-width: 300px;
}

.nav-search-box[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-1i5ymxtzn1] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-1i5ymxtzn1] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-1i5ymxtzn1] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-1i5ymxtzn1]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-1i5ymxtzn1] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Filter Toggle ============ */
.filter-toggle-btn[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-1i5ymxtzn1] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-1i5ymxtzn1] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-1i5ymxtzn1] {
    font-size: 1rem;
}

.filter-active-dot[b-1i5ymxtzn1] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-1i5ymxtzn1] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-1i5ymxtzn1] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-1i5ymxtzn1] {
    font-size: 1rem;
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-1i5ymxtzn1] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-1i5ymxtzn1] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 200px;
    min-width: 160px;
    max-width: 300px;
}

.advanced-filter-label[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
    line-height: 1;
}

.advanced-filter-label i[b-1i5ymxtzn1] {
    font-size: 0.75rem;
}

.adv-filter-select[b-1i5ymxtzn1] {
    height: 30px;
    padding: 0.125rem 1.75rem 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 0;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
}

.adv-filter-select:focus[b-1i5ymxtzn1] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-1i5ymxtzn1] {
    display: flex;
    align-items: flex-end;
    gap: 0.375rem;
}

.adv-clear-btn[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 30px;
}

.adv-clear-btn:hover[b-1i5ymxtzn1] {
    background: var(--theme-danger);
    color: white;
}

/* ============ Content Area ============ */
.content-area[b-1i5ymxtzn1] {
    min-height: 200px;
}

.table-container[b-1i5ymxtzn1] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-1i5ymxtzn1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-1i5ymxtzn1] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-1i5ymxtzn1] {
    color: var(--text-primary);
}

.page-size-selector[b-1i5ymxtzn1] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-1i5ymxtzn1] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-1i5ymxtzn1] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-1i5ymxtzn1] {
    border-color: var(--theme-primary);
}

/* ============ Form Grid ============ */
.form-grid[b-1i5ymxtzn1] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-row[b-1i5ymxtzn1] {
    width: 100%;
}

.form-row-2col[b-1i5ymxtzn1] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-col[b-1i5ymxtzn1] {
    min-width: 0;
}

.fsh-form-group[b-1i5ymxtzn1] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.fsh-form-label[b-1i5ymxtzn1] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0;
}

.fsh-form-label.fsh-required[b-1i5ymxtzn1]::after {
    content: " *";
    color: var(--theme-danger);
}

.form-select-native[b-1i5ymxtzn1] {
    height: 40px;
    padding: 0.375rem 2rem 0.375rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    cursor: pointer;
    transition: border-color 0.15s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
    width: 100%;
}

.form-select-native:focus[b-1i5ymxtzn1] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ============ Spinner ============ */
.spinner-sm[b-1i5ymxtzn1] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-1i5ymxtzn1 0.6s linear infinite;
}

@keyframes spin-b-1i5ymxtzn1 {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-1i5ymxtzn1] {
        flex-wrap: wrap;
    }

    .search-inline[b-1i5ymxtzn1] {
        max-width: none;
        flex: 1 1 150px;
    }

    .tab-compact[b-1i5ymxtzn1] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }

    .form-row-2col[b-1i5ymxtzn1] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-1i5ymxtzn1] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-1i5ymxtzn1] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-1i5ymxtzn1] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn[b-1i5ymxtzn1] {
        order: 3;
    }

    .refresh-btn[b-1i5ymxtzn1] {
        order: 4;
    }

    .advanced-filters-bar[b-1i5ymxtzn1] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-1i5ymxtzn1] {
        max-width: none;
        flex: 1 1 100%;
    }

    .list-footer[b-1i5ymxtzn1] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-1i5ymxtzn1] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .form-row-2col[b-1i5ymxtzn1] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-1i5ymxtzn1] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-1i5ymxtzn1] {
        display: none;
    }

    .tab-compact[b-1i5ymxtzn1] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-1i5ymxtzn1] {
        display: none;
    }
}
/* /Pages/Accounting/AccountLedgerReport.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-5bj51kk06h] {
    min-height: 300px;
}

.table-container[b-5bj51kk06h] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-5bj51kk06h] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.amount-bold[b-5bj51kk06h] {
    font-weight: 700;
}

.amount-negative[b-5bj51kk06h] {
    color: var(--theme-danger);
}

/* ============ Report Totals ============ */
.report-totals[b-5bj51kk06h] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-5bj51kk06h] {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--border-color);
}

.totals-label[b-5bj51kk06h] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    flex: 1;
}

.totals-value[b-5bj51kk06h] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 140px;
    text-align: right;
    color: var(--text-primary);
}

.totals-value.debit[b-5bj51kk06h] {
    color: var(--theme-primary);
}

.totals-value.credit[b-5bj51kk06h] {
    color: var(--theme-success);
}

.totals-value.balance[b-5bj51kk06h] {
    color: var(--text-primary);
}

/* DataGrid Overrides */
[b-5bj51kk06h] .rz-datatable {
    border: none;
}

[b-5bj51kk06h] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-5bj51kk06h] .rz-datatable-data > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-5bj51kk06h] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .totals-row[b-5bj51kk06h] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-5bj51kk06h] {
        min-width: auto;
    }
}

/* /Pages/Accounting/AccountSummary.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-s2r3kiu38y] {
    min-height: 300px;
}

/* ============ Group Sections ============ */
.group-section[b-s2r3kiu38y] {
    margin-bottom: 1.25rem;
}

.group-header[b-s2r3kiu38y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-bottom: none;
    border-radius: 10px 10px 0 0;
}

.group-name[b-s2r3kiu38y] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

.group-name i[b-s2r3kiu38y] {
    font-size: 1rem;
    color: var(--theme-primary);
}

.group-totals[b-s2r3kiu38y] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
}

.group-total-item[b-s2r3kiu38y] {
    font-weight: 600;
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    color: var(--text-secondary);
}

.group-total-sep[b-s2r3kiu38y] {
    color: var(--border-color);
}

.group-section .table-container[b-s2r3kiu38y] {
    border-radius: 0 0 10px 10px;
}

.table-container[b-s2r3kiu38y] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-s2r3kiu38y] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.amount-bold[b-s2r3kiu38y] {
    font-weight: 700;
}

.amount-negative[b-s2r3kiu38y] {
    color: var(--theme-danger);
}

/* ============ Nature Badges ============ */
.nature-badge[b-s2r3kiu38y] {
    display: inline-flex;
    padding: 0.1875rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.nature-asset[b-s2r3kiu38y] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.nature-liability[b-s2r3kiu38y] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.nature-income[b-s2r3kiu38y] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.nature-expense[b-s2r3kiu38y] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.nature-equity[b-s2r3kiu38y] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.nature-default[b-s2r3kiu38y] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

/* ============ Report Totals ============ */
.report-totals[b-s2r3kiu38y] {
    margin-top: 0.25rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-s2r3kiu38y] {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--border-color);
}

.totals-label[b-s2r3kiu38y] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    flex: 1;
}

.totals-value[b-s2r3kiu38y] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 130px;
    text-align: right;
    color: var(--text-primary);
}

.totals-value.debit[b-s2r3kiu38y] {
    color: var(--theme-primary);
}

.totals-value.credit[b-s2r3kiu38y] {
    color: var(--theme-success);
}

.totals-value.balance[b-s2r3kiu38y] {
    color: var(--text-primary);
}

/* DataGrid Overrides */
[b-s2r3kiu38y] .rz-datatable {
    border: none;
}

[b-s2r3kiu38y] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.75rem 1rem;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-s2r3kiu38y] .rz-datatable-data > tr > td {
    padding: 0.625rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-s2r3kiu38y] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .group-header[b-s2r3kiu38y] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .totals-row[b-s2r3kiu38y] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-s2r3kiu38y] {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .group-name[b-s2r3kiu38y] {
        font-size: 0.8125rem;
    }

    .group-totals[b-s2r3kiu38y] {
        font-size: 0.75rem;
    }
}
/* /Pages/Accounting/AgedPayables.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-kaahwunlk3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* ============ Search ============ */
.search-inline[b-kaahwunlk3] {
    flex: 1;
    min-width: 200px;
}

.nav-search-box[b-kaahwunlk3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    height: 34px;
    background: var(--bg-body);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    transition: border-color 0.2s ease;
}

.nav-search-box:focus-within[b-kaahwunlk3] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
}

.nav-search-box i[b-kaahwunlk3] {
    color: var(--text-muted);
    font-size: 0.875rem;
}

.nav-search-box input[b-kaahwunlk3] {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.clear-search[b-kaahwunlk3] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-hover);
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
    transition: all 0.2s ease;
}

.clear-search:hover[b-kaahwunlk3] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-kaahwunlk3] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    border-radius: 8px;
    cursor: pointer;
    color: var(--text-secondary);
    transition: all 0.2s ease;
}

.refresh-btn:hover:not(:disabled)[b-kaahwunlk3] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.refresh-btn:disabled[b-kaahwunlk3] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ============ Report Content ============ */
.report-content[b-kaahwunlk3] {
    min-height: 300px;
}

.table-container[b-kaahwunlk3] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-kaahwunlk3] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

[b-kaahwunlk3] .fw-semibold {
    font-weight: 600;
}

/* ============ List Footer ============ */
.list-footer[b-kaahwunlk3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    margin-top: 0.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-kaahwunlk3] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-kaahwunlk3] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .navigation-bar[b-kaahwunlk3] {
        flex-direction: column;
        align-items: stretch;
    }

    .search-inline[b-kaahwunlk3] {
        min-width: auto;
    }

    .list-footer[b-kaahwunlk3] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: flex-start;
    }
}

/* /Pages/Accounting/AutoPostingRules.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-ujyy37lg3p] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-ujyy37lg3p] {
    background: var(--theme-success-bg, rgba(16, 185, 129, 0.1));
    color: var(--theme-success);
}

.status-muted[b-ujyy37lg3p] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Rule Name Cell ============ */
.rule-name-cell[b-ujyy37lg3p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.rule-icon[b-ujyy37lg3p] {
    color: var(--theme-primary);
    font-size: 1rem;
    flex-shrink: 0;
}

/* ============ Trigger Badge ============ */
.trigger-badge[b-ujyy37lg3p] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
    white-space: nowrap;
}

.trigger-badge i[b-ujyy37lg3p] {
    font-size: 0.75rem;
}

/* ============ Ledger Tags ============ */
.ledger-tag[b-ujyy37lg3p] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    max-width: 100%;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ledger-tag.debit[b-ujyy37lg3p] {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
}

.ledger-tag.credit[b-ujyy37lg3p] {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success);
}

.ledger-tag i[b-ujyy37lg3p] {
    font-size: 0.75rem;
    flex-shrink: 0;
}

/* ============ Voucher Badge ============ */
.voucher-badge[b-ujyy37lg3p] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
    white-space: nowrap;
}

/* ============ Action Buttons ============ */
.action-buttons[b-ujyy37lg3p] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

/* ============ Inline Alerts ============ */
.inline-alerts[b-ujyy37lg3p] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.inline-alert[b-ujyy37lg3p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.inline-alert.info[b-ujyy37lg3p] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.inline-alert.info i[b-ujyy37lg3p] {
    color: var(--theme-info);
}

.alert-sep[b-ujyy37lg3p] {
    color: var(--text-muted);
    margin: 0 0.125rem;
}

/* ============ Content Area ============ */
.content-area[b-ujyy37lg3p] {
    margin-bottom: 1rem;
}

.table-container[b-ujyy37lg3p] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-ujyy37lg3p] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-ujyy37lg3p] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-ujyy37lg3p] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector[b-ujyy37lg3p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector select[b-ujyy37lg3p] {
    height: 30px;
    padding: 0.125rem 1.5rem 0.125rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    color: var(--text-primary);
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.375rem center;
    background-size: 12px;
}

/* ============ Form ============ */
.form-grid[b-ujyy37lg3p] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-grid .full-width[b-ujyy37lg3p] {
    grid-column: 1 / -1;
}

.form-group[b-ujyy37lg3p] {
    margin-bottom: 0;
}

.form-label[b-ujyy37lg3p] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-input[b-ujyy37lg3p] {
    width: 100%;
    height: 38px;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    transition: border-color 0.2s ease;
}

.form-input:focus[b-ujyy37lg3p] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color, rgba(99, 102, 241, 0.15));
}

select.form-input[b-ujyy37lg3p] {
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
    padding-right: 2rem;
    cursor: pointer;
}

.form-textarea[b-ujyy37lg3p] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    resize: vertical;
    min-height: 60px;
    font-family: inherit;
    transition: border-color 0.2s ease;
}

.form-textarea:focus[b-ujyy37lg3p] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color, rgba(99, 102, 241, 0.15));
}

.form-hint[b-ujyy37lg3p] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.25rem;
}

.form-check-label[b-ujyy37lg3p] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
}

.form-check-input[b-ujyy37lg3p] {
    width: 18px;
    height: 18px;
    border: 2px solid var(--border-color);
    border-radius: 4px;
    cursor: pointer;
    accent-color: var(--theme-primary);
}

.text-danger[b-ujyy37lg3p] {
    color: var(--theme-danger);
}

.text-muted[b-ujyy37lg3p] {
    color: var(--text-muted);
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .form-grid[b-ujyy37lg3p] {
        grid-template-columns: 1fr;
    }

    .form-grid .full-width[b-ujyy37lg3p] {
        grid-column: 1;
    }
}

@media (max-width: 768px) {
    .list-footer[b-ujyy37lg3p] {
        flex-direction: column;
        gap: 0.5rem;
        align-items: flex-start;
    }
}

@media (max-width: 480px) {
    .inline-alert[b-ujyy37lg3p] {
        font-size: 0.75rem;
        padding: 0.375rem 0.625rem;
    }
}
/* /Pages/Accounting/BalanceSheet.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-q4armnaw7y] {
    min-height: 300px;
}

.report-section[b-q4armnaw7y] {
    margin-bottom: 1.5rem;
}

.section-header[b-q4armnaw7y] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.25rem;
    border-radius: 10px 10px 0 0;
    margin-bottom: 0;
}

.section-header h3[b-q4armnaw7y] {
    font-size: 0.9375rem;
    font-weight: 700;
    margin: 0;
    flex: 1;
}

.section-header i[b-q4armnaw7y] {
    font-size: 1.25rem;
}

.section-header.assets[b-q4armnaw7y] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.section-header.liabilities[b-q4armnaw7y] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.section-header.equity[b-q4armnaw7y] {
    background: rgba(168, 85, 247, 0.1);
    color: var(--theme-purple);
}

.section-total[b-q4armnaw7y] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
}

.table-container[b-q4armnaw7y] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}

.amount-cell[b-q4armnaw7y] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

/* ============ Report Totals ============ */
.report-totals[b-q4armnaw7y] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-q4armnaw7y] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-color);
}

.totals-row.net-row[b-q4armnaw7y] {
    border-bottom: 2px solid var(--border-color);
    padding: 0.75rem 0;
}

.totals-label[b-q4armnaw7y] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.net-row .totals-label[b-q4armnaw7y] {
    font-size: 1rem;
    font-weight: 700;
}

.totals-value[b-q4armnaw7y] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 150px;
    text-align: right;
}

.totals-value.assets-color[b-q4armnaw7y] {
    color: var(--theme-info);
}

.totals-value.liabilities-color[b-q4armnaw7y] {
    color: var(--theme-danger);
}

.totals-value.equity-color[b-q4armnaw7y] {
    color: var(--theme-purple);
}

.balance-status[b-q4armnaw7y] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 0 0;
    font-size: 0.8125rem;
    font-weight: 600;
}

.balance-status.balanced[b-q4armnaw7y] {
    color: var(--theme-success);
}

.balance-status.unbalanced[b-q4armnaw7y] {
    color: var(--theme-danger);
}

.balance-status i[b-q4armnaw7y] {
    font-size: 1.125rem;
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .totals-row[b-q4armnaw7y] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-q4armnaw7y] {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .section-header[b-q4armnaw7y] {
        padding: 0.5rem 1rem;
    }
}
/* /Pages/Accounting/BankingCreate.razor.rz.scp.css */
/* ============ Form Container ============ */
.transfer-form-container[b-jlfw330g0l] {
    max-width: 720px;
    margin: 0 auto;
}

/* ============ Form Card ============ */
.form-card[b-jlfw330g0l] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

.form-card-header[b-jlfw330g0l] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.5rem;
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.form-card-header i[b-jlfw330g0l] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

.form-body[b-jlfw330g0l] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding: 1.5rem;
}

/* ============ Form Group ============ */
.form-group[b-jlfw330g0l] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-label[b-jlfw330g0l] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0;
}

.required[b-jlfw330g0l] {
    color: var(--theme-danger);
}

.form-control[b-jlfw330g0l] {
    height: 40px;
    padding: 0.5rem 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    width: 100%;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

textarea.form-control[b-jlfw330g0l] {
    height: auto;
    resize: vertical;
}

.form-control:focus[b-jlfw330g0l] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

/* ============ Transfer Accounts ============ */
.transfer-accounts[b-jlfw330g0l] {
    display: flex;
    align-items: flex-end;
    gap: 1rem;
}

.account-box[b-jlfw330g0l] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.account-box-label[b-jlfw330g0l] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.account-icon-sm[b-jlfw330g0l] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    flex-shrink: 0;
}

.from-icon[b-jlfw330g0l] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.to-icon[b-jlfw330g0l] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.transfer-arrow[b-jlfw330g0l] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    flex-shrink: 0;
    color: var(--text-muted);
    font-size: 1.25rem;
    margin-bottom: 2px;
}

/* ============ Validation Message ============ */
.validation-message[b-jlfw330g0l] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.25);
    border-radius: 6px;
    font-size: 0.8125rem;
    color: var(--theme-danger);
}

.validation-message i[b-jlfw330g0l] {
    font-size: 1rem;
    flex-shrink: 0;
}

/* ============ Amount Input ============ */
.amount-input-wrapper[b-jlfw330g0l] {
    position: relative;
}

.amount-input[b-jlfw330g0l] {
    font-size: 1.125rem !important;
    font-weight: 600;
    text-align: right;
    padding-right: 1rem !important;
}

.amount-preview[b-jlfw330g0l] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-top: 0.375rem;
    font-size: 0.8125rem;
    color: var(--theme-success);
    font-weight: 600;
}

.amount-preview i[b-jlfw330g0l] {
    font-size: 0.875rem;
}

/* ============ Transfer Summary ============ */
.transfer-summary[b-jlfw330g0l] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1.25rem 1.5rem;
    background: var(--bg-surface-secondary);
    border-top: 1px solid var(--border-color);
}

.summary-title[b-jlfw330g0l] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

.summary-row[b-jlfw330g0l] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.375rem 0;
}

.summary-label[b-jlfw330g0l] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.summary-value[b-jlfw330g0l] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.summary-amount[b-jlfw330g0l] {
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    margin-top: 0.25rem;
}

.summary-amount .summary-label[b-jlfw330g0l] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.summary-amount .summary-value[b-jlfw330g0l] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--theme-primary);
}

/* ============ Form Actions ============ */
.form-actions[b-jlfw330g0l] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface);
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .transfer-form-container[b-jlfw330g0l] {
        max-width: none;
    }

    .transfer-accounts[b-jlfw330g0l] {
        flex-direction: column;
        align-items: stretch;
    }

    .transfer-arrow[b-jlfw330g0l] {
        align-self: center;
        transform: rotate(90deg);
        width: 28px;
        height: 28px;
    }

    .form-actions[b-jlfw330g0l] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .form-body[b-jlfw330g0l] {
        padding: 1rem;
    }

    .transfer-summary[b-jlfw330g0l] {
        padding: 1rem;
    }

    .form-actions[b-jlfw330g0l] {
        padding: 1rem;
    }
}
/* /Pages/Accounting/BankingList.razor.rz.scp.css */
/* ============ Account Icons ============ */
.account-icon[b-jm6fsgi1k8] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    flex-shrink: 0;
}

.from-icon[b-jm6fsgi1k8] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.to-icon[b-jm6fsgi1k8] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-jm6fsgi1k8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Search ============ */
.search-inline[b-jm6fsgi1k8] {
    flex: 1;
    min-width: 130px;
    max-width: 400px;
}

.nav-search-box[b-jm6fsgi1k8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-jm6fsgi1k8] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-jm6fsgi1k8] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-jm6fsgi1k8] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-jm6fsgi1k8]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-jm6fsgi1k8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-jm6fsgi1k8] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-jm6fsgi1k8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-jm6fsgi1k8] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-jm6fsgi1k8] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-jm6fsgi1k8] {
    font-size: 1rem;
}

/* ============ Content Area ============ */
.content-area[b-jm6fsgi1k8] {
    min-height: 200px;
}

.table-container[b-jm6fsgi1k8] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ Form Controls (Modal) ============ */
.form-label[b-jm6fsgi1k8] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin-bottom: 0.25rem;
    display: block;
}

.form-control[b-jm6fsgi1k8] {
    height: 38px;
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    width: 100%;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

textarea.form-control[b-jm6fsgi1k8] {
    height: auto;
    resize: vertical;
}

.form-control:focus[b-jm6fsgi1k8] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

/* ============ Validation Message ============ */
.validation-message[b-jm6fsgi1k8] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.25);
    border-radius: 6px;
    font-size: 0.8125rem;
    color: var(--theme-danger);
}

.validation-message i[b-jm6fsgi1k8] {
    font-size: 1rem;
    flex-shrink: 0;
}

/* ============ List Footer ============ */
.list-footer[b-jm6fsgi1k8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-jm6fsgi1k8] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-jm6fsgi1k8] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-jm6fsgi1k8] {
    color: var(--text-primary);
}

.page-size-selector[b-jm6fsgi1k8] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-jm6fsgi1k8] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-jm6fsgi1k8] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-jm6fsgi1k8] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-jm6fsgi1k8] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-jm6fsgi1k8 0.6s linear infinite;
}

@keyframes spin-b-jm6fsgi1k8 {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-jm6fsgi1k8] {
        flex-wrap: wrap;
    }

    .search-inline[b-jm6fsgi1k8] {
        max-width: none;
        flex: 1 1 200px;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-jm6fsgi1k8] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .search-inline[b-jm6fsgi1k8] {
        flex: 1 1 100%;
        max-width: none;
    }

    .list-footer[b-jm6fsgi1k8] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-jm6fsgi1k8] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .search-inline[b-jm6fsgi1k8] {
        flex: 1 1 100%;
    }
}
/* /Pages/Accounting/BankReconciliationStatement.razor.rz.scp.css */
/* ============================================
   BANK RECONCILIATION STATEMENT PAGE
   ============================================ */

/* ============ Filter Bar ============ */
.brs-filter-bar[b-7tukm2ugox] {
    display: flex;
    align-items: flex-end;
    gap: 1rem;
    padding: 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.filter-item[b-7tukm2ugox] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 150px;
}

.filter-item-wide[b-7tukm2ugox] {
    flex: 1;
    min-width: 250px;
}

.filter-item-action[b-7tukm2ugox] {
    display: flex;
    align-items: flex-end;
}

.filter-label[b-7tukm2ugox] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
}

.filter-label i[b-7tukm2ugox] {
    font-size: 0.875rem;
}

.filter-select[b-7tukm2ugox] {
    height: 40px;
    padding: 0 2rem 0 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 12px;
    cursor: pointer;
}

.filter-select:focus[b-7tukm2ugox] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.generate-btn[b-7tukm2ugox] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    background: var(--theme-primary);
    border: none;
    border-radius: 8px;
    color: var(--text-inverse);
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    height: 40px;
    white-space: nowrap;
}

.generate-btn:hover:not(:disabled)[b-7tukm2ugox] {
    background: var(--theme-primary-emphasis);
}

.generate-btn:disabled[b-7tukm2ugox] {
    opacity: 0.5;
    cursor: not-allowed;
}

.generate-btn i[b-7tukm2ugox] {
    font-size: 1rem;
}

/* ============ BRS Section Card ============ */
.brs-section[b-7tukm2ugox] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1.5rem;
    overflow: hidden;
}

.brs-section-header[b-7tukm2ugox] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.section-icon[b-7tukm2ugox] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
}

.section-icon i[b-7tukm2ugox] {
    font-size: 1.25rem;
}

.section-icon-book[b-7tukm2ugox] {
    background: rgba(59, 130, 246, 0.12);
    color: var(--theme-info);
}

.section-icon-bank[b-7tukm2ugox] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success);
}

.section-title-group[b-7tukm2ugox] {
    flex: 1;
    min-width: 0;
}

.section-title[b-7tukm2ugox] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
}

.section-subtitle[b-7tukm2ugox] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
}

.brs-section-body[b-7tukm2ugox] {
    padding: 1.25rem;
}

/* ============ Balance Lines ============ */
.brs-balance-line[b-7tukm2ugox] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    margin-bottom: 1rem;
}

.balance-label[b-7tukm2ugox] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

.balance-amount[b-7tukm2ugox] {
    font-size: 1rem;
    font-weight: 800;
    color: var(--text-primary);
    font-family: var(--font-mono, monospace);
}

.brs-total-line[b-7tukm2ugox] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    margin-top: 1rem;
    border: 2px solid var(--border-color);
}

.total-label[b-7tukm2ugox] {
    font-size: 0.9375rem;
    font-weight: 800;
    color: var(--text-primary);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.total-amount[b-7tukm2ugox] {
    font-size: 1.125rem;
    font-weight: 800;
    color: var(--text-primary);
    font-family: var(--font-mono, monospace);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.brs-subtotal-line[b-7tukm2ugox] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.625rem 1rem;
    margin-top: 0.5rem;
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    border-top: 1px solid var(--border-color);
}

.subtotal-amount[b-7tukm2ugox] {
    font-family: var(--font-mono, monospace);
    font-weight: 700;
}

/* ============ Sub-Headers ============ */
.brs-sub-header[b-7tukm2ugox] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    padding: 0.625rem 0;
    margin-top: 0.5rem;
}

.brs-sub-header i[b-7tukm2ugox] {
    font-size: 0.875rem;
}

.brs-sub-add[b-7tukm2ugox] {
    color: var(--theme-success);
}

.brs-sub-less[b-7tukm2ugox] {
    color: var(--theme-danger);
}

/* ============ BRS Tables ============ */
.brs-table-container[b-7tukm2ugox] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
}

.brs-table[b-7tukm2ugox] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.brs-table thead[b-7tukm2ugox] {
    background: var(--bg-surface-tertiary);
}

.brs-table th[b-7tukm2ugox] {
    padding: 0.625rem 0.875rem;
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-secondary);
    text-align: left;
    border-bottom: 1px solid var(--border-color);
}

.brs-table td[b-7tukm2ugox] {
    padding: 0.5rem 0.875rem;
    color: var(--text-primary);
    border-bottom: 1px solid var(--border-subtle);
}

.brs-table tbody tr:last-child td[b-7tukm2ugox] {
    border-bottom: none;
}

.brs-table tbody tr:hover[b-7tukm2ugox] {
    background: var(--bg-hover);
}

.brs-table .text-right[b-7tukm2ugox] {
    text-align: right;
}

.ref-code[b-7tukm2ugox] {
    font-family: var(--font-mono, monospace);
    font-size: 0.75rem;
    color: var(--theme-primary);
    background: var(--bg-surface-tertiary);
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
}

.amount-cell[b-7tukm2ugox] {
    font-family: var(--font-mono, monospace);
    font-weight: 600;
}

.amount-positive[b-7tukm2ugox] {
    color: var(--theme-success);
}

.amount-negative[b-7tukm2ugox] {
    color: var(--theme-danger);
}

.amount-reconciled[b-7tukm2ugox] {
    color: var(--theme-success);
}

.amount-difference[b-7tukm2ugox] {
    color: var(--theme-danger);
}

.row-stale[b-7tukm2ugox] {
    background: rgba(249, 115, 22, 0.05);
}

.row-stale td[b-7tukm2ugox] {
    color: var(--theme-warning-emphasis);
}

/* ============ Days Badge ============ */
.days-badge[b-7tukm2ugox] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    padding: 0.125rem 0.375rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.days-warning[b-7tukm2ugox] {
    background: rgba(245, 158, 11, 0.12);
    color: var(--theme-warning-emphasis);
}

.days-overdue[b-7tukm2ugox] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--theme-danger);
}

/* ============ Cheque Status Badge ============ */
.cheque-status-badge[b-7tukm2ugox] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

.badge-outstanding[b-7tukm2ugox] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.badge-stale[b-7tukm2ugox] {
    background: rgba(249, 115, 22, 0.12);
    color: var(--theme-warning-emphasis);
}

.badge-stale i[b-7tukm2ugox] {
    font-size: 0.75rem;
}

/* ============ Empty Note ============ */
.brs-empty-note[b-7tukm2ugox] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: rgba(16, 185, 129, 0.06);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--theme-success);
    font-weight: 500;
}

.brs-empty-note i[b-7tukm2ugox] {
    font-size: 1rem;
}

/* ============ Summary Box ============ */
.brs-summary[b-7tukm2ugox] {
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.brs-summary-reconciled[b-7tukm2ugox] {
    background: rgba(16, 185, 129, 0.06);
    border: 2px solid var(--theme-success);
}

.brs-summary-unreconciled[b-7tukm2ugox] {
    background: rgba(239, 68, 68, 0.06);
    border: 2px solid var(--theme-danger);
}

.summary-header[b-7tukm2ugox] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.summary-header i[b-7tukm2ugox] {
    font-size: 1.25rem;
}

.brs-summary-reconciled .summary-header i[b-7tukm2ugox] {
    color: var(--theme-success);
}

.brs-summary-unreconciled .summary-header i[b-7tukm2ugox] {
    color: var(--theme-danger);
}

.summary-header h4[b-7tukm2ugox] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
}

.summary-grid[b-7tukm2ugox] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.summary-row[b-7tukm2ugox] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0.75rem;
}

.summary-row-result[b-7tukm2ugox] {
    padding: 0.75rem;
    background: var(--bg-surface);
    border-radius: 8px;
}

.summary-label[b-7tukm2ugox] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.summary-value[b-7tukm2ugox] {
    font-size: 1rem;
    font-weight: 800;
    font-family: var(--font-mono, monospace);
    color: var(--text-primary);
}

.summary-divider[b-7tukm2ugox] {
    height: 1px;
    background: var(--border-color);
    margin: 0.25rem 0;
}

.summary-status[b-7tukm2ugox] {
    display: flex;
    justify-content: center;
}

.reconciled-badge[b-7tukm2ugox] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    background: var(--theme-success);
    color: white;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 700;
}

.reconciled-badge i[b-7tukm2ugox] {
    font-size: 1rem;
    color: white;
}

.unreconciled-badge[b-7tukm2ugox] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    background: var(--theme-danger);
    color: white;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 700;
}

.unreconciled-badge i[b-7tukm2ugox] {
    font-size: 1rem;
    color: white;
}

/* ============ Spinner ============ */
.spinner-sm[b-7tukm2ugox] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-7tukm2ugox 0.6s linear infinite;
}

@keyframes spin-b-7tukm2ugox {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .brs-filter-bar[b-7tukm2ugox] {
        flex-wrap: wrap;
    }

    .filter-item-wide[b-7tukm2ugox] {
        flex: 1 1 100%;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .brs-filter-bar[b-7tukm2ugox] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-item[b-7tukm2ugox],
    .filter-item-wide[b-7tukm2ugox] {
        min-width: 0;
    }

    .filter-item-action[b-7tukm2ugox] {
        align-items: stretch;
    }

    .generate-btn[b-7tukm2ugox] {
        width: 100%;
        justify-content: center;
    }

    .brs-balance-line[b-7tukm2ugox],
    .brs-total-line[b-7tukm2ugox],
    .brs-subtotal-line[b-7tukm2ugox] {
        flex-direction: column;
        gap: 0.375rem;
        text-align: center;
    }

    .summary-row[b-7tukm2ugox] {
        flex-direction: column;
        gap: 0.25rem;
        text-align: center;
    }

    .brs-table[b-7tukm2ugox] {
        font-size: 0.75rem;
    }

    .brs-table th[b-7tukm2ugox],
    .brs-table td[b-7tukm2ugox] {
        padding: 0.375rem 0.5rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .brs-section-header[b-7tukm2ugox] {
        flex-direction: column;
        text-align: center;
        gap: 0.5rem;
    }

    .section-title[b-7tukm2ugox] {
        font-size: 0.8125rem;
    }

    .section-subtitle[b-7tukm2ugox] {
        font-size: 0.75rem;
    }

    .brs-table th:nth-child(3)[b-7tukm2ugox],
    .brs-table td:nth-child(3)[b-7tukm2ugox] {
        display: none;
    }
}
/* /Pages/Accounting/BankStatementImport.razor.rz.scp.css */
/* ========================================
   BANK STATEMENT IMPORT PAGE
   ======================================== */

/* ========================================
   STEP SECTIONS
   ======================================== */

.step-section[b-o9jh4ommtb] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1.25rem;
    overflow: hidden;
}

.step-section-highlight[b-o9jh4ommtb] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 1px var(--theme-primary-border);
}

.step-completed[b-o9jh4ommtb] {
    opacity: 0.85;
}

.step-header[b-o9jh4ommtb] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.step-indicator[b-o9jh4ommtb] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--bg-surface-tertiary);
    border: 2px solid var(--border-color);
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.step-indicator.active[b-o9jh4ommtb] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
}

.step-number[b-o9jh4ommtb] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-secondary);
}

.step-indicator.active .step-number[b-o9jh4ommtb] {
    color: var(--text-inverse);
}

.step-info[b-o9jh4ommtb] {
    flex: 1;
    min-width: 0;
}

.step-title[b-o9jh4ommtb] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
}

.step-subtitle[b-o9jh4ommtb] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
}

.step-actions[b-o9jh4ommtb] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
}

.step-body[b-o9jh4ommtb] {
    padding: 1.25rem;
}

.step-body-compact[b-o9jh4ommtb] {
    padding: 0.75rem 1.25rem;
}

/* ========================================
   FILTER ROW
   ======================================== */

.filter-row[b-o9jh4ommtb] {
    display: flex;
    align-items: flex-end;
    gap: 1rem;
    flex-wrap: wrap;
}

.filter-item[b-o9jh4ommtb] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    flex: 0 1 200px;
    min-width: 160px;
}

.filter-item-wide[b-o9jh4ommtb] {
    flex: 1 1 280px;
    min-width: 200px;
}

.filter-item-action[b-o9jh4ommtb] {
    flex: 0 0 auto;
    align-self: flex-end;
}

.filter-label[b-o9jh4ommtb] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-label i[b-o9jh4ommtb] {
    font-size: 0.875rem;
}

.filter-select[b-o9jh4ommtb] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s ease;
}

.filter-select:focus[b-o9jh4ommtb] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ========================================
   SELECTED SUMMARY (collapsed step)
   ======================================== */

.selected-summary[b-o9jh4ommtb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-primary);
    font-weight: 500;
}

.selected-summary i[b-o9jh4ommtb] {
    color: var(--theme-primary);
    font-size: 1rem;
}

.summary-sep[b-o9jh4ommtb] {
    color: var(--text-tertiary);
    margin: 0 0.25rem;
}

/* ========================================
   UPLOAD ZONE
   ======================================== */

.upload-zone[b-o9jh4ommtb] {
    position: relative;
    border: 2px dashed var(--border-color);
    border-radius: 12px;
    padding: 2.5rem 1.5rem;
    text-align: center;
    transition: all 0.2s ease;
    cursor: pointer;
}

.upload-zone:hover[b-o9jh4ommtb] {
    border-color: var(--theme-primary);
    background: var(--bg-surface-tertiary);
}

.upload-input[b-o9jh4ommtb] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
    width: 100%;
    height: 100%;
}

.upload-content[b-o9jh4ommtb] {
    pointer-events: none;
}

.upload-content.dragging[b-o9jh4ommtb] {
    transform: scale(1.02);
}

.upload-icon[b-o9jh4ommtb] {
    font-size: 2.5rem;
    color: var(--theme-primary);
    margin-bottom: 0.75rem;
}

/* ========================================
   FILE INFO
   ======================================== */

.file-info[b-o9jh4ommtb] {
    padding: 0.875rem 1rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.file-icon[b-o9jh4ommtb] {
    font-size: 1.5rem;
    color: var(--theme-primary);
}

/* ========================================
   ERROR LIST
   ======================================== */

.error-list[b-o9jh4ommtb] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.error-item[b-o9jh4ommtb] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    padding: 0.25rem 0;
}

/* ========================================
   PREVIEW SECTION
   ======================================== */

.preview-section[b-o9jh4ommtb] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.preview-header[b-o9jh4ommtb] {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.preview-title[b-o9jh4ommtb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.preview-title i[b-o9jh4ommtb] {
    font-size: 1rem;
    color: var(--theme-primary);
}

/* ========================================
   TABLE CONTAINER & AMOUNTS
   ======================================== */

.table-container[b-o9jh4ommtb] {
    background: var(--bg-surface);
    border-radius: 10px;
    overflow: visible;
}

.amount-debit[b-o9jh4ommtb] {
    font-weight: 600;
    color: var(--theme-info);
    font-variant-numeric: tabular-nums;
}

.amount-credit[b-o9jh4ommtb] {
    font-weight: 600;
    color: var(--theme-danger);
    font-variant-numeric: tabular-nums;
}

.amount-balance[b-o9jh4ommtb] {
    font-weight: 600;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

/* ========================================
   MATCH RESULTS
   ======================================== */

.match-results[b-o9jh4ommtb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.match-stat[b-o9jh4ommtb] {
    font-size: 0.875rem;
    color: var(--text-primary);
}

.match-sep[b-o9jh4ommtb] {
    color: var(--text-tertiary);
}

/* DataGrid Overrides */
[b-o9jh4ommtb] .rz-datatable {
    border: none;
}

[b-o9jh4ommtb] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-o9jh4ommtb] .rz-datatable-data > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-o9jh4ommtb] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-o9jh4ommtb] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 1200px) {
    .filter-row[b-o9jh4ommtb] {
        flex-wrap: wrap;
    }

    .filter-item[b-o9jh4ommtb] {
        flex: 1 1 180px;
    }

    .filter-item-wide[b-o9jh4ommtb] {
        flex: 1 1 100%;
    }
}

@media (max-width: 768px) {
    .filter-row[b-o9jh4ommtb] {
        flex-direction: column;
    }

    .filter-item[b-o9jh4ommtb],
    .filter-item-wide[b-o9jh4ommtb] {
        flex: 1 1 100%;
        min-width: 0;
        max-width: none;
    }

    .step-header[b-o9jh4ommtb] {
        flex-wrap: wrap;
    }

    .upload-zone[b-o9jh4ommtb] {
        padding: 1.5rem 1rem;
    }
}

@media (max-width: 480px) {
    .step-header[b-o9jh4ommtb] {
        padding: 0.75rem 1rem;
    }

    .step-body[b-o9jh4ommtb] {
        padding: 0.75rem;
    }

    .step-indicator[b-o9jh4ommtb] {
        width: 30px;
        height: 30px;
    }

    .step-number[b-o9jh4ommtb] {
        font-size: 0.75rem;
    }
}
/* /Pages/Accounting/BudgetCreate.razor.rz.scp.css */
/* ========================================
   BUDGET CREATE PAGE
   ======================================== */

/* ========================================
   FORM CARD
   ======================================== */

.form-card[b-snoxm5xrpi] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

.form-card-header[b-snoxm5xrpi] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.form-card-icon[b-snoxm5xrpi] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
    font-size: 1.25rem;
    flex-shrink: 0;
}

.form-card-title[b-snoxm5xrpi] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
}

.form-card-subtitle[b-snoxm5xrpi] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
}

/* ========================================
   FORM BODY
   ======================================== */

.form-body[b-snoxm5xrpi] {
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.form-group[b-snoxm5xrpi] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-label[b-snoxm5xrpi] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.form-label i[b-snoxm5xrpi] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
}

.required[b-snoxm5xrpi] {
    color: var(--theme-danger);
}

.form-control-native[b-snoxm5xrpi] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-control-native:focus[b-snoxm5xrpi] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

.form-control-native[b-snoxm5xrpi]::placeholder {
    color: var(--text-muted);
}

.form-textarea[b-snoxm5xrpi] {
    resize: vertical;
    min-height: 80px;
    line-height: 1.5;
}

.form-error[b-snoxm5xrpi] {
    font-size: 0.75rem;
    color: var(--theme-danger);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.form-row-2col[b-snoxm5xrpi] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

/* ========================================
   FORM FOOTER
   ======================================== */

.form-footer[b-snoxm5xrpi] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1.25rem 1.5rem;
    background: var(--bg-surface-tertiary);
    border-top: 1px solid var(--border-color);
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 768px) {
    .form-row-2col[b-snoxm5xrpi] {
        grid-template-columns: 1fr;
    }

    .form-card-header[b-snoxm5xrpi] {
        padding: 1rem;
    }

    .form-body[b-snoxm5xrpi] {
        padding: 1rem;
    }

    .form-footer[b-snoxm5xrpi] {
        padding: 1rem;
        flex-direction: column;
    }
}

@media (max-width: 480px) {
    .form-card-icon[b-snoxm5xrpi] {
        width: 38px;
        height: 38px;
        font-size: 1.125rem;
    }

    .form-card-title[b-snoxm5xrpi] {
        font-size: 0.9375rem;
    }
}
/* /Pages/Accounting/BudgetList.razor.rz.scp.css */
/* ========================================
   BUDGET LIST PAGE
   ======================================== */

/* ========================================
   NAVIGATION BAR
   ======================================== */

.navigation-bar[b-ssjrf3zpz8] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ========================================
   SEARCH BOX (Inline)
   ======================================== */

.search-inline[b-ssjrf3zpz8] {
    flex: 1;
    min-width: 150px;
    max-width: 400px;
}

.nav-search-box[b-ssjrf3zpz8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-ssjrf3zpz8] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-ssjrf3zpz8] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-ssjrf3zpz8] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-ssjrf3zpz8]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-ssjrf3zpz8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-ssjrf3zpz8] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-ssjrf3zpz8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-ssjrf3zpz8] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-ssjrf3zpz8] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-ssjrf3zpz8] {
    font-size: 1rem;
}

.spinner-sm[b-ssjrf3zpz8] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-ssjrf3zpz8 0.6s linear infinite;
}

@keyframes spin-b-ssjrf3zpz8 {
    to { transform: rotate(360deg); }
}

/* ========================================
   CONTENT AREA & TABLE
   ======================================== */

.content-area[b-ssjrf3zpz8] {
    margin-bottom: 0;
}

.table-container[b-ssjrf3zpz8] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

.code-badge[b-ssjrf3zpz8] {
    display: inline-flex;
    padding: 0.1875rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    font-family: monospace;
}

.amount-text[b-ssjrf3zpz8] {
    font-weight: 600;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.variance-positive[b-ssjrf3zpz8] {
    font-weight: 700;
    color: var(--theme-success);
    font-variant-numeric: tabular-nums;
}

.variance-negative[b-ssjrf3zpz8] {
    font-weight: 700;
    color: var(--theme-danger);
    font-variant-numeric: tabular-nums;
}

/* DataGrid Overrides */
[b-ssjrf3zpz8] .rz-datatable {
    border: none;
}

[b-ssjrf3zpz8] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-ssjrf3zpz8] .rz-datatable-data > tr > td {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-ssjrf3zpz8] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-ssjrf3zpz8] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   LIST FOOTER
   ======================================== */

.list-footer[b-ssjrf3zpz8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.results-text[b-ssjrf3zpz8] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-ssjrf3zpz8] {
    color: var(--text-primary);
}

.footer-left[b-ssjrf3zpz8] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.page-size-selector[b-ssjrf3zpz8] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-ssjrf3zpz8] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-ssjrf3zpz8] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-ssjrf3zpz8] {
    border-color: var(--theme-primary);
}

/* ========================================
   FORM MODAL STYLES
   ======================================== */

.form-grid[b-ssjrf3zpz8] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-row[b-ssjrf3zpz8] {
    display: flex;
    flex-direction: column;
}

.form-row-2col[b-ssjrf3zpz8] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-select-native[b-ssjrf3zpz8] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s ease;
}

.form-select-native:focus[b-ssjrf3zpz8] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.form-input-native[b-ssjrf3zpz8] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s ease;
}

.form-input-native:focus[b-ssjrf3zpz8] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 1200px) {
    .navigation-bar[b-ssjrf3zpz8] {
        flex-wrap: wrap;
    }

    .search-inline[b-ssjrf3zpz8] {
        flex: 1 1 150px;
        min-width: 120px;
        max-width: none;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-ssjrf3zpz8] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .search-inline[b-ssjrf3zpz8] {
        flex: 1 1 100%;
        max-width: none;
    }

    .form-row-2col[b-ssjrf3zpz8] {
        grid-template-columns: 1fr;
    }

    .list-footer[b-ssjrf3zpz8] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: flex-start;
    }

    .footer-left[b-ssjrf3zpz8] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    .navigation-bar[b-ssjrf3zpz8] {
        padding: 0.5rem 0.75rem;
    }
}
/* /Pages/Accounting/CashBookReport.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-smdxof0u4o] {
    min-height: 300px;
}

.table-container[b-smdxof0u4o] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-smdxof0u4o] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.receipt-amount[b-smdxof0u4o] {
    color: var(--theme-success);
}

.payment-amount[b-smdxof0u4o] {
    color: var(--theme-danger);
}

.voucher-no[b-smdxof0u4o] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
    color: var(--theme-primary);
    font-weight: 600;
}

.narration-text[b-smdxof0u4o] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ============ Voucher Type Badges ============ */
.voucher-badge[b-smdxof0u4o] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.6rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.voucher-payment[b-smdxof0u4o] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.voucher-receipt[b-smdxof0u4o] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.voucher-journal[b-smdxof0u4o] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.voucher-purchase[b-smdxof0u4o] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.voucher-sales[b-smdxof0u4o] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.voucher-debit[b-smdxof0u4o] {
    background: rgba(236, 72, 153, 0.1);
    color: var(--theme-purple);
}

.voucher-credit[b-smdxof0u4o] {
    background: rgba(168, 85, 247, 0.1);
    color: var(--theme-purple);
}

/* ============ Report Totals ============ */
.report-totals[b-smdxof0u4o] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-smdxof0u4o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-color);
}

.totals-row.net-row[b-smdxof0u4o] {
    border-bottom: 2px solid var(--border-color);
    padding: 0.75rem 0;
}

.totals-row:last-child[b-smdxof0u4o] {
    border-bottom: none;
}

.totals-label[b-smdxof0u4o] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.net-row .totals-label[b-smdxof0u4o] {
    font-size: 1rem;
    font-weight: 700;
}

.totals-value[b-smdxof0u4o] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 150px;
    text-align: right;
}

.totals-value.receipt[b-smdxof0u4o] {
    color: var(--theme-success);
}

.totals-value.payment[b-smdxof0u4o] {
    color: var(--theme-danger);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .totals-row[b-smdxof0u4o] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-smdxof0u4o] {
        min-width: auto;
    }
}

/* /Pages/Accounting/CashFlowStatement.razor.rz.scp.css */
/* =============================================
   Cash Flow Statement - Scoped Styles
   ============================================= */

/* Report content */
[b-vl3vwkwc1y] .report-content {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Sections */
[b-vl3vwkwc1y] .report-section {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 1rem;
}

[b-vl3vwkwc1y] .section-header {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    font-weight: 600;
    font-size: 0.95rem;
}

[b-vl3vwkwc1y] .section-header h3 {
    margin: 0;
    font-size: 0.95rem;
    font-weight: 600;
}

[b-vl3vwkwc1y] .section-header.operating {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success-emphasis);
    border-bottom: 2px solid rgba(16, 185, 129, 0.2);
}

[b-vl3vwkwc1y] .section-header.investing {
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo-dark);
    border-bottom: 2px solid rgba(99, 102, 241, 0.2);
}

[b-vl3vwkwc1y] .section-header.financing {
    background: rgba(245, 158, 11, 0.08);
    color: var(--theme-warning-emphasis);
    border-bottom: 2px solid rgba(245, 158, 11, 0.2);
}

/* Cash flow lines */
[b-vl3vwkwc1y] .cf-subsection {
    padding: 0.5rem 0;
}

[b-vl3vwkwc1y] .cf-line {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 1.25rem;
    font-size: 0.875rem;
}

[b-vl3vwkwc1y] .cf-line:hover:not(.cf-line-total):not(.cf-line-start) {
    background: rgba(0, 0, 0, 0.02);
}

[b-vl3vwkwc1y] .cf-line-start {
    font-weight: 600;
    border-bottom: 1px solid var(--border-color);
    padding-bottom: 0.75rem;
    margin-bottom: 0.25rem;
}

[b-vl3vwkwc1y] .cf-line-detail {
    color: var(--text-secondary);
}

[b-vl3vwkwc1y] .cf-line-total {
    font-weight: 700;
    border-top: 2px solid var(--border-color);
    margin-top: 0.5rem;
    padding-top: 0.75rem;
    padding-bottom: 0.75rem;
    font-size: 0.925rem;
}

[b-vl3vwkwc1y] .cf-label {
    flex: 1;
    min-width: 0;
}

[b-vl3vwkwc1y] .cf-indent {
    padding-left: 1.5rem;
}

[b-vl3vwkwc1y] .cf-amount {
    font-family: 'JetBrains Mono', 'Cascadia Code', monospace;
    font-size: 0.875rem;
    text-align: right;
    min-width: 160px;
    white-space: nowrap;
}

[b-vl3vwkwc1y] .cf-total {
    font-size: 0.95rem;
}

[b-vl3vwkwc1y] .cf-adjustment-header {
    padding: 0.375rem 1.25rem;
    font-size: 0.8rem;
    color: var(--text-muted);
    font-style: italic;
}

[b-vl3vwkwc1y] .cf-category-tag {
    display: inline-block;
    font-size: 0.7rem;
    padding: 0.1rem 0.4rem;
    border-radius: 4px;
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
    margin-right: 0.5rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

/* Amount coloring */
[b-vl3vwkwc1y] .amount-positive {
    color: var(--theme-success-emphasis);
}

[b-vl3vwkwc1y] .amount-negative {
    color: var(--theme-danger-emphasis);
}

[b-vl3vwkwc1y] .amount-zero {
    color: var(--text-muted);
}

/* Report totals (reuse from income statement) */
[b-vl3vwkwc1y] .report-totals {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 1rem 1.25rem;
    margin-top: 0.5rem;
}

[b-vl3vwkwc1y] .totals-row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0;
    font-size: 0.9rem;
}

[b-vl3vwkwc1y] .totals-label {
    font-weight: 500;
    color: var(--text-secondary);
}

[b-vl3vwkwc1y] .totals-value {
    font-family: 'JetBrains Mono', 'Cascadia Code', monospace;
    font-weight: 600;
    font-size: 0.95rem;
}

[b-vl3vwkwc1y] .net-row {
    border-top: 2px solid var(--border-color);
    margin-top: 0.5rem;
    padding-top: 0.75rem;
}

[b-vl3vwkwc1y] .net-row .totals-label {
    font-weight: 700;
    font-size: 1rem;
    color: var(--text-primary);
}

[b-vl3vwkwc1y] .net-row .totals-value {
    font-size: 1.1rem;
}

[b-vl3vwkwc1y] .balance-status {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.75rem;
    padding: 0.625rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8rem;
    font-weight: 500;
}

[b-vl3vwkwc1y] .balance-status.balanced {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success-emphasis);
}

[b-vl3vwkwc1y] .balance-status.unbalanced {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger-emphasis);
}

/* Period footer info */
[b-vl3vwkwc1y] .report-footer-info {
    display: flex;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    font-size: 0.8rem;
    color: var(--text-muted);
    margin-top: 0.5rem;
}

/* Responsive */
@media (max-width: 768px) {
    [b-vl3vwkwc1y] .cf-line {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }

    [b-vl3vwkwc1y] .cf-amount {
        min-width: unset;
        text-align: left;
        padding-left: 1.5rem;
    }

    [b-vl3vwkwc1y] .totals-row {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }

    [b-vl3vwkwc1y] .report-footer-info {
        flex-direction: column;
        gap: 0.25rem;
    }
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    [b-vl3vwkwc1y] .section-header.operating {
        background: rgba(16, 185, 129, 0.12);
    }

    [b-vl3vwkwc1y] .section-header.investing {
        background: rgba(99, 102, 241, 0.12);
    }

    [b-vl3vwkwc1y] .section-header.financing {
        background: rgba(245, 158, 11, 0.12);
    }

    [b-vl3vwkwc1y] .cf-category-tag {
        background: rgba(99, 102, 241, 0.15);
    }
}
/* /Pages/Accounting/ChangesInEquity.razor.rz.scp.css */
/* =============================================
   Statement of Changes in Equity - Scoped Styles
   ============================================= */

[b-vohqeskoqi] .report-content {
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* Equity table wrapper */
[b-vohqeskoqi] .equity-table-wrapper {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow-x: auto;
    margin-bottom: 1rem;
}

[b-vohqeskoqi] .equity-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.875rem;
}

/* Header row */
[b-vohqeskoqi] .equity-table thead th {
    padding: 0.875rem 1rem;
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    background: rgba(99, 102, 241, 0.06);
    color: var(--text-secondary);
    border-bottom: 2px solid var(--border-color);
    white-space: nowrap;
}

[b-vohqeskoqi] .equity-label-col {
    text-align: left;
    min-width: 220px;
}

[b-vohqeskoqi] .equity-amount-col {
    text-align: right;
    min-width: 140px;
}

[b-vohqeskoqi] .equity-total-col {
    text-align: right;
    min-width: 150px;
    background: rgba(99, 102, 241, 0.1) !important;
    color: var(--theme-indigo-dark) !important;
}

/* Body rows */
[b-vohqeskoqi] .equity-table tbody tr {
    border-bottom: 1px solid var(--border-color);
}

[b-vohqeskoqi] .equity-table tbody tr:hover:not(.equity-row-header) {
    background: rgba(0, 0, 0, 0.015);
}

[b-vohqeskoqi] .equity-label-cell {
    padding: 0.625rem 1rem;
    color: var(--text-primary);
}

[b-vohqeskoqi] .equity-movement-label {
    padding-left: 1rem;
    color: var(--text-secondary);
}

[b-vohqeskoqi] .equity-amount-cell {
    padding: 0.625rem 1rem;
    text-align: right;
    font-family: 'JetBrains Mono', 'Cascadia Code', monospace;
    font-size: 0.85rem;
}

[b-vohqeskoqi] .equity-total-cell {
    padding: 0.625rem 1rem;
    text-align: right;
    font-family: 'JetBrains Mono', 'Cascadia Code', monospace;
    font-size: 0.875rem;
    background: rgba(99, 102, 241, 0.03);
}

/* Header rows (Opening / Closing) */
[b-vohqeskoqi] .equity-row-header {
    background: rgba(99, 102, 241, 0.04);
}

[b-vohqeskoqi] .equity-row-header .equity-label-cell {
    font-weight: 700;
}

[b-vohqeskoqi] .equity-row-header .equity-amount-cell,
[b-vohqeskoqi] .equity-row-header .equity-total-cell {
    font-weight: 700;
}

/* Closing row - double border top */
[b-vohqeskoqi] .equity-row-closing {
    border-top: 3px double var(--border-color);
    background: rgba(99, 102, 241, 0.06);
}

[b-vohqeskoqi] .equity-row-closing .equity-label-cell {
    font-size: 0.925rem;
}

[b-vohqeskoqi] .equity-row-closing .equity-amount-cell,
[b-vohqeskoqi] .equity-row-closing .equity-total-cell {
    font-size: 0.925rem;
}

/* Amount coloring */
[b-vohqeskoqi] .amount-positive {
    color: var(--theme-success-emphasis);
}

[b-vohqeskoqi] .amount-negative {
    color: var(--theme-danger-emphasis);
}

[b-vohqeskoqi] .amount-zero {
    color: var(--text-muted);
}

/* Summary cards */
[b-vohqeskoqi] .equity-summary {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1rem;
}

[b-vohqeskoqi] .equity-summary-card {
    background: var(--card-bg);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

[b-vohqeskoqi] .equity-summary-label {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
}

[b-vohqeskoqi] .equity-summary-value {
    font-family: 'JetBrains Mono', 'Cascadia Code', monospace;
    font-size: 1.15rem;
    font-weight: 700;
    color: var(--text-primary);
}

[b-vohqeskoqi] .equity-summary-card.positive {
    border-left: 3px solid var(--theme-success-emphasis);
}

[b-vohqeskoqi] .equity-summary-card.positive .equity-summary-value {
    color: var(--theme-success-emphasis);
}

[b-vohqeskoqi] .equity-summary-card.negative {
    border-left: 3px solid var(--theme-danger-emphasis);
}

[b-vohqeskoqi] .equity-summary-card.negative .equity-summary-value {
    color: var(--theme-danger-emphasis);
}

[b-vohqeskoqi] .equity-summary-card.highlight {
    background: rgba(99, 102, 241, 0.06);
    border-color: rgba(99, 102, 241, 0.25);
}

[b-vohqeskoqi] .equity-summary-card.highlight .equity-summary-value {
    color: var(--theme-indigo-dark);
}

/* Period footer info */
[b-vohqeskoqi] .report-footer-info {
    display: flex;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    font-size: 0.8rem;
    color: var(--text-muted);
}

/* Responsive */
@media (max-width: 768px) {
    [b-vohqeskoqi] .equity-summary {
        grid-template-columns: 1fr;
    }

    [b-vohqeskoqi] .equity-table-wrapper {
        border-radius: 8px;
    }

    [b-vohqeskoqi] .report-footer-info {
        flex-direction: column;
        gap: 0.25rem;
    }
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    [b-vohqeskoqi] .equity-table thead th {
        background: rgba(99, 102, 241, 0.1);
    }

    [b-vohqeskoqi] .equity-row-header {
        background: rgba(99, 102, 241, 0.08);
    }

    [b-vohqeskoqi] .equity-row-closing {
        background: rgba(99, 102, 241, 0.1);
    }

    [b-vohqeskoqi] .equity-total-col {
        background: rgba(99, 102, 241, 0.15) !important;
    }

    [b-vohqeskoqi] .equity-total-cell {
        background: rgba(99, 102, 241, 0.06);
    }

    [b-vohqeskoqi] .equity-summary-card.highlight {
        background: rgba(99, 102, 241, 0.1);
    }
}
/* /Pages/Accounting/ChequeList.razor.rz.scp.css */
/* ============================================
   CHEQUE LIST PAGE
   ============================================ */

/* ============ Status Badges ============ */
.status-badge[b-3rbm135ur8] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-3rbm135ur8] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-3rbm135ur8] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-3rbm135ur8] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-3rbm135ur8] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-3rbm135ur8] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.status-stale[b-3rbm135ur8] {
    background: rgba(249, 115, 22, 0.12);
    color: var(--theme-warning-emphasis);
}

/* ============ Cheque Number ============ */
.cheque-number[b-3rbm135ur8] {
    font-family: var(--font-mono, monospace);
    font-size: 0.8125rem;
    color: var(--theme-primary);
}

/* ============ Amount Value ============ */
.amount-value[b-3rbm135ur8] {
    font-weight: 700;
    font-size: 0.875rem;
    color: var(--text-primary);
    font-family: var(--font-mono, monospace);
}

/* ============ Tiny Text ============ */
.tiny-text[b-3rbm135ur8] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.tiny-text i[b-3rbm135ur8] {
    font-size: 0.6875rem;
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-3rbm135ur8] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-3rbm135ur8] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-3rbm135ur8] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-3rbm135ur8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-3rbm135ur8] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-3rbm135ur8] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-3rbm135ur8] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-3rbm135ur8] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-3rbm135ur8] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-3rbm135ur8],
.tab-compact.active .tab-badge.warning[b-3rbm135ur8],
.tab-compact.active .tab-badge.danger[b-3rbm135ur8],
.tab-compact.active .tab-badge.info[b-3rbm135ur8] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Bank Selector ============ */
.bank-inline[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    flex-shrink: 0;
}

.bank-label[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

.bank-label i[b-3rbm135ur8] {
    font-size: 0.875rem;
}

.bank-select[b-3rbm135ur8] {
    height: 34px;
    padding: 0 1.75rem 0 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
    max-width: 200px;
}

.bank-select:focus[b-3rbm135ur8] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ============ Search ============ */
.search-inline[b-3rbm135ur8] {
    flex: 1;
    min-width: 130px;
    max-width: 300px;
}

.nav-search-box[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-3rbm135ur8] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-3rbm135ur8] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-3rbm135ur8] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-3rbm135ur8]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-3rbm135ur8] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-3rbm135ur8] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-3rbm135ur8] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-3rbm135ur8] {
    font-size: 1rem;
}

/* ============ Content Area ============ */
.content-area[b-3rbm135ur8] {
    min-height: 200px;
}

.table-container[b-3rbm135ur8] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-3rbm135ur8] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-3rbm135ur8] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-3rbm135ur8] {
    color: var(--text-primary);
}

.page-size-selector[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-3rbm135ur8] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-3rbm135ur8] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-3rbm135ur8] {
    border-color: var(--theme-primary);
}

/* ============ Modal Form Grid ============ */
.modal-form-grid[b-3rbm135ur8] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-field[b-3rbm135ur8] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.form-field-full[b-3rbm135ur8] {
    grid-column: 1 / -1;
}

.field-label[b-3rbm135ur8] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0;
}

.required-mark[b-3rbm135ur8] {
    color: var(--theme-danger);
}

.form-select[b-3rbm135ur8] {
    height: 38px;
    padding: 0 2rem 0 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 12px;
    cursor: pointer;
}

.form-select:focus[b-3rbm135ur8] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.field-error[b-3rbm135ur8] {
    font-size: 0.75rem;
    color: var(--theme-danger);
}

.validation-summary[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--theme-danger-bg);
    border: 1px solid var(--theme-danger);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--theme-danger);
    margin-bottom: 1rem;
}

.validation-summary i[b-3rbm135ur8] {
    font-size: 1rem;
    flex-shrink: 0;
}

/* ============ Status Change Modal ============ */
.status-change-info[b-3rbm135ur8] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    margin-bottom: 1rem;
}

.info-row[b-3rbm135ur8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.info-label[b-3rbm135ur8] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    min-width: 100px;
}

.info-value[b-3rbm135ur8] {
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.status-change-form[b-3rbm135ur8] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ============ Spinner ============ */
.spinner-sm[b-3rbm135ur8] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-3rbm135ur8 0.6s linear infinite;
}

@keyframes spin-b-3rbm135ur8 {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-3rbm135ur8] {
        flex-wrap: wrap;
    }

    .search-inline[b-3rbm135ur8] {
        max-width: none;
        flex: 1 1 150px;
    }

    .bank-inline[b-3rbm135ur8] {
        flex: 1 1 auto;
    }

    .bank-select[b-3rbm135ur8] {
        max-width: none;
    }

    .tab-compact[b-3rbm135ur8] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }

    .modal-form-grid[b-3rbm135ur8] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-3rbm135ur8] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-3rbm135ur8] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .bank-inline[b-3rbm135ur8] {
        order: 2;
        flex: 1 1 100%;
    }

    .bank-select[b-3rbm135ur8] {
        flex: 1;
        max-width: none;
    }

    .search-inline[b-3rbm135ur8] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .refresh-btn[b-3rbm135ur8] {
        order: 4;
    }

    .list-footer[b-3rbm135ur8] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-3rbm135ur8] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-3rbm135ur8] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-3rbm135ur8] {
        display: none;
    }

    .tab-compact[b-3rbm135ur8] {
        padding: 0.5rem 0.625rem;
    }

    .bank-label span[b-3rbm135ur8] {
        display: none;
    }
}
/* /Pages/Accounting/DayBookReport.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-gp9s6vfymp] {
    min-height: 300px;
}

.table-container[b-gp9s6vfymp] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-gp9s6vfymp] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.voucher-no[b-gp9s6vfymp] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
    color: var(--theme-primary);
    font-weight: 600;
}

.narration-text[b-gp9s6vfymp] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ============ Voucher Type Badges ============ */
.voucher-badge[b-gp9s6vfymp] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.6rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.voucher-payment[b-gp9s6vfymp] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.voucher-receipt[b-gp9s6vfymp] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.voucher-journal[b-gp9s6vfymp] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.voucher-purchase[b-gp9s6vfymp] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.voucher-sales[b-gp9s6vfymp] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.voucher-debit[b-gp9s6vfymp] {
    background: rgba(236, 72, 153, 0.1);
    color: var(--theme-purple);
}

.voucher-credit[b-gp9s6vfymp] {
    background: rgba(168, 85, 247, 0.1);
    color: var(--theme-purple);
}

/* ============ Report Totals ============ */
.report-totals[b-gp9s6vfymp] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-gp9s6vfymp] {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--border-color);
}

.totals-label[b-gp9s6vfymp] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    flex: 1;
}

.totals-value[b-gp9s6vfymp] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 140px;
    text-align: right;
}

.totals-value.debit[b-gp9s6vfymp] {
    color: var(--theme-primary);
}

.totals-value.credit[b-gp9s6vfymp] {
    color: var(--theme-success);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .totals-row[b-gp9s6vfymp] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-gp9s6vfymp] {
        min-width: auto;
    }
}

/* /Pages/Accounting/FeeCollectionReport.razor.rz.scp.css */
/* ============ Fee Type Badge ============ */
[b-7fl69pa58l] .fee-type-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

[b-7fl69pa58l] .fee-type-badge.invoice {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

[b-7fl69pa58l] .fee-type-badge.payment {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

/* ============ Empty State ============ */
.empty-state-box[b-7fl69pa58l] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    padding: 3rem 2rem;
    background: var(--bg-surface);
    border: 1px dashed var(--border-color);
    border-radius: 10px;
    color: var(--text-muted);
    text-align: center;
}

.empty-state-box i[b-7fl69pa58l] {
    font-size: 2.5rem;
    opacity: 0.5;
}

.empty-state-box p[b-7fl69pa58l] {
    font-size: 0.875rem;
    margin: 0;
}

/* /Pages/Accounting/FeeReceipt.razor.rz.scp.css */
/* ============ Animations ============ */
@keyframes fadeSlideUp-b-ms5b010062 {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes scaleIn-b-ms5b010062 {
    from { opacity: 0; transform: scale(0.95); }
    to { opacity: 1; transform: scale(1); }
}

@keyframes checkBounce-b-ms5b010062 {
    0% { transform: scale(0); }
    50% { transform: scale(1.2); }
    100% { transform: scale(1); }
}

/* ============ Student Search Bar ============ */
.student-bar[b-ms5b010062] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
    animation: fadeSlideUp-b-ms5b010062 0.2s ease-out;
}

.student-select-wrapper[b-ms5b010062] {
    flex: 1;
    min-width: 280px;
}

.student-select-wrapper :deep(.fsh-form-group)[b-ms5b010062] { margin-bottom: 0; }

/* ============ Balance Chips ============ */
.balance-chips[b-ms5b010062] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    animation: fadeSlideUp-b-ms5b010062 0.25s ease-out 0.1s both;
}

.balance-chip[b-ms5b010062] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0.25rem 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    min-width: 80px;
    transition: transform 0.15s, box-shadow 0.15s;
}

.balance-chip:hover[b-ms5b010062] {
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0,0,0,0.06);
}

.balance-chip.highlight[b-ms5b010062] {
    border-width: 2px;
}

.balance-chip.highlight.debit[b-ms5b010062] {
    border-color: rgba(239, 68, 68, 0.3);
    background: rgba(239, 68, 68, 0.04);
}

.balance-chip.highlight.credit[b-ms5b010062] {
    border-color: rgba(16, 185, 129, 0.3);
    background: rgba(16, 185, 129, 0.04);
}

.chip-label[b-ms5b010062] {
    font-size: 0.6rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
}

.chip-value[b-ms5b010062] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--text-primary);
}

.chip-value.paid[b-ms5b010062] { color: var(--theme-success); }
.highlight.debit .chip-value[b-ms5b010062] { color: var(--theme-danger); }
.highlight.credit .chip-value[b-ms5b010062] { color: var(--theme-success); }

/* ============ Empty Prompt ============ */
.empty-prompt[b-ms5b010062] {
    text-align: center;
    padding: 3rem 1rem;
    color: var(--text-muted);
    animation: fadeSlideUp-b-ms5b010062 0.3s ease-out;
}

.empty-prompt i[b-ms5b010062] {
    font-size: 2.5rem;
    opacity: 0.3;
    display: block;
    margin-bottom: 0.75rem;
}

.empty-prompt p[b-ms5b010062] {
    margin: 0;
    font-size: 0.85rem;
}

/* ============ Receipt Cards ============ */
.receipt-card[b-ms5b010062] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    overflow: visible;
    position: relative;
    z-index: 20;
    animation: fadeSlideUp-b-ms5b010062 0.3s ease-out both;
}

.receipt-card:nth-child(1)[b-ms5b010062] { animation-delay: 0s; }
.receipt-card:nth-child(2)[b-ms5b010062] { animation-delay: 0.08s; }
.receipt-card:nth-child(3)[b-ms5b010062] { animation-delay: 0.16s; }
.receipt-card:nth-child(4)[b-ms5b010062] { animation-delay: 0.24s; }

.receipt-card-header[b-ms5b010062] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
    padding: 0.6rem 1rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
    border-radius: 10px 10px 0 0;
}

.receipt-card-header h3[b-ms5b010062] {
    margin: 0;
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text-primary);
}

.step-badge[b-ms5b010062] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--theme-primary);
    color: white;
    font-size: 0.75rem;
    font-weight: 700;
    flex-shrink: 0;
}

.receipt-card-body[b-ms5b010062] {
    padding: 0.875rem 1rem;
}

/* (Balance card removed — replaced by inline balance chips) */

/* ============ Form Grid ============ */
.form-grid[b-ms5b010062] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.75rem;
}

/* ============ Action Bar (Sticky Footer) ============ */
.action-bar[b-ms5b010062] {
    position: sticky;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: 0.75rem;
    justify-content: flex-end;
    padding: 0.75rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.06);
    z-index: 10;
    margin-top: 0.5rem;
}

/* ============ Table Container ============ */
.table-container[b-ms5b010062] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
}

[b-ms5b010062] .paying { color: var(--theme-success); }

/* ============ Success State ============ */
.receipt-success[b-ms5b010062] {
    text-align: center;
    padding: 2.5rem 2rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    animation: scaleIn-b-ms5b010062 0.35s ease-out;
}

.success-icon[b-ms5b010062] {
    font-size: 3rem;
    color: var(--theme-success);
    margin-bottom: 0.75rem;
    animation: checkBounce-b-ms5b010062 0.5s ease-out 0.15s both;
}

.receipt-success h3[b-ms5b010062] {
    font-size: 1.15rem;
    font-weight: 700;
    margin: 0 0 0.4rem 0;
    color: var(--text-primary);
}

.success-voucher[b-ms5b010062] {
    font-size: 0.82rem;
    color: var(--text-secondary);
    margin: 0;
}

.success-amount[b-ms5b010062] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--theme-success);
    margin: 0.5rem 0;
}

.success-student[b-ms5b010062] {
    font-size: 0.82rem;
    color: var(--text-muted);
    margin: 0 0 1.25rem 0;
}

.allocation-summary[b-ms5b010062] {
    text-align: left;
    max-width: 700px;
    margin: 1.25rem auto;
}

.allocation-summary h4[b-ms5b010062] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0 0 0.5rem 0;
}

.success-actions[b-ms5b010062] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    margin-top: 1.25rem;
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .form-grid[b-ms5b010062] { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 768px) {
    .student-bar[b-ms5b010062] { flex-direction: column; }
    .student-select-wrapper[b-ms5b010062] { width: 100%; min-width: unset; }
    .balance-chips[b-ms5b010062] { width: 100%; justify-content: center; }
    .form-grid[b-ms5b010062] { grid-template-columns: 1fr; }
    .success-actions[b-ms5b010062] { flex-direction: column; }
    .action-bar[b-ms5b010062] { flex-direction: column; }
}
/* /Pages/Accounting/FeeStructureList.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-s9xq1g0hwx] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* ============ Inline Filters ============ */
.filter-inline[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.filter-label[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted);
    white-space: nowrap;
}

.filter-label i[b-s9xq1g0hwx] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.filter-select[b-s9xq1g0hwx] {
    height: 34px;
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    color: var(--text-primary);
    min-width: 120px;
    cursor: pointer;
}

.filter-select:focus[b-s9xq1g0hwx] {
    outline: none;
    border-color: var(--theme-primary);
}

/* ============ Search ============ */
.search-inline[b-s9xq1g0hwx] {
    min-width: 180px;
}

.nav-search-box[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 34px;
    padding: 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
}

.nav-search-box i[b-s9xq1g0hwx] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.nav-search-box input[b-s9xq1g0hwx] {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
}

.clear-search[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-surface-tertiary);
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
}

/* ============ Refresh ============ */
.refresh-btn[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.refresh-btn:hover[b-s9xq1g0hwx] {
    background: var(--bg-surface-secondary);
}

.spinner-sm[b-s9xq1g0hwx] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin-b-s9xq1g0hwx 0.6s linear infinite;
}

@keyframes spin-b-s9xq1g0hwx {
    to { transform: rotate(360deg); }
}

/* ============ Empty State ============ */
.empty-state-box[b-s9xq1g0hwx] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    background: var(--bg-surface);
    border: 1px dashed var(--border-color);
    border-radius: 12px;
    text-align: center;
    color: var(--text-muted);
}

.empty-state-box i[b-s9xq1g0hwx] {
    font-size: 2.5rem;
    margin-bottom: 0.75rem;
    opacity: 0.4;
}

.empty-state-box p[b-s9xq1g0hwx] {
    font-size: 0.875rem;
    margin: 0;
}

/* ============ Precedence Badge ============ */
.precedence-badge[b-s9xq1g0hwx] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    padding: 0 0.375rem;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 700;
    background: rgba(245, 158, 11, 0.08);
    color: var(--theme-warning-emphasis);
}

/* ============ Filter Tags ============ */
.filter-tags[b-s9xq1g0hwx] {
    display: flex;
    gap: 0.375rem;
    flex-wrap: wrap;
}

.filter-tag[b-s9xq1g0hwx] {
    display: inline-flex;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo);
}

/* ============ Action Buttons ============ */
.action-buttons[b-s9xq1g0hwx] {
    display: flex;
    gap: 0.375rem;
}

/* ============ Content Area ============ */
.content-area[b-s9xq1g0hwx] {
    margin-bottom: 1rem;
}

.table-container[b-s9xq1g0hwx] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-s9xq1g0hwx] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.total-amount[b-s9xq1g0hwx] {
    color: var(--text-muted);
}

.page-size-selector[b-s9xq1g0hwx] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector select[b-s9xq1g0hwx] {
    height: 28px;
    padding: 0 0.375rem;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
}

/* ============ Form ============ */
.form-row[b-s9xq1g0hwx] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.text-danger[b-s9xq1g0hwx] {
    color: var(--theme-danger);
}

.text-muted[b-s9xq1g0hwx] {
    color: var(--text-muted);
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-s9xq1g0hwx] {
        flex-wrap: wrap;
    }
    .filter-inline[b-s9xq1g0hwx] {
        flex: 1;
        min-width: 140px;
    }
    .filter-select[b-s9xq1g0hwx] {
        flex: 1;
    }
    .search-inline[b-s9xq1g0hwx] {
        flex: 1;
        min-width: 160px;
    }
}

@media (max-width: 768px) {
    .filter-inline[b-s9xq1g0hwx] {
        flex-basis: 100%;
    }
    .filter-label span[b-s9xq1g0hwx] {
        display: none;
    }
    .filter-select[b-s9xq1g0hwx] {
        width: 100%;
    }
    .form-row[b-s9xq1g0hwx] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Accounting/GeneralBilling.razor.rz.scp.css */
/* ============================================================
   General Billing — Uses shared component patterns
   ============================================================ */

/* ============ Navigation Bar ============ */
.navigation-bar[b-n634muycw6] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.filter-item[b-n634muycw6] {
    min-width: 160px;
    flex: 1;
    max-width: 240px;
}

.filter-item :deep(.fsh-form-group)[b-n634muycw6] {
    margin-bottom: 0;
}

/* ============ Refresh Button ============ */
.refresh-btn[b-n634muycw6] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
    font-size: 0.9rem;
    margin-left: auto;
}

.refresh-btn:hover:not(:disabled)[b-n634muycw6] { filter: brightness(0.9); }
.refresh-btn:disabled[b-n634muycw6] { opacity: 0.5; cursor: not-allowed; }

.spinner-sm[b-n634muycw6] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: var(--bg-surface);
    border-radius: 50%;
    animation: spin-b-n634muycw6 0.6s linear infinite;
}

@keyframes spin-b-n634muycw6 { to { transform: rotate(360deg); } }

/* ============ Analytics Section ============ */
.analytics-section[b-n634muycw6] {
    margin-bottom: 0.75rem;
}

.analytics-toggle-btn[b-n634muycw6] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.4rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.82rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    width: 100%;
    justify-content: center;
}

.analytics-toggle-btn:hover[b-n634muycw6] {
    background: var(--bg-hover, rgba(0,0,0,0.02));
    color: var(--text-primary);
}

.toggle-icon[b-n634muycw6] { margin-left: auto; font-size: 0.85rem; }

/* ============ Preview Table ============ */
.table-container[b-n634muycw6] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow-x: auto;
}

.preview-table[b-n634muycw6] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

.preview-table th[b-n634muycw6] {
    text-align: left;
    padding: 0.5rem 0.6rem;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-secondary);
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
    white-space: nowrap;
}

.preview-table td[b-n634muycw6] {
    padding: 0.4rem 0.6rem;
    border-bottom: 1px solid var(--border-color-light);
}

.preview-table tbody tr:hover[b-n634muycw6] {
    background: rgba(0, 0, 0, 0.015);
}

/* ============ Job Progress ============ */
.job-progress[b-n634muycw6] {
    background: rgba(59, 130, 246, 0.06);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 0.5rem;
    padding: 1rem;
    margin-bottom: 0.75rem;
    animation: fadeIn-b-n634muycw6 0.3s ease-out;
}

.job-progress-header[b-n634muycw6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.job-type-badge[b-n634muycw6] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--blue-700);
    background: rgba(59, 130, 246, 0.12);
    padding: 0.2rem 0.6rem;
    border-radius: 0.25rem;
}

.job-status[b-n634muycw6] {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    padding: 0.15rem 0.5rem;
    border-radius: 0.25rem;
}

.job-status.processing[b-n634muycw6] { color: var(--blue-700); background: rgba(59, 130, 246, 0.12); }
.job-status.queued[b-n634muycw6] { color: var(--amber-700); background: rgba(245, 158, 11, 0.12); }

.progress-bar-container[b-n634muycw6] {
    width: 100%;
    height: 6px;
    background: rgba(59, 130, 246, 0.12);
    border-radius: 3px;
    overflow: hidden;
}

.progress-bar[b-n634muycw6] {
    height: 100%;
    background: var(--blue-500);
    border-radius: 3px;
    transition: width 0.5s ease;
}

.progress-bar.processing[b-n634muycw6] {
    background: linear-gradient(90deg, var(--blue-500) 0%, var(--blue-400) 50%, var(--blue-500) 100%);
    background-size: 200% 100%;
    animation: progress-pulse-b-n634muycw6 1.5s ease-in-out infinite;
}

@keyframes progress-pulse-b-n634muycw6 {
    0% { background-position: 100% 0; }
    100% { background-position: -100% 0; }
}

.progress-detail[b-n634muycw6] {
    display: flex;
    justify-content: space-between;
    margin-top: 0.35rem;
    font-size: 0.78rem;
    color: var(--text-secondary);
}

.progress-pct[b-n634muycw6] {
    font-weight: 600;
    color: var(--blue-600);
}

/* ============ Job Result ============ */
.job-result[b-n634muycw6] {
    background: rgba(5, 150, 105, 0.06);
    border: 1px solid rgba(5, 150, 105, 0.2);
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    margin-bottom: 0.75rem;
    animation: fadeIn-b-n634muycw6 0.3s ease-out;
}

.job-result.failed[b-n634muycw6] {
    background: rgba(239, 68, 68, 0.06);
    border-color: rgba(239, 68, 68, 0.2);
}

.job-result-header[b-n634muycw6] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    color: var(--green-700);
}

.job-result.failed .job-result-header[b-n634muycw6] { color: var(--red-700); }

.job-time[b-n634muycw6] {
    margin-left: auto;
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 400;
}

.job-result-msg[b-n634muycw6] {
    margin: 0.4rem 0 0;
    font-size: 0.82rem;
    color: var(--text-primary);
}

.result-grid[b-n634muycw6] {
    display: flex;
    gap: 1.25rem;
    margin-top: 0.5rem;
}

.result-item[b-n634muycw6] { display: flex; flex-direction: column; }

.result-label[b-n634muycw6] {
    font-size: 0.7rem;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--text-secondary);
}

.result-value[b-n634muycw6] {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.result-value.muted[b-n634muycw6] { color: var(--text-secondary); }

/* ============ Action Cards ============ */
.action-cards[b-n634muycw6] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.action-card[b-n634muycw6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    transition: box-shadow 0.15s, border-color 0.15s;
}

.action-card:hover[b-n634muycw6] {
    border-color: var(--theme-primary);
    box-shadow: 0 2px 8px rgba(0,0,0,0.04);
}

.action-card-left[b-n634muycw6] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.action-card-left strong[b-n634muycw6] {
    font-size: 0.85rem;
    color: var(--text-primary);
}

.action-card-left p[b-n634muycw6] {
    margin: 0;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.action-icon[b-n634muycw6] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    flex-shrink: 0;
}

.action-icon.generate[b-n634muycw6] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.action-icon.confirm[b-n634muycw6] {
    background: rgba(5, 150, 105, 0.1);
    color: var(--theme-success-emphasis);
}

.action-icon.reverse[b-n634muycw6] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

.action-count[b-n634muycw6] {
    display: inline-block;
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.1rem 0.5rem;
    border-radius: 10px;
    margin-left: 0.25rem;
    vertical-align: middle;
}

.action-count.blue[b-n634muycw6] {
    background: rgba(59, 130, 246, 0.12);
    color: var(--theme-info);
}

.action-count.warning[b-n634muycw6] {
    background: rgba(245, 158, 11, 0.12);
    color: var(--theme-warning-emphasis);
}

.action-count.success[b-n634muycw6] {
    background: rgba(5, 150, 105, 0.12);
    color: var(--theme-success-emphasis);
}

/* ============ Inline Alerts ============ */
.inline-alerts[b-n634muycw6] { margin-top: 0.75rem; }

.inline-alert[b-n634muycw6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 0.9rem;
    border-radius: 8px;
    font-size: 0.82rem;
}

.inline-alert.info[b-n634muycw6] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
    color: var(--theme-info-text);
}

.inline-alert.success[b-n634muycw6] {
    background: rgba(5, 150, 105, 0.08);
    border: 1px solid rgba(5, 150, 105, 0.25);
    color: var(--theme-success-emphasis);
}

/* ============ Animations ============ */
@keyframes fadeIn-b-n634muycw6 {
    from { opacity: 0; transform: translateY(6px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .navigation-bar[b-n634muycw6] { gap: 0.5rem; }

    .filter-item[b-n634muycw6] {
        width: 100%;
        max-width: none;
    }

    .action-card[b-n634muycw6] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem;
    }

    .result-grid[b-n634muycw6] {
        flex-wrap: wrap;
        gap: 0.75rem;
    }
}

@media (max-width: 480px) {
    .vacancy-label span[b-n634muycw6] { display: none; }
}
/* /Pages/Accounting/GradeLevelSettings.razor.rz.scp.css */
/* ============ Sort Order Badge ============ */
.sort-order-badge[b-unjwizmgm8] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    padding: 0 0.375rem;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 700;
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo);
}

/* ============ Grade Name Cell ============ */
.grade-name-cell[b-unjwizmgm8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.short-name[b-unjwizmgm8] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.next-grade[b-unjwizmgm8] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.next-grade i[b-unjwizmgm8] {
    color: var(--theme-primary);
    font-size: 0.875rem;
}

/* ============ Status Badges ============ */
.status-badge[b-unjwizmgm8] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-unjwizmgm8] {
    background: var(--theme-success-bg, rgba(16, 185, 129, 0.1));
    color: var(--theme-success);
}

.status-muted[b-unjwizmgm8] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Action Buttons ============ */
.action-buttons[b-unjwizmgm8] {
    display: flex;
    gap: 0.375rem;
}

/* ============ Content Area ============ */
.content-area[b-unjwizmgm8] {
    margin-bottom: 1rem;
}

.table-container[b-unjwizmgm8] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-unjwizmgm8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-unjwizmgm8] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-unjwizmgm8] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ============ Form ============ */
.form-group[b-unjwizmgm8] {
    margin-bottom: 1rem;
}

.form-label[b-unjwizmgm8] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-input[b-unjwizmgm8] {
    width: 100%;
    height: 38px;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    transition: border-color 0.2s ease;
}

.form-input:focus[b-unjwizmgm8] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color, rgba(99, 102, 241, 0.15));
}

.form-row[b-unjwizmgm8] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-check-group[b-unjwizmgm8] {
    margin-bottom: 1rem;
}

.form-check-label[b-unjwizmgm8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
}

.form-check-input[b-unjwizmgm8] {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    cursor: pointer;
}

.text-danger[b-unjwizmgm8] {
    color: var(--theme-danger);
}

.text-muted[b-unjwizmgm8] {
    color: var(--text-muted);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .form-row[b-unjwizmgm8] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Accounting/IncomeStatement.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-8za6jywsux] {
    min-height: 300px;
}

.report-section[b-8za6jywsux] {
    margin-bottom: 1.5rem;
}

.section-header[b-8za6jywsux] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.25rem;
    border-radius: 10px 10px 0 0;
    margin-bottom: 0;
}

.section-header h3[b-8za6jywsux] {
    font-size: 0.9375rem;
    font-weight: 700;
    margin: 0;
    flex: 1;
}

.section-header i[b-8za6jywsux] {
    font-size: 1.25rem;
}

.section-header.income[b-8za6jywsux] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.section-header.expense[b-8za6jywsux] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.section-total[b-8za6jywsux] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
}

.table-container[b-8za6jywsux] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0 0 10px 10px;
    overflow: hidden;
}

.amount-cell[b-8za6jywsux] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.income-amount[b-8za6jywsux] {
    color: var(--theme-success);
}

.expense-amount[b-8za6jywsux] {
    color: var(--theme-danger);
}

/* ============ Report Totals ============ */
.report-totals[b-8za6jywsux] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-8za6jywsux] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-color);
}

.totals-row.net-row[b-8za6jywsux] {
    border-bottom: 2px solid var(--border-color);
    padding: 0.75rem 0;
}

.totals-label[b-8za6jywsux] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.net-row .totals-label[b-8za6jywsux] {
    font-size: 1rem;
    font-weight: 700;
}

.totals-value[b-8za6jywsux] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 150px;
    text-align: right;
}

.totals-value.profit[b-8za6jywsux] {
    color: var(--theme-success);
}

.totals-value.loss[b-8za6jywsux] {
    color: var(--theme-danger);
}

.balance-status[b-8za6jywsux] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 0 0;
    font-size: 0.8125rem;
    font-weight: 600;
}

.balance-status.balanced[b-8za6jywsux] {
    color: var(--theme-success);
}

.balance-status.unbalanced[b-8za6jywsux] {
    color: var(--theme-danger);
}

.balance-status i[b-8za6jywsux] {
    font-size: 1.125rem;
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .totals-row[b-8za6jywsux] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-8za6jywsux] {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .section-header[b-8za6jywsux] {
        padding: 0.5rem 1rem;
    }
}
/* /Pages/Accounting/InvoiceCreate.razor.rz.scp.css */
/* ============ Form Container ============ */
.invoice-form-container[b-x1csvngdei] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ============ Form Section ============ */
.form-section[b-x1csvngdei] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 1.5rem;
}

.form-section-title[b-x1csvngdei] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

.form-section-title i[b-x1csvngdei] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

.form-section-title .add-line-btn[b-x1csvngdei] {
    margin-left: auto;
}

/* ============ Form Row / Group ============ */
.form-row[b-x1csvngdei] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
    margin-bottom: 1rem;
}

.form-row:last-child[b-x1csvngdei] {
    margin-bottom: 0;
}

.form-group[b-x1csvngdei] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-group-wide[b-x1csvngdei] {
    grid-column: span 2;
}

.form-label[b-x1csvngdei] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0;
}

.required[b-x1csvngdei] {
    color: var(--theme-danger);
}

.form-control[b-x1csvngdei] {
    height: 38px;
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

.form-control:focus[b-x1csvngdei] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

.form-control-sm[b-x1csvngdei] {
    height: 32px;
    padding: 0.25rem 0.5rem;
    font-size: 0.8125rem;
}

/* ============ Line Items Table ============ */
.line-items-table[b-x1csvngdei] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow-x: auto;
}

.line-header[b-x1csvngdei] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    min-width: 800px;
}

.line-row[b-x1csvngdei] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--border-color);
    min-width: 800px;
    transition: background 0.1s ease;
}

.line-row:last-child[b-x1csvngdei] {
    border-bottom: none;
}

.line-row:hover[b-x1csvngdei] {
    background: var(--bg-surface-secondary);
}

.line-col[b-x1csvngdei] {
    flex-shrink: 0;
}

.col-ledger[b-x1csvngdei] {
    flex: 2;
    min-width: 180px;
}

.col-narration[b-x1csvngdei] {
    flex: 2;
    min-width: 140px;
}

.col-qty[b-x1csvngdei] {
    width: 70px;
}

.col-rate[b-x1csvngdei] {
    width: 100px;
}

.col-discount[b-x1csvngdei] {
    width: 80px;
}

.col-tax[b-x1csvngdei] {
    width: 80px;
}

.col-amount[b-x1csvngdei] {
    width: 110px;
    text-align: right;
}

.col-action[b-x1csvngdei] {
    width: 36px;
    text-align: center;
}

.line-amount[b-x1csvngdei] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

/* ============ Add / Remove Buttons ============ */
.add-line-btn[b-x1csvngdei] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: all 0.15s ease;
}

.add-line-btn:hover[b-x1csvngdei] {
    background: var(--theme-primary-emphasis);
}

.add-line-btn i[b-x1csvngdei] {
    font-size: 0.875rem;
}

.remove-line-btn[b-x1csvngdei] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
}

.remove-line-btn:hover[b-x1csvngdei] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: white;
}

/* ============ Totals Section ============ */
.totals-section[b-x1csvngdei] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
    max-width: 320px;
    margin-left: auto;
}

.totals-row[b-x1csvngdei] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.375rem 0.75rem;
}

.totals-label[b-x1csvngdei] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.totals-value[b-x1csvngdei] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.totals-grand[b-x1csvngdei] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.625rem 0.75rem;
}

.totals-grand .totals-label[b-x1csvngdei] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.totals-grand .totals-value[b-x1csvngdei] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--theme-primary);
}

/* ============ Empty Lines ============ */
.empty-lines[b-x1csvngdei] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.5rem 1rem;
    color: var(--text-muted);
    text-align: center;
}

.empty-lines i[b-x1csvngdei] {
    font-size: 2.5rem;
    margin-bottom: 0.75rem;
    opacity: 0.5;
}

.empty-lines p[b-x1csvngdei] {
    font-size: 0.875rem;
    margin: 0;
}

/* ============ Form Actions ============ */
.form-actions[b-x1csvngdei] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
}

.form-actions-right[b-x1csvngdei] {
    display: flex;
    gap: 0.75rem;
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .form-row[b-x1csvngdei] {
        grid-template-columns: 1fr;
    }

    .form-group-wide[b-x1csvngdei] {
        grid-column: span 1;
    }

    .form-actions[b-x1csvngdei] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .form-actions-right[b-x1csvngdei] {
        width: 100%;
        justify-content: flex-end;
    }

    .totals-section[b-x1csvngdei] {
        max-width: none;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .form-section[b-x1csvngdei] {
        padding: 1rem;
    }

    .form-actions-right[b-x1csvngdei] {
        flex-direction: column;
    }
}
/* /Pages/Accounting/InvoiceDetail.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-6heqslchx7] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-6heqslchx7] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-6heqslchx7] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-6heqslchx7] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-6heqslchx7] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-6heqslchx7] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Detail Card ============ */
.detail-card[b-6heqslchx7] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 1rem 1.25rem;
    margin-bottom: 0.75rem;
}

/* ============ Detail Header ============ */
.detail-header[b-6heqslchx7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 0.75rem;
    padding-bottom: 0.625rem;
    border-bottom: 1px solid var(--border-color);
}

.detail-header-left[b-6heqslchx7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.narration-text[b-6heqslchx7] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    font-style: italic;
}

/* ============ Reversal Banner ============ */
.reversal-banner[b-6heqslchx7] {
    background: var(--theme-warning-bg);
    border: 1px solid var(--theme-warning);
    border-radius: 8px;
    padding: 0.625rem 0.875rem;
    margin-bottom: 0.75rem;
}

.reversal-banner-header[b-6heqslchx7] {
    font-weight: 700;
    font-size: 0.8125rem;
    color: var(--theme-warning);
    margin-bottom: 0.25rem;
}

.reversal-banner-header i[b-6heqslchx7] {
    margin-right: 0.25rem;
}

.reversal-banner-details[b-6heqslchx7] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1.25rem;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.detail-header-right[b-6heqslchx7] {
    text-align: right;
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

.balance-label[b-6heqslchx7] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.balance-value[b-6heqslchx7] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

/* ============ Detail Grid (compact) ============ */
.detail-grid[b-6heqslchx7] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.25rem 1.5rem;
}

.detail-item[b-6heqslchx7] {
    display: flex;
    align-items: baseline;
    gap: 0.375rem;
}

.detail-label[b-6heqslchx7] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.detail-value[b-6heqslchx7] {
    font-size: 0.875rem;
    color: var(--text-primary);
    white-space: nowrap;
}

/* ============ Line Items Table ============ */
.line-items-table[b-6heqslchx7] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.line-items-table thead th[b-6heqslchx7] {
    padding: 0.5rem 0.625rem;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-bottom: 2px solid var(--border-color);
    white-space: nowrap;
}

.line-items-table tbody td[b-6heqslchx7] {
    padding: 0.5rem 0.625rem;
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
    vertical-align: middle;
}

.line-items-table tbody tr:last-child td[b-6heqslchx7] {
    border-bottom: 1px solid var(--border-color);
}

.col-qty[b-6heqslchx7],
.col-rate[b-6heqslchx7],
.col-discount[b-6heqslchx7],
.col-tax[b-6heqslchx7],
.col-amount[b-6heqslchx7] {
    text-align: right;
    white-space: nowrap;
}

.col-narration[b-6heqslchx7] {
    font-size: 0.8rem;
}

/* ============ Table Footer / Totals ============ */
.line-items-table tfoot td[b-6heqslchx7] {
    padding: 0.375rem 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.totals-row td[b-6heqslchx7] {
    border: none;
}

.totals-row .col-amount[b-6heqslchx7],
.totals-row .col-discount[b-6heqslchx7],
.totals-row .col-tax[b-6heqslchx7] {
    text-align: right;
}

.totals-label[b-6heqslchx7] {
    text-align: right;
    font-weight: 500;
    color: var(--text-muted);
    padding-right: 0.625rem;
}

.grand-total-row td[b-6heqslchx7] {
    border-top: 2px solid var(--border-color);
    padding-top: 0.5rem;
}

.grand-total-row .totals-label[b-6heqslchx7] {
    color: var(--text-primary);
    font-weight: 700;
    font-size: 0.875rem;
}

.grand-total-row .col-amount[b-6heqslchx7] {
    font-size: 1rem;
    color: var(--theme-primary);
}

/* ============ Empty Details ============ */
.empty-details[b-6heqslchx7] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2rem 1rem;
    color: var(--text-muted);
    text-align: center;
}

.empty-details i[b-6heqslchx7] {
    font-size: 2rem;
    margin-bottom: 0.5rem;
    opacity: 0.5;
}

.empty-details p[b-6heqslchx7] {
    font-size: 0.875rem;
    margin: 0;
}

/* ============ Footer Info ============ */
.detail-footer-info[b-6heqslchx7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.25rem;
    justify-content: flex-end;
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .detail-header[b-6heqslchx7] {
        flex-direction: column;
        align-items: flex-start;
    }

    .detail-header-right[b-6heqslchx7] {
        text-align: left;
    }

    .detail-grid[b-6heqslchx7] {
        flex-direction: column;
        gap: 0.25rem;
    }

    .balance-value[b-6heqslchx7] {
        font-size: 1.25rem;
    }

    .line-items-table[b-6heqslchx7] {
        font-size: 0.75rem;
    }

    .col-discount[b-6heqslchx7],
    .col-tax[b-6heqslchx7] {
        display: none;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .detail-card[b-6heqslchx7] {
        padding: 0.75rem;
    }

    .col-narration[b-6heqslchx7],
    .col-qty[b-6heqslchx7] {
        display: none;
    }
}
/* /Pages/Accounting/InvoiceList.razor.rz.scp.css */
/* ============ Ledger Avatar ============ */
.ledger-avatar[b-wq23ng2fr5] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: white;
    background: var(--theme-primary);
    flex-shrink: 0;
}

/* ============ Status Badges ============ */
.status-badge[b-wq23ng2fr5] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-wq23ng2fr5] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-wq23ng2fr5] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-wq23ng2fr5] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-wq23ng2fr5] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-wq23ng2fr5] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-wq23ng2fr5] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-wq23ng2fr5] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-wq23ng2fr5] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-wq23ng2fr5] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-wq23ng2fr5] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-wq23ng2fr5] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-wq23ng2fr5] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-wq23ng2fr5] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-wq23ng2fr5] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-wq23ng2fr5],
.tab-compact.active .tab-badge.warning[b-wq23ng2fr5],
.tab-compact.active .tab-badge.danger[b-wq23ng2fr5],
.tab-compact.active .tab-badge.info[b-wq23ng2fr5] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-wq23ng2fr5] {
    flex: 1;
    min-width: 130px;
    max-width: 300px;
}

.nav-search-box[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-wq23ng2fr5] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-wq23ng2fr5] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-wq23ng2fr5] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-wq23ng2fr5]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-wq23ng2fr5] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Filter Toggle ============ */
.filter-toggle-btn[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-wq23ng2fr5] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-wq23ng2fr5] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-wq23ng2fr5] {
    font-size: 1rem;
}

.filter-active-dot[b-wq23ng2fr5] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-wq23ng2fr5] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-wq23ng2fr5] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-wq23ng2fr5] {
    font-size: 1rem;
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-wq23ng2fr5] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-wq23ng2fr5] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 140px;
    min-width: 120px;
    max-width: 200px;
}

.advanced-filter-label[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
    line-height: 1;
}

.advanced-filter-label i[b-wq23ng2fr5] {
    font-size: 0.75rem;
}

.adv-filter-select[b-wq23ng2fr5] {
    height: 30px;
    padding: 0.125rem 1.75rem 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 0;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
}

.adv-filter-select:focus[b-wq23ng2fr5] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-wq23ng2fr5] {
    display: flex;
    align-items: flex-end;
    gap: 0.375rem;
}

.adv-clear-btn[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 30px;
}

.adv-clear-btn:hover[b-wq23ng2fr5] {
    background: var(--theme-danger);
    color: white;
}

/* ============ Inline Alerts ============ */
.inline-alerts[b-wq23ng2fr5] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.inline-alert[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.inline-alert.warning[b-wq23ng2fr5] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.inline-alert.warning i[b-wq23ng2fr5] {
    color: var(--theme-warning);
}

/* ============ Content Area ============ */
.content-area[b-wq23ng2fr5] {
    min-height: 200px;
}

.table-container[b-wq23ng2fr5] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-wq23ng2fr5] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-wq23ng2fr5] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-wq23ng2fr5] {
    color: var(--text-primary);
}

.page-size-selector[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-wq23ng2fr5] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-wq23ng2fr5] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-wq23ng2fr5] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-wq23ng2fr5] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-wq23ng2fr5 0.6s linear infinite;
}

@keyframes spin-b-wq23ng2fr5 {
    to { transform: rotate(360deg); }
}

/* ============ Selection Bar ============ */
.selection-bar[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    margin-bottom: 0.75rem;
    background: rgba(239, 68, 68, 0.06);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: 8px;
    animation: slideDown-b-wq23ng2fr5 0.2s ease-out;
}

.selection-info[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.82rem;
    color: var(--text-primary);
}

.selection-info i[b-wq23ng2fr5] {
    color: var(--theme-danger);
    font-size: 1rem;
}

.selection-actions[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.clear-selection-btn[b-wq23ng2fr5] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.3rem 0.6rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    font-size: 0.78rem;
    color: var(--text-secondary);
    cursor: pointer;
}

.clear-selection-btn:hover[b-wq23ng2fr5] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

@keyframes slideDown-b-wq23ng2fr5 {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-wq23ng2fr5] {
        flex-wrap: wrap;
    }

    .search-inline[b-wq23ng2fr5] {
        max-width: none;
        flex: 1 1 150px;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-wq23ng2fr5] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-wq23ng2fr5] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-wq23ng2fr5] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn[b-wq23ng2fr5] {
        order: 3;
    }

    .refresh-btn[b-wq23ng2fr5] {
        order: 4;
    }

    .advanced-filters-bar[b-wq23ng2fr5] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-wq23ng2fr5] {
        max-width: none;
        flex: 1 1 100%;
    }

    .list-footer[b-wq23ng2fr5] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-wq23ng2fr5] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-wq23ng2fr5] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-wq23ng2fr5] {
        display: none;
    }

    .tab-compact[b-wq23ng2fr5] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-wq23ng2fr5] {
        display: none;
    }
}
/* /Pages/Accounting/JournalCreate.razor.rz.scp.css */
/* ============ Voucher Form (shared pattern with PaymentCreate) ============ */
.voucher-form[b-q3giomgal7] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ============ Section Entrance Animation ============ */
.anim-section[b-q3giomgal7] {
    animation: sectionSlideUp-b-q3giomgal7 0.3s ease-out both;
    animation-delay: calc(var(--anim-order, 0) * 0.06s);
}

@keyframes sectionSlideUp-b-q3giomgal7 {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============ Form Section ============ */
.form-section[b-q3giomgal7] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 0.625rem 1rem;
    position: relative;
}

.form-section:nth-child(1)[b-q3giomgal7] { z-index: 3; }
.form-section:nth-child(2)[b-q3giomgal7] { z-index: 2; }

.section-header[b-q3giomgal7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.375rem;
    padding-bottom: 0.375rem;
    border-bottom: 1px solid var(--border-color);
}

.section-header i[b-q3giomgal7] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

.section-header h3[b-q3giomgal7] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.section-hint[b-q3giomgal7] {
    flex: 1;
    font-size: 0.75rem;
    color: var(--text-muted);
    font-style: italic;
    text-align: right;
    padding-right: 0.5rem;
}

/* ============ Form Row ============ */
.form-row[b-q3giomgal7] {
    display: grid;
    grid-template-columns: 220px 1fr;
    gap: 0.375rem 0.75rem;
}

.form-cell[b-q3giomgal7] {
    min-width: 0;
}

.form-cell.cell-wide[b-q3giomgal7] {
    grid-column: span 1;
}

/* Zero out shared component spacing */
.form-section :deep(.fsh-form-group)[b-q3giomgal7],
.form-section :deep(.fsh-field)[b-q3giomgal7] {
    margin-bottom: 0;
}

.form-section :deep(.fsh-form-label)[b-q3giomgal7] {
    margin-bottom: 0.15rem;
    font-size: 0.75rem;
}

/* ============ Add Line Button ============ */
.add-line-btn[b-q3giomgal7] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.3rem 0.7rem;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: all 0.15s ease;
    margin-left: auto;
}

.add-line-btn:hover[b-q3giomgal7] {
    background: var(--theme-primary-emphasis);
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

.add-line-btn:active[b-q3giomgal7] {
    transform: translateY(0);
}

.add-line-btn i[b-q3giomgal7] {
    font-size: 0.875rem;
}

/* ============ Line Items Table ============ */
.line-items-table-wrapper[b-q3giomgal7] {
    overflow: visible;
    margin-top: 0.5rem;
}

.line-items-table[b-q3giomgal7] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.line-items-table thead th[b-q3giomgal7] {
    padding: 0.5rem;
    text-align: left;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    white-space: nowrap;
}

.line-items-table tbody td[b-q3giomgal7] {
    padding: 0.375rem 0.5rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

.line-items-table tbody tr:last-child td[b-q3giomgal7] {
    border-bottom: none;
}

.line-items-table tbody tr:hover[b-q3giomgal7] {
    background: var(--bg-surface-secondary);
}

.line-items-table td :deep(.fsh-form-group)[b-q3giomgal7] {
    margin-bottom: 0;
}

/* Line Row Animation */
.line-row-anim[b-q3giomgal7] {
    animation: fadeInRow-b-q3giomgal7 0.25s ease-out;
}

@keyframes fadeInRow-b-q3giomgal7 {
    from { opacity: 0; transform: translateX(-8px); }
    to { opacity: 1; transform: translateX(0); }
}

/* Column Widths */
.col-num[b-q3giomgal7] {
    width: 36px;
    text-align: center;
    color: var(--text-muted);
    font-weight: 600;
}

.col-ledger[b-q3giomgal7] {
    width: 35%;
}

.col-debit[b-q3giomgal7],
.col-credit[b-q3giomgal7] {
    width: 15%;
}

.col-narration[b-q3giomgal7] {
    width: 25%;
}

.col-action[b-q3giomgal7] {
    width: 36px;
    text-align: center;
}

/* ============ Remove Line Button ============ */
.remove-line-btn[b-q3giomgal7] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    padding: 0;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
}

.remove-line-btn:hover[b-q3giomgal7] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: white;
    transform: scale(1.08);
}

.remove-line-btn:active[b-q3giomgal7] {
    transform: scale(0.92);
}

.remove-line-btn i[b-q3giomgal7] {
    font-size: 0.8125rem;
}

/* ============ Totals Section ============ */
.totals-section[b-q3giomgal7] {
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-top: 2px solid var(--border-color);
    display: flex;
    justify-content: flex-end;
}

.totals-values[b-q3giomgal7] {
    display: flex;
    gap: 1.5rem;
    align-items: center;
}

.total-item[b-q3giomgal7] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.125rem;
    min-width: 100px;
}

.total-item.difference[b-q3giomgal7] {
    padding-left: 1.5rem;
    border-left: 2px solid var(--border-color);
}

.total-label[b-q3giomgal7] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-secondary);
}

.total-value[b-q3giomgal7] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    font-family: var(--font-mono, monospace);
}

.total-value.balanced[b-q3giomgal7] {
    color: var(--theme-success);
}

.total-value.imbalanced[b-q3giomgal7] {
    color: var(--theme-danger);
}

/* ============ Balance Indicator ============ */
.balance-indicator[b-q3giomgal7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4rem 0.75rem;
    font-size: 0.8125rem;
    font-weight: 500;
    border-radius: 0 0 8px 8px;
}

.balance-indicator.balanced[b-q3giomgal7] {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success);
}

.balance-indicator.imbalanced[b-q3giomgal7] {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
}

.balance-indicator i[b-q3giomgal7] {
    font-size: 1rem;
}

/* ============ Form Actions — Sticky ============ */
.form-actions[b-q3giomgal7] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding-top: 0.75rem;
    margin-top: 0.5rem;
    border-top: 1px solid var(--border-color);
    position: sticky;
    bottom: 0;
    background: var(--bg-surface);
    z-index: 10;
    padding-bottom: 0.25rem;
}

.form-actions-hint[b-q3giomgal7] {
    display: flex;
    align-items: center;
    gap: 0.2rem;
    font-size: 0.6875rem;
    color: var(--text-muted);
}

.form-actions-hint kbd[b-q3giomgal7] {
    display: inline-block;
    padding: 0.1rem 0.3rem;
    font-size: 0.625rem;
    font-family: var(--font-mono, monospace);
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 3px;
    box-shadow: 0 1px 0 var(--border-color);
}

.form-actions-buttons[b-q3giomgal7] {
    display: flex;
    gap: 0.5rem;
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .form-row[b-q3giomgal7] {
        grid-template-columns: 1fr;
    }

    .form-section[b-q3giomgal7] {
        padding: 0.75rem;
    }

    .section-header[b-q3giomgal7] {
        flex-wrap: wrap;
    }

    .section-hint[b-q3giomgal7] {
        display: none;
    }

    .add-line-btn[b-q3giomgal7] {
        margin-left: 0;
        margin-top: 0.375rem;
        width: 100%;
        justify-content: center;
    }

    .totals-section[b-q3giomgal7] {
        justify-content: stretch;
    }

    .totals-values[b-q3giomgal7] {
        width: 100%;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    .total-item[b-q3giomgal7] {
        min-width: 0;
        flex: 1;
        align-items: center;
    }

    .total-item.difference[b-q3giomgal7] {
        flex: 1 1 100%;
        border-left: none;
        padding-left: 0;
        border-top: 1px solid var(--border-color);
        padding-top: 0.5rem;
    }

    .form-actions[b-q3giomgal7] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .form-actions-hint[b-q3giomgal7] {
        display: none;
    }

    .form-actions-buttons[b-q3giomgal7] {
        width: 100%;
        flex-direction: column;
    }
}
/* /Pages/Accounting/JournalDetail.razor.rz.scp.css */
/* ============ Voucher Header (matches InvoiceDetail pattern) ============ */
.voucher-header[b-ngvjlu6z9u] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.5rem;
    gap: 1rem;
}

.voucher-header-left[b-ngvjlu6z9u] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex-wrap: wrap;
}

.voucher-type[b-ngvjlu6z9u] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    text-transform: uppercase;
}

.voucher-narration[b-ngvjlu6z9u] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.voucher-amount[b-ngvjlu6z9u] {
    text-align: right;
    flex-shrink: 0;
}

.amount-label[b-ngvjlu6z9u] {
    display: block;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.amount-value[b-ngvjlu6z9u] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-primary);
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
}

/* ============ Status Badges ============ */
.status-badge[b-ngvjlu6z9u] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.status-badge.draft[b-ngvjlu6z9u] { background: rgba(245, 158, 11, 0.12); color: var(--theme-warning-emphasis); }
.status-badge.confirmed[b-ngvjlu6z9u] { background: rgba(16, 185, 129, 0.12); color: var(--theme-success-emphasis); }
.status-badge.cancelled[b-ngvjlu6z9u] { background: rgba(239, 68, 68, 0.12); color: var(--theme-danger-emphasis); }

/* ============ Info Row ============ */
.voucher-info[b-ngvjlu6z9u] {
    display: flex;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.info-cell[b-ngvjlu6z9u] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 120px;
}

.info-label[b-ngvjlu6z9u] {
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.info-value[b-ngvjlu6z9u] {
    font-size: 0.875rem;
    color: var(--text-primary);
    font-weight: 500;
}

.code-badge[b-ngvjlu6z9u] {
    display: inline-block;
    padding: 0.1rem 0.4rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-family: monospace;
    font-size: 0.8125rem;
}

/* ============ Lines Section ============ */
.lines-section[b-ngvjlu6z9u] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.lines-header[b-ngvjlu6z9u] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.625rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
}

.lines-title[b-ngvjlu6z9u] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.lines-title i[b-ngvjlu6z9u] { color: var(--theme-primary); }

.lines-count[b-ngvjlu6z9u] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* ============ Lines Table ============ */
.lines-table[b-ngvjlu6z9u] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.lines-table th[b-ngvjlu6z9u] {
    padding: 0.5rem 1rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    text-align: left;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.lines-table td[b-ngvjlu6z9u] {
    padding: 0.625rem 1rem;
    border-bottom: 1px solid var(--border-color-light, rgba(0,0,0,0.04));
    color: var(--text-primary);
}

.lines-table tbody tr:hover[b-ngvjlu6z9u] {
    background: var(--bg-surface-secondary);
}

.col-num[b-ngvjlu6z9u] { width: 40px; color: var(--text-muted); }
.col-account[b-ngvjlu6z9u] { font-weight: 500; }
.col-amount[b-ngvjlu6z9u] { width: 120px; text-align: right; font-variant-numeric: tabular-nums; }
.col-narration[b-ngvjlu6z9u] { color: var(--text-secondary); }

.lines-table th.col-amount[b-ngvjlu6z9u] { text-align: right; }

/* ============ Totals Row ============ */
.totals-row[b-ngvjlu6z9u] {
    background: var(--bg-surface-secondary);
}

.totals-row td[b-ngvjlu6z9u] {
    border-bottom: none;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

.totals-label[b-ngvjlu6z9u] {
    text-align: left;
    font-weight: 500;
    color: var(--text-secondary);
}

.totals-value[b-ngvjlu6z9u] {
    font-weight: 700;
    color: var(--text-primary);
}

/* ============ Grand Total ============ */
.grand-total[b-ngvjlu6z9u] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 1.25rem;
    background: var(--bg-surface-tertiary);
}

.grand-total-label[b-ngvjlu6z9u] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.grand-total-value[b-ngvjlu6z9u] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--theme-primary);
    font-variant-numeric: tabular-nums;
}

/* ============ Voucher Footer ============ */
.voucher-footer[b-ngvjlu6z9u] {
    padding: 0.5rem 1.25rem;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: right;
    border-top: 1px solid var(--border-color-light, rgba(0,0,0,0.04));
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .voucher-header[b-ngvjlu6z9u] { flex-direction: column; }
    .voucher-amount[b-ngvjlu6z9u] { text-align: left; }
    .voucher-info[b-ngvjlu6z9u] { flex-direction: column; }
    .info-cell[b-ngvjlu6z9u] { flex-direction: row; justify-content: space-between; }
    .lines-table[b-ngvjlu6z9u] { font-size: 0.75rem; }
    .col-narration[b-ngvjlu6z9u] { display: none; }
}

@media (max-width: 480px) {
    .voucher-header-left[b-ngvjlu6z9u] { flex-direction: column; align-items: flex-start; }
    .grand-total[b-ngvjlu6z9u] { flex-direction: column; align-items: flex-end; gap: 0.25rem; }
}

/* ============ Print ============ */
@media print {
    .voucher-header[b-ngvjlu6z9u], .voucher-info[b-ngvjlu6z9u], .lines-section[b-ngvjlu6z9u] { border: none; box-shadow: none; }
    .voucher-footer[b-ngvjlu6z9u] { border-top: 1px solid #ccc; }
}
/* /Pages/Accounting/JournalList.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-qeuc7vijuj] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-badge.draft[b-qeuc7vijuj] {
    background: rgba(245, 158, 11, 0.12);
    color: var(--theme-warning);
}

.status-badge.confirmed[b-qeuc7vijuj] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success);
}

.status-badge.cancelled[b-qeuc7vijuj] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--theme-danger);
}

/* ============ Narration ============ */
.narration-text[b-qeuc7vijuj] {
    color: var(--text-secondary);
    font-size: 0.8125rem;
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-qeuc7vijuj] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-qeuc7vijuj] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-qeuc7vijuj] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-qeuc7vijuj] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-qeuc7vijuj] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-qeuc7vijuj] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-qeuc7vijuj] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-qeuc7vijuj] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-qeuc7vijuj] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-qeuc7vijuj] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-compact.active .tab-badge.success[b-qeuc7vijuj],
.tab-compact.active .tab-badge.warning[b-qeuc7vijuj],
.tab-compact.active .tab-badge.danger[b-qeuc7vijuj] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-qeuc7vijuj] {
    flex: 1;
    min-width: 130px;
    max-width: 300px;
}

.nav-search-box[b-qeuc7vijuj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-qeuc7vijuj] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-qeuc7vijuj] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-qeuc7vijuj] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-qeuc7vijuj]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-qeuc7vijuj] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-qeuc7vijuj] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-qeuc7vijuj] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-qeuc7vijuj] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-qeuc7vijuj] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-qeuc7vijuj] {
    font-size: 1rem;
}

/* ============ Content Area ============ */
.content-area[b-qeuc7vijuj] {
    min-height: 200px;
}

.table-container[b-qeuc7vijuj] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-qeuc7vijuj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-qeuc7vijuj] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-qeuc7vijuj] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-qeuc7vijuj] {
    color: var(--text-primary);
}

.page-size-selector[b-qeuc7vijuj] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-qeuc7vijuj] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-qeuc7vijuj] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-qeuc7vijuj] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-qeuc7vijuj] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-qeuc7vijuj 0.6s linear infinite;
}

@keyframes spin-b-qeuc7vijuj {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-qeuc7vijuj] {
        flex-wrap: wrap;
    }

    .search-inline[b-qeuc7vijuj] {
        max-width: none;
        flex: 1 1 150px;
    }

    .tab-compact[b-qeuc7vijuj] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-qeuc7vijuj] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-qeuc7vijuj] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-qeuc7vijuj] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .refresh-btn[b-qeuc7vijuj] {
        order: 3;
    }

    .list-footer[b-qeuc7vijuj] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-qeuc7vijuj] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-qeuc7vijuj] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-qeuc7vijuj] {
        display: none;
    }

    .tab-compact[b-qeuc7vijuj] {
        padding: 0.5rem 0.625rem;
    }
}
/* /Pages/Accounting/LedgerReport.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-6sg6uqnrt3] {
    min-height: 300px;
}

.table-container[b-6sg6uqnrt3] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-6sg6uqnrt3] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.text-debit[b-6sg6uqnrt3] {
    color: var(--theme-primary);
}

.text-credit[b-6sg6uqnrt3] {
    color: var(--theme-success);
}

.voucher-no[b-6sg6uqnrt3] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
    color: var(--theme-primary);
    font-weight: 600;
}

.narration-text[b-6sg6uqnrt3] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* ============ Voucher Type Badges ============ */
.voucher-badge[b-6sg6uqnrt3] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.6rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.voucher-payment[b-6sg6uqnrt3] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.voucher-receipt[b-6sg6uqnrt3] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.voucher-journal[b-6sg6uqnrt3] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.voucher-purchase[b-6sg6uqnrt3] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.voucher-sales[b-6sg6uqnrt3] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.voucher-debit[b-6sg6uqnrt3] {
    background: rgba(236, 72, 153, 0.1);
    color: var(--theme-purple);
}

.voucher-credit[b-6sg6uqnrt3] {
    background: rgba(168, 85, 247, 0.1);
    color: var(--theme-purple);
}

/* ============ Balance Banners ============ */
.balance-banner[b-6sg6uqnrt3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.balance-banner.opening[b-6sg6uqnrt3] {
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo);
    border: 1px solid rgba(99, 102, 241, 0.2);
}

.balance-banner.closing[b-6sg6uqnrt3] {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success);
    border: 1px solid rgba(16, 185, 129, 0.2);
    margin-top: 0.75rem;
}

.balance-banner i[b-6sg6uqnrt3] {
    font-size: 1.125rem;
}

.balance-banner-label[b-6sg6uqnrt3] {
    font-size: 0.8125rem;
}

.balance-banner-value[b-6sg6uqnrt3] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    margin-left: auto;
}

/* ============ Report Totals ============ */
.report-totals[b-6sg6uqnrt3] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-6sg6uqnrt3] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-color);
}

.totals-row:last-child[b-6sg6uqnrt3] {
    border-bottom: none;
}

.totals-label[b-6sg6uqnrt3] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.totals-value[b-6sg6uqnrt3] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 150px;
    text-align: right;
}

.totals-value.debit[b-6sg6uqnrt3] {
    color: var(--theme-primary);
}

.totals-value.credit[b-6sg6uqnrt3] {
    color: var(--theme-success);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .balance-banner[b-6sg6uqnrt3] {
        flex-wrap: wrap;
    }

    .balance-banner-value[b-6sg6uqnrt3] {
        margin-left: 0;
        width: 100%;
        text-align: right;
    }
}

/* /Pages/Accounting/NumberSequenceSettings.razor.rz.scp.css */
/* ============ Module Cell ============ */
.module-cell[b-o6711jcdge] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.module-icon[b-o6711jcdge] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
    font-size: 0.875rem;
    flex-shrink: 0;
}

.module-name[b-o6711jcdge] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--text-primary);
}

/* ============ Mono Text ============ */
.mono-text[b-o6711jcdge] {
    font-family: 'Cascadia Code', 'Fira Code', 'Consolas', monospace;
    font-size: 0.8125rem;
    color: var(--text-primary);
    background: var(--bg-surface-tertiary);
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
}

/* ============ Next Number Badge ============ */
.next-number-badge[b-o6711jcdge] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 36px;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 700;
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
    font-family: 'Cascadia Code', 'Fira Code', 'Consolas', monospace;
}

/* ============ Preview Text ============ */
.preview-text[b-o6711jcdge] {
    font-family: 'Cascadia Code', 'Fira Code', 'Consolas', monospace;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    background: var(--theme-primary-subtle, rgba(99, 102, 241, 0.08));
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    letter-spacing: 0.02em;
}

/* ============ Content Area ============ */
.content-area[b-o6711jcdge] {
    margin-bottom: 1rem;
}

.table-container[b-o6711jcdge] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-o6711jcdge] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-o6711jcdge] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-o6711jcdge] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ============ Form ============ */
.form-group[b-o6711jcdge] {
    margin-bottom: 1rem;
}

.form-label[b-o6711jcdge] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-input[b-o6711jcdge] {
    width: 100%;
    height: 38px;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    transition: border-color 0.2s ease;
    appearance: none;
}

.form-input:focus[b-o6711jcdge] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color, rgba(99, 102, 241, 0.15));
}

.form-input:disabled[b-o6711jcdge] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
    cursor: not-allowed;
}

select.form-input[b-o6711jcdge] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
    padding-right: 2rem;
    cursor: pointer;
}

.form-hint[b-o6711jcdge] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.25rem;
}

/* ============ Preview Box ============ */
.preview-box[b-o6711jcdge] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--theme-primary-subtle, rgba(99, 102, 241, 0.06));
    border: 1px dashed var(--theme-primary);
    border-radius: 8px;
    margin-top: 0.5rem;
}

.preview-label[b-o6711jcdge] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    white-space: nowrap;
}

.preview-value[b-o6711jcdge] {
    font-family: 'Cascadia Code', 'Fira Code', 'Consolas', monospace;
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-primary);
    letter-spacing: 0.05em;
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .preview-box[b-o6711jcdge] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.375rem;
    }
}
/* /Pages/Accounting/PaymentCreate.razor.rz.scp.css */
/* ============ Voucher Form ============ */
.voucher-form[b-h30kaj06xi] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* ============ Section Entrance Animation ============ */
.anim-section[b-h30kaj06xi] {
    animation: sectionSlideUp-b-h30kaj06xi 0.3s ease-out both;
    animation-delay: calc(var(--anim-order, 0) * 0.06s);
}

@keyframes sectionSlideUp-b-h30kaj06xi {
    from { opacity: 0; transform: translateY(12px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============ Form Section ============ */
.form-section[b-h30kaj06xi] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 0.625rem 1rem;
    position: relative;
}

/* Z-index stacking: first section on top so dropdowns overlay second section */
.form-section:nth-child(1)[b-h30kaj06xi] { z-index: 3; }
.form-section:nth-child(2)[b-h30kaj06xi] { z-index: 2; }
.form-section:nth-child(3)[b-h30kaj06xi] { z-index: 1; }

.section-header[b-h30kaj06xi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.375rem;
    padding-bottom: 0.375rem;
    border-bottom: 1px solid var(--border-color);
}

.section-header i[b-h30kaj06xi] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

.section-header h3[b-h30kaj06xi] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.section-hint[b-h30kaj06xi] {
    flex: 1;
    font-size: 0.75rem;
    color: var(--text-muted);
    font-style: italic;
    text-align: right;
    padding-right: 0.5rem;
}

/* ============ Form Row (auto-flow grid) ============ */
.form-row[b-h30kaj06xi] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
    gap: 0.375rem 0.75rem;
    margin-bottom: 0.375rem;
}

.form-row:last-child[b-h30kaj06xi] {
    margin-bottom: 0;
}

.form-cell[b-h30kaj06xi] {
    min-width: 0;
    max-width: 300px;
}

.form-cell.cell-wide[b-h30kaj06xi] {
    grid-column: span 2;
}

/* Zero out all internal spacing from shared components inside the form */
.form-section :deep(.fsh-form-group)[b-h30kaj06xi],
.form-section :deep(.fsh-field)[b-h30kaj06xi] {
    margin-bottom: 0;
}

.form-section :deep(.fsh-form-label)[b-h30kaj06xi] {
    margin-bottom: 0.15rem;
    font-size: 0.75rem;
}

/* ============ Conditional Field Animation ============ */
@keyframes expandIn-b-h30kaj06xi {
    from { opacity: 0; transform: translateY(-6px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============ Add Line Button ============ */
.add-line-btn[b-h30kaj06xi] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.3rem 0.7rem;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: white;
    cursor: pointer;
    transition: all 0.15s ease;
    margin-left: auto;
}

.add-line-btn:hover[b-h30kaj06xi] {
    background: var(--theme-primary-emphasis);
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.12);
}

.add-line-btn:active[b-h30kaj06xi] {
    transform: translateY(0);
}

.add-line-btn i[b-h30kaj06xi] {
    font-size: 0.875rem;
}

/* ============ Empty Lines ============ */
.empty-lines[b-h30kaj06xi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.25rem 1rem;
    color: var(--text-muted);
    text-align: center;
    cursor: pointer;
    border: 2px dashed var(--border-color);
    border-radius: 8px;
    margin-top: 0.5rem;
    transition: all 0.2s ease;
}

.empty-lines:hover[b-h30kaj06xi] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.empty-lines i[b-h30kaj06xi] {
    font-size: 1.5rem;
    opacity: 0.5;
    transition: opacity 0.2s ease;
}

.empty-lines:hover i[b-h30kaj06xi] {
    opacity: 0.8;
}

.empty-lines p[b-h30kaj06xi] {
    margin: 0;
    font-size: 0.8125rem;
}

/* ============ Line Items Table ============ */
.line-items-table-wrapper[b-h30kaj06xi] {
    overflow: visible;
    margin-top: 0.5rem;
}

.line-items-table[b-h30kaj06xi] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.line-items-table thead th[b-h30kaj06xi] {
    padding: 0.5rem;
    text-align: left;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    white-space: nowrap;
}

.line-items-table tbody td[b-h30kaj06xi] {
    padding: 0.375rem 0.5rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

.line-items-table tbody tr:last-child td[b-h30kaj06xi] {
    border-bottom: none;
}

.line-items-table tbody tr:hover[b-h30kaj06xi] {
    background: var(--bg-surface-secondary);
}

/* Zero margin for components inside table cells */
.line-items-table td :deep(.fsh-form-group)[b-h30kaj06xi] {
    margin-bottom: 0;
}

/* ============ Line Row Animation ============ */
.line-row-anim[b-h30kaj06xi] {
    animation: fadeInRow-b-h30kaj06xi 0.25s ease-out;
}

@keyframes fadeInRow-b-h30kaj06xi {
    from { opacity: 0; transform: translateX(-8px); }
    to { opacity: 1; transform: translateX(0); }
}

/* ============ Column Widths ============ */
.col-num[b-h30kaj06xi] {
    width: 36px;
    text-align: center;
    color: var(--text-muted);
    font-weight: 600;
}

.col-ledger[b-h30kaj06xi] {
    width: 40%;
}

.col-narration[b-h30kaj06xi] {
    width: 35%;
}

.col-amount[b-h30kaj06xi] {
    width: 20%;
}

.col-action[b-h30kaj06xi] {
    width: 36px;
    text-align: center;
}

/* ============ Remove Line Button ============ */
.remove-line-btn[b-h30kaj06xi] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    padding: 0;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
}

.remove-line-btn:hover[b-h30kaj06xi] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: white;
    transform: scale(1.08);
}

.remove-line-btn:active[b-h30kaj06xi] {
    transform: scale(0.92);
}

.remove-line-btn i[b-h30kaj06xi] {
    font-size: 0.8125rem;
}

/* ============ Totals Section ============ */
.totals-section[b-h30kaj06xi] {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 2px solid var(--border-color);
    display: flex;
    justify-content: flex-end;
}

.totals-row[b-h30kaj06xi] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.4rem 0.875rem;
    background: var(--theme-primary-subtle);
    border-radius: 8px;
    border: 1px solid var(--theme-primary);
}

.totals-label[b-h30kaj06xi] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.totals-value[b-h30kaj06xi] {
    font-size: 1.0625rem;
    font-weight: 700;
    color: var(--theme-primary);
    font-family: var(--font-mono, monospace);
}

/* ============ Form Actions — Sticky ============ */
.form-actions[b-h30kaj06xi] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding-top: 0.75rem;
    margin-top: 0.75rem;
    border-top: 1px solid var(--border-color);
    position: sticky;
    bottom: 0;
    background: var(--bg-surface);
    z-index: 10;
    padding-bottom: 0.25rem;
}

.form-actions-hint[b-h30kaj06xi] {
    display: flex;
    align-items: center;
    gap: 0.2rem;
    font-size: 0.6875rem;
    color: var(--text-muted);
}

.form-actions-hint kbd[b-h30kaj06xi] {
    display: inline-block;
    padding: 0.1rem 0.3rem;
    font-size: 0.625rem;
    font-family: var(--font-mono, monospace);
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 3px;
    box-shadow: 0 1px 0 var(--border-color);
}

.form-actions-buttons[b-h30kaj06xi] {
    display: flex;
    gap: 0.5rem;
}

/* ============ Posting Preview ============ */
.posting-preview[b-h30kaj06xi] {
    background: var(--bg-surface-secondary);
    border-style: dashed;
}

.posting-table-wrapper[b-h30kaj06xi] {
    overflow-x: auto;
}

.posting-table[b-h30kaj06xi] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.posting-table th[b-h30kaj06xi] {
    padding: 0.4rem 0.75rem;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
    border-bottom: 1px solid var(--border-color);
    text-align: left;
}

.posting-table td[b-h30kaj06xi] {
    padding: 0.375rem 0.75rem;
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

.posting-table tfoot td[b-h30kaj06xi] {
    padding: 0.5rem 0.75rem;
    border-top: 2px solid var(--border-color);
    border-bottom: none;
}

.posting-table .text-right[b-h30kaj06xi] {
    text-align: right;
    font-family: var(--font-mono, monospace);
}

.posting-table .debit[b-h30kaj06xi] {
    color: var(--theme-danger);
    font-weight: 600;
}

.posting-table .credit[b-h30kaj06xi] {
    color: var(--theme-success);
    font-weight: 600;
}

.posting-bank-row[b-h30kaj06xi] {
    background: var(--bg-surface-tertiary);
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .form-cell.cell-wide[b-h30kaj06xi] {
        grid-column: span 1;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .form-row[b-h30kaj06xi] {
        grid-template-columns: 1fr;
    }

    .form-cell.cell-wide[b-h30kaj06xi] {
        grid-column: span 1;
    }

    .form-section[b-h30kaj06xi] {
        padding: 0.75rem;
    }

    .section-header[b-h30kaj06xi] {
        flex-wrap: wrap;
    }

    .section-hint[b-h30kaj06xi] {
        display: none;
    }

    .add-line-btn[b-h30kaj06xi] {
        margin-left: 0;
        margin-top: 0.375rem;
        width: 100%;
        justify-content: center;
    }

    .totals-section[b-h30kaj06xi] {
        justify-content: stretch;
    }

    .totals-row[b-h30kaj06xi] {
        justify-content: space-between;
        width: 100%;
    }

    .form-actions[b-h30kaj06xi] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .form-actions-hint[b-h30kaj06xi] {
        display: none;
    }

    .form-actions-buttons[b-h30kaj06xi] {
        width: 100%;
        flex-direction: column;
    }

    .line-items-table-wrapper[b-h30kaj06xi] {
        margin-left: -0.75rem;
        margin-right: -0.75rem;
        padding: 0 0.25rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .form-section[b-h30kaj06xi] {
        padding: 0.625rem;
        border-radius: 8px;
    }

    .section-header h3[b-h30kaj06xi] {
        font-size: 0.875rem;
    }
}
/* /Pages/Accounting/PaymentDetail.razor.rz.scp.css */
/* ============ Voucher Header (matches JournalDetail/InvoiceDetail) ============ */
.voucher-header[b-te0im9z788] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.5rem;
    gap: 1rem;
}

.voucher-header-left[b-te0im9z788] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    flex-wrap: wrap;
}

.voucher-type[b-te0im9z788] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    text-transform: uppercase;
}

.voucher-party[b-te0im9z788] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
}

.voucher-narration[b-te0im9z788] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.voucher-amount[b-te0im9z788] {
    text-align: right;
    flex-shrink: 0;
}

.amount-label[b-te0im9z788] {
    display: block;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.amount-value[b-te0im9z788] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-primary);
    font-variant-numeric: tabular-nums;
    line-height: 1.2;
}

/* ============ Status Badges ============ */
.status-badge[b-te0im9z788] {
    display: inline-flex;
    align-items: center;
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.status-badge.draft[b-te0im9z788] { background: rgba(245, 158, 11, 0.12); color: var(--theme-warning-emphasis); }
.status-badge.pending[b-te0im9z788] { background: rgba(59, 130, 246, 0.12); color: var(--theme-info-emphasis); }
.status-badge.confirmed[b-te0im9z788] { background: rgba(16, 185, 129, 0.12); color: var(--theme-success-emphasis); }
.status-badge.cancelled[b-te0im9z788] { background: rgba(239, 68, 68, 0.12); color: var(--theme-danger-emphasis); }

/* ============ Info Row ============ */
.voucher-info[b-te0im9z788] {
    display: flex;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.info-cell[b-te0im9z788] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 100px;
}

.info-label[b-te0im9z788] {
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.info-value[b-te0im9z788] {
    font-size: 0.875rem;
    color: var(--text-primary);
    font-weight: 500;
}

.code-badge[b-te0im9z788] {
    display: inline-block;
    padding: 0.1rem 0.4rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-family: monospace;
    font-size: 0.8125rem;
}

/* ============ Lines Section ============ */
.lines-section[b-te0im9z788] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.lines-header[b-te0im9z788] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.625rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
}

.lines-title[b-te0im9z788] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.lines-title i[b-te0im9z788] { color: var(--theme-primary); }

.lines-count[b-te0im9z788] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* ============ Lines Table ============ */
.lines-table[b-te0im9z788] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.lines-table th[b-te0im9z788] {
    padding: 0.5rem 1rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    text-align: left;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.lines-table td[b-te0im9z788] {
    padding: 0.625rem 1rem;
    border-bottom: 1px solid var(--border-color-light, rgba(0,0,0,0.04));
    color: var(--text-primary);
}

.lines-table tbody tr:hover[b-te0im9z788] {
    background: var(--bg-surface-secondary);
}

.col-num[b-te0im9z788] { width: 40px; color: var(--text-muted); }
.col-account[b-te0im9z788] { font-weight: 500; }
.col-desc[b-te0im9z788] { color: var(--text-secondary); }
.col-amount[b-te0im9z788] { width: 110px; text-align: right; font-variant-numeric: tabular-nums; }
.lines-table th.col-amount[b-te0im9z788] { text-align: right; }

.fw-bold[b-te0im9z788] { font-weight: 700; }
.amount-owing[b-te0im9z788] { color: var(--theme-danger); }

/* ============ Grand Total ============ */
.grand-total[b-te0im9z788] {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 1rem;
    padding: 0.75rem 1.25rem;
    background: var(--bg-surface-tertiary);
}

.grand-total-label[b-te0im9z788] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.grand-total-value[b-te0im9z788] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--theme-primary);
    font-variant-numeric: tabular-nums;
}

/* ============ Voucher Footer ============ */
.voucher-footer[b-te0im9z788] {
    padding: 0.5rem 1.25rem;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: right;
    border-top: 1px solid var(--border-color-light, rgba(0,0,0,0.04));
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .voucher-header[b-te0im9z788] { flex-direction: column; }
    .voucher-amount[b-te0im9z788] { text-align: left; }
    .voucher-info[b-te0im9z788] { flex-direction: column; }
    .info-cell[b-te0im9z788] { flex-direction: row; justify-content: space-between; }
    .lines-table[b-te0im9z788] { font-size: 0.75rem; }
    .col-desc[b-te0im9z788] { display: none; }
}

@media (max-width: 480px) {
    .voucher-header-left[b-te0im9z788] { flex-direction: column; align-items: flex-start; }
    .grand-total[b-te0im9z788] { flex-direction: column; align-items: flex-end; gap: 0.25rem; }
}

@media print {
    .voucher-header[b-te0im9z788], .voucher-info[b-te0im9z788], .lines-section[b-te0im9z788] { border: none; box-shadow: none; }
    .voucher-footer[b-te0im9z788] { border-top: 1px solid #ccc; }
}
/* /Pages/Accounting/PaymentList.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-rpogliv119] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-rpogliv119] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-rpogliv119] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-rpogliv119] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-rpogliv119] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-rpogliv119] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Voucher Number ============ */
.voucher-number[b-rpogliv119] {
    font-family: var(--font-mono, monospace);
    font-size: 0.8125rem;
    color: var(--theme-primary);
}

/* ============ Amount Value ============ */
.amount-value[b-rpogliv119] {
    font-weight: 700;
    font-size: 0.875rem;
    color: var(--text-primary);
    font-family: var(--font-mono, monospace);
}

/* ============ Narration Text ============ */
.narration-text[b-rpogliv119] {
    font-size: 0.8125rem;
    max-width: 180px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block;
}

/* ============ Tiny Text ============ */
.tiny-text[b-rpogliv119] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.tiny-text i[b-rpogliv119] {
    font-size: 0.6875rem;
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-rpogliv119] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-rpogliv119] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-rpogliv119] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-rpogliv119] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-rpogliv119] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-rpogliv119] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-rpogliv119] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-rpogliv119] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-rpogliv119] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-rpogliv119],
.tab-compact.active .tab-badge.warning[b-rpogliv119],
.tab-compact.active .tab-badge.danger[b-rpogliv119],
.tab-compact.active .tab-badge.info[b-rpogliv119] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-rpogliv119] {
    flex: 1;
    min-width: 130px;
    max-width: 300px;
}

.nav-search-box[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-rpogliv119] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-rpogliv119] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-rpogliv119] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-rpogliv119]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-rpogliv119] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-rpogliv119] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Filter Toggle ============ */
.filter-toggle-btn[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-rpogliv119] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-rpogliv119] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-rpogliv119] {
    font-size: 1rem;
}

.filter-active-dot[b-rpogliv119] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-rpogliv119] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-rpogliv119] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-rpogliv119] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-rpogliv119] {
    font-size: 1rem;
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-rpogliv119] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-rpogliv119] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 140px;
    min-width: 120px;
    max-width: 200px;
}

.advanced-filter-label[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
    line-height: 1;
}

.advanced-filter-label i[b-rpogliv119] {
    font-size: 0.75rem;
}

.adv-filter-select[b-rpogliv119],
.adv-filter-date[b-rpogliv119] {
    height: 30px;
    padding: 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 0;
}

.adv-filter-select[b-rpogliv119] {
    padding-right: 1.75rem;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
}

.adv-filter-select:focus[b-rpogliv119],
.adv-filter-date:focus[b-rpogliv119] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-rpogliv119] {
    display: flex;
    align-items: flex-end;
    gap: 0.375rem;
}

.adv-clear-btn[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 30px;
}

.adv-clear-btn:hover[b-rpogliv119] {
    background: var(--theme-danger);
    color: white;
}

/* ============ Content Area ============ */
.content-area[b-rpogliv119] {
    min-height: 200px;
}

.table-container[b-rpogliv119] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-rpogliv119] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-rpogliv119] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-rpogliv119] {
    color: var(--text-primary);
}

.page-size-selector[b-rpogliv119] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-rpogliv119] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-rpogliv119] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-rpogliv119] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-rpogliv119] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-rpogliv119 0.6s linear infinite;
}

@keyframes spin-b-rpogliv119 {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-rpogliv119] {
        flex-wrap: wrap;
    }

    .search-inline[b-rpogliv119] {
        max-width: none;
        flex: 1 1 150px;
    }

    .tab-compact[b-rpogliv119] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-rpogliv119] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-rpogliv119] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-rpogliv119] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn[b-rpogliv119] {
        order: 3;
    }

    .refresh-btn[b-rpogliv119] {
        order: 4;
    }

    .advanced-filters-bar[b-rpogliv119] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-rpogliv119] {
        max-width: none;
        flex: 1 1 100%;
    }

    .list-footer[b-rpogliv119] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-rpogliv119] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-rpogliv119] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-rpogliv119] {
        display: none;
    }

    .tab-compact[b-rpogliv119] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-rpogliv119] {
        display: none;
    }
}
/* /Pages/Accounting/PeriodClose.razor.rz.scp.css */
.period-selector[b-8ofcr50h14] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.selector-label[b-8ofcr50h14] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

.selector-select[b-8ofcr50h14] {
    padding: 0.4rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-body);
    color: var(--text-primary);
    font-size: 0.875rem;
    min-width: 250px;
}

.selector-select:focus[b-8ofcr50h14] {
    outline: none;
    border-color: var(--theme-primary);
}

.period-grid[b-8ofcr50h14] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.period-card[b-8ofcr50h14] {
    border-radius: 10px;
    border: 1px solid var(--border-color);
    padding: 1rem;
    transition: all 0.2s ease;
}

.period-card.open[b-8ofcr50h14] {
    background: var(--bg-surface);
}

.period-card.closed[b-8ofcr50h14] {
    background: color-mix(in srgb, var(--theme-danger) 5%, var(--bg-surface));
    border-color: color-mix(in srgb, var(--theme-danger) 20%, var(--border-color));
}

.period-header[b-8ofcr50h14] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.75rem;
}

.period-name[b-8ofcr50h14] {
    font-weight: 600;
    font-size: 1rem;
    color: var(--text-primary);
}

.period-badge[b-8ofcr50h14] {
    font-size: 0.7rem;
    font-weight: 600;
    padding: 0.2rem 0.5rem;
    border-radius: 20px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.badge-open[b-8ofcr50h14] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success-emphasis);
}

.badge-closed[b-8ofcr50h14] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--theme-danger-emphasis);
}

.period-info[b-8ofcr50h14] {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
    margin-bottom: 0.75rem;
    font-size: 0.8rem;
    color: var(--text-secondary);
}

.info-item[b-8ofcr50h14] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

.info-item.notes[b-8ofcr50h14] {
    font-style: italic;
}

.period-actions[b-8ofcr50h14] {
    display: flex;
    justify-content: flex-end;
}

.action-btn[b-8ofcr50h14] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.35rem 0.75rem;
    border-radius: 6px;
    border: 1px solid var(--border-color);
    background: var(--bg-body);
    color: var(--text-primary);
    font-size: 0.8rem;
    cursor: pointer;
    transition: all 0.15s ease;
}

.action-btn:hover:not(:disabled)[b-8ofcr50h14] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.action-btn:disabled[b-8ofcr50h14] {
    opacity: 0.5;
    cursor: not-allowed;
}

.action-btn.close-btn:hover:not(:disabled)[b-8ofcr50h14] {
    border-color: var(--theme-danger);
    color: var(--theme-danger);
}

.action-btn.reopen:hover:not(:disabled)[b-8ofcr50h14] {
    border-color: var(--theme-success-emphasis);
    color: var(--theme-success-emphasis);
}

.info-box[b-8ofcr50h14] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem;
    background: rgba(59, 130, 246, 0.06);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 8px;
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.info-box > i[b-8ofcr50h14] {
    color: var(--theme-info);
    font-size: 1.2rem;
    margin-top: 0.1rem;
}

.info-box p[b-8ofcr50h14] {
    margin: 0.25rem 0 0;
}

.dialog-warning[b-8ofcr50h14] {
    color: var(--theme-warning-emphasis);
    font-size: 0.875rem;
    margin-bottom: 1rem;
}

.form-group[b-8ofcr50h14] {
    margin-bottom: 0;
}

.form-group label[b-8ofcr50h14] {
    display: block;
    font-weight: 500;
    margin-bottom: 0.3rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.form-control[b-8ofcr50h14] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-body);
    color: var(--text-primary);
    font-size: 0.875rem;
    resize: vertical;
}

.form-control:focus[b-8ofcr50h14] {
    outline: none;
    border-color: var(--theme-primary);
}

@media (max-width: 768px) {
    .period-grid[b-8ofcr50h14] {
        grid-template-columns: repeat(auto-fill, minmax(160px, 1fr));
    }

    .period-selector[b-8ofcr50h14] {
        flex-wrap: wrap;
    }

    .selector-select[b-8ofcr50h14] {
        min-width: 100%;
    }
}
/* /Pages/Accounting/ProgramFeeList.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-8m11jmsbxt] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.filter-group[b-8m11jmsbxt] {
    flex: 1;
    min-width: 250px;
    max-width: 400px;
}

/* ============ Search ============ */
.search-inline[b-8m11jmsbxt] {
    min-width: 180px;
}

.nav-search-box[b-8m11jmsbxt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 34px;
    padding: 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
}

.nav-search-box i[b-8m11jmsbxt] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.nav-search-box input[b-8m11jmsbxt] {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
}

.clear-search[b-8m11jmsbxt] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-surface-tertiary);
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
}

/* ============ Refresh ============ */
.refresh-btn[b-8m11jmsbxt] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.refresh-btn:hover[b-8m11jmsbxt] {
    background: var(--bg-surface-secondary);
}

.spinner-sm[b-8m11jmsbxt] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin-b-8m11jmsbxt 0.6s linear infinite;
}

@keyframes spin-b-8m11jmsbxt {
    to { transform: rotate(360deg); }
}

/* ============ Empty State ============ */
.empty-state-box[b-8m11jmsbxt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    background: var(--bg-surface);
    border: 1px dashed var(--border-color);
    border-radius: 12px;
    text-align: center;
    color: var(--text-muted);
}

.empty-state-box i[b-8m11jmsbxt] {
    font-size: 2.5rem;
    margin-bottom: 0.75rem;
    opacity: 0.4;
}

.empty-state-box p[b-8m11jmsbxt] {
    font-size: 0.875rem;
    margin: 0;
}

/* ============ Precedence Badge ============ */
.precedence-badge[b-8m11jmsbxt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 28px;
    height: 28px;
    padding: 0 0.375rem;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 700;
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success-emphasis);
}

/* ============ Frequency Badge ============ */
.frequency-badge[b-8m11jmsbxt] {
    display: inline-flex;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo);
}

.frequency-badge.oneoff[b-8m11jmsbxt] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

.frequency-badge.annual[b-8m11jmsbxt] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

/* ============ Action Buttons ============ */
.action-buttons[b-8m11jmsbxt] {
    display: flex;
    gap: 0.375rem;
}

/* ============ Content Area ============ */
.content-area[b-8m11jmsbxt] {
    margin-bottom: 1rem;
}

.table-container[b-8m11jmsbxt] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-8m11jmsbxt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-8m11jmsbxt] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-8m11jmsbxt] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.total-amount[b-8m11jmsbxt] {
    color: var(--text-muted);
}

/* ============ Form ============ */
.form-row[b-8m11jmsbxt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .filter-group[b-8m11jmsbxt] {
        flex-direction: column;
    }
    .filter-item[b-8m11jmsbxt] {
        min-width: 100%;
    }
    .form-row[b-8m11jmsbxt] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Accounting/ProgrammeSettings.razor.rz.scp.css */
/* ============ Code Badge ============ */
.code-badge[b-q99lc166s0] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 700;
    font-family: monospace;
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo);
    text-transform: uppercase;
}

/* ============ Study Type Badge ============ */
.study-type-badge[b-q99lc166s0] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

/* ============ Status Badges ============ */
.status-badge[b-q99lc166s0] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-q99lc166s0] {
    background: var(--theme-success-bg, rgba(16, 185, 129, 0.1));
    color: var(--theme-success);
}

.status-muted[b-q99lc166s0] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Action Buttons ============ */
.action-buttons[b-q99lc166s0] {
    display: flex;
    gap: 0.375rem;
}

/* ============ Content Area ============ */
.content-area[b-q99lc166s0] {
    margin-bottom: 1rem;
}

.table-container[b-q99lc166s0] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-q99lc166s0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-q99lc166s0] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-q99lc166s0] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ============ Form ============ */
.form-group[b-q99lc166s0] {
    margin-bottom: 1rem;
}

.form-label[b-q99lc166s0] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-input[b-q99lc166s0] {
    width: 100%;
    height: 38px;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    transition: border-color 0.2s ease;
}

.form-input:focus[b-q99lc166s0] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color, rgba(99, 102, 241, 0.15));
}

.form-row[b-q99lc166s0] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-check-group[b-q99lc166s0] {
    display: flex;
    align-items: center;
    margin-bottom: 1rem;
}

.form-check-label[b-q99lc166s0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
}

.form-check-input[b-q99lc166s0] {
    width: 18px;
    height: 18px;
    border-radius: 4px;
    cursor: pointer;
}

.text-danger[b-q99lc166s0] {
    color: var(--theme-danger);
}

.text-muted[b-q99lc166s0] {
    color: var(--text-muted);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .form-row[b-q99lc166s0] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Accounting/ReconciliationList.razor.rz.scp.css */
/* ========================================
   BANK RECONCILIATION PAGE
   ======================================== */

/* ========================================
   STEP SECTIONS
   ======================================== */

.step-section[b-gega7kguc4] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1.25rem;
    overflow: hidden;
}

.step-section-highlight[b-gega7kguc4] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 1px var(--theme-primary-border);
}

.step-header[b-gega7kguc4] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.step-indicator[b-gega7kguc4] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: var(--bg-surface-tertiary);
    border: 2px solid var(--border-color);
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.step-indicator.active[b-gega7kguc4] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
}

.step-number[b-gega7kguc4] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-secondary);
}

.step-indicator.active .step-number[b-gega7kguc4] {
    color: var(--text-inverse);
}

.step-info[b-gega7kguc4] {
    flex: 1;
    min-width: 0;
}

.step-title[b-gega7kguc4] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
}

.step-subtitle[b-gega7kguc4] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
}

.step-actions[b-gega7kguc4] {
    display: flex;
    gap: 0.5rem;
    flex-shrink: 0;
}

.step-body[b-gega7kguc4] {
    padding: 1.25rem;
}

/* ========================================
   FILTER ROW (Step 1)
   ======================================== */

.filter-row[b-gega7kguc4] {
    display: flex;
    align-items: flex-end;
    gap: 1rem;
    flex-wrap: wrap;
}

.filter-item[b-gega7kguc4] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    flex: 0 1 200px;
    min-width: 160px;
}

.filter-item-wide[b-gega7kguc4] {
    flex: 1 1 280px;
    min-width: 200px;
}

.filter-item-action[b-gega7kguc4] {
    flex: 0 0 auto;
    align-self: flex-end;
}

.filter-label[b-gega7kguc4] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.filter-label i[b-gega7kguc4] {
    font-size: 0.875rem;
}

.filter-select[b-gega7kguc4] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s ease;
}

.filter-select:focus[b-gega7kguc4] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.filter-input[b-gega7kguc4] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    outline: none;
    transition: border-color 0.2s ease;
}

.filter-input:focus[b-gega7kguc4] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ========================================
   RECONCILIATION SUMMARY
   ======================================== */

.reconciliation-summary[b-gega7kguc4] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.summary-card[b-gega7kguc4] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    transition: box-shadow 0.2s ease;
}

.summary-card:hover[b-gega7kguc4] {
    box-shadow: var(--shadow-sm);
}

.summary-icon[b-gega7kguc4] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    border-radius: 10px;
    flex-shrink: 0;
    font-size: 1.125rem;
}

.summary-icon-total[b-gega7kguc4] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.summary-icon-reconciled[b-gega7kguc4] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.summary-icon-pending[b-gega7kguc4] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.summary-icon-debit[b-gega7kguc4] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.summary-icon-credit[b-gega7kguc4] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.summary-info[b-gega7kguc4] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.summary-value[b-gega7kguc4] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.summary-label[b-gega7kguc4] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    white-space: nowrap;
}

/* ========================================
   TABLE CONTAINER & GRID
   ======================================== */

.table-container[b-gega7kguc4] {
    background: var(--bg-surface);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

.recon-checkbox[b-gega7kguc4] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--theme-primary);
}

.reconciled-check[b-gega7kguc4] {
    color: var(--theme-success);
    font-size: 1.25rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.voucher-type-badge[b-gega7kguc4] {
    display: inline-flex;
    padding: 0.1875rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.code-badge[b-gega7kguc4] {
    display: inline-flex;
    padding: 0.1875rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    font-family: monospace;
}

.amount-debit[b-gega7kguc4] {
    font-weight: 600;
    color: var(--theme-info);
    font-variant-numeric: tabular-nums;
}

.amount-credit[b-gega7kguc4] {
    font-weight: 600;
    color: var(--theme-danger);
    font-variant-numeric: tabular-nums;
}

.status-badge[b-gega7kguc4] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-success[b-gega7kguc4] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-warning[b-gega7kguc4] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

/* DataGrid Overrides */
[b-gega7kguc4] .rz-datatable {
    border: none;
}

[b-gega7kguc4] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-gega7kguc4] .rz-datatable-data > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-gega7kguc4] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-gega7kguc4] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   RECONCILE ACTION ROW (Step 3)
   ======================================== */

.reconcile-action-row[b-gega7kguc4] {
    display: flex;
    align-items: flex-end;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.reconcile-date-group[b-gega7kguc4] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    min-width: 180px;
}

.reconcile-totals[b-gega7kguc4] {
    display: flex;
    gap: 1.5rem;
    flex: 1;
}

.reconcile-total-item[b-gega7kguc4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.reconcile-total-label[b-gega7kguc4] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    white-space: nowrap;
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-gega7kguc4] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-gega7kguc4] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-gega7kguc4] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-gega7kguc4] {
    font-size: 1rem;
}

.spinner-sm[b-gega7kguc4] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-gega7kguc4 0.6s linear infinite;
}

@keyframes spin-b-gega7kguc4 {
    to { transform: rotate(360deg); }
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 1200px) {
    .reconciliation-summary[b-gega7kguc4] {
        grid-template-columns: repeat(3, 1fr);
    }

    .filter-row[b-gega7kguc4] {
        flex-wrap: wrap;
    }

    .filter-item[b-gega7kguc4] {
        flex: 1 1 180px;
    }

    .filter-item-wide[b-gega7kguc4] {
        flex: 1 1 100%;
    }
}

@media (max-width: 768px) {
    .reconciliation-summary[b-gega7kguc4] {
        grid-template-columns: repeat(2, 1fr);
    }

    .filter-row[b-gega7kguc4] {
        flex-direction: column;
    }

    .filter-item[b-gega7kguc4],
    .filter-item-wide[b-gega7kguc4] {
        flex: 1 1 100%;
        min-width: 0;
        max-width: none;
    }

    .reconcile-action-row[b-gega7kguc4] {
        flex-direction: column;
        align-items: stretch;
    }

    .reconcile-totals[b-gega7kguc4] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .step-header[b-gega7kguc4] {
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .reconciliation-summary[b-gega7kguc4] {
        grid-template-columns: 1fr;
    }

    .step-header[b-gega7kguc4] {
        padding: 0.75rem 1rem;
    }

    .step-body[b-gega7kguc4] {
        padding: 0.75rem;
    }

    .step-indicator[b-gega7kguc4] {
        width: 30px;
        height: 30px;
    }

    .step-number[b-gega7kguc4] {
        font-size: 0.75rem;
    }

    .summary-card[b-gega7kguc4] {
        padding: 0.75rem;
    }
}
/* /Pages/Accounting/ReconciliationPeriods.razor.rz.scp.css */
/* ========================================
   RECONCILIATION PERIODS PAGE
   ======================================== */

/* ========================================
   NAVIGATION BAR
   ======================================== */

.navigation-bar[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* ========================================
   VACANCY / ACCOUNT INLINE
   ======================================== */

.vacancy-inline[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.vacancy-label[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.vacancy-label i[b-hu03ykgpxr] {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

.vacancy-select[b-hu03ykgpxr] {
    padding: 0.375rem 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    outline: none;
    min-width: 160px;
    max-width: 280px;
}

.vacancy-select:focus[b-hu03ykgpxr] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ========================================
   FILTER INLINE
   ======================================== */

.filter-inline[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

.filter-label-inline[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.filter-label-inline i[b-hu03ykgpxr] {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

.filter-select-compact[b-hu03ykgpxr] {
    padding: 0.375rem 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    outline: none;
    min-width: 100px;
}

.filter-select-compact:focus[b-hu03ykgpxr] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ========================================
   SEARCH INLINE
   ======================================== */

.search-inline[b-hu03ykgpxr] {
    flex: 1;
    min-width: 140px;
    max-width: 280px;
}

.nav-search-box[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    transition: border-color 0.2s ease;
}

.nav-search-box:focus-within[b-hu03ykgpxr] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-hu03ykgpxr] {
    font-size: 0.875rem;
    color: var(--text-tertiary);
    flex-shrink: 0;
}

.nav-search-box input[b-hu03ykgpxr] {
    flex: 1;
    border: none;
    background: transparent;
    color: var(--text-primary);
    font-size: 0.8125rem;
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-hu03ykgpxr]::placeholder {
    color: var(--text-tertiary);
}

.clear-search[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-surface-tertiary);
    border-radius: 50%;
    color: var(--text-tertiary);
    cursor: pointer;
    font-size: 0.75rem;
    flex-shrink: 0;
}

.clear-search:hover[b-hu03ykgpxr] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-hu03ykgpxr] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-hu03ykgpxr] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-hu03ykgpxr] {
    font-size: 1rem;
}

.spinner-sm[b-hu03ykgpxr] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-hu03ykgpxr 0.6s linear infinite;
}

@keyframes spin-b-hu03ykgpxr {
    to { transform: rotate(360deg); }
}

/* ========================================
   CONTENT AREA & TABLE
   ======================================== */

.content-area[b-hu03ykgpxr] {
    margin-bottom: 0.75rem;
}

.table-container[b-hu03ykgpxr] {
    background: var(--bg-surface);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ========================================
   AMOUNTS
   ======================================== */

.amount-value[b-hu03ykgpxr] {
    font-weight: 600;
    color: var(--text-primary);
    font-variant-numeric: tabular-nums;
}

.amount-balanced[b-hu03ykgpxr] {
    font-weight: 600;
    color: var(--theme-success);
    font-variant-numeric: tabular-nums;
}

.amount-unbalanced[b-hu03ykgpxr] {
    font-weight: 600;
    color: var(--theme-danger);
    font-variant-numeric: tabular-nums;
}

/* ========================================
   PERIOD NAME
   ======================================== */

.period-name[b-hu03ykgpxr] {
    font-weight: 600;
    color: var(--text-primary);
}

/* ========================================
   STATUS BADGES
   ======================================== */

.status-badge[b-hu03ykgpxr] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-draft[b-hu03ykgpxr] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.status-submitted[b-hu03ykgpxr] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-approved[b-hu03ykgpxr] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-rejected[b-hu03ykgpxr] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.overdue-badge[b-hu03ykgpxr] {
    display: inline-flex;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
    margin-left: 0.375rem;
}

/* ========================================
   ACTION BUTTONS
   ======================================== */

.action-buttons[b-hu03ykgpxr] {
    display: flex;
    gap: 0.375rem;
    align-items: center;
}

/* ========================================
   LIST FOOTER
   ======================================== */

.list-footer[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-hu03ykgpxr] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector select[b-hu03ykgpxr] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    outline: none;
}

/* ========================================
   MODAL FORM
   ======================================== */

.modal-form[b-hu03ykgpxr] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.form-group[b-hu03ykgpxr] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-label[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.form-label i[b-hu03ykgpxr] {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

.required[b-hu03ykgpxr] {
    color: var(--theme-danger);
}

.form-select[b-hu03ykgpxr] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    outline: none;
}

.form-select:focus[b-hu03ykgpxr] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.form-row[b-hu03ykgpxr] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-textarea[b-hu03ykgpxr] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    font-family: inherit;
    outline: none;
    resize: vertical;
    min-height: 80px;
}

.form-textarea:focus[b-hu03ykgpxr] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ========================================
   REVIEW SUMMARY
   ======================================== */

.review-summary[b-hu03ykgpxr] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
}

.review-item[b-hu03ykgpxr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.review-label[b-hu03ykgpxr] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    min-width: 80px;
}

.review-value[b-hu03ykgpxr] {
    font-size: 0.875rem;
    color: var(--text-primary);
    font-weight: 500;
}

/* DataGrid Overrides */
[b-hu03ykgpxr] .rz-datatable {
    border: none;
}

[b-hu03ykgpxr] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-hu03ykgpxr] .rz-datatable-data > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-hu03ykgpxr] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-hu03ykgpxr] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 1200px) {
    .navigation-bar[b-hu03ykgpxr] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-hu03ykgpxr] {
        flex: 1 1 200px;
    }

    .search-inline[b-hu03ykgpxr] {
        flex: 1 1 200px;
        max-width: none;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-hu03ykgpxr] {
        flex-direction: column;
        align-items: stretch;
    }

    .vacancy-inline[b-hu03ykgpxr],
    .filter-inline[b-hu03ykgpxr],
    .search-inline[b-hu03ykgpxr] {
        width: 100%;
        max-width: none;
    }

    .vacancy-select[b-hu03ykgpxr],
    .filter-select-compact[b-hu03ykgpxr] {
        flex: 1;
        max-width: none;
    }

    .list-footer[b-hu03ykgpxr] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .footer-left[b-hu03ykgpxr] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .form-row[b-hu03ykgpxr] {
        grid-template-columns: 1fr;
    }

    .action-buttons[b-hu03ykgpxr] {
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .vacancy-label span[b-hu03ykgpxr],
    .filter-label-inline span[b-hu03ykgpxr] {
        display: none;
    }

    .navigation-bar[b-hu03ykgpxr] {
        padding: 0.5rem 0.75rem;
        gap: 0.5rem;
    }
}
/* /Pages/Accounting/ReportsIndex.razor.rz.scp.css */
/* ============ Reports Grid ============ */
.reports-grid[b-798bldey4n] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.25rem;
}

/* ============ Report Card ============ */
.report-card[b-798bldey4n] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.report-card:hover[b-798bldey4n] {
    border-color: var(--theme-primary);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    transform: translateY(-2px);
}

.report-card-icon[b-798bldey4n] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    flex-shrink: 0;
    font-size: 1.5rem;
}

.report-card-body[b-798bldey4n] {
    flex: 1;
    min-width: 0;
}

.report-card-title[b-798bldey4n] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.25rem 0;
}

.report-card-desc[b-798bldey4n] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.4;
}

.report-card-arrow[b-798bldey4n] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
    flex-shrink: 0;
    transition: all 0.2s ease;
}

.report-card:hover .report-card-arrow[b-798bldey4n] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.report-card-arrow i[b-798bldey4n] {
    font-size: 1rem;
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .reports-grid[b-798bldey4n] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .reports-grid[b-798bldey4n] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .report-card[b-798bldey4n] {
        padding: 1rem;
        gap: 0.75rem;
    }

    .report-card-icon[b-798bldey4n] {
        width: 40px;
        height: 40px;
        font-size: 1.25rem;
    }

    .report-card-desc[b-798bldey4n] {
        display: none;
    }
}
/* /Pages/Accounting/SchoolPayTransactions.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* ============ Tabs ============ */
.tabs-inline[b-ryw0ksr7os] {
    display: flex;
    gap: 0.25rem;
}

.tab-compact[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    white-space: nowrap;
}

.tab-compact:hover[b-ryw0ksr7os] {
    background: var(--bg-surface-secondary);
}

.tab-compact.active[b-ryw0ksr7os] {
    background: var(--theme-primary);
    color: white;
    border-color: var(--theme-primary);
}

.tab-badge[b-ryw0ksr7os] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 0.375rem;
    border-radius: 10px;
    font-size: 0.6875rem;
    font-weight: 700;
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-ryw0ksr7os] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.tab-badge.warning[b-ryw0ksr7os] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning-emphasis);
}

.tab-badge.success[b-ryw0ksr7os] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-emphasis);
}

.tab-badge.danger[b-ryw0ksr7os] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger-emphasis);
}

/* ============ Search ============ */
.search-inline[b-ryw0ksr7os] {
    flex: 1;
    min-width: 180px;
}

.nav-search-box[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 34px;
    padding: 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
}

.nav-search-box i[b-ryw0ksr7os] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.nav-search-box input[b-ryw0ksr7os] {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
}

.clear-search[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-surface-tertiary);
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
}

/* ============ Refresh ============ */
.refresh-btn[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.refresh-btn:hover[b-ryw0ksr7os] {
    background: var(--bg-surface-secondary);
}

.spinner-sm[b-ryw0ksr7os] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin-b-ryw0ksr7os 0.6s linear infinite;
}

@keyframes spin-b-ryw0ksr7os {
    to { transform: rotate(360deg); }
}

/* ============ Status Badges ============ */
.status-badge[b-ryw0ksr7os] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-ryw0ksr7os] {
    background: var(--theme-success-bg, rgba(16, 185, 129, 0.1));
    color: var(--theme-success);
}

.status-warning[b-ryw0ksr7os] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

.status-danger[b-ryw0ksr7os] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger-emphasis);
}

.status-muted[b-ryw0ksr7os] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Mono Text ============ */
.mono-text[b-ryw0ksr7os] {
    font-family: monospace;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ============ Action Buttons ============ */
.action-buttons[b-ryw0ksr7os] {
    display: flex;
    gap: 0.375rem;
}

/* ============ Content Area ============ */
.content-area[b-ryw0ksr7os] {
    margin-bottom: 1rem;
}

.table-container[b-ryw0ksr7os] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-ryw0ksr7os] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector[b-ryw0ksr7os] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector select[b-ryw0ksr7os] {
    height: 28px;
    padding: 0 0.375rem;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
}

/* ============ Form ============ */
.form-group[b-ryw0ksr7os] {
    margin-bottom: 1rem;
}

.form-label[b-ryw0ksr7os] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-textarea[b-ryw0ksr7os] {
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    resize: vertical;
}

.form-textarea:focus[b-ryw0ksr7os] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--focus-ring-color, rgba(99, 102, 241, 0.15));
}

.text-danger[b-ryw0ksr7os] {
    color: var(--theme-danger);
}

.text-muted[b-ryw0ksr7os] {
    color: var(--text-muted);
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-ryw0ksr7os] {
        flex-wrap: wrap;
    }
    .tabs-inline[b-ryw0ksr7os] {
        flex-basis: 100%;
    }
    .search-inline[b-ryw0ksr7os] {
        flex: 1;
    }
}

@media (max-width: 768px) {
    .tabs-inline[b-ryw0ksr7os] {
        overflow-x: auto;
    }
}
/* /Pages/Accounting/StudentAccountDetail.razor.rz.scp.css */
/* ============ Summary Strip (replaces 4 StatsCards + info row) ============ */
.summary-strip[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.summary-chip[b-dhszca2lha] {
    display: flex;
    flex-direction: column;
    padding: 0.375rem 0.875rem;
    border-radius: 8px;
    background: var(--bg-surface-secondary);
    min-width: 90px;
}

.chip-label[b-dhszca2lha] {
    font-size: 0.625rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
}

.chip-amount[b-dhszca2lha] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    white-space: nowrap;
}

.summary-chip.paid .chip-amount[b-dhszca2lha] { color: var(--theme-success); }
.summary-chip.credit-notes .chip-amount[b-dhszca2lha] { color: var(--theme-purple); }
.summary-chip.cleared[b-dhszca2lha] { background: rgba(16, 185, 129, 0.08); }
.summary-chip.cleared .chip-amount[b-dhszca2lha] { color: var(--theme-success-emphasis); }
.summary-chip.owing[b-dhszca2lha] { background: rgba(239, 68, 68, 0.08); }
.summary-chip.owing .chip-amount[b-dhszca2lha] { color: var(--theme-danger-emphasis); }

.summary-meta[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin-left: auto;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.meta-item[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.meta-item i[b-dhszca2lha] { font-size: 0.875rem; color: var(--text-muted); }

.meta-badge[b-dhszca2lha] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
}

.meta-badge.cleared[b-dhszca2lha] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success-emphasis);
}

.meta-badge.owing[b-dhszca2lha] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger-emphasis);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

/* ============ Tabs ============ */
.tabs-inline[b-dhszca2lha] {
    display: flex;
    gap: 0.25rem;
    flex: 1;
}

.tab-compact[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
}

.tab-compact:hover[b-dhszca2lha] { background: var(--bg-surface-secondary); }

.tab-compact.active[b-dhszca2lha] {
    background: var(--theme-primary);
    color: white;
    border-color: var(--theme-primary);
}

.tab-badge[b-dhszca2lha] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 18px;
    padding: 0 0.375rem;
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 700;
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.tab-compact.active .tab-badge[b-dhszca2lha] {
    background: rgba(255, 255, 255, 0.25);
    color: white;
}

/* ============ Search ============ */
.search-inline[b-dhszca2lha] { min-width: 180px; }

.nav-search-box[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 34px;
    padding: 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
}

.nav-search-box i[b-dhszca2lha] { font-size: 0.875rem; color: var(--text-muted); }

.nav-search-box input[b-dhszca2lha] {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
}

.clear-search[b-dhszca2lha] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-surface-tertiary);
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
}

/* ============ Refresh ============ */
.refresh-btn[b-dhszca2lha] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.refresh-btn:hover[b-dhszca2lha] { background: var(--bg-surface-secondary); }

.spinner-sm[b-dhszca2lha] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin-b-dhszca2lha 0.6s linear infinite;
}

@keyframes spin-b-dhszca2lha { to { transform: rotate(360deg); } }

/* ============ Status Badges ============ */
.status-badge[b-dhszca2lha] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-dhszca2lha] { background: var(--theme-success-bg, rgba(16, 185, 129, 0.1)); color: var(--theme-success); }
.status-danger[b-dhszca2lha]  { background: rgba(239, 68, 68, 0.1);  color: var(--theme-danger-emphasis); }
.status-warning[b-dhszca2lha] { background: rgba(245, 158, 11, 0.1); color: var(--theme-warning-emphasis); }
.status-info[b-dhszca2lha]    { background: rgba(59, 130, 246, 0.1);  color: var(--theme-info-emphasis); }
.status-credit[b-dhszca2lha]  { background: rgba(139, 92, 246, 0.1);  color: var(--theme-purple-emphasis); }
.status-debit[b-dhszca2lha]   { background: rgba(245, 158, 11, 0.1);  color: var(--theme-warning-emphasis); }
.status-muted[b-dhszca2lha]   { background: var(--bg-surface-tertiary); color: var(--text-muted); }
.status-cancelled[b-dhszca2lha] { background: rgba(239, 68, 68, 0.08); color: var(--theme-gray-400); text-decoration: line-through; }
.status-active[b-dhszca2lha]  { background: rgba(16, 185, 129, 0.08); color: var(--theme-success-emphasis); }

/* ============ Amount Colors ============ */
.amount-debit[b-dhszca2lha] { color: var(--theme-danger-emphasis); }
.amount-credit[b-dhszca2lha] { color: var(--theme-success); }
.amount-paid[b-dhszca2lha] { color: var(--theme-success); }
.text-muted[b-dhszca2lha] { color: var(--text-muted); }

.code-badge[b-dhszca2lha] {
    display: inline-block;
    padding: 0.1rem 0.4rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-family: monospace;
    font-size: 0.75rem;
}

/* ============ Content Area ============ */
.content-area[b-dhszca2lha] { margin-bottom: 0.75rem; }

.table-container[b-dhszca2lha] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-dhszca2lha] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
}

.footer-left[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-dhszca2lha] { font-size: 0.8125rem; color: var(--text-secondary); }

.page-size-selector[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector select[b-dhszca2lha] {
    height: 28px;
    padding: 0 0.375rem;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
}

/* ============ Statement Totals ============ */
.statement-totals[b-dhszca2lha] {
    display: flex;
    justify-content: flex-end;
    gap: 1.25rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-top: 2px solid var(--border-color);
    border-radius: 0 0 10px 10px;
}

.stmt-total-item[b-dhszca2lha] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.125rem;
    min-width: 90px;
}

.stmt-label[b-dhszca2lha] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-secondary);
}

.stmt-value[b-dhszca2lha] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    font-family: var(--font-mono, monospace);
}

.stmt-total-item.paid .stmt-value[b-dhszca2lha] { color: var(--theme-success); }
.stmt-total-item.owing .stmt-value[b-dhszca2lha] { color: var(--theme-danger); }
.stmt-total-item.cleared .stmt-value[b-dhszca2lha] { color: var(--theme-success); }

/* ============ Loading Indicator ============ */
.loading-indicator[b-dhszca2lha] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    justify-content: center;
    padding: 2rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

/* ============ Additional Status Badges ============ */
[b-dhszca2lha] .status-cancelled { background: rgba(107,114,128,0.1); color: var(--theme-gray-500); text-decoration: line-through; }
[b-dhszca2lha] .status-credit { background: rgba(59,130,246,0.1); color: var(--theme-info-emphasis); }
[b-dhszca2lha] .status-debit { background: rgba(245,158,11,0.1); color: var(--theme-warning-emphasis); }
[b-dhszca2lha] .status-muted { background: var(--bg-surface-tertiary); color: var(--text-muted); }

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .summary-strip[b-dhszca2lha] {
        flex-direction: column;
        align-items: stretch;
    }
    .summary-chip[b-dhszca2lha] {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }
    .summary-meta[b-dhszca2lha] {
        margin-left: 0;
        flex-wrap: wrap;
    }
    .navigation-bar[b-dhszca2lha] {
        flex-direction: column;
        align-items: stretch;
    }
    .tabs-inline[b-dhszca2lha] { overflow-x: auto; }
    .search-inline[b-dhszca2lha] { min-width: 100%; }
    .list-footer[b-dhszca2lha] { flex-direction: column; gap: 0.5rem; }
}
/* /Pages/Accounting/StudentBalances.razor.rz.scp.css */
/* ============ Action Icons ============ */
[b-bnhh0igcl2] .action-icon {
    color: var(--text-muted);
    font-size: 1rem;
    text-decoration: none;
    transition: color 0.15s;
}

[b-bnhh0igcl2] .action-icon:hover { color: var(--theme-primary); }

/* ============ Navigation Bar ============ */
.navigation-bar[b-bnhh0igcl2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

/* ============ Mode Toggle ============ */
.mode-toggle[b-bnhh0igcl2] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.2rem;
    gap: 0.125rem;
}

.mode-btn[b-bnhh0igcl2] {
    display: flex; align-items: center; gap: 0.3rem;
    padding: 0.3rem 0.6rem;
    background: transparent; border: none; border-radius: 6px;
    font-size: 0.78rem; font-weight: 500;
    color: var(--text-secondary); cursor: pointer;
    white-space: nowrap; transition: all 0.15s;
}

.mode-btn:hover[b-bnhh0igcl2] { color: var(--text-primary); background: var(--bg-hover); }
.mode-btn.active[b-bnhh0igcl2] { background: var(--bg-surface); color: var(--text-primary); box-shadow: 0 1px 3px rgba(0,0,0,0.08); font-weight: 600; }
.mode-btn i[b-bnhh0igcl2] { font-size: 0.9rem; }

/* ============ Tabs ============ */
.tabs-inline[b-bnhh0igcl2] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.2rem;
    gap: 0.125rem;
}

.tab-compact[b-bnhh0igcl2] {
    display: flex; align-items: center; gap: 0.35rem;
    padding: 0.3rem 0.625rem;
    background: transparent; border: none; border-radius: 6px;
    font-size: 0.78rem; font-weight: 500;
    color: var(--text-secondary); cursor: pointer;
    white-space: nowrap; transition: all 0.15s;
}
.tab-compact:hover[b-bnhh0igcl2] { color: var(--text-primary); background: var(--bg-hover); }
.tab-compact.active[b-bnhh0igcl2] { background: var(--bg-surface); color: var(--text-primary); box-shadow: 0 1px 3px rgba(0,0,0,0.08); }

.tab-badge[b-bnhh0igcl2] {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 18px; height: 18px; padding: 0 5px;
    background: var(--border-color); border-radius: 9px;
    font-size: 0.68rem; font-weight: 600; color: var(--text-secondary);
}
.tab-compact.active .tab-badge[b-bnhh0igcl2] { background: var(--theme-primary); color: var(--text-inverse); }
.tab-badge.success[b-bnhh0igcl2] { background: rgba(5,150,105,0.15); color: var(--theme-success-emphasis); }
.tab-compact.active .tab-badge.success[b-bnhh0igcl2] { background: var(--theme-success-emphasis); color: var(--text-inverse); }
.tab-badge.warning[b-bnhh0igcl2] { background: rgba(245,158,11,0.12); color: var(--theme-warning-emphasis); }
.tab-compact.active .tab-badge.warning[b-bnhh0igcl2] { background: var(--theme-warning-emphasis); color: var(--text-inverse); }
.tab-badge.danger[b-bnhh0igcl2] { background: rgba(239,68,68,0.12); color: var(--theme-danger-emphasis); }
.tab-compact.active .tab-badge.danger[b-bnhh0igcl2] { background: var(--theme-danger-emphasis); color: var(--text-inverse); }
.tab-badge.info[b-bnhh0igcl2] { background: rgba(59,130,246,0.15); color: var(--theme-info-emphasis); }

/* ============ Filter Items ============ */
.filter-item[b-bnhh0igcl2] { min-width: 120px; max-width: 200px; }
.filter-item.filter-item-narrow[b-bnhh0igcl2] { min-width: 90px; max-width: 130px; }
.filter-item :deep(.fsh-form-group)[b-bnhh0igcl2] { margin-bottom: 0; }

.adv-filter-select[b-bnhh0igcl2] {
    height: 30px; padding: 0 0.5rem;
    border: 1px solid var(--border-color); border-radius: 6px;
    background: var(--bg-surface); color: var(--text-primary);
    font-size: 0.75rem; cursor: pointer;
}

/* ============ Search ============ */
.search-inline[b-bnhh0igcl2] { min-width: 150px; flex: 1; max-width: 300px; }

.nav-search-box[b-bnhh0igcl2] {
    display: flex; align-items: center; gap: 0.4rem;
    height: 30px; padding: 0 0.5rem;
    border: 1px solid var(--border-color); border-radius: 6px;
    background: var(--bg-surface);
}
.nav-search-box:focus-within[b-bnhh0igcl2] { border-color: var(--theme-primary); box-shadow: 0 0 0 2px rgba(13,110,253,0.12); }
.nav-search-box i[b-bnhh0igcl2] { font-size: 0.8rem; color: var(--text-muted); }
.nav-search-box input[b-bnhh0igcl2] { border: none; outline: none; background: transparent; font-size: 0.75rem; color: var(--text-primary); width: 100%; }

.clear-search[b-bnhh0igcl2] {
    display: flex; align-items: center; justify-content: center;
    width: 18px; height: 18px; border: none;
    background: var(--bg-surface-tertiary); border-radius: 50%;
    cursor: pointer; color: var(--text-muted); font-size: 0.7rem;
}

/* ============ Toggle & Refresh ============ */
.filter-toggle-btn[b-bnhh0igcl2] {
    display: flex; align-items: center; gap: 0.3rem;
    padding: 0.3rem 0.625rem; height: 30px;
    border: 1px solid var(--border-color); border-radius: 6px;
    background: var(--bg-surface); color: var(--text-secondary);
    font-size: 0.75rem; font-weight: 500; cursor: pointer; transition: all 0.15s;
}
.filter-toggle-btn:hover[b-bnhh0igcl2] { background: var(--bg-surface-secondary); }
.filter-toggle-btn.active[b-bnhh0igcl2] { background: var(--theme-primary); color: white; border-color: var(--theme-primary); }

.refresh-btn[b-bnhh0igcl2] {
    display: flex; align-items: center; justify-content: center;
    width: 30px; height: 30px;
    border: 1px solid var(--border-color); border-radius: 6px;
    background: var(--bg-surface); color: var(--text-secondary);
    cursor: pointer; flex-shrink: 0;
}
.refresh-btn:hover[b-bnhh0igcl2] { background: var(--bg-surface-secondary); }

.spinner-sm[b-bnhh0igcl2] {
    width: 12px; height: 12px;
    border: 2px solid var(--border-color); border-top-color: var(--theme-primary);
    border-radius: 50%; animation: spin-b-bnhh0igcl2 0.6s linear infinite;
}
@keyframes spin-b-bnhh0igcl2 { to { transform: rotate(360deg); } }

/* ============ Inline Alerts ============ */
.inline-alerts[b-bnhh0igcl2] { margin-bottom: 0.75rem; }
.inline-alert[b-bnhh0igcl2] {
    display: flex; align-items: center; gap: 0.5rem;
    padding: 0.5rem 0.75rem; border-radius: 8px; font-size: 0.8rem;
}
.inline-alert.info[b-bnhh0igcl2] {
    background: rgba(99,102,241,0.06);
    border: 1px solid rgba(99,102,241,0.2);
    color: var(--text-secondary);
}
.inline-alert.info i[b-bnhh0igcl2] { color: var(--theme-indigo); }

/* ============ Student Link ============ */
[b-bnhh0igcl2] .student-link {
    display: flex; flex-direction: column; gap: 0.125rem;
    text-decoration: none; color: var(--theme-primary); transition: color 0.15s;
}
[b-bnhh0igcl2] .student-link:hover { color: var(--theme-primary-hover); }
[b-bnhh0igcl2] .student-link strong { font-size: 0.8125rem; }
[b-bnhh0igcl2] .pay-code { font-size: 0.6875rem; color: var(--text-muted); font-family: monospace; }
[b-bnhh0igcl2] .code-badge {
    display: inline-block; padding: 0.1rem 0.4rem;
    background: var(--bg-surface-tertiary); border-radius: 4px;
    font-family: monospace; font-size: 0.75rem;
}

/* ============ Amount Colors ============ */
[b-bnhh0igcl2] .amount-paid { color: var(--theme-success); }
[b-bnhh0igcl2] .amount-owing { color: var(--theme-danger); }
[b-bnhh0igcl2] .amount-credit { color: var(--theme-success); }
[b-bnhh0igcl2] .amount-debit { color: var(--theme-danger); }
[b-bnhh0igcl2] .text-muted { color: var(--text-muted); }

/* ============ Payment % ============ */
[b-bnhh0igcl2] .pct-value { font-weight: 600; font-size: 0.8rem; }
[b-bnhh0igcl2] .pct-cleared { color: var(--theme-success); }
[b-bnhh0igcl2] .pct-warning { color: var(--theme-warning-emphasis); }
[b-bnhh0igcl2] .pct-blocked { color: var(--theme-danger); }

/* ============ Fee Type Badges (clearance) ============ */
[b-bnhh0igcl2] .fee-type-badge {
    display: inline-flex; align-items: center;
    padding: 0.1rem 0.35rem; border-radius: 4px;
    font-size: 0.6rem; font-weight: 700; margin-left: 0.25rem;
}
[b-bnhh0igcl2] .fee-type-badge.creditnote { background: rgba(245,158,11,0.15); color: var(--theme-warning-emphasis); }

/* ============ Row Highlights ============ */
[b-bnhh0igcl2] .row-owing { background: rgba(239,68,68,0.03); }
[b-bnhh0igcl2] .row-credit { background: rgba(16,185,129,0.03); }
[b-bnhh0igcl2] .row-owing:hover { background: rgba(239,68,68,0.06) !important; }
[b-bnhh0igcl2] .row-credit:hover { background: rgba(16,185,129,0.06) !important; }

/* ============ Status Badges ============ */
[b-bnhh0igcl2] .status-badge {
    display: inline-flex; align-items: center;
    padding: 0.15rem 0.5rem; border-radius: 20px;
    font-size: 0.6875rem; font-weight: 600; white-space: nowrap;
}
[b-bnhh0igcl2] .status-success { background: rgba(16,185,129,0.1); color: var(--theme-success); }
[b-bnhh0igcl2] .status-danger { background: rgba(239,68,68,0.1); color: var(--theme-danger-emphasis); }
[b-bnhh0igcl2] .status-info { background: rgba(59,130,246,0.1); color: var(--theme-info-emphasis); }
[b-bnhh0igcl2] .status-warning { background: rgba(245,158,11,0.1); color: var(--theme-warning-emphasis); }

/* ============ Content Area ============ */
.content-area[b-bnhh0igcl2] { margin-bottom: 0.75rem; }
.table-container[b-bnhh0igcl2] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px; overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-bnhh0igcl2] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface); border: 1px solid var(--border-color);
    border-radius: 8px;
}
.footer-left[b-bnhh0igcl2] { display: flex; align-items: center; gap: 1rem; }
.results-text[b-bnhh0igcl2] { font-size: 0.8rem; color: var(--text-secondary); }
.page-size-selector[b-bnhh0igcl2] { display: flex; align-items: center; gap: 0.3rem; font-size: 0.8rem; color: var(--text-secondary); }
.page-size-selector select[b-bnhh0igcl2] {
    height: 26px; padding: 0 0.3rem;
    border: 1px solid var(--border-color); border-radius: 4px;
    background: var(--bg-surface); font-size: 0.8rem;
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-bnhh0igcl2] { gap: 0.375rem; }
    .filter-item[b-bnhh0igcl2] { min-width: 100px; }
}
@media (max-width: 768px) {
    .navigation-bar[b-bnhh0igcl2] { flex-direction: column; align-items: stretch; }
    .tabs-inline[b-bnhh0igcl2], .mode-toggle[b-bnhh0igcl2] { width: 100%; overflow-x: auto; }
    .search-inline[b-bnhh0igcl2] { min-width: 100%; max-width: none; }
    .filter-item[b-bnhh0igcl2] { min-width: 100%; max-width: none; }
    .list-footer[b-bnhh0igcl2] { flex-direction: column; gap: 0.5rem; }
}
@media (max-width: 480px) {
    .tab-compact span:first-child[b-bnhh0igcl2] { display: none; }
    .mode-btn span[b-bnhh0igcl2] { display: none; }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .navigation-bar[b-bnhh0igcl2],
[data-bs-theme="dark"] .table-container[b-bnhh0igcl2],
[data-bs-theme="dark"] .list-footer[b-bnhh0igcl2] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .tabs-inline[b-bnhh0igcl2],
[data-bs-theme="dark"] .mode-toggle[b-bnhh0igcl2] {
    background: var(--bg-surface-tertiary);
}

[data-bs-theme="dark"] .nav-search-box[b-bnhh0igcl2],
[data-bs-theme="dark"] .filter-toggle-btn[b-bnhh0igcl2],
[data-bs-theme="dark"] .refresh-btn[b-bnhh0igcl2],
[data-bs-theme="dark"] .adv-filter-select[b-bnhh0igcl2],
[data-bs-theme="dark"] .page-size-selector select[b-bnhh0igcl2] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .mode-btn.active[b-bnhh0igcl2],
[data-bs-theme="dark"] .tab-compact.active[b-bnhh0igcl2] {
    background: var(--bg-surface);
    color: var(--text-primary);
}

[data-bs-theme="dark"] .results-text[b-bnhh0igcl2] {
    color: var(--text-muted);
}

[data-bs-theme="dark"][b-bnhh0igcl2]  .pay-code,
[data-bs-theme="dark"][b-bnhh0igcl2]  .text-muted {
    color: var(--text-muted);
}

[data-bs-theme="dark"][b-bnhh0igcl2]  .code-badge {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

[data-bs-theme="dark"][b-bnhh0igcl2]  .row-owing {
    background: rgba(239, 68, 68, 0.06);
}

[data-bs-theme="dark"][b-bnhh0igcl2]  .row-credit {
    background: rgba(16, 185, 129, 0.06);
}

[data-bs-theme="dark"][b-bnhh0igcl2]  .row-owing:hover {
    background: rgba(239, 68, 68, 0.1) !important;
}

[data-bs-theme="dark"][b-bnhh0igcl2]  .row-credit:hover {
    background: rgba(16, 185, 129, 0.1) !important;
}
/* /Pages/Accounting/StudentStatement.razor.rz.scp.css */
/* ============ Filter Bar (screen only) ============ */
.filter-bar[b-6gdwgct6r4] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.filter-group[b-6gdwgct6r4] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.filter-label[b-6gdwgct6r4] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

.filter-label i[b-6gdwgct6r4] { font-size: 0.875rem; }

.filter-date[b-6gdwgct6r4] {
    height: 34px;
    padding: 0 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
}

.filter-apply-btn[b-6gdwgct6r4], .filter-clear-btn[b-6gdwgct6r4] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    height: 34px;
    padding: 0 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
}

.filter-apply-btn[b-6gdwgct6r4] {
    background: var(--theme-primary);
    color: white;
    border-color: var(--theme-primary);
}

.filter-apply-btn:hover[b-6gdwgct6r4] { opacity: 0.9; }

.filter-clear-btn[b-6gdwgct6r4] {
    background: var(--bg-surface);
    color: var(--text-secondary);
}

.filter-clear-btn:hover[b-6gdwgct6r4] { background: var(--bg-surface-secondary); }

.spinner-sm[b-6gdwgct6r4] {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-6gdwgct6r4 0.6s linear infinite;
}

@keyframes spin-b-6gdwgct6r4 { to { transform: rotate(360deg); } }

/* ============ Statement Paper ============ */
.statement-paper[b-6gdwgct6r4] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 1.5rem;
    margin-bottom: 0.75rem;
}

/* ============ Company Header (print only) ============ */
.stmt-company-header[b-6gdwgct6r4] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 2px solid var(--text-primary);
    margin-bottom: 0.75rem;
}

.stmt-company-logo[b-6gdwgct6r4] {
    width: 60px;
    height: 60px;
    object-fit: contain;
}

.stmt-company-name[b-6gdwgct6r4] {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 0;
    line-height: 1.2;
}

.stmt-company-address[b-6gdwgct6r4], .stmt-company-contact[b-6gdwgct6r4] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin: 0.125rem 0 0;
}

/* ============ Statement Title ============ */
.stmt-title-bar[b-6gdwgct6r4] {
    text-align: center;
    margin-bottom: 1rem;
}

.stmt-title[b-6gdwgct6r4] {
    font-size: 1.125rem;
    font-weight: 700;
    letter-spacing: 0.08em;
    color: var(--text-primary);
    margin: 0 0 0.25rem;
}

.stmt-period[b-6gdwgct6r4] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.stmt-print-date[b-6gdwgct6r4] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    margin-top: 0.25rem;
}

/* ============ Student Info Block ============ */
.stmt-student-info[b-6gdwgct6r4] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 0.75rem 1rem;
    margin-bottom: 1rem;
    background: var(--bg-surface-secondary);
}

.stmt-info-row[b-6gdwgct6r4] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 0.5rem 1.5rem;
}

.stmt-info-row + .stmt-info-row[b-6gdwgct6r4] {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--border-color);
}

.stmt-info-cell[b-6gdwgct6r4] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.stmt-info-label[b-6gdwgct6r4] {
    font-size: 0.625rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-muted);
}

.stmt-info-value[b-6gdwgct6r4] {
    font-size: 0.875rem;
    color: var(--text-primary);
}

.stmt-mono[b-6gdwgct6r4] { font-family: monospace; }

/* ============ Opening Balance ============ */
.stmt-opening-balance[b-6gdwgct6r4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 1rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    margin-bottom: 0.75rem;
}

.stmt-ob-label[b-6gdwgct6r4] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.stmt-ob-amount[b-6gdwgct6r4] {
    font-size: 0.9375rem;
    font-weight: 700;
    font-family: var(--font-mono, monospace);
}

.stmt-ob-amount.owing[b-6gdwgct6r4] { color: var(--theme-danger-emphasis); }
.stmt-ob-amount.credit[b-6gdwgct6r4] { color: var(--theme-success); }

/* ============ Transaction Table ============ */
.stmt-table-wrap[b-6gdwgct6r4] {
    overflow-x: auto;
    margin-bottom: 0.75rem;
}

.stmt-table[b-6gdwgct6r4] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.stmt-table thead[b-6gdwgct6r4] {
    background: var(--bg-surface-tertiary);
}

.stmt-table th[b-6gdwgct6r4] {
    padding: 0.5rem 0.625rem;
    text-align: left;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    color: var(--text-secondary);
    border-bottom: 2px solid var(--border-color);
    white-space: nowrap;
}

.stmt-table td[b-6gdwgct6r4] {
    padding: 0.4375rem 0.625rem;
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

.stmt-table tbody tr:hover[b-6gdwgct6r4] {
    background: var(--bg-surface-secondary);
}

.col-date[b-6gdwgct6r4] { width: 100px; }
.col-desc[b-6gdwgct6r4] { min-width: 180px; }
.col-ref[b-6gdwgct6r4] { width: 120px; font-family: monospace; font-size: 0.75rem; }
.col-type[b-6gdwgct6r4] { width: 110px; }
.col-amount[b-6gdwgct6r4] { width: 110px; text-align: right; font-family: var(--font-mono, monospace); }
.col-balance[b-6gdwgct6r4] { width: 120px; text-align: right; font-weight: 600; font-family: var(--font-mono, monospace); }

.col-balance.owing[b-6gdwgct6r4] { color: var(--theme-danger-emphasis); }
.col-balance.credit[b-6gdwgct6r4] { color: var(--theme-success); }

th.col-amount[b-6gdwgct6r4], th.col-balance[b-6gdwgct6r4] { text-align: right; }

.stmt-cancelled[b-6gdwgct6r4] {
    opacity: 0.5;
    text-decoration: line-through;
}

.stmt-rev-tag[b-6gdwgct6r4] {
    display: inline-block;
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--theme-gray-400);
    margin-left: 0.25rem;
}

.stmt-empty[b-6gdwgct6r4] {
    text-align: center;
    padding: 2rem !important;
    color: var(--text-muted);
    font-style: italic;
}

.stmt-totals-row[b-6gdwgct6r4] {
    background: var(--bg-surface-tertiary);
}

.stmt-totals-row td[b-6gdwgct6r4] {
    padding: 0.5rem 0.625rem;
    border-top: 2px solid var(--border-color);
    border-bottom: none;
    font-family: var(--font-mono, monospace);
}

.stmt-totals-label[b-6gdwgct6r4] {
    text-align: right;
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-secondary);
    font-family: inherit;
}

/* ============ Closing Summary ============ */
.stmt-summary[b-6gdwgct6r4] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow: hidden;
}

.stmt-summary-grid[b-6gdwgct6r4] {
    display: grid;
    grid-template-columns: 1fr;
}

.stmt-summary-item[b-6gdwgct6r4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 1rem;
    border-bottom: 1px solid var(--border-color);
}

.stmt-summary-item:last-child[b-6gdwgct6r4] { border-bottom: none; }

.stmt-sum-label[b-6gdwgct6r4] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.stmt-sum-value[b-6gdwgct6r4] {
    font-size: 0.9375rem;
    font-weight: 700;
    font-family: var(--font-mono, monospace);
    color: var(--text-primary);
}

.stmt-sum-value.paid[b-6gdwgct6r4] { color: var(--theme-success); }
.stmt-sum-value.muted[b-6gdwgct6r4] { color: var(--text-muted); }

.stmt-summary-item.closing[b-6gdwgct6r4] {
    background: var(--bg-surface-tertiary);
    padding: 0.75rem 1rem;
}

.stmt-summary-item.closing .stmt-sum-label[b-6gdwgct6r4] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

.stmt-summary-item.closing .stmt-sum-value[b-6gdwgct6r4] { font-size: 1.0625rem; }

.stmt-summary-item.owing .stmt-sum-value[b-6gdwgct6r4] { color: var(--theme-danger-emphasis); }
.stmt-summary-item.cleared .stmt-sum-value[b-6gdwgct6r4] { color: var(--theme-success); }

/* ============ Print Footer ============ */
.stmt-footer[b-6gdwgct6r4] {
    margin-top: 1.5rem;
    text-align: center;
    font-size: 0.6875rem;
    color: var(--text-muted);
}

.stmt-footer-line[b-6gdwgct6r4] {
    border-top: 1px solid var(--border-color);
    margin-bottom: 0.5rem;
}

.stmt-footer p[b-6gdwgct6r4] { margin: 0.25rem 0; }

/* ============ Screen: hide print-only ============ */
.print-only[b-6gdwgct6r4] { display: none; }

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .filter-bar[b-6gdwgct6r4] { flex-direction: column; align-items: stretch; }
    .filter-group[b-6gdwgct6r4] { width: 100%; }
    .filter-date[b-6gdwgct6r4] { width: 100%; }
    .stmt-info-row[b-6gdwgct6r4] { grid-template-columns: 1fr 1fr; }
    .statement-paper[b-6gdwgct6r4] { padding: 1rem; }
}

@media (max-width: 480px) {
    .stmt-info-row[b-6gdwgct6r4] { grid-template-columns: 1fr; }
}

/* ============ Print Styles ============ */
@media print {
    .no-print[b-6gdwgct6r4] { display: none !important; }
    .print-only[b-6gdwgct6r4] { display: block !important; }

    .statement-paper[b-6gdwgct6r4] {
        border: none;
        border-radius: 0;
        box-shadow: none;
        padding: 0;
        margin: 0;
        background: white;
    }

    .stmt-student-info[b-6gdwgct6r4] {
        background: #f9f9f9;
        border-color: #ccc;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .stmt-opening-balance[b-6gdwgct6r4] {
        background: #f5f5f5;
        border-color: #ccc;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .stmt-table thead[b-6gdwgct6r4] {
        background: #f0f0f0;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .stmt-table th[b-6gdwgct6r4] { border-bottom-color: #333; }
    .stmt-table td[b-6gdwgct6r4] { border-bottom-color: #ddd; }

    .stmt-totals-row[b-6gdwgct6r4] {
        background: #f0f0f0;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .stmt-totals-row td[b-6gdwgct6r4] { border-top-color: #333; }

    .stmt-summary-item.closing[b-6gdwgct6r4] {
        background: #f0f0f0;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .col-balance.owing[b-6gdwgct6r4], .stmt-ob-amount.owing[b-6gdwgct6r4], .stmt-summary-item.owing .stmt-sum-value[b-6gdwgct6r4] {
        color: #dc2626 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .col-balance.credit[b-6gdwgct6r4], .stmt-ob-amount.credit[b-6gdwgct6r4], .stmt-summary-item.cleared .stmt-sum-value[b-6gdwgct6r4], .stmt-sum-value.paid[b-6gdwgct6r4] {
        color: #10b981 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .stmt-cancelled[b-6gdwgct6r4] {
        opacity: 0.5;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .stmt-company-header[b-6gdwgct6r4] {
    border-bottom-color: var(--text-primary);
}

[data-bs-theme="dark"] .stmt-company-address[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-company-contact[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-print-date[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-footer[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-info-label[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-period[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-empty[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-ob-label[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-sum-label[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-totals-label[b-6gdwgct6r4],
[data-bs-theme="dark"] .filter-label[b-6gdwgct6r4] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .stmt-footer-line[b-6gdwgct6r4] {
    border-top-color: var(--border-color);
}

[data-bs-theme="dark"] .filter-bar[b-6gdwgct6r4],
[data-bs-theme="dark"] .statement-paper[b-6gdwgct6r4] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .stmt-student-info[b-6gdwgct6r4] {
    background: var(--bg-surface-secondary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .stmt-opening-balance[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-table thead[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-totals-row[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-summary-item.closing[b-6gdwgct6r4] {
    background: var(--bg-surface-tertiary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .filter-date[b-6gdwgct6r4],
[data-bs-theme="dark"] .filter-clear-btn[b-6gdwgct6r4] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .stmt-title[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-info-value[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-sum-value[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-summary-item.closing .stmt-sum-label[b-6gdwgct6r4] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .stmt-table td[b-6gdwgct6r4] {
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .stmt-table th[b-6gdwgct6r4] {
    color: var(--text-muted);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .stmt-table tbody tr:hover[b-6gdwgct6r4] {
    background: var(--bg-surface-secondary);
}

[data-bs-theme="dark"] .stmt-summary[b-6gdwgct6r4],
[data-bs-theme="dark"] .stmt-summary-item[b-6gdwgct6r4] {
    border-color: var(--border-color);
}

/* /Pages/Accounting/TrialBalance.razor.rz.scp.css */
/* ============ Report Content ============ */
.report-content[b-gn2vgv29n5] {
    min-height: 300px;
}

.table-container[b-gn2vgv29n5] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-gn2vgv29n5] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

/* ============ Report Totals ============ */
.report-totals[b-gn2vgv29n5] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-gn2vgv29n5] {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--border-color);
}

.totals-label[b-gn2vgv29n5] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    flex: 1;
}

.totals-value[b-gn2vgv29n5] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 150px;
    text-align: right;
}

.totals-value.debit[b-gn2vgv29n5] {
    color: var(--theme-primary);
}

.totals-value.credit[b-gn2vgv29n5] {
    color: var(--theme-success);
}

.balance-status[b-gn2vgv29n5] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 0 0;
    font-size: 0.8125rem;
    font-weight: 600;
}

.balance-status.balanced[b-gn2vgv29n5] {
    color: var(--theme-success);
}

.balance-status.unbalanced[b-gn2vgv29n5] {
    color: var(--theme-danger);
}

.balance-status i[b-gn2vgv29n5] {
    font-size: 1.125rem;
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .totals-row[b-gn2vgv29n5] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-gn2vgv29n5] {
        min-width: auto;
    }
}
/* /Pages/Accounting/VoucherSummary.razor.rz.scp.css */
/* ============ Voucher Summary Cards ============ */
.voucher-summary-cards[b-d8rsp48nx5] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.voucher-type-card[b-d8rsp48nx5] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    transition: box-shadow 0.2s ease;
}

.voucher-type-card:hover[b-d8rsp48nx5] {
    box-shadow: var(--shadow-sm);
}

.voucher-type-icon[b-d8rsp48nx5] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-primary);
    flex-shrink: 0;
    font-size: 1rem;
}

.voucher-type-info[b-d8rsp48nx5] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    flex: 1;
    min-width: 0;
}

.voucher-type-name[b-d8rsp48nx5] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.voucher-type-count[b-d8rsp48nx5] {
    font-size: 0.6875rem;
    color: var(--text-secondary);
}

.voucher-type-amounts[b-d8rsp48nx5] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    text-align: right;
}

.voucher-amount[b-d8rsp48nx5] {
    font-size: 0.75rem;
    font-weight: 600;
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    white-space: nowrap;
}

.voucher-amount.debit[b-d8rsp48nx5] {
    color: var(--theme-primary);
}

.voucher-amount.credit[b-d8rsp48nx5] {
    color: var(--theme-success);
}

/* ============ Report Content ============ */
.report-content[b-d8rsp48nx5] {
    min-height: 300px;
}

.table-container[b-d8rsp48nx5] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.amount-cell[b-d8rsp48nx5] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.8125rem;
}

.voucher-badge[b-d8rsp48nx5] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.1875rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.voucher-badge i[b-d8rsp48nx5] {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

.code-text[b-d8rsp48nx5] {
    font-family: monospace;
    font-size: 0.8125rem;
    color: var(--theme-primary);
    font-weight: 600;
}

/* ============ Report Totals ============ */
.report-totals[b-d8rsp48nx5] {
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.totals-row[b-d8rsp48nx5] {
    display: flex;
    align-items: center;
    gap: 2rem;
    padding: 0.75rem 0;
    border-bottom: 2px solid var(--border-color);
}

.totals-label[b-d8rsp48nx5] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    flex: 1;
}

.totals-value[b-d8rsp48nx5] {
    font-family: 'SF Mono', 'Cascadia Code', 'Consolas', monospace;
    font-size: 0.9375rem;
    font-weight: 700;
    min-width: 150px;
    text-align: right;
}

.totals-value.debit[b-d8rsp48nx5] {
    color: var(--theme-primary);
}

.totals-value.credit[b-d8rsp48nx5] {
    color: var(--theme-success);
}

/* DataGrid Overrides */
[b-d8rsp48nx5] .rz-datatable {
    border: none;
}

[b-d8rsp48nx5] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-d8rsp48nx5] .rz-datatable-data > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-d8rsp48nx5] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .voucher-summary-cards[b-d8rsp48nx5] {
        grid-template-columns: 1fr;
    }

    .totals-row[b-d8rsp48nx5] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .totals-value[b-d8rsp48nx5] {
        min-width: auto;
    }
}

/* /Pages/Accounting/VoucherWorkflowDetail.razor.rz.scp.css */
/* ============ Info Section ============ */
.info-section[b-y77fskvsel] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 1.25rem;
    margin-bottom: 1.5rem;
}

.info-grid[b-y77fskvsel] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
    gap: 1rem;
}

.info-item[b-y77fskvsel] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.info-label[b-y77fskvsel] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.info-label i[b-y77fskvsel] {
    font-size: 0.875rem;
}

.info-value[b-y77fskvsel] {
    font-size: 0.9375rem;
    color: var(--text-primary);
}

/* ============ Status Badges ============ */
.status-badge[b-y77fskvsel] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-y77fskvsel] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-y77fskvsel] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-y77fskvsel] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-y77fskvsel] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-y77fskvsel] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Section Title ============ */
.section-title[b-y77fskvsel] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 1rem;
}

.section-title i[b-y77fskvsel] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

/* ============ Timeline Section ============ */
.timeline-section[b-y77fskvsel] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

/* ============ Workflow Timeline ============ */
.workflow-timeline[b-y77fskvsel] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding-left: 0.5rem;
}

.timeline-stage[b-y77fskvsel] {
    display: flex;
    gap: 1rem;
    position: relative;
    min-height: 80px;
}

.timeline-stage:last-child[b-y77fskvsel] {
    min-height: auto;
}

/* ============ Timeline Marker ============ */
.timeline-marker[b-y77fskvsel] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    width: 40px;
}

.marker-dot[b-y77fskvsel] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    flex-shrink: 0;
    position: relative;
    z-index: 2;
    transition: all 0.3s ease;
}

.stage-waiting .marker-dot[b-y77fskvsel] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
    border: 2px solid var(--border-color);
}

.stage-current .marker-dot[b-y77fskvsel] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
    border: 2px solid var(--theme-info);
}

.stage-accepted .marker-dot[b-y77fskvsel] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
    border: 2px solid var(--theme-success);
}

.stage-rejected .marker-dot[b-y77fskvsel] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
    border: 2px solid var(--theme-danger);
}

/* Pulse animation for current stage */
.pulse-ring[b-y77fskvsel] {
    position: absolute;
    inset: -4px;
    border-radius: 50%;
    border: 2px solid var(--theme-info);
    animation: pulse-ring-b-y77fskvsel 2s ease-out infinite;
}

@keyframes pulse-ring-b-y77fskvsel {
    0% {
        transform: scale(1);
        opacity: 0.8;
    }
    100% {
        transform: scale(1.4);
        opacity: 0;
    }
}

/* ============ Timeline Line ============ */
.timeline-line[b-y77fskvsel] {
    width: 2px;
    flex: 1;
    min-height: 20px;
    margin: 4px 0;
    background: var(--border-color);
}

.timeline-line.stage-accepted[b-y77fskvsel] {
    background: var(--theme-success);
}

.timeline-line.stage-rejected[b-y77fskvsel] {
    background: var(--theme-danger);
}

.timeline-line.stage-current[b-y77fskvsel] {
    background: linear-gradient(to bottom, var(--theme-info), var(--border-color));
}

/* ============ Timeline Content ============ */
.timeline-content[b-y77fskvsel] {
    flex: 1;
    padding-bottom: 1.5rem;
}

.timeline-stage:last-child .timeline-content[b-y77fskvsel] {
    padding-bottom: 0;
}

.stage-header[b-y77fskvsel] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.stage-title-row[b-y77fskvsel] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.stage-level[b-y77fskvsel] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.stage-name[b-y77fskvsel] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

/* ============ State Badges ============ */
.state-badge[b-y77fskvsel] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
}

.state-badge.waiting[b-y77fskvsel],
.state-badge.stage-waiting[b-y77fskvsel] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.state-badge.in-progress[b-y77fskvsel],
.state-badge.stage-current[b-y77fskvsel] {
    background: rgba(59, 130, 246, 0.12);
    color: var(--theme-info);
}

.state-badge.accepted[b-y77fskvsel],
.state-badge.stage-accepted[b-y77fskvsel] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success);
}

.state-badge.rejected[b-y77fskvsel],
.state-badge.stage-rejected[b-y77fskvsel] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--theme-danger);
}

/* Map StateName text to badge styles */
.state-badge.Waiting[b-y77fskvsel] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.state-badge.InProgress[b-y77fskvsel] {
    background: rgba(59, 130, 246, 0.12);
    color: var(--theme-info);
}

.state-badge.Completed[b-y77fskvsel] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success);
}

/* ============ Stage Details ============ */
.stage-details[b-y77fskvsel] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.stage-detail-item[b-y77fskvsel] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.stage-detail-item i[b-y77fskvsel] {
    font-size: 0.875rem;
    flex-shrink: 0;
    margin-top: 1px;
    color: var(--text-muted);
}

.stage-detail-item strong[b-y77fskvsel] {
    color: var(--text-primary);
}

.stage-detail-item.timestamp[b-y77fskvsel] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* ============ Star Rating ============ */
.stage-rating[b-y77fskvsel] {
    display: inline-flex;
    gap: 0.125rem;
}

.stage-rating .star-filled[b-y77fskvsel] {
    color: var(--theme-warning);
    font-size: 0.875rem;
}

.stage-rating .star-empty[b-y77fskvsel] {
    color: var(--border-color);
    font-size: 0.875rem;
}

/* ============ Timeline Empty ============ */
.timeline-empty[b-y77fskvsel] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.timeline-empty i[b-y77fskvsel] {
    font-size: 1.25rem;
}

/* ============ Process Section ============ */
.process-section[b-y77fskvsel] {
    background: var(--bg-surface);
    border: 2px solid var(--theme-primary);
    border-radius: 12px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
    animation: slideIn-b-y77fskvsel 0.3s ease-out;
}

@keyframes slideIn-b-y77fskvsel {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

.process-header[b-y77fskvsel] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1.25rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

.process-title[b-y77fskvsel] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.process-title i[b-y77fskvsel] {
    color: var(--theme-primary);
    font-size: 1.25rem;
}

.process-title h3[b-y77fskvsel] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
}

.final-stage-badge[b-y77fskvsel] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger-emphasis);
    animation: pulse-b-y77fskvsel 2s ease-in-out infinite;
}

@keyframes pulse-b-y77fskvsel {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.7; }
}

.decision-label[b-y77fskvsel] {
    font-weight: 700 !important;
    margin-bottom: 0.375rem !important;
}

.category-fields[b-y77fskvsel] {
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border-left: 3px solid var(--theme-primary);
}

.authorization-fields[b-y77fskvsel] {
    border-left-color: var(--theme-danger-emphasis);
}

.submission-fields[b-y77fskvsel] {
    border-left-color: var(--theme-indigo);
}

.form-hint[b-y77fskvsel] {
    font-size: 0.75rem;
    margin: 0.375rem 0 0 0;
    line-height: 1.4;
}

.hint-success[b-y77fskvsel] {
    color: var(--theme-success-emphasis);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.hint-danger[b-y77fskvsel] {
    color: var(--theme-danger-emphasis);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* ============ Process Form ============ */
.process-form[b-y77fskvsel] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 600px;
}

/* ============ Accept/Reject Toggle ============ */
.accept-reject-toggle[b-y77fskvsel] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    padding: 0.25rem;
    gap: 0.25rem;
}

.toggle-option[b-y77fskvsel] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    background: transparent;
    color: var(--text-secondary);
}

.toggle-option:hover[b-y77fskvsel] {
    color: var(--text-primary);
}

.toggle-option.accept.active[b-y77fskvsel] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
    box-shadow: 0 1px 3px rgba(16, 185, 129, 0.2);
}

.toggle-option.reject.active[b-y77fskvsel] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
    box-shadow: 0 1px 3px rgba(239, 68, 68, 0.2);
}

.toggle-option i[b-y77fskvsel] {
    font-size: 1rem;
}

/* ============ Form Elements ============ */
.form-group[b-y77fskvsel] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-label[b-y77fskvsel] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.form-textarea[b-y77fskvsel] {
    padding: 0.625rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    font-family: inherit;
    resize: vertical;
    transition: border-color 0.15s ease;
}

.form-textarea:focus[b-y77fskvsel] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.form-textarea[b-y77fskvsel]::placeholder {
    color: var(--text-muted);
}

.form-input[b-y77fskvsel] {
    height: 38px;
    padding: 0 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    transition: border-color 0.15s ease;
}

.form-input:focus[b-y77fskvsel] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.form-input[b-y77fskvsel]::placeholder {
    color: var(--text-muted);
}

.form-select-native[b-y77fskvsel] {
    height: 38px;
    padding: 0 2rem 0 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.form-select-native:focus[b-y77fskvsel] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ============ Star Rating Input ============ */
.star-rating-input[b-y77fskvsel] {
    display: flex;
    gap: 0.25rem;
}

.star-btn[b-y77fskvsel] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.15s ease;
    color: var(--border-color);
    font-size: 1.25rem;
}

.star-btn:hover[b-y77fskvsel] {
    color: var(--theme-warning);
    transform: scale(1.15);
}

.star-btn.active[b-y77fskvsel] {
    color: var(--theme-warning);
}

.star-btn.active i[b-y77fskvsel] {
    filter: drop-shadow(0 1px 2px rgba(245, 158, 11, 0.3));
}

/* ============ Form Actions ============ */
.form-actions[b-y77fskvsel] {
    display: flex;
    justify-content: flex-start;
    padding-top: 0.5rem;
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .info-grid[b-y77fskvsel] {
        grid-template-columns: repeat(2, 1fr);
    }

    .stage-header[b-y77fskvsel] {
        flex-direction: column;
        gap: 0.375rem;
    }

    .process-form[b-y77fskvsel] {
        max-width: 100%;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .info-grid[b-y77fskvsel] {
        grid-template-columns: 1fr;
    }

    .accept-reject-toggle[b-y77fskvsel] {
        flex-direction: column;
    }

    .timeline-stage[b-y77fskvsel] {
        gap: 0.75rem;
    }

    .timeline-marker[b-y77fskvsel] {
        width: 32px;
    }

    .marker-dot[b-y77fskvsel] {
        width: 30px;
        height: 30px;
        font-size: 0.75rem;
    }
}
/* /Pages/Accounting/VoucherWorkflowList.razor.rz.scp.css */
/* ============ Voucher Number ============ */
.voucher-number[b-nuserp8vev] {
    font-weight: 600;
    color: var(--theme-primary);
    font-size: 0.875rem;
}

/* ============ Status Badges ============ */
.status-badge[b-nuserp8vev] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-nuserp8vev] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-nuserp8vev] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-nuserp8vev] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-nuserp8vev] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-nuserp8vev] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ State Badges ============ */
.state-badge[b-nuserp8vev] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.state-badge.waiting[b-nuserp8vev] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.state-badge.in-progress[b-nuserp8vev] {
    background: rgba(59, 130, 246, 0.12);
    color: var(--theme-info);
}

.state-badge.accepted[b-nuserp8vev] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success);
}

.state-badge.rejected[b-nuserp8vev] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--theme-danger);
}

/* ============ Progress Cell ============ */
.progress-cell[b-nuserp8vev] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.progress-mini[b-nuserp8vev] {
    width: 100%;
    height: 6px;
    background: var(--bg-surface-tertiary);
    border-radius: 3px;
    overflow: hidden;
}

.progress-mini-bar[b-nuserp8vev] {
    height: 100%;
    background: var(--theme-primary);
    border-radius: 3px;
    transition: width 0.3s ease;
    min-width: 2px;
}

.progress-mini-bar.completed[b-nuserp8vev] {
    background: var(--theme-success);
}

.progress-mini-bar.rejected[b-nuserp8vev] {
    background: var(--theme-danger);
}

.progress-text[b-nuserp8vev] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    white-space: nowrap;
}

/* ============ Assigned User ============ */
.assigned-user[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.user-avatar-sm[b-nuserp8vev] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 600;
    color: white;
    background: var(--theme-primary);
    flex-shrink: 0;
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-nuserp8vev] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-nuserp8vev] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-nuserp8vev] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-nuserp8vev] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-nuserp8vev] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-nuserp8vev] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-nuserp8vev] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-nuserp8vev] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-nuserp8vev] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-nuserp8vev],
.tab-compact.active .tab-badge.warning[b-nuserp8vev],
.tab-compact.active .tab-badge.danger[b-nuserp8vev],
.tab-compact.active .tab-badge.info[b-nuserp8vev] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-nuserp8vev] {
    flex: 1;
    min-width: 130px;
    max-width: 260px;
}

.nav-search-box[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-nuserp8vev] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-nuserp8vev] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-nuserp8vev] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-nuserp8vev]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-nuserp8vev] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-nuserp8vev] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Filter Toggle ============ */
.filter-toggle-btn[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-nuserp8vev] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-nuserp8vev] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-nuserp8vev] {
    font-size: 1rem;
}

.filter-active-dot[b-nuserp8vev] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-nuserp8vev] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-nuserp8vev] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-nuserp8vev] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-nuserp8vev] {
    font-size: 1rem;
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-nuserp8vev] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-nuserp8vev] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 140px;
    min-width: 120px;
    max-width: 200px;
}

.advanced-filter-label[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
    line-height: 1;
}

.advanced-filter-label i[b-nuserp8vev] {
    font-size: 0.75rem;
}

.adv-filter-select[b-nuserp8vev] {
    height: 30px;
    padding: 0.125rem 1.75rem 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 0;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
}

.adv-filter-select:focus[b-nuserp8vev] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-nuserp8vev] {
    display: flex;
    align-items: flex-end;
    gap: 0.375rem;
}

.adv-clear-btn[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 30px;
}

.adv-clear-btn:hover[b-nuserp8vev] {
    background: var(--theme-danger);
    color: white;
}

/* ============ Content Area ============ */
.content-area[b-nuserp8vev] {
    min-height: 200px;
}

.table-container[b-nuserp8vev] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-nuserp8vev] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-nuserp8vev] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-nuserp8vev] {
    color: var(--text-primary);
}

.page-size-selector[b-nuserp8vev] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-nuserp8vev] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-nuserp8vev] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-nuserp8vev] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-nuserp8vev] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-nuserp8vev 0.6s linear infinite;
}

@keyframes spin-b-nuserp8vev {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-nuserp8vev] {
        flex-wrap: wrap;
    }

    .search-inline[b-nuserp8vev] {
        max-width: none;
        flex: 1 1 150px;
    }

    .tab-compact[b-nuserp8vev] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-nuserp8vev] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-nuserp8vev] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-nuserp8vev] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn[b-nuserp8vev] {
        order: 3;
    }

    .refresh-btn[b-nuserp8vev] {
        order: 4;
    }

    .advanced-filters-bar[b-nuserp8vev] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-nuserp8vev] {
        max-width: none;
        flex: 1 1 100%;
    }

    .list-footer[b-nuserp8vev] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-nuserp8vev] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-nuserp8vev] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-nuserp8vev] {
        display: none;
    }

    .tab-compact[b-nuserp8vev] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-nuserp8vev] {
        display: none;
    }
}
/* /Pages/Accounting/WorkflowDocumentSettings.razor.rz.scp.css */
/* Document name cell */
.doc-name-cell[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.doc-icon[b-2ss2m5c1be] {
    color: var(--theme-primary);
    font-size: 1.1rem;
}

.doc-name[b-2ss2m5c1be] {
    font-weight: 600;
}

/* Workflow step badges */
.workflow-steps[b-2ss2m5c1be] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    align-items: center;
}

.step-badge[b-2ss2m5c1be] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 3px 10px;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 500;
}

.step-badge.requisition[b-2ss2m5c1be] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
}

.step-badge.approval[b-2ss2m5c1be] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.step-badge.verification[b-2ss2m5c1be] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.step-badge.review[b-2ss2m5c1be] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.step-badge.authorization[b-2ss2m5c1be] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.no-steps[b-2ss2m5c1be] {
    color: var(--text-muted);
    font-style: italic;
    font-size: 0.85rem;
}

/* Table actions */
.table-actions[b-2ss2m5c1be] {
    display: flex;
    gap: 6px;
    align-items: center;
}

.action-btn[b-2ss2m5c1be] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    border: none;
    cursor: pointer;
    font-size: 1rem;
    transition: all 0.15s;
}

.action-btn.danger[b-2ss2m5c1be] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.action-btn.danger:hover[b-2ss2m5c1be] {
    background: var(--theme-danger);
    color: white;
}

/* Content area */
.content-area[b-2ss2m5c1be] {
    padding: 0;
}

.table-container[b-2ss2m5c1be] {
    background: var(--card-bg, white);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

/* List footer */
.list-footer[b-2ss2m5c1be] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 0;
    margin-top: 8px;
}

.footer-left[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.results-text[b-2ss2m5c1be] {
    font-size: 0.85rem;
    color: var(--text-muted);
}

/* Requirement modal */
.req-doc-name[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 8px;
}

.req-description[b-2ss2m5c1be] {
    font-size: 0.85rem;
    color: var(--text-muted);
    margin-bottom: 16px;
}

.workflow-config-list[b-2ss2m5c1be] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.workflow-step-config[b-2ss2m5c1be] {
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 12px 16px;
    transition: all 0.2s;
    background: var(--card-bg, white);
}

.workflow-step-config.active[b-2ss2m5c1be] {
    border-color: var(--theme-primary);
    background: rgba(99, 102, 241, 0.03);
}

.step-toggle[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.step-info[b-2ss2m5c1be] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.step-title[b-2ss2m5c1be] {
    font-weight: 600;
    font-size: 0.9rem;
    display: flex;
    align-items: center;
    gap: 6px;
}

.step-desc[b-2ss2m5c1be] {
    font-size: 0.8rem;
    color: var(--text-muted);
}

/* Form */
.form-group[b-2ss2m5c1be] {
    margin-bottom: 16px;
}

.form-label[b-2ss2m5c1be] {
    display: block;
    font-weight: 500;
    font-size: 0.85rem;
    margin-bottom: 6px;
    color: var(--text-primary);
}

.form-label .required[b-2ss2m5c1be] {
    color: var(--theme-danger);
}

.form-input[b-2ss2m5c1be] {
    width: 100%;
    padding: 8px 12px;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.9rem;
    background: var(--input-bg, white);
    color: var(--text-primary);
    transition: border-color 0.15s;
}

.form-input:focus[b-2ss2m5c1be] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.1);
}

textarea.form-input[b-2ss2m5c1be] {
    resize: vertical;
}

.text-muted[b-2ss2m5c1be] {
    color: var(--text-muted);
    font-size: 0.85rem;
}

/* Responsive */
@media (max-width: 768px) {
    .table-actions[b-2ss2m5c1be] {
        flex-wrap: wrap;
    }

    .workflow-steps[b-2ss2m5c1be] {
        gap: 4px;
    }

    .step-badge[b-2ss2m5c1be] {
        font-size: 0.7rem;
        padding: 2px 6px;
    }
}

.step-arrow[b-2ss2m5c1be] {
    color: var(--text-muted);
    font-size: 0.6875rem;
    margin: 0 0.125rem;
}

.step-badge.cat-generic[b-2ss2m5c1be] { background: rgba(16, 185, 129, 0.1); color: var(--theme-success-emphasis); }
.step-badge.cat-submission[b-2ss2m5c1be] { background: rgba(99, 102, 241, 0.1); color: var(--theme-indigo); }
.step-badge.cat-authorization[b-2ss2m5c1be] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger-emphasis); }

/* ============ Pipeline Visual ============ */
.pipeline-visual[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    margin-bottom: 1rem;
    overflow-x: auto;
    flex-wrap: wrap;
}

.pipeline-node[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
    border: 1px solid rgba(99, 102, 241, 0.2);
    transition: all 0.2s ease;
}

.pipeline-node.final[b-2ss2m5c1be] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger-emphasis);
    border-color: rgba(239, 68, 68, 0.3);
}

.pipeline-node.cat-submission[b-2ss2m5c1be] { background: rgba(99, 102, 241, 0.1); color: var(--theme-indigo); border-color: rgba(99, 102, 241, 0.2); }
.pipeline-node.cat-authorization[b-2ss2m5c1be] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger-emphasis); border-color: rgba(239, 68, 68, 0.2); }
.pipeline-node.cat-generic[b-2ss2m5c1be] { background: rgba(16, 185, 129, 0.1); color: var(--theme-success-emphasis); border-color: rgba(16, 185, 129, 0.2); }

.pipeline-arrow[b-2ss2m5c1be] { color: var(--text-muted); font-size: 0.875rem; }

.pipeline-empty[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-muted);
    font-size: 0.875rem;
    font-style: italic;
}

.pipeline-final-badge[b-2ss2m5c1be] {
    color: var(--theme-danger-emphasis);
    font-size: 0.625rem;
}

/* ============ Stage List ============ */
.stage-list[b-2ss2m5c1be] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.stage-item[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    transition: border-color 0.15s, box-shadow 0.15s;
}

.stage-item:hover[b-2ss2m5c1be] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 1px rgba(99, 102, 241, 0.1);
}

.stage-item.final-stage[b-2ss2m5c1be] {
    border-left: 3px solid var(--theme-danger-emphasis);
}

.stage-order[b-2ss2m5c1be] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.125rem;
    min-width: 28px;
}

.order-num[b-2ss2m5c1be] {
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--text-muted);
}

.order-buttons[b-2ss2m5c1be] { display: flex; flex-direction: column; gap: 0; }

.order-btn[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 16px;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    font-size: 0.75rem;
    border-radius: 3px;
}

.order-btn:hover[b-2ss2m5c1be] { background: var(--bg-surface-secondary); color: var(--theme-primary); }

.stage-details[b-2ss2m5c1be] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.stage-name-input[b-2ss2m5c1be] {
    border: 1px solid var(--border-color);
    border-radius: 6px;
    padding: 0.375rem 0.625rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    background: var(--bg-surface);
    width: 100%;
}

.stage-name-input:focus[b-2ss2m5c1be] { outline: none; border-color: var(--theme-primary); }

.stage-config-row[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.stage-config-select[b-2ss2m5c1be] {
    height: 28px;
    padding: 0 0.375rem;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    font-size: 0.75rem;
    color: var(--text-secondary);
    background: var(--bg-surface);
}

.stage-toggle[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
    cursor: pointer;
}

.stage-toggle input[type="checkbox"][b-2ss2m5c1be] { accent-color: var(--theme-primary); }

.stage-delete-btn[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    border-radius: 6px;
    flex-shrink: 0;
}

.stage-delete-btn:hover[b-2ss2m5c1be] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger-emphasis); }

.add-stage-btn[b-2ss2m5c1be] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    width: 100%;
    padding: 0.625rem;
    border: 2px dashed var(--border-color);
    border-radius: 8px;
    background: transparent;
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s;
}

.add-stage-btn:hover[b-2ss2m5c1be] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    background: rgba(99, 102, 241, 0.04);
}
/* /Pages/Accounting/WorkflowToReview.razor.rz.scp.css */
/* ============ Status Badges ============ */
.status-badge[b-uo6490mtjv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-uo6490mtjv] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-uo6490mtjv] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-uo6490mtjv] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-uo6490mtjv] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-uo6490mtjv] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ State Badges ============ */
.state-badge[b-uo6490mtjv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.state-badge.waiting[b-uo6490mtjv] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.state-badge.in-progress[b-uo6490mtjv] {
    background: rgba(59, 130, 246, 0.12);
    color: var(--theme-info);
}

.state-badge.accepted[b-uo6490mtjv] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success);
}

.state-badge.rejected[b-uo6490mtjv] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--theme-danger);
}

/* ============ Level Badge ============ */
.level-badge[b-uo6490mtjv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--theme-primary);
    background: var(--theme-primary-subtle);
    border: 2px solid var(--theme-primary);
}

/* ============ Assigned User ============ */
.assigned-user[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.user-avatar-sm[b-uo6490mtjv] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 600;
    color: white;
    background: var(--theme-primary);
    flex-shrink: 0;
}

/* ============ Link Button ============ */
.link-btn[b-uo6490mtjv] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.5rem;
    background: transparent;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-primary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.link-btn:hover[b-uo6490mtjv] {
    background: var(--theme-primary-subtle);
    border-color: var(--theme-primary);
}

.link-btn i[b-uo6490mtjv] {
    font-size: 0.75rem;
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-uo6490mtjv] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-uo6490mtjv] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-uo6490mtjv] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-uo6490mtjv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-uo6490mtjv] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-uo6490mtjv] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-uo6490mtjv] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-uo6490mtjv] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-uo6490mtjv] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-uo6490mtjv],
.tab-compact.active .tab-badge.warning[b-uo6490mtjv],
.tab-compact.active .tab-badge.danger[b-uo6490mtjv],
.tab-compact.active .tab-badge.info[b-uo6490mtjv] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-uo6490mtjv] {
    flex: 1;
    min-width: 130px;
    max-width: 260px;
}

.nav-search-box[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-uo6490mtjv] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-uo6490mtjv] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-uo6490mtjv] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-uo6490mtjv]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-uo6490mtjv] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-uo6490mtjv] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-uo6490mtjv] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-uo6490mtjv] {
    font-size: 1rem;
}

/* ============ Content Area ============ */
.content-area[b-uo6490mtjv] {
    min-height: 200px;
}

.table-container[b-uo6490mtjv] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ Empty State ============ */
.empty-state-wrapper[b-uo6490mtjv] {
    padding: 2rem 0;
}

/* ============ Process Form (Modal) ============ */
.process-form[b-uo6490mtjv] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* ============ Accept/Reject Toggle ============ */
.accept-reject-toggle[b-uo6490mtjv] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    padding: 0.25rem;
    gap: 0.25rem;
}

.toggle-option[b-uo6490mtjv] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    background: transparent;
    color: var(--text-secondary);
}

.toggle-option:hover[b-uo6490mtjv] {
    color: var(--text-primary);
}

.toggle-option.accept.active[b-uo6490mtjv] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
    box-shadow: 0 1px 3px rgba(16, 185, 129, 0.2);
}

.toggle-option.reject.active[b-uo6490mtjv] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
    box-shadow: 0 1px 3px rgba(239, 68, 68, 0.2);
}

.toggle-option i[b-uo6490mtjv] {
    font-size: 1rem;
}

/* ============ Form Elements ============ */
.form-group[b-uo6490mtjv] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.form-label[b-uo6490mtjv] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.form-textarea[b-uo6490mtjv] {
    padding: 0.625rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    font-family: inherit;
    resize: vertical;
    transition: border-color 0.15s ease;
}

.form-textarea:focus[b-uo6490mtjv] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.form-textarea[b-uo6490mtjv]::placeholder {
    color: var(--text-muted);
}

.form-input[b-uo6490mtjv] {
    height: 38px;
    padding: 0 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    transition: border-color 0.15s ease;
}

.form-input:focus[b-uo6490mtjv] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.form-input[b-uo6490mtjv]::placeholder {
    color: var(--text-muted);
}

.form-select-native[b-uo6490mtjv] {
    height: 38px;
    padding: 0 2rem 0 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.form-select-native:focus[b-uo6490mtjv] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ============ Star Rating Input ============ */
.star-rating-input[b-uo6490mtjv] {
    display: flex;
    gap: 0.25rem;
}

.star-btn[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: none;
    background: transparent;
    cursor: pointer;
    border-radius: 4px;
    transition: all 0.15s ease;
    color: var(--border-color);
    font-size: 1.25rem;
}

.star-btn:hover[b-uo6490mtjv] {
    color: var(--theme-warning);
    transform: scale(1.15);
}

.star-btn.active[b-uo6490mtjv] {
    color: var(--theme-warning);
}

.star-btn.active i[b-uo6490mtjv] {
    filter: drop-shadow(0 1px 2px rgba(245, 158, 11, 0.3));
}

/* ============ List Footer ============ */
.list-footer[b-uo6490mtjv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-uo6490mtjv] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-uo6490mtjv] {
    color: var(--text-primary);
}

.page-size-selector[b-uo6490mtjv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-uo6490mtjv] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-uo6490mtjv] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-uo6490mtjv] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-uo6490mtjv] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-uo6490mtjv 0.6s linear infinite;
}

@keyframes spin-b-uo6490mtjv {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-uo6490mtjv] {
        flex-wrap: wrap;
    }

    .search-inline[b-uo6490mtjv] {
        max-width: none;
        flex: 1 1 150px;
    }

    .tab-compact[b-uo6490mtjv] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-uo6490mtjv] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-uo6490mtjv] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-uo6490mtjv] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .refresh-btn[b-uo6490mtjv] {
        order: 3;
    }

    .list-footer[b-uo6490mtjv] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-uo6490mtjv] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-uo6490mtjv] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-uo6490mtjv] {
        display: none;
    }

    .tab-compact[b-uo6490mtjv] {
        padding: 0.5rem 0.625rem;
    }

    .accept-reject-toggle[b-uo6490mtjv] {
        flex-direction: column;
    }
}
/* /Pages/Account/Billing/BillingPortal.razor.rz.scp.css */
/* ============ Subscription Status Banners ============ */
[b-k4eqmh254i] .sub-status-banner {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-radius: 12px;
    margin-bottom: 1.25rem;
}

[b-k4eqmh254i] .sub-status-banner.banner-warning {
    background: color-mix(in srgb, var(--theme-warning) 10%, var(--bg-surface));
    border: 1px solid color-mix(in srgb, var(--theme-warning) 30%, transparent);
}

[b-k4eqmh254i] .sub-status-banner.banner-danger {
    background: color-mix(in srgb, var(--theme-danger) 10%, var(--bg-surface));
    border: 1px solid color-mix(in srgb, var(--theme-danger) 30%, transparent);
}

[b-k4eqmh254i] .sub-status-banner.banner-info {
    background: color-mix(in srgb, var(--theme-info) 10%, var(--bg-surface));
    border: 1px solid color-mix(in srgb, var(--theme-info) 30%, transparent);
}

[b-k4eqmh254i] .sub-status-banner-icon {
    font-size: 1.5rem;
    flex-shrink: 0;
}

[b-k4eqmh254i] .banner-warning .sub-status-banner-icon { color: var(--theme-warning); }
[b-k4eqmh254i] .banner-danger .sub-status-banner-icon { color: var(--theme-danger); }

[b-k4eqmh254i] .sub-status-banner-content {
    flex: 1;
}

[b-k4eqmh254i] .sub-status-banner-content strong {
    display: block;
    font-size: 0.95rem;
    margin-bottom: 0.15rem;
}

[b-k4eqmh254i] .sub-status-banner-content p {
    margin: 0;
    font-size: 0.85rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

[b-k4eqmh254i] .sub-status-banner-action {
    flex-shrink: 0;
}

@media (max-width: 640px) {
    [b-k4eqmh254i] .sub-status-banner {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
    }

    [b-k4eqmh254i] .sub-status-banner-action {
        width: 100%;
    }
}

/* ============ Section Header ============ */
[b-k4eqmh254i] .section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 0.75rem;
}

[b-k4eqmh254i] .section-actions {
    display: flex;
    gap: 0.5rem;
}

/* ============ No Plans Notice ============ */
.no-plans-notice[b-k4eqmh254i] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.5rem;
    background: color-mix(in srgb, var(--theme-warning) 8%, var(--bg-surface));
    border: 1px solid color-mix(in srgb, var(--theme-warning) 25%, transparent);
    border-radius: 12px;
    text-align: left;
}

.no-plans-icon[b-k4eqmh254i] {
    font-size: 1.5rem;
    color: var(--theme-warning);
    flex-shrink: 0;
}

.no-plans-content strong[b-k4eqmh254i] {
    display: block;
    font-size: 0.9375rem;
    margin-bottom: 0.25rem;
}

.no-plans-content p[b-k4eqmh254i] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0 0 0.75rem 0;
    line-height: 1.5;
}

/* ============ Choose Plan Section ============ */
.choose-plan-section[b-k4eqmh254i] {
    text-align: center;
    padding: 1rem 0;
}

.choose-plan-header h3[b-k4eqmh254i] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.choose-plan-header h3 i[b-k4eqmh254i] {
    color: var(--theme-primary);
}

.choose-plan-header p[b-k4eqmh254i] {
    color: var(--text-secondary);
    margin: 0 0 1.25rem 0;
}

/* Billing Toggle */
.billing-toggle[b-k4eqmh254i] {
    display: inline-flex;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    padding: 0.25rem;
    gap: 0.25rem;
    margin-bottom: 1.5rem;
}

.billing-toggle .toggle-option[b-k4eqmh254i] {
    padding: 0.5rem 1.25rem;
    border: none;
    border-radius: 8px;
    background: transparent;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s;
}

.billing-toggle .toggle-option.active[b-k4eqmh254i] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: 0 1px 3px rgba(0,0,0,0.1);
}

.save-badge[b-k4eqmh254i] {
    display: inline-flex;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.625rem;
    font-weight: 700;
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-emphasis);
    margin-left: 0.25rem;
}

/* Plan Cards Grid */
.plan-cards-grid[b-k4eqmh254i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap: 1.25rem;
    max-width: 1100px;
    margin: 0 auto;
    text-align: left;
}

.plan-card[b-k4eqmh254i] {
    background: var(--bg-surface);
    border: 2px solid var(--border-color);
    border-radius: 16px;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    position: relative;
    transition: all 0.25s ease;
}

.plan-card:hover[b-k4eqmh254i] {
    border-color: var(--theme-primary);
    box-shadow: 0 8px 30px rgba(0,0,0,0.08);
    transform: translateY(-4px);
}

.plan-card.recommended[b-k4eqmh254i] {
    border-color: var(--theme-primary);
    box-shadow: 0 4px 20px rgba(99, 102, 241, 0.15);
}

.plan-card.free-plan[b-k4eqmh254i] {
    border-color: rgba(16, 185, 129, 0.3);
}

.recommended-badge[b-k4eqmh254i] {
    position: absolute;
    top: -12px;
    left: 50%;
    transform: translateX(-50%);
    background: var(--theme-primary);
    color: white;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.6875rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.plan-card-header h4[b-k4eqmh254i] {
    font-size: 1.125rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
}

.plan-desc[b-k4eqmh254i] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin: 0;
    line-height: 1.4;
}

/* Price */
.plan-card-price[b-k4eqmh254i] {
    padding: 1rem 0;
    border-bottom: 1px solid var(--border-color);
    margin-bottom: 1rem;
}

.price-free[b-k4eqmh254i] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--theme-success-emphasis);
}

.price-sub[b-k4eqmh254i] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
}

.price-currency[b-k4eqmh254i] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-secondary);
    vertical-align: super;
}

.price-amount[b-k4eqmh254i] {
    font-size: 2.25rem;
    font-weight: 800;
    color: var(--text-primary);
    line-height: 1;
}

.price-period[b-k4eqmh254i] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.price-savings[b-k4eqmh254i] {
    display: inline-flex;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.625rem;
    font-weight: 700;
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-emphasis);
    margin-left: 0.375rem;
}

/* Features */
.plan-card-features[b-k4eqmh254i] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1.25rem;
}

.feature-item[b-k4eqmh254i] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.feature-item i[b-k4eqmh254i] {
    color: var(--text-muted);
    font-size: 0.875rem;
    width: 18px;
    text-align: center;
    flex-shrink: 0;
}

.feature-item.highlight[b-k4eqmh254i] {
    color: var(--text-primary);
    font-weight: 600;
}

.feature-item.highlight i[b-k4eqmh254i] {
    color: var(--theme-primary);
}

/* Action */
.plan-card-action[b-k4eqmh254i] {
    margin-top: auto;
}

[b-k4eqmh254i] .plan-card-action .fsh-btn {
    width: 100%;
    justify-content: center;
}

/* Responsive */
@media (max-width: 768px) {
    .plan-cards-grid[b-k4eqmh254i] {
        grid-template-columns: 1fr;
        max-width: 400px;
    }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .plan-card[b-k4eqmh254i] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .billing-toggle[b-k4eqmh254i] {
    background: var(--bg-surface-secondary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .billing-toggle .toggle-option.active[b-k4eqmh254i] {
    background: var(--bg-surface);
    color: var(--text-primary);
}

[data-bs-theme="dark"] .plan-card-price[b-k4eqmh254i] {
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .price-amount[b-k4eqmh254i],
[data-bs-theme="dark"] .feature-item.highlight[b-k4eqmh254i],
[data-bs-theme="dark"] .plan-card-header h4[b-k4eqmh254i],
[data-bs-theme="dark"] .choose-plan-header h3[b-k4eqmh254i],
[data-bs-theme="dark"] .no-plans-content strong[b-k4eqmh254i] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .plan-desc[b-k4eqmh254i],
[data-bs-theme="dark"] .price-sub[b-k4eqmh254i],
[data-bs-theme="dark"] .price-period[b-k4eqmh254i],
[data-bs-theme="dark"] .price-currency[b-k4eqmh254i],
[data-bs-theme="dark"] .feature-item[b-k4eqmh254i],
[data-bs-theme="dark"] .feature-item i[b-k4eqmh254i],
[data-bs-theme="dark"] .choose-plan-header p[b-k4eqmh254i],
[data-bs-theme="dark"] .no-plans-content p[b-k4eqmh254i] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .plan-card:hover[b-k4eqmh254i] {
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.5);
}
/* /Pages/Account/Billing/InvoiceCenter.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Billing/InvoiceDetail.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Billing/InvoicePayment.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Billing/PaymentHistory.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Billing/PaymentMethods.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Billing/Pricing.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Billing/UsageAnalytics.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Branding/WebsiteList.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Organization/ApiKeysSettings.razor.rz.scp.css */
/* ============ Key Created Banner ============ */
.key-created-banner[b-xgfdcjvrll] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem;
    margin-bottom: 1rem;
    background: color-mix(in srgb, var(--theme-warning) 8%, var(--bg-surface));
    border: 2px solid var(--theme-warning);
    border-radius: 12px;
    position: relative;
}

.key-created-icon[b-xgfdcjvrll] {
    font-size: 1.5rem;
    color: var(--theme-warning);
    flex-shrink: 0;
}

.key-created-content[b-xgfdcjvrll] {
    flex: 1;
}

.key-created-content strong[b-xgfdcjvrll] {
    display: block;
    font-size: 0.9375rem;
    margin-bottom: 0.25rem;
}

.key-created-content p[b-xgfdcjvrll] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0 0 0.75rem 0;
}

.key-display[b-xgfdcjvrll] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 0.5rem 0.75rem;
}

.key-display code[b-xgfdcjvrll] {
    flex: 1;
    font-size: 0.8125rem;
    word-break: break-all;
    color: var(--text-primary);
    font-family: monospace;
}

.copy-btn[b-xgfdcjvrll] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.copy-btn:hover[b-xgfdcjvrll] {
    background: var(--bg-surface-secondary);
    color: var(--theme-primary);
}

.dismiss-btn[b-xgfdcjvrll] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    font-size: 1rem;
}

/* ============ Table ============ */
.content-area[b-xgfdcjvrll] {
    margin-bottom: 1rem;
}

.table-container[b-xgfdcjvrll] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

.key-prefix[b-xgfdcjvrll] {
    font-family: monospace;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    background: var(--bg-surface-secondary);
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
}

.scope-count[b-xgfdcjvrll] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    cursor: help;
}

.scope-all[b-xgfdcjvrll], .scope-none[b-xgfdcjvrll] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    font-style: italic;
}

.status-badge[b-xgfdcjvrll] {
    display: inline-flex;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.status-success[b-xgfdcjvrll] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success-emphasis);
}

.status-muted[b-xgfdcjvrll] {
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
}

.text-danger[b-xgfdcjvrll] {
    color: var(--theme-danger);
}

.text-muted[b-xgfdcjvrll] {
    color: var(--text-muted);
}

/* ============ Scope Grid ============ */
.scope-actions[b-xgfdcjvrll] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

.scope-hint[b-xgfdcjvrll] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin: 0;
}

.scope-toggle-btn[b-xgfdcjvrll] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--theme-primary);
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
}

.scope-toggle-btn:hover[b-xgfdcjvrll] {
    background: rgba(99, 102, 241, 0.08);
}

.scope-grid[b-xgfdcjvrll] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.375rem;
    max-height: 280px;
    overflow-y: auto;
    padding-right: 0.25rem;
}

.scope-item[b-xgfdcjvrll] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.5rem 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    cursor: pointer;
    transition: background 0.15s;
}

.scope-item:hover[b-xgfdcjvrll] {
    background: var(--bg-surface-secondary);
}

.scope-item input[type="checkbox"][b-xgfdcjvrll] {
    margin-top: 0.125rem;
    flex-shrink: 0;
    accent-color: var(--theme-primary);
}

.scope-info[b-xgfdcjvrll] {
    display: flex;
    flex-direction: column;
    gap: 0.0625rem;
}

.scope-name[b-xgfdcjvrll] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.scope-desc[b-xgfdcjvrll] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    line-height: 1.3;
}

/* ============ Info Box ============ */
.info-box[b-xgfdcjvrll] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    background: color-mix(in srgb, var(--theme-info) 5%, var(--bg-surface));
    border: 1px solid color-mix(in srgb, var(--theme-info) 15%, transparent);
    border-radius: 10px;
}

.info-box > i[b-xgfdcjvrll] {
    font-size: 1.125rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.info-box strong[b-xgfdcjvrll] {
    display: block;
    margin-bottom: 0.25rem;
    font-size: 0.875rem;
}

.info-box p[b-xgfdcjvrll] {
    margin: 0 0 0.5rem 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.example-code[b-xgfdcjvrll] {
    display: block;
    font-family: monospace;
    font-size: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    word-break: break-all;
    color: var(--text-primary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .key-created-banner[b-xgfdcjvrll] {
        flex-direction: column;
    }
    .key-display[b-xgfdcjvrll] {
        flex-direction: column;
    }
    .key-display code[b-xgfdcjvrll] {
        width: 100%;
    }
}
/* /Pages/Account/Organization/BrandingSettingsTab.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Organization/CompanyList.razor.rz.scp.css */
/* ============ Sticky Save Footer ============ */
[b-0kni7tne2t] .save-footer {
    position: sticky;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1.25rem;
    margin-top: 1.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    box-shadow: 0 -2px 8px rgba(0, 0, 0, 0.06);
    z-index: 10;
}

[b-0kni7tne2t] .save-footer-hint {
    font-size: 0.78rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 0.3rem;
}

@media (max-width: 480px) {
    [b-0kni7tne2t] .save-footer {
        flex-direction: column;
        gap: 0.5rem;
    }

    [b-0kni7tne2t] .save-footer-hint {
        display: none;
    }
}
/* /Pages/Account/Organization/PaymentGatewaysConfig.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/RegisterInstitution.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Team/CompanySignup.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Account/Team/CompleteRegistration.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/AuthPage/EmailConfirmation.razor.rz.scp.css */
/**
 * EmailConfirmation - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   CONFIRMATION PAGE CONTAINER
   ======================================== */

.confirmation-page[b-wy7sg80p9r] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
    padding: 20px;
}

/* ========================================
   CONFIRMATION CARD
   ======================================== */

.confirmation-card[b-wy7sg80p9r] {
    background: var(--bg-surface);
    border-radius: 20px;
    box-shadow: var(--shadow-lg);
    max-width: 500px;
    width: 100%;
    padding: 50px 40px;
    text-align: center;
    animation: slideUp 0.5s ease-out;
}

/* ========================================
   STATUS ICONS
   ======================================== */

.status-icon[b-wy7sg80p9r] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 30px;
    font-size: 50px;
}

.status-icon.success[b-wy7sg80p9r] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-info) 100%);
    color: var(--theme-success-emphasis);
    animation: pulse 2s infinite;
}

.status-icon.error[b-wy7sg80p9r] {
    background: linear-gradient(135deg, var(--theme-danger) 0%, var(--theme-purple) 100%);
    color: var(--theme-danger);
}

.status-icon.loading[b-wy7sg80p9r] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info-subtle) 100%);
    color: var(--theme-info);
}

@keyframes    50%[b-wy7sg80p9r] {
        box-shadow: 0 0 0 20px rgba(16, 185, 129, 0);
    }
}

/* ========================================
   TEXT CONTENT
   ======================================== */

.confirmation-title[b-wy7sg80p9r] {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 15px;
    color: var(--text-primary);
}

.confirmation-message[b-wy7sg80p9r] {
    font-size: 16px;
    color: var(--text-secondary);
    margin-bottom: 30px;
    line-height: 1.6;
}

.email-highlight[b-wy7sg80p9r] {
    font-weight: 600;
    color: var(--theme-primary);
}

/* ========================================
   ACTION BUTTONS
   ======================================== */

.action-buttons[b-wy7sg80p9r] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.btn-primary-custom[b-wy7sg80p9r] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
    border: none;
    border-radius: 12px;
    padding: 16px 32px;
    font-size: 16px;
    font-weight: 600;
    color: white;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.btn-primary-custom:hover[b-wy7sg80p9r] {
    transform: translateY(-2px);
    box-shadow: 0 10px 20px rgba(102, 126, 234, 0.4);
    color: white;
}

.btn-secondary-custom[b-wy7sg80p9r] {
    background: transparent;
    border: 2px solid var(--border-color);
    border-radius: 12px;
    padding: 14px 32px;
    font-size: 16px;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
}

.btn-secondary-custom:hover[b-wy7sg80p9r] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

/* ========================================
   HELP TEXT
   ======================================== */

.help-text[b-wy7sg80p9r] {
    margin-top: 30px;
    padding-top: 20px;
    border-top: 1px solid var(--border-color);
    font-size: 14px;
    color: var(--text-muted);
}

.help-text a[b-wy7sg80p9r] {
    color: var(--theme-primary);
    text-decoration: none;
    font-weight: 500;
}

.help-text a:hover[b-wy7sg80p9r] {
    text-decoration: underline;
}

/* ========================================
   SPINNER
   ======================================== */

.spinner[b-wy7sg80p9r] {
    width: 50px;
    height: 50px;
    border: 4px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

/* ========================================
   FEATURES LIST
   ======================================== */

.features-list[b-wy7sg80p9r] {
    text-align: left;
    margin: 25px 0;
    padding: 20px;
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
}

.features-list li[b-wy7sg80p9r] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 10px 0;
    color: var(--text-primary);
    font-size: 15px;
}

.features-list li i[b-wy7sg80p9r] {
    color: var(--theme-success);
    font-size: 18px;
}

/* ========================================
   ERROR DETAILS
   ======================================== */

.error-details[b-wy7sg80p9r] {
    background: var(--theme-danger-subtle);
    border: 1px solid var(--theme-danger);
    border-radius: 12px;
    padding: 15px;
    margin: 20px 0;
    text-align: left;
    font-size: 14px;
    color: var(--theme-danger-emphasis);
}
/* /Pages/AuthPage/LoginPage.razor.rz.scp.css */
/* Pending Registration Notice - Eye-catching call-to-action */
.pending-registration-notice[b-b6405veycb] {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 15%, white) 0%, color-mix(in srgb, var(--theme-warning) 30%, white) 100%);
    border: 2px solid var(--theme-warning);
    border-radius: 12px;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--theme-warning) 25%, transparent);
    animation: pulse-border-b-b6405veycb 2s ease-in-out infinite;
}

@keyframes pulse-border-b-b6405veycb {
    0%, 100% {
        box-shadow: 0 4px 12px color-mix(in srgb, var(--theme-warning) 25%, transparent);
    }
    50% {
        box-shadow: 0 4px 20px color-mix(in srgb, var(--theme-warning) 40%, transparent);
    }
}

.pending-registration-notice .notice-icon[b-b6405veycb] {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--theme-warning) 0%, color-mix(in srgb, var(--theme-warning) 80%, black) 100%);
    border-radius: 12px;
    color: white;
    font-size: 1.5rem;
}

.pending-registration-notice .notice-content[b-b6405veycb] {
    flex-grow: 1;
}

.pending-registration-notice .notice-title[b-b6405veycb] {
    margin: 0 0 0.25rem 0;
    font-size: 1rem;
    font-weight: 700;
    color: color-mix(in srgb, var(--theme-warning) 90%, black);
}

.pending-registration-notice .notice-text[b-b6405veycb] {
    margin: 0 0 0.75rem 0;
    font-size: 0.875rem;
    color: color-mix(in srgb, var(--theme-warning) 85%, black);
    line-height: 1.4;
}

.pending-registration-notice .notice-text strong[b-b6405veycb] {
    color: color-mix(in srgb, var(--theme-warning) 90%, black);
}

.pending-registration-notice .btn-complete-registration[b-b6405veycb] {
    display: inline-flex;
    align-items: center;
    padding: 0.625rem 1.25rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: color-mix(in srgb, var(--theme-warning) 85%, black);
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 75%, white) 0%, var(--theme-warning) 100%);
    border: none;
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px color-mix(in srgb, var(--theme-warning) 30%, transparent);
}

.pending-registration-notice .btn-complete-registration:hover[b-b6405veycb] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px color-mix(in srgb, var(--theme-warning) 40%, transparent);
    color: color-mix(in srgb, var(--theme-warning) 85%, black);
    background: linear-gradient(135deg, color-mix(in srgb, var(--theme-warning) 50%, white) 0%, color-mix(in srgb, var(--theme-warning) 75%, white) 100%);
}

.pending-registration-notice .btn-complete-registration:active[b-b6405veycb] {
    transform: translateY(0);
}

.pending-registration-notice .btn-close-notice[b-b6405veycb] {
    position: absolute;
    top: 0.5rem;
    right: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: color-mix(in srgb, var(--theme-warning) 90%, black);
    cursor: pointer;
    opacity: 0.6;
    transition: all 0.2s ease;
}

.pending-registration-notice .btn-close-notice:hover[b-b6405veycb] {
    opacity: 1;
    background: color-mix(in srgb, var(--theme-warning) 10%, transparent);
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .pending-registration-notice[b-b6405veycb] {
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

    .pending-registration-notice .notice-icon[b-b6405veycb] {
        margin: 0 auto;
    }

    .pending-registration-notice .btn-complete-registration[b-b6405veycb] {
        width: 100%;
        justify-content: center;
    }
}

/* =============================================
   Tenant Login Banner
   ============================================= */
.tenant-login-banner[b-b6405veycb] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, rgba(var(--theme-primary-rgb, 37, 99, 235), 0.08), rgba(var(--theme-primary-rgb, 37, 99, 235), 0.04));
    border: 1px solid rgba(var(--theme-primary-rgb, 37, 99, 235), 0.15);
    border-radius: 0.625rem;
    margin-bottom: 1.25rem;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.tenant-login-banner i[b-b6405veycb] {
    color: var(--theme-primary);
    font-size: 1.125rem;
    flex-shrink: 0;
}

/* =============================================
   Password Field with Inline Toggle
   ============================================= */
.password-field[b-b6405veycb] {
    position: relative;
}

.password-field input[b-b6405veycb] {
    padding-right: 2.75rem;
}

.password-toggle[b-b6405veycb] {
    position: absolute;
    right: 0.5rem;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    padding: 0.25rem;
    display: flex;
    align-items: center;
    font-size: 1rem;
    transition: color 0.15s;
}

.password-toggle:hover[b-b6405veycb] {
    color: var(--theme-primary);
}
/* /Pages/AuthPage/RegisterPage.razor.rz.scp.css */
/* Tenant Banner - Light background with green text */
.tenant-banner[b-av1j87xsq7] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--theme-success-subtle) 0%, var(--theme-success-subtle) 100%);
    border: 1px solid var(--theme-success-text);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(34, 197, 94, 0.1);
}

.tenant-banner i[b-av1j87xsq7] {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
    border-radius: 10px;
    color: white;
    font-size: 1.25rem;
}

.tenant-banner .label[b-av1j87xsq7] {
    font-size: 0.875rem;
    color: var(--theme-success-text);
    font-weight: 500;
}

.tenant-banner .tenant-name[b-av1j87xsq7] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-success-text);
}

/* Invitation Banner - Similar styling for consistency */
.invitation-banner[b-av1j87xsq7] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--theme-success-subtle) 0%, var(--theme-success-subtle) 100%);
    border: 1px solid var(--theme-success-text);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(34, 197, 94, 0.1);
}

.invitation-banner i[b-av1j87xsq7] {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
    border-radius: 10px;
    color: white;
    font-size: 1.25rem;
}

.invitation-banner .content[b-av1j87xsq7] {
    flex-grow: 1;
}

.invitation-banner .label[b-av1j87xsq7] {
    font-size: 0.875rem;
    color: var(--theme-success-text);
    font-weight: 500;
}

.invitation-banner .tenant-name[b-av1j87xsq7] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-success-text);
}

.invitation-banner .role-info[b-av1j87xsq7] {
    margin-top: 0.25rem;
    font-size: 0.8125rem;
    color: var(--theme-success-emphasis);
}

/* Responsive adjustments */
@media (max-width: 480px) {
    .tenant-banner[b-av1j87xsq7],
    .invitation-banner[b-av1j87xsq7] {
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

    .tenant-banner i[b-av1j87xsq7],
    .invitation-banner i[b-av1j87xsq7] {
        margin: 0 auto 0.5rem;
    }
}
/* /Pages/BackendPortal/AdminManageProfile/AdminManageprofileList.razor.rz.scp.css */
/**
 * AdminManageprofileList - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* Content Area - loading container centralized in app.css */

/* ========================================
   STAT ICON
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
/* Note: stat-icon base styles now in app.css */

/* ========================================
   BADGE BACKGROUNDS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.bg-primary-subtle[b-8hvro97yfp] {
    background-color: rgba(var(--bs-primary-rgb), 0.1);
}

.bg-success-subtle[b-8hvro97yfp] {
    background-color: rgba(var(--bs-success-rgb), 0.1);
}

.bg-secondary-subtle[b-8hvro97yfp] {
    background-color: rgba(var(--bs-secondary-rgb), 0.1);
}

/* ========================================
   TEXT COLORS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.text-primary[b-8hvro97yfp] {
    color: var(--bs-primary) !important;
}

.text-success[b-8hvro97yfp] {
    color: var(--bs-success) !important;
}

/* ========================================
   CARD STYLING
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.card[b-8hvro97yfp] {
    border: none;
    box-shadow: var(--shadow-sm, 0 0 10px rgba(0, 0, 0, 0.05));
    border-radius: var(--radius-lg, 8px);
}

.card-header[b-8hvro97yfp] {
    background: transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.card-title[b-8hvro97yfp] {
    font-weight: var(--font-semibold, 600);
    color: var(--bs-dark);
}

/* ========================================
   FORM STYLING
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.form-label[b-8hvro97yfp] {
    font-weight: var(--font-medium, 500);
    font-size: 0.875rem;
    color: var(--bs-gray-700);
    margin-bottom: 0.5rem;
}

/* ========================================
   BADGE STYLING
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.badge[b-8hvro97yfp] {
    font-weight: var(--font-medium, 500);
    padding: 0.5em 0.75em;
}

/* Note: Radzen component base styles are now centralized in app.css. */
/* /Pages/BackendPortal/BackendDashboard.razor.rz.scp.css */
/* /Pages/BackendPortal/BlogCommentPage/BlogCommentList.razor.rz.scp.css */
/* Comment Tabs */
.comment-tabs[b-xx1sc6nvst] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1.5rem;
    background: var(--theme-surface);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.tab-btn[b-xx1sc6nvst] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    border: none;
    background: transparent;
    border-radius: 8px;
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--theme-text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.tab-btn:hover[b-xx1sc6nvst] {
    background: var(--theme-background);
}

.tab-btn.active[b-xx1sc6nvst] {
    background: var(--theme-primary);
    color: white;
}

.tab-btn .badge[b-xx1sc6nvst] {
    padding: 2px 8px;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    font-size: 0.75rem;
}

.tab-btn:not(.active) .badge[b-xx1sc6nvst] {
    background: var(--theme-error);
    color: white;
}

/* Comments List */
.comments-list[b-xx1sc6nvst] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.comment-card[b-xx1sc6nvst] {
    background: var(--theme-surface);
    border-radius: 12px;
    padding: 1.25rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.comment-header[b-xx1sc6nvst] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 0.75rem;
}

.comment-author[b-xx1sc6nvst] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.author-avatar[b-xx1sc6nvst] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-secondary));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.9rem;
}

.author-info[b-xx1sc6nvst] {
    display: flex;
    flex-direction: column;
}

.author-name[b-xx1sc6nvst] {
    font-weight: 600;
    color: var(--theme-text-primary);
}

.author-email[b-xx1sc6nvst] {
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
}

.comment-meta[b-xx1sc6nvst] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.comment-date[b-xx1sc6nvst] {
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
}

.comment-post[b-xx1sc6nvst] {
    margin-bottom: 0.75rem;
}

.comment-post a[b-xx1sc6nvst] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.85rem;
    color: var(--theme-primary);
    text-decoration: none;
}

.comment-post a:hover[b-xx1sc6nvst] {
    text-decoration: underline;
}

.comment-content[b-xx1sc6nvst] {
    font-size: 0.95rem;
    color: var(--theme-text-secondary);
    line-height: 1.6;
    padding: 1rem;
    background: var(--theme-background);
    border-radius: 8px;
    margin-bottom: 1rem;
}

.comment-actions[b-xx1sc6nvst] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

/* Responsive */
@media (max-width: 768px) {
    .comment-header[b-xx1sc6nvst] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .comment-tabs[b-xx1sc6nvst] {
        flex-wrap: wrap;
    }

    .tab-btn[b-xx1sc6nvst] {
        flex: 1;
        justify-content: center;
        min-width: 100px;
    }
}
/* /Pages/BackendPortal/BlogPage/BlogAddEdit.razor.rz.scp.css */
/* Editor Layout */
.editor-layout[b-pmzbs8y00f] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 1.5rem;
    align-items: start;
}

.editor-main[b-pmzbs8y00f] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.editor-sidebar[b-pmzbs8y00f] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: sticky;
    top: 100px;
}

/* Form Sections */
.form-section[b-pmzbs8y00f] {
    background: var(--theme-surface);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.form-label[b-pmzbs8y00f] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--theme-text-secondary);
    margin-bottom: 8px;
}

.form-label.required[b-pmzbs8y00f]::after {
    content: "*";
    color: var(--theme-error);
    margin-left: 4px;
}

.form-label.small[b-pmzbs8y00f] {
    font-size: 0.8rem;
}

.form-input[b-pmzbs8y00f] {
    width: 100%;
    padding: 10px 14px;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    font-size: 0.95rem;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.form-input:focus[b-pmzbs8y00f] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-light, rgba(99, 102, 241, 0.1));
}

.title-input[b-pmzbs8y00f] {
    font-size: 1.5rem;
    font-weight: 600;
    padding: 14px 16px;
}

.generate-btn[b-pmzbs8y00f] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px;
    border: none;
    background: var(--theme-primary-light);
    color: var(--theme-primary);
    border-radius: 4px;
    font-size: 0.75rem;
    cursor: pointer;
    transition: background 0.2s ease;
}

.generate-btn:hover[b-pmzbs8y00f] {
    background: var(--theme-primary);
    color: white;
}

.slug-preview[b-pmzbs8y00f] {
    display: block;
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
    margin-top: 4px;
}

.form-row[b-pmzbs8y00f] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-group[b-pmzbs8y00f] {
    margin-bottom: 1rem;
}

.form-group:last-child[b-pmzbs8y00f] {
    margin-bottom: 0;
}

/* Content Editor */
.content-editor[b-pmzbs8y00f] {
    padding: 1rem;
}

/* Collapsible Sections */
.collapsible .section-header[b-pmzbs8y00f] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    padding: 0.5rem 0;
}

.collapsible .section-header h3[b-pmzbs8y00f] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.collapsible .section-header h3 i[b-pmzbs8y00f] {
    color: var(--theme-primary);
}

.collapsible .section-content[b-pmzbs8y00f] {
    padding-top: 1rem;
    border-top: 1px solid var(--theme-border);
    margin-top: 0.75rem;
}

/* Sidebar Cards */
.sidebar-card[b-pmzbs8y00f] {
    background: var(--theme-surface);
    border-radius: 12px;
    padding: 1rem;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.sidebar-card h4[b-pmzbs8y00f] {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0 0 0.75rem 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.sidebar-card h4 i[b-pmzbs8y00f] {
    color: var(--theme-primary);
}

/* Publish Options */
.publish-options[b-pmzbs8y00f] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 1rem;
}

.schedule-picker[b-pmzbs8y00f] {
    margin-bottom: 1rem;
}

.publish-actions[b-pmzbs8y00f] {
    padding-top: 0.75rem;
    border-top: 1px solid var(--theme-border);
}

/* Checkbox Option */
.checkbox-option[b-pmzbs8y00f] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    font-size: 0.9rem;
    color: var(--theme-text-primary);
}

/* Image Preview */
.image-preview[b-pmzbs8y00f] {
    position: relative;
    margin-bottom: 0.75rem;
}

.image-preview img[b-pmzbs8y00f] {
    width: 100%;
    border-radius: 8px;
    object-fit: cover;
    max-height: 180px;
}

.remove-image[b-pmzbs8y00f] {
    position: absolute;
    top: 8px;
    right: 8px;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: none;
    background: rgba(0, 0, 0, 0.6);
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.remove-image:hover[b-pmzbs8y00f] {
    background: var(--theme-error);
}

/* Editor Actions */
.editor-actions[b-pmzbs8y00f] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--theme-border);
}

/* Responsive */
@media (max-width: 992px) {
    .editor-layout[b-pmzbs8y00f] {
        grid-template-columns: 1fr;
    }

    .editor-sidebar[b-pmzbs8y00f] {
        position: static;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    }

    .form-row[b-pmzbs8y00f] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/BackendPortal/BlogPage/BlogList.razor.rz.scp.css */
/* Blog Stats */
.blog-stats[b-7wmagr3v2z] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

/* stat-card base styles now in app.css */

/* Page-specific stat-icon gradient variants */
.stat-icon.published[b-7wmagr3v2z] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
}

.stat-icon.draft[b-7wmagr3v2z] {
    background: linear-gradient(135deg, var(--text-muted), var(--text-secondary));
}

.stat-icon.scheduled[b-7wmagr3v2z] {
    background: linear-gradient(135deg, var(--theme-info), var(--theme-info-emphasis));
}

.stat-icon.featured[b-7wmagr3v2z] {
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-emphasis));
}

.stat-icon i[b-7wmagr3v2z] {
    color: white;
}

/* Toolbar */
.blog-toolbar[b-7wmagr3v2z] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--theme-surface);
    border-radius: 12px;
    margin-bottom: 1rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.toolbar-left[b-7wmagr3v2z],
.toolbar-right[b-7wmagr3v2z] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Grid Wrapper */
.blog-grid-wrapper[b-7wmagr3v2z] {
    background: var(--theme-surface);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    overflow: hidden;
}

/* Post Cell */
.post-cell[b-7wmagr3v2z] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.post-thumbnail[b-7wmagr3v2z] {
    width: 60px;
    height: 45px;
    border-radius: 6px;
    object-fit: cover;
}

.post-info[b-7wmagr3v2z] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.post-title[b-7wmagr3v2z] {
    font-weight: 500;
    color: var(--theme-text-primary);
    text-decoration: none;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.post-title:hover[b-7wmagr3v2z] {
    color: var(--theme-primary);
}

.post-category[b-7wmagr3v2z] {
    font-size: 0.8rem;
    color: var(--theme-text-tertiary);
}

/* Stats Cell */
.stats-cell[b-7wmagr3v2z] {
    display: flex;
    gap: 12px;
}

.stats-cell span[b-7wmagr3v2z] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 0.85rem;
    color: var(--theme-text-secondary);
}

/* Scheduled Date */
.scheduled-date[b-7wmagr3v2z] {
    display: flex;
    align-items: center;
    gap: 4px;
    color: var(--theme-info);
    font-size: 0.85rem;
}

/* Action Buttons */
.action-buttons[b-7wmagr3v2z] {
    display: flex;
    gap: 4px;
}

/* Responsive */
@media (max-width: 768px) {
    .blog-toolbar[b-7wmagr3v2z] {
        flex-direction: column;
        align-items: stretch;
    }

    .toolbar-left[b-7wmagr3v2z],
    .toolbar-right[b-7wmagr3v2z] {
        flex-wrap: wrap;
    }

    .blog-stats[b-7wmagr3v2z] {
        grid-template-columns: repeat(2, 1fr);
    }
}
/* /Pages/BackendPortal/CoursePage/AdminInstructorLearning.razor.rz.scp.css */
/**
 * AdminInstructorLearning - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* ========================================
   WATERMARK CONTAINER
   ======================================== */

.watermark-container[b-l3v3nxb020] {
    position: absolute;
    z-index: 20;
    pointer-events: none;
    animation: moveWatermark 100s linear infinite;
}

/* ========================================
   UTILITY CLASS
   ======================================== */

.d-none[b-l3v3nxb020] {
    display: none;
}
/* /Pages/BackendPortal/InstructorDashboard.razor.rz.scp.css */
/* Instructor Dashboard Page - Modern Styling */

/* Welcome Header */
.dashboard-welcome-header[b-7mrorc536x] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    border-radius: var(--radius-lg, 1rem);
    padding: 1.5rem 2rem;
    color: white;
    position: relative;
    overflow: hidden;
}

.dashboard-welcome-header[b-7mrorc536x]::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -10%;
    width: 200px;
    height: 200px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.dashboard-welcome-header .welcome-content[b-7mrorc536x] {
    position: relative;
    z-index: 1;
}

.dashboard-welcome-header .welcome-title[b-7mrorc536x] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
    color: white;
}

.dashboard-welcome-header .welcome-subtitle[b-7mrorc536x] {
    opacity: 0.9;
    margin: 0;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.9);
}

@media (max-width: 768px) {
    .dashboard-welcome-header[b-7mrorc536x] {
        padding: 1.25rem 1.5rem;
    }

    .dashboard-welcome-header .welcome-title[b-7mrorc536x] {
        font-size: 1.25rem;
    }
}
/* /Pages/BackendPortal/NavigationMenu.razor.rz.scp.css */
/* Base Sidebar Styling */
.sidebar[b-0ry3gol19e] {
    width: 250px;
    background-color: var(--bg-surface);
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
    overflow-y: auto;
    transition: transform var(--transition-slow) ease;
    z-index: var(--z-dropdown);
    transform: translateX(-100%);
}

    .sidebar.show[b-0ry3gol19e] {
        transform: translateX(0);
    }

/* Profile Section Styling */
.profile-section[b-0ry3gol19e] {
    text-align: center;
}

.profile-img img[b-0ry3gol19e] {
    border-radius: var(--radius-full);
    width: 80px;
    height: 80px;
}

.profile-name h4[b-0ry3gol19e] {
    margin: var(--space-2) 0 var(--space-1);
    font-size: var(--text-lg);
    color: var(--text-primary);
}

.add-course[b-0ry3gol19e] {
    display: inline-block;
    padding: var(--space-2) var(--space-3);
    font-size: var(--text-sm);
    color: var(--text-inverse);
    background-color: var(--theme-info);
    border-radius: var(--radius-md);
    text-decoration: none;
}

/* Menu Styling */
.settings-menu[b-0ry3gol19e] {
    padding: var(--space-5) 0;
}

    .settings-menu h3[b-0ry3gol19e] {
        font-size: var(--text-sm);
        padding-left: var(--space-5);
        color: var(--text-muted);
        text-transform: uppercase;
        margin-top: var(--space-5);
    }

    .settings-menu ul[b-0ry3gol19e] {
        list-style: none;
        padding: 0;
        margin: 0;
    }

        .settings-menu ul li[b-0ry3gol19e] {
            padding: var(--space-2) var(--space-5);
        }

            .settings-menu ul li a[b-0ry3gol19e] {
                display: flex;
                align-items: center;
                color: var(--text-primary);
                text-decoration: none;
                font-size: var(--text-base);
            }

                .settings-menu ul li a i[b-0ry3gol19e] {
                    margin-right: var(--space-4);
                    font-size: var(--text-xl);
                    color: var(--text-secondary);
                }

                /* Active and Hover State */
                .settings-menu ul li.active a[b-0ry3gol19e],
                .settings-menu ul li a:hover[b-0ry3gol19e] {
                    color: var(--theme-info);
                }

/* Hide sidebar by default on mobile */
@media (max-width: 992px) {
    .sidebar[b-0ry3gol19e] {
        display: none;
    }

    .toggle-sidebar-btn[b-0ry3gol19e] {
        display: inline-block;
        position: fixed;
        top: var(--space-2);
        left: var(--space-2);
        z-index: var(--z-dropdown);
        background-color: var(--theme-info);
        color: var(--text-inverse);
        border: none;
        padding: var(--space-2);
        border-radius: var(--radius-md);
        cursor: pointer;
    }
}

/* Show sidebar by default on larger screens */
@media (min-width: 992px) {
    .toggle-sidebar-btn[b-0ry3gol19e] {
        display: none;
    }

    .sidebar[b-0ry3gol19e] {
        display: block !important;
    }
}
/* /Pages/BackendPortal/QuestionAnswerPage/QuestionAnswerList.razor.rz.scp.css */
.chat-container[b-y9rld5g9g4] {
    height: 100vh;
    display: flex;
}

.student-list[b-y9rld5g9g4] {
    background: var(--theme-gray-50);
    border-right: var(--border-width) solid var(--border-color);
}

.search-bar[b-y9rld5g9g4] {
    margin-bottom: var(--space-2);
}

.list-group-item[b-y9rld5g9g4] {
    cursor: pointer;
    border: none;
    border-bottom: var(--border-width) solid var(--border-color);
    padding: var(--space-2);
}

    .list-group-item:hover[b-y9rld5g9g4] {
        background-color: var(--theme-gray-200);
    }

.student-image[b-y9rld5g9g4] {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-full);
    object-fit: cover;
}

.student-info[b-y9rld5g9g4] {
    flex-grow: 1;
}

.student-name[b-y9rld5g9g4] {
    font-weight: bold;
}

.timestamp[b-y9rld5g9g4] {
    font-size: var(--text-xs);
    color: var(--text-muted);
}

.chat-panel[b-y9rld5g9g4] {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.chat-header[b-y9rld5g9g4] {
    padding: var(--space-2);
    background: var(--theme-gray-50);
    border-bottom: var(--border-width) solid var(--border-color);
}

.chat-header-image[b-y9rld5g9g4] {
    width: 50px;
    height: 50px;
    border-radius: var(--radius-full);
}

.chat-body[b-y9rld5g9g4] {
    flex-grow: 1;
    overflow-y: auto;
    padding: var(--space-2);
}

.chat-message[b-y9rld5g9g4] {
    margin-bottom: var(--space-2);
    max-width: 70%;
}

    .chat-message.sent[b-y9rld5g9g4] {
        margin-left: auto;
        background-color: var(--theme-success-subtle);
        padding: var(--space-2);
        border-radius: var(--radius-lg);
        text-align: right;
    }

    .chat-message.received[b-y9rld5g9g4] {
        background-color: var(--theme-gray-100);
        padding: var(--space-2);
        border-radius: var(--radius-lg);
        text-align: left;
    }

.chat-input[b-y9rld5g9g4] {
    padding: var(--space-2);
    border-top: var(--border-width) solid var(--border-color);
    background: var(--bg-surface);
}

.send-button[b-y9rld5g9g4] {
    margin-left: var(--space-2);
}
/* /Pages/BlogCategoryPage.razor.rz.scp.css */
/* Category Header */
.category-header[b-gq3ana839c] {
    display: flex;
    gap: 1.5rem;
    background: var(--theme-surface);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    margin-bottom: 2rem;
    align-items: center;
}

.category-image[b-gq3ana839c] {
    width: 120px;
    height: 120px;
    border-radius: 12px;
    object-fit: cover;
    flex-shrink: 0;
}

.category-info[b-gq3ana839c] {
    flex: 1;
}

.category-name[b-gq3ana839c] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--theme-text-primary);
    margin: 0 0 0.5rem 0;
}

.category-description[b-gq3ana839c] {
    font-size: 1rem;
    color: var(--theme-text-secondary);
    margin: 0 0 0.75rem 0;
    line-height: 1.6;
}

.category-count[b-gq3ana839c] {
    display: inline-block;
    padding: 4px 12px;
    background: var(--theme-primary-light);
    color: var(--theme-primary);
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 500;
}

/* Blog Content Wrapper */
.blog-content-wrapper[b-gq3ana839c] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 2rem;
    align-items: start;
}

.blog-main[b-gq3ana839c] {
    min-width: 0;
}

.blog-sidebar-wrapper[b-gq3ana839c] {
    position: sticky;
    top: 100px;
}

/* Blog Grid */
.blog-grid[b-gq3ana839c] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
}

/* Pagination */
.pagination[b-gq3ana839c] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem;
    padding: 1rem;
}

.page-btn[b-gq3ana839c] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px 16px;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    background: var(--theme-surface);
    color: var(--theme-text-primary);
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.page-btn:hover:not(:disabled)[b-gq3ana839c] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.page-btn:disabled[b-gq3ana839c] {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-info[b-gq3ana839c] {
    font-size: 0.9rem;
    color: var(--theme-text-secondary);
}

/* Responsive */
@media (max-width: 992px) {
    .blog-content-wrapper[b-gq3ana839c] {
        grid-template-columns: 1fr;
    }

    .blog-sidebar-wrapper[b-gq3ana839c] {
        position: static;
        order: -1;
    }
}

@media (max-width: 576px) {
    .category-header[b-gq3ana839c] {
        flex-direction: column;
        text-align: center;
    }

    .category-image[b-gq3ana839c] {
        width: 100px;
        height: 100px;
    }

    .category-name[b-gq3ana839c] {
        font-size: 1.5rem;
    }

    .blog-grid[b-gq3ana839c] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/BlogDetailsPage.razor.rz.scp.css */
/* Blog Loading & Not Found */
.blog-loading[b-7see5beztf],
.blog-not-found[b-7see5beztf] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
}

.back-to-blog[b-7see5beztf] {
    margin-top: 1.5rem;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 20px;
    background: var(--theme-primary);
    color: white;
    text-decoration: none;
    border-radius: 8px;
    font-weight: 500;
    transition: background 0.2s ease;
}

.back-to-blog:hover[b-7see5beztf] {
    background: var(--theme-primary-dark);
}

/* Article Hero */
.article-hero[b-7see5beztf] {
    position: relative;
    min-height: 400px;
    background-size: cover;
    background-position: center;
    background-color: var(--theme-primary);
    display: flex;
    align-items: flex-end;
}

.hero-overlay[b-7see5beztf] {
    position: absolute;
    inset: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0.3) 50%, rgba(0, 0, 0, 0.1) 100%);
    display: flex;
    align-items: flex-end;
}

.hero-content[b-7see5beztf] {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
    padding: 2rem;
    color: white;
}

.article-category[b-7see5beztf] {
    display: inline-block;
    padding: 6px 16px;
    background: var(--theme-primary);
    color: white;
    text-decoration: none;
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 500;
    margin-bottom: 1rem;
    transition: background 0.2s ease;
}

.article-category:hover[b-7see5beztf] {
    background: var(--theme-primary-dark);
}

.article-title[b-7see5beztf] {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.2;
    margin: 0 0 1.5rem 0;
    max-width: 800px;
}

.article-meta[b-7see5beztf] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 1.5rem;
}

.meta-info[b-7see5beztf] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.meta-item[b-7see5beztf] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.9rem;
    opacity: 0.9;
}

/* Article Body */
.article-body[b-7see5beztf] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 2rem;
}

.article-content-wrapper[b-7see5beztf] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 2rem;
    align-items: start;
}

.article-main[b-7see5beztf] {
    min-width: 0;
}

.article-sidebar[b-7see5beztf] {
    position: sticky;
    top: 100px;
}

/* Article Tags */
.article-tags[b-7see5beztf] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 2rem;
}

.article-tag[b-7see5beztf] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 6px 12px;
    background: var(--theme-background);
    border: 1px solid var(--theme-border);
    border-radius: 20px;
    text-decoration: none;
    color: var(--theme-text-secondary);
    font-size: 0.85rem;
    transition: all 0.2s ease;
}

.article-tag:hover[b-7see5beztf] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

/* Article Text */
.article-text[b-7see5beztf] {
    font-size: 1.1rem;
    line-height: 1.8;
    color: var(--theme-text-primary);
}

.article-text h2[b-7see5beztf] {
    font-size: 1.75rem;
    margin: 2rem 0 1rem;
}

.article-text h3[b-7see5beztf] {
    font-size: 1.5rem;
    margin: 1.75rem 0 0.75rem;
}

.article-text p[b-7see5beztf] {
    margin-bottom: 1.25rem;
}

.article-text img[b-7see5beztf] {
    max-width: 100%;
    height: auto;
    border-radius: 8px;
    margin: 1.5rem 0;
}

.article-text blockquote[b-7see5beztf] {
    border-left: 4px solid var(--theme-primary);
    padding-left: 1.5rem;
    margin: 1.5rem 0;
    font-style: italic;
    color: var(--theme-text-secondary);
}

.article-text pre[b-7see5beztf] {
    background: var(--theme-surface);
    padding: 1rem;
    border-radius: 8px;
    overflow-x: auto;
}

.article-text code[b-7see5beztf] {
    background: var(--theme-background);
    padding: 2px 6px;
    border-radius: 4px;
    font-size: 0.9em;
}

.article-text a[b-7see5beztf] {
    color: var(--theme-primary);
}

.article-text ul[b-7see5beztf],
.article-text ol[b-7see5beztf] {
    margin-bottom: 1.25rem;
    padding-left: 1.5rem;
}

.article-text li[b-7see5beztf] {
    margin-bottom: 0.5rem;
}

/* Article Share */
.article-share[b-7see5beztf] {
    margin: 3rem 0;
    padding: 1.5rem;
    background: var(--theme-surface);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

/* Article Author */
.article-author[b-7see5beztf] {
    margin: 2rem 0;
}

/* Article Comments */
.article-comments[b-7see5beztf] {
    margin-top: 2rem;
}

/* Responsive */
@media (max-width: 992px) {
    .article-content-wrapper[b-7see5beztf] {
        grid-template-columns: 1fr;
    }

    .article-sidebar[b-7see5beztf] {
        position: static;
        order: 2;
    }

    .article-title[b-7see5beztf] {
        font-size: 2rem;
    }
}

@media (max-width: 576px) {
    .article-hero[b-7see5beztf] {
        min-height: 300px;
    }

    .hero-content[b-7see5beztf] {
        padding: 1.5rem;
    }

    .article-title[b-7see5beztf] {
        font-size: 1.5rem;
    }

    .article-body[b-7see5beztf] {
        padding: 1rem;
    }

    .article-meta[b-7see5beztf] {
        flex-direction: column;
        align-items: flex-start;
    }
}
/* /Pages/Blogpage.razor.rz.scp.css */
/* Featured Section */
.featured-section[b-7n7n8ove4c] {
    margin-bottom: 3rem;
}

.section-title[b-7n7n8ove4c] {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--theme-text-primary);
    margin: 0 0 1.5rem 0;
    display: flex;
    align-items: center;
    gap: 8px;
}

.section-title i[b-7n7n8ove4c] {
    color: var(--theme-warning);
}

.featured-grid[b-7n7n8ove4c] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1.5rem;
}

/* Blog Content Wrapper */
.blog-content-wrapper[b-7n7n8ove4c] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 2rem;
    align-items: start;
}

.blog-main[b-7n7n8ove4c] {
    min-width: 0;
}

.blog-sidebar-wrapper[b-7n7n8ove4c] {
    position: sticky;
    top: 100px;
}

/* Blog Toolbar */
.blog-toolbar[b-7n7n8ove4c] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 1.5rem;
    background: var(--theme-surface);
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.results-info[b-7n7n8ove4c] {
    font-size: 0.9rem;
    color: var(--theme-text-secondary);
}

.sort-options select[b-7n7n8ove4c] {
    padding: 6px 12px;
    border: 1px solid var(--theme-border);
    border-radius: 6px;
    font-size: 0.875rem;
    background: var(--theme-surface);
    cursor: pointer;
}

.sort-options select:focus[b-7n7n8ove4c] {
    outline: none;
    border-color: var(--theme-primary);
}

/* Blog Grid */
.blog-grid[b-7n7n8ove4c] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
}

/* Pagination */
.pagination[b-7n7n8ove4c] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem;
    padding: 1rem;
}

.page-btn[b-7n7n8ove4c] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px 16px;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    background: var(--theme-surface);
    color: var(--theme-text-primary);
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.page-btn:hover:not(:disabled)[b-7n7n8ove4c] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.page-btn:disabled[b-7n7n8ove4c] {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-info[b-7n7n8ove4c] {
    font-size: 0.9rem;
    color: var(--theme-text-secondary);
}

/* Responsive */
@media (max-width: 992px) {
    .blog-content-wrapper[b-7n7n8ove4c] {
        grid-template-columns: 1fr;
    }

    .blog-sidebar-wrapper[b-7n7n8ove4c] {
        position: static;
        order: -1;
    }

    .featured-grid[b-7n7n8ove4c] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .blog-toolbar[b-7n7n8ove4c] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: stretch;
    }

    .blog-grid[b-7n7n8ove4c] {
        grid-template-columns: 1fr;
    }

    .pagination[b-7n7n8ove4c] {
        flex-wrap: wrap;
    }
}
/* /Pages/BlogSearchPage.razor.rz.scp.css */
/* Search Header */
.search-header[b-xbkvkh0ie2] {
    margin-bottom: 2rem;
}

.search-box-large[b-xbkvkh0ie2] {
    display: flex;
    align-items: center;
    gap: 12px;
    background: var(--theme-surface);
    border: 2px solid var(--theme-border);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    transition: border-color 0.2s ease;
}

.search-box-large:focus-within[b-xbkvkh0ie2] {
    border-color: var(--theme-primary);
}

.search-box-large i[b-xbkvkh0ie2] {
    font-size: 1.25rem;
    color: var(--theme-text-tertiary);
}

.search-box-large input[b-xbkvkh0ie2] {
    flex: 1;
    border: none;
    outline: none;
    font-size: 1rem;
    background: transparent;
}

.search-box-large input[b-xbkvkh0ie2]::placeholder {
    color: var(--theme-text-tertiary);
}

.search-btn[b-xbkvkh0ie2] {
    padding: 10px 24px;
    background: var(--theme-primary);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.95rem;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.2s ease;
}

.search-btn:hover[b-xbkvkh0ie2] {
    background: var(--theme-primary-dark);
}

/* Results Count */
.results-count[b-xbkvkh0ie2] {
    font-size: 0.95rem;
    color: var(--theme-text-secondary);
    margin-bottom: 1.5rem;
    padding: 0.75rem 1rem;
    background: var(--theme-background);
    border-radius: 8px;
}

/* Blog Content Wrapper */
.blog-content-wrapper[b-xbkvkh0ie2] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 2rem;
    align-items: start;
}

.blog-main[b-xbkvkh0ie2] {
    min-width: 0;
}

.blog-sidebar-wrapper[b-xbkvkh0ie2] {
    position: sticky;
    top: 100px;
}

/* Blog Grid */
.blog-grid[b-xbkvkh0ie2] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
}

/* Pagination */
.pagination[b-xbkvkh0ie2] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem;
    padding: 1rem;
}

.page-btn[b-xbkvkh0ie2] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px 16px;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    background: var(--theme-surface);
    color: var(--theme-text-primary);
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.page-btn:hover:not(:disabled)[b-xbkvkh0ie2] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.page-btn:disabled[b-xbkvkh0ie2] {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-info[b-xbkvkh0ie2] {
    font-size: 0.9rem;
    color: var(--theme-text-secondary);
}

/* Responsive */
@media (max-width: 992px) {
    .blog-content-wrapper[b-xbkvkh0ie2] {
        grid-template-columns: 1fr;
    }

    .blog-sidebar-wrapper[b-xbkvkh0ie2] {
        position: static;
        order: -1;
    }
}

@media (max-width: 576px) {
    .search-box-large[b-xbkvkh0ie2] {
        flex-wrap: wrap;
    }

    .search-box-large input[b-xbkvkh0ie2] {
        width: 100%;
        order: 1;
    }

    .search-btn[b-xbkvkh0ie2] {
        width: 100%;
        order: 2;
    }

    .blog-grid[b-xbkvkh0ie2] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/BlogTagPage.razor.rz.scp.css */
/* Tag Header */
.tag-header[b-e6umcc2gzk] {
    display: flex;
    gap: 1.5rem;
    background: var(--theme-surface);
    border-radius: 12px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    margin-bottom: 2rem;
    align-items: center;
}

.tag-icon[b-e6umcc2gzk] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-secondary));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.tag-icon i[b-e6umcc2gzk] {
    font-size: 2rem;
    color: white;
}

.tag-info[b-e6umcc2gzk] {
    flex: 1;
}

.tag-name[b-e6umcc2gzk] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--theme-primary);
    margin: 0 0 0.5rem 0;
}

.tag-count[b-e6umcc2gzk] {
    display: inline-block;
    padding: 4px 12px;
    background: var(--theme-primary-light);
    color: var(--theme-primary);
    border-radius: 20px;
    font-size: 0.85rem;
    font-weight: 500;
}

/* Blog Content Wrapper */
.blog-content-wrapper[b-e6umcc2gzk] {
    display: grid;
    grid-template-columns: 1fr 320px;
    gap: 2rem;
    align-items: start;
}

.blog-main[b-e6umcc2gzk] {
    min-width: 0;
}

.blog-sidebar-wrapper[b-e6umcc2gzk] {
    position: sticky;
    top: 100px;
}

/* Blog Grid */
.blog-grid[b-e6umcc2gzk] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1.5rem;
}

/* Pagination */
.pagination[b-e6umcc2gzk] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 1rem;
    margin-top: 2rem;
    padding: 1rem;
}

.page-btn[b-e6umcc2gzk] {
    display: flex;
    align-items: center;
    gap: 4px;
    padding: 8px 16px;
    border: 1px solid var(--theme-border);
    border-radius: 8px;
    background: var(--theme-surface);
    color: var(--theme-text-primary);
    font-size: 0.9rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.page-btn:hover:not(:disabled)[b-e6umcc2gzk] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.page-btn:disabled[b-e6umcc2gzk] {
    opacity: 0.5;
    cursor: not-allowed;
}

.page-info[b-e6umcc2gzk] {
    font-size: 0.9rem;
    color: var(--theme-text-secondary);
}

/* Responsive */
@media (max-width: 992px) {
    .blog-content-wrapper[b-e6umcc2gzk] {
        grid-template-columns: 1fr;
    }

    .blog-sidebar-wrapper[b-e6umcc2gzk] {
        position: static;
        order: -1;
    }
}

@media (max-width: 576px) {
    .tag-header[b-e6umcc2gzk] {
        flex-direction: column;
        text-align: center;
    }

    .tag-icon[b-e6umcc2gzk] {
        width: 60px;
        height: 60px;
    }

    .tag-icon i[b-e6umcc2gzk] {
        font-size: 1.5rem;
    }

    .tag-name[b-e6umcc2gzk] {
        font-size: 1.5rem;
    }

    .blog-grid[b-e6umcc2gzk] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/CourseCategoryPage.razor.rz.scp.css */
/* Categories Section Styles */
.categories-section[b-27aebd7y5z] {
    background: var(--bg-surface);
}

/* Section Header */
.section-header[b-27aebd7y5z] {
    margin-bottom: 3rem;
}

.section-badge[b-27aebd7y5z] {
    display: inline-flex;
    align-items: center;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    padding: 0.5rem 1rem;
    border-radius: 50px;
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 1rem;
}

.section-title[b-27aebd7y5z] {
    font-size: 2.25rem;
    font-weight: 800;
    color: var(--text-heading);
    margin-bottom: 0.75rem;
}

.section-description[b-27aebd7y5z] {
    font-size: 1rem;
    color: var(--text-secondary);
    margin: 0;
}

.btn-view-all[b-27aebd7y5z] {
    display: inline-flex;
    align-items: center;
    color: var(--theme-primary);
    font-weight: 600;
    text-decoration: none;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.btn-view-all:hover[b-27aebd7y5z] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

/* Category Card */
.category-card[b-27aebd7y5z] {
    margin: 0.5rem;
}

.category-link[b-27aebd7y5z] {
    display: block;
    text-decoration: none;
    background: var(--bg-surface);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    transition: all 0.3s ease;
}

.category-link:hover[b-27aebd7y5z] {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
    border-color: transparent;
}

.category-image[b-27aebd7y5z] {
    position: relative;
    height: 160px;
    overflow: hidden;
}

.category-image img[b-27aebd7y5z] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.category-link:hover .category-image img[b-27aebd7y5z] {
    transform: scale(1.1);
}

.category-overlay[b-27aebd7y5z] {
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-emphasis));
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.category-link:hover .category-overlay[b-27aebd7y5z] {
    opacity: 0.85;
}

.category-overlay i[b-27aebd7y5z] {
    color: var(--text-inverse);
    font-size: 2rem;
    transform: translateX(-20px);
    transition: transform 0.3s ease;
}

.category-link:hover .category-overlay i[b-27aebd7y5z] {
    transform: translateX(0);
}

.category-content[b-27aebd7y5z] {
    padding: 1.25rem;
}

.category-name[b-27aebd7y5z] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-heading);
    margin-bottom: 0.25rem;
}

.category-description[b-27aebd7y5z] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.5;
}

/* Note: Empty state now uses centralized EmptyState component. */

/* Error State */
.error-state[b-27aebd7y5z] {
    text-align: center;
    padding: 4rem 2rem;
}

.error-icon[b-27aebd7y5z] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
}

.error-icon i[b-27aebd7y5z] {
    font-size: 2rem;
    color: var(--text-muted);
}

.error-state h5[b-27aebd7y5z] {
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.error-state p[b-27aebd7y5z] {
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
}

/* Carousel Navigation Override */
.categories-section[b-27aebd7y5z]  .owl-nav {
    position: absolute;
    top: 50%;
    width: 100%;
    transform: translateY(-50%);
    display: flex;
    justify-content: space-between;
    pointer-events: none;
    padding: 0;
    margin: 0;
}

.categories-section[b-27aebd7y5z]  .owl-nav button {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: var(--bg-surface) !important;
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
    pointer-events: auto;
    margin: 0 -22px;
    transition: all 0.3s ease;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.categories-section[b-27aebd7y5z]  .owl-nav button:hover {
    background: var(--theme-primary) !important;
    color: var(--text-inverse);
}

.categories-section[b-27aebd7y5z]  .owl-nav button.disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

.categories-section[b-27aebd7y5z]  .owl-dots {
    text-align: center;
    margin-top: 2rem;
}

.categories-section[b-27aebd7y5z]  .owl-dot span {
    width: 10px;
    height: 10px;
    background: var(--border-color);
    border-radius: 50%;
    margin: 0 4px;
    transition: all 0.3s ease;
}

.categories-section[b-27aebd7y5z]  .owl-dot.active span {
    background: var(--theme-primary);
    width: 24px;
    border-radius: 5px;
}

/* Responsive */
@media (max-width: 992px) {
    .section-header[b-27aebd7y5z] {
        text-align: center;
        margin-bottom: 2rem;
    }

    .section-header .text-md-end[b-27aebd7y5z] {
        text-align: center !important;
        margin-top: 1rem;
    }

    .section-title[b-27aebd7y5z] {
        font-size: 1.875rem;
    }
}

@media (max-width: 768px) {

    .section-title[b-27aebd7y5z] {
        font-size: 1.5rem;
    }

    .category-image[b-27aebd7y5z] {
        height: 140px;
    }
}
/* /Pages/CourseDetailsPage.razor.rz.scp.css */
.nav-tabs .nav-link.active[b-4djd3ta97n] {
    font-weight: bold;
    color: var(--text-primary);
    border-bottom: var(--border-width-2) solid var(--theme-purple);
}
/* /Pages/CoursePage.razor.rz.scp.css */
/* Courses Section Styles */
.courses-section[b-wg6bx2h89a] {
    background: var(--bg-surface);
}

.courses-section.alt-bg[b-wg6bx2h89a] {
    background: var(--bg-surface-secondary);
}

.courses-section.trending-section[b-wg6bx2h89a] {
    background: linear-gradient(135deg, var(--theme-gray-800) 0%, var(--theme-gray-900) 100%);
}

.trending-section .section-badge[b-wg6bx2h89a],
.trending-section .section-title[b-wg6bx2h89a] {
    color: var(--text-inverse);
}

.trending-section .section-badge[b-wg6bx2h89a] {
    background: var(--theme-danger-subtle);
}

/* Section Header */
.section-header[b-wg6bx2h89a] {
    margin-bottom: 2.5rem;
}

.section-badge[b-wg6bx2h89a] {
    display: inline-flex;
    align-items: center;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    padding: 0.5rem 1rem;
    border-radius: 50px;
    font-size: 0.875rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.badge-success[b-wg6bx2h89a] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.badge-warning[b-wg6bx2h89a] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.badge-danger[b-wg6bx2h89a] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.badge-info[b-wg6bx2h89a] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.section-title[b-wg6bx2h89a] {
    font-size: 2rem;
    font-weight: 800;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.section-description[b-wg6bx2h89a] {
    font-size: 1rem;
    color: var(--text-secondary);
    margin: 0;
}

.btn-view-all[b-wg6bx2h89a] {
    display: inline-flex;
    align-items: center;
    color: var(--theme-primary);
    font-weight: 600;
    text-decoration: none;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    transition: all 0.3s ease;
}

.btn-view-all:hover[b-wg6bx2h89a] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

/* Courses Grid */
.courses-grid[b-wg6bx2h89a] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1.5rem;
}

/* Course Card */
.course-card[b-wg6bx2h89a] {
    background: var(--bg-surface);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    transition: all 0.3s ease;
}

.course-card:hover[b-wg6bx2h89a] {
    transform: translateY(-8px);
    box-shadow: var(--shadow-lg);
    border-color: transparent;
}

.course-card .course-image[b-wg6bx2h89a] {
    position: relative;
    height: 180px;
    overflow: hidden;
}

.course-card .course-image img[b-wg6bx2h89a] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.course-card:hover .course-image img[b-wg6bx2h89a] {
    transform: scale(1.1);
}

.course-discount-badge[b-wg6bx2h89a] {
    position: absolute;
    top: 12px;
    left: 12px;
    background: var(--theme-danger);
    color: var(--text-inverse);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 700;
}

.course-wishlist[b-wg6bx2h89a] {
    position: absolute;
    top: 12px;
    right: 12px;
    width: 36px;
    height: 36px;
    background: var(--bg-surface);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
    opacity: 0;
}

.course-card:hover .course-wishlist[b-wg6bx2h89a] {
    opacity: 1;
}

.course-wishlist:hover[b-wg6bx2h89a] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.course-body[b-wg6bx2h89a] {
    padding: 1.25rem;
}

.course-meta[b-wg6bx2h89a] {
    display: flex;
    gap: 1rem;
    margin-bottom: 0.75rem;
}

.course-level[b-wg6bx2h89a],
.course-duration[b-wg6bx2h89a] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
}

.course-title[b-wg6bx2h89a] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.75rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.4;
    transition: color 0.2s ease;
}

.course-card:hover .course-title[b-wg6bx2h89a] {
    color: var(--theme-primary);
}

.course-instructor[b-wg6bx2h89a] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.course-instructor img[b-wg6bx2h89a] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    object-fit: cover;
}

.course-instructor a[b-wg6bx2h89a] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    text-decoration: none;
}

.course-instructor a:hover[b-wg6bx2h89a] {
    color: var(--theme-primary);
}

.course-footer[b-wg6bx2h89a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
}

/* Rating */
.rating-stars[b-wg6bx2h89a] {
    display: flex;
    align-items: center;
    gap: 0.125rem;
}

.rating-stars i[b-wg6bx2h89a] {
    font-size: 0.875rem;
    color: var(--theme-warning);
}

.rating-stars i.ti-star[b-wg6bx2h89a] {
    color: var(--border-color);
}

.rating-value[b-wg6bx2h89a] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-left: 0.375rem;
}

.rating-count[b-wg6bx2h89a] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Price */
.price-free[b-wg6bx2h89a] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: var(--text-inverse);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 700;
}

.price-current[b-wg6bx2h89a] {
    font-size: 1.125rem;
    font-weight: 800;
    color: var(--theme-primary);
}

.price-original[b-wg6bx2h89a] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    margin-left: 0.375rem;
}

/* Compact Course Card */
.course-card-compact[b-wg6bx2h89a] {
    background: var(--bg-surface);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    margin: 0.5rem;
    transition: all 0.3s ease;
}

.course-card-compact:hover[b-wg6bx2h89a] {
    transform: translateY(-4px);
    box-shadow: var(--shadow-lg);
}

.course-card-compact .course-image[b-wg6bx2h89a] {
    height: 160px;
    overflow: hidden;
}

.course-card-compact .course-image img[b-wg6bx2h89a] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.course-card-compact:hover .course-image img[b-wg6bx2h89a] {
    transform: scale(1.05);
}

.course-card-compact .course-body[b-wg6bx2h89a] {
    padding: 1rem;
    position: relative;
}

.course-card-compact .course-level[b-wg6bx2h89a] {
    display: inline-block;
    background: var(--bg-surface-secondary);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-bottom: 0.5rem;
}

.course-card-compact .instructor-avatar[b-wg6bx2h89a] {
    position: absolute;
    top: -20px;
    right: 16px;
}

.course-card-compact .instructor-avatar img[b-wg6bx2h89a] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 3px solid var(--bg-surface);
    box-shadow: var(--shadow-sm);
    object-fit: cover;
}

.course-card-compact .course-title[b-wg6bx2h89a] {
    font-size: 0.9375rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
}

.course-card-compact .course-meta[b-wg6bx2h89a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.5rem;
}

.price-compact[b-wg6bx2h89a] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-primary);
}

.price-compact.free[b-wg6bx2h89a] {
    color: var(--theme-success);
}

.rating-compact[b-wg6bx2h89a] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.rating-compact i[b-wg6bx2h89a] {
    color: var(--theme-warning);
}

/* Trending Card */
.trending-card[b-wg6bx2h89a] {
    background: linear-gradient(135deg, var(--theme-primary-subtle), var(--theme-primary-emphasis));
    border-radius: 16px;
    padding: 1.5rem;
    margin: 0.5rem;
    transition: all 0.3s ease;
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.trending-card:hover[b-wg6bx2h89a] {
    transform: translateY(-4px);
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-emphasis));
}

.trending-category[b-wg6bx2h89a] {
    display: inline-block;
    background: rgba(255, 255, 255, 0.2);
    color: var(--text-inverse);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    margin-bottom: 0.75rem;
}

.trending-type[b-wg6bx2h89a] {
    display: block;
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.8125rem;
    margin-bottom: 0.5rem;
}

.trending-title[b-wg6bx2h89a] {
    color: var(--text-inverse);
    font-size: 1rem;
    font-weight: 600;
    margin-bottom: 1rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.trending-footer[b-wg6bx2h89a] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.trending-price .price-free[b-wg6bx2h89a],
.trending-price .price-current[b-wg6bx2h89a] {
    color: var(--text-inverse);
    background: transparent;
    padding: 0;
    font-size: 1.125rem;
}

.trending-instructor img[b-wg6bx2h89a] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid rgba(255, 255, 255, 0.3);
    object-fit: cover;
}

/* Error & Empty States */
.error-state[b-wg6bx2h89a] {
    text-align: center;
    padding: 4rem 2rem;
}

.error-icon[b-wg6bx2h89a] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem;
}

.error-icon i[b-wg6bx2h89a] {
    font-size: 2rem;
    color: var(--text-muted);
}

.error-state h5[b-wg6bx2h89a] {
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.error-state p[b-wg6bx2h89a] {
    color: var(--text-secondary);
    margin-bottom: 1.5rem;
}

.empty-courses[b-wg6bx2h89a] {
    grid-column: 1 / -1;
    text-align: center;
    padding: 3rem;
}

/* Carousel Navigation */
.carousel-section[b-wg6bx2h89a]  .owl-nav {
    position: absolute;
    top: -60px;
    right: 0;
    display: flex;
    gap: 0.5rem;
}

.carousel-section[b-wg6bx2h89a]  .owl-nav button {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--bg-surface) !important;
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
    transition: all 0.3s ease;
    display: flex !important;
    align-items: center;
    justify-content: center;
}

.carousel-section[b-wg6bx2h89a]  .owl-nav button:hover {
    background: var(--theme-primary) !important;
    color: var(--text-inverse);
}

.trending-section[b-wg6bx2h89a]  .owl-nav button {
    background: rgba(255, 255, 255, 0.1) !important;
    color: var(--text-inverse);
}

.trending-section[b-wg6bx2h89a]  .owl-nav button:hover {
    background: rgba(255, 255, 255, 0.2) !important;
}

.carousel-section[b-wg6bx2h89a]  .owl-dots {
    text-align: center;
    margin-top: 2rem;
}

.carousel-section[b-wg6bx2h89a]  .owl-dot span {
    width: 10px;
    height: 10px;
    background: var(--border-color);
    border-radius: 50%;
    margin: 0 4px;
    transition: all 0.3s ease;
}

.carousel-section[b-wg6bx2h89a]  .owl-dot.active span {
    background: var(--theme-primary);
    width: 24px;
    border-radius: 5px;
}

.trending-section[b-wg6bx2h89a]  .owl-dot span {
    background: rgba(255, 255, 255, 0.3);
}

.trending-section[b-wg6bx2h89a]  .owl-dot.active span {
    background: var(--text-inverse);
}

/* Responsive */
@media (max-width: 1200px) {
    .courses-grid[b-wg6bx2h89a] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 992px) {
    .courses-grid[b-wg6bx2h89a] {
        grid-template-columns: repeat(2, 1fr);
    }

    .section-header[b-wg6bx2h89a] {
        text-align: center;
        margin-bottom: 2rem;
    }

    .section-header .text-md-end[b-wg6bx2h89a] {
        text-align: center !important;
        margin-top: 1rem;
    }
}

@media (max-width: 768px) {

    .courses-grid[b-wg6bx2h89a] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .section-title[b-wg6bx2h89a] {
        font-size: 1.5rem;
    }

    .carousel-section[b-wg6bx2h89a]  .owl-nav {
        position: static;
        justify-content: center;
        margin-bottom: 1rem;
    }
}

/* Dark-mode adjustments — most colors flow through tokens; this block tightens
   the trending-section gradient and hover surfaces that don't have a clean token. */
[data-bs-theme="dark"] .courses-section.trending-section[b-wg6bx2h89a] {
    background: linear-gradient(135deg, var(--bg-darkest) 0%, var(--bg-darkest) 100%);
}

[data-bs-theme="dark"] .trending-card[b-wg6bx2h89a] {
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.18), rgba(118, 75, 162, 0.32));
    border-color: rgba(255, 255, 255, 0.06);
}

[data-bs-theme="dark"] .trending-card:hover[b-wg6bx2h89a] {
    background: linear-gradient(135deg, rgba(102, 126, 234, 0.28), rgba(118, 75, 162, 0.45));
}
/* /Pages/Emis/EmisSetup.razor.rz.scp.css */
/* Intentionally empty — all styles use shared components and global CSS */
/* /Pages/Emis/ExternalSync.razor.rz.scp.css */
/* ─── Section Header ─── */
[b-vjoab13th7] .section-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

[b-vjoab13th7] .section-header h3 {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
}

[b-vjoab13th7] .add-source-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.4rem 0.85rem;
    background: rgba(var(--theme-primary-rgb), 0.06);
    color: var(--theme-primary);
    border: 1px solid rgba(var(--theme-primary-rgb), 0.2);
    border-radius: 0.5rem;
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
}

[b-vjoab13th7] .add-source-btn:hover {
    background: rgba(var(--theme-primary-rgb), 0.1);
}

/* ─── Sources Grid ─── */
[b-vjoab13th7] .sources-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1rem;
    margin-bottom: 1.5rem;
}

[b-vjoab13th7] .source-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.75rem;
    padding: 1rem;
    transition: all 0.15s;
}

[b-vjoab13th7] .source-card:hover {
    border-color: rgba(var(--theme-primary-rgb), 0.3);
    box-shadow: 0 2px 8px rgba(13, 148, 136, 0.08);
}

[b-vjoab13th7] .source-card.inactive {
    opacity: 0.6;
}

[b-vjoab13th7] .source-card-header {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 0.75rem;
}

[b-vjoab13th7] .source-info {
    display: flex;
    flex-direction: column;
    gap: 0.15rem;
}

[b-vjoab13th7] .source-code {
    font-weight: 700;
    font-size: 0.95rem;
    color: var(--theme-primary);
}

[b-vjoab13th7] .source-name {
    font-size: 0.8rem;
    color: var(--text-secondary);
}

[b-vjoab13th7] .source-actions {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

[b-vjoab13th7] .source-card-body {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    margin-bottom: 0.75rem;
}

[b-vjoab13th7] .source-detail {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.78rem;
    color: var(--text-secondary);
}

[b-vjoab13th7] .source-detail i {
    font-size: 0.85rem;
    width: 16px;
    flex-shrink: 0;
}

[b-vjoab13th7] .source-url {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

[b-vjoab13th7] .source-card-footer {
    border-top: 1px solid var(--border-color);
    padding-top: 0.75rem;
}

[b-vjoab13th7] .sync-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.4rem 0.85rem;
    background: var(--theme-primary);
    color: var(--text-inverse);
    border: none;
    border-radius: 0.5rem;
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.15s;
}

[b-vjoab13th7] .sync-btn:hover:not(:disabled) {
    background: var(--theme-primary-emphasis);
}

[b-vjoab13th7] .sync-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ─── Sync Panel ─── */
[b-vjoab13th7] .sync-panel {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.75rem;
    padding: 1.25rem;
    margin-top: 1.5rem;
}

[b-vjoab13th7] .sync-panel-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 1rem;
}

[b-vjoab13th7] .sync-panel-header h3 {
    font-size: 0.95rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    color: var(--theme-primary);
}

[b-vjoab13th7] .sync-controls {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: flex-end;
    margin-bottom: 1rem;
}

[b-vjoab13th7] .sync-field {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
}

[b-vjoab13th7] .sync-field label {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
}

[b-vjoab13th7] .sync-input,
[b-vjoab13th7] .sync-select {
    padding: 0.45rem 0.65rem;
    border: 1px solid var(--border-color);
    border-radius: 0.375rem;
    font-size: 0.85rem;
    min-width: 180px;
}

[b-vjoab13th7] .checkbox-field label {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    cursor: pointer;
}

[b-vjoab13th7] .sync-actions {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

/* ─── Errors ─── */
[b-vjoab13th7] .sync-errors {
    margin-bottom: 1rem;
}

[b-vjoab13th7] .sync-error {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 0.75rem;
    background: rgba(220, 38, 38, 0.08);
    color: var(--theme-danger);
    border-radius: 0.375rem;
    font-size: 0.8rem;
    margin-bottom: 0.35rem;
}

/* ─── Preview Summary ─── */
[b-vjoab13th7] .preview-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

[b-vjoab13th7] .summary-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0.65rem 1.25rem;
    border-radius: 0.5rem;
    min-width: 90px;
}

[b-vjoab13th7] .summary-item.total { background: var(--bg-surface-secondary); }
[b-vjoab13th7] .summary-item.new { background: rgba(16, 185, 129, 0.08); }
[b-vjoab13th7] .summary-item.update { background: rgba(59, 130, 246, 0.08); }
[b-vjoab13th7] .summary-item.skip { background: var(--bg-surface-secondary); }

[b-vjoab13th7] .summary-count {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
}

[b-vjoab13th7] .summary-label {
    font-size: 0.7rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    font-weight: 500;
}

/* ─── Preview Table ─── */
[b-vjoab13th7] .preview-table-container {
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    overflow: hidden;
}

[b-vjoab13th7] .preview-filter {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.65rem 0.75rem;
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
    flex-wrap: wrap;
}

[b-vjoab13th7] .preview-search {
    padding: 0.35rem 0.65rem;
    border: 1px solid var(--border-color);
    border-radius: 0.375rem;
    font-size: 0.8rem;
    min-width: 200px;
}

[b-vjoab13th7] .preview-tabs {
    display: flex;
    gap: 0.25rem;
}

[b-vjoab13th7] .preview-tab {
    padding: 0.3rem 0.65rem;
    border: 1px solid transparent;
    background: transparent;
    border-radius: 0.375rem;
    font-size: 0.78rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.3rem;
    color: var(--text-secondary);
}

[b-vjoab13th7] .preview-tab.active {
    background: var(--bg-surface);
    border-color: var(--border-color);
    color: var(--text-primary);
    font-weight: 500;
}

[b-vjoab13th7] .tab-badge {
    font-size: 0.7rem;
    padding: 0.1rem 0.4rem;
    border-radius: 1rem;
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    font-weight: 600;
}

[b-vjoab13th7] .tab-badge.success { background: rgba(4, 120, 87, 0.15); color: var(--theme-success); }
[b-vjoab13th7] .tab-badge.info { background: rgba(37, 99, 235, 0.15); color: var(--theme-info); }
[b-vjoab13th7] .tab-badge.warning { background: rgba(245, 158, 11, 0.15); color: var(--theme-warning); }

[b-vjoab13th7] .preview-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

[b-vjoab13th7] .preview-table th {
    text-align: left;
    padding: 0.55rem 0.75rem;
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    color: var(--text-secondary);
}

[b-vjoab13th7] .preview-table td {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

[b-vjoab13th7] .preview-table tr:hover {
    background: var(--bg-surface-secondary);
}

/* ─── Ledger Warning ─── */
[b-vjoab13th7] .ledger-warning {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.65rem 0.85rem;
    background: rgba(220, 38, 38, 0.1);
    border: 1px solid rgba(220, 38, 38, 0.3);
    border-radius: 0.5rem;
    color: var(--theme-danger);
    font-size: 0.8rem;
    line-height: 1.45;
    width: 100%;
}

[b-vjoab13th7] .ledger-warning i {
    font-size: 1.1rem;
    color: var(--theme-danger);
    flex-shrink: 0;
    margin-top: 0.1rem;
}

/* ─── Status Badges ─── */
[b-vjoab13th7] .status-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.55rem;
    border-radius: 1rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    white-space: nowrap;
}

[b-vjoab13th7] .status-badge i { font-size: 0.75rem; }

[b-vjoab13th7] .status-badge.new    { background: rgba(4, 120, 87, 0.15);  color: var(--theme-success); }
[b-vjoab13th7] .status-badge.update { background: rgba(37, 99, 235, 0.15); color: var(--theme-info); }
[b-vjoab13th7] .status-badge.skip   { background: rgba(245, 158, 11, 0.15); color: var(--theme-warning); }
[b-vjoab13th7] .status-badge.error  { background: rgba(220, 38, 38, 0.15); color: var(--theme-danger); }

/* ─── Row Backgrounds ─── */
[b-vjoab13th7] .status-row-new    { background: rgba(4, 120, 87, 0.05); }
[b-vjoab13th7] .status-row-update { background: rgba(37, 99, 235, 0.05); }
[b-vjoab13th7] .status-row-skip   { background: rgba(245, 158, 11, 0.04); }
[b-vjoab13th7] .status-row-error  { background: rgba(220, 38, 38, 0.05); }

/* ─── Reason Badges ─── */
[b-vjoab13th7] .reason-badge {
    display: inline-block;
    padding: 0.15rem 0.5rem;
    border-radius: 0.375rem;
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
}

[b-vjoab13th7] .reason-unchanged { background: rgba(100, 116, 139, 0.12); color: var(--text-muted); }
[b-vjoab13th7] .reason-new       { background: rgba(5, 150, 105, 0.12);   color: var(--theme-success); }
[b-vjoab13th7] .reason-updated   { background: rgba(37, 99, 235, 0.12);   color: var(--theme-info); }
[b-vjoab13th7] .reason-error     { background: rgba(220, 38, 38, 0.12);   color: var(--theme-danger); }
[b-vjoab13th7] .reason-duplicate { background: rgba(245, 158, 11, 0.12);  color: var(--theme-warning); }
[b-vjoab13th7] .reason-default   { background: rgba(71, 85, 105, 0.1);    color: var(--text-secondary); }

[b-vjoab13th7] .preview-truncated {
    text-align: center;
    padding: 0.5rem;
    font-size: 0.78rem;
    color: var(--text-secondary);
    background: var(--bg-surface-secondary);
}

/* ─── Commit Results ─── */
[b-vjoab13th7] .commit-results {
    background: rgba(5, 150, 105, 0.08);
    border: 1px solid rgba(5, 150, 105, 0.25);
    border-radius: 0.5rem;
    padding: 1rem;
    margin-top: 1rem;
}

[b-vjoab13th7] .commit-results h4 {
    margin: 0 0 0.75rem;
    font-size: 0.95rem;
    color: var(--theme-success);
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

[b-vjoab13th7] .commit-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1.5rem;
}

[b-vjoab13th7] .commit-item {
    font-size: 0.85rem;
    color: var(--text-primary);
}

/* ─── Job Progress ─── */
[b-vjoab13th7] .job-progress {
    background: rgba(59, 130, 246, 0.06);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 0.5rem;
    padding: 1rem;
    margin-top: 0.75rem;
}

[b-vjoab13th7] .job-progress-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.5rem;
}

[b-vjoab13th7] .job-type-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--blue-700);
    background: rgba(59, 130, 246, 0.12);
    padding: 0.2rem 0.6rem;
    border-radius: 0.25rem;
}

[b-vjoab13th7] .job-status {
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    padding: 0.15rem 0.5rem;
    border-radius: 0.25rem;
}

[b-vjoab13th7] .job-status.processing {
    color: var(--blue-700);
    background: rgba(59, 130, 246, 0.12);
}

[b-vjoab13th7] .job-status.queued {
    color: var(--amber-700);
    background: rgba(245, 158, 11, 0.12);
}

[b-vjoab13th7] .progress-bar-container {
    width: 100%;
    height: 6px;
    background: rgba(59, 130, 246, 0.12);
    border-radius: 3px;
    overflow: hidden;
}

[b-vjoab13th7] .progress-bar {
    height: 100%;
    background: var(--blue-500);
    border-radius: 3px;
    transition: width 0.3s ease;
}

[b-vjoab13th7] .progress-detail {
    display: flex;
    justify-content: space-between;
    margin-top: 0.35rem;
    font-size: 0.78rem;
    color: var(--text-secondary);
}

[b-vjoab13th7] .progress-pct {
    font-weight: 600;
    color: var(--blue-600);
}

/* ─── Job Result ─── */
[b-vjoab13th7] .job-result {
    background: rgba(5, 150, 105, 0.06);
    border: 1px solid rgba(5, 150, 105, 0.2);
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
    margin-top: 0.75rem;
}

[b-vjoab13th7] .job-result.failed {
    background: rgba(239, 68, 68, 0.06);
    border-color: rgba(239, 68, 68, 0.2);
}

[b-vjoab13th7] .job-result-header {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.85rem;
    color: var(--green-700);
}

[b-vjoab13th7] .job-result.failed .job-result-header {
    color: var(--red-700);
}

[b-vjoab13th7] .job-time {
    margin-left: auto;
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 400;
}

[b-vjoab13th7] .job-result-msg {
    margin: 0.4rem 0 0;
    font-size: 0.82rem;
    color: var(--text-primary);
}

[b-vjoab13th7] .result-grid {
    display: flex;
    gap: 1.25rem;
    margin-top: 0.5rem;
}

[b-vjoab13th7] .result-item {
    display: flex;
    flex-direction: column;
}

[b-vjoab13th7] .result-label {
    font-size: 0.7rem;
    text-transform: uppercase;
    font-weight: 600;
    color: var(--text-secondary);
}

[b-vjoab13th7] .result-value {
    font-size: 1.1rem;
    font-weight: 700;
    color: var(--text-primary);
}

[b-vjoab13th7] .result-value.muted {
    color: var(--text-secondary);
}

[b-vjoab13th7] .result-value.error {
    color: var(--red-600);
}

/* ─── Mapping Table ─── */
[b-vjoab13th7] .mapping-table {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.85rem;
    margin-bottom: 0.75rem;
}

[b-vjoab13th7] .mapping-table th {
    text-align: left;
    padding: 0.4rem 0.5rem;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    color: var(--text-secondary);
    border-bottom: 1px solid var(--border-color);
}

[b-vjoab13th7] .mapping-table td {
    padding: 0.25rem 0.25rem;
    vertical-align: top;
}

/* Compact Fsh components inside mapping table */
[b-vjoab13th7] .mapping-table .fsh-field {
    margin-bottom: 0;
}

[b-vjoab13th7] .mapping-table .fsh-field-label {
    display: none;
}

[b-vjoab13th7] .mapping-table .fsh-field-helper {
    display: none;
}

[b-vjoab13th7] .mapping-table .fsh-select-field {
    margin-bottom: 0;
}

[b-vjoab13th7] .mapping-table .fsh-select-label {
    display: none;
}

[b-vjoab13th7] .mapping-table .fsh-checkbox {
    margin-top: 0.5rem;
}

[b-vjoab13th7] .mapping-table th:nth-child(4),
[b-vjoab13th7] .mapping-table td:nth-child(4) {
    width: 40px;
    text-align: center;
}

[b-vjoab13th7] .mapping-table th:nth-child(5),
[b-vjoab13th7] .mapping-table td:nth-child(5) {
    width: 36px;
}

/* ─── Subsections (inside FshModal) ─── */
[b-vjoab13th7] .subsection {
    margin-top: 1.25rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
}

[b-vjoab13th7] .subsection h4 {
    font-size: 0.85rem;
    font-weight: 600;
    margin: 0 0 0.25rem;
    color: var(--text-primary);
}

[b-vjoab13th7] .subsection-desc {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin: 0 0 0.75rem;
}

/* ─── Query Params ─── */
[b-vjoab13th7] .param-list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

[b-vjoab13th7] .param-row {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

[b-vjoab13th7] .param-row input {
    flex: 1;
    padding: 0.4rem 0.6rem;
    border: 1px solid var(--border-color);
    border-radius: 0.375rem;
    font-size: 0.82rem;
}

[b-vjoab13th7] .add-param-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.3rem 0.6rem;
    background: transparent;
    border: 1px dashed var(--border-color);
    border-radius: 0.375rem;
    color: var(--text-secondary);
    font-size: 0.78rem;
    cursor: pointer;
    align-self: flex-start;
}

[b-vjoab13th7] .add-param-btn:hover {
    border-color: rgba(var(--theme-primary-rgb), 0.3);
    color: var(--theme-primary);
}


/* ─── Responsive ─── */
@media (max-width: 768px) {
    [b-vjoab13th7] .sources-grid { grid-template-columns: 1fr; }
    [b-vjoab13th7] .sync-controls { flex-direction: column; align-items: stretch; }
    [b-vjoab13th7] .sync-input, [b-vjoab13th7] .sync-select { min-width: 100%; }
    [b-vjoab13th7] .preview-summary { flex-direction: column; }
    [b-vjoab13th7] .summary-item { flex-direction: row; gap: 0.5rem; }
}

/* Dark mode: No separate block needed.
   All colors use CSS variables (--bg-surface, --text-primary, etc.)
   and rgba() backgrounds that adapt to any background automatically. */

/* ─── Post-Sync Behaviour panel (Phase 1.1 — discoverability) ─── */
[b-vjoab13th7] .post-sync-tag {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.18rem 0.5rem;
    margin: 0.1rem 0.25rem 0.1rem 0;
    font-size: 0.72rem;
    font-weight: 600;
    border-radius: 0.4rem;
    border: 1px solid var(--border-color);
}
[b-vjoab13th7] .post-sync-tag.enabled {
    background: var(--theme-success-subtle, rgba(16,185,129,0.1));
    color: var(--theme-success);
    border-color: var(--theme-success);
}
[b-vjoab13th7] .post-sync-tag.disabled {
    background: var(--bg-card);
    color: var(--text-muted);
    text-decoration: line-through;
}
[b-vjoab13th7] .post-sync-tag.missing {
    background: var(--theme-warning-subtle, rgba(245,158,11,0.1));
    color: var(--theme-warning);
    border-color: var(--theme-warning);
    animation: pulse-b-vjoab13th7 2s ease-in-out infinite;
}
[b-vjoab13th7] .post-sync-tag.muted {
    background: var(--bg-surface-sunken);
    color: var(--text-muted);
    font-style: italic;
}
@keyframes pulse-b-vjoab13th7 {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.6; }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"][b-vjoab13th7]  .source-card,
[data-bs-theme="dark"][b-vjoab13th7]  .sync-panel {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-vjoab13th7]  .preview-table-container {
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-vjoab13th7]  .preview-filter,
[data-bs-theme="dark"][b-vjoab13th7]  .preview-table th,
[data-bs-theme="dark"][b-vjoab13th7]  .preview-truncated,
[data-bs-theme="dark"][b-vjoab13th7]  .summary-item.total,
[data-bs-theme="dark"][b-vjoab13th7]  .summary-item.skip {
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-vjoab13th7]  .preview-tab.active {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-vjoab13th7]  .preview-tab,
[data-bs-theme="dark"][b-vjoab13th7]  .source-name,
[data-bs-theme="dark"][b-vjoab13th7]  .source-detail,
[data-bs-theme="dark"][b-vjoab13th7]  .summary-label,
[data-bs-theme="dark"][b-vjoab13th7]  .progress-detail,
[data-bs-theme="dark"][b-vjoab13th7]  .job-time,
[data-bs-theme="dark"][b-vjoab13th7]  .subsection-desc,
[data-bs-theme="dark"][b-vjoab13th7]  .result-label {
    color: var(--text-muted);
}

[data-bs-theme="dark"][b-vjoab13th7]  .summary-count,
[data-bs-theme="dark"][b-vjoab13th7]  .result-value,
[data-bs-theme="dark"][b-vjoab13th7]  .commit-item,
[data-bs-theme="dark"][b-vjoab13th7]  .job-result-msg,
[data-bs-theme="dark"][b-vjoab13th7]  .subsection h4,
[data-bs-theme="dark"][b-vjoab13th7]  .section-header h3 {
    color: var(--text-primary);
}

[data-bs-theme="dark"][b-vjoab13th7]  .preview-table tr:hover {
    background: var(--bg-surface-secondary);
}

[data-bs-theme="dark"][b-vjoab13th7]  .preview-table td,
[data-bs-theme="dark"][b-vjoab13th7]  .preview-table th,
[data-bs-theme="dark"][b-vjoab13th7]  .source-card-footer,
[data-bs-theme="dark"][b-vjoab13th7]  .subsection,
[data-bs-theme="dark"][b-vjoab13th7]  .mapping-table th {
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-vjoab13th7]  .sync-input,
[data-bs-theme="dark"][b-vjoab13th7]  .sync-select,
[data-bs-theme="dark"][b-vjoab13th7]  .preview-search,
[data-bs-theme="dark"][b-vjoab13th7]  .param-row input {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}
/* /Pages/Emis/StudentEnrollment.razor.rz.scp.css */
/* ============================================
   Student Enrollment Page
   ============================================ */

/* ============ Navigation Bar ============ */
.navigation-bar[b-083qlcztjb] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

/* ============ Vacancy / Academic Year Selector ============ */
.vacancy-inline[b-083qlcztjb] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.vacancy-label[b-083qlcztjb] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.78rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
}

.vacancy-label i[b-083qlcztjb] {
    font-size: 0.9rem;
}

.vacancy-select[b-083qlcztjb] {
    padding: 0.35rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.82rem;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 160px;
}

.vacancy-select:focus[b-083qlcztjb] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(13, 110, 253, 0.15);
}

/* ============ Search ============ */
.search-inline[b-083qlcztjb] {
    flex: 1;
    min-width: 150px;
    max-width: 280px;
}

.nav-search-box[b-083qlcztjb] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0 0.65rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 32px;
    transition: border-color 0.15s;
}

.nav-search-box:focus-within[b-083qlcztjb] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px rgba(13, 110, 253, 0.12);
}

.nav-search-box i[b-083qlcztjb] {
    color: var(--text-muted);
    font-size: 0.9rem;
    flex-shrink: 0;
}

.nav-search-box input[b-083qlcztjb] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.82rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-083qlcztjb]::placeholder {
    color: var(--text-muted);
}

.clear-search[b-083qlcztjb] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.clear-search:hover[b-083qlcztjb] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Inline Tabs ============ */
.tabs-inline[b-083qlcztjb] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.2rem;
    gap: 0.125rem;
}

.tab-compact[b-083qlcztjb] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    padding: 0.4rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s;
    white-space: nowrap;
}

.tab-compact:hover[b-083qlcztjb] {
    color: var(--text-primary);
    background: var(--bg-hover, rgba(0,0,0,0.04));
}

.tab-compact.active[b-083qlcztjb] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

.tab-badge[b-083qlcztjb] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.68rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-083qlcztjb] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-083qlcztjb] {
    background: rgba(5, 150, 105, 0.15);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.success[b-083qlcztjb] {
    background: var(--theme-success-emphasis);
    color: var(--text-inverse);
}

.tab-badge.danger[b-083qlcztjb] {
    background: rgba(239, 68, 68, 0.12);
    color: var(--theme-danger-emphasis);
}

.tab-compact.active .tab-badge.danger[b-083qlcztjb] {
    background: var(--theme-danger-emphasis);
    color: var(--text-inverse);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-083qlcztjb] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: background 0.15s;
    flex-shrink: 0;
    font-size: 0.9rem;
}

.refresh-btn:hover:not(:disabled)[b-083qlcztjb] {
    filter: brightness(0.9);
}

.refresh-btn:disabled[b-083qlcztjb] {
    opacity: 0.5;
    cursor: not-allowed;
}

.spinner-sm[b-083qlcztjb] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255,255,255,0.3);
    border-top-color: var(--bg-surface);
    border-radius: 50%;
    animation: spin-b-083qlcztjb 0.6s linear infinite;
}

@keyframes spin-b-083qlcztjb {
    to { transform: rotate(360deg); }
}

/* ============ Inline Alerts ============ */
.inline-alerts[b-083qlcztjb] {
    margin-bottom: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
}

.inline-alert[b-083qlcztjb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 0.9rem;
    border-radius: 8px;
    font-size: 0.82rem;
}

.inline-alert.info[b-083qlcztjb] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
    color: var(--theme-info-text);
}

.inline-alert.warning[b-083qlcztjb] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
    color: var(--theme-warning-text);
}

/* ============ Bulk Assign Bar ============ */
.bulk-assign-bar[b-083qlcztjb] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    margin-bottom: 0.5rem;
    padding: 0.4rem 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 6px;
    border: 1px solid var(--border-color);
}

.bulk-assign-bar :deep(.fsh-form-group)[b-083qlcztjb] {
    margin-bottom: 0;
    min-width: 140px;
}

/* ============ Nav bar FshSelect alignment ============ */
.vacancy-inline :deep(.fsh-form-group)[b-083qlcztjb] {
    margin-bottom: 0;
    min-width: 180px;
}

/* ============ Content Area ============ */
.content-area[b-083qlcztjb] {
    margin-bottom: 0.75rem;
}

.table-container[b-083qlcztjb] {
    border: 1px solid var(--border-color);
    border-radius: 8px;
    overflow-x: auto;
}

/* ============ Preview Table ============ */
.preview-table[b-083qlcztjb] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

.preview-table th[b-083qlcztjb] {
    text-align: left;
    padding: 0.5rem 0.6rem;
    font-size: 0.72rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-secondary);
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
    white-space: nowrap;
}

.preview-table td[b-083qlcztjb] {
    padding: 0.2rem 0.4rem;
    border-bottom: 1px solid var(--border-color-light);
    vertical-align: middle;
}

/* Kill FshSelect margin inside table cells */
.preview-table td :deep(.fsh-form-group)[b-083qlcztjb] {
    margin-bottom: 0;
}

.preview-table tbody tr:hover[b-083qlcztjb] {
    background: rgba(0, 0, 0, 0.015);
}

.status-row-skip[b-083qlcztjb] {
    background: rgba(245, 158, 11, 0.03);
}

/* ============ Status Badges ============ */
.status-badge[b-083qlcztjb] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem;
    border-radius: 20px;
    font-size: 0.72rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-badge.new[b-083qlcztjb] {
    background: rgba(5, 150, 105, 0.1);
    color: var(--theme-success-emphasis);
}

.status-badge.skip[b-083qlcztjb] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

/* ============ List Footer ============ */
.list-footer[b-083qlcztjb] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
}

.footer-left[b-083qlcztjb] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-083qlcztjb] {
    font-size: 0.78rem;
    color: var(--text-secondary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .navigation-bar[b-083qlcztjb] {
        gap: 0.5rem;
    }

    .vacancy-inline[b-083qlcztjb] {
        width: 100%;
    }

    .vacancy-select[b-083qlcztjb] {
        flex: 1;
    }

    .search-inline[b-083qlcztjb] {
        width: 100%;
        max-width: none;
    }

    .tabs-inline[b-083qlcztjb] {
        width: 100%;
        overflow-x: auto;
    }

    .list-footer[b-083qlcztjb] {
        flex-direction: column;
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    .vacancy-label span[b-083qlcztjb] {
        display: none;
    }

    .tab-compact span:first-child[b-083qlcztjb] {
        display: none;
    }
}
/* /Pages/Emis/StudentImport.razor.rz.scp.css */
/* ===== Settings Row ===== */
.settings-row[b-9bq16ozltb] {
    display: flex;
    gap: 16px;
    flex-wrap: wrap;
    margin-top: 12px;
}

.setting-item[b-9bq16ozltb] {
    flex: 1;
    min-width: 180px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.setting-item label[b-9bq16ozltb] {
    font-size: 0.8rem;
    font-weight: 600;
    color: var(--bs-secondary-color);
    display: flex;
    align-items: center;
    gap: 4px;
}

.setting-select[b-9bq16ozltb] {
    padding: 6px 10px;
    border: 1px solid var(--bs-border-color);
    border-radius: 6px;
    font-size: 0.85rem;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
}

.setting-select:focus[b-9bq16ozltb] {
    outline: none;
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 2px rgba(13, 110, 253, 0.15);
}

.setting-hint[b-9bq16ozltb] {
    font-size: 0.72rem;
    color: var(--bs-secondary-color);
    font-style: italic;
}

/* ===== Upload Zone ===== */
.upload-zone[b-9bq16ozltb] {
    position: relative;
    border: 2px dashed var(--bs-border-color);
    border-radius: 10px;
    padding: 40px 20px;
    text-align: center;
    cursor: pointer;
    transition: all 0.2s;
}

.upload-zone:hover[b-9bq16ozltb] {
    border-color: var(--bs-primary);
    background: rgba(13, 110, 253, 0.03);
}

.upload-input[b-9bq16ozltb] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

.upload-content.dragging[b-9bq16ozltb] {
    opacity: 0.6;
}

.upload-icon[b-9bq16ozltb] {
    font-size: 2.5rem;
    color: var(--bs-primary);
    opacity: 0.6;
    margin-bottom: 8px;
}

/* ===== File Info ===== */
.file-info[b-9bq16ozltb] {
    padding: 12px 16px;
    background: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
}

.file-icon[b-9bq16ozltb] {
    font-size: 1.5rem;
    color: var(--theme-success-emphasis);
    margin-right: 8px;
}

/* ===== Validation Errors ===== */
.error-list[b-9bq16ozltb] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.error-item[b-9bq16ozltb] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 0.8rem;
    padding: 4px 0;
}

.error-field[b-9bq16ozltb] {
    font-weight: 500;
    color: var(--bs-body-color);
    min-width: 100px;
}

.error-msg[b-9bq16ozltb] {
    color: var(--bs-secondary-color);
}

/* ===== Preview Table ===== */
.table-container[b-9bq16ozltb] {
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    overflow: auto;
    max-height: 400px;
}

.preview-table[b-9bq16ozltb] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

.preview-table th[b-9bq16ozltb] {
    position: sticky;
    top: 0;
    background: var(--bs-tertiary-bg);
    padding: 8px 12px;
    text-align: left;
    font-weight: 600;
    border-bottom: 2px solid var(--bs-border-color);
    z-index: 1;
}

.preview-table td[b-9bq16ozltb] {
    padding: 6px 12px;
    border-bottom: 1px solid var(--bs-border-color-translucent);
}

.row-error[b-9bq16ozltb] {
    background: var(--theme-danger-subtle);
}

.row-duplicate[b-9bq16ozltb] {
    background: var(--theme-warning-subtle);
}

/* ===== Status Message ===== */
.status-msg[b-9bq16ozltb] {
    font-size: 0.72rem;
    color: var(--bs-secondary-color);
    margin-left: 4px;
}

/* ===== Responsive ===== */
@media (max-width: 768px) {
    .settings-row[b-9bq16ozltb] {
        flex-direction: column;
    }
}
/* /Pages/Emis/StudentRollcall.razor.rz.scp.css */
/* ===== Configuration Row ===== */
.config-row[b-q89wvwn6d0] {
    display: flex;
    gap: 12px;
    padding: 12px 16px;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    margin-bottom: 12px;
    flex-wrap: wrap;
    align-items: end;
}

.config-item[b-q89wvwn6d0] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 160px;
    flex: 1;
}

.config-label[b-q89wvwn6d0] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--bs-secondary-color);
    display: flex;
    align-items: center;
    gap: 4px;
}

.config-label i[b-q89wvwn6d0] {
    font-size: 0.85rem;
}

.config-select[b-q89wvwn6d0] {
    padding: 6px 10px;
    border: 1px solid var(--bs-border-color);
    border-radius: 6px;
    font-size: 0.85rem;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
}

.config-select:focus[b-q89wvwn6d0] {
    outline: none;
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 2px rgba(13, 110, 253, 0.15);
}

/* ===== Navigation Bar ===== */
.navigation-bar[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    margin-bottom: 12px;
}

/* ===== Search ===== */
.search-inline[b-q89wvwn6d0] {
    flex: 1;
    min-width: 200px;
}

.nav-search-box[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 6px 10px;
    background: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 6px;
}

.nav-search-box i[b-q89wvwn6d0] {
    color: var(--bs-secondary-color);
    font-size: 0.9rem;
}

.nav-search-box input[b-q89wvwn6d0] {
    border: none;
    background: transparent;
    outline: none;
    width: 100%;
    font-size: 0.85rem;
    color: var(--bs-body-color);
}

.clear-search[b-q89wvwn6d0] {
    border: none;
    background: none;
    padding: 0;
    cursor: pointer;
    color: var(--bs-secondary-color);
    font-size: 0.8rem;
}

/* ===== Refresh Button ===== */
.refresh-btn[b-q89wvwn6d0] {
    padding: 6px 10px;
    border: 1px solid var(--bs-border-color);
    border-radius: 6px;
    background: var(--bs-body-bg);
    cursor: pointer;
    color: var(--bs-body-color);
    font-size: 0.9rem;
    display: flex;
    align-items: center;
}

.refresh-btn:hover:not(:disabled)[b-q89wvwn6d0] {
    background: var(--bs-tertiary-bg);
}

.refresh-btn:disabled[b-q89wvwn6d0] {
    opacity: 0.5;
    cursor: not-allowed;
}

.spinner-sm[b-q89wvwn6d0] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid var(--bs-border-color);
    border-top-color: var(--bs-primary);
    border-radius: 50%;
    animation: spin-b-q89wvwn6d0 0.6s linear infinite;
}

@keyframes spin-b-q89wvwn6d0 {
    to { transform: rotate(360deg); }
}

/* ===== Inline Alerts ===== */
.inline-alerts[b-q89wvwn6d0] {
    margin-bottom: 12px;
}

.inline-alert[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 14px;
    border-radius: 8px;
    font-size: 0.85rem;
}

.inline-alert.info[b-q89wvwn6d0] {
    background: var(--theme-info-subtle);
    border: 1px solid var(--theme-info);
    color: var(--theme-info-emphasis);
}

.inline-alert.warning[b-q89wvwn6d0] {
    background: var(--highlight-bg);
    border: 1px solid var(--theme-warning);
    color: var(--theme-warning-text);
}

.alert-sep[b-q89wvwn6d0] {
    margin: 0 4px;
    color: inherit;
    opacity: 0.5;
}

/* ===== Content Area ===== */
.content-area[b-q89wvwn6d0] {
    margin-bottom: 12px;
}

.table-container[b-q89wvwn6d0] {
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    overflow: hidden;
}

.empty-state[b-q89wvwn6d0] {
    text-align: center;
    padding: 60px 20px;
    color: var(--bs-secondary-color);
}

.empty-state i[b-q89wvwn6d0] {
    font-size: 3rem;
    margin-bottom: 12px;
    opacity: 0.4;
}

.empty-state h5[b-q89wvwn6d0] {
    margin-bottom: 8px;
}

.empty-state p[b-q89wvwn6d0] {
    font-size: 0.9rem;
    margin: 0;
}

/* ===== Status Badges ===== */
.status-badge[b-q89wvwn6d0] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-enrolled[b-q89wvwn6d0] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.status-eligible[b-q89wvwn6d0] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

/* ===== Inline Select (per-row grade/programme) ===== */
.inline-select[b-q89wvwn6d0] {
    padding: 3px 6px;
    border: 1px solid var(--bs-border-color);
    border-radius: 4px;
    font-size: 0.8rem;
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
    width: 100%;
    max-width: 140px;
}

.inline-select:focus[b-q89wvwn6d0] {
    outline: none;
    border-color: var(--bs-primary);
}

/* ===== Action Bar ===== */
.action-bar[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 12px 16px;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
    margin-bottom: 12px;
}

.action-bar-left[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.selection-count[b-q89wvwn6d0] {
    font-size: 0.85rem;
    color: var(--bs-secondary-color);
}

/* ===== List Footer ===== */
.list-footer[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 12px;
    background: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 8px;
}

.footer-left[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    gap: 16px;
}

.results-text[b-q89wvwn6d0] {
    font-size: 0.8rem;
    color: var(--bs-secondary-color);
}

.page-size-selector[b-q89wvwn6d0] {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 0.8rem;
    color: var(--bs-secondary-color);
}

.page-size-selector select[b-q89wvwn6d0] {
    padding: 2px 6px;
    border: 1px solid var(--bs-border-color);
    border-radius: 4px;
    font-size: 0.8rem;
    background: var(--bs-body-bg);
}

/* ===== Responsive ===== */
@media (max-width: 1200px) {
    .config-row[b-q89wvwn6d0] {
        flex-wrap: wrap;
    }

    .config-item[b-q89wvwn6d0] {
        min-width: 140px;
    }
}

@media (max-width: 768px) {
    .config-row[b-q89wvwn6d0] {
        flex-direction: column;
    }

    .config-item[b-q89wvwn6d0] {
        min-width: 100%;
    }

    .action-bar[b-q89wvwn6d0] {
        flex-direction: column;
        gap: 8px;
    }

    .list-footer[b-q89wvwn6d0] {
        flex-direction: column;
        gap: 8px;
    }
}

@media (max-width: 480px) {
    .navigation-bar[b-q89wvwn6d0] {
        flex-wrap: wrap;
    }

    .search-inline[b-q89wvwn6d0] {
        width: 100%;
    }
}
/* /Pages/Identity/Account/ActivityLogTab.razor.rz.scp.css */
/**
 * ActivityLogTab - Scoped Styles
 * Uses CSS variables for theme consistency.
 */

/* ========================================
   ACTIVITY TIMELINE
   ======================================== */

.activity-timeline[b-dnuux8tf0k] {
    position: relative;
    padding-left: var(--space-8);
}

.activity-timeline[b-dnuux8tf0k]::before {
    content: '';
    position: absolute;
    left: 24px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--border-color);
}

/* ========================================
   ACTIVITY STATS
   ======================================== */

.activity-stat[b-dnuux8tf0k] {
    display: flex;
    align-items: center;
    gap: var(--space-3);
}

.stat-icon[b-dnuux8tf0k] {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
}

.stat-content[b-dnuux8tf0k] {
    flex: 1;
}

.stat-label[b-dnuux8tf0k] {
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.stat-value[b-dnuux8tf0k] {
    font-size: var(--text-xl);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
}
/* /Pages/Identity/Account/Profile.razor.rz.scp.css */
/* =============================================
   Profile Tab - Scoped Styles
   ============================================= */

/* Layout */
[b-9nrrqj51r3] .profile-layout {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 1.5rem;
    align-items: start;
}

/* Card */
[b-9nrrqj51r3] .profile-card {
    background: var(--card-bg);
    border: 1px solid var(--card-border);
    border-radius: 0.75rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04);
    overflow: hidden;
}

[b-9nrrqj51r3] .profile-card-header {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--card-border);
}

[b-9nrrqj51r3] .profile-card-title {
    margin: 0;
    font-size: 1.05rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-9nrrqj51r3] .profile-card-body {
    padding: 1.25rem;
}

[b-9nrrqj51r3] .profile-card-footer {
    padding: 0.875rem 1.25rem;
    border-top: 1px solid var(--card-border);
    background: var(--card-footer-bg);
}

[b-9nrrqj51r3] .footer-actions {
    display: flex;
    justify-content: flex-end;
}

/* Sidebar - Avatar Card */
[b-9nrrqj51r3] .avatar-section {
    text-align: center;
    margin-bottom: 1rem;
}

[b-9nrrqj51r3] .profile-name {
    text-align: center;
    margin: 0.75rem 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-9nrrqj51r3] .profile-email {
    text-align: center;
    margin: 0;
    font-size: 0.85rem;
    color: var(--text-muted);
}

/* The legacy .form-grid / .form-field / .field-label rules were removed 2026-05-03 —
   the form now uses the global .fsh-form-page / .fsh-form-medium / .fsh-form-row primitives
   (defined in app.css) so dark-mode + whitelabel + responsive collapse are handled centrally. */

/* =============================================
   Dark Mode
   ============================================= */

:root[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-card,
[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-card {
    --card-bg: var(--text-heading);
    --card-border: var(--text-primary);
    --card-footer-bg: var(--bg-darkest);
}

:root[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-card-title,
[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-card-title,
:root[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-name,
[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-name {
    --text-primary: var(--border-subtle);
}

:root[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-email,
[data-bs-theme="dark"][b-9nrrqj51r3]  .profile-email {
    --text-muted: var(--text-muted);
}

/* =============================================
   Responsive
   ============================================= */

@media (max-width: 768px) {
    [b-9nrrqj51r3] .profile-layout {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Identity/Account/Security.razor.rz.scp.css */
/**
 * Security - Scoped Styles
 * Uses CSS variables for theme consistency.
 */

/* ========================================
   LAYOUT — CSS GRID
   ======================================== */

.security-layout[b-xs0we1o6qo] {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 1.5rem;
}

.security-main[b-xs0we1o6qo] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.security-sidebar[b-xs0we1o6qo] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   SECURITY CARD
   ======================================== */

.security-card[b-xs0we1o6qo] {
    background: var(--theme-card-bg);
    border: 1px solid var(--theme-border);
    border-radius: var(--radius-lg, 0.5rem);
    overflow: hidden;
}

.security-card.card-border-danger[b-xs0we1o6qo] {
    border-color: var(--theme-danger);
}

.security-card.card-border-warning[b-xs0we1o6qo] {
    border-color: var(--theme-warning);
}

.security-card-header[b-xs0we1o6qo] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--theme-border);
    background: var(--theme-card-header-bg, transparent);
}

.security-card-title[b-xs0we1o6qo] {
    font-weight: var(--font-semibold, 600);
    margin: 0;
}

h5.security-card-title[b-xs0we1o6qo] {
    font-size: var(--text-base, 1rem);
}

h6.security-card-title[b-xs0we1o6qo] {
    font-size: var(--text-sm, 0.875rem);
}

.security-card-subtitle[b-xs0we1o6qo] {
    color: var(--text-muted);
    font-size: var(--text-xs, 0.75rem);
    margin: 0;
}

.security-card-body[b-xs0we1o6qo] {
    padding: 1.25rem;
}

.security-card-footer[b-xs0we1o6qo] {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--theme-border);
    background: var(--theme-card-header-bg, transparent);
}

/* ========================================
   FOOTER ACTIONS
   ======================================== */

.footer-actions[b-xs0we1o6qo] {
    display: flex;
    justify-content: flex-end;
}

/* ========================================
   PASSWORD FORM GRID
   ======================================== */

.password-form-grid[b-xs0we1o6qo] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-field[b-xs0we1o6qo] {
    display: flex;
    flex-direction: column;
}

.form-field.full-width[b-xs0we1o6qo] {
    margin-bottom: 1rem;
}

.input-wrapper[b-xs0we1o6qo] {
    position: relative;
}

.password-toggle-btn[b-xs0we1o6qo] {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    border: none;
    background: transparent;
    z-index: 10;
    padding: 0.25rem 0.5rem;
    cursor: pointer;
    color: var(--text-muted);
}

.password-toggle-btn:hover[b-xs0we1o6qo] {
    color: var(--text-primary);
}

/* ========================================
   TWO-FACTOR AUTHENTICATION
   ======================================== */

.tfa-header[b-xs0we1o6qo] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.tfa-description[b-xs0we1o6qo] {
    margin-bottom: 1rem;
}

.tfa-details[b-xs0we1o6qo] {
    margin-bottom: 1rem;
}

.tfa-actions[b-xs0we1o6qo] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

/* ========================================
   ALERT ICON SPACING
   ======================================== */

.alert-icon[b-xs0we1o6qo] {
    margin-right: 0.5rem;
}

.alert-detail[b-xs0we1o6qo] {
    margin-bottom: 0;
    margin-top: 0.25rem;
}

/* ========================================
   STATUS HEADER
   ======================================== */

.status-header[b-xs0we1o6qo] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.status-loading[b-xs0we1o6qo] {
    text-align: center;
    padding: 0.5rem 0;
}

.status-loading p[b-xs0we1o6qo] {
    margin: 0;
}

.status-secure[b-xs0we1o6qo] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--theme-success);
}

.status-secure-icon[b-xs0we1o6qo] {
    font-size: 1.5rem;
}

.status-secure-title[b-xs0we1o6qo] {
    font-weight: var(--font-medium, 500);
}

/* ========================================
   ACTIVITY LOADING / EMPTY
   ======================================== */

.activity-loading[b-xs0we1o6qo] {
    text-align: center;
    padding: 1rem 0;
}

.activity-loading p[b-xs0we1o6qo] {
    margin: 0.5rem 0 0;
}

.activity-empty[b-xs0we1o6qo] {
    text-align: center;
    padding: 1rem 0;
}

.activity-empty-icon[b-xs0we1o6qo] {
    font-size: 2rem;
}

.activity-empty p[b-xs0we1o6qo] {
    margin: 0.5rem 0 0;
}

/* ========================================
   PASSWORD STRENGTH INDICATOR
   ======================================== */

.password-strength-container[b-xs0we1o6qo] {
    margin-top: var(--space-2);
}

.password-strength-bar[b-xs0we1o6qo] {
    width: 100%;
    height: 6px;
    background: var(--theme-gray-200);
    border-radius: var(--radius-full);
    overflow: hidden;
}

.password-strength-fill[b-xs0we1o6qo] {
    height: 100%;
    transition: all var(--sidenav-transition-fast);
    border-radius: var(--radius-full);
}

.password-strength-fill.strength-weak[b-xs0we1o6qo] {
    background: var(--theme-danger);
}

.password-strength-fill.strength-fair[b-xs0we1o6qo] {
    background: var(--theme-warning);
}

.password-strength-fill.strength-good[b-xs0we1o6qo] {
    background: var(--theme-info);
}

.password-strength-fill.strength-strong[b-xs0we1o6qo] {
    background: var(--theme-success);
}

.password-strength-text[b-xs0we1o6qo] {
    display: block;
    margin-top: var(--space-1);
    font-size: var(--text-xs);
    font-weight: var(--font-medium);
}

.password-strength-text.strength-weak[b-xs0we1o6qo] {
    color: var(--theme-danger);
}

.password-strength-text.strength-fair[b-xs0we1o6qo] {
    color: var(--theme-warning);
}

.password-strength-text.strength-good[b-xs0we1o6qo] {
    color: var(--theme-info);
}

.password-strength-text.strength-strong[b-xs0we1o6qo] {
    color: var(--theme-success);
}

/* ========================================
   PASSWORD REQUIREMENTS
   ======================================== */

.password-requirements[b-xs0we1o6qo] {
    font-size: var(--text-xs);
    margin-top: var(--space-2);
}

.password-requirements i[b-xs0we1o6qo] {
    font-size: 0.875rem;
}

/* ========================================
   SECURITY TIPS
   ======================================== */

.security-tip[b-xs0we1o6qo] {
    display: flex;
    gap: var(--space-3);
    margin-bottom: 1rem;
}

.security-tip.last[b-xs0we1o6qo] {
    margin-bottom: 0;
}

.tip-icon[b-xs0we1o6qo] {
    width: 40px;
    height: 40px;
    background: var(--theme-primary-subtle);
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: var(--theme-primary);
    flex-shrink: 0;
}

.tip-content h6[b-xs0we1o6qo] {
    font-size: var(--text-sm);
    font-weight: var(--font-semibold);
    margin-bottom: var(--space-1);
}

.tip-content p[b-xs0we1o6qo] {
    margin-bottom: 0;
}

/* ========================================
   ACTIVITY ITEM
   ======================================== */

.activity-item[b-xs0we1o6qo] {
    display: flex;
    gap: var(--space-3);
    align-items: start;
    margin-bottom: 1rem;
}

.activity-item.last[b-xs0we1o6qo] {
    margin-bottom: 0;
}

.activity-icon[b-xs0we1o6qo] {
    width: 32px;
    height: 32px;
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
}

.activity-icon.text-success[b-xs0we1o6qo] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.activity-icon.text-primary[b-xs0we1o6qo] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.activity-icon.text-warning[b-xs0we1o6qo] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.activity-info[b-xs0we1o6qo] {
    flex: 1;
}

.activity-title[b-xs0we1o6qo] {
    font-size: var(--text-sm);
    font-weight: var(--font-medium);
    color: var(--text-primary);
}

.activity-time[b-xs0we1o6qo] {
    font-size: var(--text-xs);
    color: var(--text-muted);
}

/* ========================================
   DARK MODE
   ======================================== */

[data-bs-theme="dark"] .security-card[b-xs0we1o6qo] {
    background: var(--theme-card-bg);
    border-color: var(--theme-border);
}

[data-bs-theme="dark"] .security-card-header[b-xs0we1o6qo] {
    border-bottom-color: var(--theme-border);
}

[data-bs-theme="dark"] .security-card-footer[b-xs0we1o6qo] {
    border-top-color: var(--theme-border);
}

[data-bs-theme="dark"] .password-toggle-btn[b-xs0we1o6qo] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .password-toggle-btn:hover[b-xs0we1o6qo] {
    color: var(--text-primary);
}

/* ========================================
   RESPONSIVE — SINGLE COLUMN AT 1200px
   ======================================== */

@media (max-width: 1200px) {
    .security-layout[b-xs0we1o6qo] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .password-form-grid[b-xs0we1o6qo] {
        grid-template-columns: 1fr;
    }

    .tfa-actions[b-xs0we1o6qo] {
        flex-direction: column;
    }
}
/* /Pages/Identity/Invitations/Invitations.razor.rz.scp.css */
/**
 * Invitations - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   INVITATION CARD
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.invitation-card[b-79q6lx3d4h] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    margin-bottom: 1rem;
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

.invitation-card:hover[b-79q6lx3d4h] {
    box-shadow: var(--shadow-md);
}

/* ========================================
   INVITATION HEADER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.invitation-header[b-79q6lx3d4h] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid var(--border-color);
}

.invitation-type[b-79q6lx3d4h] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
}

.invitation-type.public[b-79q6lx3d4h] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.invitation-type.email[b-79q6lx3d4h] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

/* ========================================
   INVITATION BODY
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.invitation-body[b-79q6lx3d4h] {
    padding: 1.25rem;
}

.invitation-url[b-79q6lx3d4h] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.75rem 1rem;
    font-family: monospace;
    font-size: 0.875rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.75rem;
    word-break: break-all;
}

/* ========================================
   INVITATION META
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.invitation-meta[b-79q6lx3d4h] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 1rem;
    margin-top: 1rem;
    font-size: 0.875rem;
}

.meta-item[b-79q6lx3d4h] {
    display: flex;
    flex-direction: column;
}

.meta-label[b-79q6lx3d4h] {
    color: var(--text-muted);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.meta-value[b-79q6lx3d4h] {
    font-weight: 500;
    color: var(--text-primary);
}

/* ========================================
   STATUS BADGES
   ======================================== */

/* Note: Status badge pattern consolidated in app.css */

/* ========================================
   ACTION BUTTONS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.action-buttons[b-79q6lx3d4h] {
    display: flex;
    gap: 0.5rem;
}

/* ========================================
   CREATE BUTTONS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.create-buttons[b-79q6lx3d4h] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.btn-create[b-79q6lx3d4h] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: 8px;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-create.public[b-79q6lx3d4h] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
    color: white;
}

.btn-create.email[b-79q6lx3d4h] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-warning-emphasis) 100%);
    color: white;
}

.btn-create:hover[b-79q6lx3d4h] {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2);
}

/* ========================================
   EMPTY STATE
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Note: Empty state now uses centralized EmptyState component. */

/* ========================================
   PURPOSE BADGES
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.purpose-badge[b-79q6lx3d4h] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.2rem 0.6rem;
    border-radius: 4px;
    font-size: 0.7rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.purpose-badge i[b-79q6lx3d4h] {
    font-size: 0.75rem;
}

.purpose-registration[b-79q6lx3d4h] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary-emphasis);
}

.purpose-application[b-79q6lx3d4h] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

.purpose-event[b-79q6lx3d4h] {
    background: var(--theme-purple-subtle);
    color: var(--theme-purple-emphasis);
}

.purpose-course[b-79q6lx3d4h] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary-emphasis);
}

.purpose-payment[b-79q6lx3d4h] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.purpose-document[b-79q6lx3d4h] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.purpose-survey[b-79q6lx3d4h] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.purpose-landing[b-79q6lx3d4h] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.purpose-schedule[b-79q6lx3d4h] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

.purpose-support[b-79q6lx3d4h] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.purpose-portal[b-79q6lx3d4h] {
    background: var(--theme-purple-subtle);
    color: var(--theme-purple-emphasis);
}

.purpose-custom[b-79q6lx3d4h] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.purpose-default[b-79q6lx3d4h] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}
/* /Pages/Identity/Invitations/QRCodeDialog.razor.rz.scp.css */
/**
 * QRCodeDialog - Scoped Styles
 * Modern design with share functionality
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

.qr-dialog[b-e6d3hpb6v8] {
    /* Padding removed - handled by .content-page global rule */
}

/* Preview Section */
.qr-preview-section[b-e6d3hpb6v8] {
    text-align: center;
    margin-bottom: 1.5rem;
}

.qr-canvas-container[b-e6d3hpb6v8] {
    position: relative;
    display: inline-block;
    background: var(--bg-surface);
    border-radius: 16px;
    padding: 1rem;
    box-shadow: var(--shadow-md);
    margin-bottom: 1rem;
}

.qr-canvas[b-e6d3hpb6v8] {
    display: block;
    border-radius: 12px;
}

.qr-loading[b-e6d3hpb6v8] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
    border-radius: 16px;
    gap: 0.75rem;
    opacity: 0.95;
}

.qr-loading .spinner[b-e6d3hpb6v8] {
    width: 32px;
    height: 32px;
    border: 3px solid var(--theme-primary-subtle);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

.qr-info[b-e6d3hpb6v8] {
    text-align: center;
}

.qr-title[b-e6d3hpb6v8] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.25rem 0;
}

.qr-description[b-e6d3hpb6v8] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    margin: 0 0 0.75rem 0;
}

.qr-url[b-e6d3hpb6v8] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bg-surface-tertiary);
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    font-family: monospace;
    font-size: 0.75rem;
    max-width: 100%;
}

.url-text[b-e6d3hpb6v8] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--text-secondary);
}

.btn-icon[b-e6d3hpb6v8] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 6px;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.btn-icon:hover[b-e6d3hpb6v8] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

/* Actions Section */
.qr-actions-section[b-e6d3hpb6v8] {
    margin-bottom: 1.25rem;
}

.section-title[b-e6d3hpb6v8] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0 0 0.75rem 0;
}

.section-title i[b-e6d3hpb6v8] {
    font-size: 1rem;
}

.action-buttons[b-e6d3hpb6v8] {
    display: flex;
    gap: 0.75rem;
}

.btn-action[b-e6d3hpb6v8] {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-action.primary[b-e6d3hpb6v8] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
    color: white;
}

.btn-action.primary:hover[b-e6d3hpb6v8] {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(102, 126, 234, 0.4);
}

.btn-action.secondary[b-e6d3hpb6v8] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border: 1px solid var(--border-color);
}

.btn-action.secondary:hover[b-e6d3hpb6v8] {
    background: var(--theme-primary-subtle);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

/* Share Section */
.qr-share-section[b-e6d3hpb6v8] {
    margin-bottom: 1.5rem;
}

.share-buttons[b-e6d3hpb6v8] {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 0.5rem;
}

.share-btn[b-e6d3hpb6v8] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.75rem 0.5rem;
    border: none;
    border-radius: 8px;
    font-size: 0.6875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    color: white;
}

.share-btn i[b-e6d3hpb6v8] {
    font-size: 1.25rem;
}

.share-btn:hover[b-e6d3hpb6v8] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.share-btn.email[b-e6d3hpb6v8] {
    background: linear-gradient(135deg, var(--theme-indigo) 0%, var(--theme-purple-emphasis) 100%);
}

.share-btn.whatsapp[b-e6d3hpb6v8] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.share-btn.linkedin[b-e6d3hpb6v8] {
    background: linear-gradient(135deg, var(--theme-info-emphasis) 0%, var(--theme-info-emphasis) 100%);
}

.share-btn.facebook[b-e6d3hpb6v8] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info-emphasis) 100%);
}

.share-btn.twitter[b-e6d3hpb6v8] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info) 100%);
}

/* Dialog Footer */
.dialog-footer[b-e6d3hpb6v8] {
    display: flex;
    justify-content: flex-end;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
}

.dialog-footer .btn[b-e6d3hpb6v8] {
    padding: 0.5rem 1.5rem;
}

/* Responsive Adjustments */
@media (max-width: 480px) {

    .share-buttons[b-e6d3hpb6v8] {
        grid-template-columns: repeat(3, 1fr);
    }

    .action-buttons[b-e6d3hpb6v8] {
        flex-direction: column;
    }
}
/* /Pages/Identity/Roles/Roles.razor.rz.scp.css */
/* ========================================
   ROLES PAGE - SCOPED STYLES
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* ========================================
   ENTITY TABLE CUSTOMIZATION
   ======================================== */

[b-jayy4n40aq] .rz-datatable thead th {
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 0.625rem 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

[b-jayy4n40aq] .rz-datatable tbody td {
    padding: 0.625rem 0.75rem;
    font-size: 0.8125rem;
    color: var(--text-primary);
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-jayy4n40aq] .rz-datatable tbody tr:hover td {
    background: var(--bg-surface-hover);
}

[b-jayy4n40aq] .rz-datatable tbody tr:last-child td {
    border-bottom: none;
}

/* ========================================
   BULK ACTIONS TOOLBAR SPACING
   ======================================== */

[b-jayy4n40aq] .bulk-actions-toolbar {
    border-radius: 10px;
    border: 1px solid var(--border-color);
}

/* ========================================
   FORM MODAL OVERRIDES
   ======================================== */

[b-jayy4n40aq] .form-label {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin-bottom: 0.25rem;
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 768px) {
    [b-jayy4n40aq] .rz-datatable thead th,
    [b-jayy4n40aq] .rz-datatable tbody td {
        padding: 0.5rem;
        font-size: 0.75rem;
    }
}

@media (max-width: 480px) {
    [b-jayy4n40aq] .rz-datatable thead th,
    [b-jayy4n40aq] .rz-datatable tbody td {
        padding: 0.375rem 0.5rem;
    }
}
/* /Pages/Identity/Users/ActivityLog.razor.rz.scp.css */
/**
 * ActivityLog (Users) - Scoped Styles
 * Uses CSS variables for theme consistency.
 * NOTE: Uses centrally managed CSS variables from theme-core.css
 */

/* ========================================
   LAYOUT — CSS Grid
   ======================================== */

[b-gpviqdh49f] .activity-layout {
    display: grid;
    grid-template-columns: 1fr 3fr;
    gap: 1.25rem;
    align-items: start;
}

[b-gpviqdh49f] .activity-sidebar {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ========================================
   CARD — Replaces Bootstrap .card
   ======================================== */

[b-gpviqdh49f] .activity-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

[b-gpviqdh49f] .activity-card-header {
    padding: 0.875rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface);
}

[b-gpviqdh49f] .activity-card-header h5,
[b-gpviqdh49f] .activity-card-header h6 {
    margin: 0;
    font-weight: 600;
    color: var(--text-primary);
}

[b-gpviqdh49f] .activity-card-header h5 {
    font-size: 1.05rem;
}

[b-gpviqdh49f] .activity-card-header h6 {
    font-size: 0.9rem;
}

[b-gpviqdh49f] .activity-card-header.with-actions {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

[b-gpviqdh49f] .header-subtitle {
    font-size: 0.8rem;
    color: var(--text-muted);
    margin: 0.125rem 0 0 0;
}

[b-gpviqdh49f] .activity-card-body {
    padding: 1.25rem;
}

/* ========================================
   FILTER FIELDS
   ======================================== */

[b-gpviqdh49f] .filter-field {
    margin-bottom: 0.875rem;
}

[b-gpviqdh49f] .filter-field:last-of-type {
    margin-bottom: 1rem;
}

[b-gpviqdh49f] .filter-label {
    display: block;
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-secondary);
    margin-bottom: 0.25rem;
}

/* ========================================
   ACTIVITY STATS — Vertical sidebar layout
   ======================================== */

[b-gpviqdh49f] .activity-stat {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0;
}

[b-gpviqdh49f] .activity-stat + .activity-stat {
    border-top: 1px solid var(--border-color);
}

[b-gpviqdh49f] .activity-stat .stat-icon {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

[b-gpviqdh49f] .activity-stat .stat-icon.success {
    background: color-mix(in srgb, var(--theme-success) 12%, transparent);
    color: var(--theme-success);
}

[b-gpviqdh49f] .activity-stat .stat-icon.warning {
    background: color-mix(in srgb, var(--theme-warning) 12%, transparent);
    color: var(--theme-warning);
}

[b-gpviqdh49f] .activity-stat .stat-icon.primary {
    background: color-mix(in srgb, var(--theme-primary) 12%, transparent);
    color: var(--theme-primary);
}

[b-gpviqdh49f] .activity-stat .stat-icon.info {
    background: color-mix(in srgb, var(--theme-info) 12%, transparent);
    color: var(--theme-info);
}

/* ========================================
   LOAD MORE
   ======================================== */

[b-gpviqdh49f] .load-more-wrapper {
    text-align: center;
    margin-top: 1.25rem;
}

/* ========================================
   ACTIVITY TIMELINE
   ======================================== */

[b-gpviqdh49f] .activity-timeline {
    position: relative;
    padding-left: 2rem;
}

[b-gpviqdh49f] .activity-timeline::before {
    content: '';
    position: absolute;
    left: 24px;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--border-color);
}

/* ========================================
   ACTIVITY LOG ITEM
   ======================================== */

[b-gpviqdh49f] .activity-log-item {
    position: relative;
    padding-bottom: 1.5rem;
}

[b-gpviqdh49f] .activity-log-item:last-child {
    padding-bottom: 0;
}

/* ========================================
   TIMELINE MARKERS
   ======================================== */

[b-gpviqdh49f] .activity-timeline-marker {
    position: absolute;
    left: -32px;
    top: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
    border: 2px solid var(--border-color);
    z-index: 1;
}

[b-gpviqdh49f] .activity-timeline-marker i {
    font-size: 1.25rem;
}

[b-gpviqdh49f] .activity-timeline-marker.activity-success {
    background: var(--theme-success-subtle);
    border-color: var(--theme-success);
    color: var(--theme-success);
}

[b-gpviqdh49f] .activity-timeline-marker.activity-info {
    background: var(--theme-info-subtle);
    border-color: var(--theme-info);
    color: var(--theme-info);
}

[b-gpviqdh49f] .activity-timeline-marker.activity-warning {
    background: var(--theme-warning-subtle);
    border-color: var(--theme-warning);
    color: var(--theme-warning);
}

[b-gpviqdh49f] .activity-timeline-marker.activity-danger {
    background: color-mix(in srgb, var(--theme-danger) 15%, transparent);
    border-color: var(--theme-danger);
    color: var(--theme-danger);
}

[b-gpviqdh49f] .activity-timeline-marker.activity-primary {
    background: var(--theme-primary-subtle);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

/* ========================================
   ACTIVITY CONTENT
   ======================================== */

[b-gpviqdh49f] .activity-content {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
}

[b-gpviqdh49f] .activity-header {
    display: flex;
    justify-content: space-between;
    align-items: start;
    margin-bottom: 0.5rem;
}

[b-gpviqdh49f] .activity-title {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

[b-gpviqdh49f] .activity-time {
    font-size: 0.875rem;
    color: var(--text-muted);
    white-space: nowrap;
}

[b-gpviqdh49f] .activity-description {
    color: var(--text-secondary);
    font-size: 0.875rem;
    line-height: 1.625;
}

[b-gpviqdh49f] .activity-details {
    background: var(--bg-body);
    border-radius: 8px;
    padding: 0.5rem 0.75rem;
    font-size: 0.75rem;
}

/* ========================================
   ACTIVITY METADATA
   ======================================== */

[b-gpviqdh49f] .activity-metadata {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 0.5rem;
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px solid var(--border-color);
}

[b-gpviqdh49f] .metadata-item {
    font-size: 0.75rem;
}

[b-gpviqdh49f] .metadata-key {
    color: var(--text-muted);
    font-weight: 500;
    margin-right: 0.25rem;
}

[b-gpviqdh49f] .metadata-value {
    color: var(--text-secondary);
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 1200px) {
    [b-gpviqdh49f] .activity-layout {
        grid-template-columns: 1fr;
    }

    [b-gpviqdh49f] .activity-sidebar {
        flex-direction: row;
        flex-wrap: wrap;
    }

    [b-gpviqdh49f] .activity-sidebar > .activity-card {
        flex: 1 1 280px;
    }
}

@media (max-width: 768px) {
    [b-gpviqdh49f] .activity-layout {
        gap: 0.75rem;
    }

    [b-gpviqdh49f] .activity-sidebar {
        flex-direction: column;
    }

    [b-gpviqdh49f] .activity-sidebar > .activity-card {
        flex: 1 1 100%;
    }

    [b-gpviqdh49f] .activity-card-body {
        padding: 0.875rem;
    }

    [b-gpviqdh49f] .activity-card-header {
        padding: 0.75rem 0.875rem;
    }

    [b-gpviqdh49f] .activity-card-header.with-actions {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    [b-gpviqdh49f] .activity-timeline {
        padding-left: 1.5rem;
    }

    [b-gpviqdh49f] .activity-timeline::before {
        left: 18px;
    }

    [b-gpviqdh49f] .activity-timeline-marker {
        left: -26px;
        width: 32px;
        height: 32px;
    }

    [b-gpviqdh49f] .activity-timeline-marker i {
        font-size: 1rem;
    }
}
/* /Pages/Identity/Users/Devices.razor.rz.scp.css */
/**
 * Devices - Scoped Styles
 * Uses CSS variables for theme consistency.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   DEVICE CARD
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.device-card[b-iktw4ixz1j] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg);
    overflow: hidden;
    transition: all var(--sidenav-transition-fast);
}

.device-card.current-device[b-iktw4ixz1j] {
    border: 2px solid var(--theme-success);
    box-shadow: 0 0 0 3px var(--theme-success-subtle);
}

.device-card:hover[b-iktw4ixz1j] {
    box-shadow: var(--card-shadow-hover);
    transform: translateY(-2px);
}

/* ========================================
   DEVICE CARD HEADER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.device-card-header[b-iktw4ixz1j] {
    display: flex;
    align-items: start;
    gap: var(--space-3);
    border-bottom: 1px solid var(--border-color);
}

.device-icon[b-iktw4ixz1j] {
    width: 48px;
    height: 48px;
    background: var(--theme-primary-subtle);
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: var(--theme-primary);
    flex-shrink: 0;
}

/* ========================================
   DEVICE INFO
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.device-info[b-iktw4ixz1j] {
    flex: 1;
    min-width: 0;
}

.device-name[b-iktw4ixz1j] {
    font-size: var(--text-base);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    margin: 0;
}

.device-meta[b-iktw4ixz1j] {
    font-size: var(--text-sm);
    color: var(--text-muted);
}

.device-os[b-iktw4ixz1j],
.device-browser[b-iktw4ixz1j] {
    display: inline;
}

.device-location[b-iktw4ixz1j] {
    font-size: var(--text-sm);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
}

/* ========================================
   DEVICE CARD BODY
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.device-card-body[b-iktw4ixz1j] {
    padding: var(--space-4);
}

.device-details[b-iktw4ixz1j] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2);
}

.detail-item[b-iktw4ixz1j] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: var(--text-sm);
}

.detail-label[b-iktw4ixz1j] {
    color: var(--text-muted);
    font-weight: var(--font-medium);
}

.detail-value[b-iktw4ixz1j] {
    color: var(--text-primary);
}

/* ========================================
   DEVICE CARD FOOTER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.device-card-footer[b-iktw4ixz1j] {
    padding: var(--space-3) var(--space-4);
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}
/* /Pages/Identity/Users/Sessions.razor.rz.scp.css */
/**
 * Sessions - Scoped Styles
 * Uses CSS variables for theme consistency.
 */

/* ========================================
   SESSION CARD
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.session-card[b-84kqvk7l34] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg);
    transition: all var(--sidenav-transition-fast);
}

.session-card.active-session[b-84kqvk7l34] {
    border-left: 4px solid var(--theme-success);
}

.session-card.expired-session[b-84kqvk7l34] {
    opacity: 0.7;
    border-left: 4px solid var(--theme-gray-400);
}

.session-card:hover[b-84kqvk7l34] {
    box-shadow: var(--card-shadow-hover);
}

/* ========================================
   SESSION ICON
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.session-icon[b-84kqvk7l34] {
    width: 48px;
    height: 48px;
    background: var(--theme-primary-subtle);
    border-radius: var(--radius-lg);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    color: var(--theme-primary);
}

/* ========================================
   SESSION INFO
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.session-info .session-title[b-84kqvk7l34] {
    font-size: var(--text-base);
    font-weight: var(--font-semibold);
    color: var(--text-primary);
    margin: 0;
}

.session-meta[b-84kqvk7l34] {
    font-size: var(--text-sm);
    color: var(--text-muted);
}

/* ========================================
   SESSION DETAILS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.session-details[b-84kqvk7l34] {
    margin-top: var(--space-3);
    font-size: var(--text-sm);
}

.session-detail-row[b-84kqvk7l34] {
    display: flex;
    align-items: center;
    gap: var(--space-2);
    color: var(--text-secondary);
    margin-bottom: var(--space-2);
}

.session-detail-row i[b-84kqvk7l34] {
    font-size: var(--text-sm);
    color: var(--text-muted);
}

/* ========================================
   SESSION ACTIONS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.session-actions[b-84kqvk7l34] {
    padding-top: var(--space-3);
    border-top: 1px solid var(--border-color);
}
/* /Pages/Identity/Users/UserProfile.razor.rz.scp.css */
/* =============================================
   UserProfile — Scoped Styles
   ============================================= */

/* Layout */
[b-lp6qi31w96] .profile-content {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

[b-lp6qi31w96] .profile-layout {
    display: grid;
    grid-template-columns: 1fr 2fr;
    gap: 1rem;
    align-items: start;
}

[b-lp6qi31w96] .profile-sidebar,
[b-lp6qi31w96] .profile-main {
    min-width: 0;
}

/* Card */
[b-lp6qi31w96] .profile-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    overflow: hidden;
}

[b-lp6qi31w96] .profile-card.lockout-danger {
    border-color: var(--theme-danger);
}

[b-lp6qi31w96] .profile-card.lockout-warning {
    border-color: var(--theme-warning);
}

[b-lp6qi31w96] .profile-card-header {
    padding: 0.875rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
}

[b-lp6qi31w96] .profile-card-header h6 {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-lp6qi31w96] .profile-card-header h6 i {
    margin-right: 0.5rem;
}

[b-lp6qi31w96] .profile-card-subtitle {
    display: block;
    font-size: 0.8125rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
}

[b-lp6qi31w96] .profile-card-body {
    padding: 1.25rem;
}

[b-lp6qi31w96] .profile-card-footer {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    justify-content: center;
}

/* Admin Settings */
[b-lp6qi31w96] .admin-controls {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    flex-wrap: wrap;
}

[b-lp6qi31w96] .admin-switch {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-lp6qi31w96] .admin-switch label {
    font-size: 0.875rem;
    color: var(--text-primary);
    margin: 0;
    white-space: nowrap;
}

[b-lp6qi31w96] .admin-save-btn {
    margin-left: auto;
}

/* Lockout Header */
[b-lp6qi31w96] .lockout-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Lockout Badges */
[b-lp6qi31w96] .lockout-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

[b-lp6qi31w96] .lockout-badge.danger {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

[b-lp6qi31w96] .lockout-badge.warning {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

[b-lp6qi31w96] .lockout-badge.success {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

/* Lockout Grid */
[b-lp6qi31w96] .lockout-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

[b-lp6qi31w96] .lockout-item {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

[b-lp6qi31w96] .lockout-label {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

[b-lp6qi31w96] .lockout-value {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

[b-lp6qi31w96] .lockout-actions {
    border-top: 1px solid var(--border-color);
    padding-top: 0.875rem;
    margin-top: 0.75rem;
}

[b-lp6qi31w96] .lockout-hint {
    font-size: 0.8125rem;
    color: var(--text-muted);
    margin: 0.5rem 0 0;
}

/* Avatar Section */
[b-lp6qi31w96] .avatar-section {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0;
}

[b-lp6qi31w96] .avatar-wrapper {
    width: 100%;
}

[b-lp6qi31w96] .avatar-image {
    width: 100%;
    height: auto;
    display: block;
}

[b-lp6qi31w96] .avatar-placeholder {
    width: 100%;
    height: 260px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--theme-indigo);
    font-size: 4rem;
    font-weight: 600;
    color: var(--text-inverse);
}

[b-lp6qi31w96] .avatar-name {
    margin: 1rem 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-lp6qi31w96] .avatar-email {
    margin: 0 0 0.5rem;
    font-size: 0.875rem;
    color: var(--text-muted);
}

/* Info Grid */
[b-lp6qi31w96] .info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

[b-lp6qi31w96] .info-item {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

[b-lp6qi31w96] .info-label {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

[b-lp6qi31w96] .info-value {
    font-size: 0.9375rem;
    color: var(--text-primary);
}

/* Utility text colors (inherited from existing patterns) */
[b-lp6qi31w96] .text-danger {
    color: var(--theme-danger);
    font-weight: 600;
}

[b-lp6qi31w96] .text-success {
    color: var(--theme-success);
}

[b-lp6qi31w96] .text-warning {
    color: var(--theme-warning);
    font-weight: 600;
}

[b-lp6qi31w96] .text-muted {
    color: var(--text-muted);
}

/* =============================================
   Dark Mode
   ============================================= */
:root[data-theme="dark"][b-lp6qi31w96]  .profile-card,
.dark[b-lp6qi31w96]  .profile-card {
    background: var(--text-heading);
    border-color: var(--text-primary);
}

:root[data-theme="dark"][b-lp6qi31w96]  .profile-card-header,
.dark[b-lp6qi31w96]  .profile-card-header {
    border-bottom-color: var(--text-primary);
}

:root[data-theme="dark"][b-lp6qi31w96]  .profile-card-header h6,
.dark[b-lp6qi31w96]  .profile-card-header h6 {
    color: var(--border-subtle);
}

:root[data-theme="dark"][b-lp6qi31w96]  .profile-card-subtitle,
.dark[b-lp6qi31w96]  .profile-card-subtitle {
    color: var(--text-muted);
}

:root[data-theme="dark"][b-lp6qi31w96]  .profile-card-footer,
.dark[b-lp6qi31w96]  .profile-card-footer {
    border-top-color: var(--text-primary);
}

:root[data-theme="dark"][b-lp6qi31w96]  .profile-card-body,
.dark[b-lp6qi31w96]  .profile-card-body {
    background: var(--text-heading);
}

:root[data-theme="dark"][b-lp6qi31w96]  .lockout-label,
.dark[b-lp6qi31w96]  .lockout-label {
    color: var(--text-muted);
}

:root[data-theme="dark"][b-lp6qi31w96]  .lockout-value,
.dark[b-lp6qi31w96]  .lockout-value {
    color: var(--border-subtle);
}

:root[data-theme="dark"][b-lp6qi31w96]  .lockout-actions,
.dark[b-lp6qi31w96]  .lockout-actions {
    border-top-color: var(--text-primary);
}

:root[data-theme="dark"][b-lp6qi31w96]  .lockout-hint,
.dark[b-lp6qi31w96]  .lockout-hint {
    color: var(--text-muted);
}

:root[data-theme="dark"][b-lp6qi31w96]  .lockout-badge.danger,
.dark[b-lp6qi31w96]  .lockout-badge.danger {
    background: rgba(239, 68, 68, 0.15);
}

:root[data-theme="dark"][b-lp6qi31w96]  .lockout-badge.warning,
.dark[b-lp6qi31w96]  .lockout-badge.warning {
    background: rgba(245, 158, 11, 0.15);
}

:root[data-theme="dark"][b-lp6qi31w96]  .lockout-badge.success,
.dark[b-lp6qi31w96]  .lockout-badge.success {
    background: rgba(22, 163, 74, 0.15);
}

:root[data-theme="dark"][b-lp6qi31w96]  .admin-switch label,
.dark[b-lp6qi31w96]  .admin-switch label {
    color: var(--border-strong);
}

:root[data-theme="dark"][b-lp6qi31w96]  .avatar-name,
.dark[b-lp6qi31w96]  .avatar-name {
    color: var(--border-subtle);
}

:root[data-theme="dark"][b-lp6qi31w96]  .avatar-email,
.dark[b-lp6qi31w96]  .avatar-email {
    color: var(--text-muted);
}

:root[data-theme="dark"][b-lp6qi31w96]  .info-label,
.dark[b-lp6qi31w96]  .info-label {
    color: var(--text-muted);
}

:root[data-theme="dark"][b-lp6qi31w96]  .info-value,
.dark[b-lp6qi31w96]  .info-value {
    color: var(--border-subtle);
}

/* =============================================
   Responsive
   ============================================= */
@media (max-width: 768px) {
    [b-lp6qi31w96] .profile-layout {
        grid-template-columns: 1fr;
    }

    [b-lp6qi31w96] .lockout-grid {
        grid-template-columns: 1fr;
    }

    [b-lp6qi31w96] .info-grid {
        grid-template-columns: 1fr;
    }

    [b-lp6qi31w96] .admin-controls {
        flex-direction: column;
        align-items: flex-start;
    }

    [b-lp6qi31w96] .admin-save-btn {
        margin-left: 0;
        width: 100%;
    }

    [b-lp6qi31w96] .lockout-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
}

/* ============ Dark Mode (Bootstrap data-bs-theme) ============ */
[data-bs-theme="dark"][b-lp6qi31w96]  .profile-card {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-lp6qi31w96]  .profile-card-header,
[data-bs-theme="dark"][b-lp6qi31w96]  .profile-card-footer,
[data-bs-theme="dark"][b-lp6qi31w96]  .lockout-actions {
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-lp6qi31w96]  .profile-card-header h6,
[data-bs-theme="dark"][b-lp6qi31w96]  .lockout-value,
[data-bs-theme="dark"][b-lp6qi31w96]  .avatar-name,
[data-bs-theme="dark"][b-lp6qi31w96]  .info-value {
    color: var(--text-primary);
}

[data-bs-theme="dark"][b-lp6qi31w96]  .profile-card-subtitle,
[data-bs-theme="dark"][b-lp6qi31w96]  .lockout-label,
[data-bs-theme="dark"][b-lp6qi31w96]  .lockout-hint,
[data-bs-theme="dark"][b-lp6qi31w96]  .avatar-email,
[data-bs-theme="dark"][b-lp6qi31w96]  .info-label,
[data-bs-theme="dark"][b-lp6qi31w96]  .admin-switch label {
    color: var(--text-muted);
}
/* /Pages/Identity/Users/Users.razor.rz.scp.css */
/* ========================================
   USERS PAGE - STANDARDIZED NAVIGATION BAR
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* ========================================
   NAVIGATION BAR
   ======================================== */

.navigation-bar[b-02gw3rffd1] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ========================================
   SEARCH BOX (Inline)
   ======================================== */

.search-inline[b-02gw3rffd1] {
    flex: 1;
    min-width: 150px;
    max-width: 400px;
}

.nav-search-box[b-02gw3rffd1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-02gw3rffd1] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-02gw3rffd1] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-02gw3rffd1] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-02gw3rffd1]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-02gw3rffd1] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-02gw3rffd1] {
    background: var(--border-color);
    color: var(--text-primary);
}

.nav-search-box .clear-search i[b-02gw3rffd1] {
    font-size: 0.6875rem;
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-02gw3rffd1] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-02gw3rffd1] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-02gw3rffd1] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-02gw3rffd1] {
    font-size: 1rem;
}

.spinner-sm[b-02gw3rffd1] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-02gw3rffd1 0.6s linear infinite;
}

@keyframes spin-b-02gw3rffd1 {
    to { transform: rotate(360deg); }
}

/* ========================================
   PASSWORD TOGGLE BUTTON (inside FshTextBox EndContent)
   ======================================== */

[b-02gw3rffd1] .fsh-toggle-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    background: transparent;
    border: none;
    color: var(--bs-secondary);
    cursor: pointer;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    transition: color 0.2s ease;
}

[b-02gw3rffd1] .fsh-toggle-btn:hover {
    color: var(--bs-primary);
}

[b-02gw3rffd1] .fsh-toggle-btn i {
    font-size: 1rem;
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 768px) {
    .navigation-bar[b-02gw3rffd1] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .search-inline[b-02gw3rffd1] {
        flex: 1 1 100%;
        max-width: none;
    }
}

@media (max-width: 480px) {
    .navigation-bar[b-02gw3rffd1] {
        padding: 0.5rem 0.75rem;
    }
}
/* /Pages/InstructorViewList.razor.rz.scp.css */
/**
 * InstructorViewList - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* Breadcrumb bar with themed gradient */
.instructor-breadcrumb[b-zof449m5j1] {
    background: var(--gradient-accent-cyan);
}

/* Instructor avatar with themed border */
.instructor-avatar[b-zof449m5j1] {
    border: 4px solid var(--theme-cyan);
    width: 150px;
    height: 150px;
    object-fit: cover;
}

.profile-card[b-zof449m5j1] {
    background: var(--bg-surface);
    border-radius: var(--radius-xl);
    box-shadow: var(--shadow-md);
    overflow: hidden;
    text-align: center;
    padding: var(--space-5);
    max-width: 400px;
    margin: auto;
}

    .profile-card img[b-zof449m5j1] {
        width: 120px;
        height: 120px;
        border-radius: var(--radius-full);
        border: var(--space-1) solid var(--theme-gray-100);
    }

    .profile-card h5[b-zof449m5j1] {
        font-size: var(--text-2xl);
        font-weight: bold;
        margin: var(--space-2) 0;
    }

    .profile-card .stars[b-zof449m5j1] {
        color: var(--course-rating-color);
    }

    .profile-card .rating[b-zof449m5j1] {
        font-size: var(--text-sm);
        color: var(--theme-success);
        font-weight: bold;
    }

    .profile-card .follow-btn[b-zof449m5j1] {
        background: var(--theme-success);
        color: var(--text-inverse);
        border-radius: var(--radius-full);
        padding: var(--space-1) var(--space-4);
        font-size: var(--text-base);
        margin-top: var(--space-2);
    }

    .profile-card .icon-list[b-zof449m5j1] {
        margin-top: var(--space-4);
    }

        .profile-card .icon-list i[b-zof449m5j1] {
            font-size: var(--text-2xl);
            margin: 0 var(--space-2);
            color: var(--theme-gray-600);
        }

    .profile-card .stats[b-zof449m5j1] {
        display: flex;
        justify-content: space-around;
        margin-top: var(--space-5);
    }

        .profile-card .stats div[b-zof449m5j1] {
            text-align: center;
        }

            .profile-card .stats div span[b-zof449m5j1] {
                font-size: var(--text-xl);
                font-weight: bold;
                display: block;
            }

            .profile-card .stats div p[b-zof449m5j1] {
                font-size: var(--text-sm);
                color: var(--text-secondary);
                margin: 0;
            }
/* /Pages/Multitenancy/AddPaymentMethodDialog.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/AddTenantUserModal.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/AdjustQuotaDialog.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/BillingInvoicing.razor.rz.scp.css */
/* =============================================
   BillingInvoicing - Scoped Styles
   ============================================= */

/* Billing Content Layout */
[b-vwrquqo3rz] .billing-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
    margin-top: 1.25rem;
}

/* Billing Card */
[b-vwrquqo3rz] .billing-card {
    background: var(--card-bg);
    border: 1px solid var(--card-border);
    border-radius: 0.75rem;
    overflow: hidden;
    transition: box-shadow 0.2s ease;
}

[b-vwrquqo3rz] .billing-card:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

[b-vwrquqo3rz] .billing-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.25rem;
    border-bottom: 1px solid var(--card-border);
    background: var(--card-header-bg);
    gap: 0.75rem;
    flex-wrap: wrap;
}

[b-vwrquqo3rz] .billing-card-header h4 {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--heading-color);
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-vwrquqo3rz] .billing-card-header h4 i {
    font-size: 1.125rem;
    opacity: 0.7;
}

[b-vwrquqo3rz] .billing-card-actions {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-vwrquqo3rz] .billing-card-actions .search-input {
    max-width: 200px;
    font-size: 0.8125rem;
}

[b-vwrquqo3rz] .billing-card-body {
    padding: 1.25rem;
}

/* Invoice Grid */
[b-vwrquqo3rz] .invoices-grid {
    border: none;
}

[b-vwrquqo3rz] .invoices-grid .rz-datatable-thead th {
    background: var(--table-header-bg);
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    padding: 0.625rem 0.75rem;
}

[b-vwrquqo3rz] .invoices-grid .rz-datatable-tbody td {
    padding: 0.625rem 0.75rem;
    font-size: 0.875rem;
    vertical-align: middle;
}

[b-vwrquqo3rz] .invoice-number {
    font-weight: 600;
    color: var(--primary-color);
    font-family: 'JetBrains Mono', monospace;
    font-size: 0.8125rem;
}

[b-vwrquqo3rz] .invoice-date {
    color: var(--text-secondary);
    font-size: 0.8125rem;
}

[b-vwrquqo3rz] .invoice-amount {
    font-weight: 600;
    color: var(--heading-color);
}

[b-vwrquqo3rz] .action-buttons {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    justify-content: center;
}

[b-vwrquqo3rz] .action-btn {
    padding: 0.25rem 0.5rem;
    min-width: unset;
}

/* Status Badges */
[b-vwrquqo3rz] .status-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.1875rem 0.625rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: capitalize;
    letter-spacing: 0.02em;
}

[b-vwrquqo3rz] .status-badge.paid {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-vwrquqo3rz] .status-badge.pending {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
}

[b-vwrquqo3rz] .status-badge.overdue {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-text);
}

/* Payment Info Banner */
[b-vwrquqo3rz] .payment-info-banner {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    background: var(--theme-info-subtle);
    border: 1px solid var(--theme-info-border);
    border-radius: 0.5rem;
    font-size: 0.8125rem;
    color: var(--theme-info-text);
    margin-bottom: 1rem;
    line-height: 1.5;
}

[b-vwrquqo3rz] .payment-info-banner i {
    font-size: 1.125rem;
    margin-top: 0.125rem;
    flex-shrink: 0;
}

[b-vwrquqo3rz] .payment-info-banner a {
    color: var(--theme-info-text);
    text-decoration: underline;
    font-weight: 500;
}

[b-vwrquqo3rz] .payment-info-banner a:hover {
    color: var(--theme-info-text);
}

/* Payment Methods List */
[b-vwrquqo3rz] .payment-methods-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

[b-vwrquqo3rz] .payment-method-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.875rem 1rem;
    background: var(--card-bg);
    border: 1px solid var(--card-border);
    border-radius: 0.625rem;
    transition: all 0.2s ease;
}

[b-vwrquqo3rz] .payment-method-item:hover {
    border-color: var(--primary-color);
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
}

[b-vwrquqo3rz] .payment-method-item.default {
    border-color: var(--primary-color);
    background: var(--primary-light-bg);
}

[b-vwrquqo3rz] .payment-icon {
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.5rem;
    background: var(--bg-surface-sunken);
    flex-shrink: 0;
}

[b-vwrquqo3rz] .payment-icon i {
    font-size: 1.25rem;
    color: var(--text-secondary);
}

[b-vwrquqo3rz] .payment-info {
    flex: 1;
    min-width: 0;
}

[b-vwrquqo3rz] .payment-type {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.125rem;
}

[b-vwrquqo3rz] .type-name {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--heading-color);
}

[b-vwrquqo3rz] .default-badge {
    display: inline-flex;
    align-items: center;
    padding: 0.0625rem 0.5rem;
    border-radius: 9999px;
    font-size: 0.6875rem;
    font-weight: 600;
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

[b-vwrquqo3rz] .payment-number {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-family: 'JetBrains Mono', monospace;
    letter-spacing: 0.05em;
}

[b-vwrquqo3rz] .payment-expiry {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
}

/* Upgrade Section */
[b-vwrquqo3rz] .upgrade-section {
    margin-top: 1.25rem;
    background: linear-gradient(135deg, var(--theme-success-emphasis) 0%, var(--theme-success-emphasis) 100%);
    border-radius: 0.75rem;
    overflow: hidden;
}

[b-vwrquqo3rz] .upgrade-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem 2rem;
    gap: 1.5rem;
}

[b-vwrquqo3rz] .upgrade-info h4 {
    margin: 0 0 0.375rem 0;
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-inverse);
}

[b-vwrquqo3rz] .upgrade-info p {
    margin: 0;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.85);
    line-height: 1.5;
}

[b-vwrquqo3rz] .upgrade-btn {
    flex-shrink: 0;
    background: var(--bg-surface) !important;
    color: var(--theme-success-emphasis) !important;
    border: none !important;
    font-weight: 600;
}

[b-vwrquqo3rz] .upgrade-btn:hover {
    background: var(--theme-success-subtle) !important;
}

/* Usage Cards */
[b-vwrquqo3rz] .usage-cards {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

[b-vwrquqo3rz] .usage-card {
    padding: 1rem;
    background: var(--card-bg);
    border: 1px solid var(--card-border);
    border-radius: 0.625rem;
}

[b-vwrquqo3rz] .usage-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.625rem;
}

[b-vwrquqo3rz] .usage-label {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
}

[b-vwrquqo3rz] .usage-value {
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--heading-color);
}

[b-vwrquqo3rz] .usage-bar {
    height: 0.375rem;
    border-radius: 9999px;
    margin-bottom: 0.375rem;
}

[b-vwrquqo3rz] .usage-percent {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* =============================================
   Dark Mode
   ============================================= */

:global(.dark)[b-vwrquqo3rz]  .billing-card {
    background: var(--card-bg-dark);
    border-color: var(--card-border-dark);
}

:global(.dark)[b-vwrquqo3rz]  .billing-card:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);
}

:global(.dark)[b-vwrquqo3rz]  .billing-card-header {
    background: var(--card-header-bg-dark);
    border-color: var(--card-border-dark);
}

:global(.dark)[b-vwrquqo3rz]  .billing-card-header h4 {
    color: var(--theme-gray-100);
}

:global(.dark)[b-vwrquqo3rz]  .invoice-number {
    color: var(--theme-success);
}

:global(.dark)[b-vwrquqo3rz]  .invoice-date {
    color: var(--theme-gray-400);
}

:global(.dark)[b-vwrquqo3rz]  .invoice-amount {
    color: var(--theme-gray-100);
}

:global(.dark)[b-vwrquqo3rz]  .status-badge.paid {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-text);
}

:global(.dark)[b-vwrquqo3rz]  .status-badge.pending {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning-text);
}

:global(.dark)[b-vwrquqo3rz]  .status-badge.overdue {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger-text);
}

:global(.dark)[b-vwrquqo3rz]  .payment-info-banner {
    background: rgba(59, 130, 246, 0.1);
    border-color: rgba(59, 130, 246, 0.25);
    color: var(--theme-info-text);
}

:global(.dark)[b-vwrquqo3rz]  .payment-info-banner a {
    color: var(--theme-info);
}

:global(.dark)[b-vwrquqo3rz]  .payment-method-item {
    background: var(--card-bg-dark);
    border-color: var(--card-border-dark);
}

:global(.dark)[b-vwrquqo3rz]  .payment-method-item:hover {
    border-color: var(--theme-success);
}

:global(.dark)[b-vwrquqo3rz]  .payment-method-item.default {
    border-color: var(--theme-success);
    background: rgba(16, 185, 129, 0.08);
}

:global(.dark)[b-vwrquqo3rz]  .payment-icon {
    background: rgba(255, 255, 255, 0.05);
}

:global(.dark)[b-vwrquqo3rz]  .payment-icon i {
    color: var(--theme-gray-400);
}

:global(.dark)[b-vwrquqo3rz]  .type-name {
    color: var(--theme-gray-100);
}

:global(.dark)[b-vwrquqo3rz]  .default-badge {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-text);
}

:global(.dark)[b-vwrquqo3rz]  .payment-number {
    color: var(--theme-gray-400);
}

:global(.dark)[b-vwrquqo3rz]  .payment-expiry {
    color: var(--theme-gray-500);
}

:global(.dark)[b-vwrquqo3rz]  .usage-card {
    background: var(--card-bg-dark);
    border-color: var(--card-border-dark);
}

:global(.dark)[b-vwrquqo3rz]  .usage-label {
    color: var(--theme-gray-400);
}

:global(.dark)[b-vwrquqo3rz]  .usage-value {
    color: var(--theme-gray-100);
}

:global(.dark)[b-vwrquqo3rz]  .usage-percent {
    color: var(--theme-gray-500);
}

:global(.dark)[b-vwrquqo3rz]  .invoices-grid .rz-datatable-thead th {
    background: var(--card-header-bg-dark);
    color: var(--theme-gray-400);
}

/* =============================================
   Responsive Breakpoints
   ============================================= */

@media (max-width: 1200px) {
    [b-vwrquqo3rz] .billing-content {
        grid-template-columns: 1fr;
    }

    [b-vwrquqo3rz] .usage-cards {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    [b-vwrquqo3rz] .billing-card-header {
        flex-direction: column;
        align-items: flex-start;
    }

    [b-vwrquqo3rz] .billing-card-actions {
        width: 100%;
    }

    [b-vwrquqo3rz] .billing-card-actions .search-input {
        max-width: 100%;
        flex: 1;
    }

    [b-vwrquqo3rz] .usage-cards {
        grid-template-columns: 1fr;
    }

    [b-vwrquqo3rz] .upgrade-content {
        flex-direction: column;
        text-align: center;
        padding: 1.25rem;
    }

    [b-vwrquqo3rz] .upgrade-info h4 {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    [b-vwrquqo3rz] .billing-card-body {
        padding: 0.875rem;
    }

    [b-vwrquqo3rz] .billing-card-header {
        padding: 0.75rem 0.875rem;
    }

    [b-vwrquqo3rz] .payment-method-item {
        padding: 0.75rem;
    }

    [b-vwrquqo3rz] .upgrade-content {
        padding: 1rem;
    }
}
/* /Pages/Multitenancy/CreateTenantModal.razor.rz.scp.css */
/* =============================================
   CreateTenantModal - Single Form Styles
   ============================================= */

/* Form Field — stacked single-column by default */
[b-ajryhsm33w] .form-field {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    margin-bottom: 0.875rem;
}

/* Form Row — side-by-side only where explicitly used (advanced section) */
[b-ajryhsm33w] .form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem 1.25rem;
    margin-bottom: 0;
}

[b-ajryhsm33w] .form-row .form-field {
    margin-bottom: 0;
}

/* Ensure inputs stretch to fill their grid cell */
[b-ajryhsm33w] .form-field .rz-textbox,
[b-ajryhsm33w] .form-field .rz-dropdown,
[b-ajryhsm33w] .form-field .rz-textarea,
[b-ajryhsm33w] .form-field .fsh-text-box,
[b-ajryhsm33w] .form-field .fsh-select,
[b-ajryhsm33w] .form-field input,
[b-ajryhsm33w] .form-field textarea,
[b-ajryhsm33w] .form-field select {
    width: 100% !important;
    max-width: 100% !important;
}

[b-ajryhsm33w] .field-label {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--rz-text-color);
    margin-bottom: 0.125rem;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

[b-ajryhsm33w] .field-label .required {
    color: var(--rz-danger);
    font-weight: 700;
}

[b-ajryhsm33w] .field-hint {
    font-size: 0.75rem;
    color: var(--rz-text-secondary-color);
    line-height: 1.3;
}

/* Advanced Options - collapsible <details> */
[b-ajryhsm33w] .advanced-section {
    margin: 0.75rem 0;
    border: 1px solid var(--rz-base-200);
    border-radius: 0.5rem;
}

[b-ajryhsm33w] .advanced-toggle {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--rz-text-secondary-color);
    cursor: pointer;
    user-select: none;
    list-style: none;
}

[b-ajryhsm33w] .advanced-toggle::-webkit-details-marker {
    display: none;
}

[b-ajryhsm33w] .advanced-toggle::after {
    content: '';
    margin-left: auto;
    border: solid var(--rz-text-secondary-color);
    border-width: 0 1.5px 1.5px 0;
    padding: 3px;
    transform: rotate(45deg);
    transition: transform 0.2s;
}

[b-ajryhsm33w] .advanced-section[open] .advanced-toggle::after {
    transform: rotate(-135deg);
}

[b-ajryhsm33w] .advanced-toggle:hover {
    color: var(--rz-text-color);
}

[b-ajryhsm33w] .advanced-body {
    padding: 0 1rem 1rem;
}

/* Connection string example */
[b-ajryhsm33w] .conn-example {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--rz-base-100);
    border: 1px dashed var(--rz-base-300);
    border-radius: 0.375rem;
}

[b-ajryhsm33w] .conn-example code {
    flex: 1;
    font-size: 0.75rem;
    color: var(--rz-text-color);
    word-break: break-all;
    line-height: 1.4;
}

[b-ajryhsm33w] .copy-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 28px;
    height: 28px;
    border: none;
    background: transparent;
    color: var(--rz-text-secondary-color);
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.15s;
}

[b-ajryhsm33w] .copy-btn:hover {
    background: var(--rz-base-200);
    color: var(--rz-primary);
}

/* Summary Preview */
[b-ajryhsm33w] .summary-preview {
    margin-top: 1rem;
    background: var(--rz-base-100);
    border: 1px solid var(--rz-base-200);
    border-radius: 0.5rem;
    padding: 0.75rem 1rem;
}

[b-ajryhsm33w] .summary-header {
    display: flex;
    align-items: center;
}

[b-ajryhsm33w] .summary-avatar {
    width: 36px;
    height: 36px;
    border-radius: 0.5rem;
    background: linear-gradient(135deg, var(--rz-primary), var(--rz-primary-dark));
    color: var(--text-inverse);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    font-weight: 700;
    flex-shrink: 0;
}

[b-ajryhsm33w] .summary-identity {
    margin-left: 0.75rem;
    flex: 1;
    min-width: 0;
}

[b-ajryhsm33w] .summary-identity h6 {
    margin: 0;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--rz-text-color);
}

[b-ajryhsm33w] .summary-key {
    font-size: 0.75rem;
    color: var(--rz-text-secondary-color);
    font-family: monospace;
}

[b-ajryhsm33w] .summary-badge {
    flex-shrink: 0;
    margin-left: 0.75rem;
}

/* =============================================
   Responsive
   ============================================= */

@media (max-width: 640px) {
    [b-ajryhsm33w] .form-row {
        grid-template-columns: 1fr;
    }

    [b-ajryhsm33w] .summary-badge {
        display: none;
    }
}
/* /Pages/Multitenancy/InvoiceDetailsDialog.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/Migrations.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/ProvisioningStatus.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/ResourceQuotas.razor.rz.scp.css */
/* ========================================
   Resource Quotas Page - Scoped Styles
   ======================================== */

/* Warning Banner */
[b-sho5fofhc5] .warning-banner {
    border-radius: 12px;
    padding: 1rem 1.5rem;
    margin-bottom: 1.5rem;
}

[b-sho5fofhc5] .warning-banner.warning {
    background: var(--theme-warning-subtle);
    border: 1px solid var(--theme-warning);
}

[b-sho5fofhc5] .warning-banner.critical {
    background: var(--theme-danger-subtle);
    border: 1px solid var(--theme-danger);
}

[b-sho5fofhc5] .warning-content {
    display: flex;
    align-items: center;
    gap: 1rem;
}

[b-sho5fofhc5] .warning-icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

[b-sho5fofhc5] .warning-banner.warning .warning-icon {
    background: color-mix(in srgb, var(--theme-warning) 20%, transparent);
    color: var(--theme-warning);
}

[b-sho5fofhc5] .warning-banner.critical .warning-icon {
    background: color-mix(in srgb, var(--theme-danger) 20%, transparent);
    color: var(--theme-danger);
}

[b-sho5fofhc5] .warning-icon i {
    font-size: 1.25rem;
}

[b-sho5fofhc5] .warning-text {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

[b-sho5fofhc5] .warning-text strong {
    font-size: 1rem;
    color: var(--text-primary);
}

[b-sho5fofhc5] .warning-text span {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* ========================================
   Quota Cards Grid
   ======================================== */

[b-sho5fofhc5] .quota-cards-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    margin-bottom: 2rem;
}

/* ========================================
   Quota Card
   ======================================== */

[b-sho5fofhc5] .quota-card {
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-md);
    overflow: hidden;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

[b-sho5fofhc5] .quota-card:hover {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

/* Status border colors */
[b-sho5fofhc5] .quota-card.status-healthy {
    border-top: 4px solid var(--theme-success);
}

[b-sho5fofhc5] .quota-card.status-moderate {
    border-top: 4px solid var(--theme-warning);
}

[b-sho5fofhc5] .quota-card.status-warning {
    border-top: 4px solid var(--theme-orange);
}

[b-sho5fofhc5] .quota-card.status-critical {
    border-top: 4px solid var(--theme-danger);
}

/* Card Header */
[b-sho5fofhc5] .quota-card .card-header {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid var(--border-color);
}

[b-sho5fofhc5] .card-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

[b-sho5fofhc5] .card-icon i {
    font-size: 1.25rem;
    color: white;
}

[b-sho5fofhc5] .card-icon.users {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-primary) 100%);
}

[b-sho5fofhc5] .card-icon.storage {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-green) 100%);
}

[b-sho5fofhc5] .card-icon.api {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-orange) 100%);
}

[b-sho5fofhc5] .card-title {
    flex: 1;
    min-width: 0;
}

[b-sho5fofhc5] .card-title h3 {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

[b-sho5fofhc5] .card-title .last-updated {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.25rem;
    display: block;
}

[b-sho5fofhc5] .warning-badge {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--theme-warning-subtle);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

[b-sho5fofhc5] .warning-badge i {
    font-size: 0.875rem;
    color: var(--theme-warning);
}

/* Card Body */
[b-sho5fofhc5] .quota-card .card-body {
    padding: 1.25rem 1.5rem;
}

[b-sho5fofhc5] .usage-display {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
    margin-bottom: 1rem;
}

[b-sho5fofhc5] .usage-display .current {
    font-size: 2rem;
    font-weight: 700;
    color: var(--text-primary);
}

[b-sho5fofhc5] .usage-display .separator {
    font-size: 1.5rem;
    color: var(--text-muted);
    margin: 0 0.25rem;
}

[b-sho5fofhc5] .usage-display .limit {
    font-size: 1.25rem;
    color: var(--text-secondary);
}

[b-sho5fofhc5] .usage-display .period {
    font-size: 0.875rem;
    color: var(--text-muted);
    margin-left: 0.25rem;
}

/* Progress Bar */
[b-sho5fofhc5] .progress-container {
    height: 8px;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.5rem;
}

[b-sho5fofhc5] .progress-bar {
    height: 100%;
    border-radius: 4px;
    transition: width 0.5s ease;
}

[b-sho5fofhc5] .progress-bar.progress-healthy {
    background: linear-gradient(90deg, var(--theme-success) 0%, var(--theme-green) 100%);
}

[b-sho5fofhc5] .progress-bar.progress-moderate {
    background: linear-gradient(90deg, var(--theme-warning) 0%, color-mix(in srgb, var(--theme-warning) 80%, white) 100%);
}

[b-sho5fofhc5] .progress-bar.progress-warning {
    background: linear-gradient(90deg, var(--theme-orange) 0%, color-mix(in srgb, var(--theme-orange) 80%, white) 100%);
}

[b-sho5fofhc5] .progress-bar.progress-critical {
    background: linear-gradient(90deg, var(--theme-danger) 0%, color-mix(in srgb, var(--theme-danger) 70%, white) 100%);
}

[b-sho5fofhc5] .usage-percent {
    font-size: 0.8rem;
    color: var(--text-secondary);
    text-align: right;
}

/* Card Footer */
[b-sho5fofhc5] .quota-card .card-footer {
    padding: 1rem 1.5rem;
    background: var(--bg-surface-tertiary);
    border-top: 1px solid var(--border-color);
}

/* ========================================
   Trends Section
   ======================================== */

[b-sho5fofhc5] .trends-section {
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-md);
    padding: 1.5rem;
    border: 1px solid var(--border-color);
}

[b-sho5fofhc5] .section-header {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

[b-sho5fofhc5] .section-header h3 {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

[b-sho5fofhc5] .section-subtitle {
    font-size: 0.875rem;
    color: var(--text-muted);
}

[b-sho5fofhc5] .trends-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 1.5rem;
}

[b-sho5fofhc5] .trend-card {
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
    padding: 1.25rem;
}

[b-sho5fofhc5] .trend-card h4 {
    font-size: 0.9rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0 0 1rem 0;
}

/* ========================================
   Dark Mode
   ======================================== */

[data-bs-theme="dark"][b-sho5fofhc5]  .quota-card {
    background: var(--bg-surface-tertiary);
}

[data-bs-theme="dark"][b-sho5fofhc5]  .trends-section {
    background: var(--bg-surface-tertiary);
}

[data-bs-theme="dark"][b-sho5fofhc5]  .progress-container {
    background: var(--bg-surface-secondary);
}

/* ========================================
   Responsive - 1200px: 2-column grid
   ======================================== */

@media (max-width: 1200px) {
    [b-sho5fofhc5] .quota-cards-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ========================================
   Responsive - 768px: 1-column grid
   ======================================== */

@media (max-width: 768px) {
    [b-sho5fofhc5] .quota-cards-grid {
        grid-template-columns: 1fr;
    }

    [b-sho5fofhc5] .warning-content {
        flex-wrap: wrap;
    }

    [b-sho5fofhc5] .trends-grid {
        grid-template-columns: 1fr;
    }

    [b-sho5fofhc5] .trend-card {
        padding: 1rem;
    }

    [b-sho5fofhc5] .quota-card .card-header,
    [b-sho5fofhc5] .quota-card .card-body,
    [b-sho5fofhc5] .quota-card .card-footer {
        padding: 1rem;
    }
}

@media (max-width: 480px) {
    [b-sho5fofhc5] .usage-display .current {
        font-size: 1.5rem;
    }

    [b-sho5fofhc5] .usage-display .limit {
        font-size: 1rem;
    }

    [b-sho5fofhc5] .quota-card .card-header,
    [b-sho5fofhc5] .quota-card .card-body,
    [b-sho5fofhc5] .quota-card .card-footer {
        padding: 1rem;
    }
}
/* /Pages/Multitenancy/TenantDetails.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/TenantSecuritySettings.razor.rz.scp.css */
/* ============ Info Banner ============ */
[b-95frh4buk4] .info-banner {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    margin-bottom: 0.75rem;
    border: 1px solid;
    font-size: 0.8125rem;
}
[b-95frh4buk4] .info-banner > i { font-size: 1.125rem; flex-shrink: 0; margin-top: 0.1rem; }
[b-95frh4buk4] .info-banner strong { display: block; font-size: 0.8125rem; margin-bottom: 0.1rem; }
[b-95frh4buk4] .info-banner p { margin: 0; font-size: 0.75rem; opacity: 0.85; }
[b-95frh4buk4] .info-banner.info { background: rgba(59,130,246,0.06); border-color: rgba(59,130,246,0.2); color: var(--text-secondary); }
[b-95frh4buk4] .info-banner.info > i { color: var(--theme-info); }
[b-95frh4buk4] .info-banner.success { background: rgba(16,185,129,0.06); border-color: rgba(16,185,129,0.2); color: var(--text-secondary); }
[b-95frh4buk4] .info-banner.success > i { color: var(--theme-success); }

/* ============ Security Card (matches content-card pattern) ============ */
[b-95frh4buk4] .security-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 0.75rem;
    overflow: hidden;
    animation: sectionSlideUp-b-95frh4buk4 0.3s ease-out both;
}

@keyframes sectionSlideUp-b-95frh4buk4 {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

[b-95frh4buk4] .security-card .card-header {
    padding: 0.625rem 1rem;
    border-bottom: 1px solid var(--border-color);
}
[b-95frh4buk4] .security-card .card-title {
    margin: 0; font-size: 0.875rem; font-weight: 600;
    color: var(--text-primary); display: flex; align-items: center; gap: 0.4rem;
}
[b-95frh4buk4] .security-card .card-title i { font-size: 1rem; color: var(--theme-primary); }
[b-95frh4buk4] .security-card .card-body { padding: 0.875rem 1rem; }

/* ============ Settings Grid ============ */
[b-95frh4buk4] .settings-grid-2col {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem 1.25rem;
}
[b-95frh4buk4] .settings-grid-2col .form-label {
    display: block; font-size: 0.75rem; font-weight: 600;
    color: var(--text-secondary); margin-bottom: 0.25rem;
    text-transform: uppercase; letter-spacing: 0.03em;
}
[b-95frh4buk4] .hint-text { display: block; font-size: 0.6875rem; color: var(--text-muted); margin-top: 0.15rem; }

/* Zero out FshNumeric/FshSelect margin inside settings grid */
[b-95frh4buk4] .settings-grid-2col .fsh-form-group { margin-bottom: 0; }

/* ============ Toggle List ============ */
[b-95frh4buk4] .toggle-list { display: flex; flex-direction: column; margin-top: 0.75rem; }
[b-95frh4buk4] .toggle-item {
    display: flex; align-items: center; gap: 0.75rem;
    padding: 0.5rem 0; border-bottom: 1px solid var(--border-color);
    transition: opacity 0.2s, background 0.15s;
}
[b-95frh4buk4] .toggle-item:last-child { border-bottom: none; }
[b-95frh4buk4] .toggle-item:hover { background: var(--bg-surface-secondary); margin: 0 -0.5rem; padding-left: 0.5rem; padding-right: 0.5rem; border-radius: 6px; }
[b-95frh4buk4] .toggle-item.disabled { opacity: 0.5; pointer-events: none; }

[b-95frh4buk4] .toggle-info { display: flex; align-items: center; gap: 0.5rem; flex: 1; min-width: 0; }
[b-95frh4buk4] .toggle-info > i { font-size: 1rem; flex-shrink: 0; }
[b-95frh4buk4] .toggle-label { display: block; font-size: 0.8125rem; font-weight: 500; color: var(--text-primary); }
[b-95frh4buk4] .toggle-desc { display: block; font-size: 0.6875rem; color: var(--text-muted); }

[b-95frh4buk4] .platform-note {
    font-size: 0.6875rem; color: var(--theme-warning-emphasis); white-space: nowrap;
    background: rgba(245,158,11,0.1); padding: 0.1rem 0.35rem; border-radius: 4px;
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    [b-95frh4buk4] .settings-grid-2col { grid-template-columns: 1fr; }
    [b-95frh4buk4] .toggle-item { flex-wrap: wrap; }
    [b-95frh4buk4] .platform-note { width: auto; margin-top: 0.15rem; }
}
/* /Pages/Multitenancy/TenantUsers.razor.rz.scp.css */
/* =============================================
   TenantUsers - Scoped Styles
   ============================================= */

/* Navigation Bar */
[b-ng36ak5mlx] .navigation-bar {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.875rem;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* Search */
[b-ng36ak5mlx] .search-inline {
    flex: 1;
    min-width: 200px;
}

[b-ng36ak5mlx] .nav-search-box {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bs-tertiary-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.375rem;
    padding: 0.375rem 0.75rem;
    transition: border-color 0.15s ease, box-shadow 0.15s ease;
}

[b-ng36ak5mlx] .nav-search-box:focus-within {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
    background: var(--bs-body-bg);
}

[b-ng36ak5mlx] .nav-search-box > i {
    color: var(--bs-secondary-color);
    font-size: 1rem;
    flex-shrink: 0;
}

[b-ng36ak5mlx] .nav-search-box input {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--bs-body-color);
    width: 100%;
    padding: 0;
}

[b-ng36ak5mlx] .nav-search-box input::placeholder {
    color: var(--bs-secondary-color);
}

[b-ng36ak5mlx] .clear-search {
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: none;
    color: var(--bs-secondary-color);
    cursor: pointer;
    padding: 0;
    font-size: 0.875rem;
    flex-shrink: 0;
    border-radius: 50%;
    width: 1.25rem;
    height: 1.25rem;
    transition: color 0.15s ease, background 0.15s ease;
}

[b-ng36ak5mlx] .clear-search:hover {
    color: var(--bs-danger);
    background: rgba(220, 53, 69, 0.1);
}

/* Refresh Button */
[b-ng36ak5mlx] .refresh-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--bs-border-color);
    background: var(--bs-body-bg);
    color: var(--bs-secondary-color);
    cursor: pointer;
    padding: 0.375rem;
    border-radius: 0.375rem;
    font-size: 1rem;
    width: 2rem;
    height: 2rem;
    flex-shrink: 0;
    transition: color 0.15s ease, background 0.15s ease, border-color 0.15s ease;
}

[b-ng36ak5mlx] .refresh-btn:hover:not(:disabled) {
    color: var(--bs-primary);
    border-color: var(--bs-primary);
    background: rgba(59, 130, 246, 0.05);
}

[b-ng36ak5mlx] .refresh-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

[b-ng36ak5mlx] .spinner-sm {
    display: inline-block;
    width: 0.875rem;
    height: 0.875rem;
    border: 2px solid var(--bs-border-color);
    border-top-color: var(--bs-primary);
    border-radius: 50%;
    animation: spin-b-ng36ak5mlx 0.6s linear infinite;
}

@keyframes spin-b-ng36ak5mlx {
    to { transform: rotate(360deg); }
}

/* Table Container */
[b-ng36ak5mlx] .table-container {
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    overflow: hidden;
}

[b-ng36ak5mlx] .table-container .rz-datatable {
    border: none;
}

[b-ng36ak5mlx] .table-container .rz-datatable-thead > tr > th {
    background: var(--bs-tertiary-bg);
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--bs-secondary-color);
    padding: 0.625rem 0.875rem;
    border-bottom: 1px solid var(--bs-border-color);
}

[b-ng36ak5mlx] .table-container .rz-datatable-tbody > tr > td {
    padding: 0.625rem 0.875rem;
    font-size: 0.8125rem;
    border-bottom: 1px solid var(--bs-border-color-translucent, rgba(0,0,0,0.06));
    vertical-align: middle;
}

[b-ng36ak5mlx] .table-container .rz-datatable-tbody > tr:hover > td {
    background: rgba(59, 130, 246, 0.03);
}

[b-ng36ak5mlx] .table-container .rz-datatable-tbody > tr:last-child > td {
    border-bottom: none;
}

/* Content Area */
[b-ng36ak5mlx] .content-area {
    margin-bottom: 0.75rem;
}

/* User Avatar */
[b-ng36ak5mlx] .user-avatar {
    width: 36px;
    height: 36px;
    flex-shrink: 0;
}

[b-ng36ak5mlx] .user-avatar img {
    width: 36px;
    height: 36px;
    object-fit: cover;
    border: 2px solid var(--bs-border-color);
}

[b-ng36ak5mlx] .user-email {
    color: var(--bs-body-color);
    font-size: 0.8125rem;
}

/* Role Badges */
[b-ng36ak5mlx] .role-badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.125rem;
}

[b-ng36ak5mlx] .role-badges .rz-badge {
    font-size: 0.6875rem;
    padding: 0.125rem 0.5rem;
    border-radius: 1rem;
    font-weight: 500;
}

/* Action Buttons */
[b-ng36ak5mlx] .action-buttons {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
}

/* List Footer */
[b-ng36ak5mlx] .list-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.625rem 0.875rem;
    background: var(--bs-body-bg);
    border: 1px solid var(--bs-border-color);
    border-radius: 0.5rem;
    font-size: 0.8125rem;
}

[b-ng36ak5mlx] .footer-left {
    display: flex;
    align-items: center;
    gap: 1rem;
}

[b-ng36ak5mlx] .results-text {
    color: var(--bs-secondary-color);
}

[b-ng36ak5mlx] .results-text strong {
    color: var(--bs-body-color);
    font-weight: 600;
}

/* =============================================
   Dark Mode
   ============================================= */
:root[data-bs-theme="dark"][b-ng36ak5mlx]  .navigation-bar,
[data-bs-theme="dark"][b-ng36ak5mlx]  .navigation-bar {
    background: var(--bs-body-bg);
    border-color: var(--bs-border-color);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .nav-search-box,
[data-bs-theme="dark"][b-ng36ak5mlx]  .nav-search-box {
    background: var(--bs-tertiary-bg);
    border-color: var(--bs-border-color);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .nav-search-box:focus-within,
[data-bs-theme="dark"][b-ng36ak5mlx]  .nav-search-box:focus-within {
    background: var(--bs-body-bg);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .refresh-btn,
[data-bs-theme="dark"][b-ng36ak5mlx]  .refresh-btn {
    background: var(--bs-body-bg);
    border-color: var(--bs-border-color);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .table-container,
[data-bs-theme="dark"][b-ng36ak5mlx]  .table-container {
    background: var(--bs-body-bg);
    border-color: var(--bs-border-color);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .table-container .rz-datatable-thead > tr > th,
[data-bs-theme="dark"][b-ng36ak5mlx]  .table-container .rz-datatable-thead > tr > th {
    background: var(--bs-tertiary-bg);
    border-color: var(--bs-border-color);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .table-container .rz-datatable-tbody > tr:hover > td,
[data-bs-theme="dark"][b-ng36ak5mlx]  .table-container .rz-datatable-tbody > tr:hover > td {
    background: rgba(59, 130, 246, 0.06);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .list-footer,
[data-bs-theme="dark"][b-ng36ak5mlx]  .list-footer {
    background: var(--bs-body-bg);
    border-color: var(--bs-border-color);
}

:root[data-bs-theme="dark"][b-ng36ak5mlx]  .user-avatar img,
[data-bs-theme="dark"][b-ng36ak5mlx]  .user-avatar img {
    border-color: var(--bs-border-color);
}

/* =============================================
   Responsive
   ============================================= */
@media (max-width: 1200px) {
    [b-ng36ak5mlx] .navigation-bar {
        gap: 0.375rem;
    }

    [b-ng36ak5mlx] .search-inline {
        min-width: 180px;
    }
}

@media (max-width: 768px) {
    [b-ng36ak5mlx] .navigation-bar {
        flex-direction: column;
        align-items: stretch;
    }

    [b-ng36ak5mlx] .search-inline {
        min-width: unset;
        width: 100%;
    }

    [b-ng36ak5mlx] .refresh-btn {
        align-self: flex-end;
    }

    [b-ng36ak5mlx] .list-footer {
        flex-direction: column;
        gap: 0.5rem;
        text-align: center;
    }

    [b-ng36ak5mlx] .footer-left {
        flex-direction: column;
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    [b-ng36ak5mlx] .navigation-bar {
        padding: 0.5rem;
    }

    [b-ng36ak5mlx] .list-footer {
        padding: 0.5rem;
        font-size: 0.75rem;
    }
}
/* /Pages/Multitenancy/UpgradePlanDialog.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Multitenancy/UpgradeSubscriptionModal.razor.rz.scp.css */
/* Styles migrated to centralized app.css */
/* /Pages/Notifications/Messages.razor.rz.scp.css */
.message-body[b-gzg172ozjz] {
    font-size: 0.95rem;
    line-height: 1.6;
}

.list-group-item.active[b-gzg172ozjz] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

.list-group-item:hover[b-gzg172ozjz] {
    background-color: var(--bg-hover, rgba(0, 0, 0, 0.05));
}

.avatar-sm[b-gzg172ozjz] {
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.avatar-title[b-gzg172ozjz] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
}

/* Dark mode handled by CSS variables and centralized app.css */
/* /Pages/Notifications/NotificationSettings.razor.rz.scp.css */
/**
 * NotificationSettings - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* Content Area - loading container centralized in app.css */

/* ========================================
   PREFERENCE ICONS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.pref-icon[b-h6nd7hoztc] {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-lg, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.pref-icon-sm[b-h6nd7hoztc] {
    width: 28px;
    height: 28px;
    border-radius: var(--radius-md, 6px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    flex-shrink: 0;
}

/* ========================================
   ICON TYPE VARIANTS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.pref-icon.icon-interview[b-h6nd7hoztc],
.pref-icon-sm.icon-interview[b-h6nd7hoztc] {
    background: rgba(243, 156, 18, 0.15);
    color: var(--theme-orange);
}

.pref-icon.icon-stage[b-h6nd7hoztc],
.pref-icon-sm.icon-stage[b-h6nd7hoztc] {
    background: var(--theme-warning-subtle, rgba(248, 172, 89, 0.15));
    color: var(--theme-warning);
}

.pref-icon.icon-comment[b-h6nd7hoztc],
.pref-icon-sm.icon-comment[b-h6nd7hoztc] {
    background: var(--theme-info-subtle, rgba(28, 132, 198, 0.15));
    color: var(--theme-info);
}

.pref-icon.icon-mention[b-h6nd7hoztc],
.pref-icon-sm.icon-mention[b-h6nd7hoztc] {
    background: var(--theme-primary-subtle, rgba(79, 70, 229, 0.15));
    color: var(--theme-primary);
}

.pref-icon.icon-deadline[b-h6nd7hoztc],
.pref-icon-sm.icon-deadline[b-h6nd7hoztc] {
    background: var(--theme-danger-subtle, rgba(237, 85, 101, 0.15));
    color: var(--theme-danger);
}

.pref-icon.icon-system[b-h6nd7hoztc],
.pref-icon-sm.icon-system[b-h6nd7hoztc] {
    background: var(--theme-gray-100);
    color: var(--theme-gray-600);
}

.pref-icon.icon-assignment[b-h6nd7hoztc],
.pref-icon-sm.icon-assignment[b-h6nd7hoztc] {
    background: var(--theme-success-subtle, rgba(26, 179, 148, 0.15));
    color: var(--theme-success);
}

.pref-icon.icon-status[b-h6nd7hoztc],
.pref-icon-sm.icon-status[b-h6nd7hoztc] {
    background: rgba(155, 89, 182, 0.15);
    color: var(--theme-purple);
}

/* ========================================
   FORM SWITCH
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.form-check-input[b-h6nd7hoztc] {
    width: 2.5rem;
    height: 1.25rem;
    cursor: pointer;
}

.form-check-input:checked[b-h6nd7hoztc] {
    background-color: var(--theme-primary);
    border-color: var(--theme-primary);
}

/* ========================================
   INFO ICON
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.info-icon[b-h6nd7hoztc] {
    width: 40px;
    height: 40px;
    background: var(--theme-info-subtle, rgba(28, 132, 198, 0.15));
    color: var(--theme-info);
    border-radius: var(--radius-lg, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

/* ========================================
   QUICK ACTION ITEM
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.quick-action-item[b-h6nd7hoztc] {
    background: var(--bg-surface-sunken);
    border-radius: var(--radius-lg, 8px);
}

/* ========================================
   TYPE LEGEND
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.type-legend[b-h6nd7hoztc] {
    display: flex;
    flex-direction: column;
    gap: var(--space-2, 0.5rem);
}

.legend-item[b-h6nd7hoztc] {
    display: flex;
    align-items: center;
    gap: var(--space-2, 0.5rem);
    font-size: var(--text-sm, 0.875rem);
}

/* ========================================
   TABLE STYLING
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.table th[b-h6nd7hoztc] {
    font-size: var(--text-sm, 0.875rem);
    font-weight: var(--font-medium, 500);
    color: var(--text-muted);
    border-bottom: 1px solid var(--border-color);
    padding: var(--space-3, 0.75rem) var(--space-2, 0.5rem);
}

.table td[b-h6nd7hoztc] {
    padding: var(--space-4, 1rem) var(--space-2, 0.5rem);
    vertical-align: middle;
    border-bottom: 1px solid var(--border-subtle);
}

.table tbody tr:hover[b-h6nd7hoztc] {
    background: var(--bg-hover);
}
/* /Pages/Notifications/NotificationsList.razor.rz.scp.css */
/**
 * NotificationsList - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* Content Area - loading container centralized in app.css */

/* ========================================
   NOTIFICATIONS LIST
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.notifications-list[b-x0use15wxe] {
    display: flex;
    flex-direction: column;
    gap: var(--space-3, 0.75rem);
}

/* ========================================
   NOTIFICATION LIST ITEM
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.notification-list-item[b-x0use15wxe] {
    display: flex;
    align-items: flex-start;
    gap: var(--space-4, 1rem);
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-lg, 8px);
    cursor: pointer;
    transition: all var(--sidenav-transition-fast, 0.2s ease);
}

.notification-list-item:hover[b-x0use15wxe] {
    background: var(--bg-hover);
    border-color: var(--border-hover);
}

.notification-list-item.unread[b-x0use15wxe] {
    background: var(--theme-primary-subtle, rgba(79, 70, 229, 0.05));
    border-color: var(--theme-primary-light, rgba(79, 70, 229, 0.3));
}

/* ========================================
   NOTIFICATION ICON
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.notification-icon[b-x0use15wxe] {
    width: 44px;
    height: 44px;
    border-radius: var(--radius-full, 50%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.notification-icon i[b-x0use15wxe] {
    font-size: 1.25rem;
}

/* ========================================
   ICON TYPE VARIANTS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.notification-icon.icon-info[b-x0use15wxe] {
    background: var(--theme-info-subtle, rgba(28, 132, 198, 0.15));
    color: var(--theme-info);
}

.notification-icon.icon-primary[b-x0use15wxe] {
    background: var(--theme-primary-subtle, rgba(79, 70, 229, 0.15));
    color: var(--theme-primary);
}

.notification-icon.icon-success[b-x0use15wxe] {
    background: var(--theme-success-subtle, rgba(26, 179, 148, 0.15));
    color: var(--theme-success);
}

.notification-icon.icon-warning[b-x0use15wxe] {
    background: var(--theme-warning-subtle, rgba(248, 172, 89, 0.15));
    color: var(--theme-warning);
}

.notification-icon.icon-danger[b-x0use15wxe] {
    background: var(--theme-danger-subtle, rgba(237, 85, 101, 0.15));
    color: var(--theme-danger);
}

.notification-icon.icon-purple[b-x0use15wxe] {
    background: rgba(155, 89, 182, 0.15);
    color: var(--theme-purple);
}

.notification-icon.icon-orange[b-x0use15wxe] {
    background: rgba(243, 156, 18, 0.15);
    color: var(--theme-orange);
}

.notification-icon.icon-gray[b-x0use15wxe] {
    background: var(--theme-gray-100);
    color: var(--theme-gray-600);
}

/* ========================================
   NOTIFICATION CONTENT
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.notification-content[b-x0use15wxe] {
    flex: 1;
    min-width: 0;
}

.notification-header[b-x0use15wxe] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: var(--space-2, 0.5rem);
    margin-bottom: var(--space-1, 0.25rem);
}

.notification-title[b-x0use15wxe] {
    font-weight: var(--font-semibold, 600);
    color: var(--text-primary);
}

.notification-time[b-x0use15wxe] {
    font-size: var(--text-xs, 0.75rem);
    color: var(--text-muted);
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: var(--space-1, 0.25rem);
}

.notification-message[b-x0use15wxe] {
    color: var(--text-secondary);
    font-size: var(--text-sm, 0.875rem);
    line-height: var(--leading-relaxed, 1.625);
    margin-bottom: var(--space-2, 0.5rem);
}

.notification-meta[b-x0use15wxe] {
    display: flex;
    gap: var(--space-2, 0.5rem);
    flex-wrap: wrap;
}

/* ========================================
   NOTIFICATION ACTIONS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.notification-actions[b-x0use15wxe] {
    display: flex;
    gap: var(--space-1, 0.25rem);
    flex-shrink: 0;
}

.btn-ghost[b-x0use15wxe] {
    background: transparent;
    border: none;
    padding: var(--space-2, 0.5rem);
    border-radius: var(--radius-md, 6px);
    color: var(--text-muted);
    transition: all var(--sidenav-transition-fast, 0.2s ease);
}

.btn-ghost:hover[b-x0use15wxe] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

.btn-ghost.text-danger:hover[b-x0use15wxe] {
    background: var(--theme-danger-subtle, rgba(237, 85, 101, 0.15));
    color: var(--theme-danger);
}

/* ========================================
   NOTIFICATION STATS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.notification-stat[b-x0use15wxe] {
    display: flex;
    align-items: center;
    gap: var(--space-3, 0.75rem);
}

/* stat-icon, stat-content, stat-label, stat-value base styles now in app.css */

/* ========================================
   BADGES
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.badge-soft-secondary[b-x0use15wxe] {
    background: var(--theme-gray-100);
    color: var(--theme-gray-700);
}

.badge-soft-info[b-x0use15wxe] {
    background: var(--theme-info-subtle, rgba(28, 132, 198, 0.15));
    color: var(--theme-info);
}
/* /Pages/Portal/PortalHome.razor.rz.scp.css */
/* PortalHome.razor.css - Page loading and layout styles */
/* Uses CSS variables for theme support - dark mode handled automatically */

/* Full-page loading state - fills viewport between header and footer */
.portal-page-loading[b-ru7jl3bc59] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: calc(100vh - 200px); /* Account for header/footer */
    width: 100%;
    background: linear-gradient(135deg, var(--bg-surface) 0%, var(--bg-secondary) 100%);
}

.portal-page-loading .loading-content[b-ru7jl3bc59] {
    text-align: center;
}

.portal-page-loading .spinner-border-lg[b-ru7jl3bc59] {
    width: 3rem;
    height: 3rem;
    border-width: 0.3rem;
}

.portal-page-loading .loading-text[b-ru7jl3bc59] {
    color: var(--text-secondary);
    font-size: 1rem;
    margin-bottom: 0;
}

/* Portal page content - ensures it fills available space */
.portal-page-content[b-ru7jl3bc59] {
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 180px); /* Adjust based on header/footer height */
}

/* Ensure sections can grow to fill space */
.portal-page-content > :last-child[b-ru7jl3bc59] {
    margin-top: auto;
}

/* Share section styling */
[b-ru7jl3bc59] .portal-share {
    margin-top: auto;
    background: var(--bg-surface-secondary);
}

[b-ru7jl3bc59] .share-link-container {
    display: inline-flex;
    align-items: center;
    background: var(--bg-surface);
    border-radius: 0.5rem;
    padding: 0.5rem 1rem;
    box-shadow: var(--shadow-sm, 0 1px 3px rgba(0,0,0,0.1));
}

[b-ru7jl3bc59] .share-link {
    color: var(--text-secondary);
    font-size: 0.875rem;
    word-break: break-all;
}
/* /Pages/Public/EnquiryForm.razor.rz.scp.css */
/* EnquiryForm.razor.css */

.enquiry-page[b-mvvxdxichy] {
    min-height: 100vh;
    background: linear-gradient(135deg, var(--bg-body) 0%, var(--bg-surface-secondary) 100%);
}

.enquiry-icon[b-mvvxdxichy] {
    width: 80px;
    height: 80px;
    margin: 0 auto;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-inverse);
    font-size: 2.5rem;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.15);
}

.enquiry-title[b-mvvxdxichy] {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--text-heading);
    margin-bottom: 0.5rem;
}

.enquiry-subtitle[b-mvvxdxichy] {
    font-size: 1.125rem;
    color: var(--text-secondary);
    max-width: 500px;
    margin: 0 auto;
}

.enquiry-card[b-mvvxdxichy] {
    background: var(--bg-surface);
    border-radius: 1rem;
    padding: 2.5rem;
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--border-color);
}

.section-title[b-mvvxdxichy] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-heading);
    padding-bottom: 0.75rem;
    border-bottom: 2px solid var(--border-color);
    margin-bottom: 0;
}

.section-title i[b-mvvxdxichy] {
    color: var(--theme-primary);
}

.form-floating > .form-control:focus ~ label[b-mvvxdxichy],
.form-floating > .form-control:not(:placeholder-shown) ~ label[b-mvvxdxichy] {
    color: var(--theme-primary);
}

.form-control:focus[b-mvvxdxichy],
.form-select:focus[b-mvvxdxichy] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 0.2rem var(--theme-primary-subtle);
}

.referral-badge[b-mvvxdxichy] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: var(--text-inverse);
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    font-size: 0.875rem;
}

.btn-primary[b-mvvxdxichy] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    border: none;
    padding: 1rem;
    font-weight: 600;
    transition: all 0.3s ease;
}

.btn-primary:hover[b-mvvxdxichy] {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.2);
}

.btn-primary:disabled[b-mvvxdxichy] {
    background: var(--bg-hover);
    color: var(--text-muted);
    transform: none;
    box-shadow: none;
}

/* Success Card */
.success-card[b-mvvxdxichy] {
    background: var(--bg-surface);
    border-radius: 1rem;
    padding: 3rem 2rem;
    text-align: center;
    box-shadow: var(--shadow-lg);
    border: 1px solid var(--border-color);
}

.success-icon[b-mvvxdxichy] {
    width: 100px;
    height: 100px;
    margin: 0 auto 1.5rem;
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-inverse);
    font-size: 3rem;
    animation: pulse-b-mvvxdxichy 2s infinite;
}

@keyframes pulse-b-mvvxdxichy {
    0% {
        box-shadow: 0 0 0 0 rgba(40, 167, 69, 0.4);
    }
    70% {
        box-shadow: 0 0 0 20px rgba(40, 167, 69, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(40, 167, 69, 0);
    }
}

.success-card h3[b-mvvxdxichy] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--theme-success);
    margin-bottom: 1rem;
}

.success-card p[b-mvvxdxichy] {
    color: var(--text-secondary);
    font-size: 1rem;
    max-width: 400px;
    margin: 0 auto;
}

/* Trust Section */
.trust-section[b-mvvxdxichy] {
    padding-top: 1.5rem;
}

.trust-item[b-mvvxdxichy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.trust-item i[b-mvvxdxichy] {
    font-size: 1.5rem;
    color: var(--theme-primary);
}

/* Honeypot — kept rendered (not display:none, which bots detect) but moved
   off-screen and out of the focus order. Visible labels for screen readers
   are suppressed via aria-hidden on the wrapper. */
.enquiry-hp[b-mvvxdxichy] {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}

/* Responsive */
@media (max-width: 768px) {
    .enquiry-title[b-mvvxdxichy] {
        font-size: 1.75rem;
    }

    .enquiry-card[b-mvvxdxichy] {
        padding: 1.5rem;
    }

    .enquiry-icon[b-mvvxdxichy] {
        width: 60px;
        height: 60px;
        font-size: 1.75rem;
    }
}
/* /Pages/Public/OfferList.razor.rz.scp.css */
/* =============================================
   OFFER LIST PAGE STYLES
   Theme: Blue/Indigo (var(--theme-primary))
   Scoped CSS - Blazor isolation prevents Bootstrap
   .card-header/.card-body/.card-footer/.card-title
   collisions without needing !important hacks.
   ============================================= */

/* =============================================
   KEYFRAME ANIMATIONS
   ============================================= */

@keyframes heroFadeIn-b-ttrt20jkyb {
    from { opacity: 0; transform: translateY(-10px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes fadeInUp-b-ttrt20jkyb {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}

@keyframes chipPop-b-ttrt20jkyb {
    from { opacity: 0; transform: scale(0.9); }
    to { opacity: 1; transform: scale(1); }
}

/* Page Container */
.offer-list-page[b-ttrt20jkyb] {
    min-height: 100vh;
    background: var(--bg-body);
    padding-bottom: 3rem;
}

/* Content Area for scoped loading */
.content-area[b-ttrt20jkyb] {
    position: relative;
    min-height: 500px;
}

/* =============================================
   HERO SECTION - Compact Dark Teal
   ============================================= */

.offer-hero[b-ttrt20jkyb] {
    /* Tenant-themed gradient: derives from primary palette via theme-provider.js (--theme-primary-emphasis = 15% darken) */
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    padding: 1.25rem 1.5rem;
    position: relative;
    overflow: hidden;
    animation: heroFadeIn-b-ttrt20jkyb 0.5s ease-out;
}

.offer-hero[b-ttrt20jkyb]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.05'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
    opacity: 0.5;
}

.hero-content[b-ttrt20jkyb] {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    position: relative;
    z-index: 1;
}

.hero-text[b-ttrt20jkyb] {
    flex: 1;
}

.hero-title[b-ttrt20jkyb] {
    font-size: 1.25rem;
    font-weight: 700;
    color: white;
    margin: 0 0 0.25rem 0;
    line-height: 1.2;
}

.hero-subtitle[b-ttrt20jkyb] {
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.8);
    margin: 0 0 0.75rem 0;
    line-height: 1.5;
    max-width: 500px;
}

.hero-stats[b-ttrt20jkyb] {
    display: flex;
    gap: 1.5rem;
}

.hero-stat-item[b-ttrt20jkyb] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    transition: background 0.2s ease;
}

.hero-stat-item:hover[b-ttrt20jkyb] {
    background: rgba(255, 255, 255, 0.1);
}

.hero-stat-value[b-ttrt20jkyb] {
    font-size: 1.25rem;
    font-weight: 700;
    color: white;
}

.hero-stat-label[b-ttrt20jkyb] {
    font-size: 0.6875rem;
    color: rgba(255, 255, 255, 0.7);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.hero-icon[b-ttrt20jkyb] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 12px;
}

.hero-icon i[b-ttrt20jkyb] {
    font-size: 1.5rem;
    color: white;
}

/* =============================================
   TENANT BANNER
   ============================================= */

.tenant-banner[b-ttrt20jkyb] {
    max-width: 1200px;
    margin: 1rem auto 1rem auto;
    display: flex;
    align-items: center;
    gap: 1rem;
    background: var(--bg-surface);
    border-radius: 0.75rem;
    box-shadow: var(--shadow-sm);
    padding: 0.75rem 1.25rem;
    position: relative;
    animation: fadeInUp-b-ttrt20jkyb 0.4s ease-out 0.1s both;
}

.banner-icon[b-ttrt20jkyb] {
    width: 36px;
    height: 36px;
    background: var(--theme-primary-subtle);
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.banner-icon i[b-ttrt20jkyb] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

.banner-content[b-ttrt20jkyb] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0;
}

.banner-title[b-ttrt20jkyb] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.banner-subtitle[b-ttrt20jkyb] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.banner-btn[b-ttrt20jkyb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.banner-btn:hover[b-ttrt20jkyb] {
    background: var(--theme-primary);
    color: white;
}

/* =============================================
   FILTER SECTION
   ============================================= */

.filter-section[b-ttrt20jkyb] {
    max-width: 1200px;
    margin: 0 auto 1.5rem auto;
    padding: 0 1.5rem;
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    align-items: center;
    animation: fadeInUp-b-ttrt20jkyb 0.4s ease-out 0.15s both;
}

.search-box[b-ttrt20jkyb] {
    flex: 1;
    min-width: 250px;
    position: relative;
}

.search-box i[b-ttrt20jkyb] {
    position: absolute;
    left: 1rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.125rem;
    color: var(--text-muted);
    transition: color 0.2s ease;
}

.search-box input[b-ttrt20jkyb] {
    width: 100%;
    padding: 0.75rem 1rem 0.75rem 2.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 0.75rem;
    font-size: 0.9375rem;
    color: var(--text-primary);
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}

.search-box input:focus[b-ttrt20jkyb] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
    transform: scale(1.01);
}

.search-box input:focus + i[b-ttrt20jkyb],
.search-box:focus-within i[b-ttrt20jkyb] {
    color: var(--theme-primary);
}

.search-box input[b-ttrt20jkyb]::placeholder {
    color: var(--text-muted);
}

.filter-chips[b-ttrt20jkyb] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.chip[b-ttrt20jkyb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 9999px;
    font-size: 0.875rem;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
    animation: chipPop-b-ttrt20jkyb 0.3s ease-out both;
}

.chip:nth-child(1)[b-ttrt20jkyb] { animation-delay: 0.2s; }
.chip:nth-child(2)[b-ttrt20jkyb] { animation-delay: 0.28s; }
.chip:nth-child(3)[b-ttrt20jkyb] { animation-delay: 0.36s; }

.chip:hover[b-ttrt20jkyb] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    transform: translateY(-1px);
}

.chip:active[b-ttrt20jkyb] {
    transform: scale(0.97);
}

.chip.active[b-ttrt20jkyb] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.chip i[b-ttrt20jkyb] {
    font-size: 1rem;
}

.chip-count[b-ttrt20jkyb] {
    padding: 0.125rem 0.5rem;
    background: rgba(0, 0, 0, 0.1);
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.chip.active .chip-count[b-ttrt20jkyb] {
    background: rgba(255, 255, 255, 0.25);
}

/* =============================================
   OFFER GRID
   ============================================= */

.offer-grid[b-ttrt20jkyb] {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.5rem;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 1.5rem;
}

/* =============================================
   OFFER CARD
   ============================================= */

.offer-card[b-ttrt20jkyb] {
    background: var(--bg-surface);
    border-radius: 1rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    border-left: 3px solid transparent;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    display: flex;
    flex-direction: column;
    animation: fadeInUp-b-ttrt20jkyb 0.4s ease-out both;

    /* Neutralize Bootstrap .card-* CSS variables so
       .card-header/.card-body/.card-footer/.card-title
       use OUR values instead of Bootstrap's */
    --bs-card-spacer-y: 0;
    --bs-card-spacer-x: 0;
    --bs-card-cap-padding-y: 0;
    --bs-card-cap-padding-x: 0;
    --bs-card-cap-bg: transparent;
    --bs-card-cap-color: inherit;
    --bs-card-bg: transparent;
    --bs-card-color: inherit;
    --bs-card-title-color: inherit;
    --bs-card-title-spacer-y: 0;
    --bs-card-border-width: 0;
    --bs-card-border-color: transparent;
}

.offer-card:hover[b-ttrt20jkyb] {
    box-shadow: var(--shadow-lg);
    transform: translateY(-4px);
    border-color: var(--theme-primary);
    border-left-color: var(--theme-primary);
}

.offer-card:hover .card-logo[b-ttrt20jkyb] {
    transform: scale(1.05);
}

.card-status[b-ttrt20jkyb] {
    position: static;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    display: flex;
    justify-content: flex-end;
}

.status-badge[b-ttrt20jkyb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge.success[b-ttrt20jkyb] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-badge.warning[b-ttrt20jkyb] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-badge.danger[b-ttrt20jkyb] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.status-badge i[b-ttrt20jkyb] {
    font-size: 0.875rem;
}

.card-header[b-ttrt20jkyb] {
    padding: 1rem;
    display: flex;
    gap: 1rem;
    align-items: flex-start;
}

.card-logo[b-ttrt20jkyb] {
    width: 56px;
    height: 56px;
    background: var(--bg-surface-secondary);
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    overflow: hidden;
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.card-logo img[b-ttrt20jkyb] {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.card-logo i[b-ttrt20jkyb] {
    font-size: 1.5rem;
    color: var(--text-muted);
}

.card-info[b-ttrt20jkyb] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.card-title[b-ttrt20jkyb] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

.card-company[b-ttrt20jkyb] {
    font-size: 0.875rem;
    color: var(--theme-primary);
    font-weight: 500;
}

.card-location[b-ttrt20jkyb] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.card-location i[b-ttrt20jkyb] {
    font-size: 0.875rem;
}

.card-body[b-ttrt20jkyb] {
    padding: 0 1rem 1rem 1rem;
    flex: 1;
}

.card-meta[b-ttrt20jkyb] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.meta-item[b-ttrt20jkyb] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.meta-label[b-ttrt20jkyb] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.meta-value[b-ttrt20jkyb] {
    font-size: 0.875rem;
    color: var(--text-primary);
    font-weight: 500;
}

.card-fees[b-ttrt20jkyb] {
    background: var(--bg-surface-secondary);
    border-radius: 0.5rem;
    padding: 0.75rem;
}

.fees-title[b-ttrt20jkyb] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
    margin-bottom: 0.5rem;
}

.fees-grid[b-ttrt20jkyb] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
}

.fee-item[b-ttrt20jkyb] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.fee-label[b-ttrt20jkyb] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.fee-value[b-ttrt20jkyb] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.card-footer[b-ttrt20jkyb] {
    padding: 0.875rem 1rem;
    border-top: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--bg-surface-secondary);
}

.deadline-info[b-ttrt20jkyb] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.deadline-info i[b-ttrt20jkyb] {
    font-size: 1rem;
}

.deadline-info .urgent[b-ttrt20jkyb] {
    color: var(--theme-warning);
    font-weight: 600;
}

.deadline-info .closed[b-ttrt20jkyb] {
    color: var(--theme-danger);
}

.view-btn[b-ttrt20jkyb] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.offer-card:hover .view-btn[b-ttrt20jkyb] {
    gap: 0.875rem;
}

.view-btn i[b-ttrt20jkyb] {
    font-size: 1rem;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* =============================================
   EMPTY STATE - Animated
   ============================================= */

[b-ttrt20jkyb] .empty-state {
    animation: fadeInUp-b-ttrt20jkyb 0.4s ease-out 0.2s both;
}

/* =============================================
   DETAIL MODAL CONTENT
   (structural modal handled by FshModal component,
    these styles apply to content inside the slots)
   ============================================= */

.detail-section[b-ttrt20jkyb] {
    margin-bottom: 1.5rem;
}

.detail-section:last-child[b-ttrt20jkyb] {
    margin-bottom: 0;
}

.section-title[b-ttrt20jkyb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.75rem 0;
}

.section-title i[b-ttrt20jkyb] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

.section-content[b-ttrt20jkyb] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

.dates-grid[b-ttrt20jkyb] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.date-item[b-ttrt20jkyb] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 0.5rem;
}

.date-label[b-ttrt20jkyb] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.date-value[b-ttrt20jkyb] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

.date-value.open[b-ttrt20jkyb] {
    color: var(--theme-success);
}

.date-value.closed[b-ttrt20jkyb] {
    color: var(--theme-danger);
}

.fees-info-text[b-ttrt20jkyb] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
    background: var(--bg-surface-secondary);
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    margin: 0;
}

.fees-info-text i[b-ttrt20jkyb] {
    font-size: 1rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.1rem;
}

.school-info[b-ttrt20jkyb] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 0.5rem;
}

.school-name[b-ttrt20jkyb] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.75rem 0;
}

.school-detail[b-ttrt20jkyb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0 0 0.5rem 0;
}

.school-detail:last-child[b-ttrt20jkyb] {
    margin-bottom: 0;
}

.school-detail i[b-ttrt20jkyb] {
    font-size: 1rem;
    color: var(--text-muted);
}

.closed-message[b-ttrt20jkyb] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    color: var(--text-secondary);
}

.closed-message i[b-ttrt20jkyb] {
    font-size: 1.125rem;
    color: var(--theme-warning);
}

.clear-btn[b-ttrt20jkyb] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--theme-primary);
    color: white;
    border: none;
    border-radius: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.clear-btn:hover[b-ttrt20jkyb] {
    background: var(--theme-primary-emphasis);
}

.clear-btn i[b-ttrt20jkyb] {
    font-size: 1.125rem;
}

/* =============================================
   RESPONSIVE DESIGN
   ============================================= */

@media (max-width: 768px) {
    .offer-hero[b-ttrt20jkyb] {
        padding: 1rem;
    }

    .hero-content[b-ttrt20jkyb] {
        flex-direction: row;
        gap: 1rem;
    }

    .hero-title[b-ttrt20jkyb] {
        font-size: 1.125rem;
    }

    .hero-subtitle[b-ttrt20jkyb] {
        font-size: 0.8125rem;
        margin-bottom: 0.5rem;
    }

    .hero-stats[b-ttrt20jkyb] {
        gap: 1rem;
    }

    .hero-stat-value[b-ttrt20jkyb] {
        font-size: 1rem;
    }

    .hero-icon[b-ttrt20jkyb] {
        width: 40px;
        height: 40px;
    }

    .hero-icon i[b-ttrt20jkyb] {
        font-size: 1.25rem;
    }

    .tenant-banner[b-ttrt20jkyb] {
        margin: 0.75rem 1rem;
        padding: 0.75rem 1rem;
        flex-wrap: wrap;
    }

    .banner-btn[b-ttrt20jkyb] {
        width: 100%;
        justify-content: center;
        margin-top: 0.5rem;
    }

    .filter-section[b-ttrt20jkyb] {
        padding: 0 1rem;
    }

    .search-box[b-ttrt20jkyb] {
        min-width: 100%;
    }

    .filter-chips[b-ttrt20jkyb] {
        width: 100%;
        justify-content: flex-start;
    }

    .offer-grid[b-ttrt20jkyb] {
        padding: 0 1rem;
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .hero-subtitle[b-ttrt20jkyb] {
        display: none;
    }

    .hero-stats[b-ttrt20jkyb] {
        gap: 0.75rem;
    }

    .hero-stat-item[b-ttrt20jkyb] {
        flex-direction: row;
        gap: 0.375rem;
        align-items: baseline;
    }

    .hero-stat-value[b-ttrt20jkyb] {
        font-size: 0.9375rem;
    }

    .hero-stat-label[b-ttrt20jkyb] {
        font-size: 0.625rem;
    }

    .dates-grid[b-ttrt20jkyb] {
        grid-template-columns: 1fr;
    }
}

/* =============================================
   REDUCED MOTION - Accessibility
   ============================================= */

@media (prefers-reduced-motion: reduce) {
    .offer-hero[b-ttrt20jkyb],
    .tenant-banner[b-ttrt20jkyb],
    .filter-section[b-ttrt20jkyb],
    .chip[b-ttrt20jkyb],
    .offer-card[b-ttrt20jkyb],
    [b-ttrt20jkyb] .empty-state {
        animation: none;
    }

    .offer-card[b-ttrt20jkyb],
    .chip[b-ttrt20jkyb],
    .search-box input[b-ttrt20jkyb],
    .view-btn[b-ttrt20jkyb],
    .card-logo[b-ttrt20jkyb] {
        transition: none;
    }
}

/* Dark mode overrides are in app.css (global scope)
   because [data-bs-theme="dark"] is on <html>,
   which is outside the component's scoped CSS boundary. */
/* /Pages/Public/VerifyAdmissionLetter.razor.rz.scp.css */
.verify-page[b-d4hpsyd78x] {
    min-height: 100vh;
    background: linear-gradient(135deg, var(--theme-gray-50) 0%, var(--theme-gray-200) 100%);
}

.verification-badge[b-d4hpsyd78x] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 2.5rem;
}

.verification-badge.valid[b-d4hpsyd78x] {
    background-color: rgba(25, 135, 84, 0.1);
    color: var(--theme-success-emphasis);
}

.verification-badge.invalid[b-d4hpsyd78x] {
    background-color: rgba(220, 53, 69, 0.1);
    color: var(--theme-danger);
}

.verification-details[b-d4hpsyd78x] {
    background: var(--bg-body);
    border-radius: 8px;
    padding: 1rem;
}

.detail-row[b-d4hpsyd78x] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--bg-hover);
}

.detail-row:last-child[b-d4hpsyd78x] {
    border-bottom: none;
}

.detail-row .label[b-d4hpsyd78x] {
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.detail-row .value[b-d4hpsyd78x] {
    color: var(--text-primary);
    text-align: right;
}

.card[b-d4hpsyd78x] {
    border: none;
    border-radius: 12px;
}

.card-header[b-d4hpsyd78x] {
    border-radius: 12px 12px 0 0 !important;
}

.form-control:focus[b-d4hpsyd78x] {
    border-color: var(--theme-info);
    box-shadow: 0 0 0 0.2rem rgba(13, 110, 253, 0.15);
}

/* QR Scanner Styles */
.qr-scanner-container[b-d4hpsyd78x] {
    position: relative;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    border-radius: 12px;
    overflow: hidden;
    background: var(--text-heading);
}

.qr-reader[b-d4hpsyd78x] {
    width: 100%;
    min-height: 300px;
}

[b-d4hpsyd78x] #qr-reader {
    border: none !important;
    border-radius: 12px;
}

[b-d4hpsyd78x] #qr-reader video {
    border-radius: 12px;
}

[b-d4hpsyd78x] #qr-reader__scan_region {
    background: transparent !important;
}

[b-d4hpsyd78x] #qr-reader__dashboard {
    padding: 10px !important;
}

[b-d4hpsyd78x] #qr-reader__dashboard_section_swaplink {
    text-decoration: none;
    color: var(--theme-info);
}

[b-d4hpsyd78x] #qr-reader__status_span {
    background: rgba(0, 0, 0, 0.7);
    color: white;
    padding: 5px 10px;
    border-radius: 4px;
    font-size: 0.875rem;
}

[b-d4hpsyd78x] #qr-shaded-region {
    border-color: rgba(13, 110, 253, 0.5) !important;
}

/* Verification options */
.verification-options .btn-lg[b-d4hpsyd78x] {
    padding: 1rem 1.5rem;
    font-size: 1.1rem;
}

.verification-options .btn-lg i[b-d4hpsyd78x] {
    font-size: 1.5rem;
}

/* Mobile optimizations */
@media (max-width: 576px) {
    .verify-page[b-d4hpsyd78x] {
        padding: 1rem;
    }

    .card-body[b-d4hpsyd78x] {
        padding: 1.5rem !important;
    }

    .qr-reader[b-d4hpsyd78x] {
        min-height: 250px;
    }

    .detail-row[b-d4hpsyd78x] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.25rem;
    }

    .detail-row .value[b-d4hpsyd78x] {
        text-align: left;
    }
}
/* /Pages/Recruiter/AdminDashboard.razor.rz.scp.css */
/* AdminDashboard - Component Styles */

/* Content Area - loading container centralized in app.css */
/* /Pages/Recruiter/AdmissionsPages/AdmissionsList.razor.rz.scp.css */
/* ========================================
   ADMISSIONS LIST PAGE - MODERN DESIGN
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.admissions-list-page[b-bbq73hh6jh] {
    /* Padding removed - handled by .content-page global rule */
}

/* ========================================
   INLINE ALERT BANNERS
   ======================================== */

.inline-alerts[b-bbq73hh6jh] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.inline-alert[b-bbq73hh6jh] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.inline-alert i[b-bbq73hh6jh] {
    font-size: 1rem;
    flex-shrink: 0;
}

.inline-alert.warning[b-bbq73hh6jh] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.inline-alert.warning i[b-bbq73hh6jh] {
    color: var(--theme-warning);
}

.inline-alert.danger[b-bbq73hh6jh] {
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.25);
}

.inline-alert.danger i[b-bbq73hh6jh] {
    color: var(--theme-danger);
}

.inline-alert.info[b-bbq73hh6jh] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.inline-alert.info i[b-bbq73hh6jh] {
    color: var(--theme-info);
}

.inline-alert.clickable[b-bbq73hh6jh] {
    cursor: pointer;
    transition: all 0.2s ease;
}

.inline-alert.clickable:hover[b-bbq73hh6jh] {
    filter: brightness(0.95);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.inline-alert.active-filter[b-bbq73hh6jh] {
    border-width: 2px;
    font-weight: 500;
}

.inline-alert.warning.active-filter[b-bbq73hh6jh] {
    background: rgba(245, 158, 11, 0.15);
    border-color: rgba(245, 158, 11, 0.5);
}

.alert-clear-btn[b-bbq73hh6jh] {
    margin-left: auto;
    background: none;
    border: none;
    cursor: pointer;
    color: var(--text-secondary);
    padding: 2px 4px;
    border-radius: 4px;
    font-size: 0.85rem;
}

.alert-clear-btn:hover[b-bbq73hh6jh] {
    background: rgba(0, 0, 0, 0.08);
    color: var(--text-primary);
}

.alert-sep[b-bbq73hh6jh] {
    color: var(--text-secondary);
    margin: 0 0.125rem;
}

/* ========================================
   ADVANCED FILTERS BAR (Collapsible)
   Rendered by parent (not the navigation bar component).
   ======================================== */

.advanced-filters-bar[b-bbq73hh6jh] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-bbq73hh6jh] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 160px;
    min-width: 130px;
    max-width: 220px;
}

.advanced-filter-label[b-bbq73hh6jh] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

[b-bbq73hh6jh] .adv-filter-fsh-select {
    margin: 0;
}

[b-bbq73hh6jh] .adv-filter-fsh-select .fsh-searchable-select {
    min-width: 0;
}

[b-bbq73hh6jh] .adv-filter-fsh-select .fsh-searchable-trigger {
    height: 34px;
    padding: 0 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    transition: all 0.2s ease;
}

[b-bbq73hh6jh] .adv-filter-fsh-select .fsh-searchable-trigger:hover {
    border-color: var(--theme-primary);
}

[b-bbq73hh6jh] .adv-filter-fsh-select .fsh-searchable-value {
    font-size: 0.8125rem;
}

[b-bbq73hh6jh] .adv-filter-fsh-select .fsh-searchable-placeholder {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

[b-bbq73hh6jh] .adv-filter-fsh-select .fsh-searchable-dropdown {
    min-width: 200px;
    z-index: 1050;
}

.advanced-filter-actions[b-bbq73hh6jh] {
    display: flex;
    align-items: flex-end;
    flex: 0 0 auto;
    padding-bottom: 1px;
}

.adv-clear-btn[b-bbq73hh6jh] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.adv-clear-btn:hover[b-bbq73hh6jh] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.adv-clear-btn i[b-bbq73hh6jh] {
    font-size: 0.875rem;
}

/* Native <select> in advanced filters */
.adv-filter-select[b-bbq73hh6jh] {
    padding: 0.375rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    outline: none;
    min-width: 120px;
}

.adv-filter-select:focus[b-bbq73hh6jh] {
    border-color: var(--theme-primary);
}

/* Advanced Filters Responsive */
@media (max-width: 768px) {
    .advanced-filters-bar[b-bbq73hh6jh] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-bbq73hh6jh] {
        max-width: none;
    }
}

/* Content Area - loading container centralized in app.css */

/* Pattern moved to centralized app.css */

/* Pattern moved to centralized app.css */

/* Pattern moved to centralized app.css */

/* ========================================
   BULK ACTIONS BAR
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.bulk-actions-bar[b-bbq73hh6jh] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.25rem;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.08) 0%, rgba(99, 102, 241, 0.04) 100%);
    border: 1px solid var(--theme-primary-border);
    border-radius: 10px;
    margin-bottom: 1rem;
    animation: slideDown 0.2s ease-out;
}

/* @keyframes slideDown - Using centralized animation from app.css (line 1649) */

.selection-info[b-bbq73hh6jh] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.selection-count[b-bbq73hh6jh] {
    font-weight: 600;
    color: var(--theme-primary);
}

.btn-clear-selection[b-bbq73hh6jh] {
    padding: 0.25rem 0.5rem;
    border: none;
    background: none;
    color: var(--text-secondary);
    font-size: 0.8125rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.btn-clear-selection:hover[b-bbq73hh6jh] {
    background: rgba(0, 0, 0, 0.05);
    color: var(--text-primary);
}

.bulk-buttons[b-bbq73hh6jh] {
    display: flex;
    gap: 0.5rem;
}

.bulk-btn[b-bbq73hh6jh] {
    padding: 0.5rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    transition: all 0.2s ease;
}

.bulk-btn:hover[b-bbq73hh6jh] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.bulk-btn.export:hover[b-bbq73hh6jh] {
    background: var(--theme-success);
    border-color: var(--theme-success);
}

/* ========================================
   TABLE VIEW
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.table-container[b-bbq73hh6jh] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible; /* Allow dropdowns to overflow */
}

.table-index-link[b-bbq73hh6jh] {
    color: var(--theme-primary);
    font-weight: 600;
    cursor: pointer;
    text-decoration: none;
}

.table-index-link:hover[b-bbq73hh6jh] {
    text-decoration: underline;
}

.mono[b-bbq73hh6jh] {
    font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
    font-size: 0.8125rem;
}

.table-student-cell .student-name[b-bbq73hh6jh] {
    font-weight: 500;
    color: var(--text-primary);
}

.result-badge[b-bbq73hh6jh] {
    font-weight: 700;
    color: var(--theme-primary);
}

/* Status badge pattern consolidated in app.css */

.table-actions[b-bbq73hh6jh] {
    display: flex;
    gap: 0.25rem;
    justify-content: center;
}

/* Action button patterns consolidated in app.css */

/* Page-specific table action button hover states */
.table-action-btn.view:hover[b-bbq73hh6jh] {
    background: var(--theme-info);
    border-color: var(--theme-info);
    color: white;
}

.table-action-btn.download:hover[b-bbq73hh6jh] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: white;
}

.table-action-btn.print:hover[b-bbq73hh6jh] {
    background: var(--text-secondary);
    border-color: var(--text-secondary);
    color: white;
}

.table-action-btn.sms:hover[b-bbq73hh6jh] {
    background: var(--theme-warning);
    border-color: var(--theme-warning);
    color: white;
}

/* DataGrid Overrides */
[b-bbq73hh6jh] .rz-datatable {
    border: none;
}

[b-bbq73hh6jh] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.5rem 0.75rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-bbq73hh6jh] .rz-datatable-data > tr > td {
    padding: 0.375rem 0.75rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-bbq73hh6jh] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-bbq73hh6jh] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   CARD VIEW (GRID CONTAINER)
   The .admission-card and its descendants live in AdmissionCardItem.razor.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.admissions-grid[b-bbq73hh6jh] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1.25rem;
}

.pagination-wrapper[b-bbq73hh6jh] {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
}

/* ========================================
   LIST FOOTER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.list-footer[b-bbq73hh6jh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.results-text[b-bbq73hh6jh] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-bbq73hh6jh] {
    color: var(--text-primary);
}

.selected-text[b-bbq73hh6jh] {
    color: var(--theme-primary);
    font-weight: 600;
}

.footer-left[b-bbq73hh6jh] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.page-size-selector[b-bbq73hh6jh] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-bbq73hh6jh] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-bbq73hh6jh] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-bbq73hh6jh] {
    border-color: var(--theme-primary);
}

.export-buttons[b-bbq73hh6jh] {
    display: flex;
    gap: 0.5rem;
}

.export-btn[b-bbq73hh6jh] {
    padding: 0.5rem 1rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    transition: all 0.2s ease;
    border: none;
}

.export-btn.excel[b-bbq73hh6jh] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.export-btn.excel:hover[b-bbq73hh6jh] {
    background: var(--theme-success);
    color: white;
}

.export-btn.csv[b-bbq73hh6jh] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.export-btn.csv:hover[b-bbq73hh6jh] {
    background: var(--text-secondary);
    color: white;
}

/* ========================================
   BUTTONS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.btn[b-bbq73hh6jh] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    border-radius: 8px;
    font-size: 0.9375rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
}

.btn-primary[b-bbq73hh6jh] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: white;
}

.btn-primary:hover:not(:disabled)[b-bbq73hh6jh] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.4);
}

.btn-primary:disabled[b-bbq73hh6jh] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-outline-primary[b-bbq73hh6jh] {
    background: transparent;
    border: 1px solid var(--theme-primary);
    color: var(--theme-primary);
}

.btn-outline-primary:hover[b-bbq73hh6jh] {
    background: var(--theme-primary);
    color: white;
}

.btn-outline-secondary[b-bbq73hh6jh] {
    background: transparent;
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
}

.btn-outline-secondary:hover[b-bbq73hh6jh] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.btn-outline-info[b-bbq73hh6jh] {
    background: transparent;
    border: 1px solid var(--theme-info);
    color: var(--theme-info);
}

.btn-outline-info:hover:not(:disabled)[b-bbq73hh6jh] {
    background: var(--theme-info);
    color: white;
}

.btn-outline-info:disabled[b-bbq73hh6jh] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* ========================================
   RESPONSIVE
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .stats-grid[b-bbq73hh6jh] {
        grid-template-columns: repeat(2, 1fr);
    }

    .filter-row[b-bbq73hh6jh] {
        grid-template-columns: 1fr 1fr;
    }

    .admissions-grid[b-bbq73hh6jh] {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
}

@media (max-width: 768px) {

    .header-content[b-bbq73hh6jh] {
        flex-direction: column;
        align-items: flex-start;
    }

    .header-actions[b-bbq73hh6jh] {
        width: 100%;
    }

    .stats-grid[b-bbq73hh6jh] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.75rem;
    }

    .stat-card[b-bbq73hh6jh] {
        padding: 0.75rem;
        min-height: 56px;
    }

    .stat-value[b-bbq73hh6jh] {
        font-size: 1.125rem;
    }

    .filter-row[b-bbq73hh6jh] {
        grid-template-columns: 1fr;
    }

    .admissions-grid[b-bbq73hh6jh] {
        grid-template-columns: 1fr;
    }

    .bulk-actions-bar[b-bbq73hh6jh] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .bulk-buttons[b-bbq73hh6jh] {
        flex-wrap: wrap;
        justify-content: center;
    }

    .list-footer[b-bbq73hh6jh] {
        flex-direction: column;
        gap: 1rem;
        text-align: center;
    }

    .footer-left[b-bbq73hh6jh] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

@media (max-width: 576px) {
    .header-title-section h1[b-bbq73hh6jh] {
        font-size: 1.375rem;
    }

    .title-icon[b-bbq73hh6jh] {
        width: 48px;
        height: 48px;
        font-size: 1.25rem;
    }

    .stats-grid[b-bbq73hh6jh] {
        grid-template-columns: 1fr 1fr;
    }

    .stat-icon[b-bbq73hh6jh] {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }
}

/* ========================================
   DARK MODE OVERRIDES
   ======================================== */

:global([data-bs-theme="dark"]) .bulk-actions-bar[b-bbq73hh6jh] {
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.15) 0%, rgba(99, 102, 241, 0.08) 100%);
    border-color: rgba(99, 102, 241, 0.3);
}

:global([data-bs-theme="dark"]) .btn-clear-selection:hover[b-bbq73hh6jh] {
    background: rgba(255, 255, 255, 0.1);
}

:global([data-bs-theme="dark"]) .export-btn.csv[b-bbq73hh6jh] {
    background: rgba(148, 163, 184, 0.15);
    color: var(--text-secondary);
}

/* DataGrid dark mode */
:global([data-bs-theme="dark"])[b-bbq73hh6jh]  .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-bbq73hh6jh]  .rz-datatable-data > tr > td {
    background: var(--bg-surface);
    color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-bbq73hh6jh]  .rz-datatable-data > tr:hover > td {
    background: var(--bg-surface-tertiary);
}

:global([data-bs-theme="dark"])[b-bbq73hh6jh]  .rz-pager {
    background: var(--bg-surface);
}

/* Status badges dark mode - ensure visibility */
:global([data-bs-theme="dark"]) .status-badge.admitted[b-bbq73hh6jh] {
    background: rgba(16, 185, 129, 0.2);
    color: var(--theme-success);
}

:global([data-bs-theme="dark"]) .status-badge.waiting[b-bbq73hh6jh] {
    background: rgba(245, 158, 11, 0.2);
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"]) .status-badge.rejected[b-bbq73hh6jh] {
    background: rgba(239, 68, 68, 0.2);
    color: var(--theme-danger);
}

:global([data-bs-theme="dark"]) .status-badge.pending[b-bbq73hh6jh] {
    background: rgba(148, 163, 184, 0.2);
    color: var(--text-muted);
}

:global([data-bs-theme="dark"]) .status-badge.under-review[b-bbq73hh6jh] {
    background: rgba(59, 130, 246, 0.2);
    color: var(--theme-info);
}

:global([data-bs-theme="dark"]) .status-badge.deferred[b-bbq73hh6jh] {
    background: rgba(245, 158, 11, 0.2);
    color: var(--theme-warning);
}

/* New status badges - light mode */
.status-badge.offer-accepted[b-bbq73hh6jh] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.status-badge.offer-declined[b-bbq73hh6jh] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.status-badge.selected[b-bbq73hh6jh] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.status-badge.transferred[b-bbq73hh6jh] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-emphasis);
}

.status-badge.pending[b-bbq73hh6jh] {
    background: rgba(148, 163, 184, 0.12);
    color: var(--text-secondary);
}

.status-badge.under-review[b-bbq73hh6jh] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-primary);
}

.status-badge.deferred[b-bbq73hh6jh] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

/* New status badges - dark mode */
:global([data-bs-theme="dark"]) .status-badge.offer-accepted[b-bbq73hh6jh] {
    background: rgba(59, 130, 246, 0.2);
    color: var(--theme-info);
}

:global([data-bs-theme="dark"]) .status-badge.offer-declined[b-bbq73hh6jh] {
    background: rgba(148, 163, 184, 0.15);
    color: var(--text-muted);
}

:global([data-bs-theme="dark"]) .status-badge.selected[b-bbq73hh6jh] {
    background: rgba(139, 92, 246, 0.2);
    color: var(--theme-purple);
}

:global([data-bs-theme="dark"]) .status-badge.transferred[b-bbq73hh6jh] {
    background: rgba(16, 185, 129, 0.2);
    color: var(--theme-success);
}

/* ========================================
   CARD STATUS BADGES
   The .card-status class is added via AdditionalClass on the StatusBadge
   component rendered by the parent's RenderCardStatusBadge fragment.
   ======================================== */

.card-status[b-bbq73hh6jh] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
    line-height: 1.3;
    white-space: nowrap;
}

.card-status.admitted[b-bbq73hh6jh] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.card-status.waiting[b-bbq73hh6jh] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.card-status.rejected[b-bbq73hh6jh] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.card-status.offer-accepted[b-bbq73hh6jh] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.card-status.offer-declined[b-bbq73hh6jh] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.card-status.selected[b-bbq73hh6jh] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.card-status.transferred[b-bbq73hh6jh] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-emphasis);
}

.card-status.pending[b-bbq73hh6jh] {
    background: rgba(148, 163, 184, 0.12);
    color: var(--text-secondary);
}

.card-status.under-review[b-bbq73hh6jh] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-primary);
}

.card-status.deferred[b-bbq73hh6jh] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"]) .card-status.offer-accepted[b-bbq73hh6jh] {
    background: rgba(59, 130, 246, 0.2);
    color: var(--theme-info);
}

:global([data-bs-theme="dark"]) .card-status.offer-declined[b-bbq73hh6jh] {
    background: rgba(148, 163, 184, 0.15);
    color: var(--text-muted);
}

:global([data-bs-theme="dark"]) .card-status.selected[b-bbq73hh6jh] {
    background: rgba(139, 92, 246, 0.2);
    color: var(--theme-purple);
}

:global([data-bs-theme="dark"]) .card-status.transferred[b-bbq73hh6jh] {
    background: rgba(16, 185, 129, 0.2);
    color: var(--theme-success);
}

/* Card status badges dark mode */
:global([data-bs-theme="dark"]) .card-status.admitted[b-bbq73hh6jh] {
    background: rgba(16, 185, 129, 0.2);
    color: var(--theme-success);
}

:global([data-bs-theme="dark"]) .card-status.waiting[b-bbq73hh6jh] {
    background: rgba(245, 158, 11, 0.2);
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"]) .card-status.rejected[b-bbq73hh6jh] {
    background: rgba(239, 68, 68, 0.2);
    color: var(--theme-danger);
}

/* ========================================
   CHOICE VERIFICATION FLAGS
   (Duplicated in AdmissionCardItem.razor.css — also used by parent table view)
   ======================================== */

.choice-flag[b-bbq73hh6jh] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
    line-height: 1;
}

.choice-flag.mismatch[b-bbq73hh6jh] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
    border: 1px solid var(--theme-danger-border);
}

.choice-flag.mismatch i[b-bbq73hh6jh] {
    font-size: 0.75rem;
}

.choice-flag.verified[b-bbq73hh6jh] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
    border: 1px solid var(--theme-success-border);
}

.choice-flag.verified i[b-bbq73hh6jh] {
    font-size: 0.75rem;
}

.choice-flag.unverified[b-bbq73hh6jh] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

/* Dark mode */
:global([data-bs-theme="dark"]) .choice-flag.mismatch[b-bbq73hh6jh] {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger);
    border-color: rgba(220, 38, 38, 0.3);
}

:global([data-bs-theme="dark"]) .choice-flag.verified[b-bbq73hh6jh] {
    background: rgba(22, 163, 74, 0.15);
    color: var(--theme-success);
    border-color: rgba(22, 163, 74, 0.3);
}

:global([data-bs-theme="dark"]) .choice-flag.unverified[b-bbq73hh6jh] {
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-secondary);
    border-color: var(--border-color);
}

/* ========================================
   GOVERNMENT PLACEMENT BADGES
   (Duplicated in AdmissionCardItem.razor.css — also used by parent table view)
   ======================================== */

.placement-badge[b-bbq73hh6jh] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.placement-badge i[b-bbq73hh6jh] {
    font-size: 0.8rem;
}

.placement-badge.merit[b-bbq73hh6jh] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-text);
    border: 1px solid var(--theme-success-border);
}

.placement-badge.transfer-in[b-bbq73hh6jh] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-text);
    border: 1px solid var(--theme-info-border);
}

.placement-badge.transfer-out[b-bbq73hh6jh] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
    border: 1px solid var(--theme-warning-border);
    font-weight: 700;
    font-size: 0.8rem;
}

.placement-badge.not-considered[b-bbq73hh6jh] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
    border: 1px solid var(--theme-danger-border);
    font-weight: 700;
    font-size: 0.8rem;
}

/* Dark mode */
:global([data-bs-theme="dark"]) .placement-badge.merit[b-bbq73hh6jh] {
    background: rgba(22, 163, 74, 0.15);
    color: var(--theme-success);
    border-color: rgba(22, 163, 74, 0.3);
}

:global([data-bs-theme="dark"]) .placement-badge.transfer-in[b-bbq73hh6jh] {
    background: rgba(37, 99, 235, 0.15);
    color: var(--theme-info);
    border-color: rgba(37, 99, 235, 0.3);
}

:global([data-bs-theme="dark"]) .placement-badge.transfer-out[b-bbq73hh6jh] {
    background: rgba(234, 88, 12, 0.15);
    color: var(--theme-warning);
    border-color: rgba(234, 88, 12, 0.3);
}

:global([data-bs-theme="dark"]) .placement-badge.not-considered[b-bbq73hh6jh] {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger);
    border-color: rgba(220, 38, 38, 0.3);
}

/* ========================================
   TABLE COMPACT ROW OVERRIDES
   Compress row height and split button in table
   ======================================== */

[b-bbq73hh6jh] .rz-data-row td {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
    font-size: 0.8rem;
    line-height: 1.35;
}

[b-bbq73hh6jh] .rz-datatable-thead th {
    padding-top: 0.375rem !important;
    padding-bottom: 0.375rem !important;
    font-size: 0.75rem;
}

.table-container[b-bbq73hh6jh]  .fsh-split-btn {
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.08);
}

.table-container[b-bbq73hh6jh]  .fsh-split-btn-main {
    padding: 0.15rem 0.35rem !important;
    font-size: 0.7rem !important;
    gap: 0.2rem !important;
    line-height: 1.2 !important;
}

.table-container[b-bbq73hh6jh]  .fsh-split-btn-main i {
    font-size: 0.75rem !important;
}

.table-container[b-bbq73hh6jh]  .fsh-split-btn-toggle {
    padding: 0.15rem 0.2rem !important;
    min-width: 20px !important;
}

.table-container[b-bbq73hh6jh]  .fsh-split-btn-toggle i {
    font-size: 0.65rem !important;
}
/* /Pages/Recruiter/AdmissionsPages/Components/AdmissionCardItem.razor.rz.scp.css */
/* ========================================
   ADMISSION CARD
   ======================================== */

.admission-card[b-o7udf79lcl] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
    transition: box-shadow 0.2s ease, border-color 0.2s ease;
    position: relative;
    display: flex;
    flex-direction: column;
}

.admission-card:hover[b-o7udf79lcl] {
    box-shadow: var(--shadow-md);
}

.admission-card.selected[b-o7udf79lcl] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--theme-primary-border);
}

.card-checkbox[b-o7udf79lcl] {
    position: absolute;
    top: 0.5rem;
    left: 0.625rem;
    z-index: 2;
}

.card-checkbox input[type="checkbox"][b-o7udf79lcl] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--theme-primary);
}

/* Card header — invisible, just positions the status badge */
.admission-card .card-header[b-o7udf79lcl] {
    position: absolute;
    top: 0.5rem;
    right: 0.625rem;
    z-index: 2;
}

/* Card body — extra top padding for absolute-positioned badge + checkbox */
.admission-card .card-body[b-o7udf79lcl] {
    padding: 2.25rem 1rem 1rem;
    cursor: pointer;
    flex: 1;
}

.student-info[b-o7udf79lcl] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    margin-bottom: 0.875rem;
}

.student-avatar[b-o7udf79lcl] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.9375rem;
    flex-shrink: 0;
}

.student-details[b-o7udf79lcl] {
    flex: 1;
    min-width: 0;
}

.student-details .student-name[b-o7udf79lcl] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
}

.student-details .index-number[b-o7udf79lcl] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.admission-meta[b-o7udf79lcl] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    padding-top: 0.5rem;
    border-top: 1px dashed var(--border-color);
}

.meta-item[b-o7udf79lcl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.meta-item i[b-o7udf79lcl] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    width: 16px;
    flex-shrink: 0;
}

.meta-item.result strong[b-o7udf79lcl] {
    color: var(--theme-primary);
    font-weight: 600;
}

.meta-item.downloads[b-o7udf79lcl] {
    font-size: 0.75rem;
}

.meta-item.downloads.has-downloads strong[b-o7udf79lcl] {
    color: var(--theme-primary);
    font-weight: 600;
}

.meta-item.downloads.no-downloads[b-o7udf79lcl] {
    opacity: 0.5;
}

.meta-item.downloads .download-time[b-o7udf79lcl] {
    color: var(--text-secondary);
    font-size: 0.65rem;
    font-weight: 400;
    margin-left: 0.25rem;
}

:global([data-bs-theme="dark"]) .meta-item.downloads .download-time[b-o7udf79lcl] {
    color: rgba(255, 255, 255, 0.5);
}

.meta-item.download-location[b-o7udf79lcl] {
    font-size: 0.7rem;
    color: var(--theme-info);
}

.meta-item.download-location i[b-o7udf79lcl] {
    font-size: 0.75rem;
    color: var(--theme-info);
}

.meta-item.download-location .location-time[b-o7udf79lcl] {
    color: var(--text-secondary);
    font-size: 0.65rem;
    margin-left: 0.25rem;
}

:global([data-bs-theme="dark"]) .meta-item.download-location[b-o7udf79lcl] {
    color: var(--theme-info);
}

:global([data-bs-theme="dark"]) .meta-item.download-location i[b-o7udf79lcl] {
    color: var(--theme-info);
}

:global([data-bs-theme="dark"]) .meta-item.download-location .location-time[b-o7udf79lcl] {
    color: rgba(255, 255, 255, 0.5);
}

/* Card footer */
.admission-card .card-footer[b-o7udf79lcl] {
    display: flex;
    justify-content: flex-start;
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
    border-radius: 0 0 12px 12px;
    position: relative;
}

/* Card actions pattern */
.card-actions[b-o7udf79lcl] {
    display: flex;
    gap: 0.5rem;
}

/* Action button styling */
.action-btn[b-o7udf79lcl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.action-btn i[b-o7udf79lcl] {
    font-size: 1rem;
}

.action-btn span[b-o7udf79lcl] {
    display: inline;
}

.action-btn:hover[b-o7udf79lcl] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.action-btn.success[b-o7udf79lcl] {
    color: var(--theme-success);
    border-color: var(--theme-success-border);
}

.action-btn.success:hover[b-o7udf79lcl] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: white;
}

.action-btn.warning[b-o7udf79lcl] {
    color: var(--theme-warning);
    border-color: var(--theme-warning-border);
}

.action-btn.warning:hover[b-o7udf79lcl] {
    background: var(--theme-warning);
    border-color: var(--theme-warning);
    color: white;
}

/* Card grid responsive adjustments */
@media (max-width: 400px) {
    .action-btn span[b-o7udf79lcl] {
        display: none;
    }

    .action-btn[b-o7udf79lcl] {
        padding: 0.5rem;
        width: 36px;
        height: 36px;
    }
}

/* ========================================
   CHOICE VERIFICATION FLAGS
   (Duplicated — also used by parent table view)
   ======================================== */

.choice-flag[b-o7udf79lcl] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    white-space: nowrap;
    flex-shrink: 0;
    line-height: 1;
}

.choice-flag.mismatch[b-o7udf79lcl] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
    border: 1px solid var(--theme-danger-border);
}

.choice-flag.mismatch i[b-o7udf79lcl] {
    font-size: 0.75rem;
}

.choice-flag.verified[b-o7udf79lcl] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
    border: 1px solid var(--theme-success-border);
}

.choice-flag.verified i[b-o7udf79lcl] {
    font-size: 0.75rem;
}

.choice-flag.unverified[b-o7udf79lcl] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

/* Dark mode */
:global([data-bs-theme="dark"]) .choice-flag.mismatch[b-o7udf79lcl] {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger);
    border-color: rgba(220, 38, 38, 0.3);
}

:global([data-bs-theme="dark"]) .choice-flag.verified[b-o7udf79lcl] {
    background: rgba(22, 163, 74, 0.15);
    color: var(--theme-success);
    border-color: rgba(22, 163, 74, 0.3);
}

:global([data-bs-theme="dark"]) .choice-flag.unverified[b-o7udf79lcl] {
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-secondary);
    border-color: var(--border-color);
}

/* ========================================
   PAYMENT STATUS INDICATORS
   ======================================== */

.payment-indicators[b-o7udf79lcl] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
    margin-top: 0.5rem;
}

.payment-pill[b-o7udf79lcl] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 20px;
    font-size: 0.7rem;
    font-weight: 600;
}

.payment-pill i[b-o7udf79lcl] {
    font-size: 0.75rem;
}

.payment-pill.cleared[b-o7udf79lcl] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
    border: 1px solid var(--theme-success-border);
}

.payment-pill.awaiting[b-o7udf79lcl] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
    border: 1px solid var(--theme-warning-text);
}

.payment-pill.unpaid[b-o7udf79lcl] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-text);
    border: 1px solid var(--theme-danger-text);
}

/* Dark mode */
:global([data-bs-theme="dark"]) .payment-pill.cleared[b-o7udf79lcl] {
    background: rgba(5, 150, 105, 0.15);
    color: var(--theme-success-text);
    border-color: rgba(167, 243, 208, 0.3);
}

:global([data-bs-theme="dark"]) .payment-pill.awaiting[b-o7udf79lcl] {
    background: rgba(217, 119, 6, 0.15);
    color: var(--theme-warning-text);
    border-color: rgba(252, 211, 77, 0.3);
}

:global([data-bs-theme="dark"]) .payment-pill.unpaid[b-o7udf79lcl] {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger-text);
    border-color: rgba(252, 165, 165, 0.3);
}

/* ========================================
   GOVERNMENT PLACEMENT BADGES
   (Duplicated — also used by parent table view)
   ======================================== */

.placement-banner[b-o7udf79lcl] {
    margin-top: 0.5rem;
    padding-top: 0.5rem;
    border-top: 1px dashed var(--border-color);
}

.placement-badge[b-o7udf79lcl] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
}

.placement-badge i[b-o7udf79lcl] {
    font-size: 0.8rem;
}

.placement-badge.merit[b-o7udf79lcl] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-text);
    border: 1px solid var(--theme-success-border);
}

.placement-badge.transfer-in[b-o7udf79lcl] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-text);
    border: 1px solid var(--theme-info-border);
}

.placement-badge.transfer-out[b-o7udf79lcl] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
    border: 1px solid var(--theme-warning-border);
    font-weight: 700;
    font-size: 0.8rem;
}

.placement-badge.not-considered[b-o7udf79lcl] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
    border: 1px solid var(--theme-danger-border);
    font-weight: 700;
    font-size: 0.8rem;
}

/* Dark mode */
:global([data-bs-theme="dark"]) .placement-badge.merit[b-o7udf79lcl] {
    background: rgba(22, 163, 74, 0.15);
    color: var(--theme-success);
    border-color: rgba(22, 163, 74, 0.3);
}

:global([data-bs-theme="dark"]) .placement-badge.transfer-in[b-o7udf79lcl] {
    background: rgba(37, 99, 235, 0.15);
    color: var(--theme-info);
    border-color: rgba(37, 99, 235, 0.3);
}

:global([data-bs-theme="dark"]) .placement-badge.transfer-out[b-o7udf79lcl] {
    background: rgba(234, 88, 12, 0.15);
    color: var(--theme-warning);
    border-color: rgba(234, 88, 12, 0.3);
}

:global([data-bs-theme="dark"]) .placement-badge.not-considered[b-o7udf79lcl] {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger);
    border-color: rgba(220, 38, 38, 0.3);
}

/* ========================================
   CARD BODY LINK (href support for new-tab)
   ======================================== */

.card-body-link[b-o7udf79lcl] {
    text-decoration: none;
    color: inherit;
    display: contents;
}

.card-body-link:hover[b-o7udf79lcl],
.card-body-link:visited[b-o7udf79lcl],
.card-body-link:active[b-o7udf79lcl] {
    text-decoration: none;
    color: inherit;
}

/* ========================================
   SLIDE-OVER QUICK VIEW BUTTON
   ======================================== */

.btn-quickview[b-o7udf79lcl] {
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--theme-primary-light);
    color: var(--theme-primary);
    border: 1px solid var(--theme-primary-subtle);
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.8125rem;
}

.btn-quickview:hover[b-o7udf79lcl] {
    background: var(--theme-primary);
    color: var(--text-on-primary);
    border-color: var(--theme-primary);
}

/* ========================================
   CARD SHARE / RESET BUTTONS
   ======================================== */

.card-share-btn[b-o7udf79lcl] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-muted);
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.card-share-btn:hover[b-o7udf79lcl] {
    background: var(--theme-primary);
    color: var(--text-on-primary);
    border-color: var(--theme-primary);
}

.card-reset-btn[b-o7udf79lcl] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-muted);
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.card-reset-btn:hover[b-o7udf79lcl] {
    background: var(--theme-warning);
    color: var(--text-on-primary);
    border-color: var(--theme-warning);
}

/* ========================================
   Dark Mode - Card / Buttons
   ======================================== */

:global([data-bs-theme="dark"]) .admission-card[b-o7udf79lcl] {
    border-color: rgba(255, 255, 255, 0.1);
}

:global([data-bs-theme="dark"]) .admission-card .card-footer[b-o7udf79lcl] {
    border-top-color: rgba(255, 255, 255, 0.08);
}

:global([data-bs-theme="dark"]) .card-share-btn[b-o7udf79lcl],
:global([data-bs-theme="dark"]) .card-reset-btn[b-o7udf79lcl] {
    background: var(--bg-surface);
    border-color: var(--border-color);
    color: var(--text-muted);
}
/* /Pages/Recruiter/AdmissionsPages/Components/AdmissionsAnalyticsSection.razor.rz.scp.css */
/* ========================================
   ANALYTICS SECTION (COLLAPSIBLE)
   ======================================== */

.analytics-section[b-1cwztzf5pj] {
    margin-bottom: 1rem;
}

.analytics-toggle-btn[b-1cwztzf5pj] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.analytics-toggle-btn:hover[b-1cwztzf5pj] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.analytics-toggle-btn i[b-1cwztzf5pj] {
    font-size: 1rem;
}

.analytics-toggle-btn .toggle-icon[b-1cwztzf5pj] {
    font-size: 0.875rem;
    margin-left: 0.25rem;
}

.analytics-row[b-1cwztzf5pj] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-top: 0.75rem;
}

.analytics-card[b-1cwztzf5pj] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 1rem;
}

.analytics-card h4[b-1cwztzf5pj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.875rem;
}

.analytics-card h4 i[b-1cwztzf5pj] {
    font-size: 1rem;
    color: var(--theme-primary);
}

@media (max-width: 768px) {
    .analytics-row[b-1cwztzf5pj] {
        grid-template-columns: 1fr;
    }
}

/* ========================================
   ELIGIBILITY BARS
   ======================================== */

.eligibility-bars[b-1cwztzf5pj] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.eligibility-bar-item[b-1cwztzf5pj] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.eligibility-bar-item .bar-label[b-1cwztzf5pj] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.eligibility-bar-item .bar-label .label[b-1cwztzf5pj] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.eligibility-bar-item .bar-label .count[b-1cwztzf5pj] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-primary);
}

.eligibility-bar-item .bar-track[b-1cwztzf5pj] {
    height: 6px;
    background: var(--bg-surface-tertiary);
    border-radius: 3px;
    overflow: hidden;
}

.eligibility-bar-item .bar-fill[b-1cwztzf5pj] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.eligibility-bar-item .bar-fill.high[b-1cwztzf5pj] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-emerald));
}

.eligibility-bar-item .bar-fill.medium[b-1cwztzf5pj] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info));
}

.eligibility-bar-item .bar-fill.low[b-1cwztzf5pj] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning));
}

.eligibility-bar-item .bar-fill.very-low[b-1cwztzf5pj] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger));
}

/* ========================================
   CHOICE ORDER SUMMARY
   ======================================== */

.choice-summary[b-1cwztzf5pj] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.choice-item[b-1cwztzf5pj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    flex: 1;
    min-width: 70px;
}

.choice-badge[b-1cwztzf5pj] {
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    text-transform: uppercase;
}

.choice-badge.first[b-1cwztzf5pj] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.choice-badge.second[b-1cwztzf5pj] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.choice-badge.third[b-1cwztzf5pj] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.choice-badge.other[b-1cwztzf5pj] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.choice-count[b-1cwztzf5pj] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

.choice-percent[b-1cwztzf5pj] {
    font-size: 0.6875rem;
    color: var(--text-secondary);
    margin-left: auto;
}
/* /Pages/Recruiter/AdmissionsPages/Components/AdmissionsNavigationBar.razor.rz.scp.css */
/* ========================================
   NAVIGATION BAR (Combined Tabs + Vacancy + Search + View Toggle)
   ======================================== */

.navigation-bar[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ========================================
   TABS (Inline Status Filters)
   ======================================== */

.tabs-inline[b-i1cnhug6pc] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-i1cnhug6pc] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-i1cnhug6pc] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-i1cnhug6pc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-i1cnhug6pc] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.highlight[b-i1cnhug6pc] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.highlight[b-i1cnhug6pc] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

.tab-badge.warning[b-i1cnhug6pc] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.tab-compact.active .tab-badge.warning[b-i1cnhug6pc] {
    background: var(--theme-warning);
    color: var(--text-inverse);
}

.tab-badge.info[b-i1cnhug6pc] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

.tab-compact.active .tab-badge.info[b-i1cnhug6pc] {
    background: var(--theme-info);
    color: var(--text-inverse);
}

.tab-badge.success[b-i1cnhug6pc] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.success[b-i1cnhug6pc] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

.tab-badge.danger[b-i1cnhug6pc] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.tab-compact.active .tab-badge.danger[b-i1cnhug6pc] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

/* ========================================
   VACANCY SELECTOR (Inline)
   ======================================== */

.vacancy-inline[b-i1cnhug6pc] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 400px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-i1cnhug6pc] {
    font-size: 1rem;
}

.vacancy-select[b-i1cnhug6pc] {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 2.5rem 0 0.875rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px;
}

.vacancy-select:hover[b-i1cnhug6pc] {
    border-color: var(--theme-primary-emphasis);
    background-color: rgba(99, 102, 241, 0.08);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.2);
}

.vacancy-select:focus[b-i1cnhug6pc] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.vacancy-select option[b-i1cnhug6pc] {
    padding: 0.5rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

/* ========================================
   SEARCH BOX (Inline)
   ======================================== */

.search-inline[b-i1cnhug6pc] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-i1cnhug6pc] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-i1cnhug6pc] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-i1cnhug6pc] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-i1cnhug6pc]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-i1cnhug6pc] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ========================================
   VIEW TOGGLE (Inline)
   ======================================== */

.view-toggle-inline[b-i1cnhug6pc] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
}

.view-toggle-inline .toggle-btn[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.view-toggle-inline .toggle-btn:hover[b-i1cnhug6pc] {
    color: var(--text-secondary);
    background: var(--bg-hover);
}

.view-toggle-inline .toggle-btn.active[b-i1cnhug6pc] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-xs);
}

.view-toggle-inline .toggle-btn i[b-i1cnhug6pc] {
    font-size: 1rem;
}

/* ========================================
   SORT CONTROLS
   ======================================== */

.sort-inline[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.sort-select[b-i1cnhug6pc] {
    padding: 0.375rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    outline: none;
}

.sort-select:focus[b-i1cnhug6pc] {
    border-color: var(--theme-primary);
}

.sort-dir-btn[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    font-size: 1rem;
    transition: all 0.15s ease;
}

.sort-dir-btn:hover[b-i1cnhug6pc] {
    color: var(--theme-primary);
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

/* ========================================
   FILTER TOGGLE BUTTON
   ======================================== */

.filter-toggle-btn[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-i1cnhug6pc] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-i1cnhug6pc] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-i1cnhug6pc] {
    font-size: 1rem;
}

.filter-active-dot[b-i1cnhug6pc] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-i1cnhug6pc] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-i1cnhug6pc] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-i1cnhug6pc] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-i1cnhug6pc] {
    font-size: 1rem;
}

.spinner-sm[b-i1cnhug6pc] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-i1cnhug6pc 0.6s linear infinite;
}

@keyframes spin-b-i1cnhug6pc {
    to { transform: rotate(360deg); }
}

/* ========================================
   NAVIGATION BAR RESPONSIVE
   ======================================== */

@media (max-width: 1200px) {
    .navigation-bar[b-i1cnhug6pc] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-i1cnhug6pc] {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }

    .vacancy-label span[b-i1cnhug6pc] {
        display: none;
    }

    .search-inline[b-i1cnhug6pc] {
        flex: 1 1 150px;
        min-width: 120px;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-i1cnhug6pc] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-i1cnhug6pc] {
        order: 1;
        flex: 0 0 auto;
    }

    .vacancy-inline[b-i1cnhug6pc] {
        order: 2;
        flex: 1 1 auto;
        min-width: 200px;
        max-width: none;
    }

    .vacancy-label[b-i1cnhug6pc] {
        display: none;
    }

    .search-inline[b-i1cnhug6pc] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .view-toggle-inline[b-i1cnhug6pc] {
        order: 4;
    }

    .sort-inline[b-i1cnhug6pc] {
        order: 5;
    }

    .refresh-btn[b-i1cnhug6pc] {
        order: 6;
    }

    .filter-toggle-btn span[b-i1cnhug6pc] {
        display: none;
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-i1cnhug6pc] {
        flex: 1 1 100%;
        justify-content: center;
    }

    .tab-compact span:not(.tab-badge)[b-i1cnhug6pc] {
        display: none;
    }

    .tab-compact[b-i1cnhug6pc] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-i1cnhug6pc] {
        display: none;
    }
}
/* /Pages/Recruiter/AdmissionsPages/Components/EnsureOffersModal.razor.rz.scp.css */
/* ===== Regeneration Progress (shared progress + validation styling) ===== */
.regen-progress-section[b-p9qik5xezg] {
    padding: 0.5rem 0;
}

.regen-progress-bar-container[b-p9qik5xezg] {
    width: 100%;
    height: 8px;
    background: var(--theme-gray-200);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.5rem;
}

.regen-progress-bar[b-p9qik5xezg] {
    height: 100%;
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-emphasis));
    border-radius: 4px;
    transition: width 0.3s ease;
    min-width: 2%;
}

.regen-progress-text[b-p9qik5xezg] {
    text-align: center;
    font-size: 0.875rem;
    color: var(--theme-gray-500);
    margin: 0;
}

.regen-polling-hint[b-p9qik5xezg] {
    text-align: center;
    font-size: 0.8rem;
    color: var(--theme-gray-400);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

:global([data-bs-theme="dark"]) .regen-progress-bar-container[b-p9qik5xezg] {
    background: var(--theme-gray-700);
}

:global([data-bs-theme="dark"]) .regen-progress-text[b-p9qik5xezg] {
    color: var(--theme-gray-400);
}

:global([data-bs-theme="dark"]) .regen-polling-hint[b-p9qik5xezg] {
    color: var(--theme-gray-500);
}

/* Validation stat styles */
.validation-modal-content[b-p9qik5xezg] {
    padding: 0.5rem 0;
}

.validation-summary[b-p9qik5xezg] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
}

.validation-stat[b-p9qik5xezg] {
    flex: 1;
    text-align: center;
    padding: 0.75rem;
    border-radius: 8px;
    background: var(--theme-gray-50);
    border: 1px solid var(--theme-gray-200);
}

.validation-stat .stat-value[b-p9qik5xezg] {
    display: block;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2;
}

.validation-stat .stat-label[b-p9qik5xezg] {
    display: block;
    font-size: 0.75rem;
    color: var(--theme-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.validation-stat.success .stat-value[b-p9qik5xezg] { color: var(--theme-success-emphasis); }
.validation-stat.danger .stat-value[b-p9qik5xezg] { color: var(--theme-danger-emphasis); }
.validation-stat.info .stat-value[b-p9qik5xezg] { color: var(--theme-info-emphasis); }

:global([data-bs-theme="dark"]) .validation-stat[b-p9qik5xezg] {
    background: var(--theme-gray-800);
    border-color: var(--theme-gray-700);
}

:global([data-bs-theme="dark"]) .validation-stat .stat-label[b-p9qik5xezg] {
    color: var(--theme-gray-400);
}

:global([data-bs-theme="dark"]) .validation-stat.success .stat-value[b-p9qik5xezg] { color: var(--theme-success); }
:global([data-bs-theme="dark"]) .validation-stat.danger .stat-value[b-p9qik5xezg] { color: var(--theme-danger); }
:global([data-bs-theme="dark"]) .validation-stat.info .stat-value[b-p9qik5xezg] { color: var(--theme-info); }

/* Spinner used inside the polling hint */
.spinner-sm[b-p9qik5xezg] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-p9qik5xezg 0.6s linear infinite;
}

@keyframes spin-b-p9qik5xezg {
    to { transform: rotate(360deg); }
}
/* /Pages/Recruiter/AdmissionsPages/Components/ExportColumnPickerModal.razor.rz.scp.css */
/* ========================================
   EXPORT DIALOG
   ======================================== */

.export-dialog-content[b-1zscm90mjn] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.export-summary[b-1zscm90mjn] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    background: var(--theme-primary-subtle);
    border-radius: 8px;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.export-summary i[b-1zscm90mjn] {
    font-size: 1.25rem;
}

.export-columns-header[b-1zscm90mjn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.export-columns-header h4[b-1zscm90mjn] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.export-quick-actions[b-1zscm90mjn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.export-link-btn[b-1zscm90mjn] {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-primary);
    cursor: pointer;
}

.export-link-btn:hover[b-1zscm90mjn] {
    text-decoration: underline;
}

.export-divider[b-1zscm90mjn] {
    color: var(--text-muted);
    font-size: 0.75rem;
}

.export-columns-grid[b-1zscm90mjn] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.375rem;
}

.export-column-item[b-1zscm90mjn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    cursor: pointer;
    transition: all 0.15s ease;
}

.export-column-item:hover[b-1zscm90mjn] {
    border-color: var(--theme-primary);
    background: var(--bg-surface-tertiary);
}

.export-column-item.selected[b-1zscm90mjn] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.export-column-item input[type="checkbox"][b-1zscm90mjn] {
    width: 16px;
    height: 16px;
    accent-color: var(--theme-primary);
    cursor: pointer;
    flex-shrink: 0;
}

.export-column-name[b-1zscm90mjn] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
}

@media (max-width: 768px) {
    .export-columns-grid[b-1zscm90mjn] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Recruiter/AdmissionsPages/Components/LetterRegenerationModal.razor.rz.scp.css */
/* ===== Regeneration Progress ===== */
.regen-progress-section[b-g46vjk6zqp] {
    padding: 0.5rem 0;
}

.regen-progress-bar-container[b-g46vjk6zqp] {
    width: 100%;
    height: 8px;
    background: var(--theme-gray-200);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.5rem;
}

.regen-progress-bar[b-g46vjk6zqp] {
    height: 100%;
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-emphasis));
    border-radius: 4px;
    transition: width 0.3s ease;
    min-width: 2%;
}

.regen-progress-text[b-g46vjk6zqp] {
    text-align: center;
    font-size: 0.875rem;
    color: var(--theme-gray-500);
    margin: 0;
}

.regen-polling-hint[b-g46vjk6zqp] {
    text-align: center;
    font-size: 0.8rem;
    color: var(--theme-gray-400);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

:global([data-bs-theme="dark"]) .regen-progress-bar-container[b-g46vjk6zqp] {
    background: var(--theme-gray-700);
}

:global([data-bs-theme="dark"]) .regen-progress-text[b-g46vjk6zqp] {
    color: var(--theme-gray-400);
}

:global([data-bs-theme="dark"]) .regen-polling-hint[b-g46vjk6zqp] {
    color: var(--theme-gray-500);
}

/* Validation stat styles for regeneration modal */
.validation-modal-content[b-g46vjk6zqp] {
    padding: 0.5rem 0;
}

.validation-summary[b-g46vjk6zqp] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
}

.validation-stat[b-g46vjk6zqp] {
    flex: 1;
    text-align: center;
    padding: 0.75rem;
    border-radius: 8px;
    background: var(--theme-gray-50);
    border: 1px solid var(--theme-gray-200);
}

.validation-stat .stat-value[b-g46vjk6zqp] {
    display: block;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1.2;
}

.validation-stat .stat-label[b-g46vjk6zqp] {
    display: block;
    font-size: 0.75rem;
    color: var(--theme-gray-500);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.validation-stat.success .stat-value[b-g46vjk6zqp] { color: var(--theme-success-emphasis); }
.validation-stat.danger .stat-value[b-g46vjk6zqp] { color: var(--theme-danger-emphasis); }
.validation-stat.info .stat-value[b-g46vjk6zqp] { color: var(--theme-info-emphasis); }

:global([data-bs-theme="dark"]) .validation-stat[b-g46vjk6zqp] {
    background: var(--theme-gray-800);
    border-color: var(--theme-gray-700);
}

:global([data-bs-theme="dark"]) .validation-stat .stat-label[b-g46vjk6zqp] {
    color: var(--theme-gray-400);
}

:global([data-bs-theme="dark"]) .validation-stat.success .stat-value[b-g46vjk6zqp] { color: var(--theme-success); }
:global([data-bs-theme="dark"]) .validation-stat.danger .stat-value[b-g46vjk6zqp] { color: var(--theme-danger); }
:global([data-bs-theme="dark"]) .validation-stat.info .stat-value[b-g46vjk6zqp] { color: var(--theme-info); }

/* Spinner used inside the polling hint */
.spinner-sm[b-g46vjk6zqp] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-g46vjk6zqp 0.6s linear infinite;
}

@keyframes spin-b-g46vjk6zqp {
    to { transform: rotate(360deg); }
}
/* /Pages/Recruiter/AdmissionsPages/Components/PrintAdmissionsModal.razor.rz.scp.css */
/* ========================================
   PRINT SELECTION (Used in FshModal)
   ======================================== */

.print-selection-grid[b-spq8vv3o83] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 0.75rem;
    max-height: 400px;
    overflow-y: auto;
    padding: 0.5rem;
}

.print-item[b-spq8vv3o83] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.print-item:hover[b-spq8vv3o83] {
    border-color: var(--theme-primary);
    background: rgba(99, 102, 241, 0.02);
}

.print-item.selected[b-spq8vv3o83] {
    border-color: var(--theme-primary);
    background: rgba(99, 102, 241, 0.08);
}

.print-item-info[b-spq8vv3o83] {
    display: flex;
    flex-direction: column;
}

.print-item-info .name[b-spq8vv3o83] {
    font-weight: 500;
    color: var(--text-primary);
    font-size: 0.875rem;
}

.print-item-info .index[b-spq8vv3o83] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Dark mode */
:global([data-bs-theme="dark"]) .print-item:hover[b-spq8vv3o83] {
    background: rgba(99, 102, 241, 0.08);
}

:global([data-bs-theme="dark"]) .print-item.selected[b-spq8vv3o83] {
    background: rgba(99, 102, 241, 0.15);
}
/* /Pages/Recruiter/AdmissionsPages/Components/ShareAccessLinkModal.razor.rz.scp.css */
/* ShareAccessLinkModal — body styles only.
   The modal frame is now provided by FshModal, so the old .share-link-modal /
   .share-link-header / .close-btn rules are gone. Token-driven; dark-mode aware. */

.share-link-body[b-5jtmkprjgx] {
    padding: 0;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.link-applicant[b-5jtmkprjgx] {
    font-size: 0.9rem;
    color: var(--text-primary);
}

.link-applicant .text-muted[b-5jtmkprjgx] {
    color: var(--text-muted);
    margin-left: 0.5rem;
}

.link-url-box[b-5jtmkprjgx] {
    display: flex;
    gap: 0.5rem;
    align-items: stretch;
}

.link-url-box :deep(.fsh-form-group)[b-5jtmkprjgx] {
    flex: 1;
    margin-bottom: 0;
}

.copy-btn[b-5jtmkprjgx] {
    padding: 0.5rem 1rem;
    border: 1px solid var(--theme-primary);
    border-radius: var(--radius-md);
    background: var(--theme-primary);
    color: var(--text-inverse);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8rem;
    white-space: nowrap;
    transition: background 0.2s, opacity 0.2s;
}

.copy-btn:hover[b-5jtmkprjgx] {
    opacity: 0.9;
}

.copy-btn.copied[b-5jtmkprjgx] {
    background: var(--theme-success);
    border-color: var(--theme-success);
}

.link-expiry-notice[b-5jtmkprjgx] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--theme-warning-emphasis);
    background: var(--theme-warning-subtle);
    padding: 0.625rem 0.75rem;
    border-radius: var(--radius-md);
    border: 1px solid var(--theme-warning);
}

.generating-spinner[b-5jtmkprjgx] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 2rem;
    color: var(--text-muted);
}

/* Spinner used inside the generating-spinner block */
.spinner-sm[b-5jtmkprjgx] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid var(--theme-primary-subtle);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: share-link-spin-b-5jtmkprjgx 0.6s linear infinite;
}

@keyframes share-link-spin-b-5jtmkprjgx {
    to { transform: rotate(360deg); }
}
/* /Pages/Recruiter/AdmissionsPages/Components/SmsNotificationModal.razor.rz.scp.css */
/* =============================================
   Bulk Notification - Progress Phase
   ============================================= */

.notification-progress[b-y5s40ggww0] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    padding: 0.5rem;
}

.progress-header[b-y5s40ggww0] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

.spin-icon[b-y5s40ggww0] {
    animation: spin-b-y5s40ggww0 1.5s linear infinite;
    font-size: 1.25rem;
    color: var(--theme-primary);
}

@keyframes spin-b-y5s40ggww0 {
    100% { transform: rotate(360deg); }
}

.progress-bar-container[b-y5s40ggww0] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.progress-bar-track[b-y5s40ggww0] {
    flex: 1;
    height: 12px;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    overflow: hidden;
}

.progress-bar-fill[b-y5s40ggww0] {
    height: 100%;
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-success));
    border-radius: 6px;
    transition: width 0.4s ease;
}

.progress-bar-label[b-y5s40ggww0] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    min-width: 40px;
    text-align: right;
}

.progress-counters[b-y5s40ggww0] {
    display: flex;
    justify-content: center;
}

.progress-counter[b-y5s40ggww0] {
    display: flex;
    align-items: baseline;
    gap: 0.375rem;
}

.counter-value[b-y5s40ggww0] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-primary);
}

.counter-label[b-y5s40ggww0] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.progress-channel-stats[b-y5s40ggww0] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
}

.channel-stat[b-y5s40ggww0] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.channel-stat i[b-y5s40ggww0] {
    font-size: 1rem;
    color: var(--theme-primary);
}

.channel-stat.failed i[b-y5s40ggww0] {
    color: var(--theme-danger);
}

/* =============================================
   Bulk Notification - Report Phase
   ============================================= */

.notification-report[b-y5s40ggww0] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.notification-stats[b-y5s40ggww0] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.75rem;
}

.notif-stat-card[b-y5s40ggww0] {
    text-align: center;
    padding: 1rem 0.5rem;
    border-radius: 10px;
    border: 1px solid var(--border-color);
}

.notif-stat-card.total[b-y5s40ggww0] {
    background: var(--theme-info-subtle);
    border-color: var(--theme-info);
}

.notif-stat-card.success[b-y5s40ggww0] {
    background: var(--theme-success-subtle);
    border-color: var(--theme-success);
}

.notif-stat-card.danger[b-y5s40ggww0] {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger);
}

.notif-stat-card.warning[b-y5s40ggww0] {
    background: var(--theme-warning-subtle);
    border-color: var(--theme-warning);
}

.notif-stat-value[b-y5s40ggww0] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
}

.notif-stat-label[b-y5s40ggww0] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.sms-stats-section[b-y5s40ggww0] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
}

.sms-stats-section h4[b-y5s40ggww0] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.75rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.sms-stats-row[b-y5s40ggww0] {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
}

.sms-stat[b-y5s40ggww0] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.notification-report-table-wrapper[b-y5s40ggww0] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.notification-report-table-wrapper h4[b-y5s40ggww0] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.notification-report-table[b-y5s40ggww0] {
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid var(--border-color);
    border-radius: 8px;
}

.notification-report-table table[b-y5s40ggww0] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.8125rem;
}

.notification-report-table thead[b-y5s40ggww0] {
    position: sticky;
    top: 0;
    z-index: 1;
}

.notification-report-table th[b-y5s40ggww0] {
    background: var(--bg-surface-secondary);
    padding: 0.5rem 0.75rem;
    text-align: left;
    font-weight: 600;
    color: var(--text-secondary);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    border-bottom: 1px solid var(--border-color);
}

.notification-report-table td[b-y5s40ggww0] {
    padding: 0.5rem 0.75rem;
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

.notification-report-table tr:last-child td[b-y5s40ggww0] {
    border-bottom: none;
}

.notification-report-table tr:hover td[b-y5s40ggww0] {
    background: var(--bg-surface-tertiary);
}

.channel-badge[b-y5s40ggww0] {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.channel-badge.sent[b-y5s40ggww0] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.channel-badge.not-sent[b-y5s40ggww0] {
    background: var(--theme-gray-100);
    color: var(--text-muted);
}

@media (max-width: 768px) {
    .notification-stats[b-y5s40ggww0] {
        grid-template-columns: repeat(2, 1fr);
    }

    .sms-stats-row[b-y5s40ggww0] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .progress-channel-stats[b-y5s40ggww0] {
        flex-direction: column;
        gap: 0.5rem;
    }
}
/* /Pages/Recruiter/AdmissionsPages/VerificationLogs.razor.rz.scp.css */
/* ============================================
   Verification Logs Page
   Theme-aligned with shared component patterns
   ============================================ */

/* ============ Navigation Bar ============ */
.navigation-bar[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
    animation: slideDown-b-wt3mrxlcje 0.3s ease-out;
}

/* ============ Inline Tabs ============ */
.tabs-inline[b-wt3mrxlcje] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-wt3mrxlcje] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-wt3mrxlcje] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-wt3mrxlcje] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-wt3mrxlcje] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.danger[b-wt3mrxlcje] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.tab-compact.active .tab-badge.danger[b-wt3mrxlcje] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.tab-badge.success[b-wt3mrxlcje] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.success[b-wt3mrxlcje] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-wt3mrxlcje] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-wt3mrxlcje] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-wt3mrxlcje] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-wt3mrxlcje] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-wt3mrxlcje]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-wt3mrxlcje] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Filter Toggle Button ============ */
.filter-toggle-btn[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.filter-toggle-btn:hover[b-wt3mrxlcje] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-wt3mrxlcje] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-wt3mrxlcje] {
    font-size: 1rem;
}

/* ============ Refresh Button ============ */
.refresh-btn[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-wt3mrxlcje] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-wt3mrxlcje] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-wt3mrxlcje] {
    font-size: 1rem;
}

/* ============ Compact Filter Bar ============ */
.filter-bar[b-wt3mrxlcje] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.5rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
    animation: slideDown-b-wt3mrxlcje 0.2s ease-out;
}

.filter-item[b-wt3mrxlcje] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.filter-item label[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
    margin: 0;
    line-height: 1;
}

.filter-item label i[b-wt3mrxlcje] {
    font-size: 0.75rem;
}

.filter-item .form-select[b-wt3mrxlcje],
.filter-item .form-control[b-wt3mrxlcje] {
    height: 30px;
    padding: 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border-radius: 5px;
    min-width: 110px;
}

.filter-item .form-select[b-wt3mrxlcje] {
    padding-right: 1.75rem;
}

.filter-actions[b-wt3mrxlcje] {
    flex-direction: row;
    align-items: flex-end;
    gap: 0.375rem;
}

/* ============ Export Button ============ */
.export-btn[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.export-btn:hover[b-wt3mrxlcje] {
    color: var(--theme-success);
    background: var(--theme-success-subtle);
    border-color: var(--theme-success);
}

.export-btn i[b-wt3mrxlcje] {
    font-size: 1rem;
}

/* ============ Location Cell ============ */
.location-cell[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.location-text[b-wt3mrxlcje] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 130px;
}

.maps-link[b-wt3mrxlcje] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 4px;
    color: var(--theme-danger);
    background: var(--theme-danger-subtle);
    text-decoration: none;
    flex-shrink: 0;
    transition: var(--sidenav-transition-fast);
}

.maps-link:hover[b-wt3mrxlcje] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.maps-link i[b-wt3mrxlcje] {
    font-size: 0.8125rem;
}

.maps-detail-link[b-wt3mrxlcje] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: var(--theme-primary);
    text-decoration: none;
    font-size: 0.875rem;
    font-weight: 500;
}

.maps-detail-link:hover[b-wt3mrxlcje] {
    text-decoration: underline;
}

/* ============ Data Grid Enhancements ============ */
.date-cell[b-wt3mrxlcje] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.date-primary[b-wt3mrxlcje] {
    font-weight: 500;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.date-secondary[b-wt3mrxlcje] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.ip-code[b-wt3mrxlcje] {
    font-size: 0.8125rem;
    padding: 0.125rem 0.375rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    color: var(--text-secondary);
}

/* ============ Detail Dialog ============ */
.dialog-overlay[b-wt3mrxlcje] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    animation: fadeIn-b-wt3mrxlcje 0.2s ease-out;
}

.dialog-content[b-wt3mrxlcje] {
    background: var(--bg-surface);
    border-radius: 12px;
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
    animation: scaleIn-b-wt3mrxlcje 0.25s ease-out;
}

.dialog-content.medium[b-wt3mrxlcje] {
    max-width: 600px;
}

.dialog-header[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.dialog-header h3[b-wt3mrxlcje] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
}

.dialog-header h3 i[b-wt3mrxlcje] {
    color: var(--theme-primary);
}

.dialog-close[b-wt3mrxlcje] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.dialog-close:hover[b-wt3mrxlcje] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.dialog-body[b-wt3mrxlcje] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
    background: var(--bg-surface);
}

.dialog-footer[b-wt3mrxlcje] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

/* ============ Detail Sections ============ */
.detail-section[b-wt3mrxlcje] {
    margin-bottom: 1.5rem;
}

.detail-section:last-child[b-wt3mrxlcje] {
    margin-bottom: 0;
}

.detail-section h6[b-wt3mrxlcje] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.detail-row[b-wt3mrxlcje] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-color);
}

.detail-row:last-child[b-wt3mrxlcje] {
    border-bottom: none;
}

.detail-label[b-wt3mrxlcje] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.detail-value[b-wt3mrxlcje] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    text-align: right;
}

.detail-value-wrap[b-wt3mrxlcje] {
    max-width: 320px;
    word-break: break-all;
    font-size: 0.75rem;
    font-weight: 400;
    color: var(--text-secondary);
}

.details-pre[b-wt3mrxlcje] {
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    padding: 0.75rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin: 0;
    white-space: pre-wrap;
    word-break: break-word;
}

/* ============ Animations ============ */
@keyframes fadeIn-b-wt3mrxlcje {
    from { opacity: 0; }
    to { opacity: 1; }
}

@keyframes slideDown-b-wt3mrxlcje {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes scaleIn-b-wt3mrxlcje {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* ============ Spinner ============ */
.spinner-sm[b-wt3mrxlcje] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: var(--text-inverse);
    animation: spin-b-wt3mrxlcje 0.6s linear infinite;
}

@keyframes spin-b-wt3mrxlcje {
    to { transform: rotate(360deg); }
}

/* ============ Responsive Breakpoints ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-wt3mrxlcje] {
        flex-wrap: wrap;
    }

    .search-inline[b-wt3mrxlcje] {
        flex: 1 1 150px;
        min-width: 120px;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-wt3mrxlcje] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-wt3mrxlcje] {
        order: 1;
        flex: 0 0 auto;
    }

    .search-inline[b-wt3mrxlcje] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn[b-wt3mrxlcje] {
        order: 3;
    }

    .refresh-btn[b-wt3mrxlcje] {
        order: 4;
    }

    .filter-bar[b-wt3mrxlcje] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-item .form-select[b-wt3mrxlcje],
    .filter-item .form-control[b-wt3mrxlcje] {
        min-width: 100%;
    }

    .dialog-content.medium[b-wt3mrxlcje] {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-wt3mrxlcje] {
        flex: 1 1 100%;
        justify-content: center;
    }

    .tab-compact span:not(.tab-badge)[b-wt3mrxlcje] {
        display: none;
    }

    .tab-compact[b-wt3mrxlcje] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-wt3mrxlcje] {
        display: none;
    }
}
/* /Pages/Recruiter/AdmissionsPages/VerifyLetter.razor.rz.scp.css */
/* ========================================
   Verify Letter Page
   ======================================== */

.verify-letter-page[b-9173saweo6] {
    padding: 1.5rem;
}

/* Page Header */
.verify-letter-page h4[b-9173saweo6] {
    color: var(--text-primary);
}

.verify-letter-page .text-muted[b-9173saweo6] {
    color: var(--text-muted) !important;
}

/* Cards */
.verify-letter-page .card[b-9173saweo6] {
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm);
    background: var(--bg-surface);
}

.verify-letter-page .card-header[b-9173saweo6] {
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

.verify-letter-page .card-header .card-title[b-9173saweo6] {
    color: var(--text-primary);
}

.verify-letter-page .card-body[b-9173saweo6] {
    background: var(--bg-surface);
    color: var(--text-primary);
}

.verify-letter-page .card-footer[b-9173saweo6] {
    background: var(--bg-surface-secondary);
    border-top: 1px solid var(--border-color);
}

/* Form Elements */
.verify-letter-page .form-label[b-9173saweo6] {
    color: var(--text-primary);
}

/* QR Scanner Container */
.qr-scanner-container[b-9173saweo6] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 1rem;
    border: 1px dashed var(--border-color);
}

.qr-reader[b-9173saweo6] {
    width: 100%;
    min-height: 280px;
    background: var(--text-heading);
    border-radius: 4px;
    overflow: hidden;
}

/* Verification Details */
.verification-details[b-9173saweo6] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 1rem;
}

.detail-item[b-9173saweo6] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border-color);
}

.detail-item:last-child[b-9173saweo6] {
    border-bottom: none;
}

.detail-label[b-9173saweo6] {
    color: var(--text-muted);
    font-size: 0.875rem;
}

.detail-value[b-9173saweo6] {
    color: var(--text-primary);
    text-align: right;
}

/* Status Header Colors - Preserve Bootstrap colors */
.verify-letter-page .card-header.bg-success[b-9173saweo6] {
    background-color: var(--bs-success) !important;
    border-color: var(--bs-success) !important;
}

.verify-letter-page .card-header.bg-danger[b-9173saweo6] {
    background-color: var(--bs-danger) !important;
    border-color: var(--bs-danger) !important;
}

/* Alerts in dark mode */
.verify-letter-page .alert-success[b-9173saweo6] {
    background-color: rgba(var(--bs-success-rgb), 0.15);
    border-color: rgba(var(--bs-success-rgb), 0.3);
    color: var(--bs-success);
}

.verify-letter-page .alert-danger[b-9173saweo6] {
    background-color: rgba(var(--bs-danger-rgb), 0.15);
    border-color: rgba(var(--bs-danger-rgb), 0.3);
    color: var(--bs-danger);
}

.verify-letter-page .alert-warning[b-9173saweo6] {
    background-color: rgba(var(--bs-warning-rgb), 0.15);
    border-color: rgba(var(--bs-warning-rgb), 0.3);
    color: var(--bs-warning);
}

/* Camera placeholder icon */
.verify-letter-page .ti-camera.text-muted[b-9173saweo6] {
    color: var(--text-muted) !important;
    opacity: 0.6;
}
/* /Pages/Recruiter/AnalyticsDashboard.razor.rz.scp.css */
/**
 * AnalyticsDashboard - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 * Filter styles are in app.css (shared across components)
 */

/* ========================================
   ANALYTICS DASHBOARD CONTAINER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Content Area - dashboard-specific min-height override */
.content-area[b-fcbtnp6xtr] {
    min-height: 500px; /* Taller than standard for analytics content */
}

.analytics-dashboard[b-fcbtnp6xtr] {
    /* Padding removed - handled by .content-page global rule */
}

/* Pattern moved to centralized app.css */

/* ========================================
   FILTER GRID - Page specific 5-column
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.filter-grid[b-fcbtnp6xtr] {
    grid-template-columns: repeat(5, 1fr);
}

/* ========================================
   INSIGHT CARDS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.insight-list[b-fcbtnp6xtr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.insight-item[b-fcbtnp6xtr] {
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.insight-item:hover[b-fcbtnp6xtr] {
    transform: translateY(-1px);
    box-shadow: var(--shadow-sm);
}

/* Clickable insight items - links to Applications Hub */
a.insight-item.clickable[b-fcbtnp6xtr] {
    text-decoration: none;
    cursor: pointer;
    border: 1px solid transparent;
    transition: transform 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease, border-color 0.2s ease;
}

a.insight-item.clickable:hover[b-fcbtnp6xtr] {
    background: var(--theme-primary-subtle);
    border-color: var(--theme-primary);
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

a.insight-item.clickable:hover .insight-name[b-fcbtnp6xtr] {
    color: var(--theme-primary-emphasis);
}

a.insight-item.clickable:hover .insight-value[b-fcbtnp6xtr] {
    color: var(--theme-primary);
}

a.insight-item.clickable[b-fcbtnp6xtr]::after {
    content: '\eb8c'; /* ti-external-link icon */
    font-family: 'tabler-icons';
    font-size: 0.875rem;
    color: transparent;
    margin-left: 0.5rem;
    transition: color 0.2s ease;
}

a.insight-item.clickable:hover[b-fcbtnp6xtr]::after {
    color: var(--theme-primary);
}

.insight-name[b-fcbtnp6xtr] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

.insight-value[b-fcbtnp6xtr] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--theme-primary);
}

/* ========================================
   RESPONSIVE ADJUSTMENTS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .filter-grid[b-fcbtnp6xtr] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    .page-header[b-fcbtnp6xtr] {
        flex-direction: column;
        gap: 1rem;
        align-items: stretch;
    }

    .page-title[b-fcbtnp6xtr] {
        font-size: 1.25rem;
    }

    .filter-grid[b-fcbtnp6xtr] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .filter-grid[b-fcbtnp6xtr] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Recruiter/ApplicantDashboard.razor.rz.scp.css */
/* Applicant Dashboard Page - Modern Styling - Using Theme Variables
   Dark mode handled automatically via CSS variables from theme-core.css */

.applicant-dashboard-page[b-ant21uevgb] {
    /* Padding removed - handled by .content-page global rule */
}

/* Welcome Header */
.dashboard-welcome-header[b-ant21uevgb] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    border-radius: var(--radius-lg, 1rem);
    padding: 1.5rem 2rem;
    color: white;
    position: relative;
    overflow: hidden;
}

.dashboard-welcome-header[b-ant21uevgb]::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -10%;
    width: 200px;
    height: 200px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.dashboard-welcome-header .welcome-content[b-ant21uevgb] {
    position: relative;
    z-index: 1;
}

.dashboard-welcome-header .welcome-title[b-ant21uevgb] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
    color: white;
}

.dashboard-welcome-header .welcome-subtitle[b-ant21uevgb] {
    opacity: 0.9;
    margin: 0;
    font-size: 0.875rem;
    color: rgba(255, 255, 255, 0.9);
}

@media (max-width: 768px) {
    .dashboard-welcome-header[b-ant21uevgb] {
        padding: 1.25rem 1.5rem;
    }

    .dashboard-welcome-header .welcome-title[b-ant21uevgb] {
        font-size: 1.25rem;
    }
}

/* Quick Stats Section - 3 columns layout */
.quick-stats[b-ant21uevgb] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

/* stat-card base styles now in app.css */

/* Page-specific stat-icon color variants */
.stat-icon.courses[b-ant21uevgb] {
    background: color-mix(in srgb, var(--theme-primary) 10%, transparent);
    color: var(--theme-primary);
}

.stat-icon.enrollments[b-ant21uevgb] {
    background: color-mix(in srgb, var(--theme-secondary) 10%, transparent);
    color: var(--theme-secondary);
}

.stat-icon.pending[b-ant21uevgb] {
    background: color-mix(in srgb, var(--theme-warning) 10%, transparent);
    color: var(--theme-warning);
}

.stat-icon.withdraw[b-ant21uevgb] {
    background: color-mix(in srgb, var(--theme-info) 10%, transparent);
    color: var(--theme-info);
}

.stat-icon.earnings[b-ant21uevgb] {
    background: color-mix(in srgb, var(--theme-success) 10%, transparent);
    color: var(--theme-success);
}

.stat-icon.students[b-ant21uevgb] {
    background: color-mix(in srgb, var(--theme-danger) 10%, transparent);
    color: var(--theme-danger);
}

/* Info Cards */
.info-card[b-ant21uevgb] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    margin-bottom: 1.5rem;
}

.info-card .card-header[b-ant21uevgb] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.info-card .card-title[b-ant21uevgb] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.info-card .card-title i[b-ant21uevgb] {
    color: var(--theme-primary);
}

.info-card .card-body[b-ant21uevgb] {
    padding: 1.25rem;
}

/* Course Table Styling */
.course-table-img[b-ant21uevgb] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    color: var(--text-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.course-table-img:hover[b-ant21uevgb] {
    color: var(--theme-primary);
}

.course-image-wrapper img[b-ant21uevgb] {
    width: 50px;
    height: 50px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.course-title-text[b-ant21uevgb] {
    font-weight: 500;
    line-height: 1.3;
}

/* Badge Styling */
[b-ant21uevgb] .enrolled-badge {
    font-size: 0.8rem;
    padding: 0.375rem 0.75rem;
    border-radius: 20px;
    font-weight: 500;
}

/* Grid Styling */
[b-ant21uevgb] .courses-grid {
    border: none;
}

[b-ant21uevgb] .courses-grid .rz-datatable-thead th {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    font-weight: 600;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-bottom: 1px solid var(--border-color);
}

[b-ant21uevgb] .courses-grid .rz-datatable-tbody tr {
    border-bottom: 1px solid var(--border-color);
    transition: background-color 0.2s ease;
}

[b-ant21uevgb] .courses-grid .rz-datatable-tbody tr:hover {
    background-color: var(--bg-surface-tertiary);
}

[b-ant21uevgb] .courses-grid .rz-datatable-tbody td {
    padding: 0.75rem 1rem;
    vertical-align: middle;
}

/* Responsive Adjustments */
@media (max-width: 1200px) {
    .quick-stats[b-ant21uevgb] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {

    .quick-stats[b-ant21uevgb] {
        grid-template-columns: 1fr;
    }

    .stat-card[b-ant21uevgb] {
        padding: 1rem;
    }

    .stat-value[b-ant21uevgb] {
        font-size: 1.25rem;
    }

    .info-card .card-header[b-ant21uevgb] {
        padding: 0.875rem 1rem;
    }

    .info-card .card-body[b-ant21uevgb] {
        padding: 1rem;
    }

    .course-image-wrapper img[b-ant21uevgb] {
        width: 40px;
        height: 40px;
    }
}
/* /Pages/Recruiter/ApplicationsHub.razor.rz.scp.css */
/* ApplicationsHub - Component-Specific Layout

   LAYOUT: Uses .container-fluid wrapper for consistent Bootstrap responsive behavior.
   Padding handled by global .content-page rule in app.css (3rem left).
*/

.applications-hub[b-cboleoucin] {
    /* Padding removed - handled by .content-page global rule */
}

.content-area[b-cboleoucin] {
    position: relative;
    min-height: 400px;
}

.content-area.initial-load[b-cboleoucin] {
    min-height: 500px;
}

/* ============ Hub Header Layout ============ */
.hub-header[b-cboleoucin] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    border-radius: 16px;
    margin-bottom: 1.5rem;
    color: var(--text-inverse);
}

.header-content[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.header-icon[b-cboleoucin] {
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.25);
    border-radius: 14px;
    font-size: 1.5rem;
    color: var(--text-inverse);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    backdrop-filter: blur(4px);
}

.header-icon i[b-cboleoucin] {
    color: var(--text-inverse);
    font-size: 1.75rem;
    text-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
}

.header-text h1[b-cboleoucin] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0;
    color: var(--text-inverse);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

.header-text p[b-cboleoucin] {
    font-size: 0.875rem;
    margin: 0.25rem 0 0;
    color: rgba(255, 255, 255, 0.95);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

.header-actions[b-cboleoucin] {
    display: flex;
    gap: 0.75rem;
}

.header-btn[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 10px;
    color: var(--text-inverse);
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.header-btn:hover[b-cboleoucin] {
    background: rgba(255, 255, 255, 0.3);
    color: var(--text-inverse);
    text-decoration: none;
}

.header-btn i[b-cboleoucin] {
    color: var(--text-inverse);
    font-size: 1.125rem;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

/* ============ Hybrid Navigation Bar ============ */
.navigation-bar[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

.tabs-inline[b-cboleoucin] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-cboleoucin] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-cboleoucin] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-cboleoucin] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-cboleoucin] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.highlight[b-cboleoucin] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.highlight[b-cboleoucin] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

.tab-badge.warning[b-cboleoucin] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.tab-compact.active .tab-badge.warning[b-cboleoucin] {
    background: var(--theme-warning);
    color: var(--text-inverse);
}

.tab-badge.info[b-cboleoucin] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

.tab-compact.active .tab-badge.info[b-cboleoucin] {
    background: var(--theme-info);
    color: var(--text-inverse);
}

.tab-badge.success[b-cboleoucin] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.success[b-cboleoucin] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

.vacancy-inline[b-cboleoucin] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 400px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-cboleoucin] {
    font-size: 1rem;
}

.vacancy-select[b-cboleoucin] {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 2.5rem 0 0.875rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px;
}

.vacancy-select:hover[b-cboleoucin] {
    border-color: var(--theme-primary-emphasis);
    background-color: rgba(99, 102, 241, 0.08);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.2);
}

.vacancy-select:focus[b-cboleoucin] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.vacancy-select option[b-cboleoucin] {
    padding: 0.5rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

.search-inline[b-cboleoucin] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-cboleoucin] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-cboleoucin] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-cboleoucin] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-cboleoucin]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-cboleoucin] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-cboleoucin] {
    background: var(--border-color);
    color: var(--text-primary);
}

.view-toggle-inline[b-cboleoucin] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
}

.view-toggle-inline .toggle-btn[b-cboleoucin] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.view-toggle-inline .toggle-btn:hover[b-cboleoucin] {
    color: var(--text-secondary);
    background: var(--bg-hover);
}

.view-toggle-inline .toggle-btn.active[b-cboleoucin] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-xs);
}

.view-toggle-inline .toggle-btn i[b-cboleoucin] {
    font-size: 1rem;
}

.refresh-btn[b-cboleoucin] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.refresh-btn:hover:not(:disabled)[b-cboleoucin] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-cboleoucin] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-cboleoucin] {
    font-size: 1rem;
}

/* Note: Spinner is now centralized in app.css. */

/* ============ Tab Content Area ============ */
.tab-content-area[b-cboleoucin] {
    position: relative;
    min-height: calc(100vh - 380px);
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    flex: 1;
    padding: 1.25rem;
}

[b-cboleoucin] .tab-content-area .applications-table,
[b-cboleoucin] .tab-content-area .data-grid {
    height: 100%;
}

[b-cboleoucin] .tab-content-area .rz-datatable-data {
    min-height: calc(100vh - 500px);
}

[b-cboleoucin] .tab-content-area .applications-grid {
    padding: 1rem;
}

[b-cboleoucin] .tab-content-area .filters-panel {
    padding: 0;
    margin: 0 0 1rem 0;
    border: none;
    background: transparent;
}

/* Remove extra padding from inner components since tab-content-area has padding */
[b-cboleoucin] .tab-content-area > div {
    /* Inner content containers don't need additional padding */
}

/* ============ Responsive Breakpoints ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-cboleoucin] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-cboleoucin] {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }

    .vacancy-label span[b-cboleoucin] {
        display: none;
    }

    .search-inline[b-cboleoucin] {
        flex: 1 1 150px;
        min-width: 120px;
    }
}

@media (max-width: 768px) {
    .hub-header[b-cboleoucin] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
        padding: 1rem;
    }

    .header-actions[b-cboleoucin] {
        width: 100%;
    }

    .header-btn[b-cboleoucin] {
        flex: 1;
        justify-content: center;
    }

    .navigation-bar[b-cboleoucin] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-cboleoucin] {
        order: 1;
        flex: 0 0 auto;
    }

    .vacancy-inline[b-cboleoucin] {
        order: 2;
        flex: 1 1 auto;
        min-width: 200px;
        max-width: none;
    }

    .vacancy-label[b-cboleoucin] {
        display: none;
    }

    .search-inline[b-cboleoucin] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .view-toggle-inline[b-cboleoucin] {
        order: 4;
    }

    .refresh-btn[b-cboleoucin] {
        order: 5;
    }

    .tab-content-area[b-cboleoucin] {
        min-height: calc(100vh - 450px);
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-cboleoucin] {
        flex: 1 1 100%;
        justify-content: center;
    }

    .tab-compact span:not(.tab-badge)[b-cboleoucin] {
        display: none;
    }

    .tab-compact[b-cboleoucin] {
        padding: 0.5rem 0.625rem;
    }
}

/* Dark mode handled automatically via CSS variables - no explicit overrides needed */

/* ============ Analytics Filter Banner ============ */
.analytics-filter-banner[b-cboleoucin] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, var(--theme-primary-subtle) 0%, rgba(99, 102, 241, 0.08) 100%);
    border: 1px solid var(--theme-primary);
    border-radius: 10px;
    margin-bottom: 1rem;
}

.analytics-filter-banner .filter-info[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--theme-primary-emphasis);
}

.analytics-filter-banner .filter-info i[b-cboleoucin] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

.analytics-filter-banner .filter-info strong[b-cboleoucin] {
    font-weight: 600;
    color: var(--text-primary);
}

.analytics-filter-banner .clear-filter-btn[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--theme-primary);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-primary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.analytics-filter-banner .clear-filter-btn:hover[b-cboleoucin] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.analytics-filter-banner .clear-filter-btn i[b-cboleoucin] {
    font-size: 0.875rem;
}

@media (max-width: 576px) {
    .analytics-filter-banner[b-cboleoucin] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }

    .analytics-filter-banner .clear-filter-btn[b-cboleoucin] {
        width: 100%;
        justify-content: center;
    }
}

/* ============ Export Column Picker ============ */
.export-dialog-content[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.export-summary[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem 1rem;
    background: var(--theme-primary-subtle);
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--theme-primary-emphasis);
}

.export-summary i[b-cboleoucin] {
    font-size: 1.25rem;
}

.export-columns-header[b-cboleoucin] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.export-columns-header h4[b-cboleoucin] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.export-quick-actions[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.export-link-btn[b-cboleoucin] {
    background: none;
    border: none;
    padding: 0;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-primary);
    cursor: pointer;
    text-decoration: none;
}

.export-link-btn:hover[b-cboleoucin] {
    text-decoration: underline;
}

.export-divider[b-cboleoucin] {
    color: var(--text-muted);
    font-size: 0.75rem;
}

.export-columns-grid[b-cboleoucin] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.375rem;
}

.export-column-item[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    cursor: pointer;
    transition: all 0.15s ease;
    background: var(--bg-surface);
}

.export-column-item:hover[b-cboleoucin] {
    border-color: var(--theme-primary);
    background: var(--bg-surface-tertiary);
}

.export-column-item.selected[b-cboleoucin] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.export-column-item input[type="checkbox"][b-cboleoucin] {
    width: 16px;
    height: 16px;
    accent-color: var(--theme-primary);
    cursor: pointer;
    flex-shrink: 0;
}

.export-column-name[b-cboleoucin] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
}

@media (max-width: 576px) {
    .export-columns-grid[b-cboleoucin] {
        grid-template-columns: 1fr;
    }
}

/* ============ Batch Process Modal Content ============ */
.batch-modal-content[b-cboleoucin],
.batch-result-content[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.batch-summary[b-cboleoucin] {
    display: flex;
    justify-content: center;
    padding: 1rem;
    background: var(--bg-secondary);
    border-radius: 12px;
}

.summary-stat[b-cboleoucin] {
    text-align: center;
}

.summary-stat .stat-value[b-cboleoucin] {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    color: var(--theme-primary);
    line-height: 1;
}

.summary-stat .stat-label[b-cboleoucin] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

.batch-warning[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: rgba(234, 179, 8, 0.1);
    border: 1px solid rgba(234, 179, 8, 0.3);
    border-radius: 10px;
    color: var(--theme-warning-text);
    font-size: 0.875rem;
}

.batch-warning i[b-cboleoucin] {
    font-size: 1.125rem;
    flex-shrink: 0;
}

.batch-form-group[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.batch-form-group.nested[b-cboleoucin] {
    margin-left: 1.5rem;
    margin-top: 0.75rem;
}

.batch-form-group label[b-cboleoucin] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.batch-form-group label .required[b-cboleoucin] {
    color: var(--theme-danger);
}

.batch-form-select[b-cboleoucin],
.batch-form-textarea[b-cboleoucin] {
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-primary);
    border-radius: 10px;
    font-size: 0.9375rem;
    background: var(--bg-primary);
    color: var(--text-primary);
    transition: border-color 0.2s, box-shadow 0.2s;
}

.batch-form-select:focus[b-cboleoucin],
.batch-form-textarea:focus[b-cboleoucin] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(var(--theme-primary-rgb), 0.15);
}

.batch-form-textarea[b-cboleoucin] {
    resize: vertical;
    min-height: 80px;
}

.batch-form-hint[b-cboleoucin] {
    font-size: 0.8125rem;
    color: var(--text-tertiary);
}

.batch-form-section[b-cboleoucin] {
    padding-top: 1rem;
    border-top: 1px solid var(--border-primary);
}

.batch-form-section h4[b-cboleoucin] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.875rem 0;
}

.batch-form-check[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    margin-bottom: 0.5rem;
}

.batch-form-check input[type="checkbox"][b-cboleoucin] {
    width: 18px;
    height: 18px;
    accent-color: var(--theme-primary);
    cursor: pointer;
}

.batch-form-check label[b-cboleoucin] {
    font-size: 0.9375rem;
    color: var(--text-primary);
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.batch-form-check label i[b-cboleoucin] {
    font-size: 1rem;
    color: var(--text-secondary);
}

.notification-options[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Result Modal Specific */
.result-summary[b-cboleoucin] {
    padding: 1rem;
    background: var(--bg-secondary);
    border-radius: 12px;
}

.summary-grid[b-cboleoucin] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

.summary-item[b-cboleoucin] {
    text-align: center;
    padding: 0.75rem;
    border-radius: 10px;
}

.summary-item.success[b-cboleoucin] {
    background: rgba(16, 185, 129, 0.1);
}

.summary-item.warning[b-cboleoucin] {
    background: rgba(234, 179, 8, 0.1);
}

.summary-item.danger[b-cboleoucin] {
    background: rgba(239, 68, 68, 0.1);
}

.summary-item.info[b-cboleoucin] {
    background: rgba(59, 130, 246, 0.1);
}

.summary-item .item-value[b-cboleoucin] {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.summary-item.success .item-value[b-cboleoucin] { color: var(--theme-success); }
.summary-item.warning .item-value[b-cboleoucin] { color: var(--theme-warning); }
.summary-item.danger .item-value[b-cboleoucin] { color: var(--theme-danger); }
.summary-item.info .item-value[b-cboleoucin] { color: var(--theme-info); }

.summary-item .item-label[b-cboleoucin] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

.result-details[b-cboleoucin] {
    margin-top: 1rem;
}

.result-details h4[b-cboleoucin] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.75rem 0;
}

.result-list[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.result-item[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
}

.result-item.skipped[b-cboleoucin] {
    background: rgba(234, 179, 8, 0.1);
    border: 1px solid rgba(234, 179, 8, 0.2);
}

.result-item.failed[b-cboleoucin] {
    background: rgba(239, 68, 68, 0.1);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.result-item .item-name[b-cboleoucin] {
    font-weight: 500;
    color: var(--text-primary);
    flex: 1;
}

.result-item .item-index[b-cboleoucin] {
    color: var(--text-tertiary);
    font-family: var(--font-mono);
    font-size: 0.8125rem;
}

.result-item .item-reason[b-cboleoucin] {
    color: var(--text-secondary);
    font-size: 0.8125rem;
    max-width: 200px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Responsive adjustments for batch modal */
@media (max-width: 576px) {
    .summary-grid[b-cboleoucin] {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* ============ Drafts Tab Content ============ */
.drafts-content[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.drafts-info-banner[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--theme-info-subtle);
    border: 1px solid var(--theme-info-border);
    border-radius: 10px;
    color: var(--theme-info-emphasis);
    font-size: 0.875rem;
}

.drafts-info-banner i[b-cboleoucin] {
    font-size: 1.125rem;
    flex-shrink: 0;
}

.drafts-grid[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.draft-card-wrapper[b-cboleoucin] {
    border-left: 4px solid var(--theme-info);
}

.draft-applicant[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.applicant-avatar[b-cboleoucin] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1rem;
}

.applicant-avatar.success[b-cboleoucin] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.applicant-info[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.applicant-name[b-cboleoucin] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--text-primary);
}

.applicant-email[b-cboleoucin] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.draft-status-badge[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--theme-info-subtle);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-info-emphasis);
}

.draft-status-badge i[b-cboleoucin] {
    font-size: 0.875rem;
}

.draft-card-body[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.draft-progress[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.progress-label[b-cboleoucin] {
    display: flex;
    justify-content: space-between;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.progress-value[b-cboleoucin] {
    font-weight: 600;
    color: var(--text-primary);
}

.progress-bar[b-cboleoucin] {
    height: 6px;
    background: var(--bg-surface-tertiary);
    border-radius: 3px;
    overflow: hidden;
}

.progress-fill[b-cboleoucin] {
    height: 100%;
    background: var(--theme-primary);
    border-radius: 3px;
    transition: width 0.3s ease;
}

.draft-details[b-cboleoucin] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
}

.draft-detail[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.draft-detail i[b-cboleoucin] {
    font-size: 0.9375rem;
    color: var(--text-muted);
}

.draft-detail.expiring-soon[b-cboleoucin] {
    color: var(--theme-warning-emphasis);
}

.draft-detail.expiring-soon i[b-cboleoucin] {
    color: var(--theme-warning);
}

.draft-card-actions[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.action-btn[b-cboleoucin] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.action-btn:hover:not(:disabled)[b-cboleoucin] {
    background: var(--bg-hover);
    border-color: var(--border-emphasis);
}

.action-btn:disabled[b-cboleoucin] {
    opacity: 0.5;
    cursor: not-allowed;
}

.action-btn.view:hover:not(:disabled)[b-cboleoucin] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

.action-btn.remind:hover:not(:disabled)[b-cboleoucin] {
    border-color: var(--theme-info);
    color: var(--theme-info);
}

/* ============ Finished Tab Content ============ */
.finished-content[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.finished-info-banner[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--theme-success-subtle);
    border: 1px solid var(--theme-success-border);
    border-radius: 10px;
    color: var(--theme-success-emphasis);
    font-size: 0.875rem;
}

.finished-info-banner i[b-cboleoucin] {
    font-size: 1.125rem;
    flex-shrink: 0;
}

.finished-grid[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.finished-card-wrapper[b-cboleoucin] {
    border-left: 4px solid var(--theme-success);
}

.finished-applicant[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.finished-status-badge[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--theme-success-subtle);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-success-emphasis);
}

.finished-status-badge i[b-cboleoucin] {
    font-size: 0.875rem;
}

.finished-card-body[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.finished-details[b-cboleoucin] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
}

.finished-detail[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.finished-detail i[b-cboleoucin] {
    font-size: 0.9375rem;
    color: var(--text-muted);
}

.finished-card-actions[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* ============ Responsive for Drafts/Finished ============ */
@media (max-width: 768px) {
    .draft-applicant[b-cboleoucin],
    .finished-applicant[b-cboleoucin],
    .cancelled-applicant[b-cboleoucin] {
        flex: 1;
        min-width: 0;
    }

    .applicant-name[b-cboleoucin] {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .draft-details[b-cboleoucin],
    .finished-details[b-cboleoucin],
    .cancelled-details[b-cboleoucin] {
        flex-direction: column;
        gap: 0.5rem;
    }
}

/* ============ Cancelled Tab Content ============ */
.cancelled-content[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.cancelled-info-banner[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--theme-danger-subtle);
    border: 1px solid var(--theme-danger-border);
    border-radius: 10px;
    color: var(--theme-danger-emphasis);
    font-size: 0.875rem;
}

.cancelled-info-banner i[b-cboleoucin] {
    font-size: 1.125rem;
    flex-shrink: 0;
}

.cancelled-grid[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.cancelled-card-wrapper[b-cboleoucin] {
    border-left: 4px solid var(--theme-danger);
}

.cancelled-applicant[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.applicant-avatar.cancelled[b-cboleoucin] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.cancelled-status-badge[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--theme-danger-subtle);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger-emphasis);
}

.cancelled-status-badge i[b-cboleoucin] {
    font-size: 0.875rem;
}

.cancelled-card-body[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.cancelled-details[b-cboleoucin] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
}

.cancelled-detail[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.cancelled-detail i[b-cboleoucin] {
    font-size: 0.9375rem;
    color: var(--text-muted);
}

.cancelled-card-actions[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Tab badge danger style for cancelled count */
.tab-badge.danger[b-cboleoucin] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.tab-compact.active .tab-badge.danger[b-cboleoucin] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

/* ============ Filter Toggle Button ============ */
.filter-toggle-btn[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-cboleoucin] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-cboleoucin] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-cboleoucin] {
    font-size: 1rem;
}

.filter-active-dot[b-cboleoucin] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-cboleoucin] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-cboleoucin] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 160px;
    min-width: 130px;
    max-width: 220px;
}

.advanced-filter-label[b-cboleoucin] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* FshSelect inside advanced filter bar */
[b-cboleoucin] .adv-filter-fsh-select {
    margin: 0;
}

[b-cboleoucin] .adv-filter-fsh-select .fsh-searchable-select {
    min-width: 0;
}

[b-cboleoucin] .adv-filter-fsh-select .fsh-searchable-trigger {
    height: 34px;
    padding: 0 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    transition: all 0.2s ease;
}

[b-cboleoucin] .adv-filter-fsh-select .fsh-searchable-trigger:hover {
    border-color: var(--theme-primary);
}

[b-cboleoucin] .adv-filter-fsh-select .fsh-searchable-value {
    font-size: 0.8125rem;
}

[b-cboleoucin] .adv-filter-fsh-select .fsh-searchable-placeholder {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

[b-cboleoucin] .adv-filter-fsh-select .fsh-searchable-dropdown {
    min-width: 200px;
    z-index: 1050;
}

.advanced-filter-actions[b-cboleoucin] {
    display: flex;
    align-items: flex-end;
    flex: 0 0 auto;
    padding-bottom: 1px;
}

.adv-clear-btn[b-cboleoucin] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.adv-clear-btn:hover[b-cboleoucin] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.adv-clear-btn i[b-cboleoucin] {
    font-size: 0.875rem;
}

@media (max-width: 768px) {
    .filter-toggle-btn span[b-cboleoucin] {
        display: none;
    }

    .advanced-filters-bar[b-cboleoucin] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-cboleoucin] {
        max-width: none;
    }
}

@media (max-width: 480px) {
    .filter-toggle-btn span[b-cboleoucin] {
        display: none;
    }
}

/* ============ Dark Mode ============
   Hero gradient header (.hub-header) is intentionally left
   light-on-primary in both modes — it's a branded banner.
   This block adapts the navigation bar, cards, modal panels,
   and dropdown surfaces. */

[data-bs-theme="dark"] .navigation-bar[b-cboleoucin],
[data-bs-theme="dark"] .advanced-filters-bar[b-cboleoucin],
[data-bs-theme="dark"] .tab-content-area[b-cboleoucin],
[data-bs-theme="dark"] .draft-card-wrapper[b-cboleoucin],
[data-bs-theme="dark"] .finished-card-wrapper[b-cboleoucin],
[data-bs-theme="dark"] .cancelled-card-wrapper[b-cboleoucin],
[data-bs-theme="dark"] .batch-result-content[b-cboleoucin],
[data-bs-theme="dark"] .export-dialog-content[b-cboleoucin],
[data-bs-theme="dark"] .summary-item[b-cboleoucin] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .tabs-inline[b-cboleoucin],
[data-bs-theme="dark"] .nav-search-box[b-cboleoucin],
[data-bs-theme="dark"] .vacancy-select[b-cboleoucin],
[data-bs-theme="dark"] .adv-filter-select[b-cboleoucin],
[data-bs-theme="dark"] .batch-form-select[b-cboleoucin],
[data-bs-theme="dark"] .batch-form-textarea[b-cboleoucin] {
    background: var(--bg-surface-alt);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .vacancy-label[b-cboleoucin],
[data-bs-theme="dark"] .progress-label[b-cboleoucin],
[data-bs-theme="dark"] .applicant-email[b-cboleoucin],
[data-bs-theme="dark"] .batch-form-hint[b-cboleoucin],
[data-bs-theme="dark"] .advanced-filter-label[b-cboleoucin],
[data-bs-theme="dark"] .export-divider[b-cboleoucin] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .applicant-name[b-cboleoucin],
[data-bs-theme="dark"] .progress-value[b-cboleoucin],
[data-bs-theme="dark"] .draft-detail[b-cboleoucin],
[data-bs-theme="dark"] .finished-detail[b-cboleoucin],
[data-bs-theme="dark"] .cancelled-detail[b-cboleoucin],
[data-bs-theme="dark"] .export-column-name[b-cboleoucin] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .draft-card-wrapper:hover[b-cboleoucin],
[data-bs-theme="dark"] .finished-card-wrapper:hover[b-cboleoucin],
[data-bs-theme="dark"] .cancelled-card-wrapper:hover[b-cboleoucin] {
    background: var(--bg-surface-alt);
}

[data-bs-theme="dark"] .batch-warning[b-cboleoucin] {
    background: rgba(234, 179, 8, 0.12);
    border-color: rgba(234, 179, 8, 0.35);
    color: var(--theme-warning);
}

[data-bs-theme="dark"] .progress-bar[b-cboleoucin] {
    background: var(--bg-surface-alt);
}
/* /Pages/Recruiter/ApplicationsHubComponents/AllApplicationsContent.razor.rz.scp.css */
/* AllApplicationsContent Styles */
/* Dark mode handled automatically via CSS variables from theme-core.css */

/* Results Bar */
.results-bar[b-96lak678e0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--bg-surface);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
}

.results-left[b-96lak678e0] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-count[b-96lak678e0] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.page-size-selector[b-96lak678e0] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-96lak678e0] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-96lak678e0] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-96lak678e0] {
    border-color: var(--theme-primary);
}

.clear-filters[b-96lak678e0] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.clear-filters:hover[b-96lak678e0] {
    background: var(--border-color);
    color: var(--text-primary);
}

.clear-filters i[b-96lak678e0] {
    font-size: 0.9375rem;
}

/* Bulk Actions Bar - Prominent position near grid */
.bulk-actions-bar[b-96lak678e0] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex: 1;
    margin-left: 1rem;
    padding-left: 1rem;
    border-left: 2px solid var(--theme-primary);
    animation: slideIn-b-96lak678e0 0.2s ease;
}

@keyframes slideIn-b-96lak678e0 {
    from {
        opacity: 0;
        transform: translateX(-10px);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

.bulk-actions-bar .selection-count[b-96lak678e0] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.bulk-actions-bar .selection-count i[b-96lak678e0] {
    font-size: 1rem;
}

.bulk-actions-buttons[b-96lak678e0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.bulk-btn[b-96lak678e0] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.bulk-btn:hover[b-96lak678e0] {
    background: var(--bg-surface-tertiary);
    border-color: var(--text-muted);
}

.bulk-btn.primary[b-96lak678e0] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.bulk-btn.primary:hover[b-96lak678e0] {
    background: var(--theme-primary-emphasis);
    border-color: var(--theme-primary-emphasis);
}

.bulk-btn.danger[b-96lak678e0] {
    color: var(--theme-danger);
}

.bulk-btn.danger:hover[b-96lak678e0] {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger);
}

.bulk-btn.warning[b-96lak678e0] {
    background: linear-gradient(135deg, var(--theme-warning) 0%, var(--theme-warning-emphasis) 100%);
    border-color: var(--theme-warning-emphasis);
    color: white;
}

.bulk-btn.warning:hover[b-96lak678e0] {
    background: linear-gradient(135deg, var(--theme-warning-emphasis) 0%, var(--theme-warning-text) 100%);
    border-color: var(--theme-warning-text);
}

.bulk-btn i[b-96lak678e0] {
    font-size: 0.875rem;
}

/* Applications Grid */
.applications-grid[b-96lak678e0] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 1rem;
}

/* Note: Empty state now uses centralized EmptyState component. */

/* Table View */
.applications-table[b-96lak678e0] {
    background: var(--bg-surface);
    border-radius: 14px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

[b-96lak678e0] .data-grid {
    border: none;
}

/* Auto-width table - columns fit content */
[b-96lak678e0] .auto-width-table .rz-datatable {
    table-layout: auto;
    width: 100%;
}

[b-96lak678e0] .data-grid .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    padding: 0.875rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

[b-96lak678e0] .data-grid .rz-datatable-tbody > tr > td {
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
    font-size: 0.875rem;
    color: var(--text-primary);
    /* Allow text wrapping */
    white-space: normal;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

/* Cells that should wrap text */
[b-96lak678e0] .wrap-cell {
    white-space: normal !important;
    word-wrap: break-word;
    overflow-wrap: break-word;
    line-height: 1.4;
    max-width: 250px;
}

[b-96lak678e0] .data-grid .rz-datatable-tbody > tr:hover > td {
    background: var(--bg-surface-tertiary);
}

[b-96lak678e0] .data-grid .rz-datatable-tbody > tr:last-child > td {
    border-bottom: none;
}

.index-link[b-96lak678e0],
.student-link[b-96lak678e0] {
    font-weight: 600;
    color: var(--theme-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

.index-link:hover[b-96lak678e0],
.student-link:hover[b-96lak678e0] {
    color: var(--theme-primary-emphasis);
    text-decoration: underline;
}

.student-link[b-96lak678e0] {
    font-weight: 500;
}

.stage-cell[b-96lak678e0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.unassigned-tag[b-96lak678e0] {
    display: inline-flex;
    align-items: center;
    padding: 0.1875rem 0.5rem;
    background: var(--theme-warning-subtle);
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--theme-warning-emphasis);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.fee-blocked-tag[b-96lak678e0] {
    color: var(--theme-danger);
    font-size: 1rem;
}

.table-actions[b-96lak678e0] {
    display: flex;
    gap: 0.5rem;
}

.table-actions .action-btn[b-96lak678e0] {
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    border: none;
    border-radius: 8px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.table-actions .action-btn:hover[b-96lak678e0] {
    background: var(--border-color);
    color: var(--text-primary);
}

.table-actions .action-btn.process[b-96lak678e0] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.table-actions .action-btn.process:hover[b-96lak678e0] {
    background: var(--theme-primary);
    color: white;
}

.table-actions .action-btn.view:hover[b-96lak678e0] {
    background: var(--theme-primary);
    color: white;
}

.table-actions .action-btn i[b-96lak678e0] {
    font-size: 1.125rem;
}

/* Choice Order Badge */
.choice-badge[b-96lak678e0] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.choice-badge.choice-1[b-96lak678e0] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.choice-badge.choice-2[b-96lak678e0] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary-emphasis);
}

.choice-badge.choice-3[b-96lak678e0] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

.choice-badge.choice-4[b-96lak678e0],
.choice-badge.choice-5[b-96lak678e0] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

/* Eligibility Score Cell */
.eligibility-cell[b-96lak678e0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.eligibility-bar[b-96lak678e0] {
    flex: 1;
    height: 8px;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    overflow: hidden;
    min-width: 50px;
}

.eligibility-fill[b-96lak678e0] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.eligibility-fill.eligibility-excellent[b-96lak678e0] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-emphasis));
}

.eligibility-fill.eligibility-good[b-96lak678e0] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-emphasis));
}

.eligibility-fill.eligibility-fair[b-96lak678e0] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-emphasis));
}

.eligibility-fill.eligibility-low[b-96lak678e0] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-emphasis));
}

.eligibility-fill.eligibility-very-low[b-96lak678e0] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-emphasis));
}

.eligibility-score[b-96lak678e0] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    min-width: 24px;
    text-align: right;
}

/* Responsive */
@media (max-width: 768px) {
    .applications-grid[b-96lak678e0] {
        grid-template-columns: 1fr;
    }

    .results-bar[b-96lak678e0] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: stretch;
    }

    .results-left[b-96lak678e0] {
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .bulk-actions-bar[b-96lak678e0] {
        margin-left: 0;
        padding-left: 0;
        border-left: none;
        border-top: 1px solid var(--border-color);
        padding-top: 0.75rem;
        flex-direction: column;
        gap: 0.5rem;
    }

    .bulk-actions-buttons[b-96lak678e0] {
        width: 100%;
        justify-content: flex-end;
    }

    .bulk-btn[b-96lak678e0] {
        flex: 1;
        justify-content: center;
    }
}

/* ============ Choice Verification Flags ============ */
.choice-flag[b-96lak678e0] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
    margin-left: 0.25rem;
}

.choice-flag.mismatch[b-96lak678e0] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
    border: 1px solid var(--theme-danger-border);
}

.choice-flag.verified[b-96lak678e0] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
    border: 1px solid var(--theme-success-border);
}

.choice-flag.unverified[b-96lak678e0] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

/* Dark mode */
:global([data-bs-theme="dark"]) .choice-flag.mismatch[b-96lak678e0] {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger);
    border-color: rgba(220, 38, 38, 0.3);
}

:global([data-bs-theme="dark"]) .choice-flag.verified[b-96lak678e0] {
    background: rgba(22, 163, 74, 0.15);
    color: var(--theme-success);
    border-color: rgba(22, 163, 74, 0.3);
}

/* Quick View Button */
.btn-quickview[b-96lak678e0] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 0.875rem;
}

.btn-quickview:hover[b-96lak678e0] {
    background: var(--theme-primary-light);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}
/* /Pages/Recruiter/ApplicationsHubComponents/MyTasksContent.razor.rz.scp.css */
/* MyTasksContent Styles */
/* Dark mode handled automatically via CSS variables from theme-core.css */

/* Results Bar */
.results-bar[b-zfuge684hj] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    margin-bottom: 1rem;
}

.results-count[b-zfuge684hj] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.filter-indicator[b-zfuge684hj] {
    font-weight: 500;
    color: var(--text-primary);
}

.clear-filters[b-zfuge684hj] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.625rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.clear-filters:hover[b-zfuge684hj] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

/* Priority Sections */
.priority-section[b-zfuge684hj] {
    margin-bottom: 1.5rem;
}

.section-header[b-zfuge684hj] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border-radius: 8px;
    margin-bottom: 0.75rem;
    font-size: 0.875rem;
    font-weight: 600;
}

.priority-section.overdue .section-header[b-zfuge684hj] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.priority-section.today .section-header[b-zfuge684hj] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.priority-section.upcoming .section-header[b-zfuge684hj] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary-emphasis);
}

.section-header i[b-zfuge684hj] {
    font-size: 1rem;
}

.section-count[b-zfuge684hj] {
    padding: 0.125rem 0.5rem;
    background: rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    font-size: 0.75rem;
}

/* Applications Grid */
.applications-grid[b-zfuge684hj] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1rem;
}

/* Note: Empty state now uses centralized EmptyState component. */

/* Table View */
.applications-table[b-zfuge684hj] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

[b-zfuge684hj] .data-grid {
    border: none;
}

[b-zfuge684hj] .data-grid .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    padding: 0.875rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

[b-zfuge684hj] .data-grid .rz-datatable-tbody > tr > td {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
    color: var(--text-primary);
}

[b-zfuge684hj] .data-grid .rz-datatable-tbody > tr:hover > td {
    background: var(--bg-surface-tertiary);
}

/* Priority Badge */
.priority-badge[b-zfuge684hj] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
}

.priority-badge.overdue[b-zfuge684hj] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.priority-badge.today[b-zfuge684hj] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.priority-badge.high[b-zfuge684hj] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.priority-badge.normal[b-zfuge684hj] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.priority-badge i[b-zfuge684hj] {
    font-size: 0.75rem;
}

/* Links */
.index-link[b-zfuge684hj] {
    font-weight: 600;
    color: var(--theme-primary);
    text-decoration: none;
}

.index-link:hover[b-zfuge684hj] {
    text-decoration: underline;
}

/* Deadline */
.deadline[b-zfuge684hj] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.deadline.overdue[b-zfuge684hj] {
    color: var(--theme-danger);
    font-weight: 500;
}

.deadline.today[b-zfuge684hj] {
    color: var(--theme-warning-emphasis);
    font-weight: 500;
}

.no-deadline[b-zfuge684hj] {
    color: var(--text-muted);
    font-size: 0.8125rem;
}

/* Table Actions */
.table-actions[b-zfuge684hj] {
    display: flex;
    gap: 0.375rem;
}

.table-actions .action-btn[b-zfuge684hj] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    border: none;
    border-radius: 6px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.table-actions .action-btn:hover[b-zfuge684hj] {
    background: var(--border-color);
    color: var(--text-primary);
}

.table-actions .action-btn.process[b-zfuge684hj] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.table-actions .action-btn.process:hover[b-zfuge684hj] {
    background: var(--theme-primary);
    color: white;
}

.table-actions .action-btn.view:hover[b-zfuge684hj] {
    background: var(--theme-primary);
    color: white;
}

/* Responsive */
@media (max-width: 768px) {
    .applications-grid[b-zfuge684hj] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Recruiter/ApplicationsHubComponents/UnassignedContent.razor.rz.scp.css */
/* UnassignedContent Styles */
/* Dark mode handled automatically via CSS variables from theme-core.css */

/* Bulk Actions */
.bulk-actions[b-ltyba7batt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.selection-count[b-ltyba7batt] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    padding-right: 0.5rem;
    border-right: 1px solid var(--border-color);
}

.bulk-btn[b-ltyba7batt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.bulk-btn:hover[b-ltyba7batt] {
    background: var(--bg-surface-tertiary);
    border-color: var(--border-color);
}

.bulk-btn i[b-ltyba7batt] {
    font-size: 0.875rem;
}

/* FshSplitButton styling handled by component CSS */

/* Results Bar */
.results-bar[b-ltyba7batt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    margin-bottom: 1rem;
}

.results-count[b-ltyba7batt] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-count.warning[b-ltyba7batt] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--theme-warning-emphasis);
    font-weight: 500;
}

.results-count.warning i[b-ltyba7batt] {
    font-size: 1rem;
}

.clear-filters[b-ltyba7batt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.625rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.clear-filters:hover[b-ltyba7batt] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

/* Stage Section */
.stage-section[b-ltyba7batt] {
    margin-bottom: 1.5rem;
}

.stage-header[b-ltyba7batt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    margin-bottom: 0.75rem;
}

.stage-info[b-ltyba7batt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.stage-count[b-ltyba7batt] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.stage-actions[b-ltyba7batt] {
    display: flex;
    gap: 0.5rem;
}

.select-all-btn[b-ltyba7batt],
.assign-all-btn[b-ltyba7batt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.625rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.select-all-btn:hover[b-ltyba7batt],
.assign-all-btn:hover[b-ltyba7batt] {
    background: var(--bg-surface-tertiary);
    border-color: var(--border-color);
    color: var(--text-primary);
}

.assign-all-btn[b-ltyba7batt] {
    background: var(--theme-primary-subtle);
    border-color: rgba(99, 102, 241, 0.3);
    color: var(--theme-primary);
}

.assign-all-btn:hover[b-ltyba7batt] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

/* Applications Grid */
.applications-grid[b-ltyba7batt] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1rem;
}

/* Note: Empty state now uses centralized EmptyState component. */

/* Table View */
.applications-table[b-ltyba7batt] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

[b-ltyba7batt] .data-grid {
    border: none;
}

[b-ltyba7batt] .data-grid .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    padding: 0.875rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

[b-ltyba7batt] .data-grid .rz-datatable-tbody > tr > td {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
    color: var(--text-primary);
}

[b-ltyba7batt] .data-grid .rz-datatable-tbody > tr:hover > td {
    background: var(--bg-surface-tertiary);
}

/* Links */
.index-link[b-ltyba7batt] {
    font-weight: 600;
    color: var(--theme-primary);
    text-decoration: none;
}

.index-link:hover[b-ltyba7batt] {
    text-decoration: underline;
}

/* Waiting Time */
.waiting-time[b-ltyba7batt] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.waiting-time.warning[b-ltyba7batt] {
    color: var(--theme-warning-emphasis);
}

.waiting-time.critical[b-ltyba7batt] {
    color: var(--theme-danger);
}

/* Table Actions */
.table-actions[b-ltyba7batt] {
    display: flex;
    gap: 0.375rem;
}

.table-actions .action-btn[b-ltyba7batt] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    border: none;
    border-radius: 6px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.table-actions .action-btn:hover[b-ltyba7batt] {
    background: var(--border-color);
    color: var(--text-primary);
}

.table-actions .action-btn.assign[b-ltyba7batt] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.table-actions .action-btn.assign:hover[b-ltyba7batt],
.table-actions .action-btn.assign.primary:hover[b-ltyba7batt] {
    background: var(--theme-primary);
    color: white;
}

.table-actions .action-btn.view:hover[b-ltyba7batt] {
    background: var(--theme-primary);
    color: white;
}

/* Responsive */
@media (max-width: 768px) {
    .applications-grid[b-ltyba7batt] {
        grid-template-columns: 1fr;
    }

    .stage-header[b-ltyba7batt] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: stretch;
    }

    .stage-actions[b-ltyba7batt] {
        justify-content: flex-end;
    }

    .bulk-actions[b-ltyba7batt] {
        flex-wrap: wrap;
    }
}
/* /Pages/Recruiter/ApplicationsPages/ApplicationDetail.razor.rz.scp.css */
/* ========================================
   ApplicationDetail - Enhanced Styling
   Focused on clarity, hierarchy, and user-friendliness
   ======================================== */

/* ========================================
   Applicant Navigation Bar
   [Prev] [-- Search --] [X of N] [Next]
   ======================================== */

[b-6zl79zfxi3] .applicant-nav-bar {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 1rem;
    padding: 0.5rem 0.625rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

/* Prev / Next Buttons */
[b-6zl79zfxi3] .anav-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: var(--bg-page);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    transition: all 0.15s ease;
    white-space: nowrap;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .anav-btn:hover:not(:disabled) {
    background: var(--theme-primary-light);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .anav-btn:disabled {
    opacity: 0.4;
    cursor: not-allowed;
}

/* Position Indicator */
[b-6zl79zfxi3] .anav-position {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    flex-shrink: 0;
    padding: 0 0.25rem;
}

/* Search Box */
[b-6zl79zfxi3] .anav-search-wrapper {
    position: relative;
    flex: 1 1 0;
    min-width: 80px;
    overflow: visible;
}

[b-6zl79zfxi3] .anav-search-box {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.4375rem 0.75rem;
    background: var(--bg-page);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .anav-search-box.focused {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

[b-6zl79zfxi3] .anav-search-box i {
    color: var(--text-muted);
    font-size: 0.875rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .anav-search-box input {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
    padding: 0;
}

[b-6zl79zfxi3] .anav-search-box input::placeholder {
    color: var(--text-muted);
}

[b-6zl79zfxi3] .anav-search-clear {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    border: none;
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-secondary);
    font-size: 0.625rem;
    flex-shrink: 0;
    padding: 0;
}

[b-6zl79zfxi3] .anav-search-clear:hover {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

/* Jump Results Dropdown */
[b-6zl79zfxi3] .anav-jump-results {
    position: absolute;
    left: 0;
    right: 0;
    top: 100%;
    margin-top: 4px;
    background: var(--bg-page);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.12);
    z-index: 100;
    max-height: 360px;
    overflow-y: auto;
}

[b-6zl79zfxi3] .anav-jump-item {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    border: none;
    background: transparent;
    cursor: pointer;
    text-align: left;
    transition: background 0.1s ease;
}

[b-6zl79zfxi3] .anav-jump-item:hover {
    background: var(--bg-surface);
}

[b-6zl79zfxi3] .anav-jump-item.active {
    background: var(--theme-primary-light);
}

[b-6zl79zfxi3] .anav-jump-item:not(:last-child) {
    border-bottom: 1px solid var(--border-color-light);
}

[b-6zl79zfxi3] .anav-jump-avatar {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-indigo), var(--theme-purple));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 700;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .anav-jump-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
}

[b-6zl79zfxi3] .anav-jump-name {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6zl79zfxi3] .anav-jump-index {
    font-size: 0.6875rem;
    color: var(--text-secondary);
}

[b-6zl79zfxi3] .anav-jump-pos {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    flex-shrink: 0;
}

[b-6zl79zfxi3] .anav-jump-check {
    color: var(--theme-primary);
    font-size: 1rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .anav-jump-more {
    padding: 0.375rem 0.75rem;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-align: center;
    border-top: 1px solid var(--border-color-light);
}

/* Responsive */
@media (max-width: 768px) {
    [b-6zl79zfxi3] .anav-btn-label {
        display: none;
    }

    [b-6zl79zfxi3] .anav-btn {
        padding: 0.4375rem;
    }

    [b-6zl79zfxi3] .anav-position {
        font-size: 0.75rem;
    }
}

@media (max-width: 480px) {
    [b-6zl79zfxi3] .applicant-nav-bar {
        gap: 0.375rem;
        padding: 0.375rem;
    }

    [b-6zl79zfxi3] .anav-search-box {
        padding: 0.375rem 0.5rem;
    }
}

/* ========================================
   Quick Stats - Compact Card Style
   ======================================== */

[b-6zl79zfxi3] .quick-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

[b-6zl79zfxi3] .quick-stat {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-color);
    transition: all 0.15s ease;
    flex: 1;
    min-width: 140px;
    max-width: 240px;
}

[b-6zl79zfxi3] .quick-stat:hover {
    border-color: var(--theme-primary);
}

[b-6zl79zfxi3] .quick-stat .stat-icon {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .quick-stat .stat-icon.completed-stages {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .quick-stat .stat-icon.current-stage {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

[b-6zl79zfxi3] .quick-stat .stat-icon.result {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .quick-stat .stat-icon.admission {
    background: var(--theme-purple);
    color: var(--theme-purple-emphasis);
}

[b-6zl79zfxi3] .quick-stat .stat-content {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

[b-6zl79zfxi3] .quick-stat .stat-value {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6zl79zfxi3] .quick-stat .stat-label {
    font-size: 0.625rem;
    color: var(--text-secondary);
    line-height: 1.2;
}

[b-6zl79zfxi3] .quick-stat.admitted-stat {
    background: rgba(147, 51, 234, 0.05);
    border-color: rgba(147, 51, 234, 0.2);
}

/* ========================================
   Detail Card Components - Compact
   ======================================== */

[b-6zl79zfxi3] .detail-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 1rem;
    overflow: hidden;
}

[b-6zl79zfxi3] .detail-card .card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 1rem;
    background: var(--bg-secondary);
    border-bottom: 1px solid var(--border-color);
}

[b-6zl79zfxi3] .detail-card .card-title {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-weight: 600;
    font-size: 0.8125rem;
    color: var(--text-primary);
    margin: 0;
}

[b-6zl79zfxi3] .detail-card .card-title i {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .detail-card .card-content {
    padding: 0.75rem 1rem;
}

/* ========================================
   Info Grid Layout - Compact Inline Style
   ======================================== */

[b-6zl79zfxi3] .info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.375rem 1.5rem;
}

[b-6zl79zfxi3] .info-item {
    display: flex;
    align-items: baseline;
    gap: 0.375rem;
    padding: 0.25rem 0;
    border-bottom: 1px dashed var(--border-color);
}

[b-6zl79zfxi3] .info-item:nth-last-child(-n+2) {
    border-bottom: none;
}

[b-6zl79zfxi3] .info-item.full-width {
    grid-column: 1 / -1;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
}

[b-6zl79zfxi3] .info-label {
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.25px;
    font-weight: 500;
    white-space: nowrap;
    min-width: 85px;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .info-value {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    word-break: break-word;
    line-height: 1.25;
}

/* Contact Links - Compact */
[b-6zl79zfxi3] .info-value .contact-link {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--theme-primary);
    text-decoration: none;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .info-value .contact-link:hover {
    text-decoration: underline;
}

[b-6zl79zfxi3] .info-value .contact-link i {
    font-size: 0.875rem;
}

/* Result Value with Verified Badge */
[b-6zl79zfxi3] .info-value.result-value {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

[b-6zl79zfxi3] .verified-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--theme-success-emphasis);
    background: var(--theme-success-subtle);
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
}

[b-6zl79zfxi3] .verified-badge i {
    font-size: 0.75rem;
}

/* Note Value */
[b-6zl79zfxi3] .info-value.note-value {
    background: var(--bg-secondary);
    padding: 0.625rem 0.875rem;
    border-radius: 6px;
    font-style: italic;
    color: var(--text-secondary);
    border-left: 2px solid var(--theme-primary);
    font-size: 0.8125rem;
    line-height: 1.4;
    width: 100%;
}

/* ========================================
   Subsection Styles - Compact
   ======================================== */

[b-6zl79zfxi3] .subsection {
    margin-top: 0.625rem;
    padding-top: 0.625rem;
    border-top: 1px solid var(--border-color);
}

[b-6zl79zfxi3] .subsection-title {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.375rem;
}

[b-6zl79zfxi3] .subsection-title i {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* Info Section Headers - for grouped applicant info */
[b-6zl79zfxi3] .info-section-header {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0.75rem 0 0.375rem 0;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid var(--border-color);
}

[b-6zl79zfxi3] .info-section-header:first-child {
    margin-top: 0;
}

[b-6zl79zfxi3] .info-section-header i {
    font-size: 0.8rem;
    color: var(--theme-primary);
}

/* A-Level Section - Distinct amber styling matching Apply form */
[b-6zl79zfxi3] .alevel-section {
    background: var(--theme-warning-subtle);
    border: 1px solid var(--theme-warning-text);
    border-radius: 8px;
    padding: 0.5rem 0.75rem 0.625rem;
    margin-top: 0.75rem;
}

[b-6zl79zfxi3] .alevel-section .info-section-header.alevel-header {
    color: var(--theme-warning-text);
    border-bottom-color: var(--theme-warning-text);
    margin-top: 0;
}

[b-6zl79zfxi3] .alevel-section .info-section-header.alevel-header i {
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .alevel-section .info-item {
    border-bottom-color: rgba(252, 211, 77, 0.4);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .alevel-section {
    background: rgba(217, 119, 6, 0.08);
    border-color: rgba(252, 211, 77, 0.3);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .alevel-section .info-section-header.alevel-header {
    color: var(--theme-warning);
    border-bottom-color: rgba(252, 211, 77, 0.3);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .alevel-section .info-section-header.alevel-header i {
    color: var(--theme-warning);
}

/* Application Channel Badge */
[b-6zl79zfxi3] .channel-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem;
    border-radius: 12px;
    font-size: 0.7rem;
    font-weight: 600;
}

[b-6zl79zfxi3] .channel-badge.portal {
    background: var(--theme-info-subtle);
    color: var(--theme-info-text);
    border: 1px solid var(--theme-info-text);
}

[b-6zl79zfxi3] .channel-badge.placement {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
    border: 1px solid var(--theme-warning-text);
}

[b-6zl79zfxi3] .user-account-info {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.625rem;
    background: var(--bg-secondary);
    border-radius: 6px;
}

[b-6zl79zfxi3] .user-avatar {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--theme-primary);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.6875rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .user-details {
    display: flex;
    flex-direction: column;
    gap: 0;
}

[b-6zl79zfxi3] .user-name {
    font-weight: 600;
    font-size: 0.75rem;
    color: var(--text-primary);
}

[b-6zl79zfxi3] .user-contact {
    font-size: 0.6875rem;
    color: var(--text-secondary);
}

/* Progress Indicator */
[b-6zl79zfxi3] .progress-indicator {
    font-size: 0.75rem;
    color: var(--text-secondary);
    background: var(--bg-surface);
    padding: 0.25rem 0.625rem;
    border-radius: 12px;
}

[b-6zl79zfxi3] .progress-indicator.cancelled {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger-emphasis);
    font-weight: 600;
}

[b-6zl79zfxi3] .progress-indicator.cancelled i {
    font-size: 0.875rem;
}

/* ========================================
   Cancellation Banner
   ======================================== */

[b-6zl79zfxi3] .cancellation-banner {
    display: flex;
    gap: 1rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.08) 0%, rgba(239, 68, 68, 0.04) 100%);
    border: 1px solid rgba(239, 68, 68, 0.3);
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

[b-6zl79zfxi3] .cancellation-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger-emphasis);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .cancellation-icon i {
    font-size: 1.5rem;
}

[b-6zl79zfxi3] .cancellation-content {
    flex: 1;
    min-width: 0;
}

[b-6zl79zfxi3] .cancellation-title {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-danger-emphasis);
    margin: 0 0 0.375rem 0;
}

[b-6zl79zfxi3] .cancellation-message {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0 0 0.75rem 0;
    line-height: 1.5;
}

[b-6zl79zfxi3] .cancellation-details {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.5rem;
}

[b-6zl79zfxi3] .cancellation-detail {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

[b-6zl79zfxi3] .cancellation-detail i {
    font-size: 1rem;
    color: var(--theme-danger-emphasis);
    opacity: 0.7;
}

[b-6zl79zfxi3] .cancellation-detail strong {
    color: var(--text-primary);
    font-weight: 600;
}

[b-6zl79zfxi3] .cancellation-detail.full-width {
    flex-basis: 100%;
}

@media (max-width: 576px) {
    [b-6zl79zfxi3] .cancellation-banner {
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

    [b-6zl79zfxi3] .cancellation-icon {
        margin: 0 auto;
    }

    [b-6zl79zfxi3] .cancellation-details {
        justify-content: center;
    }

    [b-6zl79zfxi3] .cancellation-detail.full-width {
        justify-content: center;
    }
}

/* Responsive Info Grid */
@media (max-width: 768px) {
    [b-6zl79zfxi3] .info-grid {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }

    [b-6zl79zfxi3] .info-item {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.125rem;
    }

    [b-6zl79zfxi3] .quick-stats {
        flex-direction: column;
    }

    [b-6zl79zfxi3] .quick-stat {
        max-width: none;
    }
}

/* Student Avatar Badge */
[b-6zl79zfxi3] .student-avatar-badge {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.2);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.875rem;
    letter-spacing: 0.5px;
    flex-shrink: 0;
    margin-right: 0.25rem;
}

/* Status Badges */
[b-6zl79zfxi3] .status-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 12px;
    font-size: 0.6875rem;
    font-weight: 600;
    white-space: nowrap;
}

[b-6zl79zfxi3] .status-badge i {
    font-size: 0.6875rem;
}

[b-6zl79zfxi3] .status-badge.draft {
    background: rgba(234, 179, 8, 0.2);
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .status-badge.cancelled {
    background: rgba(239, 68, 68, 0.2);
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .status-badge.admitted {
    background: rgba(34, 197, 94, 0.2);
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .status-badge.active {
    background: rgba(59, 130, 246, 0.2);
    color: var(--theme-info-emphasis);
}

[b-6zl79zfxi3] .created-date {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    font-size: 0.6875rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.9);
}

/* ========================================
   Application Journey Timeline - Compact
   ======================================== */

[b-6zl79zfxi3] .timeline {
    position: relative;
    padding-left: 0.75rem;
}

[b-6zl79zfxi3] .timeline::before {
    content: '';
    position: absolute;
    left: 13px;
    top: 20px;
    bottom: 20px;
    width: 2px;
    background: var(--border-color);
    border-radius: 1px;
}

/* Timeline content vocabulary (.timeline-header/.timeline-title/.timeline-level/.timeline-status/.timeline-details/.timeline-actions)
   used to be here; now centralised in StageTimeline.razor.css. Page-specific overrides remain below
   (timeline-item / timeline-marker wrapper rules for the ApplicationJourneyCard child component, plus
   the rejection/appeal/admission-status/process-stage-animated rules that are page-specific). */
[b-6zl79zfxi3] .timeline-item {
    position: relative;
    padding-left: 2.25rem;
    padding-bottom: 1rem;
}

[b-6zl79zfxi3] .timeline-item:last-child {
    padding-bottom: 0;
}

[b-6zl79zfxi3] .timeline-marker {
    position: absolute;
    left: 0;
    top: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--bg-surface);
    border: 2px solid var(--border-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    z-index: 1;
}

[b-6zl79zfxi3] .timeline-item.completed .timeline-marker {
    background: var(--theme-success-subtle);
    border-color: var(--theme-success-emphasis);
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .timeline-item.rejected .timeline-marker,
[b-6zl79zfxi3] .timeline-item.rejected-conditional .timeline-marker {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger-emphasis);
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .timeline-item.rejected-waitlisted .timeline-marker {
    background: var(--theme-warning-subtle);
    border-color: var(--theme-warning-emphasis);
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .timeline-item.current .timeline-marker {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
    box-shadow: 0 0 0 3px rgba(var(--theme-primary-rgb), 0.2);
}

[b-6zl79zfxi3] .timeline-item.current .timeline-marker i {
    animation: spin-b-6zl79zfxi3 1.5s linear infinite;
}

@keyframes spin-b-6zl79zfxi3 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

[b-6zl79zfxi3] .timeline-content {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 0.875rem;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .timeline-item:hover .timeline-content {
    border-color: rgba(var(--theme-primary-rgb), 0.3);
}

[b-6zl79zfxi3] .timeline-item.current .timeline-content {
    border-color: var(--theme-primary);
    background: rgba(var(--theme-primary-rgb), 0.03);
}

/* Rejection & Appeal Badges */
[b-6zl79zfxi3] .rejection-info {
    background: var(--theme-danger-subtle);
    padding: 0.625rem;
    border-radius: 6px;
    border: 1px solid var(--theme-danger-border);
}

[b-6zl79zfxi3] .rejection-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
}

[b-6zl79zfxi3] .rejection-badge.soft,
[b-6zl79zfxi3] .rejection-badge.conditional {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .rejection-badge.hard {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .rejection-badge.waitlisted {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

[b-6zl79zfxi3] .rejection-reason {
    display: block;
    margin-top: 0.5rem;
    font-size: 0.75rem;
    color: var(--theme-danger-text);
    line-height: 1.4;
}

[b-6zl79zfxi3] .appeal-info {
    margin-top: 0.5rem;
}

[b-6zl79zfxi3] .appeal-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 500;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
}

[b-6zl79zfxi3] .appeal-badge.pending {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .appeal-badge.submitted {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

[b-6zl79zfxi3] .appeal-badge.approved {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .appeal-badge.denied,
[b-6zl79zfxi3] .appeal-badge.expired {
    background: var(--theme-gray-100);
    color: var(--theme-gray-500);
}

[b-6zl79zfxi3] .process-stage-animated {
    animation: pulse-glow-b-6zl79zfxi3 2s infinite;
}

@keyframes pulse-glow-b-6zl79zfxi3 {
    0%, 100% {
        opacity: 1;
        box-shadow: 0 0 0 0 rgba(var(--theme-success-rgb, 34, 197, 94), 0.4);
    }
    50% {
        opacity: 0.9;
        box-shadow: 0 0 0 6px rgba(var(--theme-success-rgb, 34, 197, 94), 0);
    }
}

/* Admission Status Change */
[b-6zl79zfxi3] .admission-status-change {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding-top: 0.5rem;
    margin-top: 0.375rem;
    border-top: 1px dashed var(--border-color);
}

[b-6zl79zfxi3] .status-change-label {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    white-space: nowrap;
}

[b-6zl79zfxi3] .status-change-label i {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .admission-status-change :deep(.fsh-select) {
    min-width: 130px;
    max-width: 170px;
}

[b-6zl79zfxi3] .status-updating {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}

@media (max-width: 640px) {
    [b-6zl79zfxi3] .admission-status-change {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.375rem;
    }
}

[b-6zl79zfxi3] .empty-timeline {
    text-align: center;
    padding: 2rem 1rem;
    color: var(--text-secondary);
}

[b-6zl79zfxi3] .empty-timeline i {
    font-size: 2rem;
    margin-bottom: 0.5rem;
    display: block;
    color: var(--text-muted);
}

/* ========================================
   Sidebar Cards - Compact
   ======================================== */

[b-6zl79zfxi3] .sidebar-card {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 0.875rem;
}

[b-6zl79zfxi3] .sidebar-card:last-child {
    margin-bottom: 0;
}

[b-6zl79zfxi3] .sidebar-card-header {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--bg-secondary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

[b-6zl79zfxi3] .sidebar-card-header i {
    font-size: 1rem;
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .sidebar-card-header .view-all-link {
    margin-left: auto;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--theme-primary);
    text-decoration: none;
}

[b-6zl79zfxi3] .sidebar-card-header .view-all-link:hover {
    text-decoration: underline;
}

[b-6zl79zfxi3] .sidebar-card-content {
    padding: 0.875rem 1rem;
}

/* Vacancy Details - Compact */
[b-6zl79zfxi3] .vacancy-title {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.25rem;
    line-height: 1.3;
}

[b-6zl79zfxi3] .vacancy-description {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-bottom: 0.75rem;
    max-height: 60px;
    overflow: hidden;
    line-height: 1.4;
}

[b-6zl79zfxi3] .vacancy-dates {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    margin-bottom: 0.75rem;
    padding: 0.625rem 0.75rem;
    background: var(--bg-secondary);
    border-radius: 6px;
}

[b-6zl79zfxi3] .date-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.75rem;
}

[b-6zl79zfxi3] .date-label {
    color: var(--text-muted);
    font-weight: 500;
}

[b-6zl79zfxi3] .date-value {
    font-weight: 600;
    color: var(--text-primary);
}

[b-6zl79zfxi3] .date-value.active {
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .date-value.warning {
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .required-grade {
    background: rgba(var(--theme-primary-rgb), 0.06);
    padding: 0.625rem 0.75rem;
    border-radius: 6px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

[b-6zl79zfxi3] .grade-label {
    font-size: 0.6875rem;
    color: var(--text-secondary);
    font-weight: 500;
    text-transform: uppercase;
}

[b-6zl79zfxi3] .grade-value {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-primary);
}

/* Attachments - Compact */
[b-6zl79zfxi3] .manage-attachments-btn {
    margin-left: auto;
    background: none;
    border: 1px solid var(--border-color);
    color: var(--text-muted);
    cursor: pointer;
    padding: 0.2rem 0.4rem;
    border-radius: 4px;
    font-size: 0.75rem;
    line-height: 1;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .manage-attachments-btn:hover {
    background: var(--theme-primary);
    color: white;
    border-color: var(--theme-primary);
}

[b-6zl79zfxi3] .attachment-count {
    margin-left: 0;
    background: var(--theme-primary);
    color: white;
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.125rem 0.5rem;
    border-radius: 10px;
    min-width: 20px;
    text-align: center;
}

[b-6zl79zfxi3] .attachments-list {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

[b-6zl79zfxi3] .attachment-item {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0.625rem;
    background: var(--bg-secondary);
    border-radius: 6px;
    text-decoration: none;
    color: inherit;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .attachment-item:hover {
    background: rgba(var(--theme-primary-rgb), 0.08);
}

[b-6zl79zfxi3] .attachment-icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    color: var(--theme-primary);
    background: rgba(var(--theme-primary-rgb), 0.1);
    border-radius: 6px;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .attachment-info {
    flex: 1;
    min-width: 0;
}

[b-6zl79zfxi3] .attachment-name {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6zl79zfxi3] .attachment-action {
    display: block;
    font-size: 0.6875rem;
    color: var(--text-muted);
}

[b-6zl79zfxi3] .attachment-item:hover .attachment-action {
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .attachment-item > i:last-child {
    color: var(--text-muted);
    font-size: 0.75rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .no-attachments {
    text-align: center;
    padding: 1rem 0.75rem;
    color: var(--text-muted);
}

[b-6zl79zfxi3] .no-attachments i {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
    display: block;
    opacity: 0.5;
}

[b-6zl79zfxi3] .no-attachments p {
    margin: 0;
    font-size: 0.8125rem;
}

/* View History - Compact */
[b-6zl79zfxi3] .view-history-list {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

[b-6zl79zfxi3] .view-history-item {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.375rem;
    border-radius: 6px;
    transition: background 0.15s ease;
}

[b-6zl79zfxi3] .view-history-item:hover {
    background: var(--bg-secondary);
}

[b-6zl79zfxi3] .viewer-avatar {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--bg-secondary);
    border: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    flex-shrink: 0;
}

[b-6zl79zfxi3] .viewer-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0;
}

[b-6zl79zfxi3] .viewer-name {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6zl79zfxi3] .view-time {
    font-size: 0.6875rem;
    color: var(--text-muted);
}

/* Quick Actions Card - Compact */
[b-6zl79zfxi3] .actions-card .sidebar-card-header i {
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .quick-actions-list {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

[b-6zl79zfxi3] .quick-action-btn {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    width: 100%;
    padding: 0.5rem 0.75rem;
    background: var(--bg-secondary);
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .quick-action-btn:hover {
    background: rgba(var(--theme-primary-rgb), 0.08);
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .quick-action-btn i {
    font-size: 1rem;
    color: var(--text-secondary);
    width: 18px;
    text-align: center;
}

[b-6zl79zfxi3] .quick-action-btn:hover i {
    color: var(--theme-primary);
}

/* ========================================
   Offer Card Styles - Enhanced
   ======================================== */

[b-6zl79zfxi3] .offer-card {
    border-color: rgba(var(--theme-primary-rgb), 0.3);
    box-shadow: 0 4px 16px rgba(var(--theme-primary-rgb), 0.08);
}

[b-6zl79zfxi3] .offer-card .card-header {
    background: linear-gradient(135deg, rgba(var(--theme-primary-rgb), 0.1) 0%, rgba(var(--theme-primary-rgb), 0.05) 100%);
}

[b-6zl79zfxi3] .offer-card .card-title i {
    background: var(--theme-primary);
    color: white;
    padding: 0.25rem;
    border-radius: 4px;
}

[b-6zl79zfxi3] .offer-status-badge {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.375rem 0.75rem;
    border-radius: 20px;
}

[b-6zl79zfxi3] .offer-status-badge.pending {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .offer-status-badge.accepted {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .offer-status-badge.declined {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .offer-status-badge.expired {
    background: var(--theme-gray-100);
    color: var(--theme-gray-500);
}

[b-6zl79zfxi3] .offer-status-badge.deposit-pending {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

[b-6zl79zfxi3] .offer-details-grid {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

[b-6zl79zfxi3] .offer-info-row {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
}

[b-6zl79zfxi3] .offer-info-row.acceptance-row {
    background: rgba(34, 197, 94, 0.05);
    padding: 1rem;
    border-radius: 10px;
    border: 1px solid rgba(34, 197, 94, 0.2);
}

[b-6zl79zfxi3] .offer-info-row.decline-row {
    background: rgba(239, 68, 68, 0.05);
    padding: 1rem;
    border-radius: 10px;
    border: 1px solid rgba(239, 68, 68, 0.2);
}

[b-6zl79zfxi3] .offer-info-item {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

[b-6zl79zfxi3] .offer-info-item.full-width {
    grid-column: 1 / -1;
}

[b-6zl79zfxi3] .offer-info-item .offer-label {
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.75px;
    font-weight: 600;
}

[b-6zl79zfxi3] .offer-info-item .offer-value {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

[b-6zl79zfxi3] .offer-info-item .offer-value.overdue {
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .offer-info-item .offer-value.urgent {
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .offer-info-item .offer-value.success {
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .offer-info-item .offer-value.danger {
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .offer-not-sent {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1.5rem;
    gap: 1.25rem;
}

[b-6zl79zfxi3] .offer-icon {
    width: 64px;
    height: 64px;
    border-radius: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
}

[b-6zl79zfxi3] .offer-icon.pending {
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-border) 100%);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .offer-message h4 {
    margin: 0 0 0.375rem;
    font-size: 1.0625rem;
    font-weight: 600;
}

[b-6zl79zfxi3] .offer-message p {
    margin: 0;
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

[b-6zl79zfxi3] .offer-actions {
    display: flex;
    gap: 0.75rem;
    margin-top: 1.25rem;
    padding-top: 1.25rem;
    border-top: 1px solid var(--border-color);
}

[b-6zl79zfxi3] .deposit-section {
    background: linear-gradient(135deg, var(--bg-secondary) 0%, rgba(var(--theme-primary-rgb), 0.03) 100%);
    padding: 1.25rem;
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

[b-6zl79zfxi3] .deposit-header {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-weight: 600;
    font-size: 0.9375rem;
    margin-bottom: 1rem;
}

[b-6zl79zfxi3] .deposit-header i {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .deposit-badge {
    margin-left: auto;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
}

[b-6zl79zfxi3] .deposit-badge.paid {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .deposit-badge.pending {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .deposit-details {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

[b-6zl79zfxi3] .deposit-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.875rem;
}

[b-6zl79zfxi3] .deposit-label {
    color: var(--text-secondary);
}

[b-6zl79zfxi3] .deposit-value {
    font-weight: 600;
}

[b-6zl79zfxi3] .deposit-value.success {
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .waitlist-promotion-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-border) 100%);
    color: var(--theme-warning-text);
    padding: 1rem;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
}

[b-6zl79zfxi3] .waitlist-promotion-badge i {
    font-size: 1.125rem;
}

/* ========================================
   ADMISSION LETTER SECTION
   ======================================== */

@keyframes letter-slide-up-b-6zl79zfxi3 {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes seal-pulse-b-6zl79zfxi3 {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(5, 150, 105, 0.15);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(5, 150, 105, 0);
    }
}

[b-6zl79zfxi3] .admission-letter-section {
    margin-top: 1.25rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, rgba(5, 150, 105, 0.04) 0%, rgba(13, 148, 136, 0.02) 100%);
    border: 1px solid rgba(5, 150, 105, 0.15);
    border-top: 3px solid;
    border-image: linear-gradient(90deg, var(--theme-success-emphasis), var(--theme-primary-emphasis)) 1;
    border-radius: 0 0 12px 12px;
    animation: letter-slide-up-b-6zl79zfxi3 0.4s cubic-bezier(0.22, 1, 0.36, 1) both;
}

[b-6zl79zfxi3] .letter-header {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    margin-bottom: 1rem;
}

[b-6zl79zfxi3] .letter-seal {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-success-emphasis), var(--theme-primary-emphasis));
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    animation: seal-pulse-b-6zl79zfxi3 3s ease-in-out infinite;
}

[b-6zl79zfxi3] .letter-seal i {
    font-size: 1.25rem;
    color: var(--text-inverse);
}

[b-6zl79zfxi3] .letter-header-info {
    flex: 1;
    min-width: 0;
}

[b-6zl79zfxi3] .letter-title {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-success-emphasis);
    margin: 0;
    line-height: 1.3;
}

[b-6zl79zfxi3] .letter-generated-date {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

[b-6zl79zfxi3] .letter-header-badges {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
    flex-wrap: wrap;
}

[b-6zl79zfxi3] .letter-download-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    background: rgba(5, 150, 105, 0.08);
    border: 1px solid rgba(5, 150, 105, 0.2);
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .letter-download-badge i {
    font-size: 0.8125rem;
}

[b-6zl79zfxi3] .letter-download-badge .download-time {
    color: rgba(5, 150, 105, 0.7);
    font-size: 0.65rem;
    font-weight: 500;
    margin-left: 0.125rem;
}

[b-6zl79zfxi3] .letter-location-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-radius: 20px;
    font-size: 0.7rem;
    font-weight: 500;
    color: var(--theme-info);
}

[b-6zl79zfxi3] .letter-location-badge i {
    font-size: 0.75rem;
}

[b-6zl79zfxi3] .letter-location-badge a {
    color: inherit;
    text-decoration: none;
}

[b-6zl79zfxi3] .letter-location-badge a:hover {
    text-decoration: underline;
}

[b-6zl79zfxi3] .letter-location-badge .location-time {
    color: var(--text-secondary);
    font-size: 0.65rem;
    margin-left: 0.125rem;
}

[b-6zl79zfxi3] .letter-status-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

[b-6zl79zfxi3] .letter-status-badge i {
    font-size: 0.8125rem;
}

[b-6zl79zfxi3] .letter-status-badge.status-generated {
    background: rgba(5, 150, 105, 0.1);
    color: var(--theme-success-emphasis);
    border: 1px solid rgba(5, 150, 105, 0.25);
}

[b-6zl79zfxi3] .letter-status-badge.status-issued {
    background: rgba(14, 165, 233, 0.1);
    color: var(--theme-info-emphasis);
    border: 1px solid rgba(14, 165, 233, 0.25);
}

[b-6zl79zfxi3] .letter-status-badge.status-accepted {
    background: rgba(22, 163, 74, 0.1);
    color: var(--theme-success-emphasis);
    border: 1px solid rgba(22, 163, 74, 0.25);
}

[b-6zl79zfxi3] .letter-status-badge.status-expired {
    background: rgba(107, 114, 128, 0.1);
    color: var(--theme-gray-500);
    border: 1px solid rgba(107, 114, 128, 0.25);
}

[b-6zl79zfxi3] .letter-status-badge.status-revoked {
    background: rgba(220, 38, 38, 0.1);
    color: var(--theme-danger-emphasis);
    border: 1px solid rgba(220, 38, 38, 0.25);
}

[b-6zl79zfxi3] .letter-details-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 0.75rem;
    padding: 0.875rem;
    background: rgba(255, 255, 255, 0.6);
    border: 1px dashed rgba(5, 150, 105, 0.25);
    border-radius: 8px;
    margin-bottom: 1rem;
}

[b-6zl79zfxi3] .letter-detail-item {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
}

[b-6zl79zfxi3] .letter-detail-label {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

[b-6zl79zfxi3] .letter-detail-value {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-6zl79zfxi3] .letter-detail-value.verification-code {
    font-family: 'Courier New', Courier, monospace;
    color: var(--theme-success-emphasis);
    letter-spacing: 0.05em;
}

[b-6zl79zfxi3] .letter-detail-value.success {
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .letter-detail-value.expired {
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .days-remaining {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    margin-left: 0.25rem;
}

[b-6zl79zfxi3] .days-remaining.expired {
    color: var(--theme-danger-emphasis);
    font-weight: 600;
}

[b-6zl79zfxi3] .letter-actions {
    display: flex;
    gap: 0.625rem;
    align-items: center;
}

[b-6zl79zfxi3] .letter-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1.125rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
    line-height: 1.4;
}

[b-6zl79zfxi3] .letter-btn:disabled {
    opacity: 0.6;
    cursor: not-allowed;
}

[b-6zl79zfxi3] .letter-btn.primary {
    background: linear-gradient(135deg, var(--theme-success-emphasis), var(--theme-primary-emphasis));
    color: var(--text-inverse);
    box-shadow: 0 2px 6px rgba(5, 150, 105, 0.25);
}

[b-6zl79zfxi3] .letter-btn.primary:hover:not(:disabled) {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(5, 150, 105, 0.35);
}

[b-6zl79zfxi3] .letter-btn.primary:active:not(:disabled) {
    transform: translateY(0);
}

[b-6zl79zfxi3] .letter-btn.secondary {
    background: transparent;
    color: var(--theme-success-emphasis);
    border: 1px solid rgba(5, 150, 105, 0.35);
}

[b-6zl79zfxi3] .letter-btn.secondary:hover {
    background: rgba(5, 150, 105, 0.06);
    border-color: rgba(5, 150, 105, 0.5);
}

[b-6zl79zfxi3] .letter-btn i {
    font-size: 1rem;
}

[b-6zl79zfxi3] .letter-btn .spinner-sm {
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: var(--bg-surface);
    border-radius: 50%;
    animation: spin-b-6zl79zfxi3 0.6s linear infinite;
}

/* Dark mode */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .admission-letter-section {
    background: linear-gradient(135deg, rgba(5, 150, 105, 0.08) 0%, rgba(13, 148, 136, 0.04) 100%);
    border-color: rgba(5, 150, 105, 0.25);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-title {
    color: var(--theme-success);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-details-grid {
    background: rgba(0, 0, 0, 0.15);
    border-color: rgba(5, 150, 105, 0.2);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-detail-value.verification-code {
    color: var(--theme-success);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-download-badge {
    background: rgba(5, 150, 105, 0.15);
    border-color: rgba(5, 150, 105, 0.3);
    color: var(--theme-success);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-download-badge .download-time {
    color: rgba(52, 211, 153, 0.6);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-location-badge {
    background: rgba(59, 130, 246, 0.15);
    border-color: rgba(59, 130, 246, 0.3);
    color: var(--theme-info);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-location-badge .location-time {
    color: rgba(255, 255, 255, 0.5);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-btn.secondary {
    color: var(--theme-success);
    border-color: rgba(52, 211, 153, 0.35);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .letter-btn.secondary:hover {
    background: rgba(52, 211, 153, 0.1);
}

/* ========================================
   Responsive Design
   ======================================== */

@media (max-width: 1024px) {
    [b-6zl79zfxi3] .quick-stats {
        grid-template-columns: repeat(2, 1fr);
    }

    [b-6zl79zfxi3] .offer-info-row {
        grid-template-columns: 1fr;
    }

    [b-6zl79zfxi3] .letter-details-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    [b-6zl79zfxi3] .quick-stats {
        grid-template-columns: 1fr;
    }

    [b-6zl79zfxi3] .quick-stat {
        padding: 1rem;
    }

    [b-6zl79zfxi3] .detail-card .card-content {
        padding: 1.25rem;
    }

    [b-6zl79zfxi3] .timeline-content {
        padding: 1rem;
    }

    [b-6zl79zfxi3] .timeline-header {
        flex-direction: column;
        gap: 0.75rem;
    }

    [b-6zl79zfxi3] .timeline-actions {
        flex-direction: column;
    }

    [b-6zl79zfxi3] .timeline-actions > * {
        width: 100%;
    }

    [b-6zl79zfxi3] .letter-header {
        flex-wrap: wrap;
    }

    [b-6zl79zfxi3] .letter-header-badges {
        width: 100%;
        margin-top: 0.25rem;
        padding-left: calc(42px + 0.875rem); /* seal width + gap */
    }

    [b-6zl79zfxi3] .letter-actions {
        flex-direction: column;
    }

    [b-6zl79zfxi3] .letter-btn {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 576px) {
    [b-6zl79zfxi3] .detail-card .card-header {
        padding: 1rem;
    }

    [b-6zl79zfxi3] .detail-card .card-title i {
        width: 32px;
        height: 32px;
    }

    [b-6zl79zfxi3] .sidebar-card-content {
        padding: 1rem;
    }
}

/* ========================================
   Attachment Inline Preview Button
   ======================================== */

[b-6zl79zfxi3] .btn-icon-sm {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 6px;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .btn-icon-sm:hover {
    background: rgba(var(--theme-primary-rgb), 0.1);
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .btn-icon-sm i {
    font-size: 0.875rem;
}

[b-6zl79zfxi3] .attachment-item:hover .btn-icon-sm {
    color: var(--text-secondary);
}

[b-6zl79zfxi3] .attachment-item:hover .btn-icon-sm:hover {
    color: var(--theme-primary);
}

/* ========================================
   Cancel Application Dialog
   ======================================== */

[b-6zl79zfxi3] .cancel-dialog-content {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

[b-6zl79zfxi3] .cancel-warning {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 1rem;
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: 10px;
    color: var(--theme-danger-text);
}

[b-6zl79zfxi3] .cancel-warning i {
    font-size: 1.5rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

[b-6zl79zfxi3] .cancel-warning p {
    margin: 0;
    font-size: 0.9375rem;
    line-height: 1.5;
}

[b-6zl79zfxi3] .cancel-warning strong {
    font-weight: 600;
}

[b-6zl79zfxi3] .cancel-form-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

[b-6zl79zfxi3] .cancel-form-group label {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-6zl79zfxi3] .cancel-form-group label .required {
    color: var(--theme-danger);
}

[b-6zl79zfxi3] .cancel-form-select,
[b-6zl79zfxi3] .cancel-form-textarea {
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.9375rem;
    background: var(--bg-surface);
    color: var(--text-primary);
    transition: border-color 0.2s, box-shadow 0.2s;
}

[b-6zl79zfxi3] .cancel-form-select:focus,
[b-6zl79zfxi3] .cancel-form-textarea:focus {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15);
}

[b-6zl79zfxi3] .cancel-form-textarea {
    resize: vertical;
    min-height: 80px;
    font-family: inherit;
}

[b-6zl79zfxi3] .cancel-form-hint {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-style: italic;
}

[b-6zl79zfxi3] .cancel-checkbox-label {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    cursor: pointer;
    font-weight: 400 !important;
}

[b-6zl79zfxi3] .cancel-checkbox-label input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: var(--theme-primary);
    cursor: pointer;
}

[b-6zl79zfxi3] .cancel-checkbox-label span {
    font-size: 0.9375rem;
    color: var(--text-primary);
}

/* ========================================
   GOVERNMENT PLACEMENT BANNER
   ======================================== */

[b-6zl79zfxi3] .placement-banner {
    display: flex;
    gap: 1rem;
    padding: 1.25rem;
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

[b-6zl79zfxi3] .placement-banner-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .placement-banner-icon i {
    font-size: 1.5rem;
}

[b-6zl79zfxi3] .placement-banner-content {
    flex: 1;
    min-width: 0;
}

[b-6zl79zfxi3] .placement-banner-title {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
    line-height: 1.4;
}

[b-6zl79zfxi3] .placement-banner-subtitle {
    font-size: 0.875rem;
    margin: 0;
    line-height: 1.5;
    opacity: 0.85;
}

/* Merit - Green */
[b-6zl79zfxi3] .placement-banner.merit {
    background: linear-gradient(135deg, rgba(22, 163, 74, 0.08) 0%, rgba(22, 163, 74, 0.04) 100%);
    border: 1px solid rgba(22, 163, 74, 0.3);
}

[b-6zl79zfxi3] .placement-banner.merit .placement-banner-icon {
    background: rgba(22, 163, 74, 0.15);
    color: var(--theme-success-text);
}

[b-6zl79zfxi3] .placement-banner.merit .placement-banner-title {
    color: var(--theme-success-text);
}

[b-6zl79zfxi3] .placement-banner.merit .placement-banner-subtitle {
    color: var(--text-secondary);
}

/* Transfer In - Blue */
[b-6zl79zfxi3] .placement-banner.transfer-in {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.08) 0%, rgba(37, 99, 235, 0.04) 100%);
    border: 1px solid rgba(37, 99, 235, 0.3);
}

[b-6zl79zfxi3] .placement-banner.transfer-in .placement-banner-icon {
    background: rgba(37, 99, 235, 0.15);
    color: var(--theme-info-text);
}

[b-6zl79zfxi3] .placement-banner.transfer-in .placement-banner-title {
    color: var(--theme-info-text);
}

[b-6zl79zfxi3] .placement-banner.transfer-in .placement-banner-subtitle {
    color: var(--text-secondary);
}

/* Transfer Out - Orange/Warning (prominent) */
[b-6zl79zfxi3] .placement-banner.transfer-out {
    background: linear-gradient(135deg, rgba(234, 88, 12, 0.1) 0%, rgba(234, 88, 12, 0.05) 100%);
    border: 2px solid rgba(234, 88, 12, 0.4);
}

[b-6zl79zfxi3] .placement-banner.transfer-out .placement-banner-icon {
    background: rgba(234, 88, 12, 0.15);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .placement-banner.transfer-out .placement-banner-title {
    color: var(--theme-warning-text);
    font-size: 1.0625rem;
}

[b-6zl79zfxi3] .placement-banner.transfer-out .placement-banner-title strong {
    font-size: 1.125rem;
    text-decoration: underline;
    text-underline-offset: 2px;
}

[b-6zl79zfxi3] .placement-banner.transfer-out .placement-banner-subtitle {
    color: var(--text-secondary);
}

/* Not Considered - Red/Danger (prominent) */
[b-6zl79zfxi3] .placement-banner.not-considered {
    background: linear-gradient(135deg, rgba(220, 38, 38, 0.1) 0%, rgba(220, 38, 38, 0.05) 100%);
    border: 2px solid rgba(220, 38, 38, 0.4);
}

[b-6zl79zfxi3] .placement-banner.not-considered .placement-banner-icon {
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .placement-banner.not-considered .placement-banner-title {
    color: var(--theme-danger-emphasis);
    font-size: 1.0625rem;
}

[b-6zl79zfxi3] .placement-banner.not-considered .placement-banner-subtitle {
    color: var(--text-secondary);
}

[b-6zl79zfxi3] .placement-banner.special-consideration {
    background: linear-gradient(135deg, rgba(91, 33, 182, 0.1) 0%, rgba(91, 33, 182, 0.05) 100%);
    border: 2px solid rgba(91, 33, 182, 0.4);
}

[b-6zl79zfxi3] .placement-banner.special-consideration .placement-banner-icon {
    background: rgba(91, 33, 182, 0.15);
    color: var(--theme-purple-emphasis);
}

[b-6zl79zfxi3] .placement-banner.special-consideration .placement-banner-title {
    color: var(--theme-purple-emphasis);
    font-size: 1.0625rem;
}

[b-6zl79zfxi3] .placement-banner.special-consideration .placement-banner-subtitle {
    color: var(--text-secondary);
}

/* ========================================
   CHOICE MISMATCH BANNER
   ======================================== */

[b-6zl79zfxi3] .choice-mismatch-banner {
    display: flex;
    gap: 1rem;
    padding: 1.25rem;
    border-radius: 12px;
    margin-bottom: 1.5rem;
    background: linear-gradient(135deg, rgba(220, 38, 38, 0.08) 0%, rgba(220, 38, 38, 0.04) 100%);
    border: 2px solid rgba(220, 38, 38, 0.4);
}

[b-6zl79zfxi3] .choice-mismatch-banner .placement-banner-icon {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(220, 38, 38, 0.15);
    color: var(--theme-danger-emphasis);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .choice-mismatch-banner .placement-banner-icon i {
    font-size: 1.5rem;
}

[b-6zl79zfxi3] .choice-mismatch-banner .placement-banner-title {
    color: var(--theme-danger-emphasis);
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
}

[b-6zl79zfxi3] .choice-mismatch-banner .placement-banner-subtitle {
    color: var(--text-secondary);
    font-size: 0.875rem;
    margin: 0;
    line-height: 1.5;
}

[b-6zl79zfxi3] .choice-mismatch-banner .mismatch-note {
    font-style: italic;
    opacity: 0.8;
}

/* ========================================
   PLACEMENT CONTEXT NOTE (Timeline)
   ======================================== */

[b-6zl79zfxi3] .placement-context-note {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: 8px;
    margin-bottom: 1rem;
    font-size: 0.8125rem;
    line-height: 1.5;
}

[b-6zl79zfxi3] .placement-context-note i {
    font-size: 1.125rem;
    margin-top: 0.1rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .placement-context-note.transfer-out {
    background: rgba(234, 88, 12, 0.08);
    border: 1px solid rgba(234, 88, 12, 0.25);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .placement-context-note.transfer-out i {
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .placement-context-note.not-considered {
    background: rgba(217, 119, 6, 0.08);
    border: 1px solid rgba(217, 119, 6, 0.25);
    color: var(--theme-warning-text);
}

[b-6zl79zfxi3] .placement-context-note.not-considered i {
    color: var(--theme-warning-emphasis);
}

/* ========================================
   PLACEMENT BANNERS - Dark Mode
   ======================================== */

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.merit {
    background: linear-gradient(135deg, rgba(22, 163, 74, 0.12) 0%, rgba(22, 163, 74, 0.06) 100%);
    border-color: rgba(22, 163, 74, 0.35);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.merit .placement-banner-icon {
    background: rgba(22, 163, 74, 0.2);
    color: var(--theme-success);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.merit .placement-banner-title {
    color: var(--theme-success);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.transfer-in {
    background: linear-gradient(135deg, rgba(37, 99, 235, 0.12) 0%, rgba(37, 99, 235, 0.06) 100%);
    border-color: rgba(37, 99, 235, 0.35);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.transfer-in .placement-banner-icon {
    background: rgba(37, 99, 235, 0.2);
    color: var(--theme-info);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.transfer-in .placement-banner-title {
    color: var(--theme-info);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.transfer-out {
    background: linear-gradient(135deg, rgba(234, 88, 12, 0.15) 0%, rgba(234, 88, 12, 0.08) 100%);
    border-color: rgba(234, 88, 12, 0.45);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.transfer-out .placement-banner-icon {
    background: rgba(234, 88, 12, 0.2);
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.transfer-out .placement-banner-title {
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.not-considered {
    background: linear-gradient(135deg, rgba(220, 38, 38, 0.15) 0%, rgba(220, 38, 38, 0.08) 100%);
    border-color: rgba(220, 38, 38, 0.45);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.not-considered .placement-banner-icon {
    background: rgba(220, 38, 38, 0.2);
    color: var(--theme-danger);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.not-considered .placement-banner-title {
    color: var(--theme-danger);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.special-consideration {
    background: linear-gradient(135deg, rgba(91, 33, 182, 0.15) 0%, rgba(91, 33, 182, 0.08) 100%);
    border-color: rgba(91, 33, 182, 0.45);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.special-consideration .placement-banner-icon {
    background: rgba(91, 33, 182, 0.2);
    color: var(--theme-purple);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-banner.special-consideration .placement-banner-title {
    color: var(--theme-purple);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .choice-mismatch-banner {
    background: linear-gradient(135deg, rgba(220, 38, 38, 0.12) 0%, rgba(220, 38, 38, 0.06) 100%);
    border-color: rgba(220, 38, 38, 0.45);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .choice-mismatch-banner .placement-banner-icon {
    background: rgba(220, 38, 38, 0.2);
    color: var(--theme-danger);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .choice-mismatch-banner .placement-banner-title {
    color: var(--theme-danger);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-context-note.transfer-out {
    background: rgba(234, 88, 12, 0.12);
    border-color: rgba(234, 88, 12, 0.3);
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-context-note.transfer-out i {
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-context-note.not-considered {
    background: rgba(217, 119, 6, 0.12);
    border-color: rgba(217, 119, 6, 0.3);
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .placement-context-note.not-considered i {
    color: var(--theme-warning);
}

/* Responsive */
@media (max-width: 576px) {
    [b-6zl79zfxi3] .placement-banner {
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

    [b-6zl79zfxi3] .placement-banner-icon {
        margin: 0 auto;
    }

    [b-6zl79zfxi3] .choice-mismatch-banner {
        flex-direction: column;
        text-align: center;
        padding: 1rem;
    }

    [b-6zl79zfxi3] .choice-mismatch-banner .placement-banner-icon {
        margin: 0 auto;
    }
}

/* Share Access Link Modal */
.share-link-modal[b-6zl79zfxi3] {
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    background: var(--bg-surface);
    color: var(--text-primary);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.3);
    z-index: 1051;
    width: 480px;
    max-width: 95vw;
}

.share-link-header[b-6zl79zfxi3] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--theme-gray-200);
}

.share-link-header h3[b-6zl79zfxi3] {
    margin: 0;
    font-size: 1rem;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.share-link-close[b-6zl79zfxi3] {
    background: none;
    border: none;
    cursor: pointer;
    font-size: 1.1rem;
    color: var(--text-muted);
    padding: 0.25rem;
    border-radius: 4px;
}

.share-link-close:hover[b-6zl79zfxi3] {
    background: var(--bg-surface-alt);
    color: var(--text-primary);
}

.share-link-body[b-6zl79zfxi3] {
    padding: 1.25rem;
}

.share-link-applicant[b-6zl79zfxi3] {
    margin-bottom: 1rem;
    font-size: 0.9rem;
}

.share-link-applicant .text-muted[b-6zl79zfxi3] {
    color: var(--text-muted);
    margin-left: 0.5rem;
}

.share-link-url-box[b-6zl79zfxi3] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.share-link-input[b-6zl79zfxi3] {
    flex: 1;
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8rem;
    background: var(--bg-surface-alt);
    color: var(--text-primary);
}

.share-link-copy-btn[b-6zl79zfxi3] {
    padding: 0.5rem 1rem;
    border: 1px solid var(--theme-primary);
    border-radius: 6px;
    background: var(--theme-primary);
    color: white;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8rem;
    white-space: nowrap;
    transition: background 0.2s;
}

.share-link-copy-btn:hover[b-6zl79zfxi3] {
    opacity: 0.9;
}

.share-link-copy-btn.copied[b-6zl79zfxi3] {
    background: var(--theme-success);
    border-color: var(--theme-success);
}

.share-link-expiry[b-6zl79zfxi3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8rem;
    color: var(--theme-warning);
    background: var(--theme-warning-subtle);
    padding: 0.625rem 0.75rem;
    border-radius: 6px;
    border: 1px solid var(--theme-warning-border);
}

.share-link-spinner[b-6zl79zfxi3] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 2rem;
    color: var(--text-muted);
}

/* ===== Manage Attachments Dialog ===== */

[b-6zl79zfxi3] .manage-attachments-content {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

[b-6zl79zfxi3] .attachments-edit-section {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

[b-6zl79zfxi3] .attachments-edit-section .section-label {
    font-size: 0.8rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: var(--text-muted);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

[b-6zl79zfxi3] .attachment-edit-row {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.6rem 0.75rem;
    background: var(--bg-surface-sunken);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    transition: background 0.15s ease;
}

[b-6zl79zfxi3] .attachment-edit-row:hover {
    background: var(--bg-hover);
}

[b-6zl79zfxi3] .attachment-edit-icon {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--theme-primary-light, rgba(59, 130, 246, 0.1));
    color: var(--theme-primary);
    border-radius: 6px;
    font-size: 1rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .attachment-edit-info {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
}

[b-6zl79zfxi3] .attachment-edit-name {
    font-size: 0.85rem;
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6zl79zfxi3] .attachment-edit-meta {
    font-size: 0.7rem;
    color: var(--text-muted);
}

[b-6zl79zfxi3] .attachment-edit-actions {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .attachment-edit-actions .btn-replace,
[b-6zl79zfxi3] .attachment-edit-actions .btn-remove {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    cursor: pointer;
    font-size: 0.85rem;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .attachment-edit-actions .btn-replace {
    color: var(--theme-info);
}

[b-6zl79zfxi3] .attachment-edit-actions .btn-replace:hover {
    background: var(--theme-info);
    color: white;
    border-color: var(--theme-info);
}

[b-6zl79zfxi3] .attachment-edit-actions .btn-remove {
    color: var(--theme-danger);
}

[b-6zl79zfxi3] .attachment-edit-actions .btn-remove:hover {
    background: var(--theme-danger);
    color: white;
    border-color: var(--theme-danger);
}

[b-6zl79zfxi3] .add-attachment-form {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface-sunken);
    border: 1px dashed var(--border-color);
    border-radius: 8px;
}

[b-6zl79zfxi3] .add-attachment-row {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-6zl79zfxi3] .add-attachment-row :deep(.fsh-form-group) {
    margin-bottom: 0;
    flex: 1;
}

[b-6zl79zfxi3] .file-select-btn {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.45rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.825rem;
    color: var(--text-secondary);
    transition: all 0.15s ease;
    flex: 1;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-6zl79zfxi3] .file-select-btn:hover {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

[b-6zl79zfxi3] .file-select-btn i {
    flex-shrink: 0;
}

[b-6zl79zfxi3] .btn-clear-file {
    width: 28px;
    height: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.8rem;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .btn-clear-file:hover {
    color: var(--theme-danger);
    border-color: var(--theme-danger);
}

[b-6zl79zfxi3] .attachment-error {
    padding: 0.5rem 0.75rem;
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.2);
    border-radius: 6px;
    color: var(--theme-danger);
    font-size: 0.8rem;
    display: flex;
    align-items: center;
    gap: 0.4rem;
}

/* ========================================
   Dark Mode - Structural Overrides
   Applies to surfaces/cards/badges that use hardcoded
   light backgrounds or dark-on-light text. Status banners
   with gradient hero treatments are intentionally left as-is.
   ======================================== */

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .applicant-nav-bar,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-btn,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-search-box,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-jump-results,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .detail-card,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .quick-stat,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .sidebar-card,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .timeline-content,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .info-section-header,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .vacancy-title,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .offer-card,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .deposit-section,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .cancellation-banner {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-jump-item:hover,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-jump-item.active {
    background: var(--bg-surface-alt);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-position,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-jump-pos,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .anav-jump-index,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .info-label,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .vacancy-description,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .deposit-label,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .date-label,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .grade-label,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .view-time,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .viewer-name,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .created-date,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .empty-timeline {
    color: var(--text-muted);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .info-value,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .date-value,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .grade-value,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .deposit-value,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .offer-info-item,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .attachment-name,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .user-name {
    color: var(--text-primary);
}

/* Status / timeline markers - flip light bg+dark fg to translucent.
   .timeline-item.<state> .timeline-marker rules remain here because these are
   page-specific wrappers (ApplicationJourneyCard child); .timeline-status
   dark-mode overrides now live in StageTimeline.razor.css. */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .timeline-item.completed .timeline-marker {
    background: rgba(22, 163, 74, 0.18);
    border-color: rgba(22, 163, 74, 0.5);
    color: var(--theme-success);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .timeline-item.rejected .timeline-marker,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .timeline-item.rejected-conditional .timeline-marker {
    background: rgba(220, 38, 38, 0.18);
    border-color: rgba(220, 38, 38, 0.5);
    color: var(--theme-danger);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .timeline-item.rejected-waitlisted .timeline-marker {
    background: rgba(217, 119, 6, 0.18);
    border-color: rgba(217, 119, 6, 0.5);
    color: var(--theme-warning);
}

/* Status badges in detail header */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .status-badge.draft {
    color: var(--theme-warning-text);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .status-badge.cancelled {
    color: var(--theme-danger);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .status-badge.admitted {
    color: var(--theme-success);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .status-badge.active {
    color: var(--theme-info);
}

/* Quick-stat icons (light status pills) */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .quick-stat .stat-icon.completed-stages {
    background: rgba(22, 163, 74, 0.18);
    color: var(--theme-success);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .quick-stat .stat-icon.current-stage {
    background: rgba(37, 99, 235, 0.18);
    color: var(--theme-info);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .quick-stat .stat-icon.result {
    background: rgba(217, 119, 6, 0.18);
    color: var(--theme-warning);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .quick-stat .stat-icon.admission {
    background: rgba(147, 51, 234, 0.18);
    color: var(--theme-purple);
}

/* Channel badges */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .channel-badge.portal {
    background: rgba(59, 130, 246, 0.18);
    border-color: rgba(59, 130, 246, 0.4);
    color: var(--theme-info);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .channel-badge.placement {
    background: rgba(217, 119, 6, 0.18);
    border-color: rgba(217, 119, 6, 0.4);
    color: var(--theme-warning);
}

/* Offer status badges */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .offer-status-badge.pending {
    background: rgba(217, 119, 6, 0.18);
    color: var(--theme-warning);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .offer-status-badge.accepted {
    background: rgba(22, 163, 74, 0.18);
    color: var(--theme-success);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .offer-status-badge.declined {
    background: rgba(220, 38, 38, 0.18);
    color: var(--theme-danger);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .offer-status-badge.expired {
    background: rgba(148, 163, 184, 0.18);
    color: var(--border-strong);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .offer-status-badge.deposit-pending {
    background: rgba(14, 165, 233, 0.18);
    color: var(--theme-info);
}

/* Deposit / appeal / rejection badges */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .deposit-badge.paid {
    background: rgba(22, 163, 74, 0.18);
    color: var(--theme-success);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .deposit-badge.pending,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .appeal-badge.pending,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .rejection-badge.soft,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .rejection-badge.conditional,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .rejection-badge.waitlisted {
    background: rgba(217, 119, 6, 0.18);
    color: var(--theme-warning);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .appeal-badge.submitted {
    background: rgba(14, 165, 233, 0.18);
    color: var(--theme-info);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .appeal-badge.approved {
    background: rgba(22, 163, 74, 0.18);
    color: var(--theme-success);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .appeal-badge.denied,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .appeal-badge.expired,
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .rejection-badge.hard {
    background: rgba(220, 38, 38, 0.18);
    color: var(--theme-danger);
}

/* Rejection info wrapper (light pink) */
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .rejection-info {
    background: rgba(239, 68, 68, 0.08);
    border-color: rgba(239, 68, 68, 0.25);
}
:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .rejection-reason {
    color: var(--theme-danger-text);
}

/* Share link modal (root-level classes) */
:global([data-bs-theme="dark"]) .share-link-modal[b-6zl79zfxi3],
:global([data-bs-theme="dark"]) .share-link-header[b-6zl79zfxi3],
:global([data-bs-theme="dark"]) .share-link-body[b-6zl79zfxi3] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}
:global([data-bs-theme="dark"]) .share-link-input[b-6zl79zfxi3] {
    background: var(--bg-surface-alt);
    border-color: var(--border-color);
    color: var(--text-primary);
}
:global([data-bs-theme="dark"]) .share-link-close:hover[b-6zl79zfxi3] {
    background: var(--bg-surface-alt);
    color: var(--text-primary);
}
:global([data-bs-theme="dark"]) .share-link-expiry[b-6zl79zfxi3] {
    background: rgba(245, 158, 11, 0.12);
    border-color: rgba(245, 158, 11, 0.35);
    color: var(--theme-warning);
}

/* ========================================
   Aliases for shared components introduced during refactor
   InfoSection / InfoItem (Components/Common) — keep visual match
   ======================================== */

/* InfoSection header — match the page's compact uppercase look */
[b-6zl79zfxi3] .fsh-info-section-header {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin: 0.75rem 0 0.375rem 0;
    padding-bottom: 0.25rem;
    border-bottom: 1px solid var(--border-color);
}

[b-6zl79zfxi3] .fsh-info-section:first-child .fsh-info-section-header,
[b-6zl79zfxi3] .alevel-section .fsh-info-section-header {
    margin-top: 0;
}

[b-6zl79zfxi3] .fsh-info-section-header i {
    font-size: 0.8rem;
    color: var(--theme-primary);
}

/* InfoSection grid — flex baseline rows with dashed separators */
[b-6zl79zfxi3] .fsh-info-section .fsh-info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.375rem 1.5rem;
}

[b-6zl79zfxi3] .fsh-info-section .fsh-info-item {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 0.375rem;
    padding: 0.25rem 0;
    border-bottom: 1px dashed var(--border-color);
}

[b-6zl79zfxi3] .fsh-info-section .fsh-info-item:nth-last-child(-n+2) {
    border-bottom: none;
}

[b-6zl79zfxi3] .fsh-info-item.full-width {
    grid-column: 1 / -1;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.125rem;
}

[b-6zl79zfxi3] .fsh-info-section .fsh-info-label {
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.25px;
    font-weight: 500;
    white-space: nowrap;
    min-width: 85px;
    flex-shrink: 0;
}

[b-6zl79zfxi3] .fsh-info-section .fsh-info-value {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    word-break: break-word;
    line-height: 1.25;
}

/* A-Level alev-header keeps amber color when CssClass="alevel-header" is passed */
[b-6zl79zfxi3] .alevel-section .fsh-info-section-header.alevel-header {
    color: var(--theme-warning-text);
    border-bottom-color: var(--theme-warning-text);
    margin-top: 0;
}

[b-6zl79zfxi3] .alevel-section .fsh-info-section-header.alevel-header i {
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .alevel-section .fsh-info-item {
    border-bottom-color: rgba(252, 211, 77, 0.4);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .alevel-section .fsh-info-section-header.alevel-header {
    color: var(--theme-warning);
    border-bottom-color: rgba(252, 211, 77, 0.3);
}

:global([data-bs-theme="dark"])[b-6zl79zfxi3]  .alevel-section .fsh-info-section-header.alevel-header i {
    color: var(--theme-warning);
}

/* ========================================
   StageTimeline aliases (Components/Common)
   Page's rich state styles target .timeline-item.<state>;
   shared component renders .fsh-timeline-item.<state>.
   ======================================== */

[b-6zl79zfxi3] .fsh-timeline {
    position: relative;
    padding-left: 0.75rem;
}

[b-6zl79zfxi3] .fsh-timeline::before {
    content: '';
    position: absolute;
    left: 13px;
    top: 20px;
    bottom: 20px;
    width: 2px;
    background: var(--border-color);
    border-radius: 1px;
}

[b-6zl79zfxi3] .fsh-timeline-item {
    position: relative;
    padding-left: 2.25rem;
    padding-bottom: 1rem;
}

[b-6zl79zfxi3] .fsh-timeline-item:last-child {
    padding-bottom: 0;
}

[b-6zl79zfxi3] .fsh-timeline-marker {
    position: absolute;
    left: 0;
    top: 0;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--bg-surface);
    border: 2px solid var(--border-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    z-index: 1;
}

[b-6zl79zfxi3] .fsh-timeline-item.completed .fsh-timeline-marker {
    background: var(--theme-success-subtle);
    border-color: var(--theme-success-emphasis);
    color: var(--theme-success-emphasis);
}

[b-6zl79zfxi3] .fsh-timeline-item.rejected .fsh-timeline-marker,
[b-6zl79zfxi3] .fsh-timeline-item.rejected-conditional .fsh-timeline-marker {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger-emphasis);
    color: var(--theme-danger-emphasis);
}

[b-6zl79zfxi3] .fsh-timeline-item.rejected-waitlisted .fsh-timeline-marker {
    background: var(--theme-warning-subtle);
    border-color: var(--theme-warning-emphasis);
    color: var(--theme-warning-emphasis);
}

[b-6zl79zfxi3] .fsh-timeline-item.current .fsh-timeline-marker {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
    box-shadow: 0 0 0 3px rgba(var(--theme-primary-rgb), 0.2);
}

[b-6zl79zfxi3] .fsh-timeline-item.current .fsh-timeline-marker i {
    animation: spin-b-6zl79zfxi3 1.5s linear infinite;
}

[b-6zl79zfxi3] .fsh-timeline-content {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    padding: 0.875rem;
    transition: all 0.15s ease;
}

[b-6zl79zfxi3] .fsh-timeline-item:hover .fsh-timeline-content {
    border-color: rgba(var(--theme-primary-rgb), 0.3);
}

[b-6zl79zfxi3] .fsh-timeline-item.current .fsh-timeline-content {
    border-color: var(--theme-primary);
    background: rgba(var(--theme-primary-rgb), 0.03);
}
/* /Pages/Recruiter/ApplicationsPages/ApplicationInvoices.razor.rz.scp.css */
/* =============================================
   APPLICATION INVOICES PAGE STYLES (Admin View)
   Theme: Blue (PageLayout handles header)
   Dark mode handled automatically via CSS variables from theme-core.css
   ============================================= */

/* Main Content Flow */
.main-content-flow[b-a4y305kh52] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* =============================================
   SUMMARY GRID
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.summary-grid[b-a4y305kh52] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    padding: 1.5rem;
    max-width: 1400px;
    margin: 0 auto;
}

.summary-card[b-a4y305kh52] {
    background: var(--bg-surface);
    border-radius: 16px;
    padding: 1.25rem;
    display: flex;
    align-items: center;
    gap: 1rem;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
}

.summary-card:hover[b-a4y305kh52] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.summary-card .card-icon[b-a4y305kh52] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.summary-card .card-icon i[b-a4y305kh52] {
    font-size: 1.5rem;
}

.summary-card.total .card-icon[b-a4y305kh52] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.summary-card.paid .card-icon[b-a4y305kh52] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.summary-card.pending .card-icon[b-a4y305kh52] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.summary-card.invoices .card-icon[b-a4y305kh52] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.summary-card .card-content[b-a4y305kh52] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.summary-card .card-label[b-a4y305kh52] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.summary-card .card-value[b-a4y305kh52] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
}

.summary-card.paid .card-value[b-a4y305kh52] {
    color: var(--theme-success);
}

.summary-card.pending .card-value[b-a4y305kh52] {
    color: var(--theme-warning);
}

/* =============================================
   CONTENT CARD
   ============================================= */

.content-card[b-a4y305kh52] {
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

/* Card header pattern consolidated in app.css */
.content-card .card-header[b-a4y305kh52] {
    background: linear-gradient(135deg, var(--bg-surface-tertiary) 0%, var(--bg-surface) 100%); /* Page-specific override */
}

.content-card .card-header .header-left[b-a4y305kh52] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.content-card .card-header .header-left i[b-a4y305kh52] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

.content-card .card-header h3[b-a4y305kh52] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.invoice-count[b-a4y305kh52] {
    font-size: 0.75rem;
    color: var(--text-muted);
    padding: 0.25rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 9999px;
}

.content-card .card-content[b-a4y305kh52] {
    padding: 1rem 1.5rem;
}

.content-card .card-content.no-padding[b-a4y305kh52] {
    padding: 0;
}

/* =============================================
   INVOICE GRID (RadzenDataGrid Overrides)
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

[b-a4y305kh52] .invoice-grid {
    border: none !important;
}

[b-a4y305kh52] .invoice-grid .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    padding: 0.875rem 1rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

[b-a4y305kh52] .invoice-grid .rz-datatable-tbody > tr > td {
    padding: 1rem;
    border-bottom: 1px solid var(--border-color);
    font-size: 0.875rem;
    vertical-align: middle;
    color: var(--text-primary);
}

[b-a4y305kh52] .invoice-grid .rz-datatable-tbody > tr:hover > td {
    background: var(--bg-surface-tertiary);
}

[b-a4y305kh52] .invoice-grid .rz-datatable-tbody > tr:last-child > td {
    border-bottom: none;
}

.invoice-number-cell[b-a4y305kh52] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.invoice-number[b-a4y305kh52] {
    font-family: monospace;
    font-weight: 600;
    color: var(--text-primary);
}

.mandatory-badge[b-a4y305kh52] {
    font-size: 0.625rem;
    font-weight: 600;
    text-transform: uppercase;
    padding: 0.125rem 0.5rem;
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
    border-radius: 9999px;
}

.stage-badge[b-a4y305kh52] {
    display: inline-flex;
    padding: 0.25rem 0.625rem;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.amount[b-a4y305kh52] {
    font-weight: 600;
    color: var(--text-primary);
}

.amount-paid[b-a4y305kh52] {
    color: var(--theme-success);
}

.text-danger[b-a4y305kh52] {
    color: var(--theme-danger) !important;
}

.text-muted[b-a4y305kh52] {
    color: var(--text-muted);
}

/* Status badge pattern consolidated in app.css */

/* No Data State */
.no-data[b-a4y305kh52] {
    padding: 3rem;
    text-align: center;
}

.no-data i[b-a4y305kh52] {
    font-size: 2.5rem;
    color: var(--text-muted);
    margin-bottom: 0.75rem;
    display: block;
}

.no-data p[b-a4y305kh52] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    margin: 0;
}

/* =============================================
   RESPONSIVE DESIGN
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .summary-grid[b-a4y305kh52] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {

    .summary-grid[b-a4y305kh52] {
        grid-template-columns: 1fr;
        padding: 1rem;
    }

    .content-card[b-a4y305kh52] {
        margin: 0 1rem 1.5rem 1rem;
    }
}

/* 480px breakpoint handled by PageLayout */

/* =============================================
   HEADER ACTIONS
   ============================================= */

.btn-issue-credit[b-a4y305kh52] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    background: rgba(255, 255, 255, 0.95);
    color: var(--theme-primary);
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: var(--shadow-sm);
}

.btn-issue-credit:hover[b-a4y305kh52] {
    background: white; /* intentional: white pill on coloured banner */
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.btn-issue-credit i[b-a4y305kh52] {
    font-size: 1.125rem;
}

/* =============================================
   CREDIT SUMMARY CARD
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.summary-card.credit .card-icon[b-a4y305kh52] {
    background: var(--theme-teal-subtle);
    color: var(--theme-teal);
}

.summary-card.credit .card-value[b-a4y305kh52] {
    color: var(--theme-teal);
}

/* =============================================
   ACTION BUTTONS IN GRID
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Action button patterns consolidated in app.css */

/* Page-specific action button customizations */
.action-btn[b-a4y305kh52] {
    background: transparent;
}

.action-btn.credit-btn[b-a4y305kh52] {
    color: var(--theme-teal);
}

.action-btn.credit-btn:hover[b-a4y305kh52] {
    background: var(--theme-teal-subtle);
}

.credit-note-indicator[b-a4y305kh52] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    color: var(--theme-teal);
    opacity: 0.5;
}

.credit-note-indicator i[b-a4y305kh52] {
    font-size: 1rem;
}

/* =============================================
   CREDIT NOTE DIALOG
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.dialog-overlay[b-a4y305kh52] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1rem;
    animation: fadeIn 0.2s ease;
}

@keyframes    to-b-a4y305kh52 { opacity: 1; }
}

.dialog-container[b-a4y305kh52] {
    background: var(--bg-surface);
    border-radius: 16px;
    width: 100%;
    max-width: 480px;
    box-shadow: var(--shadow-lg);
    animation: slideIn-b-a4y305kh52 0.2s ease;
}

@keyframes slideIn-b-a4y305kh52 {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(-20px);
    }
    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.dialog-header[b-a4y305kh52] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.25rem 1.5rem;
    border-bottom: 1px solid var(--border-color);
    background: linear-gradient(135deg, var(--theme-teal-subtle) 0%, var(--bg-surface) 100%);
    border-radius: 16px 16px 0 0;
}

.dialog-title[b-a4y305kh52] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.dialog-title i[b-a4y305kh52] {
    font-size: 1.5rem;
    color: var(--theme-teal);
}

.dialog-title h3[b-a4y305kh52] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.dialog-close[b-a4y305kh52] {
    width: 36px;
    height: 36px;
    border: none;
    background: transparent;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    color: var(--text-muted);
}

.dialog-close:hover[b-a4y305kh52] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.dialog-close i[b-a4y305kh52] {
    font-size: 1.25rem;
}

.dialog-body[b-a4y305kh52] {
    padding: 1.5rem;
}

.credit-note-info[b-a4y305kh52] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 1rem;
    margin-bottom: 1.5rem;
}

.credit-note-info p[b-a4y305kh52] {
    margin: 0 0 0.5rem 0;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.credit-note-info p:last-child[b-a4y305kh52] {
    margin-bottom: 0;
}

.credit-note-info.standalone[b-a4y305kh52] {
    background: var(--theme-info-subtle);
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.credit-note-info.standalone i[b-a4y305kh52] {
    font-size: 1.25rem;
    color: var(--theme-info);
    flex-shrink: 0;
}

.credit-note-info.standalone p[b-a4y305kh52] {
    margin: 0;
    color: var(--theme-info);
}

.form-group[b-a4y305kh52] {
    margin-bottom: 1.25rem;
}

.form-group:last-child[b-a4y305kh52] {
    margin-bottom: 0;
}

.form-group label[b-a4y305kh52] {
    display: block;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.form-group input[type="number"][b-a4y305kh52],
.form-group textarea[b-a4y305kh52] {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.9375rem;
    color: var(--text-primary);
    background: var(--bg-surface);
    transition: all 0.2s ease;
}

.form-group input[type="number"]:focus[b-a4y305kh52],
.form-group textarea:focus[b-a4y305kh52] {
    outline: none;
    border-color: var(--theme-teal);
    box-shadow: 0 0 0 3px var(--theme-teal-subtle);
}

.form-group textarea[b-a4y305kh52] {
    resize: vertical;
    min-height: 80px;
}

.input-with-currency[b-a4y305kh52] {
    display: flex;
    align-items: stretch;
}

.input-with-currency .currency-prefix[b-a4y305kh52] {
    display: flex;
    align-items: center;
    padding: 0 1rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-right: none;
    border-radius: 8px 0 0 8px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.input-with-currency input[b-a4y305kh52] {
    flex: 1;
    border-radius: 0 8px 8px 0;
}

.validation-error[b-a4y305kh52] {
    display: block;
    font-size: 0.75rem;
    color: var(--theme-danger);
    margin-top: 0.375rem;
}

.checkbox-group .checkbox-label[b-a4y305kh52] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    font-weight: 400;
}

.checkbox-group .checkbox-label input[type="checkbox"][b-a4y305kh52] {
    width: 18px;
    height: 18px;
    accent-color: var(--theme-teal);
}

.checkbox-group .help-text[b-a4y305kh52] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.5rem;
    line-height: 1.5;
}

.dialog-footer[b-a4y305kh52] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1.25rem 1.5rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
    border-radius: 0 0 16px 16px;
}

.btn-cancel[b-a4y305kh52],
.btn-submit[b-a4y305kh52] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-cancel[b-a4y305kh52] {
    background: var(--bg-surface);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

.btn-cancel:hover:not(:disabled)[b-a4y305kh52] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.btn-submit[b-a4y305kh52] {
    background: var(--theme-teal);
    color: white;
}

.btn-submit:hover:not(:disabled)[b-a4y305kh52] {
    background: var(--theme-teal-emphasis);
    transform: translateY(-1px);
    box-shadow: var(--shadow-md);
}

.btn-submit:disabled[b-a4y305kh52],
.btn-cancel:disabled[b-a4y305kh52] {
    opacity: 0.5;
    cursor: not-allowed;
}

.btn-submit i[b-a4y305kh52],
.btn-cancel i[b-a4y305kh52] {
    font-size: 1rem;
}

/* Spinning animation for loader */
@keyframes    to-b-a4y305kh52 { transform: rotate(360deg); }
}

.spinning[b-a4y305kh52] {
    animation: spin 1s linear infinite;
}
/* /Pages/Recruiter/ApplicationStagePages/AppealsReview.razor.rz.scp.css */
/* Note: Empty state now uses centralized EmptyState component. */
/* /Pages/Recruiter/ApplicationStagePages/ApplicationsStageToReview.razor.rz.scp.css */
/* =============================================
   MY TASK QUEUE - Scoped Styles
   Uses CSS variables from theme-core.css
   Dark mode handled automatically
   ============================================= */

/* ============ Animations ============ */
@keyframes fadeSlideUp-b-rfxugrsz4n {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes spin-b-rfxugrsz4n {
    to { transform: rotate(360deg); }
}

.animate-in[b-rfxugrsz4n] {
    animation: fadeSlideUp-b-rfxugrsz4n 0.4s ease-out both;
}

/* ============ Stats Grid (deep scope) ============ */
[b-rfxugrsz4n] .stats-grid {
    display: flex;
    flex-wrap: nowrap;
    gap: 0.75rem;
    margin-bottom: 1rem;
    overflow-x: auto;
    padding-bottom: 0.25rem;
}

[b-rfxugrsz4n] .stats-grid .stat-card {
    flex: 1 1 0;
    min-width: 120px;
    gap: 0.625rem;
    cursor: pointer;
    border: 2px solid transparent;
    transition: all 0.2s ease;
    position: relative;
}

[b-rfxugrsz4n] .stats-grid .stat-card.active {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

[b-rfxugrsz4n] .stats-grid .stat-card:hover:not(.empty) {
    transform: translateY(-2px);
}

[b-rfxugrsz4n] .stats-grid .stat-card.empty {
    opacity: 0.6;
}

[b-rfxugrsz4n] .stats-grid .stat-card.empty:hover {
    transform: none;
    cursor: default;
}

[b-rfxugrsz4n] .stats-grid .stat-icon {
    width: 36px;
    height: 36px;
    min-width: 36px;
    border-radius: 8px;
    font-size: 1rem;
}

[b-rfxugrsz4n] .stats-grid .stat-info {
    min-width: 0;
    flex: 1;
}

[b-rfxugrsz4n] .stats-grid .stat-value {
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.1;
}

[b-rfxugrsz4n] .stats-grid .stat-label {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.02em;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Vacancy Inline ============ */
.vacancy-inline[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex: 0 1 auto;
    min-width: 180px;
    max-width: 320px;
}

.vacancy-label[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-rfxugrsz4n] {
    font-size: 1rem;
}

.vacancy-select[b-rfxugrsz4n] {
    flex: 1;
    min-width: 0;
    height: 34px;
    padding: 0 2rem 0 0.75rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.vacancy-select:hover[b-rfxugrsz4n] {
    border-color: var(--theme-primary-emphasis);
    background-color: rgba(99, 102, 241, 0.08);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.2);
}

.vacancy-select:focus[b-rfxugrsz4n] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.vacancy-select option[b-rfxugrsz4n] {
    padding: 0.5rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

/* ============ Quick Filter Tabs ============ */
.tabs-inline[b-rfxugrsz4n] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
    flex-shrink: 0;
}

.tab-compact[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-rfxugrsz4n] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-rfxugrsz4n] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-rfxugrsz4n] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-rfxugrsz4n] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.danger[b-rfxugrsz4n] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.tab-compact.active .tab-badge.danger[b-rfxugrsz4n] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.tab-badge.warning[b-rfxugrsz4n] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.tab-compact.active .tab-badge.warning[b-rfxugrsz4n] {
    background: var(--theme-warning);
    color: var(--text-inverse);
}

/* ============ Search ============ */
.search-inline[b-rfxugrsz4n] {
    flex: 1;
    min-width: 130px;
    max-width: 260px;
}

.nav-search-box[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-rfxugrsz4n] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-rfxugrsz4n] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-rfxugrsz4n] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-rfxugrsz4n]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-rfxugrsz4n] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ View Toggle ============ */
.view-toggle-inline[b-rfxugrsz4n] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
    flex-shrink: 0;
}

.view-toggle-inline .toggle-btn[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.view-toggle-inline .toggle-btn:hover[b-rfxugrsz4n] {
    color: var(--text-secondary);
    background: var(--bg-hover);
}

.view-toggle-inline .toggle-btn.active[b-rfxugrsz4n] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-xs);
}

.view-toggle-inline .toggle-btn i[b-rfxugrsz4n] {
    font-size: 1rem;
}

/* ============ Sort ============ */
.sort-inline[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.sort-select[b-rfxugrsz4n] {
    height: 34px;
    padding: 0 1.75rem 0 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.sort-select:hover[b-rfxugrsz4n] {
    border-color: var(--theme-primary);
}

.sort-select:focus[b-rfxugrsz4n] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.sort-dir-btn[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.sort-dir-btn:hover[b-rfxugrsz4n] {
    color: var(--theme-primary);
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.sort-dir-btn i[b-rfxugrsz4n] {
    font-size: 1rem;
}

/* ============ Auto-Refresh Button ============ */
.auto-refresh-btn[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    flex-shrink: 0;
}

.auto-refresh-btn:hover[b-rfxugrsz4n] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.auto-refresh-btn.active[b-rfxugrsz4n] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
    border-color: var(--theme-success);
}

.auto-refresh-btn i[b-rfxugrsz4n] {
    font-size: 1rem;
}

.auto-refresh-btn.active i[b-rfxugrsz4n] {
    animation: spin-b-rfxugrsz4n 2s linear infinite;
}

/* ============ Refresh Button ============ */
.refresh-btn[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-rfxugrsz4n] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-rfxugrsz4n] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-rfxugrsz4n] {
    font-size: 1rem;
}

/* ============ Spinner ============ */
.spinner-sm[b-rfxugrsz4n] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-rfxugrsz4n 0.6s linear infinite;
}

/* ============ Content Area ============ */
.content-area[b-rfxugrsz4n] {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: calc(100vh - 380px);
}

/* ============ Table Container ============ */
.table-container[b-rfxugrsz4n] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

.table-container[b-rfxugrsz4n]  .rz-datatable {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.table-container[b-rfxugrsz4n]  .rz-data-grid {
    height: 100% !important;
}

/* ============ DataGrid Cell Styles ============ */
.index-link[b-rfxugrsz4n] {
    color: var(--theme-primary);
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: color 0.15s ease;
}

.index-link:hover[b-rfxugrsz4n] {
    text-decoration: underline;
    color: var(--theme-primary-emphasis);
}

.applicant-cell[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.applicant-avatar[b-rfxugrsz4n] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 600;
    flex-shrink: 0;
}

.applicant-info[b-rfxugrsz4n] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.applicant-name[b-rfxugrsz4n] {
    font-weight: 500;
    color: var(--text-primary);
    font-size: 0.875rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.applicant-school[b-rfxugrsz4n] {
    font-size: 0.75rem;
    color: var(--text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.vacancy-name[b-rfxugrsz4n] {
    color: var(--text-secondary);
    font-size: 0.875rem;
}

/* ============ Result Badge ============ */
.result-badge[b-rfxugrsz4n] {
    display: inline-flex;
    padding: 0.25rem 0.625rem;
    border-radius: var(--border-radius);
    font-size: 0.8125rem;
    font-weight: 600;
    background: var(--bg-surface-sunken);
    color: var(--text-secondary);
}

.result-badge.excellent[b-rfxugrsz4n] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.result-badge.good[b-rfxugrsz4n] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.result-badge.average[b-rfxugrsz4n] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

/* ============ Stage Badge ============ */
.stage-badge[b-rfxugrsz4n] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    border-radius: var(--border-radius);
    font-size: 0.75rem;
    font-weight: 500;
    background: var(--bg-surface-sunken);
    color: var(--text-secondary);
    transition: transform 0.15s ease;
}

.stage-badge i[b-rfxugrsz4n] {
    font-size: 0.875rem;
}

.stage-badge.applicationapproval[b-rfxugrsz4n] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.stage-badge.verification[b-rfxugrsz4n] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.stage-badge.phonecall[b-rfxugrsz4n] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.stage-badge.homework[b-rfxugrsz4n] {
    background: var(--theme-secondary-subtle);
    color: var(--theme-secondary);
}

.stage-badge.interview[b-rfxugrsz4n] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.stage-badge.admission[b-rfxugrsz4n] {
    background: var(--theme-emerald-subtle);
    color: var(--theme-emerald);
}

/* ============ Status Text ============ */
.status-text[b-rfxugrsz4n] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
}

.status-text i[b-rfxugrsz4n] {
    font-size: 0.875rem;
}

.status-text.info[b-rfxugrsz4n] {
    color: var(--theme-info);
}

.status-text.success[b-rfxugrsz4n] {
    color: var(--theme-success);
}

.status-text.warning[b-rfxugrsz4n] {
    color: var(--theme-warning-emphasis);
}

.status-text.danger[b-rfxugrsz4n] {
    color: var(--theme-danger);
}

.status-text.muted[b-rfxugrsz4n] {
    color: var(--text-muted);
}

/* ============ Date Text ============ */
.date-text[b-rfxugrsz4n] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

/* ============ Overdue Row Highlight ============ */
[b-rfxugrsz4n] .row-overdue {
    background: var(--theme-danger-subtle) !important;
}

[b-rfxugrsz4n] .row-overdue:hover {
    background: color-mix(in srgb, var(--theme-danger-subtle) 90%, var(--theme-danger) 10%) !important;
}

/* ============ Card View ============ */
.task-grid[b-rfxugrsz4n] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1.25rem;
}

.task-card[b-rfxugrsz4n] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
}

.task-card:hover[b-rfxugrsz4n] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.task-card.overdue[b-rfxugrsz4n] {
    border-color: var(--theme-danger);
    background: var(--theme-danger-subtle);
}

.task-card.overdue:hover[b-rfxugrsz4n] {
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.2);
}

.task-card-header[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem 1rem 0.5rem;
}

.task-card-header .applicant-avatar[b-rfxugrsz4n] {
    width: 40px;
    height: 40px;
    font-size: 0.9375rem;
}

.task-card-identity[b-rfxugrsz4n] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    flex: 1;
}

.task-card-identity .applicant-name[b-rfxugrsz4n] {
    font-size: 0.9375rem;
    font-weight: 600;
}

.task-card-identity .index-number[b-rfxugrsz4n] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.task-card-header .stage-badge[b-rfxugrsz4n] {
    flex-shrink: 0;
}

.task-card-body[b-rfxugrsz4n] {
    padding: 0.75rem 1rem;
    flex: 1;
    cursor: pointer;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.task-card-row[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    font-size: 0.8125rem;
}

.task-card-row .label[b-rfxugrsz4n] {
    color: var(--text-muted);
    font-weight: 500;
    flex-shrink: 0;
}

.task-card-footer[b-rfxugrsz4n] {
    display: flex;
    justify-content: flex-start;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.action-btn[b-rfxugrsz4n] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.action-btn:hover[b-rfxugrsz4n] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.action-btn.primary:hover[b-rfxugrsz4n] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.action-btn.success:hover[b-rfxugrsz4n] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: white;
}

.action-btn.warning:hover[b-rfxugrsz4n] {
    background: var(--theme-warning);
    border-color: var(--theme-warning);
    color: white;
}

.action-btn.info:hover[b-rfxugrsz4n] {
    background: var(--theme-info);
    border-color: var(--theme-info);
    color: white;
}

.action-btn i[b-rfxugrsz4n] {
    font-size: 0.875rem;
}

/* ============ Pagination ============ */
.pagination-wrapper[b-rfxugrsz4n] {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
}

/* ============ List Footer ============ */
.list-footer[b-rfxugrsz4n] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-rfxugrsz4n] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-rfxugrsz4n] {
    color: var(--text-primary);
}

.last-updated-text[b-rfxugrsz4n] {
    font-size: 0.75rem;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 0.25rem;
    white-space: nowrap;
}

.last-updated-text i[b-rfxugrsz4n] {
    font-size: 0.875rem;
}

.page-size-selector[b-rfxugrsz4n] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-rfxugrsz4n] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-rfxugrsz4n] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-rfxugrsz4n] {
    border-color: var(--theme-primary);
}

/* ============ Responsive Breakpoints ============ */
@media (max-width: 1400px) {
    .navigation-bar[b-rfxugrsz4n] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-rfxugrsz4n] {
        min-width: 180px;
        max-width: none;
        flex: 1 1 auto;
    }

    .search-inline[b-rfxugrsz4n] {
        max-width: none;
        flex: 1 1 150px;
    }

    [b-rfxugrsz4n] .stats-grid .stat-card {
        min-width: 100px;
        max-width: 160px;
    }

    [b-rfxugrsz4n] .stats-grid .stat-icon {
        width: 32px;
        height: 32px;
        min-width: 32px;
        font-size: 0.875rem;
    }

    [b-rfxugrsz4n] .stats-grid .stat-value {
        font-size: 1.125rem;
    }
}

@media (max-width: 1200px) {
    .navigation-bar[b-rfxugrsz4n] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-rfxugrsz4n] {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }

    .vacancy-label span[b-rfxugrsz4n] {
        display: none;
    }

    .search-inline[b-rfxugrsz4n] {
        flex: 1 1 150px;
        min-width: 120px;
        max-width: none;
    }

    .tab-compact[b-rfxugrsz4n] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }

    [b-rfxugrsz4n] .stats-grid .stat-card {
        min-width: 90px;
        max-width: 150px;
        padding: 0.625rem 0.75rem;
    }

    [b-rfxugrsz4n] .stats-grid .stat-label {
        font-size: 0.625rem;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-rfxugrsz4n] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .vacancy-inline[b-rfxugrsz4n] {
        order: 1;
        flex: 1 1 100%;
        max-width: none;
    }

    .vacancy-label[b-rfxugrsz4n] {
        display: none;
    }

    .tabs-inline[b-rfxugrsz4n] {
        order: 2;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .search-inline[b-rfxugrsz4n] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .view-toggle-inline[b-rfxugrsz4n] {
        order: 4;
    }

    .sort-inline[b-rfxugrsz4n] {
        order: 5;
    }

    .auto-refresh-btn[b-rfxugrsz4n] {
        order: 6;
    }

    .refresh-btn[b-rfxugrsz4n] {
        order: 7;
    }

    .content-area[b-rfxugrsz4n] {
        min-height: calc(100vh - 450px);
    }

    .task-grid[b-rfxugrsz4n] {
        grid-template-columns: 1fr;
    }

    .list-footer[b-rfxugrsz4n] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .footer-left[b-rfxugrsz4n] {
        flex-wrap: wrap;
        justify-content: center;
        gap: 0.75rem;
    }

    [b-rfxugrsz4n] .stats-grid {
        gap: 0.5rem;
        -webkit-overflow-scrolling: touch;
    }

    [b-rfxugrsz4n] .stats-grid .stat-card {
        min-width: 100px;
        flex: 0 0 auto;
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-rfxugrsz4n] {
        flex: 1 1 100%;
        justify-content: center;
    }

    .tab-compact span:not(.tab-badge)[b-rfxugrsz4n] {
        display: none;
    }

    .tab-compact[b-rfxugrsz4n] {
        padding: 0.5rem 0.625rem;
    }

    .auto-refresh-btn span[b-rfxugrsz4n] {
        display: none;
    }

    .sort-inline[b-rfxugrsz4n] {
        flex: 1 1 100%;
    }

    .sort-select[b-rfxugrsz4n] {
        flex: 1;
    }

    .task-grid[b-rfxugrsz4n] {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }
}

/* ============ Reduced Motion ============ */
@media (prefers-reduced-motion: reduce) {
    .animate-in[b-rfxugrsz4n] {
        animation: none;
        opacity: 1;
        transform: none;
    }

    .auto-refresh-btn.active i[b-rfxugrsz4n] {
        animation: none;
    }

    [b-rfxugrsz4n] .stats-grid .stat-card:hover:not(.empty) {
        transform: none;
    }

    .task-card:hover[b-rfxugrsz4n] {
        transform: none;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ApplicationStageDatails.razor.rz.scp.css */
/* =====================================================
   APPLICATION STAGE DETAILS PAGE STYLES
   Dynamic stage-specific colors
   Dark mode handled automatically via CSS variables from theme-core.css
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* CSS Variables for this page */
.stage-details-page[b-iqynslh85t] {
    --accent-color: var(--theme-primary);
    --accent-light: var(--theme-indigo-light);
    --accent-dark: var(--theme-primary-emphasis);
    --accent-bg: var(--theme-primary-subtle);
    --accent-gradient: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
    min-height: 100vh;
    background: var(--bg-body);
}

/* Stage-specific colors */
.approval[b-iqynslh85t] { --stage-color: var(--theme-success); --stage-bg: var(--theme-success-subtle); }
.verification[b-iqynslh85t] { --stage-color: var(--theme-info); --stage-bg: var(--theme-info-subtle); }
.phonecall[b-iqynslh85t] { --stage-color: var(--theme-warning); --stage-bg: rgba(249, 115, 22, 0.1); }
.homework[b-iqynslh85t] { --stage-color: var(--theme-info); --stage-bg: rgba(6, 182, 212, 0.1); }
.interview[b-iqynslh85t] { --stage-color: var(--theme-purple); --stage-bg: rgba(139, 92, 246, 0.1); }
.admission[b-iqynslh85t] { --stage-color: var(--theme-pink); --stage-bg: rgba(236, 72, 153, 0.1); }
.default[b-iqynslh85t] { --stage-color: var(--theme-primary); --stage-bg: var(--theme-primary-subtle); }

/* =====================================================
   CONTENT FLOW LAYOUT
   ===================================================== */

.main-content-flow[b-iqynslh85t],
.sidebar-flow[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.stage-badge[b-iqynslh85t] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--stage-bg);
    color: var(--stage-color);
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 600;
}

.stage-badge i[b-iqynslh85t] {
    font-size: 0.875rem;
}

/* =====================================================
   STATUS BANNER
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.status-banner[b-iqynslh85t] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

.status-banner.accepted[b-iqynslh85t] {
    background: linear-gradient(135deg, var(--theme-success-subtle) 0%, rgba(5, 150, 105, 0.1) 100%);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.status-banner.pending[b-iqynslh85t] {
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, rgba(217, 119, 6, 0.1) 100%);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.status-icon[b-iqynslh85t] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.status-banner.accepted .status-icon[b-iqynslh85t] {
    background: rgba(16, 185, 129, 0.2);
    color: var(--theme-success-emphasis);
}

.status-banner.pending .status-icon[b-iqynslh85t] {
    background: rgba(245, 158, 11, 0.2);
    color: var(--theme-warning-emphasis);
}

.status-content[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.status-label[b-iqynslh85t] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 500;
}

.status-value[b-iqynslh85t] {
    font-size: 1.125rem;
    font-weight: 700;
}

.status-banner.accepted .status-value[b-iqynslh85t] {
    color: var(--theme-success-emphasis);
}

.status-banner.pending .status-value[b-iqynslh85t] {
    color: var(--theme-warning-emphasis);
}

.status-details[b-iqynslh85t] {
    margin-left: auto;
}

.reviewed-by[b-iqynslh85t] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--theme-success-emphasis);
    font-weight: 500;
}

.reviewed-by i[b-iqynslh85t] {
    font-size: 1rem;
}

/* =====================================================
   QUICK STATS BAR
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.quick-stats[b-iqynslh85t] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

/* stat-card base styles now in app.css */

/* Page-specific stat-icon variants */
.stat-icon.stage[b-iqynslh85t] { background: var(--stage-bg); color: var(--stage-color); font-size: 1.375rem; }
.stat-icon.state[b-iqynslh85t] { background: var(--theme-success-subtle); color: var(--theme-success); font-size: 1.375rem; }
.stat-icon.score[b-iqynslh85t] { background: var(--theme-warning-subtle); color: var(--theme-warning); font-size: 1.375rem; }
.stat-icon.status[b-iqynslh85t] { background: var(--theme-primary-subtle); color: var(--theme-primary); font-size: 1.375rem; }
.stat-icon.admission[b-iqynslh85t] { background: rgba(236, 72, 153, 0.1); color: var(--theme-pink); font-size: 1.375rem; }
.stat-icon.admission.admitted[b-iqynslh85t] { background: var(--theme-success-subtle); color: var(--theme-success); }
.stat-icon.admission.waiting[b-iqynslh85t] { background: var(--theme-warning-subtle); color: var(--theme-warning); }
.stat-icon.admission.rejected[b-iqynslh85t] { background: var(--theme-danger-subtle); color: var(--theme-danger); }

/* =====================================================
   CONTENT GRID LAYOUT
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.content-grid[b-iqynslh85t] {
    display: grid;
    grid-template-columns: 1fr 340px;
    gap: 1.5rem;
    align-items: start;
}

.main-column[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.sidebar-column[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    position: sticky;
    top: 1.5rem;
}

/* =====================================================
   CONTENT CARDS
   ===================================================== */

/* .content-card, .card-header, .card-content - Using centralized styles from app.css (line 5511+) */
/* Page-specific: card header icon color */
.card-header h3 i[b-iqynslh85t] {
    color: var(--accent-color);
}

/* =====================================================
   INFO GRID
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.info-grid[b-iqynslh85t] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
}

.info-item[b-iqynslh85t] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
}

.info-icon[b-iqynslh85t] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--accent-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color);
    font-size: 1.125rem;
}

.info-details[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    flex: 1;
    min-width: 0;
}

.info-label[b-iqynslh85t] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.info-value[b-iqynslh85t] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* =====================================================
   STAGE INFO GRID
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.stage-info-grid[b-iqynslh85t] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.stage-info-item[b-iqynslh85t] {
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
}

.stage-info-item .info-label[b-iqynslh85t] {
    display: block;
    margin-bottom: 0.5rem;
}

.stage-type-display[b-iqynslh85t] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    background: var(--stage-bg);
    color: var(--stage-color);
    border-radius: 8px;
    font-size: 0.9375rem;
    font-weight: 600;
}

.stage-type-display i[b-iqynslh85t] {
    font-size: 1.125rem;
}

.state-badge[b-iqynslh85t] {
    display: inline-block;
    padding: 0.5rem 0.875rem;
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
    border-radius: 8px;
    font-size: 0.9375rem;
    font-weight: 600;
}

.review-status[b-iqynslh85t] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.9375rem;
    font-weight: 600;
}

.review-status.accepted[b-iqynslh85t] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.review-status.pending[b-iqynslh85t] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.review-status i[b-iqynslh85t] {
    font-size: 1rem;
}

.score-display[b-iqynslh85t] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-warning);
}

/* Remark Section */
.remark-section[b-iqynslh85t],
.admission-section[b-iqynslh85t] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--border-color);
}

.section-label[b-iqynslh85t] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.75rem;
}

.remark-content[b-iqynslh85t] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem;
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-subtle) 100%);
    border-radius: 10px;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.remark-content i[b-iqynslh85t] {
    color: var(--theme-warning-emphasis);
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.remark-content p[b-iqynslh85t] {
    margin: 0;
    font-size: 0.9375rem;
    color: var(--theme-warning-emphasis);
    line-height: 1.5;
    font-style: italic;
}

/* Admission Status Display */
.admission-status-display[b-iqynslh85t] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-radius: 10px;
    font-size: 1rem;
    font-weight: 600;
}

.admission-status-display.admitted[b-iqynslh85t] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.admission-status-display.waiting[b-iqynslh85t] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.admission-status-display.rejected[b-iqynslh85t] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.admission-status-display.pending[b-iqynslh85t] {
    background: rgba(148, 163, 184, 0.1);
    color: var(--text-secondary);
}

.admission-status-display i[b-iqynslh85t] {
    font-size: 1.25rem;
}

/* =====================================================
   SIDEBAR CARDS
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.sidebar-card[b-iqynslh85t] {
    background: var(--bg-surface);
    border-radius: 14px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

/* Card header patterns consolidated in app.css */
.sidebar-card .card-header[b-iqynslh85t] {
    padding: 1rem 1.25rem;
}

.sidebar-card .card-header h3[b-iqynslh85t] {
    font-size: 0.9375rem;
}

.sidebar-card .card-content[b-iqynslh85t] {
    padding: 1.25rem;
}

/* Staff Info */
.staff-info[b-iqynslh85t] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.staff-avatar[b-iqynslh85t] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--accent-gradient);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 1rem;
    flex-shrink: 0;
}

.staff-avatar.reviewer[b-iqynslh85t] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.staff-details[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.staff-name[b-iqynslh85t] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.staff-email[b-iqynslh85t] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.staff-email i[b-iqynslh85t] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.no-staff[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    color: var(--text-muted);
    text-align: center;
}

.no-staff i[b-iqynslh85t] {
    font-size: 2rem;
}

.no-staff span[b-iqynslh85t] {
    font-size: 0.875rem;
}

/* Score Card */
.score-card[b-iqynslh85t] {
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-subtle) 100%);
    border-color: rgba(245, 158, 11, 0.2);
}

.score-display-large[b-iqynslh85t] {
    display: flex;
    justify-content: center;
}

.score-circle[b-iqynslh85t] {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: var(--bg-surface);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
}

.score-circle .score-value[b-iqynslh85t] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--theme-warning-emphasis);
    line-height: 1;
}

.score-circle .score-label[b-iqynslh85t] {
    font-size: 0.75rem;
    color: var(--theme-warning-emphasis);
    font-weight: 500;
    text-transform: uppercase;
    margin-top: 0.25rem;
}

/* Actions Card */
.actions-card .card-content[b-iqynslh85t] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem;
}

.primary-btn[b-iqynslh85t],
.secondary-btn[b-iqynslh85t] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-radius: 10px;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
    width: 100%;
}

.primary-btn[b-iqynslh85t] {
    background: var(--accent-gradient);
    color: white;
    box-shadow: 0 4px 12px rgba(99, 102, 241, 0.3);
}

.primary-btn:hover[b-iqynslh85t] {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(99, 102, 241, 0.4);
}

.secondary-btn[b-iqynslh85t] {
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

.secondary-btn:hover[b-iqynslh85t] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* =====================================================
   RESPONSIVE DESIGN
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
@media (max-width: 1200px) {
    .content-grid[b-iqynslh85t] {
        grid-template-columns: 1fr 300px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-iqynslh85t] {
        grid-template-columns: 1fr;
    }

    .sidebar-column[b-iqynslh85t] {
        position: static;
        flex-direction: row;
        flex-wrap: wrap;
    }

    .sidebar-card[b-iqynslh85t] {
        flex: 1;
        min-width: 280px;
    }
}

@media (max-width: 768px) {
    .page-header[b-iqynslh85t] {
        padding: 1rem;
        margin: -1rem -1rem 1rem -1rem;
    }

    .header-left[b-iqynslh85t] {
        flex-wrap: wrap;
    }

    .student-avatar[b-iqynslh85t] {
        display: none;
    }

    .quick-stats[b-iqynslh85t] {
        grid-template-columns: repeat(2, 1fr);
    }

    .info-grid[b-iqynslh85t],
    .stage-info-grid[b-iqynslh85t] {
        grid-template-columns: 1fr;
    }

    .status-banner[b-iqynslh85t] {
        flex-wrap: wrap;
    }

    .status-details[b-iqynslh85t] {
        width: 100%;
        margin-left: 0;
        margin-top: 0.5rem;
    }

    .sidebar-column[b-iqynslh85t] {
        flex-direction: column;
    }

    .sidebar-card[b-iqynslh85t] {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .page-header[b-iqynslh85t] {
        padding: 0.75rem;
    }

    .header-title-row h1[b-iqynslh85t] {
        font-size: 1.25rem;
    }

    .application-id[b-iqynslh85t] {
        flex-wrap: wrap;
    }

    .quick-stats[b-iqynslh85t] {
        grid-template-columns: 1fr;
    }

    .stat-card[b-iqynslh85t] {
        padding: 1rem;
    }

    .card-content[b-iqynslh85t] {
        padding: 1rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/AssingUserToApplicationStage.razor.rz.scp.css */
/* =====================================================
   ASSIGN USER TO APPLICATION STAGE PAGE STYLES
   Cyan/Teal accent theme (var(--theme-teal)) for staff assignment
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* CSS Variables for this page */
.assign-user-page[b-ru672zlnpf] {
    --accent-color: var(--theme-teal);
    --accent-light: var(--theme-teal-light);
    --accent-dark: var(--theme-teal-dark);
    --accent-bg: rgba(20, 184, 166, 0.1);
    --accent-bg-hover: rgba(20, 184, 166, 0.15);
    --accent-gradient: linear-gradient(135deg, var(--theme-teal) 0%, var(--theme-info) 100%);
    min-height: 100vh;
    background: var(--bg-body);
}

/* =====================================================
   CONTENT FLOW LAYOUT
   ===================================================== */

.main-content-flow[b-ru672zlnpf],
.sidebar-flow[b-ru672zlnpf] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Stage badge in header */
.stage-badge[b-ru672zlnpf] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    background: var(--accent-bg);
    color: var(--accent-dark);
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.stage-badge i[b-ru672zlnpf] {
    font-size: 0.8125rem;
}

/* Content cards - compact sizing */
.content-card[b-ru672zlnpf] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.content-card .card-header[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.content-card .card-header h3[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.content-card .card-header h3 i[b-ru672zlnpf] {
    font-size: 1rem;
    color: var(--accent-color);
}

.content-card .card-content[b-ru672zlnpf] {
    padding: 1rem;
}

/* =====================================================
   INFO GRID - COMPACT 2-COLUMN LAYOUT
   ===================================================== */

.info-grid[b-ru672zlnpf] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
    margin-bottom: 0.75rem;
}

.info-item[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border: 1px solid var(--border-color);
}

.info-icon[b-ru672zlnpf] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--accent-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color);
    font-size: 0.9375rem;
    flex-shrink: 0;
}

.info-details[b-ru672zlnpf] {
    display: flex;
    flex-direction: column;
    gap: 0.0625rem;
    min-width: 0;
}

.info-label[b-ru672zlnpf] {
    font-size: 0.6875rem;
    color: var(--text-secondary);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.info-value[b-ru672zlnpf] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    font-family: 'Monaco', 'Menlo', monospace;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.info-notice[b-ru672zlnpf] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    padding: 0.75rem;
    background: rgba(20, 184, 166, 0.05);
    border-radius: 8px;
    border: 1px solid rgba(20, 184, 166, 0.2);
}

.info-notice i[b-ru672zlnpf] {
    color: var(--accent-color);
    font-size: 1rem;
    flex-shrink: 0;
}

.info-notice span[b-ru672zlnpf] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

/* =====================================================
   FORM STYLING
   ===================================================== */

.form-section[b-ru672zlnpf] {
    margin-bottom: 1rem;
}

.form-group[b-ru672zlnpf] {
    margin-bottom: 0;
}

.form-label[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.form-label i[b-ru672zlnpf] {
    font-size: 0.9375rem;
    color: var(--accent-color);
}

.form-label .required[b-ru672zlnpf] {
    color: var(--theme-danger);
}

.form-helper[b-ru672zlnpf] {
    display: flex;
    align-items: flex-start;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.375rem;
}

.form-helper i[b-ru672zlnpf] {
    font-size: 0.8125rem;
    flex-shrink: 0;
}

.dropdown-wrapper[b-ru672zlnpf] {
    position: relative;
}

.dropdown-wrapper[b-ru672zlnpf]  .rz-dropdown {
    width: 100%;
    min-height: 42px;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
}

.dropdown-wrapper[b-ru672zlnpf]  .rz-dropdown:hover {
    border-color: var(--accent-color);
}

.dropdown-wrapper[b-ru672zlnpf]  .rz-dropdown.rz-state-focused {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.15);
}

/* =====================================================
   SELECTED USER PREVIEW - COMPACT STYLING
   ===================================================== */

.selected-user-preview[b-ru672zlnpf] {
    margin-top: 1rem;
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.05) 0%, rgba(6, 182, 212, 0.05) 100%);
    border: 1px solid rgba(20, 184, 166, 0.2);
    border-radius: 10px;
    overflow: hidden;
}

.preview-header[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: rgba(20, 184, 166, 0.1);
    border-bottom: 1px solid rgba(20, 184, 166, 0.2);
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--accent-dark);
}

.preview-header i[b-ru672zlnpf] {
    color: var(--accent-color);
    font-size: 0.875rem;
}

.preview-content[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
}

.user-avatar[b-ru672zlnpf] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--accent-gradient);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 0.9375rem;
    box-shadow: 0 4px 10px rgba(20, 184, 166, 0.3);
    flex-shrink: 0;
}

.user-details[b-ru672zlnpf] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.user-name[b-ru672zlnpf] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.user-position[b-ru672zlnpf] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* =====================================================
   STAFF COUNT BADGE - COMPACT
   ===================================================== */

.staff-count-badge[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.625rem 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border: 1px solid var(--border-color);
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin-bottom: 1rem;
}

.staff-count-badge i[b-ru672zlnpf] {
    color: var(--accent-color);
    font-size: 1rem;
}

.staff-count-badge strong[b-ru672zlnpf] {
    color: var(--text-primary);
}

/* =====================================================
   SIDEBAR CARDS - COMPACT SIZING
   ===================================================== */

.sidebar-card[b-ru672zlnpf] {
    background: var(--bg-surface);
    border-radius: 10px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.sidebar-card .card-header[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

.sidebar-card .card-header h3[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.sidebar-card .card-header h3 i[b-ru672zlnpf] {
    font-size: 0.9375rem;
    color: var(--accent-color);
}

.sidebar-card .card-content[b-ru672zlnpf] {
    padding: 1rem;
}

/* =====================================================
   TIPS CARD - COMPACT STYLING
   ===================================================== */

.tips-card[b-ru672zlnpf] {
    border-top: 2px solid var(--accent-color);
}

.tips-list[b-ru672zlnpf] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.tip-item[b-ru672zlnpf] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.35;
}

.tip-item i[b-ru672zlnpf] {
    color: var(--accent-color);
    font-size: 0.875rem;
    margin-top: 0.0625rem;
    flex-shrink: 0;
}

/* =====================================================
   QUICK ACTIONS - COMPACT BUTTON LIST
   ===================================================== */

.quick-actions-list[b-ru672zlnpf] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.quick-action-btn[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    text-align: left;
}

.quick-action-btn:hover[b-ru672zlnpf] {
    background: var(--accent-bg);
    border-color: rgba(20, 184, 166, 0.3);
    color: var(--accent-dark);
}

.quick-action-btn i[b-ru672zlnpf] {
    font-size: 1rem;
    color: var(--accent-color);
}

/* =====================================================
   HELP CARD - COMPACT STYLING
   ===================================================== */

.help-card[b-ru672zlnpf] {
    background: linear-gradient(135deg, var(--bg-surface-secondary) 0%, var(--bg-surface-tertiary) 100%);
    text-align: center;
}

.help-card .card-content[b-ru672zlnpf] {
    padding: 1rem;
}

.help-icon[b-ru672zlnpf] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 0.75rem auto;
    box-shadow: var(--shadow-sm);
}

.help-icon i[b-ru672zlnpf] {
    font-size: 1.25rem;
    color: var(--accent-color);
}

.help-card h4[b-ru672zlnpf] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.375rem 0;
}

.help-card p[b-ru672zlnpf] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.4;
}

/* =====================================================
   CURRENTLY ASSIGNED STAFF CARD - COMPACT SUCCESS THEME
   ===================================================== */

.current-assignment-card[b-ru672zlnpf] {
    border-left: 3px solid var(--theme-success);
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.02) 0%, rgba(20, 184, 166, 0.02) 100%);
}

.current-assignment-card .card-header[b-ru672zlnpf] {
    background: rgba(16, 185, 129, 0.05);
}

.current-assignment-card .card-header h3 i[b-ru672zlnpf] {
    color: var(--theme-success);
}

.assigned-user-display[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.875rem;
    background: var(--bg-surface);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 0.75rem;
}

.user-avatar.large[b-ru672zlnpf] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    font-size: 1.125rem;
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-teal) 100%);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

.user-info[b-ru672zlnpf] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.user-info h4.user-name[b-ru672zlnpf] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.user-info .user-position[b-ru672zlnpf],
.user-info .user-email[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.user-info .user-position i[b-ru672zlnpf],
.user-info .user-email i[b-ru672zlnpf] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.reassign-notice[b-ru672zlnpf] {
    display: flex;
    align-items: flex-start;
    gap: 0.5rem;
    padding: 0.625rem 0.75rem;
    background: var(--theme-info-subtle);
    border-radius: 8px;
    border: 1px solid rgba(6, 182, 212, 0.2);
}

.reassign-notice i[b-ru672zlnpf] {
    color: var(--theme-info);
    font-size: 1rem;
    flex-shrink: 0;
}

.reassign-notice span[b-ru672zlnpf] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

/* Form actions layout */
.form-actions[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.75rem;
    padding-top: 1rem;
    border-top: 1px solid var(--border-color);
    margin-top: 1rem;
}

/* Cancel button styling */
.cancel-btn[b-ru672zlnpf] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.cancel-btn:hover:not(:disabled)[b-ru672zlnpf] {
    background: var(--bg-surface-tertiary);
    border-color: var(--text-muted);
    color: var(--text-primary);
}

.cancel-btn:disabled[b-ru672zlnpf] {
    opacity: 0.6;
    cursor: not-allowed;
}

.cancel-btn i[b-ru672zlnpf] {
    font-size: 1rem;
}

/* =====================================================
   STATUS INFO PAGE - UNIQUE CENTER LAYOUT
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.status-info-page[b-ru672zlnpf] {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 60vh;
    padding: 2rem;
}

.status-card[b-ru672zlnpf] {
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-lg);
    max-width: 560px;
    width: 100%;
    overflow: hidden;
    text-align: center;
}

.status-card .status-icon[b-ru672zlnpf] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 2rem auto 1.5rem auto;
    font-size: 2rem;
}

.status-card .status-icon.in-progress[b-ru672zlnpf] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.status-card .status-icon.finished[b-ru672zlnpf] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-card .status-icon.waiting[b-ru672zlnpf] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-card .status-icon.default[b-ru672zlnpf] {
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
}

.status-content[b-ru672zlnpf] {
    padding: 0 2rem;
}

.status-content h2[b-ru672zlnpf] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.75rem 0;
}

.status-content .status-message[b-ru672zlnpf] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    line-height: 1.6;
    margin: 0 0 1.5rem 0;
}

.status-details[b-ru672zlnpf] {
    display: flex;
    justify-content: center;
    gap: 2rem;
    padding: 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

.status-details .detail-item[b-ru672zlnpf] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.status-details .detail-label[b-ru672zlnpf] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.status-details .detail-value[b-ru672zlnpf] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.status-details .detail-value.status-badge[b-ru672zlnpf] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.8125rem;
}

.status-details .detail-value.status-badge.in-progress[b-ru672zlnpf] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.status-details .detail-value.status-badge.finished[b-ru672zlnpf] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-details .detail-value.status-badge.waiting[b-ru672zlnpf] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-details .detail-value.status-badge i[b-ru672zlnpf] {
    font-size: 0.875rem;
}

.status-help[b-ru672zlnpf] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    background: var(--theme-info-subtle);
    border-radius: 10px;
    text-align: left;
    margin-bottom: 1.5rem;
}

.status-help > i[b-ru672zlnpf] {
    font-size: 1.25rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.status-help p[b-ru672zlnpf] {
    font-size: 0.875rem;
    color: var(--theme-info-emphasis);
    line-height: 1.5;
    margin: 0 0 0.5rem 0;
}

.status-help p:last-child[b-ru672zlnpf] {
    margin-bottom: 0;
}

.status-actions[b-ru672zlnpf] {
    display: flex;
    justify-content: center;
    gap: 1rem;
    padding: 1.5rem 2rem 2rem 2rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}

/* Action buttons for status page */
.action-btn[b-ru672zlnpf] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    border: 1px solid transparent;
}

.action-btn.primary[b-ru672zlnpf] {
    background: var(--accent-gradient);
    color: white;
    border-color: transparent;
}

.action-btn.primary:hover[b-ru672zlnpf] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(20, 184, 166, 0.3);
}

.action-btn.secondary[b-ru672zlnpf] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
}

.action-btn.secondary:hover[b-ru672zlnpf] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
}

.action-btn i[b-ru672zlnpf] {
    font-size: 1rem;
}

/* =====================================================
   SUCCESS OVERLAY
   ===================================================== */

.success-overlay[b-ru672zlnpf] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
    backdrop-filter: blur(4px);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    animation: fadeIn-b-ru672zlnpf 0.3s ease;
}

@keyframes fadeIn-b-ru672zlnpf {
    from { opacity: 0; }
    to { opacity: 1; }
}

.success-card[b-ru672zlnpf] {
    background: var(--bg-surface);
    border-radius: 16px;
    padding: 2rem;
    text-align: center;
    max-width: 360px;
    box-shadow: var(--shadow-xl);
    animation: scaleIn-b-ru672zlnpf 0.3s ease;
}

@keyframes scaleIn-b-ru672zlnpf {
    from { transform: scale(0.9); opacity: 0; }
    to { transform: scale(1); opacity: 1; }
}

.success-card .success-icon[b-ru672zlnpf] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--theme-success-subtle);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem auto;
}

.success-card .success-icon i[b-ru672zlnpf] {
    font-size: 2rem;
    color: var(--theme-success);
}

.success-card h3[b-ru672zlnpf] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
}

.success-card p[b-ru672zlnpf] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0 0 1rem 0;
}

.success-card .redirect-text[b-ru672zlnpf] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* =====================================================
   RESPONSIVE DESIGN
   ===================================================== */

@media (max-width: 768px) {
    .info-grid[b-ru672zlnpf] {
        grid-template-columns: 1fr;
    }

    .assigned-user-display[b-ru672zlnpf] {
        flex-direction: column;
        text-align: center;
    }

    .user-info .user-position[b-ru672zlnpf],
    .user-info .user-email[b-ru672zlnpf] {
        justify-content: center;
    }

    .form-actions[b-ru672zlnpf] {
        flex-direction: column-reverse;
    }

    .form-actions > *[b-ru672zlnpf] {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .preview-content[b-ru672zlnpf] {
        flex-direction: column;
        text-align: center;
    }

    .status-info-page[b-ru672zlnpf] {
        padding: 1rem;
    }

    .status-content[b-ru672zlnpf] {
        padding: 0 1.5rem;
    }

    .status-details[b-ru672zlnpf] {
        flex-direction: column;
        gap: 1rem;
    }

    .status-actions[b-ru672zlnpf] {
        flex-direction: column;
        padding: 1.25rem 1.5rem 1.5rem 1.5rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/CommitteeReview.razor.rz.scp.css */
/* ========================================
   Committee Review Page - Component-Specific
   Centralized patterns moved to app.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.committee-page[b-klqvja9apq] {
    width: 100%;
    box-sizing: border-box;
}

.committee-page .content-area[b-klqvja9apq] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    box-sizing: border-box;
}

/* Content Flow Layout */
.main-content-flow[b-klqvja9apq],
.sidebar-flow[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Stats Row */
.stats-row[b-klqvja9apq] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

.stat-card:hover[b-klqvja9apq] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.stat-icon[b-klqvja9apq] {
    width: 48px;
    height: 48px;
    border-radius: var(--border-radius, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.stat-icon.reviewers[b-klqvja9apq] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.stat-icon.completed[b-klqvja9apq] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.stat-icon.approvals[b-klqvja9apq] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.stat-icon.rejections[b-klqvja9apq] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

/* Content Grid */
.content-grid[b-klqvja9apq] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
}

.main-column[b-klqvja9apq],
.side-column[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Reviewers List */
.reviewers-list[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.reviewer-card[b-klqvja9apq] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--border-radius, 8px);
    border: 1px solid transparent;
    transition: all 0.2s ease;
}

.reviewer-card.completed[b-klqvja9apq] {
    border-color: rgba(16, 185, 129, 0.3);
    background: rgba(16, 185, 129, 0.05);
}

.reviewer-card.in-progress[b-klqvja9apq] {
    border-color: rgba(59, 130, 246, 0.3);
    background: rgba(59, 130, 246, 0.05);
}

.reviewer-card.recused[b-klqvja9apq] {
    border-color: rgba(156, 163, 175, 0.3);
    background: rgba(156, 163, 175, 0.05);
    opacity: 0.7;
}

.reviewer-card.overdue[b-klqvja9apq] {
    border-color: rgba(239, 68, 68, 0.3);
    background: rgba(239, 68, 68, 0.05);
}

.reviewer-avatar[b-klqvja9apq] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--theme-primary);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    flex-shrink: 0;
}

.reviewer-avatar.small[b-klqvja9apq] {
    width: 40px;
    height: 40px;
    font-size: 0.875rem;
}

.reviewer-info[b-klqvja9apq] {
    flex: 1;
    min-width: 0;
}

.reviewer-meta[b-klqvja9apq] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-top: 0.375rem;
}

.deadline.overdue[b-klqvja9apq] {
    color: var(--theme-danger);
    font-weight: 600;
}

.reviewer-decision[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.375rem;
}

.reviewer-actions[b-klqvja9apq] {
    display: flex;
    gap: 0.25rem;
}

.reviewer-notes[b-klqvja9apq] {
    padding: 0.75rem 1rem;
    margin-left: 4rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--border-radius, 8px);
    font-size: 0.8125rem;
    color: var(--text-secondary);
    border-left: 3px solid var(--theme-primary);
}

/* Progress Ring */
.progress-ring[b-klqvja9apq] {
    position: relative;
    width: 120px;
    height: 120px;
    margin: 0 auto 1.5rem;
}

.progress-ring svg[b-klqvja9apq] {
    transform: rotate(-90deg);
    width: 100%;
    height: 100%;
}

.progress-ring .progress-bg[b-klqvja9apq] {
    fill: none;
    stroke: var(--border-color);
    stroke-width: 8;
}

.progress-ring .progress-fill[b-klqvja9apq] {
    fill: none;
    stroke: var(--theme-primary);
    stroke-width: 8;
    stroke-linecap: round;
    transition: stroke-dashoffset 0.5s ease;
}

.progress-center[b-klqvja9apq] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    text-align: center;
}

/* Vote Breakdown */
.vote-breakdown[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.vote-row[b-klqvja9apq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: var(--border-radius, 8px);
    background: var(--bg-surface-secondary);
}

.vote-row.approve i[b-klqvja9apq] {
    color: var(--theme-success);
}

.vote-row.reject i[b-klqvja9apq] {
    color: var(--theme-danger);
}

.vote-row.defer i[b-klqvja9apq] {
    color: var(--theme-warning);
}

.vote-label[b-klqvja9apq] {
    flex: 1;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Decision Card */
.decision-card[b-klqvja9apq] {
    border: 2px solid var(--theme-primary);
}

.decision-card.finalized[b-klqvja9apq] {
    border-color: var(--border-color);
}

.final-decision[b-klqvja9apq] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem;
    border-radius: var(--border-radius, 8px);
    margin-bottom: 1rem;
}

.final-decision.accepted[b-klqvja9apq] {
    background: var(--theme-success-subtle);
}

.final-decision.rejected[b-klqvja9apq] {
    background: var(--theme-danger-subtle);
}

.final-decision .decision-icon[b-klqvja9apq] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.final-decision.accepted .decision-icon[b-klqvja9apq] {
    background: var(--theme-success);
    color: white;
}

.final-decision.rejected .decision-icon[b-klqvja9apq] {
    background: var(--theme-danger);
    color: white;
}

.decision-meta[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.decision-meta .meta-row.notes[b-klqvja9apq] {
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--border-radius, 8px);
    border-left: 3px solid var(--theme-primary);
}

.pending-reviews[b-klqvja9apq] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 1rem;
    background: var(--theme-warning-subtle);
    border-radius: var(--border-radius, 8px);
    color: var(--theme-warning);
    font-weight: 500;
    margin-bottom: 1rem;
}

.pending-reviews i[b-klqvja9apq] {
    font-size: 1.25rem;
    animation: pulse-b-klqvja9apq 2s ease-in-out infinite;
}

@keyframes pulse-b-klqvja9apq {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* Forms */
.override-options[b-klqvja9apq] {
    display: flex;
    gap: 0.75rem;
}

.decision-actions[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Config Card */
.config-list[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.config-item[b-klqvja9apq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.625rem 0;
    border-bottom: 1px solid var(--border-color);
}

.config-item:last-child[b-klqvja9apq] {
    border-bottom: none;
}

/* Dialog */
.available-reviewers[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.available-reviewer[b-klqvja9apq] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    border: 2px solid var(--border-color);
    border-radius: var(--border-radius, 8px);
    cursor: pointer;
    transition: all 0.2s ease;
    background: var(--bg-surface);
}

.available-reviewer:hover[b-klqvja9apq] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.available-reviewer.selected[b-klqvja9apq] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

/* Rejection Type Selection */
.rejection-section[b-klqvja9apq] {
    padding-top: 1rem;
    border-top: 1px dashed var(--border-color);
    margin-top: 0.5rem;
}

.rejection-types-compact[b-klqvja9apq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* Note: Spinner is now centralized in app.css. */

/* Responsive */
@media (max-width: 1200px) {
    .content-grid[b-klqvja9apq] {
        grid-template-columns: 1fr 360px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-klqvja9apq] {
        grid-template-columns: 1fr;
    }

    .side-column[b-klqvja9apq] {
        order: -1;
    }

    .stats-row[b-klqvja9apq] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .stats-row[b-klqvja9apq] {
        grid-template-columns: 1fr;
    }

    .reviewer-card[b-klqvja9apq] {
        flex-wrap: wrap;
    }

    .reviewer-decision[b-klqvja9apq] {
        width: 100%;
        flex-direction: row;
        justify-content: flex-start;
        margin-top: 0.5rem;
        padding-top: 0.5rem;
        border-top: 1px solid var(--border-color);
    }
}
/* /Pages/Recruiter/ApplicationStagePages/HomeworkSpecification.razor.rz.scp.css */
/* =====================================================
   HOMEWORK SPECIFICATION PAGE STYLES
   Teal accent theme (var(--theme-info)) for homework
   Dark mode handled automatically via CSS variables from theme-core.css
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* CSS Variables for this page */
.homework-spec-page[b-usq82ooebz] {
    --accent-color: var(--theme-info);
    --accent-light: var(--theme-cyan-light);
    --accent-dark: var(--theme-info-emphasis);
    --accent-bg: rgba(6, 182, 212, 0.1);
    --accent-bg-hover: rgba(6, 182, 212, 0.15);
    --accent-gradient: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info) 100%);
    min-height: 100vh;
    background: var(--bg-body);
}

/* =====================================================
   CONTENT FLOW LAYOUT
   ===================================================== */

.main-content-flow[b-usq82ooebz],
.sidebar-flow[b-usq82ooebz] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.stage-badge[b-usq82ooebz] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--accent-bg);
    color: var(--accent-dark);
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 600;
}

.stage-badge i[b-usq82ooebz] {
    font-size: 0.875rem;
}

/* =====================================================
   QUICK STATS BAR
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.quick-stats[b-usq82ooebz] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

/* stat-card base styles now in app.css */

/* Page-specific stat-icon variants */
.stat-icon.homework[b-usq82ooebz] {
    background: rgba(6, 182, 212, 0.1);
    color: var(--theme-info);
    font-size: 1.375rem;
}

.stat-icon.duration[b-usq82ooebz] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    font-size: 1.375rem;
}

.stat-icon.state[b-usq82ooebz] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
    font-size: 1.375rem;
}

.stat-icon.status[b-usq82ooebz] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
    font-size: 1.375rem;
}

/* =====================================================
   CONTENT CARDS
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.content-card[b-usq82ooebz] {
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

/* Card header patterns consolidated in app.css */
.card-header[b-usq82ooebz] {
    padding: 1.25rem 1.5rem;
}

.card-header h3[b-usq82ooebz] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.card-header h3 i[b-usq82ooebz] {
    color: var(--accent-color);
    font-size: 1.25rem;
}

.card-content[b-usq82ooebz] {
    padding: 1.5rem;
}

/* =====================================================
   FORM STYLES
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.form-card[b-usq82ooebz] {
    border-top: 3px solid var(--accent-color);
}

.form-section[b-usq82ooebz] {
    margin-bottom: 1.5rem;
}

.form-group[b-usq82ooebz] {
    margin-bottom: 1.5rem;
}

.form-group:last-child[b-usq82ooebz] {
    margin-bottom: 0;
}

.form-label[b-usq82ooebz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.form-label i[b-usq82ooebz] {
    color: var(--accent-color);
    font-size: 1.125rem;
}

.form-label .required[b-usq82ooebz] {
    color: var(--theme-danger);
    font-weight: 700;
}

.form-helper[b-usq82ooebz] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0 0 0.75rem 0;
    line-height: 1.4;
}

.editor-wrapper[b-usq82ooebz] {
    border-radius: 10px;
    overflow: hidden;
    border: 1px solid var(--border-color);
}

.editor-wrapper[b-usq82ooebz]  .rz-html-editor {
    border: none !important;
}

/* Duration Input */
.duration-input-wrapper[b-usq82ooebz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    max-width: 280px;
}

.duration-btn[b-usq82ooebz] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    font-size: 1.25rem;
}

.duration-btn:hover[b-usq82ooebz] {
    background: var(--accent-bg);
    border-color: var(--accent-color);
    color: var(--accent-color);
}

.duration-btn.minus:hover[b-usq82ooebz] {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger);
    color: var(--theme-danger);
}

.duration-btn.plus:hover[b-usq82ooebz] {
    background: var(--theme-success-subtle);
    border-color: var(--theme-success);
    color: var(--theme-success);
}

.duration-input[b-usq82ooebz] {
    width: 100px;
    height: 44px;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    text-align: center;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    background: var(--bg-surface-tertiary);
}

.duration-input:focus[b-usq82ooebz] {
    outline: none;
    border-color: var(--accent-color);
    box-shadow: 0 0 0 3px rgba(6, 182, 212, 0.1);
}

.duration-suffix[b-usq82ooebz] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    font-weight: 500;
    margin-left: 0.25rem;
}

/* Duration Presets */
.duration-presets[b-usq82ooebz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 1.5rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
}

.presets-label[b-usq82ooebz] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
    margin-right: 0.5rem;
}

.preset-btn[b-usq82ooebz] {
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.preset-btn:hover[b-usq82ooebz] {
    background: var(--accent-bg);
    border-color: var(--accent-color);
    color: var(--accent-dark);
}

.preset-btn.active[b-usq82ooebz] {
    background: var(--accent-gradient);
    border-color: transparent;
    color: white;
    box-shadow: 0 2px 8px rgba(6, 182, 212, 0.3);
}

/* Form Actions */
.form-actions[b-usq82ooebz] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding-top: 1.5rem;
    border-top: 1px solid var(--border-color);
}

.cancel-btn[b-usq82ooebz],
.submit-btn[b-usq82ooebz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border-radius: 10px;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
}

.cancel-btn[b-usq82ooebz] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
}

.cancel-btn:hover[b-usq82ooebz] {
    background: var(--border-color);
    color: var(--text-primary);
}

.submit-btn[b-usq82ooebz] {
    background: var(--accent-gradient);
    color: white;
    box-shadow: 0 4px 12px rgba(6, 182, 212, 0.3);
}

.submit-btn:hover:not(:disabled)[b-usq82ooebz] {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(6, 182, 212, 0.4);
}

.submit-btn:disabled[b-usq82ooebz] {
    opacity: 0.6;
    cursor: not-allowed;
    transform: none;
}

.submit-btn .spinner[b-usq82ooebz] {
    width: 18px;
    height: 18px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin 0.8s linear infinite;
}

/* @keyframes spin - Using centralized animation from app.css (line 4225) */

/* =====================================================
   SIDEBAR CARDS
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.sidebar-card[b-usq82ooebz] {
    background: var(--bg-surface);
    border-radius: 14px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
}

/* Card header patterns consolidated in app.css */
.sidebar-card .card-header[b-usq82ooebz] {
    padding: 1rem 1.25rem;
}

.sidebar-card .card-header h3[b-usq82ooebz] {
    font-size: 0.9375rem;
}

.sidebar-card .card-content[b-usq82ooebz] {
    padding: 1.25rem;
}

/* Tips Card */
.tips-card[b-usq82ooebz] {
    border-top: 3px solid var(--accent-color);
}

.tips-list[b-usq82ooebz] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.tip-item[b-usq82ooebz] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

.tip-item i[b-usq82ooebz] {
    color: var(--accent-color);
    font-size: 1rem;
    margin-top: 0.125rem;
    flex-shrink: 0;
}

/* Stage Progress */
.stages-section[b-usq82ooebz] {
    margin-bottom: 1rem;
}

.stages-section:last-child[b-usq82ooebz] {
    margin-bottom: 0;
}

.section-label[b-usq82ooebz] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    margin-bottom: 0.75rem;
}

.section-label.completed[b-usq82ooebz] {
    color: var(--theme-success-emphasis);
}

.section-label.pending[b-usq82ooebz] {
    color: var(--theme-warning-emphasis);
}

.section-label i[b-usq82ooebz] {
    font-size: 0.875rem;
}

.stages-list[b-usq82ooebz] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.stage-item[b-usq82ooebz] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.875rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
}

.stage-item.completed[b-usq82ooebz] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.stage-item.pending[b-usq82ooebz] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.stage-item i[b-usq82ooebz] {
    font-size: 1rem;
}

/* Preview Card */
.preview-card[b-usq82ooebz] {
    background: linear-gradient(135deg, var(--theme-info-subtle) 0%, rgba(6, 182, 212, 0.05) 100%);
    border-color: rgba(6, 182, 212, 0.2);
}

.preview-item[b-usq82ooebz] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 0;
    border-bottom: 1px solid rgba(6, 182, 212, 0.1);
}

.preview-item:last-child[b-usq82ooebz] {
    border-bottom: none;
    padding-bottom: 0;
}

.preview-item:first-child[b-usq82ooebz] {
    padding-top: 0;
}

.preview-label[b-usq82ooebz] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.preview-value[b-usq82ooebz] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.preview-value.empty[b-usq82ooebz] {
    color: var(--text-muted);
    font-style: italic;
}

/* =====================================================
   RESPONSIVE DESIGN
   ===================================================== */

@media (max-width: 768px) {
    .quick-stats[b-usq82ooebz] {
        grid-template-columns: repeat(2, 1fr);
    }

    .duration-presets[b-usq82ooebz] {
        flex-direction: column;
        align-items: flex-start;
    }

    .presets-label[b-usq82ooebz] {
        margin-bottom: 0.5rem;
    }

    .form-actions[b-usq82ooebz] {
        flex-direction: column;
    }

    .cancel-btn[b-usq82ooebz],
    .submit-btn[b-usq82ooebz] {
        width: 100%;
        justify-content: center;
    }

    .sidebar-card[b-usq82ooebz] {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .quick-stats[b-usq82ooebz] {
        grid-template-columns: 1fr;
    }

    .stat-card[b-usq82ooebz] {
        padding: 1rem;
    }

    .card-content[b-usq82ooebz] {
        padding: 1rem;
    }

    .duration-input-wrapper[b-usq82ooebz] {
        max-width: 100%;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/HomeworkStageDatails.razor.rz.scp.css */
/* =====================================================
   HOMEWORK STAGE DETAILS PAGE STYLES
   Domain-specific homework stage layout only
   Generic styles (badges, buttons, cards) removed - use global theme
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* CSS Variables for homework accent */
.homework-details-page[b-xlsk1nvth3] {
    --accent-color: var(--theme-info);
    --accent-light: var(--theme-cyan-light);
    --accent-dark: var(--theme-info-emphasis);
    --accent-bg: rgba(6, 182, 212, 0.1);
    --accent-bg-hover: rgba(6, 182, 212, 0.15);
    --accent-gradient: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info) 100%);
    min-height: 100vh;
    background: var(--bg-body);
}

/* =====================================================
   CONTENT FLOW LAYOUT
   ===================================================== */

.main-content-flow[b-xlsk1nvth3],
.sidebar-flow[b-xlsk1nvth3] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Stage badge in header */
.stage-badge[b-xlsk1nvth3] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    background: rgba(6, 182, 212, 0.15);
    color: var(--accent-dark);
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.stage-badge i[b-xlsk1nvth3] {
    font-size: 0.8125rem;
}

/* =====================================================
   HOMEWORK STATUS BANNER LAYOUT
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.status-banner[b-xlsk1nvth3] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

.status-banner.accepted[b-xlsk1nvth3] {
    background: linear-gradient(135deg, var(--theme-success-subtle) 0%, rgba(5, 150, 105, 0.1) 100%);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.status-banner.pending[b-xlsk1nvth3] {
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, rgba(217, 119, 6, 0.1) 100%);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.status-icon[b-xlsk1nvth3] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.status-banner.accepted .status-icon[b-xlsk1nvth3] {
    background: rgba(16, 185, 129, 0.2);
    color: var(--theme-success-emphasis);
}

.status-banner.pending .status-icon[b-xlsk1nvth3] {
    background: rgba(245, 158, 11, 0.2);
    color: var(--theme-warning-emphasis);
}

.status-content[b-xlsk1nvth3] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.status-label[b-xlsk1nvth3] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 500;
}

.status-value[b-xlsk1nvth3] {
    font-size: 1.125rem;
    font-weight: 700;
}

.status-banner.accepted .status-value[b-xlsk1nvth3] {
    color: var(--theme-success-emphasis);
}

.status-banner.pending .status-value[b-xlsk1nvth3] {
    color: var(--theme-warning-emphasis);
}

.status-details[b-xlsk1nvth3] {
    margin-left: auto;
}

.reviewed-by[b-xlsk1nvth3] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--theme-success-emphasis);
    font-weight: 500;
}

.reviewed-by i[b-xlsk1nvth3] {
    font-size: 1rem;
}

/* =====================================================
   HOMEWORK QUICK STATS GRID
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.quick-stats[b-xlsk1nvth3] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.stat-icon.homework[b-xlsk1nvth3] {
    background: rgba(6, 182, 212, 0.1);
    color: var(--theme-info);
}

.stat-icon.duration[b-xlsk1nvth3] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.stat-icon.score[b-xlsk1nvth3] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.stat-icon.state[b-xlsk1nvth3] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

/* =====================================================
   HOMEWORK DETAIL SECTIONS (Unique Structure)
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.description-section[b-xlsk1nvth3],
.url-section[b-xlsk1nvth3],
.attachments-section[b-xlsk1nvth3],
.remark-section[b-xlsk1nvth3] {
    margin-bottom: 1.5rem;
}

.description-section:last-child[b-xlsk1nvth3],
.url-section:last-child[b-xlsk1nvth3],
.attachments-section:last-child[b-xlsk1nvth3],
.remark-section:last-child[b-xlsk1nvth3] {
    margin-bottom: 0;
}

.section-label[b-xlsk1nvth3] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.75rem;
}

.description-content[b-xlsk1nvth3] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    font-size: 0.9375rem;
    color: var(--text-primary);
    line-height: 1.6;
}

.url-link[b-xlsk1nvth3] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--accent-bg);
    color: var(--accent-dark);
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    max-width: 100%;
}

.url-link:hover[b-xlsk1nvth3] {
    background: var(--accent-bg-hover);
}

.url-link span[b-xlsk1nvth3] {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

/* Homework Attachments */
.attachments-list[b-xlsk1nvth3] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.attachment-item[b-xlsk1nvth3] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    text-decoration: none;
    transition: all 0.2s ease;
}

.attachment-item:hover[b-xlsk1nvth3] {
    background: var(--accent-bg);
    border-color: rgba(6, 182, 212, 0.3);
}

.attachment-icon[b-xlsk1nvth3] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--accent-color);
    font-size: 1.125rem;
    border: 1px solid var(--border-color);
}

.attachment-name[b-xlsk1nvth3] {
    flex: 1;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.download-icon[b-xlsk1nvth3] {
    color: var(--text-muted);
    font-size: 1.125rem;
}

.attachment-item:hover .download-icon[b-xlsk1nvth3] {
    color: var(--accent-color);
}

/* Homework Remark */
.remark-content[b-xlsk1nvth3] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem;
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-subtle) 100%);
    border-radius: 10px;
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.remark-content i[b-xlsk1nvth3] {
    color: var(--theme-warning-emphasis);
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.remark-content p[b-xlsk1nvth3] {
    margin: 0;
    font-size: 0.9375rem;
    color: var(--theme-warning-emphasis);
    line-height: 1.5;
    font-style: italic;
}

/* =====================================================
   HOMEWORK TIMELINE (Unique Component)
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.timeline-card[b-xlsk1nvth3] {
    border-top: 3px solid var(--accent-color);
}

.timeline[b-xlsk1nvth3] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.timeline-item[b-xlsk1nvth3] {
    display: flex;
    gap: 1rem;
    position: relative;
    padding-bottom: 1.5rem;
}

.timeline-item:last-child[b-xlsk1nvth3] {
    padding-bottom: 0;
}

.timeline-item[b-xlsk1nvth3]::before {
    content: '';
    position: absolute;
    left: 11px;
    top: 24px;
    bottom: 0;
    width: 2px;
    background: var(--border-color);
}

.timeline-item:last-child[b-xlsk1nvth3]::before {
    display: none;
}

.timeline-marker[b-xlsk1nvth3] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    background: var(--border-color);
    border: 3px solid var(--bg-surface);
    box-shadow: 0 0 0 2px var(--border-color);
    flex-shrink: 0;
    z-index: 1;
}

.timeline-item.completed .timeline-marker[b-xlsk1nvth3] {
    background: var(--accent-color);
    box-shadow: 0 0 0 2px var(--accent-color);
}

.timeline-item.deadline .timeline-marker[b-xlsk1nvth3] {
    background: var(--theme-danger);
    box-shadow: 0 0 0 2px var(--theme-danger);
}

.timeline-item.deadline.passed .timeline-marker[b-xlsk1nvth3] {
    background: var(--theme-danger);
}

.timeline-content[b-xlsk1nvth3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    padding-top: 0.125rem;
}

.timeline-label[b-xlsk1nvth3] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.timeline-value[b-xlsk1nvth3] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.timeline-item.deadline .timeline-value[b-xlsk1nvth3] {
    color: var(--theme-danger);
}

/* =====================================================
   STAFF INFO DISPLAY
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.staff-info[b-xlsk1nvth3] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.staff-avatar[b-xlsk1nvth3] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--accent-gradient);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 1rem;
    flex-shrink: 0;
}

.staff-details[b-xlsk1nvth3] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.staff-name[b-xlsk1nvth3] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.staff-email[b-xlsk1nvth3] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.staff-email i[b-xlsk1nvth3] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.no-staff[b-xlsk1nvth3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    color: var(--text-muted);
    text-align: center;
}

.no-staff i[b-xlsk1nvth3] {
    font-size: 2rem;
}

.no-staff span[b-xlsk1nvth3] {
    font-size: 0.875rem;
}

/* =====================================================
   HOMEWORK SCORE DISPLAY (Unique Component)
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.score-card[b-xlsk1nvth3] {
    background: linear-gradient(135deg, var(--theme-warning-subtle) 0%, var(--theme-warning-subtle) 100%);
    border-color: rgba(245, 158, 11, 0.2);
}

.score-display[b-xlsk1nvth3] {
    display: flex;
    justify-content: center;
}

.score-circle[b-xlsk1nvth3] {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: var(--bg-surface);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
}

.score-circle .score-value[b-xlsk1nvth3] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--theme-warning-emphasis);
    line-height: 1;
}

.score-circle .score-label[b-xlsk1nvth3] {
    font-size: 0.75rem;
    color: var(--theme-warning-emphasis);
    font-weight: 500;
    text-transform: uppercase;
    margin-top: 0.25rem;
}

/* =====================================================
   HOMEWORK PRIMARY ACTION
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.primary-btn[b-xlsk1nvth3] {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    background: var(--accent-gradient);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 4px 12px rgba(6, 182, 212, 0.3);
}

.primary-btn:hover[b-xlsk1nvth3] {
    transform: translateY(-1px);
    box-shadow: 0 6px 16px rgba(6, 182, 212, 0.4);
}

.primary-btn i[b-xlsk1nvth3] {
    font-size: 1.125rem;
}

/* =====================================================
   RESPONSIVE HOMEWORK LAYOUT
   ===================================================== */

@media (max-width: 768px) {
    .quick-stats[b-xlsk1nvth3] {
        grid-template-columns: repeat(2, 1fr);
    }

    .status-banner[b-xlsk1nvth3] {
        flex-wrap: wrap;
    }

    .status-details[b-xlsk1nvth3] {
        width: 100%;
        margin-left: 0;
        margin-top: 0.5rem;
    }

    .sidebar-card[b-xlsk1nvth3] {
        min-width: auto;
    }
}

@media (max-width: 480px) {
    .quick-stats[b-xlsk1nvth3] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/InterviewStageDatails.razor.rz.scp.css */
/* Interview Stage Details Page Styles */
/* Purple accent theme for interview stage */

.interview-details-page[b-xv58ydwqza] {
    --accent-color: var(--theme-purple);
    --accent-light: var(--theme-purple-light);
    --accent-dark: var(--theme-purple-emphasis);
    --accent-bg: rgba(139, 92, 246, 0.1);
    --accent-border: rgba(139, 92, 246, 0.2);
    width: 100%;
}

/* Content Flow Layout */
.main-content-flow[b-xv58ydwqza],
.sidebar-flow[b-xv58ydwqza] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Stage Badge (Interview-specific) */
.stage-badge[b-xv58ydwqza] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: var(--accent-bg);
    color: var(--accent-color);
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
}

.stage-badge i[b-xv58ydwqza] {
    font-size: 0.8125rem;
}

/* Appointments Count Badge */
.appointments-card .appointments-count[b-xv58ydwqza] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    background: var(--bg-surface-tertiary);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
}

/* Info Grid (Interview-specific) */
.info-grid[b-xv58ydwqza] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
}

.info-item[b-xv58ydwqza] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
}

.info-icon[b-xv58ydwqza] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--bg-surface-tertiary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
    font-size: 1.125rem;
    flex-shrink: 0;
}

.info-details[b-xv58ydwqza] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.info-details .info-label[b-xv58ydwqza] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.info-details .info-value[b-xv58ydwqza] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

/* Appointments List (Interview-specific) */
.appointments-list[b-xv58ydwqza] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.appointment-card[b-xv58ydwqza] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    border-radius: 12px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
    transition: all 0.2s ease;
}

.appointment-card:hover[b-xv58ydwqza] {
    border-color: var(--accent-border);
    background: var(--bg-surface);
}

.appointment-card.confirmed[b-xv58ydwqza] {
    border-left: 3px solid var(--theme-success);
}

.appointment-card.rejected[b-xv58ydwqza] {
    border-left: 3px solid var(--theme-danger);
}

.appointment-card.pending[b-xv58ydwqza] {
    border-left: 3px solid var(--theme-warning);
}

.appointment-card.waiting[b-xv58ydwqza] {
    border-left: 3px solid var(--text-secondary);
}

.appointment-card.finished[b-xv58ydwqza] {
    border-left: 3px solid var(--accent-color);
}

.appointment-datetime[b-xv58ydwqza] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
}

.date-block[b-xv58ydwqza] {
    width: 56px;
    height: 56px;
    border-radius: 10px;
    background: var(--accent-bg);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.date-block .day[b-xv58ydwqza] {
    font-size: 1.375rem;
    font-weight: 700;
    color: var(--accent-color);
    line-height: 1;
}

.date-block .month[b-xv58ydwqza] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--accent-light);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.time-details[b-xv58ydwqza] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.time-range[b-xv58ydwqza],
.duration[b-xv58ydwqza] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.time-range i[b-xv58ydwqza],
.duration i[b-xv58ydwqza] {
    color: var(--text-muted);
    font-size: 0.9375rem;
}

.duration[b-xv58ydwqza] {
    color: var(--text-secondary);
    font-size: 0.8125rem;
}

.appointment-status[b-xv58ydwqza] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.5rem;
}

.accepted-badge[b-xv58ydwqza] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--theme-success);
}

.accepted-badge i[b-xv58ydwqza] {
    font-size: 0.875rem;
}

.delete-btn[b-xv58ydwqza] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid var(--theme-danger-border);
    background: rgba(239, 68, 68, 0.05);
    color: var(--theme-danger);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    margin-left: 0.5rem;
}

.delete-btn:hover:not(:disabled)[b-xv58ydwqza] {
    background: var(--theme-danger);
    color: white;
    border-color: var(--theme-danger);
}

.delete-btn:disabled[b-xv58ydwqza] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Remark Content (Interview-specific) */
.remark-content[b-xv58ydwqza] {
    position: relative;
    padding: 1.25rem;
    padding-left: 2.5rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border-left: 3px solid var(--accent-color);
}

.remark-content i[b-xv58ydwqza] {
    position: absolute;
    left: 0.75rem;
    top: 1rem;
    font-size: 1.25rem;
    color: var(--accent-light);
}

.remark-content p[b-xv58ydwqza] {
    margin: 0;
    color: var(--text-primary);
    font-size: 0.9375rem;
    line-height: 1.6;
}

/* Staff Avatar (Interview-specific) */
.staff-avatar[b-xv58ydwqza] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.9375rem;
}

.staff-avatar.reviewer[b-xv58ydwqza] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
}

/* Score Display (Interview-specific) */
.score-display[b-xv58ydwqza] {
    display: flex;
    justify-content: center;
}

.score-circle[b-xv58ydwqza] {
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--accent-bg), rgba(139, 92, 246, 0.05));
    border: 3px solid var(--accent-color);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.score-circle .score-value[b-xv58ydwqza] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--accent-color);
    line-height: 1;
}

.score-circle .score-label[b-xv58ydwqza] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 0.25rem;
}

/* Responsive Design (Interview-specific breakpoints) */
@media (max-width: 768px) {
    .info-grid[b-xv58ydwqza] {
        grid-template-columns: 1fr;
    }

    .appointment-card[b-xv58ydwqza] {
        flex-direction: column;
        align-items: flex-start;
    }

    .appointment-datetime[b-xv58ydwqza] {
        width: 100%;
    }

    .appointment-status[b-xv58ydwqza] {
        width: 100%;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        padding-top: 0.75rem;
        border-top: 1px solid var(--border-color);
    }

    .delete-btn[b-xv58ydwqza] {
        margin-left: auto;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ProcessAdmission.razor.rz.scp.css */
/* ========================================
   Process Admission Page - Scoped Styles
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Page Container */
.process-page[b-ep8unjmgeh] {
    width: 100%;
}

.content-area[b-ep8unjmgeh] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Applicant Header - Admission-Specific
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.applicant-info[b-ep8unjmgeh] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
}

.applicant-avatar[b-ep8unjmgeh] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-emphasis));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 600;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.25);
}

.applicant-details[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.stage-label[b-ep8unjmgeh] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-emphasis));
    color: white;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    width: fit-content;
}

.stage-label i[b-ep8unjmgeh] {
    font-size: 0.875rem;
}

.applicant-name[b-ep8unjmgeh] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
}

.applicant-meta[b-ep8unjmgeh] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.meta-item[b-ep8unjmgeh] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.meta-item i[b-ep8unjmgeh] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.meta-item.result[b-ep8unjmgeh] {
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    font-weight: 500;
}

.meta-item.result.success[b-ep8unjmgeh] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.meta-item.result.warning[b-ep8unjmgeh] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.meta-item.result.danger[b-ep8unjmgeh] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.applied-date[b-ep8unjmgeh] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

/* ========================================
   Content Grid Layout
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.content-grid[b-ep8unjmgeh] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
}

.main-column[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.side-column[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Stage Scores - Admission-Specific Display
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.stage-scores[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.stage-score-item[b-ep8unjmgeh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--radius-md, 8px);
    transition: all 0.15s ease;
}

.stage-score-item:hover[b-ep8unjmgeh] {
    background: var(--bg-surface-tertiary);
}

.stage-info[b-ep8unjmgeh] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.stage-icon[b-ep8unjmgeh] {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.stage-icon i[b-ep8unjmgeh] {
    font-size: 1.25rem;
}

.stage-details[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.stage-name[b-ep8unjmgeh] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.stage-date[b-ep8unjmgeh] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.stage-rating[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.125rem;
}

.rating-value[b-ep8unjmgeh] {
    font-size: 1.125rem;
    font-weight: 700;
}

.rating-value.excellent[b-ep8unjmgeh] {
    color: var(--theme-success);
}

.rating-value.good[b-ep8unjmgeh] {
    color: var(--theme-info);
}

.rating-value.average[b-ep8unjmgeh] {
    color: var(--theme-warning);
}

.rating-value.poor[b-ep8unjmgeh] {
    color: var(--theme-danger);
}

.rating-label[b-ep8unjmgeh] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* ========================================
   Admission Checklist - Domain-Specific
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.checklist[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.check-item[b-ep8unjmgeh] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem;
    border-radius: var(--radius-md, 8px);
    transition: all 0.15s ease;
}

.check-item.passed[b-ep8unjmgeh] {
    background: var(--theme-success-subtle);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.check-item.passed i[b-ep8unjmgeh] {
    color: var(--theme-success);
}

.check-item.warning[b-ep8unjmgeh] {
    background: var(--theme-warning-subtle);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.check-item.warning i[b-ep8unjmgeh] {
    color: var(--theme-warning);
}

.check-item.failed[b-ep8unjmgeh] {
    background: var(--theme-danger-subtle);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.check-item.failed i[b-ep8unjmgeh] {
    color: var(--theme-danger);
}

.check-item i[b-ep8unjmgeh] {
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.check-content[b-ep8unjmgeh] {
    flex: 1;
}

.check-title[b-ep8unjmgeh] {
    display: block;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

.check-desc[b-ep8unjmgeh] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* ========================================
   Admission Decision UI - Unique to Flow
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.decision-card[b-ep8unjmgeh] {
    border-color: var(--theme-warning);
    border-width: 2px;
    position: sticky;
    top: 1rem;
}

.score-wrapper[b-ep8unjmgeh] {
    position: relative;
    display: flex;
    align-items: center;
}

.score-input[b-ep8unjmgeh] {
    padding-right: 3rem;
}

.score-max[b-ep8unjmgeh] {
    position: absolute;
    right: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
    font-weight: 500;
    pointer-events: none;
}

.score-display[b-ep8unjmgeh] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--radius-md, 8px);
    margin-bottom: 0.5rem;
}

.score-bar-bg[b-ep8unjmgeh] {
    height: 8px;
    background: var(--border-color);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.score-bar[b-ep8unjmgeh] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.score-bar.excellent[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-light));
}

.score-bar.good[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-light));
}

.score-bar.average[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-light));
}

.score-bar.poor[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-light));
}

.score-info[b-ep8unjmgeh] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.score-number[b-ep8unjmgeh] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-primary);
}

.score-text[b-ep8unjmgeh] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.decision-label[b-ep8unjmgeh] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 1rem;
}

.decision-label i[b-ep8unjmgeh] {
    color: var(--theme-warning);
}

.decision-actions[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.btn-decision[b-ep8unjmgeh] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    padding: 0.875rem 1.25rem;
    border-radius: var(--radius-md, 8px);
    font-size: 0.9375rem;
    font-weight: 600;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.15s ease;
    width: 100%;
}

.btn-decision i[b-ep8unjmgeh] {
    font-size: 1.25rem;
}

.btn-decision.admit[b-ep8unjmgeh] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
    border-color: var(--theme-success);
}

.btn-decision.admit:hover:not(:disabled)[b-ep8unjmgeh] {
    background: linear-gradient(135deg, var(--theme-success-emphasis), var(--theme-success-emphasis));
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.35);
}

.btn-decision.waiting[b-ep8unjmgeh] {
    background: var(--bg-surface);
    color: var(--theme-warning);
    border-color: var(--theme-warning);
}

.btn-decision.waiting:hover:not(:disabled)[b-ep8unjmgeh] {
    background: var(--theme-warning-subtle);
}

.btn-decision.decline[b-ep8unjmgeh] {
    background: var(--bg-surface);
    color: var(--theme-danger);
    border-color: var(--theme-danger);
}

.btn-decision.decline:hover:not(:disabled)[b-ep8unjmgeh] {
    background: var(--theme-danger-subtle);
}

.btn-decision:disabled[b-ep8unjmgeh] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-decision.loading[b-ep8unjmgeh] {
    pointer-events: none;
}

.decision-hint[b-ep8unjmgeh] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--theme-info-subtle);
    border-left: 3px solid var(--theme-info);
    border-radius: var(--radius-md, 8px);
    margin-top: 1rem;
}

.decision-hint i[b-ep8unjmgeh] {
    font-size: 1.125rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.decision-hint div[b-ep8unjmgeh] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

.decision-hint strong[b-ep8unjmgeh] {
    color: var(--text-primary);
}

/* ========================================
   Eligibility Recommendation - Admission Flow
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.eligibility-recommendation[b-ep8unjmgeh] {
    padding: 1rem;
    border-radius: var(--radius-md, 8px);
    margin-bottom: 1rem;
}

.eligibility-recommendation.eligibility-excellent[b-ep8unjmgeh] {
    background: var(--theme-success-subtle);
    border: 1px solid var(--theme-success);
}

.eligibility-recommendation.eligibility-good[b-ep8unjmgeh] {
    background: var(--theme-primary-subtle);
    border: 1px solid var(--theme-primary);
}

.eligibility-recommendation.eligibility-fair[b-ep8unjmgeh] {
    background: var(--theme-warning-subtle);
    border: 1px solid var(--theme-warning);
}

.eligibility-recommendation.eligibility-low[b-ep8unjmgeh] {
    background: var(--theme-danger-subtle);
    border: 1px solid var(--theme-danger);
}

.eligibility-header[b-ep8unjmgeh] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.eligibility-header i[b-ep8unjmgeh] {
    font-size: 1.25rem;
}

.eligibility-excellent .eligibility-header i[b-ep8unjmgeh] {
    color: var(--theme-success);
}

.eligibility-good .eligibility-header i[b-ep8unjmgeh] {
    color: var(--theme-primary);
}

.eligibility-fair .eligibility-header i[b-ep8unjmgeh] {
    color: var(--theme-warning);
}

.eligibility-low .eligibility-header i[b-ep8unjmgeh] {
    color: var(--theme-danger);
}

.eligibility-title[b-ep8unjmgeh] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.eligibility-content[b-ep8unjmgeh] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.eligibility-score-display[b-ep8unjmgeh] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
}

.eligibility-score-display .score-label[b-ep8unjmgeh] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-right: 0.5rem;
}

.eligibility-score-display .score-value[b-ep8unjmgeh] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
}

.eligibility-score-display .score-max[b-ep8unjmgeh] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.eligibility-recommendation .eligibility-bar[b-ep8unjmgeh] {
    height: 6px;
    background: var(--bg-surface-tertiary);
    border-radius: 3px;
    overflow: hidden;
}

.eligibility-recommendation .bar-fill[b-ep8unjmgeh] {
    height: 100%;
    border-radius: 3px;
    transition: width 0.3s ease;
}

.eligibility-excellent .bar-fill[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-emphasis));
}

.eligibility-good .bar-fill[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-primary-emphasis));
}

.eligibility-fair .bar-fill[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-emphasis));
}

.eligibility-low .bar-fill[b-ep8unjmgeh] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-emphasis));
}

.eligibility-details[b-ep8unjmgeh] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
}

.eligibility-details .choice-info[b-ep8unjmgeh],
.eligibility-details .rating-info[b-ep8unjmgeh] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.eligibility-details i[b-ep8unjmgeh] {
    font-size: 0.875rem;
    opacity: 0.7;
}

.recommendation-text[b-ep8unjmgeh] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    padding-top: 0.5rem;
    border-top: 1px dashed var(--border-color);
}

/* ========================================
   Responsive Design
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .content-grid[b-ep8unjmgeh] {
        grid-template-columns: 1fr 350px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-ep8unjmgeh] {
        grid-template-columns: 1fr;
    }

    .side-column[b-ep8unjmgeh] {
        order: -1;
    }

    .decision-card[b-ep8unjmgeh] {
        position: static;
    }
}

@media (max-width: 768px) {
    .applicant-info[b-ep8unjmgeh] {
        flex-direction: column;
        align-items: flex-start;
    }

    .applicant-meta[b-ep8unjmgeh] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    .process-page[b-ep8unjmgeh] {
        padding: 0;
    }

    .applicant-avatar[b-ep8unjmgeh] {
        width: 48px;
        height: 48px;
        font-size: 1rem;
    }

    .applicant-name[b-ep8unjmgeh] {
        font-size: 1.25rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ProcessApproval.razor.rz.scp.css */
/* ========================================
   Process Approval Page - Component-Specific Only
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.process-page[b-rcl5mtu8dc] {
    width: 100%;
    box-sizing: border-box;
}

.process-page .content-area[b-rcl5mtu8dc] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    box-sizing: border-box;
}

/* ========================================
   Content Flow Layout
   ======================================== */

.main-content-flow[b-rcl5mtu8dc],
.sidebar-flow[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ========================================
   Content Grid - Approval Flow Layout
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.content-grid[b-rcl5mtu8dc] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
}

.main-column[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.side-column[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Content Card - Approval Sections
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Card header pattern consolidated in app.css */
.content-card .card-header[b-rcl5mtu8dc] {
    padding: 1rem 1.25rem; /* Page-specific override */
}

.content-card .card-header h3[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.9375rem;
    font-weight: 600;
    margin: 0;
}

.content-card .card-header h3 i[b-rcl5mtu8dc] {
    font-size: 1.125rem;
}

.applied-date[b-rcl5mtu8dc] {
    font-size: 0.8125rem;
}

/* Card body pattern consolidated in app.css */
.content-card .card-body[b-rcl5mtu8dc] {
    padding: 1.25rem; /* Page-specific override */
}

/* ========================================
   Eligibility Checklist - Approval Specific
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.checklist[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.check-item[b-rcl5mtu8dc] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: var(--border-radius, 8px);
    transition: all 0.2s ease;
}

.check-item > i[b-rcl5mtu8dc] {
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.check-item.passed[b-rcl5mtu8dc] {
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.check-item.failed[b-rcl5mtu8dc] {
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.check-item.warning[b-rcl5mtu8dc] {
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.check-content[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.check-title[b-rcl5mtu8dc] {
    font-size: 0.875rem;
    font-weight: 600;
}

.check-desc[b-rcl5mtu8dc] {
    font-size: 0.8125rem;
}

/* ========================================
   Decision Card - Unique Approval Decision UI
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.decision-card[b-rcl5mtu8dc] {
    border: 2px solid var(--theme-primary);
}

/* Card header pattern consolidated in app.css */
.decision-card .card-header[b-rcl5mtu8dc] {
    background: var(--theme-primary-subtle); /* Page-specific override */
}

.score-wrapper[b-rcl5mtu8dc] {
    position: relative;
    display: flex;
    align-items: center;
}

.score-input[b-rcl5mtu8dc] {
    padding-right: 3.5rem;
}

.score-max[b-rcl5mtu8dc] {
    position: absolute;
    right: 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    pointer-events: none;
}

.score-display[b-rcl5mtu8dc] {
    padding: 1rem;
    border-radius: var(--border-radius, 8px);
    margin-bottom: 0.5rem;
}

.score-bar-bg[b-rcl5mtu8dc] {
    height: 8px;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.score-bar[b-rcl5mtu8dc] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.score-bar.excellent[b-rcl5mtu8dc] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-light));
}

.score-bar.good[b-rcl5mtu8dc] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-light));
}

.score-bar.average[b-rcl5mtu8dc] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-light));
}

.score-bar.poor[b-rcl5mtu8dc] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-light));
}

.score-info[b-rcl5mtu8dc] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.score-number[b-rcl5mtu8dc] {
    font-size: 1.5rem;
    font-weight: 700;
}

.score-text[b-rcl5mtu8dc] {
    font-size: 0.8125rem;
    font-weight: 500;
}

/* Decision Buttons - Approval Specific Actions */
.decision-actions[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.btn-decision[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    padding: 0.875rem 1.25rem;
    border-radius: var(--border-radius, 8px);
    font-size: 0.9375rem;
    font-weight: 600;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
}

.btn-decision i[b-rcl5mtu8dc] {
    font-size: 1.25rem;
}

.btn-decision.accept[b-rcl5mtu8dc] {
    background: var(--theme-success);
    color: white;
    border-color: var(--theme-success);
}

.btn-decision.accept:hover:not(:disabled)[b-rcl5mtu8dc] {
    background: var(--theme-success-emphasis);
    border-color: var(--theme-success-emphasis);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.35);
}

.btn-decision.reject[b-rcl5mtu8dc] {
    color: var(--theme-danger);
    border-color: var(--theme-danger);
}

.btn-decision:disabled[b-rcl5mtu8dc] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-decision.loading[b-rcl5mtu8dc] {
    pointer-events: none;
}

/* Note: Spinner is now centralized in app.css. */

.decision-hint[b-rcl5mtu8dc] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-top: 1rem;
    padding: 0.875rem 1rem;
    border-radius: var(--border-radius, 8px);
    border-left: 3px solid var(--theme-info);
    font-size: 0.8125rem;
}

.decision-hint > i[b-rcl5mtu8dc] {
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

/* ========================================
   Rejection Type Selection
   ======================================== */

.rejection-options[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.rejection-header[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.rejection-header h4[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
    color: var(--text-primary);
}

.rejection-header h4 i[b-rcl5mtu8dc] {
    color: var(--theme-warning);
}

.rejection-header .btn-link[b-rcl5mtu8dc] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: none;
    border: none;
    color: var(--theme-primary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    padding: 0.25rem 0.5rem;
    border-radius: var(--border-radius, 8px);
    transition: all 0.15s ease;
}

.rejection-header .btn-link:hover[b-rcl5mtu8dc] {
    background: var(--theme-primary-subtle);
}

.rejection-types[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.rejection-type-card[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    border-radius: var(--border-radius, 8px);
    border: 1.5px solid var(--border-color);
    background: var(--bg-surface);
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.rejection-type-card:hover[b-rcl5mtu8dc] {
    border-color: var(--text-secondary);
    background: var(--bg-surface-tertiary);
}

.rejection-type-card.selected[b-rcl5mtu8dc] {
    border-color: var(--theme-danger);
    background: var(--theme-danger-bg, rgba(239, 68, 68, 0.06));
}

.type-icon[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    flex-shrink: 0;
    font-size: 1.125rem;
}

.type-icon.hard[b-rcl5mtu8dc] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.type-icon.conditional[b-rcl5mtu8dc] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.type-icon.waitlist[b-rcl5mtu8dc] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.type-info[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    flex: 1;
    min-width: 0;
}

.type-name[b-rcl5mtu8dc] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.type-desc[b-rcl5mtu8dc] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.check-icon[b-rcl5mtu8dc] {
    font-size: 1.25rem;
    color: var(--theme-danger);
    flex-shrink: 0;
}

/* Rejection Reason */
.rejection-reason-group[b-rcl5mtu8dc] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.rejection-reason-group .form-label[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.rejection-reason-group .form-label .required[b-rcl5mtu8dc] {
    color: var(--theme-danger);
}

.rejection-reason-group .form-input[b-rcl5mtu8dc] {
    width: 100%;
    padding: 0.625rem 0.875rem;
    border-radius: var(--border-radius, 8px);
    border: 1.5px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    resize: vertical;
    transition: border-color 0.15s ease;
}

.rejection-reason-group .form-input:focus[b-rcl5mtu8dc] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.rejection-reason-group .form-hint[b-rcl5mtu8dc] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

/* Rejection hint variants */
.decision-hint.hint-danger[b-rcl5mtu8dc] {
    border-left-color: var(--theme-danger);
    background: var(--theme-danger-bg, rgba(239, 68, 68, 0.06));
    color: var(--theme-danger);
}

.decision-hint.hint-warning[b-rcl5mtu8dc] {
    border-left-color: var(--theme-warning);
    background: var(--theme-warning-bg, rgba(245, 158, 11, 0.06));
    color: var(--theme-warning);
}

.decision-hint.hint-info[b-rcl5mtu8dc] {
    border-left-color: var(--theme-info);
    background: var(--theme-info-bg, rgba(59, 130, 246, 0.06));
    color: var(--theme-info);
}

/* ========================================
   Fee Blocked Alert - Domain Specific
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.fee-blocked-alert[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-left: 4px solid var(--theme-danger);
    border-radius: var(--border-radius-lg, 12px);
    animation: fee-alert-pulse-b-rcl5mtu8dc 2s ease-in-out infinite;
}

.fee-blocked-alert .alert-icon[b-rcl5mtu8dc] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-danger) 0%, var(--theme-danger-emphasis) 100%);
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4);
}

.fee-blocked-alert .alert-icon i[b-rcl5mtu8dc] {
    font-size: 1.5rem;
    color: white;
    animation: icon-shake-b-rcl5mtu8dc 0.5s ease-in-out infinite;
}

.fee-blocked-alert .alert-content[b-rcl5mtu8dc] {
    flex: 1;
}

.fee-blocked-alert .alert-content h4[b-rcl5mtu8dc] {
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 0.375rem 0;
}

.fee-blocked-alert .alert-content p[b-rcl5mtu8dc] {
    font-size: 0.875rem;
    margin: 0;
    line-height: 1.5;
}

.fee-blocked-alert .alert-content strong[b-rcl5mtu8dc] {
    font-weight: 600;
}

.fee-blocked-alert .alert-action[b-rcl5mtu8dc] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border-radius: var(--border-radius, 8px);
    font-size: 0.875rem;
    font-weight: 600;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
    flex-shrink: 0;
    white-space: nowrap;
}

.fee-blocked-alert .alert-action:hover[b-rcl5mtu8dc] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(239, 68, 68, 0.4);
}

.fee-blocked-alert .alert-action i[b-rcl5mtu8dc] {
    font-size: 1rem;
}

@keyframes fee-alert-pulse-b-rcl5mtu8dc {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(239, 68, 68, 0.2);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(239, 68, 68, 0);
    }
}

@keyframes icon-shake-b-rcl5mtu8dc {
    0%, 100% {
        transform: rotate(0deg);
    }
    25% {
        transform: rotate(-5deg);
    }
    75% {
        transform: rotate(5deg);
    }
}

/* ========================================
   Responsive Design - Component Specific
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .content-grid[b-rcl5mtu8dc] {
        grid-template-columns: 1fr 360px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-rcl5mtu8dc] {
        grid-template-columns: 1fr;
    }

    .side-column[b-rcl5mtu8dc] {
        order: -1;
    }
}

@media (max-width: 768px) {
    .fee-blocked-alert[b-rcl5mtu8dc] {
        flex-direction: column;
        text-align: center;
        gap: 0.75rem;
    }

    .fee-blocked-alert .alert-action[b-rcl5mtu8dc] {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .content-card[b-rcl5mtu8dc] {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }
}

/* ========================================
   Print Styles
   ======================================== */

@media print {
    .process-page[b-rcl5mtu8dc] {
        padding: 0;
    }

    .decision-actions[b-rcl5mtu8dc],
    .fee-blocked-alert[b-rcl5mtu8dc] {
        display: none;
    }

    .side-column[b-rcl5mtu8dc] {
        margin-top: 2rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ProcessHomework.razor.rz.scp.css */
/* ========================================
   Process Homework Page - Component Styles
   ======================================== */

/* Note: Page layout handled by PageLayout component */

/* Submission Banner */
.submission-banner[b-v44tszjyaq] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
}

.banner-icon[b-v44tszjyaq] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.banner-icon i[b-v44tszjyaq] {
    font-size: 1.5rem;
}

.banner-content[b-v44tszjyaq] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.banner-title[b-v44tszjyaq] {
    font-size: 1rem;
    font-weight: 600;
}

.banner-detail[b-v44tszjyaq] {
    font-size: 0.8125rem;
}

/* Content Grid */
.content-grid[b-v44tszjyaq] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
}

.main-column[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.side-column[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Assignment Sections */
.assignment-section[b-v44tszjyaq] {
    margin-bottom: 1.5rem;
}

.assignment-section:last-child[b-v44tszjyaq] {
    margin-bottom: 0;
}

.section-label[b-v44tszjyaq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    margin-bottom: 0.75rem;
}

.section-label i[b-v44tszjyaq] {
    font-size: 1rem;
}

.url-box[b-v44tszjyaq] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
}

.url-icon[b-v44tszjyaq] {
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.url-icon i[b-v44tszjyaq] {
    font-size: 1rem;
}

.url-content[b-v44tszjyaq] {
    flex: 1;
    overflow: hidden;
}

.url-content a[b-v44tszjyaq] {
    font-size: 0.875rem;
    text-decoration: none;
    word-break: break-all;
}

.url-content a:hover[b-v44tszjyaq] {
    text-decoration: underline;
}

/* Timeline Grid */
.timeline-grid[b-v44tszjyaq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
}

.timeline-item[b-v44tszjyaq] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
}

.timeline-icon[b-v44tszjyaq] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.timeline-icon i[b-v44tszjyaq] {
    font-size: 1.125rem;
}

.timeline-info[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.timeline-label[b-v44tszjyaq] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.timeline-value[b-v44tszjyaq] {
    font-size: 0.8125rem;
    font-weight: 600;
}

.timeline-connector[b-v44tszjyaq] {
    width: 40px;
    height: 2px;
    flex-shrink: 0;
}

/* Attachments */
.attachments-list[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.attachment-item[b-v44tszjyaq] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
}

.attachment-icon[b-v44tszjyaq] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.attachment-icon i[b-v44tszjyaq] {
    font-size: 1.25rem;
}

.attachment-info[b-v44tszjyaq] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.attachment-name[b-v44tszjyaq] {
    font-size: 0.875rem;
    font-weight: 600;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.attachment-type[b-v44tszjyaq] {
    font-size: 0.75rem;
}

.attachment-actions[b-v44tszjyaq] {
    display: flex;
    gap: 0.375rem;
}

.empty-attachments[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 2rem;
}

.empty-attachments i[b-v44tszjyaq] {
    font-size: 2rem;
}

.empty-attachments span[b-v44tszjyaq] {
    font-size: 0.875rem;
}

/* Checklist */
.checklist[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.check-item[b-v44tszjyaq] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
}

.check-item > i[b-v44tszjyaq] {
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.check-content[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.check-title[b-v44tszjyaq] {
    font-size: 0.875rem;
    font-weight: 600;
}

.check-desc[b-v44tszjyaq] {
    font-size: 0.8125rem;
}

/* Score Display */
.score-display[b-v44tszjyaq] {
    padding: 1rem;
    margin-bottom: 0.5rem;
}

.score-bar-bg[b-v44tszjyaq] {
    height: 8px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.score-bar[b-v44tszjyaq] {
    height: 100%;
    transition: width 0.3s ease;
}

.score-info[b-v44tszjyaq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.score-number[b-v44tszjyaq] {
    font-size: 1.5rem;
    font-weight: 700;
}

.score-text[b-v44tszjyaq] {
    font-size: 0.8125rem;
    font-weight: 500;
}

.score-wrapper[b-v44tszjyaq] {
    position: relative;
    display: flex;
    align-items: center;
}

.score-input[b-v44tszjyaq] {
    padding-right: 3.5rem;
}

.score-max[b-v44tszjyaq] {
    position: absolute;
    right: 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    pointer-events: none;
}

/* Decision Actions */
.decision-actions[b-v44tszjyaq] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.decision-hint[b-v44tszjyaq] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-top: 1rem;
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
}

.decision-hint > i[b-v44tszjyaq] {
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

/* Responsive Design */
@media (max-width: 1200px) {
    [b-v44tszjyaq] .two-column-layout {
        grid-template-columns: 1fr 360px;
    }
}

@media (max-width: 1024px) {
    [b-v44tszjyaq] .two-column-layout {
        grid-template-columns: 1fr;
    }

    .timeline-grid[b-v44tszjyaq] {
        flex-direction: column;
        align-items: stretch;
        gap: 0;
    }

    .timeline-connector[b-v44tszjyaq] {
        width: 2px;
        height: 24px;
        margin-left: 19px;
    }
}

@media (max-width: 768px) {
    .submission-banner[b-v44tszjyaq] {
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .submission-banner[b-v44tszjyaq] {
        flex-direction: column;
    }
}

@media print {
    .process-page[b-v44tszjyaq] {
        padding: 0;
    }

    .header-actions[b-v44tszjyaq],
    .decision-actions[b-v44tszjyaq],
    .attachment-actions[b-v44tszjyaq] {
        display: none;
    }

    .content-grid[b-v44tszjyaq] {
        display: block;
    }

    .side-column[b-v44tszjyaq] {
        margin-top: 2rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ProcessInterview.razor.rz.scp.css */
/* ========================================
   Process Interview Page - Interview-Specific Styles
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Page Container */
.process-page[b-4vyvpb5ww4] {
    width: 100%;
}

.content-area[b-4vyvpb5ww4] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Interview Content Grid Layout
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.content-grid[b-4vyvpb5ww4] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
}

.main-column[b-4vyvpb5ww4] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.side-column[b-4vyvpb5ww4] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Interview Appointments Display
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.appointments-card[b-4vyvpb5ww4] {
    border-color: var(--theme-purple);
    border-width: 2px;
}

/* Card header pattern consolidated in app.css */
.appointments-card .card-header[b-4vyvpb5ww4] {
    background: linear-gradient(to right, rgba(139, 92, 246, 0.08), rgba(139, 92, 246, 0.04)); /* Page-specific override */
}

.appointments-card .card-header h3 i[b-4vyvpb5ww4] {
    color: var(--theme-purple);
}

.appointments-list[b-4vyvpb5ww4] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.appointment-item[b-4vyvpb5ww4] {
    display: flex;
    gap: 1rem;
    border-radius: var(--radius-md, 8px);
    background: var(--bg-surface-secondary);
    border: 2px solid var(--border-color);
    position: relative;
    overflow: hidden;
    transition: all 0.15s ease;
}

.appointment-item:hover[b-4vyvpb5ww4] {
    box-shadow: var(--shadow-md);
}

.appointment-item.confirmed[b-4vyvpb5ww4] {
    border-color: var(--theme-success);
    background: rgba(16, 185, 129, 0.03);
}

.appointment-item.pending[b-4vyvpb5ww4] {
    border-color: var(--theme-warning);
}

.appointment-indicator[b-4vyvpb5ww4] {
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    width: 4px;
}

.appointment-item.confirmed .appointment-indicator[b-4vyvpb5ww4] {
    background: var(--theme-success);
}

.appointment-item.pending .appointment-indicator[b-4vyvpb5ww4] {
    background: var(--theme-warning);
}

.appointment-content[b-4vyvpb5ww4] {
    flex: 1;
    padding-left: 0.5rem;
}

.appointment-datetime[b-4vyvpb5ww4] {
    margin-bottom: 0.75rem;
}

.date-row[b-4vyvpb5ww4],
.time-row[b-4vyvpb5ww4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.date-row[b-4vyvpb5ww4] {
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

.date-row i[b-4vyvpb5ww4],
.time-row i[b-4vyvpb5ww4] {
    font-size: 1rem;
    color: var(--theme-purple);
}

.time-row[b-4vyvpb5ww4] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
}

.duration-badge[b-4vyvpb5ww4] {
    padding: 0.125rem 0.5rem;
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
    margin-left: 0.5rem;
}

.appointment-status[b-4vyvpb5ww4] {
    margin-top: 0.75rem;
}

.appointment-badge[b-4vyvpb5ww4] {
    display: flex;
    align-items: flex-start;
}

.appointment-badge i[b-4vyvpb5ww4] {
    font-size: 1.5rem;
}

.appointment-badge i.success[b-4vyvpb5ww4] {
    color: var(--theme-success);
}

.appointment-badge i.warning[b-4vyvpb5ww4] {
    color: var(--theme-warning);
}

.appointment-badge i.danger[b-4vyvpb5ww4] {
    color: var(--theme-danger);
}

/* ========================================
   Interview Score Input
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.score-wrapper[b-4vyvpb5ww4] {
    position: relative;
    display: flex;
    align-items: center;
}

.score-input[b-4vyvpb5ww4] {
    padding-right: 3rem;
}

.score-max[b-4vyvpb5ww4] {
    position: absolute;
    right: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
    font-weight: 500;
    pointer-events: none;
}

.score-display[b-4vyvpb5ww4] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--radius-md, 8px);
    margin-bottom: 0.5rem;
}

.score-bar-bg[b-4vyvpb5ww4] {
    height: 8px;
    background: var(--border-color);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.score-bar[b-4vyvpb5ww4] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.score-bar.excellent[b-4vyvpb5ww4] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-light));
}

.score-bar.good[b-4vyvpb5ww4] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-light));
}

.score-bar.average[b-4vyvpb5ww4] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-light));
}

.score-bar.poor[b-4vyvpb5ww4] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-light));
}

.score-info[b-4vyvpb5ww4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.score-number[b-4vyvpb5ww4] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-primary);
}

.score-text[b-4vyvpb5ww4] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    font-weight: 500;
}

/* ========================================
   Interview Decision Card
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.decision-card[b-4vyvpb5ww4] {
    border-color: var(--theme-primary);
    border-width: 2px;
    position: sticky;
    top: 1rem;
}

/* Card header pattern consolidated in app.css */
.decision-card .card-header[b-4vyvpb5ww4] {
    background: linear-gradient(to right, rgba(13, 148, 136, 0.1), rgba(13, 148, 136, 0.05)); /* Page-specific override */
}

.decision-card .card-header h3 i[b-4vyvpb5ww4] {
    color: var(--theme-primary);
}

.decision-actions[b-4vyvpb5ww4] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.btn-decision[b-4vyvpb5ww4] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    padding: 0.875rem 1.25rem;
    border-radius: var(--radius-md, 8px);
    font-size: 0.9375rem;
    font-weight: 600;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.15s ease;
    width: 100%;
}

.btn-decision i[b-4vyvpb5ww4] {
    font-size: 1.25rem;
}

.btn-decision.accept[b-4vyvpb5ww4] {
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
    border-color: var(--theme-success);
}

.btn-decision.accept:hover:not(:disabled)[b-4vyvpb5ww4] {
    background: linear-gradient(135deg, var(--theme-success-emphasis), var(--theme-success-emphasis));
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.35);
}

.btn-decision.reject[b-4vyvpb5ww4] {
    background: var(--bg-surface);
    color: var(--theme-danger);
    border-color: var(--theme-danger);
}

.btn-decision.reject:hover:not(:disabled)[b-4vyvpb5ww4] {
    background: var(--theme-danger-subtle);
}

.btn-decision:disabled[b-4vyvpb5ww4] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-decision.loading[b-4vyvpb5ww4] {
    pointer-events: none;
}

.decision-hint[b-4vyvpb5ww4] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--theme-info-subtle);
    border-left: 3px solid var(--theme-info);
    border-radius: var(--radius-md, 8px);
    margin-top: 1rem;
}

.decision-hint i[b-4vyvpb5ww4] {
    font-size: 1.125rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.decision-hint div[b-4vyvpb5ww4] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

.decision-hint strong[b-4vyvpb5ww4] {
    color: var(--text-primary);
}

/* ========================================
   Interview-Specific Responsive Layout
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .content-grid[b-4vyvpb5ww4] {
        grid-template-columns: 1fr 350px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-4vyvpb5ww4] {
        grid-template-columns: 1fr;
    }

    .side-column[b-4vyvpb5ww4] {
        order: -1;
    }

    .decision-card[b-4vyvpb5ww4] {
        position: static;
    }
}

@media print {
    .decision-actions[b-4vyvpb5ww4] {
        display: none;
    }

    .content-grid[b-4vyvpb5ww4] {
        display: block;
    }

    .side-column[b-4vyvpb5ww4] {
        margin-top: 2rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ProcessPhoneCall.razor.rz.scp.css */
/* ========================================
   Process Phone Call Page - Theme Aligned
   Uses global CSS variables for white-labeling
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.process-page[b-t13trqj7pp] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.content-area[b-t13trqj7pp] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Content Flow Layout
   ======================================== */

.main-content-flow[b-t13trqj7pp],
.sidebar-flow[b-t13trqj7pp] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* ========================================
   Stats Row
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.stats-row[b-t13trqj7pp] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

/* stat-card base styles now in app.css */

/* Page-specific stat-icon variants */
.stat-icon.phone[b-t13trqj7pp] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.stat-icon.guardian[b-t13trqj7pp] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.stat-icon.academic[b-t13trqj7pp] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.stat-icon.status.eligible[b-t13trqj7pp] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.stat-icon.status.ineligible[b-t13trqj7pp] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

/* Page-specific stat-value variants */
.stat-value.text-success[b-t13trqj7pp] {
    color: var(--theme-success);
}

.stat-value.text-danger[b-t13trqj7pp] {
    color: var(--theme-danger);
}

/* ========================================
   Content Grid
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.content-grid[b-t13trqj7pp] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
}

.main-column[b-t13trqj7pp] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.side-column[b-t13trqj7pp] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Content Cards
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* .content-card, .card-header, .card-body - Using centralized styles from app.css (line 5511+) */

.applied-date[b-t13trqj7pp] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

/* ========================================
   Contact List
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.contact-list[b-t13trqj7pp] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.contact-item[b-t13trqj7pp] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--border-radius, 8px);
    transition: all 0.2s ease;
}

.contact-item:hover[b-t13trqj7pp] {
    background: rgba(var(--theme-primary-rgb, 99, 102, 241), 0.05);
}

.contact-item.primary[b-t13trqj7pp] {
    background: rgba(var(--theme-primary-rgb, 99, 102, 241), 0.08);
    border: 1px solid rgba(var(--theme-primary-rgb, 99, 102, 241), 0.2);
}

.contact-icon[b-t13trqj7pp] {
    width: 44px;
    height: 44px;
    border-radius: var(--border-radius, 8px);
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.contact-icon i[b-t13trqj7pp] {
    font-size: 1.25rem;
    color: var(--theme-primary);
}

.contact-icon.guardian i[b-t13trqj7pp] {
    color: var(--theme-purple);
}

.contact-icon.email i[b-t13trqj7pp] {
    color: var(--theme-info);
}

.contact-details[b-t13trqj7pp] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.contact-label[b-t13trqj7pp] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.025em;
}

.contact-value[b-t13trqj7pp] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.contact-actions[b-t13trqj7pp] {
    display: flex;
    gap: 0.5rem;
}

.icon-btn[b-t13trqj7pp] {
    width: 36px;
    height: 36px;
    border-radius: var(--border-radius, 8px);
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.icon-btn:hover[b-t13trqj7pp] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.icon-btn i[b-t13trqj7pp] {
    font-size: 1rem;
}

/* ========================================
   Checklist
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.checklist[b-t13trqj7pp] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.check-item[b-t13trqj7pp] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: var(--border-radius, 8px);
    background: var(--bg-surface-secondary);
    transition: all 0.2s ease;
}

.check-item > i[b-t13trqj7pp] {
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.check-item.passed[b-t13trqj7pp] {
    background: rgba(16, 185, 129, 0.08);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.check-item.passed > i[b-t13trqj7pp] {
    color: var(--theme-success);
}

.check-content[b-t13trqj7pp] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.check-title[b-t13trqj7pp] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.check-desc[b-t13trqj7pp] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ========================================
   Decision Card
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.decision-card[b-t13trqj7pp] {
    border: 2px solid var(--theme-primary);
}

.decision-card .card-header[b-t13trqj7pp] {
    background: rgba(var(--theme-primary-rgb, 99, 102, 241), 0.08);
}

/* .form-group, .form-label, .form-input - Using centralized styles from app.css (line 4341+) */

/* Page-specific form customizations */
.form-label i[b-t13trqj7pp] {
    font-size: 0.9375rem;
    color: var(--text-muted);
}

textarea.form-input[b-t13trqj7pp] {
    resize: vertical;
    min-height: 100px;
}

.score-wrapper[b-t13trqj7pp] {
    position: relative;
    display: flex;
    align-items: center;
}

.score-input[b-t13trqj7pp] {
    padding-right: 3.5rem;
}

.score-max[b-t13trqj7pp] {
    position: absolute;
    right: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
    font-weight: 500;
    pointer-events: none;
}

/* Score Display */
.score-display[b-t13trqj7pp] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--border-radius, 8px);
    margin-bottom: 0.5rem;
}

.score-bar-bg[b-t13trqj7pp] {
    height: 8px;
    background: var(--border-color);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.score-bar[b-t13trqj7pp] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.score-bar.excellent[b-t13trqj7pp] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-light));
}

.score-bar.good[b-t13trqj7pp] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-light));
}

.score-bar.average[b-t13trqj7pp] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-light));
}

.score-bar.poor[b-t13trqj7pp] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-light));
}

.score-info[b-t13trqj7pp] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.score-number[b-t13trqj7pp] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--theme-primary);
}

.score-text[b-t13trqj7pp] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.divider[b-t13trqj7pp] {
    border: none;
    border-top: 1px solid var(--border-color);
    margin: 1rem 0;
}

/* Decision Buttons */
.decision-actions[b-t13trqj7pp] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.btn-decision[b-t13trqj7pp] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    padding: 0.875rem 1.25rem;
    border-radius: var(--border-radius, 8px);
    font-size: 0.9375rem;
    font-weight: 600;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
}

.btn-decision i[b-t13trqj7pp] {
    font-size: 1.25rem;
}

.btn-decision.accept[b-t13trqj7pp] {
    background: var(--theme-success);
    color: white;
    border-color: var(--theme-success);
}

.btn-decision.accept:hover:not(:disabled)[b-t13trqj7pp] {
    background: var(--theme-success-emphasis);
    border-color: var(--theme-success-emphasis);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.35);
}

.btn-decision.reject[b-t13trqj7pp] {
    background: var(--bg-surface);
    color: var(--theme-danger);
    border-color: var(--theme-danger);
}

.btn-decision.reject:hover:not(:disabled)[b-t13trqj7pp] {
    background: rgba(239, 68, 68, 0.08);
}

.btn-decision:disabled[b-t13trqj7pp] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-decision.loading[b-t13trqj7pp] {
    pointer-events: none;
}

/* Note: Spinner is now centralized in app.css. */

/* Decision Hint */
.decision-hint[b-t13trqj7pp] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-top: 1rem;
    padding: 0.875rem 1rem;
    background: rgba(59, 130, 246, 0.08);
    border-radius: var(--border-radius, 8px);
    border-left: 3px solid var(--theme-info);
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.decision-hint > i[b-t13trqj7pp] {
    font-size: 1rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.decision-hint strong[b-t13trqj7pp] {
    color: var(--text-primary);
}

/* ========================================
   Responsive Design
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .content-grid[b-t13trqj7pp] {
        grid-template-columns: 1fr 360px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-t13trqj7pp] {
        grid-template-columns: 1fr;
    }

    .side-column[b-t13trqj7pp] {
        order: -1;
    }

    .stats-row[b-t13trqj7pp] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .stats-row[b-t13trqj7pp] {
        grid-template-columns: 1fr 1fr;
    }

    .contact-item[b-t13trqj7pp] {
        flex-wrap: wrap;
    }

    .contact-actions[b-t13trqj7pp] {
        width: 100%;
        justify-content: flex-end;
        margin-top: 0.5rem;
    }
}

@media (max-width: 480px) {
    .stats-row[b-t13trqj7pp] {
        grid-template-columns: 1fr;
    }

    .content-card[b-t13trqj7pp] {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }

    .stat-card[b-t13trqj7pp] {
        border-radius: var(--border-radius, 8px);
    }
}

/* ========================================
   Print Styles
   ======================================== */

@media print {
    .process-page[b-t13trqj7pp] {
        padding: 0;
    }

    .content-card[b-t13trqj7pp] {
        box-shadow: none;
        break-inside: avoid;
    }

    .decision-actions[b-t13trqj7pp],
    .contact-actions[b-t13trqj7pp] {
        display: none;
    }

    .side-column[b-t13trqj7pp] {
        margin-top: 2rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ProcessVerification.razor.rz.scp.css */
/* ========================================
   Process Verification Page - Scoped Styles
   Component-specific verification flow layout
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.process-page[b-rhdnflafq4] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.content-area[b-rhdnflafq4] {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ========================================
   Page Header (Applicant Context)
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.page-header-card[b-rhdnflafq4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.header-content[b-rhdnflafq4] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

/* .btn-back - Using centralized styles from app.css (line 5137) */

.applicant-info[b-rhdnflafq4] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.applicant-avatar[b-rhdnflafq4] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 600;
    flex-shrink: 0;
}

.applicant-details[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.stage-label[b-rhdnflafq4] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.025em;
    width: fit-content;
}

.stage-label i[b-rhdnflafq4] {
    font-size: 0.875rem;
}

.applicant-name[b-rhdnflafq4] {
    font-size: 1.375rem;
    font-weight: 700;
    margin: 0;
    line-height: 1.3;
}

.applicant-meta[b-rhdnflafq4] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.meta-item[b-rhdnflafq4] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
}

.meta-item i[b-rhdnflafq4] {
    font-size: 0.875rem;
}

.meta-item.result[b-rhdnflafq4] {
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    font-weight: 600;
}

.header-actions[b-rhdnflafq4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* ========================================
   Verification Content Layout
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.content-grid[b-rhdnflafq4] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
}

.main-column[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.side-column[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.applied-date[b-rhdnflafq4] {
    font-size: 0.8125rem;
}

/* ========================================
   Verification Checklist (Unique to Verification)
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.checklist[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.check-item[b-rhdnflafq4] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    border-radius: var(--border-radius, 8px);
    transition: all 0.2s ease;
}

.check-item > i[b-rhdnflafq4] {
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.check-item.passed[b-rhdnflafq4] {
    background: rgba(16, 185, 129, 0.08);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.check-item.passed > i[b-rhdnflafq4] {
    color: var(--theme-success);
}

.check-item.failed[b-rhdnflafq4] {
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.check-item.failed > i[b-rhdnflafq4] {
    color: var(--theme-danger);
}

.check-item.warning[b-rhdnflafq4] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.check-item.warning > i[b-rhdnflafq4] {
    color: var(--theme-warning);
}

.check-content[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.check-title[b-rhdnflafq4] {
    font-size: 0.875rem;
    font-weight: 600;
}

.check-desc[b-rhdnflafq4] {
    font-size: 0.8125rem;
}

/* ========================================
   Decision Card (Unique to Verification)
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.decision-card[b-rhdnflafq4] {
    border: 2px solid var(--theme-primary);
}

/* Card header pattern consolidated in app.css */
.decision-card .card-header[b-rhdnflafq4] {
    background: rgba(var(--theme-primary-rgb, 99, 102, 241), 0.08); /* Page-specific override */
}

.score-wrapper[b-rhdnflafq4] {
    position: relative;
    display: flex;
    align-items: center;
}

.score-input[b-rhdnflafq4] {
    padding-right: 3.5rem;
}

.score-max[b-rhdnflafq4] {
    position: absolute;
    right: 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    pointer-events: none;
}

.score-display[b-rhdnflafq4] {
    padding: 1rem;
    border-radius: var(--border-radius, 8px);
    margin-bottom: 0.5rem;
}

.score-bar-bg[b-rhdnflafq4] {
    height: 8px;
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.score-bar[b-rhdnflafq4] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.score-bar.excellent[b-rhdnflafq4] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-light));
}

.score-bar.good[b-rhdnflafq4] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-light));
}

.score-bar.average[b-rhdnflafq4] {
    background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-light));
}

.score-bar.poor[b-rhdnflafq4] {
    background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-light));
}

.score-info[b-rhdnflafq4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.score-number[b-rhdnflafq4] {
    font-size: 1.5rem;
    font-weight: 700;
}

.score-text[b-rhdnflafq4] {
    font-size: 0.8125rem;
    font-weight: 500;
}

.divider[b-rhdnflafq4] {
    border: none;
    border-top: 1px solid var(--border-color);
    margin: 1rem 0;
}

.decision-actions[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.btn-decision[b-rhdnflafq4] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.625rem;
    padding: 0.875rem 1.25rem;
    border-radius: var(--border-radius, 8px);
    font-size: 0.9375rem;
    font-weight: 600;
    border: 2px solid transparent;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
}

.btn-decision i[b-rhdnflafq4] {
    font-size: 1.25rem;
}

.btn-decision.accept:hover:not(:disabled)[b-rhdnflafq4] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.35);
}

.btn-decision:disabled[b-rhdnflafq4] {
    opacity: 0.6;
    cursor: not-allowed;
}

.btn-decision.loading[b-rhdnflafq4] {
    pointer-events: none;
}

/* Note: Spinner is now centralized in app.css. */

.decision-hint[b-rhdnflafq4] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-top: 1rem;
    padding: 0.875rem 1rem;
    border-radius: var(--border-radius, 8px);
    border-left: 3px solid var(--theme-info);
    font-size: 0.8125rem;
}

.decision-hint > i[b-rhdnflafq4] {
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

/* ========================================
   Rejection Options Panel (Unique to Verification)
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.rejection-options[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.rejection-header[b-rhdnflafq4] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.rejection-header h4[b-rhdnflafq4] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    margin: 0;
}

.rejection-header h4 i[b-rhdnflafq4] {
    font-size: 1.125rem;
}

.btn-link[b-rhdnflafq4] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.375rem 0.75rem;
    border-radius: var(--border-radius, 8px);
    transition: all 0.2s ease;
}

.btn-link i[b-rhdnflafq4] {
    font-size: 1rem;
}

.rejection-types[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.rejection-type-card[b-rhdnflafq4] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem 1rem;
    border: 2px solid transparent;
    border-radius: var(--border-radius, 8px);
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.rejection-type-card:hover[b-rhdnflafq4] {
    transform: translateX(4px);
}

.rejection-type-card.selected[b-rhdnflafq4] {
    background: rgba(var(--theme-primary-rgb, 99, 102, 241), 0.08);
    border-color: var(--theme-primary);
}

.rejection-type-card .type-icon[b-rhdnflafq4] {
    width: 40px;
    height: 40px;
    border-radius: var(--border-radius, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.rejection-type-card .type-icon i[b-rhdnflafq4] {
    font-size: 1.25rem;
}

.rejection-type-card .type-info[b-rhdnflafq4] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    flex: 1;
}

.rejection-type-card .type-name[b-rhdnflafq4] {
    font-size: 0.875rem;
    font-weight: 600;
}

.rejection-type-card .type-desc[b-rhdnflafq4] {
    font-size: 0.75rem;
}

.rejection-type-card .check-icon[b-rhdnflafq4] {
    position: absolute;
    right: 1rem;
    font-size: 1.25rem;
}

.rejection-reason-group[b-rhdnflafq4] {
    margin-top: 0.5rem;
    padding-top: 0.75rem;
    border-top: 1px dashed var(--border-color);
}

.rejection-reason-group .form-hint[b-rhdnflafq4] {
    display: block;
    margin-top: 0.375rem;
    font-size: 0.75rem;
}

/* ========================================
   Responsive Layout (Verification-specific)
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1200px) {
    .content-grid[b-rhdnflafq4] {
        grid-template-columns: 1fr 360px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-rhdnflafq4] {
        grid-template-columns: 1fr;
    }

    .side-column[b-rhdnflafq4] {
        order: -1;
    }
}

@media (max-width: 768px) {
    .page-header-card[b-rhdnflafq4] {
        flex-direction: column;
        align-items: flex-start;
    }

    .header-actions[b-rhdnflafq4] {
        width: 100%;
        justify-content: flex-end;
    }

    .applicant-info[b-rhdnflafq4] {
        flex-direction: column;
        align-items: flex-start;
    }

    .applicant-avatar[b-rhdnflafq4] {
        width: 48px;
        height: 48px;
        font-size: 1rem;
    }

    .applicant-name[b-rhdnflafq4] {
        font-size: 1.125rem;
    }

    .applicant-meta[b-rhdnflafq4] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
}

@media (max-width: 480px) {
    .page-header-card[b-rhdnflafq4] {
        border-radius: 0;
        border-left: none;
        border-right: none;
    }
}

/* ========================================
   Print Styles
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media print {
    .process-page[b-rhdnflafq4] {
        padding: 0;
    }

    .btn-back[b-rhdnflafq4],
    .header-actions[b-rhdnflafq4],
    .decision-actions[b-rhdnflafq4] {
        display: none;
    }

    .content-grid[b-rhdnflafq4] {
        display: block;
    }

    .side-column[b-rhdnflafq4] {
        margin-top: 2rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/SetAppointmentsToInterview.razor.rz.scp.css */
/* SetAppointmentsToInterview.razor.css */
/* Interview Appointment Scheduling - Component-Specific Layout Only */

.set-appointments-page[b-8n1k6ykau0] {
    background: var(--bg-body);
    min-height: 100vh;
}

/* ==================== Content Flow Layout ==================== */

.main-content-flow[b-8n1k6ykau0],
.sidebar-flow[b-8n1k6ykau0] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.stage-badge[b-8n1k6ykau0] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.875rem;
    background: linear-gradient(135deg, var(--theme-purple-subtle) 0%, var(--theme-purple-subtle) 100%);
    color: var(--theme-purple-emphasis);
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    border: 1px solid var(--theme-purple-border);
}

.stage-badge i[b-8n1k6ykau0] {
    font-size: 0.875rem;
}

/* ==================== Duration Input Component ==================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.duration-input[b-8n1k6ykau0] {
    display: flex;
    align-items: center;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.duration-input input[b-8n1k6ykau0] {
    flex: 1;
    border: none;
    padding: 0.75rem 1rem;
    text-align: center;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    background: var(--bg-surface);
}

.duration-input input:focus[b-8n1k6ykau0] {
    outline: none;
}

.duration-btn[b-8n1k6ykau0] {
    width: 44px;
    height: 44px;
    border: none;
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.duration-btn:hover[b-8n1k6ykau0] {
    background: var(--theme-purple);
    color: white;
}

.duration-btn i[b-8n1k6ykau0] {
    font-size: 1.25rem;
}

/* ==================== Appointment Preview Component ==================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.appointment-preview[b-8n1k6ykau0] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--theme-purple-subtle) 0%, var(--theme-purple-subtle) 100%);
    border: 1px solid var(--theme-purple-border);
    border-radius: 12px;
}

.preview-icon[b-8n1k6ykau0] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--theme-purple);
    font-size: 1.5rem;
    box-shadow: 0 2px 4px rgba(139, 92, 246, 0.1);
}

.preview-content[b-8n1k6ykau0] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.preview-label[b-8n1k6ykau0] {
    font-size: 0.75rem;
    color: var(--theme-purple-emphasis);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    font-weight: 600;
}

.preview-time[b-8n1k6ykau0] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.preview-duration[b-8n1k6ykau0] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* ==================== Appointment Card Layout ==================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.appointments-list[b-8n1k6ykau0] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.appointment-card[b-8n1k6ykau0] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
}

.appointment-card:hover[b-8n1k6ykau0] {
    border-color: var(--theme-purple);
    box-shadow: 0 4px 12px rgba(139, 92, 246, 0.1);
}

.appointment-card.rejected[b-8n1k6ykau0] {
    opacity: 0.5;
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger-border);
}

.appointment-card.confirmed[b-8n1k6ykau0] {
    border-left: 4px solid var(--theme-success);
}

.appointment-card.pending[b-8n1k6ykau0] {
    border-left: 4px solid var(--theme-warning);
}

.appointment-card.waiting[b-8n1k6ykau0] {
    border-left: 4px solid var(--theme-purple);
}

.appointment-datetime[b-8n1k6ykau0] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex: 1;
}

.date-block[b-8n1k6ykau0] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0.75rem 1rem;
    background: linear-gradient(135deg, var(--theme-purple) 0%, var(--theme-purple-emphasis) 100%);
    border-radius: 10px;
    color: white;
    min-width: 70px;
}

.date-block .month[b-8n1k6ykau0] {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    opacity: 0.9;
}

.date-block .day[b-8n1k6ykau0] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.2;
}

.date-block .year[b-8n1k6ykau0] {
    font-size: 0.6875rem;
    opacity: 0.8;
}

.time-details[b-8n1k6ykau0] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.time-row[b-8n1k6ykau0],
.duration-row[b-8n1k6ykau0] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.time-row i[b-8n1k6ykau0],
.duration-row i[b-8n1k6ykau0] {
    color: var(--theme-purple);
    font-size: 1rem;
}

.time-row[b-8n1k6ykau0] {
    font-weight: 600;
    color: var(--text-primary);
}

.appointment-status[b-8n1k6ykau0] {
    flex-shrink: 0;
}

.appointment-actions[b-8n1k6ykau0] {
    flex-shrink: 0;
}

.appointment-actions .action-btn[b-8n1k6ykau0] {
    width: 36px;
    height: 36px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.appointment-actions .action-btn.delete:hover[b-8n1k6ykau0] {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger);
    color: var(--theme-danger);
}

/* ==================== Duration Presets Component ==================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.duration-presets[b-8n1k6ykau0] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.preset-btn[b-8n1k6ykau0] {
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.preset-btn:hover[b-8n1k6ykau0] {
    border-color: var(--theme-purple);
    color: var(--theme-purple);
}

.preset-btn.active[b-8n1k6ykau0] {
    background: linear-gradient(135deg, var(--theme-purple) 0%, var(--theme-purple-emphasis) 100%);
    color: white;
    border-color: var(--theme-purple);
}

/* ==================== Responsive Layout ==================== */

@media (max-width: 768px) {
    .appointment-card[b-8n1k6ykau0] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .appointment-datetime[b-8n1k6ykau0] {
        width: 100%;
    }

    .appointment-status[b-8n1k6ykau0] {
        width: 100%;
    }

    .appointment-actions[b-8n1k6ykau0] {
        width: 100%;
        display: flex;
        justify-content: flex-end;
    }
}

@media (max-width: 480px) {
    .duration-presets[b-8n1k6ykau0] {
        grid-template-columns: 1fr;
    }

    .date-block[b-8n1k6ykau0] {
        min-width: 60px;
        padding: 0.5rem 0.75rem;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/ShowAssignedAppointments.razor.rz.scp.css */
/* =====================================================
   SHOW ASSIGNED APPOINTMENTS PAGE STYLES
   Rose/Pink accent theme (var(--theme-rose)) for appointments
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* CSS Variables for this page */
.appointments-page[b-sznnr6st6m] {
    --accent-color: var(--theme-rose);
    --accent-light: var(--theme-rose-light);
    --accent-dark: var(--theme-rose-emphasis);
    --accent-bg: rgba(244, 63, 94, 0.1);
    --accent-bg-hover: rgba(244, 63, 94, 0.15);
    --accent-gradient: linear-gradient(135deg, var(--theme-rose) 0%, var(--theme-pink) 100%);
    min-height: 100vh;
    background: var(--bg-body);
}

/* =====================================================
   CONTENT FLOW LAYOUT
   ===================================================== */

.main-content-flow[b-sznnr6st6m] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.appointments-badge[b-sznnr6st6m] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--accent-bg);
    color: var(--accent-dark);
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 600;
}

.appointments-badge i[b-sznnr6st6m] {
    font-size: 0.875rem;
}

/* =====================================================
   QUICK STATS BAR
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.quick-stats[b-sznnr6st6m] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

/* stat-card base styles now in app.css */

/* Page-specific compact stat-card variant */
.stat-card[b-sznnr6st6m] {
    padding: 0.875rem 1rem;
    min-height: 64px;
}

/* Page-specific compact stat-icon variant */
.stat-icon[b-sznnr6st6m] {
    width: 40px;
    height: 40px;
}

/* Page-specific stat-icon color variants */
.stat-icon.total[b-sznnr6st6m] {
    background: rgba(244, 63, 94, 0.1);
    color: var(--theme-rose);
}

.stat-icon.pending[b-sznnr6st6m] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.stat-icon.confirmed[b-sznnr6st6m] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.stat-icon.accepted[b-sznnr6st6m] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

/* =====================================================
   FILTER BAR
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.filter-bar[b-sznnr6st6m] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.search-wrapper[b-sznnr6st6m] {
    position: relative;
    flex: 1;
    min-width: 280px;
    max-width: 480px;
}

.search-wrapper > i[b-sznnr6st6m] {
    position: absolute;
    left: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
    font-size: 1.125rem;
    pointer-events: none;
}

.search-input[b-sznnr6st6m] {
    width: 100%;
    padding: 0.75rem 2.5rem 0.75rem 2.75rem;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    font-size: 0.9375rem;
    color: var(--text-primary);
    background: var(--bg-surface-secondary);
    transition: all 0.2s ease;
}

.search-input:focus[b-sznnr6st6m] {
    outline: none;
    border-color: var(--accent-color);
    background: var(--bg-surface);
    box-shadow: 0 0 0 3px rgba(244, 63, 94, 0.1);
}

.search-input[b-sznnr6st6m]::placeholder {
    color: var(--text-muted);
}

.clear-search[b-sznnr6st6m] {
    position: absolute;
    right: 10px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
    height: 24px;
    border: none;
    background: var(--border-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--text-secondary);
    transition: all 0.2s ease;
}

.clear-search:hover[b-sznnr6st6m] {
    background: var(--border-color);
    color: var(--text-primary);
}

.filter-actions[b-sznnr6st6m] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

/* Note: Radzen component base styles are now centralized in app.css. */

.results-count[b-sznnr6st6m] {
    padding: 0.5rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
}

/* =====================================================
   CONTENT AREA
   ===================================================== */

/* Content Area - loading container centralized in app.css */

/* =====================================================
   EMPTY STATE
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
/* Note: Empty state now uses centralized EmptyState component. */

.empty-state[b-sznnr6st6m] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 2rem;
    text-align: center;
    background: var(--bg-surface);
    border-radius: 16px;
    border: 1px solid var(--border-color);
}

.empty-icon[b-sznnr6st6m] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1.5rem;
}

.empty-icon i[b-sznnr6st6m] {
    font-size: 2.5rem;
    color: var(--text-muted);
}

.empty-state h3[b-sznnr6st6m] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem 0;
}

.empty-state p[b-sznnr6st6m] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    margin: 0 0 1.5rem 0;
    max-width: 400px;
}

.empty-actions[b-sznnr6st6m] {
    display: flex;
    gap: 0.75rem;
}

/* =====================================================
   APPOINTMENTS GRID
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.appointments-grid[b-sznnr6st6m] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    gap: 1.5rem;
}

/* =====================================================
   APPOINTMENT CARD
   ===================================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */
.appointment-card[b-sznnr6st6m] {
    background: var(--bg-surface);
    border-radius: 16px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
    border-left: 4px solid var(--border-color);
}

.appointment-card:hover[b-sznnr6st6m] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-lg);
}

.appointment-card.waiting[b-sznnr6st6m] {
    border-left-color: var(--theme-warning);
}

.appointment-card.confirmed[b-sznnr6st6m] {
    border-left-color: var(--theme-info);
}

.appointment-card.finished[b-sznnr6st6m] {
    border-left-color: var(--theme-success);
}

.appointment-card.rejected[b-sznnr6st6m] {
    border-left-color: var(--theme-danger);
}

/* Card Header */
.appointment-card .card-header[b-sznnr6st6m] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
}

.appointment-card .card-header .header-left[b-sznnr6st6m] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.appointment-card .card-header .header-left i[b-sznnr6st6m] {
    color: var(--accent-color);
    font-size: 1.125rem;
}

/* Note: Status pills now use centralized StatusBadge component. */

/* DateTime Section */
.datetime-section[b-sznnr6st6m] {
    display: flex;
    gap: 1rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, rgba(244, 63, 94, 0.12) 0%, rgba(244, 63, 94, 0.06) 100%);
    margin: 0;
}

.date-block[b-sznnr6st6m] {
    width: 64px;
    min-width: 64px;
    background: var(--accent-gradient);
    border-radius: 12px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 0.75rem;
    color: white;
    box-shadow: 0 4px 12px rgba(244, 63, 94, 0.3);
}

.date-block .day[b-sznnr6st6m] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.date-block .month[b-sznnr6st6m] {
    font-size: 0.6875rem;
    text-transform: uppercase;
    font-weight: 600;
    opacity: 0.9;
    margin-top: 0.125rem;
}

.date-block .year[b-sznnr6st6m] {
    font-size: 0.625rem;
    opacity: 0.8;
}

.time-details[b-sznnr6st6m] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.date-full[b-sznnr6st6m] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.time-row[b-sznnr6st6m],
.duration-row[b-sznnr6st6m] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.time-row i[b-sznnr6st6m],
.duration-row i[b-sznnr6st6m] {
    font-size: 1rem;
    color: var(--accent-color);
}

/* Applicant Section */
.applicant-section[b-sznnr6st6m] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-bottom: 1px solid var(--border-color);
}

.applicant-avatar[b-sznnr6st6m] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-purple) 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-weight: 700;
    font-size: 1rem;
    flex-shrink: 0;
}

.applicant-details[b-sznnr6st6m] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.applicant-name[b-sznnr6st6m] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.applicant-email[b-sznnr6st6m] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.applicant-email i[b-sznnr6st6m] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

/* Vacancy Section */
.vacancy-section[b-sznnr6st6m] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
    border-bottom: 1px solid var(--border-color);
}

.vacancy-section i[b-sznnr6st6m] {
    color: var(--text-muted);
    font-size: 1rem;
}

/* Acceptance Badge */
.acceptance-badge[b-sznnr6st6m] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0.75rem 1.25rem;
    padding: 0.5rem 0.875rem;
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
}

.acceptance-badge i[b-sznnr6st6m] {
    font-size: 1rem;
}

/* Card Actions */
.card-actions[b-sznnr6st6m] {
    display: flex;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-top: 1px solid var(--border-color);
}

.view-btn[b-sznnr6st6m] {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--accent-bg);
    color: var(--accent-dark);
    border: 1px solid rgba(244, 63, 94, 0.2);
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.view-btn:hover[b-sznnr6st6m] {
    background: var(--accent-gradient);
    color: white;
    border-color: transparent;
    box-shadow: 0 4px 12px rgba(244, 63, 94, 0.3);
}

.view-btn i[b-sznnr6st6m] {
    font-size: 1rem;
}

.delete-btn[b-sznnr6st6m] {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
    color: var(--theme-danger);
    border: 1px solid var(--theme-danger-border);
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.delete-btn:hover:not(:disabled)[b-sznnr6st6m] {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger-light);
}

.delete-btn:disabled[b-sznnr6st6m] {
    opacity: 0.6;
    cursor: not-allowed;
}

.delete-btn i[b-sznnr6st6m] {
    font-size: 1.125rem;
}

/* =====================================================
   RESPONSIVE DESIGN
   ===================================================== */

@media (max-width: 1200px) {
    .quick-stats[b-sznnr6st6m] {
        grid-template-columns: repeat(2, 1fr);
    }

    .appointments-grid[b-sznnr6st6m] {
        grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    }
}

@media (max-width: 768px) {
    .quick-stats[b-sznnr6st6m] {
        grid-template-columns: repeat(2, 1fr);
        gap: 0.75rem;
    }

    .stat-card[b-sznnr6st6m] {
        padding: 0.75rem;
        min-height: 56px;
    }

    .stat-icon[b-sznnr6st6m] {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }

    .stat-value[b-sznnr6st6m] {
        font-size: 1.125rem;
    }

    .filter-bar[b-sznnr6st6m] {
        flex-direction: column;
        align-items: stretch;
        padding: 1rem;
    }

    .search-wrapper[b-sznnr6st6m] {
        min-width: auto;
        max-width: none;
    }

    .filter-actions[b-sznnr6st6m] {
        justify-content: space-between;
    }

    .appointments-grid[b-sznnr6st6m] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .quick-stats[b-sznnr6st6m] {
        grid-template-columns: 1fr;
    }

    .datetime-section[b-sznnr6st6m] {
        flex-direction: column;
        align-items: flex-start;
    }

    .date-block[b-sznnr6st6m] {
        width: auto;
        flex-direction: row;
        gap: 0.5rem;
        padding: 0.5rem 1rem;
    }

    .date-block .day[b-sznnr6st6m] {
        font-size: 1.25rem;
    }

    .applicant-section[b-sznnr6st6m] {
        flex-direction: column;
        align-items: flex-start;
        text-align: left;
    }

    .applicant-details[b-sznnr6st6m] {
        width: 100%;
    }

    .empty-actions[b-sznnr6st6m] {
        flex-direction: column;
        width: 100%;
    }
}
/* /Pages/Recruiter/ApplicationStagePages/_ApplicationDetails.razor.rz.scp.css */
/**
 * _ApplicationDetails - Scoped Styles
 * Uses CSS variables for theme consistency and dark mode support.
 * Dark mode handled automatically via CSS variables from theme-core.css
 */

/* ========================================
   APPLICATION DETAILS HEADER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.application-details-header[b-bx0tkg61w0] {
    border-left: 4px solid var(--theme-primary);
    background: var(--bg-surface);
    margin-bottom: 1.25rem;
    border-radius: 8px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.05);
}

.application-details-header h5[b-bx0tkg61w0] {
    color: var(--text-primary) !important;
    font-weight: 600;
    font-size: 0.9375rem;
    margin: 0;
}

/* ========================================
   DETAIL CARD
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.detail-card[b-bx0tkg61w0] {
    background: var(--bg-surface);
    border-radius: 10px;
    padding: 1.125rem;
    height: 100%;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.06);
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
    position: relative;
    overflow: hidden;
}

.detail-card:hover[b-bx0tkg61w0] {
    box-shadow: var(--shadow-md);
}

.detail-card[b-bx0tkg61w0]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 4px;
    height: 100%;
    background: var(--theme-primary);
}

.detail-card.applicant[b-bx0tkg61w0]::before {
    background: var(--theme-primary);
}

.detail-card.vacancy[b-bx0tkg61w0]::before {
    background: var(--theme-success);
}

.detail-card.attachments[b-bx0tkg61w0]::before {
    background: var(--theme-info);
}

/* ========================================
   DETAIL CARD HEADER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.detail-card-header[b-bx0tkg61w0] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    margin-bottom: 1rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

.detail-card-header-content[b-bx0tkg61w0] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

/* ========================================
   DETAIL ICON WRAPPER
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.detail-icon-wrapper[b-bx0tkg61w0] {
    width: 38px;
    height: 38px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.detail-icon-wrapper.applicant[b-bx0tkg61w0] {
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-primary);
}

.detail-icon-wrapper.vacancy[b-bx0tkg61w0] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.detail-icon-wrapper.attachments[b-bx0tkg61w0] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

/* ========================================
   DETAIL CARD TITLE
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.detail-card-title[b-bx0tkg61w0] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    line-height: 1.3;
}

/* ========================================
   DETAIL INFO ITEMS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.detail-card-body[b-bx0tkg61w0] {
    padding-left: 0.25rem;
}

.detail-info-item[b-bx0tkg61w0] {
    display: flex;
    align-items: flex-start;
    padding: 0.4rem 0;
    gap: 0.5rem;
}

.detail-info-label[b-bx0tkg61w0] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
    min-width: 70px;
    flex-shrink: 0;
}

.detail-info-value[b-bx0tkg61w0] {
    font-size: 0.8125rem;
    color: var(--text-primary);
    font-weight: 600;
    flex: 1;
    word-break: break-word;
}

.detail-info-value.secondary[b-bx0tkg61w0] {
    font-weight: 400;
    color: var(--text-secondary);
}

/* ========================================
   DETAIL BADGES
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.detail-badge[b-bx0tkg61w0] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
}

.detail-badge.success[b-bx0tkg61w0] {
    background: rgba(16, 185, 129, 0.12);
    color: var(--theme-success-emphasis);
}

.detail-badge.warning[b-bx0tkg61w0] {
    background: rgba(245, 158, 11, 0.12);
    color: var(--theme-warning-emphasis);
}

.detail-badge.info[b-bx0tkg61w0] {
    background: rgba(59, 130, 246, 0.12);
    color: var(--theme-info-emphasis);
}

/* ========================================
   CREATED BADGE - INLINE VERSION
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.created-badge-inline[b-bx0tkg61w0] {
    font-size: 0.625rem;
    padding: 0.125rem 0.5rem;
    margin-top: 0.125rem;
    align-self: flex-start;
}

/* ========================================
   ATTACHMENT ITEMS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.attachment-item[b-bx0tkg61w0] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.625rem;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    margin-bottom: 0.375rem;
    transition: all 0.2s ease;
    text-decoration: none;
    color: inherit;
    border: 1px solid transparent;
}

.attachment-item:hover[b-bx0tkg61w0] {
    background: var(--bg-surface);
    border-color: var(--border-color);
    transform: translateX(2px);
}

.attachment-icon[b-bx0tkg61w0] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
    color: var(--theme-info);
    font-size: 0.875rem;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
}

.attachment-name[b-bx0tkg61w0] {
    flex: 1;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
}

/* ========================================
   DIVIDER LINE
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.divider-line[b-bx0tkg61w0] {
    height: 1px;
    background: var(--border-color);
    margin: 0.625rem 0;
    opacity: 0.6;
}

/* ========================================
   USER INFO SECTION
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.user-info-section[b-bx0tkg61w0] {
    margin-top: 0.875rem;
    padding-top: 0.875rem;
    border-top: 1px solid var(--border-color);
}

.user-info-section small[b-bx0tkg61w0] {
    color: var(--text-secondary) !important;
}

/* ========================================
   RESPONSIVE ADJUSTMENTS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 768px) {
    .detail-card[b-bx0tkg61w0] {
        margin-bottom: 0.875rem;
    }

    .detail-info-label[b-bx0tkg61w0] {
        min-width: 60px;
    }

    .detail-card-header[b-bx0tkg61w0] {
        flex-wrap: wrap;
    }
}

/* ========================================
   ATTACHMENT ICON BUTTON
   ======================================== */

.btn-icon-sm[b-bx0tkg61w0] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 5px;
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s ease;
    flex-shrink: 0;
}

.btn-icon-sm:hover[b-bx0tkg61w0] {
    background: rgba(var(--theme-primary-rgb), 0.1);
    color: var(--theme-primary);
}

.btn-icon-sm i[b-bx0tkg61w0] {
    font-size: 0.8125rem;
}

.attachment-item:hover .btn-icon-sm[b-bx0tkg61w0] {
    color: var(--text-secondary);
}

.attachment-item:hover .btn-icon-sm:hover[b-bx0tkg61w0] {
    color: var(--theme-primary);
}
/* /Pages/Recruiter/DocumentManagement/DocumentManagement.razor.rz.scp.css */
/* ========================================
   DOCUMENT MANAGEMENT PAGE - STANDARDIZED PATTERN
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* ========================================
   NAVIGATION BAR
   ======================================== */

.navigation-bar[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ========================================
   TABS (Inline)
   ======================================== */

.tabs-inline[b-hox9c4d2sy] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-hox9c4d2sy] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-hox9c4d2sy] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-hox9c4d2sy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-hox9c4d2sy] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ========================================
   VACANCY SELECTOR (Inline)
   ======================================== */

.vacancy-inline[b-hox9c4d2sy] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 400px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-hox9c4d2sy] {
    font-size: 1rem;
}

.vacancy-select[b-hox9c4d2sy] {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 2.5rem 0 0.875rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px;
}

.vacancy-select:hover[b-hox9c4d2sy] {
    border-color: var(--theme-primary-emphasis);
    background-color: rgba(99, 102, 241, 0.08);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.2);
}

.vacancy-select:focus[b-hox9c4d2sy] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.vacancy-select option[b-hox9c4d2sy] {
    padding: 0.5rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

/* ========================================
   SEARCH BOX (Inline)
   ======================================== */

.search-inline[b-hox9c4d2sy] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-hox9c4d2sy] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-hox9c4d2sy] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-hox9c4d2sy] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-hox9c4d2sy]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-hox9c4d2sy] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ========================================
   VIEW TOGGLE (Inline)
   ======================================== */

.view-toggle-inline[b-hox9c4d2sy] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
}

.view-toggle-inline .toggle-btn[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.view-toggle-inline .toggle-btn:hover[b-hox9c4d2sy] {
    color: var(--text-secondary);
    background: var(--bg-hover);
}

.view-toggle-inline .toggle-btn.active[b-hox9c4d2sy] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-xs);
}

.view-toggle-inline .toggle-btn i[b-hox9c4d2sy] {
    font-size: 1rem;
}

/* ========================================
   FILTER TOGGLE BUTTON
   ======================================== */

.filter-toggle-btn[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-hox9c4d2sy] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-hox9c4d2sy] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-hox9c4d2sy] {
    font-size: 1rem;
}

.filter-active-dot[b-hox9c4d2sy] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-hox9c4d2sy] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-hox9c4d2sy] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-hox9c4d2sy] {
    font-size: 1rem;
}

.spinner-sm[b-hox9c4d2sy] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-hox9c4d2sy 0.6s linear infinite;
}

@keyframes spin-b-hox9c4d2sy {
    to { transform: rotate(360deg); }
}

/* ========================================
   ADVANCED FILTERS BAR (Collapsible)
   ======================================== */

.advanced-filters-bar[b-hox9c4d2sy] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-hox9c4d2sy] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 160px;
    min-width: 130px;
    max-width: 220px;
}

.advanced-filter-label[b-hox9c4d2sy] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.advanced-filter-label i[b-hox9c4d2sy] {
    font-size: 0.8125rem;
}

[b-hox9c4d2sy] .adv-filter-fsh-select {
    margin: 0;
}

[b-hox9c4d2sy] .adv-filter-fsh-select .fsh-searchable-select {
    min-width: 0;
}

[b-hox9c4d2sy] .adv-filter-fsh-select .fsh-searchable-trigger {
    height: 34px;
    padding: 0 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    transition: all 0.2s ease;
}

[b-hox9c4d2sy] .adv-filter-fsh-select .fsh-searchable-trigger:hover {
    border-color: var(--theme-primary);
}

[b-hox9c4d2sy] .adv-filter-fsh-select .fsh-searchable-value {
    font-size: 0.8125rem;
}

[b-hox9c4d2sy] .adv-filter-fsh-select .fsh-searchable-placeholder {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

[b-hox9c4d2sy] .adv-filter-fsh-select .fsh-searchable-dropdown {
    min-width: 200px;
    z-index: 1050;
}

.advanced-filter-actions[b-hox9c4d2sy] {
    display: flex;
    align-items: flex-end;
    flex: 0 0 auto;
    padding-bottom: 1px;
}

.adv-clear-btn[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.adv-clear-btn:hover[b-hox9c4d2sy] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.adv-clear-btn i[b-hox9c4d2sy] {
    font-size: 0.875rem;
}

/* ========================================
   BULK ACTIONS BAR
   ======================================== */

.bulk-actions-bar[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.25rem;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.08) 0%, rgba(99, 102, 241, 0.04) 100%);
    border: 1px solid var(--theme-primary-border);
    border-radius: 10px;
    margin-bottom: 1rem;
    animation: slideDown-b-hox9c4d2sy 0.2s ease-out;
}

@keyframes slideDown-b-hox9c4d2sy {
    from { opacity: 0; transform: translateY(-8px); }
    to { opacity: 1; transform: translateY(0); }
}

.selection-info[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.selection-count[b-hox9c4d2sy] {
    font-weight: 600;
    color: var(--theme-primary);
}

.btn-clear-selection[b-hox9c4d2sy] {
    padding: 0.25rem 0.5rem;
    border: none;
    background: none;
    color: var(--text-secondary);
    font-size: 0.8125rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    border-radius: 4px;
    transition: all 0.2s ease;
}

.btn-clear-selection:hover[b-hox9c4d2sy] {
    background: rgba(0, 0, 0, 0.05);
    color: var(--text-primary);
}

.bulk-buttons[b-hox9c4d2sy] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

.bulk-btn[b-hox9c4d2sy] {
    padding: 0.5rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    transition: all 0.2s ease;
}

.bulk-btn:hover[b-hox9c4d2sy] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.bulk-btn.export:hover[b-hox9c4d2sy] {
    background: var(--theme-success);
    border-color: var(--theme-success);
}

/* ========================================
   CONTENT AREA
   ======================================== */

.content-area[b-hox9c4d2sy] {
    min-height: 200px;
}

/* ========================================
   TABLE VIEW
   ======================================== */

.table-container[b-hox9c4d2sy] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* Document cell */
.document-cell[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.document-icon[b-hox9c4d2sy] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.document-icon.pdf[b-hox9c4d2sy] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger); }
.document-icon.word[b-hox9c4d2sy] { background: rgba(59, 130, 246, 0.1); color: var(--theme-info); }
.document-icon.excel[b-hox9c4d2sy] { background: rgba(34, 197, 94, 0.1); color: var(--theme-success); }
.document-icon.ppt[b-hox9c4d2sy] { background: rgba(245, 158, 11, 0.1); color: var(--theme-warning); }
.document-icon.image[b-hox9c4d2sy] { background: rgba(168, 85, 247, 0.1); color: var(--theme-purple); }
.document-icon.default[b-hox9c4d2sy] { background: rgba(107, 114, 128, 0.1); color: var(--theme-gray-500); }

.document-info[b-hox9c4d2sy] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.document-name[b-hox9c4d2sy] {
    font-weight: 500;
    color: var(--text-primary);
    font-size: 0.875rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

a.document-name.previewable[b-hox9c4d2sy] {
    color: var(--primary);
    text-decoration: none;
    cursor: pointer;
}

a.document-name.previewable:hover[b-hox9c4d2sy] {
    text-decoration: underline;
}

.document-desc[b-hox9c4d2sy] {
    font-size: 0.75rem;
    color: var(--text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 200px;
}

/* Category badges */
.category-badge[b-hox9c4d2sy] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.category-badge.info[b-hox9c4d2sy] { background: rgba(59, 130, 246, 0.1); color: var(--theme-info); }
.category-badge.primary[b-hox9c4d2sy] { background: rgba(99, 102, 241, 0.1); color: var(--theme-primary); }
.category-badge.warning[b-hox9c4d2sy] { background: rgba(245, 158, 11, 0.1); color: var(--theme-warning); }
.category-badge.success[b-hox9c4d2sy] { background: rgba(16, 185, 129, 0.1); color: var(--theme-success); }
.category-badge.danger[b-hox9c4d2sy] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger); }
.category-badge.secondary[b-hox9c4d2sy] { background: rgba(107, 114, 128, 0.1); color: var(--text-secondary); }
.category-badge.default[b-hox9c4d2sy] { background: rgba(107, 114, 128, 0.08); color: var(--text-muted); }

/* Visibility badges */
.visibility-badge[b-hox9c4d2sy] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
    white-space: nowrap;
}

.visibility-badge i[b-hox9c4d2sy] { font-size: 0.875rem; }

.visibility-badge.public[b-hox9c4d2sy] { background: rgba(16, 185, 129, 0.1); color: var(--theme-success); }
.visibility-badge.auth[b-hox9c4d2sy] { background: rgba(59, 130, 246, 0.1); color: var(--theme-info); }
.visibility-badge.applicant[b-hox9c4d2sy] { background: rgba(99, 102, 241, 0.1); color: var(--theme-indigo); }
.visibility-badge.admitted[b-hox9c4d2sy] { background: rgba(245, 158, 11, 0.1); color: var(--theme-warning); }
.visibility-badge.stage[b-hox9c4d2sy] { background: rgba(168, 85, 247, 0.1); color: var(--theme-purple); }

/* Status badges */
.status-badge[b-hox9c4d2sy] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge.active[b-hox9c4d2sy] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.status-badge.inactive[b-hox9c4d2sy] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

/* File size */
.file-size[b-hox9c4d2sy] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.file-size i[b-hox9c4d2sy] {
    font-size: 0.875rem;
}

/* Action buttons in table */
.action-buttons[b-hox9c4d2sy] {
    display: flex;
    gap: 0.25rem;
}

.btn-icon[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.btn-icon:hover[b-hox9c4d2sy] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.btn-icon.danger:hover[b-hox9c4d2sy] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
}

.btn-icon i[b-hox9c4d2sy] {
    font-size: 0.9375rem;
}

/* DataGrid overrides */
[b-hox9c4d2sy] .rz-datatable {
    border: none;
}

[b-hox9c4d2sy] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-hox9c4d2sy] .rz-datatable-data > tr > td {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-hox9c4d2sy] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-hox9c4d2sy] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   CARD VIEW
   ======================================== */

.documents-grid[b-hox9c4d2sy] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    gap: 1.25rem;
}

.document-card[b-hox9c4d2sy] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
    position: relative;
    display: flex;
    flex-direction: column;
}

.document-card:hover[b-hox9c4d2sy] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.document-card.selected[b-hox9c4d2sy] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--theme-primary-border);
}

.card-checkbox[b-hox9c4d2sy] {
    position: absolute;
    top: 0.875rem;
    left: 0.875rem;
    z-index: 2;
}

.card-checkbox input[type="checkbox"][b-hox9c4d2sy] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--theme-primary);
}

.card-header-row[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem 0.5rem;
    padding-left: 2.75rem;
}

.document-icon-lg[b-hox9c4d2sy] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.document-icon-lg.pdf[b-hox9c4d2sy] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger); }
.document-icon-lg.word[b-hox9c4d2sy] { background: rgba(59, 130, 246, 0.1); color: var(--theme-info); }
.document-icon-lg.excel[b-hox9c4d2sy] { background: rgba(34, 197, 94, 0.1); color: var(--theme-success); }
.document-icon-lg.ppt[b-hox9c4d2sy] { background: rgba(245, 158, 11, 0.1); color: var(--theme-warning); }
.document-icon-lg.image[b-hox9c4d2sy] { background: rgba(168, 85, 247, 0.1); color: var(--theme-purple); }
.document-icon-lg.default[b-hox9c4d2sy] { background: rgba(107, 114, 128, 0.1); color: var(--theme-gray-500); }

.card-body-content[b-hox9c4d2sy] {
    padding: 0.5rem 1rem 1rem;
    flex: 1;
}

.card-doc-name[b-hox9c4d2sy] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.25rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.card-doc-desc[b-hox9c4d2sy] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    margin: 0 0 0.75rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.card-meta[b-hox9c4d2sy] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    margin-bottom: 0.5rem;
}

.card-file-info[b-hox9c4d2sy] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.card-footer-actions[b-hox9c4d2sy] {
    display: flex;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.action-btn[b-hox9c4d2sy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.action-btn i[b-hox9c4d2sy] {
    font-size: 1rem;
}

.action-btn:hover[b-hox9c4d2sy] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.action-btn.warning:hover[b-hox9c4d2sy] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: white;
}

.pagination-wrapper[b-hox9c4d2sy] {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
}

/* ========================================
   LIST FOOTER
   ======================================== */

.list-footer[b-hox9c4d2sy] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.results-text[b-hox9c4d2sy] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-hox9c4d2sy] {
    color: var(--text-primary);
}

.selected-text[b-hox9c4d2sy] {
    color: var(--theme-primary);
    font-weight: 600;
}

.footer-left[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.page-size-selector[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-hox9c4d2sy] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-hox9c4d2sy] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-hox9c4d2sy] {
    border-color: var(--theme-primary);
}

.export-buttons[b-hox9c4d2sy] {
    display: flex;
    gap: 0.5rem;
}

.export-btn[b-hox9c4d2sy] {
    padding: 0.5rem 1rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    transition: all 0.2s ease;
    border: none;
}

.export-btn.csv[b-hox9c4d2sy] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

.export-btn.csv:hover[b-hox9c4d2sy] {
    background: var(--text-secondary);
    color: white;
}

/* ========================================
   ACCESS LOG TABLE STYLES
   ======================================== */

.log-document-cell[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-primary);
    font-size: 0.875rem;
}

.log-document-cell i[b-hox9c4d2sy] {
    color: var(--text-muted);
}

.log-user-cell[b-hox9c4d2sy] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.log-user-avatar[b-hox9c4d2sy] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--bg-surface-tertiary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.log-user-avatar i[b-hox9c4d2sy] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.action-type-badge[b-hox9c4d2sy] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 500;
}

.action-type-badge i[b-hox9c4d2sy] {
    font-size: 0.875rem;
}

.action-type-badge.view[b-hox9c4d2sy] { background: rgba(59, 130, 246, 0.1); color: var(--theme-info); }
.action-type-badge.download[b-hox9c4d2sy] { background: rgba(16, 185, 129, 0.1); color: var(--theme-success); }
.action-type-badge.denied[b-hox9c4d2sy] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger); }
.action-type-badge.default[b-hox9c4d2sy] { background: rgba(107, 114, 128, 0.1); color: var(--theme-gray-500); }

.result-badge[b-hox9c4d2sy] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
}

.result-badge i[b-hox9c4d2sy] { font-size: 0.75rem; }

.result-badge.granted[b-hox9c4d2sy] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.result-badge.denied[b-hox9c4d2sy] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.denial-reason[b-hox9c4d2sy] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 160px;
    display: inline-block;
}

.ip-address[b-hox9c4d2sy] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    font-family: monospace;
}

.timestamp[b-hox9c4d2sy] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ========================================
   RESPONSIVE
   ======================================== */

@media (max-width: 1200px) {
    .navigation-bar[b-hox9c4d2sy] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-hox9c4d2sy] {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }

    .vacancy-label span[b-hox9c4d2sy] {
        display: none;
    }

    .search-inline[b-hox9c4d2sy] {
        flex: 1 1 150px;
        min-width: 120px;
    }

    .documents-grid[b-hox9c4d2sy] {
        grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-hox9c4d2sy] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-hox9c4d2sy] {
        order: 1;
        flex: 0 0 auto;
    }

    .vacancy-inline[b-hox9c4d2sy] {
        order: 2;
        flex: 1 1 auto;
        min-width: 200px;
        max-width: none;
    }

    .vacancy-label[b-hox9c4d2sy] {
        display: none;
    }

    .search-inline[b-hox9c4d2sy] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .view-toggle-inline[b-hox9c4d2sy] {
        order: 4;
    }

    .filter-toggle-btn[b-hox9c4d2sy] {
        order: 5;
    }

    .filter-toggle-btn span[b-hox9c4d2sy] {
        display: none;
    }

    .refresh-btn[b-hox9c4d2sy] {
        order: 6;
    }

    .advanced-filters-bar[b-hox9c4d2sy] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-hox9c4d2sy] {
        max-width: none;
    }

    .bulk-actions-bar[b-hox9c4d2sy] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: flex-start;
    }

    .list-footer[b-hox9c4d2sy] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: flex-start;
    }

    .documents-grid[b-hox9c4d2sy] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-hox9c4d2sy] {
        flex: 1 1 100%;
        justify-content: center;
    }

    .tab-compact span:not(.tab-badge)[b-hox9c4d2sy] {
        display: none;
    }

    .tab-compact[b-hox9c4d2sy] {
        padding: 0.5rem 0.625rem;
    }

    .action-btn span[b-hox9c4d2sy] {
        display: none;
    }

    .action-btn[b-hox9c4d2sy] {
        padding: 0.5rem;
    }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .navigation-bar[b-hox9c4d2sy],
[data-bs-theme="dark"] .table-container[b-hox9c4d2sy],
[data-bs-theme="dark"] .document-card[b-hox9c4d2sy],
[data-bs-theme="dark"] .list-footer[b-hox9c4d2sy] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .advanced-filters-bar[b-hox9c4d2sy] {
    background: var(--bg-surface-secondary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .tabs-inline[b-hox9c4d2sy],
[data-bs-theme="dark"] .view-toggle-inline[b-hox9c4d2sy],
[data-bs-theme="dark"] .card-footer-actions[b-hox9c4d2sy] {
    background: var(--bg-surface-tertiary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .nav-search-box[b-hox9c4d2sy],
[data-bs-theme="dark"] .filter-toggle-btn[b-hox9c4d2sy],
[data-bs-theme="dark"] .bulk-btn[b-hox9c4d2sy],
[data-bs-theme="dark"] .btn-icon[b-hox9c4d2sy],
[data-bs-theme="dark"] .action-btn[b-hox9c4d2sy],
[data-bs-theme="dark"] .page-size-selector select[b-hox9c4d2sy] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .document-name[b-hox9c4d2sy],
[data-bs-theme="dark"] .card-doc-name[b-hox9c4d2sy],
[data-bs-theme="dark"] .log-document-cell[b-hox9c4d2sy],
[data-bs-theme="dark"] .results-text strong[b-hox9c4d2sy] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .document-desc[b-hox9c4d2sy],
[data-bs-theme="dark"] .card-doc-desc[b-hox9c4d2sy],
[data-bs-theme="dark"] .card-file-info[b-hox9c4d2sy],
[data-bs-theme="dark"] .denial-reason[b-hox9c4d2sy],
[data-bs-theme="dark"] .ip-address[b-hox9c4d2sy],
[data-bs-theme="dark"] .timestamp[b-hox9c4d2sy],
[data-bs-theme="dark"] .file-size[b-hox9c4d2sy],
[data-bs-theme="dark"] .results-text[b-hox9c4d2sy] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .btn-clear-selection:hover[b-hox9c4d2sy] {
    background: rgba(255, 255, 255, 0.05);
    color: var(--text-primary);
}

[data-bs-theme="dark"][b-hox9c4d2sy]  .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-hox9c4d2sy]  .rz-datatable-data > tr > td {
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-hox9c4d2sy]  .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}
/* /Pages/Recruiter/EligibilityDashboard.razor.rz.scp.css */
/* Eligibility Dashboard Styles */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.eligibility-dashboard[b-dr6nevgcw2] {
    /* Padding removed - handled by .content-page global rule */
}

/* Pattern moved to centralized app.css */

.vacancy-select[b-dr6nevgcw2] {
    padding: 0.625rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.875rem;
    min-width: 200px;
    background: var(--bg-surface);
    color: var(--text-primary);
}

.btn-recalculate[b-dr6nevgcw2] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: var(--theme-primary);
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-recalculate:hover:not(:disabled)[b-dr6nevgcw2] {
    background: var(--theme-primary-emphasis);
}

.btn-recalculate:disabled[b-dr6nevgcw2] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Note: Spinner is now centralized in app.css. */

/* Stats Grid - 6 columns layout for eligibility metrics */
.stats-grid[b-dr6nevgcw2] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 1rem;
    margin-bottom: 1.5rem;
}

/* stat-card base styles now in app.css */

/* Page-specific stat-icon variants for eligibility ratings */
.stat-icon.total[b-dr6nevgcw2] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.stat-icon.excellent[b-dr6nevgcw2] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.stat-icon.good[b-dr6nevgcw2] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.stat-icon.fair[b-dr6nevgcw2] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.stat-icon.low[b-dr6nevgcw2] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.stat-icon.average[b-dr6nevgcw2] {
    background: var(--theme-purple-subtle, rgba(139, 92, 246, 0.1));
    color: var(--theme-purple);
}

/* Content Row */
.content-row[b-dr6nevgcw2] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

/* Content Card */
.content-card[b-dr6nevgcw2] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.card-header[b-dr6nevgcw2] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
}

.card-header h3[b-dr6nevgcw2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.card-header h3 i[b-dr6nevgcw2] {
    color: var(--theme-primary);
}

.card-body[b-dr6nevgcw2] {
    padding: 1.25rem;
}

/* Choice Distribution */
.choice-bars[b-dr6nevgcw2] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.choice-bar-item[b-dr6nevgcw2] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.choice-label[b-dr6nevgcw2] {
    width: 90px;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    flex-shrink: 0;
}

.bar-container[b-dr6nevgcw2] {
    flex: 1;
    height: 24px;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    overflow: hidden;
}

.bar-fill[b-dr6nevgcw2] {
    height: 100%;
    border-radius: 4px;
    transition: width 0.3s ease;
}

.bar-fill.choice-1[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-success), var(--theme-success-emphasis)); }
.bar-fill.choice-2[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-info), var(--theme-info-emphasis)); }
.bar-fill.choice-3[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-purple), var(--theme-purple-emphasis)); }
.bar-fill.choice-4[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-emphasis)); }
.bar-fill.choice-5[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--text-secondary), var(--text-muted)); }

.bar-fill.excellent[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-success), var(--theme-success-emphasis)); }
.bar-fill.good[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-info), var(--theme-info-emphasis)); }
.bar-fill.fair[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-emphasis)); }
.bar-fill.low[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-warning), var(--theme-warning-emphasis)); }
.bar-fill.very-low[b-dr6nevgcw2] { background: linear-gradient(90deg, var(--theme-danger), var(--theme-danger-emphasis)); }

.choice-count[b-dr6nevgcw2],
.range-count[b-dr6nevgcw2] {
    width: 60px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    text-align: right;
}

/* Score Distribution */
.score-ranges[b-dr6nevgcw2] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.score-range-item[b-dr6nevgcw2] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.range-label[b-dr6nevgcw2] {
    width: 60px;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    flex-shrink: 0;
}

/* Rankings Card */
.rankings-card .card-header[b-dr6nevgcw2] {
    flex-wrap: wrap;
    gap: 1rem;
}

.filter-controls[b-dr6nevgcw2] {
    display: flex;
    gap: 0.5rem;
}

.filter-select[b-dr6nevgcw2] {
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
}

/* Rankings Table */
.rankings-table[b-dr6nevgcw2] {
    overflow-x: auto;
}

.rankings-table table[b-dr6nevgcw2] {
    width: 100%;
    border-collapse: collapse;
}

.rankings-table th[b-dr6nevgcw2],
.rankings-table td[b-dr6nevgcw2] {
    padding: 0.875rem 1rem;
    text-align: left;
    border-bottom: 1px solid var(--border-color);
}

.rankings-table th[b-dr6nevgcw2] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    background: var(--bg-surface-tertiary);
}

.rankings-table td[b-dr6nevgcw2] {
    color: var(--text-primary);
}

.rankings-table tbody tr:hover[b-dr6nevgcw2] {
    background: var(--bg-surface-tertiary);
}

.rank-col[b-dr6nevgcw2] {
    width: 60px;
    text-align: center;
}

.rank-badge[b-dr6nevgcw2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    font-size: 0.875rem;
    font-weight: 700;
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.rank-badge.gold[b-dr6nevgcw2] {
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning));
    color: white;
}

.rank-badge.silver[b-dr6nevgcw2] {
    background: linear-gradient(135deg, var(--theme-gray-400), var(--theme-gray-500));
    color: white;
}

.rank-badge.bronze[b-dr6nevgcw2] {
    background: linear-gradient(135deg, var(--theme-warning-emphasis), var(--theme-warning-text));
    color: white;
}

.student-link[b-dr6nevgcw2] {
    color: var(--theme-primary);
    font-weight: 500;
    text-decoration: none;
}

.student-link:hover[b-dr6nevgcw2] {
    text-decoration: underline;
}

.choice-badge[b-dr6nevgcw2] {
    display: inline-flex;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
}

.choice-badge.choice-1[b-dr6nevgcw2] { background: var(--theme-success-subtle); color: var(--theme-success); }
.choice-badge.choice-2[b-dr6nevgcw2] { background: var(--theme-info-subtle); color: var(--theme-info); }
.choice-badge.choice-3[b-dr6nevgcw2] { background: var(--theme-purple-subtle, rgba(139, 92, 246, 0.1)); color: var(--theme-purple); }
.choice-badge.choice-4[b-dr6nevgcw2],
.choice-badge.choice-5[b-dr6nevgcw2] { background: var(--theme-warning-subtle); color: var(--theme-warning); }

.score-col[b-dr6nevgcw2] {
    width: 120px;
}

.score-cell[b-dr6nevgcw2] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.score-bar-mini[b-dr6nevgcw2] {
    flex: 1;
    height: 6px;
    background: var(--bg-surface-tertiary);
    border-radius: 3px;
    overflow: hidden;
}

.score-bar-mini .bar-fill[b-dr6nevgcw2] {
    height: 100%;
}

.score-value[b-dr6nevgcw2] {
    font-weight: 600;
    font-size: 0.875rem;
    min-width: 28px;
    color: var(--text-primary);
}

.rating-badge[b-dr6nevgcw2] {
    display: inline-flex;
    padding: 0.25rem 0.625rem;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 600;
}

.rating-badge.excellent[b-dr6nevgcw2] { background: var(--theme-success-subtle); color: var(--theme-success); }
.rating-badge.good[b-dr6nevgcw2] { background: var(--theme-info-subtle); color: var(--theme-info); }
.rating-badge.fair[b-dr6nevgcw2] { background: var(--theme-warning-subtle); color: var(--theme-warning); }
.rating-badge.low[b-dr6nevgcw2] { background: var(--theme-danger-subtle); color: var(--theme-danger); }

.btn-action[b-dr6nevgcw2] {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface-secondary);
    border: none;
    border-radius: 6px;
    cursor: pointer;
    transition: all 0.2s ease;
    color: var(--text-secondary);
}

.btn-action:hover[b-dr6nevgcw2] {
    background: var(--theme-primary);
    color: white;
}

.btn-action i[b-dr6nevgcw2] {
    font-size: 1rem;
}

.empty-state-inline[b-dr6nevgcw2] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 3rem;
    color: var(--text-muted);
}

.empty-state-inline i[b-dr6nevgcw2] {
    font-size: 1.5rem;
}

.show-more[b-dr6nevgcw2] {
    text-align: center;
    padding: 1rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
    border-top: 1px solid var(--border-color);
}

/* Responsive */
@media (max-width: 1200px) {
    .stats-grid[b-dr6nevgcw2] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 992px) {
    .content-row[b-dr6nevgcw2] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .vacancy-select[b-dr6nevgcw2] {
        width: 100%;
    }

    .stats-grid[b-dr6nevgcw2] {
        grid-template-columns: repeat(2, 1fr);
    }

    .filter-controls[b-dr6nevgcw2] {
        width: 100%;
        flex-direction: column;
    }

    .filter-select[b-dr6nevgcw2] {
        width: 100%;
    }
}
/* /Pages/Recruiter/LeadPages/LeadDetail.razor.rz.scp.css */
/* LeadDetail.razor.css
   Dark mode handled automatically via CSS variables from theme-core.css */

.page-title[b-pnsfaftqa9] {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
}

.small-text[b-pnsfaftqa9] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.tiny-text[b-pnsfaftqa9] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Lead Avatar */
.lead-avatar[b-pnsfaftqa9] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 1rem;
    color: white;
    background: var(--theme-primary);
}

.user-avatar[b-pnsfaftqa9] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.75rem;
    color: white;
    background: var(--theme-secondary);
}

/* Quality Classes */
.quality-hot[b-pnsfaftqa9] {
    background: linear-gradient(135deg, var(--theme-warning-emphasis) 0%, var(--theme-danger) 100%);
    box-shadow: 0 0 12px rgba(255, 87, 34, 0.4);
}

.quality-high[b-pnsfaftqa9] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.quality-medium[b-pnsfaftqa9] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info) 100%);
}

.quality-low[b-pnsfaftqa9] {
    background: linear-gradient(135deg, var(--text-muted) 0%, var(--text-secondary) 100%);
}

.quality-unqualified[b-pnsfaftqa9] {
    background: linear-gradient(135deg, var(--text-muted) 0%, var(--text-muted) 100%);
}

/* Status badge pattern consolidated in app.css (keeping page-specific variants below) */
.status-new[b-pnsfaftqa9] { background: var(--theme-info-subtle); color: var(--theme-info); }
.status-contacted[b-pnsfaftqa9] { background: var(--theme-warning-subtle); color: var(--theme-warning); }
.status-qualified[b-pnsfaftqa9] { background: var(--theme-success-subtle); color: var(--theme-success); }
.status-nurturing[b-pnsfaftqa9] { background: var(--theme-purple-subtle); color: var(--theme-purple); }
.status-ready[b-pnsfaftqa9] { background: var(--theme-success-subtle); color: var(--theme-success-emphasis); }
.status-converted[b-pnsfaftqa9] { background: var(--theme-success-subtle); color: var(--theme-success-emphasis); }
.status-lost[b-pnsfaftqa9] { background: var(--theme-danger-subtle); color: var(--theme-danger); }
.status-disqualified[b-pnsfaftqa9] { background: var(--bg-surface-tertiary); color: var(--text-secondary); }

/* Source Badges */
.source-badge[b-pnsfaftqa9] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.75rem;
    border-radius: 1rem;
    font-size: 0.75rem;
    font-weight: 500;
}

.source-website[b-pnsfaftqa9] { background: var(--theme-info-subtle); color: var(--theme-info); }
.source-referral[b-pnsfaftqa9] { background: var(--theme-danger-subtle); color: var(--theme-danger); }
.source-event[b-pnsfaftqa9] { background: var(--theme-warning-subtle); color: var(--theme-warning); }
.source-social[b-pnsfaftqa9] { background: var(--theme-primary-subtle); color: var(--theme-primary); }
.source-other[b-pnsfaftqa9] { background: var(--bg-surface-tertiary); color: var(--text-secondary); }

/* Follow-up Card */
.follow-up-card[b-pnsfaftqa9] {
    padding: 1rem;
    border-radius: 0.5rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
}

.follow-up-card.overdue[b-pnsfaftqa9] {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger);
}

/* Content Area */
.content-area[b-pnsfaftqa9] {
    padding: 0;
}

/* Responsive */
@media (max-width: 768px) {
    .page-title[b-pnsfaftqa9] {
        font-size: 1.25rem;
    }

    .lead-avatar[b-pnsfaftqa9] {
        width: 40px;
        height: 40px;
        font-size: 0.875rem;
    }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .follow-up-card[b-pnsfaftqa9] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .page-title[b-pnsfaftqa9] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .small-text[b-pnsfaftqa9] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .tiny-text[b-pnsfaftqa9] {
    color: var(--text-muted);
}
/* /Pages/Recruiter/LeadPages/LeadImport.razor.rz.scp.css */
/* LeadImport.razor.css
   Dark mode handled automatically via CSS variables from theme-core.css */

.page-title[b-e632gesb1j] {
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.small-text[b-e632gesb1j] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Upload Zone */
.upload-zone[b-e632gesb1j] {
    position: relative;
    border: 2px dashed var(--border-color);
    border-radius: 0.5rem;
    text-align: center;
    transition: all 0.3s ease;
    cursor: pointer;
    background: var(--bg-surface);
}

.upload-zone:hover[b-e632gesb1j] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.upload-input[b-e632gesb1j] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.upload-content[b-e632gesb1j] {
    pointer-events: none;
}

.upload-content.dragging[b-e632gesb1j] {
    transform: scale(1.02);
}

/* Result Stats */
.result-stat[b-e632gesb1j] {
    padding: 1.5rem;
    border-radius: 0.5rem;
    background: var(--bg-surface-tertiary);
}

.result-value[b-e632gesb1j] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--text-primary);
}

.result-label[b-e632gesb1j] {
    font-size: 0.875rem;
    font-weight: 500;
    margin-top: 0.25rem;
}

/* Content Area */
.content-area[b-e632gesb1j] {
    padding: 0;
}
/* /Pages/Recruiter/LeadPages/LeadsDashboard.razor.rz.scp.css */
/* LeadsDashboard.razor.css */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.small-text[b-smj1hmbgiq] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.tiny-text[b-smj1hmbgiq] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Pipeline Styles */
.pipeline-container[b-smj1hmbgiq] {
    /* Padding removed - handled by .content-page global rule */
}

.pipeline-stage[b-smj1hmbgiq] {
    padding: 1rem;
    border-radius: 0.5rem;
    text-align: center;
    cursor: pointer;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
    border: 1px solid var(--border-color);
}

.pipeline-stage:hover[b-smj1hmbgiq] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.pipeline-count[b-smj1hmbgiq] {
    font-size: 1.75rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
}

.pipeline-label[b-smj1hmbgiq] {
    font-size: 0.75rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.pipeline-new[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(59, 130, 246, 0.15) 0%, rgba(37, 99, 235, 0.15) 100%);
    color: var(--theme-info);
}

.pipeline-contacted[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(245, 158, 11, 0.15) 0%, rgba(217, 119, 6, 0.15) 100%);
    color: var(--theme-warning);
}

.pipeline-qualified[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.15) 0%, rgba(5, 150, 105, 0.15) 100%);
    color: var(--theme-success);
}

.pipeline-nurturing[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(168, 85, 247, 0.15) 0%, rgba(139, 92, 246, 0.15) 100%);
    color: var(--theme-purple);
}

.pipeline-ready[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(20, 184, 166, 0.15) 0%, rgba(13, 148, 136, 0.15) 100%);
    color: var(--theme-teal);
}

.pipeline-converted[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(34, 197, 94, 0.15) 0%, rgba(22, 163, 74, 0.15) 100%);
    color: var(--theme-success-emphasis);
}

.pipeline-lost[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(239, 68, 68, 0.15) 0%, rgba(220, 38, 38, 0.15) 100%);
    color: var(--theme-danger);
}

.pipeline-disqualified[b-smj1hmbgiq] {
    background: linear-gradient(135deg, rgba(107, 114, 128, 0.15) 0%, rgba(75, 85, 99, 0.15) 100%);
    color: var(--text-secondary);
}

/* Lead Avatar */
.lead-avatar[b-smj1hmbgiq] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.875rem;
    color: white;
    background: var(--theme-primary);
}

.lead-avatar-sm[b-smj1hmbgiq] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.625rem;
    color: white;
    background: var(--theme-primary);
}

.user-avatar-sm[b-smj1hmbgiq] {
    width: 24px;
    height: 24px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.5rem;
    color: white;
    background: var(--theme-secondary);
}

/* Quality Classes for Avatar */
.quality-hot[b-smj1hmbgiq] {
    background: linear-gradient(135deg, var(--theme-warning-emphasis) 0%, var(--theme-danger) 100%);
    box-shadow: 0 0 8px rgba(255, 87, 34, 0.5);
}

.quality-high[b-smj1hmbgiq] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.quality-medium[b-smj1hmbgiq] {
    background: linear-gradient(135deg, var(--theme-info) 0%, var(--theme-info) 100%);
}

.quality-low[b-smj1hmbgiq] {
    background: linear-gradient(135deg, var(--text-muted) 0%, var(--text-secondary) 100%);
}

.quality-unqualified[b-smj1hmbgiq] {
    background: linear-gradient(135deg, var(--text-muted) 0%, var(--text-muted) 100%);
}

/* Status badge pattern consolidated in app.css (keeping page-specific variants below) */

/* Source Badges */
.source-badge[b-smj1hmbgiq] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-weight: 500;
}

.source-website[b-smj1hmbgiq] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.source-referral[b-smj1hmbgiq] {
    background: rgba(194, 24, 91, 0.1);
    color: var(--theme-purple-emphasis);
}

.source-event[b-smj1hmbgiq] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.source-social[b-smj1hmbgiq] {
    background: rgba(57, 73, 171, 0.1);
    color: var(--theme-indigo-dark);
}

.source-other[b-smj1hmbgiq] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

/* Quality Badges */
.quality-badge[b-smj1hmbgiq] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
}

.quality-badge.quality-hot[b-smj1hmbgiq] {
    background: linear-gradient(135deg, var(--theme-warning-emphasis) 0%, var(--theme-danger) 100%);
    color: white;
}

.quality-badge.quality-high[b-smj1hmbgiq] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.quality-badge.quality-medium[b-smj1hmbgiq] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.quality-badge.quality-low[b-smj1hmbgiq] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.quality-badge.quality-unqualified[b-smj1hmbgiq] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* Follow-up Items */
.follow-up-overdue[b-smj1hmbgiq] {
    background: var(--theme-danger-subtle);
    border-left: 3px solid var(--theme-danger);
}

.follow-up-due[b-smj1hmbgiq] {
    background: var(--theme-warning-subtle);
    border-left: 3px solid var(--theme-warning);
}

/* Filter Panel */
.filter-panel[b-smj1hmbgiq] {
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
}

/* Responsive */
@media (max-width: 768px) {
    .pipeline-count[b-smj1hmbgiq] {
        font-size: 1.25rem;
    }

    .pipeline-label[b-smj1hmbgiq] {
        font-size: 0.625rem;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/Apply.razor.rz.scp.css */
/* =============================================
   APPLY PAGE - Component-Specific Layout
   Header handled by PageLayout. All main styles in app.css.
   ============================================= */

/* Main Content & Sidebar Flow */
.main-content-flow[b-a5mv2dzm4j],
.sidebar-flow[b-a5mv2dzm4j] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}
/* /Pages/Recruiter/MyApplicationsPages/BeforeReadMyHomework.razor.rz.scp.css */
/* Before Read My Homework Page Styles */
/* Orange theme - header handled by PageLayout */
/* Uses Common Components: ContentCard, InfoBanner */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.homework-before-page[b-hqljb4pspz] {
    --accent-color: var(--theme-info);
    --accent-light: var(--theme-cyan-light);
    --accent-dark: var(--theme-info-emphasis);
    --accent-bg: rgba(6, 182, 212, 0.1);
    --accent-border: rgba(6, 182, 212, 0.2);
}

/* Main Content & Sidebar Flow */
.main-content-flow[b-hqljb4pspz],
.sidebar-flow[b-hqljb4pspz] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Duration Badge */
.duration-badge[b-hqljb4pspz] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.875rem;
    background: var(--accent-bg);
    color: var(--accent-dark);
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 600;
}

.duration-badge i[b-hqljb4pspz] {
    font-size: 0.9375rem;
}

/* Instructions Content */
.instructions-content[b-hqljb4pspz] {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--text-secondary);
}

.instructions-content h1[b-hqljb4pspz],
.instructions-content h2[b-hqljb4pspz],
.instructions-content h3[b-hqljb4pspz],
.instructions-content h4[b-hqljb4pspz],
.instructions-content h5[b-hqljb4pspz],
.instructions-content h6[b-hqljb4pspz] {
    color: var(--text-primary);
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
}

.instructions-content h1:first-child[b-hqljb4pspz],
.instructions-content h2:first-child[b-hqljb4pspz],
.instructions-content h3:first-child[b-hqljb4pspz] {
    margin-top: 0;
}

.instructions-content p[b-hqljb4pspz] {
    margin-bottom: 1rem;
}

.instructions-content ul[b-hqljb4pspz],
.instructions-content ol[b-hqljb4pspz] {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

.instructions-content li[b-hqljb4pspz] {
    margin-bottom: 0.5rem;
}

.instructions-content a[b-hqljb4pspz] {
    color: var(--accent-color);
    text-decoration: underline;
}

.instructions-content a:hover[b-hqljb4pspz] {
    color: var(--accent-dark);
}

.instructions-content img[b-hqljb4pspz] {
    max-width: 100%;
    border-radius: 8px;
    margin: 1rem 0;
}

.instructions-content blockquote[b-hqljb4pspz] {
    border-left: 4px solid var(--accent-color);
    padding-left: 1rem;
    margin: 1rem 0;
    color: var(--text-secondary);
    font-style: italic;
}

.instructions-content pre[b-hqljb4pspz] {
    background: var(--bg-surface-tertiary);
    padding: 1rem;
    border-radius: 8px;
    overflow-x: auto;
}

.instructions-content code[b-hqljb4pspz] {
    background: var(--bg-surface-tertiary);
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.875rem;
}

.no-instructions[b-hqljb4pspz] {
    text-align: center;
    padding: 2rem;
    color: var(--text-muted);
}

.no-instructions i[b-hqljb4pspz] {
    font-size: 3rem;
    margin-bottom: 1rem;
    display: block;
}

.no-instructions p[b-hqljb4pspz] {
    margin: 0;
    font-size: 0.9375rem;
}

/* Action Card */
.action-card .card-content[b-hqljb4pspz] {
    padding: 1.25rem 1.5rem;
}

.action-section[b-hqljb4pspz] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.action-info[b-hqljb4pspz] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.action-icon[b-hqljb4pspz] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--accent-bg);
    color: var(--accent-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    flex-shrink: 0;
}

.action-text h4[b-hqljb4pspz] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.action-text p[b-hqljb4pspz] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.action-buttons[b-hqljb4pspz] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.start-btn[b-hqljb4pspz] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.start-btn:hover:not(:disabled)[b-hqljb4pspz] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.4);
}

.start-btn:disabled[b-hqljb4pspz] {
    opacity: 0.6;
    cursor: not-allowed;
}

.back-link-btn[b-hqljb4pspz] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.back-link-btn:hover[b-hqljb4pspz] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* Sidebar Card Customization */
[b-hqljb4pspz] .sidebar-card {
    border-radius: 14px;
}

/* Info Card */
.info-card .card-content[b-hqljb4pspz] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.info-stat[b-hqljb4pspz] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 0.875rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
}

.stat-icon[b-hqljb4pspz] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--accent-bg);
    color: var(--accent-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.stat-icon.deadline[b-hqljb4pspz] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.stat-details[b-hqljb4pspz] {
    display: flex;
    flex-direction: column;
}

.stat-value[b-hqljb4pspz] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.stat-label[b-hqljb4pspz] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

/* Tips List */
.tips-list[b-hqljb4pspz] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.tip-item[b-hqljb4pspz] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

.tip-item i[b-hqljb4pspz] {
    color: var(--theme-success);
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

/* Steps List */
.steps-list[b-hqljb4pspz] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.step-item[b-hqljb4pspz] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
}

.step-number[b-hqljb4pspz] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 700;
    flex-shrink: 0;
}

.step-item.current .step-number[b-hqljb4pspz] {
    background: var(--accent-color);
    color: white;
}

.step-text[b-hqljb4pspz] {
    display: flex;
    flex-direction: column;
}

.step-title[b-hqljb4pspz] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.step-item.current .step-title[b-hqljb4pspz] {
    color: var(--accent-color);
}

.step-desc[b-hqljb4pspz] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

.step-item.current .step-desc[b-hqljb4pspz] {
    color: var(--accent-dark);
    font-weight: 500;
}

/* Actions Card */
.actions-card .card-content[b-hqljb4pspz] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Note: Generic .action-btn styles now centralized in app.css */

/* Page-specific action button customizations */
.action-btn[b-hqljb4pspz] {
    width: 100%; /* Full-width in sidebar */
}

/* Note: Spinner is now centralized in app.css. */

/* Responsive Design */
@media (max-width: 768px) {
    .action-section[b-hqljb4pspz] {
        flex-direction: column;
        text-align: center;
    }

    .action-info[b-hqljb4pspz] {
        flex-direction: column;
    }

    .action-buttons[b-hqljb4pspz] {
        flex-direction: column;
        width: 100%;
    }

    .start-btn[b-hqljb4pspz],
    .back-link-btn[b-hqljb4pspz] {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .content-card .card-header[b-hqljb4pspz] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.75rem;
    }

    .duration-badge[b-hqljb4pspz] {
        align-self: flex-start;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/ConfirmInterviewAppointments.razor.rz.scp.css */
/* Confirm Interview Appointments Page Styles */
/* Purple theme - header handled by PageLayout */
/* Uses Common Components: ContentCard, InfoBanner, EmptyState */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.confirm-interview-page[b-k4hnzr1ex6] {
    --accent-color: var(--theme-purple);
    --accent-light: var(--theme-purple-light);
    --accent-dark: var(--theme-purple-emphasis);
    --accent-bg: rgba(139, 92, 246, 0.1);
    --accent-border: rgba(139, 92, 246, 0.2);
}

/* Main Content & Sidebar Flow */
.main-content-flow[b-k4hnzr1ex6],
.sidebar-flow[b-k4hnzr1ex6] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Slots Count Badge */
.slots-count[b-k4hnzr1ex6] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    background: var(--bg-surface-tertiary);
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
}

/* Appointments List */
.appointments-list[b-k4hnzr1ex6] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.appointment-card[b-k4hnzr1ex6] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.25rem;
    background: var(--bg-surface-tertiary);
    border-radius: 14px;
    border: 1px solid var(--border-color);
    transition: all 0.3s ease;
}

.appointment-card:hover[b-k4hnzr1ex6] {
    border-color: var(--accent-border);
    box-shadow: 0 4px 12px rgba(139, 92, 246, 0.1);
    transform: translateY(-2px);
}

.appointment-date[b-k4hnzr1ex6] {
    flex-shrink: 0;
}

.date-block[b-k4hnzr1ex6] {
    width: 72px;
    padding: 0.75rem;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    border-radius: 12px;
    text-align: center;
    color: white;
}

.date-block .day[b-k4hnzr1ex6] {
    display: block;
    font-size: 1.75rem;
    font-weight: 700;
    line-height: 1;
}

.date-block .month[b-k4hnzr1ex6] {
    display: block;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 0.25rem;
}

.date-block .year[b-k4hnzr1ex6] {
    display: block;
    font-size: 0.6875rem;
    opacity: 0.8;
}

.appointment-details[b-k4hnzr1ex6] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.time-info[b-k4hnzr1ex6] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.time-row[b-k4hnzr1ex6],
.duration-row[b-k4hnzr1ex6] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    color: var(--text-secondary);
}

.time-row i[b-k4hnzr1ex6],
.duration-row i[b-k4hnzr1ex6] {
    color: var(--accent-color);
    font-size: 1rem;
}

.time-range[b-k4hnzr1ex6] {
    font-weight: 600;
}

.duration-row[b-k4hnzr1ex6] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.day-info[b-k4hnzr1ex6] {
    margin-top: 0.25rem;
}

.day-name[b-k4hnzr1ex6] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.appointment-action[b-k4hnzr1ex6] {
    flex-shrink: 0;
}

.confirm-btn[b-k4hnzr1ex6] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--theme-success);
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.confirm-btn:hover:not(:disabled)[b-k4hnzr1ex6] {
    background: var(--theme-success-emphasis);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(16, 185, 129, 0.3);
}

.confirm-btn:disabled[b-k4hnzr1ex6] {
    opacity: 0.6;
    cursor: not-allowed;
}


/* Request Card */
.request-card .card-content[b-k4hnzr1ex6] {
    padding: 1.25rem 1.5rem;
}

.request-section[b-k4hnzr1ex6] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.request-info[b-k4hnzr1ex6] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.request-icon[b-k4hnzr1ex6] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.request-text h4[b-k4hnzr1ex6] {
    margin: 0 0 0.25rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.request-text p[b-k4hnzr1ex6] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.request-btn[b-k4hnzr1ex6] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--bg-surface);
    color: var(--theme-warning);
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.request-btn:hover:not(:disabled)[b-k4hnzr1ex6] {
    background: var(--theme-warning);
    color: white;
    border-color: var(--theme-warning);
}

.request-btn:disabled[b-k4hnzr1ex6] {
    opacity: 0.6;
    cursor: not-allowed;
}

/* Sidebar Card Customization */
[b-k4hnzr1ex6] .sidebar-card {
    border-radius: 14px;
}

/* Tips List */
.tips-list[b-k4hnzr1ex6] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.tip-item[b-k4hnzr1ex6] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

.tip-item i[b-k4hnzr1ex6] {
    color: var(--theme-success);
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

/* Expect List */
.expect-list[b-k4hnzr1ex6] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.expect-item[b-k4hnzr1ex6] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
}

.expect-number[b-k4hnzr1ex6] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--accent-bg);
    color: var(--accent-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 700;
    flex-shrink: 0;
}

.expect-text[b-k4hnzr1ex6] {
    display: flex;
    flex-direction: column;
}

.expect-title[b-k4hnzr1ex6] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.expect-desc[b-k4hnzr1ex6] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

/* Actions Card */
.actions-card .card-content[b-k4hnzr1ex6] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Note: Generic .action-btn styles now centralized in app.css */

/* Page-specific action button customizations */
.action-btn[b-k4hnzr1ex6] {
    width: 100%; /* Full-width in sidebar */
}

.action-btn.secondary[b-k4hnzr1ex6] {
    background: var(--accent-color);
    color: white;
}

.action-btn.secondary:hover[b-k4hnzr1ex6] {
    background: var(--accent-dark);
}

/* Note: Spinner is now centralized in app.css. */

/* Responsive Design */
@media (max-width: 768px) {
    .appointment-card[b-k4hnzr1ex6] {
        flex-direction: column;
        align-items: stretch;
        text-align: center;
    }

    .date-block[b-k4hnzr1ex6] {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.5rem;
        padding: 0.875rem;
    }

    .date-block .day[b-k4hnzr1ex6] {
        font-size: 1.5rem;
    }

    .date-block .month[b-k4hnzr1ex6],
    .date-block .year[b-k4hnzr1ex6] {
        font-size: 0.875rem;
    }

    .appointment-details[b-k4hnzr1ex6] {
        align-items: center;
    }

    .time-row[b-k4hnzr1ex6],
    .duration-row[b-k4hnzr1ex6] {
        justify-content: center;
    }

    .request-section[b-k4hnzr1ex6] {
        flex-direction: column;
        text-align: center;
    }

    .request-info[b-k4hnzr1ex6] {
        flex-direction: column;
    }

    .request-btn[b-k4hnzr1ex6] {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .date-block[b-k4hnzr1ex6] {
        flex-direction: column;
        gap: 0.125rem;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/MyApplicationDetails.razor.rz.scp.css */
/* ========================================
   MyApplicationDetails - Application Journey Page
   Blue theme - header handled by PageLayout
   Uses Common Components: ContentCard, InfoBanner, DocumentLibrary
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

[b-t1kai8lzqt] .application-details-page {
    --accent-color: var(--theme-primary);
    --accent-light: var(--theme-indigo-light);
    --accent-dark: var(--theme-primary-emphasis);
    --accent-bg: var(--theme-primary-subtle);
    --accent-border: var(--theme-primary-border);
    --success-color: var(--theme-success);
    --success-bg: var(--theme-success-subtle);
    --success-border: rgba(16, 185, 129, 0.2);
    --warning-color: var(--theme-warning);
    --warning-bg: var(--theme-warning-subtle);
    --danger-color: var(--theme-danger);
    --danger-bg: var(--theme-danger-subtle);
}

/* ===== HEADER BADGES ===== */
.header-badge[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.875rem;
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 600;
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.header-badge i[b-t1kai8lzqt] {
    font-size: 0.9375rem;
}

/* ===== DRAFT BANNER ===== */
.draft-banner[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.25rem 1.5rem;
    margin-bottom: 1.5rem;
    background: linear-gradient(135deg, var(--warning-bg), rgba(245, 158, 11, 0.08));
    border: 1px solid rgba(245, 158, 11, 0.3);
    border-radius: 14px;
}

.draft-banner-content[b-t1kai8lzqt] {
    flex: 1;
    display: flex;
    align-items: center;
    gap: 1rem;
}

.draft-icon[b-t1kai8lzqt] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-emphasis));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.draft-info h4[b-t1kai8lzqt] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-primary);
}

.draft-info p[b-t1kai8lzqt] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

.draft-continue-btn[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-emphasis));
    color: white;
    border: none;
    border-radius: 10px;
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.3);
}

.draft-continue-btn:hover[b-t1kai8lzqt] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4);
    color: white;
}

/* ===== PROGRESS OVERVIEW ===== */
.progress-overview[b-t1kai8lzqt] {
    margin-bottom: 1.5rem;
}

.progress-card[b-t1kai8lzqt] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 16px;
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06);
}

/* Student Info Section */
.student-info-section[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.student-avatar[b-t1kai8lzqt] {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    font-weight: 700;
    flex-shrink: 0;
    letter-spacing: 0.5px;
}

.student-details[b-t1kai8lzqt] {
    flex: 1;
    min-width: 0;
}

.student-details h2[b-t1kai8lzqt] {
    margin: 0;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.3;
}

.student-meta[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-top: 0.375rem;
    flex-wrap: wrap;
}

.meta-item[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.meta-item i[b-t1kai8lzqt] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.meta-divider[b-t1kai8lzqt] {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: var(--text-muted);
    flex-shrink: 0;
}

/* Progress Section */
.progress-section[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.progress-header[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.progress-label[b-t1kai8lzqt] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.progress-percentage[b-t1kai8lzqt] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--accent-color);
}

.progress-bar[b-t1kai8lzqt] {
    height: 8px;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    overflow: hidden;
}

.progress-fill[b-t1kai8lzqt] {
    height: 100%;
    background: linear-gradient(90deg, var(--accent-color), var(--accent-dark));
    border-radius: 4px;
    transition: width 0.6s cubic-bezier(0.4, 0, 0.2, 1);
    min-width: 2%;
}

.progress-stats[b-t1kai8lzqt] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* ===== CONTENT GRID (Two-column layout) ===== */
.content-grid[b-t1kai8lzqt] {
    display: grid;
    grid-template-columns: 1fr 360px;
    gap: 1.5rem;
    align-items: start;
}

.main-column[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.sidebar-column[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    position: sticky;
    top: 1.5rem;
}

/* Sidebar Card Customization */
[b-t1kai8lzqt] .sidebar-card {
    border-radius: 14px;
}

/* ===== TIMELINE =====
   Wrapper rules (.timeline, .timeline::before, .timeline-item, .timeline-marker,
   .timeline-content) and the pulse-ring keyframes used to be here. They are now
   handled by the shared <StageTimeline> component (renders .fsh-timeline-*).
   ItemTemplate content classes (.timeline-header, .timeline-status, etc.) are
   styled by StageTimeline.razor.css. Stage-specific overrides remain below. */

/* Stage Info */
.stage-info[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
    min-width: 0;
}

.stage-icon[b-t1kai8lzqt] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

/* Stage Icon Color Variants */
.stage-icon.approval[b-t1kai8lzqt] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.stage-icon.verification[b-t1kai8lzqt] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.stage-icon.phonecall[b-t1kai8lzqt] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.stage-icon.homework[b-t1kai8lzqt] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.stage-icon.interview[b-t1kai8lzqt] {
    background: rgba(6, 182, 212, 0.1);
    color: var(--theme-info);
}

.stage-icon.admission[b-t1kai8lzqt] {
    background: rgba(236, 72, 153, 0.1);
    color: var(--theme-purple);
}

.stage-icon.default[b-t1kai8lzqt] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.stage-title[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    min-width: 0;
}

.stage-title h4[b-t1kai8lzqt] {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    line-height: 1.3;
}

/* Stage Status Badge */
.stage-status[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.125rem 0;
}

.stage-status.completed[b-t1kai8lzqt] {
    color: var(--success-color);
}

.stage-status.current[b-t1kai8lzqt] {
    color: var(--accent-color);
}

.stage-status.rejected[b-t1kai8lzqt] {
    color: var(--danger-color);
}

.stage-status.rejected-conditional[b-t1kai8lzqt] {
    color: var(--warning-color);
}

.stage-status.rejected-waitlisted[b-t1kai8lzqt] {
    color: var(--theme-purple);
}

.stage-status.pending[b-t1kai8lzqt] {
    color: var(--text-muted);
}

.stage-status i[b-t1kai8lzqt] {
    font-size: 0.8125rem;
}

.stage-description[b-t1kai8lzqt] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* ===== FEE INDICATOR ===== */
.fee-indicator[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    flex-shrink: 0;
    white-space: nowrap;
}

.fee-indicator.paid[b-t1kai8lzqt] {
    background: var(--success-bg);
    color: var(--success-color);
}

.fee-indicator.pending[b-t1kai8lzqt] {
    background: var(--warning-bg);
    color: var(--warning-color);
}

.fee-indicator i[b-t1kai8lzqt] {
    font-size: 0.8125rem;
}

/* ===== FEE ALERT ===== */
.fee-alert[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--warning-bg), rgba(245, 158, 11, 0.05));
    border: 1px solid rgba(245, 158, 11, 0.25);
    border-radius: 12px;
}

.fee-alert-content[b-t1kai8lzqt] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    flex: 1;
}

.fee-alert-content > i[b-t1kai8lzqt] {
    color: var(--warning-color);
    font-size: 1.25rem;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.fee-alert-text[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.fee-alert-text strong[b-t1kai8lzqt] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

.fee-alert-text span[b-t1kai8lzqt] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.fee-pay-btn[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-emphasis));
    color: white;
    border: none;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.fee-pay-btn:hover[b-t1kai8lzqt] {
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.3);
    color: white;
}

/* ===== REJECTION INFO ===== */
.rejection-info[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border-radius: 10px;
    font-size: 0.8125rem;
    font-weight: 500;
}

.rejection-info i[b-t1kai8lzqt] {
    font-size: 1rem;
    flex-shrink: 0;
}

.rejection-info.hard[b-t1kai8lzqt] {
    background: var(--danger-bg);
    color: var(--danger-color);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.rejection-info.conditional[b-t1kai8lzqt] {
    background: var(--warning-bg);
    color: var(--warning-color);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.rejection-info.waitlisted[b-t1kai8lzqt] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
    border: 1px solid rgba(139, 92, 246, 0.2);
}

/* Rejection Details (collapsible) */
.rejection-details[b-t1kai8lzqt] {
    border-radius: 10px;
    font-size: 0.8125rem;
    overflow: hidden;
}

.rejection-details summary[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    cursor: pointer;
    font-weight: 500;
    user-select: none;
    list-style: none;
}

.rejection-details summary[b-t1kai8lzqt]::-webkit-details-marker {
    display: none;
}

.rejection-details p[b-t1kai8lzqt] {
    margin: 0;
    padding: 0 1rem 0.75rem;
    line-height: 1.6;
    color: var(--text-secondary);
}

.rejection-details.hard[b-t1kai8lzqt] {
    background: var(--danger-bg);
    color: var(--danger-color);
}

.rejection-details.hard summary[b-t1kai8lzqt] {
    color: var(--danger-color);
}

.rejection-details.conditional[b-t1kai8lzqt] {
    background: var(--warning-bg);
    color: var(--warning-color);
}

.rejection-details.conditional summary[b-t1kai8lzqt] {
    color: var(--warning-color);
}

.rejection-details.waitlisted[b-t1kai8lzqt] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.rejection-details.waitlisted summary[b-t1kai8lzqt] {
    color: var(--theme-purple);
}

/* ===== ACTION CARDS (homework, interview, appeal) ===== */
.action-card[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border-radius: 12px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    color: inherit;
    width: 100%;
}

.action-card:hover[b-t1kai8lzqt] {
    transform: translateX(4px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.action-card .action-icon[b-t1kai8lzqt] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.action-card .action-content[b-t1kai8lzqt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.action-card .action-title[b-t1kai8lzqt] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.action-card .action-subtitle[b-t1kai8lzqt] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.action-card > i:last-child[b-t1kai8lzqt] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

/* Action Card Variants */
.action-card.homework[b-t1kai8lzqt] {
    border-color: rgba(245, 158, 11, 0.3);
    background: rgba(245, 158, 11, 0.04);
}

.action-card.homework:hover[b-t1kai8lzqt] {
    border-color: rgba(245, 158, 11, 0.5);
    background: rgba(245, 158, 11, 0.08);
}

.action-card.homework .action-icon[b-t1kai8lzqt] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.action-card.interview[b-t1kai8lzqt] {
    border-color: rgba(6, 182, 212, 0.3);
    background: rgba(6, 182, 212, 0.04);
}

.action-card.interview:hover[b-t1kai8lzqt] {
    border-color: rgba(6, 182, 212, 0.5);
    background: rgba(6, 182, 212, 0.08);
}

.action-card.interview .action-icon[b-t1kai8lzqt] {
    background: rgba(6, 182, 212, 0.1);
    color: var(--theme-info);
}

.action-card.success[b-t1kai8lzqt] {
    border-color: var(--success-border);
    background: rgba(16, 185, 129, 0.04);
}

.action-card.success:hover[b-t1kai8lzqt] {
    border-color: rgba(16, 185, 129, 0.5);
    background: rgba(16, 185, 129, 0.08);
}

.action-card.success .action-icon[b-t1kai8lzqt] {
    background: var(--success-bg);
    color: var(--success-color);
}

.action-card.appeal[b-t1kai8lzqt] {
    border-color: rgba(139, 92, 246, 0.3);
    background: rgba(139, 92, 246, 0.04);
}

.action-card.appeal:hover[b-t1kai8lzqt] {
    border-color: rgba(139, 92, 246, 0.5);
    background: rgba(139, 92, 246, 0.08);
}

.action-card.appeal .action-icon[b-t1kai8lzqt] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

/* Stage Alert Banner (compact InfoBanner within timeline) */
[b-t1kai8lzqt] .stage-alert-banner {
    border-radius: 10px;
}

[b-t1kai8lzqt] .stage-alert-banner.muted {
    opacity: 0.75;
}

/* ===== INTERVIEW CONFIRMED ===== */
.interview-confirmed[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.08), rgba(6, 182, 212, 0.04));
    border: 1px solid rgba(6, 182, 212, 0.25);
    border-radius: 12px;
}

.confirmed-icon[b-t1kai8lzqt] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(6, 182, 212, 0.1);
    color: var(--theme-info);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.confirmed-details[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.confirmed-label[b-t1kai8lzqt] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 500;
}

.confirmed-date[b-t1kai8lzqt] {
    font-size: 0.9375rem;
    font-weight: 700;
    color: var(--text-primary);
}

.confirmed-duration[b-t1kai8lzqt] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* ===== ADMISSION SUCCESS ===== */
.admission-success[b-t1kai8lzqt] {
    padding: 1.25rem;
    background: linear-gradient(135deg, var(--success-bg), rgba(16, 185, 129, 0.05));
    border: 1px solid var(--success-border);
    border-radius: 12px;
}

.admission-header[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.5rem;
}

.admission-header i[b-t1kai8lzqt] {
    font-size: 1.5rem;
    color: var(--theme-warning);
}

.admission-header h5[b-t1kai8lzqt] {
    margin: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--success-color);
}

.admission-success p[b-t1kai8lzqt] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* ===== SIDEBAR: INFO LIST ===== */
.info-list[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.info-item[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

.info-item:last-child[b-t1kai8lzqt] {
    padding-bottom: 0;
    border-bottom: none;
}

.info-label[b-t1kai8lzqt] {
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-muted);
}

.info-value[b-t1kai8lzqt] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.info-value.status[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    width: fit-content;
}

.info-value.status.active[b-t1kai8lzqt] {
    color: var(--accent-color);
}

.info-value.status.completed[b-t1kai8lzqt] {
    color: var(--success-color);
}

.info-value.status.cancelled[b-t1kai8lzqt] {
    color: var(--danger-color);
}

/* ===== SIDEBAR: STAGE SUMMARY ===== */
.stage-summary[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.summary-item[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 0.75rem;
    border-radius: 10px;
    background: var(--bg-surface-tertiary);
    transition: background 0.2s ease;
}

.summary-icon[b-t1kai8lzqt] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.9375rem;
    flex-shrink: 0;
    color: var(--text-muted);
}

.summary-item.completed .summary-icon[b-t1kai8lzqt] {
    background: var(--success-bg);
    color: var(--success-color);
}

.summary-item.current .summary-icon[b-t1kai8lzqt] {
    background: var(--accent-bg);
    color: var(--accent-color);
}

.summary-item.rejected .summary-icon[b-t1kai8lzqt] {
    background: var(--danger-bg);
    color: var(--danger-color);
}

.summary-item.rejected-conditional .summary-icon[b-t1kai8lzqt] {
    background: var(--warning-bg);
    color: var(--warning-color);
}

.summary-item.rejected-waitlisted .summary-icon[b-t1kai8lzqt] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.summary-name[b-t1kai8lzqt] {
    flex: 1;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.summary-status[b-t1kai8lzqt] {
    flex-shrink: 0;
    font-size: 1rem;
    display: flex;
    align-items: center;
}

.summary-item.completed .summary-status[b-t1kai8lzqt] {
    color: var(--success-color);
}

.summary-item.current .summary-status[b-t1kai8lzqt] {
    color: var(--accent-color);
    animation: spin-b-t1kai8lzqt 2s linear infinite;
}

.summary-item.rejected .summary-status[b-t1kai8lzqt] {
    color: var(--danger-color);
}

.summary-item.rejected-conditional .summary-status[b-t1kai8lzqt] {
    color: var(--warning-color);
}

.summary-item.rejected-waitlisted .summary-status[b-t1kai8lzqt] {
    color: var(--theme-purple);
}

.summary-item.pending .summary-status[b-t1kai8lzqt] {
    color: var(--text-muted);
}

@keyframes spin-b-t1kai8lzqt {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* ===== SIDEBAR: FEE SUMMARY ===== */
.fee-summary[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.fee-row[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0;
}

.fee-label[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.fee-label i[b-t1kai8lzqt] {
    font-size: 0.875rem;
}

.fee-row.paid .fee-label i[b-t1kai8lzqt] {
    color: var(--success-color);
}

.fee-row.pending .fee-label i[b-t1kai8lzqt] {
    color: var(--warning-color);
}

.fee-value[b-t1kai8lzqt] {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
}

.fee-row.total[b-t1kai8lzqt] {
    padding-bottom: 0.75rem;
    border-bottom: 1px solid var(--border-color);
}

.fee-row.total .fee-label[b-t1kai8lzqt] {
    font-weight: 600;
    color: var(--text-primary);
}

.fee-row.total .fee-value[b-t1kai8lzqt] {
    font-size: 0.9375rem;
}

.fee-row.paid .fee-value[b-t1kai8lzqt] {
    color: var(--success-color);
}

.fee-row.pending .fee-value[b-t1kai8lzqt] {
    color: var(--warning-color);
}

.fee-divider[b-t1kai8lzqt] {
    height: 1px;
    background: var(--border-color);
    margin: 0.25rem 0;
}

.view-invoices-btn[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--accent-color);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    margin-top: 0.25rem;
}

.view-invoices-btn:hover[b-t1kai8lzqt] {
    background: var(--accent-bg);
    border-color: var(--accent-border);
    color: var(--accent-dark);
}

.view-invoices-btn span[b-t1kai8lzqt] {
    flex: 1;
}

.view-invoices-btn i:last-child[b-t1kai8lzqt] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

/* ===== SIDEBAR: QUICK LINKS ===== */
.quick-links-list[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.quick-link-item[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    border-radius: 10px;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
    border: none;
    background: none;
}

.quick-link-item i[b-t1kai8lzqt] {
    font-size: 1.125rem;
    color: var(--text-muted);
    flex-shrink: 0;
    transition: color 0.2s ease;
}

.quick-link-item:hover[b-t1kai8lzqt] {
    background: var(--bg-surface-tertiary);
    color: var(--accent-color);
}

.quick-link-item:hover i[b-t1kai8lzqt] {
    color: var(--accent-color);
}

.quick-link-item.danger[b-t1kai8lzqt] {
    color: var(--text-secondary);
}

.quick-link-item.danger i[b-t1kai8lzqt] {
    color: var(--text-muted);
}

.quick-link-item.danger:hover[b-t1kai8lzqt] {
    background: var(--danger-bg);
    color: var(--danger-color);
}

.quick-link-item.danger:hover i[b-t1kai8lzqt] {
    color: var(--danger-color);
}

/* ===== APPEAL MODAL ===== */
.appeal-modal-content[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.appeal-stage-info[b-t1kai8lzqt] {
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
    padding: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.appeal-stage-info .info-row[b-t1kai8lzqt] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
}

.appeal-stage-info .info-label[b-t1kai8lzqt] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}

.appeal-stage-info .info-value[b-t1kai8lzqt] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    text-align: right;
}

.appeal-stage-info .info-value.hard[b-t1kai8lzqt] {
    color: var(--danger-color);
}

.appeal-stage-info .info-value.conditional[b-t1kai8lzqt] {
    color: var(--warning-color);
}

.appeal-stage-info .info-value.waitlisted[b-t1kai8lzqt] {
    color: var(--theme-purple);
}

/* ===== RESPONSIVE DESIGN ===== */
@media (max-width: 1200px) {
    .content-grid[b-t1kai8lzqt] {
        grid-template-columns: 1fr 320px;
    }
}

@media (max-width: 1024px) {
    .content-grid[b-t1kai8lzqt] {
        grid-template-columns: 1fr;
    }

    .sidebar-column[b-t1kai8lzqt] {
        position: static;
    }
}

@media (max-width: 768px) {
    .progress-card[b-t1kai8lzqt] {
        padding: 1.25rem;
    }

    .draft-banner[b-t1kai8lzqt] {
        flex-direction: column;
        text-align: center;
    }

    .draft-banner-content[b-t1kai8lzqt] {
        flex-direction: column;
    }

    .draft-continue-btn[b-t1kai8lzqt] {
        width: 100%;
        justify-content: center;
    }

    [b-t1kai8lzqt] .timeline-header {
        flex-direction: column;
        gap: 0.5rem;
    }

    .fee-alert[b-t1kai8lzqt] {
        flex-direction: column;
    }

    .fee-pay-btn[b-t1kai8lzqt] {
        width: 100%;
        justify-content: center;
    }

    .interview-confirmed[b-t1kai8lzqt] {
        flex-direction: column;
        text-align: center;
    }

    .action-card[b-t1kai8lzqt] {
        padding: 0.875rem 1rem;
    }
}

@media (max-width: 480px) {
    .student-info-section[b-t1kai8lzqt] {
        flex-direction: column;
        text-align: center;
    }

    .student-meta[b-t1kai8lzqt] {
        justify-content: center;
    }

    .stage-icon[b-t1kai8lzqt] {
        width: 32px;
        height: 32px;
        font-size: 0.9375rem;
    }
}

/* ========================================
   Withdraw Application Dialog
   ======================================== */

[b-t1kai8lzqt] .withdraw-dialog-content {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

[b-t1kai8lzqt] .withdraw-info {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 1rem;
    background: rgba(234, 179, 8, 0.1);
    border: 1px solid rgba(234, 179, 8, 0.3);
    border-radius: 10px;
    color: var(--theme-warning-text);
}

[b-t1kai8lzqt] .withdraw-info i {
    font-size: 1.5rem;
    flex-shrink: 0;
    color: var(--theme-warning-emphasis);
}

[b-t1kai8lzqt] .withdraw-info p {
    margin: 0 0 0.5rem 0;
    font-size: 0.9375rem;
    line-height: 1.5;
}

[b-t1kai8lzqt] .withdraw-info p:last-child {
    margin-bottom: 0;
}

[b-t1kai8lzqt] .withdraw-form-group {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

[b-t1kai8lzqt] .withdraw-form-group label {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

[b-t1kai8lzqt] .withdraw-form-select,
[b-t1kai8lzqt] .withdraw-form-textarea {
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.9375rem;
    background: var(--bg-surface);
    color: var(--text-primary);
    transition: border-color 0.2s, box-shadow 0.2s;
}

[b-t1kai8lzqt] .withdraw-form-select:focus,
[b-t1kai8lzqt] .withdraw-form-textarea:focus {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px rgba(99, 102, 241, 0.15);
}

[b-t1kai8lzqt] .withdraw-form-textarea {
    resize: vertical;
    min-height: 60px;
    font-family: inherit;
}

[b-t1kai8lzqt] .withdraw-form-hint {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-style: italic;
}

/* ===== ADMITTED LAYOUT ===== */
.congrats-banner[b-t1kai8lzqt] {
    background: linear-gradient(135deg, var(--success-bg) 0%, rgba(16, 185, 129, 0.15) 100%);
    border: 1px solid var(--success-border, rgba(16, 185, 129, 0.3));
    border-radius: 16px;
    padding: 1.5rem;
    margin-bottom: 1.5rem;
}

.congrats-content[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
}

.congrats-icon[b-t1kai8lzqt] {
    width: 56px;
    height: 56px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--success-color), var(--theme-success-emphasis));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
    flex-shrink: 0;
}

.congrats-text h3[b-t1kai8lzqt] {
    margin: 0 0 0.375rem;
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--text-primary);
}

.congrats-text p[b-t1kai8lzqt] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.6;
}

.start-date-pill[b-t1kai8lzqt] {
    background: rgba(16, 185, 129, 0.15);
    padding: 0.125rem 0.5rem;
    border-radius: 6px;
    color: var(--success-color);
}

.program-start-highlight[b-t1kai8lzqt] {
    color: var(--success-color) !important;
    font-weight: 600;
}

.program-start-highlight i[b-t1kai8lzqt] {
    color: var(--success-color) !important;
}

.admitted-badge[b-t1kai8lzqt] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: var(--success-bg);
    color: var(--success-color);
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
    flex-shrink: 0;
}

.admitted-badge i[b-t1kai8lzqt] {
    font-size: 1.125rem;
}

.admitted-grid[b-t1kai8lzqt] {
    display: grid;
    grid-template-columns: 1fr 380px;
    gap: 1.5rem;
    align-items: start;
}

.admitted-main[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.admitted-sidebar[b-t1kai8lzqt] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    position: sticky;
    top: 1rem;
}

.journey-toggle-btn[b-t1kai8lzqt] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.875rem;
    background: transparent;
    border: 2px dashed var(--border-color);
    border-radius: 12px;
    color: var(--text-muted);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.journey-toggle-btn:hover[b-t1kai8lzqt] {
    border-color: var(--accent-color);
    color: var(--accent-color);
    background: var(--bg-surface-secondary);
}

@media (max-width: 968px) {
    .admitted-grid[b-t1kai8lzqt] {
        grid-template-columns: 1fr;
    }

    .admitted-sidebar[b-t1kai8lzqt] {
        position: static;
    }
}

@media (max-width: 768px) {
    .congrats-content[b-t1kai8lzqt] {
        flex-direction: column;
        text-align: center;
    }
}

/* ============ Dark Mode ============
   Banners and gradient hero panels (.draft-banner, .congrats-banner,
   .fee-pay-btn) are intentionally left with their saturated brand
   gradients. This block adapts cards, timeline panels, info sections,
   and side-bar quick-link surfaces. */

[data-bs-theme="dark"] .progress-card[b-t1kai8lzqt],
[data-bs-theme="dark"] .student-info-section[b-t1kai8lzqt],
[data-bs-theme="dark"] .action-card[b-t1kai8lzqt],
[data-bs-theme="dark"] .stage-summary[b-t1kai8lzqt],
[data-bs-theme="dark"] .summary-item[b-t1kai8lzqt],
[data-bs-theme="dark"] .fee-summary[b-t1kai8lzqt],
[data-bs-theme="dark"] .quick-links-list[b-t1kai8lzqt],
[data-bs-theme="dark"] .quick-link-item[b-t1kai8lzqt],
[data-bs-theme="dark"] .admitted-main[b-t1kai8lzqt],
[data-bs-theme="dark"] .admitted-sidebar[b-t1kai8lzqt],
[data-bs-theme="dark"] .appeal-modal-content[b-t1kai8lzqt] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .progress-label[b-t1kai8lzqt],
[data-bs-theme="dark"] .progress-percentage[b-t1kai8lzqt],
[data-bs-theme="dark"] .stage-description[b-t1kai8lzqt],
[data-bs-theme="dark"] .info-label[b-t1kai8lzqt],
[data-bs-theme="dark"] .fee-label[b-t1kai8lzqt],
[data-bs-theme="dark"] .summary-status[b-t1kai8lzqt],
[data-bs-theme="dark"] .confirmed-label[b-t1kai8lzqt],
[data-bs-theme="dark"] .student-meta[b-t1kai8lzqt],
[data-bs-theme="dark"] .meta-item[b-t1kai8lzqt] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .info-value[b-t1kai8lzqt],
[data-bs-theme="dark"] .fee-value[b-t1kai8lzqt],
[data-bs-theme="dark"] .summary-name[b-t1kai8lzqt],
[data-bs-theme="dark"] .stage-title[b-t1kai8lzqt],
[data-bs-theme="dark"] .confirmed-date[b-t1kai8lzqt] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .progress-bar[b-t1kai8lzqt] {
    background: var(--bg-surface-alt);
}

[data-bs-theme="dark"] .quick-link-item:hover[b-t1kai8lzqt],
[data-bs-theme="dark"] .action-card:hover[b-t1kai8lzqt] {
    background: var(--bg-surface-alt);
}

[data-bs-theme="dark"] .meta-divider[b-t1kai8lzqt] {
    background: var(--border-color);
}

[data-bs-theme="dark"][b-t1kai8lzqt]  .withdraw-info {
    background: rgba(234, 179, 8, 0.12);
    border-color: rgba(234, 179, 8, 0.35);
    color: var(--theme-warning-text);
}

[data-bs-theme="dark"][b-t1kai8lzqt]  .withdraw-info i {
    color: var(--theme-warning);
}
/* /Pages/Recruiter/MyApplicationsPages/MyApplicationsList.razor.rz.scp.css */
/* My Applications List Page - Component-Specific Styles */

.my-applications-page[b-a1c8oezzca] {
    --accent-color: var(--theme-primary);
    --accent-light: var(--theme-indigo-light);
    --accent-dark: var(--theme-primary-emphasis);
    --accent-bg: var(--theme-primary-subtle);
    --accent-border: var(--theme-primary-border);
}

.content-area[b-a1c8oezzca] {
    position: relative;
    min-height: 400px;
}

/* Stats Overview Section */
.stats-overview[b-a1c8oezzca] {
    margin-bottom: 1.5rem;
}

/* New Application Button */
.new-application-btn[b-a1c8oezzca] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    background: linear-gradient(135deg, var(--accent-color) 0%, var(--accent-dark) 100%);
    color: white;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(26, 179, 148, 0.25);
}

.new-application-btn:hover[b-a1c8oezzca] {
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(26, 179, 148, 0.35);
    color: white;
}

.new-application-btn i[b-a1c8oezzca] {
    font-size: 1rem;
}

/* Application Tabs - Domain Specific */
.application-tabs[b-a1c8oezzca] {
    display: flex;
    gap: 0.25rem;
    margin-bottom: 1.5rem;
    border-bottom: 1px solid var(--border-color);
    padding-bottom: 0;
}

.tab-btn[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: transparent;
    border: none;
    border-radius: 8px 8px 0 0;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
    position: relative;
}

.tab-btn:hover[b-a1c8oezzca] {
    background: var(--accent-bg);
    color: var(--accent-color);
}

.tab-btn.active[b-a1c8oezzca] {
    background: var(--accent-bg);
    color: var(--accent-color);
}

.tab-btn.active[b-a1c8oezzca]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--accent-color);
}

.tab-btn i[b-a1c8oezzca] {
    font-size: 1rem;
}

.tab-count[b-a1c8oezzca] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 0.375rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    font-size: 0.75rem;
    font-weight: 600;
}

.tab-btn.active .tab-count[b-a1c8oezzca] {
    background: var(--accent-color);
    color: white;
}

/* Search Section */
.search-section[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.25rem;
}

.search-box[b-a1c8oezzca] {
    position: relative;
    display: flex;
    align-items: center;
    flex: 0 0 auto;
}

.search-box i[b-a1c8oezzca] {
    position: absolute;
    left: 0.875rem;
    color: var(--text-muted);
    font-size: 1rem;
    pointer-events: none;
}

.search-box input[b-a1c8oezzca] {
    width: 280px;
    padding: 0.5rem 2.25rem 0.5rem 2.5rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.875rem;
    background: var(--bg-surface);
    color: var(--text-primary);
    transition: all 0.2s ease;
}

.search-box input:focus[b-a1c8oezzca] {
    outline: none;
    border-color: var(--accent-color);
    box-shadow: 0 0 0 3px var(--accent-bg);
}

.search-box input[b-a1c8oezzca]::placeholder {
    color: var(--text-muted);
}

.search-box .clear-btn[b-a1c8oezzca] {
    position: absolute;
    right: 0.5rem;
    background: none;
    border: none;
    padding: 0.25rem;
    cursor: pointer;
    color: var(--text-muted);
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.search-box .clear-btn:hover[b-a1c8oezzca] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.results-count[b-a1c8oezzca] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* Applications Grid Layout */
.applications-grid[b-a1c8oezzca] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
}

/* Application Card - Domain Specific Structure */
.application-card[b-a1c8oezzca] {
    background: var(--bg-surface);
    border-radius: 16px;
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s ease;
}

.application-card:hover[b-a1c8oezzca] {
    border-color: var(--accent-border);
    box-shadow: var(--shadow-md);
    transform: translateY(-4px);
}

/* Card header pattern consolidated in app.css */
.application-card .card-header[b-a1c8oezzca] {
    align-items: flex-start;
    padding: 1.25rem 1.5rem; /* Page-specific override */
    background: var(--bg-surface-secondary); /* Page-specific override */
}

.school-info[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.school-logo[b-a1c8oezzca] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    object-fit: cover;
}

.school-logo-placeholder[b-a1c8oezzca] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    background: var(--accent-bg);
    display: flex;
    align-items: center;
    justify-content: center;
}

.school-logo-placeholder i[b-a1c8oezzca] {
    font-size: 1.5rem;
    color: var(--accent-color);
}

.school-details h3[b-a1c8oezzca] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.company-name[b-a1c8oezzca] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* Student Section */
.student-section[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    padding: 1rem 1.5rem;
    background: linear-gradient(135deg, var(--accent-bg), var(--theme-primary-subtle));
}

.student-avatar[b-a1c8oezzca] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9375rem;
    letter-spacing: 0.5px;
}

.student-info[b-a1c8oezzca] {
    display: flex;
    flex-direction: column;
}

.student-name[b-a1c8oezzca] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.student-index[b-a1c8oezzca] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

/* Details Grid */
.details-grid[b-a1c8oezzca] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
    padding: 1rem 1.5rem;
}

.detail-item[b-a1c8oezzca] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
}

.detail-item > i[b-a1c8oezzca] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    background: var(--bg-surface-tertiary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
    font-size: 1rem;
    flex-shrink: 0;
}

.detail-content[b-a1c8oezzca] {
    display: flex;
    flex-direction: column;
}

.detail-label[b-a1c8oezzca] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.detail-value[b-a1c8oezzca] {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
}

/* Stages Section */
.stages-section[b-a1c8oezzca] {
    padding: 1rem 1.5rem;
    border-top: 1px solid var(--border-color);
}

.stages-header[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.625rem;
}

.stages-label[b-a1c8oezzca] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.stages-count[b-a1c8oezzca] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.stages-progress[b-a1c8oezzca] {
    margin-bottom: 0.75rem;
}

.progress-bar[b-a1c8oezzca] {
    height: 6px;
    background: var(--bg-surface-secondary);
    border-radius: 3px;
    overflow: hidden;
}

.progress-fill[b-a1c8oezzca] {
    height: 100%;
    background: linear-gradient(90deg, var(--accent-color), var(--accent-light));
    border-radius: 3px;
    transition: width 0.3s ease;
}

.stages-dots[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.stage-dot[b-a1c8oezzca] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    transition: all 0.2s ease;
}

.stage-dot.completed[b-a1c8oezzca] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.stage-dot.pending[b-a1c8oezzca] {
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
}

/* Status Badge Variants */
.status-badge[b-a1c8oezzca] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.status-badge.draft[b-a1c8oezzca] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.status-badge.pending[b-a1c8oezzca] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.status-badge.approved[b-a1c8oezzca] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-badge.rejected[b-a1c8oezzca] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.status-badge.default[b-a1c8oezzca] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.status-badge i[b-a1c8oezzca] {
    font-size: 0.875rem;
}

/* Card Footer */
/* Card footer pattern consolidated in app.css */
.application-card .card-footer[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-top: 1px solid var(--border-color);
}

.applied-date[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.applied-date i[b-a1c8oezzca] {
    color: var(--text-muted);
    font-size: 0.9375rem;
}

/* Card Actions */
.card-actions[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.card-actions .statement-link[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
    transition: all 0.2s ease;
}

.card-actions .statement-link:hover[b-a1c8oezzca] {
    background: var(--accent-color);
    border-color: var(--accent-color);
    color: white;
}

/* View Details Link */
.view-details[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--accent-color);
    cursor: pointer;
    transition: all 0.2s ease;
}

.view-details:hover[b-a1c8oezzca] {
    gap: 0.5rem;
}

.view-details i[b-a1c8oezzca] {
    font-size: 0.9375rem;
    transition: transform 0.2s ease;
}

.view-details:hover i[b-a1c8oezzca] {
    transform: translateX(2px);
}

.view-details.continue[b-a1c8oezzca] {
    color: var(--theme-warning);
}

/* Expiry Info */
.expiry-info[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
    padding: 0.25rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
}

.expiry-info.warning[b-a1c8oezzca] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.expiry-info i[b-a1c8oezzca] {
    font-size: 0.875rem;
}

/* Responsive Design */
@media (max-width: 768px) {
    .applications-grid[b-a1c8oezzca] {
        grid-template-columns: 1fr;
    }

    .details-grid[b-a1c8oezzca] {
        grid-template-columns: 1fr;
    }

    .search-section[b-a1c8oezzca] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.75rem;
    }

    .search-box[b-a1c8oezzca] {
        width: 100%;
    }

    .search-box input[b-a1c8oezzca] {
        width: 100%;
    }

    .application-tabs[b-a1c8oezzca] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    .tab-btn[b-a1c8oezzca] {
        padding: 0.5rem 0.75rem;
        font-size: 0.8125rem;
        white-space: nowrap;
    }
}

@media (max-width: 480px) {
    .application-card .card-header[b-a1c8oezzca] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .application-card .card-footer[b-a1c8oezzca] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: flex-start;
    }

    .view-details[b-a1c8oezzca] {
        width: 100%;
        justify-content: center;
        padding: 0.5rem;
        background: var(--accent-bg);
        border-radius: 6px;
    }
}

/* Payment Alert Banner - Domain Specific */
.payment-alert-banner[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.5rem;
    background: linear-gradient(135deg, var(--theme-danger-subtle) 0%, var(--theme-danger-subtle) 100%);
    border: 1px solid var(--theme-danger-border);
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

.payment-alert-banner .alert-icon[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--theme-danger);
    color: white;
    flex-shrink: 0;
}

.payment-alert-banner .alert-icon i[b-a1c8oezzca] {
    font-size: 1.5rem;
}

.payment-alert-banner .alert-content[b-a1c8oezzca] {
    flex: 1;
}

.payment-alert-banner .alert-content strong[b-a1c8oezzca] {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-danger-emphasis);
    margin-bottom: 0.25rem;
}

.payment-alert-banner .alert-content p[b-a1c8oezzca] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--theme-danger-emphasis);
    line-height: 1.5;
}

.payment-alert-banner .alert-content p strong[b-a1c8oezzca] {
    display: inline;
    color: var(--theme-danger);
    font-size: inherit;
    margin: 0;
}

/* Card Payment Alert - Domain Specific */
.card-payment-alert[b-a1c8oezzca] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    margin: 0 1rem 0 1rem;
    background: linear-gradient(135deg, var(--theme-danger-subtle) 0%, var(--theme-danger-subtle) 100%);
    border: 1px solid var(--theme-danger-border);
    border-radius: 10px;
    font-size: 0.8125rem;
}

.card-payment-alert i[b-a1c8oezzca] {
    color: var(--theme-danger);
    font-size: 1.125rem;
    flex-shrink: 0;
}

.card-payment-alert span[b-a1c8oezzca] {
    color: var(--theme-danger-emphasis);
    font-weight: 600;
    flex: 1;
}

.card-payment-alert .pay-now-link[b-a1c8oezzca] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    background: var(--theme-danger);
    color: white;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.card-payment-alert .pay-now-link:hover[b-a1c8oezzca] {
    background: var(--theme-danger-emphasis);
    transform: translateX(2px);
}

/* Alert Action Buttons */
.alert-action[b-a1c8oezzca] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--theme-danger-border);
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--theme-danger);
    text-decoration: none;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.alert-action:hover[b-a1c8oezzca] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: white;
}

.alert-action.pay-now[b-a1c8oezzca] {
    background: var(--theme-danger);
    color: white;
}

.alert-action.pay-now:hover[b-a1c8oezzca] {
    background: var(--theme-danger-emphasis);
}

.application-card:has(.card-payment-alert)[b-a1c8oezzca] {
    border-color: var(--theme-danger-border);
    box-shadow: 0 0 0 2px var(--theme-danger-subtle);
}

.application-card:has(.card-payment-alert):hover[b-a1c8oezzca] {
    border-color: rgba(220, 38, 38, 0.5);
}

/* Payment Alert Responsive */
@media (max-width: 768px) {
    .payment-alert-banner[b-a1c8oezzca] {
        flex-direction: column;
        text-align: center;
        gap: 0.75rem;
        padding: 1rem;
    }

    .card-payment-alert[b-a1c8oezzca] {
        flex-direction: column;
        text-align: center;
        gap: 0.5rem;
    }
}

/* =============================================
   DARK MODE SUPPORT
   ============================================= */

:global([data-bs-theme="dark"]) .application-card[b-a1c8oezzca] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}

:global([data-bs-theme="dark"]) .application-card .card-header[b-a1c8oezzca] {
    background: var(--bg-surface-tertiary);
}

:global([data-bs-theme="dark"]) .application-card .card-footer[b-a1c8oezzca] {
    background: var(--bg-surface-tertiary);
}

:global([data-bs-theme="dark"]) .search-box input[b-a1c8oezzca] {
    background: var(--bg-surface);
    border-color: var(--border-color);
    color: var(--text-primary);
}

:global([data-bs-theme="dark"]) .search-box input:focus[b-a1c8oezzca] {
    border-color: var(--accent-color);
    box-shadow: 0 0 0 3px rgba(26, 179, 148, 0.15);
}

:global([data-bs-theme="dark"]) .tab-btn[b-a1c8oezzca] {
    color: var(--text-secondary);
}

:global([data-bs-theme="dark"]) .tab-btn:hover[b-a1c8oezzca],
:global([data-bs-theme="dark"]) .tab-btn.active[b-a1c8oezzca] {
    background: rgba(26, 179, 148, 0.15);
    color: var(--theme-primary);
}

:global([data-bs-theme="dark"]) .status-badge.draft[b-a1c8oezzca] {
    background: rgba(248, 172, 89, 0.2);
    color: var(--theme-warning);
}

:global([data-bs-theme="dark"]) .status-badge.pending[b-a1c8oezzca] {
    background: rgba(35, 198, 200, 0.2);
    color: var(--theme-primary);
}

:global([data-bs-theme="dark"]) .status-badge.approved[b-a1c8oezzca] {
    background: rgba(26, 179, 148, 0.2);
    color: var(--theme-success);
}

:global([data-bs-theme="dark"]) .card-actions .statement-link[b-a1c8oezzca] {
    background: var(--bg-surface);
    border-color: var(--border-color);
}
/* /Pages/Recruiter/MyApplicationsPages/MyInvoices.razor.rz.scp.css */
/* =============================================
   APPLICATION STATEMENT PAGE STYLES
   Content-specific styles for sidebar and page-specific elements.
   Layout handled by PageLayout component.
   Report content handled by TransactionReport component.
   Dark mode handled automatically via CSS variables from theme-core.css
   ============================================= */

/* CSS Variables */
:host[b-u3nd9xxhmu] {
    --primary-color: var(--theme-success);
    --primary-dark: var(--theme-success-emphasis);
    --primary-bg: var(--theme-success-subtle);
    --success-color: var(--theme-success);
    --success-bg: var(--theme-success-subtle);
    --warning-color: var(--theme-warning);
    --warning-bg: var(--theme-warning-subtle);
}

/* =============================================
   HEADER BADGE PILLS
   ============================================= */

.badge-pill[b-u3nd9xxhmu] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 9999px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: white;
}

.badge-pill i[b-u3nd9xxhmu] {
    font-size: 1rem;
}

/* =============================================
   SIDEBAR CARDS
   ============================================= */

.sidebar-card[b-u3nd9xxhmu] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    border: 1px solid var(--border-color);
    overflow: hidden;
    margin-bottom: 1rem;
}

.sidebar-card .card-header[b-u3nd9xxhmu] {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.sidebar-card .card-header h3[b-u3nd9xxhmu] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
}

.sidebar-card .card-body[b-u3nd9xxhmu] {
    padding: 1rem;
}

/* =============================================
   OUTSTANDING BALANCE CARD
   ============================================= */

.outstanding-card[b-u3nd9xxhmu] {
    background: linear-gradient(135deg, var(--warning-bg) 0%, rgba(245, 158, 11, 0.05) 100%) !important;
    border: 1px solid rgba(245, 158, 11, 0.2) !important;
}

.outstanding-header[b-u3nd9xxhmu] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.outstanding-header i[b-u3nd9xxhmu] {
    font-size: 1.25rem;
    color: var(--warning-color);
}

.outstanding-header span[b-u3nd9xxhmu] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--warning-color);
}

.outstanding-amount[b-u3nd9xxhmu] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

/* =============================================
   ALL PAID CARD
   ============================================= */

.paid-card[b-u3nd9xxhmu] {
    background: linear-gradient(135deg, var(--success-bg) 0%, rgba(16, 185, 129, 0.05) 100%) !important;
    border: 1px solid rgba(16, 185, 129, 0.2) !important;
}

.paid-header[b-u3nd9xxhmu] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.paid-header i[b-u3nd9xxhmu] {
    font-size: 1.5rem;
    color: var(--success-color);
}

.paid-header span[b-u3nd9xxhmu] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--success-color);
}

.paid-message[b-u3nd9xxhmu] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.5;
}

/* =============================================
   QUICK ACTIONS
   ============================================= */

.quick-actions[b-u3nd9xxhmu] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.quick-action-btn[b-u3nd9xxhmu] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    width: 100%;
    transition: all 0.2s ease;
}

.quick-action-btn:hover[b-u3nd9xxhmu] {
    background: var(--primary-bg);
}

.quick-action-btn i[b-u3nd9xxhmu] {
    font-size: 1.125rem;
    color: var(--primary-color);
}

.quick-action-btn span[b-u3nd9xxhmu] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

/* =============================================
   HELP CARD
   ============================================= */

.help-card[b-u3nd9xxhmu] {
    background: linear-gradient(135deg, var(--primary-bg) 0%, rgba(16, 185, 129, 0.05) 100%) !important;
    border: 1px solid rgba(16, 185, 129, 0.2) !important;
    text-align: center;
}

.help-card .card-body[b-u3nd9xxhmu] {
    padding: 1.25rem !important;
}

.help-icon[b-u3nd9xxhmu] {
    width: 44px;
    height: 44px;
    background: var(--primary-color);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 0.75rem auto;
}

.help-icon i[b-u3nd9xxhmu] {
    font-size: 1.25rem;
    color: white;
}

.help-card h4[b-u3nd9xxhmu] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.375rem 0;
}

.help-card p[b-u3nd9xxhmu] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0;
    line-height: 1.5;
}

/* =============================================
   BUTTON STYLES
   ============================================= */

.btn[b-u3nd9xxhmu] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border-radius: 8px;
    font-size: 0.875rem;
    font-weight: 500;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-primary[b-u3nd9xxhmu] {
    background: var(--primary-color);
    color: white;
}

.btn-primary:hover[b-u3nd9xxhmu] {
    background: var(--primary-dark);
    color: white;
}

.btn-warning[b-u3nd9xxhmu] {
    background: var(--warning-color);
    color: white;
}

.btn-warning:hover[b-u3nd9xxhmu] {
    background: var(--theme-warning-emphasis);
    color: white;
}

.btn i[b-u3nd9xxhmu] {
    font-size: 1rem;
}

/* =============================================
   PRINT STYLES
   ============================================= */

@media print {
    .sidebar-card[b-u3nd9xxhmu],
    .quick-actions[b-u3nd9xxhmu],
    .help-card[b-u3nd9xxhmu] {
        display: none !important;
    }

    .badge-pill[b-u3nd9xxhmu] {
        background: #e9ecef;
        color: #212529;
    }
}

/* =============================================
   RECEIPTS LIST
   ============================================= */

.receipts-list[b-u3nd9xxhmu] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.receipt-link[b-u3nd9xxhmu] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    text-decoration: none;
    transition: all 0.2s ease;
    border: 1px solid transparent;
}

.receipt-link:hover[b-u3nd9xxhmu] {
    background: var(--success-bg);
    border-color: rgba(16, 185, 129, 0.2);
}

.receipt-info[b-u3nd9xxhmu] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.receipt-ref[b-u3nd9xxhmu] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.receipt-date[b-u3nd9xxhmu] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.receipt-amount[b-u3nd9xxhmu] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--success-color);
}

/* =============================================
   RESPONSIVE DESIGN
   ============================================= */

@media (max-width: 768px) {
    .outstanding-amount[b-u3nd9xxhmu] {
        font-size: 1.5rem;
    }

    .quick-action-btn[b-u3nd9xxhmu] {
        padding: 0.625rem;
    }

    .quick-action-btn span[b-u3nd9xxhmu] {
        font-size: 0.8125rem;
    }

    .receipt-link[b-u3nd9xxhmu] {
        padding: 0.625rem;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/MyOffers.razor.rz.scp.css */
/* MyOffers Page Styles */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.my-offers-page[b-5xywqriuav] {
    padding-bottom: 2rem;
}

/* Content Area - loading container centralized in app.css */

.stats-overview[b-5xywqriuav] {
    margin-bottom: 1.5rem;
}

/* Offers Grid */
.offers-grid[b-5xywqriuav] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
    gap: 1.5rem;
}

/* Offer Card */
.offer-card[b-5xywqriuav] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
}

.offer-card:hover[b-5xywqriuav] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.offer-card.urgent[b-5xywqriuav] {
    border-left: 4px solid var(--theme-warning);
}

.offer-card.overdue[b-5xywqriuav] {
    border-left: 4px solid var(--theme-danger);
}

.offer-card.accepted[b-5xywqriuav] {
    border-left: 4px solid var(--theme-success);
}

.offer-card.declined[b-5xywqriuav] {
    border-left: 4px solid var(--text-muted);
    opacity: 0.8;
}

.offer-card.expired[b-5xywqriuav],
.offer-card.revoked[b-5xywqriuav] {
    border-left: 4px solid var(--text-muted);
    opacity: 0.7;
}

.offer-card.deposit-pending[b-5xywqriuav] {
    border-left: 4px solid var(--theme-purple);
}

/* Offer Header */
.offer-header[b-5xywqriuav] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.offer-status[b-5xywqriuav] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

/* Status badge pattern consolidated in app.css (base only) */
.status-badge i[b-5xywqriuav] {
    font-size: 0.875rem;
}

.urgency-badge[b-5xywqriuav] {
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.urgency-badge.critical[b-5xywqriuav] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
    animation: pulse 1.5s infinite;
}

.urgency-badge.urgent[b-5xywqriuav] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.urgency-badge.soon[b-5xywqriuav] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

@keyframes    50%[b-5xywqriuav] { opacity: 0.6; }
}

.waitlist-badge[b-5xywqriuav] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
}

/* Offer Body */
.offer-body[b-5xywqriuav] {
    padding: 1.25rem;
    flex: 1;
}

.vacancy-name[b-5xywqriuav] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.25rem 0;
    line-height: 1.4;
}

.admission-number[b-5xywqriuav] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0 0 1rem 0;
}

.offer-details[b-5xywqriuav] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.detail-item[b-5xywqriuav] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.detail-item i[b-5xywqriuav] {
    color: var(--text-muted);
    font-size: 1rem;
}

.detail-item.urgent[b-5xywqriuav] {
    color: var(--theme-warning);
}

.detail-item.urgent i[b-5xywqriuav] {
    color: var(--theme-warning);
}

.detail-item.overdue[b-5xywqriuav] {
    color: var(--theme-danger);
    font-weight: 500;
}

.detail-item.overdue i[b-5xywqriuav] {
    color: var(--theme-danger);
}

/* Offer Actions */
.offer-actions[b-5xywqriuav] {
    display: flex;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.offer-actions .btn[b-5xywqriuav] {
    flex: 1;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.625rem 1rem;
    font-size: 0.875rem;
    font-weight: 500;
    border-radius: 8px;
    transition: all 0.15s ease;
}

.enrollment-confirmed[b-5xywqriuav] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    flex: 1;
    padding: 0.625rem 1rem;
    background: var(--theme-success-subtle);
    color: var(--theme-success);
    border-radius: 8px;
    font-weight: 500;
    font-size: 0.875rem;
}

.enrollment-confirmed i[b-5xywqriuav] {
    font-size: 1.125rem;
}

/* Decline Reason */
.decline-reason[b-5xywqriuav] {
    padding: 0.75rem 1.25rem;
    background: var(--theme-danger-subtle);
    border-top: 1px solid var(--theme-danger-border, rgba(239, 68, 68, 0.3));
    color: var(--theme-danger);
    font-size: 0.8125rem;
}

/* Modal Styles */
.modal-backdrop[b-5xywqriuav] {
    background-color: rgba(0, 0, 0, 0.5);
}

.modal-content[b-5xywqriuav] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    box-shadow: var(--shadow-lg);
}

.modal-header[b-5xywqriuav] {
    border-bottom: none;
    border-radius: 12px 12px 0 0;
    padding: 1.25rem 1.5rem;
    background: var(--bg-surface-tertiary);
}

.modal-body[b-5xywqriuav] {
    padding: 1.5rem;
}

.modal-footer[b-5xywqriuav] {
    border-top: 1px solid var(--border-color);
    padding: 1rem 1.5rem;
}

/* Responsive */
@media (max-width: 768px) {
    .offers-grid[b-5xywqriuav] {
        grid-template-columns: 1fr;
    }

    .offer-actions[b-5xywqriuav] {
        flex-direction: column;
    }

}

/* =============================================
   SUCCESS MODAL STYLES
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.success-modal .modal-body[b-5xywqriuav] {
    padding: 2rem;
}

/* Animated Checkmark */
.success-animation[b-5xywqriuav] {
    display: flex;
    justify-content: center;
}

.success-checkmark[b-5xywqriuav] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    display: block;
    stroke-width: 2;
    stroke: var(--theme-success);
    stroke-miterlimit: 10;
    box-shadow: inset 0px 0px 0px var(--theme-success);
    animation: fill-b-5xywqriuav .4s ease-in-out .4s forwards, scale-b-5xywqriuav .3s ease-in-out .9s both;
    position: relative;
    top: 0;
    margin: 0 auto;
}

.success-checkmark .check-icon[b-5xywqriuav] {
    width: 80px;
    height: 80px;
    position: relative;
    border-radius: 50%;
    box-sizing: content-box;
    border: 4px solid var(--theme-success);
}

.success-checkmark .check-icon[b-5xywqriuav]::before {
    top: 3px;
    left: -2px;
    width: 30px;
    transform-origin: 100% 50%;
    border-radius: 100px 0 0 100px;
}

.success-checkmark .check-icon[b-5xywqriuav]::after {
    top: 0;
    left: 30px;
    width: 60px;
    transform-origin: 0 50%;
    border-radius: 0 100px 100px 0;
    animation: rotate-circle-b-5xywqriuav 4.25s ease-in;
}

.success-checkmark .check-icon[b-5xywqriuav]::before,
.success-checkmark .check-icon[b-5xywqriuav]::after {
    content: '';
    height: 100px;
    position: absolute;
    background: var(--bg-surface);
    transform: rotate(-45deg);
}

.success-checkmark .check-icon .icon-line[b-5xywqriuav] {
    height: 5px;
    background-color: var(--theme-success);
    display: block;
    border-radius: 2px;
    position: absolute;
    z-index: 10;
}

.success-checkmark .check-icon .icon-line.line-tip[b-5xywqriuav] {
    top: 46px;
    left: 14px;
    width: 25px;
    transform: rotate(45deg);
    animation: icon-line-tip-b-5xywqriuav 0.75s;
}

.success-checkmark .check-icon .icon-line.line-long[b-5xywqriuav] {
    top: 38px;
    right: 8px;
    width: 47px;
    transform: rotate(-45deg);
    animation: icon-line-long-b-5xywqriuav 0.75s;
}

.success-checkmark .check-icon .icon-circle[b-5xywqriuav] {
    top: -4px;
    left: -4px;
    z-index: 10;
    width: 80px;
    height: 80px;
    border-radius: 50%;
    position: absolute;
    box-sizing: content-box;
    border: 4px solid var(--theme-success-subtle);
}

.success-checkmark .check-icon .icon-fix[b-5xywqriuav] {
    top: 8px;
    width: 5px;
    left: 26px;
    z-index: 1;
    height: 85px;
    position: absolute;
    transform: rotate(-45deg);
    background-color: var(--bg-surface);
}

@keyframes rotate-circle-b-5xywqriuav {
    0% { transform: rotate(-45deg); }
    5% { transform: rotate(-45deg); }
    12% { transform: rotate(-405deg); }
    100% { transform: rotate(-405deg); }
}

@keyframes icon-line-tip-b-5xywqriuav {
    0% { width: 0; left: 1px; top: 19px; }
    54% { width: 0; left: 1px; top: 19px; }
    70% { width: 50px; left: -8px; top: 37px; }
    84% { width: 17px; left: 21px; top: 48px; }
    100% { width: 25px; left: 14px; top: 46px; }
}

@keyframes icon-line-long-b-5xywqriuav {
    0% { width: 0; right: 46px; top: 54px; }
    65% { width: 0; right: 46px; top: 54px; }
    84% { width: 55px; right: 0px; top: 35px; }
    100% { width: 47px; right: 8px; top: 38px; }
}

@keyframes fill-b-5xywqriuav {
    100% { box-shadow: inset 0px 0px 0px 40px var(--theme-success-subtle); }
}

@keyframes scale-b-5xywqriuav {
    0%, 100% { transform: none; }
    50% { transform: scale3d(1.1, 1.1, 1); }
}

/* Accepted Offer Details */
.accepted-offer-details[b-5xywqriuav] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    max-width: 320px;
    margin: 0 auto;
}

.accepted-offer-details .detail-card[b-5xywqriuav] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    text-align: left;
}

.accepted-offer-details .detail-icon[b-5xywqriuav] {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--theme-info-subtle);
    color: var(--theme-info);
    border-radius: 10px;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.accepted-offer-details .detail-content[b-5xywqriuav] {
    display: flex;
    flex-direction: column;
    min-width: 0;
}

.accepted-offer-details .detail-label[b-5xywqriuav] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.accepted-offer-details .detail-value[b-5xywqriuav] {
    font-size: 0.9375rem;
    color: var(--text-primary);
    font-weight: 500;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.next-steps-alert[b-5xywqriuav] {
    max-width: 360px;
    margin: 0 auto;
}
/* /Pages/Recruiter/MyApplicationsPages/MyPaymentPortal.razor.rz.scp.css */
/* =============================================
   PAYMENT CENTER PAGE STYLES
   Uses PageLayout for header - this CSS focuses on
   content-specific styling only.
   Uses CSS variables from theme-core.css for automatic
   light/dark mode support.
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.payment-portal[b-t59s3ucp4h] {
    --accent-color: var(--theme-primary);
    --accent-light: var(--theme-indigo-light);
    --accent-dark: var(--theme-primary-emphasis);
    --accent-bg: var(--theme-primary-subtle);
}

/* Header Badge Pills */
.badge-pill[b-t59s3ucp4h] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 9999px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: white;
}

.badge-pill.warning[b-t59s3ucp4h] {
    background: rgba(239, 68, 68, 0.25);
}

.badge-pill i[b-t59s3ucp4h] {
    font-size: 1rem;
}

/* =============================================
   TABS
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.tabs-container[b-t59s3ucp4h] {
    margin-bottom: 1.5rem;
}

.tabs[b-t59s3ucp4h] {
    display: flex;
    gap: 0.5rem;
    background: var(--bg-surface);
    padding: 0.5rem;
    border-radius: 12px;
    border: 1px solid var(--border-color);
    box-shadow: var(--shadow-sm);
}

.tab[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border-radius: 8px;
    border: none;
    background: transparent;
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.tab:hover[b-t59s3ucp4h] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.tab.active[b-t59s3ucp4h] {
    background: var(--accent-color);
    color: white;
}

.tab i[b-t59s3ucp4h] {
    font-size: 1.125rem;
}

.tab-badge[b-t59s3ucp4h] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    border-radius: 10px;
    background: rgba(0, 0, 0, 0.1);
    font-size: 0.75rem;
    font-weight: 600;
}

.tab.active .tab-badge[b-t59s3ucp4h] {
    background: rgba(255, 255, 255, 0.3);
}

.tab-badge.warning[b-t59s3ucp4h] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.tab-badge.success[b-t59s3ucp4h] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.tab.active .tab-badge.warning[b-t59s3ucp4h],
.tab.active .tab-badge.success[b-t59s3ucp4h] {
    background: rgba(255, 255, 255, 0.3);
    color: white;
}

/* =============================================
   INVOICES SECTION
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.invoices-section[b-t59s3ucp4h] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

/* Application Group */
.application-group[b-t59s3ucp4h] {
    background: var(--bg-surface);
    border-radius: 14px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

.app-group-header[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    cursor: pointer;
    transition: background 0.2s ease;
}

.app-group-header:hover[b-t59s3ucp4h] {
    background: var(--bg-surface-tertiary);
}

.app-info[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.app-icon[b-t59s3ucp4h] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--theme-info-subtle);
    color: var(--theme-info);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
}

.app-details h3[b-t59s3ucp4h] {
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.app-meta[b-t59s3ucp4h] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.app-stats[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.app-stat[b-t59s3ucp4h] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
}

.stat-label[b-t59s3ucp4h] {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.stat-value[b-t59s3ucp4h] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.app-stat.pending .stat-value[b-t59s3ucp4h] {
    color: var(--theme-warning);
}

.app-stat.paid .stat-value[b-t59s3ucp4h] {
    color: var(--theme-success);
}

.expand-icon[b-t59s3ucp4h] {
    font-size: 1.25rem;
    color: var(--text-muted);
    transition: transform 0.2s ease;
}

.expand-icon.expanded[b-t59s3ucp4h] {
    transform: rotate(180deg);
}

.app-invoices[b-t59s3ucp4h] {
    border-top: 1px solid var(--border-color);
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.view-all-link[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    padding: 0.75rem;
    margin-top: 0.5rem;
    color: var(--theme-info);
    font-size: 0.875rem;
    font-weight: 600;
    text-decoration: none;
    border-radius: 8px;
    background: var(--bg-surface);
    transition: all 0.2s ease;
}

.view-all-link:hover[b-t59s3ucp4h] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

/* =============================================
   INVOICE CARD
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.invoice-card[b-t59s3ucp4h] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
}

.invoice-card:hover[b-t59s3ucp4h] {
    box-shadow: var(--shadow-md);
}

/* Status border indicators */
.invoice-card.overdue[b-t59s3ucp4h] {
    border-left: 4px solid var(--theme-danger);
}

.invoice-card.pending[b-t59s3ucp4h] {
    border-left: 4px solid var(--theme-warning);
}

.invoice-card.paid[b-t59s3ucp4h] {
    border-left: 4px solid var(--theme-success);
}

.invoice-card.partial[b-t59s3ucp4h] {
    border-left: 4px solid var(--theme-info);
}

.invoice-main[b-t59s3ucp4h] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1.25rem;
}

.invoice-info[b-t59s3ucp4h] {
    flex: 1;
    min-width: 0;
}

.invoice-header[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.375rem;
}

.invoice-number[b-t59s3ucp4h] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    font-family: 'SF Mono', 'Monaco', monospace;
    background: var(--bg-surface-tertiary);
    padding: 0.125rem 0.5rem;
    border-radius: 4px;
}

.invoice-title[b-t59s3ucp4h] {
    margin: 0 0 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.invoice-meta[b-t59s3ucp4h] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.invoice-meta span[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.invoice-meta i[b-t59s3ucp4h] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.invoice-amount[b-t59s3ucp4h] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 0.375rem;
    flex-shrink: 0;
}

.amount[b-t59s3ucp4h] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
}

.balance[b-t59s3ucp4h] {
    font-size: 0.75rem;
    color: var(--theme-warning);
}

/* Status badge pattern consolidated in app.css */

/* Invoice Actions */
.invoice-actions[b-t59s3ucp4h] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.pay-btn[b-t59s3ucp4h] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    background: var(--theme-danger);
    color: white;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.2s ease;
}

.pay-btn:hover[b-t59s3ucp4h] {
    background: var(--theme-danger-emphasis);
    color: white;
    transform: translateY(-1px);
}

.receipt-btn[b-t59s3ucp4h],
.details-btn[b-t59s3ucp4h] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface-secondary);
    color: var(--text-secondary);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.receipt-btn:hover[b-t59s3ucp4h] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.details-btn:hover[b-t59s3ucp4h] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

/* =============================================
   EMPTY STATE
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.empty-tab[b-t59s3ucp4h] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    background: var(--bg-surface);
    border-radius: 14px;
    border: 1px solid var(--border-color);
    color: var(--text-secondary);
}

.empty-tab i[b-t59s3ucp4h] {
    font-size: 2.5rem;
    color: var(--text-muted);
    margin-bottom: 1rem;
}

.empty-tab p[b-t59s3ucp4h] {
    margin: 0;
    font-size: 0.9375rem;
}

/* =============================================
   RESPONSIVE DESIGN
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 768px) {
    .tabs[b-t59s3ucp4h] {
        overflow-x: auto;
        padding-bottom: 0.25rem;
    }

    .tab span:not(.tab-badge)[b-t59s3ucp4h] {
        display: none;
    }

    .tab[b-t59s3ucp4h] {
        padding: 0.75rem;
    }

    .app-group-header[b-t59s3ucp4h] {
        flex-direction: column;
        align-items: flex-start;
        gap: 1rem;
    }

    .app-stats[b-t59s3ucp4h] {
        width: 100%;
        justify-content: space-between;
    }

    .invoice-main[b-t59s3ucp4h] {
        flex-direction: column;
    }

    .invoice-amount[b-t59s3ucp4h] {
        flex-direction: row;
        align-items: center;
        width: 100%;
        justify-content: space-between;
        margin-top: 0.75rem;
        padding-top: 0.75rem;
        border-top: 1px solid var(--border-color);
    }

    .invoice-actions[b-t59s3ucp4h] {
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .app-stats[b-t59s3ucp4h] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .app-stat[b-t59s3ucp4h] {
        flex-direction: row;
        gap: 0.5rem;
        align-items: center;
    }

    .invoice-actions[b-t59s3ucp4h] {
        flex-direction: column;
    }

    .pay-btn[b-t59s3ucp4h],
    .receipt-btn[b-t59s3ucp4h],
    .details-btn[b-t59s3ucp4h] {
        width: 100%;
        justify-content: center;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/PaymentPage.razor.rz.scp.css */
/* =============================================
   PAYMENT PAGE STYLES - DOMAIN-SPECIFIC ONLY

   Whitelabel-ready: Uses global theme CSS variables.
   Generic patterns (modals, badges, buttons, cards, forms)
   are removed - use centralized app.css or components.
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* CSS Variables - Mapped to Global Theme Variables */
.payment-page[b-qzlpe3woo7] {
    --primary-color: var(--theme-primary);
    --primary-dark: var(--theme-primary-emphasis);
    --primary-light: var(--theme-primary-subtle);
    --primary-bg: var(--theme-primary-subtle);
    --secondary-color: var(--theme-secondary);
    --success-color: var(--theme-success);
    --success-bg: var(--theme-success-subtle);
    --warning-color: var(--theme-warning);
    --warning-bg: var(--theme-warning-subtle);
    --danger-color: var(--theme-danger);
    --danger-bg: var(--theme-danger-subtle);
    --info-color: var(--theme-info);
    --info-bg: var(--theme-info-subtle);
    --shadow-sm: var(--shadow-sm);
    --shadow-md: var(--shadow-md);
    --shadow-lg: var(--shadow-lg);
    --radius-sm: var(--radius-sm, 0.375rem);
    --radius-md: var(--radius-md, 0.5rem);
    --radius-lg: var(--radius-lg, 0.75rem);
    --radius-xl: var(--radius-xl, 1rem);
    --transition: var(--sidenav-transition-fast, all 0.2s ease);
}

/* Page Container */
.payment-page[b-qzlpe3woo7] {
    min-height: 100vh;
    background: var(--bg-body);
}

/* =============================================
   PAYMENT FLOW LAYOUT (UNIQUE)
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.content-grid[b-qzlpe3woo7] {
    display: grid;
    grid-template-columns: 380px 1fr;
    gap: 1.5rem;
    align-items: start;
}

.sidebar-column[b-qzlpe3woo7] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    position: sticky;
    top: 1.5rem;
}

.main-column[b-qzlpe3woo7] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* =============================================
   INVOICE BREAKDOWN (DOMAIN-SPECIFIC)
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.invoice-number[b-qzlpe3woo7] {
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

.invoice-number .label[b-qzlpe3woo7] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.25rem;
}

.invoice-number .value[b-qzlpe3woo7] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
    font-family: monospace;
}

.fee-breakdown[b-qzlpe3woo7] {
    margin-bottom: 1rem;
}

.fee-item[b-qzlpe3woo7] {
    display: flex;
    justify-content: space-between;
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border-color);
}

.fee-item:last-child[b-qzlpe3woo7] {
    border-bottom: none;
}

.fee-item.paid[b-qzlpe3woo7] {
    color: var(--success-color);
}

.fee-label[b-qzlpe3woo7] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
}

.fee-amount[b-qzlpe3woo7] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.fee-item.paid .fee-amount[b-qzlpe3woo7] {
    color: var(--success-color);
}

.total-due[b-qzlpe3woo7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    background: var(--primary-bg);
    border-radius: var(--radius-md);
    margin-bottom: 1rem;
}

.total-label[b-qzlpe3woo7] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.total-amount[b-qzlpe3woo7] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--primary-color);
}

.due-date[b-qzlpe3woo7] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem;
    background: var(--bg-surface-secondary);
    border-radius: var(--radius-md);
    margin-bottom: 1rem;
}

.due-date i[b-qzlpe3woo7] {
    font-size: 1.25rem;
    color: var(--text-muted);
}

.due-date.overdue[b-qzlpe3woo7] {
    background: var(--danger-bg);
}

.due-date.overdue i[b-qzlpe3woo7] {
    color: var(--danger-color);
}

.due-info[b-qzlpe3woo7] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.due-label[b-qzlpe3woo7] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.due-value[b-qzlpe3woo7] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--text-primary);
}

.due-date.overdue .due-value[b-qzlpe3woo7] {
    color: var(--danger-color);
}

.overdue-badge[b-qzlpe3woo7] {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    background: var(--danger-color);
    color: white;
    border-radius: 9999px;
    font-size: 0.625rem;
    font-weight: 600;
    text-transform: uppercase;
    margin-left: 0.5rem;
    vertical-align: middle;
}

/* =============================================
   PAYMENT GATEWAY SELECTION (DOMAIN-SPECIFIC)
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.gateway-list[b-qzlpe3woo7] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1.5rem;
}

.gateway-item[b-qzlpe3woo7] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    border: 2px solid var(--border-color);
    border-radius: var(--radius-lg);
    cursor: pointer;
    transition: var(--transition);
}

.gateway-item:hover[b-qzlpe3woo7] {
    border-color: var(--primary-color);
    background: var(--primary-bg);
}

.gateway-item.selected[b-qzlpe3woo7] {
    border-color: var(--primary-color);
    background: var(--primary-bg);
}

.gateway-icon[b-qzlpe3woo7] {
    width: 48px;
    height: 48px;
    background: linear-gradient(135deg, var(--primary-bg) 0%, var(--theme-primary-subtle) 100%);
    border-radius: var(--radius-md);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.gateway-icon i[b-qzlpe3woo7] {
    font-size: 1.5rem;
    color: var(--primary-color);
}

.gateway-info[b-qzlpe3woo7] {
    flex: 1;
    min-width: 0;
}

.gateway-name[b-qzlpe3woo7] {
    display: block;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.gateway-desc[b-qzlpe3woo7] {
    display: block;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

.recommended-badge[b-qzlpe3woo7] {
    padding: 0.25rem 0.625rem;
    background: var(--primary-bg);
    color: var(--primary-color);
    border-radius: 9999px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
}

.gateway-check[b-qzlpe3woo7] {
    flex-shrink: 0;
}

.gateway-check i[b-qzlpe3woo7] {
    font-size: 1.5rem;
    color: var(--text-muted);
}

.gateway-item.selected .gateway-check i[b-qzlpe3woo7] {
    color: var(--primary-color);
}

.no-gateways[b-qzlpe3woo7] {
    text-align: center;
    padding: 2rem;
    color: var(--text-secondary);
}

.no-gateways i[b-qzlpe3woo7] {
    font-size: 2.5rem;
    color: var(--warning-color);
    display: block;
    margin-bottom: 0.75rem;
}

/* =============================================
   PAYMENT PHONE INPUT (DOMAIN-SPECIFIC)
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.phone-input[b-qzlpe3woo7] {
    display: flex;
    border: 2px solid var(--border-color);
    border-radius: var(--radius-md);
    overflow: hidden;
    transition: var(--transition);
}

.phone-input:focus-within[b-qzlpe3woo7] {
    border-color: var(--primary-color);
    box-shadow: 0 0 0 3px var(--primary-bg);
}

.phone-prefix[b-qzlpe3woo7] {
    padding: 0.875rem 1rem;
    background: var(--bg-surface-secondary);
    border-right: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
}

.phone-field[b-qzlpe3woo7] {
    flex: 1;
    padding: 0.875rem 1rem;
    border: none;
    font-size: 1rem;
    color: var(--text-primary);
    background: transparent;
}

.phone-field:focus[b-qzlpe3woo7] {
    outline: none;
}

.phone-field[b-qzlpe3woo7]::placeholder {
    color: var(--text-muted);
}

/* =============================================
   PAYMENT INSTRUCTIONS (DOMAIN-SPECIFIC)
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.instructions-card[b-qzlpe3woo7] {
    background: var(--info-bg);
    border-radius: var(--radius-md);
    padding: 1rem 1.25rem;
    margin-bottom: 1.5rem;
}

.instructions-header[b-qzlpe3woo7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 600;
    color: var(--info-color);
    margin-bottom: 0.75rem;
}

.instructions-header i[b-qzlpe3woo7] {
    font-size: 1.125rem;
}

.instructions-list[b-qzlpe3woo7] {
    margin: 0;
    padding-left: 1.25rem;
    color: var(--text-secondary);
    font-size: 0.875rem;
    line-height: 1.6;
}

.instructions-list li[b-qzlpe3woo7] {
    margin-bottom: 0.25rem;
}

/* =============================================
   PAYMENT PROCESSING MODAL (UNIQUE FLOW)
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.processing-icon[b-qzlpe3woo7] {
    position: relative;
    width: 80px;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1.5rem auto;
}

.processing-icon i[b-qzlpe3woo7] {
    font-size: 2.5rem;
    color: var(--theme-info);
    position: relative;
    z-index: 1;
}

.pulse-ring[b-qzlpe3woo7] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80px;
    height: 80px;
    border: 3px solid var(--theme-info);
    border-radius: 50%;
    animation: pulse 1.5s ease-out infinite;
}

@keyframes    100%[b-qzlpe3woo7] {
        transform: translate(-50%, -50%) scale(1.5);
        opacity: 0;
    }
}

.timeout-info[b-qzlpe3woo7] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--theme-warning-subtle);
    border-radius: 0.5rem;
    margin-bottom: 1.5rem;
    text-align: left;
}

.timeout-info i[b-qzlpe3woo7] {
    font-size: 1.25rem;
    color: var(--theme-warning);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.timeout-info span[b-qzlpe3woo7] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* =============================================
   RESPONSIVE DESIGN
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1024px) {
    .content-grid[b-qzlpe3woo7] {
        grid-template-columns: 1fr;
    }

    .sidebar-column[b-qzlpe3woo7] {
        position: static;
        order: 2;
    }

    .main-column[b-qzlpe3woo7] {
        order: 1;
    }
}

@media (max-width: 768px) {
    .content-grid[b-qzlpe3woo7] {
        padding: 0 1rem;
        margin-top: 1rem;
    }
}

@media (max-width: 480px) {
    .gateway-item[b-qzlpe3woo7] {
        padding: 0.875rem;
    }

    .gateway-icon[b-qzlpe3woo7] {
        width: 40px;
        height: 40px;
    }

    .gateway-icon i[b-qzlpe3woo7] {
        font-size: 1.25rem;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/ReadMyHomework.razor.rz.scp.css */
/* Read My Homework (Submit) Page Styles */
/* Orange theme - header handled by PageLayout */
/* Uses Common Components: ContentCard */

.homework-submit-page[b-ea2n3x3llm] {
    --accent-color: var(--theme-info);
    --accent-light: var(--theme-cyan-light);
    --accent-dark: var(--theme-info-emphasis);
    --accent-bg: rgba(6, 182, 212, 0.1);
    --accent-border: rgba(6, 182, 212, 0.2);
}

/* Main Content & Sidebar Flow */
.main-content-flow[b-ea2n3x3llm],
.sidebar-flow[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Header Deadline Badge */
.header-deadline[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 10px;
    color: white;
    font-size: 0.875rem;
    font-weight: 500;
}

.header-deadline i[b-ea2n3x3llm] {
    font-size: 1.125rem;
}

/* Optional Badge */
.optional-badge[b-ea2n3x3llm] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    background: var(--theme-gray-100);
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-weight: 500;
}

/* Instructions Content */
.instructions-content[b-ea2n3x3llm] {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--text-secondary);
}

.instructions-content h1[b-ea2n3x3llm],
.instructions-content h2[b-ea2n3x3llm],
.instructions-content h3[b-ea2n3x3llm],
.instructions-content h4[b-ea2n3x3llm] {
    color: var(--text-primary);
    margin-top: 1.5rem;
    margin-bottom: 0.75rem;
}

.instructions-content h1:first-child[b-ea2n3x3llm],
.instructions-content h2:first-child[b-ea2n3x3llm],
.instructions-content h3:first-child[b-ea2n3x3llm] {
    margin-top: 0;
}

.instructions-content p[b-ea2n3x3llm] {
    margin-bottom: 1rem;
}

.instructions-content ul[b-ea2n3x3llm],
.instructions-content ol[b-ea2n3x3llm] {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

/* URL Input Section */
.url-input-section[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.input-label[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.input-label i[b-ea2n3x3llm] {
    color: var(--accent-color);
}

.input-helper[b-ea2n3x3llm] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.url-input-wrapper[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    transition: all 0.2s ease;
}

.url-input-wrapper:focus-within[b-ea2n3x3llm] {
    border-color: var(--accent-color);
    background: var(--bg-surface);
    box-shadow: 0 0 0 3px var(--accent-bg);
}

.url-input-wrapper i[b-ea2n3x3llm] {
    color: var(--text-muted);
    font-size: 1.125rem;
}

.url-input[b-ea2n3x3llm] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.9375rem;
    color: var(--text-primary);
    outline: none;
}

.url-input[b-ea2n3x3llm]::placeholder {
    color: var(--text-muted);
}

/* Upload Alert */
.upload-alert[b-ea2n3x3llm] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-radius: 10px;
    margin-bottom: 1rem;
}

.upload-alert.alert-info[b-ea2n3x3llm] {
    background: rgba(6, 182, 212, 0.1);
    border: 1px solid rgba(6, 182, 212, 0.2);
}

.upload-alert.alert-success[b-ea2n3x3llm] {
    background: var(--theme-success-subtle);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.upload-alert.alert-warning[b-ea2n3x3llm] {
    background: var(--theme-warning-subtle);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

.upload-alert.alert-danger[b-ea2n3x3llm] {
    background: var(--theme-danger-subtle);
    border: 1px solid rgba(239, 68, 68, 0.2);
}

.alert-icon[b-ea2n3x3llm] {
    font-size: 1.25rem;
    flex-shrink: 0;
}

.alert-info .alert-icon[b-ea2n3x3llm] {
    color: var(--accent-color);
}

.alert-success .alert-icon[b-ea2n3x3llm] {
    color: var(--theme-success);
}

.alert-warning .alert-icon[b-ea2n3x3llm] {
    color: var(--theme-warning);
}

.alert-danger .alert-icon[b-ea2n3x3llm] {
    color: var(--theme-danger);
}

.alert-content[b-ea2n3x3llm] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* Upload Progress */
.upload-progress[b-ea2n3x3llm] {
    margin-bottom: 1rem;
}

.progress-bar-container[b-ea2n3x3llm] {
    height: 8px;
    background: var(--border-color);
    border-radius: 4px;
    overflow: hidden;
    margin-bottom: 0.5rem;
}

.progress-bar-fill[b-ea2n3x3llm] {
    height: 100%;
    background: linear-gradient(90deg, var(--accent-color), var(--accent-light));
    border-radius: 4px;
    transition: width 0.3s ease;
}

.progress-text[b-ea2n3x3llm] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    font-weight: 500;
}

/* Uploading State */
.uploading-state[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    gap: 1rem;
}

.uploading-spinner[b-ea2n3x3llm] {
    width: 48px;
    height: 48px;
    border: 3px solid var(--accent-bg);
    border-top-color: var(--accent-color);
    border-radius: 50%;
    animation: spin 1s linear infinite;
}

.uploading-text[b-ea2n3x3llm] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    text-align: center;
}

/* Upload Dropzone */
.upload-dropzone[b-ea2n3x3llm] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem 2rem;
    background: linear-gradient(135deg, var(--accent-bg), rgba(6, 182, 212, 0.05));
    border: 2px dashed var(--accent-border);
    border-radius: 14px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.upload-dropzone:hover[b-ea2n3x3llm] {
    border-color: var(--accent-color);
    background: linear-gradient(135deg, rgba(6, 182, 212, 0.15), var(--accent-bg));
}

.dropzone-icon[b-ea2n3x3llm] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 1rem;
    box-shadow: 0 4px 12px rgba(6, 182, 212, 0.2);
}

.dropzone-icon i[b-ea2n3x3llm] {
    font-size: 2rem;
    color: var(--accent-color);
}

.dropzone-text[b-ea2n3x3llm] {
    text-align: center;
}

.dropzone-title[b-ea2n3x3llm] {
    display: block;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.dropzone-formats[b-ea2n3x3llm] {
    display: block;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.dropzone-input[b-ea2n3x3llm] {
    position: absolute;
    inset: 0;
    opacity: 0;
    cursor: pointer;
}

/* File Preview */
.file-preview[b-ea2n3x3llm] {
    border: 1px solid var(--border-color);
    border-radius: 14px;
    overflow: hidden;
}

.preview-header[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
}

.file-icon[b-ea2n3x3llm] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--accent-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.file-icon i[b-ea2n3x3llm] {
    font-size: 1.25rem;
    color: var(--accent-color);
}

.file-info[b-ea2n3x3llm] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.file-name[b-ea2n3x3llm] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.file-type[b-ea2n3x3llm] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

.file-actions[b-ea2n3x3llm] {
    display: flex;
    gap: 0.5rem;
}

.action-icon[b-ea2n3x3llm] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
}

.action-icon.view[b-ea2n3x3llm] {
    background: var(--accent-bg);
    color: var(--accent-color);
}

.action-icon.view:hover[b-ea2n3x3llm] {
    background: var(--accent-color);
    color: white;
}

.action-icon.remove[b-ea2n3x3llm] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.action-icon.remove:hover[b-ea2n3x3llm] {
    background: var(--theme-danger);
    color: white;
}

.preview-content[b-ea2n3x3llm] {
    padding: 1rem;
    background: var(--bg-surface);
    display: flex;
    justify-content: center;
}

.preview-image[b-ea2n3x3llm] {
    max-width: 100%;
    max-height: 300px;
    border-radius: 8px;
    object-fit: contain;
}

/* Action Card */
.action-card .card-content[b-ea2n3x3llm] {
    padding: 1.25rem 1.5rem;
}

.action-section[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.action-info[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.action-icon[b-ea2n3x3llm] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.action-text h4[b-ea2n3x3llm] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.action-text p[b-ea2n3x3llm] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.action-buttons[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.submit-btn[b-ea2n3x3llm] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis));
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(16, 185, 129, 0.3);
}

.submit-btn:hover:not(:disabled)[b-ea2n3x3llm] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(16, 185, 129, 0.4);
}

.submit-btn:disabled[b-ea2n3x3llm] {
    opacity: 0.6;
    cursor: not-allowed;
}

.back-link-btn[b-ea2n3x3llm] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.back-link-btn:hover[b-ea2n3x3llm] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* Sidebar Card Customization */
[b-ea2n3x3llm] .sidebar-card {
    border-radius: 14px;
}

/* Checklist */
.checklist[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.checklist-item[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.checklist-item.completed[b-ea2n3x3llm] {
    color: var(--text-primary);
}

.check-icon[b-ea2n3x3llm] {
    font-size: 1.25rem;
    flex-shrink: 0;
}

.checklist-item .check-icon[b-ea2n3x3llm] {
    color: var(--border-color);
}

.checklist-item.completed .check-icon[b-ea2n3x3llm] {
    color: var(--theme-success);
}

/* Requirements List */
.requirements-list[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.requirement-item[b-ea2n3x3llm] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.requirement-item i[b-ea2n3x3llm] {
    color: var(--accent-color);
    font-size: 1rem;
    flex-shrink: 0;
}

/* Tips List */
.tips-list[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.tip-item[b-ea2n3x3llm] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

.tip-item i[b-ea2n3x3llm] {
    color: var(--theme-success);
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

/* Steps List */
.steps-list[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.step-item[b-ea2n3x3llm] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
}

.step-number[b-ea2n3x3llm] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 700;
    flex-shrink: 0;
}

.step-item.completed .step-number[b-ea2n3x3llm] {
    background: var(--theme-success);
    color: white;
}

.step-item.current .step-number[b-ea2n3x3llm] {
    background: var(--accent-color);
    color: white;
}

.step-text[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
}

.step-title[b-ea2n3x3llm] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.step-item.current .step-title[b-ea2n3x3llm] {
    color: var(--accent-color);
}

.step-desc[b-ea2n3x3llm] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

.step-item.current .step-desc[b-ea2n3x3llm] {
    color: var(--accent-dark);
    font-weight: 500;
}

.step-item.completed .step-desc[b-ea2n3x3llm] {
    color: var(--theme-success);
}

/* Actions Card */
.actions-card .card-content[b-ea2n3x3llm] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Note: Generic .action-btn styles now centralized in app.css */

/* Page-specific action button customizations */
.action-btn[b-ea2n3x3llm] {
    width: 100%; /* Full-width in sidebar */
}

/* Note: Spinner is now centralized in app.css. */

/* Responsive Design */
@media (max-width: 768px) {
    .action-section[b-ea2n3x3llm] {
        flex-direction: column;
        text-align: center;
    }

    .action-info[b-ea2n3x3llm] {
        flex-direction: column;
    }

    .action-buttons[b-ea2n3x3llm] {
        flex-direction: column;
        width: 100%;
    }

    .submit-btn[b-ea2n3x3llm],
    .back-link-btn[b-ea2n3x3llm] {
        width: 100%;
        justify-content: center;
    }

    .preview-header[b-ea2n3x3llm] {
        flex-direction: column;
        text-align: center;
    }

    .file-actions[b-ea2n3x3llm] {
        margin-top: 0.5rem;
    }
}

@media (max-width: 480px) {
    .upload-dropzone[b-ea2n3x3llm] {
        padding: 2rem 1rem;
    }

    .dropzone-icon[b-ea2n3x3llm] {
        width: 56px;
        height: 56px;
    }

    .dropzone-icon i[b-ea2n3x3llm] {
        font-size: 1.5rem;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/ScheduleInterviewAppointmentReminder.razor.rz.scp.css */
/* Schedule Interview Appointment Reminder Page Styles */
/* Purple theme - header handled by PageLayout */
/* Uses Common Components: ContentCard, InfoBanner */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.interview-reminder-page[b-klmianjbgr] {
    --accent-color: var(--theme-purple);
    --accent-light: var(--theme-purple-light);
    --accent-dark: var(--theme-purple-emphasis);
    --accent-bg: rgba(139, 92, 246, 0.1);
    --accent-border: rgba(139, 92, 246, 0.2);
}

/* Main Content & Sidebar Flow */
.main-content-flow[b-klmianjbgr],
.sidebar-flow[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Confirmed Badge */
.confirmed-badge[b-klmianjbgr] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.875rem;
    background: var(--theme-success-subtle);
    color: var(--theme-success);
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 600;
}

/* Appointment Display */
.appointment-display[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.date-display[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 1.25rem;
    padding: 1.25rem;
    background: linear-gradient(135deg, var(--accent-bg), rgba(139, 92, 246, 0.05));
    border: 1px solid var(--accent-border);
    border-radius: 14px;
}

.date-block[b-klmianjbgr] {
    width: 80px;
    padding: 0.875rem;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    border-radius: 12px;
    text-align: center;
    color: white;
    flex-shrink: 0;
}

.date-day[b-klmianjbgr] {
    display: block;
    font-size: 2rem;
    font-weight: 700;
    line-height: 1;
}

.date-month[b-klmianjbgr] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-top: 0.25rem;
}

.date-year[b-klmianjbgr] {
    display: block;
    font-size: 0.75rem;
    opacity: 0.8;
}

.date-info[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.day-name[b-klmianjbgr] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.time-range[b-klmianjbgr] {
    font-size: 0.9375rem;
    color: var(--accent-dark);
    font-weight: 500;
}

/* Details Grid */
.details-grid[b-klmianjbgr] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

.detail-item[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
}

.detail-icon[b-klmianjbgr] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--accent-bg);
    color: var(--accent-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.125rem;
    flex-shrink: 0;
}

.detail-content[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
}

.detail-label[b-klmianjbgr] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.detail-value[b-klmianjbgr] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-top: 0.125rem;
}

/* Reminder Form */
.reminder-form[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

.form-group[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.form-label[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.form-label i[b-klmianjbgr] {
    color: var(--accent-color);
}

.form-helper[b-klmianjbgr] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.input-wrapper[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    max-width: 200px;
}

.reminder-input[b-klmianjbgr] {
    flex: 1;
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 10px;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    text-align: center;
    transition: all 0.2s ease;
    background: var(--bg-surface);
}

.reminder-input:focus[b-klmianjbgr] {
    outline: none;
    border-color: var(--accent-color);
    box-shadow: 0 0 0 3px var(--accent-bg);
}

.input-suffix[b-klmianjbgr] {
    font-size: 0.9375rem;
    color: var(--text-secondary);
    font-weight: 500;
}

/* Quick Select */
.quick-select[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.quick-label[b-klmianjbgr] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.quick-options[b-klmianjbgr] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.quick-btn[b-klmianjbgr] {
    padding: 0.5rem 1rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.quick-btn:hover[b-klmianjbgr] {
    background: var(--accent-bg);
    border-color: var(--accent-border);
    color: var(--accent-dark);
}

.quick-btn.active[b-klmianjbgr] {
    background: var(--accent-color);
    border-color: var(--accent-color);
    color: white;
}

/* Reminder Preview */
.reminder-preview[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--accent-bg), rgba(139, 92, 246, 0.05));
    border: 1px solid var(--accent-border);
    border-radius: 12px;
}

.preview-icon[b-klmianjbgr] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--accent-color);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.preview-content[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.preview-label[b-klmianjbgr] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.preview-time[b-klmianjbgr] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--accent-dark);
}

/* Action Card */
.action-card .card-content[b-klmianjbgr] {
    padding: 1.25rem 1.5rem;
}

.action-section[b-klmianjbgr] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.action-info[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.action-icon[b-klmianjbgr] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--accent-bg);
    color: var(--accent-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.action-text h4[b-klmianjbgr] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.action-text p[b-klmianjbgr] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.action-buttons[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.submit-btn[b-klmianjbgr] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(139, 92, 246, 0.3);
}

.submit-btn:hover:not(:disabled)[b-klmianjbgr] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(139, 92, 246, 0.4);
}

.submit-btn:disabled[b-klmianjbgr] {
    opacity: 0.6;
    cursor: not-allowed;
}

.back-link-btn[b-klmianjbgr] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.back-link-btn:hover[b-klmianjbgr] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* Sidebar Card Customization */
[b-klmianjbgr] .sidebar-card {
    border-radius: 14px;
}

/* Countdown Card */
.countdown-card[b-klmianjbgr] {
    background: linear-gradient(135deg, var(--accent-bg), var(--bg-surface));
    border-color: var(--accent-border);
}

.countdown-display[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.countdown-icon[b-klmianjbgr] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--accent-color);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
}

.countdown-info[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
}

.countdown-label[b-klmianjbgr] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.countdown-value[b-klmianjbgr] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--accent-dark);
    margin-top: 0.125rem;
}

/* Tips List */
.tips-list[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.tip-item[b-klmianjbgr] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

.tip-item i[b-klmianjbgr] {
    color: var(--theme-success);
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

/* Checklist */
.checklist[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.checklist-item[b-klmianjbgr] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.checklist-item i[b-klmianjbgr] {
    color: var(--border-color);
    font-size: 1rem;
    flex-shrink: 0;
}

/* Actions Card */
.actions-card .card-content[b-klmianjbgr] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

/* Note: Generic .action-btn styles now centralized in app.css */

/* Page-specific action button customizations */
.action-btn[b-klmianjbgr] {
    width: 100%; /* Full-width in sidebar */
}

/* Note: Spinner is now centralized in app.css. */

/* Responsive Design */
@media (max-width: 1200px) {
    .details-grid[b-klmianjbgr] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .date-display[b-klmianjbgr] {
        flex-direction: column;
        text-align: center;
    }

    .date-info[b-klmianjbgr] {
        align-items: center;
    }

    .details-grid[b-klmianjbgr] {
        grid-template-columns: 1fr;
    }

    .quick-select[b-klmianjbgr] {
        flex-direction: column;
        align-items: flex-start;
    }

    .action-section[b-klmianjbgr] {
        flex-direction: column;
        text-align: center;
    }

    .action-info[b-klmianjbgr] {
        flex-direction: column;
    }

    .action-buttons[b-klmianjbgr] {
        flex-direction: column;
        width: 100%;
    }

    .submit-btn[b-klmianjbgr],
    .back-link-btn[b-klmianjbgr] {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .input-wrapper[b-klmianjbgr] {
        max-width: 100%;
    }

    .quick-options[b-klmianjbgr] {
        width: 100%;
    }

    .quick-btn[b-klmianjbgr] {
        flex: 1;
        text-align: center;
    }
}
/* /Pages/Recruiter/MyApplicationsPages/ShowMyHomework.razor.rz.scp.css */
/* Show My Homework (Confirmation) Page Styles */
/* Emerald theme - header handled by PageLayout */
/* Uses Common Components: ContentCard, InfoBanner, EmptyState */
/* Dark mode handled automatically via CSS variables from theme-core.css */

.homework-show-page[b-zflbuuibdq] {
    --accent-color: var(--theme-info);
    --accent-light: var(--theme-cyan-light);
    --accent-dark: var(--theme-info-emphasis);
    --accent-bg: rgba(6, 182, 212, 0.1);
    --accent-border: rgba(6, 182, 212, 0.2);
    --success-color: var(--theme-success);
    --success-bg: var(--theme-success-subtle);
    --success-border: rgba(16, 185, 129, 0.2);
}

/* Main Content & Sidebar Flow */
.main-content-flow[b-zflbuuibdq],
.sidebar-flow[b-zflbuuibdq] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Header Status Badge */
.header-status[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1rem;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 20px;
    color: white;
    font-size: 0.875rem;
    font-weight: 600;
}

.header-status i[b-zflbuuibdq] {
    font-size: 1rem;
}


/* Description Content */
.description-content[b-zflbuuibdq] {
    font-size: 0.9375rem;
    line-height: 1.7;
    color: var(--text-secondary);
}

.description-content p[b-zflbuuibdq] {
    margin-bottom: 1rem;
}

.description-content p:last-child[b-zflbuuibdq] {
    margin-bottom: 0;
}

/* Timeline Grid */
.timeline-grid[b-zflbuuibdq] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

.timeline-item[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.timeline-icon[b-zflbuuibdq] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.timeline-icon.start[b-zflbuuibdq] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.timeline-icon.submitted[b-zflbuuibdq] {
    background: var(--success-bg);
    color: var(--success-color);
}

.timeline-icon.deadline[b-zflbuuibdq] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.timeline-details[b-zflbuuibdq] {
    display: flex;
    flex-direction: column;
}

.timeline-label[b-zflbuuibdq] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 500;
}

.timeline-value[b-zflbuuibdq] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-top: 0.25rem;
}

/* Submission Item */
.submission-item[b-zflbuuibdq] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
}

.submission-icon[b-zflbuuibdq] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.submission-icon.url[b-zflbuuibdq] {
    background: var(--accent-bg);
    color: var(--accent-color);
}

.submission-details[b-zflbuuibdq] {
    flex: 1;
    min-width: 0;
}

.submission-label[b-zflbuuibdq] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 500;
    margin-bottom: 0.375rem;
}

.submission-link[b-zflbuuibdq] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.9375rem;
    color: var(--accent-color);
    text-decoration: none;
    word-break: break-all;
    transition: color 0.2s ease;
}

.submission-link:hover[b-zflbuuibdq] {
    color: var(--accent-dark);
    text-decoration: underline;
}

.submission-link i[b-zflbuuibdq] {
    flex-shrink: 0;
    font-size: 0.875rem;
}

/* Attachments Section */
.attachments-section[b-zflbuuibdq] {
    margin-top: 0.5rem;
}

.section-title[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin: 0 0 1rem;
}

.section-title i[b-zflbuuibdq] {
    color: var(--accent-color);
}

.attachments-list[b-zflbuuibdq] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.attachment-item[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    transition: all 0.2s ease;
}

.attachment-item:hover[b-zflbuuibdq] {
    border-color: var(--accent-border);
    box-shadow: 0 2px 8px rgba(6, 182, 212, 0.1);
}

.attachment-icon[b-zflbuuibdq] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: var(--accent-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.attachment-icon i[b-zflbuuibdq] {
    font-size: 1.25rem;
    color: var(--accent-color);
}

.attachment-info[b-zflbuuibdq] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.attachment-name[b-zflbuuibdq] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
}

.attachment-type[b-zflbuuibdq] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
}

.attachment-action[b-zflbuuibdq] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1rem;
    background: var(--accent-color);
    color: white;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    text-decoration: none;
    transition: all 0.2s ease;
}

.attachment-action:hover[b-zflbuuibdq] {
    background: var(--accent-dark);
    transform: translateY(-1px);
}


/* Action Card */
.action-card .card-content[b-zflbuuibdq] {
    padding: 1.25rem 1.5rem;
}

.action-section[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
}

.action-info[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.action-icon[b-zflbuuibdq] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: var(--accent-bg);
    color: var(--accent-color);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.action-text h4[b-zflbuuibdq] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.action-text p[b-zflbuuibdq] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.action-buttons[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-shrink: 0;
}

.primary-btn[b-zflbuuibdq] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.5rem;
    background: linear-gradient(135deg, var(--accent-color), var(--accent-dark));
    color: white;
    border: none;
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: 0 2px 8px rgba(6, 182, 212, 0.3);
}

.primary-btn:hover[b-zflbuuibdq] {
    transform: translateY(-2px);
    box-shadow: 0 4px 16px rgba(6, 182, 212, 0.4);
}

.secondary-btn[b-zflbuuibdq] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    font-size: 0.9375rem;
    font-weight: 500;
    text-decoration: none;
    cursor: pointer;
    transition: all 0.2s ease;
}

.secondary-btn:hover[b-zflbuuibdq] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

/* Sidebar Card Customization */
[b-zflbuuibdq] .sidebar-card {
    border-radius: 14px;
}

/* Status Card */
.status-card[b-zflbuuibdq] {
    border-color: var(--success-border);
    background: linear-gradient(135deg, var(--success-bg), var(--bg-surface));
}

.status-display[b-zflbuuibdq] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.status-icon[b-zflbuuibdq] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--success-color);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.75rem;
}

.status-info[b-zflbuuibdq] {
    display: flex;
    flex-direction: column;
}

.status-label[b-zflbuuibdq] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.status-value[b-zflbuuibdq] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--success-color);
    margin-top: 0.125rem;
}

/* Steps List */
.steps-list[b-zflbuuibdq] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.step-item[b-zflbuuibdq] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
}

.step-number[b-zflbuuibdq] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8125rem;
    font-weight: 700;
    flex-shrink: 0;
}

.step-item.completed .step-number[b-zflbuuibdq] {
    background: var(--success-color);
    color: white;
}

.step-item.current .step-number[b-zflbuuibdq] {
    background: var(--accent-color);
    color: white;
}

.step-text[b-zflbuuibdq] {
    display: flex;
    flex-direction: column;
}

.step-title[b-zflbuuibdq] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.step-item.current .step-title[b-zflbuuibdq] {
    color: var(--accent-color);
}

.step-item.completed .step-title[b-zflbuuibdq] {
    color: var(--success-color);
}

.step-desc[b-zflbuuibdq] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-top: 0.125rem;
}

.step-item.current .step-desc[b-zflbuuibdq] {
    color: var(--accent-dark);
    font-weight: 500;
}

.step-item.completed .step-desc[b-zflbuuibdq] {
    color: var(--theme-success-emphasis);
}

/* Info List */
.info-list[b-zflbuuibdq] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.info-item[b-zflbuuibdq] {
    display: flex;
    align-items: flex-start;
    gap: 0.625rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

.info-item i[b-zflbuuibdq] {
    color: var(--accent-color);
    font-size: 1rem;
    flex-shrink: 0;
    margin-top: 0.1rem;
}

/* Help Text */
.help-text[b-zflbuuibdq] {
    margin: 0;
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* Responsive Design */
@media (max-width: 768px) {
    .timeline-grid[b-zflbuuibdq] {
        grid-template-columns: 1fr;
    }

    .action-section[b-zflbuuibdq] {
        flex-direction: column;
        text-align: center;
    }

    .action-info[b-zflbuuibdq] {
        flex-direction: column;
    }

    .action-buttons[b-zflbuuibdq] {
        flex-direction: column;
        width: 100%;
    }

    .primary-btn[b-zflbuuibdq],
    .secondary-btn[b-zflbuuibdq] {
        width: 100%;
        justify-content: center;
    }

    .attachment-item[b-zflbuuibdq] {
        flex-direction: column;
        text-align: center;
    }

    .attachment-action[b-zflbuuibdq] {
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .submission-item[b-zflbuuibdq] {
        flex-direction: column;
        text-align: center;
    }
}
/* /Pages/Recruiter/MyReviewQueue.razor.rz.scp.css */
/* ========================================
   My Review Queue Page
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.reviews-page[b-i9w03f9ypv] {
    width: 100%;
    box-sizing: border-box;
}

.reviews-page .content-area[b-i9w03f9ypv] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Pattern moved to centralized app.css */

/* .header-actions - Using centralized styles from app.css (line 4865) */

/* Page-specific header button variants */
.header-btn[b-i9w03f9ypv] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 8px);
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.header-btn:hover[b-i9w03f9ypv] {
    background: var(--bg-surface-tertiary);
}

.header-btn.active[b-i9w03f9ypv] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.header-btn.refresh[b-i9w03f9ypv] {
    padding: 0.625rem;
}

.header-btn.refresh i[b-i9w03f9ypv] {
    font-size: 1.125rem;
}

/* .spin - Using @keyframes spin from app.css (line 4225) */
.spin[b-i9w03f9ypv] {
    animation: spin 1s linear infinite;
}

/* ========================================
   Urgency Summary
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.urgency-summary[b-i9w03f9ypv] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
}

.urgency-card[b-i9w03f9ypv] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.375rem;
    padding: 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg, 12px);
    transition: all 0.2s ease;
}

.urgency-card:hover:not(.empty)[b-i9w03f9ypv] {
    transform: translateY(-2px);
    box-shadow: var(--shadow-md);
}

.urgency-card.empty[b-i9w03f9ypv] {
    opacity: 0.5;
}

.urgency-card i[b-i9w03f9ypv] {
    font-size: 1.5rem;
}

.urgency-card .count[b-i9w03f9ypv] {
    font-size: 1.5rem;
    font-weight: 700;
}

.urgency-card .label[b-i9w03f9ypv] {
    font-size: 0.75rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.urgency-card.critical[b-i9w03f9ypv] {
    border-color: var(--theme-danger);
}

.urgency-card.critical i[b-i9w03f9ypv],
.urgency-card.critical .count[b-i9w03f9ypv] {
    color: var(--theme-danger);
}

.urgency-card.urgent[b-i9w03f9ypv] {
    border-color: var(--theme-warning);
}

.urgency-card.urgent i[b-i9w03f9ypv],
.urgency-card.urgent .count[b-i9w03f9ypv] {
    color: var(--theme-warning);
}

.urgency-card.soon[b-i9w03f9ypv] {
    border-color: var(--theme-info);
}

.urgency-card.soon i[b-i9w03f9ypv],
.urgency-card.soon .count[b-i9w03f9ypv] {
    color: var(--theme-info);
}

.urgency-card.normal i[b-i9w03f9ypv] {
    color: var(--theme-success);
}

.urgency-card.normal .count[b-i9w03f9ypv] {
    color: var(--text-primary);
}

/* ========================================
   Reviews Grid
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.reviews-grid[b-i9w03f9ypv] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
    gap: 1rem;
}

.review-card[b-i9w03f9ypv] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius-lg, 12px);
    overflow: hidden;
    transition: all 0.2s ease;
}

.review-card:hover[b-i9w03f9ypv] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.review-card.overdue[b-i9w03f9ypv] {
    border-color: var(--theme-danger);
    background: rgba(239, 68, 68, 0.02);
}

.review-card.critical[b-i9w03f9ypv] {
    border-left: 4px solid var(--theme-danger);
}

.review-card.urgent[b-i9w03f9ypv] {
    border-left: 4px solid var(--theme-warning);
}

.review-card .card-header[b-i9w03f9ypv] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem 1.25rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.applicant-info[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.applicant-avatar[b-i9w03f9ypv] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: var(--theme-primary);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    flex-shrink: 0;
}

.applicant-avatar.small[b-i9w03f9ypv] {
    width: 36px;
    height: 36px;
    font-size: 0.8125rem;
}

.applicant-details[b-i9w03f9ypv] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.applicant-name[b-i9w03f9ypv] {
    font-weight: 600;
    color: var(--text-primary);
}

.vacancy-name[b-i9w03f9ypv] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.urgency-badge[b-i9w03f9ypv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.urgency-badge.critical[b-i9w03f9ypv],
.urgency-badge.overdue[b-i9w03f9ypv] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.urgency-badge.urgent[b-i9w03f9ypv] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.urgency-badge.soon[b-i9w03f9ypv] {
    background: var(--theme-info-subtle);
    color: var(--theme-info);
}

.urgency-badge.normal[b-i9w03f9ypv] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.review-card .card-body[b-i9w03f9ypv] {
    padding: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: 0.875rem;
}

.stage-info[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.stage-badge[b-i9w03f9ypv] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-radius: 20px;
    font-size: 0.8125rem;
    font-weight: 500;
}

.primary-badge[b-i9w03f9ypv] {
    font-size: 0.6875rem;
    padding: 0.25rem 0.625rem;
    border-radius: 12px;
    background: var(--theme-warning);
    color: white;
    font-weight: 700;
    text-transform: uppercase;
}

.committee-info[b-i9w03f9ypv] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.progress-indicator[b-i9w03f9ypv] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.progress-bar[b-i9w03f9ypv] {
    height: 6px;
    background: var(--border-color);
    border-radius: 3px;
    overflow: hidden;
}

.progress-fill[b-i9w03f9ypv] {
    height: 100%;
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-primary-emphasis));
    border-radius: 3px;
    transition: width 0.3s ease;
}

.progress-text[b-i9w03f9ypv] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.waiting-notice[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
    border-radius: var(--border-radius, 8px);
    font-size: 0.8125rem;
}

.review-meta[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
}

.review-meta span[b-i9w03f9ypv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-muted);
}

.review-card .card-actions[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.review-card .card-actions[b-i9w03f9ypv]  .action-btn {
    flex: 1;
}

.btn-recuse[b-i9w03f9ypv] {
    width: 40px;
    height: 40px;
    border-radius: var(--border-radius, 8px);
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    flex-shrink: 0;
}

.btn-recuse:hover[b-i9w03f9ypv] {
    background: var(--theme-warning-subtle);
    border-color: var(--theme-warning);
    color: var(--theme-warning);
}

/* ========================================
   Completed Reviews
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.completed-list[b-i9w03f9ypv] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.completed-card[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 8px);
    transition: all 0.2s ease;
}

.completed-card:hover[b-i9w03f9ypv] {
    box-shadow: var(--shadow-sm);
}

.completed-info[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex: 1;
    min-width: 0;
}

.review-details[b-i9w03f9ypv] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.review-context[b-i9w03f9ypv] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.decision-info[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.decision-badge[b-i9w03f9ypv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.375rem 0.625rem;
    border-radius: var(--border-radius, 8px);
    font-size: 0.75rem;
    font-weight: 600;
}

.decision-badge.approve[b-i9w03f9ypv] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.decision-badge.reject[b-i9w03f9ypv] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.decision-badge.defer[b-i9w03f9ypv] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.decision-badge.abstain[b-i9w03f9ypv],
.decision-badge.recused[b-i9w03f9ypv] {
    background: var(--theme-gray-subtle);
    color: var(--text-muted);
}

.score-badge[b-i9w03f9ypv] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
}

.completed-date[b-i9w03f9ypv] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    white-space: nowrap;
}

.outcome-badge[b-i9w03f9ypv] {
    font-size: 0.75rem;
    padding: 0.25rem 0.625rem;
    border-radius: 12px;
    font-weight: 500;
}

.outcome-badge.accepted[b-i9w03f9ypv] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.outcome-badge.rejected[b-i9w03f9ypv] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.outcome-badge.pending[b-i9w03f9ypv] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.load-more[b-i9w03f9ypv] {
    display: flex;
    justify-content: center;
    padding: 1rem;
}

.btn-load-more[b-i9w03f9ypv] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 8px);
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-load-more:hover[b-i9w03f9ypv] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

/* ========================================
   Empty State
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Note: Empty state now uses centralized EmptyState component. */

/* ========================================
   Dialog
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.dialog-overlay[b-i9w03f9ypv] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1000;
    padding: 1rem;
}

.dialog-content[b-i9w03f9ypv] {
    background: var(--bg-surface);
    border-radius: var(--border-radius-lg, 12px);
    width: 100%;
    max-width: 450px;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.dialog-header[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.dialog-header h3[b-i9w03f9ypv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    margin: 0;
}

.dialog-header h3 i[b-i9w03f9ypv] {
    color: var(--theme-warning);
}

.dialog-close[b-i9w03f9ypv] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
}

.dialog-close:hover[b-i9w03f9ypv] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.dialog-body[b-i9w03f9ypv] {
    padding: 1.25rem;
    background: var(--bg-surface);
}

.recuse-warning[b-i9w03f9ypv] {
    margin: 0 0 1rem;
    padding: 0.75rem 1rem;
    background: var(--theme-warning-subtle);
    border-radius: var(--border-radius, 8px);
    font-size: 0.875rem;
    color: var(--text-secondary);
    border-left: 3px solid var(--theme-warning);
}

.form-group[b-i9w03f9ypv] {
    margin-bottom: 1rem;
}

.form-label[b-i9w03f9ypv] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.5rem;
}

.form-input[b-i9w03f9ypv] {
    width: 100%;
    padding: 0.75rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius, 8px);
    font-size: 0.875rem;
    color: var(--text-primary);
    background: var(--bg-surface);
}

.form-input:focus[b-i9w03f9ypv] {
    outline: none;
    border-color: var(--theme-primary);
}

.dialog-footer[b-i9w03f9ypv] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   Responsive
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 1024px) {
    .urgency-summary[b-i9w03f9ypv] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .reviews-grid[b-i9w03f9ypv] {
        grid-template-columns: 1fr;
    }

    .completed-card[b-i9w03f9ypv] {
        flex-wrap: wrap;
    }

    .completed-info[b-i9w03f9ypv] {
        width: 100%;
    }

    .decision-info[b-i9w03f9ypv],
    .completed-date[b-i9w03f9ypv],
    .outcome-info[b-i9w03f9ypv] {
        margin-left: calc(36px + 0.75rem);
    }
}

@media (max-width: 480px) {
    .urgency-summary[b-i9w03f9ypv] {
        grid-template-columns: 1fr 1fr;
    }

    .header-btn span[b-i9w03f9ypv] {
        display: none;
    }

    .header-btn[b-i9w03f9ypv] {
        padding: 0.625rem;
    }

    .header-btn.active span[b-i9w03f9ypv] {
        display: inline;
    }
}
/* /Pages/Recruiter/OfferPages/OfferDetail.razor.rz.scp.css */
/* =============================================
   OFFER DETAIL PAGE - Scoped Styles
   Uses CSS variables from theme-core.css
   Dark mode handled automatically
   ============================================= */

/* ============ Layout ============ */
.main-content-flow[b-mg1046eo4x],
.sidebar-flow[b-mg1046eo4x] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* ============ Animations ============ */
@keyframes fadeSlideUp-b-mg1046eo4x {
    from {
        opacity: 0;
        transform: translateY(12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulse-b-mg1046eo4x {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

@keyframes shimmer-b-mg1046eo4x {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}

.animate-in[b-mg1046eo4x] {
    animation: fadeSlideUp-b-mg1046eo4x 0.4s ease-out both;
}

/* ============ Offer Timeline ============ */
.offer-timeline[b-mg1046eo4x] {
    position: relative;
    padding: 0.5rem 0 0.5rem 2rem;
}

.timeline-step[b-mg1046eo4x] {
    position: relative;
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding-bottom: 1.75rem;
}

.timeline-step:last-child[b-mg1046eo4x] {
    padding-bottom: 0;
}

/* Vertical connector line */
.timeline-connector[b-mg1046eo4x] {
    position: absolute;
    left: -2rem;
    top: 2rem;
    bottom: 0;
    width: 2px;
    background: var(--border-color);
    margin-left: 15px;
}

.timeline-step:last-child .timeline-connector[b-mg1046eo4x] {
    display: none;
}

.timeline-step.completed .timeline-connector[b-mg1046eo4x] {
    background: var(--theme-success);
}

.timeline-step.active .timeline-connector[b-mg1046eo4x] {
    background: linear-gradient(180deg, var(--theme-primary) 0%, var(--border-color) 100%);
}

.timeline-step.overdue .timeline-connector[b-mg1046eo4x] {
    background: linear-gradient(180deg, var(--theme-danger) 0%, var(--border-color) 100%);
}

/* Marker circle */
.timeline-marker[b-mg1046eo4x] {
    position: absolute;
    left: -2rem;
    top: 0;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    flex-shrink: 0;
    transition: all 0.3s ease;
    z-index: 1;
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
    border: 2px solid var(--border-color);
}

.timeline-marker.completed[b-mg1046eo4x] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.timeline-marker.success[b-mg1046eo4x] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
    border-color: var(--theme-success);
}

.timeline-marker.danger[b-mg1046eo4x] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
    border-color: var(--theme-danger);
}

.timeline-marker.muted[b-mg1046eo4x] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
    border-color: var(--border-color);
}

.timeline-marker.active[b-mg1046eo4x] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
    animation: pulse-b-mg1046eo4x 2s ease-in-out infinite;
}

.timeline-marker.waiting[b-mg1046eo4x] {
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
    border-color: var(--border-color);
    border-style: dashed;
}

.timeline-marker i[b-mg1046eo4x] {
    font-size: 1rem;
}

/* Timeline content */
.timeline-body[b-mg1046eo4x] {
    flex: 1;
    min-width: 0;
    padding-top: 0.25rem;
}

.timeline-heading[b-mg1046eo4x] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 0.125rem;
}

.timeline-date[b-mg1046eo4x] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.timeline-meta[b-mg1046eo4x] {
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: 0.3px;
}

.timeline-note[b-mg1046eo4x] {
    display: flex;
    align-items: flex-start;
    gap: 0.375rem;
    margin-top: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border-left: 3px solid var(--theme-primary);
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

.timeline-note i[b-mg1046eo4x] {
    flex-shrink: 0;
    margin-top: 0.125rem;
    color: var(--theme-primary);
    font-size: 0.875rem;
}

/* ============ Notes Section ============ */
.notes-content[b-mg1046eo4x] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border-left: 3px solid var(--theme-purple);
    line-height: 1.6;
    color: var(--text-primary);
}

.notes-empty[b-mg1046eo4x] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    color: var(--text-muted);
    font-size: 0.875rem;
}

.notes-empty i[b-mg1046eo4x] {
    font-size: 1.25rem;
    opacity: 0.5;
}

/* ============ Reminders Section ============ */
.reminders-summary[b-mg1046eo4x] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.reminder-count[b-mg1046eo4x] {
    display: flex;
    align-items: baseline;
    gap: 0.5rem;
}

.count-value[b-mg1046eo4x] {
    font-size: 2rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1;
}

.count-label[b-mg1046eo4x] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.reminder-last[b-mg1046eo4x] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.reminder-last i[b-mg1046eo4x] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

/* ============ Applicant Profile ============ */
.applicant-profile[b-mg1046eo4x] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    margin-bottom: 1rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

.applicant-avatar-lg[b-mg1046eo4x] {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    font-weight: 700;
    color: white;
    background: linear-gradient(135deg, var(--theme-primary), var(--theme-primary-emphasis));
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(var(--theme-primary-rgb, 99, 102, 241), 0.25);
}

.applicant-details[b-mg1046eo4x] {
    min-width: 0;
}

.applicant-name[b-mg1046eo4x] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.applicant-id[b-mg1046eo4x] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    font-family: var(--font-mono, monospace);
}

/* ============ Contact List ============ */
.contact-list[b-mg1046eo4x] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.contact-item[b-mg1046eo4x] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0.625rem;
    border-radius: 6px;
    transition: background 0.2s ease;
    font-size: 0.875rem;
    color: var(--text-secondary);
    word-break: break-all;
}

.contact-item:hover[b-mg1046eo4x] {
    background: var(--bg-surface-secondary);
}

.contact-item i[b-mg1046eo4x] {
    font-size: 1.125rem;
    color: var(--theme-primary);
    flex-shrink: 0;
    width: 1.25rem;
    text-align: center;
}

/* ============ Action List ============ */
.action-list[b-mg1046eo4x] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

/* ============ Deposit Details ============ */
.deposit-details[b-mg1046eo4x] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.deposit-row[b-mg1046eo4x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.375rem 0;
}

.deposit-row:not(:last-child)[b-mg1046eo4x] {
    border-bottom: 1px solid var(--border-color);
}

.deposit-label[b-mg1046eo4x] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.deposit-value[b-mg1046eo4x] {
    font-size: 0.875rem;
    color: var(--text-primary);
    font-weight: 500;
}

.deposit-value.highlight[b-mg1046eo4x] {
    font-size: 1rem;
    font-weight: 700;
    color: var(--theme-primary);
}

/* ============ Meta List ============ */
.meta-list[b-mg1046eo4x] {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

.meta-row[b-mg1046eo4x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.25rem 0;
}

.meta-row:not(:last-child)[b-mg1046eo4x] {
    border-bottom: 1px solid var(--border-color);
    padding-bottom: 0.625rem;
}

.meta-label[b-mg1046eo4x] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.meta-value[b-mg1046eo4x] {
    font-size: 0.8125rem;
    color: var(--text-primary);
    font-weight: 500;
}

/* ============ Deposit Confirm (Modal) ============ */
.deposit-confirm-amount[b-mg1046eo4x] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem;
    background: var(--theme-success-subtle);
    border-radius: 10px;
    border: 1px solid var(--theme-success);
}

.deposit-confirm-label[b-mg1046eo4x] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.deposit-confirm-value[b-mg1046eo4x] {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--theme-success);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .offer-timeline[b-mg1046eo4x] {
        padding-left: 1.5rem;
    }

    .timeline-connector[b-mg1046eo4x] {
        left: -1.5rem;
        margin-left: 11px;
    }

    .timeline-marker[b-mg1046eo4x] {
        left: -1.5rem;
        width: 24px;
        height: 24px;
        font-size: 0.75rem;
    }

    .timeline-marker i[b-mg1046eo4x] {
        font-size: 0.75rem;
    }

    .applicant-avatar-lg[b-mg1046eo4x] {
        width: 40px;
        height: 40px;
        font-size: 0.875rem;
    }

    .count-value[b-mg1046eo4x] {
        font-size: 1.5rem;
    }
}

/* ============ Reduced Motion ============ */
@media (prefers-reduced-motion: reduce) {
    .animate-in[b-mg1046eo4x] {
        animation: none;
        opacity: 1;
        transform: none;
    }

    .timeline-marker.active[b-mg1046eo4x] {
        animation: none;
    }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .timeline-note[b-mg1046eo4x],
[data-bs-theme="dark"] .notes-content[b-mg1046eo4x] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
}

[data-bs-theme="dark"] .timeline-marker.muted[b-mg1046eo4x],
[data-bs-theme="dark"] .timeline-marker.waiting[b-mg1046eo4x] {
    background: var(--bg-surface-secondary);
    color: var(--text-muted);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .applicant-profile[b-mg1046eo4x],
[data-bs-theme="dark"] .deposit-row:not(:last-child)[b-mg1046eo4x],
[data-bs-theme="dark"] .meta-row:not(:last-child)[b-mg1046eo4x] {
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .timeline-heading[b-mg1046eo4x],
[data-bs-theme="dark"] .applicant-name[b-mg1046eo4x],
[data-bs-theme="dark"] .count-value[b-mg1046eo4x],
[data-bs-theme="dark"] .deposit-value[b-mg1046eo4x],
[data-bs-theme="dark"] .meta-value[b-mg1046eo4x],
[data-bs-theme="dark"] .notes-content[b-mg1046eo4x] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .timeline-date[b-mg1046eo4x],
[data-bs-theme="dark"] .timeline-meta[b-mg1046eo4x],
[data-bs-theme="dark"] .timeline-note[b-mg1046eo4x],
[data-bs-theme="dark"] .applicant-id[b-mg1046eo4x],
[data-bs-theme="dark"] .count-label[b-mg1046eo4x],
[data-bs-theme="dark"] .reminder-last[b-mg1046eo4x],
[data-bs-theme="dark"] .contact-item[b-mg1046eo4x],
[data-bs-theme="dark"] .deposit-label[b-mg1046eo4x],
[data-bs-theme="dark"] .meta-label[b-mg1046eo4x],
[data-bs-theme="dark"] .notes-empty[b-mg1046eo4x] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .contact-item:hover[b-mg1046eo4x] {
    background: var(--bg-surface-secondary);
}

[data-bs-theme="dark"] .timeline-connector[b-mg1046eo4x] {
    background: var(--border-color);
}
/* /Pages/Recruiter/OfferPages/OffersDashboard.razor.rz.scp.css */
/* ============ Applicant Avatar ============ */
.applicant-avatar[b-ch4jlnyx11] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-on-primary);
    background: var(--theme-primary);
    flex-shrink: 0;
}

/* ============ Status Badges ============ */
.status-badge[b-ch4jlnyx11] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-danger[b-ch4jlnyx11] {
    background: var(--theme-danger-bg);
    color: var(--theme-danger);
}

.status-warning[b-ch4jlnyx11] {
    background: var(--theme-warning-bg);
    color: var(--theme-warning);
}

.status-info[b-ch4jlnyx11] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.status-success[b-ch4jlnyx11] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.status-muted[b-ch4jlnyx11] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Tabs ============ */
.tabs-inline[b-ch4jlnyx11] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-ch4jlnyx11] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-ch4jlnyx11] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-ch4jlnyx11] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-ch4jlnyx11] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.success[b-ch4jlnyx11] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success);
}

.tab-badge.warning[b-ch4jlnyx11] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning);
}

.tab-badge.danger[b-ch4jlnyx11] {
    background: rgba(239, 68, 68, 0.15);
    color: var(--theme-danger);
}

.tab-badge.info[b-ch4jlnyx11] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info);
}

.tab-compact.active .tab-badge.success[b-ch4jlnyx11],
.tab-compact.active .tab-badge.warning[b-ch4jlnyx11],
.tab-compact.active .tab-badge.danger[b-ch4jlnyx11],
.tab-compact.active .tab-badge.info[b-ch4jlnyx11] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

/* ============ Vacancy Selector ============ */
.vacancy-inline[b-ch4jlnyx11] {
    flex: 1 1 auto;
    min-width: 180px;
    max-width: 360px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-ch4jlnyx11] {
    font-size: 1rem;
}

.vacancy-select[b-ch4jlnyx11] {
    flex: 1;
    min-width: 0;
    height: 34px;
    padding: 0 2rem 0 0.75rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.vacancy-select:hover[b-ch4jlnyx11] {
    border-color: var(--theme-primary-emphasis);
}

.vacancy-select:focus[b-ch4jlnyx11] {
    outline: none;
    border-color: var(--theme-primary-emphasis);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

/* ============ Search ============ */
.search-inline[b-ch4jlnyx11] {
    flex: 1;
    min-width: 130px;
    max-width: 260px;
}

.nav-search-box[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-ch4jlnyx11] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-ch4jlnyx11] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-ch4jlnyx11] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-ch4jlnyx11]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-ch4jlnyx11] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ View Toggle ============ */
.view-toggle-inline[b-ch4jlnyx11] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
    flex-shrink: 0;
}

.view-toggle-inline .toggle-btn[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.view-toggle-inline .toggle-btn:hover[b-ch4jlnyx11] {
    color: var(--text-primary);
}

.view-toggle-inline .toggle-btn.active[b-ch4jlnyx11] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-xs);
}

.view-toggle-inline .toggle-btn i[b-ch4jlnyx11] {
    font-size: 1rem;
}

/* ============ Sort ============ */
.sort-inline[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    flex-shrink: 0;
}

.sort-select[b-ch4jlnyx11] {
    height: 34px;
    padding: 0 1.75rem 0 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface-secondary);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.sort-select:hover[b-ch4jlnyx11] {
    border-color: var(--theme-primary);
}

.sort-select:focus[b-ch4jlnyx11] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.sort-dir-btn[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.sort-dir-btn:hover[b-ch4jlnyx11] {
    color: var(--theme-primary);
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.sort-dir-btn i[b-ch4jlnyx11] {
    font-size: 1rem;
}

/* ============ Filter Toggle ============ */
.filter-toggle-btn[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-ch4jlnyx11] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-ch4jlnyx11] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-ch4jlnyx11] {
    font-size: 1rem;
}

.filter-active-dot[b-ch4jlnyx11] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-ch4jlnyx11] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-ch4jlnyx11] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-ch4jlnyx11] {
    font-size: 1rem;
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-ch4jlnyx11] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 140px;
    min-width: 120px;
    max-width: 200px;
}

.advanced-filter-label[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
    line-height: 1;
}

.advanced-filter-label i[b-ch4jlnyx11] {
    font-size: 0.75rem;
}

.adv-filter-select[b-ch4jlnyx11],
.adv-filter-date[b-ch4jlnyx11] {
    height: 30px;
    padding: 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 0;
}

.adv-filter-select[b-ch4jlnyx11] {
    padding-right: 1.75rem;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
}

.adv-filter-select:focus[b-ch4jlnyx11],
.adv-filter-date:focus[b-ch4jlnyx11] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-ch4jlnyx11] {
    display: flex;
    align-items: flex-end;
    gap: 0.375rem;
}

.adv-clear-btn[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 30px;
}

.adv-clear-btn:hover[b-ch4jlnyx11] {
    background: var(--theme-danger);
    color: var(--text-on-primary);
}

/* ============ Inline Alerts ============ */
.inline-alerts[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.inline-alert[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.inline-alert.warning[b-ch4jlnyx11] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.inline-alert.warning i[b-ch4jlnyx11] {
    color: var(--theme-warning);
}

.inline-alert.info[b-ch4jlnyx11] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.inline-alert.info i[b-ch4jlnyx11] {
    color: var(--theme-info);
}

.alert-sep[b-ch4jlnyx11] {
    color: var(--text-secondary);
    margin: 0 0.125rem;
}

.alert-action-btn[b-ch4jlnyx11] {
    margin-left: auto;
    padding: 0.25rem 0.625rem;
    background: transparent;
    border: 1px solid currentColor;
    border-radius: 4px;
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--theme-warning);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.alert-action-btn:hover[b-ch4jlnyx11] {
    background: var(--theme-warning);
    color: var(--text-on-primary);
    border-color: var(--theme-warning);
}

/* ============ Analytics Section ============ */
.analytics-section[b-ch4jlnyx11] {
    margin-bottom: 1rem;
}

.analytics-toggle-btn[b-ch4jlnyx11] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.analytics-toggle-btn:hover[b-ch4jlnyx11] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.analytics-toggle-btn .toggle-icon[b-ch4jlnyx11] {
    font-size: 0.875rem;
    transition: transform 0.2s ease;
}

.analytics-row[b-ch4jlnyx11] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    margin-top: 0.75rem;
}

.analytics-card[b-ch4jlnyx11] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    padding: 1rem;
}

.analytics-card h4[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.875rem;
}

.analytics-card h4 i[b-ch4jlnyx11] {
    font-size: 1rem;
    color: var(--theme-primary);
}

/* Deposit Analytics */
.deposit-analytics[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.deposit-stat[b-ch4jlnyx11] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
}

.deposit-label[b-ch4jlnyx11] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.deposit-value[b-ch4jlnyx11] {
    font-size: 0.875rem;
    font-weight: 700;
}

.deposit-value.success[b-ch4jlnyx11] {
    color: var(--theme-success);
}

.deposit-value.warning[b-ch4jlnyx11] {
    color: var(--theme-warning);
}

.deposit-value.info[b-ch4jlnyx11] {
    color: var(--theme-info);
}

/* Waitlist Analytics */
.waitlist-analytics[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1rem 0;
}

.waitlist-stat-big[b-ch4jlnyx11] {
    font-size: 2.5rem;
    font-weight: 700;
    color: var(--theme-primary);
    line-height: 1;
}

.waitlist-stat-label[b-ch4jlnyx11] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

/* ============ Content Area ============ */
.content-area[b-ch4jlnyx11] {
    min-height: 200px;
}

.table-container[b-ch4jlnyx11] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ Card View ============ */
.offers-grid[b-ch4jlnyx11] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1.25rem;
}

.offer-card[b-ch4jlnyx11] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
}

.offer-card:hover[b-ch4jlnyx11] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.offer-card-header[b-ch4jlnyx11] {
    display: flex;
    justify-content: flex-end;
    flex-wrap: wrap;
    gap: 0.375rem;
    padding: 0.875rem 1rem 0.5rem;
    min-height: 44px;
}

.offer-card-body[b-ch4jlnyx11] {
    padding: 0.5rem 1rem 1rem;
    cursor: pointer;
    flex: 1;
}

.offer-applicant[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    margin-bottom: 0.875rem;
}

.offer-applicant .applicant-avatar[b-ch4jlnyx11] {
    width: 44px;
    height: 44px;
    font-size: 0.9375rem;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
}

.offer-applicant-details[b-ch4jlnyx11] {
    flex: 1;
    min-width: 0;
}

.offer-applicant-name[b-ch4jlnyx11] {
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.offer-adm-number[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-muted);
}

.offer-adm-number i[b-ch4jlnyx11] {
    font-size: 0.75rem;
}

.offer-meta[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    padding-top: 0.5rem;
    border-top: 1px dashed var(--border-color);
}

.offer-meta-item[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.offer-meta-item i[b-ch4jlnyx11] {
    font-size: 0.875rem;
    flex-shrink: 0;
}

.offer-card-footer[b-ch4jlnyx11] {
    display: flex;
    justify-content: flex-start;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.action-btn[b-ch4jlnyx11] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.action-btn:hover[b-ch4jlnyx11] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: var(--text-on-primary);
}

.action-btn.warning:hover[b-ch4jlnyx11] {
    background: var(--theme-warning);
    border-color: var(--theme-warning);
    color: var(--text-on-primary);
}

.action-btn.success:hover[b-ch4jlnyx11] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: var(--text-on-primary);
}

.action-btn i[b-ch4jlnyx11] {
    font-size: 0.875rem;
}

.pagination-wrapper[b-ch4jlnyx11] {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
}

/* ============ List Footer ============ */
.list-footer[b-ch4jlnyx11] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-ch4jlnyx11] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-ch4jlnyx11] {
    color: var(--text-primary);
}

.page-size-selector[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-ch4jlnyx11] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-ch4jlnyx11] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-ch4jlnyx11] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-ch4jlnyx11] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: var(--text-on-primary);
    animation: spin-b-ch4jlnyx11 0.6s linear infinite;
}

@keyframes spin-b-ch4jlnyx11 {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1400px ============ */
@media (max-width: 1400px) {
    .navigation-bar[b-ch4jlnyx11] {
        flex-wrap: wrap;
    }

    .search-inline[b-ch4jlnyx11] {
        max-width: none;
        flex: 1 1 150px;
    }

    .vacancy-inline[b-ch4jlnyx11] {
        max-width: none;
    }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .tab-compact[b-ch4jlnyx11] {
        padding: 0.5rem 0.625rem;
        font-size: 0.75rem;
    }

    .search-inline[b-ch4jlnyx11] {
        flex: 1 1 120px;
        min-width: 100px;
    }

    .vacancy-inline[b-ch4jlnyx11] {
        flex: 1 1 160px;
        min-width: 160px;
    }

    .analytics-row[b-ch4jlnyx11] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-ch4jlnyx11] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-ch4jlnyx11] {
        order: 1;
        flex: 0 0 auto;
        overflow-x: auto;
    }

    .vacancy-inline[b-ch4jlnyx11] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .search-inline[b-ch4jlnyx11] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .view-toggle-inline[b-ch4jlnyx11] {
        order: 4;
    }

    .sort-inline[b-ch4jlnyx11] {
        order: 5;
    }

    .filter-toggle-btn[b-ch4jlnyx11] {
        order: 6;
    }

    .refresh-btn[b-ch4jlnyx11] {
        order: 7;
    }

    .advanced-filters-bar[b-ch4jlnyx11] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-ch4jlnyx11] {
        max-width: none;
        flex: 1 1 100%;
    }

    .list-footer[b-ch4jlnyx11] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-ch4jlnyx11] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .offers-grid[b-ch4jlnyx11] {
        grid-template-columns: 1fr;
    }

    .analytics-row[b-ch4jlnyx11] {
        grid-template-columns: 1fr;
    }

    .bulk-actions-bar[b-ch4jlnyx11] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.5rem;
    }

    .bulk-actions-buttons[b-ch4jlnyx11] {
        flex-wrap: wrap;
    }

    .batch-results-summary[b-ch4jlnyx11] {
        flex-direction: column;
    }

    .batch-result-item[b-ch4jlnyx11] {
        flex-wrap: wrap;
    }

    .batch-result-msg[b-ch4jlnyx11] {
        flex: 1 1 100%;
        margin-left: 1.5rem;
    }
}

/* ============ Card Selection ============ */
.card-select[b-ch4jlnyx11] {
    position: absolute;
    top: 0.5rem;
    left: 0.5rem;
    z-index: 2;
}

.offer-card[b-ch4jlnyx11] {
    position: relative;
}

.offer-card.selected[b-ch4jlnyx11] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.offer-card.selected .offer-card-header[b-ch4jlnyx11] {
    padding-left: 2.5rem;
}

/* ============ Bulk Actions Bar ============ */
.bulk-actions-bar[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--theme-primary-subtle);
    border: 2px solid var(--theme-primary);
    border-radius: 10px;
    margin-bottom: 1rem;
}

.selection-count[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
}

.selection-count i[b-ch4jlnyx11] {
    font-size: 1rem;
}

.bulk-actions-buttons[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.bulk-btn[b-ch4jlnyx11] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.4375rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.bulk-btn:hover[b-ch4jlnyx11] {
    background: var(--bg-hover);
    border-color: var(--text-secondary);
}

.bulk-btn i[b-ch4jlnyx11] {
    font-size: 0.875rem;
}

.bulk-btn.primary[b-ch4jlnyx11] {
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.bulk-btn.primary:hover[b-ch4jlnyx11] {
    background: var(--theme-primary);
    color: var(--text-on-primary);
}

.bulk-btn.warning[b-ch4jlnyx11] {
    color: var(--theme-warning);
    border-color: var(--theme-warning);
}

.bulk-btn.warning:hover[b-ch4jlnyx11] {
    background: var(--theme-warning);
    color: var(--text-on-primary);
}

.bulk-btn.danger[b-ch4jlnyx11] {
    color: var(--theme-danger);
    border-color: var(--theme-danger);
}

.bulk-btn.danger:hover[b-ch4jlnyx11] {
    background: var(--theme-danger);
    color: var(--text-on-primary);
}

/* ============ Batch Modal Body ============ */
.batch-modal-body[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.batch-eligibility-summary[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
}

.batch-eligible[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--theme-success);
}

.batch-skipped[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-muted);
}

.batch-warning-banner[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    background: rgba(239, 68, 68, 0.08);
    border: 1px solid rgba(239, 68, 68, 0.25);
    border-radius: 8px;
    font-size: 0.875rem;
    color: var(--theme-danger);
}

.batch-confirm-text[b-ch4jlnyx11] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    margin: 0;
}

.batch-input-group[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.batch-input-label[b-ch4jlnyx11] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
}

.batch-input[b-ch4jlnyx11] {
    height: 36px;
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    outline: none;
    transition: border-color 0.15s ease;
}

.batch-input:focus[b-ch4jlnyx11] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.batch-textarea[b-ch4jlnyx11] {
    padding: 0.5rem 0.75rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.875rem;
    color: var(--text-primary);
    outline: none;
    resize: vertical;
    font-family: inherit;
    transition: border-color 0.15s ease;
}

.batch-textarea:focus[b-ch4jlnyx11] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

/* ============ Batch Progress ============ */
.batch-progress[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.batch-progress-text[b-ch4jlnyx11] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.batch-progress-bar[b-ch4jlnyx11] {
    height: 8px;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    overflow: hidden;
}

.batch-progress-fill[b-ch4jlnyx11] {
    height: 100%;
    background: var(--theme-primary);
    border-radius: 4px;
    transition: width 0.3s ease;
}

.batch-progress-fill.danger[b-ch4jlnyx11] {
    background: var(--theme-danger);
}

.batch-live-item[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.625rem;
    border-radius: 6px;
    font-size: 0.8125rem;
    animation: fadeIn-b-ch4jlnyx11 0.2s ease;
}

.batch-live-item.success[b-ch4jlnyx11] {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success);
}

.batch-live-item.failed[b-ch4jlnyx11] {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
}

.batch-live-item.skipped[b-ch4jlnyx11] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.batch-live-msg[b-ch4jlnyx11] {
    margin-left: auto;
    font-size: 0.75rem;
    color: var(--text-muted);
}

@keyframes fadeIn-b-ch4jlnyx11 {
    from { opacity: 0; transform: translateY(-4px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============ Batch Results ============ */
.batch-results-summary[b-ch4jlnyx11] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1rem;
}

.batch-stat[b-ch4jlnyx11] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.75rem;
    border-radius: 8px;
    text-align: center;
}

.batch-stat.success[b-ch4jlnyx11] {
    background: rgba(16, 185, 129, 0.08);
    color: var(--theme-success);
}

.batch-stat.failed[b-ch4jlnyx11] {
    background: rgba(239, 68, 68, 0.08);
    color: var(--theme-danger);
}

.batch-stat.skipped[b-ch4jlnyx11] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

.batch-stat i[b-ch4jlnyx11] {
    font-size: 1.25rem;
}

.batch-stat-value[b-ch4jlnyx11] {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
}

.batch-stat-label[b-ch4jlnyx11] {
    font-size: 0.75rem;
    font-weight: 500;
}

.batch-results-list[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
    max-height: 400px;
    overflow-y: auto;
}

.batch-result-item[b-ch4jlnyx11] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    border-radius: 6px;
    font-size: 0.8125rem;
}

.batch-result-item.success[b-ch4jlnyx11] {
    background: rgba(16, 185, 129, 0.06);
}

.batch-result-item.failed[b-ch4jlnyx11] {
    background: rgba(239, 68, 68, 0.06);
}

.batch-result-item.skipped[b-ch4jlnyx11] {
    background: var(--bg-surface-tertiary);
}

.batch-result-item i[b-ch4jlnyx11] {
    font-size: 1rem;
    flex-shrink: 0;
}

.batch-result-item.success i[b-ch4jlnyx11] {
    color: var(--theme-success);
}

.batch-result-item.failed i[b-ch4jlnyx11] {
    color: var(--theme-danger);
}

.batch-result-item.skipped i[b-ch4jlnyx11] {
    color: var(--text-muted);
}

.batch-result-info[b-ch4jlnyx11] {
    display: flex;
    flex-direction: column;
    min-width: 0;
    flex: 1;
}

.batch-result-name[b-ch4jlnyx11] {
    font-weight: 600;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.batch-result-adm[b-ch4jlnyx11] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.batch-result-msg[b-ch4jlnyx11] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    white-space: nowrap;
    margin-left: auto;
    flex-shrink: 0;
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .tabs-inline[b-ch4jlnyx11] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-ch4jlnyx11] {
        display: none;
    }

    .tab-compact[b-ch4jlnyx11] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-ch4jlnyx11] {
        display: none;
    }

    .sort-select[b-ch4jlnyx11] {
        max-width: 80px;
    }

    .vacancy-label span[b-ch4jlnyx11] {
        display: none;
    }

    .offers-grid[b-ch4jlnyx11] {
        grid-template-columns: 1fr;
    }
}

/* ============ Dark Mode ============
   This file is largely token-driven, so most surfaces adapt
   automatically via --bg-surface / --border-color. The block
   below adds explicit overrides for hover states and translucent
   wash backgrounds that need extra contrast in dark mode. */

[data-bs-theme="dark"] .navigation-bar[b-ch4jlnyx11],
[data-bs-theme="dark"] .advanced-filters-bar[b-ch4jlnyx11],
[data-bs-theme="dark"] .analytics-section[b-ch4jlnyx11],
[data-bs-theme="dark"] .analytics-card[b-ch4jlnyx11],
[data-bs-theme="dark"] .content-area[b-ch4jlnyx11],
[data-bs-theme="dark"] .table-container[b-ch4jlnyx11],
[data-bs-theme="dark"] .offer-card[b-ch4jlnyx11],
[data-bs-theme="dark"] .list-footer[b-ch4jlnyx11],
[data-bs-theme="dark"] .batch-modal-body[b-ch4jlnyx11],
[data-bs-theme="dark"] .bulk-actions-bar[b-ch4jlnyx11] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .tabs-inline[b-ch4jlnyx11],
[data-bs-theme="dark"] .table-container thead[b-ch4jlnyx11],
[data-bs-theme="dark"] .nav-search-box[b-ch4jlnyx11],
[data-bs-theme="dark"] .vacancy-select[b-ch4jlnyx11],
[data-bs-theme="dark"] .sort-select[b-ch4jlnyx11],
[data-bs-theme="dark"] .adv-filter-select[b-ch4jlnyx11],
[data-bs-theme="dark"] .adv-filter-date[b-ch4jlnyx11] {
    background: var(--bg-surface-alt);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .results-text[b-ch4jlnyx11],
[data-bs-theme="dark"] .vacancy-label[b-ch4jlnyx11],
[data-bs-theme="dark"] .advanced-filter-label[b-ch4jlnyx11],
[data-bs-theme="dark"] .analytics-toggle-btn[b-ch4jlnyx11],
[data-bs-theme="dark"] .page-size-selector label[b-ch4jlnyx11] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .offer-card:hover[b-ch4jlnyx11],
[data-bs-theme="dark"] .tab-compact:hover[b-ch4jlnyx11] {
    background: var(--bg-surface-alt);
}
/* /Pages/Recruiter/OfferPages/WaitlistManagement.razor.rz.scp.css */
/* ============ Applicant Avatar ============ */
.applicant-avatar[b-dfg49b55ce] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    font-weight: 600;
    color: white;
    background: var(--theme-secondary);
    flex-shrink: 0;
}

.applicant-avatar-lg[b-dfg49b55ce] {
    width: 48px;
    height: 48px;
    font-size: 1rem;
    background: var(--theme-primary);
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ============ Vacancy Selector ============ */
.vacancy-inline[b-dfg49b55ce] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 400px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-dfg49b55ce] {
    font-size: 1rem;
}

.vacancy-select[b-dfg49b55ce] {
    flex: 1;
    min-width: 0;
    height: 34px;
    padding: 0 2rem 0 0.75rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.vacancy-select:hover[b-dfg49b55ce] {
    border-color: var(--theme-primary-emphasis);
}

.vacancy-select:focus[b-dfg49b55ce] {
    outline: none;
    border-color: var(--theme-primary-emphasis);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

/* ============ Search ============ */
.search-inline[b-dfg49b55ce] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-dfg49b55ce] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-dfg49b55ce] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-dfg49b55ce] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-dfg49b55ce]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-dfg49b55ce] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Filter Toggle ============ */
.filter-toggle-btn[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-dfg49b55ce] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-dfg49b55ce] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-dfg49b55ce] {
    font-size: 1rem;
}

.filter-active-dot[b-dfg49b55ce] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-dfg49b55ce] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-dfg49b55ce] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-dfg49b55ce] {
    font-size: 1rem;
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-dfg49b55ce] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-dfg49b55ce] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 140px;
    min-width: 120px;
    max-width: 200px;
}

.advanced-filter-label[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
    line-height: 1;
}

.advanced-filter-label i[b-dfg49b55ce] {
    font-size: 0.75rem;
}

.adv-filter-select[b-dfg49b55ce] {
    height: 30px;
    padding: 0.125rem 1.75rem 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 0;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
}

.adv-filter-select:focus[b-dfg49b55ce] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-dfg49b55ce] {
    display: flex;
    align-items: flex-end;
    gap: 0.375rem;
}

.adv-clear-btn[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 30px;
}

.adv-clear-btn:hover[b-dfg49b55ce] {
    background: var(--theme-danger);
    color: white;
}

/* ============ Content Area ============ */
.content-area[b-dfg49b55ce] {
    min-height: 200px;
}

.table-container[b-dfg49b55ce] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ List Footer ============ */
.list-footer[b-dfg49b55ce] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-dfg49b55ce] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-dfg49b55ce] {
    color: var(--text-primary);
}

.page-size-selector[b-dfg49b55ce] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-dfg49b55ce] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-dfg49b55ce] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-dfg49b55ce] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-dfg49b55ce] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-dfg49b55ce 0.6s linear infinite;
}

@keyframes spin-b-dfg49b55ce {
    to { transform: rotate(360deg); }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-dfg49b55ce] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-dfg49b55ce] {
        max-width: none;
    }

    .search-inline[b-dfg49b55ce] {
        max-width: none;
        flex: 1 1 150px;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-dfg49b55ce] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .vacancy-inline[b-dfg49b55ce] {
        order: 1;
        flex: 1 1 100%;
        max-width: none;
    }

    .search-inline[b-dfg49b55ce] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn[b-dfg49b55ce] {
        order: 3;
    }

    .refresh-btn[b-dfg49b55ce] {
        order: 4;
    }

    .advanced-filters-bar[b-dfg49b55ce] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-dfg49b55ce] {
        max-width: none;
        flex: 1 1 100%;
    }

    .list-footer[b-dfg49b55ce] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-dfg49b55ce] {
        flex-direction: column;
        gap: 0.75rem;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .filter-toggle-btn span[b-dfg49b55ce] {
        display: none;
    }

    .vacancy-label span[b-dfg49b55ce] {
        display: none;
    }
}
/* /Pages/Recruiter/Placements/BatchStageProgression.razor.rz.scp.css */
/* ========================================
   BATCH STAGE PROGRESSION - MODERN DESIGN
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* ========================================
   INLINE ALERT BANNERS
   ======================================== */

.inline-alerts[b-4cr1beix7v] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.inline-alert[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.inline-alert i[b-4cr1beix7v] {
    font-size: 1rem;
    flex-shrink: 0;
}

.inline-alert.warning[b-4cr1beix7v] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.inline-alert.warning i[b-4cr1beix7v] {
    color: var(--theme-warning);
}

.inline-alert.info[b-4cr1beix7v] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.inline-alert.info i[b-4cr1beix7v] {
    color: var(--theme-info);
}

/* ========================================
   NAVIGATION BAR
   ======================================== */

.navigation-bar[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ========================================
   TABS (Stage Filters)
   ======================================== */

.tabs-inline[b-4cr1beix7v] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-4cr1beix7v] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-4cr1beix7v] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-4cr1beix7v] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-4cr1beix7v] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.highlight[b-4cr1beix7v] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.highlight[b-4cr1beix7v] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

.tab-badge.warning[b-4cr1beix7v] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.tab-compact.active .tab-badge.warning[b-4cr1beix7v] {
    background: var(--theme-warning);
    color: var(--text-inverse);
}

.tab-badge.info[b-4cr1beix7v] {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

.tab-compact.active .tab-badge.info[b-4cr1beix7v] {
    background: var(--theme-info);
    color: var(--text-inverse);
}

.tab-badge.success[b-4cr1beix7v] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.success[b-4cr1beix7v] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

/* ========================================
   VACANCY SELECTOR (Inline)
   ======================================== */

.vacancy-inline[b-4cr1beix7v] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 400px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-4cr1beix7v] {
    font-size: 1rem;
}

.vacancy-select[b-4cr1beix7v] {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 2.5rem 0 0.875rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px;
}

.vacancy-select:hover[b-4cr1beix7v] {
    border-color: var(--theme-primary-emphasis);
    background-color: rgba(99, 102, 241, 0.08);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.2);
}

.vacancy-select:focus[b-4cr1beix7v] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.vacancy-select option[b-4cr1beix7v] {
    padding: 0.5rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

/* ========================================
   SEARCH BOX (Inline)
   ======================================== */

.search-inline[b-4cr1beix7v] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-4cr1beix7v] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-4cr1beix7v] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-4cr1beix7v] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-4cr1beix7v]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-4cr1beix7v] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ========================================
   FILTER TOGGLE BUTTON
   ======================================== */

.filter-toggle-btn[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-4cr1beix7v] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-4cr1beix7v] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-4cr1beix7v] {
    font-size: 1rem;
}

.filter-active-dot[b-4cr1beix7v] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-4cr1beix7v] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-4cr1beix7v] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-4cr1beix7v] {
    font-size: 1rem;
}

.spinner-sm[b-4cr1beix7v] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-4cr1beix7v 0.6s linear infinite;
}

@keyframes spin-b-4cr1beix7v {
    to { transform: rotate(360deg); }
}

/* ========================================
   ADVANCED FILTERS BAR (Collapsible)
   ======================================== */

.advanced-filters-bar[b-4cr1beix7v] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-4cr1beix7v] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 160px;
    min-width: 130px;
    max-width: 220px;
}

.advanced-filter-label[b-4cr1beix7v] {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.adv-filter-select[b-4cr1beix7v] {
    padding: 0.375rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8rem;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    outline: none;
    min-width: 120px;
}

.adv-filter-select:focus[b-4cr1beix7v] {
    border-color: var(--theme-primary);
}

.advanced-filter-actions[b-4cr1beix7v] {
    display: flex;
    align-items: flex-end;
    flex: 0 0 auto;
    padding-bottom: 1px;
}

.adv-clear-btn[b-4cr1beix7v] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.adv-clear-btn:hover[b-4cr1beix7v] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.adv-clear-btn i[b-4cr1beix7v] {
    font-size: 0.875rem;
}

/* ========================================
   SELECTION BAR
   ======================================== */

.selection-bar[b-4cr1beix7v] {
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    background: var(--theme-primary-subtle, rgba(var(--theme-primary-rgb, 59, 130, 246), 0.08));
    border: 1px solid var(--theme-primary);
    margin-bottom: 1rem;
}

/* ========================================
   CONTENT AREA & TABLE
   ======================================== */

.content-area[b-4cr1beix7v] {
    margin-bottom: 1rem;
}

.table-container[b-4cr1beix7v] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

.result-badge[b-4cr1beix7v] {
    font-weight: 700;
    color: var(--theme-primary);
}

/* DataGrid Overrides */
[b-4cr1beix7v] .rz-datatable {
    border: none;
}

[b-4cr1beix7v] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-4cr1beix7v] .rz-datatable-data > tr > td {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-4cr1beix7v] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-4cr1beix7v] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   CHOICE BADGE
   ======================================== */

.choice-badge[b-4cr1beix7v] {
    font-size: 0.6875rem;
    font-weight: 700;
    padding: 0.25rem 0.5rem;
    border-radius: 4px;
    text-transform: uppercase;
}

.choice-badge.first[b-4cr1beix7v] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.choice-badge.second[b-4cr1beix7v] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.choice-badge.third[b-4cr1beix7v] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.choice-badge.other[b-4cr1beix7v] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--text-secondary);
}

/* ========================================
   SETTINGS SECTION (Collapsible)
   ======================================== */

.settings-section[b-4cr1beix7v] {
    margin-top: 1rem;
    margin-bottom: 0.5rem;
}

.settings-toggle-btn[b-4cr1beix7v] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.settings-toggle-btn:hover[b-4cr1beix7v] {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
}

.settings-toggle-btn i[b-4cr1beix7v] {
    font-size: 1rem;
}

.settings-toggle-btn .toggle-icon[b-4cr1beix7v] {
    font-size: 0.875rem;
    margin-left: 0.25rem;
}

.settings-content[b-4cr1beix7v] {
    margin-top: 0.75rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.settings-grid[b-4cr1beix7v] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 1rem;
}

.setting-item[b-4cr1beix7v] {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.setting-item-wide[b-4cr1beix7v] {
    grid-column: 1 / -1;
}

.setting-label[b-4cr1beix7v] {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.setting-label i[b-4cr1beix7v] {
    font-size: 0.875rem;
    color: var(--theme-primary);
}

.setting-select[b-4cr1beix7v] {
    padding: 0.5rem 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.setting-select:focus[b-4cr1beix7v] {
    border-color: var(--theme-primary);
}

.setting-textarea[b-4cr1beix7v] {
    padding: 0.5rem 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    outline: none;
    resize: vertical;
    font-family: inherit;
    transition: border-color 0.15s ease;
}

.setting-textarea:focus[b-4cr1beix7v] {
    border-color: var(--theme-primary);
}

.setting-hint[b-4cr1beix7v] {
    font-size: 0.6875rem;
    color: var(--text-muted);
}

.settings-divider[b-4cr1beix7v] {
    height: 1px;
    background: var(--border-color);
    margin: 1rem 0;
}

/* ========================================
   NOTIFICATION OPTIONS
   ======================================== */

.notification-options[b-4cr1beix7v] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.notification-option[b-4cr1beix7v] {
    padding: 0.25rem 0;
}

/* ========================================
   STATS ROW
   ======================================== */

.stats-row[b-4cr1beix7v] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 0.75rem;
}

.stat-card[b-4cr1beix7v] {
    padding: 1rem;
    border-radius: 0.5rem;
    text-align: center;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    transition: transform 0.2s ease;
}

.stat-card:hover[b-4cr1beix7v] {
    transform: translateY(-1px);
}

.stat-value[b-4cr1beix7v] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.stat-label[b-4cr1beix7v] {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

.stat-card.stat-success[b-4cr1beix7v] {
    background: var(--theme-success-bg);
}

.stat-card.stat-success .stat-value[b-4cr1beix7v] {
    color: var(--theme-success);
}

.stat-card.stat-primary[b-4cr1beix7v] {
    background: var(--theme-info-bg);
}

.stat-card.stat-primary .stat-value[b-4cr1beix7v] {
    color: var(--theme-info);
    font-size: 1rem;
}

.stat-card.stat-warning[b-4cr1beix7v] {
    background: var(--theme-warning-bg);
}

.stat-card.stat-warning .stat-value[b-4cr1beix7v] {
    color: var(--theme-warning);
}

.stat-card.stat-danger[b-4cr1beix7v] {
    background: var(--theme-danger-bg);
}

.stat-card.stat-danger .stat-value[b-4cr1beix7v] {
    color: var(--theme-danger);
}

/* ========================================
   TABLE SCROLL & SUMMARY LIST
   ======================================== */

.table-scroll[b-4cr1beix7v] {
    overflow-y: auto;
    border-radius: 0.375rem;
    border: 1px solid var(--border-color);
}

.summary-list[b-4cr1beix7v] {
    display: flex;
    flex-direction: column;
    gap: 0;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.summary-item[b-4cr1beix7v] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.625rem 0;
    border-bottom: 1px solid var(--border-color);
}

.summary-item:last-child[b-4cr1beix7v] {
    border-bottom: none;
}

.summary-label[b-4cr1beix7v] {
    font-size: 0.8rem;
    color: var(--text-secondary);
    font-weight: 500;
}

/* ========================================
   GRID FOOTER (inside RadzenDataGrid)
   ======================================== */

[b-4cr1beix7v] .grid-footer {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    padding: 0.5rem 0;
    white-space: nowrap;
}

[b-4cr1beix7v] .results-text {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

[b-4cr1beix7v] .results-text strong {
    color: var(--text-primary);
}

[b-4cr1beix7v] .page-size-selector {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

[b-4cr1beix7v] .page-size-selector label {
    margin: 0;
    white-space: nowrap;
}

[b-4cr1beix7v] .page-size-selector select {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

[b-4cr1beix7v] .page-size-selector select:focus {
    border-color: var(--theme-primary);
}

/* ========================================
   RESPONSIVE BREAKPOINTS
   ======================================== */

@media (max-width: 1200px) {
    .navigation-bar[b-4cr1beix7v] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-4cr1beix7v] {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }

    .vacancy-label span[b-4cr1beix7v] {
        display: none;
    }

    .search-inline[b-4cr1beix7v] {
        flex: 1 1 150px;
        min-width: 120px;
    }

    .settings-grid[b-4cr1beix7v] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-4cr1beix7v] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-4cr1beix7v] {
        order: 1;
        flex: 0 0 auto;
    }

    .vacancy-inline[b-4cr1beix7v] {
        order: 2;
        flex: 1 1 auto;
        min-width: 200px;
        max-width: none;
    }

    .vacancy-label[b-4cr1beix7v] {
        display: none;
    }

    .search-inline[b-4cr1beix7v] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn span[b-4cr1beix7v] {
        display: none;
    }

    .refresh-btn[b-4cr1beix7v] {
        order: 6;
    }

    .advanced-filters-bar[b-4cr1beix7v] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-4cr1beix7v] {
        max-width: none;
    }

    .settings-grid[b-4cr1beix7v] {
        grid-template-columns: 1fr;
    }

    .stats-row[b-4cr1beix7v] {
        grid-template-columns: repeat(2, 1fr);
    }

    .stat-value[b-4cr1beix7v] {
        font-size: 1.25rem;
    }

    [b-4cr1beix7v] .grid-footer {
        flex-wrap: wrap;
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-4cr1beix7v] {
        flex: 1 1 100%;
        justify-content: center;
        overflow-x: auto;
    }

    .tab-compact span:not(.tab-badge)[b-4cr1beix7v] {
        display: none;
    }

    .tab-compact[b-4cr1beix7v] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-4cr1beix7v] {
        display: none;
    }

    .vacancy-label span[b-4cr1beix7v] {
        display: none;
    }

    .stats-row[b-4cr1beix7v] {
        grid-template-columns: 1fr 1fr;
    }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .navigation-bar[b-4cr1beix7v],
[data-bs-theme="dark"] .table-container[b-4cr1beix7v],
[data-bs-theme="dark"] .settings-content[b-4cr1beix7v],
[data-bs-theme="dark"] .summary-list[b-4cr1beix7v] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .advanced-filters-bar[b-4cr1beix7v] {
    background: var(--bg-surface-secondary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .tabs-inline[b-4cr1beix7v],
[data-bs-theme="dark"] .stat-card[b-4cr1beix7v] {
    background: var(--bg-surface-tertiary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .nav-search-box[b-4cr1beix7v],
[data-bs-theme="dark"] .filter-toggle-btn[b-4cr1beix7v],
[data-bs-theme="dark"] .adv-filter-select[b-4cr1beix7v],
[data-bs-theme="dark"] .setting-select[b-4cr1beix7v],
[data-bs-theme="dark"] .setting-textarea[b-4cr1beix7v],
[data-bs-theme="dark"] .settings-toggle-btn[b-4cr1beix7v] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .stat-value[b-4cr1beix7v],
[data-bs-theme="dark"] .tab-compact.active[b-4cr1beix7v] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .stat-label[b-4cr1beix7v],
[data-bs-theme="dark"] .summary-label[b-4cr1beix7v],
[data-bs-theme="dark"] .setting-hint[b-4cr1beix7v] {
    color: var(--text-muted);
}

[data-bs-theme="dark"] .summary-item[b-4cr1beix7v],
[data-bs-theme="dark"] .settings-divider[b-4cr1beix7v] {
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-4cr1beix7v]  .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-4cr1beix7v]  .rz-datatable-data > tr > td {
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-4cr1beix7v]  .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[data-bs-theme="dark"][b-4cr1beix7v]  .page-size-selector select {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-4cr1beix7v]  .results-text strong {
    color: var(--text-primary);
}
/* /Pages/Recruiter/Placements/PaymentConfirmations.razor.rz.scp.css */
/* ========================================
   PAYMENT CONFIRMATIONS PAGE
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* ========================================
   INLINE ALERT BANNERS
   ======================================== */

.inline-alerts[b-pydsojnc27] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.inline-alert[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.inline-alert i[b-pydsojnc27] {
    font-size: 1rem;
    flex-shrink: 0;
}

.inline-alert.warning[b-pydsojnc27] {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.25);
}

.inline-alert.warning i[b-pydsojnc27] {
    color: var(--theme-warning);
}

.inline-alert.info[b-pydsojnc27] {
    background: rgba(59, 130, 246, 0.08);
    border: 1px solid rgba(59, 130, 246, 0.25);
}

.inline-alert.info i[b-pydsojnc27] {
    color: var(--theme-info);
}

.alert-sep[b-pydsojnc27] {
    color: var(--text-secondary);
    margin: 0 0.125rem;
}

/* ========================================
   NAVIGATION BAR (Combined Tabs + Vacancy + Search + View Toggle)
   ======================================== */

.navigation-bar[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ========================================
   TABS (Inline Status Filters)
   ======================================== */

.tabs-inline[b-pydsojnc27] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-pydsojnc27] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-pydsojnc27] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-pydsojnc27] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-pydsojnc27] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.warning[b-pydsojnc27] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.tab-compact.active .tab-badge.warning[b-pydsojnc27] {
    background: var(--theme-warning);
    color: var(--text-inverse);
}

.tab-badge.success[b-pydsojnc27] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.success[b-pydsojnc27] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

.tab-badge.danger[b-pydsojnc27] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.tab-compact.active .tab-badge.danger[b-pydsojnc27] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

/* ========================================
   VACANCY SELECTOR (Inline)
   ======================================== */

.vacancy-inline[b-pydsojnc27] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 400px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-pydsojnc27] {
    font-size: 1rem;
}

.vacancy-select[b-pydsojnc27] {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 2.5rem 0 0.875rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px;
}

.vacancy-select:hover[b-pydsojnc27] {
    border-color: var(--theme-primary-emphasis);
    background-color: rgba(99, 102, 241, 0.08);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.2);
}

.vacancy-select:focus[b-pydsojnc27] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.vacancy-select option[b-pydsojnc27] {
    padding: 0.5rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

/* ========================================
   SEARCH BOX (Inline)
   ======================================== */

.search-inline[b-pydsojnc27] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-pydsojnc27] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-pydsojnc27] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-pydsojnc27] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-pydsojnc27]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-pydsojnc27] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-pydsojnc27] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ========================================
   VIEW TOGGLE (Inline)
   ======================================== */

.view-toggle-inline[b-pydsojnc27] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
}

.view-toggle-inline .toggle-btn[b-pydsojnc27] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.view-toggle-inline .toggle-btn:hover[b-pydsojnc27] {
    color: var(--text-secondary);
    background: var(--bg-hover);
}

.view-toggle-inline .toggle-btn.active[b-pydsojnc27] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-xs);
}

.view-toggle-inline .toggle-btn i[b-pydsojnc27] {
    font-size: 1rem;
}

/* ========================================
   SORT CONTROLS (Inline)
   ======================================== */

.sort-inline[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.sort-select[b-pydsojnc27] {
    height: 34px;
    padding: 0 1.75rem 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface-secondary);
    font-size: 0.8125rem;
    color: var(--text-primary);
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    outline: none;
    transition: border-color 0.15s ease;
}

.sort-select:focus[b-pydsojnc27] {
    border-color: var(--theme-primary);
}

.sort-dir-btn[b-pydsojnc27] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 30px;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.sort-dir-btn:hover[b-pydsojnc27] {
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.sort-dir-btn i[b-pydsojnc27] {
    font-size: 1rem;
}

/* ========================================
   FILTER TOGGLE BUTTON
   ======================================== */

.filter-toggle-btn[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-pydsojnc27] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-pydsojnc27] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-pydsojnc27] {
    font-size: 1rem;
}

.filter-active-dot[b-pydsojnc27] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

.refresh-btn[b-pydsojnc27] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-pydsojnc27] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-pydsojnc27] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-pydsojnc27] {
    font-size: 1rem;
}

.spinner-sm[b-pydsojnc27] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-pydsojnc27 0.6s linear infinite;
}

@keyframes spin-b-pydsojnc27 {
    to { transform: rotate(360deg); }
}

/* ========================================
   ADVANCED FILTERS BAR (Collapsible)
   ======================================== */

.advanced-filters-bar[b-pydsojnc27] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-pydsojnc27] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 160px;
    min-width: 130px;
    max-width: 220px;
}

.advanced-filter-label[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.advanced-filter-label i[b-pydsojnc27] {
    font-size: 0.875rem;
}

.adv-filter-select[b-pydsojnc27] {
    height: 34px;
    padding: 0 1.75rem 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    color: var(--text-primary);
    cursor: pointer;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    outline: none;
    transition: border-color 0.15s ease;
}

.adv-filter-select:hover[b-pydsojnc27] {
    border-color: var(--theme-primary);
}

.adv-filter-select:focus[b-pydsojnc27] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-pydsojnc27] {
    display: flex;
    align-items: flex-end;
    flex: 0 0 auto;
    padding-bottom: 1px;
}

.adv-clear-btn[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
}

.adv-clear-btn:hover[b-pydsojnc27] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.adv-clear-btn i[b-pydsojnc27] {
    font-size: 0.875rem;
}

/* ========================================
   TABLE VIEW
   ======================================== */

.content-area[b-pydsojnc27] {
    min-height: 200px;
}

.table-container[b-pydsojnc27] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* DataGrid Overrides */
[b-pydsojnc27] .rz-datatable {
    border: none;
}

[b-pydsojnc27] .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
    font-weight: 600;
    color: var(--text-primary);
    padding: 0.875rem 1rem;
    font-size: 0.8125rem;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

[b-pydsojnc27] .rz-datatable-data > tr > td {
    padding: 0.875rem 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-pydsojnc27] .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}

[b-pydsojnc27] .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* Table cell helpers */
.table-student-cell[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
}

.table-student-avatar[b-pydsojnc27] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.75rem;
    flex-shrink: 0;
}

.table-student-info[b-pydsojnc27] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.table-student-name[b-pydsojnc27] {
    font-weight: 500;
    color: var(--text-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.table-student-index[b-pydsojnc27] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.table-amount[b-pydsojnc27] {
    font-weight: 600;
    color: var(--theme-success);
}

.table-currency[b-pydsojnc27] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    margin-right: 0.25rem;
}

.table-monospace[b-pydsojnc27] {
    font-family: 'Courier New', monospace;
    font-size: 0.8125rem;
}

.table-method[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
}

.table-method i[b-pydsojnc27] {
    font-size: 1rem;
    color: var(--text-secondary);
}

.table-date[b-pydsojnc27] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.table-actions[b-pydsojnc27] {
    display: flex;
    gap: 0.375rem;
    justify-content: center;
}

/* ========================================
   STATUS BADGES
   ======================================== */

.status-badge[b-pydsojnc27] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.status-badge.awaiting[b-pydsojnc27] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

.status-badge.approved[b-pydsojnc27] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.status-badge.rejected[b-pydsojnc27] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.status-badge i[b-pydsojnc27] {
    font-size: 0.875rem;
}

/* ========================================
   PROOF-OF-PAYMENT BUTTON
   ======================================== */

.proof-view-btn[b-pydsojnc27] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    color: var(--theme-primary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.proof-view-btn:hover[b-pydsojnc27] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.proof-view-btn i[b-pydsojnc27] {
    font-size: 1rem;
}

.proof-none[b-pydsojnc27] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    font-style: italic;
}

/* ========================================
   CARD VIEW (GRID)
   ======================================== */

.payment-grid[b-pydsojnc27] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    gap: 1.25rem;
}

.payment-card[b-pydsojnc27] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    position: relative;
}

.payment-card.selected[b-pydsojnc27] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--theme-primary-subtle), var(--shadow-md);
}

/* ========================================
   CARD CHECKBOX (Bulk Selection)
   ======================================== */

.card-checkbox[b-pydsojnc27] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    z-index: 2;
}

.card-checkbox input[type="checkbox"][b-pydsojnc27] {
    width: 18px;
    height: 18px;
    cursor: pointer;
    accent-color: var(--theme-primary);
}

/* ========================================
   SELECTED COUNT TEXT (Footer)
   ======================================== */

.selected-text[b-pydsojnc27] {
    color: var(--theme-primary);
    font-weight: 600;
    margin-left: 0.25rem;
}

.payment-card:hover[b-pydsojnc27] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.payment-card-header[b-pydsojnc27] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    padding: 1rem;
    background: var(--bg-surface-tertiary);
    border-bottom: 1px solid var(--border-color);
}

.card-student-info[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
}

.card-student-avatar[b-pydsojnc27] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-emphasis) 100%);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.875rem;
    flex-shrink: 0;
}

.card-student-details[b-pydsojnc27] {
    flex: 1;
    min-width: 0;
}

.card-student-name[b-pydsojnc27] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--text-primary);
    margin: 0 0 0.125rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.card-student-meta[b-pydsojnc27] {
    font-size: 0.75rem;
    color: var(--text-secondary);
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.card-student-meta i[b-pydsojnc27] {
    font-size: 0.875rem;
}

.card-amount[b-pydsojnc27] {
    display: flex;
    align-items: baseline;
    gap: 0.25rem;
    padding: 0.375rem 0.75rem;
    background: var(--theme-success-subtle, rgba(16, 185, 129, 0.08));
    border-radius: 0.375rem;
    margin-left: 3.25rem;
}

.card-amount .currency[b-pydsojnc27] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.card-amount .amount[b-pydsojnc27] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--theme-success);
}

.payment-card-body[b-pydsojnc27] {
    padding: 1rem;
    flex: 1;
}

.card-info-grid[b-pydsojnc27] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.card-info-item[b-pydsojnc27] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.card-info-label[b-pydsojnc27] {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: var(--text-muted);
    font-weight: 500;
}

.card-info-value[b-pydsojnc27] {
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.card-info-value.monospace[b-pydsojnc27] {
    font-family: 'Courier New', monospace;
    font-size: 0.8125rem;
}

.card-proof-section[b-pydsojnc27] {
    margin-top: 0.875rem;
    padding-top: 0.875rem;
    border-top: 1px dashed var(--border-color);
}

.card-proof-label[b-pydsojnc27] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    display: flex;
    align-items: center;
    gap: 0.375rem;
    margin-bottom: 0.5rem;
}

.card-proof-label i[b-pydsojnc27] {
    color: var(--text-secondary);
}

.card-proof-btn[b-pydsojnc27] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    font-size: 0.8125rem;
    color: var(--theme-primary);
    cursor: pointer;
    transition: all 0.15s ease;
}

.card-proof-btn:hover[b-pydsojnc27] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.card-proof-btn i[b-pydsojnc27] {
    font-size: 1rem;
}

.card-no-proof[b-pydsojnc27] {
    font-size: 0.8125rem;
    color: var(--text-muted);
    font-style: italic;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.card-no-proof i[b-pydsojnc27] {
    font-size: 1rem;
}

.payment-card-footer[b-pydsojnc27] {
    display: flex;
    gap: 0.5rem;
    padding: 0.75rem 1rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.payment-card-footer .action-btn[b-pydsojnc27] {
    flex: 1;
}

/* ========================================
   ACTION BUTTONS
   ======================================== */

.action-btn[b-pydsojnc27] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

.action-btn i[b-pydsojnc27] {
    font-size: 1rem;
}

.action-btn:hover[b-pydsojnc27] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

.action-btn.success[b-pydsojnc27] {
    color: var(--theme-success);
    border-color: var(--theme-success-border);
}

.action-btn.success:hover[b-pydsojnc27] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: white;
}

.action-btn.danger[b-pydsojnc27] {
    color: var(--theme-danger);
    border-color: var(--theme-danger-border);
}

.action-btn.danger:hover[b-pydsojnc27] {
    background: var(--theme-danger);
    border-color: var(--theme-danger);
    color: white;
}

.pagination-wrapper[b-pydsojnc27] {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
}

/* ========================================
   LIST FOOTER
   ======================================== */

.list-footer[b-pydsojnc27] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-pydsojnc27] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-pydsojnc27] {
    color: var(--text-primary);
}

.page-size-selector[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-pydsojnc27] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-pydsojnc27] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-pydsojnc27] {
    border-color: var(--theme-primary);
}

/* ========================================
   CONFIRM/REJECT DIALOG
   ======================================== */

.confirm-summary[b-pydsojnc27] {
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 1rem;
}

.summary-row[b-pydsojnc27] {
    display: flex;
    justify-content: space-between;
    padding: 0.375rem 0;
    border-bottom: 1px solid var(--border-color);
}

.summary-row:last-child[b-pydsojnc27] {
    border-bottom: none;
}

.summary-row .label[b-pydsojnc27] {
    color: var(--text-secondary);
    font-size: 0.875rem;
}

.summary-row .value[b-pydsojnc27] {
    font-weight: 500;
    color: var(--text-primary);
}

.summary-row .value.monospace[b-pydsojnc27] {
    font-family: 'Courier New', monospace;
    font-size: 0.8125rem;
}

.amount-highlight[b-pydsojnc27] {
    color: var(--theme-success) !important;
    font-weight: 700 !important;
}

/* ========================================
   RESPONSIVE — NAVIGATION BAR
   ======================================== */

@media (max-width: 1200px) {
    .navigation-bar[b-pydsojnc27] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-pydsojnc27] {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }

    .vacancy-label span[b-pydsojnc27] {
        display: none;
    }

    .search-inline[b-pydsojnc27] {
        flex: 1 1 150px;
        min-width: 120px;
    }

    .payment-grid[b-pydsojnc27] {
        grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-pydsojnc27] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-pydsojnc27] {
        order: 1;
        flex: 0 0 auto;
    }

    .vacancy-inline[b-pydsojnc27] {
        order: 2;
        flex: 1 1 auto;
        min-width: 200px;
        max-width: none;
    }

    .vacancy-label[b-pydsojnc27] {
        display: none;
    }

    .search-inline[b-pydsojnc27] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .view-toggle-inline[b-pydsojnc27] {
        order: 4;
    }

    .sort-inline[b-pydsojnc27] {
        order: 5;
    }

    .filter-toggle-btn[b-pydsojnc27] {
        order: 6;
    }

    .filter-toggle-btn span[b-pydsojnc27] {
        display: none;
    }

    .refresh-btn[b-pydsojnc27] {
        order: 7;
    }

    .advanced-filters-bar[b-pydsojnc27] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-pydsojnc27] {
        max-width: none;
    }

    .payment-grid[b-pydsojnc27] {
        grid-template-columns: 1fr;
    }

    .card-info-grid[b-pydsojnc27] {
        grid-template-columns: 1fr;
    }

    .list-footer[b-pydsojnc27] {
        flex-direction: column;
        gap: 0.75rem;
        align-items: flex-start;
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-pydsojnc27] {
        flex: 1 1 100%;
        justify-content: center;
    }

    .tab-compact span:not(.tab-badge)[b-pydsojnc27] {
        display: none;
    }

    .tab-compact[b-pydsojnc27] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-pydsojnc27] {
        display: none;
    }
}

/* ===== Action Result Banner ===== */
.action-result-banner[b-pydsojnc27] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    border-radius: 8px;
    margin-bottom: 0.75rem;
    animation: bannerSlideIn-b-pydsojnc27 0.35s cubic-bezier(0.16, 1, 0.3, 1);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.action-result-banner.result-success[b-pydsojnc27] {
    background: linear-gradient(135deg, var(--theme-success-subtle), var(--theme-success-subtle));
    border: 1px solid var(--theme-success-text);
    color: var(--theme-success-emphasis);
}

.action-result-banner.result-error[b-pydsojnc27] {
    background: linear-gradient(135deg, var(--theme-danger-subtle), var(--theme-danger-subtle));
    border: 1px solid var(--theme-danger-text);
    color: var(--theme-danger-text);
}

.action-result-banner.result-warning[b-pydsojnc27] {
    background: linear-gradient(135deg, var(--theme-warning-subtle), var(--theme-warning-subtle));
    border: 1px solid var(--theme-warning-text);
    color: var(--theme-warning-text);
}

.action-result-banner.result-info[b-pydsojnc27] {
    background: linear-gradient(135deg, var(--theme-info-subtle), var(--theme-info-subtle));
    border: 1px solid var(--theme-info-text);
    color: var(--theme-info-text);
}

.action-result-content[b-pydsojnc27] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    font-size: 0.875rem;
    font-weight: 500;
}

.action-result-content i[b-pydsojnc27] {
    font-size: 1.125rem;
    flex-shrink: 0;
}

.action-result-close[b-pydsojnc27] {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0.25rem;
    border-radius: 4px;
    color: inherit;
    opacity: 0.6;
    transition: opacity 0.15s;
    display: flex;
    align-items: center;
}

.action-result-close:hover[b-pydsojnc27] {
    opacity: 1;
}

@keyframes bannerSlideIn-b-pydsojnc27 {
    from {
        opacity: 0;
        transform: translateY(-12px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============ Dark Mode ============ */
[data-bs-theme="dark"] .navigation-bar[b-pydsojnc27],
[data-bs-theme="dark"] .table-container[b-pydsojnc27],
[data-bs-theme="dark"] .payment-card[b-pydsojnc27],
[data-bs-theme="dark"] .list-footer[b-pydsojnc27] {
    background: var(--bg-surface);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .advanced-filters-bar[b-pydsojnc27] {
    background: var(--bg-surface-secondary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .payment-card-header[b-pydsojnc27],
[data-bs-theme="dark"] .payment-card-footer[b-pydsojnc27],
[data-bs-theme="dark"] .confirm-summary[b-pydsojnc27],
[data-bs-theme="dark"] .tabs-inline[b-pydsojnc27],
[data-bs-theme="dark"] .view-toggle-inline[b-pydsojnc27] {
    background: var(--bg-surface-tertiary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .nav-search-box[b-pydsojnc27],
[data-bs-theme="dark"] .sort-select[b-pydsojnc27],
[data-bs-theme="dark"] .sort-dir-btn[b-pydsojnc27],
[data-bs-theme="dark"] .filter-toggle-btn[b-pydsojnc27],
[data-bs-theme="dark"] .adv-filter-select[b-pydsojnc27],
[data-bs-theme="dark"] .page-size-selector select[b-pydsojnc27],
[data-bs-theme="dark"] .action-btn[b-pydsojnc27],
[data-bs-theme="dark"] .proof-view-btn[b-pydsojnc27],
[data-bs-theme="dark"] .card-proof-btn[b-pydsojnc27] {
    background: var(--bg-surface-secondary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"] .card-student-name[b-pydsojnc27],
[data-bs-theme="dark"] .table-student-name[b-pydsojnc27],
[data-bs-theme="dark"] .card-info-value[b-pydsojnc27],
[data-bs-theme="dark"] .summary-row .value[b-pydsojnc27],
[data-bs-theme="dark"] .results-text strong[b-pydsojnc27],
[data-bs-theme="dark"] .tab-compact.active[b-pydsojnc27] {
    color: var(--text-primary);
}

[data-bs-theme="dark"] .table-student-index[b-pydsojnc27],
[data-bs-theme="dark"] .card-student-meta[b-pydsojnc27],
[data-bs-theme="dark"] .card-info-label[b-pydsojnc27],
[data-bs-theme="dark"] .table-date[b-pydsojnc27],
[data-bs-theme="dark"] .table-currency[b-pydsojnc27],
[data-bs-theme="dark"] .results-text[b-pydsojnc27],
[data-bs-theme="dark"] .summary-row .label[b-pydsojnc27],
[data-bs-theme="dark"] .alert-sep[b-pydsojnc27],
[data-bs-theme="dark"] .proof-none[b-pydsojnc27],
[data-bs-theme="dark"] .card-no-proof[b-pydsojnc27] {
    color: var(--text-muted);
}

[data-bs-theme="dark"][b-pydsojnc27]  .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    color: var(--text-primary);
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-pydsojnc27]  .rz-datatable-data > tr > td {
    border-color: var(--border-color);
}

[data-bs-theme="dark"][b-pydsojnc27]  .rz-datatable-data > tr:hover {
    background: var(--bg-surface-tertiary);
}
/* /Pages/Recruiter/Placements/PlacementCheckActivity.razor.rz.scp.css */
/* ============================================
   Placement Check Activity Page
   Theme-aligned with shared component patterns
   ============================================ */

/* ============ Navigation Bar ============ */
.navigation-bar[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
    animation: slideDown-b-0a3sbt3ohv 0.3s ease-out;
}

/* ============ Vacancy ============ */
.vacancy-inline[b-0a3sbt3ohv] {
    flex: 1 1 auto;
    min-width: 180px;
    max-width: 360px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-0a3sbt3ohv] {
    font-size: 1rem;
}

.vacancy-select[b-0a3sbt3ohv] {
    flex: 1;
    min-width: 0;
    height: 34px;
    padding: 0 2rem 0 0.75rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 14px;
}

.vacancy-select:hover[b-0a3sbt3ohv] {
    border-color: var(--theme-primary-emphasis);
}

.vacancy-select:focus[b-0a3sbt3ohv] {
    outline: none;
    border-color: var(--theme-primary-emphasis);
    box-shadow: 0 0 0 3px var(--focus-ring-color);
}

/* ============ Search ============ */
.search-inline[b-0a3sbt3ohv] {
    flex: 1;
    min-width: 130px;
    max-width: 260px;
}

.nav-search-box[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-0a3sbt3ohv] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-0a3sbt3ohv] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-0a3sbt3ohv] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-0a3sbt3ohv]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-0a3sbt3ohv] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ View Toggle ============ */
.view-toggle-inline[b-0a3sbt3ohv] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 6px;
    padding: 0.125rem;
    gap: 0.125rem;
    flex-shrink: 0;
}

.view-toggle-inline .toggle-btn[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 28px;
    background: transparent;
    border: none;
    border-radius: 4px;
    color: var(--text-muted);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
}

.view-toggle-inline .toggle-btn:hover[b-0a3sbt3ohv] {
    color: var(--text-primary);
}

.view-toggle-inline .toggle-btn.active[b-0a3sbt3ohv] {
    background: var(--bg-surface);
    color: var(--theme-primary);
    box-shadow: var(--shadow-xs);
}

.view-toggle-inline .toggle-btn i[b-0a3sbt3ohv] {
    font-size: 1rem;
}

/* ============ Filter Toggle Button ============ */
.filter-toggle-btn[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
    position: relative;
}

.filter-toggle-btn:hover[b-0a3sbt3ohv] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-0a3sbt3ohv] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-0a3sbt3ohv] {
    font-size: 1rem;
}

.filter-active-dot[b-0a3sbt3ohv] {
    position: absolute;
    top: 4px;
    right: 4px;
    width: 7px;
    height: 7px;
    background: var(--theme-danger);
    border-radius: 50%;
    border: 1.5px solid var(--bg-surface);
}

/* ============ Refresh Button ============ */
.refresh-btn[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-0a3sbt3ohv] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-0a3sbt3ohv] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-0a3sbt3ohv] {
    font-size: 1rem;
}

/* ============ Advanced Filters Bar ============ */
.advanced-filters-bar[b-0a3sbt3ohv] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.advanced-filter-item[b-0a3sbt3ohv] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    flex: 1 1 140px;
    min-width: 120px;
    max-width: 200px;
}

.advanced-filter-label[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    margin: 0;
    line-height: 1;
}

.advanced-filter-label i[b-0a3sbt3ohv] {
    font-size: 0.75rem;
}

.adv-filter-select[b-0a3sbt3ohv],
.adv-filter-date[b-0a3sbt3ohv] {
    height: 30px;
    padding: 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border: 1px solid var(--border-color);
    border-radius: 5px;
    background: var(--bg-surface);
    color: var(--text-primary);
    min-width: 0;
}

.adv-filter-select[b-0a3sbt3ohv] {
    padding-right: 1.75rem;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.5rem center;
    background-size: 12px;
    cursor: pointer;
}

.adv-filter-select:focus[b-0a3sbt3ohv],
.adv-filter-date:focus[b-0a3sbt3ohv] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.advanced-filter-actions[b-0a3sbt3ohv] {
    display: flex;
    align-items: flex-end;
    gap: 0.375rem;
}

.adv-clear-btn[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.4375rem 0.75rem;
    background: transparent;
    border: 1px solid var(--theme-danger);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--theme-danger);
    cursor: pointer;
    transition: all 0.2s ease;
    white-space: nowrap;
    height: 30px;
}

.adv-clear-btn:hover[b-0a3sbt3ohv] {
    background: var(--theme-danger);
    color: white;
}

/* ============ Status Badges ============ */
.status-badge[b-0a3sbt3ohv] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-merit[b-0a3sbt3ohv] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.status-transferin[b-0a3sbt3ohv] {
    background: var(--theme-info-subtle, rgba(59, 130, 246, 0.1));
    color: var(--theme-info-emphasis);
}

.status-transferout[b-0a3sbt3ohv] {
    background: var(--theme-warning-subtle, rgba(245, 158, 11, 0.1));
    color: var(--theme-warning-emphasis);
}

.status-notconsidered[b-0a3sbt3ohv] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.status-specialconsideration[b-0a3sbt3ohv] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple-emphasis);
}

/* ============ Content Area ============ */
.content-area[b-0a3sbt3ohv] {
    min-height: 200px;
}

.table-container[b-0a3sbt3ohv] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ============ Date Cell ============ */
.date-cell[b-0a3sbt3ohv] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.date-primary[b-0a3sbt3ohv] {
    font-weight: 500;
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.date-secondary[b-0a3sbt3ohv] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* ============ IP Code ============ */
.ip-code[b-0a3sbt3ohv] {
    font-size: 0.75rem;
    padding: 0.125rem 0.375rem;
    background: var(--bg-surface-tertiary);
    border-radius: 4px;
    color: var(--text-secondary);
    font-family: var(--font-mono, monospace);
}

/* ============ Location / Maps Link ============ */
.maps-link[b-0a3sbt3ohv] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    min-width: 22px;
    height: 22px;
    padding: 0 0.375rem;
    border-radius: 4px;
    color: var(--theme-danger);
    background: var(--theme-danger-subtle);
    text-decoration: none;
    flex-shrink: 0;
    transition: var(--sidenav-transition-fast);
    font-size: 0.75rem;
    font-weight: 500;
}

.maps-link:hover[b-0a3sbt3ohv] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

/* ============ Card View ============ */
.check-activity-card-grid[b-0a3sbt3ohv] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
    gap: 1rem;
}

.check-card[b-0a3sbt3ohv] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    padding: 1rem;
    transition: all 0.2s ease;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.check-card:hover[b-0a3sbt3ohv] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.check-card-header[b-0a3sbt3ohv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.check-card-index[b-0a3sbt3ohv] {
    font-weight: 600;
    font-size: 0.9375rem;
    color: var(--text-primary);
}

.check-card-name[b-0a3sbt3ohv] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.check-card-meta[b-0a3sbt3ohv] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    font-size: 0.8125rem;
    color: var(--text-muted);
    padding-top: 0.375rem;
    border-top: 1px dashed var(--border-color);
}

.check-card-meta span[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

.check-card-meta i[b-0a3sbt3ohv] {
    font-size: 0.875rem;
}

.check-card-footer[b-0a3sbt3ohv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding-top: 0.5rem;
    border-top: 1px solid var(--border-color);
}

.pagination-wrapper[b-0a3sbt3ohv] {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
}

/* ============ List Footer ============ */
.list-footer[b-0a3sbt3ohv] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

.footer-left[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

.results-text[b-0a3sbt3ohv] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

.results-text strong[b-0a3sbt3ohv] {
    color: var(--text-primary);
}

.page-size-selector[b-0a3sbt3ohv] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector label[b-0a3sbt3ohv] {
    margin: 0;
    white-space: nowrap;
}

.page-size-selector select[b-0a3sbt3ohv] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

.page-size-selector select:focus[b-0a3sbt3ohv] {
    border-color: var(--theme-primary);
}

/* ============ Spinner ============ */
.spinner-sm[b-0a3sbt3ohv] {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    border-top-color: white;
    animation: spin-b-0a3sbt3ohv 0.6s linear infinite;
}

@keyframes spin-b-0a3sbt3ohv {
    to { transform: rotate(360deg); }
}

@keyframes slideDown-b-0a3sbt3ohv {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* ============ Responsive: 1200px ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-0a3sbt3ohv] {
        flex-wrap: wrap;
    }

    .search-inline[b-0a3sbt3ohv] {
        max-width: none;
        flex: 1 1 150px;
    }

    .vacancy-inline[b-0a3sbt3ohv] {
        max-width: none;
    }
}

/* ============ Responsive: 768px ============ */
@media (max-width: 768px) {
    .navigation-bar[b-0a3sbt3ohv] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .vacancy-inline[b-0a3sbt3ohv] {
        order: 1;
        flex: 1 1 100%;
        max-width: none;
    }

    .search-inline[b-0a3sbt3ohv] {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    .view-toggle-inline[b-0a3sbt3ohv] {
        order: 3;
    }

    .filter-toggle-btn[b-0a3sbt3ohv] {
        order: 4;
    }

    .refresh-btn[b-0a3sbt3ohv] {
        order: 5;
    }

    .advanced-filters-bar[b-0a3sbt3ohv] {
        flex-direction: column;
        align-items: stretch;
    }

    .advanced-filter-item[b-0a3sbt3ohv] {
        max-width: none;
        flex: 1 1 100%;
    }

    .list-footer[b-0a3sbt3ohv] {
        flex-direction: column;
        gap: 0.75rem;
        text-align: center;
    }

    .footer-left[b-0a3sbt3ohv] {
        flex-direction: column;
        gap: 0.75rem;
    }

    .check-activity-card-grid[b-0a3sbt3ohv] {
        grid-template-columns: 1fr;
    }
}

/* ============ Responsive: 480px ============ */
@media (max-width: 480px) {
    .filter-toggle-btn span[b-0a3sbt3ohv] {
        display: none;
    }

    .vacancy-label span[b-0a3sbt3ohv] {
        display: none;
    }

    .check-activity-card-grid[b-0a3sbt3ohv] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Recruiter/Placements/PlacementUploadPage.razor.rz.scp.css */
/* PlacementUploadPage.razor.css
   Dark mode handled automatically via CSS variables from theme-core.css */

.small-text[b-ig9609d8i8] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Upload Zone */
.upload-zone[b-ig9609d8i8] {
    position: relative;
    border: 2px dashed var(--border-color);
    border-radius: 0.5rem;
    text-align: center;
    padding: 2rem 1rem;
    transition: all 0.3s ease;
    cursor: pointer;
    background: var(--bg-surface);
}

.upload-zone:hover[b-ig9609d8i8] {
    border-color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.upload-input[b-ig9609d8i8] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.upload-content[b-ig9609d8i8] {
    pointer-events: none;
}

.upload-content.dragging[b-ig9609d8i8] {
    transform: scale(1.02);
}

.upload-icon[b-ig9609d8i8] {
    font-size: 2.5rem;
    color: var(--theme-primary);
    margin-bottom: 0.5rem;
    display: block;
}

/* File Info */
.file-info[b-ig9609d8i8] {
    padding: 1rem;
    border-radius: 0.5rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
}

.file-icon[b-ig9609d8i8] {
    font-size: 2rem;
    color: var(--theme-success);
    margin-right: 1rem;
}

/* Stats Row */
.stats-row[b-ig9609d8i8] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
    gap: 0.75rem;
}

.stat-card[b-ig9609d8i8] {
    padding: 1rem;
    border-radius: 0.5rem;
    text-align: center;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    transition: transform 0.2s ease;
}

.stat-card:hover[b-ig9609d8i8] {
    transform: translateY(-1px);
}

.stat-value[b-ig9609d8i8] {
    font-size: 1.75rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.2;
}

.stat-label[b-ig9609d8i8] {
    font-size: 0.8rem;
    font-weight: 500;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

/* Stat Card Variants */
.stat-card.stat-success[b-ig9609d8i8] {
    background: var(--theme-success-bg);
}

.stat-card.stat-success .stat-value[b-ig9609d8i8] {
    color: var(--theme-success);
}

.stat-card.stat-primary[b-ig9609d8i8] {
    background: var(--theme-info-bg);
}

.stat-card.stat-primary .stat-value[b-ig9609d8i8] {
    color: var(--theme-info);
}

.stat-card.stat-warning[b-ig9609d8i8] {
    background: var(--theme-warning-bg);
}

.stat-card.stat-warning .stat-value[b-ig9609d8i8] {
    color: var(--theme-warning);
}

.stat-card.stat-purple[b-ig9609d8i8] {
    background: var(--theme-purple);
}

.stat-card.stat-purple .stat-value[b-ig9609d8i8] {
    color: var(--theme-purple-emphasis);
}

.stat-card.stat-danger[b-ig9609d8i8] {
    background: var(--theme-danger-bg);
}

.stat-card.stat-danger .stat-value[b-ig9609d8i8] {
    color: var(--theme-danger);
}

/* Table Scroll */
.table-scroll[b-ig9609d8i8] {
    overflow-y: auto;
    border-radius: 0.375rem;
    border: 1px solid var(--border-color);
}

/* Upload History */
.upload-history[b-ig9609d8i8] {
    display: flex;
    flex-direction: column;
    gap: 0;
}

.history-item[b-ig9609d8i8] {
    padding: 0.75rem 0;
    border-bottom: 1px solid var(--border-color);
}

.history-item:last-child[b-ig9609d8i8] {
    border-bottom: none;
}

.history-item:first-child[b-ig9609d8i8] {
    padding-top: 0;
}

.history-item-clickable[b-ig9609d8i8] {
    cursor: pointer;
    border-radius: 6px;
    margin: 0 -0.5rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    transition: background-color 0.15s ease;
}

.history-item-clickable:hover[b-ig9609d8i8] {
    background-color: var(--bg-surface-tertiary, rgba(0, 0, 0, 0.03));
}

/* Template CTA */
.template-cta[b-ig9609d8i8] {
    text-align: center;
    padding: 0.5rem 0;
}

.template-cta-icon[b-ig9609d8i8] {
    font-size: 2rem;
    color: var(--theme-primary);
    display: block;
    margin-bottom: 0.5rem;
}

/* Empty State */
.empty-icon[b-ig9609d8i8] {
    font-size: 2.5rem;
    color: var(--text-secondary);
    opacity: 0.4;
}

/* Dark mode overrides for hardcoded colors */
:global([data-bs-theme="dark"]) .stat-card.stat-purple[b-ig9609d8i8] {
    background: rgba(139, 92, 246, 0.15);
}

:global([data-bs-theme="dark"]) .stat-card.stat-purple .stat-value[b-ig9609d8i8] {
    color: var(--theme-purple);
}

/* Progress Bar */
.progress-bar-track[b-ig9609d8i8] {
    width: 100%;
    height: 0.75rem;
    background: var(--bg-surface-tertiary);
    border-radius: 0.375rem;
    overflow: hidden;
    border: 1px solid var(--border-color);
}

.progress-bar-fill[b-ig9609d8i8] {
    height: 100%;
    background: linear-gradient(90deg, var(--theme-primary), var(--theme-success));
    border-radius: 0.375rem;
    transition: width 0.5s ease;
    min-width: 0;
}

/* Spin Animation */
.spin-animation[b-ig9609d8i8] {
    display: inline-block;
    animation: spin-b-ig9609d8i8 1.5s linear infinite;
}

@keyframes spin-b-ig9609d8i8 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Dark mode for progress bar */
:global([data-bs-theme="dark"]) .progress-bar-track[b-ig9609d8i8] {
    background: rgba(255, 255, 255, 0.08);
}

/* Responsive */
@media (max-width: 768px) {
    .stats-row[b-ig9609d8i8] {
        grid-template-columns: repeat(2, 1fr);
    }

    .stat-value[b-ig9609d8i8] {
        font-size: 1.25rem;
    }
}

@media (max-width: 576px) {
    .stats-row[b-ig9609d8i8] {
        grid-template-columns: 1fr 1fr;
    }
}

/* Help Modal */
.help-content[b-ig9609d8i8] {
    font-size: 0.875rem;
    line-height: 1.6;
}

.help-section[b-ig9609d8i8] {
    padding-bottom: 1rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--border-color);
}

.help-section:last-child[b-ig9609d8i8] {
    border-bottom: none;
    margin-bottom: 0;
    padding-bottom: 0;
}

.help-section h6[b-ig9609d8i8] {
    font-weight: 600;
    margin-bottom: 0.75rem;
    color: var(--text-primary);
    font-size: 0.95rem;
}

.help-section p[b-ig9609d8i8] {
    margin-bottom: 0.5rem;
    color: var(--text-secondary);
}

.help-section ul[b-ig9609d8i8] {
    padding-left: 1.25rem;
    color: var(--text-secondary);
}

.help-section ul li[b-ig9609d8i8] {
    margin-bottom: 0.25rem;
}

.help-table-scroll[b-ig9609d8i8] {
    overflow-x: auto;
    border-radius: 0.375rem;
    border: 1px solid var(--border-color);
}

.help-table-scroll .table[b-ig9609d8i8] {
    font-size: 0.8rem;
}

/* Consequence Cards */
.help-consequence-card[b-ig9609d8i8] {
    border-radius: 0.5rem;
    overflow: hidden;
    border: 1px solid var(--border-color);
}

.help-consequence-header[b-ig9609d8i8] {
    padding: 0.5rem 0.75rem;
    font-weight: 600;
    font-size: 0.8rem;
    letter-spacing: 0.02em;
}

.help-consequence-body[b-ig9609d8i8] {
    padding: 0.75rem;
}

.help-consequence-types[b-ig9609d8i8] {
    margin-bottom: 0.5rem;
}

.help-consequence-success .help-consequence-header[b-ig9609d8i8] {
    background: var(--theme-success-bg);
    color: var(--theme-success);
}

.help-consequence-success[b-ig9609d8i8] {
    border-color: var(--theme-success-bg);
}

.help-consequence-info .help-consequence-header[b-ig9609d8i8] {
    background: var(--theme-info-bg);
    color: var(--theme-info);
}

.help-consequence-info[b-ig9609d8i8] {
    border-color: var(--theme-info-bg);
}

.help-consequence-muted .help-consequence-header[b-ig9609d8i8] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.help-consequence-muted[b-ig9609d8i8] {
    border-color: var(--border-color);
}

[b-ig9609d8i8] .badge.bg-purple {
    background-color: var(--theme-purple-emphasis) !important;
    color: var(--text-inverse);
}

/* Dark mode overrides for help */
:global([data-bs-theme="dark"]) .help-consequence-success .help-consequence-header[b-ig9609d8i8] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-text);
}

:global([data-bs-theme="dark"]) .help-consequence-info .help-consequence-header[b-ig9609d8i8] {
    background: rgba(59, 130, 246, 0.15);
    color: var(--theme-info-text);
}

:global([data-bs-theme="dark"]) .help-consequence-muted .help-consequence-header[b-ig9609d8i8] {
    background: rgba(255, 255, 255, 0.06);
    color: var(--text-secondary);
}
/* /Pages/Recruiter/RecruiterDashboard.razor.rz.scp.css */
/* RecruiterDashboard - Component Scoped Styles
   Modern interactive dashboard with animations.
   Dark mode handled automatically via CSS variables in app.css. */

/* =============================================
   ANIMATIONS
   ============================================= */

@keyframes fadeSlideUp-b-jp03esqejr {
    from {
        opacity: 0;
        transform: translateY(16px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes pulseGlow-b-jp03esqejr {
    0%, 100% { box-shadow: 0 0 0 0 rgba(26, 179, 148, 0); }
    50% { box-shadow: 0 0 0 4px rgba(26, 179, 148, 0.15); }
}

@keyframes shimmer-b-jp03esqejr {
    0% { background-position: -200% 0; }
    100% { background-position: 200% 0; }
}

/* Staggered entrance animation for KPI cards and sections */
.kpi-animate[b-jp03esqejr] {
    opacity: 0;
    animation: fadeSlideUp-b-jp03esqejr 0.5s cubic-bezier(0.22, 1, 0.36, 1) forwards;
}

/* Content Area */
.content-area[b-jp03esqejr] {
    position: relative;
    min-height: 400px;
}

/* =============================================
   VACANCY SECTION - TOOLBAR
   ============================================= */

.vacancy-toolbar[b-jp03esqejr] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 1rem;
    flex-wrap: wrap;
    margin-bottom: 0.75rem;
}

.vacancy-toolbar-left[b-jp03esqejr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.vacancy-toolbar-right[b-jp03esqejr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.vacancy-section-title[b-jp03esqejr] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-count-chip[b-jp03esqejr] {
    font-size: 0.7rem;
    font-weight: 600;
    color: var(--theme-primary);
    background: var(--theme-primary-subtle);
    padding: 0.2rem 0.6rem;
    border-radius: 100px;
    letter-spacing: 0.02em;
}

/* =============================================
   SEARCH INPUT
   ============================================= */

.vacancy-search-wrapper[b-jp03esqejr] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    background: var(--bg-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 0.5rem;
    padding: 0.375rem 0.75rem;
    transition: all 0.2s ease;
    min-width: 200px;
}

.vacancy-search-wrapper:focus-within[b-jp03esqejr] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
    background: var(--bg-surface);
}

.vacancy-search-input[b-jp03esqejr] {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
    min-width: 120px;
}

.vacancy-search-input[b-jp03esqejr]::placeholder {
    color: var(--text-muted);
}

.vacancy-search-clear[b-jp03esqejr] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    color: var(--text-muted);
    cursor: pointer;
    padding: 0.125rem;
    border-radius: 50%;
    transition: all 0.15s ease;
}

.vacancy-search-clear:hover[b-jp03esqejr] {
    color: var(--theme-danger);
    background: var(--theme-danger-subtle);
}

/* =============================================
   FILTER CHIPS
   ============================================= */

.vacancy-filters[b-jp03esqejr] {
    display: flex;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.filter-chip[b-jp03esqejr] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.35rem 0.75rem;
    border-radius: 100px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    font-size: 0.8rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    user-select: none;
}

.filter-chip:hover[b-jp03esqejr] {
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    background: var(--theme-primary-subtle);
}

.filter-chip.active[b-jp03esqejr] {
    border-color: var(--theme-primary);
    color: var(--text-inverse);
    background: var(--theme-primary);
}

.filter-chip-active.active[b-jp03esqejr] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: var(--text-inverse);
}

.filter-chip-inactive.active[b-jp03esqejr] {
    background: var(--text-muted);
    border-color: var(--text-muted);
    color: var(--text-inverse);
}

.filter-chip-count[b-jp03esqejr] {
    font-size: 0.7rem;
    font-weight: 700;
    background: rgba(255, 255, 255, 0.25);
    padding: 0.05rem 0.4rem;
    border-radius: 100px;
    min-width: 1.2rem;
    text-align: center;
}

.filter-chip:not(.active) .filter-chip-count[b-jp03esqejr] {
    background: var(--bg-tertiary);
    color: var(--text-secondary);
}

/* Dark mode: ensure inactive chips use dark surface, not browser button white */
[data-bs-theme="dark"] .filter-chip[b-jp03esqejr] {
    background: var(--bg-surface-secondary);
    border-color: var(--border-color);
    color: var(--text-secondary);
}

[data-bs-theme="dark"] .filter-chip:hover[b-jp03esqejr] {
    background: var(--theme-primary-subtle);
    border-color: var(--theme-primary);
    color: var(--theme-primary-emphasis);
}

[data-bs-theme="dark"] .filter-chip:not(.active) .filter-chip-count[b-jp03esqejr] {
    background: var(--bg-hover);
    color: var(--text-primary);
}

/* =============================================
   MODERN GRID OVERRIDES
   ============================================= */

[b-jp03esqejr] .vacancy-grid-modern {
    border: none !important;
    border-radius: 0.5rem;
    overflow: hidden;
}

[b-jp03esqejr] .vacancy-grid-modern .rz-datatable-thead > tr > th {
    background: var(--bg-tertiary) !important;
    color: var(--text-secondary) !important;
    font-size: 0.75rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.04em !important;
    padding: 0.625rem 0.75rem !important;
    border-bottom: 2px solid var(--border-color) !important;
    border-top: none !important;
}

[b-jp03esqejr] .vacancy-grid-modern .rz-datatable-tbody > tr > td {
    padding: 0.625rem 0.75rem !important;
    border-bottom: 1px solid var(--border-color) !important;
    vertical-align: middle !important;
    transition: background 0.15s ease;
}

[b-jp03esqejr] .vacancy-grid-modern .rz-datatable-tbody > tr:hover > td {
    background: var(--theme-primary-subtle) !important;
}

[b-jp03esqejr] .vacancy-grid-modern .rz-datatable-tbody > tr {
    cursor: pointer;
}

/* Animated row entrance */
[b-jp03esqejr] .vacancy-grid-modern .vacancy-row-animated {
    animation: fadeSlideUp-b-jp03esqejr 0.35s cubic-bezier(0.22, 1, 0.36, 1) both;
}

/* Pager styling */
[b-jp03esqejr] .vacancy-grid-modern .rz-pager {
    background: var(--bg-surface) !important;
    border-top: 1px solid var(--border-color) !important;
    padding: 0.5rem !important;
}

[b-jp03esqejr] .vacancy-grid-modern .rz-paginator-page.rz-state-active {
    background: var(--theme-primary) !important;
    color: white !important;
    border-radius: 0.375rem;
}

/* =============================================
   VACANCY NAME CELL
   ============================================= */

.vacancy-name-cell[b-jp03esqejr] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.vacancy-name-icon[b-jp03esqejr] {
    width: 32px;
    height: 32px;
    border-radius: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    transition: transform 0.2s ease;
}

.vacancy-name-icon.active[b-jp03esqejr] {
    background: linear-gradient(135deg, var(--theme-success) 0%, var(--theme-success-emphasis) 100%);
}

.vacancy-name-icon.inactive[b-jp03esqejr] {
    background: linear-gradient(135deg, var(--text-muted) 0%, var(--text-muted) 100%);
}

.vacancy-name-cell:hover .vacancy-name-icon[b-jp03esqejr] {
    transform: scale(1.1);
}

.vacancy-name-info[b-jp03esqejr] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.vacancy-name-text[b-jp03esqejr] {
    font-weight: 600;
    font-size: 0.8125rem;
    color: var(--theme-primary);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    transition: color 0.15s ease;
}

.vacancy-name-cell:hover .vacancy-name-text[b-jp03esqejr] {
    color: var(--theme-primary-emphasis);
}

.vacancy-name-dates[b-jp03esqejr] {
    font-size: 0.7rem;
    color: var(--text-muted);
}

/* =============================================
   STATUS PILL
   ============================================= */

.status-pill[b-jp03esqejr] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    font-weight: 600;
    padding: 0.25rem 0.625rem;
    border-radius: 100px;
    white-space: nowrap;
}

.status-pill.status-active[b-jp03esqejr] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.status-pill.status-closed[b-jp03esqejr] {
    background: rgba(156, 163, 175, 0.15);
    color: var(--text-muted);
}

.status-dot[b-jp03esqejr] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    flex-shrink: 0;
}

.active-dot[b-jp03esqejr] {
    background: var(--theme-success);
    animation: pulseGlow-b-jp03esqejr 2s ease-in-out infinite;
}

.closed-dot[b-jp03esqejr] {
    background: var(--text-muted);
}

/* =============================================
   METRIC CELLS
   ============================================= */

.metric-cell[b-jp03esqejr] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.125rem;
}

.metric-value[b-jp03esqejr] {
    font-size: 0.9375rem;
    font-weight: 700;
    line-height: 1.2;
}

.metric-value.govt[b-jp03esqejr] {
    color: var(--theme-success);
}

.metric-value.direct[b-jp03esqejr] {
    color: var(--theme-info);
}

.metric-pct[b-jp03esqejr] {
    font-size: 0.65rem;
    font-weight: 500;
    color: var(--text-muted);
    background: var(--bg-tertiary);
    padding: 0.05rem 0.35rem;
    border-radius: 100px;
}

.metric-total[b-jp03esqejr] {
    font-size: 1rem;
    font-weight: 800;
    color: var(--text-primary);
    background: var(--bg-tertiary);
    padding: 0.15rem 0.625rem;
    border-radius: 0.375rem;
    display: inline-block;
}

/* =============================================
   RATIO / DISTRIBUTION BAR
   ============================================= */

.ratio-bar-wrapper[b-jp03esqejr] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    width: 100%;
    padding: 0 0.25rem;
}

.ratio-bar[b-jp03esqejr] {
    display: flex;
    height: 6px;
    border-radius: 100px;
    overflow: hidden;
    background: var(--bg-tertiary);
}

.ratio-segment[b-jp03esqejr] {
    height: 100%;
    transition: width 0.6s cubic-bezier(0.22, 1, 0.36, 1);
    min-width: 2px;
}

.ratio-segment.govt[b-jp03esqejr] {
    background: linear-gradient(90deg, var(--theme-success), var(--theme-success-emphasis));
    border-radius: 100px 0 0 100px;
}

.ratio-segment.direct[b-jp03esqejr] {
    background: linear-gradient(90deg, var(--theme-info), var(--theme-info-emphasis));
    border-radius: 0 100px 100px 0;
}

.ratio-legend[b-jp03esqejr] {
    display: flex;
    justify-content: space-between;
    font-size: 0.625rem;
    font-weight: 600;
}

.ratio-legend-item.govt[b-jp03esqejr] {
    color: var(--theme-success);
}

.ratio-legend-item.direct[b-jp03esqejr] {
    color: var(--theme-info);
}

/* =============================================
   DEADLINE CELL
   ============================================= */

.deadline-cell[b-jp03esqejr] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    font-size: 0.8125rem;
}

.deadline-remaining[b-jp03esqejr] {
    font-size: 0.675rem;
    font-weight: 600;
    color: var(--text-muted);
}

.deadline-remaining.urgent[b-jp03esqejr] {
    color: var(--theme-danger);
}

.deadline-remaining.soon[b-jp03esqejr] {
    color: var(--theme-warning);
}

.deadline-remaining.expired[b-jp03esqejr] {
    color: var(--theme-danger);
    font-weight: 700;
}

.deadline-open[b-jp03esqejr] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    color: var(--text-muted);
    font-size: 0.8125rem;
}

/* =============================================
   ACTION BUTTON
   ============================================= */

.action-btn[b-jp03esqejr] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 0.5rem;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.action-btn:hover[b-jp03esqejr] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
    transform: translateX(2px);
}

/* =============================================
   RESPONSIVE
   ============================================= */

@media (max-width: 768px) {
    .vacancy-toolbar[b-jp03esqejr] {
        flex-direction: column;
        align-items: stretch;
    }

    .vacancy-toolbar-left[b-jp03esqejr],
    .vacancy-toolbar-right[b-jp03esqejr] {
        justify-content: space-between;
    }

    .vacancy-search-wrapper[b-jp03esqejr] {
        min-width: unset;
        flex: 1;
    }

    .vacancy-filters[b-jp03esqejr] {
        overflow-x: auto;
        flex-wrap: nowrap;
        padding-bottom: 0.25rem;
        -webkit-overflow-scrolling: touch;
    }

    .filter-chip[b-jp03esqejr] {
        flex-shrink: 0;
    }

    .task-item-icon[b-jp03esqejr] {
        width: 36px;
        height: 36px;
    }
}
/* /Pages/Recruiter/Reports/ReportBuilder.razor.rz.scp.css */
.report-builder-page[b-i3jswwb4wv] {
    min-height: 100vh;
    background: var(--bg-body);
}

/* Content Flow Layout */
.main-content-flow[b-i3jswwb4wv] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Steps Indicator */
.steps-indicator[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    padding: 1.5rem;
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
}

.step[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    cursor: pointer;
    opacity: 0.5;
    transition: opacity 0.2s;
}

.step.active[b-i3jswwb4wv],
.step.completed[b-i3jswwb4wv] {
    opacity: 1;
}

.step-number[b-i3jswwb4wv] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 0.9rem;
    color: var(--text-secondary);
}

.step.active .step-number[b-i3jswwb4wv] {
    background: var(--rz-primary);
    color: white;
}

.step.completed .step-number[b-i3jswwb4wv] {
    background: var(--theme-success);
    color: white;
}

.step-label[b-i3jswwb4wv] {
    font-size: 0.9rem;
    font-weight: 500;
    color: var(--text-primary);
}

.step-connector[b-i3jswwb4wv] {
    width: 60px;
    height: 2px;
    background: var(--border-color);
    margin: 0 0.5rem;
}

.step-connector.completed[b-i3jswwb4wv] {
    background: var(--theme-success);
}

/* Step Content */
.step-content[b-i3jswwb4wv] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
}

.step-panel[b-i3jswwb4wv] {
    padding: 2rem;
}

.step-panel h2[b-i3jswwb4wv] {
    margin: 0 0 0.25rem;
    font-size: 1.25rem;
    font-weight: 600;
}

.step-description[b-i3jswwb4wv] {
    margin: 0 0 1.5rem;
    color: var(--text-secondary);
}

/* Data Source Grid */
.datasource-grid[b-i3jswwb4wv] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
}

.datasource-card[b-i3jswwb4wv] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1.25rem;
    border: 2px solid var(--border-color);
    border-radius: 10px;
    cursor: pointer;
    transition: all 0.2s;
    position: relative;
    background: var(--bg-surface);
}

.datasource-card:hover[b-i3jswwb4wv] {
    border-color: var(--rz-primary-lighter);
    background: var(--bg-surface-secondary);
}

.datasource-card.selected[b-i3jswwb4wv] {
    border-color: var(--rz-primary);
    background: var(--theme-primary-subtle);
}

.ds-icon[b-i3jswwb4wv] {
    width: 48px;
    height: 48px;
    background: var(--theme-info-subtle);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.ds-icon i[b-i3jswwb4wv] {
    font-size: 24px;
    color: var(--theme-info-emphasis);
}

.ds-info[b-i3jswwb4wv] {
    flex: 1;
}

.ds-info h4[b-i3jswwb4wv] {
    margin: 0 0 0.25rem;
    font-size: 1rem;
    font-weight: 600;
}

.ds-info p[b-i3jswwb4wv] {
    margin: 0 0 0.5rem;
    font-size: 0.85rem;
    color: var(--text-secondary);
}

.ds-module[b-i3jswwb4wv] {
    font-size: 0.75rem;
    background: var(--bg-surface-secondary);
    padding: 0.2rem 0.5rem;
    border-radius: 4px;
    color: var(--text-secondary);
}

.ds-check[b-i3jswwb4wv] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    color: var(--rz-primary);
    font-size: 20px;
}

/* Column Selection */
.columns-layout[b-i3jswwb4wv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
}

.available-columns[b-i3jswwb4wv],
.selected-columns[b-i3jswwb4wv] {
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    padding: 1rem;
}

.available-columns h3[b-i3jswwb4wv],
.selected-columns h3[b-i3jswwb4wv] {
    margin: 0 0 1rem;
    font-size: 0.95rem;
    font-weight: 600;
}

.search-box[b-i3jswwb4wv] {
    position: relative;
    margin-bottom: 1rem;
}

.search-box i[b-i3jswwb4wv] {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: var(--text-muted);
}

.search-box input[b-i3jswwb4wv] {
    width: 100%;
    padding: 0.6rem 0.75rem 0.6rem 2.25rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.9rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

.field-list[b-i3jswwb4wv] {
    max-height: 400px;
    overflow-y: auto;
}

.field-item[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface);
    border-radius: 6px;
    margin-bottom: 0.5rem;
    cursor: pointer;
    transition: all 0.2s;
}

.field-item:hover[b-i3jswwb4wv] {
    background: var(--theme-info-subtle);
}

.field-item.selected[b-i3jswwb4wv] {
    background: var(--theme-primary-subtle);
    border-left: 3px solid var(--rz-primary);
}

.field-info[b-i3jswwb4wv] {
    flex: 1;
}

.field-name[b-i3jswwb4wv] {
    display: block;
    font-weight: 500;
    font-size: 0.9rem;
}

.field-type[b-i3jswwb4wv] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.field-badges[b-i3jswwb4wv] {
    display: flex;
    gap: 0.25rem;
}

.field-badge[b-i3jswwb4wv] {
    width: 18px;
    height: 18px;
    background: var(--bg-surface-secondary);
    border-radius: 4px;
    font-size: 0.65rem;
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-muted);
}

.field-item i[b-i3jswwb4wv] {
    color: var(--text-muted);
    font-size: 18px;
}

.field-item.selected i[b-i3jswwb4wv] {
    color: var(--rz-primary);
}

.column-list[b-i3jswwb4wv] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.column-item[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface);
    border-radius: 6px;
    border: 1px solid var(--border-color);
}

.drag-handle[b-i3jswwb4wv] {
    color: var(--text-muted);
    cursor: grab;
}

.column-info[b-i3jswwb4wv] {
    flex: 1;
}

.column-name-input[b-i3jswwb4wv] {
    width: 100%;
    border: none;
    background: transparent;
    font-weight: 500;
    font-size: 0.9rem;
    padding: 0;
    color: var(--text-primary);
}

.column-name-input:focus[b-i3jswwb4wv] {
    outline: none;
    background: var(--bg-surface-secondary);
    padding: 0.25rem;
    border-radius: 4px;
}

.column-field[b-i3jswwb4wv] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.remove-btn[b-i3jswwb4wv] {
    width: 28px;
    height: 28px;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.remove-btn:hover[b-i3jswwb4wv] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.empty-columns[b-i3jswwb4wv] {
    text-align: center;
    padding: 2rem;
    color: var(--text-muted);
}

.empty-columns i[b-i3jswwb4wv] {
    font-size: 32px;
    margin-bottom: 0.5rem;
}

/* Filters Section */
.filters-section[b-i3jswwb4wv] {
    max-width: 900px;
}

.filter-list[b-i3jswwb4wv] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.filter-row[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
}

.filter-where[b-i3jswwb4wv] {
    width: 80px;
    font-weight: 500;
    color: var(--text-muted);
}

.filter-value[b-i3jswwb4wv] {
    flex: 1;
    max-width: 180px;
    padding: 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.9rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

.filter-and[b-i3jswwb4wv] {
    color: var(--text-muted);
    font-size: 0.85rem;
}

.add-filter-btn[b-i3jswwb4wv],
.add-sort-btn[b-i3jswwb4wv] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    background: transparent;
    border: 1px dashed var(--border-color);
    border-radius: 6px;
    color: var(--text-muted);
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.2s;
}

.add-filter-btn:hover[b-i3jswwb4wv],
.add-sort-btn:hover[b-i3jswwb4wv] {
    border-color: var(--rz-primary);
    color: var(--rz-primary);
    background: var(--theme-primary-subtle);
}

/* Grouping & Sorting */
.grouping-sorting-layout[b-i3jswwb4wv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 2rem;
}

.grouping-section h3[b-i3jswwb4wv],
.sorting-section h3[b-i3jswwb4wv] {
    margin: 0 0 1rem;
    font-size: 1rem;
    font-weight: 600;
}

.group-fields[b-i3jswwb4wv] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.group-field[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-secondary);
    border-radius: 6px;
    cursor: pointer;
    font-size: 0.9rem;
    transition: all 0.2s;
}

.group-field:hover[b-i3jswwb4wv] {
    background: var(--bg-surface-tertiary);
}

.group-field.selected[b-i3jswwb4wv] {
    background: var(--theme-primary-subtle);
    color: var(--rz-primary);
}

.group-field i[b-i3jswwb4wv] {
    color: var(--rz-primary);
}

.sort-list[b-i3jswwb4wv] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    margin-bottom: 1rem;
}

.sort-row[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Preview Panel */
.preview-panel[b-i3jswwb4wv] {
    min-height: 500px;
}

.preview-header[b-i3jswwb4wv] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.report-details-form[b-i3jswwb4wv] {
    background: var(--bg-surface-secondary);
    padding: 1.5rem;
    border-radius: 10px;
    margin-bottom: 1.5rem;
}

.form-row[b-i3jswwb4wv] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

.form-group[b-i3jswwb4wv] {
    margin-bottom: 1rem;
}

.form-group label[b-i3jswwb4wv] {
    display: block;
    margin-bottom: 0.5rem;
    font-weight: 500;
    font-size: 0.9rem;
}

.form-group input[b-i3jswwb4wv],
.form-group textarea[b-i3jswwb4wv] {
    width: 100%;
    padding: 0.6rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.9rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

.preview-results[b-i3jswwb4wv] {
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
}

.preview-stats[b-i3jswwb4wv] {
    display: flex;
    gap: 1.5rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
    font-size: 0.85rem;
    color: var(--text-muted);
}

.preview-stats span[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.preview-table-container[b-i3jswwb4wv] {
    overflow-x: auto;
    max-height: 400px;
}

.preview-table[b-i3jswwb4wv] {
    width: 100%;
    border-collapse: collapse;
}

.preview-table th[b-i3jswwb4wv],
.preview-table td[b-i3jswwb4wv] {
    padding: 0.75rem 1rem;
    text-align: left;
    border-bottom: 1px solid var(--border-color);
    font-size: 0.9rem;
}

.preview-table th[b-i3jswwb4wv] {
    background: var(--bg-surface-secondary);
    font-weight: 600;
    position: sticky;
    top: 0;
    color: var(--text-primary);
}

.preview-table td[b-i3jswwb4wv] {
    color: var(--text-primary);
}

.preview-table tbody tr:hover[b-i3jswwb4wv] {
    background: var(--bg-surface-secondary);
}

.preview-note[b-i3jswwb4wv] {
    padding: 0.75rem 1rem;
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
    font-size: 0.85rem;
    text-align: center;
}

.preview-error[b-i3jswwb4wv] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1.5rem;
    color: var(--theme-danger-emphasis);
}

.preview-error i[b-i3jswwb4wv] {
    font-size: 24px;
}

.preview-empty[b-i3jswwb4wv] {
    text-align: center;
    padding: 2rem;
    color: var(--text-muted);
}

.preview-empty i[b-i3jswwb4wv] {
    font-size: 32px;
    margin-bottom: 0.5rem;
    display: block;
}

.empty-message[b-i3jswwb4wv] {
    text-align: center;
    padding: 3rem;
    color: var(--text-muted);
}

.empty-message i[b-i3jswwb4wv] {
    font-size: 48px;
    margin-bottom: 1rem;
    display: block;
}

/* Responsive */
@media (max-width: 768px) {
    .columns-layout[b-i3jswwb4wv],
    .grouping-sorting-layout[b-i3jswwb4wv] {
        grid-template-columns: 1fr;
    }

    .form-row[b-i3jswwb4wv] {
        grid-template-columns: 1fr;
    }

    .filter-row[b-i3jswwb4wv] {
        flex-wrap: wrap;
    }

    .steps-indicator[b-i3jswwb4wv] {
        overflow-x: auto;
        justify-content: flex-start;
    }
}
/* /Pages/Recruiter/Reports/ReportSchedules.razor.rz.scp.css */
/* ========================================
   Report Schedules Page
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.schedules-page[b-rv8qel0fs7] {
    min-height: 100vh;
    background: var(--bg-body);
}

/* Content Flow Layout */
.main-content-flow[b-rv8qel0fs7] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

/* Schedules Grid */
.schedules-grid[b-rv8qel0fs7] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    gap: 1.25rem;
}

.schedule-card[b-rv8qel0fs7] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: all 0.2s ease;
}

.schedule-card:hover[b-rv8qel0fs7] {
    box-shadow: var(--shadow-md);
}

.schedule-card.inactive[b-rv8qel0fs7] {
    opacity: 0.7;
}

.card-header[b-rv8qel0fs7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem;
    border-bottom: 1px solid var(--border-color);
}

/* Status badge pattern consolidated in app.css */

.card-actions[b-rv8qel0fs7] {
    display: flex;
    gap: 0.25rem;
}

/* Action button patterns consolidated in app.css */

/* Page-specific action button customizations */
.action-btn[b-rv8qel0fs7] {
    background: transparent;
}

.action-btn:hover[b-rv8qel0fs7] {
    background: var(--bg-surface-tertiary);
}

.action-btn.danger:hover[b-rv8qel0fs7] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.card-body[b-rv8qel0fs7] {
    padding: 1rem;
}

.schedule-name[b-rv8qel0fs7] {
    margin: 0 0 0.5rem;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.report-name[b-rv8qel0fs7] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    margin: 0 0 1rem;
    font-size: 0.9rem;
    color: var(--text-secondary);
}

.schedule-details[b-rv8qel0fs7] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.75rem;
}

.detail-item[b-rv8qel0fs7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.85rem;
    color: var(--text-secondary);
}

.detail-item i[b-rv8qel0fs7] {
    font-size: 16px;
    color: var(--text-muted);
}

.card-footer[b-rv8qel0fs7] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-top: 1px solid var(--border-color);
}

.next-run[b-rv8qel0fs7] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.85rem;
}

.next-label[b-rv8qel0fs7] {
    color: var(--text-muted);
}

.next-time[b-rv8qel0fs7] {
    font-weight: 500;
    color: var(--text-primary);
}

.stats[b-rv8qel0fs7] {
    display: flex;
    gap: 0.75rem;
}

.stat[b-rv8qel0fs7] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.85rem;
}

.stat.success[b-rv8qel0fs7] {
    color: var(--theme-success);
}

.stat.failure[b-rv8qel0fs7] {
    color: var(--theme-danger);
}

.last-run[b-rv8qel0fs7] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.6rem 1rem;
    font-size: 0.8rem;
}

.last-run.success[b-rv8qel0fs7] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.last-run.failure[b-rv8qel0fs7] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

/* Note: Empty state now uses centralized EmptyState component. */

/* Responsive */
@media (max-width: 768px) {
    .schedules-grid[b-rv8qel0fs7] {
        grid-template-columns: 1fr;
    }

    .schedule-details[b-rv8qel0fs7] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Recruiter/Reports/SavedReports.razor.rz.scp.css */
/* ========================================
   Saved Reports Page
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Stats Row - Horizontal layout for summary cards */
.stats-row[b-j9amt0fh1s] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    width: 100%;
}

@media (max-width: 992px) {
    .stats-row[b-j9amt0fh1s] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 576px) {
    .stats-row[b-j9amt0fh1s] {
        grid-template-columns: 1fr;
    }
}

/* Custom search bar layout for Reports (horizontal flex) */
.search-filter-bar[b-j9amt0fh1s] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem;
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
}

.search-section[b-j9amt0fh1s] {
    flex: 1;
}

.filter-section[b-j9amt0fh1s] {
    display: flex;
    gap: 0.75rem;
    align-items: center;
}

/* Reports Grid */
.reports-grid[b-j9amt0fh1s] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(360px, 1fr));
    gap: 1.25rem;
}

.report-card[b-j9amt0fh1s] {
    background: var(--bg-surface);
    border-radius: 12px;
    box-shadow: var(--shadow-sm);
    overflow: hidden;
    transition: all 0.2s ease;
    border: 2px solid transparent;
}

.report-card:hover[b-j9amt0fh1s] {
    box-shadow: var(--shadow-md);
}

.report-card.favorite[b-j9amt0fh1s] {
    border-color: var(--theme-warning);
}

.card-header[b-j9amt0fh1s] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 1rem 1rem 0.5rem;
}

.report-badges[b-j9amt0fh1s] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.badge[b-j9amt0fh1s] {
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.7rem;
    font-weight: 500;
    text-transform: uppercase;
}

.badge.system[b-j9amt0fh1s] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary-emphasis);
}

.badge.scheduled[b-j9amt0fh1s] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.badge.datasource[b-j9amt0fh1s] {
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.card-actions[b-j9amt0fh1s] {
    display: flex;
    gap: 0.25rem;
}

/* Action button patterns consolidated in app.css */

/* Page-specific action button customizations */
.action-btn[b-j9amt0fh1s] {
    background: transparent;
}

.action-btn:hover[b-j9amt0fh1s] {
    background: var(--bg-surface-tertiary);
}

.action-btn.danger:hover[b-j9amt0fh1s] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.favorite-btn.active[b-j9amt0fh1s] {
    color: var(--theme-warning);
}

.favorite-btn.active:hover[b-j9amt0fh1s] {
    background: var(--theme-warning-subtle);
}

.card-body[b-j9amt0fh1s] {
    padding: 0.5rem 1rem 1rem;
    cursor: pointer;
}

.report-name[b-j9amt0fh1s] {
    margin: 0 0 0.5rem;
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.report-description[b-j9amt0fh1s] {
    margin: 0 0 0.75rem;
    font-size: 0.9rem;
    color: var(--text-secondary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.report-meta[b-j9amt0fh1s] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
}

.meta-item[b-j9amt0fh1s] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.8rem;
    color: var(--text-secondary);
}

.meta-item i[b-j9amt0fh1s] {
    font-size: 14px;
}

.card-footer[b-j9amt0fh1s] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.75rem 1rem;
    background: var(--bg-surface-tertiary);
    border-top: 1px solid var(--border-color);
}

.run-stats[b-j9amt0fh1s] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
    font-size: 0.85rem;
    color: var(--text-secondary);
}

/* Responsive */
@media (max-width: 768px) {
    .search-filter-bar[b-j9amt0fh1s] {
        flex-direction: column;
    }

    .reports-grid[b-j9amt0fh1s] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/Recruiter/Settings/AutoDecisionLogs.razor.rz.scp.css */
/* ========================================
   Auto-Decision Logs Page
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Dialog */
.dialog-overlay[b-knmo21uqrn] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
}

.dialog-content[b-knmo21uqrn] {
    background: var(--bg-surface);
    border-radius: 12px;
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

.dialog-content.small[b-knmo21uqrn] {
    max-width: 400px;
}

.dialog-content.medium[b-knmo21uqrn] {
    max-width: 600px;
}

.dialog-content.large[b-knmo21uqrn] {
    max-width: 800px;
}

.dialog-header[b-knmo21uqrn] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.dialog-header h3[b-knmo21uqrn] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
}

.dialog-header h3 i[b-knmo21uqrn] {
    color: var(--theme-primary);
}

.dialog-close[b-knmo21uqrn] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.dialog-close:hover[b-knmo21uqrn] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.dialog-body[b-knmo21uqrn] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
    background: var(--bg-surface);
}

.dialog-footer[b-knmo21uqrn] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

/* Detail Sections */
.detail-section[b-knmo21uqrn] {
    margin-bottom: 1.5rem;
}

.detail-section:last-child[b-knmo21uqrn] {
    margin-bottom: 0;
}

.detail-section h6[b-knmo21uqrn] {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    margin-bottom: 0.75rem;
}

.detail-row[b-knmo21uqrn] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-color);
}

.detail-row:last-child[b-knmo21uqrn] {
    border-bottom: none;
}

.detail-label[b-knmo21uqrn] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.detail-value[b-knmo21uqrn] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    text-align: right;
}

/* Responsive */
@media (max-width: 768px) {
    .dialog-content.medium[b-knmo21uqrn],
    .dialog-content.large[b-knmo21uqrn] {
        max-width: 100%;
    }
}
/* /Pages/Recruiter/Settings/AutoDecisionRules.razor.rz.scp.css */
/* ========================================
   Auto-Decision Rules Page
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Dialog */
.dialog-overlay[b-n8gnyoa8ka] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
}

.dialog-content[b-n8gnyoa8ka] {
    background: var(--bg-surface);
    border-radius: 12px;
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

.dialog-content.large[b-n8gnyoa8ka] {
    max-width: 800px;
}

.dialog-header[b-n8gnyoa8ka] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.dialog-header h3[b-n8gnyoa8ka] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.dialog-header h3 i[b-n8gnyoa8ka] {
    color: var(--theme-primary);
}

.dialog-close[b-n8gnyoa8ka] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.dialog-close:hover[b-n8gnyoa8ka] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.dialog-body[b-n8gnyoa8ka] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
    background: var(--bg-surface);
}

.dialog-footer[b-n8gnyoa8ka] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

/* Form Elements */
.section-title[b-n8gnyoa8ka] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-color);
}

.form-group[b-n8gnyoa8ka] {
    margin-bottom: 1rem;
}

.form-label[b-n8gnyoa8ka] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-check-group[b-n8gnyoa8ka] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.form-check-group[b-n8gnyoa8ka]  .rz-chkbox {
    margin: 0;
}

/* Rules Grid */
.rules-grid[b-n8gnyoa8ka] {
    border: none;
}

.rules-grid[b-n8gnyoa8ka]  .rz-datatable-thead th {
    background: var(--bg-surface-tertiary);
    font-weight: 600;
}

/* Responsive */
@media (max-width: 768px) {
    .dialog-content.large[b-n8gnyoa8ka] {
        max-width: 100%;
    }

    .dialog-body .row[b-n8gnyoa8ka] {
        flex-direction: column;
    }

    .dialog-body .col-md-6[b-n8gnyoa8ka] {
        width: 100%;
    }
}
/* /Pages/Recruiter/Settings/CommitteeSettings.razor.rz.scp.css */
/* ========================================
   Committee Settings Page
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.committee-settings-page[b-fk1iptkgh1] {
    /* Padding removed - handled by .content-page global rule */
}

/* Info Banner */
.info-banner[b-fk1iptkgh1] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    padding: 1rem 1.25rem;
    background: var(--theme-info-subtle);
    border: 1px solid rgba(59, 130, 246, 0.2);
    border-left: 4px solid var(--theme-info);
    border-radius: var(--border-radius, 8px);
}

.info-banner i[b-fk1iptkgh1] {
    font-size: 1.25rem;
    color: var(--theme-info);
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.info-banner strong[b-fk1iptkgh1] {
    display: block;
    color: var(--text-primary);
    margin-bottom: 0.25rem;
}

.info-banner p[b-fk1iptkgh1] {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Config Card */
.config-card[b-fk1iptkgh1] {
    transition: all 0.2s ease;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
}

.config-card:hover[b-fk1iptkgh1] {
    box-shadow: var(--shadow-md);
    transform: translateY(-2px);
}

.config-card.inactive[b-fk1iptkgh1] {
    opacity: 0.7;
}

.config-card .card-header[b-fk1iptkgh1] {
    background: var(--bg-surface-tertiary);
}

.config-card .card-header i[b-fk1iptkgh1] {
    font-size: 1.25rem;
}

.config-details[b-fk1iptkgh1] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.config-row[b-fk1iptkgh1] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.375rem 0;
    border-bottom: 1px solid var(--border-color);
}

.config-row:last-child[b-fk1iptkgh1] {
    border-bottom: none;
}

.config-label[b-fk1iptkgh1] {
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.config-value[b-fk1iptkgh1] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.config-features[b-fk1iptkgh1] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.feature-badge[b-fk1iptkgh1] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    background: var(--bg-surface-tertiary);
    border-radius: 12px;
    font-size: 0.6875rem;
    color: var(--text-muted);
}

.feature-badge i[b-fk1iptkgh1] {
    font-size: 0.75rem;
    color: var(--theme-primary);
}

/* Dialog */
.dialog-overlay[b-fk1iptkgh1] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
    padding: 1rem;
}

.dialog-content[b-fk1iptkgh1] {
    background: var(--bg-surface);
    border-radius: var(--border-radius-lg, 12px);
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
}

.dialog-content.large[b-fk1iptkgh1] {
    max-width: 800px;
}

.dialog-header[b-fk1iptkgh1] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.dialog-header h3[b-fk1iptkgh1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
}

.dialog-header h3 i[b-fk1iptkgh1] {
    color: var(--theme-primary);
}

.dialog-close[b-fk1iptkgh1] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.dialog-close:hover[b-fk1iptkgh1] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.dialog-body[b-fk1iptkgh1] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
    background: var(--bg-surface);
}

.dialog-footer[b-fk1iptkgh1] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

/* Form Elements */
.section-title[b-fk1iptkgh1] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
    margin-bottom: 1rem;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-color);
}

.form-group[b-fk1iptkgh1] {
    margin-bottom: 1rem;
}

.form-label[b-fk1iptkgh1] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    margin-bottom: 0.375rem;
}

.form-check-group[b-fk1iptkgh1] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}

.form-check-group[b-fk1iptkgh1]  .rz-chkbox {
    margin: 0;
}

.text-muted[b-fk1iptkgh1] {
    font-size: 0.75rem;
    display: block;
    margin-top: 0.25rem;
}

/* Responsive */
@media (max-width: 768px) {
    .dialog-content.large[b-fk1iptkgh1] {
        max-width: 100%;
    }

    .dialog-body .row[b-fk1iptkgh1] {
        flex-direction: column;
    }

    .dialog-body .col-md-6[b-fk1iptkgh1] {
        width: 100%;
    }
}
/* /Pages/Recruiter/Settings/LetterTemplateSettings.razor.rz.scp.css */
/* ============ Template Card Actions ============ */
.template-actions[b-szllvofnia] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.5rem;
}

/* ============ Action Dropdown ============ */
.action-dropdown[b-szllvofnia] {
    position: relative;
}

.dropdown-panel[b-szllvofnia] {
    position: absolute;
    right: 0;
    bottom: 100%;
    margin-bottom: 4px;
    min-width: 180px;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.12);
    z-index: 1050;
    padding: 0.375rem 0;
    overflow: hidden;
}

.dropdown-action[b-szllvofnia] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    font-size: 0.8125rem;
    color: var(--text-primary);
    cursor: pointer;
    transition: background 0.15s ease;
    text-align: left;
}

.dropdown-action:hover[b-szllvofnia] {
    background: var(--bg-hover, rgba(0, 0, 0, 0.04));
}

.dropdown-action i[b-szllvofnia] {
    font-size: 1rem;
    width: 1.25rem;
    text-align: center;
    color: var(--text-muted);
    flex-shrink: 0;
}

.dropdown-action:hover i[b-szllvofnia] {
    color: var(--text-primary);
}

.dropdown-action.danger[b-szllvofnia] {
    color: var(--theme-danger);
}

.dropdown-action.danger i[b-szllvofnia] {
    color: var(--theme-danger);
}

.dropdown-action.danger:hover[b-szllvofnia] {
    background: var(--theme-danger-subtle, rgba(220, 53, 69, 0.08));
}

.dropdown-separator[b-szllvofnia] {
    height: 1px;
    background: var(--border-color);
    margin: 0.25rem 0;
}

/* ============ Built-in Template Card ============ */
.built-in-template-card .card-img-top[b-szllvofnia] {
    overflow: hidden;
    border-top-left-radius: inherit;
    border-top-right-radius: inherit;
}
/* /Pages/Recruiter/Settings/RejectedApplicantsList.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

.tabs-inline[b-aja3exe8ln] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

.tab-compact[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.tab-compact:hover[b-aja3exe8ln] {
    color: var(--text-primary);
    background: var(--bg-hover);
}

.tab-compact.active[b-aja3exe8ln] {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

.tab-badge[b-aja3exe8ln] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-aja3exe8ln] {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

.tab-badge.danger[b-aja3exe8ln] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

.tab-compact.active .tab-badge.danger[b-aja3exe8ln] {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

.tab-badge.success[b-aja3exe8ln] {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

.tab-compact.active .tab-badge.success[b-aja3exe8ln] {
    background: var(--theme-success);
    color: var(--text-inverse);
}

/* ============ Vacancy Dropdown ============ */
.vacancy-inline[b-aja3exe8ln] {
    flex: 1 1 auto;
    min-width: 200px;
    max-width: 400px;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.vacancy-label[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
    flex-shrink: 0;
}

.vacancy-label i[b-aja3exe8ln] {
    font-size: 1rem;
}

.vacancy-select[b-aja3exe8ln] {
    flex: 1;
    min-width: 0;
    height: 38px;
    padding: 0 2.5rem 0 0.875rem;
    border: 2px solid var(--theme-primary);
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
    transition: all 0.2s ease;
    appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236366f1' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 0.75rem center;
    background-size: 16px;
}

.vacancy-select:hover[b-aja3exe8ln] {
    border-color: var(--theme-primary-emphasis);
    background-color: rgba(99, 102, 241, 0.08);
    box-shadow: 0 2px 8px rgba(99, 102, 241, 0.2);
}

.vacancy-select:focus[b-aja3exe8ln] {
    outline: none;
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 3px var(--theme-primary-subtle);
}

.vacancy-select option[b-aja3exe8ln] {
    padding: 0.5rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

/* ============ Search ============ */
.search-inline[b-aja3exe8ln] {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

.nav-search-box[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

.nav-search-box:focus-within[b-aja3exe8ln] {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

.nav-search-box i[b-aja3exe8ln] {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

.nav-search-box input[b-aja3exe8ln] {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

.nav-search-box input[b-aja3exe8ln]::placeholder {
    color: var(--text-muted);
}

.nav-search-box .clear-search[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.nav-search-box .clear-search:hover[b-aja3exe8ln] {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ============ Filter Toggle Button ============ */
.filter-toggle-btn[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface-tertiary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

.filter-toggle-btn:hover[b-aja3exe8ln] {
    color: var(--text-primary);
    background: var(--bg-hover);
    border-color: var(--theme-primary);
}

.filter-toggle-btn.active[b-aja3exe8ln] {
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
    border-color: var(--theme-primary);
}

.filter-toggle-btn i[b-aja3exe8ln] {
    font-size: 1rem;
}

/* ============ Refresh Button ============ */
.refresh-btn[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

.refresh-btn:hover:not(:disabled)[b-aja3exe8ln] {
    background: var(--theme-primary-emphasis);
}

.refresh-btn:disabled[b-aja3exe8ln] {
    opacity: 0.5;
    cursor: not-allowed;
}

.refresh-btn i[b-aja3exe8ln] {
    font-size: 1rem;
}

/* ============ Compact Filter Bar ============ */
.filter-bar[b-aja3exe8ln] {
    display: flex;
    align-items: flex-end;
    gap: 0.75rem;
    padding: 0.5rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color);
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.filter-item[b-aja3exe8ln] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

.filter-item label[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.3px;
    white-space: nowrap;
    margin: 0;
    line-height: 1;
}

.filter-item label i[b-aja3exe8ln] {
    font-size: 0.75rem;
}

.filter-item .form-select[b-aja3exe8ln],
.filter-item .form-control[b-aja3exe8ln] {
    height: 30px;
    padding: 0.125rem 0.5rem;
    font-size: 0.8125rem;
    border-radius: 5px;
    min-width: 110px;
}

.filter-item .form-select[b-aja3exe8ln] {
    padding-right: 1.75rem;
}

.filter-actions[b-aja3exe8ln] {
    flex-direction: row;
    align-items: flex-end;
    gap: 0.375rem;
}

/* ============ Dialog ============ */
.dialog-overlay[b-aja3exe8ln] {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5);
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1050;
}

.dialog-content[b-aja3exe8ln] {
    background: var(--bg-surface);
    border-radius: 12px;
    width: 100%;
    max-width: 500px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: var(--shadow-lg);
}

.dialog-content.small[b-aja3exe8ln] {
    max-width: 400px;
}

.dialog-content.medium[b-aja3exe8ln] {
    max-width: 600px;
}

.dialog-content.large[b-aja3exe8ln] {
    max-width: 800px;
}

.dialog-header[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

.dialog-header h3[b-aja3exe8ln] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
}

.dialog-header h3 i[b-aja3exe8ln] {
    color: var(--theme-primary);
}

.dialog-close[b-aja3exe8ln] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: none;
    background: transparent;
    color: var(--text-muted);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
}

.dialog-close:hover[b-aja3exe8ln] {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger);
}

.dialog-body[b-aja3exe8ln] {
    flex: 1;
    overflow-y: auto;
    padding: 1.5rem;
    background: var(--bg-surface);
}

.dialog-footer[b-aja3exe8ln] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}

/* ============ Responsive Breakpoints ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-aja3exe8ln] {
        flex-wrap: wrap;
    }

    .vacancy-inline[b-aja3exe8ln] {
        flex: 1 1 auto;
        min-width: 180px;
        max-width: none;
    }

    .vacancy-label span[b-aja3exe8ln] {
        display: none;
    }

    .search-inline[b-aja3exe8ln] {
        flex: 1 1 150px;
        min-width: 120px;
    }
}

@media (max-width: 768px) {
    .navigation-bar[b-aja3exe8ln] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .tabs-inline[b-aja3exe8ln] {
        order: 1;
        flex: 0 0 auto;
    }

    .vacancy-inline[b-aja3exe8ln] {
        order: 2;
        flex: 1 1 auto;
        min-width: 200px;
        max-width: none;
    }

    .vacancy-label[b-aja3exe8ln] {
        display: none;
    }

    .search-inline[b-aja3exe8ln] {
        order: 3;
        flex: 1 1 100%;
        max-width: none;
    }

    .filter-toggle-btn[b-aja3exe8ln] {
        order: 4;
    }

    .refresh-btn[b-aja3exe8ln] {
        order: 5;
    }

    .filter-bar[b-aja3exe8ln] {
        flex-direction: column;
        align-items: stretch;
    }

    .filter-item .form-select[b-aja3exe8ln],
    .filter-item .form-control[b-aja3exe8ln] {
        min-width: 100%;
    }
}

@media (max-width: 576px) {
    .dialog-content.medium[b-aja3exe8ln],
    .dialog-content.large[b-aja3exe8ln] {
        max-width: 100%;
    }
}

@media (max-width: 480px) {
    .tabs-inline[b-aja3exe8ln] {
        flex: 1 1 100%;
        justify-content: center;
    }

    .tab-compact span:not(.tab-badge)[b-aja3exe8ln] {
        display: none;
    }

    .tab-compact[b-aja3exe8ln] {
        padding: 0.5rem 0.625rem;
    }

    .filter-toggle-btn span[b-aja3exe8ln] {
        display: none;
    }
}
/* /Pages/Recruiter/StudentPages/StudentCreate.razor.rz.scp.css */
/* StudentCreate uses shared .detail-card and .form-section styles
   from bootstrap-theme.css (Section 33.5).
   Only page-specific overrides go here. */

/* Compact row spacing for all form cards */
[b-3cr99nm522] .detail-card-body .row.g-3 {
    --bs-gutter-y: 0.25rem !important;
}

/* Validation error summary banner */
[b-3cr99nm522] .validation-summary {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 1rem;
    margin-bottom: 0.75rem;
    background: var(--danger-bg);
    border: 1px solid var(--danger-border);
    border-radius: 0.5rem;
    color: var(--danger-text);
    font-size: 0.8125rem;
}

[b-3cr99nm522] .validation-summary i {
    font-size: 1rem;
    flex-shrink: 0;
}

/* Dark mode */
@media (prefers-color-scheme: dark) {
    [b-3cr99nm522] .validation-summary {
        background: rgba(239, 68, 68, 0.1);
        border-color: rgba(239, 68, 68, 0.3);
        color: var(--theme-danger-text);
    }
}
/* /Pages/Recruiter/StudentPages/StudentDetail.razor.rz.scp.css */
/* ========================================
   StudentDetail - Modern Styling
   Matches ApplicationDetail pattern
   ======================================== */

/* Compact 4-column info grid (CLAUDE.md: Compact Detail/Form Pages standard).
   Responsive: 4col → 3col (1200) → 2col (768) → 1col (480). */
[b-r7cx8z79d7] .info-grid-4col {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.25rem 1.25rem;
}

@media (max-width: 1200px) {
    [b-r7cx8z79d7] .info-grid-4col { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 768px) {
    [b-r7cx8z79d7] .info-grid-4col { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 480px) {
    [b-r7cx8z79d7] .info-grid-4col { grid-template-columns: 1fr; }
}


/* ========================================
   Student Avatar Badge (Header)
   ======================================== */

[b-r7cx8z79d7] .student-avatar-badge {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.2);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.875rem;
    letter-spacing: 0.5px;
    flex-shrink: 0;
    margin-right: 0.25rem;
    overflow: hidden;
    transition: opacity 0.15s ease;
}

[b-r7cx8z79d7] .student-avatar-badge:hover {
    opacity: 0.85;
}

[b-r7cx8z79d7] .student-avatar-badge img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 8px;
}

/* ========================================
   Status Badges (Header)
   ======================================== */

[b-r7cx8z79d7] .status-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 12px;
    font-size: 0.6875rem;
    font-weight: 600;
    white-space: nowrap;
}

[b-r7cx8z79d7] .status-badge i {
    font-size: 0.6875rem;
}

[b-r7cx8z79d7] .status-badge.active {
    background: rgba(34, 197, 94, 0.2);
    color: var(--theme-success-emphasis);
}

[b-r7cx8z79d7] .status-badge.inactive {
    background: rgba(107, 114, 128, 0.2);
    color: var(--theme-gray-500);
}

[b-r7cx8z79d7] .enrolled-date {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    background: rgba(255, 255, 255, 0.15);
    border-radius: 12px;
    font-size: 0.6875rem;
    font-weight: 500;
    color: rgba(255, 255, 255, 0.9);
}

/* ========================================
   Quick Stats
   ======================================== */

[b-r7cx8z79d7] .quick-stats {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

[b-r7cx8z79d7] .quick-stat {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.375rem 0.75rem;
    background: var(--bg-surface);
    border-radius: 8px;
    border: 1px solid var(--border-color);
    transition: all 0.15s ease;
    flex: 1;
    min-width: 140px;
    max-width: 240px;
}

[b-r7cx8z79d7] .quick-stat:hover {
    border-color: var(--theme-primary);
}

[b-r7cx8z79d7] .quick-stat .stat-icon {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    flex-shrink: 0;
}

[b-r7cx8z79d7] .quick-stat .stat-icon.grade {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

[b-r7cx8z79d7] .quick-stat .stat-icon.programme {
    background: var(--theme-purple);
    color: var(--theme-purple-emphasis);
}

[b-r7cx8z79d7] .quick-stat .stat-icon.study-type {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

[b-r7cx8z79d7] .quick-stat .stat-icon.balance-owing {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

[b-r7cx8z79d7] .quick-stat .stat-icon.balance-cleared {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-r7cx8z79d7] .quick-stat .stat-content {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

[b-r7cx8z79d7] .quick-stat .stat-value {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.15;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-r7cx8z79d7] .quick-stat .stat-label {
    font-size: 0.625rem;
    color: var(--text-secondary);
    line-height: 1.2;
}

[b-r7cx8z79d7] .quick-stat.owing-stat {
    background: rgba(239, 68, 68, 0.04);
    border-color: rgba(239, 68, 68, 0.2);
}

[b-r7cx8z79d7] .quick-stat.cleared-stat {
    background: rgba(16, 185, 129, 0.04);
    border-color: rgba(16, 185, 129, 0.2);
}

/* ========================================
   Info Grid (inside ContentCards)
   ======================================== */

[b-r7cx8z79d7] .info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.375rem 1.5rem;
}

[b-r7cx8z79d7] .info-grid-4col {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 0.25rem 1.25rem;
}

[b-r7cx8z79d7] .info-item {
    display: flex;
    align-items: baseline;
    gap: 0.375rem;
    padding: 0.25rem 0;
    border-bottom: 1px dashed var(--border-color);
}

[b-r7cx8z79d7] .info-item:nth-last-child(-n+2) {
    border-bottom: none;
}

[b-r7cx8z79d7] .info-label {
    font-size: 0.6875rem;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.25px;
    font-weight: 500;
    white-space: nowrap;
    min-width: 85px;
    flex-shrink: 0;
}

[b-r7cx8z79d7] .info-value {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    word-break: break-word;
    line-height: 1.25;
}

[b-r7cx8z79d7] .info-value.mono {
    font-family: 'SF Mono', 'Cascadia Code', 'Fira Code', monospace;
    font-size: 0.8125rem;
    letter-spacing: 0.02em;
}

/* ========================================
   Contact Links
   ======================================== */

[b-r7cx8z79d7] .contact-link {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    color: var(--theme-primary);
    text-decoration: none;
    transition: all 0.15s ease;
    font-size: 0.8125rem;
}

[b-r7cx8z79d7] .contact-link:hover {
    text-decoration: underline;
}

[b-r7cx8z79d7] .contact-link i {
    font-size: 0.875rem;
}

/* ========================================
   Grade Badge
   ======================================== */

[b-r7cx8z79d7] .grade-badge {
    display: inline-flex;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo);
}

/* ========================================
   Enrollment Status Badge
   ======================================== */

[b-r7cx8z79d7] .enrollment-status-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

[b-r7cx8z79d7] .enrollment-status-badge.status-active {
    background: var(--theme-success-bg, rgba(16, 185, 129, 0.1));
    color: var(--theme-success);
}

[b-r7cx8z79d7] .enrollment-status-badge.status-muted {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ========================================
   Photo & Signature Panel
   ======================================== */

[b-r7cx8z79d7] .photo-sig-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
}

[b-r7cx8z79d7] .capture-panel {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    align-items: center;
}

[b-r7cx8z79d7] .capture-preview {
    width: 100%;
    max-width: 200px;
    height: 200px;
    border: 2px dashed var(--border-color);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    background: var(--bg-surface-secondary);
    transition: border-color 0.15s ease;
}

[b-r7cx8z79d7] .capture-preview:hover {
    border-color: var(--theme-primary);
}

[b-r7cx8z79d7] .capture-preview.signature {
    height: 120px;
}

[b-r7cx8z79d7] .capture-preview img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 0.5rem;
}

[b-r7cx8z79d7] .capture-placeholder {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    color: var(--text-muted);
}

[b-r7cx8z79d7] .capture-placeholder i {
    font-size: 2rem;
    opacity: 0.4;
}

[b-r7cx8z79d7] .capture-placeholder span {
    font-size: 0.75rem;
    font-weight: 500;
}

[b-r7cx8z79d7] .capture-actions {
    display: flex;
    gap: 0.5rem;
    align-items: center;
}

[b-r7cx8z79d7] .capture-btn {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.4375rem 0.875rem;
    background: var(--bg-page);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    cursor: pointer;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    transition: all 0.15s ease;
    white-space: nowrap;
}

[b-r7cx8z79d7] .capture-btn:hover {
    background: var(--theme-primary-light);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

[b-r7cx8z79d7] .capture-btn.remove {
    padding: 0.4375rem;
    color: var(--text-muted);
}

[b-r7cx8z79d7] .capture-btn.remove:hover {
    background: var(--theme-danger-subtle);
    border-color: var(--theme-danger-text);
    color: var(--theme-danger-emphasis);
}

/* ========================================
   Balance Grid
   ======================================== */

[b-r7cx8z79d7] .balance-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1rem;
}

[b-r7cx8z79d7] .balance-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.25rem;
    padding: 0.875rem;
    background: var(--bg-surface-secondary);
    border-radius: 10px;
    border: 1px solid var(--border-color-light);
}

[b-r7cx8z79d7] .balance-label {
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

[b-r7cx8z79d7] .balance-value {
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--text-primary);
}

[b-r7cx8z79d7] .balance-value.paid {
    color: var(--theme-success);
}

[b-r7cx8z79d7] .balance-value.owing {
    color: var(--theme-danger);
}

[b-r7cx8z79d7] .balance-value.cleared {
    color: var(--theme-success);
}

/* ========================================
   Table Container
   ======================================== */

[b-r7cx8z79d7] .table-container {
    background: var(--bg-surface);
    overflow: hidden;
}

/* ========================================
   Responsive
   ======================================== */

@media (max-width: 1200px) {
    [b-r7cx8z79d7] .quick-stat {
        min-width: 120px;
    }
}

@media (max-width: 1200px) {
    [b-r7cx8z79d7] .info-grid-4col {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 768px) {
    [b-r7cx8z79d7] .info-grid {
        grid-template-columns: 1fr;
    }

    [b-r7cx8z79d7] .info-grid-4col {
        grid-template-columns: repeat(2, 1fr);
    }

    [b-r7cx8z79d7] .info-item:nth-last-child(-n+2) {
        border-bottom: 1px dashed var(--border-color);
    }

    [b-r7cx8z79d7] .info-item:last-child {
        border-bottom: none;
    }

    [b-r7cx8z79d7] .balance-grid {
        grid-template-columns: 1fr;
    }

    [b-r7cx8z79d7] .photo-sig-grid {
        grid-template-columns: 1fr;
    }

    [b-r7cx8z79d7] .quick-stats {
        gap: 0.375rem;
    }

    [b-r7cx8z79d7] .quick-stat {
        min-width: 0;
        max-width: none;
        flex: 1 1 calc(50% - 0.375rem);
    }
}

@media (max-width: 480px) {
    [b-r7cx8z79d7] .info-grid-4col {
        grid-template-columns: 1fr;
    }

    [b-r7cx8z79d7] .quick-stat {
        flex: 1 1 100%;
        max-width: none;
    }

    [b-r7cx8z79d7] .capture-preview {
        max-width: 160px;
        height: 160px;
    }

    [b-r7cx8z79d7] .capture-preview.signature {
        height: 100px;
    }
}
/* /Pages/Recruiter/StudentPages/StudentList.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

/* ============ Tabs ============ */
.tabs-inline[b-qlkyt7g31o] {
    display: flex;
    gap: 0.25rem;
}

.tab-compact[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border: 1px solid transparent;
    border-radius: 6px;
    background: transparent;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    white-space: nowrap;
}

.tab-compact:hover[b-qlkyt7g31o] {
    background: var(--bg-surface-secondary);
}

.tab-compact.active[b-qlkyt7g31o] {
    background: var(--theme-primary);
    color: white;
    border-color: var(--theme-primary);
}

.tab-badge[b-qlkyt7g31o] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    padding: 0 0.375rem;
    border-radius: 10px;
    font-size: 0.6875rem;
    font-weight: 700;
    background: var(--bg-surface-tertiary);
    color: var(--text-secondary);
}

.tab-compact.active .tab-badge[b-qlkyt7g31o] {
    background: rgba(255, 255, 255, 0.2);
    color: white;
}

.tab-badge.success[b-qlkyt7g31o] {
    background: rgba(16, 185, 129, 0.15);
    color: var(--theme-success-emphasis);
}

.tab-badge.warning[b-qlkyt7g31o] {
    background: rgba(245, 158, 11, 0.15);
    color: var(--theme-warning-emphasis);
}

/* ============ Grade Filter ============ */
.grade-filter-inline[b-qlkyt7g31o] {
    min-width: 140px;
}

.grade-select[b-qlkyt7g31o] {
    height: 34px;
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
}

.grade-select:focus[b-qlkyt7g31o] {
    outline: none;
    border-color: var(--theme-primary);
}

/* ============ Search ============ */
.search-inline[b-qlkyt7g31o] {
    flex: 1;
    min-width: 180px;
}

.nav-search-box[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 34px;
    padding: 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
}

.nav-search-box i[b-qlkyt7g31o] {
    font-size: 0.875rem;
    color: var(--text-muted);
}

.nav-search-box input[b-qlkyt7g31o] {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
}

.clear-search[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-surface-tertiary);
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
}

/* ============ Refresh ============ */
.refresh-btn[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.refresh-btn:hover[b-qlkyt7g31o] {
    background: var(--bg-surface-secondary);
}

.spinner-sm[b-qlkyt7g31o] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin-b-qlkyt7g31o 0.6s linear infinite;
}

@keyframes spin-b-qlkyt7g31o {
    to { transform: rotate(360deg); }
}

/* ============ Student Name Cell ============ */
.student-name-cell[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    cursor: pointer;
}

.student-name-cell:hover strong[b-qlkyt7g31o] {
    color: var(--theme-primary);
}

.student-avatar[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    font-size: 0.6875rem;
    font-weight: 700;
    background: rgba(99, 102, 241, 0.1);
    color: var(--theme-indigo);
    flex-shrink: 0;
}

.student-info[b-qlkyt7g31o] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.student-info strong[b-qlkyt7g31o] {
    font-size: 0.875rem;
    color: var(--text-primary);
    transition: color 0.15s;
}

.payment-code[b-qlkyt7g31o] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    font-family: monospace;
}

.no-account-badge[b-qlkyt7g31o] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--theme-warning-emphasis);
    background: rgba(245, 158, 11, 0.1);
    border: 1px solid rgba(245, 158, 11, 0.25);
    padding: 0.125rem 0.375rem;
    border-radius: 3px;
    cursor: pointer;
    transition: all 0.15s ease;
}

.no-account-badge:hover[b-qlkyt7g31o] {
    background: rgba(245, 158, 11, 0.2);
    border-color: rgba(245, 158, 11, 0.4);
    color: var(--theme-warning-text);
}

.no-account-badge i[b-qlkyt7g31o] {
    font-size: 0.6875rem;
}

/* ============ Reg No & Grade Badge ============ */
.reg-no[b-qlkyt7g31o] {
    font-family: monospace;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
}

.grade-badge[b-qlkyt7g31o] {
    display: inline-flex;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(99, 102, 241, 0.08);
    color: var(--theme-indigo);
}

/* ============ Status Badges ============ */
.status-badge[b-qlkyt7g31o] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    white-space: nowrap;
}

.status-success[b-qlkyt7g31o] {
    background: var(--theme-success-bg, rgba(16, 185, 129, 0.1));
    color: var(--theme-success);
}

.status-muted[b-qlkyt7g31o] {
    background: var(--bg-surface-tertiary);
    color: var(--text-muted);
}

/* ============ View Button ============ */
.view-btn[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-muted);
    cursor: pointer;
    transition: all 0.15s;
}

.view-btn:hover[b-qlkyt7g31o] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

/* ============ Content Area ============ */
.content-area[b-qlkyt7g31o] {
    margin-bottom: 1rem;
}

.table-container[b-qlkyt7g31o] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ List Footer ============ */
.list-footer[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.results-text[b-qlkyt7g31o] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector[b-qlkyt7g31o] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector select[b-qlkyt7g31o] {
    height: 28px;
    padding: 0 0.375rem;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
}

.text-muted[b-qlkyt7g31o] {
    color: var(--text-muted);
}

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    .navigation-bar[b-qlkyt7g31o] {
        flex-wrap: wrap;
    }
    .tabs-inline[b-qlkyt7g31o] {
        flex-basis: 100%;
    }
}

@media (max-width: 768px) {
    .grade-filter-inline[b-qlkyt7g31o] {
        flex: 1;
        min-width: 100%;
    }
    .search-inline[b-qlkyt7g31o] {
        flex: 1;
        min-width: 100%;
    }
}
/* /Pages/Recruiter/VacancyPages/VacancyDetail.razor.rz.scp.css */
/* ========================================
   VACANCY DETAIL PAGE - COMPONENT-SPECIFIC STYLES
   Layout, header, back button, and stats handled by PageLayout
   ======================================== */

/* Content Flow Containers */
.main-content-flow[b-bx7rw9dr36],
.sidebar-flow[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
}

/* Info Grid */
.info-grid[b-bx7rw9dr36] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem;
    margin-bottom: 1.5rem;
}

.info-item[b-bx7rw9dr36] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
}

.info-icon[b-bx7rw9dr36] {
    width: 40px;
    height: 40px;
    border-radius: 10px;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
    flex-shrink: 0;
}

/* Fees List */
.fees-list[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.fee-item[b-bx7rw9dr36] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    transition: all 0.2s ease;
}

.fee-item:hover[b-bx7rw9dr36] {
    background: linear-gradient(135deg, var(--bg-surface-secondary) 0%, rgba(99, 102, 241, 0.02) 100%);
}

.fee-info[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.875rem;
}

.fee-icon[b-bx7rw9dr36] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
}

.fee-total[b-bx7rw9dr36] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1rem 1.25rem;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-dark) 100%);
    border-radius: 10px;
    margin-top: 1rem;
    color: white;
}

.total-amount[b-bx7rw9dr36] {
    font-size: 1.25rem;
    font-weight: 700;
}

/* Stage Fees Section */
.stage-fees-card .card-header[b-bx7rw9dr36] {
    gap: 0.75rem;
}

.fees-count[b-bx7rw9dr36] {
    margin-left: auto;
    font-size: 0.75rem;
    font-weight: 500;
    padding: 0.25rem 0.625rem;
    border-radius: 12px;
    background: var(--theme-primary-subtle);
    color: var(--theme-primary);
}

.stage-fees-container[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.stage-fee-group[b-bx7rw9dr36] {
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
    transition: all 0.2s ease;
}

.stage-fee-group:hover[b-bx7rw9dr36] {
    box-shadow: var(--shadow-md);
}

.stage-fee-header[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-secondary);
    border-bottom: 1px solid var(--border-color);
}

.stage-indicator[b-bx7rw9dr36] {
    width: 4px;
    height: 28px;
    border-radius: 2px;
    background: var(--stage-color);
    flex-shrink: 0;
}

.stage-fee-items[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
}

.stage-fee-item[b-bx7rw9dr36] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.875rem 1rem;
    background: var(--bg-surface);
    transition: all 0.2s ease;
}

.stage-fee-item:not(:last-child)[b-bx7rw9dr36] {
    border-bottom: 1px solid var(--border-color);
}

.stage-fee-item:hover[b-bx7rw9dr36] {
    background: var(--bg-surface-secondary);
}

.stage-fee-item.mandatory[b-bx7rw9dr36] {
    border-left: 3px solid var(--theme-success);
}

.stage-fee-item.optional[b-bx7rw9dr36] {
    border-left: 3px solid var(--text-muted);
}

.fee-details[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

/* Fee Summary */
.fee-summary[b-bx7rw9dr36] {
    margin-top: 1.5rem;
    padding-top: 1.5rem;
    border-top: 2px dashed var(--border-color);
}

.fee-summary-row[b-bx7rw9dr36] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-bottom: 1rem;
}

.summary-item[b-bx7rw9dr36] {
    padding: 1rem;
    border-radius: 10px;
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

.summary-item.mandatory[b-bx7rw9dr36] {
    background: linear-gradient(135deg, rgba(16, 185, 129, 0.08) 0%, rgba(16, 185, 129, 0.04) 100%);
    border: 1px solid rgba(16, 185, 129, 0.2);
}

.summary-item.optional[b-bx7rw9dr36] {
    background: linear-gradient(135deg, rgba(107, 114, 128, 0.08) 0%, rgba(107, 114, 128, 0.04) 100%);
    border: 1px solid rgba(107, 114, 128, 0.2);
}

.fee-grand-total[b-bx7rw9dr36] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 1.125rem 1.5rem;
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-primary-dark) 100%);
    border-radius: 12px;
    color: white;
}

.fee-grand-total .total-amount[b-bx7rw9dr36] {
    font-size: 1.5rem;
    font-weight: 700;
}

/* No Fees Empty State */
.no-fees-state[b-bx7rw9dr36] {
    text-align: center;
    padding: 2rem 1rem;
}

.no-fees-icon[b-bx7rw9dr36] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    font-size: 1.5rem;
    color: var(--text-muted);
}

.no-fees-state h4[b-bx7rw9dr36] {
    margin: 0 0 0.5rem;
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
}

.no-fees-state p[b-bx7rw9dr36] {
    margin: 0 0 1rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
}

/* Analytics Grid */
.analytics-grid[b-bx7rw9dr36] {
    display: grid;
    grid-template-columns: 1.5fr 1fr;
    gap: 1.5rem;
}

.chart-container[b-bx7rw9dr36] {
    min-height: 280px;
}

.metrics-container[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.metric-card[b-bx7rw9dr36] {
    padding: 1rem;
    border-radius: 10px;
    text-align: center;
}

.metric-card.success[b-bx7rw9dr36] {
    background: linear-gradient(135deg, var(--theme-success-subtle) 0%, rgba(16, 185, 129, 0.05) 100%);
}

.metric-card.info[b-bx7rw9dr36] {
    background: linear-gradient(135deg, var(--theme-info-subtle) 0%, rgba(59, 130, 246, 0.05) 100%);
}

.metric-card.secondary[b-bx7rw9dr36] {
    background: linear-gradient(135deg, rgba(107, 114, 128, 0.1) 0%, rgba(107, 114, 128, 0.05) 100%);
}

.metric-value[b-bx7rw9dr36] {
    display: block;
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--text-primary);
}

.metric-label[b-bx7rw9dr36] {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-secondary);
    margin-top: 0.25rem;
}

.metric-detail[b-bx7rw9dr36] {
    display: block;
    font-size: 0.75rem;
    color: var(--text-muted);
    margin-top: 0.125rem;
}

/* Application Data Grid */
.applicant-cell[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.applicant-name[b-bx7rw9dr36] {
    font-weight: 500;
    color: var(--text-primary);
}

.date-cell[b-bx7rw9dr36] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.btn-view[b-bx7rw9dr36] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 6px;
    border: 1px solid var(--border-color);
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-view:hover[b-bx7rw9dr36] {
    background: var(--theme-primary-subtle);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

/* Stage Badges */
.stage-badge[b-bx7rw9dr36] {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.625rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

.badge-new[b-bx7rw9dr36] { background: var(--bg-surface-secondary); color: var(--text-secondary); }
.badge-approval[b-bx7rw9dr36] { background: rgba(99, 102, 241, 0.1); color: var(--stage-approval); }
.badge-verification[b-bx7rw9dr36] { background: rgba(59, 130, 246, 0.1); color: var(--stage-verification); }
.badge-phonecall[b-bx7rw9dr36] { background: rgba(236, 72, 153, 0.1); color: var(--stage-phonecall); }
.badge-homework[b-bx7rw9dr36] { background: rgba(245, 158, 11, 0.1); color: var(--stage-homework); }
.badge-interview[b-bx7rw9dr36] { background: rgba(168, 85, 247, 0.1); color: var(--stage-interview); }
.badge-admission[b-bx7rw9dr36] { background: rgba(16, 185, 129, 0.1); color: var(--stage-admission); }
.badge-completed[b-bx7rw9dr36] { background: rgba(16, 185, 129, 0.15); color: var(--theme-success); }

/* Stages Timeline */
.stages-timeline[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0;
    position: relative;
}

.stage-timeline-item[b-bx7rw9dr36] {
    display: flex;
    align-items: flex-start;
    gap: 0.875rem;
    padding: 0.875rem 0;
    position: relative;
}

.stage-timeline-item:not(:last-child)[b-bx7rw9dr36]::after {
    content: '';
    position: absolute;
    left: 13px;
    top: 44px;
    bottom: -8px;
    width: 2px;
    background: var(--border-color);
}

.stage-timeline-item.enabled:not(:last-child)[b-bx7rw9dr36]::after {
    background: linear-gradient(180deg, var(--theme-success) 0%, var(--border-color) 100%);
}

.stage-marker[b-bx7rw9dr36] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    border: 2px solid var(--border-color);
    background: var(--bg-surface);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 0.875rem;
    color: white;
    z-index: 1;
}

.stage-timeline-item.disabled .stage-marker[b-bx7rw9dr36] {
    background: var(--bg-surface-secondary);
}

.stage-timeline-item.disabled[b-bx7rw9dr36] {
    opacity: 0.6;
}

.stage-content[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    padding-top: 0.25rem;
}

.stage-name[b-bx7rw9dr36] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--text-primary);
}

.stage-assignee[b-bx7rw9dr36] {
    font-size: 0.75rem;
    color: var(--text-secondary);
}

.stage-status[b-bx7rw9dr36] {
    font-size: 0.75rem;
    color: var(--text-muted);
    font-style: italic;
}

.sidebar-hint[b-bx7rw9dr36] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    margin: 0 0 0.75rem;
}

/* Alert Banner */
.alert-banner-sm[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.625rem 0.875rem;
    border-radius: 8px;
    font-size: 0.8125rem;
    font-weight: 500;
    margin-top: 1rem;
}

.alert-banner-sm.warning[b-bx7rw9dr36] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
    border: 1px solid rgba(245, 158, 11, 0.2);
}

/* Quick Actions */
.quick-actions[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.quick-action-btn[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.875rem 1rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    color: var(--text-primary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    transition: all 0.2s ease;
    width: 100%;
    text-align: left;
}

.quick-action-btn:hover[b-bx7rw9dr36] {
    background: linear-gradient(135deg, var(--theme-primary-light) 0%, var(--theme-primary-subtle) 100%);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
}

/* Document Management */
.documents-list[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.document-item-admin[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 8px;
    transition: all 0.2s ease;
}

.document-item-admin:hover[b-bx7rw9dr36] {
    background: var(--bg-hover);
    border-color: var(--theme-primary-light);
}

.doc-icon[b-bx7rw9dr36] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    background: var(--theme-primary-subtle);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.doc-info[b-bx7rw9dr36] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.doc-actions[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    opacity: 0;
    transition: opacity 0.2s ease;
}

.document-item-admin:hover .doc-actions[b-bx7rw9dr36] {
    opacity: 1;
}

/* Documents Tabs */
.documents-tabs[b-bx7rw9dr36] {
    border: none;
}

[b-bx7rw9dr36] .documents-tabs .rz-tabview-nav {
    padding: 0 1rem;
    border-bottom: 1px solid var(--border-color);
    background: transparent;
}

[b-bx7rw9dr36] .documents-tabs .rz-tabview-nav li {
    margin-bottom: -1px;
}

[b-bx7rw9dr36] .documents-tabs .rz-tabview-nav-link {
    border: none;
    background: transparent;
    padding: 0.75rem 1rem;
    font-weight: 500;
    color: var(--text-secondary);
}

[b-bx7rw9dr36] .documents-tabs .rz-state-active .rz-tabview-nav-link {
    border-bottom: 2px solid var(--theme-primary);
    color: var(--theme-primary);
}

[b-bx7rw9dr36] .documents-tabs .rz-tabview-panels {
    padding: 0;
}

.tab-content-padding[b-bx7rw9dr36] {
    padding: 1rem;
}

/* Sidebar Info List */
.sidebar-info-list[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.sidebar-info-item[b-bx7rw9dr36] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.5rem 0;
}

.sidebar-info-item:not(:last-child)[b-bx7rw9dr36] {
    border-bottom: 1px solid var(--border-color);
    padding-bottom: 0.75rem;
}

.sidebar-info-item > i[b-bx7rw9dr36] {
    width: 28px;
    height: 28px;
    border-radius: 6px;
    background: var(--bg-surface-secondary);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--text-secondary);
    font-size: 0.875rem;
    flex-shrink: 0;
}

.sidebar-info-content[b-bx7rw9dr36] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.sidebar-info-label[b-bx7rw9dr36] {
    font-size: 0.75rem;
    color: var(--text-muted);
    font-weight: 500;
}

.sidebar-info-value[b-bx7rw9dr36] {
    font-size: 0.875rem;
    color: var(--text-primary);
    font-weight: 500;
}

/* Stage Fee Count Badge */
.stage-fee-count[b-bx7rw9dr36] {
    margin-left: auto;
    font-size: 0.6875rem;
    font-weight: 600;
    padding: 0.125rem 0.5rem;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.2);
    color: inherit;
}

.fee-detail-name[b-bx7rw9dr36] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

.fee-detail-amount[b-bx7rw9dr36] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--theme-primary);
    white-space: nowrap;
}

.total-label[b-bx7rw9dr36] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.9375rem;
    font-weight: 600;
}

/* Responsive */
@media (max-width: 768px) {
    .info-grid[b-bx7rw9dr36] {
        grid-template-columns: 1fr;
    }

    .analytics-grid[b-bx7rw9dr36] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 576px) {
    .fee-summary-row[b-bx7rw9dr36] {
        grid-template-columns: 1fr;
    }

    .stage-fee-item[b-bx7rw9dr36] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    .fee-grand-total[b-bx7rw9dr36] {
        flex-direction: column;
        gap: 0.5rem;
        text-align: center;
    }
}

/* Spin Animation */
.spin-animation[b-bx7rw9dr36] {
    display: inline-block;
    animation: spin-b-bx7rw9dr36 1.5s linear infinite;
}

@keyframes spin-b-bx7rw9dr36 {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
/* /Pages/Recruiter/VacancyPages/VacancyList.razor.rz.scp.css */
/* ========================================
   VACANCY LIST PAGE - SCOPED STYLES
   Component-specific layout and vacancy-domain patterns only.
   Generic patterns (stats, filters, buttons, empty states) handled in app.css.

   LAYOUT: Uses .container-fluid wrapper for consistent Bootstrap responsive behavior.
   Padding handled by global .content-page rule in app.css (3rem left).
   ======================================== */

.vacancy-list-page[b-wrj8s4ywyi] {
    /* Padding removed - handled by .content-page global rule */
}

/* Content Area - loading container centralized in app.css */

/* ========================================
   VACANCY GRID (CARD VIEW)
   Uses RecruiterCard for automatic dark mode support
   ======================================== */

.vacancy-grid[b-wrj8s4ywyi] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
    gap: 1.25rem;
}

/* RecruiterCard wrapper - selection state */
[b-wrj8s4ywyi] .vacancy-card-wrapper.selected {
    border-color: var(--theme-primary) !important;
    box-shadow: 0 0 0 2px var(--theme-primary-border) !important;
}

/* Vacancy card body content */
.vacancy-card-body[b-wrj8s4ywyi] {
    padding: 0.25rem 0;
}

/* Vacancy-specific status badges */
.vacancy-status[b-wrj8s4ywyi] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0.75rem;
    border-radius: 20px;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.3px;
}

.vacancy-status.open[b-wrj8s4ywyi] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.vacancy-status.upcoming[b-wrj8s4ywyi] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.vacancy-status.closed[b-wrj8s4ywyi] {
    background: rgba(148, 163, 184, 0.1);
    color: var(--text-secondary);
}

/* Card action buttons - centralized in app.css */

.vacancy-name[b-wrj8s4ywyi] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0 0 0.5rem;
    line-height: 1.3;
}

.vacancy-description[b-wrj8s4ywyi] {
    font-size: 0.875rem;
    color: var(--text-secondary);
    line-height: 1.5;
    margin: 0 0 1rem;
}

.vacancy-meta[b-wrj8s4ywyi] {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.meta-item[b-wrj8s4ywyi] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-muted);
}

.meta-item i[b-wrj8s4ywyi] {
    font-size: 1rem;
    color: var(--text-secondary);
}

.applications-count[b-wrj8s4ywyi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.875rem;
    color: var(--text-secondary);
    font-weight: 500;
}

.applications-count i[b-wrj8s4ywyi] {
    font-size: 1.125rem;
    color: var(--theme-primary);
}

/* ========================================
   TABLE VIEW - VACANCY-SPECIFIC CELLS
   ======================================== */

.table-container[b-wrj8s4ywyi] {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: hidden;
}

.table-vacancy-cell[b-wrj8s4ywyi] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.vacancy-title[b-wrj8s4ywyi] {
    font-weight: 600;
    color: var(--theme-primary);
}

.vacancy-desc[b-wrj8s4ywyi] {
    font-size: 0.8125rem;
    color: var(--text-secondary);
    line-height: 1.4;
}

/* Table status badges - vacancy-specific */
.table-status-badge[b-wrj8s4ywyi] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.625rem;
    border-radius: 12px;
    font-size: 0.75rem;
    font-weight: 600;
}

.table-status-badge.open[b-wrj8s4ywyi] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.table-status-badge.upcoming[b-wrj8s4ywyi] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.table-status-badge.closed[b-wrj8s4ywyi] {
    background: rgba(148, 163, 184, 0.1);
    color: var(--text-secondary);
}
/* Dark mode override in app.css */

.table-date[b-wrj8s4ywyi] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.875rem;
    color: var(--text-primary);
}

.table-date i[b-wrj8s4ywyi] {
    color: var(--text-muted);
}

.table-applications[b-wrj8s4ywyi] {
    display: inline-flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.25rem 0.625rem;
    background: var(--theme-primary-subtle);
    border-radius: 12px;
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--theme-primary);
}

/* Note: Radzen component base styles are now centralized in app.css. */
/* Dark mode handled automatically via CSS variables - no explicit overrides needed */

/* ========================================
   RESPONSIVE - VACANCY LIST SPECIFIC
   ======================================== */

@media (max-width: 1200px) {
    .vacancy-grid[b-wrj8s4ywyi] {
        grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    }
}

@media (max-width: 768px) {
    .vacancy-list-page[b-wrj8s4ywyi] {
        padding: 1rem;
    }

    .vacancy-grid[b-wrj8s4ywyi] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/StudentPoral/LearningPortal/LearningDashboard.razor.rz.scp.css */
.watermark-container[b-85nuk1imzo] {
    position: absolute;
    z-index: 20;
    pointer-events: none;
    animation: moveWatermark 100s linear infinite;
}

.d-none[b-85nuk1imzo] {
    display: none;
}
/* /Pages/StudentPoral/Quiz.razor.rz.scp.css */
.option-box[b-8jh1ee0150]
{
    transition: all var(--sidenav-transition-fast) ease;
}
.option-box:hover[b-8jh1ee0150]
{
    border-radius: var(--space-2);
    box-shadow: 0 0 18px 1px var(--theme-gray-300);
}
/* /Pages/StudentPoral/ServiceCatalog.razor.rz.scp.css */
/* ServiceCatalog.razor.css - Service card specific styles */

.service-card[b-ta61yw62iv] {
    transition: transform 0.2s, box-shadow 0.2s;
}

.service-card:hover[b-ta61yw62iv] {
    transform: translateY(-4px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1) !important;
}

.service-icon[b-ta61yw62iv] {
    width: 48px;
    height: 48px;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    flex-shrink: 0;
}

.service-icon.processing[b-ta61yw62iv] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.service-icon.printing[b-ta61yw62iv] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.service-icon.verification[b-ta61yw62iv] {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

.service-icon.consultation[b-ta61yw62iv] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.service-icon.other[b-ta61yw62iv] {
    background: rgba(107, 114, 128, 0.1);
    color: var(--theme-gray-500);
}

.service-details[b-ta61yw62iv] {
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    padding: 0.5rem 1rem;
}
/* /Pages/StudentPoral/StudentDashboard.razor.rz.scp.css */
/* =============================================
   STUDENT DASHBOARD STYLES
   Inspinia-based design patterns
   ============================================= */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

/* Dashboard Container */
.student-dashboard[b-rodksc4q4d] {
    /* Full width - consistent with Inspinia layout patterns */
}

/* Welcome Header */
.welcome-header[b-rodksc4q4d] {
    background: linear-gradient(135deg, var(--theme-primary) 0%, var(--theme-secondary) 100%);
    border-radius: var(--radius-lg, 1rem);
    padding: 2rem;
    color: white;
    margin-bottom: 1.5rem;
    position: relative;
    overflow: hidden;
}

.welcome-header[b-rodksc4q4d]::before {
    content: '';
    position: absolute;
    top: -50%;
    right: -10%;
    width: 300px;
    height: 300px;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
}

.welcome-header[b-rodksc4q4d]::after {
    content: '';
    position: absolute;
    bottom: -30%;
    right: 20%;
    width: 150px;
    height: 150px;
    background: rgba(255, 255, 255, 0.05);
    border-radius: 50%;
}

.welcome-content[b-rodksc4q4d] {
    position: relative;
    z-index: 1;
}

.welcome-header h1[b-rodksc4q4d] {
    font-size: 1.75rem;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
}

.welcome-header p[b-rodksc4q4d] {
    opacity: 0.9;
    margin: 0;
    font-size: 1rem;
}

.welcome-icon[b-rodksc4q4d] {
    position: absolute;
    right: 2rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 5rem;
    opacity: 0.15;
    z-index: 0;
}

/* Dashboard Cards */
.dashboard-card[b-rodksc4q4d] {
    background: var(--bg-surface);
    border-radius: var(--radius-lg, 1rem);
    box-shadow: var(--card-shadow, 0 1px 3px rgba(0, 0, 0, 0.1));
    border: 1px solid var(--border-color);
    margin-bottom: 1.5rem;
    overflow: hidden;
    transition: background-color 0.2s ease, border-color 0.2s ease;
}

.card-header[b-rodksc4q4d] {
    padding: 1rem 1.25rem;
    border-bottom: 1px solid var(--border-color);
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.card-header h3[b-rodksc4q4d] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.card-header h3 i[b-rodksc4q4d] {
    color: var(--theme-primary);
}

.card-header .view-all[b-rodksc4q4d] {
    font-size: 0.875rem;
    color: var(--theme-primary);
    text-decoration: none;
    font-weight: 500;
}

.card-header .view-all:hover[b-rodksc4q4d] {
    text-decoration: underline;
}

.card-body[b-rodksc4q4d] {
    padding: 1.25rem;
}

/* Application Pipeline */
.pipeline[b-rodksc4q4d] {
    display: flex;
    justify-content: space-between;
    position: relative;
    padding: 1rem 0;
}

.pipeline-connector[b-rodksc4q4d] {
    position: absolute;
    top: calc(1rem + 20px);
    left: 10%;
    right: 10%;
    height: 3px;
    background: var(--border-color);
    z-index: 0;
}

.pipeline-connector-fill[b-rodksc4q4d] {
    height: 100%;
    background: linear-gradient(90deg, var(--theme-success) 0%, var(--theme-primary) 100%);
    transition: width 0.5s ease;
}

.pipeline-stage[b-rodksc4q4d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    position: relative;
    z-index: 1;
}

.pipeline-icon[b-rodksc4q4d] {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bg-surface);
    border: 3px solid var(--border-color);
    color: var(--text-muted);
    font-size: 1rem;
    transition: all 0.3s ease;
    margin-bottom: 0.5rem;
}

.pipeline-stage.completed .pipeline-icon[b-rodksc4q4d] {
    background: var(--theme-success);
    border-color: var(--theme-success);
    color: white;
}

.pipeline-stage.current .pipeline-icon[b-rodksc4q4d] {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
    animation: pulse-b-rodksc4q4d 2s infinite;
}

.pipeline-stage.pending .pipeline-icon[b-rodksc4q4d] {
    background: var(--bg-tertiary);
    border-color: var(--border-color);
    color: var(--text-muted);
}

@keyframes pulse-b-rodksc4q4d {
    0% { box-shadow: 0 0 0 0 rgba(79, 70, 229, 0.4); }
    50% { box-shadow: 0 0 0 10px rgba(79, 70, 229, 0); }
    100% { box-shadow: 0 0 0 0 rgba(79, 70, 229, 0); }
}

.pipeline-label[b-rodksc4q4d] {
    font-size: 0.75rem;
    font-weight: 500;
    color: var(--text-secondary);
    text-align: center;
    max-width: 80px;
}

.pipeline-stage.completed .pipeline-label[b-rodksc4q4d] {
    color: var(--theme-success);
}

.pipeline-stage.current .pipeline-label[b-rodksc4q4d] {
    color: var(--theme-primary);
    font-weight: 600;
}

/* Quick Actions Grid */
.quick-actions[b-rodksc4q4d] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.75rem;
}

.quick-action-btn[b-rodksc4q4d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    background: var(--bg-tertiary);
    border: 1px solid var(--border-color);
    border-radius: var(--radius-md, 0.75rem);
    text-decoration: none;
    color: var(--text-secondary);
    transition: all 0.2s ease;
    min-height: 90px;
}

.quick-action-btn:hover[b-rodksc4q4d] {
    background: var(--bg-surface);
    border-color: var(--theme-primary);
    color: var(--theme-primary);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
    transform: translateY(-2px);
}

.quick-action-btn i[b-rodksc4q4d] {
    font-size: 1.5rem;
    margin-bottom: 0.5rem;
}

.quick-action-btn span[b-rodksc4q4d] {
    font-size: 0.8125rem;
    font-weight: 500;
    text-align: center;
}

/* Invoice Table */
.invoice-table[b-rodksc4q4d] {
    width: 100%;
    font-size: 0.875rem;
}

.invoice-table th[b-rodksc4q4d] {
    text-align: left;
    font-weight: 600;
    color: var(--text-secondary);
    padding: 0.75rem;
    border-bottom: 1px solid var(--border-color);
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.invoice-table td[b-rodksc4q4d] {
    padding: 0.75rem;
    border-bottom: 1px solid var(--border-color);
    color: var(--text-primary);
}

.invoice-table tr:last-child td[b-rodksc4q4d] {
    border-bottom: none;
}

.invoice-status[b-rodksc4q4d] {
    display: inline-flex;
    padding: 0.25rem 0.625rem;
    border-radius: 9999px;
    font-size: 0.75rem;
    font-weight: 500;
}

.invoice-status.paid[b-rodksc4q4d] {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

.invoice-status.pending[b-rodksc4q4d] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.invoice-status.overdue[b-rodksc4q4d] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

/* Task List */
.task-list[b-rodksc4q4d] {
    list-style: none;
    padding: 0;
    margin: 0;
}

.task-item[b-rodksc4q4d] {
    display: flex;
    align-items: center;
    padding: 0.75rem;
    background: var(--bg-tertiary);
    border-radius: var(--radius-md, 0.75rem);
    margin-bottom: 0.5rem;
    transition: all 0.2s ease;
}

.task-item:last-child[b-rodksc4q4d] {
    margin-bottom: 0;
}

.task-item:hover[b-rodksc4q4d] {
    background: var(--bg-surface);
}

.task-icon[b-rodksc4q4d] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 0.75rem;
    flex-shrink: 0;
    font-size: 0.875rem;
}

.task-icon.urgent[b-rodksc4q4d] {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

.task-icon.warning[b-rodksc4q4d] {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

.task-icon.info[b-rodksc4q4d] {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.task-content[b-rodksc4q4d] {
    flex: 1;
    min-width: 0;
}

.task-content h6[b-rodksc4q4d] {
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
    margin: 0;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.task-content small[b-rodksc4q4d] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.task-action[b-rodksc4q4d] {
    flex-shrink: 0;
}

.task-action a[b-rodksc4q4d] {
    font-size: 0.75rem;
    color: var(--theme-primary);
    text-decoration: none;
    font-weight: 500;
}

.task-action a:hover[b-rodksc4q4d] {
    text-decoration: underline;
}

/* Note: Empty state now uses centralized EmptyState component. */

/* Loading State */
.loading-state[b-rodksc4q4d] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
    color: var(--text-muted);
}

.loading-spinner[b-rodksc4q4d] {
    width: 40px;
    height: 40px;
    border: 3px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin 1s linear infinite;
    margin-bottom: 1rem;
}

/* @keyframes spin - Using centralized animation from app.css (line 4225) */

/* Responsive */
@media (max-width: 1199px) {
    .quick-actions[b-rodksc4q4d] {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 991px) {
    .pipeline[b-rodksc4q4d] {
        flex-wrap: wrap;
        gap: 1rem;
    }

    .pipeline-connector[b-rodksc4q4d] {
        display: none;
    }

    .pipeline-stage[b-rodksc4q4d] {
        flex: 0 0 calc(33.333% - 0.67rem);
    }
}

@media (max-width: 767px) {

    .welcome-header[b-rodksc4q4d] {
        padding: 1.5rem;
    }

    .welcome-header h1[b-rodksc4q4d] {
        font-size: 1.5rem;
    }

    .welcome-icon[b-rodksc4q4d] {
        display: none;
    }

    .quick-actions[b-rodksc4q4d] {
        grid-template-columns: repeat(2, 1fr);
    }

    .pipeline-stage[b-rodksc4q4d] {
        flex: 0 0 calc(50% - 0.5rem);
    }
}

@media (max-width: 575px) {
    .quick-actions[b-rodksc4q4d] {
        grid-template-columns: 1fr;
    }

    .pipeline-stage[b-rodksc4q4d] {
        flex: 0 0 100%;
    }

    .invoice-table[b-rodksc4q4d] {
        font-size: 0.8125rem;
    }

    .invoice-table th[b-rodksc4q4d],
    .invoice-table td[b-rodksc4q4d] {
        padding: 0.5rem;
    }
}
/* /Pages/StudentPoral/StudentEditProfile.razor.rz.scp.css */
/**
 * StudentEditProfile - Scoped Styles
 * Uses CSS variables for theme consistency and whitelabeling support.
 */

/* Content Area - loading container centralized in app.css */

/* ========================================
   CARD STYLING
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.card[b-o50gsftj93] {
    border: none;
    box-shadow: var(--shadow-sm, 0 0 10px rgba(0, 0, 0, 0.05));
    border-radius: var(--radius-lg, 8px);
}

.card-header[b-o50gsftj93] {
    background: transparent;
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.card-title[b-o50gsftj93] {
    font-weight: var(--font-semibold, 600);
    color: var(--bs-dark);
}

/* ========================================
   PROFILE CARD
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.profile-card[b-o50gsftj93] {
    background: var(--gradient-primary, linear-gradient(135deg, var(--bs-primary) 0%, var(--theme-indigo) 100%));
    color: white;
}

.profile-card .text-muted[b-o50gsftj93] {
    color: rgba(255, 255, 255, 0.8) !important;
}

.profile-card h5[b-o50gsftj93] {
    color: white;
}

/* ========================================
   STATUS ITEMS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.status-item[b-o50gsftj93] {
    display: flex;
    align-items: center;
    padding: 0.75rem 0;
}

.status-item:not(:last-child)[b-o50gsftj93] {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.status-icon[b-o50gsftj93] {
    width: 40px;
    height: 40px;
    border-radius: var(--radius-lg, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    margin-right: 1rem;
}

.status-info[b-o50gsftj93] {
    display: flex;
    flex-direction: column;
}

/* ========================================
   QUICK LINKS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.quick-link-item[b-o50gsftj93] {
    display: flex;
    align-items: center;
    padding: 0.875rem 1.25rem;
    color: var(--bs-dark);
    text-decoration: none;
    transition: background-color var(--sidenav-transition-fast, 0.2s ease);
}

.quick-link-item:hover[b-o50gsftj93] {
    background-color: rgba(var(--bs-primary-rgb), 0.05);
    color: var(--bs-primary);
}

.quick-link-item:not(:last-child)[b-o50gsftj93] {
    border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.quick-link-item i:first-child[b-o50gsftj93] {
    margin-right: 0.75rem;
    font-size: 1.125rem;
}

/* ========================================
   SECURITY OPTIONS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.security-option[b-o50gsftj93] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.security-option-icon[b-o50gsftj93] {
    width: 48px;
    height: 48px;
    border-radius: var(--radius-lg, 8px);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.security-option-info[b-o50gsftj93] {
    flex: 1;
}

/* ========================================
   FORM STYLING
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.form-label[b-o50gsftj93] {
    font-weight: var(--font-medium, 500);
    font-size: 0.875rem;
    color: var(--bs-gray-700);
    margin-bottom: 0.5rem;
}

/* ========================================
   BADGE STYLING
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.badge[b-o50gsftj93] {
    font-weight: var(--font-medium, 500);
    padding: 0.5em 0.75em;
}

.bg-primary-subtle[b-o50gsftj93] {
    background-color: rgba(var(--bs-primary-rgb), 0.1);
}

.bg-success-subtle[b-o50gsftj93] {
    background-color: rgba(var(--bs-success-rgb), 0.1);
}

.bg-warning-subtle[b-o50gsftj93] {
    background-color: rgba(var(--bs-warning-rgb), 0.1);
}

.bg-info-subtle[b-o50gsftj93] {
    background-color: rgba(var(--bs-info-rgb), 0.1);
}

.bg-secondary-subtle[b-o50gsftj93] {
    background-color: rgba(var(--bs-secondary-rgb), 0.1);
}

/* Note: Radzen component base styles are now centralized in app.css. */

/* ========================================
   SAVE HINT
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

.save-hint[b-o50gsftj93] {
    font-size: 0.875rem;
}

/* ========================================
   RESPONSIVE ADJUSTMENTS
   ======================================== */

/* Note: Layout (padding, max-width) handled by .content-page global rule in app.css */

@media (max-width: 991.98px) {
    .profile-card .card-body[b-o50gsftj93] {
        padding: 1.5rem;
    }
}
/* /Pages/SuperAdmin/BillingAdjustments.razor.rz.scp.css */
/* BillingAdjustments Page Styles - Using Theme Variables */
/* NOTE: Uses centrally managed CSS variables from theme-core.css */

.billing-adjustments-page[b-minddrhqto] {
    /* Padding removed - handled by .content-page global rule */
}

.page-header[b-minddrhqto] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 1.5rem;
}

.page-header h1[b-minddrhqto] {
    font-size: 1.75rem;
    font-weight: 600;
    color: var(--text-primary);
    margin: 0;
}

.header-subtitle[b-minddrhqto] {
    color: var(--text-secondary);
    margin: 0.25rem 0 0 0;
    font-size: 0.875rem;
}

.header-actions[b-minddrhqto] {
    display: flex;
    gap: 0.75rem;
}

.tabs-container[b-minddrhqto] {
    margin-bottom: 1.5rem;
}

.custom-tabs[b-minddrhqto] {
    display: flex;
    gap: 0;
    border-bottom: 1px solid var(--border-color);
}

.tab-btn[b-minddrhqto] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    border: none;
    background: transparent;
    color: var(--text-secondary);
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    border-bottom: 2px solid transparent;
    transition: var(--sidenav-transition-fast);
}

.tab-btn:hover[b-minddrhqto] {
    color: var(--theme-primary);
}

.tab-btn.active[b-minddrhqto] {
    color: var(--theme-primary);
    border-bottom-color: var(--theme-primary);
}

.tab-btn i[b-minddrhqto] {
    font-size: 1.125rem;
}

.filters-row[b-minddrhqto] {
    display: flex;
    gap: 1rem;
    margin-bottom: 1.5rem;
    flex-wrap: wrap;
}

.filter-item[b-minddrhqto] {
    display: flex;
    align-items: center;
}

.loading-container[b-minddrhqto] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 3rem;
}

.loading-text[b-minddrhqto] {
    margin-top: 1rem;
    color: var(--text-secondary);
}

.data-table-container[b-minddrhqto] {
    background: var(--bg-surface);
    border-radius: 0.75rem;
    box-shadow: var(--shadow-sm);
    overflow: hidden;
}

.modern-grid[b-minddrhqto] {
    border: none;
}

.invoice-number[b-minddrhqto] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.invoice-number .number[b-minddrhqto] {
    font-weight: 500;
    color: var(--text-primary);
}

.invoice-number .badge[b-minddrhqto] {
    font-size: 0.625rem;
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    font-weight: 600;
    text-transform: uppercase;
}

.invoice-number .badge.credit[b-minddrhqto] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.invoice-number .badge.debit[b-minddrhqto] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.description-cell[b-minddrhqto] {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

.description-cell .description[b-minddrhqto] {
    color: var(--text-primary);
}

.description-cell .reason[b-minddrhqto] {
    font-size: 0.75rem;
    color: var(--text-muted);
    font-style: italic;
}

.amount[b-minddrhqto] {
    font-weight: 600;
}

.amount.positive[b-minddrhqto] {
    color: var(--text-primary);
}

.amount.negative[b-minddrhqto] {
    color: var(--theme-success);
}

/* Status badge pattern consolidated in app.css */

.type-badge[b-minddrhqto] {
    display: inline-block;
    padding: 0.25rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-weight: 500;
    background: var(--theme-gray-100);
    color: var(--text-secondary);
}

.type-badge.creditnote[b-minddrhqto] {
    background: var(--theme-success-subtle);
    color: var(--theme-success);
}

.type-badge.debitnote[b-minddrhqto] {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning);
}

.action-buttons[b-minddrhqto] {
    display: flex;
    gap: 0.5rem;
}

/* Action button patterns consolidated in app.css */

/* Page-specific icon button customization */
.icon-btn[b-minddrhqto] {
    padding: 0.25rem 0.5rem !important;
}

/* Dialog Styles */
.dialog-form[b-minddrhqto] {
    padding: 1rem;
}

.dialog-form .form-group[b-minddrhqto] {
    margin-bottom: 1rem;
}

.dialog-form .form-group label[b-minddrhqto] {
    display: block;
    margin-bottom: 0.375rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

.dialog-form .form-group .required[b-minddrhqto] {
    color: var(--theme-danger);
}

.dialog-buttons[b-minddrhqto] {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* Void Dialog */
.void-dialog[b-minddrhqto] {
    padding: 1rem;
    text-align: center;
}

.void-dialog .warning-icon[b-minddrhqto] {
    width: 4rem;
    height: 4rem;
    margin: 0 auto 1rem;
    background: var(--theme-warning-subtle);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.void-dialog .warning-icon i[b-minddrhqto] {
    font-size: 2rem;
    color: var(--theme-warning);
}

.void-dialog p[b-minddrhqto] {
    margin: 0 0 0.5rem 0;
    color: var(--text-primary);
}

.void-dialog .warning-text[b-minddrhqto] {
    color: var(--theme-danger);
    font-size: 0.875rem;
}

.void-dialog .form-group[b-minddrhqto] {
    margin-top: 1.5rem;
    text-align: left;
}

.void-dialog .form-group label[b-minddrhqto] {
    display: block;
    margin-bottom: 0.375rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--text-primary);
}

/* Responsive */
@media (max-width: 768px) {
    .page-header[b-minddrhqto] {
        flex-direction: column;
        gap: 1rem;
    }

    .header-actions[b-minddrhqto] {
        width: 100%;
    }

    .header-actions .action-btn[b-minddrhqto] {
        flex: 1;
    }

    .filters-row[b-minddrhqto] {
        flex-direction: column;
    }

    .filter-item[b-minddrhqto] {
        width: 100%;
    }
}

/* Modal styles now handled by FshModal component */
/* /Pages/SuperAdmin/Modules/Modules.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-2ebocjxu75] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.search-inline[b-2ebocjxu75] { flex: 1; min-width: 200px; }

.nav-search-box[b-2ebocjxu75] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 34px;
    padding: 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
}

.nav-search-box i[b-2ebocjxu75] { font-size: 0.875rem; color: var(--text-muted); }
.nav-search-box input[b-2ebocjxu75] { border: none; outline: none; background: transparent; font-size: 0.8125rem; color: var(--text-primary); width: 100%; }

.clear-search[b-2ebocjxu75] {
    display: flex; align-items: center; justify-content: center;
    width: 20px; height: 20px; border: none;
    background: var(--bg-surface-tertiary); border-radius: 50%;
    cursor: pointer; color: var(--text-muted); font-size: 0.75rem;
}

.filter-inline[b-2ebocjxu75] { min-width: 120px; }

.filter-select[b-2ebocjxu75] {
    height: 34px; padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color); border-radius: 6px;
    background: var(--bg-surface); font-size: 0.8125rem; color: var(--text-primary);
}

.filter-select:focus[b-2ebocjxu75] { outline: none; border-color: var(--theme-primary); }

.refresh-btn[b-2ebocjxu75] {
    display: flex; align-items: center; justify-content: center;
    width: 34px; height: 34px; border: 1px solid var(--border-color);
    border-radius: 6px; background: var(--bg-surface); color: var(--text-secondary);
    cursor: pointer; flex-shrink: 0;
}

.refresh-btn:hover[b-2ebocjxu75] { background: var(--bg-surface-secondary); }

.spinner-sm[b-2ebocjxu75] {
    width: 14px; height: 14px;
    border: 2px solid var(--border-color); border-top-color: var(--theme-primary);
    border-radius: 50%; animation: spin-b-2ebocjxu75 0.6s linear infinite;
}

@keyframes spin-b-2ebocjxu75 { to { transform: rotate(360deg); } }

/* ============ Content ============ */
.content-area[b-2ebocjxu75] { margin-bottom: 1rem; }

.table-container[b-2ebocjxu75] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ Module Name Cell ============ */
.module-name-cell[b-2ebocjxu75] { display: flex; align-items: center; gap: 0.75rem; }

.module-icon[b-2ebocjxu75] {
    width: 36px; height: 36px; border-radius: 8px;
    display: flex; align-items: center; justify-content: center;
    color: white; font-size: 1rem; flex-shrink: 0;
}

.module-code[b-2ebocjxu75] {
    display: block; font-size: 0.7rem; color: var(--text-muted);
    text-transform: uppercase; letter-spacing: 0.03em;
}

/* ============ Badges ============ */
.category-badge[b-2ebocjxu75] {
    display: inline-flex; padding: 0.2rem 0.5rem; border-radius: 6px;
    font-size: 0.75rem; font-weight: 600;
}

.type-badge[b-2ebocjxu75], .status-badge[b-2ebocjxu75] {
    display: inline-flex; align-items: center; gap: 0.25rem;
    padding: 0.2rem 0.5rem; border-radius: 6px;
    font-size: 0.75rem; font-weight: 600;
}

.type-badge i[b-2ebocjxu75], .status-badge i[b-2ebocjxu75] { font-size: 0.75rem; }

.type-badge.core[b-2ebocjxu75] { background: rgba(245, 158, 11, 0.1); color: var(--theme-warning-emphasis); }
.type-badge.addon[b-2ebocjxu75] { background: var(--bg-surface-secondary); color: var(--text-secondary); }

.status-badge.active[b-2ebocjxu75] { background: rgba(16, 185, 129, 0.1); color: var(--theme-success-emphasis); }
.status-badge.inactive[b-2ebocjxu75] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger-emphasis); }

.order-badge[b-2ebocjxu75] {
    display: inline-flex; align-items: center; justify-content: center;
    min-width: 28px; height: 28px; padding: 0 0.375rem;
    border-radius: 6px; font-size: 0.8125rem; font-weight: 700;
    background: var(--bg-surface-secondary); color: var(--text-secondary);
}

.text-muted[b-2ebocjxu75] { color: var(--text-muted); }

/* ============ Form Row ============ */
[b-2ebocjxu75] .form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 0.75rem; }

/* ============ List Footer ============ */
.list-footer[b-2ebocjxu75] {
    display: flex; align-items: center; justify-content: space-between;
    padding: 0.75rem 1rem; background: var(--bg-surface);
    border: 1px solid var(--border-color); border-radius: 10px;
}

.footer-left[b-2ebocjxu75] { display: flex; align-items: center; gap: 1rem; }
.results-text[b-2ebocjxu75] { font-size: 0.8125rem; color: var(--text-secondary); }

.page-size-selector[b-2ebocjxu75] { display: flex; align-items: center; gap: 0.5rem; font-size: 0.8125rem; color: var(--text-secondary); }
.page-size-selector select[b-2ebocjxu75] { padding: 0.25rem 0.5rem; border: 1px solid var(--border-color); border-radius: 4px; font-size: 0.8125rem; background: var(--bg-surface); }

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .navigation-bar[b-2ebocjxu75] { flex-direction: column; }
    .search-inline[b-2ebocjxu75], .filter-inline[b-2ebocjxu75] { width: 100%; }
    .filter-select[b-2ebocjxu75] { width: 100%; }
    .list-footer[b-2ebocjxu75] { flex-direction: column; gap: 0.5rem; }
    [b-2ebocjxu75] .form-row { grid-template-columns: 1fr; }
}
/* /Pages/SuperAdmin/Packages/PackageForm.razor.rz.scp.css */
/* ============ Form Grid ============ */
.form-grid[b-jw2orq6odg] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1rem;
    margin-bottom: 1rem;
}

.form-grid-3[b-jw2orq6odg] {
    grid-template-columns: repeat(3, 1fr);
}

/* ============ Feature Categories ============ */
.feature-categories[b-jw2orq6odg] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.feature-category[b-jw2orq6odg] {
    padding: 1rem;
    background: var(--bg-surface-secondary);
    border-radius: 8px;
    border-left: 3px solid var(--theme-primary);
}

.feature-category-title[b-jw2orq6odg] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--text-primary);
    margin: 0 0 0.75rem 0;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.feature-category-title i[b-jw2orq6odg] {
    font-size: 1rem;
    color: var(--theme-primary);
}

.feature-grid[b-jw2orq6odg] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.5rem;
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .form-grid[b-jw2orq6odg],
    .form-grid-3[b-jw2orq6odg],
    .feature-grid[b-jw2orq6odg] {
        grid-template-columns: 1fr;
    }
}
/* /Pages/SuperAdmin/Packages/Packages.razor.rz.scp.css */
/* ============ Navigation Bar ============ */
.navigation-bar[b-sa017s7ena] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    margin-bottom: 1rem;
    flex-wrap: wrap;
}

.search-inline[b-sa017s7ena] { flex: 1; min-width: 200px; }

.nav-search-box[b-sa017s7ena] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    height: 34px;
    padding: 0 0.625rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
}

.nav-search-box i[b-sa017s7ena] { font-size: 0.875rem; color: var(--text-muted); }

.nav-search-box input[b-sa017s7ena] {
    border: none;
    outline: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    width: 100%;
}

.clear-search[b-sa017s7ena] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    border: none;
    background: var(--bg-surface-tertiary);
    border-radius: 50%;
    cursor: pointer;
    color: var(--text-muted);
    font-size: 0.75rem;
}

.filter-inline[b-sa017s7ena] { min-width: 120px; }

.filter-select[b-sa017s7ena] {
    height: 34px;
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    font-size: 0.8125rem;
    color: var(--text-primary);
}

.filter-select:focus[b-sa017s7ena] { outline: none; border-color: var(--theme-primary); }

.refresh-btn[b-sa017s7ena] {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    flex-shrink: 0;
}

.refresh-btn:hover[b-sa017s7ena] { background: var(--bg-surface-secondary); }

.spinner-sm[b-sa017s7ena] {
    width: 14px;
    height: 14px;
    border: 2px solid var(--border-color);
    border-top-color: var(--theme-primary);
    border-radius: 50%;
    animation: spin-b-sa017s7ena 0.6s linear infinite;
}

@keyframes spin-b-sa017s7ena { to { transform: rotate(360deg); } }

/* ============ Content Area ============ */
.content-area[b-sa017s7ena] { margin-bottom: 1rem; }

.table-container[b-sa017s7ena] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
}

/* ============ Status Badges ============ */
.status-badges[b-sa017s7ena] { display: flex; flex-wrap: wrap; gap: 0.25rem; }

.status-badge[b-sa017s7ena] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
}

.status-badge.active[b-sa017s7ena] { background: rgba(16, 185, 129, 0.1); color: var(--theme-success-emphasis); }
.status-badge.inactive[b-sa017s7ena] { background: rgba(239, 68, 68, 0.1); color: var(--theme-danger-emphasis); }
.status-badge.default[b-sa017s7ena] { background: rgba(59, 130, 246, 0.1); color: var(--theme-info); }

.status-badge i[b-sa017s7ena] { font-size: 0.75rem; }

/* ============ Feature & Trial Badges ============ */
.feature-count-badge[b-sa017s7ena] {
    display: inline-flex;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

.trial-badge[b-sa017s7ena] {
    display: inline-flex;
    padding: 0.2rem 0.5rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

/* ============ Package Name Cell ============ */
.packages-name-cell[b-sa017s7ena] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
}

.packages-avatar[b-sa017s7ena] {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1rem;
    flex-shrink: 0;
}

.packages-info[b-sa017s7ena] { display: flex; flex-direction: column; }
.packages-name[b-sa017s7ena] { font-weight: 600; font-size: 0.875rem; color: var(--text-primary); }
.packages-code[b-sa017s7ena] { font-size: 0.75rem; color: var(--text-muted); text-transform: uppercase; }

/* ============ Price Cell ============ */
.packages-price-cell[b-sa017s7ena] { display: flex; flex-direction: column; gap: 0.125rem; }

.packages-price-monthly[b-sa017s7ena] {
    display: flex;
    align-items: baseline;
    gap: 0.125rem;
}

.packages-price-amount[b-sa017s7ena] { font-weight: 700; font-size: 0.875rem; color: var(--text-primary); }
.packages-price-period[b-sa017s7ena] { font-size: 0.75rem; color: var(--text-muted); }

.packages-save-badge[b-sa017s7ena] {
    display: inline-flex;
    padding: 0.125rem 0.375rem;
    border-radius: 4px;
    font-size: 0.625rem;
    font-weight: 700;
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success-emphasis);
    margin-left: 0.25rem;
}

/* ============ Limits Cell ============ */
.packages-limits-cell[b-sa017s7ena] { display: flex; flex-direction: column; gap: 0.25rem; }

.packages-limit-item[b-sa017s7ena] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.packages-limit-item i[b-sa017s7ena] { font-size: 0.875rem; color: var(--text-muted); }

/* ============ List Footer ============ */
.list-footer[b-sa017s7ena] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.75rem 1rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
}

.footer-left[b-sa017s7ena] { display: flex; align-items: center; gap: 1rem; }

.results-text[b-sa017s7ena] { font-size: 0.8125rem; color: var(--text-secondary); }

.page-size-selector[b-sa017s7ena] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

.page-size-selector select[b-sa017s7ena] {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 4px;
    font-size: 0.8125rem;
    background: var(--bg-surface);
    color: var(--text-primary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .navigation-bar[b-sa017s7ena] { flex-direction: column; }
    .search-inline[b-sa017s7ena] { width: 100%; }
    .filter-inline[b-sa017s7ena] { width: 100%; }
    .filter-select[b-sa017s7ena] { width: 100%; }
    .list-footer[b-sa017s7ena] { flex-direction: column; gap: 0.5rem; }
}
/* /Pages/SuperAdmin/Payment/PendingPaymentConfirmations.razor.rz.scp.css */
/* Note: Empty state now uses centralized EmptyState component. */
/* /Pages/SuperAdmin/Payment/PlatformPaymentGateways.razor.rz.scp.css */
.gateway-card[b-9zjikntjhw] {
    transition: all 0.2s ease;
    border: 1px solid var(--bs-border-color);
}

.gateway-card:hover[b-9zjikntjhw] {
    border-color: var(--bs-primary);
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.1);
}

.gateway-card.inactive[b-9zjikntjhw] {
    opacity: 0.6;
}

.gateway-icon[b-9zjikntjhw] {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--bs-light);
    border-radius: 0.5rem;
}

.gateway-suggestion[b-9zjikntjhw] {
    cursor: pointer;
    transition: all 0.2s ease;
    border: 2px dashed var(--bs-border-color);
}

.gateway-suggestion:hover[b-9zjikntjhw] {
    border-color: var(--bs-primary);
    background: var(--bs-light);
}
/* /Pages/SuperAdmin/SubscriptionAnalytics.razor.rz.scp.css */
/* =============================================
   Subscription Analytics - Scoped Styles
   ============================================= */

/* Navigation bar */
[b-oiqzq0oydm] .navigation-bar {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.625rem 1rem;
    background: var(--analytics-bar-bg);
    border: 1px solid var(--analytics-border);
    border-radius: 0.5rem;
    margin-bottom: 1.25rem;
}

[b-oiqzq0oydm] .period-selector {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-oiqzq0oydm] .period-label {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--analytics-label-color);
    white-space: nowrap;
}

[b-oiqzq0oydm] .period-select {
    padding: 0.375rem 0.75rem;
    border: 1px solid var(--analytics-border);
    border-radius: 0.375rem;
    font-size: 0.8125rem;
    background: var(--analytics-input-bg);
    color: var(--analytics-text);
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s;
}

[b-oiqzq0oydm] .period-select:focus {
    border-color: var(--analytics-focus);
    box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15);
}

[b-oiqzq0oydm] .refresh-btn {
    margin-left: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border: 1px solid var(--analytics-border);
    border-radius: 0.375rem;
    background: var(--analytics-input-bg);
    color: var(--analytics-label-color);
    cursor: pointer;
    transition: all 0.15s;
}

[b-oiqzq0oydm] .refresh-btn:hover:not(:disabled) {
    background: var(--analytics-hover-bg);
    color: var(--analytics-text);
}

[b-oiqzq0oydm] .refresh-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

[b-oiqzq0oydm] .spinner-sm {
    display: inline-block;
    width: 0.875rem;
    height: 0.875rem;
    border: 2px solid var(--analytics-border);
    border-top-color: var(--analytics-focus);
    border-radius: 50%;
    animation: spin-b-oiqzq0oydm 0.6s linear infinite;
}

@keyframes spin-b-oiqzq0oydm {
    to { transform: rotate(360deg); }
}

/* =============================================
   Analytics 2-column layout
   ============================================= */

[b-oiqzq0oydm] .analytics-layout {
    display: grid;
    grid-template-columns: 2fr 1fr;
    gap: 1.25rem;
}

[b-oiqzq0oydm] .analytics-left {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

[b-oiqzq0oydm] .analytics-right {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

[b-oiqzq0oydm] .analytics-chart-pair {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
}

/* =============================================
   Analytics Card
   ============================================= */

[b-oiqzq0oydm] .analytics-card {
    background: var(--analytics-card-bg);
    border: 1px solid var(--analytics-border);
    border-radius: 0.625rem;
    overflow: hidden;
    transition: box-shadow 0.15s;
}

[b-oiqzq0oydm] .analytics-card:hover {
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

[b-oiqzq0oydm] .analytics-card-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.125rem;
    border-bottom: 1px solid var(--analytics-border);
}

[b-oiqzq0oydm] .analytics-card-header h5 {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin: 0;
    font-size: 0.9375rem;
    font-weight: 600;
    color: var(--analytics-text);
}

[b-oiqzq0oydm] .analytics-card-header h5 i {
    color: var(--analytics-accent);
    font-size: 1.125rem;
}

[b-oiqzq0oydm] .analytics-card-body {
    padding: 1rem 1.125rem;
}

[b-oiqzq0oydm] .analytics-card-body.no-padding {
    padding: 0;
}

/* =============================================
   Chart Legend
   ============================================= */

[b-oiqzq0oydm] .chart-legend {
    display: flex;
    align-items: center;
    gap: 1rem;
}

[b-oiqzq0oydm] .legend-item {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    color: var(--analytics-label-color);
}

[b-oiqzq0oydm] .legend-dot {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
}

[b-oiqzq0oydm] .legend-dot.revenue {
    background: rgb(16, 185, 129);
}

[b-oiqzq0oydm] .legend-dot.new-subs {
    background: rgb(59, 130, 246);
}

/* =============================================
   Top Tenants List
   ============================================= */

[b-oiqzq0oydm] .top-tenants-list {
    display: flex;
    flex-direction: column;
}

[b-oiqzq0oydm] .top-tenant-item {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1.125rem;
    border-bottom: 1px solid var(--analytics-border-light);
    transition: background 0.1s;
}

[b-oiqzq0oydm] .top-tenant-item:last-child {
    border-bottom: none;
}

[b-oiqzq0oydm] .top-tenant-item:hover {
    background: var(--analytics-hover-bg);
}

[b-oiqzq0oydm] .rank-badge {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    font-size: 0.75rem;
    font-weight: 700;
    flex-shrink: 0;
    background: var(--analytics-hover-bg);
    color: var(--analytics-label-color);
}

[b-oiqzq0oydm] .rank-badge.gold {
    background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning));
    color: var(--text-inverse);
}

[b-oiqzq0oydm] .rank-badge.silver {
    background: linear-gradient(135deg, var(--border-strong), var(--text-muted));
    color: var(--text-inverse);
}

[b-oiqzq0oydm] .rank-badge.bronze {
    background: linear-gradient(135deg, var(--theme-warning-emphasis), var(--theme-warning-text));
    color: var(--text-inverse);
}

[b-oiqzq0oydm] .tenant-info {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-width: 0;
}

[b-oiqzq0oydm] .tenant-name {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--analytics-text);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

[b-oiqzq0oydm] .tenant-plan {
    font-size: 0.6875rem;
    color: var(--analytics-label-color);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

[b-oiqzq0oydm] .tenant-revenue {
    font-size: 0.8125rem;
    font-weight: 700;
    color: var(--analytics-emerald);
    white-space: nowrap;
}

/* =============================================
   Revenue by Plan
   ============================================= */

[b-oiqzq0oydm] .revenue-by-plan {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

[b-oiqzq0oydm] .plan-revenue-item {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

[b-oiqzq0oydm] .plan-info {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

[b-oiqzq0oydm] .plan-name {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--analytics-text);
    text-transform: capitalize;
}

[b-oiqzq0oydm] .plan-count {
    font-size: 0.6875rem;
    color: var(--analytics-label-color);
}

[b-oiqzq0oydm] .plan-revenue {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

[b-oiqzq0oydm] .revenue-value {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--analytics-text);
}

[b-oiqzq0oydm] .revenue-percent {
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--analytics-label-color);
    background: var(--analytics-hover-bg);
    padding: 0.125rem 0.5rem;
    border-radius: 999px;
}

[b-oiqzq0oydm] .plan-progress {
    height: 0.375rem;
    background: var(--analytics-progress-bg);
    border-radius: 999px;
    overflow: hidden;
}

[b-oiqzq0oydm] .progress-fill {
    height: 100%;
    border-radius: 999px;
    transition: width 0.4s ease;
    background: var(--analytics-accent);
}

[b-oiqzq0oydm] .progress-fill.starter {
    background: var(--theme-success);
}

[b-oiqzq0oydm] .progress-fill.professional {
    background: var(--theme-info);
}

[b-oiqzq0oydm] .progress-fill.enterprise {
    background: var(--theme-purple);
}

[b-oiqzq0oydm] .progress-fill.free,
[b-oiqzq0oydm] .progress-fill.trial {
    background: var(--theme-warning);
}

/* =============================================
   Subscription Status Summary
   ============================================= */

[b-oiqzq0oydm] .status-summary {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}

[b-oiqzq0oydm] .status-item {
    display: flex;
    align-items: center;
    gap: 0.625rem;
    padding: 0.5rem 0.625rem;
    border-radius: 0.375rem;
    transition: background 0.1s;
}

[b-oiqzq0oydm] .status-item:hover {
    background: var(--analytics-hover-bg);
}

[b-oiqzq0oydm] .status-indicator {
    width: 0.5rem;
    height: 0.5rem;
    border-radius: 50%;
    flex-shrink: 0;
}

[b-oiqzq0oydm] .status-indicator.active {
    background: var(--theme-success);
}

[b-oiqzq0oydm] .status-indicator.trial {
    background: var(--theme-info);
}

[b-oiqzq0oydm] .status-indicator.expiring {
    background: var(--theme-warning);
}

[b-oiqzq0oydm] .status-indicator.suspended {
    background: var(--theme-danger);
}

[b-oiqzq0oydm] .status-indicator.churned {
    background: var(--theme-gray-500);
}

[b-oiqzq0oydm] .status-label {
    flex: 1;
    font-size: 0.8125rem;
    color: var(--analytics-text);
}

[b-oiqzq0oydm] .status-count {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--analytics-text);
}

/* =============================================
   Growth Insights
   ============================================= */

[b-oiqzq0oydm] .insights-list {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

[b-oiqzq0oydm] .insight-item {
    display: flex;
    gap: 0.75rem;
    padding: 0.75rem;
    border-radius: 0.5rem;
    border: 1px solid var(--analytics-border-light);
    background: var(--analytics-card-bg);
    transition: border-color 0.15s;
}

[b-oiqzq0oydm] .insight-item:hover {
    border-color: var(--analytics-border);
}

[b-oiqzq0oydm] .insight-item.positive {
    border-left: 3px solid var(--theme-success);
}

[b-oiqzq0oydm] .insight-item.warning {
    border-left: 3px solid var(--theme-warning);
}

[b-oiqzq0oydm] .insight-item.info {
    border-left: 3px solid var(--theme-info);
}

[b-oiqzq0oydm] .insight-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2rem;
    height: 2rem;
    border-radius: 0.375rem;
    flex-shrink: 0;
    font-size: 1rem;
}

[b-oiqzq0oydm] .insight-item.positive .insight-icon {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

[b-oiqzq0oydm] .insight-item.warning .insight-icon {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

[b-oiqzq0oydm] .insight-item.info .insight-icon {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

[b-oiqzq0oydm] .insight-content {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 0;
}

[b-oiqzq0oydm] .insight-title {
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--analytics-text);
}

[b-oiqzq0oydm] .insight-description {
    font-size: 0.75rem;
    color: var(--analytics-label-color);
    line-height: 1.4;
}

/* =============================================
   Transaction Grid Overrides
   ============================================= */

[b-oiqzq0oydm] .tenant-cell {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-oiqzq0oydm] .tenant-mini-avatar {
    width: 1.5rem;
    height: 1.5rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.625rem;
    font-weight: 700;
    color: var(--text-inverse);
    flex-shrink: 0;
}

[b-oiqzq0oydm] .tenant-mini-avatar.color-blue { background: var(--theme-info); }
[b-oiqzq0oydm] .tenant-mini-avatar.color-green { background: var(--theme-success); }
[b-oiqzq0oydm] .tenant-mini-avatar.color-purple { background: var(--theme-purple); }
[b-oiqzq0oydm] .tenant-mini-avatar.color-orange { background: var(--theme-warning); }
[b-oiqzq0oydm] .tenant-mini-avatar.color-pink { background: var(--theme-purple); }
[b-oiqzq0oydm] .tenant-mini-avatar.color-cyan { background: var(--theme-info); }

[b-oiqzq0oydm] .transaction-type {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.02em;
}

[b-oiqzq0oydm] .transaction-type.new,
[b-oiqzq0oydm] .transaction-type.subscription {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

[b-oiqzq0oydm] .transaction-type.renewal {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

[b-oiqzq0oydm] .transaction-type.upgrade {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

[b-oiqzq0oydm] .transaction-type.cancellation,
[b-oiqzq0oydm] .transaction-type.churn {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

[b-oiqzq0oydm] .plan-badge {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: capitalize;
}

[b-oiqzq0oydm] .plan-badge.free,
[b-oiqzq0oydm] .plan-badge.trial {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

[b-oiqzq0oydm] .plan-badge.starter {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

[b-oiqzq0oydm] .plan-badge.professional {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

[b-oiqzq0oydm] .plan-badge.enterprise {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

[b-oiqzq0oydm] .transaction-amount {
    font-weight: 600;
    font-size: 0.8125rem;
}

[b-oiqzq0oydm] .transaction-amount.positive {
    color: var(--theme-success);
}

[b-oiqzq0oydm] .transaction-amount.negative {
    color: var(--theme-danger);
}

[b-oiqzq0oydm] .transaction-status {
    display: inline-block;
    padding: 0.125rem 0.5rem;
    border-radius: 999px;
    font-size: 0.6875rem;
    font-weight: 600;
    text-transform: capitalize;
}

[b-oiqzq0oydm] .transaction-status.completed,
[b-oiqzq0oydm] .transaction-status.success {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

[b-oiqzq0oydm] .transaction-status.pending {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning-emphasis);
}

[b-oiqzq0oydm] .transaction-status.failed {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

/* =============================================
   Inline Alerts (error state)
   ============================================= */

[b-oiqzq0oydm] .inline-alerts {
    margin-bottom: 1.25rem;
}

[b-oiqzq0oydm] .inline-alert {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    font-size: 0.8125rem;
}

[b-oiqzq0oydm] .inline-alert.warning {
    background: rgba(245, 158, 11, 0.08);
    border: 1px solid rgba(245, 158, 11, 0.2);
    color: var(--analytics-text);
}

[b-oiqzq0oydm] .inline-alert.warning i {
    color: var(--theme-warning);
    font-size: 1.25rem;
}

/* =============================================
   Dark Mode
   ============================================= */

:root[data-theme="dark"][b-oiqzq0oydm],
[data-bs-theme="dark"][b-oiqzq0oydm] {
    --analytics-bar-bg: var(--text-heading);
    --analytics-border: var(--text-primary);
    --analytics-border-light: var(--text-heading);
    --analytics-input-bg: var(--bg-darkest);
    --analytics-text: var(--border-color);
    --analytics-label-color: var(--text-muted);
    --analytics-hover-bg: var(--text-heading);
    --analytics-card-bg: var(--bg-darkest);
    --analytics-accent: var(--theme-info);
    --analytics-focus: var(--theme-info);
    --analytics-progress-bg: var(--text-primary);
    --analytics-emerald: var(--theme-success);
}

/* =============================================
   Responsive
   ============================================= */

@media (max-width: 1200px) {
    [b-oiqzq0oydm] .analytics-layout {
        grid-template-columns: 1fr;
    }

    [b-oiqzq0oydm] .analytics-chart-pair {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 768px) {
    [b-oiqzq0oydm] .analytics-chart-pair {
        grid-template-columns: 1fr;
    }

    [b-oiqzq0oydm] .navigation-bar {
        flex-wrap: wrap;
    }

    [b-oiqzq0oydm] .chart-legend {
        display: none;
    }
}

@media (max-width: 480px) {
    [b-oiqzq0oydm] .analytics-card-header {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

    [b-oiqzq0oydm] .analytics-card-body {
        padding: 0.75rem;
    }
}
/* /Pages/SuperAdmin/TenantCompanySettings.razor.rz.scp.css */
/* ============ Tenant Header ============ */
.tenant-header[b-zug430f4lt] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.875rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.5rem;
    gap: 1rem;
    flex-wrap: wrap;
}

.tenant-header-left[b-zug430f4lt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.status-pill[b-zug430f4lt] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    padding: 0.2rem 0.625rem;
    border-radius: 20px;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.03em;
}
.status-pill[b-zug430f4lt]::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
}
.status-pill.active[b-zug430f4lt] { background: rgba(16,185,129,0.1); color: var(--theme-success-emphasis); }
.status-pill.active[b-zug430f4lt]::before { background: var(--theme-success); }
.status-pill.inactive[b-zug430f4lt] { background: rgba(107,114,128,0.1); color: var(--theme-gray-500); }
.status-pill.inactive[b-zug430f4lt]::before { background: var(--theme-gray-400); }

.plan-pill[b-zug430f4lt] {
    display: inline-flex;
    padding: 0.2rem 0.625rem;
    border-radius: 20px;
    font-size: 0.6875rem;
    font-weight: 700;
    background: linear-gradient(135deg, var(--theme-purple-emphasis), var(--theme-purple-emphasis));
    color: var(--text-inverse);
    letter-spacing: 0.02em;
}

.billing-cycle[b-zug430f4lt] {
    font-size: 0.75rem;
    color: var(--text-muted);
}

.tenant-email[b-zug430f4lt] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    color: var(--text-secondary);
}
.tenant-email i[b-zug430f4lt] { font-size: 0.875rem; }

.tenant-validity[b-zug430f4lt] { text-align: right; flex-shrink: 0; }
.validity-label[b-zug430f4lt] {
    display: block;
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}
.validity-date[b-zug430f4lt] {
    font-size: 1.125rem;
    font-weight: 700;
    color: var(--theme-primary);
}

/* ============ Info Strip ============ */
.info-strip[b-zug430f4lt] {
    display: flex;
    gap: 0.5rem;
    padding: 0.75rem 1.25rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.info-cell[b-zug430f4lt] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    min-width: 100px;
}

.info-label[b-zug430f4lt] {
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
}

.info-value[b-zug430f4lt] {
    font-size: 0.8125rem;
    color: var(--text-primary);
    font-weight: 500;
}

.info-value.price[b-zug430f4lt] {
    font-weight: 700;
    color: var(--theme-success);
}

code.info-value[b-zug430f4lt] {
    background: var(--bg-surface-tertiary);
    padding: 0.1rem 0.4rem;
    border-radius: 4px;
    font-family: monospace;
    font-size: 0.75rem;
}

.db-badge[b-zug430f4lt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem;
    border-radius: 6px;
    font-size: 0.6875rem;
    font-weight: 600;
}
.db-badge.shared[b-zug430f4lt] { background: rgba(59,130,246,0.1); color: var(--theme-info-emphasis); }
.db-badge.dedicated[b-zug430f4lt] { background: rgba(16,185,129,0.1); color: var(--theme-success-emphasis); }
.db-badge i[b-zug430f4lt] { font-size: 0.8125rem; }

.status-dot[b-zug430f4lt] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
}
.status-dot[b-zug430f4lt]::before {
    content: '';
    width: 6px; height: 6px;
    border-radius: 50%;
}
.status-dot.on[b-zug430f4lt] { color: var(--theme-success-emphasis); }
.status-dot.on[b-zug430f4lt]::before { background: var(--theme-success); }
.status-dot.off[b-zug430f4lt] { color: var(--theme-gray-500); }
.status-dot.off[b-zug430f4lt]::before { background: var(--theme-gray-400); }

/* ============ Entitlements ============ */
.entitlements-section[b-zug430f4lt] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.section-header[b-zug430f4lt] {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 1.25rem;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    border-bottom: 1px solid var(--border-color);
    background: var(--bg-surface-secondary);
}
.section-header i[b-zug430f4lt] { color: var(--theme-primary); font-size: 1rem; }

.entitlements-grid[b-zug430f4lt] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 0;
}

.ent-item[b-zug430f4lt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 1.25rem;
    font-size: 0.8125rem;
    border-bottom: 1px solid var(--border-color-light, rgba(0,0,0,0.04));
    transition: background 0.15s;
}
.ent-item:hover[b-zug430f4lt] { background: var(--bg-surface-secondary); }
.ent-item > i:first-child[b-zug430f4lt] { font-size: 1rem; color: var(--text-muted); width: 1.25rem; text-align: center; }
.ent-item.on > i:first-child[b-zug430f4lt] { color: var(--theme-success-emphasis); }
.ent-item > span[b-zug430f4lt] { flex: 1; color: var(--text-primary); font-weight: 500; }
.ent-item.off > span[b-zug430f4lt] { color: var(--text-muted); }
.ent-status[b-zug430f4lt] { font-size: 1rem; }
.ent-item.on .ent-status[b-zug430f4lt] { color: var(--theme-success); }
.ent-item.off .ent-status[b-zug430f4lt] { color: var(--theme-gray-300); }

/* ============ Connection String (collapsible) ============ */
.conn-section[b-zug430f4lt] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.conn-toggle[b-zug430f4lt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem 1.25rem;
    background: transparent;
    border: none;
    font-size: 0.8125rem;
    font-weight: 600;
    color: var(--text-primary);
    cursor: pointer;
    transition: background 0.15s;
}
.conn-toggle:hover[b-zug430f4lt] { background: var(--bg-surface-secondary); }
.conn-toggle i:first-child[b-zug430f4lt] { color: var(--theme-primary); }
.conn-toggle .toggle-icon[b-zug430f4lt] { margin-left: auto; color: var(--text-muted); }

.conn-value[b-zug430f4lt] {
    padding: 0.75rem 1.25rem;
    border-top: 1px solid var(--border-color);
    background: var(--bg-surface-tertiary);
}
.conn-value code[b-zug430f4lt] {
    font-size: 0.75rem;
    font-family: monospace;
    word-break: break-all;
    color: var(--text-secondary);
}

/* ============ Responsive ============ */
@media (max-width: 768px) {
    .tenant-header[b-zug430f4lt] { flex-direction: column; align-items: flex-start; }
    .tenant-validity[b-zug430f4lt] { text-align: left; }
    .info-strip[b-zug430f4lt] { flex-direction: column; }
    .info-cell[b-zug430f4lt] { flex-direction: row; justify-content: space-between; }
    .entitlements-grid[b-zug430f4lt] { grid-template-columns: 1fr; }
}
/* /Pages/SuperAdmin/TenantManagement.razor.rz.scp.css */
/* ========================================
   TENANT MANAGEMENT PAGE - SCOPED STYLES
   Dark mode handled automatically via CSS variables from theme-core.css
   ======================================== */

/* ========================================
   TENANT TABLE — Merged Name Cell
   ======================================== */

.tenant-info[b-zl84wb25qo] {
    display: flex;
    flex-direction: column;
    gap: 0.0625rem;
}

.tenant-info .tenant-name[b-zl84wb25qo] {
    font-weight: 600;
    font-size: 0.875rem;
}

.tenant-meta[b-zl84wb25qo] {
    font-size: 0.6875rem;
    color: var(--text-muted);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 200px;
}

.action-buttons[b-zl84wb25qo] {
    display: flex;
    gap: 0.375rem;
    justify-content: flex-end;
}

/* ========================================
   NAVIGATION BAR (Combined Tabs + Search + Refresh)
   ======================================== */

[b-zl84wb25qo] .navigation-bar {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.625rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    margin-bottom: 1.25rem;
    overflow: visible;
    position: relative;
    z-index: 10;
}

/* ========================================
   TABS (Inline Status Filters)
   ======================================== */

[b-zl84wb25qo] .tabs-inline {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.25rem;
    gap: 0.125rem;
}

[b-zl84wb25qo] .tab-compact {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.5rem 0.875rem;
    background: transparent;
    border: none;
    border-radius: 6px;
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    white-space: nowrap;
}

[b-zl84wb25qo] .tab-compact:hover {
    color: var(--text-primary);
    background: var(--bg-hover);
}

[b-zl84wb25qo] .tab-compact.active {
    background: var(--bg-surface);
    color: var(--text-primary);
    box-shadow: var(--shadow-sm);
}

[b-zl84wb25qo] .tab-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 18px;
    height: 18px;
    padding: 0 5px;
    background: var(--border-color);
    border-radius: 9px;
    font-size: 0.6875rem;
    font-weight: 600;
    color: var(--text-secondary);
}

[b-zl84wb25qo] .tab-compact.active .tab-badge {
    background: var(--theme-primary);
    color: var(--text-inverse);
}

[b-zl84wb25qo] .tab-badge.success {
    background: var(--theme-success-subtle);
    color: var(--theme-success-emphasis);
}

[b-zl84wb25qo] .tab-compact.active .tab-badge.success {
    background: var(--theme-success);
    color: var(--text-inverse);
}

[b-zl84wb25qo] .tab-badge.warning {
    background: var(--theme-warning-subtle);
    color: var(--theme-warning-emphasis);
}

[b-zl84wb25qo] .tab-compact.active .tab-badge.warning {
    background: var(--theme-warning);
    color: var(--text-inverse);
}

[b-zl84wb25qo] .tab-badge.danger {
    background: var(--theme-danger-subtle);
    color: var(--theme-danger-emphasis);
}

[b-zl84wb25qo] .tab-compact.active .tab-badge.danger {
    background: var(--theme-danger);
    color: var(--text-inverse);
}

[b-zl84wb25qo] .tab-badge.info {
    background: var(--theme-info-subtle);
    color: var(--theme-info-emphasis);
}

[b-zl84wb25qo] .tab-compact.active .tab-badge.info {
    background: var(--theme-info);
    color: var(--text-inverse);
}

/* ========================================
   SEARCH BOX (Inline)
   ======================================== */

[b-zl84wb25qo] .search-inline {
    flex: 1;
    min-width: 150px;
    max-width: 300px;
}

[b-zl84wb25qo] .nav-search-box {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0 0.75rem;
    background: var(--bg-surface-secondary);
    border: 1px solid var(--border-color);
    border-radius: 6px;
    height: 34px;
    transition: var(--sidenav-transition-fast);
}

[b-zl84wb25qo] .nav-search-box:focus-within {
    border-color: var(--theme-primary);
    box-shadow: 0 0 0 2px var(--focus-ring-color);
}

[b-zl84wb25qo] .nav-search-box i {
    color: var(--text-muted);
    font-size: 1rem;
    flex-shrink: 0;
}

[b-zl84wb25qo] .nav-search-box input {
    flex: 1;
    border: none;
    background: transparent;
    font-size: 0.8125rem;
    color: var(--text-primary);
    outline: none;
    min-width: 0;
}

[b-zl84wb25qo] .nav-search-box input::placeholder {
    color: var(--text-muted);
}

[b-zl84wb25qo] .nav-search-box .clear-search {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    padding: 0;
    background: var(--bg-surface-tertiary);
    border: none;
    border-radius: 50%;
    color: var(--text-secondary);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

[b-zl84wb25qo] .nav-search-box .clear-search:hover {
    background: var(--border-color);
    color: var(--text-primary);
}

/* ========================================
   REFRESH BUTTON
   ======================================== */

[b-zl84wb25qo] .refresh-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    background: var(--theme-primary);
    border: none;
    border-radius: 6px;
    color: var(--text-inverse);
    cursor: pointer;
    transition: var(--sidenav-transition-fast);
    flex-shrink: 0;
}

[b-zl84wb25qo] .refresh-btn:hover:not(:disabled) {
    background: var(--theme-primary-emphasis);
}

[b-zl84wb25qo] .refresh-btn:disabled {
    opacity: 0.5;
    cursor: not-allowed;
}

[b-zl84wb25qo] .refresh-btn i {
    font-size: 1rem;
}

[b-zl84wb25qo] .spinner-sm {
    display: inline-block;
    width: 14px;
    height: 14px;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-top-color: white;
    border-radius: 50%;
    animation: spin-b-zl84wb25qo 0.6s linear infinite;
}

@keyframes spin-b-zl84wb25qo {
    to { transform: rotate(360deg); }
}

/* ========================================
   CONTENT AREA & TABLE CONTAINER
   ======================================== */

[b-zl84wb25qo] .content-area {
    margin-bottom: 1rem;
}

[b-zl84wb25qo] .table-container {
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
    overflow: visible;
}

/* ========================================
   BULK ACTIONS BAR
   ======================================== */

[b-zl84wb25qo] .bulk-actions-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.875rem 1.25rem;
    background: linear-gradient(135deg, rgba(99, 102, 241, 0.08) 0%, rgba(99, 102, 241, 0.04) 100%);
    border: 1px solid var(--theme-primary-border);
    border-radius: 10px;
    margin-bottom: 1rem;
    animation: slideDown 0.2s ease-out;
}

[b-zl84wb25qo] .bulk-actions-bar .selected-count {
    font-weight: 600;
    color: var(--theme-primary);
}

[b-zl84wb25qo] .bulk-actions-bar .action-buttons {
    display: flex;
    gap: 0.5rem;
}

[b-zl84wb25qo] .bulk-actions-bar .action-buttons button {
    padding: 0.5rem 1rem;
    border: 1px solid var(--border-color);
    border-radius: 8px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    font-weight: 500;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 0.375rem;
    transition: all 0.2s ease;
}

[b-zl84wb25qo] .bulk-actions-bar .action-buttons button:hover {
    background: var(--theme-primary);
    border-color: var(--theme-primary);
    color: white;
}

/* ========================================
   TENANT NAME CELL
   ======================================== */

[b-zl84wb25qo] .tenant-key {
    font-size: 0.8125rem;
    font-family: monospace;
    color: var(--text-secondary);
}

[b-zl84wb25qo] .tenant-name-cell {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

[b-zl84wb25qo] .tenant-name-cell.clickable {
    cursor: pointer;
}

[b-zl84wb25qo] .tenant-name-cell.clickable:hover .tenant-name {
    color: var(--theme-primary);
}

[b-zl84wb25qo] .tenant-name {
    font-weight: 600;
    color: var(--text-primary);
    transition: color 0.2s ease;
}

[b-zl84wb25qo] .tenant-avatar {
    width: 40px;
    height: 40px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 600;
    font-size: 1rem;
    color: white;
    flex-shrink: 0;
}

[b-zl84wb25qo] .tenant-avatar.small {
    width: 32px;
    height: 32px;
    font-size: 0.875rem;
}

[b-zl84wb25qo] .tenant-avatar.large {
    width: 64px;
    height: 64px;
    font-size: 1.5rem;
}

[b-zl84wb25qo] .tenant-avatar.color-blue { background: linear-gradient(135deg, var(--theme-info), var(--theme-info-emphasis)); }
[b-zl84wb25qo] .tenant-avatar.color-green { background: linear-gradient(135deg, var(--theme-success), var(--theme-success-emphasis)); }
[b-zl84wb25qo] .tenant-avatar.color-purple { background: linear-gradient(135deg, var(--theme-purple), var(--theme-purple-emphasis)); }
[b-zl84wb25qo] .tenant-avatar.color-orange { background: linear-gradient(135deg, var(--theme-warning), var(--theme-warning-emphasis)); }
[b-zl84wb25qo] .tenant-avatar.color-pink { background: linear-gradient(135deg, var(--theme-purple), var(--theme-purple-emphasis)); }
[b-zl84wb25qo] .tenant-avatar.color-cyan { background: linear-gradient(135deg, var(--theme-info), var(--theme-info-emphasis)); }

[b-zl84wb25qo] .tenant-info {
    display: flex;
    flex-direction: column;
}

[b-zl84wb25qo] .tenant-info .tenant-name {
    font-weight: 600;
    color: var(--text-primary);
    transition: color 0.2s ease;
}

[b-zl84wb25qo] .tenant-info .tenant-id {
    font-size: 0.75rem;
    color: var(--text-muted);
    font-family: monospace;
}

/* ========================================
   STATUS BADGES
   ======================================== */

[b-zl84wb25qo] .status-badge {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.25rem 0.5rem;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 500;
}

[b-zl84wb25qo] .status-badge.active {
    background: rgba(16, 185, 129, 0.1);
    color: var(--theme-success);
}

[b-zl84wb25qo] .status-badge.inactive {
    background: rgba(107, 114, 128, 0.1);
    color: var(--theme-gray-500);
}

[b-zl84wb25qo] .status-badge.trial {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

[b-zl84wb25qo] .status-badge.expiring {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

[b-zl84wb25qo] .status-badge.suspended {
    background: rgba(239, 68, 68, 0.1);
    color: var(--theme-danger);
}

/* ========================================
   PACKAGE BADGES
   ======================================== */

[b-zl84wb25qo] .package-badge {
    padding: 0.25rem 0.75rem;
    border-radius: 6px;
    font-size: 0.8rem;
    font-weight: 500;
}

[b-zl84wb25qo] .package-badge.free {
    background: var(--theme-gray-200);
    color: var(--theme-gray-700);
}

[b-zl84wb25qo] .package-badge.starter {
    background: rgba(59, 130, 246, 0.1);
    color: var(--theme-info);
}

[b-zl84wb25qo] .package-badge.professional {
    background: rgba(139, 92, 246, 0.1);
    color: var(--theme-purple);
}

[b-zl84wb25qo] .package-badge.enterprise {
    background: rgba(245, 158, 11, 0.1);
    color: var(--theme-warning);
}

/* ========================================
   USAGE METRICS
   ======================================== */

[b-zl84wb25qo] .usage-metrics {
    display: flex;
    flex-direction: column;
    gap: 0.375rem;
}

[b-zl84wb25qo] .usage-item {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
}

[b-zl84wb25qo] .usage-item i {
    color: var(--text-muted);
    font-size: 0.875rem;
}

[b-zl84wb25qo] .usage-text {
    color: var(--text-muted);
    min-width: 45px;
}

[b-zl84wb25qo] .mini-progress {
    width: 40px;
    height: 4px;
    background: var(--bg-body);
    border-radius: 2px;
    overflow: hidden;
}

[b-zl84wb25qo] .mini-progress-bar {
    height: 100%;
    border-radius: 2px;
    transition: width 0.3s ease;
}

[b-zl84wb25qo] .mini-progress-bar.usage-low {
    background: var(--theme-success);
}

[b-zl84wb25qo] .mini-progress-bar.usage-medium {
    background: var(--theme-warning);
}

[b-zl84wb25qo] .mini-progress-bar.usage-high {
    background: var(--theme-danger);
}

/* ========================================
   SUBSCRIPTION DATE
   ======================================== */

[b-zl84wb25qo] .subscription-date {
    display: flex;
    flex-direction: column;
}

[b-zl84wb25qo] .subscription-date .date {
    font-size: 0.875rem;
}

[b-zl84wb25qo] .subscription-date .days-remaining {
    font-size: 0.75rem;
}

[b-zl84wb25qo] .subscription-date .days-remaining.warning {
    color: var(--theme-warning);
}

[b-zl84wb25qo] .subscription-date .days-remaining.expired {
    color: var(--theme-danger);
}

/* ========================================
   LAST ACTIVITY
   ======================================== */

[b-zl84wb25qo] .last-activity {
    font-size: 0.875rem;
}

[b-zl84wb25qo] .last-activity.recent {
    color: var(--theme-success);
}

[b-zl84wb25qo] .last-activity.moderate {
    color: var(--text-secondary);
}

[b-zl84wb25qo] .last-activity.stale {
    color: var(--theme-warning);
}

[b-zl84wb25qo] .last-activity.inactive {
    color: var(--theme-danger);
}

/* ========================================
   TENANT DETAIL MODAL CONTENT
   ======================================== */

/* Header: avatar + ID + badges */
[b-zl84wb25qo] .td-header {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    margin-bottom: 1rem;
    padding-bottom: 0.875rem;
    border-bottom: 1px solid var(--border-color);
}

[b-zl84wb25qo] .td-header-info {
    flex: 1;
    min-width: 0;
}

[b-zl84wb25qo] .td-id {
    font-size: 0.6875rem;
    color: var(--text-muted);
    font-family: monospace;
    display: block;
    margin-bottom: 0.25rem;
}

[b-zl84wb25qo] .td-badges {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

[b-zl84wb25qo] .td-meta {
    font-size: 0.75rem;
    color: var(--text-muted);
}

/* Status pills */
[b-zl84wb25qo] .status-pill {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.15rem 0.5rem;
    border-radius: 20px;
    font-size: 0.6875rem;
    font-weight: 700;
}
[b-zl84wb25qo] .status-pill::before { content: ''; width: 6px; height: 6px; border-radius: 50%; }
[b-zl84wb25qo] .status-pill.active { background: rgba(16,185,129,0.1); color: var(--theme-success-emphasis); }
[b-zl84wb25qo] .status-pill.active::before { background: var(--theme-success); }
[b-zl84wb25qo] .status-pill.inactive { background: rgba(107,114,128,0.1); color: var(--theme-gray-500); }
[b-zl84wb25qo] .status-pill.inactive::before { background: var(--theme-gray-400); }
[b-zl84wb25qo] .status-pill.suspended { background: rgba(239,68,68,0.1); color: var(--theme-danger-emphasis); }
[b-zl84wb25qo] .status-pill.suspended::before { background: var(--theme-danger); }

[b-zl84wb25qo] .plan-pill {
    display: inline-flex;
    padding: 0.15rem 0.5rem;
    border-radius: 20px;
    font-size: 0.6875rem;
    font-weight: 700;
    background: linear-gradient(135deg, var(--theme-purple-emphasis), var(--theme-purple-emphasis));
    color: var(--text-inverse);
}

/* Info grid (2-col) */
[b-zl84wb25qo] .td-info-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0.25rem 1.25rem;
    margin-bottom: 1rem;
}

[b-zl84wb25qo] .td-info-item {
    display: flex;
    flex-direction: column;
    padding: 0.5rem 0;
    border-bottom: 1px solid var(--border-color-light, rgba(0,0,0,0.04));
}

[b-zl84wb25qo] .td-label {
    font-size: 0.6875rem;
    font-weight: 500;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.03em;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    margin-bottom: 0.125rem;
}

[b-zl84wb25qo] .td-label i {
    font-size: 0.75rem;
    color: var(--theme-primary);
}

[b-zl84wb25qo] .td-value {
    font-size: 0.8125rem;
    font-weight: 500;
    color: var(--text-primary);
    word-break: break-all;
}

[b-zl84wb25qo] .td-price {
    color: var(--theme-success);
    font-weight: 700;
    font-size: 0.9375rem;
}

/* DB badge */
[b-zl84wb25qo] .db-badge {
    display: inline-flex; align-items: center; gap: 0.25rem;
    padding: 0.15rem 0.5rem; border-radius: 6px;
    font-size: 0.6875rem; font-weight: 600;
}
[b-zl84wb25qo] .db-badge.shared { background: rgba(59,130,246,0.1); color: var(--theme-info-emphasis); }
[b-zl84wb25qo] .db-badge.dedicated { background: rgba(16,185,129,0.1); color: var(--theme-success-emphasis); }
[b-zl84wb25qo] .db-badge i { font-size: 0.8125rem; }

/* Section headers */
[b-zl84wb25qo] .td-section-header {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    padding: 0.375rem 0;
    margin-bottom: 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: var(--text-muted);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-bottom: 1px solid var(--border-color);
}
[b-zl84wb25qo] .td-section-header i { color: var(--theme-primary); font-size: 0.875rem; }

/* Usage bars */
[b-zl84wb25qo] .td-usage-bar { margin-bottom: 0.625rem; }
[b-zl84wb25qo] .td-usage-header {
    display: flex; justify-content: space-between;
    font-size: 0.75rem; color: var(--text-secondary); margin-bottom: 0.25rem;
}
[b-zl84wb25qo] .td-usage-track {
    position: relative;
    height: 5px;
    border-radius: 3px;
    background: var(--bg-surface-tertiary);
    overflow: hidden;
}
[b-zl84wb25qo] .td-usage-fill {
    position: absolute;
    top: 0;
    left: 0;
    height: 5px;
    border-radius: 3px;
    transition: width 0.5s ease;
}
[b-zl84wb25qo] .td-usage-fill.normal { background: var(--theme-success); }
[b-zl84wb25qo] .td-usage-fill.warning { background: var(--theme-warning); }
[b-zl84wb25qo] .td-usage-fill.critical { background: var(--theme-danger); }
    border-top: 1px solid var(--border-color);[b-zl84wb25qo]
}

[b-zl84wb25qo] .info-grid {
    display: grid;
    gap: 1rem;
}

[b-zl84wb25qo] .info-item {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
}

[b-zl84wb25qo] .info-item.full-width {
    grid-column: 1 / -1;
}

[b-zl84wb25qo] .info-label {
    font-size: 0.75rem;
    color: var(--text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-weight: 600;
}

[b-zl84wb25qo] .info-value {
    font-weight: 500;
    word-break: break-all;
    color: var(--text-primary);
}

[b-zl84wb25qo] .info-value.muted {
    color: var(--text-secondary);
}

[b-zl84wb25qo] .connection-string {
    font-family: monospace;
    font-size: 0.8rem;
}

/* ========================================
   DATA GRID CUSTOMIZATION
   ======================================== */

[b-zl84wb25qo] .tenants-grid {
    border: none;
}

[b-zl84wb25qo] .tenants-grid .rz-datatable-thead > tr > th {
    background: var(--bg-body);
    border-bottom: 2px solid var(--border-color);
    padding: 1rem;
    font-weight: 600;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: var(--text-secondary);
}

[b-zl84wb25qo] .tenants-grid .rz-datatable-data > tr > td {
    padding: 1rem;
    border-bottom: 1px solid var(--border-color);
    vertical-align: middle;
}

[b-zl84wb25qo] .tenants-grid .rz-datatable-data > tr:hover {
    background: var(--bg-body);
}

[b-zl84wb25qo] .tenants-grid .rz-pager {
    padding: 1rem;
    border-top: 1px solid var(--border-color);
}

/* ========================================
   PROGRESS BARS (Usage)
   ======================================== */

[b-zl84wb25qo] .progress-bar.bg-success { background-color: var(--theme-success) !important; }
[b-zl84wb25qo] .progress-bar.bg-warning { background-color: var(--theme-warning) !important; }
[b-zl84wb25qo] .progress-bar.bg-danger { background-color: var(--theme-danger) !important; }

/* ========================================
   EMPTY STATE
   ======================================== */

[b-zl84wb25qo] .empty-state-container {
    padding: 3rem;
}

[b-zl84wb25qo] .empty-state .empty-icon {
    font-size: 4rem;
    color: var(--text-muted);
    opacity: 0.5;
}

/* ========================================
   LIST FOOTER
   ======================================== */

[b-zl84wb25qo] .list-footer {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-top: 1rem;
    padding: 1rem 1.25rem;
    background: var(--bg-surface);
    border-radius: 12px;
    border: 1px solid var(--border-color);
}

[b-zl84wb25qo] .footer-left {
    display: flex;
    align-items: center;
    gap: 1.5rem;
}

[b-zl84wb25qo] .results-text {
    font-size: 0.875rem;
    color: var(--text-secondary);
}

[b-zl84wb25qo] .results-text strong {
    color: var(--text-primary);
}

[b-zl84wb25qo] .page-size-selector {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.8125rem;
    color: var(--text-secondary);
}

[b-zl84wb25qo] .page-size-selector label {
    margin: 0;
    white-space: nowrap;
}

[b-zl84wb25qo] .page-size-selector select {
    padding: 0.25rem 0.5rem;
    border: 1px solid var(--border-color);
    border-radius: 6px;
    background: var(--bg-surface);
    color: var(--text-primary);
    font-size: 0.8125rem;
    cursor: pointer;
    outline: none;
    transition: border-color 0.15s ease;
}

[b-zl84wb25qo] .page-size-selector select:focus {
    border-color: var(--theme-primary);
}

/* ========================================
   DARK MODE OVERRIDES
   ======================================== */

/* Dark mode: FshModal handles its own theming */

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .section-header {
    border-bottom-color: var(--border-color);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .section-header h6 {
    color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .info-label {
    color: var(--text-muted);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .info-value {
    color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .tenant-main-info h3 {
    color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .tenant-main-info .tenant-key {
    color: var(--text-secondary);
}

/* Dark mode: FshModal footer handles its own theming */

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .tenants-grid .rz-datatable-thead > tr > th {
    background: var(--bg-surface-tertiary);
    border-bottom-color: var(--border-color);
    color: var(--text-secondary);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .tenants-grid .rz-datatable-data > tr > td {
    border-bottom-color: var(--border-color);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .tenants-grid .rz-datatable-data > tr:hover {
    background: var(--bg-surface-secondary);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .tenant-info .tenant-name {
    color: var(--text-primary);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .tenant-info .tenant-id {
    color: var(--text-muted);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .package-badge.free {
    background: rgba(107, 114, 128, 0.2);
    color: var(--text-muted);
}

:global([data-bs-theme="dark"])[b-zl84wb25qo]  .details-overlay {
    background: rgba(0, 0, 0, 0.7);
}

/* ========================================
   RESPONSIVE - 1200px
   ======================================== */

@media (max-width: 1200px) {
    [b-zl84wb25qo] .navigation-bar {
        flex-wrap: wrap;
    }

    [b-zl84wb25qo] .search-inline {
        flex: 1 1 150px;
        min-width: 120px;
    }
}

/* ========================================
   RESPONSIVE - 768px
   ======================================== */

@media (max-width: 768px) {
    [b-zl84wb25qo] .navigation-bar {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    [b-zl84wb25qo] .tabs-inline {
        order: 1;
        flex: 0 0 auto;
    }

    [b-zl84wb25qo] .search-inline {
        order: 2;
        flex: 1 1 100%;
        max-width: none;
    }

    [b-zl84wb25qo] .refresh-btn {
        order: 3;
    }

    [b-zl84wb25qo] .bulk-actions-bar {
        flex-direction: column;
        gap: 0.75rem;
        align-items: stretch;
    }

    [b-zl84wb25qo] .bulk-actions-bar .action-buttons {
        flex-wrap: wrap;
    }

    /* FshModal is responsive by default */

    [b-zl84wb25qo] .list-footer {
        flex-direction: column;
        gap: 0.75rem;
        align-items: flex-start;
    }
}

/* ========================================
   RESPONSIVE - 480px
   ======================================== */

@media (max-width: 480px) {
    [b-zl84wb25qo] .tabs-inline {
        flex: 1 1 100%;
        justify-content: center;
    }

    [b-zl84wb25qo] .tab-compact span:not(.tab-badge) {
        display: none;
    }

    [b-zl84wb25qo] .tab-compact {
        padding: 0.5rem 0.625rem;
    }

    [b-zl84wb25qo] .bulk-actions-bar .action-buttons button span {
        display: none;
    }

    [b-zl84wb25qo] .details-panel {
        width: 100%;
    }
}
/* /Pages/SuperAdmin/TenantOverview.razor.rz.scp.css */
/* ============ Section Animation ============ */
.section-anim[b-rxiq38uiqi] {
    animation: sectionSlideUp-b-rxiq38uiqi 0.3s ease-out both;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

@keyframes sectionSlideUp-b-rxiq38uiqi {
    from { opacity: 0; transform: translateY(10px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ============ Navigation Bar ============ */
.navigation-bar[b-rxiq38uiqi] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.5rem 0.75rem;
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 10px;
    margin-bottom: 0.75rem;
    flex-wrap: wrap;
}

.tabs-inline[b-rxiq38uiqi] {
    display: flex;
    background: var(--bg-surface-tertiary);
    border-radius: 8px;
    padding: 0.2rem;
    gap: 0.125rem;
    flex: 1;
}

.tab-compact[b-rxiq38uiqi] {
    display: flex; align-items: center; gap: 0.35rem;
    padding: 0.3rem 0.625rem;
    background: transparent; border: none; border-radius: 6px;
    font-size: 0.78rem; font-weight: 500;
    color: var(--text-secondary); cursor: pointer;
    white-space: nowrap; transition: all 0.15s;
}
.tab-compact:hover[b-rxiq38uiqi] { color: var(--text-primary); background: var(--bg-hover); }
.tab-compact.active[b-rxiq38uiqi] { background: var(--bg-surface); color: var(--text-primary); box-shadow: 0 1px 3px rgba(0,0,0,0.08); }
.tab-compact i[b-rxiq38uiqi] { font-size: 0.9rem; }

.nav-actions[b-rxiq38uiqi] { display: flex; gap: 0.25rem; }

.quick-action-sm[b-rxiq38uiqi] {
    display: flex; align-items: center; justify-content: center;
    width: 30px; height: 30px;
    border: 1px solid var(--border-color); border-radius: 6px;
    background: var(--bg-surface); color: var(--text-secondary);
    cursor: pointer; transition: all 0.15s;
}
.quick-action-sm:hover[b-rxiq38uiqi] { background: var(--bg-surface-secondary); color: var(--text-primary); }
.quick-action-sm.warning:hover[b-rxiq38uiqi] { background: rgba(245,158,11,0.1); color: var(--theme-warning-emphasis); border-color: var(--theme-warning-emphasis); }

/* ============ Content Card ============ */
.content-card[b-rxiq38uiqi] {
    background: var(--bg-surface);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    padding: 0.875rem 1.25rem;
    transition: box-shadow 0.2s ease;
}
.content-card:hover[b-rxiq38uiqi] { box-shadow: 0 2px 8px rgba(0,0,0,0.04); }

.card-header-row[b-rxiq38uiqi] {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 0.625rem; padding-bottom: 0.5rem;
    border-bottom: 1px solid var(--border-color);
}
.card-header-row h6[b-rxiq38uiqi] {
    margin: 0; font-size: 0.875rem; font-weight: 600;
    color: var(--text-primary); display: flex; align-items: center; gap: 0.4rem;
}
.card-header-row h6 i[b-rxiq38uiqi] { color: var(--theme-primary); font-size: 1rem; }

/* ============ Info Grid ============ */
[b-rxiq38uiqi] .info-grid-4col {
    display: grid; grid-template-columns: repeat(4, 1fr); gap: 0.5rem 1.25rem;
}
[b-rxiq38uiqi] .info-item { display: flex; flex-direction: column; gap: 0.125rem; }
[b-rxiq38uiqi] .info-label {
    font-size: 0.6875rem; font-weight: 600; text-transform: uppercase;
    letter-spacing: 0.04em; color: var(--text-muted);
}
[b-rxiq38uiqi] .info-value { font-size: 0.8125rem; color: var(--text-primary); font-weight: 500; }
[b-rxiq38uiqi] .code-badge {
    display: inline-block; padding: 0.1rem 0.4rem;
    background: var(--bg-surface-tertiary); border-radius: 4px;
    font-family: monospace; font-size: 0.75rem;
}

/* ============ Domain Badge ============ */
.domain-badge[b-rxiq38uiqi] {
    display: inline-flex; padding: 0.1rem 0.4rem; border-radius: 4px;
    font-size: 0.625rem; font-weight: 700; margin-left: 0.25rem;
}
.domain-badge.verified[b-rxiq38uiqi] { background: rgba(16,185,129,0.1); color: var(--theme-success); }
.domain-badge.pending[b-rxiq38uiqi] { background: rgba(245,158,11,0.1); color: var(--theme-warning-emphasis); }

/* ============ Portal URL ============ */
.portal-url-row[b-rxiq38uiqi] {
    display: flex; align-items: center; gap: 0.375rem;
    margin-top: 0.625rem; padding-top: 0.5rem;
    border-top: 1px solid var(--border-color); font-size: 0.8125rem;
}
.portal-url-row i[b-rxiq38uiqi] { color: var(--theme-primary); }
.portal-url-row a[b-rxiq38uiqi] { color: var(--theme-primary); text-decoration: none; }
.portal-url-row a:hover[b-rxiq38uiqi] { text-decoration: underline; }

/* ============ Status Header ============ */
.tenant-status[b-rxiq38uiqi] {
    display: inline-flex; align-items: center; gap: 0.3rem;
    padding: 0.25rem 0.75rem; border-radius: 20px;
    font-size: 0.75rem; font-weight: 600;
}
.tenant-status.active[b-rxiq38uiqi] { background: rgba(16,185,129,0.1); color: var(--theme-success); }
.tenant-status.inactive[b-rxiq38uiqi] { background: rgba(239,68,68,0.1); color: var(--theme-danger); }

/* ============ Quota Grid ============ */
.quota-grid[b-rxiq38uiqi] { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
.quota-item[b-rxiq38uiqi] { display: flex; flex-direction: column; gap: 0.375rem; }
.quota-header[b-rxiq38uiqi] { display: flex; justify-content: space-between; align-items: center; }
.quota-label[b-rxiq38uiqi] {
    font-size: 0.75rem; font-weight: 500; color: var(--text-secondary);
    display: flex; align-items: center; gap: 0.25rem;
}
.quota-label i[b-rxiq38uiqi] { font-size: 0.875rem; }
.quota-value[b-rxiq38uiqi] { font-size: 0.6875rem; font-weight: 600; color: var(--text-muted); font-family: monospace; }
[b-rxiq38uiqi] .quota-progress { height: 6px !important; border-radius: 3px !important; }

/* ============ Subscription ============ */
.subscription-header[b-rxiq38uiqi] {
    display: flex; align-items: center; justify-content: space-between;
    margin-bottom: 0.75rem; padding-bottom: 0.5rem; border-bottom: 1px dashed var(--border-color);
}
.plan-badge[b-rxiq38uiqi] {
    display: inline-flex; padding: 0.25rem 0.75rem; border-radius: 6px;
    font-size: 0.75rem; font-weight: 700; text-transform: uppercase;
    background: var(--theme-primary); color: white;
}
.plan-badge.standard[b-rxiq38uiqi] { background: var(--theme-primary); }
.plan-badge.premium[b-rxiq38uiqi] { background: var(--theme-purple); }
.plan-badge.enterprise[b-rxiq38uiqi] { background: var(--theme-warning); color: var(--text-heading); }

.plan-price .price[b-rxiq38uiqi] { font-size: 1.25rem; font-weight: 700; color: var(--text-primary); }
.plan-price .period[b-rxiq38uiqi] { font-size: 0.75rem; color: var(--text-muted); }

.renewal-badge[b-rxiq38uiqi] {
    display: inline-flex; padding: 0.1rem 0.4rem; border-radius: 4px;
    font-size: 0.6875rem; font-weight: 600;
}
.renewal-badge.enabled[b-rxiq38uiqi] { background: rgba(16,185,129,0.1); color: var(--theme-success); }
.renewal-badge.disabled[b-rxiq38uiqi] { background: rgba(239,68,68,0.1); color: var(--theme-danger); }

.subscription-actions[b-rxiq38uiqi] {
    display: flex; gap: 0.5rem; margin-top: 0.75rem;
    padding-top: 0.5rem; border-top: 1px solid var(--border-color);
}

/* ============ Activity ============ */
.activity-list[b-rxiq38uiqi] { display: flex; flex-direction: column; }
.activity-item[b-rxiq38uiqi] {
    display: flex; align-items: flex-start; gap: 0.75rem;
    padding: 0.625rem 0; border-bottom: 1px solid var(--border-color);
    transition: background 0.15s;
}
.activity-item:last-child[b-rxiq38uiqi] { border-bottom: none; }
.activity-item:hover[b-rxiq38uiqi] { background: var(--bg-surface-secondary); margin: 0 -0.5rem; padding-left: 0.5rem; padding-right: 0.5rem; border-radius: 6px; }

.activity-icon[b-rxiq38uiqi] {
    width: 28px; height: 28px; display: flex; align-items: center; justify-content: center;
    border-radius: 6px; font-size: 0.875rem; flex-shrink: 0;
}
.activity-icon.login[b-rxiq38uiqi] { background: rgba(59,130,246,0.1); color: var(--theme-info); }
.activity-icon.settings[b-rxiq38uiqi] { background: rgba(139,92,246,0.1); color: var(--theme-purple); }
.activity-icon.user[b-rxiq38uiqi] { background: rgba(16,185,129,0.1); color: var(--theme-success); }
.activity-icon.billing[b-rxiq38uiqi] { background: rgba(245,158,11,0.1); color: var(--theme-warning); }
.activity-icon.error[b-rxiq38uiqi] { background: rgba(239,68,68,0.1); color: var(--theme-danger); }
.activity-icon.warning[b-rxiq38uiqi] { background: rgba(245,158,11,0.1); color: var(--theme-warning); }

.activity-content[b-rxiq38uiqi] { display: flex; flex-direction: column; gap: 0.125rem; flex: 1; }
.activity-description[b-rxiq38uiqi] { font-size: 0.8125rem; color: var(--text-primary); }
.activity-time[b-rxiq38uiqi] { font-size: 0.6875rem; color: var(--text-muted); }

/* ============ Charts ============ */
.charts-grid[b-rxiq38uiqi] { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1rem; }
.chart-panel[b-rxiq38uiqi] { border: 1px solid var(--border-color); border-radius: 8px; padding: 0.75rem; }
.chart-title[b-rxiq38uiqi] {
    font-size: 0.75rem; font-weight: 600; color: var(--text-secondary);
    margin: 0 0 0.5rem 0; display: flex; align-items: center; gap: 0.3rem;
}
.chart-title i[b-rxiq38uiqi] { color: var(--theme-primary); }
.empty-chart[b-rxiq38uiqi] {
    display: flex; flex-direction: column; align-items: center; gap: 0.25rem;
    padding: 2rem; color: var(--text-muted); font-size: 0.8125rem;
}
.empty-chart i[b-rxiq38uiqi] { font-size: 1.5rem; opacity: 0.4; }

/* ============ Status Badges ============ */
[b-rxiq38uiqi] .status-badge {
    display: inline-flex; padding: 0.15rem 0.5rem; border-radius: 20px;
    font-size: 0.6875rem; font-weight: 600;
}
[b-rxiq38uiqi] .status-badge.paid { background: rgba(16,185,129,0.1); color: var(--theme-success); }
[b-rxiq38uiqi] .status-badge.pending { background: rgba(245,158,11,0.1); color: var(--theme-warning-emphasis); }
[b-rxiq38uiqi] .status-badge.failed { background: rgba(239,68,68,0.1); color: var(--theme-danger); }

.table-container[b-rxiq38uiqi] { border: 1px solid var(--border-color); border-radius: 8px; overflow: hidden; }

/* ============ Responsive ============ */
@media (max-width: 1200px) {
    [b-rxiq38uiqi] .info-grid-4col { grid-template-columns: repeat(3, 1fr); }
    .quota-grid[b-rxiq38uiqi] { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 768px) {
    [b-rxiq38uiqi] .info-grid-4col { grid-template-columns: repeat(2, 1fr); }
    .quota-grid[b-rxiq38uiqi] { grid-template-columns: 1fr; }
    .navigation-bar[b-rxiq38uiqi] { flex-direction: column; align-items: stretch; }
    .tabs-inline[b-rxiq38uiqi] { overflow-x: auto; }
    .nav-actions[b-rxiq38uiqi] { justify-content: flex-end; }
    .subscription-header[b-rxiq38uiqi] { flex-direction: column; gap: 0.5rem; }
    .subscription-actions[b-rxiq38uiqi] { flex-direction: column; }
    .charts-grid[b-rxiq38uiqi] { grid-template-columns: 1fr; }
}
@media (max-width: 480px) {
    [b-rxiq38uiqi] .info-grid-4col { grid-template-columns: 1fr; }
    .tab-compact span[b-rxiq38uiqi] { display: none; }
}
