/* CSS Variables for theming */
:root {
  --main-red: red;
  --main-green: green;
  --main-blue: blue;
  --main-gray: gray;
  --statetag: darkslategray;
  --main-font-size: 1rem; /* Default font size */
  --highlight-font-size: 1.2rem;
  --small-font-size: smaller;
}

/* General Table Styles */
table.calendar {
  border-collapse: collapse; /* Optional: Collapse borders for a cleaner look */
}

td {
  border-bottom: 1px solid var(--main-gray);
  vertical-align: top;
}

/* Table Row Backgrounds */
.vic {
  background: #C4FFBC;
}

.sa {
  background: #FFC4C4;
}

.qld {
  background: #FFFF99;
}

.wa {
  background: #F8C89C;
}

.tas {
  background: #C0FAE7;
}

.act {
  background: #E3B6FF;
}

.nsw {
  background: #D2D2FF;
}

.aus {
  background: lightcyan;
}

.int,
.os {
  background: greenyellow;
}

.int td {
  opacity: 0.8;
}
/* State Prefixes in the First Column */
/* Combined all content changes into the content property */
tr.qld td:nth-child(1)::before,
tr.nsw td:nth-child(1)::before,
tr.act td:nth-child(1)::before,
tr.vic td:nth-child(1)::before,
tr.tas td:nth-child(1)::before,
tr.sa td:nth-child(1)::before,
tr.wa td:nth-child(1)::before,
tr.os td:nth-child(1)::before {
  display: block;
  color: var(--statetag);
  font-size: var(--main-font-size);
}



tr.qld td:nth-child(1)::before {
  content: "QLD";
}
tr.nsw td:nth-child(1)::before {
  content: "NSW";
}
tr.act td:nth-child(1)::before {
  content: "ACT";
}
tr.vic td:nth-child(1)::before {
  content: "VIC";
}
tr.tas td:nth-child(1)::before {
  content: "TAS";
}
tr.sa td:nth-child(1)::before {
  content: "SA";
}
tr.wa td:nth-child(1)::before {
  content: "WA";
}
tr.os td:nth-child(1)::before {
  content: "OS";
}


/* Championship Event Highlighting */
.star td:nth-child(2) {
  border: 3px dashed var(--main-red);
  border-radius: 10px;
  color: var(--main-red);
  font-size: var(--highlight-font-size);
}

/* Cancelled and Postponed Events */
.cancelled,
.postponed {
  opacity: 0.25;
}

.cancelled td:nth-child(2)::after {
  content: "CANCELLED";
}

.postponed td:nth-child(2)::after {
  content: "POSTPONED";
}

/* Cancelled/Postponed Event Styling - common*/
.cancelled td:nth-child(2)::after,
.postponed td:nth-child(2)::after {
  font-size: 140%;
  color: var(--main-red);
  display: block;
}

/* WESPA Rated Label */
td.wespa::before {
  content: "WESPA rated";
  background: darkgreen;
  color: white;
  display: block;
  text-align: center;
  border-radius: 7px;
}

td.youth::after {
  content: "YOUTH";
  display: block;
  background-color: darkgray;
  color:white;
  font-size: var(--main-font-size);
  display: block;
	text-align: center;
	border-radius: 7px;
}
/* Registration Links */
.register a {
  background-color: white;
  color: black;
  border: 2px solid var(--main-green);
  padding: 2px 4px;
  text-align: center;
  text-decoration: none;
  display: inline-block;
}

/* Text Link Styles */
.register a:hover,
.register a:active {
    background-color: var(--main-green);
    color: white;
}

/* Link and Visited Link Styles */
aside a, .goto a, pre a {
  text-decoration: none;
}
aside a,
aside a:visited {
  background-color: cornsilk;
  color: black;
  font-family: Tahoma, sans-serif;
  font-weight: bold;
  border: 1px solid var(--main-green);
  padding: 0 5px;
}

aside a:hover,
aside a:active {
  background-color: var(--main-red);
}

/* Other Styles */
span {
  display: inline-block;
}

date {
  background-color: var(--main-red);
  width: 65px;
  color: white;
}

.secname {
  font-style: oblique;
}

aside {
  text-align: center;
}

dd {
    margin-left: 5px;
    font-size: var(--small-font-size);
    font-style: italic ;
}
/*Details*/
details{
    font-size: var(--small-font-size);
}
