/**
 * BGE Omaha League Stylesheet
 * Version: 1.0.0
 * Reorganized and optimized
 */

/* ==========================================================================
   TABLE OF CONTENTS
   ========================================================================== */
/*
   1. CSS Variables
   2. Base / Container Styles
   3. Layout & Grid
   4. Navigation & Sidebar
   5. Dashboard Components
   6. Forms & Inputs
   7. Tables & Data Display
   8. Buttons
   9. Cards & Panels
   10. Venue Displays
   11. Leaderboards & Tabs
   12. Utility Classes
   13. Mobile Responsive
*/


/* ==========================================================================
   1. CSS VARIABLES
   ========================================================================== */
:root {
	--bge-primary: #2db34a;
	--bge-primary-dark: #24963b;
	--bge-primary-darker: #1f7a30;
	--bge-secondary: #e3b025;
	--bge-secondary-dark: #c99a1e;
	--bge-dark: #343434;
	--bge-darker: #1a1a1a;
	--bge-light: #f8f8f8;
	--bge-border: #ddd;
	--bge-text-light: #ffffff;
	--bge-text-dark: #333;
	--bge-text-muted: #666;
	--bge-error-bg: #f8d7da;
	--bge-error-border: #f5c6cb;
	--bge-error-text: #721c24;
	--bge-adminbar-offset: 0px;
}


/* ==========================================================================
   2. BASE / CONTAINER STYLES
   ========================================================================== */

.bge-omaha {
	background: var(--bge-dark);
	color: var(--bge-text-light);
	padding: 2rem;
}

.bge-omaha-admin-page {
	margin: 0 auto;
	padding: 2rem;
}

.bge-omaha-content {
	width: 75%;
}


/* ==========================================================================
   3. LAYOUT & GRID
   ========================================================================== */

.bge-omaha-dashboard {
	display: flex;
	gap: 1.5rem;
	align-items: flex-start;
}

.bge-omaha-dashboard-wrapper {
	display: flex;
	flex-wrap: nowrap;
	min-height: 100vh;
	position: relative;
}

.bge-omaha-main-content {
	flex-grow: 1;
	padding: 20px;
}

/* Venue Layout Grid */
.venue-columns {
	display: flex;
	gap: 2rem;
	flex-wrap: wrap;
}

.left-col {
	flex: 1 1 25%;
	min-width: 300px;
}

.right-col {
	flex: 1 1 70%;
	min-width: 500px;
}

.venue-layout {
	display: grid;
	grid-template-columns: 25% 50% 25%;
	gap: 1rem;
	margin-bottom: 2rem;
}

.venue-top,
.venue-bottom {
	display: contents;
}


/* ==========================================================================
   4. NAVIGATION & SIDEBAR
   ========================================================================== */

.bge-omaha-admin-sidebar {
	flex: 0 0 280px;
	width: 280px;
	position: sticky;
	position: -webkit-sticky;
	top: var(--bge-adminbar-offset, 0px);
	align-self: start;
	height: calc(100vh - var(--bge-adminbar-offset, 0px) - 24px);
	overflow: auto;
	z-index: 2;
}

/* Navigation Container */
.bge-omaha-nav {
	background: var(--bge-text-muted);
	border: 1px solid var(--bge-border);
	border-radius: 8px;
	padding: 1rem;
	max-width: 280px;
	min-width: 250px;
}

/* User Info Section */
.bge-omaha-nav-user {
	display: flex;
	align-items: center;
	gap: 1rem;
	padding: 1rem;
	margin-bottom: 1.5rem;
	background: var(--bge-light);
	border-radius: 6px;
}

.bge-omaha-nav-avatar img {
	border-radius: 50%;
	display: block;
}

.bge-omaha-nav-user-info {
	flex: 1;
}

.bge-omaha-nav-user-name {
	font-weight: 600;
	font-size: 1rem;
	margin-bottom: 0.25rem;
	color: var(--bge-text-dark);
}

