
html {
	min-height: 100%;
	background:
		radial-gradient(
			ellipse at 50% 40%,
			#071f13 0%,
			#04120a 45%,
			#000000 100%
		);
	background-color: #000000;
}

body {
	font-family: 'IBM Plex Sans', sans-serif;
	font-weight: 500;
	color: #fff;
	text-align: center;
	padding-top: 0.2em;
	padding-bottom: 1em; /* FOOTER HEIGHT */
	background: transparent;
	min-height: 100vh;
}


h1, h2, h3, h4, h5, h6, h7 {
	font-family: 'Michroma', sans-serif;
	letter-spacing: 0.01em;
	text-transform: uppercase;
}


.basic1 {
	color: #FFDD54;
	text-shadow:
		0 1px 0 #b89f2f,
		0 2px 4px rgba(0,0,0,0.4),
		0 0 14px rgba(255,221,84,0.35);
}

.basic2 {
	color: #FF3A3A;
	margin-bottom: 0.10em;
	text-shadow:
		0 1px 0 #8a1414,
		0 2px 4px rgba(0,0,0,0.5),
		0 0 12px rgba(255,58,58,0.4);
}


.basic3 {
	color: #4C84FF;
}

footer {
	position: fixed;
	bottom: 0;
	right: 0;
	padding: 12px;
	height: 1em; /* FOOTER HEIGHT */
}

.button {
	color:#FFF;
	background:none;
	padding: 0 12px;	/* reduce horizontal space */
	height: 30px;		/* shorter button */
	line-height: 30px;	/* vertically centers text */
	font-size: 0.9rem;	/* optional: slightly smaller text */
}

/* kill Skeleton’s focus/active tweaks */
.button:focus,
.button:active {
	background:none;
	color:#FFF;
	outline:none;
}

/* keep this LAST so hover wins over focus/active */
.button:hover {
	background:#FFF;
	color:#000;
}


td {
	text-align: center;
}

.td2  {
	text-align: left;
	width:40%;
}
.td1  {
	text-align: right;
	width:40%;
}



/* Override skeleton border on rows */
th, td{
	border-bottom: 1px solid rgba(40, 120, 90, 0.35);
}

.main th,
.main td {
	padding: 10px 5px 10px 0px;
}
/*
#resultsTable {
	width: 100%;
	table-layout: fixed;
}

#resultsTable th,
#resultsTable td {
	padding: 8px 40px;
} */


/* RESULTS SCREEN MATCH DAY CELL */
/* #resultsTable tr td:first-child {
	border-bottom: 0px solid #ccc;
} */

/* RESULTS SCREEN MATCH DAY CELL */



/* TEAM DETAILS ON MAIN */
details summary {
	cursor: pointer;
	font-weight: 600;
	text-decoration: underline dotted;
}

.smallText {
	text-align: center;
	font-size:0.900rem;	/* ~14px, still accessible */
}
.matchNoDot{
color: rgba(40, 120, 90, 0.35);
}
.matchNo{
	display:block;
	width:1.9em;
	height:1.9em;
	margin:0;
	font-size:0.9rem;
	line-height:1.9em;		/* centre text */
	text-align:center;
	background:rgba(40, 120, 90, 0.35);
	border-radius:50%;
	color: #E6F2C2;
	box-shadow:
		0 0 6px rgba(120,170,255,0.35),
		0 0 12px rgba(120,170,255,0.15);
}

tr:has(input[type=checkbox]:checked){
	background:#FFFFFF;
	color:#000000;
}

th{
	text-align:center;
	vertical-align:middle;
}

/* TEAM DETAILS ON MAIN */



.table-container {
	max-width: 800px;	/* pick your number */
	margin: 0 auto;		/* centre it */
}

.handpointer:hover {
	cursor:pointer
	
}
.EntryString{
	color:#000
}
.runningTotal {
	position:fixed;
	bottom:0%;
	left:00%;
	transform:translateY(-50%);
	transform:translateX(-0%);
	border:3px solid #A0A0A0;
	border-radius: 8px;
	padding:6px 10px;
	font-size:2em;
	background-color:#282828;
}

.exceeded
{
	color:red
}


#db-panel{
	display:grid;
}

