@import '_content/BlazorDateRangePicker/BlazorDateRangePicker.iitr8bszy4.bundle.scp.css';
@import '_content/Microsoft.FluentUI.AspNetCore.Components/Microsoft.FluentUI.AspNetCore.Components.exfvxuochq.bundle.scp.css';

/* _content/Tourneys/Components/Baseline/BaselineAlert.razor.rz.scp.css */
/* Bootstrap Alert Component - Championship Gold Theme Integration */

.alert[b-hg85j05o90] {
    position: relative;
    padding: 1rem 1.25rem;
    margin-bottom: 1rem;
    border: 1px solid transparent;
    border-radius: var(--radius-medium, 8px);
    font-family: var(--bs-font-family-base, 'Source Sans 3', system-ui, sans-serif);
    line-height: 1.5;
    box-shadow: var(--shadow-sm);
}

/* Grid Layout for Alerts with Actions/Dismiss */
.alert-grid[b-hg85j05o90] {
    display: grid;
    gap: 0.75rem;
    align-items: center;
}

/* Grid configurations based on content */
.alert-grid.grid-2-columns[b-hg85j05o90] {
    grid-template-columns: 1fr auto;
}

.alert-grid.grid-3-columns[b-hg85j05o90] {
    grid-template-columns: auto 1fr auto;
}

.alert-grid.grid-4-columns[b-hg85j05o90] {
    grid-template-columns: auto 1fr auto auto;
}

/* Specific grid adjustments */
.alert:not(.alert-with-icon) .alert-grid.grid-3-columns[b-hg85j05o90] {
    grid-template-columns: 1fr auto auto;
}

.alert:not(.alert-with-icon) .alert-grid.grid-2-columns[b-hg85j05o90] {
    grid-template-columns: 1fr auto;
}

/* Icon + Content Layout */
.alert-with-icon:not(.alert-with-actions)[b-hg85j05o90] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.alert-icon[b-hg85j05o90] {
    flex-shrink: 0;
    margin-top: 0.125rem; /* Align with text baseline */
    font-size: 1.25rem;
    line-height: 1;
}

.alert-compact .alert-icon[b-hg85j05o90] {
    font-size: 1rem;
}

.alert-content[b-hg85j05o90] {
    flex: 1;
    min-width: 0; /* Allow content to shrink */
}

.alert-actions-column[b-hg85j05o90] {
    display: flex;
    gap: 0.5rem;
    align-items: center;
    flex-shrink: 0;
}

.alert-dismiss-column[b-hg85j05o90] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    flex-shrink: 0;
}

/* Title Styling */
.alert-title[b-hg85j05o90] {
    font-weight: 600;
    margin-bottom: 0.25rem;
    font-size: 0.95rem;
}

.alert-message[b-hg85j05o90] {
    font-size: 0.9rem;
    color: inherit;
}

/* Compact Variant */
.alert-compact[b-hg85j05o90] {
    padding: 0.75rem 1rem;
    font-size: 0.85rem;
}

.alert-compact .alert-title[b-hg85j05o90] {
    font-size: 0.9rem;
    margin-bottom: 0.125rem;
}

.alert-compact .alert-message[b-hg85j05o90] {
    font-size: 0.8rem;
}

/* Action buttons styling */
.alert-actions[b-hg85j05o90] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.alert-actions .btn[b-hg85j05o90] {
    font-size: 0.85rem;
    padding: 0.375rem 0.75rem;
}

/* Dismissible close button */
.alert-dismiss-column .btn-close[b-hg85j05o90] {
    padding: 0.375rem;
    margin: 0;
}

.alert-compact .alert-dismiss-column .btn-close[b-hg85j05o90] {
    padding: 0.25rem;
}

/* Alert type colors are defined in app.css due to CSS isolation limitations */

/* Responsive behavior for grid layout */
@media (max-width: 575.98px) {
    .alert-grid[b-hg85j05o90] {
        gap: 0.5rem;
    }

    /* For grids with action buttons, use grid areas to control layout */
    .alert-grid:has(.alert-actions-column)[b-hg85j05o90] {
        grid-template-areas:
            "icon content dismiss"
            "actions actions actions";
        grid-template-rows: auto auto;
    }

    /* 4-column grid: icon | content | dismiss with actions on second row */
    .alert-grid.grid-4-columns[b-hg85j05o90] {
        grid-template-columns: auto 1fr auto;
    }

    .alert-grid.grid-4-columns .alert-icon[b-hg85j05o90] {
        grid-area: icon;
    }

    .alert-grid.grid-4-columns .alert-content[b-hg85j05o90] {
        grid-area: content;
    }

    .alert-grid.grid-4-columns .alert-dismiss-column[b-hg85j05o90] {
        grid-area: dismiss;
    }

    .alert-grid.grid-4-columns .alert-actions-column[b-hg85j05o90] {
        grid-area: actions;
        justify-content: flex-start;
        margin-top: 0.5rem;
        padding-left: calc(1.25rem + 0.5rem); /* Match icon width + gap */
    }

    /* 3-column grid with actions (no icon): content | dismiss with actions on second row */
    .alert-grid.grid-3-columns:not(.alert-with-icon):has(.alert-actions-column)[b-hg85j05o90] {
        grid-template-columns: 1fr auto;
        grid-template-areas:
            "content dismiss"
            "actions actions";
    }

    .alert-grid.grid-3-columns:not(.alert-with-icon) .alert-content[b-hg85j05o90] {
        grid-area: content;
    }

    .alert-grid.grid-3-columns:not(.alert-with-icon) .alert-dismiss-column[b-hg85j05o90] {
        grid-area: dismiss;
    }

    .alert-grid.grid-3-columns:not(.alert-with-icon) .alert-actions-column[b-hg85j05o90] {
        grid-area: actions;
        justify-content: flex-start;
        margin-top: 0.5rem;
    }

    /* 3-column grid with icon and actions (no dismiss): icon | content with actions on second row */
    .alert-grid.grid-3-columns:has(.alert-icon):has(.alert-actions-column):not(:has(.alert-dismiss-column))[b-hg85j05o90] {
        grid-template-columns: auto 1fr;
        grid-template-areas:
            "icon content"
            "actions actions";
    }

    .alert-grid.grid-3-columns:has(.alert-icon):has(.alert-actions-column):not(:has(.alert-dismiss-column)) .alert-icon[b-hg85j05o90] {
        grid-area: icon;
    }

    .alert-grid.grid-3-columns:has(.alert-icon):has(.alert-actions-column):not(:has(.alert-dismiss-column)) .alert-content[b-hg85j05o90] {
        grid-area: content;
    }

    .alert-grid.grid-3-columns:has(.alert-icon):has(.alert-actions-column):not(:has(.alert-dismiss-column)) .alert-actions-column[b-hg85j05o90] {
        grid-area: actions;
        justify-content: flex-start;
        margin-top: 0.5rem;
        padding-left: calc(1.25rem + 0.75rem); /* Match icon width + gap */
    }

    /* 2-column grid with just actions: content with actions on second row */
    .alert-grid.grid-2-columns:has(.alert-actions-column)[b-hg85j05o90] {
        grid-template-areas:
            "content content"
            "actions actions";
        grid-template-rows: auto auto;
    }

    .alert-grid.grid-2-columns:has(.alert-actions-column) .alert-content[b-hg85j05o90] {
        grid-area: content;
    }

    .alert-grid.grid-2-columns:has(.alert-actions-column) .alert-actions-column[b-hg85j05o90] {
        grid-area: actions;
        justify-content: flex-start;
        margin-top: 0.5rem;
    }

    /* For grids without actions, keep original layout */
    .alert-grid:not(:has(.alert-actions-column))[b-hg85j05o90] {
        /* Keep default grid layout */
    }

    /* Button styling on mobile */
    .alert-actions-column .btn[b-hg85j05o90] {
        font-size: 0.8125rem;
        padding: 0.25rem 0.75rem;
    }
}

/* Responsive adjustments */
@media (max-width: 767.98px) {
    .alert[b-hg85j05o90] {
        padding: 0.875rem 1rem;
        margin-bottom: 0.875rem;
    }

    .alert-compact[b-hg85j05o90] {
        padding: 0.625rem 0.875rem;
    }

    .alert-with-icon[b-hg85j05o90] {
        gap: 0.625rem;
    }
}

/* Animation support */
.alert.fade[b-hg85j05o90] {
    transition: opacity 0.15s linear;
}

.alert.fade:not(.show)[b-hg85j05o90] {
    opacity: 0;
}
/* _content/Tourneys/Components/Baseline/BaselineIcon.razor.rz.scp.css */
/* ================================================
   Bootstrap Icon Component Styles
   ================================================ */

/* Icon Size Normalization Classes
   Some Bootstrap icons have different visual weights within their containers.
   These classes help normalize their perceived sizes when NormalizeSize=true */
.icon-normalized-lg[b-ympi3vf7fz] {
    font-size: 1.15rem !important;  /* For person, people icons */
}

.icon-normalized-md[b-ympi3vf7fz] {
    font-size: 1.1rem !important;   /* For geo-alt, calendar3, trophy, award icons */
}

/* Base icon styles */
i[b-ympi3vf7fz] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    vertical-align: middle;
    line-height: 1;
}

/* Center narrower icons like gender-ambiguous */
i.bi-gender-ambiguous[b-ympi3vf7fz] {
    margin-left: -1px;
}
/* _content/Tourneys/Components/Baseline/BaselineModal.razor.rz.scp.css */
/* Bootstrap Modal Component Styles */

/* Ensure modal is properly positioned */
.modal.show[b-glgrx5n7dz] {
    display: block !important;
}

/* Smooth transitions */
.modal[b-glgrx5n7dz] {
    transition: opacity 0.15s linear;
}

.modal:not(.show)[b-glgrx5n7dz] {
    opacity: 0;
}

.modal.show[b-glgrx5n7dz] {
    opacity: 1;
}

.modal-dialog[b-glgrx5n7dz] {
    transition: transform 0.3s ease-out, opacity 0.3s ease-out;
}

.modal:not(.show) .modal-dialog[b-glgrx5n7dz] {
    transform: translate(0, -50px);
    opacity: 0;
}

.modal.show .modal-dialog[b-glgrx5n7dz] {
    transform: none;
    opacity: 1;
}

/* Custom modal header styling to match app design */
.modal-header[b-glgrx5n7dz] {
    background-color: var(--bs-gray-100);
    border-bottom: 1px solid var(--bs-border-color);
}

.modal-title[b-glgrx5n7dz] {
    font-family: var(--font-family-sport);
    font-weight: 600;
    color: var(--bs-body-color);
}

/* Dark mode adjustments */
:global([data-theme="dark"]) .modal-content[b-glgrx5n7dz] {
    background-color: var(--bs-dark);
    color: var(--bs-light);
}

:global([data-theme="dark"]) .modal-header[b-glgrx5n7dz] {
    background-color: rgba(255, 255, 255, 0.03);
    border-bottom-color: var(--bs-gray-800);
}

:global([data-theme="dark"]) .modal-footer[b-glgrx5n7dz] {
    border-top-color: var(--bs-gray-800);
}

/* Focus management */
.modal:focus[b-glgrx5n7dz] {
    outline: none;
}

/* Ensure backdrop is properly styled */
.modal-backdrop[b-glgrx5n7dz] {
    opacity: 0;
    transition: opacity 0.15s linear;
}

.modal-backdrop.show[b-glgrx5n7dz] {
    opacity: 0.5;
}

/* Responsive adjustments */
@media (max-width: 576px) {
    .modal-dialog[b-glgrx5n7dz] {
        margin: 0.5rem;
    }
    
    .modal-fullscreen-sm-down[b-glgrx5n7dz] {
        max-width: 100%;
        margin: 0;
        height: 100%;
    }
}
/* _content/Tourneys/Components/Baseline/BaselinePanel.razor.rz.scp.css */
/* Panel Component Styles */

/* Responsive Panel Width - Replace JavaScript IsMobile detection */
.offcanvas-end[b-jq2xpaa7sk], .offcanvas-start[b-jq2xpaa7sk] {
    --bs-offcanvas-width: 50%; /* Desktop default */
}

@media (max-width: 767.98px) {
    .offcanvas-end[b-jq2xpaa7sk], .offcanvas-start[b-jq2xpaa7sk] {
        --bs-offcanvas-width: 90%; /* Mobile override */
    }
}

/* Mobile-only visibility */
.panel-mobile-only[b-jq2xpaa7sk] {
    display: none;
}

@media (max-width: 767px) {
    .panel-mobile-only[b-jq2xpaa7sk] {
        display: block;
    }
}

/* Header styling with visual separation */
.offcanvas-header[b-jq2xpaa7sk] {
    align-items: center;
    flex-wrap: nowrap;
    min-height: 6rem;
    padding: 1.5rem;
    border-bottom: 1px solid var(--panel-header-border);
    background-color: var(--panel-header-bg);
    position: relative;
}

/* Dark mode is now handled by CSS variables in app.css */

/* Special layout for header with image but no close button */
.offcanvas-header.justify-content-between[b-jq2xpaa7sk] {
    gap: 1.5rem;
}

.header-actions[b-jq2xpaa7sk] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-left: auto;
    flex-shrink: 0;
}

/* Much larger header images */
.header-image[b-jq2xpaa7sk] {
    height: 5rem;
    width: auto;
    max-width: 280px;
    object-fit: contain;
    border-radius: 0.5rem;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

/* Even larger for desktop when no close button */
@media (min-width: 768px) {
    .offcanvas-header.justify-content-between .header-image[b-jq2xpaa7sk] {
        height: 5.5rem;
        max-width: 320px;
    }
}

/* Enhanced title typography */
.offcanvas-title[b-jq2xpaa7sk] {
    margin-right: 1rem;
    flex: 1 1 auto;
    font-size: 1.45em;
    font-weight: 700;
    color: var(--color-text-primary);
    /* Allow wrapping for long tournament names */
    white-space: normal;
    line-height: 1.25;
    /* Limit to reasonable number of lines */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

/* Adjust title size based on length using container queries if supported */
@supports (container-type: inline-size) {
    .offcanvas-header[b-jq2xpaa7sk] {
        container-type: inline-size;
    }

    /* Smaller font for very long titles */
    @container (max-width: 400px) {
        .offcanvas-title[b-jq2xpaa7sk] {
            font-size: 1.25em;
            -webkit-line-clamp: 3;
        }
    }
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .offcanvas-header[b-jq2xpaa7sk] {
        min-height: 5rem;
        padding: 1.25rem;
    }

    .header-image[b-jq2xpaa7sk] {
        height: 4rem;
        max-width: 240px;
    }

    .offcanvas-title[b-jq2xpaa7sk] {
        font-size: 1.3em;
    }
}

/* Alternative close button styles */
.close-button-overlay[b-jq2xpaa7sk] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    background: var(--panel-close-btn-bg);
    border-radius: 50%;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    cursor: pointer;
    font-size: 1.5rem;
    line-height: 1;
    color: var(--panel-close-btn-color);
    box-shadow: var(--panel-close-btn-shadow);
    transition: all 0.2s ease;
}

.close-button-overlay:hover[b-jq2xpaa7sk] {
    background: var(--panel-close-btn-hover-bg);
    color: var(--panel-close-btn-hover-color);
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

.close-button-overlay:active[b-jq2xpaa7sk] {
    transform: scale(0.95);
}

/* Dark mode is now handled by CSS variables */

/* Footer styling */
.offcanvas-footer[b-jq2xpaa7sk] {
    padding: 1rem;
    padding-bottom: calc(1rem + env(safe-area-inset-bottom));
    border-top: 1px solid var(--panel-footer-border);
    display: flex;
    gap: 0.5rem;
    justify-content: flex-end;
    flex-wrap: wrap;
}

/* Sticky footer support */
.offcanvas.has-sticky-footer[b-jq2xpaa7sk] {
    display: flex;
    flex-direction: column;
}

.offcanvas-body.with-sticky-footer[b-jq2xpaa7sk] {
    flex: 1 1 auto;
    overflow-y: auto;
    /* Add small padding bottom to prevent content from being hidden behind footer shadow */
    padding-bottom: 0.5rem;
}

.offcanvas-footer.sticky[b-jq2xpaa7sk] {
    position: sticky;
    bottom: 0;
    background: var(--bs-offcanvas-bg);
    /* Add subtle shadow to show it's floating */
    box-shadow: var(--panel-footer-shadow);
}

/* Alternative: Use fixed positioning on mobile to avoid Safari tap zone */
@media (max-width: 767px) and (hover: none) and (pointer: coarse) {
    /* Target touch devices */
    .offcanvas-bottom .offcanvas-footer.sticky[b-jq2xpaa7sk] {
        position: fixed;
        bottom: calc(env(safe-area-inset-bottom) + 1rem);
        left: 0;
        right: 0;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    
    /* Add extra padding to body content to account for fixed footer */
    .offcanvas-bottom .offcanvas-body.with-sticky-footer[b-jq2xpaa7sk] {
        padding-bottom: 5rem;
    }
}

/* Experimental: iOS Glass Morphism Floating Footer */
.offcanvas-footer.floating-glass[b-jq2xpaa7sk] {
    position: absolute;
    bottom: calc(env(safe-area-inset-bottom) + 2rem);
    left: 1rem;
    right: 1rem;
    padding: 1rem 1.25rem;
    border-radius: 1rem;
    border: 1.5px solid rgba(var(--bs-primary-rgb), 0.08);
    box-shadow: 
        0 8px 32px 0 rgba(0, 0, 0, 0.15),
        0 1px 0 0 rgba(255, 255, 255, 0.9) inset,
        0 -1px 0 0 rgba(0, 0, 0, 0.08) inset,
        0 0 0 0.5px rgba(var(--bs-primary-rgb), 0.04) inset;
    backdrop-filter: blur(16px) saturate(200%) contrast(110%);
    -webkit-backdrop-filter: blur(16px) saturate(200%) contrast(110%);
    background: linear-gradient(135deg, 
        rgba(255, 255, 255, 0.88) 0%,
        rgba(var(--bs-primary-rgb), 0.02) 25%,
        rgba(255, 255, 255, 0.82) 50%, 
        rgba(var(--bs-primary-rgb), 0.025) 75%,
        rgba(255, 255, 255, 0.85) 100%);
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    z-index: 100;
}

/* Subtle animated shimmer effect for visual interest */
.offcanvas-footer.floating-glass[b-jq2xpaa7sk]::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(var(--bs-primary-rgb), 0.03) 50%, 
        transparent 100%);
    border-radius: inherit;
    animation: shimmer-b-jq2xpaa7sk 8s ease-in-out infinite;
    pointer-events: none;
}

@keyframes shimmer-b-jq2xpaa7sk {
    0%, 90%, 100% { 
        transform: translateX(0); 
        opacity: 0; 
    }
    45% { 
        transform: translateX(200%); 
        opacity: 1; 
    }
}

/* Dark mode glass effect */
[data-theme="dark"] .offcanvas-footer.floating-glass[b-jq2xpaa7sk] {
    border-color: rgba(var(--bs-primary-rgb), 0.15);
    background: linear-gradient(135deg, 
        rgba(20, 20, 20, 0.92) 0%,
        rgba(var(--bs-primary-rgb), 0.04) 25%,
        rgba(30, 30, 30, 0.88) 50%, 
        rgba(var(--bs-primary-rgb), 0.05) 75%,
        rgba(25, 25, 25, 0.9) 100%);
    box-shadow: 
        0 8px 32px 0 rgba(0, 0, 0, 0.7),
        0 1px 0 0 rgba(255, 255, 255, 0.12) inset,
        0 -1px 0 0 rgba(0, 0, 0, 0.4) inset,
        0 0 0 0.5px rgba(var(--bs-primary-rgb), 0.06) inset;
}

[data-theme="dark"] .offcanvas-footer.floating-glass[b-jq2xpaa7sk]::before {
    background: linear-gradient(90deg, 
        transparent 0%, 
        rgba(var(--bs-primary-rgb), 0.06) 50%, 
        transparent 100%);
}

/* Adjust spacing for floating footer */
.offcanvas.has-floating-footer .offcanvas-body[b-jq2xpaa7sk] {
    padding-bottom: calc(12rem + env(safe-area-inset-bottom));
}

/* Glass footer hover effects */
.offcanvas-footer.floating-glass:hover[b-jq2xpaa7sk] {
    transform: translateY(-3px) scale(1.01);
    border-color: rgba(var(--bs-primary-rgb), 0.12);
    box-shadow: 
        0 16px 50px 0 rgba(0, 0, 0, 0.2),
        0 1px 0 0 rgba(255, 255, 255, 0.95) inset,
        0 -1px 0 0 rgba(0, 0, 0, 0.1) inset,
        0 0 0 1px rgba(var(--bs-primary-rgb), 0.06) inset;
}

.offcanvas-footer.floating-glass:hover[b-jq2xpaa7sk]::before {
    animation: shimmerFast-b-jq2xpaa7sk 1.5s ease-in-out;
}

@keyframes shimmerFast-b-jq2xpaa7sk {
    0%, 100% { 
        transform: translateX(-100%); 
        opacity: 0; 
    }
    50% { 
        transform: translateX(200%); 
        opacity: 0.8; 
    }
}

[data-theme="dark"] .offcanvas-footer.floating-glass:hover[b-jq2xpaa7sk] {
    border-color: rgba(var(--bs-primary-rgb), 0.2);
    box-shadow: 
        0 16px 50px 0 rgba(0, 0, 0, 0.9),
        0 1px 0 0 rgba(255, 255, 255, 0.18) inset,
        0 -1px 0 0 rgba(0, 0, 0, 0.5) inset,
        0 0 0 1px rgba(var(--bs-primary-rgb), 0.08) inset;
}

/* Buttons inside glass footer */
.offcanvas-footer.floating-glass .btn[b-jq2xpaa7sk] {
    font-weight: 600;
    backdrop-filter: blur(20px);
    -webkit-backdrop-filter: blur(20px);
}

/* Primary button in glass footer */
.offcanvas-footer.floating-glass .btn-primary[b-jq2xpaa7sk] {
    background-color: rgba(13, 110, 253, 0.9);
    border-color: rgba(13, 110, 253, 0.9);
}

.offcanvas-footer.floating-glass .btn-primary:hover[b-jq2xpaa7sk] {
    background-color: rgba(13, 110, 253, 1);
    transform: scale(1.02);
}

/* Secondary button in glass footer */
.offcanvas-footer.floating-glass .btn-outline-secondary[b-jq2xpaa7sk] {
    background-color: rgba(255, 255, 255, 0.5);
    border-color: rgba(108, 117, 125, 0.3);
}

[data-theme="dark"] .offcanvas-footer.floating-glass .btn-outline-secondary[b-jq2xpaa7sk] {
    background-color: rgba(255, 255, 255, 0.1);
    color: rgba(255, 255, 255, 0.9);
}

/* Mobile specific adjustments for glass footer */
@media (max-width: 576px) {
    .offcanvas-footer.floating-glass[b-jq2xpaa7sk] {
        bottom: calc(env(safe-area-inset-bottom) + 1.5rem);
        left: 0.75rem;
        right: 0.75rem;
        padding: 0.875rem 1rem;
        border-radius: 0.875rem;
    }
    
    /* Stack buttons vertically on very small screens if needed */
    .offcanvas-footer.floating-glass.stack-mobile[b-jq2xpaa7sk] {
        flex-direction: column;
        gap: 0.75rem;
    }
    
    .offcanvas-footer.floating-glass.stack-mobile .btn[b-jq2xpaa7sk] {
        width: 100%;
    }
    
    /* Ensure adequate padding on mobile for floating footer */
    .offcanvas.has-floating-footer .offcanvas-body[b-jq2xpaa7sk] {
        padding-bottom: calc(14rem + env(safe-area-inset-bottom));
    }
}

/* Dark mode is now handled by CSS variables */

/* Bootstrap offcanvas variables are set in app.css */

/* Faster, snappier transitions */
.offcanvas[b-jq2xpaa7sk] {
    transition: transform 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important;
    /* Ensure touch events work on iOS */
    touch-action: pan-y;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
}

/* Backdrop fade animation */
.offcanvas-backdrop[b-jq2xpaa7sk] {
    transition: opacity 0.2s ease-in-out !important;
}

/* Extra smooth for bottom panels (mobile) */
.offcanvas-bottom[b-jq2xpaa7sk] {
    transition: transform 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* Ensure proper z-index layering */
.offcanvas-backdrop[b-jq2xpaa7sk] {
    z-index: var(--bs-offcanvas-backdrop-zindex, 1040);
}

.offcanvas[b-jq2xpaa7sk] {
    z-index: var(--bs-offcanvas-zindex, 1045);
    /* Ensure position context for floating footer */
    position: fixed;
}

/* No-logo header styling with pattern background */
.no-logo-header[b-jq2xpaa7sk] {
    background-color: transparent;
    border-bottom: 1px solid var(--panel-header-border);
}

/* Pattern overlay for no-logo header */
.no-logo-header[b-jq2xpaa7sk]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--panel-pattern-bg);
    background-image: radial-gradient(circle at 1px 1px, var(--panel-pattern-color) 1px, transparent 1px);
    background-size: 24px 24px;
    opacity: 0.5;
    pointer-events: none;
}

/* Enhance title styling in no-logo header */
.no-logo-header .offcanvas-title[b-jq2xpaa7sk] {
    position: relative;
}

/* Dark mode is now handled by CSS variables */

/* Optimize layout for very long tournament names */
.offcanvas-header.text-heavy[b-jq2xpaa7sk] {
    align-items: flex-start;
}

.offcanvas-header.text-heavy .header-image[b-jq2xpaa7sk] {
    margin-top: 0.25rem;
}

/* Square image variant for tournaments with square logos */
.header-image.square[b-jq2xpaa7sk] {
    aspect-ratio: 1;
    object-fit: cover;
}

/* Alternative header layouts */

/* Stacked layout - image above title */
.offcanvas-header.header-stacked[b-jq2xpaa7sk] {
    flex-direction: column;
    text-align: center;
    padding: 2rem 1.5rem 1.5rem;
    gap: 1rem;
    background-color: var(--panel-header-bg);
    border-bottom: 1px solid var(--panel-header-border);
}

.offcanvas-header.header-stacked .header-image[b-jq2xpaa7sk] {
    height: 6rem;
    max-width: 100%;
    margin: 0 auto;
}

.offcanvas-header.header-stacked .offcanvas-title[b-jq2xpaa7sk] {
    margin: 0;
    width: 100%;
    text-align: center;
    -webkit-line-clamp: 3;
}

.offcanvas-header.header-stacked .btn-close[b-jq2xpaa7sk] {
    position: absolute;
    top: 1rem;
    right: 1rem;
}

/* Dark mode is now handled by CSS variables */

/* Compact layout - moderately sized for shorter names */
.offcanvas-header.header-compact[b-jq2xpaa7sk] {
    min-height: 5rem;
    padding: 1.25rem;
    background-color: var(--panel-header-bg);
    border-bottom: 1px solid var(--panel-header-border);
}

.offcanvas-header.header-compact .header-image[b-jq2xpaa7sk] {
    height: 4rem;
    max-width: 240px;
}

.offcanvas-header.header-compact .offcanvas-title[b-jq2xpaa7sk] {
    font-size: 1.25em;
    font-weight: 700;
    -webkit-line-clamp: 2;
}

/* Dark mode is now handled by CSS variables */

/* Image fade-in animation */
.header-image[b-jq2xpaa7sk] {
    animation: fadeIn-b-jq2xpaa7sk 0.3s ease-in;
}

@keyframes fadeIn-b-jq2xpaa7sk {
    from {
        opacity: 0;
        transform: scale(0.95);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}

/* Header image loading state (while detecting errors) */
.header-image[src][b-jq2xpaa7sk] {
    background-color: var(--panel-image-placeholder);
}
/* _content/Tourneys/Components/Baseline/BaselineTabs.razor.rz.scp.css */
/* Base styles for all tabs */
.bootstrap-tabs[b-867ozmipgn] {
    width: 100%;
}

/* Icon styling with proper spacing and color */
.tab-icon[b-867ozmipgn] {
    margin-right: 0.75rem; /* Increased from 0.5rem */
    font-size: 1rem;
    vertical-align: middle;
    color: var(--color-text-secondary, #666666); /* Use our design system secondary text color */
    opacity: 0.8;
    transition: all 0.2s ease-in-out;
}

.tab-label[b-867ozmipgn] {
    vertical-align: middle;
}

/* Tab count badge */
.tab-count[b-867ozmipgn] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-left: 0.5rem;
    padding: 0.125rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    line-height: 1;
    color: var(--color-text-secondary);
    background-color: var(--bs-gray-200);
    border-radius: 1rem;
    vertical-align: middle;
    transition: all 0.2s ease-in-out;
}

/* Tab content area */
.tab-content[b-867ozmipgn] {
    position: relative;
}

/* Underline Style */
.tabs-underline .nav-underline[b-867ozmipgn] {
    border-bottom: 1px solid var(--bs-border-color);
    gap: 1rem;
}

.tabs-underline .nav-underline .nav-link[b-867ozmipgn] {
    color: var(--bs-secondary-color);
    padding: 0.75rem 0.5rem;
    margin-bottom: -1px;
    border: none;
    border-radius: 0;
    position: relative;
    transition: all 0.2s ease-in-out;
}

.tabs-underline .nav-underline .nav-link[b-867ozmipgn]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 3px;
    background-color: var(--bs-primary);
    transform: scaleX(0);
    transition: transform 0.2s ease-in-out;
}

.tabs-underline .nav-underline .nav-link:hover[b-867ozmipgn] {
    color: var(--bs-body-color);
}

.tabs-underline .nav-underline .nav-link:hover .tab-icon[b-867ozmipgn] {
    color: var(--bs-body-color);
    opacity: 1;
}

.tabs-underline .nav-underline .nav-link.active[b-867ozmipgn] {
    color: var(--bs-emphasis-color);
    font-weight: 600;
}

.tabs-underline .nav-underline .nav-link.active[b-867ozmipgn]::after {
    transform: scaleX(1);
}

.tabs-underline .nav-underline .nav-link.active .tab-icon[b-867ozmipgn] {
    color: var(--bs-primary);
    opacity: 1;
}

.tabs-underline .nav-underline .nav-link.active .tab-count[b-867ozmipgn] {
    color: var(--bs-white);
    background-color: var(--bs-primary);
}

/* Panel Context - Clean implementation */
/* When inside card-body p-0 or similar container without padding */
.tabs-panel .nav-underline[b-867ozmipgn] {
    margin-bottom: 0;
}

.tabs-panel .nav-link[b-867ozmipgn] {
    padding: 0.5rem 0.75rem;
    font-size: 0.9rem;
}

/* Page Context - Full width */
.tabs-page .nav[b-867ozmipgn] {
    padding-left: 1rem;
}

.tabs-page .tab-content[b-867ozmipgn] {
    padding: 1.5rem 0;
}

/* Mobile Responsive - Horizontal Scrolling (all mobile sizes) */
@media (max-width: 767px) {
    .nav-underline[b-867ozmipgn] {
        overflow-x: auto;
        overflow-y: hidden;
        flex-wrap: nowrap;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
        scrollbar-color: var(--bs-gray-400) transparent;
    }

    .nav-underline[b-867ozmipgn]::-webkit-scrollbar {
        height: 4px;
    }

    .nav-underline[b-867ozmipgn]::-webkit-scrollbar-thumb {
        background-color: var(--bs-gray-400);
        border-radius: 2px;
    }

    .nav-underline .nav-item[b-867ozmipgn] {
        flex-shrink: 0;
    }

    /* Default mobile tabs - for larger mobile screens */
    .tabs-underline .nav-underline .nav-link[b-867ozmipgn] {
        font-size: 1rem;
        padding: 0.75rem 0.5rem;
    }

    .tab-icon[b-867ozmipgn] {
        font-size: 1rem;
        margin-right: 0.5rem;
    }

    /* Panel context adjustments for mobile */
    .tabs-panel .nav-link[b-867ozmipgn] {
        font-size: 0.925rem;
        padding: 0.625rem 0.875rem;
    }
}

/* Medium-small mobile screens (375px-500px) */
@media (max-width: 500px) and (min-width: 375px) {
    .tabs-page .nav-underline .nav-link[b-867ozmipgn] {
        padding: 0.75rem 0.375rem;
        font-size: 1rem;
    }

    .tabs-page .tab-icon[b-867ozmipgn] {
        margin-right: 0.4rem;
    }
}

/* Very small screens (under 375px) */
@media (max-width: 374px) {
    /* Icon-only mode for panel context */
    .tabs-panel .tab-label[b-867ozmipgn] {
        display: none;
    }

    .tabs-panel .tab-icon[b-867ozmipgn] {
        margin-right: 0;
    }

    .tabs-panel .tab-count[b-867ozmipgn] {
        margin-left: 0.25rem;
    }

    /* Ultra-compact for page tabs */
    .tabs-page .nav-underline .nav-link[b-867ozmipgn] {
        padding: 0.75rem 0.25rem;
        font-size: 1rem;
    }

    .tabs-page .tab-icon[b-867ozmipgn] {
        margin-right: 0.375rem;
    }
}

/* Dark mode adjustments */
[data-theme="dark"] .tabs-underline .nav-underline .nav-link[b-867ozmipgn] {
    color: var(--bs-gray-500);
}

[data-theme="dark"] .tabs-underline .nav-underline .nav-link:hover[b-867ozmipgn] {
    color: var(--bs-gray-200);
}

[data-theme="dark"] .tabs-underline .nav-underline .nav-link.active[b-867ozmipgn] {
    color: var(--bs-white);
}

[data-theme="dark"] .tab-icon[b-867ozmipgn] {
    color: var(--bs-gray-500);
}

[data-theme="dark"] .nav-link:hover .tab-icon[b-867ozmipgn],
[data-theme="dark"] .nav-link.active .tab-icon[b-867ozmipgn] {
    color: var(--bs-primary);
}

[data-theme="dark"] .tab-count[b-867ozmipgn] {
    color: var(--bs-gray-400);
    background-color: rgba(255, 255, 255, 0.1);
}

[data-theme="dark"] .nav-link.active .tab-count[b-867ozmipgn] {
    color: var(--bs-white);
    background-color: var(--bs-primary);
}
/* _content/Tourneys/Components/Baseline/BaselineToast.razor.rz.scp.css */
.toast[b-x6hzsn9js7] {
    animation: slideIn-b-x6hzsn9js7 0.3s ease-out;
    min-width: 300px;
    max-width: 500px;
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
}

.toast-closing[b-x6hzsn9js7] {
    animation: slideOut-b-x6hzsn9js7 0.3s ease-in forwards;
}

.toast-body[b-x6hzsn9js7] {
    display: flex;
    align-items: center;
    padding: 0.75rem 1rem;
    word-break: break-word;
}

.toast-progress[b-x6hzsn9js7] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 4px;
    background-color: rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

.toast-progress-bar[b-x6hzsn9js7] {
    height: 100%;
    background-color: rgba(255, 255, 255, 0.7);
    animation: progress-b-x6hzsn9js7 linear forwards;
    transform-origin: left;
}

@keyframes slideIn-b-x6hzsn9js7 {
    from {
        opacity: 0;
        transform: translateX(100%);
    }
    to {
        opacity: 1;
        transform: translateX(0);
    }
}

@keyframes slideOut-b-x6hzsn9js7 {
    from {
        opacity: 1;
        transform: translateX(0);
    }
    to {
        opacity: 0;
        transform: translateX(100%);
    }
}

@keyframes progress-b-x6hzsn9js7 {
    from {
        transform: scaleX(1);
    }
    to {
        transform: scaleX(0);
    }
}

.text-bg-success[b-x6hzsn9js7] {
    background-color: var(--bs-success) !important;
    color: white !important;
}

.text-bg-danger[b-x6hzsn9js7] {
    background-color: var(--bs-danger) !important;
    color: white !important;
}

.text-bg-warning[b-x6hzsn9js7] {
    background-color: var(--bs-warning) !important;
    color: var(--bs-dark) !important;
}

.text-bg-warning .btn-close[b-x6hzsn9js7] {
    filter: invert(1);
}

.text-bg-info[b-x6hzsn9js7] {
    background-color: var(--bs-info) !important;
    color: white !important;
}

.btn-link[b-x6hzsn9js7] {
    color: inherit !important;
    opacity: 0.9;
}

.btn-link:hover[b-x6hzsn9js7] {
    opacity: 1;
}
/* _content/Tourneys/Components/CustomDropdown/CustomDropdown.razor.rz.scp.css */
/* CustomDropdown Component Styles */

/* Base dropdown container */
.custom-dropdown[b-xa8tp1tj6o] {
    position: relative;
    display: inline-block;
}

/* Legacy dropdown trigger button - only used when Trigger RenderFragment is provided */
.dropdown-trigger[b-xa8tp1tj6o] {
    cursor: pointer;
    user-select: none;
    position: relative;
}

/* Note: Most dropdown styling has been moved to app.css due to CSS isolation issues */
/* See app.css for:
   - .dropdown-content styles
   - .dropdown-item styles
   - Scrollbar styling
   - Dark mode support
*/
/* _content/Tourneys/Components/CustomDropdown/CustomDropdownOptimized.razor.rz.scp.css */
/* Optimized dropdown styles using CSS for positioning */
.custom-dropdown-optimized[b-3gczbkiio4] {
    position: relative !important;
    display: inline-block;
}

/* When dropdown is open, ensure it's above other elements with proper stacking */
.custom-dropdown-optimized:has(.dropdown-content-optimized.show)[b-3gczbkiio4] {
    /* No z-index needed here since content is portaled to body */
    position: relative !important; /* Maintain relative positioning for trigger */
}

/* _content/Tourneys/Components/CustomDropdown/DropdownContentOptimized.razor.rz.scp.css */
/* Optimized dropdown content styles */
.dropdown-content-optimized[b-hmmjokoklt] {
    /* Default absolute positioning, will be overridden to fixed when portaled */
    position: absolute !important;
    top: 100%;
    left: 0;
    margin-top: 4px;
    z-index: 1000 !important; /* Bootstrap standard for dropdowns */
    
    /* Visual styles */
    min-width: 165px; /* Sweet spot for "Adult or Junior" text */
    max-height: 300px;
    overflow-y: hidden; /* Hide scrollbar by default */
    overflow-x: hidden !important; /* Prevent horizontal scrollbar */
    background: white !important;
    background-color: var(--bs-body-bg, white) !important;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: var(--bs-border-radius, 0.375rem);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    box-sizing: border-box !important;
    
    /* Default hidden state */
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px) scaleY(0.95);
    transform-origin: top center;
    pointer-events: none;
}

/* Opening state */
.dropdown-content-optimized.show[b-hmmjokoklt] {
    opacity: 1;
    visibility: visible;
    transform: translateY(0) scaleY(1);
    pointer-events: auto;
    transition: opacity 150ms cubic-bezier(0.4, 0.0, 0.2, 1),
                transform 150ms cubic-bezier(0.4, 0.0, 0.2, 1),
                visibility 0ms;
}

/* Closing state */
.dropdown-content-optimized.closing[b-hmmjokoklt] {
    opacity: 0;
    visibility: visible; /* Keep visible during animation */
    transform: translateY(-8px) scaleY(0.95);
    pointer-events: none;
    transition: opacity 100ms cubic-bezier(0.4, 0.0, 0.2, 1),
                transform 100ms cubic-bezier(0.4, 0.0, 0.2, 1);
}

/* Fully hidden state */
.dropdown-content-optimized.hide[b-hmmjokoklt] {
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px) scaleY(0.95);
    pointer-events: none;
}

/* When portaled to body, ensure proper positioning */
.dropdown-content-optimized[data-portaled="true"][b-hmmjokoklt] {
    position: fixed !important;
    z-index: 1000 !important; /* Bootstrap standard for dropdowns */
    /* Position will be set by JavaScript */
}

/* Only show scrollbar when content actually overflows */
.dropdown-content-optimized.scrollable[b-hmmjokoklt] {
    overflow-y: auto;
}


/* Ensure dropdown doesn't overflow viewport */
@media (max-width: 768px) {
    .dropdown-content-optimized[b-hmmjokoklt] {
        position: fixed;
        left: 10px !important;
        right: 10px !important;
        width: auto !important;
        min-width: auto !important;
    }
}

/* Dark mode support */
[data-bs-theme="dark"] .dropdown-content-optimized[b-hmmjokoklt] {
    background: var(--bs-dark, #212529);
    background-color: var(--bs-dark, #212529);
    border-color: var(--bs-dark-border-subtle, #495057);
    color: var(--bs-light, #f8f9fa);
}

/* Scrollbar styling */
.dropdown-content-optimized[b-hmmjokoklt]::-webkit-scrollbar {
    width: 6px;
}

.dropdown-content-optimized[b-hmmjokoklt]::-webkit-scrollbar-track {
    background: transparent;
}

.dropdown-content-optimized[b-hmmjokoklt]::-webkit-scrollbar-thumb {
    background: var(--bs-gray-400);
    border-radius: 3px;
}

.dropdown-content-optimized[b-hmmjokoklt]::-webkit-scrollbar-thumb:hover {
    background: var(--bs-gray-500);
}

/* Dropdown items - Override global styles */
.dropdown-content-optimized .dropdown-item[b-hmmjokoklt] {
    display: block !important;
    width: 100%;
    padding: 0.5rem 1rem;
    margin: 0 !important; /* Remove default margin from .dropdown-item, which can cause a visible gray bar between items due to background/border bleed. Overriding the margin ensures items are flush and prevents this visual artifact. */
    cursor: pointer;
    transition: background-color 0.1s ease;
    position: relative;
    overflow: hidden; /* Prevent content overflow */
    white-space: nowrap;
    text-overflow: ellipsis;
    opacity: 1 !important; /* Override fade animations */
    animation: none !important; /* Disable all animations */
    border: none;
    border-radius: 0;
    box-sizing: border-box !important; /* Ensure padding is included in width */
}

.dropdown-content-optimized .dropdown-item:hover[b-hmmjokoklt] {
    background-color: var(--bs-gray-100);
}

[data-bs-theme="dark"] .dropdown-content-optimized .dropdown-item:hover[b-hmmjokoklt] {
    background-color: var(--bs-gray-800);
}

.dropdown-content-optimized .dropdown-item:focus[b-hmmjokoklt] {
    outline: 2px solid var(--bs-primary);
    outline-offset: -2px;
    overflow: hidden !important; /* Ensure outline doesn't cause overflow */
}

/* Specifically handle last item to prevent scrollbar */
.dropdown-content-optimized .dropdown-item:last-child[b-hmmjokoklt] {
    margin-bottom: 0 !important;
    border-bottom: none !important;
}

.dropdown-content-optimized .dropdown-item:last-child:hover[b-hmmjokoklt],
.dropdown-content-optimized .dropdown-item:last-child:focus[b-hmmjokoklt] {
    margin-bottom: 0 !important;
    padding-bottom: 0.5rem !important; /* Keep original padding */
}

/* Handle selected state checkmark without causing overflow */
.dropdown-content-optimized .dropdown-item.selected[b-hmmjokoklt] {
    padding-right: 2.5rem; /* Make room for checkmark */
    box-shadow: none !important; /* Remove inset shadow */
}

.dropdown-content-optimized .dropdown-item.selected[b-hmmjokoklt]::after {
    position: absolute;
    right: 1rem;
    top: 50%;
    transform: translateY(-50%);
}
/* _content/Tourneys/Components/Homepage/CourtCaptures.razor.rz.scp.css */
/* Court Captures Component Styles - Copied from Home2 mockup */

.court-captures-card[b-n8op1ng56b] {
    background: white;
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.photo-container[b-n8op1ng56b] {
    position: relative;
    overflow: hidden;
    background: #f8f9fa;
    height: 220px;
}

.featured-photo[b-n8op1ng56b] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.featured-photo.active[b-n8op1ng56b] {
    opacity: 1;
}

.photo-container:hover .featured-photo[b-n8op1ng56b] {
    transform: scale(1.05);
}

/* Compact tournament badge with inline indicators - bottom right */
.photo-info-overlay[b-n8op1ng56b] {
    position: absolute;
    bottom: 0.75rem;
    right: 0.75rem;
    z-index: 2;
}

.tournament-badge-compact[b-n8op1ng56b] {
    background: rgba(0, 0, 0, 0.65);
    color: white;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-size: 0.75rem;
    font-weight: 600;
    backdrop-filter: blur(12px);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    max-width: 200px;
}

.tournament-name[b-n8op1ng56b] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0;
}

.inline-indicators[b-n8op1ng56b] {
    display: flex;
    gap: 0.25rem;
    flex-shrink: 0;
}

.inline-indicator[b-n8op1ng56b] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    border: none;
    padding: 0;
    cursor: pointer;
    transition: all 0.2s ease;
}

.inline-indicator:hover[b-n8op1ng56b] {
    background: rgba(255, 255, 255, 0.8);
}

.inline-indicator.active[b-n8op1ng56b] {
    background: rgba(255, 255, 255, 1);
    width: 16px;
    border-radius: 3px;
}

/* Legacy tournament badge - keep for backward compatibility */
.tournament-badge[b-n8op1ng56b] {
    background: rgba(0, 0, 0, 0.6);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    font-size: 0.875rem;
    font-weight: 600;
    backdrop-filter: blur(10px);
}

/* Hover overlay for photo credit */
.photo-hover-overlay[b-n8op1ng56b] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, transparent 100%);
    padding: 2rem 1rem 1rem;
    color: white;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.photo-container:hover .photo-hover-overlay[b-n8op1ng56b] {
    opacity: 1;
}

.photo-credit[b-n8op1ng56b] {
    font-size: 0.8125rem;
    font-weight: 500;
    margin-bottom: 0.25rem;
    display: flex;
    align-items: center;
}

.photo-location[b-n8op1ng56b] {
    font-size: 0.75rem;
    opacity: 0.9;
}

/* Old photo indicators - removed in favor of inline indicators */

/* Card content */
.captures-content[b-n8op1ng56b] {
    padding: 1.25rem 1.5rem;
    text-align: center;
}

.captures-title[b-n8op1ng56b] {
    font-size: 0.875rem;
    font-weight: 700;
    margin: 0 0 0.375rem 0;
    color: var(--bs-dark);
    font-family: var(--bs-font-family-sport);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.captures-subtitle[b-n8op1ng56b] {
    font-size: 0.8125rem;
    color: var(--bs-gray-600);
    margin: 0;
}

/* Submit button - black with all caps using btn-dark */
.submit-photo-btn[b-n8op1ng56b] {
    border-radius: 4px;
    padding: 0.625rem 1.5rem;
    font-weight: 500;
    font-size: 0.875rem;
    border: none;
    transition: all 0.2s ease;
    text-transform: uppercase;
}

.submit-photo-btn:hover[b-n8op1ng56b] {
    background-color: var(--bs-gray-800);
    transform: none;
}

/* Dark mode support */
[data-theme="dark"] .court-captures-card[b-n8op1ng56b] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .photo-container[b-n8op1ng56b] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .captures-title[b-n8op1ng56b] {
    color: white;
}

[data-theme="dark"] .captures-subtitle[b-n8op1ng56b] {
    color: var(--bs-gray-400);
}
/* _content/Tourneys/Components/Homepage/FeaturedTournaments.razor.rz.scp.css */
/* Featured Tournaments Component Styles */

/* Responsive Grid Layout - replaces JavaScript IsMobile detection */
.featured-tournaments-grid[b-u4em9j7k78] {
    display: grid;
    grid-template-columns: 1fr; /* Mobile: 1 column */
    gap: 1rem 1.5rem;
    margin-bottom: var(--row-gap-mobile);
}

@media (min-width: 768px) {
    .featured-tournaments-grid[b-u4em9j7k78] {
        grid-template-columns: 1fr 1fr; /* Desktop: 2 columns */
        gap: 1.5rem 2rem;
        margin-bottom: var(--row-gap-desktop);
    }
}

/* Hide second card on mobile - CSS-only responsive behavior */
@media (max-width: 767.98px) {
    .featured-card-wrapper:nth-child(2)[b-u4em9j7k78] {
        display: none;
    }
}

.featured-card-wrapper[b-u4em9j7k78] {
    display: flex;
}

.hero-featured-card[b-u4em9j7k78] {
    width: 100%;
    border-radius: var(--card-radius);
    box-shadow: var(--card-shadow);
    position: relative;
    background: var(--color-surface);
    display: flex;
    flex-direction: column;
}

.hero-featured-image[b-u4em9j7k78] {
    height: 180px;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    overflow: hidden;
    flex-shrink: 0;
    border-radius: var(--card-radius) var(--card-radius) 0 0;  /* Round top corners to match card */
}

.hero-featured-badge[b-u4em9j7k78] {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    display: inline-block;
    background: rgba(255, 215, 0, 0.98);
    color: #000;
    padding: 0.25rem 0.625rem;
    border-radius: 1rem;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    box-shadow: 
        0 6px 20px rgba(0, 0, 0, 0.2),
        0 2px 8px rgba(0, 0, 0, 0.15),
        0 1px 3px rgba(0, 0, 0, 0.1);
}

.hero-featured-content[b-u4em9j7k78] {
    padding: 1rem 1.25rem;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.hero-featured-title[b-u4em9j7k78] {
    font-size: 1.125rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    line-height: 1.2;
    color: var(--color-text-primary);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.hero-featured-meta[b-u4em9j7k78] {
    display: flex;
    gap: 1rem;
    font-size: 0.8125rem;
    flex-wrap: wrap;
    color: var(--bs-gray-600);
    margin-top: auto;
}

.hero-featured-meta span[b-u4em9j7k78] {
    display: flex;
    align-items: center;
}

.hero-featured-meta i[b-u4em9j7k78] {
    font-size: 0.75rem;
    width: 12px;
    flex-shrink: 0;
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .hero-featured-image[b-u4em9j7k78] {
        height: 140px;
    }
    
    .hero-featured-title[b-u4em9j7k78] {
        font-size: 1rem;
    }
    
    .hero-featured-meta[b-u4em9j7k78] {
        font-size: 0.8125rem;
    }
}
/* _content/Tourneys/Components/Homepage/TournamentUpdates.razor.rz.scp.css */
/* Tournament Updates Component Styles - Sectioned Design */

.tournament-updates[b-xqfcaslldl] {
    background: white;
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    display: flex;
    flex-direction: column;
    max-height: 520px;
}

.updates-header[b-xqfcaslldl] {
    border-bottom: 1px solid var(--bs-gray-200);
}

.updates-title[b-xqfcaslldl] {
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0;
    color: var(--bs-dark);
    font-family: var(--bs-font-family-sport);
    text-transform: uppercase;
    letter-spacing: 0.01em;
}

.updates-content[b-xqfcaslldl] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    padding-top: 1rem;
    /* Allow items to be cut off at bottom for alignment */
    mask-image: linear-gradient(to bottom, black calc(100% - 30px), transparent 100%);
    -webkit-mask-image: linear-gradient(to bottom, black calc(100% - 30px), transparent 100%);
}

/* Section Styles */
.updates-section[b-xqfcaslldl] {
    /* Margin handled by Bootstrap mb-4 class */
}

.section-header[b-xqfcaslldl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.5rem;
}

.section-icon[b-xqfcaslldl] {
    width: 20px;
    height: 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.875rem;
    flex-shrink: 0;
}

.section-icon.live[b-xqfcaslldl] {
    color: #626c80;
}

.section-icon.urgent[b-xqfcaslldl] {
    color: #626c80;
}

.section-icon.upcoming[b-xqfcaslldl] {
    color: #626c80;
}

.section-title[b-xqfcaslldl] {
    font-size: 0.875rem;
    font-weight: 500;
    margin: 0;
    color: var(--bs-dark);
    text-transform: uppercase;
    letter-spacing: 0.05em;
    flex: 1;
    font-family: 'Oswald', var(--bs-font-family-sport), sans-serif;
}

.section-count[b-xqfcaslldl] {
    font-size: 0.75rem;
    color: var(--bs-gray-500);
    background: var(--bs-gray-100);
    padding: 0.125rem 0.375rem;
    border-radius: 0.75rem;
    font-weight: 500;
    min-width: 1.5rem;
    text-align: center;
}

/* Tournament Item Styles */
.tournament-list[b-xqfcaslldl] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
}

.tournament-item[b-xqfcaslldl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.375rem 0;
    border-bottom: 1px solid #e5e7eb;
    transition: all 0.2s ease;
    cursor: pointer;
    gap: 1rem;
}

.tournament-item:last-child[b-xqfcaslldl] {
    border-bottom: none;
}

.tournament-item:hover[b-xqfcaslldl] {
    background: var(--bs-gray-25);
    margin: 0 -0.5rem;
    padding: 0.375rem 0.5rem;
    border-radius: 3px;
    border-bottom-color: transparent;
}

.tournament-item:hover + .tournament-item[b-xqfcaslldl] {
    border-top-color: transparent;
}

.tournament-item.live:hover[b-xqfcaslldl] {
    background: rgba(34, 197, 94, 0.04);
}

.tournament-item.urgent:hover[b-xqfcaslldl] {
    background: rgba(245, 158, 11, 0.04);
}

.tournament-item.upcoming:hover[b-xqfcaslldl] {
    background: rgba(var(--bs-primary-rgb), 0.04);
}

.tournament-main[b-xqfcaslldl] {
    flex: 1;
    min-width: 0;
}

.tournament-name[b-xqfcaslldl] {
    font-size: 0.9rem;
    font-weight: 400;
    color: var(--bs-dark);
    line-height: 1.4;
    margin-bottom: 0.125rem;
    word-wrap: break-word;
    overflow-wrap: break-word;
}

.tournament-meta[b-xqfcaslldl] {
    font-size: 0.8rem;
    color: var(--bs-gray-600);
    line-height: 1.3;
    display: flex;
    align-items: center;
    gap: 0.375rem;
}

.tournament-date[b-xqfcaslldl] {
    font-weight: 500;
}

.urgent-date[b-xqfcaslldl] {
    color: var(--bs-warning);
    font-weight: 600;
}

.separator[b-xqfcaslldl] {
    color: var(--bs-gray-400);
    font-size: 0.75rem;
}

.tournament-location[b-xqfcaslldl] {
    color: var(--bs-gray-500);
}

.tournament-badges[b-xqfcaslldl] {
    display: none;
}

/* Badge Styles - Imported from TournamentCard */
.badge-dynamic[b-xqfcaslldl] {
    padding: 0.125rem 0.375rem;
    font-size: 0.6rem;
    font-weight: 500;
    border-radius: 0.75rem;
    background: var(--bs-gray-150);
    color: var(--bs-gray-600);
    text-transform: uppercase;
    letter-spacing: 0.025em;
    white-space: nowrap;
}

.badge-dynamic.primary[b-xqfcaslldl] {
    background: var(--bs-dark);
    color: white;
    position: relative;
}

.badge-dynamic.primary.source-usta[b-xqfcaslldl] {
    border-left: 3px solid #3498db;
    padding-left: 0.4rem;
    background: linear-gradient(to right, #1a1a1a 0%, var(--bs-dark) 30%);
}

.badge-dynamic.primary.source-utr[b-xqfcaslldl] {
    border-left: 3px solid #01DFCB;
    padding-left: 0.4rem;
}

.badge-dynamic.primary.source-wtn[b-xqfcaslldl] {
    border-left: 3px solid #d2394d;
    padding-left: 0.4rem;
}

/* Live pulse animation */
.live-pulse[b-xqfcaslldl] {
    animation: live-pulse-b-xqfcaslldl 2s infinite;
}

@keyframes live-pulse-b-xqfcaslldl {
    0%, 100% {
        opacity: 1;
        transform: scale(1);
    }
    50% {
        opacity: 0.7;
        transform: scale(1.05);
    }
}

/* Empty State */
.empty-state[b-xqfcaslldl] {
    color: var(--bs-gray-500);
}

.empty-icon[b-xqfcaslldl] {
    font-size: 2rem;
    color: var(--bs-gray-400);
}

.empty-title[b-xqfcaslldl] {
    font-size: 1.1rem;
    font-weight: 600;
    color: var(--bs-gray-600);
    margin-bottom: 0.25rem;
}

.empty-message[b-xqfcaslldl] {
    font-size: 0.9rem;
}

/* Dark mode support */
[data-theme="dark"] .tournament-updates[b-xqfcaslldl] {
    background: var(--bs-gray-800);
    border-color: var(--bs-gray-700);
}

[data-theme="dark"] .updates-title[b-xqfcaslldl] {
    color: white;
}

[data-theme="dark"] .updates-header[b-xqfcaslldl] {
    border-bottom-color: var(--bs-gray-700);
}



[data-theme="dark"] .section-title[b-xqfcaslldl] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .section-count[b-xqfcaslldl] {
    background: var(--bs-gray-700);
    color: var(--bs-gray-300);
}

[data-theme="dark"] .tournament-item[b-xqfcaslldl] {
    border-bottom-color: var(--bs-gray-600);
}

[data-theme="dark"] .tournament-item:hover[b-xqfcaslldl] {
    background: var(--bs-gray-700);
    border-bottom-color: transparent;
}

[data-theme="dark"] .tournament-item.live:hover[b-xqfcaslldl] {
    background: rgba(34, 197, 94, 0.08);
}

[data-theme="dark"] .tournament-item.urgent:hover[b-xqfcaslldl] {
    background: rgba(245, 158, 11, 0.08);
}

[data-theme="dark"] .tournament-item.upcoming:hover[b-xqfcaslldl] {
    background: rgba(var(--bs-primary-rgb), 0.08);
}

[data-theme="dark"] .tournament-name[b-xqfcaslldl] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .tournament-meta[b-xqfcaslldl] {
    color: var(--bs-gray-400);
}

[data-theme="dark"] .badge-dynamic[b-xqfcaslldl] {
    background: rgba(255, 255, 255, 0.06);
    color: var(--bs-gray-300);
}

[data-theme="dark"] .badge-dynamic.primary[b-xqfcaslldl] {
    background: rgba(0, 0, 0, 0.4);
    color: var(--bs-gray-100);
    border-left: 3px solid;
    font-weight: 700;
}

[data-theme="dark"] .badge-dynamic.primary.source-usta[b-xqfcaslldl] {
    border-left-color: #1a7bc0;
}

[data-theme="dark"] .badge-dynamic.primary.source-utr[b-xqfcaslldl] {
    border-left-color: #01DFCB;
}

[data-theme="dark"] .badge-dynamic.primary.source-wtn[b-xqfcaslldl] {
    border-left-color: #d2394d;
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .tournament-updates[b-xqfcaslldl] {
        max-height: 400px;
    }

    .updates-title[b-xqfcaslldl] {
        font-size: 1.125rem;
        letter-spacing: -0.01em;
    }

    .tournament-item[b-xqfcaslldl] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.375rem;
        padding: 0.5rem 0;
    }

    .tournament-item:hover[b-xqfcaslldl] {
        margin: 0 -0.75rem;
        padding: 0.5rem 0.75rem;
    }

    .tournament-badges[b-xqfcaslldl] {
        align-items: flex-start;
        justify-content: flex-start;
    }

    .badge-dynamic[b-xqfcaslldl] {
        font-size: 0.55rem;
        padding: 0.1rem 0.3rem;
    }

    .section-header[b-xqfcaslldl] {
        margin-bottom: 0.5rem;
    }

    .tournament-list[b-xqfcaslldl] {
        gap: 0;
    }
}

/* Load More Button */
.load-more-container[b-xqfcaslldl] {
    display: flex;
    justify-content: center;
    margin-top: 0.5rem;
    padding-top: 0;
}

.load-more-btn[b-xqfcaslldl] {
    background: none;
    border: none;
    color: var(--bs-gray-500);
    font-size: 0.75rem;
    font-weight: 400;
    padding: 0.25rem 0;
    cursor: pointer;
    transition: all 0.2s ease;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    text-decoration: underline;
    text-decoration-color: transparent;
    text-underline-offset: 2px;
}

.load-more-btn:hover[b-xqfcaslldl] {
    color: var(--bs-gray-700);
    text-decoration-color: var(--bs-gray-400);
}

.load-more-btn:active[b-xqfcaslldl] {
    color: var(--bs-gray-800);
}

/* Dark mode support for load more button */
[data-theme="dark"] .load-more-btn[b-xqfcaslldl] {
    color: var(--bs-gray-400);
}

[data-theme="dark"] .load-more-btn:hover[b-xqfcaslldl] {
    color: var(--bs-gray-300);
    text-decoration-color: var(--bs-gray-500);
}

[data-theme="dark"] .load-more-btn:active[b-xqfcaslldl] {
    color: var(--bs-gray-200);
}

/* Mobile adjustments for load more button */
@media (max-width: 767px) {
    .load-more-btn[b-xqfcaslldl] {
        font-size: 0.7rem;
        padding: 0.375rem 0;
    }
}
/* _content/Tourneys/Components/Homepage/UpcomingTournaments.razor.rz.scp.css */
/* Upcoming Tournaments Component Styles */

.upcoming-section[b-3ol2fb4y4w] {
    /* Section margin now handled by Bootstrap utilities: mb-4 mb-md-5 */
}

.upcoming-header[b-3ol2fb4y4w] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* Header margin now handled by Bootstrap utility: mb-3 */
}

.upcoming-title[b-3ol2fb4y4w] {
    font-size: 1.5rem;
    font-weight: 600;
    margin: 0;
    color: var(--bs-dark);
    font-family: var(--bs-font-family-sport);
    text-transform: uppercase;
    letter-spacing: 0.01em;
}

.upcoming-controls[b-3ol2fb4y4w] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

/* Pager - completely rebuilt from Home2 original */
.upcoming-pager[b-3ol2fb4y4w] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    color: var(--bs-dark);
}

.pager-arrow[b-3ol2fb4y4w] {
    background: none;
    border: none;
    padding: 0.5rem;
    cursor: pointer;
    color: var(--bs-dark);
    transition: all 0.2s ease;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    min-width: 2.5rem;
    min-height: 2.5rem;
}

.pager-arrow:hover:not(:disabled)[b-3ol2fb4y4w] {
    color: var(--bs-primary);
    background: rgba(var(--bs-primary-rgb), 0.1);
    transform: none;
}

.pager-arrow:disabled[b-3ol2fb4y4w] {
    opacity: 0.3;
    cursor: not-allowed;
}

.pager-text[b-3ol2fb4y4w] {
    font-weight: 600;
    white-space: nowrap;
    min-width: 3.5rem;
    text-align: center;
    color: var(--bs-dark);
    font-size: 0.875rem;
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .pager-text[b-3ol2fb4y4w] {
        display: none;
    }
    
    .upcoming-pager[b-3ol2fb4y4w] {
        gap: 0.25rem;
    }
    
    .pager-arrow[b-3ol2fb4y4w] {
        padding: 0.5rem;
        font-size: 1.125rem;
        min-width: 2.25rem;
        min-height: 2.25rem;
    }
    
    .upcoming-controls[b-3ol2fb4y4w] {
        gap: 0.5rem;
    }
    
    .upcoming-header[b-3ol2fb4y4w] {
        /* Mobile header spacing handled by responsive utilities */
        gap: 0.5rem;
    }
    
    .upcoming-title[b-3ol2fb4y4w] {
        font-size: 1.125rem;
        letter-spacing: -0.01em;
    }
}

/* Upcoming Tournament Cards (Grid Layout) - Copied from Home2 */
.upcoming-card[b-3ol2fb4y4w] {
    position: relative;
    border-radius: 4px;
    transition: all 0.3s ease;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    background: white;
    height: 100%;
    display: flex;
    flex-direction: column;
}


.upcoming-card-gradient[b-3ol2fb4y4w] {
    height: 70px;
    position: relative;
    z-index: 1;
    border-radius: 4px 4px 0 0;  /* Round top corners to match card */
}

.upcoming-card-logo[b-3ol2fb4y4w] {
    position: absolute;
    top: 20px;
    left: 50%;
    transform: translateX(-50%);
    width: 85px;
    height: 85px;
    background: white;
    border-radius: 12px;
    padding: 10px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.upcoming-card-logo.no-image[b-3ol2fb4y4w] {
    width: 70px;
    height: 70px;
    top: 25px;
    background: linear-gradient(135deg, #f1f5f9 0%, #e2e8f0 50%, #cbd5e1 100%);
    padding: 8px;
    border-radius: 10px;
}

.upcoming-card-logo img[b-3ol2fb4y4w] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.default-tournament-icon[b-3ol2fb4y4w] {
    font-size: 2rem;
    background: linear-gradient(135deg, #64748b 0%, #94a3b8 50%, #cbd5e1 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    /* Fallback for browsers that don't support background-clip: text */
    color: #64748b;
}

.upcoming-card-content[b-3ol2fb4y4w] {
    position: relative;
    padding: 0.75rem 1rem;
    padding-top: 60px;
    background: white;
    z-index: 2;
    flex: 1;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}

.upcoming-card-name[b-3ol2fb4y4w] {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    line-height: 1.2;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 2.4em; /* Ensures consistent height for 1 or 2 lines */
}

.upcoming-card-meta[b-3ol2fb4y4w] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--bs-gray-600);
    flex-wrap: nowrap;
    margin-top: auto; /* Pushes to bottom */
}

.upcoming-card-date[b-3ol2fb4y4w] {
    font-weight: 500;
    white-space: nowrap;
}

.upcoming-card-location[b-3ol2fb4y4w] {
    opacity: 0.8;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    flex: 1;
    min-width: 0; /* Allows flex item to shrink below content size */
}

/* Mobile card adjustments - from Home2 */
@media (max-width: 767px) {
    .upcoming-card[b-3ol2fb4y4w] {
        min-height: 200px;
    }
    
    .upcoming-card-logo[b-3ol2fb4y4w] {
        width: 70px;
        height: 70px;
        top: 15px;
    }
    
    .upcoming-card-logo.no-image[b-3ol2fb4y4w] {
        width: 60px;
        height: 60px;
        top: 20px;
    }
    
    .upcoming-card-content[b-3ol2fb4y4w] {
        padding: 0.5rem 0.75rem;
        padding-top: 50px;
    }
    
    .upcoming-card-name[b-3ol2fb4y4w] {
        font-size: 1rem;
    }
    
    .upcoming-card-meta[b-3ol2fb4y4w] {
        font-size: 0.75rem;
        gap: 0.375rem; /* Tighter spacing on mobile */
    }
    
    .default-tournament-icon[b-3ol2fb4y4w] {
        font-size: 1.5rem;
    }
}

/* Additional mobile adjustments from Home2 */
@media (max-width: 575px) {
    .upcoming-card[b-3ol2fb4y4w] {
        min-height: 180px;
    }
    
    .upcoming-card-gradient[b-3ol2fb4y4w] {
        height: 60px;
    }
    
    .upcoming-card-content[b-3ol2fb4y4w] {
        padding-top: 45px;
    }
    
    .upcoming-card-meta[b-3ol2fb4y4w] {
        gap: 0.25rem; /* Even tighter spacing on very small screens */
    }
}

/* Dark mode support */
[data-theme="dark"] .upcoming-title[b-3ol2fb4y4w] {
    color: white;
}

[data-theme="dark"] .upcoming-pager[b-3ol2fb4y4w] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .pager-text[b-3ol2fb4y4w] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .pager-arrow[b-3ol2fb4y4w] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .pager-arrow:hover:not(:disabled)[b-3ol2fb4y4w] {
    color: var(--bs-primary);
}

[data-theme="dark"] .upcoming-card[b-3ol2fb4y4w] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .upcoming-card-content[b-3ol2fb4y4w] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .upcoming-card-logo[b-3ol2fb4y4w] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .upcoming-card-logo.no-image[b-3ol2fb4y4w] {
    background: linear-gradient(135deg, #374151 0%, #4b5563 50%, #6b7280 100%);
}

[data-theme="dark"] .default-tournament-icon[b-3ol2fb4y4w] {
    background: linear-gradient(135deg, #9ca3af 0%, #d1d5db 50%, #e5e7eb 100%);
    background-clip: text;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    /* Fallback for browsers that don't support background-clip: text */
    color: #9ca3af;
}

[data-theme="dark"] .upcoming-card-name[b-3ol2fb4y4w] {
    color: white;
}

[data-theme="dark"] .upcoming-card-meta[b-3ol2fb4y4w] {
    color: var(--bs-gray-400);
}
/* _content/Tourneys/Components/Layout/Footer.razor.rz.scp.css */
/* Footer styles */
.footer[b-dxdd3fuu74] {
    background: linear-gradient(135deg, #ffffff 0%, #f1f5f9 50%, #e2e8f0 100%);
    border-top: 1px solid var(--card-border);
}

/* Tagline styling */
.footer-tagline[b-dxdd3fuu74] {
    font-size: 1.125rem;
    font-weight: 500;
    color: var(--color-text-primary);
    letter-spacing: 0.5px;
    font-family: var(--bs-font-family-sport);
    text-transform: uppercase;
}

.footer-tagline em[b-dxdd3fuu74] {
    color: var(--color-primary);
    font-style: normal;
    font-weight: 600;
}

/* Dark mode */
:global([data-theme="dark"]) .footer[b-dxdd3fuu74] {
    background: linear-gradient(135deg, #1A2332 0%, #0F1923 100%);
    border-top: 1px solid var(--card-border);
    color: var(--color-text-secondary);
}

:global([data-theme="dark"]) .footer-tagline[b-dxdd3fuu74] {
    color: var(--color-text-primary);
}

:global([data-theme="dark"]) .footer-tagline em[b-dxdd3fuu74] {
    color: var(--color-primary);
}
/* _content/Tourneys/Components/Layout/MainLayout.razor.rz.scp.css */
/* MainLayout styles - Bootstrap-based */

/* Blazor error UI */
#blazor-error-ui[b-mbqmvomgb4] {
    color-scheme: light dark;
    background: lightyellow;
    bottom: 0;
    box-shadow: 0 -1px 2px rgba(0, 0, 0, 0.2);
    box-sizing: border-box;
    display: none;
    left: 0;
    padding: 0.6rem 1.25rem 0.7rem 1.25rem;
    position: fixed;
    width: 100%;
}

/* Dark mode support for blazor error UI */
:global([data-theme="dark"]) #blazor-error-ui[b-mbqmvomgb4] {
    background: var(--color-surface);
    color: var(--color-text-primary);
    box-shadow: 0 -1px 2px rgba(255, 255, 255, 0.1);
}

#blazor-error-ui .dismiss[b-mbqmvomgb4] {
    cursor: pointer;
    position: absolute;
    right: 0.75rem;
    top: 0.5rem;
}
/* _content/Tourneys/Components/Layout/NavBar.razor.rz.scp.css */
/* Bootstrap Navbar custom styles */
.navbar[b-4b14zj37bx] {
    background: linear-gradient(135deg, 
        var(--navbar-bg) 0%, 
        color-mix(in srgb, var(--navbar-bg) 94%, #00A8F0) 100%) !important;
    color: var(--navbar-text) !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    font-family: var(--bs-font-family-winner);
    font-weight: 400;
    box-shadow: 0 3px 8px rgba(0, 136, 206, 0.15),
                0 1px 2px rgba(0, 0, 0, 0.08);
    min-height: var(--navbar-height);
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
}

/* Decorative container for pattern and accent line */
.navbar-decorative[b-4b14zj37bx] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    pointer-events: none;
}

/* Pattern overlay for visual interest */
.navbar-decorative[b-4b14zj37bx]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: repeating-linear-gradient(
                    45deg,
                    rgba(255, 255, 255, var(--navbar-pattern-opacity, 0.03)) 0,
                    rgba(255, 255, 255, var(--navbar-pattern-opacity, 0.03)) 1px,
                    transparent 1px,
                    transparent 15px
                ),
                repeating-linear-gradient(
                    -45deg,
                    rgba(255, 255, 255, var(--navbar-pattern-opacity, 0.03)) 0,
                    rgba(255, 255, 255, var(--navbar-pattern-opacity, 0.03)) 1px,
                    transparent 1px,
                    transparent 15px
                );
}

/* Subtle animated accent line */
.navbar-decorative[b-4b14zj37bx]::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: var(--color-accent);
    opacity: 0.9;
    transition: opacity 0.3s ease;
}

/* Ensure container is above decorative elements */
.navbar .container[b-4b14zj37bx] {
    position: relative;
    z-index: 1;
}

/* Brand styles */
.navbar-brand[b-4b14zj37bx] {
    font-weight: 600;
    color: var(--navbar-text) !important;
    text-decoration: none;
}

.navbar-brand:hover[b-4b14zj37bx] {
    text-decoration: none;
    opacity: 0.9;
}

.navbar-logo[b-4b14zj37bx] {
    vertical-align: middle;
}

.navbar-title[b-4b14zj37bx] {
    font-size: 1.2rem;
    line-height: 1.2;
    color: var(--bs-white); /* Crisper white */
}

.text-tennis[b-4b14zj37bx] {
    background: linear-gradient(180deg, #FFE866 0%, #FFC107 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-weight: 900; /* Bolder */
}

/* Bootstrap overrides for our theme */
.navbar-dark .navbar-toggler[b-4b14zj37bx] {
    border-color: rgba(255, 255, 255, 0.3);
}

.navbar-dark .navbar-toggler-icon[b-4b14zj37bx] {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.9%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* User dropdown button styling */
.navbar .dropdown .btn-link[b-4b14zj37bx] {
    color: var(--navbar-text) !important;
    text-decoration: none;
    font-family: var(--bs-font-family-base);
    font-weight: normal;
    font-size: 0.95rem;
    padding: 0.375rem 0.75rem;
    border-radius: var(--radius-medium);
    transition: background-color 0.2s ease;
}

.navbar .dropdown .btn-link:hover[b-4b14zj37bx] {
    background-color: rgba(255, 255, 255, 0.1);
}

.navbar .dropdown .btn-link:focus[b-4b14zj37bx] {
    box-shadow: 0 0 0 0.25rem rgba(255, 255, 255, 0.25);
}

/* Login button styling - matches ThemeSwitcher design */
.login-button[b-4b14zj37bx] {
    background: transparent;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    color: #FFF;
    font-size: 1rem;
}

@media (max-width: 768px) {
    .login-button[b-4b14zj37bx] {
        width: 36px;
        height: 36px;
    }
}

.login-button:hover[b-4b14zj37bx] {
    border-color: rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.1);
    transform: scale(1.05);
}

.login-button:active[b-4b14zj37bx] {
    transform: scale(0.95);
}

/* Ripple effect on click */
.login-button[b-4b14zj37bx]::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    transform: scale(0);
    opacity: 0;
    transition: transform 0.5s, opacity 0.5s;
}

.login-button:active[b-4b14zj37bx]::after {
    transform: scale(2);
    opacity: 0;
    transition: transform 0s, opacity 0.5s;
}

/* Dark mode specific styles */
[data-theme="dark"] .login-button[b-4b14zj37bx] {
    border-color: rgba(255, 255, 255, 0.2);
}

[data-theme="dark"] .login-button:hover[b-4b14zj37bx] {
    border-color: rgba(255, 255, 255, 0.4);
    background: rgba(255, 255, 255, 0.05);
}

/* Dropdown menu styles */
.dropdown-menu[b-4b14zj37bx] {
    min-width: 200px;
    background-color: var(--color-surface);
    border: 1px solid var(--card-border);
    box-shadow: var(--shadow-lg);
    z-index: 1050; /* Ensure dropdown appears above other elements */
    margin-top: 0.5rem; /* Add some spacing since static positioning removes default gap */
}

.dropdown-item[b-4b14zj37bx] {
    color: var(--color-text-primary);
    padding: 0.5rem 1rem;
}

.dropdown-item:hover[b-4b14zj37bx] {
    background-color: var(--navbar-item-hover-bg);
    color: var(--color-primary);
}

.dropdown-item i[b-4b14zj37bx] {
    width: 20px;
}

/* Dark mode dropdown styles */
:global([data-theme="dark"]) .dropdown-menu[b-4b14zj37bx] {
    background-color: var(--color-surface);
    border-color: var(--card-border);
}

:global([data-theme="dark"]) .dropdown-item[b-4b14zj37bx] {
    color: var(--color-text-primary);
}

:global([data-theme="dark"]) .dropdown-item:hover[b-4b14zj37bx] {
    background-color: var(--navbar-item-hover-bg);
    color: var(--color-primary);
}

/* Offcanvas styles for mobile menu */
.offcanvas[b-4b14zj37bx] {
    background-color: var(--color-surface);
}

.offcanvas-header[b-4b14zj37bx] {
    background-color: var(--color-background);
    border-bottom: 1px solid var(--card-border);
}

.offcanvas-title[b-4b14zj37bx] {
    color: var(--color-text-primary);
    font-weight: 600;
}

.offcanvas .nav-link[b-4b14zj37bx] {
    color: var(--color-text-primary);
    padding: 0.75rem 1rem;
    border-radius: var(--radius-medium);
    margin-bottom: 0.25rem;
    transition: background-color 0.2s ease;
}

.offcanvas .nav-link:hover[b-4b14zj37bx] {
    background-color: var(--navbar-item-hover-bg);
    color: var(--color-primary);
}

.offcanvas .nav-link i[b-4b14zj37bx] {
    width: 24px;
}

/* Dark mode offcanvas styles */
:global([data-theme="dark"]) .offcanvas[b-4b14zj37bx] {
    background-color: var(--color-surface);
}

:global([data-theme="dark"]) .offcanvas-header[b-4b14zj37bx] {
    background-color: var(--color-background);
    border-bottom: 1px solid var(--card-border);
}

:global([data-theme="dark"]) .btn-close[b-4b14zj37bx] {
    filter: invert(1);
}

/* Mobile responsive improvements */
@media (max-width: 768px) {
    .navbar .container-fluid[b-4b14zj37bx] {
        padding-left: 0.75rem;
        padding-right: 0.75rem;
    }

    /* iOS Safe Area adjustments for navbar */
    @supports (padding: env(safe-area-inset-left)) {
        .navbar[b-4b14zj37bx] {
            padding-left: env(safe-area-inset-left);
            padding-right: env(safe-area-inset-right);
        }
        
        .navbar .container-fluid[b-4b14zj37bx] {
            padding-left: calc(0.75rem + env(safe-area-inset-left));
            padding-right: calc(0.75rem + env(safe-area-inset-right));
        }
    }

    /* Reduce logo size on mobile */
    .navbar-logo[b-4b14zj37bx] {
        width: 44px;
        height: 44px;
    }

    /* Smaller navbar text on mobile */
    .navbar-title[b-4b14zj37bx] {
        font-size: 1.1rem;
    }

    .navbar-tagline[b-4b14zj37bx] {
        font-size: 0.65rem;
    }
}

/* Landscape orientation specific navbar adjustments */
@media (max-width: 768px) and (orientation: landscape) {
    .navbar[b-4b14zj37bx] {
        min-height: var(--header-sticky-offset-mobile);
        padding-top: 0.5rem;
        padding-bottom: 0.5rem;
    }
    
    .navbar-title[b-4b14zj37bx] {
        font-size: 1rem;
    }
    
    .navbar-tagline[b-4b14zj37bx] {
        font-size: 0.6rem;
    }
}
/* _content/Tourneys/Components/Layout/NavMenu.razor.rz.scp.css */
.navbar-toggler[b-2kr0c8fs1a] {
    appearance: none;
    cursor: pointer;
    width: 3.5rem;
    height: 2.5rem;
    color: white;
    position: absolute;
    top: 0.5rem;
    right: 1rem;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e") no-repeat center/1.75rem rgba(255, 255, 255, 0.1);
}

.navbar-toggler:checked[b-2kr0c8fs1a] {
    background-color: rgba(255, 255, 255, 0.5);
}

.top-row[b-2kr0c8fs1a] {
    min-height: 3.5rem;
    background-color: rgba(0,0,0,0.4);
}

.navbar-brand[b-2kr0c8fs1a] {
    font-size: 1.1rem;
}

.bi[b-2kr0c8fs1a] {
    display: inline-block;
    position: relative;
    width: 1.25rem;
    height: 1.25rem;
    margin-right: 0.75rem;
    top: -1px;
    background-size: cover;
}

.bi-house-door-fill-nav-menu[b-2kr0c8fs1a] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-house-door-fill' viewBox='0 0 16 16'%3E%3Cpath d='M6.5 14.5v-3.505c0-.245.25-.495.5-.495h2c.25 0 .5.25.5.5v3.5a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5v-7a.5.5 0 0 0-.146-.354L13 5.793V2.5a.5.5 0 0 0-.5-.5h-1a.5.5 0 0 0-.5.5v1.293L8.354 1.146a.5.5 0 0 0-.708 0l-6 6A.5.5 0 0 0 1.5 7.5v7a.5.5 0 0 0 .5.5h4a.5.5 0 0 0 .5-.5Z'/%3E%3C/svg%3E");
}

.bi-plus-square-fill-nav-menu[b-2kr0c8fs1a] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-plus-square-fill' viewBox='0 0 16 16'%3E%3Cpath d='M2 0a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V2a2 2 0 0 0-2-2H2zm6.5 4.5v3h3a.5.5 0 0 1 0 1h-3v3a.5.5 0 0 1-1 0v-3h-3a.5.5 0 0 1 0-1h3v-3a.5.5 0 0 1 1 0z'/%3E%3C/svg%3E");
}

.bi-list-nested-nav-menu[b-2kr0c8fs1a] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='white' class='bi bi-list-nested' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M4.5 11.5A.5.5 0 0 1 5 11h10a.5.5 0 0 1 0 1H5a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 3 7h10a.5.5 0 0 1 0 1H3a.5.5 0 0 1-.5-.5zm-2-4A.5.5 0 0 1 1 3h10a.5.5 0 0 1 0 1H1a.5.5 0 0 1-.5-.5z'/%3E%3C/svg%3E");
}

.nav-item[b-2kr0c8fs1a] {
    font-size: 0.9rem;
    padding-bottom: 0.5rem;
}

    .nav-item:first-of-type[b-2kr0c8fs1a] {
        padding-top: 1rem;
    }

    .nav-item:last-of-type[b-2kr0c8fs1a] {
        padding-bottom: 1rem;
    }

    .nav-item[b-2kr0c8fs1a]  .nav-link {
        color: #d7d7d7;
        background: none;
        border: none;
        border-radius: 4px;
        height: 3rem;
        display: flex;
        align-items: center;
        line-height: 3rem;
        width: 100%;
    }

.nav-item[b-2kr0c8fs1a]  a.active {
    background-color: rgba(255,255,255,0.37);
    color: white;
}

.nav-item[b-2kr0c8fs1a]  .nav-link:hover {
    background-color: rgba(255,255,255,0.1);
    color: white;
}

.nav-scrollable[b-2kr0c8fs1a] {
    display: none;
}

.navbar-toggler:checked ~ .nav-scrollable[b-2kr0c8fs1a] {
    display: block;
}

@media (min-width: 641px) {
    .navbar-toggler[b-2kr0c8fs1a] {
        display: none;
    }

    .nav-scrollable[b-2kr0c8fs1a] {
        /* Never collapse the sidebar for wide screens */
        display: block;

        /* Allow sidebar to scroll for tall menus */
        height: calc(100vh - 3.5rem);
        overflow-y: auto;
    }
}
/* _content/Tourneys/Components/Onboarding/Controls/BigOptionButton.razor.rz.scp.css */
.big-option-button[b-gqjf9ta5vc] {
    /* Animation timing for iOS Safari focus prevention */
    --big-option-animation-duration: 0.8s;
    --big-option-animation-delay: 0.3s;
    
    display: block;
    width: 100%;
    min-height: 48px;
    padding: 12px 16px;
    border: 2px solid var(--bs-gray-300);
    border-radius: 12px;
    background-color: var(--bs-white);
    font-size: 16px;
    font-weight: 500;
    color: var(--bs-gray-700);
    text-align: left;
    transition: all 0.2s ease;
    cursor: pointer;
    position: relative;
    overflow: hidden;
    /* Aggressive iOS Safari button resets */
    -webkit-appearance: none !important;
    appearance: none !important;
    -webkit-tap-highlight-color: transparent !important;
    /* Prevent focus bleed from previous screen */
    outline: none !important;
    outline-width: 0 !important;
    outline-style: none !important;
    /* WebKit focus ring removal */
    -webkit-focus-ring-color: transparent !important;
}

.big-option-button:hover:not(.disabled)[b-gqjf9ta5vc] {
    border-color: var(--bs-primary);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
}

.big-option-button:active:not(.disabled)[b-gqjf9ta5vc] {
    transform: scale(0.98);
}

.big-option-button.selected[b-gqjf9ta5vc] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: var(--bs-white);
    box-shadow: 0 2px 8px rgba(var(--bs-primary-rgb), 0.3);
}

.big-option-button.disabled[b-gqjf9ta5vc] {
    opacity: 0.5;
    cursor: not-allowed;
}

.option-content[b-gqjf9ta5vc] {
    display: flex;
    align-items: center;
    gap: 12px;
}

/* Column layout - icon on top, text below */
.option-content-column[b-gqjf9ta5vc] {
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
}

.option-content-column .option-text[b-gqjf9ta5vc] {
    align-items: center;
    text-align: center;
}

.option-icon[b-gqjf9ta5vc] {
    flex-shrink: 0;
    font-size: 1.5rem;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
    min-height: 32px;
    /* Allow multiple emojis to display side-by-side */
    white-space: nowrap;
    /* Explicit color for iOS Safari */
    color: inherit;
}

.option-icon i[b-gqjf9ta5vc] {
    font-size: 1.25rem;
}

.option-text[b-gqjf9ta5vc] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.option-title[b-gqjf9ta5vc] {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.2;
    display: block;
    /* Explicit color for iOS Safari */
    color: inherit;
}

.option-description[b-gqjf9ta5vc] {
    font-size: 0.875rem;
    line-height: 1.2;
    opacity: 0.8;
    display: block;
}

.big-option-button.selected .option-description[b-gqjf9ta5vc] {
    opacity: 0.9;
}

.option-checkmark[b-gqjf9ta5vc] {
    flex-shrink: 0;
    color: var(--bs-success);
    font-size: 1.25rem;
    animation: checkmarkPulse-b-gqjf9ta5vc 0.3s ease;
}

.big-option-button.selected .option-checkmark[b-gqjf9ta5vc] {
    color: var(--bs-white);
}

@keyframes checkmarkPulse-b-gqjf9ta5vc {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    50% {
        transform: scale(1.2);
    }
    100% {
        transform: scale(1);
        opacity: 1;
    }
}

/* Tablet and larger screens */
@media (min-width: 768px) {
    .big-option-button[b-gqjf9ta5vc] {
        min-height: 56px;
        padding: 16px 20px;
    }
    
    .option-content[b-gqjf9ta5vc] {
        gap: 16px;
    }
    
    .option-icon[b-gqjf9ta5vc] {
        min-width: 40px;
        min-height: 40px;
        font-size: 1.75rem;
    }
    
    .option-title[b-gqjf9ta5vc] {
        font-size: 1.125rem;
    }
}

/* Aggressive focus removal for iOS Safari */
.big-option-button:focus[b-gqjf9ta5vc] {
    border-color: var(--bs-gray-300) !important;
    box-shadow: none !important;
    outline: none !important;
    outline-width: 0 !important;
    outline-style: none !important;
    outline-color: transparent !important;
    /* Remove any Bootstrap focus ring */
    --bs-focus-ring-width: 0 !important;
    --bs-focus-ring-opacity: 0 !important;
    /* WebKit specific outline removal */
    -webkit-focus-ring-color: transparent !important;
}

/* Only show focus styling on keyboard navigation */
.big-option-button:focus-visible[b-gqjf9ta5vc] {
    border-color: var(--bs-primary);
    box-shadow: 0 0 0 3px rgba(var(--bs-primary-rgb), 0.25);
    outline: none;
}

/* Aggressive iOS Safari auto-focus prevention - target mobile devices specifically */
@media (pointer: coarse) and (hover: none) {
    .big-option-button[b-gqjf9ta5vc] {
        pointer-events: none;
        animation: enableInteraction-b-gqjf9ta5vc var(--big-option-animation-duration) ease var(--big-option-animation-delay) forwards;
    }
    
    @keyframes enableInteraction-b-gqjf9ta5vc {
        from {
            pointer-events: none;
        }
        to {
            pointer-events: auto;
        }
    }
}

/* Animation for selection */
.big-option-button[b-gqjf9ta5vc] {
    position: relative;
}

.big-option-button[b-gqjf9ta5vc]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background-color: rgba(var(--bs-primary-rgb), 0.2);
    transform: translate(-50%, -50%);
    transition: width 0.3s ease, height 0.3s ease;
}

.big-option-button.selected[b-gqjf9ta5vc]::before {
    width: 100%;
    height: 100%;
    border-radius: 12px;
}
/* _content/Tourneys/Components/Onboarding/Controls/OnboardingRatingSelector.razor.rz.scp.css */
.onboarding-rating-selector[b-1dhe9t01rt] {
    padding: 0.5rem 0;
}

/* Step containers */
.rating-step[b-1dhe9t01rt] {
    margin-bottom: 0.75rem;
    opacity: 0;
    transform: translateY(10px);
    animation: fadeInUp-b-1dhe9t01rt 0.3s ease forwards;
}

.rating-step.completed[b-1dhe9t01rt] {
    opacity: 0.7;
}

.rating-step.pending[b-1dhe9t01rt] {
    display: none;
}

@keyframes fadeInUp-b-1dhe9t01rt {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Step titles */
.step-title[b-1dhe9t01rt] {
    font-size: 1.25rem;
    font-weight: 600;
    color: var(--bs-dark);
    margin-bottom: 0.5rem;
    text-align: center;
}

.step-description[b-1dhe9t01rt] {
    font-size: 0.9375rem;
    color: var(--bs-gray-600);
    margin-bottom: 1.5rem;
    text-align: center;
}

/* Source selection */
.source-options[b-1dhe9t01rt] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    margin-bottom: 1rem;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.source-option[b-1dhe9t01rt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    border: 2px solid var(--bs-gray-300);
    border-radius: 12px;
    background-color: var(--bs-white);
    text-align: left;
    transition: all 0.2s ease;
    cursor: pointer;
    position: relative;
    min-height: 60px;
}

.source-option:disabled[b-1dhe9t01rt] {
    opacity: 0.5;
    cursor: not-allowed;
}

.source-option:not(:disabled):hover[b-1dhe9t01rt] {
    border-color: var(--bs-primary);
    transform: translateX(2px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.source-option.selected[b-1dhe9t01rt] {
    background: linear-gradient(135deg, #40916c, #2d6a4f);
    border-color: #40916c;
    color: var(--bs-white);
    box-shadow: 0 3px 10px rgba(64, 145, 108, 0.3);
}

.source-icon[b-1dhe9t01rt] {
    font-size: 1.5rem;
    width: 36px;
    text-align: center;
    flex-shrink: 0;
}

.source-name[b-1dhe9t01rt] {
    font-weight: 600;
    font-size: 1rem;
    flex: 1;
}

.source-desc[b-1dhe9t01rt] {
    font-size: 0.75rem;
    opacity: 0.7;
    padding-right: 2.5rem;  /* Prevent overlap with checkmark */
}

.source-option.selected .source-desc[b-1dhe9t01rt] {
    opacity: 0.9;
}

.source-check[b-1dhe9t01rt] {
    position: absolute;
    right: 1rem;
    color: white;
    font-size: 1.25rem;
}

/* Helper text */
.step-helper[b-1dhe9t01rt] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    margin-top: 1rem;
    font-size: 0.875rem;
    color: var(--bs-gray-600);
}

.step-helper i[b-1dhe9t01rt] {
    color: var(--bs-info);
}

/* Filter choice */
.filter-choice[b-1dhe9t01rt] {
    display: flex;
    flex-direction: row;
    gap: 0.75rem;
    max-width: 500px;
    margin: 0 auto;
}

.choice-button[b-1dhe9t01rt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.5rem;
    padding: 1.25rem 0.75rem;
    border: 2px solid var(--bs-gray-300);
    border-radius: 12px;
    background-color: var(--bs-white);
    flex: 1;
    text-align: center;
    transition: all 0.2s ease;
    cursor: pointer;
    min-height: 80px;
}

.choice-button.large[b-1dhe9t01rt] {
    min-height: 120px;
}

.choice-button:hover[b-1dhe9t01rt] {
    border-color: var(--bs-primary);
    transform: translateY(-2px);
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1);
}

.choice-button.selected[b-1dhe9t01rt] {
    background: linear-gradient(135deg, #40916c, #2d6a4f);
    border-color: #40916c;
    color: var(--bs-white);
    box-shadow: 0 4px 12px rgba(64, 145, 108, 0.3);
}

.choice-icon[b-1dhe9t01rt] {
    font-size: 2rem;
}

.choice-text[b-1dhe9t01rt] {
    font-weight: 600;
    font-size: 1rem;
}

.choice-desc[b-1dhe9t01rt] {
    font-size: 0.75rem;
    opacity: 0.8;
    line-height: 1.2;
}

.choice-button.selected .choice-desc[b-1dhe9t01rt] {
    opacity: 0.9;
}

/* Rating columns */
.rating-columns[b-1dhe9t01rt] {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1.5rem;
    max-width: 500px;
    margin: 0 auto;
}

.rating-column[b-1dhe9t01rt] {
    min-width: 0;
}

.column-title[b-1dhe9t01rt] {
    font-size: 1rem;
    font-weight: 600;
    color: var(--bs-gray-800);
    text-align: center;
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--bs-gray-200);
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
}

.column-icon[b-1dhe9t01rt] {
    font-size: 1.25rem;
}

.rating-buttons[b-1dhe9t01rt] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(70px, 1fr));
    gap: 0.5rem;
}

.rating-button[b-1dhe9t01rt] {
    padding: 0.625rem 0.5rem;
    border: 2px solid var(--bs-gray-300);
    border-radius: 8px;
    background-color: var(--bs-white);
    font-size: 0.9375rem;
    font-weight: 500;
    color: var(--bs-gray-700);
    text-align: center;
    transition: all 0.2s ease;
    cursor: pointer;
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
    position: relative;
}

.rating-button.any-rating[b-1dhe9t01rt] {
    background-color: var(--bs-gray-50);
    border-style: dashed;
    font-style: italic;
}

.rating-button.any-rating:hover[b-1dhe9t01rt] {
    background-color: var(--bs-gray-100);
    border-color: var(--bs-primary);
}

.rating-button.any-rating.selected[b-1dhe9t01rt] {
    background: linear-gradient(135deg, #e8f5e9, #c8e6c9);
    border: 2px solid #40916c;
    color: #2d6a4f;
    font-weight: 600;
    font-style: normal;
}

.rating-button i[b-1dhe9t01rt] {
    font-size: 0.875rem;
    margin-right: 0.125rem;
}

.rating-button:hover[b-1dhe9t01rt] {
    border-color: var(--bs-primary);
    background-color: var(--bs-gray-50);
    transform: translateY(-1px);
}

.rating-button.selected[b-1dhe9t01rt] {
    background: linear-gradient(135deg, #40916c, #2d6a4f);
    border-color: #40916c;
    color: var(--bs-white);
    font-weight: 600;
    box-shadow: 0 2px 6px rgba(64, 145, 108, 0.3);
}

/* Tablet and larger */
@media (min-width: 768px) {
    .onboarding-rating-selector[b-1dhe9t01rt] {
        padding: 1.5rem 0;
    }
    
    .step-title[b-1dhe9t01rt] {
        font-size: 1.5rem;
    }
    
    .step-description[b-1dhe9t01rt] {
        font-size: 1rem;
    }
    
    .source-options[b-1dhe9t01rt] {
        flex-direction: row;
        gap: 1rem;
        max-width: 600px;
    }
    
    .source-option[b-1dhe9t01rt] {
        flex: 1;
        flex-direction: column;
        text-align: center;
        padding: 1.25rem;
        min-height: 140px;
    }
    
    .source-icon[b-1dhe9t01rt] {
        font-size: 2.5rem;
        width: auto;
        margin-bottom: 0.5rem;
    }
    
    .source-check[b-1dhe9t01rt] {
        position: absolute;
        top: 0.5rem;
        right: 0.5rem;
    }
    
    .filter-choice[b-1dhe9t01rt] {
        flex-direction: row;
        max-width: 500px;
    }
    
    .choice-button[b-1dhe9t01rt] {
        flex: 1;
    }
    
    .rating-columns[b-1dhe9t01rt] {
        grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
        gap: 2rem;
        max-width: 600px;
    }
    
    .column-title[b-1dhe9t01rt] {
        font-size: 1.125rem;
    }
    
    .rating-button[b-1dhe9t01rt] {
        font-size: 1rem;
        padding: 0.75rem;
    }
}

/* Focus styles for accessibility */
.source-option:focus-visible[b-1dhe9t01rt],
.choice-button:focus-visible[b-1dhe9t01rt],
.rating-button:focus-visible[b-1dhe9t01rt] {
    outline: 3px solid var(--bs-primary);
    outline-offset: 2px;
}

/* Animations */
@keyframes bounce-b-1dhe9t01rt {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-8px);
    }
}

.source-option.selected .source-icon[b-1dhe9t01rt] {
    animation: bounce-b-1dhe9t01rt 0.5s ease;
}

/* Mobile optimizations */
@media (max-width: 767px) {
    .step-title[b-1dhe9t01rt] {
        font-size: 1.125rem;
    }
    
    .step-description[b-1dhe9t01rt] {
        font-size: 0.875rem;
    }
    
    .rating-buttons[b-1dhe9t01rt] {
        grid-template-columns: repeat(3, 1fr);
    }
    
    /* Adjust filter choice buttons for mobile */
    .choice-button[b-1dhe9t01rt] {
        padding: 1rem 0.5rem;
    }
    
    .choice-icon[b-1dhe9t01rt] {
        font-size: 1.5rem;
    }
    
    .choice-text[b-1dhe9t01rt] {
        font-size: 0.9rem;
    }
    
    .choice-desc[b-1dhe9t01rt] {
        font-size: 0.7rem;
    }
}

/* Very small screens - stack buttons if needed */
@media (max-width: 380px) {
    .filter-choice[b-1dhe9t01rt] {
        flex-direction: column;
    }
    
    .choice-button[b-1dhe9t01rt] {
        padding: 1rem;
    }
}
/* _content/Tourneys/Components/Onboarding/Controls/OptionGrid.razor.rz.scp.css */
.option-grid[b-vc52nd8wmi] {
    display: grid;
    gap: 12px;
    width: 100%;
}

/* Column configurations */
.option-grid.columns-1[b-vc52nd8wmi] {
    grid-template-columns: 1fr;
}

.option-grid.columns-2[b-vc52nd8wmi] {
    grid-template-columns: repeat(2, 1fr);
}

.option-grid.columns-3[b-vc52nd8wmi] {
    grid-template-columns: repeat(3, 1fr);
}

.option-grid.columns-4[b-vc52nd8wmi] {
    grid-template-columns: repeat(2, 1fr);
}

/* Grid items */
.grid-item[b-vc52nd8wmi] {
    display: flex;
}

.grid-option[b-vc52nd8wmi] {
    flex: 1;
    min-height: 48px;
    padding: 12px;
    border: 2px solid var(--bs-gray-300);
    border-radius: 8px;
    background-color: var(--bs-white);
    font-size: 16px;
    font-weight: 500;
    color: var(--bs-gray-700);
    text-align: center;
    transition: all 0.2s ease;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}

.grid-option:hover:not(:disabled)[b-vc52nd8wmi] {
    border-color: var(--bs-primary);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
}

.grid-option:active:not(:disabled)[b-vc52nd8wmi] {
    transform: scale(0.98);
}

.grid-option.selected[b-vc52nd8wmi] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: var(--bs-white);
    box-shadow: 0 2px 8px rgba(var(--bs-primary-rgb), 0.3);
}

.grid-option:disabled[b-vc52nd8wmi] {
    opacity: 0.5;
    cursor: not-allowed;
}

/* Option content */
.option-inner[b-vc52nd8wmi] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
}

.option-icon[b-vc52nd8wmi] {
    font-size: 1.25rem;
    line-height: 1;
    display: block;
}

.option-label[b-vc52nd8wmi] {
    font-weight: 600;
    font-size: 0.9375rem;
    line-height: 1.2;
    display: block;
}

.option-description[b-vc52nd8wmi] {
    font-size: 0.75rem;
    line-height: 1.2;
    opacity: 0.8;
    display: block;
}

.grid-option.selected .option-description[b-vc52nd8wmi] {
    opacity: 0.9;
}

/* Selection animation */
.grid-option[b-vc52nd8wmi]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    background-color: rgba(var(--bs-primary-rgb), 0.2);
    transform: translate(-50%, -50%);
    transition: width 0.3s ease, height 0.3s ease;
}

.grid-option.selected[b-vc52nd8wmi]::before {
    width: 100%;
    height: 100%;
    border-radius: 8px;
}

/* Tablet and larger screens */
@media (min-width: 768px) {
    .option-grid[b-vc52nd8wmi] {
        gap: 16px;
    }
    
    .option-grid.columns-4[b-vc52nd8wmi] {
        grid-template-columns: repeat(4, 1fr);
    }
    
    .grid-option[b-vc52nd8wmi] {
        min-height: 56px;
        padding: 16px;
    }
    
    .option-inner[b-vc52nd8wmi] {
        gap: 6px;
    }
    
    .option-icon[b-vc52nd8wmi] {
        font-size: 1.5rem;
    }
    
    .option-label[b-vc52nd8wmi] {
        font-size: 1rem;
    }
    
    .option-description[b-vc52nd8wmi] {
        font-size: 0.8125rem;
    }
}

/* Large screens */
@media (min-width: 992px) {
    .option-grid.columns-2[b-vc52nd8wmi] {
        max-width: 600px;
    }
    
    .option-grid.columns-3[b-vc52nd8wmi] {
        max-width: 720px;
    }
    
    .option-grid.columns-4[b-vc52nd8wmi] {
        max-width: 800px;
    }
}

/* Focus styles for accessibility */
.grid-option:focus-visible[b-vc52nd8wmi] {
    outline: 3px solid var(--bs-primary);
    outline-offset: 2px;
}

/* Compact mode for many options */
.option-grid.compact .grid-option[b-vc52nd8wmi] {
    min-height: 40px;
    padding: 8px;
}

.option-grid.compact .option-label[b-vc52nd8wmi] {
    font-size: 0.875rem;
}

.option-grid.compact .option-icon[b-vc52nd8wmi] {
    font-size: 1rem;
}
/* _content/Tourneys/Components/Onboarding/Controls/ProgressIndicator.razor.rz.scp.css */
.progress-indicator[b-f0460owb8p] {
    padding: 16px 0;
}

/* Progress Bar */
.progress-bar-container[b-f0460owb8p] {
    height: 4px;
    background-color: var(--bs-gray-200);
    border-radius: 2px;
    margin-bottom: 16px;
    overflow: hidden;
    position: relative;
}

.progress-bar-fill[b-f0460owb8p] {
    height: 100%;
    background: linear-gradient(90deg, var(--bs-primary) 0%, var(--bs-success) 100%);
    border-radius: 2px;
    transition: width 0.3s ease;
    position: relative;
}

.progress-bar-fill[b-f0460owb8p]::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(
        90deg,
        transparent,
        rgba(255, 255, 255, 0.3),
        transparent
    );
    animation: shimmer-b-f0460owb8p 2s infinite;
}

@keyframes shimmer-b-f0460owb8p {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
    }
}

/* Progress Dots */
.progress-dots[b-f0460owb8p] {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 32px;
    position: relative;
}

.progress-dots[b-f0460owb8p]::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    height: 2px;
    background-color: var(--bs-gray-200);
    transform: translateY(-50%);
    z-index: 0;
}

.progress-dot[b-f0460owb8p] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background-color: #E5E7EB;
    border: none;
    transition: all 0.3s ease;
    position: relative;
    z-index: 1;
    cursor: default;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.progress-dot:not(:disabled)[b-f0460owb8p] {
    cursor: pointer;
}

.progress-dot:hover:not(:disabled):not(.active)[b-f0460owb8p] {
    transform: scale(1.1);
    background-color: #D1D5DB;
}

.progress-dot.completed[b-f0460owb8p] {
    background-color: #10B981;
}

.progress-dot.completed[b-f0460owb8p]::after {
    content: '✓';
    color: white;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
}

.progress-dot.active[b-f0460owb8p] {
    background-color: #10B981;
    box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
    animation: pulse-b-f0460owb8p 1.5s ease-in-out infinite;
}

@keyframes pulse-b-f0460owb8p {
    0% {
        box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(16, 185, 129, 0.1);
    }
    100% {
        box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
    }
}

.step-number[b-f0460owb8p] {
    font-size: 0.625rem;
    font-weight: 600;
    color: var(--bs-white);
    position: absolute;
}

.progress-dot.pending .step-number[b-f0460owb8p] {
    color: var(--bs-gray-600);
}

/* Step Label */
.step-label[b-f0460owb8p] {
    margin-top: 16px;
    text-align: center;
}

.step-text[b-f0460owb8p] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bs-gray-700);
    display: block;
}

.step-percentage[b-f0460owb8p] {
    font-size: 0.75rem;
    color: var(--bs-gray-500);
    display: block;
    margin-top: 4px;
}

/* Tablet and larger */
@media (min-width: 768px) {
    .progress-bar-container[b-f0460owb8p] {
        height: 6px;
    }
    
    .progress-dots[b-f0460owb8p] {
        gap: 40px;
    }
    
    .progress-dot[b-f0460owb8p] {
        width: 36px;
        height: 36px;
    }
    
    .progress-dot.completed[b-f0460owb8p]::after {
        font-size: 18px;
    }
    
    .step-text[b-f0460owb8p] {
        font-size: 1rem;
    }
    
    .step-percentage[b-f0460owb8p] {
        font-size: 0.875rem;
    }
}

/* Focus styles for accessibility */
.progress-dot:focus-visible[b-f0460owb8p] {
    outline: 3px solid #10B981;
    outline-offset: 2px;
}

/* Disabled state */
.progress-dot:disabled[b-f0460owb8p] {
    opacity: 0.5;
    cursor: not-allowed;
}
/* _content/Tourneys/Components/Onboarding/Controls/RatingSelector.razor.rz.scp.css */
.rating-selector[b-irakr19k90] {
    padding: 16px 0;
}

/* Step containers */
.rating-step[b-irakr19k90] {
    margin-bottom: 24px;
    opacity: 0;
    transform: translateY(10px);
    animation: fadeInUp-b-irakr19k90 0.3s ease forwards;
}

.rating-step.completed[b-irakr19k90] {
    opacity: 0.7;
}

.rating-step.pending[b-irakr19k90] {
    display: none;
}

@keyframes fadeInUp-b-irakr19k90 {
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Step titles */
.step-title[b-irakr19k90] {
    font-size: 1.125rem;
    font-weight: 600;
    color: var(--bs-gray-800);
    margin-bottom: 8px;
}

.step-description[b-irakr19k90] {
    font-size: 0.875rem;
    color: var(--bs-gray-600);
    margin-bottom: 20px;
}

/* Source selection */
.source-options[b-irakr19k90] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-bottom: 16px;
}

.source-option[b-irakr19k90] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px;
    border: 2px solid var(--bs-gray-300);
    border-radius: 12px;
    background-color: var(--bs-white);
    text-align: left;
    transition: all 0.2s ease;
    cursor: pointer;
}

.source-option:hover[b-irakr19k90] {
    border-color: var(--bs-primary);
    transform: translateX(4px);
}

.source-option.selected[b-irakr19k90] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: var(--bs-white);
    box-shadow: 0 2px 8px rgba(var(--bs-primary-rgb), 0.3);
}

.source-icon[b-irakr19k90] {
    font-size: 1.5rem;
    width: 40px;
    text-align: center;
}

.source-name[b-irakr19k90] {
    font-weight: 600;
    font-size: 1rem;
    flex: 1;
}

.source-desc[b-irakr19k90] {
    font-size: 0.75rem;
    opacity: 0.8;
}

.source-option.selected .source-desc[b-irakr19k90] {
    opacity: 0.9;
}

/* Select all button */
.btn-select-all[b-irakr19k90] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 10px 16px;
    border: 1px solid var(--bs-gray-400);
    border-radius: 6px;
    background-color: var(--bs-white);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--bs-gray-700);
    cursor: pointer;
    transition: all 0.2s ease;
}

.btn-select-all:hover[b-irakr19k90] {
    background-color: var(--bs-gray-50);
}

.btn-select-all.selected[b-irakr19k90] {
    background-color: var(--bs-success);
    border-color: var(--bs-success);
    color: var(--bs-white);
}

/* Filter choice */
.filter-choice[b-irakr19k90] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
}

.choice-button[b-irakr19k90] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 8px;
    padding: 20px 12px;
    border: 2px solid var(--bs-gray-300);
    border-radius: 12px;
    background-color: var(--bs-white);
    text-align: center;
    transition: all 0.2s ease;
    cursor: pointer;
}

.choice-button:hover[b-irakr19k90] {
    border-color: var(--bs-primary);
    transform: translateY(-2px);
}

.choice-button.selected[b-irakr19k90] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: var(--bs-white);
    box-shadow: 0 4px 12px rgba(var(--bs-primary-rgb), 0.3);
}

.choice-button i[b-irakr19k90] {
    font-size: 2rem;
}

.choice-text[b-irakr19k90] {
    font-weight: 600;
    font-size: 0.9375rem;
}

.choice-desc[b-irakr19k90] {
    font-size: 0.75rem;
    opacity: 0.8;
}

.choice-button.selected .choice-desc[b-irakr19k90] {
    opacity: 0.9;
}

/* Rating columns */
.rating-columns[b-irakr19k90] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(100px, 1fr));
    gap: 16px;
}

.rating-column[b-irakr19k90] {
    min-width: 0;
}

.column-title[b-irakr19k90] {
    font-size: 0.875rem;
    font-weight: 600;
    color: var(--bs-gray-700);
    text-align: center;
    margin-bottom: 12px;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--bs-gray-200);
}

.rating-buttons[b-irakr19k90] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.rating-button[b-irakr19k90] {
    padding: 10px 8px;
    border: 1px solid var(--bs-gray-300);
    border-radius: 6px;
    background-color: var(--bs-white);
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--bs-gray-700);
    text-align: center;
    transition: all 0.2s ease;
    cursor: pointer;
    min-height: 40px;
}

.rating-button:hover[b-irakr19k90] {
    border-color: var(--bs-primary);
    background-color: var(--bs-gray-50);
}

.rating-button.selected[b-irakr19k90] {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
    color: var(--bs-white);
    font-weight: 600;
}

/* Tablet and larger */
@media (min-width: 768px) {
    .rating-selector[b-irakr19k90] {
        padding: 20px 0;
    }
    
    .step-title[b-irakr19k90] {
        font-size: 1.25rem;
    }
    
    .step-description[b-irakr19k90] {
        font-size: 1rem;
    }
    
    .source-options[b-irakr19k90] {
        flex-direction: row;
        gap: 16px;
    }
    
    .source-option[b-irakr19k90] {
        flex: 1;
        flex-direction: column;
        text-align: center;
        padding: 20px;
    }
    
    .source-icon[b-irakr19k90] {
        font-size: 2rem;
        width: auto;
    }
    
    .filter-choice[b-irakr19k90] {
        max-width: 600px;
        margin: 0 auto;
    }
    
    .rating-columns[b-irakr19k90] {
        gap: 24px;
        max-width: 600px;
        margin: 0 auto;
    }
    
    .column-title[b-irakr19k90] {
        font-size: 1rem;
    }
    
    .rating-button[b-irakr19k90] {
        font-size: 0.9375rem;
        padding: 12px;
    }
}

/* Focus styles */
.source-option:focus-visible[b-irakr19k90],
.choice-button:focus-visible[b-irakr19k90],
.rating-button:focus-visible[b-irakr19k90],
.btn-select-all:focus-visible[b-irakr19k90] {
    outline: 3px solid var(--bs-primary);
    outline-offset: 2px;
}

/* Tennis ball bounce animation */
@keyframes bounce-b-irakr19k90 {
    0%, 100% {
        transform: translateY(0);
    }
    50% {
        transform: translateY(-10px);
    }
}

.source-option.selected .source-icon[b-irakr19k90] {
    animation: bounce-b-irakr19k90 0.5s ease;
}
/* _content/Tourneys/Components/Onboarding/Core/OnboardingWizard.razor.rz.scp.css */
.onboarding-wizard[b-vvjcixw65v] {
    min-height: auto;
    display: flex;
    flex-direction: column;
    background: var(--bs-body-bg);
    position: relative;
    /* Performance optimizations */
    contain: layout style;
    will-change: contents;
}

.btn-exit[b-vvjcixw65v] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: 2px solid var(--bs-gray-300);
    background: white;
    color: var(--bs-gray-600);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    z-index: 100;
}

.btn-exit:hover[b-vvjcixw65v] {
    border-color: var(--bs-danger);
    color: var(--bs-danger);
    background: var(--bs-gray-100);
}

.btn-exit i[b-vvjcixw65v] {
    font-size: 1.25rem;
}

.wizard-progress[b-vvjcixw65v] {
    padding: 1.5rem 1rem 1rem;
    background: white;
    border-bottom: 1px solid var(--bs-gray-200);
}

.progress-bar-container[b-vvjcixw65v] {
    height: 4px;
    background: var(--bs-gray-200);
    border-radius: 2px;
    margin-bottom: 1rem;
    margin-right: 3.5rem;  /* Keep clear of X button */
    margin-left: 2rem;  /* Match left padding of dots */
    overflow: hidden;
}

.progress-bar-fill[b-vvjcixw65v] {
    height: 100%;
    background: var(--bs-primary);
    transition: width 0.3s ease;
    border-radius: 2px;
    /* Performance: hint browser about animated property */
    will-change: width;
}

.progress-dots[b-vvjcixw65v] {
    display: flex;
    justify-content: space-between;
    padding: 0 3.5rem 0 2rem;  /* Add more padding on the right to avoid X button */
}

.progress-dot[b-vvjcixw65v] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #E5E7EB;
    border: none;
    cursor: pointer;
    transition: all 0.3s ease;
    display: flex;
    align-items: center;
    justify-content: center;
}

.progress-dot:hover[b-vvjcixw65v] {
    transform: scale(1.1);
    background: #D1D5DB;
}

.progress-dot.completed[b-vvjcixw65v] {
    background: #10B981;
}

.progress-dot.completed[b-vvjcixw65v]::after {
    content: '✓';
    color: white;
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
}

.progress-dot.active[b-vvjcixw65v] {
    background: #10B981;
    box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
    animation: pulse-b-vvjcixw65v 1.5s ease-in-out infinite;
}

@keyframes pulse-b-vvjcixw65v {
    0% {
        box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
    }
    50% {
        box-shadow: 0 0 0 8px rgba(16, 185, 129, 0.1);
    }
    100% {
        box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.2);
    }
}

.wizard-content[b-vvjcixw65v] {
    flex: 1 1 auto;  /* Allow content to grow and enable scrolling */
    padding: 2rem 1rem;
    overflow-y: visible;
    overflow-x: visible;
    position: relative;
    height: auto;
}

.wizard-content.transitioning[b-vvjcixw65v] {
    overflow: hidden;
}

.wizard-step[b-vvjcixw65v] {
    opacity: 1;
    transition: transform 0.3s ease-out, opacity 0.3s ease-out;
}

.wizard-step.step-forward[b-vvjcixw65v] {
    animation: slideInFromRight 0.3s ease-out;
    will-change: transform, opacity;
}

.wizard-step.step-backward[b-vvjcixw65v] {
    animation: slideInFromLeft 0.3s ease-out;
    will-change: transform, opacity;
}

.wizard-navigation[b-vvjcixw65v] {
    position: sticky;
    bottom: 0;
    background: white;
    border-top: 1px solid var(--bs-gray-200);
    padding: 1rem;
    display: flex;
    justify-content: space-between;
    gap: 1rem;
    box-shadow: 0 -2px 10px rgba(0, 0, 0, 0.05);
}

.btn-back[b-vvjcixw65v],
.btn-next[b-vvjcixw65v],
.btn-complete[b-vvjcixw65v] {
    min-height: 48px;
    padding: 0.75rem 1.5rem;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: 8px;
}

.btn-next[b-vvjcixw65v],
.btn-complete[b-vvjcixw65v] {
    margin-left: auto;
}

@@keyframes slideInFromRight {
    from[b-vvjcixw65v] {
        opacity: 0;
        transform: translateX(100%);
    }
    to[b-vvjcixw65v] {
        opacity: 1;
        transform: translateX(0);
    }
}

@@keyframes slideInFromLeft {
    from[b-vvjcixw65v] {
        opacity: 0;
        transform: translateX(-100%);
    }
    to[b-vvjcixw65v] {
        opacity: 1;
        transform: translateX(0);
    }
}

/* Small phones (320px - 374px) */
@@media (max-width: 374px) {
    .wizard-progress[b-vvjcixw65v] {
        padding: 1rem 0.5rem 0.5rem;
    }

    .progress-bar-container[b-vvjcixw65v] {
        margin-right: 3rem;  /* Keep clear of X button on mobile */
        margin-left: 1rem;
    }

    .progress-dots[b-vvjcixw65v] {
        padding: 0 3rem 0 1rem;  /* More padding right to avoid X button */
    }

    .progress-dot[b-vvjcixw65v] {
        width: 28px;
        height: 28px;
    }
    
    .progress-dot.completed[b-vvjcixw65v]::after {
        font-size: 14px;
    }

    .wizard-content[b-vvjcixw65v] {
        padding: 1.5rem 0.75rem;
    }

    .btn-back[b-vvjcixw65v],
    .btn-next[b-vvjcixw65v],
    .btn-complete[b-vvjcixw65v] {
        font-size: 0.875rem;
        padding: 0.625rem 1rem;
    }
}

/* Standard phones (375px - 767px) */
@@media (max-width: 767px) {
    .onboarding-wizard[b-vvjcixw65v] {
        border-radius: 0;
        min-height: auto;
    }

    .wizard-navigation[b-vvjcixw65v] {
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 100;
        /* Safe area for iPhone notch/home indicator */
        padding-bottom: env(safe-area-inset-bottom, 0);
    }

    .wizard-content[b-vvjcixw65v] {
        padding-bottom: calc(80px + env(safe-area-inset-bottom, 0));
    }

    /* Remove navigation padding when navigation is hidden */
    .onboarding-wizard.no-navigation .wizard-content[b-vvjcixw65v] {
        padding-bottom: env(safe-area-inset-bottom, 0);
    }

    /* Ensure touch targets are at least 48px */
    .btn-back[b-vvjcixw65v],
    .btn-next[b-vvjcixw65v],
    .btn-complete[b-vvjcixw65v] {
        min-height: 48px;
        min-width: 100px;
    }
}

/* Tablet and desktop */
@@media (min-width: 768px) {
    .onboarding-wizard[b-vvjcixw65v] {
        max-width: 600px;
        margin: 0 auto;
        min-height: auto;
        border-radius: 12px;
        box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
        overflow: visible;
        margin-top: 2rem;
        margin-bottom: 2rem;
    }

    .wizard-content[b-vvjcixw65v] {
        /* Removed min-height constraint to allow scrolling to full content */
        height: auto;
    }

    .wizard-navigation[b-vvjcixw65v] {
        position: relative;
        border-radius: 0 0 12px 12px;
    }

    .progress-dots[b-vvjcixw65v] {
        padding: 0 4rem 0 2rem;  /* Asymmetric padding to avoid X button */
    }
    
    .progress-dot[b-vvjcixw65v] {
        width: 36px;
        height: 36px;
    }
    
    .progress-dot.completed[b-vvjcixw65v]::after {
        font-size: 18px;
    }
}

/* Landscape orientation on mobile */
@@media (max-height: 500px) and (orientation: landscape) {
    .onboarding-wizard[b-vvjcixw65v] {
        min-height: auto;
    }

    .wizard-progress[b-vvjcixw65v] {
        padding: 0.75rem 1rem 0.5rem;
    }

    .wizard-content[b-vvjcixw65v] {
        /* Removed min-height constraint for landscape to allow scrolling */
        height: auto;
        padding: 1rem;
    }

    .wizard-navigation[b-vvjcixw65v] {
        padding: 0.75rem;
    }
}

/* Dark mode support */
[data-theme="dark"] .onboarding-wizard[b-vvjcixw65v] {
    background: var(--bs-dark);
}

[data-theme="dark"] .wizard-progress[b-vvjcixw65v],
[data-theme="dark"] .wizard-navigation[b-vvjcixw65v] {
    background: var(--bs-gray-900);
    border-color: var(--bs-gray-800);
}

[data-theme="dark"] .progress-bar-container[b-vvjcixw65v] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .progress-dot[b-vvjcixw65v] {
    background: #4B5563;
}

[data-theme="dark"] .progress-dot:hover[b-vvjcixw65v] {
    background: #6B7280;
}

[data-theme="dark"] .progress-dot.completed[b-vvjcixw65v],
[data-theme="dark"] .progress-dot.active[b-vvjcixw65v] {
    background: #10B981;
}
/* _content/Tourneys/Components/Pages/Calendar.razor.rz.scp.css */

    .calendar-container[b-laf9wqbgtn] {
        max-width: 1200px;
        margin: 0 auto;
        padding: 1rem;
        height: calc(100vh - 2rem);
        display: flex;
        flex-direction: column;
    }

    .calendar-header[b-laf9wqbgtn] {
        display: flex;
        justify-content: space-between;
        align-items: center;
        margin-bottom: 1rem;
        flex-shrink: 0;
    }

    .calendar-nav[b-laf9wqbgtn] {
        display: flex;
        align-items: center;
        gap: 0.5rem;
    }

    .nav-btn[b-laf9wqbgtn] {
        min-width: 32px;
        height: 32px;
        padding: 0;
    }

    .calendar-title[b-laf9wqbgtn] {
        margin: 0;
        font-size: 1.5rem;
        font-weight: 600;
        min-width: 200px;
        text-align: center;
    }

    .legend[b-laf9wqbgtn] {
        display: flex;
        gap: 1rem;
        flex-wrap: wrap;
    }

    .legend-item[b-laf9wqbgtn] {
        display: flex;
        align-items: center;
        gap: 0.25rem;
        font-size: 0.875rem;
    }

    .legend-dot[b-laf9wqbgtn] {
        width: 12px;
        height: 12px;
        border-radius: 50%;
        flex-shrink: 0;
    }

    .legend-text[b-laf9wqbgtn] {
        white-space: nowrap;
    }

    .usta-color[b-laf9wqbgtn] { background-color: #0078d4; }
    .utr-color[b-laf9wqbgtn] { background-color: #00bcf2; }
    .wtn-color[b-laf9wqbgtn] { background-color: #d2394d; }
    .sanctioned-color[b-laf9wqbgtn] { background-color: #107c10; }
    .prize-color[b-laf9wqbgtn] { background-color: #ff8c00; }

    .calendar-grid[b-laf9wqbgtn] {
        display: grid;
        grid-template-columns: repeat(7, 1fr);
        gap: 1px;
        background-color: #e5e5e5;
        border: 1px solid #e5e5e5;
        flex: 1;
        min-height: 0;
    }

    .day-header[b-laf9wqbgtn] {
        background-color: #f8f9fa;
        text-align: center;
        padding: 0.5rem;
        font-weight: 600;
        font-size: 0.875rem;
        color: #666;
    }

    .calendar-day[b-laf9wqbgtn] {
        background-color: white;
        padding: 0.25rem;
        min-height: 80px;
        display: flex;
        flex-direction: column;
        position: relative;
        cursor: pointer;
        transition: background-color 0.2s;
    }

    .calendar-day:hover[b-laf9wqbgtn] {
        background-color: #f8f9fa;
    }

    .calendar-day.other-month[b-laf9wqbgtn] {
        background-color: #fafafa;
        color: #ccc;
    }

    .calendar-day.past-day[b-laf9wqbgtn] {
        background-color: #f5f5f5;
        color: #999;
    }

    .calendar-day.today[b-laf9wqbgtn] {
        background-color: #e3f2fd;
        border: 2px solid #1976d2;
    }

    .day-number[b-laf9wqbgtn] {
        font-weight: 600;
        font-size: 0.875rem;
        margin-bottom: 0.25rem;
        flex-shrink: 0;
    }

    .tournament-spans[b-laf9wqbgtn] {
        flex: 1;
        display: flex;
        flex-direction: column;
        gap: 1px;
        overflow: hidden;
    }

    .tournament-span[b-laf9wqbgtn] {
        height: 18px;
        border-radius: 2px;
        font-size: 0.75rem;
        font-weight: 500;
        color: white;
        display: flex;
        align-items: center;
        padding: 0 4px;
        cursor: pointer;
        position: relative;
        overflow: hidden;
    }

    .tournament-span:hover[b-laf9wqbgtn] {
        opacity: 0.8;
    }

    .tournament-span.usta-color[b-laf9wqbgtn] { background-color: #0078d4; }
    .tournament-span.utr-color[b-laf9wqbgtn] { background-color: #00bcf2; }
    .tournament-span.wtn-color[b-laf9wqbgtn] { background-color: #d2394d; }
    .tournament-span.sanctioned-color[b-laf9wqbgtn] { background-color: #107c10; }
    .tournament-span.prize-color[b-laf9wqbgtn] { background-color: #ff8c00; }

    .tournament-name[b-laf9wqbgtn] {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }

    .more-tournaments[b-laf9wqbgtn] {
        font-size: 0.7rem;
        color: #666;
        cursor: pointer;
        padding: 2px 4px;
        background-color: #f0f0f0;
        border-radius: 2px;
    }

    .more-tournaments:hover[b-laf9wqbgtn] {
        background-color: #e0e0e0;
    }


    .tournament-details[b-laf9wqbgtn] {
        margin-bottom: 1.5rem;
    }

    .detail-row[b-laf9wqbgtn] {
        margin-bottom: 0.5rem;
        line-height: 1.4;
    }

    .detail-row.prize-money[b-laf9wqbgtn] {
        color: #ff8c00;
    }

    .detail-row.sanctioned[b-laf9wqbgtn] {
        color: #107c10;
    }


    .day-tournaments[b-laf9wqbgtn] {
        margin-bottom: 1.5rem;
    }

    .day-tournament-item[b-laf9wqbgtn] {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 0.75rem;
        border-radius: 4px;
        margin-bottom: 0.5rem;
        cursor: pointer;
        border-left: 4px solid;
        background-color: #f8f9fa;
    }

    .day-tournament-item:hover[b-laf9wqbgtn] {
        background-color: #e9ecef;
    }

    .day-tournament-item.usta-color[b-laf9wqbgtn] { border-left-color: #0078d4; }
    .day-tournament-item.utr-color[b-laf9wqbgtn] { border-left-color: #00bcf2; }
    .day-tournament-item.wtn-color[b-laf9wqbgtn] { border-left-color: #d2394d; }
    .day-tournament-item.sanctioned-color[b-laf9wqbgtn] { border-left-color: #107c10; }
    .day-tournament-item.prize-color[b-laf9wqbgtn] { border-left-color: #ff8c00; }

    .tournament-info h5[b-laf9wqbgtn] {
        margin: 0 0 0.25rem 0;
        font-size: 1rem;
    }

    .tournament-meta[b-laf9wqbgtn] {
        font-size: 0.875rem;
        color: #666;
    }

    .separator[b-laf9wqbgtn] {
        margin: 0 0.5rem;
    }

    .tournament-badges[b-laf9wqbgtn] {
        display: flex;
        gap: 0.25rem;
    }

    .badge[b-laf9wqbgtn] {
        font-size: 0.75rem;
        padding: 0.125rem 0.375rem;
        border-radius: 12px;
        font-weight: 500;
    }

    .badge.sanctioned[b-laf9wqbgtn] {
        background-color: #d4edda;
        color: #155724;
    }

    .badge.prize[b-laf9wqbgtn] {
        background-color: #fff3cd;
        color: #856404;
    }

    /* Responsive Design */
    @media (max-width: 768px) {
        .calendar-container[b-laf9wqbgtn] {
            padding: 0.5rem;
            height: calc(100vh - 1rem);
        }

        .calendar-header[b-laf9wqbgtn] {
            flex-direction: column;
            gap: 0.5rem;
            align-items: stretch;
        }

        .legend[b-laf9wqbgtn] {
            justify-content: center;
            gap: 0.5rem;
        }

        .legend-item[b-laf9wqbgtn] {
            font-size: 0.75rem;
        }

        .calendar-title[b-laf9wqbgtn] {
            font-size: 1.25rem;
            min-width: auto;
        }

        .calendar-day[b-laf9wqbgtn] {
            min-height: 60px;
            padding: 0.125rem;
        }

        .day-number[b-laf9wqbgtn] {
            font-size: 0.75rem;
        }

        .tournament-span[b-laf9wqbgtn] {
            height: 14px;
            font-size: 0.65rem;
        }

        .more-tournaments[b-laf9wqbgtn] {
            font-size: 0.6rem;
        }
    }

    @media (max-width: 480px) {
        .day-header[b-laf9wqbgtn] {
            font-size: 0.75rem;
            padding: 0.25rem;
        }

        .calendar-day[b-laf9wqbgtn] {
            min-height: 50px;
        }
    }
/* _content/Tourneys/Components/Pages/DataBrowser.razor.rz.scp.css */
/* Header section styling */
.page-header[b-24gv31m4qt] {
    padding-top: 1rem;
    border-bottom: 1px solid var(--neutral-stroke-divider-rest);
    padding-bottom: 1rem;
}

/* Body section styling */
.data-browser-body[b-24gv31m4qt] {
    padding: 0 1rem 2rem 1rem; /* Extra bottom padding to prevent footer overlap */
}

.controls-section[b-24gv31m4qt] {
    background: var(--neutral-layer-2);
    padding: 1rem;
    border-radius: 8px;
}

.results-summary[b-24gv31m4qt] {
    padding: 0.5rem 0;
}

/* Loading state styling */
.spinner-border[b-24gv31m4qt] {
    width: 2rem;
    height: 2rem;
}
/* _content/Tourneys/Components/Pages/DataQuality.razor.rz.scp.css */
.tab-content[b-9b7pq0c6q6] {
    padding: 1rem 0;
}

.tab-description[b-9b7pq0c6q6] {
    margin-bottom: 1.5rem;
    padding: 1rem;
    background-color: var(--bs-info-bg-subtle);
    border: 1px solid var(--bs-info-border-subtle);
    border-radius: var(--bs-border-radius);
    color: var(--bs-info-text-emphasis);
    font-size: 0.95rem;
}
/* _content/Tourneys/Components/Pages/FeatureDisabled.razor.rz.scp.css */
.feature-disabled-container[b-kshx1soui5] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 60vh;
    padding: 2rem;
}

.feature-disabled-card[b-kshx1soui5] {
    max-width: 600px;
    text-align: center;
    padding: 3rem;
}

.feature-disabled-card h1[b-kshx1soui5] {
    margin: 1.5rem 0 1rem;
    font-size: 1.75rem;
    font-weight: 600;
}

.message[b-kshx1soui5] {
    font-size: 1.1rem;
    color: var(--neutral-foreground-rest);
    margin-bottom: 1.5rem;
}

.info[b-kshx1soui5] {
    color: var(--neutral-foreground-hint);
    margin-bottom: 2rem;
    line-height: 1.6;
}

.actions[b-kshx1soui5] {
    margin: 2rem 0;
}

.status-info[b-kshx1soui5] {
    margin-top: 2rem;
    font-size: 0.875rem;
    color: var(--neutral-foreground-hint);
}
/* _content/Tourneys/Components/Pages/Home.razor.rz.scp.css */
/* Homepage Container v2 */
.homepage-container-v2[b-mpvxenl53h] {
    padding: 0;
    margin: 0;
    --mobile-section-gap: 1.5rem;  /* 24px between sections on mobile */
    --desktop-section-gap: 2.5rem; /* 40px between sections on desktop */
    --mobile-card-gap: 0.75rem;    /* 12px between cards on mobile */
    --desktop-card-gap: 1.5rem;    /* 24px between cards on desktop */
    /* Row gap variables now defined globally in app.css */
}

/* mb-row-gap utility class now defined globally in app.css */

/* Tournament Search CTA Variations */

/* VARIATION 1: Simple Gold Bar */
.tournament-search-cta-v1[b-mpvxenl53h] {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    padding: 1.25rem 0;
    margin-bottom: 2rem;
    position: relative;
    overflow: hidden;
}

.tournament-search-cta-v1[b-mpvxenl53h]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 20% 50%, rgba(255,255,255,0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 50%, rgba(255,255,255,0.1) 0%, transparent 50%);
}

.search-cta-content[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    z-index: 1;
}

.search-cta-text[b-mpvxenl53h] {
    color: var(--bs-dark);
}

.search-cta-title[b-mpvxenl53h] {
    font-size: 1.5rem;
    font-weight: 700;
    margin: 0 0 0.25rem 0;
    font-family: var(--bs-font-family-sport);
}

.search-cta-subtitle[b-mpvxenl53h] {
    font-size: 0.9375rem;
    margin: 0;
    opacity: 0.9;
}

.search-cta-button[b-mpvxenl53h] {
    flex-shrink: 0;
    padding: 0.625rem 1.75rem;
    font-weight: 600;
    border-radius: 4px;
}

/* VARIATION 2: Interactive Filters */
.tournament-search-cta-v2[b-mpvxenl53h] {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    padding: 1rem 0;
    margin-bottom: 2rem;
}

.search-cta-filters[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.filter-label[b-mpvxenl53h] {
    font-weight: 600;
    color: var(--bs-dark);
    font-size: 0.9375rem;
}

.filter-select[b-mpvxenl53h] {
    padding: 0.5rem 2rem 0.5rem 1rem;
    border: none;
    border-radius: 4px;
    background: white;
    font-size: 0.875rem;
    font-weight: 500;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.filter-search-btn[b-mpvxenl53h] {
    margin-left: auto;
    padding: 0.5rem 1.5rem;
    font-weight: 600;
    border-radius: 4px;
}

/* VARIATION 3: Natural Language */
.tournament-search-cta-v3[b-mpvxenl53h] {
    background: linear-gradient(135deg, #f3f4f6 0%, #e5e7eb 100%);
    border-bottom: 3px solid #fbbf24;
    padding: 1.25rem 0;
    margin-bottom: 2rem;
}

.natural-language-filters[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 1.125rem;
    color: var(--bs-dark);
}

.nl-text[b-mpvxenl53h] {
    font-weight: 500;
}

.nl-select[b-mpvxenl53h] {
    padding: 0.375rem 2rem 0.375rem 0.75rem;
    border: 2px solid #fbbf24;
    border-radius: 4px;
    background: white;
    font-size: 1.125rem;
    font-weight: 600;
    cursor: pointer;
    color: var(--bs-dark);
}

.nl-search-btn[b-mpvxenl53h] {
    margin-left: 1rem;
    padding: 0.5rem 1rem;
    border-radius: 50px;
}

/* VARIATION 4: Natural Language with Badges - REMOVED: Now uses clean architecture */

.search-cta-card[b-mpvxenl53h] {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    border-radius: 4px;
    padding: 1rem 1.5rem 1.25rem;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    margin: 0 auto;
    position: relative;
    overflow: hidden;
}

.search-cta-card[b-mpvxenl53h]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 20% 50%, rgba(255,255,255,0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 50%, rgba(255,255,255,0.1) 0%, transparent 50%);
}

.search-cta-header[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
    position: relative;
    z-index: 1;
}

.search-cta-header[b-mpvxenl53h]::before,
.search-cta-header[b-mpvxenl53h]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.2) 50%, transparent 100%);
}

.search-cta-header i[b-mpvxenl53h] {
    font-size: 0.875rem;
    color: var(--bs-dark);
    opacity: 0.9;
}

.search-cta-title[b-mpvxenl53h] {
    font-size: 0.875rem;
    font-weight: 700;
    margin: 0;
    color: var(--bs-dark);
    text-transform: uppercase;
    letter-spacing: 0.08em;
    white-space: nowrap;
}

.search-natural-language[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    flex-wrap: wrap;
    font-size: 1.0625rem;
    position: relative;
    z-index: 1;
}

.nl-static-text[b-mpvxenl53h] {
    color: var(--bs-dark);
    font-weight: 500;
}

.nl-badge[b-mpvxenl53h] {
    display: inline-flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    background: rgba(0, 0, 0, 0.85);
    color: #fbbf24;
    border-radius: 4px;
    font-weight: 600;
    font-size: 0.9375rem;
    cursor: pointer;
    transition: all 0.2s ease;
}

.nl-badge:hover[b-mpvxenl53h] {
    background: rgba(0, 0, 0, 0.95);
    transform: translateY(-1px);
}

.nl-badge[b-mpvxenl53h]::after {
    content: '\F282';
    font-family: 'bootstrap-icons';
    margin-left: 0.5rem;
    font-size: 0.625rem;
    opacity: 0.7;
}

.search-go-btn[b-mpvxenl53h] {
    border-radius: 4px;
    padding: 0.625rem 1.5rem;
    font-weight: 500;
    font-size: 0.875rem;
    border: none;
    transition: all 0.2s ease;
}

.search-go-btn:hover[b-mpvxenl53h] {
    background-color: var(--bs-gray-800);
    transform: none;
}

/* Hero Grid Section */
.hero-grid-section[b-mpvxenl53h] {
    padding-bottom: var(--mobile-section-gap);
    margin-bottom: 0;
    /* Top padding removed - now handled by mb-row-gap utility on NFB containers */
}

/* Ensure row doesn't have margin-top that causes overlap with Natural Filter Bar */
.hero-grid-section > .row[b-mpvxenl53h] {
    margin-top: 0 !important;
}

@media (min-width: 768px) {
    .hero-grid-section[b-mpvxenl53h] {
        padding-bottom: var(--desktop-section-gap);
        /* Top padding removed - now handled by mb-row-gap utility on NFB containers */
    }
}

/* Column separator using pseudo-element */
@media (min-width: 992px) {
    /* Remove margin-top from main columns so they align at top */
    .hero-grid-section > .row > [class*="col-"][b-mpvxenl53h] {
        margin-top: 0;
    }

    .hero-grid-section .col-lg-8[b-mpvxenl53h] {
        position: relative;
    }

    .hero-grid-section .col-lg-8[b-mpvxenl53h]::after {
        content: '';
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 1px;
        background-color: var(--bs-gray-300);
    }
}

/* Featured tournament styles moved to FeaturedTournaments.razor.css */

/* Upcoming tournament styles moved to UpcomingTournaments.razor.css */

.upcoming-link[b-mpvxenl53h] {
    font-size: 0.875rem;
    color: var(--bs-primary);
    text-decoration: none;
    font-weight: 500;
    display: flex;
    align-items: center;
    gap: 0.25rem;
    transition: all 0.2s ease;
}

.upcoming-link:hover[b-mpvxenl53h] {
    color: var(--bs-primary);
    text-decoration: none;
    transform: translateX(2px);
}


.upcoming-slider[b-mpvxenl53h] {
    display: flex;
    gap: 0.75rem;
    overflow-x: auto;
    padding: 0.5rem 0;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--bs-primary-rgb), 0.2) transparent;
}

.upcoming-slider[b-mpvxenl53h]::-webkit-scrollbar {
    height: 4px;
}

.upcoming-slider[b-mpvxenl53h]::-webkit-scrollbar-track {
    background: transparent;
}

.upcoming-slider[b-mpvxenl53h]::-webkit-scrollbar-thumb {
    background: rgba(var(--bs-primary-rgb), 0.2);
    border-radius: 2px;
}

.upcoming-slider-item[b-mpvxenl53h] {
    flex: 0 0 280px;
    position: relative;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    background: white;
}

.upcoming-slider-item:hover[b-mpvxenl53h] {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
}

.upcoming-slider-gradient[b-mpvxenl53h] {
    height: 70px;
    position: relative;
    z-index: 1;
}

.upcoming-slider-logo[b-mpvxenl53h] {
    position: absolute;
    top: 35px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 80px;
    background: white;
    border-radius: 12px;
    padding: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    z-index: 3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.upcoming-slider-logo img[b-mpvxenl53h] {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.upcoming-slider-content[b-mpvxenl53h] {
    position: relative;
    padding: 1rem 1.25rem;
    padding-top: 65px; /* More space when logo is present */
    background: white;
    min-height: 120px;
    z-index: 2;
}

.upcoming-slider-name[b-mpvxenl53h] {
    font-size: 0.9375rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.upcoming-slider-meta[b-mpvxenl53h] {
    display: flex;
    flex-direction: column;
    gap: 0.125rem;
    font-size: 0.75rem;
    color: var(--bs-gray-600);
}

.upcoming-slider-date[b-mpvxenl53h] {
    font-weight: 500;
}

.upcoming-slider-location[b-mpvxenl53h] {
    opacity: 0.8;
}

/* Hero Side Content */
.hero-side-content[b-mpvxenl53h] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    height: auto;
}

.hero-side-card[b-mpvxenl53h] {
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.3s ease;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    margin-bottom: 1rem;
}

.hero-side-card.featured[b-mpvxenl53h] {
    height: 200px;
}

.hero-side-card:hover[b-mpvxenl53h] {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12);
}

.hero-side-image[b-mpvxenl53h] {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    position: relative;
    display: flex;
    align-items: flex-end;
}

.hero-side-overlay[b-mpvxenl53h] {
    background: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.7) 100%);
    width: 100%;
    padding: 1.5rem;
    color: white;
}

.hero-side-title[b-mpvxenl53h] {
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.5rem;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.5);
    line-height: 1.3;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.hero-side-meta[b-mpvxenl53h] {
    font-size: 0.875rem;
    opacity: 0.9;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.hero-side-badge[b-mpvxenl53h] {
    display: inline-block;
    background: rgba(255, 215, 0, 0.9);
    color: #000;
    padding: 0.25rem 0.5rem;
    border-radius: 1rem;
    font-size: 0.625rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    margin-bottom: 0.5rem;
    align-self: flex-start;
}

/* Right Column Updates */
.side-feed-header[b-mpvxenl53h] {
    padding: 1rem;
    background: white;
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    margin-bottom: 1rem;
}

.side-feed-title[b-mpvxenl53h] {
    font-size: 1.125rem;
    font-weight: 600;
    margin: 0;
    color: var(--bs-dark);
    display: flex;
    align-items: center;
}

.side-updates[b-mpvxenl53h] {
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.side-update-card[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 1rem;
    background: white;
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    cursor: pointer;
    transition: all 0.2s ease;
}

.side-update-card:hover[b-mpvxenl53h] {
    transform: translateY(-2px);
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.12);
}




.side-update-icon[b-mpvxenl53h] {
    width: 40px;
    height: 40px;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
}

.side-update-card.urgent .side-update-icon[b-mpvxenl53h] {
    background: rgba(245, 158, 11, 0.1);
    color: #f59e0b;
}

.side-update-card.live .side-update-icon[b-mpvxenl53h] {
    background: rgba(34, 197, 94, 0.1);
    color: #22c55e;
}

.side-update-card.upcoming .side-update-icon[b-mpvxenl53h] {
    background: rgba(var(--bs-primary-rgb), 0.1);
    color: var(--bs-primary);
}

.side-update-content[b-mpvxenl53h] {
    flex: 1;
    min-width: 0;
}

.side-update-title[b-mpvxenl53h] {
    font-weight: 600;
    font-size: 0.875rem;
    color: var(--bs-dark);
    margin-bottom: 0.25rem;
}

.side-update-subtitle[b-mpvxenl53h] {
    font-weight: 500;
    font-size: 0.8125rem;
    color: var(--bs-gray-700);
    margin-bottom: 0.25rem;
    display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.side-update-meta[b-mpvxenl53h] {
    font-size: 0.75rem;
    color: var(--bs-gray-500);
}

/* Activity feed styles moved to TournamentUpdates.razor.css */

/* Activity item styles moved to TournamentUpdates.razor.css */

/* Stay in the Game Section - Using Quick Actions Bar styling */
.stay-in-game-section[b-mpvxenl53h] {
    padding: 0 0 1rem 0;
    margin-bottom: 0;
}

@media (min-width: 768px) {
    .stay-in-game-section[b-mpvxenl53h] {
        padding: 0 0 1.5rem 0;
    }
}

.stay-in-game-card[b-mpvxenl53h] {
    background: linear-gradient(135deg, #1a1a2e 0%, #16213e 50%, #0f3460 100%);
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    position: relative;
    overflow: hidden;
    /* Padding now handled by Bootstrap utilities: px-4 px-md-5 py-4 py-md-5 */
}

/* Tennis court lines background */
.stay-in-game-card[b-mpvxenl53h]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        linear-gradient(90deg, rgba(255,255,255,0.05) 1px, transparent 1px),
        linear-gradient(180deg, rgba(255,255,255,0.05) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255,255,255,0.1) 2px, transparent 2px),
        linear-gradient(180deg, rgba(255,255,255,0.1) 2px, transparent 2px);
    background-size:
        100px 100px,
        100px 100px,
        400px 400px,
        400px 400px;
    background-position:
        0 0,
        0 0,
        50% 50%,
        50% 50%;
}

.stay-in-game-content[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    color: white;
    position: relative;
    z-index: 1;
    gap: 2rem; /* Add spacing between text and button on desktop */
}

.stay-in-game-title[b-mpvxenl53h] {
    font-size: 2rem;
    font-weight: 700;
    margin-bottom: 0.75rem;
    color: white;
}

.stay-in-game-description[b-mpvxenl53h] {
    font-size: 1.125rem;
    opacity: 0.9;
    margin-bottom: 0;
    color: white;
}

.stay-in-game-button[b-mpvxenl53h] {
    flex-shrink: 0;
}

/* Tournament Categories */
.tournament-categories[b-mpvxenl53h] {
    padding: 0 0 3rem;
}

.category-section[b-mpvxenl53h] {
    background: white;
    border-radius: 4px;
    padding: 2rem;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    height: 100%;
}

.category-section.urgent[b-mpvxenl53h] {
    border-left: 4px solid #f59e0b;
}

.category-section.live[b-mpvxenl53h] {
    border-left: 4px solid #22c55e;
}

.category-section.upcoming[b-mpvxenl53h] {
    border-left: 4px solid var(--bs-primary);
}

.category-header[b-mpvxenl53h] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
}

.category-header.horizontal[b-mpvxenl53h] {
    align-items: center;
}

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

.urgent .category-icon[b-mpvxenl53h] {
    background: rgba(245, 158, 11, 0.1);
    color: #f59e0b;
}

.live .category-icon[b-mpvxenl53h] {
    background: rgba(34, 197, 94, 0.1);
    color: #22c55e;
}

.upcoming .category-icon[b-mpvxenl53h] {
    background: rgba(var(--bs-primary-rgb), 0.1);
    color: var(--bs-primary);
}

.category-title[b-mpvxenl53h] {
    font-size: 1.375rem;
    font-weight: 700;
    margin-bottom: 0.25rem;
    color: var(--bs-dark);
}

.category-subtitle[b-mpvxenl53h] {
    color: var(--bs-gray-600);
    margin-bottom: 0;
    font-size: 0.95rem;
}

.category-count[b-mpvxenl53h] {
    background: var(--bs-gray-200);
    color: var(--bs-gray-700);
    padding: 0.375rem 0.75rem;
    border-radius: 1rem;
    font-size: 0.875rem;
    font-weight: 600;
    margin-left: auto;
}

.category-count.live-count[b-mpvxenl53h] {
    background: rgba(34, 197, 94, 0.1);
    color: #22c55e;
}

.category-list[b-mpvxenl53h] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.category-item[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1rem;
    border-radius: 4px;
    cursor: pointer;
    transition: all 0.2s ease;
    background: rgba(0, 0, 0, 0.01);
}

.category-item:hover[b-mpvxenl53h] {
    background: rgba(0, 0, 0, 0.03);
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}

.category-item-content[b-mpvxenl53h] {
    flex: 1;
    min-width: 0;
}

.category-item-title[b-mpvxenl53h] {
    font-weight: 600;
    margin-bottom: 0.5rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.3;
}

.category-item-details[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
}

.category-item-logo[b-mpvxenl53h] {
    width: 50px;
    height: 50px;
    object-fit: contain;
    border-radius: 0.25rem;
    background: rgba(0, 0, 0, 0.02);
    padding: 0.25rem;
    flex-shrink: 0;
}

.category-empty[b-mpvxenl53h] {
    text-align: center;
    padding: 2rem 1rem;
}

.category-empty i[b-mpvxenl53h] {
    font-size: 2rem;
    margin-bottom: 0.5rem;
}

.live-indicator[b-mpvxenl53h] {
    color: #22c55e;
    font-size: 0.5rem;
    margin-left: 0.5rem;
    animation: pulse-b-mpvxenl53h 2s infinite;
}

@keyframes pulse-b-mpvxenl53h {
    0%, 100% { opacity: 1; }
    50% { opacity: 0.5; }
}

/* Tournament Scroll */
.tournament-scroll-container[b-mpvxenl53h] {
    margin: 1.5rem 0;
}

.tournament-scroll[b-mpvxenl53h] {
    display: flex;
    gap: 1rem;
    overflow-x: auto;
    padding: 0.5rem 0 1rem;
    scrollbar-width: thin;
    scrollbar-color: rgba(var(--bs-primary-rgb), 0.3) transparent;
}

.tournament-scroll[b-mpvxenl53h]::-webkit-scrollbar {
    height: 6px;
}

.tournament-scroll[b-mpvxenl53h]::-webkit-scrollbar-track {
    background: rgba(0, 0, 0, 0.05);
    border-radius: 3px;
}

.tournament-scroll[b-mpvxenl53h]::-webkit-scrollbar-thumb {
    background: rgba(var(--bs-primary-rgb), 0.3);
    border-radius: 3px;
}

.tournament-scroll[b-mpvxenl53h]::-webkit-scrollbar-thumb:hover {
    background: rgba(var(--bs-primary-rgb), 0.5);
}

.tournament-scroll-card[b-mpvxenl53h] {
    flex: 0 0 280px;
    background: white;
    border-radius: 4px;
    overflow: hidden;
    cursor: pointer;
    transition: all 0.2s ease;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
}

.tournament-scroll-card:hover[b-mpvxenl53h] {
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.tournament-scroll-image[b-mpvxenl53h] {
    height: 140px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    background-color: rgba(0, 0, 0, 0.02);
}

.tournament-scroll-content[b-mpvxenl53h] {
    padding: 1rem;
}

.tournament-scroll-title[b-mpvxenl53h] {
    font-weight: 600;
    margin-bottom: 0.75rem;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.3;
}

.tournament-scroll-meta[b-mpvxenl53h] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 0.5rem;
}

/* Court Captures styles moved to CourtCaptures.razor.css */

/* Newsletter CTA Section */
.newsletter-cta-section[b-mpvxenl53h] {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    padding: 3rem 0;
}

.newsletter-cta-card[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 4px;
    padding: 2rem;
    backdrop-filter: blur(10px);
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
}

.newsletter-cta-content[b-mpvxenl53h] {
    display: flex;
    align-items: center;
    gap: 2rem;
}

.newsletter-cta-icon[b-mpvxenl53h] {
    width: 64px;
    height: 64px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 1rem;
    display: flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.5rem;
    flex-shrink: 0;
}

.newsletter-cta-text[b-mpvxenl53h] {
    flex: 1;
}

.newsletter-cta-title[b-mpvxenl53h] {
    font-size: 1.5rem;
    font-weight: 700;
    margin-bottom: 0.5rem;
    color: var(--bs-dark);
}

.newsletter-cta-description[b-mpvxenl53h] {
    color: var(--bs-gray-600);
    margin-bottom: 0;
}

.newsletter-cta-button[b-mpvxenl53h] {
    flex-shrink: 0;
    padding: 0.875rem 2rem;
    font-weight: 600;
}

/* Dark Mode Styles */
[data-theme="dark"] .category-section[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .side-feed-header[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .side-feed-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .side-update-card[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .side-update-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .side-update-subtitle[b-mpvxenl53h] {
    color: var(--bs-gray-300);
}

[data-theme="dark"] .side-update-meta[b-mpvxenl53h] {
    color: var(--bs-gray-500);
}


[data-theme="dark"] .upcoming-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .upcoming-pager[b-mpvxenl53h] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .pager-text[b-mpvxenl53h] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .pager-arrow[b-mpvxenl53h] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .pager-arrow:hover:not(:disabled)[b-mpvxenl53h] {
    color: var(--bs-primary);
}

[data-theme="dark"] .hero-featured-card[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .hero-featured-content[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .hero-featured-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .hero-featured-meta[b-mpvxenl53h] {
    color: var(--bs-gray-400);
}

[data-theme="dark"] .upcoming-slider-content[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .upcoming-slider-logo[b-mpvxenl53h] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .upcoming-card-logo[b-mpvxenl53h] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .upcoming-card-logo.no-image[b-mpvxenl53h] {
    background: #343a40;
}

[data-theme="dark"] .default-tournament-icon[b-mpvxenl53h] {
    color: #6c757d;
}

[data-theme="dark"] .upcoming-slider-name[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .upcoming-slider-meta[b-mpvxenl53h] {
    color: var(--bs-gray-400);
}

[data-theme="dark"] .activity-feed[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .activity-feed-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .activity-item:hover[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.03);
}

[data-theme="dark"] .activity-item-text[b-mpvxenl53h] {
    color: var(--bs-gray-100);
}

[data-theme="dark"] .tournament-name[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .activity-item-meta[b-mpvxenl53h] {
    color: var(--bs-gray-500);
}

[data-theme="dark"] .category-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .category-subtitle[b-mpvxenl53h] {
    color: var(--bs-gray-400);
}

[data-theme="dark"] .category-count[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.1);
    color: var(--bs-gray-300);
}

[data-theme="dark"] .category-item[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.02);
}

[data-theme="dark"] .category-item:hover[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .category-item-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .category-item-logo[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .tournament-scroll-card[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .tournament-scroll-card:hover[b-mpvxenl53h] {
}

[data-theme="dark"] .tournament-scroll-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .tournament-scroll-image[b-mpvxenl53h] {
    background-color: rgba(255, 255, 255, 0.05);
}

[data-theme="dark"] .newsletter-cta-card[b-mpvxenl53h] {
    background: rgba(var(--bs-gray-900-rgb), 0.95);
}

[data-theme="dark"] .newsletter-cta-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .newsletter-cta-description[b-mpvxenl53h] {
    color: var(--bs-gray-400);
}

/* Dark mode for CTA variations */
[data-theme="dark"] .tournament-search-cta-v1[b-mpvxenl53h] {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
}

[data-theme="dark"] .search-cta-text[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .tournament-search-cta-v2[b-mpvxenl53h] {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
}

[data-theme="dark"] .filter-label[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .tournament-search-cta-v3[b-mpvxenl53h] {
    background: var(--bs-gray-900);
    border-bottom-color: #d97706;
}

[data-theme="dark"] .natural-language-filters[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .nl-select[b-mpvxenl53h] {
    background: var(--bs-gray-800);
    border-color: #d97706;
    color: white;
}

[data-theme="dark"] .search-cta-card[b-mpvxenl53h] {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
}

[data-theme="dark"] .search-cta-header i[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .search-cta-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .search-cta-header[b-mpvxenl53h]::before,
[data-theme="dark"] .search-cta-header[b-mpvxenl53h]::after {
    background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.2) 50%, transparent 100%);
}

[data-theme="dark"] .nl-static-text[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .nl-badge[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.9);
    color: #d97706;
}

[data-theme="dark"] .nl-badge:hover[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.95);
}


/* Court Captures Card - Copied from Home2 mockup */
.court-captures-card[b-mpvxenl53h] {
    background: white;
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

.photo-container[b-mpvxenl53h] {
    position: relative;
    overflow: hidden;
    background: #f8f9fa;
    height: 220px;
}

.featured-photo[b-mpvxenl53h] {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 1s ease-in-out;
}

.featured-photo.active[b-mpvxenl53h] {
    opacity: 1;
}

.photo-container:hover .featured-photo[b-mpvxenl53h] {
    transform: scale(1.05);
}

/* Always visible tournament badge - fixed to bottom left with square corners */
.photo-info-overlay[b-mpvxenl53h] {
    position: absolute;
    bottom: 1rem;
    left: 1rem;
    z-index: 2;
}

.tournament-badge[b-mpvxenl53h] {
    background: rgba(0, 0, 0, 0.6);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 4px;
    font-size: 0.875rem;
    font-weight: 600;
    backdrop-filter: blur(10px);
}

/* Hover overlay for photo credit */
.photo-hover-overlay[b-mpvxenl53h] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to top, rgba(0,0,0,0.9) 0%, transparent 100%);
    padding: 2rem 1rem 1rem;
    color: white;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.photo-container:hover .photo-hover-overlay[b-mpvxenl53h] {
    opacity: 1;
}

.photo-credit[b-mpvxenl53h] {
    font-size: 0.8125rem;
    font-weight: 500;
    margin-bottom: 0.25rem;
}

.photo-location[b-mpvxenl53h] {
    font-size: 0.75rem;
    opacity: 0.9;
}

/* Photo indicators (dots) - fixed positioning and active state */
.photo-indicators[b-mpvxenl53h] {
    position: absolute;
    bottom: 0.5rem;
    right: 0.5rem;
    display: flex;
    gap: 0.5rem;
    z-index: 3;
}

.indicator[b-mpvxenl53h] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    border: none;
    padding: 0;
    cursor: pointer;
    transition: all 0.3s ease;
}

.indicator:hover[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 0.8);
}

.indicator.active[b-mpvxenl53h] {
    background: rgba(255, 255, 255, 1);
    width: 24px;
    border-radius: 4px;
}

/* Card content */
.captures-content[b-mpvxenl53h] {
    padding: 1.25rem 1.5rem;
    text-align: center;
}

.captures-title[b-mpvxenl53h] {
    font-size: 0.875rem;
    font-weight: 700;
    margin: 0 0 0.375rem 0;
    color: var(--bs-dark);
    font-family: var(--bs-font-family-sport);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

.captures-subtitle[b-mpvxenl53h] {
    font-size: 0.8125rem;
    color: var(--bs-gray-600);
    margin: 0;
}

/* Submit button - black with all caps using btn-dark */
.submit-photo-btn[b-mpvxenl53h] {
    border-radius: 4px;
    padding: 0.625rem 1.5rem;
    font-weight: 500;
    font-size: 0.875rem;
    border: none;
    transition: all 0.2s ease;
    text-transform: uppercase;
}

.submit-photo-btn:hover[b-mpvxenl53h] {
    background-color: var(--bs-gray-800);
    transform: none;
}

/* Dark mode for Court Captures */
[data-theme="dark"] .court-captures-card[b-mpvxenl53h] {
    background: var(--bs-gray-900);
}

[data-theme="dark"] .photo-container[b-mpvxenl53h] {
    background: var(--bs-gray-800);
}

[data-theme="dark"] .captures-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .captures-subtitle[b-mpvxenl53h] {
    color: var(--bs-gray-400);
}

/* Photo Submission Modal Styles */
.photo-submission-content[b-mpvxenl53h] {
    padding: 1.5rem;
}

.photo-submission-hero[b-mpvxenl53h] {
    text-align: center;
    margin-bottom: 2rem;
}

.submission-icon[b-mpvxenl53h] {
    width: 80px;
    height: 80px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 1rem;
    color: white;
    font-size: 2rem;
    box-shadow: 0 8px 25px rgba(245, 158, 11, 0.3);
}

.submission-title[b-mpvxenl53h] {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--bs-dark);
    margin-bottom: 0.5rem;
    font-family: var(--bs-font-family-sport);
}

.submission-subtitle[b-mpvxenl53h] {
    font-size: 1rem;
    color: var(--bs-gray-600);
    margin-bottom: 0;
}

.submission-body[b-mpvxenl53h] {
    max-width: 400px;
    margin: 0 auto;
}

.submission-section[b-mpvxenl53h] {
    margin-bottom: 2rem;
}

.submission-point[b-mpvxenl53h] {
    display: flex;
    align-items: flex-start;
    margin-bottom: 1rem;
    padding: 0.75rem;
    background: var(--bs-gray-50);
    border-radius: 8px;
    transition: all 0.2s ease;
}

.submission-point:hover[b-mpvxenl53h] {
    background: var(--bs-gray-100);
    transform: translateY(-1px);
}

.submission-point span[b-mpvxenl53h] {
    flex: 1;
    font-size: 0.9375rem;
    line-height: 1.4;
    color: var(--bs-dark);
}

.submission-cta[b-mpvxenl53h] {
    text-align: center;
}

.cta-text[b-mpvxenl53h] {
    font-size: 1rem;
    margin-bottom: 1.5rem;
    color: var(--bs-dark);
    line-height: 1.5;
}

.submission-email-btn[b-mpvxenl53h] {
    font-weight: 600;
    padding: 0.875rem 2rem;
    border-radius: 8px;
    text-transform: none;
    font-size: 1rem;
    transition: all 0.3s ease;
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    border: none;
    box-shadow: 0 4px 15px rgba(14, 165, 233, 0.3);
}

.submission-email-btn:hover[b-mpvxenl53h] {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(14, 165, 233, 0.4);
    background: linear-gradient(135deg, #0284c7 0%, #0369a1 100%);
}

.email-hint[b-mpvxenl53h] {
    font-size: 0.8125rem;
    color: var(--bs-gray-500);
    margin-top: 1rem;
    margin-bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.25rem;
}

/* Dark mode support for photo submission modal */
[data-theme="dark"] .submission-title[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .submission-subtitle[b-mpvxenl53h] {
    color: var(--bs-gray-300);
}

[data-theme="dark"] .submission-point[b-mpvxenl53h] {
    background: var(--bs-gray-800);
    color: white;
}

[data-theme="dark"] .submission-point:hover[b-mpvxenl53h] {
    background: var(--bs-gray-700);
}

[data-theme="dark"] .submission-point span[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .cta-text[b-mpvxenl53h] {
    color: white;
}

[data-theme="dark"] .email-hint[b-mpvxenl53h] {
    color: var(--bs-gray-400);
}

/* Mobile adjustments for photo submission modal */
@media (max-width: 767px) {
    .photo-submission-content[b-mpvxenl53h] {
        padding: 1rem;
    }

    .submission-icon[b-mpvxenl53h] {
        width: 60px;
        height: 60px;
        font-size: 1.5rem;
    }

    .submission-title[b-mpvxenl53h] {
        font-size: 1.25rem;
    }

    .submission-subtitle[b-mpvxenl53h] {
        font-size: 0.9375rem;
    }

    .submission-point[b-mpvxenl53h] {
        padding: 0.625rem;
    }

    .submission-point span[b-mpvxenl53h] {
        font-size: 0.875rem;
    }

    .submission-email-btn[b-mpvxenl53h] {
        padding: 0.75rem 1.5rem;
        font-size: 0.9375rem;
    }
}

/* Dark mode for Stay in the Game */
[data-theme="dark"] .stay-in-game-card[b-mpvxenl53h] {
    background: linear-gradient(135deg, #111827 0%, #1f2937 50%, #374151 100%);
}

/* Responsive styles for CTA variations */
@media (max-width: 768px) {
    /* Variation 1 */
    .search-cta-content[b-mpvxenl53h] {
        flex-direction: column;
        text-align: center;
        gap: 1rem;
    }

    .search-cta-title[b-mpvxenl53h] {
        font-size: 1.25rem;
    }

    /* Variation 2 */
    .search-cta-filters[b-mpvxenl53h] {
        flex-wrap: wrap;
        justify-content: center;
    }

    .filter-label[b-mpvxenl53h] {
        width: 100%;
        text-align: center;
        margin-bottom: 0.5rem;
    }

    .filter-select[b-mpvxenl53h] {
        flex: 1;
        min-width: 100px;
    }

    .filter-search-btn[b-mpvxenl53h] {
        width: 100%;
        margin-left: 0;
        margin-top: 0.5rem;
    }

    /* Variation 3 */
    .natural-language-filters[b-mpvxenl53h] {
        flex-wrap: wrap;
        justify-content: center;
        font-size: 1rem;
    }

    .nl-select[b-mpvxenl53h] {
        font-size: 1rem;
    }

    .nl-search-btn[b-mpvxenl53h] {
        width: 100%;
        margin-top: 0.75rem;
        margin-left: 0;
    }

    /* Variation 4 */
    .search-cta-header[b-mpvxenl53h]::before,
    .search-cta-header[b-mpvxenl53h]::after {
        display: none;
    }

    .search-natural-language[b-mpvxenl53h] {
        justify-content: center;
        text-align: center;
    }

    .nl-badge[b-mpvxenl53h] {
        margin: 0.25rem 0;
    }

    .search-go-btn[b-mpvxenl53h] {
        margin-top: 0.5rem;
    }

    /* Stay in the Game responsive */
}

/* Mobile responsive for upcoming cards */
@media (max-width: 767px) {
    /* NaturalFilterBar is now outside homepage-container-v2 so no breakout needed */

    .search-cta-card[b-mpvxenl53h] {
        border-radius: 0;
        box-shadow: none;
        border-top: 1px solid rgba(0,0,0,0.1);
        border-bottom: 1px solid rgba(0,0,0,0.1);
        padding-left: 1rem;
        padding-right: 1rem;
        margin: 0;
    }
    .upcoming-card[b-mpvxenl53h] {
        min-height: 200px;
    }

    .upcoming-card-logo[b-mpvxenl53h] {
        width: 70px;
        height: 70px;
        top: 15px;
    }

    .upcoming-card-logo.no-image[b-mpvxenl53h] {
        width: 60px;
        height: 60px;
        top: 20px;
    }

    .upcoming-card-content[b-mpvxenl53h] {
        padding: 0.5rem 0.75rem;
        padding-top: 50px;
    }

    .upcoming-card-name[b-mpvxenl53h] {
        font-size: 1rem;
    }

    .upcoming-card-meta[b-mpvxenl53h] {
        font-size: 0.75rem;
    }

    .default-tournament-icon[b-mpvxenl53h] {
        font-size: 1.5rem;
    }

    /* Featured tournament adjustments for mobile */
    .hero-featured-card[b-mpvxenl53h] {
        max-width: 100%;
    }

    .hero-featured-image[b-mpvxenl53h] {
        height: 200px;
    }

    /* Reduce padding on key sections for mobile */
    .search-cta-card[b-mpvxenl53h] {
        padding: 0.75rem 1rem 1rem;
    }

    .activity-feed-header[b-mpvxenl53h] {
        /* Mobile padding should use responsive Bootstrap utilities in template */
    }

    .activity-items[b-mpvxenl53h] {
        /* Mobile horizontal padding handled by responsive Bootstrap utilities in template */
    }

    .stay-in-game-card[b-mpvxenl53h] {
        /* Mobile padding now handled by responsive Bootstrap utilities */
    }

    .captures-content[b-mpvxenl53h] {
        padding: 1rem;
    }

    .hero-featured-content[b-mpvxenl53h] {
        padding: 0.75rem 1rem;
    }

    .upcoming-header[b-mpvxenl53h] {
        margin-bottom: 0.5rem;
        gap: 0.5rem;
    }

    .upcoming-title[b-mpvxenl53h] {
        font-size: 1.125rem;
        letter-spacing: -0.01em;
    }

    /* Remove the upcoming-section override - let the base rule handle it */

    .hero-featured-card[b-mpvxenl53h] {
        margin-bottom: 0;
    }

    /* Match Tournament Updates title to Upcoming titles on mobile */
    .activity-feed-title[b-mpvxenl53h] {
        font-size: 1.125rem;
        letter-spacing: -0.01em;
    }

    .activity-feed[b-mpvxenl53h] {
        max-height: 400px;
    }


    /* Reduce card internal spacing */
    .upcoming-card[b-mpvxenl53h] {
        min-height: 180px;
    }

    .upcoming-card-gradient[b-mpvxenl53h] {
        height: 60px;
    }

    .upcoming-card-content[b-mpvxenl53h] {
        padding-top: 45px;
    }
}

/* Responsive Design */
@media (max-width: 992px) {
    .hero-main-title[b-mpvxenl53h] {
        font-size: 1.75rem;
    }

    .hero-main-meta[b-mpvxenl53h] {
        flex-direction: column;
        gap: 0.5rem;
    }

    .stay-in-game-content[b-mpvxenl53h] {
        flex-direction: column;
        text-align: center;
        gap: 2rem;
    }
}

@media (max-width: 768px) {

    .hero-main-card[b-mpvxenl53h],
    .hero-side-content[b-mpvxenl53h] {
        height: 300px;
    }

    .hero-side-content[b-mpvxenl53h] {
        margin-top: 1rem;
        flex-direction: row;
        gap: 0.75rem;
    }

    .hero-main-overlay[b-mpvxenl53h],
    .hero-side-overlay[b-mpvxenl53h] {
        padding: 1.5rem;
    }

    .hero-main-title[b-mpvxenl53h] {
        font-size: 1.5rem;
    }

    .hero-side-title[b-mpvxenl53h] {
        font-size: 1rem;
    }

    .stay-in-game-section[b-mpvxenl53h] {
        padding: 0 0 1rem 0;
    }

    .stay-in-game-title[b-mpvxenl53h] {
        font-size: 1.5rem;
    }

    .stay-in-game-button[b-mpvxenl53h] {
        width: 100%;
    }

    .category-section[b-mpvxenl53h] {
        padding: 1.5rem;
    }

    .category-header[b-mpvxenl53h] {
        flex-wrap: wrap;
    }

    .category-count[b-mpvxenl53h] {
        order: -1;
        margin-left: 0;
        margin-bottom: 1rem;
    }

    .upcoming-header[b-mpvxenl53h] {
        flex-wrap: wrap;
        gap: 0.75rem;
    }

    .upcoming-controls[b-mpvxenl53h] {
        gap: 1rem;
        font-size: 0.8125rem;
    }

    .upcoming-pager[b-mpvxenl53h] {
        font-size: 0.8125rem;
    }

    .tournament-scroll-card[b-mpvxenl53h] {
        flex: 0 0 250px;
    }

    .newsletter-cta-content[b-mpvxenl53h] {
        flex-direction: column;
        text-align: center;
        gap: 1.5rem;
    }
}

@media (max-width: 576px) {
    .hero-side-content[b-mpvxenl53h] {
        flex-direction: column;
        height: auto;
    }

    .hero-side-card[b-mpvxenl53h] {
        height: 200px;
    }

    .tournament-scroll-card[b-mpvxenl53h] {
        flex: 0 0 220px;
    }

    .tournament-scroll-image[b-mpvxenl53h] {
        height: 120px;
    }
}
/* _content/Tourneys/Components/Pages/Sandbox/Components/Forms.razor.rz.scp.css */
/* Radio group keyboard navigation focus indicator */
.radio-focused .form-check-input[b-dua31o9wz3] {
    box-shadow: 0 0 0 0.25rem rgba(255, 215, 0, 0.5);
    outline: 2px solid var(--color-primary);
    outline-offset: 2px;
}

/* Progress ring inline display */
.spinner-border-sm[b-dua31o9wz3] {
    vertical-align: text-bottom;
    margin-right: 0.5rem;
}
/* _content/Tourneys/Components/Pages/Sandbox/Experiments/FilterButtonIntegration.razor.rz.scp.css */
/* Base filter bar styling (matching the actual NFB) */
.filter-mockup-wrapper[b-t1de943ekv] {
    max-width: 800px;
    margin: 0 auto 3rem auto;
}

.filter-bar-card[b-t1de943ekv] {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    padding: 1.5rem 2rem;
    text-align: center;
    width: 100%;
    margin: 0;
    position: relative;
    overflow: hidden;
    transition: box-shadow 0.3s ease;
}

.filter-bar-card[b-t1de943ekv]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 20% 50%, rgba(255,255,255,0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 50%, rgba(255,255,255,0.1) 0%, transparent 50%);
}

.filter-bar-header[b-t1de943ekv],
.filter-natural-language[b-t1de943ekv] {
    position: relative;
    z-index: 1;
}

.filter-bar-header[b-t1de943ekv] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.filter-bar-header[b-t1de943ekv]::before,
.filter-bar-header[b-t1de943ekv]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.2) 50%, transparent 100%);
}

.filter-bar-header i[b-t1de943ekv] {
    font-size: 0.875rem;
    color: #1f2937;
    opacity: 0.9;
}

.filter-bar-header h3[b-t1de943ekv] {
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    color: #1f2937;
    text-transform: uppercase;
    text-shadow: 0 1px 2px rgba(0,0,0,0.1);
    font-family: var(--bs-font-family-sport);
    letter-spacing: 0.75px;
}

.filter-natural-language[b-t1de943ekv] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    font-size: 1.125rem;
    line-height: 1.5;
}

.nl-static[b-t1de943ekv] {
    color: #1f2937;
    font-weight: 500;
    white-space: nowrap;
}

.filter-badge[b-t1de943ekv] {
    background: rgba(255, 255, 255, 0.9);
    color: #1f2937;
    padding: 0.375rem 0.75rem;
    border-radius: 6px;
    font-weight: 600;
    font-size: 0.9375rem;
    border: 1px solid rgba(255, 255, 255, 0.3);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    white-space: nowrap;
    transition: all 0.2s ease;
}

.filter-badge.interactive[b-t1de943ekv] {
    cursor: pointer;
    border: none;
    background: rgba(255, 255, 255, 0.9);
}

.filter-badge.interactive:hover[b-t1de943ekv] {
    background: rgba(255, 255, 255, 1);
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
}

/* Common button styling */
.btn-filter-action[b-t1de943ekv],
.btn-filter-action-external[b-t1de943ekv] {
    background: rgba(31, 41, 55, 0.8);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 0.5rem 1rem;
    border-radius: 6px;
    font-weight: 500;
    font-size: 0.875rem;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    transition: all 0.2s ease;
    cursor: pointer;
}

.btn-filter-action:hover[b-t1de943ekv],
.btn-filter-action-external:hover[b-t1de943ekv] {
    background: rgba(31, 41, 55, 0.9);
    border-color: rgba(255, 255, 255, 0.3);
    transform: translateY(-1px);
}

.filter-actions[b-t1de943ekv] {
    display: flex;
    gap: 0.75rem;
    justify-content: center;
    align-items: center;
}

/* ==================================================
   OPTION 1: Integrated Footer Section
   ================================================== */
.option-1 .filter-footer[b-t1de943ekv] {
    position: relative;
    z-index: 1;
    margin-top: 0.75rem;
    padding-top: 0.5rem;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.15) 0%, rgba(255, 255, 255, 0.05) 100%);
    margin-left: -2rem;
    margin-right: -2rem;
    margin-bottom: -1.5rem;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-bottom: 0.75rem;
}

.option-1 .btn-filter-action[b-t1de943ekv] {
    background: rgba(31, 41, 55, 0.8);
    backdrop-filter: blur(4px);
}

/* ==================================================
   OPTION 2: Connected Extension
   ================================================== */
.option-2[b-t1de943ekv] {
    border-bottom-left-radius: 0;
    border-bottom-right-radius: 0;
    border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.filter-extension[b-t1de943ekv] {
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.8) 0%, rgba(245, 158, 11, 0.8) 100%);
    border: 1px solid rgba(0, 0, 0, 0.1);
    border-top: none;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    padding: 1rem 2rem;
    text-align: center;
    box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(4px);
}

.filter-extension .btn-filter-action[b-t1de943ekv] {
    background: rgba(31, 41, 55, 0.8);
    border-color: rgba(255, 255, 255, 0.3);
}

/* ==================================================
   OPTION 3: Floating Corner Actions
   ================================================== */
.option-3 .floating-actions[b-t1de943ekv] {
    position: absolute;
    top: 1rem;
    right: 1rem;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
    z-index: 2;
    opacity: 0.3;
    transition: opacity 0.3s ease;
}

.option-3:hover .floating-actions[b-t1de943ekv] {
    opacity: 1;
}

.btn-floating[b-t1de943ekv] {
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background: rgba(31, 41, 55, 0.8);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    backdrop-filter: blur(4px);
}

.btn-floating:hover[b-t1de943ekv] {
    background: rgba(31, 41, 55, 0.9);
    transform: scale(1.1);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);
}

/* ==================================================
   OPTION 4: Contextual Reveal
   ================================================== */
.option-4 .contextual-actions[b-t1de943ekv] {
    position: relative;
    z-index: 1;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: all 0.4s ease;
    margin-top: 0;
}

.option-4.revealed .contextual-actions[b-t1de943ekv] {
    max-height: 100px;
    opacity: 1;
    margin-top: 1.5rem;
    padding-top: 1rem;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
}

.option-4 .contextual-actions .btn-filter-action[b-t1de943ekv] {
    background: rgba(31, 41, 55, 0.8);
    backdrop-filter: blur(4px);
    animation: slideUp-b-t1de943ekv 0.4s ease;
}

@keyframes slideUp-b-t1de943ekv {
    from {
        transform: translateY(20px);
        opacity: 0;
    }
    to {
        transform: translateY(0);
        opacity: 1;
    }
}

/* ==================================================
   OPTION 5: Refined External Positioning
   ================================================== */
.external-action-bar[b-t1de943ekv] {
    position: relative;
    text-align: center;
    margin-top: 1rem;
}

.action-connector[b-t1de943ekv] {
    width: 2px;
    height: 1rem;
    background: linear-gradient(180deg, #f59e0b 0%, rgba(245, 158, 11, 0.3) 100%);
    margin: 0 auto;
    border-radius: 1px;
}

.external-action-bar .filter-actions[b-t1de943ekv] {
    margin-top: 0.5rem;
    padding: 0.75rem 1.5rem;
    background: linear-gradient(135deg, rgba(251, 191, 36, 0.1) 0%, rgba(245, 158, 11, 0.1) 100%);
    border: 1px solid rgba(245, 158, 11, 0.2);
    border-radius: 6px;
    backdrop-filter: blur(4px);
    display: inline-flex;
}

.btn-filter-action-external[b-t1de943ekv] {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    color: #1f2937;
    border-color: rgba(31, 41, 55, 0.1);
    font-weight: 600;
}

.btn-filter-action-external:hover[b-t1de943ekv] {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #1f2937;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.3);
}

/* ==================================================
   OPTION 6: Inline Floating Actions with Captions
   ================================================== */
.option-6 .inline-floating-actions[b-t1de943ekv] {
    position: relative;
    z-index: 1;
    margin-top: 1.75rem;
    margin-bottom: -0.5rem;
    display: flex;
    justify-content: center;
    gap: 2rem;
    align-items: center;
}

.floating-action-item[b-t1de943ekv] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
}

.btn-floating-inline[b-t1de943ekv] {
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    background: rgba(31, 41, 55, 0.8);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.2s ease;
    backdrop-filter: blur(4px);
    font-size: 0.75rem;
    flex-shrink: 0;
}

.btn-floating-inline:hover[b-t1de943ekv] {
    background: rgba(31, 41, 55, 0.9);
    transform: scale(1.05) translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
    border-color: rgba(255, 255, 255, 0.3);
}

.floating-caption[b-t1de943ekv] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: #1f2937;
    white-space: nowrap;
    opacity: 0.8;
    transition: opacity 0.2s ease;
}

.floating-action-item:hover .floating-caption[b-t1de943ekv] {
    opacity: 1;
}

/* Dark mode adjustments */
[data-theme="dark"] .filter-bar-card[b-t1de943ekv] {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
}

[data-theme="dark"] .filter-bar-header[b-t1de943ekv]::before,
[data-theme="dark"] .filter-bar-header[b-t1de943ekv]::after {
    background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.2) 50%, transparent 100%);
}

[data-theme="dark"] .filter-bar-header h3[b-t1de943ekv],
[data-theme="dark"] .filter-bar-header i[b-t1de943ekv],
[data-theme="dark"] .nl-static[b-t1de943ekv] {
    color: white;
}

[data-theme="dark"] .filter-badge[b-t1de943ekv] {
    background: rgba(255, 255, 255, 0.1);
    color: white;
    border-color: rgba(255, 255, 255, 0.2);
}

[data-theme="dark"] .filter-badge.interactive:hover[b-t1de943ekv] {
    background: rgba(255, 255, 255, 0.2);
}

[data-theme="dark"] .floating-caption[b-t1de943ekv] {
    color: white;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .filter-bar-card[b-t1de943ekv] {
        padding: 1.25rem 1.5rem;
    }
    
    .filter-natural-language[b-t1de943ekv] {
        font-size: 1rem;
        gap: 0.5rem;
    }
    
    .filter-actions[b-t1de943ekv] {
        flex-direction: column;
        gap: 0.5rem;
    }
    
    .btn-filter-action[b-t1de943ekv],
    .btn-filter-action-external[b-t1de943ekv] {
        font-size: 0.8125rem;
        padding: 0.5rem 0.875rem;
        min-width: 140px;
    }
    
    .option-3 .floating-actions[b-t1de943ekv] {
        position: static;
        flex-direction: row;
        justify-content: center;
        margin-top: 1rem;
        opacity: 1;
    }
    
    .option-1 .filter-footer[b-t1de943ekv],
    .option-2 .filter-extension[b-t1de943ekv] {
        margin-left: -1.5rem;
        margin-right: -1.5rem;
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
    
    .option-1 .filter-footer[b-t1de943ekv] {
        margin-bottom: -1.25rem;
        padding-bottom: 0.625rem;
        padding-top: 0.375rem;
        margin-top: 0.5rem;
    }
    
    .option-6 .inline-floating-actions[b-t1de943ekv] {
        gap: 1.5rem;
        flex-direction: column;
        align-items: center;
    }
    
    .btn-floating-inline[b-t1de943ekv] {
        width: 1.625rem;
        height: 1.625rem;
        font-size: 0.6875rem;
    }
    
    .floating-caption[b-t1de943ekv] {
        font-size: 0.875rem;
    }
    
    .floating-action-item[b-t1de943ekv] {
        gap: 0.5rem;
    }
}
/* _content/Tourneys/Components/Pages/Sandbox/Experiments/GuestCtaDesign.razor.rz.scp.css */
/* Specimen wrapper for consistent presentation */
.cta-specimen[b-4gak9w2462] {
    background: #f8f9fa;
    padding: 2rem;
    border-radius: 8px;
    margin-bottom: 1rem;
    display: flex;
    justify-content: center;
}

/* Common styles for all CTAs */
.guest-cta-current[b-4gak9w2462],
[class^="guest-cta-v"][b-4gak9w2462] {
    padding: 12px 20px;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.9375rem;
    position: relative;
    overflow: hidden;
    max-width: 600px;
    width: 100%;
}

/* Sign in link common styles */
[class^="guest-cta-v"] .sign-in-link[b-4gak9w2462],
.guest-cta-current .sign-in-link[b-4gak9w2462] {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
}

[class^="guest-cta-v"] .sign-in-link:hover[b-4gak9w2462],
.guest-cta-current .sign-in-link:hover[b-4gak9w2462] {
    text-decoration: none;
}

/* Current Implementation (from the actual component) */
.guest-cta-current[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(255, 235, 59, 0.25) 0%, 
        rgba(255, 249, 196, 0.35) 50%,
        rgba(255, 241, 118, 0.25) 100%);
    border: 1px solid rgba(255, 235, 59, 0.5);
    color: #5a4a00;
    box-shadow: 0 2px 8px rgba(255, 235, 59, 0.15);
}

/* Variation 1: Sunshine Burst */
.guest-cta-v1[b-4gak9w2462] {
    background: radial-gradient(ellipse at center, 
        rgba(255, 235, 59, 0.4) 0%, 
        rgba(255, 213, 0, 0.25) 50%,
        rgba(255, 193, 7, 0.15) 100%);
    border: 1px solid rgba(255, 213, 0, 0.6);
    color: #6b5000;
    box-shadow: 0 3px 12px rgba(255, 213, 0, 0.2);
}

/* Variation 2: Gold Premium */
.guest-cta-v2[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(212, 175, 55, 0.3) 0%, 
        rgba(255, 215, 0, 0.25) 50%,
        rgba(218, 165, 32, 0.3) 100%);
    border: 1px solid rgba(212, 175, 55, 0.5);
    color: #5a4200;
    box-shadow: 0 2px 10px rgba(212, 175, 55, 0.15);
    position: relative;
}

/* Gold texture overlay */
.guest-cta-v2[b-4gak9w2462]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image: 
        repeating-linear-gradient(
            -45deg,
            transparent,
            transparent 20px,
            rgba(255, 215, 0, 0.05) 20px,
            rgba(255, 215, 0, 0.05) 40px
        );
    pointer-events: none;
}

/* Variation 3: Neon Highlight */
.guest-cta-v3[b-4gak9w2462] {
    background: rgba(255, 255, 0, 0.3);
    border: 2px solid rgba(255, 255, 0, 0.8);
    color: #4a4a00;
    box-shadow: 
        0 0 20px rgba(255, 255, 0, 0.3),
        inset 0 0 20px rgba(255, 255, 0, 0.1);
    animation: pulse-b-4gak9w2462 2s ease-in-out infinite;
}

@keyframes pulse-b-4gak9w2462 {
    0%, 100% { box-shadow: 0 0 20px rgba(255, 255, 0, 0.3), inset 0 0 20px rgba(255, 255, 0, 0.1); }
    50% { box-shadow: 0 0 30px rgba(255, 255, 0, 0.4), inset 0 0 20px rgba(255, 255, 0, 0.15); }
}

/* Variation 4: Soft Pastel */
.guest-cta-v4[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(255, 248, 220, 0.5) 0%, 
        rgba(255, 250, 205, 0.6) 100%);
    border: 1px solid rgba(240, 230, 140, 0.4);
    color: #665500;
    box-shadow: 0 1px 4px rgba(240, 230, 140, 0.2);
}

/* Variation 5: Tennis Ball Yellow */
.guest-cta-v5[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(223, 255, 0, 0.35) 0%, 
        rgba(205, 235, 0, 0.3) 100%);
    border: 1px solid rgba(205, 235, 0, 0.6);
    color: #4a5200;
    box-shadow: 0 2px 10px rgba(205, 235, 0, 0.25);
}

/* Variation 6: Warm Amber */
.guest-cta-v6[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(255, 191, 0, 0.35) 0%, 
        rgba(255, 170, 0, 0.3) 50%,
        rgba(255, 140, 0, 0.25) 100%);
    border: 1px solid rgba(255, 170, 0, 0.6);
    color: #663d00;
    box-shadow: 0 2px 10px rgba(255, 170, 0, 0.2);
}

/* Variation 7: Blue Accent */
.guest-cta-v7[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(0, 136, 206, 0.12) 0%, 
        rgba(0, 149, 235, 0.08) 100%);
    border: 1px solid rgba(0, 136, 206, 0.3);
    color: #004d7a;
    box-shadow: 0 2px 8px rgba(0, 136, 206, 0.1);
}

/* Variation 8: Gradient Border Focus */
.gradient-border-wrapper[b-4gak9w2462] {
    position: relative;
    padding: 2px;
    border-radius: 10px;
    background: linear-gradient(45deg, #ff6b6b, #ffd93d, #6bcf7f, #4ecdc4, #ff6b6b);
    background-size: 300% 300%;
    animation: gradientShift-b-4gak9w2462 3s ease infinite;
    display: inline-flex;
    width: 100%;
    max-width: 600px;
}

.guest-cta-v8[b-4gak9w2462] {
    background: #ffffff;
    color: #4a4a4a;
    padding: 12px 20px;
    border-radius: 8px;
    position: relative;
    width: 100%;
    border: none;
}

@keyframes gradientShift-b-4gak9w2462 {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}


/* Dark mode adjustments */
[data-theme="dark"] .cta-specimen[b-4gak9w2462] {
    background: #1a1a1a;
}

[data-theme="dark"] .guest-cta-current[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(255, 235, 59, 0.18) 0%, 
        rgba(255, 249, 196, 0.12) 50%,
        rgba(255, 241, 118, 0.15) 100%);
    border-color: rgba(255, 235, 59, 0.4);
    color: #ffeb3b;
}

[data-theme="dark"] .guest-cta-v1[b-4gak9w2462] {
    background: radial-gradient(ellipse at center, 
        rgba(255, 235, 59, 0.25) 0%, 
        rgba(255, 213, 0, 0.15) 50%,
        rgba(255, 193, 7, 0.1) 100%);
    border-color: rgba(255, 213, 0, 0.5);
    color: #ffd700;
}

[data-theme="dark"] .guest-cta-v2[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(212, 175, 55, 0.2) 0%, 
        rgba(255, 215, 0, 0.15) 50%,
        rgba(218, 165, 32, 0.2) 100%);
    border-color: rgba(212, 175, 55, 0.4);
    color: #daa520;
}

[data-theme="dark"] .guest-cta-v3[b-4gak9w2462] {
    background: rgba(255, 255, 0, 0.2);
    border-color: rgba(255, 255, 0, 0.6);
    color: #ffff00;
}

[data-theme="dark"] .guest-cta-v4[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(255, 248, 220, 0.15) 0%, 
        rgba(255, 250, 205, 0.1) 100%);
    border-color: rgba(240, 230, 140, 0.3);
    color: #f0e68c;
}

[data-theme="dark"] .guest-cta-v5[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(223, 255, 0, 0.2) 0%, 
        rgba(205, 235, 0, 0.15) 100%);
    border-color: rgba(205, 235, 0, 0.5);
    color: #cdeb00;
}

[data-theme="dark"] .guest-cta-v6[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(255, 191, 0, 0.22) 0%, 
        rgba(255, 170, 0, 0.18) 50%,
        rgba(255, 140, 0, 0.15) 100%);
    border-color: rgba(255, 170, 0, 0.5);
    color: #ffaa00;
}

[data-theme="dark"] .guest-cta-v7[b-4gak9w2462] {
    background: linear-gradient(135deg, 
        rgba(0, 136, 206, 0.2) 0%, 
        rgba(0, 149, 235, 0.15) 100%);
    border-color: rgba(0, 136, 206, 0.4);
    color: #4db8ff;
}

[data-theme="dark"] .gradient-border-wrapper[b-4gak9w2462] {
    background: linear-gradient(45deg, #ff6b6b, #ffd93d, #6bcf7f, #4ecdc4, #ff6b6b);
    background-size: 300% 300%;
}

[data-theme="dark"] .guest-cta-v8[b-4gak9w2462] {
    background: #1a1a1a;
    color: #e0e0e0;
}
/* _content/Tourneys/Components/Pages/Sandbox/Experiments/MoreFiltersButtonDesign.razor.rz.scp.css */
/* Design exploration container */
.design-variant[b-64t4flc3og] {
    padding: 20px;
    border: 1px solid #dee2e6;
    border-radius: 8px;
    background: white;
}

.demo-area[b-64t4flc3og] {
    padding: 30px;
    background: #f8f9fa;
    border-radius: 4px;
    display: flex;
    justify-content: center;
    align-items: center;
}

/* Current design (for reference) */
.advanced-filters-link-current[b-64t4flc3og] {
    font-weight: 500;
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: #0d6efd;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 8px 16px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 4px;
    min-width: 140px;
    justify-content: center;
}

.advanced-filters-link-current:hover[b-64t4flc3og] {
    color: #0a58ca;
    background: rgba(0, 0, 0, 0.05);
}

/* Option 1: Larger Gray Button */
.advanced-filters-link-v1[b-64t4flc3og] {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #495057;
    background-color: transparent;
    border: 1px solid transparent;
    padding: 10px 20px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 6px;
    min-width: 160px;
    justify-content: center;
}

.advanced-filters-link-v1:hover[b-64t4flc3og] {
    color: #212529;
    background: rgba(0, 0, 0, 0.08);
}

/* Option 2: Medium Gray with Border */
.advanced-filters-link-v2[b-64t4flc3og] {
    font-weight: 500;
    font-size: 0.9375rem;
    line-height: 1.5rem;
    color: #6c757d;
    background-color: transparent;
    border: 1px solid #dee2e6;
    padding: 8px 18px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 5px;
    min-width: 150px;
    justify-content: center;
}

.advanced-filters-link-v2:hover[b-64t4flc3og] {
    color: #495057;
    background: #f8f9fa;
    border-color: #adb5bd;
}

/* Option 5: Custom Subtle Gray */
.advanced-filters-link-v5[b-64t4flc3og] {
    font-weight: 500;
    font-size: 0.9375rem;
    line-height: 1.5rem;
    color: #495057;
    background-color: rgba(0, 0, 0, 0.03);
    border: 1px solid rgba(0, 0, 0, 0.08);
    padding: 10px 20px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.625rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 8px;
    min-width: 160px;
    justify-content: center;
}

.advanced-filters-link-v5:hover[b-64t4flc3og] {
    color: #212529;
    background-color: rgba(0, 0, 0, 0.08);
    border-color: rgba(0, 0, 0, 0.15);
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Option 6: Icon-focused design */
.advanced-filters-link-v6[b-64t4flc3og] {
    font-weight: 500;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #6c757d;
    background-color: transparent;
    border: 2px solid #dee2e6;
    padding: 12px 24px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.75rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 50px;
}

.advanced-filters-link-v6:hover[b-64t4flc3og] {
    color: #495057;
    background: #f8f9fa;
    border-color: #adb5bd;
}

/* Active state variations */
.advanced-filters-active-v1[b-64t4flc3og] {
    display: inline-flex;
}

.advanced-filters-link-active-v1[b-64t4flc3og] {
    font-weight: 600;
    font-size: 1rem;
    line-height: 1.5rem;
    color: #495057;
    background-color: rgba(0, 136, 206, 0.08);
    border: 1px solid rgba(0, 136, 206, 0.3);
    padding: 10px 20px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 6px 0 0 6px;
    min-width: 160px;
    justify-content: center;
}

.advanced-filters-link-active-v1:hover[b-64t4flc3og] {
    background-color: rgba(0, 136, 206, 0.12);
}

/* Context demo styling */
.context-demo[b-64t4flc3og] {
    font-size: 18px;
    line-height: 1.8;
}
/* _content/Tourneys/Components/Pages/Sandbox/Experiments/NaturalFilterBarDesign.razor.rz.scp.css */
/* ================================================
   Natural Filter Bar Design Experiments
   ================================================ */

/* Common styles for all variants */
.experiment-section[b-j0ljbk4lpo] {
    margin-bottom: 3rem;
}

/* Specimen wrapper - simulates actual site context */
.specimen-wrapper[b-j0ljbk4lpo] {
    background-color: var(--color-background, #F8FAFC);
    border: 2px solid var(--bs-gray-300);
    border-radius: 8px;
    padding: 2rem;
    position: relative;
    overflow: hidden;
}

.specimen-wrapper[b-j0ljbk4lpo]::before {
    content: "Site Preview";
    position: absolute;
    top: 0;
    right: 0;
    background-color: var(--bs-gray-600);
    color: white;
    font-size: 0.75rem;
    padding: 0.25rem 0.75rem;
    border-bottom-left-radius: 6px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Court lines positioning */
.court-lines[b-j0ljbk4lpo] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0.6;
}

/* Filter card base styles */
[class^="filter-card-v"][b-j0ljbk4lpo] {
    position: relative;
    overflow: hidden;
    border-radius: var(--radius-large, 12px);
    transition: all 0.3s ease;
    max-width: 960px; /* Match site container width */
    margin: 0 auto; /* Center in specimen */
}

/* Natural language styling */
.natural-language-text[b-j0ljbk4lpo] {
    font-size: 22px;
    line-height: 1.8;
    font-weight: 600;
    color: var(--color-text-primary);
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: center;
    align-items: center;
}

/* Filter pill styling */
.filter-pill[b-j0ljbk4lpo] {
    display: inline-block;
    padding: 0.375rem 1rem;
    background-color: var(--bs-white);
    border: 2px solid var(--bs-primary);
    border-radius: 25px;
    color: var(--bs-primary);
    font-weight: 600;
    transition: all 0.2s ease;
    cursor: pointer;
    white-space: nowrap;
}

.filter-pill:hover[b-j0ljbk4lpo] {
    background-color: var(--bs-primary);
    color: var(--bs-white);
    transform: translateY(-1px);
}

/* ================================================
   Variant 1: Current Design (Baseline)
   ================================================ */
.filter-card-v1[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

/* ================================================
   Variant 2: Enhanced Court Lines
   ================================================ */
.filter-card-v2[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

.filter-card-v2 .court-lines[b-j0ljbk4lpo] {
    opacity: 0.8;
}

/* ================================================
   Variant 3: Blue Tinted Background
   ================================================ */
.filter-card-v3[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, 
        rgba(0, 136, 206, 0.03) 0%, 
        rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

/* ================================================
   Variant 4: Subtle Border
   ================================================ */
.filter-card-v4[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 136, 206, 0.15);
}

/* ================================================
   Variant 5: Bottom Border Accent
   ================================================ */
.filter-card-v5[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    border-bottom: 3px solid var(--bs-primary);
}

/* ================================================
   Variant 6: Elevated Shadow
   ================================================ */
.filter-card-v6[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.95) 0%, rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.12);
}

.filter-card-v6:hover[b-j0ljbk4lpo] {
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.15);
    transform: translateY(-2px);
}

/* ================================================
   Variant 7: Tennis Green Background
   ================================================ */
.filter-card-v7[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, 
        rgba(134, 195, 101, 0.05) 0%, 
        rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

/* ================================================
   Variant 8: Combined Enhanced Lines + Blue Tint
   ================================================ */
.filter-card-v8[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, 
        rgba(0, 136, 206, 0.03) 0%, 
        rgba(248, 250, 252, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}

.filter-card-v8 .court-lines[b-j0ljbk4lpo] {
    opacity: 0.6;
}

/* ================================================
   Dark Mode Support
   ================================================ */
[data-theme="dark"] [class^="filter-card-v"][b-j0ljbk4lpo] {
    background: linear-gradient(135deg, rgba(26, 35, 50, 0.95) 0%, rgba(15, 25, 35, 0.95) 100%);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .filter-card-v3[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, 
        rgba(0, 136, 206, 0.08) 0%, 
        rgba(15, 25, 35, 0.95) 100%);
}

[data-theme="dark"] .filter-card-v4[b-j0ljbk4lpo] {
    border-color: rgba(0, 136, 206, 0.25);
}

[data-theme="dark"] .filter-card-v6[b-j0ljbk4lpo] {
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5);
}

[data-theme="dark"] .filter-card-v7[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, 
        rgba(134, 195, 101, 0.08) 0%, 
        rgba(15, 25, 35, 0.95) 100%);
}

[data-theme="dark"] .filter-card-v8[b-j0ljbk4lpo] {
    background: linear-gradient(135deg, 
        rgba(0, 136, 206, 0.08) 0%, 
        rgba(15, 25, 35, 0.95) 100%);
}

[data-theme="dark"] .filter-pill[b-j0ljbk4lpo] {
    background-color: var(--bs-gray-800);
    border-color: var(--bs-primary);
}

[data-theme="dark"] .filter-pill:hover[b-j0ljbk4lpo] {
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

[data-theme="dark"] .specimen-wrapper[b-j0ljbk4lpo] {
    background-color: var(--color-background, #0A1628);
    border-color: var(--bs-gray-700);
}

[data-theme="dark"] .specimen-wrapper[b-j0ljbk4lpo]::before {
    background-color: var(--bs-gray-800);
}

/* ================================================
   Responsive Design
   ================================================ */
@media (max-width: 768px) {
    .natural-language-text[b-j0ljbk4lpo] {
        font-size: 18px;
    }
    
    .filter-pill[b-j0ljbk4lpo] {
        padding: 0.25rem 0.75rem;
        font-size: 0.9rem;
    }
}
/* _content/Tourneys/Components/Pages/Settings.razor.rz.scp.css */
/* Settings Page Component-Specific Styles */

/* Form helper text */
.form-text[b-435j3vczdq] {
    font-size: 0.875rem;
    color: var(--neutral-foreground-secondary);
}
/* _content/Tourneys/Components/Pages/TournamentSearch.razor.rz.scp.css */
/* TournamentSearch Page Styles */

/* Main container */
.tournaments-new-container[b-udup6kb4nk] {
    min-height: 100vh;
}

/* Content wrapper with padding */
.tournaments-new-content[b-udup6kb4nk] {
    display: grid;
    grid-template-columns: 1fr 300px;
    gap: 2rem;
    max-width: 1400px;
    margin: 0 auto;
    min-height: 100vh;
}

/* Tournament wrapper - left column */
.tournaments-wrapper[b-udup6kb4nk] {
    /* No background/chrome - cards appear against body background */
}

.left-column[b-udup6kb4nk] {
    /* No padding - content goes to edges */
}

/* Results count badge */
.results-count-badge[b-udup6kb4nk] {
    position: fixed;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    display: inline-flex;
    align-items: center;
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 20px;
    font-size: 0.875rem;
    font-weight: 600;
    box-shadow: 0 2px 8px rgba(14, 165, 233, 0.3);
    z-index: 1000;
    animation: slideDownFromTop-b-udup6kb4nk 0.4s ease-out forwards;
}

/* Slide down animation - Desktop */
@keyframes slideDownFromTop-b-udup6kb4nk {
    0% {
        transform: translateX(-50%) translateY(-100%);
        opacity: 0;
    }
    100% {
        transform: translateX(-50%) translateY(300px);
        opacity: 1;
    }
}

/* Slide down animation - Mobile (further down) */
@keyframes slideDownFromTopMobile-b-udup6kb4nk {
    0% {
        transform: translateX(-50%) translateY(-100%);
        opacity: 0;
    }
    100% {
        transform: translateX(-50%) translateY(400px);
        opacity: 1;
    }
}

/* Fade out animation - Desktop */
@keyframes fadeOut-b-udup6kb4nk {
    0% {
        transform: translateX(-50%) translateY(300px);
        opacity: 1;
    }
    100% {
        transform: translateX(-50%) translateY(300px);
        opacity: 0;
    }
}

/* Fade out animation - Mobile */
@keyframes fadeOutMobile-b-udup6kb4nk {
    0% {
        transform: translateX(-50%) translateY(450px);
        opacity: 1;
    }
    100% {
        transform: translateX(-50%) translateY(450px);
        opacity: 0;
    }
}

/* Add class for fade-out state */
.results-count-badge.fade-out[b-udup6kb4nk] {
    animation: fadeOut-b-udup6kb4nk 0.3s ease-out forwards;
}

/* Tournament list wrapper */
.tournaments-list-wrapper[b-udup6kb4nk] {
    position: relative;
}

/* Filter overlay */
.filter-backdrop[b-udup6kb4nk] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(2px);
    z-index: 10;
}

.filter-overlay[b-udup6kb4nk] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 11;
}

.filter-status[b-udup6kb4nk] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    background: white;
    padding: 1rem 1.5rem;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    font-weight: 500;
    color: var(--bs-gray-700);
}

/* Sticky calendar wrapper - right column */
.sticky-calendar-wrapper[b-udup6kb4nk] {
    position: sticky;
    top: 1rem;
    height: fit-content;
    /* No background/chrome - calendar appears against body background */
}

/* Mobile calendar (hidden on desktop) */
.mobile-calendar-container[b-udup6kb4nk] {
    display: none;
}

/* Shared link message */
.shared-link-message[b-udup6kb4nk] {
    margin-bottom: 1rem;
}

/* Month grouping styles with sticky headers */
.month-group[b-udup6kb4nk] {
    margin-bottom: 2.5rem;
}

.month-header[b-udup6kb4nk] {
    position: sticky;
    top: var(--header-sticky-offset);
    z-index: 10;
    /* No background - blur does all the readability work */
    backdrop-filter: blur(4px) saturate(120%);
    -webkit-backdrop-filter: blur(4px) saturate(120%);
    padding: 1rem 0 0.75rem 0;
    font-family: var(--bs-font-family-winner);
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--bs-gray-800);
    
    /* Soften the bottom edge with a gradient mask */
    mask-image: linear-gradient(to bottom, 
        rgba(0,0,0,1) 0%, 
        rgba(0,0,0,1) 75%, 
        rgba(0,0,0,0.8) 85%, 
        rgba(0,0,0,0.4) 95%, 
        rgba(0,0,0,0) 100%);
    -webkit-mask-image: linear-gradient(to bottom, 
        rgba(0,0,0,1) 0%, 
        rgba(0,0,0,1) 75%, 
        rgba(0,0,0,0.8) 85%, 
        rgba(0,0,0,0.4) 95%, 
        rgba(0,0,0,0) 100%);
}

.month-tournaments[b-udup6kb4nk] {
    display: flex;
    flex-direction: column;
}

/* Dark mode support */

[data-theme="dark"] .left-column[b-udup6kb4nk] {
    color: white;
}

[data-theme="dark"] .month-header[b-udup6kb4nk] {
    /* No background - blur does all the readability work */
    color: white;
}

[data-theme="dark"] .filter-status[b-udup6kb4nk] {
    background: var(--bs-gray-800);
    color: var(--bs-gray-100);
}

[data-theme="dark"] .filter-backdrop[b-udup6kb4nk] {
    background: rgba(0, 0, 0, 0.5);
}

/* Responsive design */
@media (max-width: 1024px) {
    .tournaments-new-content[b-udup6kb4nk] {
        grid-template-columns: 1fr 280px;
        gap: 1.5rem;
    }
}

@media (max-width: 768px) {
    .tournaments-new-content[b-udup6kb4nk] {
        grid-template-columns: 1fr;
        gap: 0;
    }

    .sticky-calendar-wrapper[b-udup6kb4nk] {
        display: none;
    }

    .mobile-calendar-container[b-udup6kb4nk] {
        display: block;
        margin-top: 1rem;
    }

    .left-column[b-udup6kb4nk] {
        /* No padding on mobile either */
    }

    .results-count-badge[b-udup6kb4nk] {
        font-size: 0.8125rem;
        padding: 0.375rem 0.75rem;
        /* Use mobile animations on smaller screens */
        animation: slideDownFromTopMobile-b-udup6kb4nk 0.4s ease-out forwards;
    }

    .results-count-badge.fade-out[b-udup6kb4nk] {
        animation: fadeOutMobile-b-udup6kb4nk 0.3s ease-out forwards;
    }

    .month-header[b-udup6kb4nk] {
        font-size: 1.25rem;
        top: var(--header-sticky-offset-mobile);
    }
}

@media (max-width: 480px) {

    .left-column[b-udup6kb4nk] {
        /* No padding on small mobile either */
    }

    .month-group[b-udup6kb4nk] {
        margin-bottom: 2rem;
    }

}
/* _content/Tourneys/Components/Pages/Unsubscribe.razor.rz.scp.css */
.unsubscribe-container[b-q046g5ng7z] {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: calc(100vh - 200px);
    padding: 2rem;
}

.unsubscribe-card[b-q046g5ng7z] {
    background: white;
    border-radius: var(--layer-corner-radius);
    box-shadow: var(--elevation-shadow-card-rest);
    padding: 3rem;
    max-width: 500px;
    width: 100%;
    text-align: center;
}

.loading-state[b-q046g5ng7z],
.success-state[b-q046g5ng7z],
.error-state[b-q046g5ng7z],
.confirmation-state[b-q046g5ng7z] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1.5rem;
}

.loading-state p[b-q046g5ng7z] {
    margin: 0;
    color: var(--neutral-foreground-rest);
}

h2[b-q046g5ng7z] {
    margin: 0;
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--neutral-foreground-rest);
}

p[b-q046g5ng7z] {
    margin: 0;
    color: var(--neutral-foreground-hint);
    line-height: 1.5;
}

.manage-text[b-q046g5ng7z] {
    font-size: 0.875rem;
}

.note[b-q046g5ng7z] {
    font-size: 0.875rem;
    background-color: var(--neutral-layer-4);
    padding: 0.75rem 1rem;
    border-radius: var(--control-corner-radius);
    color: var(--neutral-foreground-hint);
}

.button-group[b-q046g5ng7z] {
    display: flex;
    gap: 1rem;
    justify-content: center;
    flex-wrap: wrap;
}

/* Button styling */
.button-group button[b-q046g5ng7z] {
    min-width: 150px;
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .unsubscribe-card[b-q046g5ng7z] {
        padding: 2rem;
    }

    h2[b-q046g5ng7z] {
        font-size: 1.25rem;
    }

    .button-group[b-q046g5ng7z] {
        flex-direction: column;
        width: 100%;
    }

    .button-group button[b-q046g5ng7z] {
        width: 100%;
    }
}
/* _content/Tourneys/Components/Pages/Welcome.razor.rz.scp.css */
.already-onboarded-container[b-xj6usnrsh6] {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.already-onboarded-card[b-xj6usnrsh6] {
    max-width: 500px;
    width: 100%;
    padding: 2rem;
    background: white;
    border-radius: 12px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
}

/* Dark mode support */
[data-bs-theme="dark"] .already-onboarded-card[b-xj6usnrsh6] {
    background: var(--bs-dark);
    border: 1px solid var(--bs-gray-800);
}

/* Mobile responsive */
@@media (max-width: 768px) {
    .already-onboarded-card[b-xj6usnrsh6] {
        padding: 1.5rem;
        margin: 1rem;
    }
}
/* _content/Tourneys/Components/Settings/SavedListsTab.razor.rz.scp.css */
.settings-tab-content[b-du5se14jzk] {
    padding: 0;
}

.settings-section-title[b-du5se14jzk] {
    margin: 0 0 8px 0;
    color: var(--neutral-foreground-1);
    font-size: 1.25rem;
    font-weight: 600;
}

.settings-section-description[b-du5se14jzk] {
    margin: 0 0 16px 0;
    color: var(--neutral-foreground-3);
    font-size: 0.9rem;
    line-height: 1.4;
}

.loading-container[b-du5se14jzk] {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 32px 0;
    justify-content: center;
    color: var(--neutral-foreground-2);
}

.empty-state[b-du5se14jzk] {
    text-align: center;
    padding: 48px 24px;
    color: var(--neutral-foreground-2);
}

.empty-state[b-du5se14jzk]  .bi {
    color: var(--neutral-foreground-3);
    margin-bottom: 16px;
}

.empty-state h4[b-du5se14jzk] {
    margin: 0 0 8px 0;
    color: var(--neutral-foreground-1);
    font-size: 1.1rem;
    font-weight: 600;
}

.empty-state p[b-du5se14jzk] {
    margin: 0 0 24px 0;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
    line-height: 1.5;
}

.saved-lists-container[b-du5se14jzk] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.saved-list-card[b-du5se14jzk] {
    background: var(--neutral-layer-1);
    border: 1px solid var(--neutral-stroke-2);
    border-radius: var(--control-corner-radius);
    padding: 16px;
    transition: all 0.2s ease;
}

.saved-list-card:hover[b-du5se14jzk] {
    border-color: var(--accent-fill-rest);
    box-shadow: var(--elevation-shadow-card-rest);
}

.saved-list-header[b-du5se14jzk] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
}

.saved-list-info[b-du5se14jzk] {
    flex: 1;
    min-width: 0;
}

.saved-list-name[b-du5se14jzk] {
    margin: 0 0 4px 0;
    color: var(--neutral-foreground-1);
    font-size: 1rem;
    font-weight: 600;
    word-break: break-word;
}

.saved-list-meta[b-du5se14jzk] {
    display: flex;
    flex-wrap: wrap;
    gap: 4px;
    color: var(--neutral-foreground-3);
    font-size: 0.8rem;
}

.saved-list-actions[b-du5se14jzk] {
    display: flex;
    gap: 4px;
    flex-shrink: 0;
}

.saved-list-details[b-du5se14jzk] {
    margin-top: 16px;
}

.saved-list-details h5[b-du5se14jzk] {
    margin: 0 0 8px 0;
    color: var(--neutral-foreground-2);
    font-size: 0.9rem;
    font-weight: 600;
}

.filter-summary[b-du5se14jzk] {
    background: var(--neutral-layer-2);
    border: 1px solid var(--neutral-stroke-2);
    border-radius: var(--control-corner-radius);
    padding: 12px;
    font-size: 0.85rem;
    line-height: 1.4;
    color: var(--neutral-foreground-2);
}

.saved-lists-actions[b-du5se14jzk] {
    display: flex;
    justify-content: center;
    padding: 16px 0;
}

.storage-info[b-du5se14jzk] {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 16px;
    background: var(--neutral-layer-2);
    border: 1px solid var(--neutral-stroke-2);
    border-radius: var(--control-corner-radius);
    color: var(--neutral-foreground-2);
    font-size: 0.85rem;
}

.storage-info[b-du5se14jzk]  .bi {
    color: var(--accent-fill-rest);
}

.current-filters-preview[b-du5se14jzk] {
    background: var(--neutral-layer-2);
    border: 1px solid var(--neutral-stroke-2);
    border-radius: var(--control-corner-radius);
    padding: 12px;
    font-size: 0.85rem;
    line-height: 1.4;
    color: var(--neutral-foreground-2);
    max-height: 200px;
    overflow-y: auto;
}

.current-filters-preview em[b-du5se14jzk] {
    color: var(--neutral-foreground-3);
}

/* Mobile responsiveness */
@media (max-width: 768px) {
    .saved-list-header[b-du5se14jzk] {
        flex-direction: column;
        align-items: stretch;
        gap: 12px;
    }

    .saved-list-actions[b-du5se14jzk] {
        justify-content: space-between;
        width: 100%;
    }

    .saved-list-meta[b-du5se14jzk] {
        flex-direction: column;
        gap: 2px;
    }

    .empty-state[b-du5se14jzk] {
        padding: 32px 16px;
    }

    .storage-info[b-du5se14jzk] {
        flex-direction: column;
        align-items: flex-start;
        gap: 4px;
    }
}
/* _content/Tourneys/Components/Shared/Display/ComingSoon.razor.rz.scp.css */
 .construction-container[b-ky3mjrh06m] {
            text-align: center;
            background: white;
            padding: 40px;
            border-radius: 16px;
            box-shadow: 0 10px 30px rgba(0, 0, 0, 0.1);
        }

        h1[b-ky3mjrh06m] {
            color: #1a5490;
            margin-bottom: 30px;
            font-size: 2em;
        }

        .court-container[b-ky3mjrh06m] {
            position: relative;
            width: 600px;
            height: 280px;
            margin: 0 auto 30px;
            overflow: hidden;
        }

        .tennis-court[b-ky3mjrh06m] {
            position: absolute;
            width: 100%;
            height: 100%;
            background: #1a5490;
            border: 4px solid #0d3660;
        }

        .net[b-ky3mjrh06m] {
            position: absolute;
            left: 50%;
            top: 0;
            width: 3px;
            height: 100%;
            background: #666;
            transform: translateX(-50%);
        }

        .net[b-ky3mjrh06m]::before,
        .net[b-ky3mjrh06m]::after {
            content: '';
            position: absolute;
            width: 20px;
            height: 20px;
            background: #444;
            border-radius: 50%;
            left: 50%;
            transform: translateX(-50%);
        }

        .net[b-ky3mjrh06m]::before {
            top: -10px;
        }

        .net[b-ky3mjrh06m]::after {
            bottom: -10px;
        }

        .court-line[b-ky3mjrh06m] {
            position: absolute;
            background: white;
        }

        /* Baseline lines */
        .baseline-left[b-ky3mjrh06m] {
            left: 20px;
            top: 20px;
            bottom: 20px;
            width: 3px;
            clip-path: inset(100% 0 0 0);
            animation: paintVerticalDown-b-ky3mjrh06m 0.8s 0s ease-in-out forwards;
        }

        .baseline-right[b-ky3mjrh06m] {
            right: 20px;
            top: 20px;
            bottom: 20px;
            width: 3px;
            clip-path: inset(100% 0 0 0);
            animation: paintVerticalDown-b-ky3mjrh06m 0.8s 4.5s ease-in-out forwards;
        }

        /* Service lines */
        .service-left[b-ky3mjrh06m] {
            left: 150px;
            top: 50%;
            width: 150px;
            height: 3px;
            transform: translateY(-50%);
            clip-path: inset(0 100% 0 0);
            animation: paintHorizontalRight-b-ky3mjrh06m 0.8s 0.9s ease-in-out forwards;
        }

        .service-right[b-ky3mjrh06m] {
            right: 150px;
            top: 50%;
            width: 150px;
            height: 3px;
            transform: translateY(-50%);
            clip-path: inset(0 100% 0 0);
            animation: paintHorizontalRight-b-ky3mjrh06m 0.8s 3.6s ease-in-out forwards;
        }

        /* Service boxes vertical lines */
        .service-box-left[b-ky3mjrh06m] {
            left: 150px;
            top: 50px;
            bottom: 50px;
            width: 3px;
            clip-path: inset(0 0 100% 0);
            animation: paintVerticalDown-b-ky3mjrh06m 0.8s 1.8s ease-in-out forwards;
        }

        .service-box-right[b-ky3mjrh06m] {
            right: 150px;
            top: 50px;
            bottom: 50px;
            width: 3px;
            clip-path: inset(100% 0 0 0);
            animation: paintVerticalUp-b-ky3mjrh06m 0.8s 2.7s ease-in-out forwards;
        }

        /* Singles sidelines (creating doubles alleys) */
        .singles-top[b-ky3mjrh06m] {
            left: 20px;
            right: 20px;
            top: 50px;
            height: 3px;
            clip-path: inset(0 100% 0 0);
            animation: paintHorizontalRight-b-ky3mjrh06m 0.8s 5.4s ease-in-out forwards;
        }

        .singles-bottom[b-ky3mjrh06m] {
            left: 20px;
            right: 20px;
            bottom: 50px;
            height: 3px;
            clip-path: inset(0 0 0 100%);
            animation: paintHorizontalLeft-b-ky3mjrh06m 0.8s 6.3s ease-in-out forwards;
        }

        /* Doubles sidelines (outer boundaries) */
        .doubles-top[b-ky3mjrh06m] {
            left: 20px;
            right: 20px;
            top: 20px;
            height: 3px;
            clip-path: inset(0 100% 0 0);
            animation: paintHorizontalRight-b-ky3mjrh06m 0.8s 7.2s ease-in-out forwards;
        }

        .doubles-bottom[b-ky3mjrh06m] {
            left: 20px;
            right: 20px;
            bottom: 20px;
            height: 3px;
            clip-path: inset(0 0 0 100%);
            animation: paintHorizontalLeft-b-ky3mjrh06m 0.8s 8.1s ease-in-out forwards;
        }

        /* Paint roller */
        .paint-roller[b-ky3mjrh06m] {
            position: absolute;
            width: 60px;
            height: 80px;
            animation: paintMove-b-ky3mjrh06m 10s ease-in-out forwards;
        }

        .paint-roller svg[b-ky3mjrh06m] {
            width: 100%;
            height: 100%;
        }

        /* Tennis ball that appears after */
        .tennis-ball[b-ky3mjrh06m] {
            position: absolute;
            width: 40px;
            height: 40px;
            background: #ccff00;
            border-radius: 50%;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%) scale(0);
            opacity: 0;
            animation: ballAppear-b-ky3mjrh06m 0.5s 9.5s forwards, ballBounce-b-ky3mjrh06m 2s 10s ease-out forwards;
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
        }

        .tennis-ball[b-ky3mjrh06m]::before {
            content: '';
            position: absolute;
            width: 100%;
            height: 100%;
            border: 2px solid white;
            border-radius: 50%;
            clip-path: polygon(45% 0%, 55% 0%, 55% 100%, 45% 100%);
        }

        .tennis-ball[b-ky3mjrh06m]::after {
            content: '';
            position: absolute;
            width: 100%;
            height: 100%;
            border: 2px solid white;
            border-radius: 50%;
            clip-path: polygon(0% 45%, 100% 45%, 100% 55%, 0% 55%);
        }

        /* Animations for painting lines */
        @keyframes paintVerticalDown-b-ky3mjrh06m {
            from {
                clip-path: inset(0 0 100% 0);
            }
            to {
                clip-path: inset(0 0 0 0);
            }
        }

        @keyframes paintVerticalUp-b-ky3mjrh06m {
            from {
                clip-path: inset(100% 0 0 0);
            }
            to {
                clip-path: inset(0 0 0 0);
            }
        }

        @keyframes paintHorizontalRight-b-ky3mjrh06m {
            to {
                clip-path: inset(0 0 0 0);
            }
        }

        @keyframes paintHorizontalLeft-b-ky3mjrh06m {
            to {
                clip-path: inset(0 0 0 0);
            }
        }

        @keyframes paintMove-b-ky3mjrh06m {
            /* Paint left baseline - moving down */
            0% {
                left: 20px;
                top: 20px;
                transform: rotate(0deg);
            }
            8% {
                left: 20px;
                top: 240px;
                transform: rotate(0deg);
            }

            /* Paint left service line - moving right */
            9% {
                left: 150px;
                top: 137px;
                transform: rotate(90deg);
            }
            17% {
                left: 280px;
                top: 137px;
                transform: rotate(90deg);
            }

            /* Paint left service box line - moving down */
            18% {
                left: 150px;
                top: 50px;
                transform: rotate(0deg);
            }
            26% {
                left: 150px;
                top: 230px;
                transform: rotate(0deg);
            }

            /* Paint right service box line - moving up */
            27% {
                left: 450px;
                top: 230px;
                transform: rotate(0deg);
            }
            35% {
                left: 450px;
                top: 50px;
                transform: rotate(0deg);
            }

            /* Paint right service line - moving right */
            36% {
                left: 320px;
                top: 137px;
                transform: rotate(90deg);
            }
            44% {
                left: 450px;
                top: 137px;
                transform: rotate(90deg);
            }

            /* Paint right baseline - moving down */
            45% {
                left: 580px;
                top: 20px;
                transform: rotate(0deg);
            }
            53% {
                left: 580px;
                top: 240px;
                transform: rotate(0deg);
            }

            /* Paint top singles line - moving right */
            54% {
                left: 20px;
                top: 50px;
                transform: rotate(90deg);
            }
            62% {
                left: 580px;
                top: 50px;
                transform: rotate(90deg);
            }

            /* Paint bottom singles line - moving left */
            63% {
                left: 580px;
                top: 230px;
                transform: rotate(90deg);
            }
            71% {
                left: 20px;
                top: 230px;
                transform: rotate(90deg);
            }

            /* Paint top doubles line - moving right */
            72% {
                left: 20px;
                top: 20px;
                transform: rotate(90deg);
            }
            80% {
                left: 580px;
                top: 20px;
                transform: rotate(90deg);
            }

            /* Paint bottom doubles line - moving left */
            81% {
                left: 580px;
                top: 240px;
                transform: rotate(90deg);
            }
            89% {
                left: 20px;
                top: 240px;
                transform: rotate(90deg);
            }

            /* Slide off to the right */
            100% {
                left: 650px;
                top: 240px;
                transform: rotate(90deg);
            }
        }

        @keyframes ballAppear-b-ky3mjrh06m {
            to {
                transform: translate(-50%, -50%) scale(1);
                opacity: 1;
            }
        }

        @keyframes ballBounce-b-ky3mjrh06m {
            0% {
                transform: translate(-50%, -50%) translateY(0);
            }
            20% {
                transform: translate(-50%, -50%) translateY(60px);
            }
            35% {
                transform: translate(-50%, -50%) translateY(0);
            }
            50% {
                transform: translate(-50%, -50%) translateY(30px);
            }
            60% {
                transform: translate(-50%, -50%) translateY(0);
            }
            70% {
                transform: translate(-50%, -50%) translateY(15px);
            }
            80% {
                transform: translate(-50%, -50%) translateY(0);
            }
            85% {
                transform: translate(-50%, -50%) translateY(5px);
            }
            100% {
                transform: translate(-50%, -50%) translateY(0);
            }
        }

        .status-text[b-ky3mjrh06m] {
            color: #666;
            font-size: 1.1em;
            margin-top: 20px;
            animation: fadeToReady-b-ky3mjrh06m 0.5s 10s forwards;
        }

        @keyframes fadeToReady-b-ky3mjrh06m {
            to {
                color: #1a5490;
                font-weight: 600;
            }
        }

        .status-text[b-ky3mjrh06m]::after {
            content: 'Building something amazing';
            animation: textChange-b-ky3mjrh06m 0.5s 10s forwards;
        }

        @keyframes textChange-b-ky3mjrh06m {
            to {
                content: 'Court is ready! Let\'s play!';
            }
        }

        .loading-dots[b-ky3mjrh06m] {
            display: inline-block;
            width: 60px;
            text-align: left;
        }

        .loading-dots[b-ky3mjrh06m]::after {
            content: '...';
            animation: dots-b-ky3mjrh06m 1.5s steps(4, end) infinite;
        }

        @keyframes dots-b-ky3mjrh06m {
            0%, 20% {
                content: '';
            }
            40% {
                content: '.';
            }
            60% {
                content: '..';
            }
            80%, 100% {
                content: '...';
            }
        }
/* _content/Tourneys/Components/Shared/Display/InfoPoint.razor.rz.scp.css */
.info-point[b-0mqoqcundp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: gray;
    font-size: 0.85rem !important;
    line-height: 1.2;
    margin-bottom: 0.5rem;
}

/* Reduce spacing on mobile for more compact display */
@media (max-width: 576px) {
    .info-point[b-0mqoqcundp] {
        margin-bottom: 0.35rem;
    }
}

.info-point-icon[b-0mqoqcundp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    font-size: 1rem;
    line-height: 1;
    vertical-align: middle;
    text-align: center;
}

.info-point-text[b-0mqoqcundp] {
    display: flex;
    align-items: center;
}
/* _content/Tourneys/Components/Shared/Display/MiniCalendar.razor.rz.scp.css */
.mini-calendar-container[b-n8fl30pj11] {
    --layer-corner-radius: 4px;
    width: 280px;
    background: var(--neutral-layer-1);
    border: 1px solid var(--neutral-stroke-rest);
    border-radius: var(--layer-corner-radius);
    padding: 16px;
    font-family: var(--body-font);
}

/* Dark mode styles */
[data-theme="dark"] .mini-calendar-container[b-n8fl30pj11] {
    background: rgba(26, 35, 50, 0.95);
    border: 1px solid rgba(255, 255, 255, 0.1);
}

.mini-calendar-header[b-n8fl30pj11] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 16px;
}

.mini-calendar-month-year[b-n8fl30pj11] {
    font-size: 16px;
    font-weight: 600;
    color: var(--neutral-foreground-rest);
    line-height: 1;
    margin-top: 0.35rem;
}

.mini-calendar-nav[b-n8fl30pj11] {
    display: flex;
    gap: 2px;
}

.mini-calendar-body[b-n8fl30pj11] {
    position: relative;
    min-height: 240px;
}

.mini-calendar-loading[b-n8fl30pj11] {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.mini-calendar-weekdays[b-n8fl30pj11] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
    margin-bottom: 8px;
}

.mini-calendar-weekday[b-n8fl30pj11] {
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    color: var(--neutral-foreground-hint);
    padding: 4px 0;
}

.mini-calendar-dates[b-n8fl30pj11] {
    display: grid;
    grid-template-columns: repeat(7, 1fr);
    gap: 4px;
}

.mini-calendar-date[b-n8fl30pj11] {
    aspect-ratio: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: var(--control-corner-radius);
    position: relative;
    cursor: default;
    font-size: 14px;
    color: var(--neutral-foreground-rest);
    transition: background-color 0.1s ease;
}

.mini-calendar-date-number[b-n8fl30pj11] {
    position: relative;
}

.mini-calendar-date--other-month[b-n8fl30pj11] {
    color: var(--neutral-foreground-hint);
}

.mini-calendar-date--past[b-n8fl30pj11] {
    opacity: 0.5;
}

.mini-calendar-date--today[b-n8fl30pj11] {
    border: 2px solid var(--accent-fill-rest);
}

.mini-calendar-date--highlighted[b-n8fl30pj11] {
    font-weight: 600;
}

.mini-calendar-date--clickable[b-n8fl30pj11] {
    cursor: pointer;
}

.mini-calendar-date--clickable:hover[b-n8fl30pj11] {
    background-color: var(--neutral-fill-stealth-hover);
}

.mini-calendar-date--selected[b-n8fl30pj11] {
    background-color: var(--accent-fill-rest);
    color: var(--neutral-foreground-on-brand);
}

.mini-calendar-date--selected:hover[b-n8fl30pj11] {
    background-color: var(--accent-fill-hover);
}

.mini-calendar-date:not(.mini-calendar-date--clickable)[b-n8fl30pj11] {
    cursor: not-allowed;
}

.mini-calendar-date-indicator[b-n8fl30pj11] {
    position: absolute;
    bottom: 4px;
    width: 4px;
    height: 4px;
    background-color: var(--accent-fill-rest);
    border-radius: 50%;
}

.mini-calendar-date--selected .mini-calendar-date-indicator[b-n8fl30pj11] {
    background-color: var(--neutral-foreground-on-brand);
}

/* Other month indicator styling */
.mini-calendar-date--other-month .mini-calendar-date-indicator[b-n8fl30pj11] {
    opacity: 0.6;
}

/* Other month clickable hover */
.mini-calendar-date--other-month.mini-calendar-date--clickable:hover[b-n8fl30pj11] {
    background-color: var(--neutral-fill-stealth-hover);
    cursor: pointer;
}

/* Date Range Styles */
.mini-calendar-date--in-range[b-n8fl30pj11] {
    background-color: rgba(var(--accent-fill-rest-rgb), 0.1);
    position: relative;
}

.mini-calendar-date--range-start[b-n8fl30pj11] {
    background-color: var(--accent-fill-rest);
    color: var(--neutral-foreground-on-brand);
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

.mini-calendar-date--range-end[b-n8fl30pj11] {
    background-color: var(--accent-fill-rest);
    color: var(--neutral-foreground-on-brand);
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}

.mini-calendar-date--range-middle[b-n8fl30pj11] {
    background-color: rgba(var(--accent-fill-rest-rgb), 0.15);
    border-radius: 0;
}

.mini-calendar-date--range-start.mini-calendar-date--range-end[b-n8fl30pj11] {
    /* Single day "range" - restore full border radius */
    border-radius: 50%;
}

.mini-calendar-date--range-start:hover[b-n8fl30pj11],
.mini-calendar-date--range-end:hover[b-n8fl30pj11] {
    background-color: var(--accent-fill-hover);
}

.mini-calendar-date--range-middle:hover[b-n8fl30pj11] {
    background-color: rgba(var(--accent-fill-rest-rgb), 0.25);
}

/* Range indicators */
.mini-calendar-date--range-start .mini-calendar-date-indicator[b-n8fl30pj11],
.mini-calendar-date--range-end .mini-calendar-date-indicator[b-n8fl30pj11] {
    background-color: var(--neutral-foreground-on-brand);
}

.mini-calendar-date--range-middle .mini-calendar-date-indicator[b-n8fl30pj11] {
    background-color: var(--accent-fill-rest);
}

/* Dark mode specific styles for better visibility */
[data-theme="dark"] .mini-calendar-weekday[b-n8fl30pj11] {
    color: rgba(232, 244, 248, 0.6);
}

[data-theme="dark"] .mini-calendar-date[b-n8fl30pj11] {
    color: #E8F4F8;
}

[data-theme="dark"] .mini-calendar-date--other-month[b-n8fl30pj11] {
    color: rgba(232, 244, 248, 0.4);
}

[data-theme="dark"] .mini-calendar-date--clickable:hover[b-n8fl30pj11] {
    background-color: rgba(0, 168, 240, 0.2);
}

[data-theme="dark"] .mini-calendar-month-year[b-n8fl30pj11] {
    color: #E8F4F8;
}

/* Responsive adjustments for smaller containers */
@container (max-width: 320px) {
    .mini-calendar-container[b-n8fl30pj11] {
        width: 100%;
        min-width: 240px;
    }
}
/* _content/Tourneys/Components/Shared/Display/SaveStatusIndicator.razor.rz.scp.css */
/* Enhanced floating save status indicator */
.save-status-indicator[b-jbr6mtc3d3] {
    position: fixed;
    top: 20px;
    right: 20px;
    background: rgba(255, 255, 255, 0.98);
    border-radius: 12px;
    padding: 12px 24px;
    box-shadow: 
        0 4px 20px rgba(0, 0, 0, 0.15),
        0 0 0 1px rgba(0, 0, 0, 0.05);
    font-size: 1rem;
    animation: slideInBounce-b-jbr6mtc3d3 0.5s ease-out;
    transition: all 0.3s ease-out;
    min-width: 180px;
    z-index: 1050;
}

/* Larger size on desktop */
@media (min-width: 1200px) {
    .save-status-indicator[b-jbr6mtc3d3] {
        top: 30px;
        right: 30px;
        padding: 16px 32px;
        font-size: 1.1rem;
        min-width: 220px;
    }
}

/* Dark mode support */
[data-theme="dark"] .save-status-indicator[b-jbr6mtc3d3] {
    background: rgba(26, 35, 50, 0.98);
    box-shadow: 
        0 4px 20px rgba(0, 0, 0, 0.4),
        0 0 0 1px rgba(255, 255, 255, 0.1);
}

/* Success state enhancement */
.save-status-indicator:has(.text-success)[b-jbr6mtc3d3] {
    border-left: 4px solid var(--color-success);
}

/* Fade out animation */
.save-status-indicator.fade-out[b-jbr6mtc3d3] {
    animation: fadeOutUp-b-jbr6mtc3d3 0.4s ease-out forwards;
}

/* Enhanced animations */
@keyframes slideInBounce-b-jbr6mtc3d3 {
    0% {
        transform: translateX(100px) scale(0.9);
        opacity: 0;
    }
    70% {
        transform: translateX(-10px) scale(1.02);
    }
    100% {
        transform: translateX(0) scale(1);
        opacity: 1;
    }
}

@keyframes fadeOutUp-b-jbr6mtc3d3 {
    from {
        transform: translateY(0) scale(1);
        opacity: 1;
    }
    to {
        transform: translateY(-20px) scale(0.95);
        opacity: 0;
    }
}
/* _content/Tourneys/Components/Shared/Display/ScrollingWords.razor.rz.scp.css */
.scrolling-words-container[b-f2kkfdmh7l] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow: hidden;
    pointer-events: none;
}

.scrolling-word[b-f2kkfdmh7l] {
    position: absolute;
    color: rgba(0, 0, 0, 0.2);
    font-family: var(--bs-font-winner);
    white-space: nowrap;
    animation: matrix-fall-b-f2kkfdmh7l linear infinite;
    text-shadow: 0 0 2px rgba(255, 255, 255, 0.2);
    user-select: none;
    transition: opacity 0.3s ease;
}

/* Light theme adjustments */
[data-theme="light"] .scrolling-word[b-f2kkfdmh7l] {
    color: rgba(0, 0, 0, 0.15);
    text-shadow: 0 0 2px rgba(255, 255, 255, 0.3);
}

/* Size variations - enhanced differences */
.scrolling-word.size-small[b-f2kkfdmh7l] {
    font-size: 0.65rem;
    font-weight: 300;
    opacity: calc(0.6 * var(--word-opacity, 1));
    letter-spacing: 0.05em;
}

.scrolling-word.size-medium[b-f2kkfdmh7l] {
    font-size: 1.1rem;
    font-weight: 400;
    opacity: calc(0.75 * var(--word-opacity, 1));
    letter-spacing: 0.02em;
}

.scrolling-word.size-large[b-f2kkfdmh7l] {
    font-size: 1.6rem;
    font-weight: 600;
    opacity: calc(0.9 * var(--word-opacity, 1));
    letter-spacing: -0.01em;
    text-shadow: 0 0 3px rgba(255, 255, 255, 0.3);
}

/* Matrix fall animation */
@keyframes matrix-fall-b-f2kkfdmh7l {
    0% {
        transform: translateY(-20px) rotate(var(--rotation, 0deg));
        opacity: 0;
    }
    10% {
        opacity: 1;
    }
    90% {
        opacity: 1;
    }
    100% {
        transform: translateY(80px) rotate(var(--rotation, 0deg));
        opacity: 0;
    }
}

/* Gradient masks for smooth edges */
.gradient-mask[b-f2kkfdmh7l] {
    position: absolute;
    left: 0;
    width: 100%;
    pointer-events: none;
}

.gradient-mask-top[b-f2kkfdmh7l] {
    top: 0;
    height: 30%;
    background: linear-gradient(
        to bottom,
        var(--color-accent) 0%,
        var(--color-accent) 20%,
        transparent 100%
    );
}

.gradient-mask-bottom[b-f2kkfdmh7l] {
    bottom: 0;
    height: 30%;
    background: linear-gradient(
        to top,
        var(--color-accent) 0%,
        var(--color-accent) 20%,
        transparent 100%
    );
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .scrolling-word.size-small[b-f2kkfdmh7l] {
        font-size: 0.55rem;
    }

    .scrolling-word.size-medium[b-f2kkfdmh7l] {
        font-size: 0.9rem;
    }

    .scrolling-word.size-large[b-f2kkfdmh7l] {
        font-size: 1.3rem;
    }
}

/* Add subtle rotation for variety */
.scrolling-word:nth-child(odd)[b-f2kkfdmh7l] {
    --rotation: -1deg;
}

.scrolling-word:nth-child(even)[b-f2kkfdmh7l] {
    --rotation: 1deg;
}

.scrolling-word:nth-child(3n)[b-f2kkfdmh7l] {
    --rotation: 0deg;
}
/* _content/Tourneys/Components/Shared/Display/TournamentImage.razor.rz.scp.css */
/* For mini */
.tournament-mini-image[b-7jdxdlaaq3] {
    width: 60px;
    height: 60px;
    object-fit: contain;
    object-position: center;
}

/* For regular */
.tournament-thumbnail[b-7jdxdlaaq3] {
    width: 60px;
    height: 60px;
    object-fit: cover;
    border-radius: 4px;
    flex-shrink: 0;
}


/* For Panels */
.header-image[b-7jdxdlaaq3] {
    width: 80px;
    height: 80px;
    object-fit: cover;
    border-radius: 8px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
    background-color: #f3f4f6;
    flex-shrink: 0;
}
@media (max-width: 767px) {
    .header-image[b-7jdxdlaaq3] {
        width: 75px;
        height: 75px;
    }
}
/* _content/Tourneys/Components/Shared/EmbeddedMap.razor.rz.scp.css */
/* Responsive map container */
.embedded-map-container[b-ivgwftz93s] {
    width: 100%;
    position: relative;
}

/* Mobile-specific height adjustments */
@media (max-width: 576px) {
    .embedded-map-container[b-ivgwftz93s] {
        height: 150px !important;
    }
}

/* Tablet adjustments */
@media (min-width: 577px) and (max-width: 768px) {
    .embedded-map-container[b-ivgwftz93s] {
        height: 180px !important;
    }
}
/* _content/Tourneys/Components/Shared/Forms/MobileSelectionPanel.razor.rz.scp.css */
/* MobileSelectionPanel Component Styles */

/* Main content container */
.mobile-selection-content[b-6ubmk3ozys] {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding: 0 0 1rem 0;
}

/* Options scrollable area */
.selection-options[b-6ubmk3ozys] {
    flex: 1;
    overflow-y: auto;
    overflow-x: hidden;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
    padding: 0.75rem 0.5rem 1rem 0.5rem; /* Increased top padding to prevent first button clipping when tilted */
    /* Smooth scrolling on iOS */
    -webkit-overflow-scrolling: touch;
}

/* Custom scrollbar for options */
.selection-options[b-6ubmk3ozys]::-webkit-scrollbar {
    width: 4px;
}

.selection-options[b-6ubmk3ozys]::-webkit-scrollbar-track {
    background: transparent;
}

.selection-options[b-6ubmk3ozys]::-webkit-scrollbar-thumb {
    background-color: rgba(0, 0, 0, 0.2);
    border-radius: 2px;
}

/* Responsive adjustments */
@media (max-width: 375px) {

    .mobile-selection-content[b-6ubmk3ozys] {
        padding: 0 0 0.75rem 0;
    }

    .selection-options[b-6ubmk3ozys] {
        gap: 0.5rem;
    }
}

/* Animations for options appearing - faster and snappier */
.selection-options > *[b-6ubmk3ozys] {
    animation: fadeInUp-b-6ubmk3ozys 0.15s ease-out; /* Reduced from 0.3s */
    animation-fill-mode: backwards;
}

/* Stagger the animations - much shorter delays for instant feel */
.selection-options > *:nth-child(1)[b-6ubmk3ozys] { animation-delay: 0.02s; }
.selection-options > *:nth-child(2)[b-6ubmk3ozys] { animation-delay: 0.04s; }
.selection-options > *:nth-child(3)[b-6ubmk3ozys] { animation-delay: 0.06s; }
.selection-options > *:nth-child(4)[b-6ubmk3ozys] { animation-delay: 0.08s; }
.selection-options > *:nth-child(5)[b-6ubmk3ozys] { animation-delay: 0.1s; }
.selection-options > *:nth-child(6)[b-6ubmk3ozys] { animation-delay: 0.12s; }
.selection-options > *:nth-child(7)[b-6ubmk3ozys] { animation-delay: 0.14s; }
.selection-options > *:nth-child(8)[b-6ubmk3ozys] { animation-delay: 0.16s; }
.selection-options > *:nth-child(n+9)[b-6ubmk3ozys] { animation-delay: 0.18s; }

@keyframes fadeInUp-b-6ubmk3ozys {
    from {
        opacity: 0;
        transform: translateY(5px); /* Reduced from 10px for snappier entrance */
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Dark mode adjustments */
[data-theme="dark"] .selection-options[b-6ubmk3ozys]::-webkit-scrollbar-thumb {
    background-color: rgba(255, 255, 255, 0.2);
}

/* Button spacing to prevent clipping when tilted */
.selection-options .btn-mobile-hero[b-6ubmk3ozys] {
    margin: 0.25rem 0.25rem; /* Add vertical margin to prevent clipping when rotated */
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
    /* Touch optimization */
    touch-action: manipulation; /* Prevents double-tap zoom delay */
}
/* _content/Tourneys/Components/Shared/Forms/RatingPicker.razor.rz.scp.css */
.rating-picker-content[b-uerk0kdd31] {
    /* Minimal container styling for dropdown content */
}

.rating-picker-header[b-uerk0kdd31] {
    padding: 0.75rem 1rem 0.5rem;
    border-bottom: 1px solid var(--bs-border-color);
    margin: -0.5rem 0 0 0; /* Only negate the top padding of dropdown-content */
    background: var(--bs-secondary-bg);
}

.rating-picker-header h3[b-uerk0kdd31] {
    margin: 0;
    font-size: 1rem;
    font-weight: 600;
    color: var(--bs-body-color);
    text-align: center;
}

/* Mobile adjustments */
@media (max-width: 767.98px) {
    .rating-picker-header[b-uerk0kdd31] {
        /* Panel component handles its own header, this won't be used on mobile */
        display: none;
    }
}

/* Footer actions for mobile panel */
.rating-actions-footer[b-uerk0kdd31] {
    display: flex;
    gap: 0.75rem;
    justify-content: flex-end;
    width: 100%;
}
/* _content/Tourneys/Components/Shared/Forms/RatingSelectionCore.razor.rz.scp.css */
/* ================================================
   RatingSelectionCore Component Styles
   ================================================ */

/* All styles for this component have been moved to global CSS (app.css) 
   due to CSS isolation issues when used inside DropdownContent.
   
   DropdownContent uses a portal pattern that moves content to document.body,
   which breaks CSS isolation scope attributes.
   
   See: Rating Selection Component Styles (Global) section in app.css */
/* _content/Tourneys/Components/Shared/Modals/ConfirmationModal.razor.rz.scp.css */
.confirmation-content[b-gjplx6wyt6] {
    min-height: 60px;
}

.confirmation-message[b-gjplx6wyt6] {
    margin: 0 0 12px 0;
    font-size: 1rem;
    line-height: 1.5;
    color: var(--bs-body-color);
}

.confirmation-detail[b-gjplx6wyt6] {
    margin: 0;
    font-size: 0.875rem;
    color: var(--bs-secondary-color);
    line-height: 1.4;
}

/* Ensure proper spacing when both messages are present */
.confirmation-message + .confirmation-detail[b-gjplx6wyt6] {
    margin-top: 8px;
}

/* Modal footer button spacing - Bootstrap handles most of this but we can enhance */
[b-gjplx6wyt6] .modal-footer {
    gap: 0.5rem;
}

/* Icon adjustments for better alignment */
[b-gjplx6wyt6] .btn i {
    vertical-align: -0.125em;
}
/* _content/Tourneys/Components/Shared/Modals/EmailPreviewDialog.razor.rz.scp.css */
/* Phone-like modal dimensions - targets this EmailPreviewDialog component */
[b-1aes0fwga3] .modal-dialog {
    max-width: 400px !important;
    width: 90% !important;
    height: 80vh !important;
    margin: 2rem auto !important;
}

[b-1aes0fwga3] .modal-content {
    height: 100% !important;
    display: flex !important;
    flex-direction: column !important;
}

[b-1aes0fwga3] .modal-body {
    flex: 1 !important;
    overflow: hidden !important;
    padding: 0 !important;
}

/* Ensure the email content fills the available space */
[b-1aes0fwga3] .h-100 {
    height: 100% !important;
}

/* Media query for smaller screens */
@media (max-width: 576px) {
    [b-1aes0fwga3] .modal-dialog {
        width: 95% !important;
        max-width: 95% !important;
        height: 85vh !important;
        margin: 1rem auto !important;
    }
}
/* _content/Tourneys/Components/Shared/Navigation/FilterTriggerBadge.razor.rz.scp.css */
/* FilterTriggerBadge Component Styles */
/* Badge-style triggers matching mobile design */

.filter-trigger-badge[b-pb3lhv0ehg] {
    display: inline-block;
    padding: 0.375rem 0.75rem;
    margin: 0.125rem 0.5rem 0.125rem 0.125rem;
    border: 1px solid rgba(255, 255, 255, 0.3);
    border-radius: 6px;
    font-size: 0.9375rem;
    font-weight: 600;
    line-height: 1.2;
    cursor: pointer;
    transition: all 0.2s ease;
    text-decoration: none;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    white-space: nowrap;
    background: rgba(255, 255, 255, 0.9);
    color: #1f2937;
    min-height: 32px;
    vertical-align: baseline;
}

.filter-trigger-badge:hover[b-pb3lhv0ehg],
.filter-trigger-badge:focus[b-pb3lhv0ehg] {
    background: rgba(255, 255, 255, 1);
    border-color: rgba(255, 255, 255, 0.3);
    color: #1f2937;
    transform: translateY(-1px);
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.15);
    outline: none;
}

.filter-trigger-badge:active[b-pb3lhv0ehg] {
    transform: translateY(0);
    background: rgba(255, 255, 255, 0.95);
    color: #1f2937;
}

/* Active state */
.filter-trigger-badge.active[b-pb3lhv0ehg] {
    background: rgba(255, 255, 255, 1);
    border-color: rgba(255, 255, 255, 0.5);
    color: #1f2937;
    font-weight: 700;
}

/* Disabled state */
.filter-trigger-badge:disabled[b-pb3lhv0ehg] {
    opacity: 0.6;
    cursor: not-allowed;
}

.filter-trigger-badge:disabled:hover[b-pb3lhv0ehg] {
    transform: none;
    background: rgba(255, 255, 255, 0.9);
    color: #1f2937;
}

/* Dark mode adjustments - use darker background for contrast */
[data-theme="dark"] .filter-trigger-badge[b-pb3lhv0ehg] {
    background: rgba(255, 255, 255, 0.1);
    border-color: rgba(255, 255, 255, 0.2);
    color: white;
}

[data-theme="dark"] .filter-trigger-badge:hover[b-pb3lhv0ehg],
[data-theme="dark"] .filter-trigger-badge:focus[b-pb3lhv0ehg] {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.3);
    color: white;
}

[data-theme="dark"] .filter-trigger-badge.active[b-pb3lhv0ehg] {
    background: rgba(255, 255, 255, 0.2);
    border-color: rgba(255, 255, 255, 0.4);
    color: white;
}

/* Changed state - indicates filter differs from baseline */
.filter-trigger-badge.changed[b-pb3lhv0ehg] {
    position: relative;
}

.filter-trigger-badge.changed[b-pb3lhv0ehg]::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0.25rem;
    right: 0.25rem;
    height: 4px;
    background-color: #0ea5e9;
    opacity: 1;
    border-radius: 2px;
    transition: all 0.2s ease;
}

/* Adjust underline on hover */
.filter-trigger-badge.changed:hover[b-pb3lhv0ehg]::after {
    background-color: #0284c7;
    opacity: 1;
}

/* Dark mode changed state */
[data-theme="dark"] .filter-trigger-badge.changed[b-pb3lhv0ehg]::after {
    background-color: #0ea5e9;
    opacity: 1;
}

[data-theme="dark"] .filter-trigger-badge.changed:hover[b-pb3lhv0ehg]::after {
    background-color: #38bdf8;
    opacity: 1;
}
/* _content/Tourneys/Components/Shared/Navigation/FilterTriggerButton.razor.rz.scp.css */
/* FilterTriggerButton Component Styles */
/* Note: Chevron animations moved to app.css due to CSS isolation issues */

/* Basic disabled state styling - only what's needed at component level */
.filter-button:disabled[b-1b1kijsh99],
.btn-mobile-hero:disabled[b-1b1kijsh99] {
    opacity: 0.6;
    cursor: not-allowed;
}

.filter-button:disabled:hover[b-1b1kijsh99],
.btn-mobile-hero:disabled:hover[b-1b1kijsh99] {
    transform: none;
}
/* _content/Tourneys/Components/Shared/Navigation/NavBarFilter.razor.rz.scp.css */
/* NavBarFilter Responsive Styles */

/* Fix search-navbar height */
.search-navbar[b-nqdxw4py6w] {
    height: auto;
    min-height: 60px;
    padding: 0.75rem 0 !important;
    display: flex;
    align-items: center;
}

.search-navbar .container[b-nqdxw4py6w] {
    position: relative;
    text-align: center;
}

.search-bar-container[b-nqdxw4py6w] {
    position: relative;
    display: inline-block;
    margin: 0 auto;
}

.search-bar-container[b-nqdxw4py6w]::before {
    content: "";
    position: absolute;
    top: -8px;
    left: -16px;
    right: -16px;
    bottom: -8px;
    background: none;
    backdrop-filter: blur(5px);
    -webkit-backdrop-filter: blur(5px);
    border-radius: 16px;
}

.search-bar-container p[b-nqdxw4py6w] {
    font-size: 1.125rem;
    margin: 0;
    padding: 0;
    position: relative;
}

/* Mobile responsive adjustments */
@media (max-width: 768px) {
    .search-navbar[b-nqdxw4py6w] {
        min-height: 50px;
        padding: 0.5rem 0 !important;
    }

    .search-bar-container p[b-nqdxw4py6w] {
        font-size: 1rem;
        padding: 0.5rem 0;
    }

    .search-bar-container[b-nqdxw4py6w]::before {
        top: -8px;
        left: -15px;
        right: -15px;
        bottom: -8px;
    }
}

@media (max-width: 576px) {
    .search-bar-container p[b-nqdxw4py6w] {
        font-size: 0.9rem;
    }
}

/* Search bar link styles */
.search-bar-link[b-nqdxw4py6w] {
    text-decoration: none;
    color: inherit;
}

.search-bar-link:hover[b-nqdxw4py6w] {
    text-decoration: none;
}

.search-bar-link .underline[b-nqdxw4py6w] {
    text-decoration: underline;
}

.search-navbar[b-nqdxw4py6w] {
    background-color: var(--color-accent);
    font-family: var(--bs-font-family-winner);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    text-align: center;
    padding-top:1rem;
    position: relative;
    overflow: hidden;
}
/* _content/Tourneys/Components/Shared/Navigation/SidebarNav.razor.rz.scp.css */
/* SidebarNav Component Styles */

.sidebar-nav-component[b-m47x1itwzq] {
    padding: 1rem;
    background-color: var(--bs-gray-100);
    border-radius: var(--bs-border-radius-lg);
}

/* Dark mode support */
[data-theme="dark"] .sidebar-nav-component[b-m47x1itwzq] {
    background-color: var(--bs-gray-900);
}

/* Sticky positioning for desktop */
.sidebar-nav-component.sticky-top[b-m47x1itwzq] {
    top: calc(var(--navbar-height) + 1rem);
}

/* Title styling */
.sidebar-title[b-m47x1itwzq] {
    font-size: 1.1rem;
    font-weight: 600;
    margin-bottom: 1rem;
    color: var(--bs-gray-700);
}

[data-theme="dark"] .sidebar-title[b-m47x1itwzq] {
    color: var(--bs-gray-300);
}

/* Nav link styling */
.nav-link[b-m47x1itwzq] {
    margin-bottom: 0.25rem;
    border-radius: var(--bs-border-radius);
    transition: all 0.2s ease;
    color: var(--bs-gray-700);
}

[data-theme="dark"] .nav-link[b-m47x1itwzq] {
    color: var(--bs-gray-300);
}

.nav-link:hover[b-m47x1itwzq] {
    background-color: var(--bs-gray-200);
    color: var(--bs-gray-900);
}

[data-theme="dark"] .nav-link:hover[b-m47x1itwzq] {
    background-color: var(--bs-gray-800);
    color: var(--bs-gray-100);
}

.nav-link.active[b-m47x1itwzq] {
    background-color: var(--bs-primary);
    color: white;
}

.nav-link .nav-label[b-m47x1itwzq] {
    flex: 1;
}

/* Badge styling */
.badge[b-m47x1itwzq] {
    font-size: 0.75rem;
    padding: 0.25rem 0.5rem;
    font-weight: 600;
}

/* Mobile accordion styling */
.accordion-item[b-m47x1itwzq] {
    background-color: transparent;
    border: none;
    margin-bottom: 0.5rem;
}

.accordion-button[b-m47x1itwzq] {
    background-color: var(--bs-gray-100);
    border: 1px solid var(--bs-gray-300);
    border-radius: var(--bs-border-radius);
}

[data-theme="dark"] .accordion-button[b-m47x1itwzq] {
    background-color: var(--bs-gray-800);
    border-color: var(--bs-gray-700);
    color: var(--bs-gray-300);
}

.accordion-button:not(.collapsed)[b-m47x1itwzq] {
    background-color: var(--bs-primary);
    color: white;
    border-color: var(--bs-primary);
}

.accordion-button:not(.collapsed) .badge[b-m47x1itwzq] {
    background-color: rgba(255, 255, 255, 0.2) !important;
    color: white !important;
}

.accordion-button:focus[b-m47x1itwzq] {
    box-shadow: none;
    border-color: var(--bs-primary);
}

.accordion-body[b-m47x1itwzq] {
    background-color: white;
    border: 1px solid var(--bs-gray-300);
    border-top: none;
    border-bottom-left-radius: var(--bs-border-radius);
    border-bottom-right-radius: var(--bs-border-radius);
}

[data-theme="dark"] .accordion-body[b-m47x1itwzq] {
    background-color: var(--bs-gray-900);
    border-color: var(--bs-gray-700);
}

/* Remove accordion chevron since we're using it for navigation */
.accordion-button[b-m47x1itwzq]::after {
    display: none;
}

/* Responsive adjustments */
@media (max-width: 767px) {
    .sidebar-nav-component[b-m47x1itwzq] {
        padding: 0.75rem;
        margin-bottom: 1rem;
    }
    
    .sidebar-nav-component.sticky-top[b-m47x1itwzq] {
        position: static !important;
    }
}
/* _content/Tourneys/Components/Shared/StyledCard.razor.rz.scp.css */
.styled-card[b-l6g7bwciit] {
    margin-bottom: 2rem;
}

.styled-card.featured-card[b-l6g7bwciit] {
    height: 100%;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
}

.styled-card.featured-card .card-body[b-l6g7bwciit] {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 0; /* Remove padding for featured cards */
}

.styled-card .card-subtitle[b-l6g7bwciit] {
    color: var(--color-text-secondary, #6c757d);
}


:deep(.mini-list-item h3)[b-l6g7bwciit] {
    font-size: 1rem !important;
}

/* Responsive image container with fixed aspect ratio */
.styled-card .card-img-top[b-l6g7bwciit] {
    width: 100%;
    height: 200px; /* Fixed height for consistency */
    object-fit: cover; /* Maintains aspect ratio, crops if needed */
    object-position: center; /* Centers the image in the container */
    border-radius: 0;
}

/* Responsive breakpoints for different image heights */
@media (max-width: 576px) {
    .styled-card .card-img-top[b-l6g7bwciit] {
        height: 150px; /* Smaller on mobile */
    }
}

@media (min-width: 992px) {
    .styled-card .card-img-top[b-l6g7bwciit] {
        height: 250px; /* Larger on desktop */
    }
}

/* Optional: Add a subtle loading placeholder */
.styled-card .card-img-top[b-l6g7bwciit] {
    background-color: var(--bs-gray-100, #f8f9fa);
    transition: opacity 0.3s ease;
}

.card-title[b-l6g7bwciit] {
    font-family: var(--bs-font-family-winner);
    font-weight:700;
    font-size:1rem !important;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    margin-bottom: 1rem;
}

.card.styled-card[b-l6g7bwciit] {
    --bs-card-border-radius: 0;
    box-shadow: var(--shadow-md);
    background-color: var(--color-surface);
    color: var(--color-text-primary);
    border-color: var(--card-border);
    border: 1px solid var(--card-border);
}
/* _content/Tourneys/Components/Shared/ThemeSwitcher.razor.rz.scp.css */
.theme-switcher[b-2xksjgc1n8] {
    background: transparent;
    border: 2px solid rgba(255, 255, 255, 0.3);
    border-radius: 50%;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    color: #FFF;
}

@media (max-width: 768px) {
    .theme-switcher[b-2xksjgc1n8] {
        width: 36px;
        height: 36px;
    }
}

.theme-switcher:hover[b-2xksjgc1n8] {
    border-color: rgba(255, 255, 255, 0.5);
    background: rgba(255, 255, 255, 0.1);
    transform: scale(1.05);
}

.theme-switcher:active[b-2xksjgc1n8] {
    transform: scale(0.95);
}

.theme-icon[b-2xksjgc1n8] {
    display: flex;
    align-items: center;
    justify-content: center;
    transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.theme-icon.light[b-2xksjgc1n8] {
    transform: rotate(0deg);
}

.theme-icon.dark[b-2xksjgc1n8] {
    transform: rotate(360deg);
}

/* Ripple effect on click */
.theme-switcher[b-2xksjgc1n8]::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.3);
    transform: scale(0);
    opacity: 0;
    transition: transform 0.5s, opacity 0.5s;
}

.theme-switcher:active[b-2xksjgc1n8]::after {
    transform: scale(2);
    opacity: 0;
    transition: transform 0s, opacity 0.5s;
}

/* Dark mode specific styles */
[data-theme="dark"] .theme-switcher[b-2xksjgc1n8] {
    border-color: rgba(255, 255, 255, 0.2);
}

[data-theme="dark"] .theme-switcher:hover[b-2xksjgc1n8] {
    border-color: rgba(255, 255, 255, 0.4);
    background: rgba(255, 255, 255, 0.05);
}
/* _content/Tourneys/Components/Shared/ToastContainer.razor.rz.scp.css */
.toast-container[b-7i3ltu2flw] {
    pointer-events: none;
}

.toast-container[b-7i3ltu2flw]  .toast {
    pointer-events: auto;
    margin-bottom: 0.75rem;
}

.toast-container[b-7i3ltu2flw]  .toast:last-child {
    margin-bottom: 0;
}
/* _content/Tourneys/Components/Tournaments/Cards/TournamentCard.razor.rz.scp.css */
/* Tournament Card Premium Design */
.tournament-card-premium[b-sldocf4xud] {
    position: relative;
    background: white;
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    display: flex;
    flex-direction: column;
    min-height: 150px;
}

/* Inner wrapper to clip overflow while keeping border visible */
.card-inner-wrapper[b-sldocf4xud] {
    position: relative;
    overflow: hidden;
    border-radius: inherit;  /* Match parent's border radius */
    display: flex;
    flex-direction: column;
    flex: 1;
}

/* Content layout */
.card-content[b-sldocf4xud] {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.card-main[b-sldocf4xud] {
    display: flex;
    padding: 1rem 1.25rem;
    gap: 1rem;
    align-items: stretch;
}

.main-content[b-sldocf4xud] {
    flex: 1;
    min-width: 0;
}

/* Date and location */
.date-location[b-sldocf4xud] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.8125rem;
    color: var(--bs-gray-600);
    margin-bottom: 0.375rem;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    flex-wrap: nowrap;
    min-width: 0;
}

/* Dark mode date-location styles */
:root[data-theme="dark"] .date-location[b-sldocf4xud] {
    color: var(--bs-gray-400);
}

.date-location .separator[b-sldocf4xud] {
    color: var(--bs-gray-500);
    font-weight: 400;
    flex-shrink: 0;
}

:root[data-theme="dark"] .date-location .separator[b-sldocf4xud] {
    color: var(--bs-gray-600);
}

.date-location > span[b-sldocf4xud] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* Date takes priority - never truncate */
.date-location > span:first-child[b-sldocf4xud] {
    flex-shrink: 0;
}

/* City can truncate if needed */
.date-location > span:last-child[b-sldocf4xud] {
    min-width: 0;
    flex-shrink: 1;
}

/* Tournament name */
.tournament-name[b-sldocf4xud] {
    font-weight: 600;
    font-size: 1.1875rem;
    line-height: 1.25;
    margin-bottom: 0;
    color: #0a0c0f;
    letter-spacing: -0.01em;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
}

/* Logo section - fixed dimensions to prevent layout shifts */
.logo-section[b-sldocf4xud] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    align-self: stretch;
    width: 100px;
    height: 70px;
}

.tournament-logo[b-sldocf4xud] {
    max-width: 100px;
    max-height: 70px;
    width: auto;
    height: auto;
    object-fit: contain;
    border-radius: 4px;
    transition: filter 0.3s ease, opacity 0.3s ease;
}

/* Dark mode image adjustments */
[data-theme="dark"] .tournament-logo[b-sldocf4xud] {
    /* Subtle filter to reduce harsh white backgrounds */
    filter: brightness(0.85) contrast(0.95);
    /* Very subtle dark background in case of transparency */
    background-color: rgba(0, 0, 0, 0.05);
    /* Subtle border to contain white edges */
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.05);
}



/* Tennis ball aesthetic for cards without image URLs */
.tennis-ball-overlay[b-sldocf4xud] {
    position: absolute;
    top: -30px;
    right: -30px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: #b8d754;
    opacity: 0.15;
    pointer-events: none;
    overflow: hidden;
}


/* Tennis ball seam lines */
.tennis-ball-overlay[b-sldocf4xud]::before,
.tennis-ball-overlay[b-sldocf4xud]::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    border: 3px solid rgba(255, 255, 255, 0.7);
}

.tennis-ball-overlay[b-sldocf4xud]::before {
    top: -50%;
    left: -20%;
    transform: rotate(-30deg);
}

.tennis-ball-overlay[b-sldocf4xud]::after {
    bottom: -55%;
    right: -20%;
    transform: rotate(-30deg);
}

/* Card footer */
.card-footer[b-sldocf4xud] {
    border-top: 1px solid rgba(0, 0, 0, 0.08);
    padding: 0.75rem 1.25rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
    background: rgba(0, 0, 0, 0.02);
    margin-top: auto;
}

/* Badges */
.badges-row[b-sldocf4xud] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.375rem;
}

.badge-dynamic[b-sldocf4xud] {
    padding: 0.25rem 0.5rem;
    font-size: 0.7rem;
    font-weight: 600;
    border-radius: 0.25rem;
    background: var(--bs-gray-200);
    color: var(--bs-dark);
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.badge-dynamic.primary[b-sldocf4xud] {
    background: var(--bs-dark);
    color: white;
    position: relative;
}

/* Source-specific badge styling */
.badge-dynamic.primary.source-usta[b-sldocf4xud] {
    border-left: 4px solid #3498db;
    padding-left: 0.5rem;
    background: linear-gradient(to right, #1a1a1a 0%, var(--bs-dark) 30%);
}

.badge-dynamic.primary.source-utr[b-sldocf4xud] {
    border-left: 4px solid #01DFCB;
    padding-left: 0.5rem;
}

.badge-dynamic.primary.source-wtn[b-sldocf4xud] {
    border-left: 4px solid #d2394d;
    padding-left: 0.5rem;
}

/* Dark mode badge styles */
:root[data-theme="dark"] .badge-dynamic[b-sldocf4xud] {
    background: rgba(255, 255, 255, 0.06);
    color: var(--bs-gray-300);
    border: none;
}

:root[data-theme="dark"] .badge-dynamic.primary[b-sldocf4xud] {
    background: rgba(0, 0, 0, 0.4);
    color: var(--bs-gray-100);
    border: none;
    border-left: 3px solid;
    font-weight: 700;
}

/* Dark mode source-specific borders */
:root[data-theme="dark"] .badge-dynamic.primary.source-usta[b-sldocf4xud] {
    border-left-color: #1a7bc0;
    padding-left: 0.5rem;
}

:root[data-theme="dark"] .badge-dynamic.primary.source-utr[b-sldocf4xud] {
    border-left-color: #01DFCB;
    padding-left: 0.5rem;
}

:root[data-theme="dark"] .badge-dynamic.primary.source-wtn[b-sldocf4xud] {
    border-left-color: #d2394d;
    padding-left: 0.5rem;
}

/* Registration status */
.registration-status[b-sldocf4xud] {
    display: flex;
    align-items: center;
    gap: 0.25rem;
    font-size: 0.8125rem;
    font-weight: 600;
}

.registration-status .status-icon[b-sldocf4xud] {
    font-size: 0.875rem;
}

.registration-status.open[b-sldocf4xud] {
    color: #22c55e;
}

.registration-status.open .status-text[b-sldocf4xud] {
    text-transform: uppercase;
    letter-spacing: 0.03em;
    font-size: 0.75rem;
}

.registration-status.closing[b-sldocf4xud] {
    color: #f59e0b;
}

.registration-status.closing .status-time[b-sldocf4xud] {
    font-weight: 700;
    margin-left: 0.125rem;
}

.registration-status.closed[b-sldocf4xud] {
    color: #6b7280;
    font-size: 0.75rem;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

/* Utility class for text truncation */
.min-w-0[b-sldocf4xud] {
    min-width: 0;
}

/* Dark mode adjustments */
[data-theme="dark"] .tournament-card-premium[b-sldocf4xud] {
    background: var(--bs-gray-900);
    border-color: var(--bs-gray-700);
}


[data-theme="dark"] .card-footer[b-sldocf4xud] {
    border-top-color: rgba(255, 255, 255, 0.08);
    background: rgba(0, 0, 0, 0.15);
}

[data-theme="dark"] .tournament-name[b-sldocf4xud] {
    color: white;
}


[data-theme="dark"] .tennis-ball-overlay[b-sldocf4xud] {
    background: var(--bs-primary);
    opacity: 0.08;
}


/* Responsive adjustments */
@media (max-width: 768px) {
    .card-main[b-sldocf4xud] {
        padding: 0.875rem;
    }

    .date-location[b-sldocf4xud] {
        gap: 0.375rem;
        font-size: 0.75rem;
        letter-spacing: 0.02em;
    }

    .date-location .separator[b-sldocf4xud] {
        margin: 0 -0.125rem;
    }

    .card-footer[b-sldocf4xud] {
        padding: 0.625rem 0.875rem;
    }

    .logo-section[b-sldocf4xud] {
        width: 90px;
        height: 60px;
    }
    
    .tournament-logo[b-sldocf4xud] {
        max-width: 90px;
        max-height: 60px;
    }

    .tournament-name[b-sldocf4xud] {
        font-size: 1.125rem;
    }

    .badge-dynamic[b-sldocf4xud] {
        font-size: 0.65rem;
        padding: 0.15rem 0.4rem;
    }

    .tennis-ball-overlay[b-sldocf4xud] {
        width: 100px;
        height: 100px;
        top: -20px;
        right: -20px;
    }
}

@media (max-width: 375px) {
    .card-main[b-sldocf4xud] {
        padding: 0.75rem;
    }

    .date-location[b-sldocf4xud] {
        gap: 0.25rem;
        font-size: 0.7rem;
        letter-spacing: 0.01em;
        font-weight: 450;
    }

    .card-footer[b-sldocf4xud] {
        padding: 0.5rem 0.75rem;
    }

    .logo-section[b-sldocf4xud] {
        width: 75px;
        height: 50px;
    }
    
    .tournament-logo[b-sldocf4xud] {
        max-width: 75px;
        max-height: 50px;
    }

    .tournament-name[b-sldocf4xud] {
        font-size: 1rem;
    }

    .badge-dynamic[b-sldocf4xud] {
        font-size: 0.6rem;
        padding: 0.1rem 0.375rem;
    }
}
/* _content/Tourneys/Components/Tournaments/Cards/TournamentCardUltraSmall.razor.rz.scp.css */
.ultra-small-item[b-z4t5zltze4] {
    padding-bottom: 0.5rem;
}

.ultra-small-item a[b-z4t5zltze4] {
    font-family: var(--bs-font-family-fira);
    font-size: 1rem;
    text-decoration: none;
    font-weight: 500;
    line-height: 1.2; /* TODO Review */
    color: var(--bs-heading-color);
}
/* _content/Tourneys/Components/Tournaments/Cards/TournamentFeaturedCard.razor.rz.scp.css */
h3[b-qzawcs0ukt] {
    font-size: 1.5rem;
    font-weight: 600;
    font-family: 'FiraSans', 'Figtree', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
    margin-bottom: 0.75rem;
}

/* Make the featured card fill its container and be fully clickable */
.featured-card[b-qzawcs0ukt] {
    height: 100%;
    width: 100%;
    padding: 1rem;
    box-sizing: border-box;
}
/* _content/Tourneys/Components/Tournaments/Details/TournamentDetailContent.razor.rz.scp.css */
/* ================================================
   Tournament Detail Content Styles
   Clean Bootstrap-based implementation
   ================================================ */

/* Header Section */
.panel-header[b-10bphfgtcp] {
    padding: 0 0 0.5rem 0;
    /* No margin or border - let tabs handle the visual separation */
}

/* Status badges row */
.status-badges-row[b-10bphfgtcp] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* Bootstrap badge overrides for tournament status */
.registration-badge[b-10bphfgtcp] {
    font-size: 0.875rem;
    padding: 0.375rem 0.75rem;
    font-weight: 600;
}

/* In Progress badge with animation */
.badge-in-progress[b-10bphfgtcp] {
    background-color: var(--age-junior);
    animation: pulseInProgress-b-10bphfgtcp 2s ease-in-out infinite;
}

@keyframes pulseInProgress-b-10bphfgtcp {
    0%, 100% {
        box-shadow: 0 0 0 0 rgba(139, 92, 246, 0.4);
    }
    50% {
        box-shadow: 0 0 0 4px rgba(139, 92, 246, 0.2);
    }
}

/* Division section that was missing */
.detail-section[b-10bphfgtcp] {
    padding: 1rem 0;
}

/* Tab content */
.tab-content[b-10bphfgtcp] {
    padding: 1.5rem 0;
}

/* Override card titles in Tournament Detail to use Winner font (toned down) */
.tab-content .card-title[b-10bphfgtcp] {
    font-family: var(--bs-font-family-winner), var(--bs-font-sans-serif) !important;
    font-weight: 400; /* Lighter weight instead of bold */
    text-transform: capitalize; /* Sentence case instead of all caps */
    letter-spacing: -0.01em; /* Tighten spacing */
}

/* NOTE: Quick Actions button styles moved to app.css due to FluentTabPanel CSS isolation */

/* NOTE: Division styles moved to TournamentDivisions.razor.css due to CSS isolation */

/* Event type badge */
.event-type-badge[b-10bphfgtcp] {
    background: var(--bs-primary);
    color: var(--bs-white);
    padding: 0.25rem 0.625rem;
    border-radius: 0.25rem;
    font-size: 0.75rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Rating prefix badge */
.rating-prefix-badge[b-10bphfgtcp] {
    background: var(--bs-dark);
    color: var(--bs-white);
    padding: 0.1875rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* Age division badges */
.age-division-badge[b-10bphfgtcp] {
    padding: 0.125rem 0.375rem;
    border-radius: 0.25rem;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.age-division-badge.junior[b-10bphfgtcp] {
    background: var(--age-junior);
    color: var(--bs-white);
}

.age-division-badge.adult[b-10bphfgtcp] {
    background: var(--age-adult);
    color: var(--bs-white);
}

.age-division-badge.all[b-10bphfgtcp] {
    background: var(--age-all);
    color: var(--bs-dark);
}

/* UTR Details */
.detail-row[b-10bphfgtcp] {
    margin-bottom: 1rem;
}

.detail-label[b-10bphfgtcp] {
    font-weight: 600;
    color: var(--bs-secondary);
    text-transform: uppercase;
    font-size: 0.75rem;
    letter-spacing: 0.05em;
    margin-bottom: 0.5rem;
}

.badge-list[b-10bphfgtcp] {
    display: flex;
    gap: 0.375rem;
    flex-wrap: wrap;
}

/* Debug Section */
.debug-accordion-header[b-10bphfgtcp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--bs-warning);
}

.debug-content[b-10bphfgtcp] {
    max-height: 25rem;
    overflow-y: auto;
    padding: 0.5rem;
    background: var(--bs-gray-100);
    border-radius: 0.25rem;
}

/* Loading State */
.loading-state[b-10bphfgtcp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    justify-content: center;
}

/* No Content State */
.no-content[b-10bphfgtcp] {
    text-align: center;
    padding: 1.5rem;
    color: var(--bs-secondary);
}

/* Timeline overrides for lighter styling */
[b-10bphfgtcp] .timeline-label-title {
    font-weight: normal !important;
    color: var(--bs-body-color) !important;
}

[b-10bphfgtcp] .active .timeline-label-title {
    font-weight: 500 !important;
    color: var(--bs-body-color) !important;
}

[b-10bphfgtcp] .timeline-label-date {
    color: var(--bs-gray-600) !important;
    font-weight: normal !important;
}

[b-10bphfgtcp] .active .timeline-label-date {
    color: var(--bs-gray-600) !important;
    font-weight: normal !important;
}

/* Location section adjustments */
.location-summary[b-10bphfgtcp] {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 1rem;
}

.location-text[b-10bphfgtcp] {
    flex: 1;
}

.map-container[b-10bphfgtcp] {
    height: 250px;
    border-radius: 0.375rem;
    overflow: hidden;
}

/* Map view link styling */
.map-view-link[b-10bphfgtcp] {
    display: inline-flex;
    align-items: center;
    padding: 0.375rem 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
    color: var(--bs-primary);
    text-decoration: none;
    background-color: transparent;
    border: 1px solid var(--bs-primary);
    border-radius: 0.375rem;
    transition: all 0.15s ease-in-out;
}

.map-view-link:hover[b-10bphfgtcp] {
    color: white;
    background-color: var(--bs-primary);
    transform: translateY(-1px);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.map-view-link:active[b-10bphfgtcp] {
    transform: translateY(0);
    box-shadow: none;
}

/* Icon animation on hover */
.map-view-link:hover i[b-10bphfgtcp] {
    transform: translate(1px, -1px);
}

/* Smooth icon transition */
.map-view-link i[b-10bphfgtcp] {
    transition: transform 0.15s ease-in-out;
}

/* Mobile adjustments */
@media (max-width: 576px) {
    .map-view-link[b-10bphfgtcp] {
        font-size: 0.8125rem;
        padding: 0.25rem 0.625rem;
    }
}
/* _content/Tourneys/Components/Tournaments/Details/TournamentDivisions.razor.rz.scp.css */
/* Division section container */
.detail-section[b-mlhd31hjdi] {
    padding: 1rem 0;
}

/* Division Styling */
.division-grid[b-mlhd31hjdi] {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
    position: relative;
}

/* Division column container */
.division-column[b-mlhd31hjdi] {
    position: relative;
}

/* Division rating text */
.division-rating[b-mlhd31hjdi] {
    font-weight: 600;
    display: flex;
    align-items: center;
    gap: 0.25rem;
}

/* Rating prefix badge */
.rating-prefix-badge[b-mlhd31hjdi] {
    background: var(--bs-dark);
    color: var(--bs-white);
    padding: 0.1875rem 0.5rem;
    border-radius: 0.25rem;
    font-size: 0.625rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

/* Visual separator between division columns */
.division-grid > div:not(:last-child)[b-mlhd31hjdi]::after {
    content: '';
    position: absolute;
    right: -0.75rem;
    top: 0;
    bottom: 0;
    width: 1px;
    background: linear-gradient(
        to bottom,
        transparent 0%,
        var(--bs-border-color) 20%,
        var(--bs-border-color) 80%,
        transparent 100%
    );
}

/* Mobile adjustment for division grid */
@media (max-width: 767px) {
    .division-grid[b-mlhd31hjdi] {
        grid-template-columns: 1fr;
        gap: 1rem;
    }
    
    /* Remove separator on mobile */
    .division-grid > div[b-mlhd31hjdi]::after {
        display: none;
    }
}

/* Single division layout */
.division-single[b-mlhd31hjdi] {
    max-width: 600px;
}

/* Division headers - Toned down Winner font */
.division-header-men[b-mlhd31hjdi] {
    font-weight: 600;
    font-size: 1.125rem;
    color: var(--division-mens);
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--division-mens);
    font-family: var(--bs-font-family-winner);
    letter-spacing: -0.01em;
    text-transform: capitalize;
}

.division-header-women[b-mlhd31hjdi] {
    font-weight: 600;
    font-size: 1.125rem;
    color: var(--division-womens);
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--division-womens);
    font-family: var(--bs-font-family-winner);
    letter-spacing: -0.01em;
    text-transform: capitalize;
}

.division-header-mixed[b-mlhd31hjdi] {
    font-weight: 600;
    font-size: 1.125rem;
    color: var(--division-mixed);
    margin-bottom: 0.75rem;
    padding-bottom: 0.5rem;
    border-bottom: 2px solid var(--division-mixed);
    font-family: var(--bs-font-family-winner);
    letter-spacing: -0.01em;
    text-transform: capitalize;
}

/* Division items */
.division-item[b-mlhd31hjdi] {
    padding: 0.625rem 0.75rem;
    background-color: var(--bs-gray-100);
    border-radius: 0.25rem;
    border: 1px solid var(--bs-border-color);
    transition: all 0.2s ease;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.division-item:hover[b-mlhd31hjdi] {
    background-color: var(--bs-body-bg);
    box-shadow: var(--bs-box-shadow-sm);
    transform: translateX(2px);
}

/* Event types within division items */
.event-types[b-mlhd31hjdi] {
    font-size: 0.875rem;
    color: var(--bs-secondary);
    opacity: 0.85;
    margin-left: auto;
    flex-shrink: 0;
}

/* No content state */
.no-content[b-mlhd31hjdi] {
    text-align: center;
    padding: 1.5rem;
    color: var(--bs-secondary);
}
/* _content/Tourneys/Components/Tournaments/Details/TournamentInfoPoints.razor.rz.scp.css */

/* Ensure consistent spacing for the flex row */
.tournament-info-points > .d-flex[b-zpw8s7iv75] {
    margin-bottom: 0.5rem;
}

.is-mini .hide-on-mini[b-zpw8s7iv75] {
    display: none !important;
}
.show-on-supersmall-mobile[b-zpw8s7iv75] { display: none; }
.is-mini .show-on-mini[b-zpw8s7iv75] {
    display: block !important;
}

.is-mini[b-zpw8s7iv75] {
    margin-left: -0.25rem;
}

/* Show/hide gender InfoPoints for mobile/desktop */
@media (max-width: 576px) {
    .hide-on-mobile[b-zpw8s7iv75] { display: none !important; }
    .show-on-mobile[b-zpw8s7iv75] { display: inline-flex !important; }
    .show-on-mobile.level-row[b-zpw8s7iv75] {
        padding-top: 2px;
    }
    /* Reduce flex row spacing on mobile */
    .tournament-info-points > .d-flex[b-zpw8s7iv75] {
        margin-bottom: 0.35rem;
    }
}
@media (min-width: 577px) {
    .hide-on-mobile[b-zpw8s7iv75] { display: inline-flex !important; }
    .show-on-mobile[b-zpw8s7iv75] { display: none !important; }
}

/* Show/hide Singles/Doubles InfoPoints for very small mobile screens (449px breakpoint) */
@media (max-width: 449.98px) {
    .hide-on-supersmall-mobile[b-zpw8s7iv75] { display: none !important; }
    .show-on-supersmall-mobile[b-zpw8s7iv75] { display: inline-flex !important; }
}
@media (min-width: 450px) {
    .hide-on-supersmall-mobile[b-zpw8s7iv75] { display: inline-flex !important; }
    .show-on-supersmall-mobile[b-zpw8s7iv75] { display: none !important; }
}

/* Add margin to desktop-only Level InfoPoint */
@media (min-width: 577px) {
    .tournament-info-points > .hide-on-mobile[b-zpw8s7iv75] {
        margin-bottom: 0;
        padding-bottom: 2px;
    }
}
/* _content/Tourneys/Components/Tournaments/Details/TournamentTimeline.razor.rz.scp.css */
/* Component Styles */
.timeline-container[b-9w1w3rxoy3] {
    position: relative;
    width: 100%;
    padding: 0;
}

/* Progress Line - Horizontal by default */
.timeline-line[b-9w1w3rxoy3] {
    position: absolute;
    left: 0;
    right: 0;
    top: 18px; /* Center of icon (36px/2) without padding */
    height: 2px;
    background-color: var(--card-border);
}

.timeline-progress[b-9w1w3rxoy3] {
    position: absolute;
    left: 0;
    top: 18px;
    height: 2px;
    width: var(--progress-percent);
    background: var(--color-primary);
    border-radius: 1px;
    animation: progressGrow-b-9w1w3rxoy3 1s ease-out;
}

@keyframes progressGrow-b-9w1w3rxoy3 {
    from {
        width: 0;
    }
    to {
        width: var(--progress-percent);
    }
}

@keyframes progressGrowVertical-b-9w1w3rxoy3 {
    from {
        height: 0;
    }
    to {
        height: var(--progress-percent);
    }
}

/* Timeline Items - Horizontal layout */
.timeline-items[b-9w1w3rxoy3] {
    position: relative;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 20px;
}

.timeline-item[b-9w1w3rxoy3] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    text-align: center;
    min-width: 0; /* Allow items to shrink */
}

/* Icon Container */
.timeline-icon[b-9w1w3rxoy3] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: all 0.3s ease;
    flex-shrink: 0;
    margin-bottom: 12px;
}

/* Completed states - use primary blue */
.timeline-icon.completed[b-9w1w3rxoy3] {
    background-color: var(--color-primary);
    box-shadow: 0 2px 4px rgba(0, 136, 206, 0.3);
}

/* Active states - vibrant with animation */
.timeline-icon.active[b-9w1w3rxoy3] {
    background-color: var(--color-surface);
    border: 2px solid var(--color-primary);
    box-shadow: 0 0 0 4px rgba(0, 136, 206, 0.2);
    animation: pulse-b-9w1w3rxoy3 2s ease-in-out infinite;
}

/* Upcoming states - subtle */
.timeline-icon.upcoming[b-9w1w3rxoy3] {
    background-color: var(--color-surface);
    border: 2px solid var(--card-border);
    opacity: 0.7;
}

@keyframes pulse-b-9w1w3rxoy3 {
    0% {
        box-shadow: 0 0 0 2px rgba(0, 136, 206, 0.2);
    }
    50% {
        box-shadow: 0 0 0 6px rgba(0, 136, 206, 0.1);
    }
    100% {
        box-shadow: 0 0 0 2px rgba(0, 136, 206, 0.2);
    }
}

/* Phase-specific colors */
.timeline-icon.icon-trophy.completed[b-9w1w3rxoy3] {
    background-color: var(--color-accent); /* Gold for completed tournament */
    box-shadow: 0 2px 4px rgba(255, 215, 0, 0.4);
}

.timeline-icon svg[b-9w1w3rxoy3] {
    width: 16px;
    height: 16px;
}

/* Icon colors now handled via BootstrapIcon Color attribute */

/* Labels */
.timeline-label[b-9w1w3rxoy3] {
    flex: 1;
    min-width: 0; /* Allow text to wrap */
}

.timeline-label-title[b-9w1w3rxoy3] {
    font-size: 14px;
    font-weight: 500;
    line-height: 1.3;
    margin: 0;
    word-wrap: break-word;
}

.timeline-label-date[b-9w1w3rxoy3] {
    font-size: 13px;
    line-height: 1.3;
    margin: 2px 0 0 0;
    white-space: nowrap;
}

.timeline-label-context[b-9w1w3rxoy3] {
    font-size: 12px;
    line-height: 1.3;
    margin: 4px 0 0 0;
    font-weight: 600;
    color: var(--color-primary);
    background: color-mix(in srgb, var(--color-primary) 10%, var(--color-surface) 90%);
    padding: 2px 8px;
    border-radius: 12px;
    display: inline-block;
    animation: pulse-subtle-b-9w1w3rxoy3 2s ease-in-out infinite;
}

@keyframes pulse-subtle-b-9w1w3rxoy3 {
    0%, 100% {
        opacity: 1;
    }
    50% {
        opacity: 0.8;
    }
}

.completed .timeline-label-title[b-9w1w3rxoy3] {
    color: var(--color-text-primary);
    font-weight: 600;
}

.active .timeline-label-title[b-9w1w3rxoy3] {
    color: var(--color-primary);
    font-weight: 700;
    letter-spacing: -0.02em;
}

.upcoming .timeline-label-title[b-9w1w3rxoy3] {
    color: var(--color-text-secondary);
}

.completed .timeline-label-date[b-9w1w3rxoy3] {
    color: var(--color-text-secondary);
    font-weight: 500;
    opacity: 0.7;
}

.active .timeline-label-date[b-9w1w3rxoy3] {
    color: var(--color-primary);
    font-weight: 600;
}

.upcoming .timeline-label-date[b-9w1w3rxoy3] {
    color: var(--color-text-secondary);
    opacity: 0.8;
}

/* Mobile styles - Keep horizontal layout but adjust spacing */
@media (max-width: 767px) {
    .timeline-items[b-9w1w3rxoy3] {
        gap: 5px; /* Reduce gap between items */
    }

    .timeline-icon[b-9w1w3rxoy3] {
        width: 32px;
        height: 32px;
        margin-bottom: 8px;
    }

    .timeline-icon svg[b-9w1w3rxoy3] {
        width: 14px;
        height: 14px;
    }

    .timeline-label-title[b-9w1w3rxoy3] {
        font-size: 12px;
        line-height: 1.2;
        /* Allow multi-line text for better space usage */
        white-space: pre-line;
    }

    .timeline-label-date[b-9w1w3rxoy3] {
        font-size: 11px;
        margin-top: 1px;
    }

    .timeline-label-context[b-9w1w3rxoy3] {
        font-size: 11px;
        padding: 1px 6px;
        margin-top: 2px;
    }

    /* Adjust progress line position for smaller icons */
    .timeline-line[b-9w1w3rxoy3] {
        top: 16px; /* Center of 32px icon without padding */
    }

    .timeline-progress[b-9w1w3rxoy3] {
        top: 16px;
    }
}

/* Tablet adjustments */
@media (min-width: 768px) and (max-width: 1023px) {
    .timeline-items[b-9w1w3rxoy3] {
        gap: 10px;
    }

    .timeline-label-title[b-9w1w3rxoy3] {
        font-size: 13px;
    }

    .timeline-label-date[b-9w1w3rxoy3] {
        font-size: 12px;
    }
}
/* _content/Tourneys/Components/Tournaments/Filters/AdvancedFiltersPanel.razor.rz.scp.css */

.advanced-filters-content[b-xvvcgtti5s] {
    /* Let the Panel component handle scrolling */
}

.filter-section[b-xvvcgtti5s] {
    margin-bottom: 1.5rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid var(--bs-border-color);
}

.filter-section:last-child[b-xvvcgtti5s] {
    border-bottom: none;
}

.filter-option[b-xvvcgtti5s] {
    margin-bottom: 0.75rem;
}

.filter-option:last-child[b-xvvcgtti5s] {
    margin-bottom: 0;
}

.filter-option-content[b-xvvcgtti5s] {
    margin-left: 0.375rem; /* Slight indent from checkbox */
}

.filter-option-header[b-xvvcgtti5s] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 500;
}

.filter-option-header i[b-xvvcgtti5s] {
    font-size: 1rem;
}

.filter-option-description[b-xvvcgtti5s] {
    font-size: 0.875rem;
    color: var(--bs-secondary);
    margin-top: 0.25rem;
    line-height: 1.4;
}

/* Form check customization for better spacing */
.form-check[b-xvvcgtti5s] {
    padding-left: 1.5rem;
}

.form-check-input[b-xvvcgtti5s] {
    margin-top: 0.25rem;
}

.form-check-label[b-xvvcgtti5s] {
    cursor: pointer;
    user-select: none;
    width: 100%;
}

/* Alert customization for result count */
.alert[b-xvvcgtti5s] {
    margin-bottom: 0;
}

/* Dark mode support using CSS variables */
[data-theme="dark"] .filter-option-description[b-xvvcgtti5s] {
    color: var(--bs-secondary);
    opacity: 0.8;
}

[data-theme="dark"] .filter-section[b-xvvcgtti5s] {
    border-bottom-color: rgba(255, 255, 255, 0.1);
}

/* Date Range Timing Control Styles */
.timing-control-header[b-xvvcgtti5s] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: 500;
    margin-bottom: 0.75rem;
    color: var(--bs-body-color);
}

.timing-control-header i[b-xvvcgtti5s] {
    font-size: 1rem;
    /* Use same color as other filter option icons */
}

.date-range-timing-control .date-range-container[b-xvvcgtti5s] {
    /* Align input with checkbox/radio labels */
    margin-left: 1.875rem; /* Same as .form-check padding + .filter-option-content margin */
    margin-right: 1rem;
}

.date-range-timing-control .form-text[b-xvvcgtti5s] {
    margin-top: 0.5rem;
    margin-left: 0 !important;
    font-size: 0.875rem;
    color: var(--bs-secondary);
    line-height: 1.4;
    /* Align help text with checkbox/radio labels */
    margin-left: 1.875rem;
}

/* Dark mode support for timing control */
[data-theme="dark"] .date-range-timing-control[b-xvvcgtti5s] {
    border-top-color: rgba(255, 255, 255, 0.1);
}

/* Legacy styles for standalone date range section (keep for compatibility) */
.date-range-container .form-text[b-xvvcgtti5s] {
    margin-top: 0.5rem;
    font-size: 0.875rem;
    display: inline-block;
}

/* Override BlazorDateRangePicker default styles to match our Bootstrap theme */
[b-xvvcgtti5s] .daterangepicker {
    border: 1px solid var(--bs-border-color);
    border-radius: var(--bs-border-radius);
    box-shadow: var(--bs-box-shadow);
    font-family: var(--bs-font-sans-serif);
    z-index: 9999 !important;
    /* Default width for ranges dropdown - let it size naturally */
    width: auto !important;
}

/* Wider width when showing calendars */
[b-xvvcgtti5s] .daterangepicker.show-calendar {
    min-width: 500px !important;
    width: 500px !important;
}

/* Desktop-only: Force dropdown to break out of container */
@media (min-width: 768px) {
    [b-xvvcgtti5s] .daterangepicker {
        position: fixed !important;
    }
    
    /* Add spacing from screen edge and right-align for calendar mode */
    [b-xvvcgtti5s] .daterangepicker.show-calendar {
        margin-right: 16px !important;
        /* Shift left so right edge aligns with input right edge */
        transform: translateX(-280px) !important;
    }
}

/* Reposition the arrow to point up from the right side */
[b-xvvcgtti5s] .daterangepicker:before {
    left: auto !important;
    right: 50px !important;
}

[b-xvvcgtti5s] .daterangepicker:after {
    left: auto !important;
    right: 50px !important;
}

[b-xvvcgtti5s] .daterangepicker .calendar-table {
    background: var(--bs-body-bg);
    color: var(--bs-body-color);
}

[b-xvvcgtti5s] .daterangepicker td.active,
[b-xvvcgtti5s] .daterangepicker td.active:hover {
    background-color: var(--bs-primary);
    border-color: var(--bs-primary);
}

[b-xvvcgtti5s] .daterangepicker td.in-range {
    background-color: rgba(var(--bs-primary-rgb), 0.1);
}

[b-xvvcgtti5s] .daterangepicker .ranges li {
    color: var(--bs-body-color);
    padding: 0.5rem 1rem;
    border-radius: var(--bs-border-radius-sm);
}

[b-xvvcgtti5s] .daterangepicker .ranges li:hover {
    background-color: var(--bs-secondary-bg);
}

[b-xvvcgtti5s] .daterangepicker .ranges li.active {
    background-color: var(--bs-primary);
    color: var(--bs-white);
}

/* Hide the ranges panel when in popup mode (not the initial dropdown) */
[b-xvvcgtti5s] .daterangepicker.show-calendar .ranges {
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-height: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    margin: 0 !important;
    flex: none !important;
}

/* Force calendars to display only when in custom calendar mode */
[b-xvvcgtti5s] .daterangepicker.show-calendar .drp-calendar {
    display: block !important;
}

/* Force buttons to display only when in custom calendar mode */
[b-xvvcgtti5s] .daterangepicker.show-calendar .drp-buttons {
    display: block !important;
}

[b-xvvcgtti5s] .daterangepicker .drp-buttons .btn {
    @extend .btn;
    @extend .btn-sm;
}

[b-xvvcgtti5s] .daterangepicker .drp-buttons .btn.btn-success {
    @extend .btn-primary;
}

/* Dark mode support for date range picker */
[data-bs-theme="dark"][b-xvvcgtti5s]  .daterangepicker {
    background-color: var(--bs-dark);
    border-color: var(--bs-border-color-translucent);
}

[data-bs-theme="dark"][b-xvvcgtti5s]  .daterangepicker .calendar-table th,
[data-bs-theme="dark"][b-xvvcgtti5s]  .daterangepicker .calendar-table td {
    color: var(--bs-body-color);
}

/* Mobile adjustments */
@media (max-width: 767px) {
    .filter-section[b-xvvcgtti5s] {
        margin-bottom: 1.25rem;
        padding-bottom: 1.25rem;
    }

    .filter-option[b-xvvcgtti5s] {
        margin-bottom: 1rem;
    }

    /* Larger touch targets on mobile */
    .form-check-input[b-xvvcgtti5s] {
        width: 1.25em;
        height: 1.25em;
    }
    
    /* On mobile, reduce daterangepicker width and allow stacking */
    [b-xvvcgtti5s] .daterangepicker,
    [b-xvvcgtti5s] .daterangepicker.show-calendar {
        min-width: 260px !important;
        width: 260px !important;
        max-width: 260px !important;
        /* Add spacing from screen edge */
        margin-right: 16px !important;
        /* Move up more to prevent cutoff on iPhone */
        transform: translateY(-20px) !important;
    }
}
/* _content/Tourneys/Components/Tournaments/Filters/NaturalFilterBar.razor.rz.scp.css */
/* ================================================
   Natural Language Filter Bar - Unified Design
   ================================================ */

/* Main Filter Bar Wrapper - simplified */
.natural-filter-bar-wrapper[b-e1dodemjya] {
    /* Minimal wrapper - no special positioning or background properties needed */
}

/* New User Education Styles */
.attention-glow[b-e1dodemjya] {
    animation: attentionGlow-b-e1dodemjya 3s ease-in-out;
}

@keyframes attentionGlow-b-e1dodemjya {
    0%, 100% {
        box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    }
    25% {
        box-shadow: 0 0 20px rgba(59, 130, 246, 0.4);
    }
    75% {
        box-shadow: 0 0 20px rgba(59, 130, 246, 0.4);
    }
}

/* Saved Lists Help Modal Styles */
.saved-lists-help-content .help-section[b-e1dodemjya] {
    margin-bottom: 1.5rem;
}

.saved-lists-help-content .help-section:last-child[b-e1dodemjya] {
    margin-bottom: 0;
}

.saved-lists-help-content h5[b-e1dodemjya] {
    font-size: 1.1rem;
    margin-bottom: 0.75rem;
    font-weight: 600;
}

.saved-lists-help-content .help-list[b-e1dodemjya] {
    padding-left: 1rem;
    margin-bottom: 0;
}

.saved-lists-help-content .help-list li[b-e1dodemjya] {
    margin-bottom: 0.5rem;
}

.saved-lists-help-content .current-list-info[b-e1dodemjya] {
    background: #f8f9fa;
    padding: 1rem;
    border-radius: 8px;
    border-left: 4px solid var(--bs-primary);
}

.saved-lists-help-content .new-user-highlight-section[b-e1dodemjya] {
    background: #e7f3ff;
    padding: 1rem;
    border-radius: 8px;
    border-left: 4px solid #0ea5e9;
}

/* No homepage-specific overrides needed - both pages use same styling */

/* Dark mode styles for both modes */
[data-theme="dark"] .filter-bar-card[b-e1dodemjya] {
    background: linear-gradient(135deg, #d97706 0%, #b45309 100%);
}

[data-theme="dark"] .search-go-btn[b-e1dodemjya] {
    background: #374151;
    color: white;
}

[data-theme="dark"] .search-go-btn:hover[b-e1dodemjya] {
    background: #4b5563;
    color: white;
    box-shadow: 0 8px 25px rgba(55, 65, 81, 0.3);
}

[data-theme="dark"] .filter-bar-header h3[b-e1dodemjya] {
    color: white;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3);
}

[data-theme="dark"] .filter-bar-header i[b-e1dodemjya] {
    color: white;
}

[data-theme="dark"] .nl-static[b-e1dodemjya] {
    color: white;
}

[data-theme="dark"] .floating-caption[b-e1dodemjya] {
    color: white;
}

[data-theme="dark"] .filter-bar-header[b-e1dodemjya]::before,
[data-theme="dark"] .filter-bar-header[b-e1dodemjya]::after {
    background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.2) 50%, transparent 100%);
}

/* Dark mode support for new user education */
[data-bs-theme="dark"] .attention-glow[b-e1dodemjya] {
    animation: attentionGlowDark-b-e1dodemjya 3s ease-in-out;
}

@keyframes attentionGlowDark-b-e1dodemjya {
    0%, 100% {
        box-shadow: 0 2px 4px rgba(255, 255, 255, 0.1);
    }
    25% {
        box-shadow: 0 0 20px rgba(96, 165, 250, 0.5);
    }
    75% {
        box-shadow: 0 0 20px rgba(96, 165, 250, 0.5);
    }
}

/* Dark mode support for help modal */
[data-bs-theme="dark"] .saved-lists-help-content .current-list-info[b-e1dodemjya] {
    background: var(--bs-gray-900);
    border-left-color: var(--bs-primary);
}

[data-bs-theme="dark"] .saved-lists-help-content .new-user-highlight-section[b-e1dodemjya] {
    background: #0c2340;
    border-left-color: #0ea5e9;
}

/* Mobile responsive styles - hide header lines on mobile for both modes */
@media (max-width: 768px) {
    .filter-bar-header[b-e1dodemjya]::before,
    .filter-bar-header[b-e1dodemjya]::after {
        display: none;
    }

    /* Add underline decoration on mobile instead of side lines */
    .filter-bar-header[b-e1dodemjya] {
        position: relative;
        padding-bottom: 0.5rem;
    }

    .filter-bar-header[b-e1dodemjya]::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 350px;
        height: 2px;
        background: linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.3) 20%, rgba(0,0,0,0.3) 80%, transparent 100%);
        border-radius: 1px;
        display: block !important; /* Override the display: none from above */
    }

    /* Dark mode underline on mobile */
    [data-theme="dark"] .filter-bar-header[b-e1dodemjya]::after {
        background: linear-gradient(90deg, transparent 0%, rgba(255,255,255,0.4) 20%, rgba(255,255,255,0.4) 80%, transparent 100%);
    }
}

/* Legacy mobile responsive wrapper removed - both pages now use unified design */

/* Natural Language Filter Design - unified for both modes */
.filter-bar-card[b-e1dodemjya] {
    background: linear-gradient(135deg, #fbbf24 0%, #f59e0b 100%);
    border-radius: 4px;
    box-shadow: var(--shadow-xl-ring-offset-shadow,0 0 #0000),var(--shadow-xl-ring-shadow,0 0 #0000),var(--shadow-xl);
    padding: 1.5rem 2rem;
    text-align: center;
    width: 100%;
    margin: 0;
    position: relative;
    overflow: visible; /* Changed from hidden to allow dropdowns to extend outside */
    transition: box-shadow 0.3s ease;
}

.filter-bar-card[b-e1dodemjya]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-image:
        radial-gradient(circle at 20% 50%, rgba(255,255,255,0.1) 0%, transparent 50%),
        radial-gradient(circle at 80% 50%, rgba(255,255,255,0.1) 0%, transparent 50%);
}

.filter-bar-card:hover[b-e1dodemjya] {
    box-shadow: var(--card-hover-shadow);
}

/* All content needs z-index to appear above the gradient overlay */
.filter-bar-header[b-e1dodemjya],
.filter-natural-language[b-e1dodemjya] {
    position: relative;
    z-index: 1;
}

.filter-bar-header[b-e1dodemjya] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.75rem;
    margin-bottom: 1rem;
}

.filter-bar-header[b-e1dodemjya]::before,
.filter-bar-header[b-e1dodemjya]::after {
    content: '';
    flex: 1;
    height: 1px;
    background: linear-gradient(90deg, transparent 0%, rgba(0,0,0,0.2) 50%, transparent 100%);
}

.filter-bar-header i[b-e1dodemjya] {
    font-size: 0.875rem;
    color: #1f2937;
    opacity: 0.9;
    vertical-align: baseline;
    transform: translateY(1px);
}

.filter-bar-header h3[b-e1dodemjya] {
    font-size: 1rem;
    font-weight: 700;
    margin: 0;
    color: #1f2937;
    text-transform: uppercase;
    text-shadow: 0 1px 2px rgba(0,0,0,0.1);
    font-family: var(--bs-font-family-sport);
    letter-spacing: 0.75px;
}

.filter-natural-language[b-e1dodemjya] {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 0.75rem;
    font-size: 1.125rem;
    line-height: 1.5;
}

.nl-static[b-e1dodemjya] {
    color: #1f2937;
    font-weight: 500;
    white-space: nowrap;
}

/* Search/PLAY Button - Refined dark design with solid gold text */
.search-go-btn[b-e1dodemjya] {
    background: linear-gradient(135deg, #1f2937 0%, #111827 100%);
    border: 1px solid rgba(255, 255, 255, 0.25);
    color: #fbbf24;
    padding: 0.5rem 1rem;
    border-radius: 8px;
    font-weight: 700;
    font-size: 0.9375rem;
    letter-spacing: 0.5px;
    transition: all 0.25s ease;
    white-space: nowrap;
    text-transform: uppercase;
    box-shadow:
        0 4px 12px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
    position: relative;
}

.search-go-btn:hover[b-e1dodemjya] {
    background: linear-gradient(135deg, #374151 0%, #1f2937 100%);
    border-color: rgba(255, 255, 255, 0.4);
    color: #f59e0b;
    transform: translateY(-2px);
    box-shadow:
        0 6px 18px rgba(0, 0, 0, 0.3),
        inset 0 1px 0 rgba(255, 255, 255, 0.15);
}

.search-go-btn:active[b-e1dodemjya] {
    transform: translateY(-1px);
    box-shadow:
        0 3px 8px rgba(0, 0, 0, 0.25),
        inset 0 1px 0 rgba(255, 255, 255, 0.1);
}

/* Mobile Responsive */
@media (max-width: 767px) {
    .filter-bar-card[b-e1dodemjya] {
        border-radius: 0;
    }

    .filter-bar-header h3[b-e1dodemjya] {
        font-size: 1.125rem;
    }

    .filter-natural-language[b-e1dodemjya] {
        font-size: 1rem;
        gap: 0.5rem;
        text-align: center;
    }

    .search-go-btn[b-e1dodemjya] {
        padding: 0.45rem 0.875rem;
        font-size: 0.875rem;
        margin-top: 0.5rem;
    }

    .nl-static[b-e1dodemjya] {
        font-size: 0.95rem;
    }
    
    /* Option 6 mobile responsiveness */
    .inline-floating-actions[b-e1dodemjya] {
        gap: 1.5rem;
        flex-direction: row;
        align-items: center;
        margin-top: 1.5rem;
        justify-content: center;
    }
    
    .btn-floating-inline[b-e1dodemjya] {
        width: 1.625rem;
        height: 1.625rem;
        font-size: 0.6875rem;
    }
    
    .floating-caption[b-e1dodemjya] {
        font-size: 0.875rem;
    }
    
    .floating-action-item[b-e1dodemjya] {
        gap: 0.5rem;
        padding: 0;
        background: none;
        border: none;
    }
}

/* Ensure dropdowns work within the new layout */
.filter-natural-language .custom-dropdown[b-e1dodemjya] {
    position: relative;
    display: inline-block;
}

/* FilterTriggerBadge styling moved to app.css to overcome CSS isolation */

/* Tennis court SVG background */
.court-lines[b-e1dodemjya] {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    opacity: 0.2; /* Subtle decorative effect */
    mix-blend-mode: multiply;
}

/* Dark mode court lines - reduce opacity */
[data-theme="dark"] .court-lines[b-e1dodemjya] {
    opacity: 0.15;
    mix-blend-mode: screen;
}


/* Legacy styles removed - now using filter-bar-natural design */

/* ================================================
   Advanced Filters & Actions - Custom Styling
   ================================================ */

.advanced-filters-link[b-e1dodemjya] {
    font-weight: 500;
    font-size: 0.9375rem;
    line-height: 1.5rem;
    color: #495057;
    background-color: rgba(0, 0, 0, 0.02);
    border: 1px solid #ced4da;
    padding: 8px 18px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 5px;
    min-width: 150px;
    justify-content: center;
}

.advanced-filters-link:hover[b-e1dodemjya] {
    color: #495057;
    background: rgba(0, 136, 206, 0.08);
    border-color: rgba(0, 136, 206, 0.3);
}

/* Dark mode styles for More Filters button */
[data-theme="dark"] .advanced-filters-link[b-e1dodemjya] {
    color: var(--bs-gray-300);
    background-color: rgba(255, 255, 255, 0.03);
    border-color: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] .advanced-filters-link:hover[b-e1dodemjya] {
    color: var(--bs-gray-100);
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.25);
}

.advanced-filters-link.active[b-e1dodemjya] {
    color: #495057;
    border-color: var(--accent-fill-rest);
    background: rgba(0, 136, 206, 0.08);
}

[data-theme="dark"] .advanced-filters-link.active[b-e1dodemjya] {
    color: var(--bs-gray-100);
    border-color: rgba(0, 136, 206, 0.5);
    background: rgba(0, 136, 206, 0.15);
}

.advanced-filters-active[b-e1dodemjya] {
    display: inline-flex;
    align-items: stretch;
    white-space: nowrap;
    flex-shrink: 0;
}

.advanced-filters-active .advanced-filters-link[b-e1dodemjya] {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border-right: none;
}

.clear-advanced-link[b-e1dodemjya] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(0, 136, 206, 0.08);
    border: 1px solid var(--accent-fill-rest);
    border-left: none;
    color: var(--accent-fill-rest);
    cursor: pointer;
    padding: 8px 8px;
    transition: all 0.2s ease;
    border-radius: 0 5px 5px 0;
    height: auto;
    min-height: 100%;
}

.clear-advanced-link:hover[b-e1dodemjya] {
    background: var(--accent-fill-rest);
    color: white;
}

/* Share filters link */
.share-filters-link[b-e1dodemjya] {
    font-weight: 500;
    font-size: 0.9375rem;
    line-height: 1.5rem;
    color: #495057;
    background-color: rgba(0, 0, 0, 0.02);
    border: 1px solid #ced4da;
    padding: 8px 18px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    text-decoration: none;
    transition: all 0.2s ease;
    border-radius: 5px;
}

.share-filters-link:hover[b-e1dodemjya] {
    color: #495057;
    background: rgba(0, 136, 206, 0.08);
    border-color: rgba(0, 136, 206, 0.3);
}

/* Dark mode styles for Share button */
[data-theme="dark"] .share-filters-link[b-e1dodemjya] {
    color: var(--bs-gray-300);
    background-color: rgba(255, 255, 255, 0.03);
    border-color: rgba(255, 255, 255, 0.15);
}

[data-theme="dark"] .share-filters-link:hover[b-e1dodemjya] {
    color: var(--bs-gray-100);
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.25);
}

/* Mobile */
@media (max-width: 768px) {
    /* Button adjustments for mobile - better balance with text */
    .advanced-filters-link[b-e1dodemjya],
    .share-filters-link[b-e1dodemjya] {
        font-size: 0.875rem; /* 14px - slightly smaller text */
        padding: 10px 16px; /* Maintains 44px+ touch target height */
        min-width: 120px; /* Slightly narrower */
    }

    /* Reduce icon size to match */
    .advanced-filters-link i[b-e1dodemjya],
    .share-filters-link i[b-e1dodemjya],
    .advanced-filters-link svg[b-e1dodemjya],
    .share-filters-link svg[b-e1dodemjya] {
        font-size: 0.875rem;
        width: 0.875rem;
        height: 0.875rem;
    }
}


/* ================================================
   List Management Bar - Essential Styles
   ================================================ */

.list-management-bar[b-e1dodemjya] {
    background: rgba(var(--color-primary-rgb, 16, 185, 129), 0.05);
    border: 1px solid rgba(var(--color-primary-rgb, 16, 185, 129), 0.15);
    overflow: hidden; /* Prevent content from pushing outside */
}

[data-theme="dark"] .list-management-bar[b-e1dodemjya] {
    background: rgba(var(--color-primary-rgb, 16, 185, 129), 0.1);
    border-color: rgba(var(--color-primary-rgb, 16, 185, 129), 0.25);
}

/* Unsaved changes state styling */
.unsaved-changes-message[b-e1dodemjya] {
    line-height: 1.2; /* Reduce line height to minimize spacing */
}

.unsaved-text[b-e1dodemjya] {
    font-size: 0.875rem; /* 14px - smaller text */
}

/* Add small gap between icon and text */
.unsaved-changes-message i[b-e1dodemjya] {
    margin-right: 0.25rem;
}

/* Mobile: Reduced padding and grid layout */
@media (max-width: 768px) {
    .list-management-bar[b-e1dodemjya] {
        padding: 0.75rem !important; /* Bootstrap override - reduce from 1rem */
    }

    /* Use CSS Grid for better control on mobile - target specific state divs */
    .list-management-bar > .d-flex[b-e1dodemjya] {
        display: grid !important;
        grid-template-columns: 1fr auto;
        column-gap: 0.5rem;
        row-gap: 0 !important; /* Explicitly no vertical gap */
        align-items: center;
    }

    /* First column spans full width */
    .list-management-bar > .d-flex > div:first-child[b-e1dodemjya] {
        grid-column: 1;
        overflow: hidden;
    }

    /* Remove gap from inner flex container with icon on mobile */
    .list-management-bar > .d-flex > div.d-flex.gap-2[b-e1dodemjya] {
        gap: 0 !important; /* Reduce gap between icon and text */
    }

    /* Button in second column */
    .list-management-bar > .d-flex > button[b-e1dodemjya] {
        grid-column: 2;
    }

    /* Smaller button on mobile */
    .list-management-bar .btn-sm[b-e1dodemjya] {
        padding: 0.25rem 0.75rem;
        font-size: 0.8125rem; /* 13px */
        white-space: nowrap;
    }

    /* Force block display for list name on mobile */
    .list-name[b-e1dodemjya] {
        display: block !important;
    }

}

/* List status responsive display */
.list-status-content[b-e1dodemjya] {
    min-width: 0; /* Allow text truncation */
    flex: 1 1 0; /* Grow and shrink, with 0 basis */
}

.list-status-label[b-e1dodemjya] {
    display: block;
    font-size: 10px;
    font-weight: 600;
    color: var(--color-text-secondary);
    text-transform: uppercase;
    letter-spacing: 0.5px;
    line-height: 1.2;
    margin-bottom: 2px;
}

.list-name[b-e1dodemjya] {
    font-weight: 600;
    color: var(--color-text-primary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: inline-block; /* Use inline-block for better width handling */
    font-size: 14px; /* Reduced from default */
    width: 100%; /* Force full width to enable truncation */
    min-width: 0; /* Allow shrinking */
    box-sizing: border-box; /* Include padding in width calculation */
}

/* Desktop: inline display */
@media (min-width: 769px) {
    .list-name[b-e1dodemjya] {
        display: inline;
        font-weight: normal;
        font-size: inherit; /* Use parent font size on desktop */
    }

    .list-status-content[b-e1dodemjya] {
        max-width: none; /* No max-width restriction on desktop */
    }

    .list-management-bar[b-e1dodemjya] {
        width: 75%;
    }
}


/* ================================================
   List Dropdown Styles - Extracted from inline styles
   ================================================ */

/* List item container with icon and text */
.list-item-content[b-e1dodemjya] {
    display: flex;
    align-items: center;
    gap: 8px;
}

/* Clear selection option styling */
.list-clear-option[b-e1dodemjya] {
    font-style: italic;
    color: var(--neutral-foreground-hint);
}

/* Dropdown divider line */
.dropdown-divider[b-e1dodemjya] {
    height: 1px;
    background: var(--neutral-stroke-divider-rest);
    margin: 8px 16px;
}

/* Edit list option with accent color */
.list-edit-option[b-e1dodemjya] {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--accent-fill-rest);
}

/* ================================================
   Guest CTA - Call to Action for unauthenticated users
   ================================================ */

.guest-cta[b-e1dodemjya] {
    background: rgba(255, 215, 0, 0.35); /* Using direct rgba for transparency control */
    border: none;
    border-radius: var(--radius-medium);
    padding: 12px 20px;
    margin: 16px auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-size: 0.9375rem;
    color: #7a5600;
    animation: fadeIn-b-e1dodemjya 0.3s ease-out;
    width: 75%;
    max-width: 500px;
    box-shadow: 0 2px 10px rgba(255, 215, 0, 0.25);
}

/* Dark mode version */
[data-theme="dark"] .guest-cta[b-e1dodemjya] {
    background: rgba(255, 215, 0, 0.20);
    color: var(--color-accent);
    box-shadow: 0 2px 10px rgba(255, 215, 0, 0.2);
}

.guest-cta .sign-in-link[b-e1dodemjya] {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
}

.guest-cta .sign-in-link:hover[b-e1dodemjya] {
    text-decoration: none;
}

/* Mobile: Full width and compact text */
@media (max-width: 768px) {
    .guest-cta[b-e1dodemjya] {
        width: calc(100% - 2rem);
        max-width: none;
        padding: 10px 12px;
        font-size: 0.875rem;
        gap: 6px;
        margin-left: 1rem;
        margin-right: 1rem;
    }

    .guest-cta i[b-e1dodemjya] {
        font-size: 0.875rem;
    }
}

/* Fade in animation */
@keyframes fadeIn-b-e1dodemjya {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ================================================
   Legacy Styles - To be migrated or removed
   ================================================ */

/* Rating picker wrapper - keep until rating picker is fully migrated */
.rating-picker-wrapper .desktop-trigger[b-e1dodemjya] {
    display: inline-block;
}

@media (min-width: 769px) {
    .rating-picker-wrapper .mobile-trigger[b-e1dodemjya] {
        display: none;
    }
}

@media (max-width: 768px) {
    .rating-picker-wrapper .desktop-trigger[b-e1dodemjya] {
        display: none;
    }
}

/* ================================================
   Success Toast Notification
   ================================================ */
.success-toast[b-e1dodemjya] {
    position: fixed;
    top: 20px;
    right: 20px;
    background: var(--bs-success, #198754);
    color: white;
    padding: 12px 20px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    gap: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    z-index: 1050;
    animation: slideIn-b-e1dodemjya 0.3s ease-out forwards;
}

@keyframes slideIn-b-e1dodemjya {
    from {
        transform: translateX(100%);
        opacity: 0;
    }
    to {
        transform: translateX(0);
        opacity: 1;
    }
}

/* Mobile adjustments for toast */
@media (max-width: 768px) {
    .success-toast[b-e1dodemjya] {
        right: 10px;
        left: 10px;
        max-width: calc(100% - 20px);
    }
}

/* ================================================
   Enhanced List Management States
   ================================================ */

/* Add visual distinction for unsaved changes state */
.list-management-bar.unsaved-changes-state[b-e1dodemjya] {
    background-color: rgba(255, 193, 7, 0.08) !important; /* Subtle warning background - override default */
    border-color: rgba(255, 193, 7, 0.3) !important;
}

/* Dark mode adjustments for unsaved state */
[data-theme="dark"] .list-management-bar.unsaved-changes-state[b-e1dodemjya] {
    background-color: rgba(255, 193, 7, 0.12) !important;
    border-color: rgba(255, 193, 7, 0.4) !important;
}

/* 3-column grid layout for unsaved changes */
.unsaved-changes-grid[b-e1dodemjya] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 0.75rem;
    align-items: center;
}

.unsaved-changes-icon[b-e1dodemjya] {
    display: flex;
    align-items: center;
}

.unsaved-changes-message[b-e1dodemjya] {
    min-width: 0; /* Allow text to wrap */
}

.unsaved-changes-actions[b-e1dodemjya] {
    display: flex;
    justify-content: flex-end;
}

/* Discard link styling */
.discard-link[b-e1dodemjya] {
    color: var(--bs-gray-600);
    text-decoration: underline;
    font-weight: normal;
    font-size: inherit;
}

.discard-link:hover[b-e1dodemjya] {
    color: var(--bs-danger);
    text-decoration: none;
}

/* Mobile button styling adjustments */
.unsaved-changes-actions .btn[b-e1dodemjya] {
    white-space: nowrap;
}

/* Mobile compact buttons */
.mobile-compact[b-e1dodemjya] {
    padding: 0.25rem 0.5rem;
    font-size: 0.75rem;
    min-width: auto;
    white-space: nowrap;
}

/* Mobile stacked buttons */
@media (max-width: 767px) {
    .unsaved-changes-actions .d-flex.flex-column[b-e1dodemjya] {
        min-width: 0;
        flex-shrink: 0;
    }

    .unsaved-changes-actions .d-flex.flex-column .btn[b-e1dodemjya] {
        width: 100%;
        justify-content: center;
    }
}

/* Mobile adjustments for grid */
@media (max-width: 768px) {
    .unsaved-changes-grid[b-e1dodemjya] {
        gap: 0.5rem;
        /* Maintain 3 column layout on mobile */
        grid-template-columns: auto 1fr auto;
    }

    .unsaved-text[b-e1dodemjya] {
        font-size: 0.8125rem;
    }

    /* Ensure icon doesn't shrink */
    .unsaved-changes-icon i[b-e1dodemjya] {
        font-size: 1rem;
    }

    /* Allow text to wrap properly */
    .unsaved-changes-message[b-e1dodemjya] {
        word-break: break-word;
    }
}

/* Add hover effects for better interactivity */
.list-management-bar .btn:hover[b-e1dodemjya] {
    transform: translateY(-1px);
    transition: transform 0.15s ease;
}

.list-management-bar .btn:active[b-e1dodemjya] {
    transform: translateY(0);
}

/* Enhance the dropdown trigger appearance */
.list-selector-trigger[b-e1dodemjya] {
    background-color: transparent;
    border: 1px solid var(--bs-gray-400);
    color: var(--bs-gray-700);
    padding: 0.375rem 0.75rem;
    border-radius: 0.375rem;
    transition: all 0.15s ease;
}

.list-selector-trigger:hover[b-e1dodemjya] {
    background-color: var(--bs-gray-100);
    border-color: var(--bs-gray-500);
}

/* Add subtle pulse animation for unsaved changes icon */
@keyframes pulse-b-e1dodemjya {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0.6;
    }
    100% {
        opacity: 1;
    }
}


.unsaved-changes-message .bi-exclamation-triangle-fill[b-e1dodemjya] {
    animation: pulse-b-e1dodemjya 2s ease-in-out infinite;
}
/* Enhanced gradient options for PLAY button text */
.text-gradient[b-e1dodemjya] {
    background: linear-gradient(45deg, #0088CE, #00BFA5, #FFD700);
    background-clip: text;
    color: transparent;
    background-size: 200% 200%;
}

/* ================================================
   Option 6: Inline Floating Actions Integration
   ================================================ */

.inline-floating-actions[b-e1dodemjya] {
    position: relative;
    z-index: 1;
    margin-top: 1.75rem;
    margin-bottom: -0.5rem;
    display: flex;
    justify-content: center;
    gap: 2rem;
    align-items: center;
}

.floating-action-item[b-e1dodemjya] {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 0.75rem;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    transition: all 0.2s ease;
}

.floating-action-item:hover .btn-floating-inline[b-e1dodemjya] {
    background: rgba(31, 41, 55, 0.9);
    transform: scale(1.05) translateY(-2px);
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
    border-color: rgba(255, 255, 255, 0.3);
}

.btn-floating-inline[b-e1dodemjya] {
    width: 1.75rem;
    height: 1.75rem;
    border-radius: 50%;
    background: rgba(31, 41, 55, 0.8);
    color: white;
    border: 1px solid rgba(255, 255, 255, 0.2);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    backdrop-filter: blur(4px);
    font-size: 0.75rem;
    flex-shrink: 0;
}

.floating-caption[b-e1dodemjya] {
    font-size: 0.9375rem;
    font-weight: 500;
    color: #1f2937;
    white-space: nowrap;
    opacity: 0.8;
    transition: opacity 0.2s ease;
}

.floating-action-item:hover .floating-caption[b-e1dodemjya] {
    opacity: 1;
}

/* Stashed for later... */
.text-gradient-animated[b-e1dodemjya] {
    background: linear-gradient(90deg, #0088CE, #00BFA5, #FFD700, #0088CE);
    background-clip: text;
    color: transparent;
    background-size: 300% 300%;
    animation: gradientFlow-b-e1dodemjya 2s ease-in-out infinite;
}

/* Keyframe animations for gradient effects */
@keyframes gradientShift-b-e1dodemjya {
    0%, 100% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
}

@keyframes gradientFlow-b-e1dodemjya {
    0% { background-position: 0% 50%; }
    50% { background-position: 100% 50%; }
    100% { background-position: 0% 50%; }
}
/* _content/Tourneys/Components/Tournaments/Filters/TournamentFilters.razor.rz.scp.css */
/* Tournament filters toolbar */
.tournament-filters-toolbar[b-ftu91pnfno] {
    display: flex;
    flex-direction: row;
    padding: 0;
}

/* Filter stack spacing */
.filter-stack[b-ftu91pnfno] {
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
}
/* _content/Tourneys/Components/Tournaments/TournamentCalendar.razor.rz.scp.css */
.tournament-calendar-container[b-hzt4dhfn9q] {
    width: 100%;
}

.tournament-calendar-desktop[b-hzt4dhfn9q] {
    /* Sticky is now applied at wrapper level in Tournaments.razor.css */
}

.selected-date-header[b-hzt4dhfn9q] {
    margin-bottom: 12px;
}

.selected-date-footer[b-hzt4dhfn9q] {
    margin-top: 12px;
}

.selected-date-button[b-hzt4dhfn9q] {
    font-size: 14px;
    font-weight: 500;
    padding: 4px 8px;
}

.selected-date-container[b-hzt4dhfn9q] {
    margin-top: 16px;
    text-align: center;
}

.filter-by-date-button[b-hzt4dhfn9q] {
    width: 100%;
    justify-content: center;
}

/* Mobile modal styling */
@media (max-width: 768px) {
    .tournament-calendar-desktop[b-hzt4dhfn9q] {
        display: none;
    }
}

/* Desktop styling */
@media (min-width: 769px) {
    .filter-by-date-button[b-hzt4dhfn9q] {
        display: none;
    }
}
/* _content/Tourneys/Components/Tournaments/TournamentListBase.razor.rz.scp.css */
/* Month grouping styles */
.month-group[b-sktfqx5p5t] {
    margin-bottom: 2rem;
}

.month-header[b-sktfqx5p5t] {
    position: sticky;
    top: var(--header-sticky-offset, 88px);
    z-index: 10;
    /* No background - blur does all the readability work */
    backdrop-filter: blur(4px) saturate(120%);
    -webkit-backdrop-filter: blur(4px) saturate(120%);
    margin-bottom: 1rem;
    padding: 1rem 0 0.75rem 0;
    font-size: 1.5rem;
    font-weight: 600;
    color: var(--bs-gray-800);
    
    /* Soften the bottom edge with a gradient mask */
    mask-image: linear-gradient(to bottom, 
        rgba(0,0,0,1) 0%, 
        rgba(0,0,0,1) 75%, 
        rgba(0,0,0,0.8) 85%, 
        rgba(0,0,0,0.4) 95%, 
        rgba(0,0,0,0) 100%);
    -webkit-mask-image: linear-gradient(to bottom, 
        rgba(0,0,0,1) 0%, 
        rgba(0,0,0,1) 75%, 
        rgba(0,0,0,0.8) 85%, 
        rgba(0,0,0,0.4) 95%, 
        rgba(0,0,0,0) 100%);
}

.month-tournaments[b-sktfqx5p5t] {
    display: flex;
    flex-direction: column;
    /* Gap now handled by gap-row-gap utility class */
}

/* Additional spacing for better readability */
.month-group:last-child[b-sktfqx5p5t] {
    margin-bottom: 0;
}

/* Ensure tournament cards have proper spacing */
.month-tournaments > *[b-sktfqx5p5t] {
    margin-bottom: 0; /* Remove any default margins since we're using gap */
}

/* Dark mode support for month headers */
[data-theme="dark"] .month-header[b-sktfqx5p5t] {
    /* No background - blur does all the readability work */
    color: white;
}