.bge-omaha-nav-user-role {
	font-size: 0.875rem;
	color: var(--bge-text-muted);
}

/* Navigation List */
.bge-omaha-nav-list,
.bge-omaha-admin-menu {
	list-style: none !important;
	margin: 0;
	padding: 0;
}

.bge-omaha-nav-item {
	margin-bottom: 0.5rem;
}

/* Navigation Links & Buttons */
.bge-omaha-nav-link,
.bge-omaha-admin-button {
	display: flex !important;
	align-items: center;
	gap: 0.75rem;
	width: 100% !important;
	padding: 0.75rem 1rem !important;
	margin: 0 !important;
	text-align: left !important;
	background-color: var(--bge-primary) !important;
	color: var(--bge-text-light) !important;
	border: none;
	border-radius: 6px;
	text-decoration: none;
	transition: all 0.2s ease;
	cursor: pointer;
	font-size: 1rem;
}

.bge-omaha-nav-link:hover,
.bge-omaha-admin-button:hover {
	background-color: var(--bge-primary-dark) !important;
	color: var(--bge-text-light) !important;
	text-decoration: none;
	transform: translateY(-1px);
	box-shadow: 0 2px 4px rgba(0,0,0,0.1);
}

.bge-omaha-nav-link.active,
.bge-omaha-admin-button.active {
	background-color: var(--bge-primary-darker) !important;
	font-weight: 600;
}

/* Navigation Icons */
.bge-omaha-nav-icon {
	display: flex;
	align-items: center;
	font-size: 1.25rem;
	flex-shrink: 0;
}

.bge-omaha-nav-icon .dashicons {
	width: 20px;
	height: 20px;
	font-size: 20px;
}

.bge-omaha-nav-text {
	flex: 1;
}

/* Navigation Separator */
.bge-omaha-nav-separator {
	height: 1px;
	background: var(--bge-border);
	margin: 1rem 0;
	list-style: none;
}

/* Logo in Sidebar */
.bge-omaha-admin-menu-logo {
	max-width: 100px;
	max-height: 100px;
	width: auto;
	height: auto;
	object-fit: cover;
}

/* Mobile Hamburger Menu */
#bge-omaha-menu-toggle {
	display: none;
	position: absolute;
	top: 10px;
	left: 10px;
	font-size: 24px;
	background: none;
	border: none;
	color: var(--bge-primary);
	z-index: 1001;
}


/* ==========================================================================
   5. DASHBOARD COMPONENTS
   ========================================================================== */

/* Dashboard Header */
.bge-omaha-dashboard-header {
	margin-bottom: 2rem;
}

.bge-omaha-role-badge {
	display: inline-block;
	padding: 0.5rem 1rem;
	background: var(--bge-primary);
	color: var(--bge-text-light);
	border-radius: 20px;
	font-size: 0.875rem;
}

/* Dashboard Sections */
.bge-omaha-dashboard-section {
	margin-bottom: 2rem;
}

/* Stats Grid */
.bge-omaha-stats-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 1rem;
	margin: 1rem 0;
}

.bge-omaha-stats-grid-wide {
	grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.bge-omaha-stat-card {
	background: var(--bge-light);
	border: 1px solid var(--bge-border);
	border-radius: 8px;
	padding: 1.5rem;
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.bge-omaha-stat-card .stat-icon {
	font-size: 2rem;
	color: var(--bge-primary);
}

.bge-omaha-stat-card .stat-number {
	font-size: 2rem;
	font-weight: bold;
	color: var(--bge-text-dark);
}

.bge-omaha-stat-card .stat-label {
	font-size: 0.875rem;
	color: var(--bge-text-muted);
	text-transform: uppercase;
	letter-spacing: 0.05em;
}

.bge-omaha-stat-primary {
	background: linear-gradient(135deg, var(--bge-primary), var(--bge-primary-dark));
	color: var(--bge-text-light);
}

.bge-omaha-stat-primary .stat-number,
.bge-omaha-stat-primary .stat-label {
	color: var(--bge-text-light);
}

.bge-omaha-stat-highlight {
	border: 2px solid var(--bge-primary);
}

/* Quick Actions */
.bge-omaha-quick-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75rem;
	margin: 1rem 0;
}

.bge-omaha-admin-actions {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
	gap: 1rem;
}

/* Venue Cards */
.bge-omaha-venue-card {
	background: #fff;
	border: 1px solid var(--bge-border);
	border-radius: 8px;
	padding: 1rem;
	margin-bottom: 1rem;
}

.bge-omaha-venue-card p {
	color: #000;
}

.bge-omaha-venues-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
	gap: 1rem;
	margin: 1rem 0;
}