#db-panel > div{
	grid-area:1/1;
	visibility:hidden;
	pointer-events:none;
	opacity:0;
	transition:opacity 180ms ease;
}

#db-panel > div.active{
	visibility:visible;
	pointer-events:auto;
	opacity:1;
}

/* Wait panel layout */
#db-wait{
	display:flex;
	align-items:center;
	justify-content:center;
	gap:12px;
}

/* Spinner */
.spinner{
	width:22px;
	height:22px;
	border:3px solid currentColor;
	border-right-color:transparent;
	border-radius:50%;
	animation:spin 700ms linear infinite;
}

@keyframes spin{
	to{ transform:rotate(360deg); }
}

/* Optional: respect reduced motion */
@media (prefers-reduced-motion: reduce){
	#db-panel > div{ transition:none; }
	.spinner{ animation:none; }
}

#db-ok {
	display:flex;
	flex-direction:column;
	align-items:center;
	gap:12px;
}

#db-feedback-response {
	color:#f6c177;   
	font-weight: bold;
	font-size: 1.5em;
}

/* MENU ---------------- */


.nav {
	background: #333;
	color: #fff;
	padding: 0.5rem 1rem;
}

/* hide the real checkbox */
#nav-toggle {
	display: none;
}

.nav-header {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.nav-title {
	font-size: 1.2rem;
}

.nav-menu {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	gap: 1rem;
}

.nav-menu a {
	color: #fff;
	text-decoration: none;
}

/* hamburger icon hidden on desktop */
.nav-toggle-label {
	display: none;
	font-size: 1.5rem;
	cursor: pointer;
}

/* --- Mobile --- */
@media (max-width: 600px) {
	.nav-menu {
		display: none;
		flex-direction: column;
		margin-top: 0.5rem;
	}

	.nav-toggle-label {
		display: inline-block;
	}

	/* when checkbox is checked, show menu */
	.nav-toggle:checked ~ .nav-menu {
		display: flex;
	}
}




/* MENU ---------------- */

.thanks {

	color:lightgreen;
	font-size:2em;
	font-weight:bold;
}

.terms{
	font-size:1em;
	font-weight:400;
	line-height:1.4;
	text-align:left;
}

.terms p{
	margin:0 0 0.8em 0;
}
.terms li{
	list-style-position:outside;
	padding-left:1.2em;
	text-indent:-1.2em;
}


/* ATTENTION submit button (subtle until interaction) */
.button-submit{
	background:#FFDD54;
	color:#020202;
	border:1px solid rgba(255,255,255,0.14);
	box-shadow:none;
	font-weight:700;
	letter-spacing:0.02em;
}

.button-submit:hover{
	background:#FFE57A;
	color:#020202;
}

.button-submit:focus{
	outline:none;
	box-shadow:0 0 0 3px rgba(76,132,255,0.35);
}


.wick{
	--w: 6px;
	--h: 1em;

	position: relative;
	width: var(--w);
	height: var(--h);
	border-radius: 999px;

	/* brighter track + clearer edge */
	background: rgba(255,255,255,.14);
	box-shadow:
		inset 0 0 0 1px rgba(255,255,255,.22),
		0 0 0 1px rgba(0,0,0,.35); /* helps on pure black */

	overflow: hidden;
	display: inline-block;
	vertical-align: middle;
}

.wick::before{
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	height: max(2px, calc(100% - var(--pct)));

	/* punchier fill */
	background: linear-gradient(to top, #ef4444 0%, #f59e0b 50%, #22c55e 100%);

	/* “pop”: crisp highlight + glow */
	box-shadow:
		inset 0 1px 0 rgba(255,255,255,.35),
		0 0 10px rgba(34,197,94,.35),
		0 0 10px rgba(245,158,11,.25),
		0 0 10px rgba(239,68,68,.25);
}
.wick::after{
	content: "";
	position: absolute;
	left: 1px;
	right: 1px;
	top: 0;
	bottom: 0;
	pointer-events: none;

	/* subtle glassy highlight */
	background: linear-gradient(
		to right,
		rgba(255,255,255,.35),
		rgba(255,255,255,.08) 40%,
		rgba(255,255,255,0) 70%
	);

	mix-blend-mode: screen;
	opacity: .35;
}

/* 
* {
	outline: 1px solid red;
} */