/* System pages: 404, error, access denied */

.lc-system-page {
    padding: var(--lc-space-10) var(--lc-space-4);
}

.lc-system-page .lc-empty-state {
    max-width: 36rem;
    margin: 0 auto;
}

.lc-skip-link {
    position: absolute;
    top: -100%;
    left: var(--lc-space-4);
    z-index: 1091;
    padding: var(--lc-space-2) var(--lc-space-4);
    background: var(--lc-color-primary-600);
    color: #fff;
    border-radius: var(--lc-radius-md);
    font-size: var(--lc-text-sm);
    font-weight: 500;
    text-decoration: none;
}

.lc-skip-link:focus {
    top: var(--lc-space-4);
    outline: none;
    box-shadow: var(--lc-focus-ring);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
[tabindex]:focus-visible {
    outline: none;
    box-shadow: var(--lc-focus-ring);
}

.profile-tabs .nav-link {
    font-size: var(--lc-text-sm);
    color: var(--lc-color-text-secondary);
    border-radius: var(--lc-radius-sm) var(--lc-radius-sm) 0 0;
    min-height: var(--lc-touch-target-min);
}

.profile-tabs .nav-link.active {
    color: var(--lc-color-primary-600);
    font-weight: 600;
}

.profile-tabs .nav-link:hover:not(.active) {
    color: var(--lc-color-text-primary);
}

.lc-card-skeleton-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: var(--lc-card-grid-gap-mobile);
    width: 100%;
}

@media (min-width: 992px) {
    .lc-card-skeleton-grid {
        grid-template-columns: repeat(4, 1fr);
        gap: var(--lc-card-grid-gap-desktop);
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .lc-card-skeleton-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}