
html, body {
  height: 100%;
  margin: 0;
}

.page-container {
  display: flex;
  flex-direction: column;
}

main {
  flex: 1; /* dorong footer ke bawah */
}

.footer {
  margin-top: auto;
  text-align: center;
  width: 100%;
  background: #222;
  padding: 12px 0;
  font-size: 15px;
  color: #f1f1f1;
  font-family: 'Segoe UI', Arial, sans-serif;
  box-shadow: 0 -1px 8px rgba(0,0,0,0.12);
}

.footer a {
  color: #66c0f4;
  text-decoration: none;
}

.footer q {
  color: #2a475e;
  text-decoration: none;
}

.footer-links {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.7em;
}

.footer-links a {
  color: #f1f1f1;
  text-decoration: none;
  font-weight: 600;
  transition: color 0.2s;
  font-size: 15px;
}

.footer-links a:hover {
  color: #00ffe7;
}

.footer-links .divider {
  color: #c4c4c4;
  font-weight: 400;
  font-size: 16px;
  margin: 0 0.25em;
  user-select: none;
  pointer-events: none;
}

@media (max-width: 600px) {
  .footer-links {
    flex-direction: column;
    gap: 0;
  }
  .footer-links .divider {
    display: none;
  }
  .footer-links a {
    margin: 3px 0;
    display: inline-block;
  }
}

/* === SOCIAL ICONS ONLY === */
:root{ --soc-size: 50px; }

/* Right-align + beri jarak dari tepi kanan */
.footer .socials.icons{
  width: 100%;
  margin: 14px 0 10px;               /* hilangkan auto (yang bikin center) */
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;         /* bukan 'right' */
  align-items: center;               /* bukan 'right' */
  gap: 14px;
  padding-right: 18px;               /* jarak dari tepi kanan */
}

/* Opsional: di mobile tetap center */
@media (max-width:600px){
  .footer .socials.icons{
    justify-content: center;
    padding-right: 0;
  }
}


.footer .soc-btn{
  width: var(--soc-size); height: var(--soc-size);
  display:inline-flex; align-items:center; justify-content:center;
  border-radius: 50%;
  border: 1.6px solid rgba(255,255,255,.7);
  color:#f1f1f1; text-decoration:none;
  background: transparent;
  transition: transform .15s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease;
}
.footer .soc-btn i{ font-size: 18px; line-height: 1; }

/* Hover brand glow */
.footer .soc-btn.discord:hover{  border-color:#5865F2; background:rgba(88,101,242,.12);  box-shadow:0 0 18px rgba(88,101,242,.55);  transform:translateY(-2px); }
.footer .soc-btn.facebook:hover{ border-color:#1877F2; background:rgba(24,119,242,.12);  box-shadow:0 0 18px rgba(24,119,242,.55);  transform:translateY(-2px); }
.footer .soc-btn.youtube:hover{  border-color:#FF0033; background:rgba(255,0,51,.12);    box-shadow:0 0 18px rgba(255,0,51,.55);  transform:translateY(-2px); }
.footer .soc-btn.tiktok:hover{   border-color:#EE1D52; background:rgba(238,29,82,.12);   box-shadow:0 0 18px rgba(238,29,82,.55);  transform:translateY(-2px); }
.footer .soc-btn.instagram:hover{border-color:#E1306C; background:rgba(225,48,108,.12);  box-shadow:0 0 18px rgba(225,48,108,.55); transform:translateY(-2px); }

/* Aksesibilitas */
.footer .soc-btn:focus-visible{
  outline: 2px solid #00ffe7; outline-offset: 3px;
}

/* Mobile size tweak */
@media (max-width:600px){
  :root{ --soc-size: 40px; }
  .footer .socials.icons{ gap: 12px; }
}