.venue-logo {
	max-width: 100%;
	height: auto;
	border-radius: 6px;
	margin-bottom: 1rem;
}

.venue-logo-small {
	max-width: 80px;
	height: auto;
	border-radius: 4px;
}

/* Season Info */
.bge-omaha-season-info,
.bge-omaha-season-info-detailed {
	background: var(--bge-light);
	border: 1px solid var(--bge-border);
	border-radius: 8px;
	padding: 1rem;
	color: #000;
}

.season-dates {
	color: #000;
}

.bge-omaha-season-info p {
	color: #000;
}

.bge-omaha-seasons-list {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 1rem;
}

.bge-omaha-season-card {
	background: #fff;
	border: 1px solid var(--bge-border);
	border-radius: 6px;
	padding: 1rem;
}

.bge-omaha-season-card.active {
	border-color: var(--bge-primary);
	border-width: 2px;
}

.season-badge {
	display: inline-block;
	padding: 0.25rem 0.75rem;
	border-radius: 12px;
	font-size: 0.75rem;
	font-weight: 600;
	text-transform: uppercase;
}

.season-badge.active {
	background: var(--bge-primary);
	color: var(--bge-text-light);
}

/* System Tools */
.bge-omaha-system-tools {
	margin: 2rem 0;
}

.bge-omaha-tools-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
	gap: 1rem;
}

.bge-omaha-tool-card {
	background: #fff;
	border: 1px solid var(--bge-border);
	border-radius: 8px;
	padding: 1.5rem;
	text-align: center;
}

.bge-omaha-tool-card .dashicons {
	font-size: 2rem;
	color: var(--bge-primary);
	margin-bottom: 0.5rem;
}

.bge-omaha-tool-card p {
	color: #000;
}

/* Help Section */
.bge-omaha-help-section {
	background: var(--bge-light);
	border-left: 4px solid var(--bge-primary);
	padding: 1rem 1.5rem;
	border-radius: 4px;
}

.bge-omaha-help-list {
	list-style: none;
	padding: 0;
	margin: 1rem 0;
}

.bge-omaha-help-list li {
	padding: 0.5rem 0;
	display: flex;
	align-items: flex-start;
	gap: 0.75rem;
}

.bge-omaha-help-list .dashicons {
	color: var(--bge-primary);
	margin-top: 2px;
}

/* Cache Grid */
.bge-omaha-cache-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 10px 0 14px;
	padding: 20px;
}

.bge-omaha-cache-output {
	margin-top: 12px;
}

/* Notices */
.bge-omaha-notice {
	padding: 1rem;
	border-radius: 6px;
	margin-bottom: 1rem;
	display: flex;
	align-items: center;
	gap: 0.75rem;
}

.bge-omaha-notice-info {
	background: #d1ecf1;
	border: 1px solid #bee5eb;
	color: #0c5460;
}

.bge-omaha-notice-warning {
	background: #fff3cd;
	border: 1px solid #ffeaa7;
	color: #856404;
}

.bge-omaha-notice-error,
.bge-omaha-error {
	padding: 12px;
	background: var(--bge-error-bg);
	border: 1px solid var(--bge-error-border);
	border-radius: 8px;
	color: var(--bge-error-text);
}

