/* Background */
body {
  margin: 0;
  min-height: 100vh;                         /* safer than fixed 100vh on mobile */
  background-color: #000000;                 /* fallback color while image loads */
  background-image: url('../images/contactgod-firstbackground.png'); /* fallback image */
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  background-attachment: fixed;              /* optional; remove if you don't want parallax effect */
  display: flex;
  flex-direction: column;
  align-items: center;                       /* center content horizontally */
  font-family: 'Montserrat', sans-serif;
  transition: background-image none;
  padding-top: 10px; /* space from top */
  box-sizing: border-box;
}
html, body {
  height: 100%;
  margin: 0;
}


.main-content {
  flex: 1; /* pushes footer down */
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
/* Messageboard container */
.messageboard {
  max-width: 980px;
  margin: 30px auto;
  text-align: center;
  background: rgb(0, 0, 0);
  padding: 10px;
  box-shadow: 0 8px 30px rgba(0,0,0,0.6);
  backdrop-filter: blur(4px);
}

/* Header inside messageboard */
.mb-header h1 {
  font-size: 2.1rem;
  color: #eec01b;
  text-shadow: 4px 4px 6px rgba(0, 0, 0, 0.8);
  margin: 5px;
}

.mb-header h2 {
  font-size: 1.25rem;
  color: #ffffff;
  font-weight: 500;
  margin: 0 0 12px;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.8);
}

.mb-header p {
  color: #e9e9e9;
  font-size: 1rem;
  margin: 0 0 16px;
  line-height: 1.45;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.8);
}

/* Prayer form */
.prayer-form {
  display: block;
  margin: 0 auto 16px;
  max-width: auto;
  width: 100%;
  text-align: center; /* center form text and controls */
}
/* color choices on prayer form ------------------------------------ */
.color-row {
  display: flex;
  align-items: center;
  gap: 8px;              /* space between label and swatches */
  margin: 7px 0;
  justify-content: center; /* keeps it centered with the form */
}

.color-label {
  margin: 0;
  font-size: 0.85rem;
  font-weight: 500;
  color: #fff;           /* visible against your dark background */
}

.color-choices {
  display: flex;
  gap: 5px;
  margin: 7px 0;
}

.color-choices input[type="radio"] {
  display: none; /* hide the actual radio button */
}

.color-swatch {
  display: inline-block;
  width: 14px;
  height: 14px;
  cursor: pointer;
}

.color-choices input[type="radio"]:checked + .color-swatch {
  border: 2px solid #333; /* highlight selected color */
}
/* color choices end ------------------------------------------------ */

.prayer-form textarea {
  width: 100%;
  min-height: 72px;
  resize: vertical;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(36, 36, 36, 0.514);
  color: #fff;
  font-size: 0.95rem;
  box-sizing: border-box;
  outline: none;
  transition: box-shadow .18s ease, border-color .18s ease;
  text-shadow: 2px 2px 3px rgba(0, 0, 0, 0.85);
}

.prayer-form textarea:focus {
  box-shadow: 0 6px 20px rgba(0,0,0,0.6);
  border-color: rgba(255, 255, 255, 0.685);
}

/* form row: button + counter */
.form-row {
  display: flex;
  gap: 14px;
  align-items: center;
  margin-top: 10px;
}

.prayer-form button {
  background: linear-gradient(180deg,#ffd84d,#ffb700);
  color: #081219;
  border: none;
  padding: 8px 10px;
  border-radius: 10px;
  cursor: pointer;
  font-weight: 600;
  font-size: 0.85rem;
  transition: transform .12s ease, box-shadow .12s ease;
}
.prayer-form button:hover {
  box-shadow: 0 4px 12px rgba(0,0,0,0.5);
  transform: translateY(-1px);
  background: rgb(184, 184, 184);
}
.prayer-form button:active { transform: translateY(1px); }
.prayer-form button:disabled {
  opacity: 0.55;
  cursor: not-allowed;
  transform: none;
}

.char-counter {
  margin-left: auto;
  color: #dfe8ff;
  font-size: 0.85rem;
}

/* small form message */
.form-msg {
  color: #e1e1e1;
  font-size: 0.85rem;
  margin-top: 8px;
  min-height: 15px;
}
/* Info Button ------------------------------------------------- */
.info-btn {
  margin-left: 6px;
  background: #333333;
  color: #fcff53;
  border: none;
  border-radius: 40%;
  width: 12px;
  height: 20px;
  font-size: 0.7rem;
  font-weight: bold;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.info-btn:hover {
  background: #838383;
}

.rules-box {
  background-color: rgb(46, 46, 46);
  border: 4px solid black;
  padding: 10px;
  margin-top: 10px;
  text-align: left;
  font-size: 0.78rem;
  color: #ffffff;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

/* Prayer feed list */
.prayer-feed {
  margin-top: 12px;
  max-height: 500px;
  overflow: auto;
  display: grid;
  gap: 10px;
  padding: 6px;
  box-sizing: border-box;
}

/* individual prayer card */
.prayer-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.082), rgba(255,255,255,0.01));
  border: 1px solid rgba(255, 255, 255, 0.5);
  padding: 12px 14px;
  border-radius: 10px;
  color: #ffffff;
  font-size: 0.85rem;
  text-align: center; /* center prayer text */
  word-wrap: break-word;
  line-height: 1.25;
}

/* prayer meta row: time */
.prayer-meta {
  margin-top: 8px;
  color: rgba(255,255,255,0.62);
  font-size: 0.70rem;
}


/* screen-reader only helper */
.sr-only {
  position: absolute;
  left: -9999px;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

footer {
  background-color: #000;
  margin-top: 20px;
  color: #fff;
  text-align: center; /* center footer text */
  padding: 10px;
  width: 100%;
  position: relative;
  z-index: 10;
}
footer p {
  margin: 8px 0;
  font-family:Arial, Helvetica, sans-serif;
  line-height: 1.5;
  font-size: 0.8rem !important;
}
#site-age-box {
  margin-left: 5px; 
  font-size: 0.7rem;
  color: #aaa;
  padding: 4px;
  background: rgba(0, 0, 0, 0.350)
}

/* Mobile adjustments */
@media (max-width: 600px) {
  .mb-header {
    margin: 0 auto;
    text-align: center; /* keep text centered */
  }

  .mb-header h1,
  .mb-header h2,
  .mb-header p {
    margin: 0 auto; /* center the block elements */
  }

  .mb-header h1 {
    width: 60%;
    font-size: 1.68rem; /* 20% smaller */
  }

  .mb-header h2 {
    width: 60%;
    font-size: 1rem; /* 20% smaller */
  }

  .mb-header p {
    width: 90%;
    font-size: 0.8rem; /* 20% smaller */
    line-height: 1.4;
  }
}



