:root {
	--white: #ffffff;
	--black: #000000;
	--carbon: #2f2f2f;
	--gray: #D9D9D9;
	--blue: #1E91CD;
	--green: #198754;
	--light-green: #3d931b;
	--orange: #fd7e14;
	--brown: #331904;
	--navy: #091248;
}

.form-signin form, .form-reset form {
	width: 100%;
	max-width: 330px;
	padding: 15px;
	margin: auto;
}

.form-signin .checkbox {
	font-weight: 400;
}

.form-signin .form-floating:focus-within, .form-reset .form-floating:focus-within {
	z-index: 2;
}

.form-signin input[type="email"] {
	margin-bottom: -1px;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}

.form-signin input[type="password"] {
	margin-bottom: 10px;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}

.nav-masthead .nav-link {
  color: rgba(0, 0, 0, .5);
  border-bottom: .25rem solid transparent;
}

.nav-masthead .nav-link:hover,
.nav-masthead .nav-link:focus {
  border-bottom-color: rgba(0, 0, 0, .25);
}

.nav-masthead .nav-link + .nav-link {
  margin-left: 1rem;
}

.nav-masthead .nav-link.active {
  color: #000;
  border-bottom-color: #000;
}

.dropdown-item.active .fa-solid, .dropdown-item:active .fa-solid {
	color: var(--bs-dropdown-link-active-color);
}

#body-frontend .navbar-brand {
  padding-top: .75rem;
  padding-bottom: .75rem;
  font-size: 1rem;
  background-color: rgba(0, 0, 0, .25);
}