/* Loading State */
.bge-omaha-loading {
	text-align: center;
	padding: 60px 20px;
	color: var(--bge-text-muted);
}

.bge-omaha-logo-container {
	text-align: center;
	margin-bottom: 1rem;
}

.bge-omaha-logo {
	opacity: 0.5;
	transition: opacity 2s ease-in-out;
}

.bge-omaha-logo.fade-in {
	opacity: 1;
}

/* Upcoming Events */
.bge-upcoming-wrap {
	margin: 1rem 0;
}

.bge-upcoming-title {
	margin: 0 0 0.5rem 0;
	font-weight: 700;
}

.bge-upcoming-list {
	list-style: none !important;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 0.5rem;
}

.bge-upcoming-item {
	display: flex;
	align-items: center;
	gap: 0.5rem;
}

.bge-upcoming-link {
	text-decoration: none;
}


/* ==========================================================================
   6. FORMS & INPUTS
   ========================================================================== */

.bge-omaha-form {
	max-width: 800px;
	margin: 0 auto;
	background-color: var(--bge-light) !important;
	padding: 1rem;
	border-radius: 12px;
	border: 1px solid var(--bge-border);
	box-shadow: 0 4px 12px rgba(0,0,0,0.25);
}

/* Form Headings */
.bge-omaha-form h2,
.bge-omaha-form h3,
.bge-omaha-form h4 {
	color: var(--bge-primary) !important;
	margin-bottom: 1rem;
	border-bottom: 2px solid var(--bge-primary);
	padding-bottom: 0.25rem;
}

/* Form Labels */
.bge-omaha-form label {
	display: block;
	font-weight: 800;
	margin-bottom: 0.5rem;
	color: var(--bge-primary);
}

/* Form Inputs */
.bge-omaha-form input[type="text"],
.bge-omaha-form input[type="number"],
.bge-omaha-form input[type="date"],
.bge-omaha-form input[type="email"],
.bge-omaha-form select,
.bge-omaha-form textarea {
	width: 100%;
	padding: 10px 12px;
	margin-bottom: 1rem;
	border-radius: 6px;
	border: 1px solid #ccc;
	background-color: #fff;
	font-size: 1rem;
}

/* Checkboxes */
.bge-omaha-form input[type="checkbox"] {
	margin-right: 8px;
}

/* Fieldsets */
.bge-omaha-form fieldset {
	border: none;
	margin-bottom: 2rem;
	padding: 0;
}

.bge-omaha-form .form-group {
	margin-bottom: 1.5rem;
}

