/* THEME COLORS (from your w3-theme) */
.w3-theme-l5 {color:#000 !important; background-color:#f2f7ef !important}
.w3-theme-l4 {color:#000 !important; background-color:#d4e5c8 !important}
.w3-theme-l3 {color:#000 !important; background-color:#aacb91 !important}
.w3-theme-l2 {color:#fff !important; background-color:#7fb25b !important}
.w3-theme-l1 {color:#fff !important; background-color:#58803c !important}
.w3-theme-d1 {color:#fff !important; background-color:#2d421f !important}
.w3-theme-d2 {color:#fff !important; background-color:#283a1b !important}
.w3-theme-d3 {color:#fff !important; background-color:#233318 !important}
.w3-theme-d4 {color:#fff !important; background-color:#1e2c15 !important}
.w3-theme-d5 {color:#fff !important; background-color:#192411 !important}
.w3-theme-light {color:#000 !important; background-color:#f2f7ef !important}
.w3-theme-dark {color:#fff !important; background-color:#192411 !important}
.w3-theme-action {color:#fff !important; background-color:#192411 !important}
.w3-theme {color:#fff !important; background-color:#324822 !important}
.w3-text-theme {color:#324822 !important}
.w3-border-theme {border-color:#324822 !important}
.w3-hover-theme:hover {color:#fff !important; background-color:#324822 !important}
.w3-hover-text-theme:hover {color:#324822 !important}
.w3-hover-border-theme:hover {border-color:#324822 !important}

/* BASE TYPOGRAPHY + BACKGROUND */
:root{
  --bg:#2D2D2D;
  --body-font:'Atkinson Hyperlegible',sans-serif;
  --h1:'Amatic SC',sans-serif;
  --h2:'Amatic SC',sans-serif;
  --h3:'Seaweed Script',sans-serif;
  --h4:'Amatic SC',sans-serif;
  --link:#cf8d30;
}

html,body{
  height:100%;
}
body {
  background: var(--bg) url('https://i.imgur.com/5q4xLy9.png') repeat;
  font-family: var(--body-font);
  font-size:11px;
  letter-spacing:0.2em;
  line-height:1.5em;
  color:#fff;
}

/* Headings */
h1{
  font-family:var(--h1);
  font-weight:normal;
  font-size:40px;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#87a494;
}
h2{
  font-family:var(--h2);
  font-size:35px;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#819b80;
}
h3{
  font-family:var(--h3);
  text-align:center;
  font-size:33px;
  letter-spacing:1px;
  padding:5px 5px 2px;
  color:#297046;
}
h4{
  font-family:var(--h4);
  text-align:left;
  font-size:20px;
  text-transform:uppercase;
  letter-spacing:1px;
  color:#d8a45a;
  margin:0;
}

/* Text elements */
a{
  color:var(--link);
  text-decoration:none;
  transition:color .3s ease;
}
a:hover{ color:#fff; }

blockquote{
  border-left:2px solid #fff;
  border-radius:6px;
  padding:3px 3px 3px 10px;
  margin-left:20px;
}

b,strong{
  color:#7fb25b;
  font-family:var(--body-font);
  font-size:20px;
  letter-spacing:1px;
}
i,em{
  color:#aacb91;
  font-family:var(--h3);
  font-size:22px;
  letter-spacing:.5px;
  font-style:normal;
}
pre{
  font-family:Courier, monospace;
  white-space:pre-wrap;
  word-wrap:break-word;
}

/* Cards */
.w3-card{
  background: linear-gradient(0deg, rgba(0,0,0,1) 0%, rgba(25,36,17,1) 100%);
  color:#fff;
}
.w3-container{ color:#fff; }

/* Section padding helper */
.section-pad{
  padding:16px;
}

/* MUSIC PLAYER (vars preserved) */
:root {
  --Music-Player-Position-From-Bottom:30px;
  --Music-Player-Background:#121212;
  --Music-Player-Padding:9px;
  --Music-Player-Roundness:3px;
  --Music-Title-Font-Size:11px;
  --Music-Title-Color:#d0cdd8;
  --Play-Pause-Buttons-Size:17px;
  --Play-Pause-Buttons-Color:#d0cdd8;
  --Headphones-Icon-Size:15px;
  --Headphones-Icon-Color:#d0cdd8;
}
.glen-player{
  position:fixed;
  bottom:calc(var(--Music-Player-Position-From-Bottom) - 5px);
  right:0;
  z-index:99;
}
.nebula{ padding:5px 0; }
.suns{
  padding:calc(var(--Music-Player-Padding) * 1.1) var(--Music-Player-Padding);
  background:var(--Music-Player-Background);
  border-radius:var(--Music-Player-Roundness) 0 0 var(--Music-Player-Roundness);
  display:flex;
  align-items:center;
  gap:6px;
}
.headphones{
  padding:0 calc(var(--Music-Player-Padding) / 2);
}
.headphones svg{
  width:var(--Headphones-Icon-Size);
  height:var(--Headphones-Icon-Size);
  color:var(--Headphones-Icon-Color);
}
.mm{ display:block; }
.music-controls{
  margin-left:calc((var(--Music-Player-Padding) / 2) - 1px);
  margin-right:.5px;
}
.music-controls .material-icons{
  margin:0 1px;
  font-size:var(--Play-Pause-Buttons-Size);
  color:var(--Play-Pause-Buttons-Color);
}
.pausee{ display:none; }
.beff{ display:none; }
.aff{ display:block; }
.music-name{
  padding:0 calc(var(--Music-Player-Padding) / 2);
  font-family:"Work Sans", sans-serif;
  font-size:var(--Music-Title-Font-Size);
  color:var(--Music-Title-Color);
  display:inline-block;
}

/* Rain layer container */
#rain-layer{
  position:fixed;
  inset:0;
  pointer-events:none;
  z-index:1;
}

/* Accordions: keep w3 behavior but allow non-inline JS triggers */
.accordion-target.w3-hide{ display:none !important; }
.accordion-target.w3-show{ display:block !important; }

/* Responsive tweaks */
@media (max-width: 992px){
  .glen-player{ bottom:10px; }
  .page-wrap{ padding-top:40px !important; }
}