.input-group {max-width:105px;}
.rating {float:left;border:none;}
.rating:not(:checked) > input {position:absolute;top:-9999px;clip:rect(0, 0, 0, 0);}
.rating:not(:checked) > label {float:right;width:1em;padding:0.1em;margin-right:0.5em;margin-top:0.2em;overflow:hidden;white-space:nowrap;cursor:pointer;font-size:100%;line-height:1;color:#ddd;}
.rating:not(:checked) > label:before {content:'★ ';}
.rating > input:checked ~ label {color: gold;}
.rating > input:checked + label:hover, .rating > input:checked + label:hover ~ label, .rating > input:checked ~ label:hover, .rating > input:checked ~ label:hover ~ label, .rating > label:hover ~ input:checked ~ label {color: #ea0;}
.rating > label:active {position:relative;}
.auction-table .bid-leader.active {text-decoration:underline;color:var(--navy);cursor:pointer;}
.auction-table .bid-leader.active:hover {text-decoration:none;color:var(--green);}
.auction-table .bid-amount.active {text-decoration:underline;color:var(--navy);cursor:pointer;}
.auction-table .bid-amount.active:hover {text-decoration:none;color:var(--green);}
#bid_amount,#max_bid_amount {margin:5px 5px 5px 0;max-width:100px;display:inline;}
.auction-table .fa-info-circle {color:#ccc;cursor:pointer;}
.auction-table .fa-info-circle:hover {color:var(--green);}
.auction-table .bid-button.btn-whiteout {cursor:not-allowed;opacity:0;}
.auction-table .end-time {text-align:center !important;}
.auction-table .bid-amount {padding-right:1em;}

.btn-primary {background:var(--green);border:var(--green);}
.btn-primary:hover {background:var(--light-green);}
.row .form-floating>label {left:auto;}
.status-0 {opacity:0.7;color:#ccc;}


.close {float: right;line-height: 1;opacity: .5;cursor:pointer;font-size:1.5em;}
.close:hover {text-decoration: none;opacity: .75;}
button.close {padding: 0;background-color: transparent;border: 0;-webkit-appearance: none;appearance: none;}

#notices-area {position:relative;}
.header-notice {position:absolute;width:100%;top:-5rem;}

table.dataTable thead>tr>th.dt-orderable-asc:hover, table.dataTable thead>tr>th.dt-orderable-desc:hover, table.dataTable thead>tr>td.dt-orderable-asc:hover, table.dataTable thead>tr>td.dt-orderable-desc:hover {outline:0;opacity:0.8;}

@media all and (max-width: 768px) {
	body {font-size:0.8rem;}
}

h1 {text-transform: uppercase;font-size: 1.8rem;font-weight: 900;}
#pool-nav.nav-underline .nav-link {border:0 !important;}
#pool-nav.nav-underline .nav-link.active, #pool-nav.nav-underline .show>.nav-link {border:0;text-decoration: underline;}
#pool-nav.nav-underline .nav-link:focus, #pool-nav.nav-underline .nav-link:hover {text-decoration: underline;border:0}
div > ul#pool-nav {border-bottom:1px solid #ccc;padding-bottom:1rem;}
#auction-purse {float:right;margin-top:-6em !important;}
@media all and (max-width: 768px) {
	#auction-purse {margin-top:0 !important;top:80px;right:15px;position:absolute;}
}
button.golf-pick.active {background-color:green;}
.wysiwyg.form-floating {margin-top:30px;}
.wysiwyg.form-floating label {top:-30px;color: rgba(var(--bs-body-color-rgb), .65);transform: scale(.85) translateY(-.5rem) translateX(.15rem);}
.note-group-select-from-files { display: none; }
.total-purse.two-line {float:right;margin-top:-5em !important;}
.total-purse.three-line {float:right;margin-top:-6em !important;}
.pool-purse.two-line {float:right;margin-top:-5em;}
.pool-purse.three-line {float:right;margin-top:-6em;}

.chart-expand .inner {
	overflow:hidden;
	height:20rem;
	transition: all 0.5s;
}
.chart-expand [data-toggle='expand'] {display:block;}
.chart-expand [data-toggle='expand']:hover {
	background-color:var(--bs-light);
}
.archive-pool-link {float:right;text-transform: uppercase;font-size: 0.7em;margin-top: 1.5em;text-decoration:none;}
.archive-pool-link:hover {text-decoration:underline;}
.main-pools-div {clear:both;}

.form-w-sm form {
	width: 100%;
	max-width: 330px;
	padding: 15px;
	margin: auto;
}
.btn-group-xs > .btn, .btn-xs {
	padding: .45rem .4rem .35rem;
	font-size: .75rem;
	line-height: .5;
	border-radius: .2rem;
}
@media all and (max-width: 320px) {
	#pool-nav.nav-underline .nav-link {font-size:1.2em !important;}
	h1 {font-size: 1.3rem;}
	.total-purse.two-line {margin-top:-7em !important;}
}
.table-standings td a {color:var(--bs-table-color);}
#standingsTabContent .tab-pane {outline: none;scroll-margin-top: 250px;}

.mypools-icons {width:30px;}
.mypools-name {width:calc(70%);}
.mypools-joined {min-width:120px;}
.mypools-links {min-width:250px;}
#datatable-mypools td {line-height:41px;}
@media all and (max-width: 768px) {
	#datatable-mypools td {line-height:1;}
	.content-header-image {display:none;}
	#datatable-mypools .btn-sm {padding: .45rem .4rem .35rem;font-size: .75rem;line-height: .5;border-radius: .2rem;}
	#datatable-mypools th.mypools-joined {display:none;}
	#datatable-mypools tbody td:nth-child(4) {display:none;}
	.mypools-links {min-width:calc(30% - 50px);}
}
.floating-help {
	position: fixed;
	bottom: 20px;
	right: 20px;
	background-color: #3d931b;
	color: white;
	border-radius: 8px;
	padding: 12px 22px;
	box-shadow: 0 4px 10px rgba(0,0,0,0.25);
	cursor: pointer;
	z-index: 2000;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	font-weight: 600;
	font-size: 16px;
	letter-spacing: 0.5px;
}

.floating-help .help-icon {
	margin-right: 10px;
	font-size: 18px;
}

.floating-help.expanded {
	border-radius: 8px;
	width: 340px;
	padding: 18px 22px;
	background-color: #3d931b;
}

.help-content {
	display: none;
	width: 100%;
}

.floating-help.expanded .help-content {
	display: block;
}

.floating-help.expanded .title-text {
	display: none;
}

.help-email {
	font-weight: bold;
	color: #ffffff;
	text-decoration: none;
	border-bottom: 1px dotted rgba(255,255,255,0.7);
	padding-bottom: 1px;
	transition: all 0.2s ease;
	display: inline-block;
	font-size: 16px;
	word-break: break-all;
}

.help-email:hover {
	text-decoration: none;
	color: #ffffff;
	border-bottom: 1px solid #ffffff;
}

.help-message {
	margin: 0;
	font-size: 15px;
	line-height: 1.6;
	font-weight: normal;
	text-align: center;
}

.floating-help .title-text {
	display: inline-block;
}

.floating-help.expanded .help-content-wrapper {
	display: flex;
	flex-direction: column;
	width: 100%;
	align-items: center;
}

.chosen-single {height: 60px !important;box-shadow: none !important;background: none !important;border: 1px solid #ddd !important;font-size: 1.3em !important;padding-top: 17px !important;padding-left: 11px !important;}
.chosen-container {width:100% !important;margin-bottom:1em;background-image:url(/assets/img/arrow-down.png) !important;background-repeat:no-repeat !important;background-position:right 10px center !important;background-size:14px !important;}
	
.submenu {display: none;list-style: none;padding-left: 2.5rem;margin: 0;}
.submenu-toggle {background: none;border: none;cursor: pointer;}
.submenu-toggle:focus {outline: none;}
.submenu.open {display: block;}
.no-submenu .nav-link {padding-left:2rem}
.submenu-toggle::before {content: "+";}
.submenu-toggle[aria-expanded="true"]::before {content: "-";}

#navbarSearch input {background-color:#ccc !important;}

/* override */
:root {
	/* Modern theme variables to match design/layout1a.php */
	--primary-green: #3d931b;
	--secondary-green: #397a1f;
	--primary-blue: #131248;
	--secondary-blue: #141268;
	--light-gray: #e9e9e9;
	--dark-gray: #6c757d;
	--shadow: 0 2px 10px rgba(0,0,0,0.1);
	--border-radius: 12px;
	/* --header-height: 70px; */
	/* --header-img-height: 32px; */
	--header-height: 100px;
	--header-img-height: 50px;
	--card-img-height: 288px;
	--card-ratio: 1294/288;
	--card-slim-img-height: 142px;
	--card-slim-ratio: 638/142;
	--card-tall-img-height: 400px;
	--card-tall-ratio: 638/400;
}

.nav-masthead .nav-link {
  /* Modernized to match layout1a header look */
	background: rgba(255, 255, 255, 0.1);
  color: rgba(255, 255, 255, 0.9);
  border: 0;
  padding: 0.5rem 1rem!important;
  border-radius: 25px;
}

.nav-masthead .nav-link:hover,
.nav-masthead .nav-link:focus {
  color: #fff;
  background: rgba(255, 255, 255, 0.2);
}

.nav-masthead .nav-link + .nav-link {
  margin-left: 1rem;
}

.nav-masthead .nav-link.active {
  color:  var(--primary-blue);
  background: rgba(255, 255, 255, 0.5);
  border: 0;
}

/* =============================
   Modern UI overrides for MyPools
   Align look with design/layout1a.php
   Safe to transfer to production
   ============================= */

/* Base + Typography */
body,
#body-frontend {
  font-family: "Open Sans", var(--bs-body-font-family);
  background: var(--light-gray);
  min-height: 100vh;
}

/* Header - convert Bootstrap navbar to gradient header */
header.navbar {
  background: linear-gradient(90deg, var(--primary-green) 0%, #2d7a2d 30%, #1a5d8a 70%, var(--primary-blue) 100%);
  color: #fff;
  box-shadow: var(--shadow);
  border-bottom: 0 !important;
	z-index: 1040;

	&::before {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: repeating-linear-gradient(-45deg, transparent, transparent 2px, rgba(61, 147, 27, 0.15) 2px, rgba(61, 147, 27, 0.15) 4px), repeating-linear-gradient(45deg, transparent, transparent 2px, rgba(19, 18, 72, 0.15) 2px, rgba(19, 18, 72, 0.15) 4px);
		background-size: 40px 40px, 40px 40px;
		opacity: 0.4;
		z-index: 1;
		border-radius: 0;
	}
	&::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-image: 
			radial-gradient(ellipse at 30% 30%, rgba(76, 175, 80, 0.2) 0%, transparent 50%),
			radial-gradient(ellipse at 70% 20%, rgba(76, 175, 80, 0.3) 0%, transparent 50%),
			radial-gradient(ellipse at 80% 60%, rgba(19, 18, 72, 0.25) 0%, transparent 50%),
			radial-gradient(ellipse at 90% 40%, rgba(61, 147, 27, 0.2) 0%, transparent 50%),
			radial-gradient(ellipse at 20% 70%, rgba(19, 18, 72, 0.2) 0%, transparent 50%);
		z-index: 2;
		pointer-events: none;
	}
}

header.navbar .navbar-brand {
  background: transparent !important;
}

/* Standings: make Google Charts background transparent via CSS */
#standingsTabContent .stats svg > rect:first-of-type,
#standingsTabContent [id^="pickedpiechart"] svg > rect:first-of-type,
#standingsTabContent .stats svg > rect[fill="#ffffff"],
#standingsTabContent [id^="pickedpiechart"] svg > rect[fill="#ffffff"],
#standingsTabContent .stats svg rect[fill="#fff"],
#standingsTabContent .stats svg rect[fill="white"],
#standingsTabContent .stats svg rect[fill^="rgb(255"],
#standingsTabContent .stats svg rect {
  fill: transparent !important;
  fill-opacity: 0 !important;
}
#standingsTabContent .stats svg,
#standingsTabContent [id^="pickedpiechart"] svg {
  background: transparent !important;
}
/* also apply if outside standingsTabContent for safety */
.stats[id^="stats"] svg > rect:first-of-type,
[id^="pickedpiechart"] svg > rect:first-of-type,
[id^="pickedpiechart"] svg rect[fill="#ffffff"],
[id^="pickedpiechart"] svg rect[fill="#fff"],
[id^="pickedpiechart"] svg rect[fill="white"],
[id^="pickedpiechart"] svg rect[fill^="rgb(255"],
[id^="pickedpiechart"] svg rect {
  fill: transparent !important;
  fill-opacity: 0 !important;
}
#standingsTabContent .stats,
#standingsTabContent [id^="pickedpiechart"] {
  background: transparent !important;
}

/* Header layout refinements to resemble layout1a.php */
header.navbar>.container-xl {
  height: var(--header-height);
	z-index: 100;
}

/* Logo sizing */
header.navbar .navbar-brand img {
  height: var(--header-img-height);
  width: auto;
}

/* Improve navbar toggler icon visibility on gradient */
header.navbar .navbar-toggler .navbar-toggler-icon {
  filter: invert(1) brightness(2);
}

.theme {
	--bs-heading-color: var(--primary-blue);
}
hr.theme {
	border-color: var(--primary-blue)!important;
}
.pool-filters {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
	justify-content: start;
}

.btn-cta {
	background: white;
	border: 2px solid var(--dark-gray);
	border-radius: var(--bs-border-radius);
	padding: 0.75rem 1.5rem;
	cursor: pointer;
	font-size: 0.9rem;
	font-weight: 500;
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	gap: 0.5rem;
	color: var(--dark-gray);
	text-decoration: none;
	&:hover {
		border-color: var(--primary-green);
		color: var(--primary-green);
		box-shadow: var(--bs-box-shadow-sm);
	}
	&.active {
		background: linear-gradient(135deg, var(--primary-blue) 0%, var(--primary-green) 100%);
		color: white;
		border-color: var(--primary-green);
		box-shadow: 0 0.125rem 0.25rem rgba(61, 147, 27, 0.075);
		&:hover {
			background: linear-gradient(135deg, var(--primary-blue) 0%, var(--primary-blue) 20%, var(--primary-green) 100%);
		}
	}
	&.btn-cta-sm {
		padding: 0.5rem 1rem;
	}
}

.btn-blue, .btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--secondary-blue);
	--bs-btn-border-color: var(--secondary-blue);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--primary-blue);
	--bs-btn-hover-border-color: var(--primary-blue);
	--bs-btn-focus-shadow-rgb: 211, 212, 213;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--primary-blue);
	--bs-btn-active-border-color: var(--primary-blue);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #000;
	--bs-btn-disabled-bg: var(--primary-blue);
	--bs-btn-disabled-border-color: var(--primary-blue);
	position: relative;
	overflow: hidden;
}
.btn-green, .btn-success {
	--bs-btn-color: #fff;
	--bs-btn-bg: var(--primary-green);
	--bs-btn-border-color: var(--primary-green);
	--bs-btn-hover-color: #fff;
	--bs-btn-hover-bg: var(--secondary-green);
	--bs-btn-hover-border-color: var(--secondary-green);
	--bs-btn-focus-shadow-rgb: 211, 212, 213;
	--bs-btn-active-color: #fff;
	--bs-btn-active-bg: var(--primary-blue);
	--bs-btn-active-border-color: var(--primary-blue);
	--bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
	--bs-btn-disabled-color: #000;
	--bs-btn-disabled-bg: var(--primary-green);
	--bs-btn-disabled-border-color: var(--primary-green);
	position: relative;
	overflow: hidden;
}