/* Form Rows */
.bge-omaha-form .form-row {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.bge-omaha-form .form-col {
	flex: 1;
	min-width: 200px;
}

/* Placement Rows */
.bge-omaha-form .placement-row {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 1rem;
}

.bge-omaha-form .placement-row > label {
	width: 15%;
	min-width: 80px;
}

.bge-omaha-form .placement-row select {
	width: 40%;
}

.bge-omaha-form .placement-row input[type="number"] {
	width: 30%;
}

.bge-omaha-form .placement-row .manual-override {
	width: 15%;
}

/* Bounty Rows */
.bge-omaha-form .bounty-row {
	display: flex;
	align-items: center;
	gap: 1rem;
	margin-bottom: 1rem;
}

.bge-omaha-form .bounty-row > label {
	width: 15%;
	min-width: 80px;
}

.bge-omaha-form .bounty-row select {
	width: 50%;
}

.bge-omaha-form .bounty-row .bounty-count {
	width: 15%;
}

.bge-omaha-form .bounty-row input[type="number"]:not(.bounty-count) {
	width: 20%;
}

/* Form Notes */
.bge-omaha-form .form-note {
	font-size: 0.875rem;
	color: #777;
	margin-top: -0.75rem;
	margin-bottom: 1rem;
}

/* Form Buttons */
.bge-omaha-form button,
.bge-omaha-form input[type="submit"] {
	background-color: var(--bge-primary);
	color: white;
	padding: 12px 24px;
	font-size: 1rem;
	border: none;
	border-radius: 6px;
	cursor: pointer;
	transition: background-color 0.3s ease;
}

.bge-omaha-form button:hover,
.bge-omaha-form input[type="submit"]:hover {
	background-color: var(--bge-primary-dark);
}

.bge-omaha-form input[type="submit"].button {
	all: unset;
	background-color: var(--bge-primary);
	color: #fff;
	padding: 12px 24px;
	border-radius: 6px;
	cursor: pointer;
}


/* ==========================================================================
   7. TABLES & DATA DISPLAY
   ========================================================================== */

/* Base Table Styles */
.bge-omaha-table {
	border-collapse: collapse;
	margin-bottom: 20px;
	font-size: 16px;
	color: white;
	width: 100%;
}

.bge-omaha-table thead {
	background-color: var(--bge-primary);
}

.bge-omaha-table th {
	padding: 10px 15px;
	text-align: center;
	color: white;
	background-color: var(--bge-primary);
}

.bge-omaha-table td {
	padding: 10px 15px;
	text-align: center;
}

.bge-omaha-table tr:nth-child(even) td {
	background-color: rgba(45,179,74,0.50);
}

.bge-omaha-table tr:nth-child(odd) td {
	background-color: rgba(227,176,37,0.75);
}

.bge-omaha-table tr.bge-tied td {
	background-color: #e0ffe0;
}

.bge-omaha-table .bge-omaha-top10-banner td,
.bge-omaha-table .top-10-banner td {
	text-align: center;
	font-weight: 700;
	background: linear-gradient(90deg, #28a745, #20c997, #28a745);
	color: #fff;
	letter-spacing: 0.02em;
	padding: 15px;
	font-size: 1.1em;
}

.bge-omaha-table .top-10 {
	background: #fff3cd;
}

.bge-omaha-table .top-10:hover {
	background: #ffe8a1;
}

.bge-omaha-table tr:hover {
	background: #f8f9fa;
}

/* Compact Table Variant */
.bge-omaha-table-compact th,
.bge-omaha-table-compact td {
	padding: 8px 12px;
	font-size: 0.9rem;
}

/* Responsive Table Wrapper */
.bge-omaha-table-responsive {
	overflow-x: auto;
	margin: 1rem 0;
}

/* Card Style Table (Alternative) */
.bge-omaha-card {
	padding: 12px;
	border: 1px solid #e5e7eb;
	border-radius: 10px;
	background: #fff;
}

/* DataTables Integration */
table.dataTable {
	color: #fff;
	background-color: #111;
	border-collapse: collapse;
	width: 100%;
}

table.dataTable thead th {
	background-color: var(--bge-primary);
	color: #fff;
	border: none;
	padding: 10px;
	text-align: left;
}

table.dataTable tbody tr {
	background-color: var(--bge-darker);
}

table.dataTable tbody tr:nth-child(even) {
	background-color: #222;
}

table.dataTable tbody tr:hover {
	background-color: rgba(227,176,37,0.2);
}

table.dataTable td,
table.dataTable th {
	border: none;
}

/* DataTables Controls */
.dataTables_filter label {
	color: #fff;
	font-weight: bold;
}

.dataTables_filter input {
	background-color: #000;
	color: #fff;
	border: 1px solid var(--bge-primary);
	padding: 6px 10px;
	border-radius: 5px;
}

.dataTables_length label {
	color: #fff;
}

.dataTables_length select {
	background-color: #000;
	color: rgba(227,176,37,1);
	border: 1px solid var(--bge-primary);
	padding: 4px 6px;
	border-radius: 5px;
}

.dataTables_info {
	color: #bbb;
	font-style: italic;
}

.dataTables_paginate a {
	color: #fff !important;
	background-color: #222;
	border: 1px solid var(--bge-primary);
	padding: 4px 10px;
	margin: 0 2px;
	border-radius: 4px;
	text-decoration: none;
}

.dataTables_paginate a:hover {
	background-color: rgba(227,176,37,1);
	color: #000 !important;
}

.dataTables_paginate .current {
	background-color: var(--bge-primary) !important;
	color: #000 !important;
	font-weight: bold;
}

/* Specific Table Types */
.bge-omaha-dealers,
.bge-omaha-venue-specifics {
	width: 100%;
	margin-bottom: 20px;
	border-collapse: collapse;
}

.bge-omaha-dealers th,
.bge-omaha-dealers td,
.bge-omaha-venue-specifics th,
.bge-omaha-venue-specifics td {
	padding: 10px;
	text-align: left;
}

.bge-omaha-dealers th,
.bge-omaha-venue-specifics th {
	background-color: rgba(227,176,37,1);
	color: #fff;
}

.bge-omaha-dealers td,
.bge-omaha-venue-specifics td {
	font-weight: normal;
}

/* Player Stats Table */
table.bge-player-stats {
	width: 80%;
	margin: auto;
	font-family: Arial, sans-serif;
}

table.bge-player-stats th {
	background-color: var(--bge-primary);
	color: white;
	text-align: center;
	padding: 10px;
	font-size: 0.9em;
}

table.bge-player-stats td {
	padding: 8px 12px;
	text-align: left;
	font-size: 0.7em;
}

table.bge-player-stats tr:nth-child(even) td {
	background-color: rgba(227,176,37,0.50);
}

/* Suit Symbols */
.bge-omaha .suit.heart,
.bge-omaha .suit.diamond {
	color: #ef4444;
}

.bge-omaha .suit.spade,
.bge-omaha .suit.club {
	color: #e5e7eb;
}

.bge-omaha .suit {
	padding: 0 0.15rem;
	font-size: 1.05em;
}


/* ==========================================================================
   8. BUTTONS
   ========================================================================== */

/* Primary Button Style */
.bge-omaha-button,
.bge-omaha-btn {
	display: inline-block;
	padding: 10px 16px;
	background: var(--bge-primary);
	color: #fff;
	border: 1px solid #fff;
	border-radius: 6px;
	font-size: 16px;
	text-align: center;
	cursor: pointer;
	text-decoration: none;
	transition: all 0.3s ease;
	margin-bottom: 1rem;
}

.bge-omaha-button:hover,
.bge-omaha-btn:hover {
	border: 1px solid var(--bge-primary);
	background: #fff;
	color: var(--bge-primary);
	text-decoration: none;
}

/* Button Variants */
.bge-omaha-button-primary {
	background: var(--bge-primary);
	border-color: var(--bge-primary);
}

.bge-omaha-button-small {
	padding: 6px 12px;
	font-size: 14px;
}

.bge-omaha-button[disabled],
.bge-omaha-btn[disabled] {
	opacity: 0.6;
	cursor: wait;
}


/* ==========================================================================
   9. CARDS & PANELS
   ========================================================================== */

/* Venue Header */
.bge-omaha-venue-header {
	background: var(--bge-dark);
	color: #fff;
	padding: 2rem;
	border-radius: 12px;
	margin: 2rem auto;
	text-align: center;
}

.bge-omaha-venue-header h2,
.bge-omaha-venue-header h3 {
	color: #fff;
}

.bge-omaha-venue-name {
	font-size: 2rem;
	font-weight: bold;
	color: #9d1616;
}

.bge-omaha-venue-location {
	font-size: 1.2rem;
	color: #777;
}

.bge-omaha-venue-details {
	margin-top: 1rem;
	font-size: 1rem;
	color: #fff;
}

/* Bar Leader Card */
.bge-omaha-bar-leader {
	text-align: center;
	border: 2px solid var(--bge-primary);
	padding: 15px;
	width: 200px;
	margin: 0 auto;
	font-family: sans-serif;
}

.bge-omaha-bar-leader h3 {
	background-color: var(--bge-primary);
	color: white;
	padding: 10px;
	margin-top: 0;
	font-size: 1.2em;
}

.bge-omaha-bar-leader .bar-leader-name {
	font-size: 18px;
	font-weight: bold;
	margin: 10px 0 5px 0;
	color: #ffffff !important;
}

.bge-omaha-bar-leader .bar-leader-points {
	font-size: 14px;
	color: #efefef;
	margin: 0;
}


/* ==========================================================================
   10. VENUE DISPLAYS
   ========================================================================== */

.bge-venue-leaderboard-wrapper,
.bge-omaha-venue-header-section {
	max-width: 1200px;
	margin: 20px auto;
	border-radius: 8px;
	overflow: hidden;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
}

.bge-venue-header-section {
	background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
	color: white;
	padding: 30px 20px;
	text-align: center;
	box-shadow: 0 4px 6px rgba(0,0,0,0.2);
}

.bge-venue-header-section h2 {
	margin: 10px 0 5px;
	font-size: 1.8em;
	text-shadow: 0 2px 4px rgba(0,0,0,0.2);
}

.bge-venue-header-section .venue-subtitle {
	margin: 0;
	opacity: 0.9;
	font-size: 0.95em;
}


/* ==========================================================================
   11. LEADERBOARDS & TABS
   ========================================================================== */

/* Regional Leaderboard Wrapper */
.bge-regional-leaderboard-wrapper {
	margin: 20px 0;
}

/* Tab Navigation - Primary Style */
.bge-regional-nav-tabs,
.bge-venue-nav-tabs {
	display: flex;
	gap: 5px;
	margin-bottom: 20px;
	border-bottom: 3px solid #8e44ad;
	background: #9b59b6;
	border-radius: 8px 8px 0 0;
	overflow: hidden;
}

/* Tab Buttons */
.bge-tab-btn,
.bge-regional-tab {
	flex: 1;
	padding: 15px 10px;
	background: #9b59b6;
	color: #ecf0f1;
	border: none;
	border-bottom: 4px solid transparent;
	cursor: pointer;
	font-size: 14px;
	font-weight: 500;
	transition: all 0.3s ease;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 5px;
}

.bge-tab-btn:hover,
.bge-regional-tab:hover {
	background: #8e44ad;
	border-bottom-color: #e67e22;
}

.bge-tab-btn.active,
.bge-regional-tab.active {
	background: #8e44ad;
	border-bottom-color: #f39c12;
	color: #fff;
	font-weight: 700;
}

/* Tab Icons and Text */
.bge-tab-btn .tab-icon {
	font-size: 20px;
}

.bge-tab-btn .tab-text {
	font-size: 13px;
}

/* Tab Content Area */
.bge-tab-content,
.bge-regional-content {
	background: white;
	padding: 20px;
	border: 1px solid #ddd;
	border-top: none;
	border-radius: 0 0 8px 8px;
	min-height: 300px;
}

/* Loading and Empty States */
.bge-loading {
	text-align: center;
	padding: 40px;
	color: #666;
}

.bge-no-scores {
	text-align: center;
	padding: 40px;
	color: #999;
}

/* Player League Card */
#bge-omaha-league-card-root {
	margin-top: 20px;
}

.bge-omaha-league-card-loading {
	text-align: center;
	padding: 40px;
	color: #666;
}

.bge-omaha-content #bge-omaha-league-card-root {
	margin: 0;
	padding: 0;
}


