.star-overlay {
  position: fixed;
  inset: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.75rem;
  pointer-events: none;
  z-index: 9999;
  transition: opacity 400ms ease;
}

.star-overlay.fade-out {
  opacity: 0;
}

/* Star style */
.star {
  font-size: 4rem;           /* tweak size as you like */
  color: #facc15;            /* nice yellow; use your brand color */
  text-shadow: 0 6px 18px rgba(0, 0, 0, 0.35);
  transform: scale(0);
  opacity: 0;
  animation: star-pop 450ms ease-out forwards;
}

/* Slight stagger so they pop in one after another */
.star:nth-child(2) {
  animation-delay: 120ms;
}
.star:nth-child(3) {
  animation-delay: 240ms;
}

@keyframes star-pop {
  0% {
    transform: scale(0.1);
    opacity: 0;
  }
  60% {
    transform: scale(1.2);
    opacity: 1;
  }
  100% {
    transform: scale(1);
    opacity: 1;
  }
}


canvas.confetti {
  position: fixed;
  inset: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 9999;
}

html,
body {
    height: 100%
}


main { flex: 1; }

body {
    /* display: grid; */
    /* place-items: center; */
    margin: 0;
    font-family: "Rubik", Trebuchet MS, Lucida Grande, Lucida Sans Unicode, Lucida Sans, Tahoma, sans-serif;
    background: var(--bg);
    color: var(--text);
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

h2 {
    margin-bottom: 2px;
    margin-top: 0px;
}
h1 {
    margin-bottom: 10px;
    margin-top: 10px;
}

.btn {
  appearance: none;
   border: 1px solid var(--text);
   cursor: pointer;
   border-radius: 999px;
   padding: 12px 18px;
   font-weight: 400;
   letter-spacing: .3px;
   color: var(--muted);
   background: var(--bg);
   width: auto;
   font-size: 1rem;
 }

 .btn.primary {
     background: var(--text);
     color: #000;
     border: none;
 }

.section {
    text-align: center;
    margin: 20px;
}

#date  {
  font-size:14px;
}

* {
    box-sizing: border-box
}

.main {
    margin: 20px auto;
    /* padding: 20px; */
    border-radius: 14px;
    width: min(1200px, 96vw);
}

#header-container {
    display: flex;
    gap: 12px;
    align-items: center;
    padding: 5px 30px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    margin-bottom: 20px;
}

.muted {
    color: var(--muted);
    text-align: center;
}

.footer-container {
  margin-top: auto;                      /* pushes footer to bottom */
  padding: 14px 0 14px;                  /* comfortable spacing */
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  color: var(--muted);
  border-top: 1px solid rgba(255,255,255,0.08);
}

.footer-logo {
width: 37px;
height: 37px;
border-radius: 50%;
object-fit: cover;
/* border: 2px solid var(--muted); */
/* box-shadow: 0 0 6px rgba(0,0,0,0.2); */
}

.footer-text {
font-size: 14px;
font-weight: 600;
letter-spacing: 0.3px;
}


  .games  {
    /* font-family: 'Sugo Display', cursive; */
    /* color: var(--muted); */
    text-align: center;
    font-size: 1.75em;
  }

.todaymsg  {
  color: var(--muted);
  text-align: center;
}
.embedded .footer-container, .embedded #header-container, .embedded #gm-burger, .embedded main.index .title{
  display:none
}

.embedded main.index .grid{
  margin-top: 30px;
}

.embedded .main {
  margin: 0 auto;
}


@media (max-width: 600px) {
  main.index {
    padding:0px;
  }
  main.index .grid {
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
  }
}