.text-blue {
	--bs-text-opacity: 1;
  color: var(--primary-blue);
}
.text-green {
	--bs-text-opacity: 1;
  color: var(--primary-green);
}
.table-text-blue {
	--bs-table-color: var(--primary-blue);
}
.table-text-green {
	--bs-table-color: var(--primary-green);
}

.pool-card {
	.pool-card-img {
		display: block;
	}
	.card-img-top {height:100%; width:100%;object-fit: cover;aspect-ratio: var(--card-slim-ratio);}
	.card-title {
		text-transform: uppercase;
		a {
			color: var(--bs-card-title-color);
			text-decoration: none;
			&:hover {
				text-decoration: underline;
			}
		}
		.title {
			font-weight: 700;
		}
		.subtitle {
			display:block;
			font-size: .7em;
			font-weight: 400;
		}
	}
	.card-img-overlay {
		transition: 0.1s all;
	}
	&:hover {
		.card-img-overlay {
			background: rgba(0,0,0,0.3);
		}
	}
}
#availablePools {
	.card-img-top {
		aspect-ratio: var(--card-tall-ratio);
	}
}
.pool-overview-card {
	.card-img-top {
		height: 100%;
		width: 100%;
		max-height: var(--card-img-height);
		object-fit: cover;
		aspect-ratio: var(--card-ratio);
	}
	.pool-summary {
		color: var(--bs-gray);
		span {
			font-weight: 700;
		}
		i {
			color: var(--primary-green);
		}
		.info a {
			text-decoration: none;
			color: var(--bs-gray);
		}
	}
	.card-title {
		color: var(--bs-card-title-color);
		margin-bottom: 0.75rem;
		i {
			color: var(--primary-green);
		}
		text-transform: uppercase;
		.title {
			font-weight: 900;
		}
		.subtitle {
			display:block;
			font-size: 15px;
			font-weight: 400;
		}
	}
	div > ul#pool-nav {
		border:none;
		align-items: center;
		justify-content: center;
	}
}
.text-bg-blue {
	color: #fff !important;
	background-color: var(--primary-blue);
}
.text-bg-green {
	color: #fff !important;
	background-color: var(--primary-green);
}
footer {
	background-color: var(--primary-blue);
	color: var(--light-gray);
	padding:100px 0;
	.footer-logo {
		width: 200px;
		height: auto;
	}
	a {
		color: var(--light-gray);
		text-decoration: none;
	}
	.footer-logo {
		height: var(--header-img-height);
		width: auto;
	}
	.social-links {
		a {
			margin: 0 0.5em;
		}
	}
}
.table-expand .inner {
	overflow:hidden;
	max-height:20rem;
	transition: all 0.5s;
}
.table-expand [data-toggle='expand'] {display:block;}
.table-expand [data-toggle='expand']:hover {
	background-color:var(--bs-light);
}
.pool-rules-card img {
	max-width: 100%;
}
.card-title {
	i.fa-solid, i.fas {
		color: var(--primary-green);
	}
	.archived {
		i.fa-solid, i.fas {
			color: inherit;
		}
	}
}
.auction-table {
	border: var(--bs-card-border-width) solid var(--bs-card-border-color);
}
#navbarMenu {
	.navbar-toggler {
		background-color: rgba(255, 255, 255, 0.3);
		box-shadow: none!important;
	}
}