/* ==========================================================================
   12. UTILITY CLASSES
   ========================================================================== */

/* Text Utilities */
.bge-omaha-muted {
	color: var(--bge-text-muted);
}

.bge-omaha-text-center {
	text-align: center;
}

/* Spacing */
.bge-omaha-dashboard-footer {
	margin-top: 1rem;
	padding-top: 1rem;
	border-top: 1px solid var(--bge-border);
}

/* Mobile Menu State */
body.bge-menu-open {
	overflow: hidden;
}


/* ==========================================================================
   13. MOBILE RESPONSIVE
   ========================================================================== */

@media (max-width: 768px) {
	/* Hide sidebar by default on mobile */
	#bge-omaha-menu-toggle {
		display: block;
	}

	.bge-omaha-admin-sidebar {
		position: fixed;
		left: -100%;
		top: 0;
		width: 280px;
		height: 100vh;
		background: #fff;
		z-index: 1000;
		transition: left 0.3s ease;
		box-shadow: 2px 0 10px rgba(0,0,0,0.1);
	}

	.bge-omaha-admin-sidebar.is-open {
		left: 0;
	}

	/* Adjust main content */
	.bge-omaha-content {
		width: 100%;
	}

	.bge-omaha-dashboard {
		flex-direction: column;
	}

	/* Navigation adjustments */
	.bge-omaha-nav {
		margin-bottom: 1rem;
		max-width: 100%;
	}

	.bge-omaha-nav-link,
	.bge-omaha-admin-button {
		padding: 0.6rem 0.75rem !important;
		font-size: 0.9rem;
	}

	.bge-omaha-nav-icon .dashicons {
		width: 18px;
		height: 18px;
		font-size: 18px;
	}

	/* Stats grid */
	.bge-omaha-stats-grid {
		grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
	}

	/* Forms */
	.bge-omaha-form .placement-row,
	.bge-omaha-form .bounty-row {
		flex-direction: column;
		align-items: stretch;
	}

	.bge-omaha-form .placement-row > label,
	.bge-omaha-form .bounty-row > label {
		width: 100%;
	}

	.bge-omaha-form .placement-row select,
	.bge-omaha-form .placement-row input[type="number"],
	.bge-omaha-form .bounty-row select,
	.bge-omaha-form .bounty-row input[type="number"] {
		width: 100%;
	}

	/* Tables */
	.bge-omaha-table {
		font-size: 14px;
	}

	.bge-omaha-table th,
	.bge-omaha-table td {
		padding: 8px 10px;
	}

	/* Tabs */
	.bge-tab-btn {
		padding: 12px 8px;
		font-size: 12px;
	}

	.bge-tab-btn .tab-icon {
		font-size: 1.2em;
	}

	.bge-tab-btn .tab-text {
		font-size: 0.75em;
	}

	/* Venue layouts */
	.venue-columns {
		flex-direction: column;
	}

	.left-col,
	.right-col {
		min-width: 100%;
	}

	.venue-layout {
		grid-template-columns: 1fr;
	}

	/* Quick actions */
	.bge-omaha-quick-actions {
		flex-direction: column;
	}

	.bge-omaha-admin-actions {
		grid-template-columns: 1fr;
	}

	/* Venue cards */
	.bge-omaha-venues-grid {
		grid-template-columns: 1fr;
	}

	/* League card React component */
	#bge-omaha-league-card-root .grid {
		grid-template-columns: 1fr !important;
	}

	/* Bar leader */
	.bge-omaha-bar-leader {
		width: 100%;
		max-width: 300px;
	}
}

@media (max-width: 480px) {
	/* Extra small screens */
	.bge-omaha {
		padding: 1rem;
	}

	.bge-omaha-admin-page {
		padding: 1rem;
	}

	.bge-omaha-main-content {
		padding: 10px;
	}

	/* Forms */
	.bge-omaha-form {
		padding: 0.75rem;
	}

	.bge-omaha-form button,
	.bge-omaha-form input[type="submit"] {
		width: 100%;
	}

	/* Stats */
	.bge-omaha-stats-grid {
		grid-template-columns: 1fr;
	}

	/* Tables - scroll on very small screens */
	.bge-omaha-table-responsive {
		overflow-x: scroll;
	}

	.bge-omaha-table {
		min-width: 500px;
	}
}
