/* The Doll Palace fan homepage - clean rebuild using nostalgic uploaded assets */
* { box-sizing: border-box; }
html, body { margin: 0; padding: 0; }
body {
  background: #0752ad url("../assets/home/bbac.gif") repeat;
  font-family: Verdana, Arial, Helvetica, sans-serif;
  color: #dcecff;
  font-size: 12px;
}
a { color: #d6eaff; text-decoration: none; }
a:hover { color: #ffffff; text-decoration: underline; }
.top-strip {
  width: 100%;
  background: rgba(2, 18, 54, 0.78);
  border-bottom: 2px solid #5bc5ff;
  text-align: center;
  padding: 4px 0;
  font-size: 11px;
  letter-spacing: 1px;
}
.site-shell {
  width: 1000px;
  margin: 12px auto 30px;
  display: grid;
  grid-template-columns: 180px 1fr 155px;
  gap: 10px;
  align-items: start;
}
.header {
  grid-column: 1 / -1;
  text-align: center;
  background: #020202;
  border: 2px solid #2da5ff;
  border-radius: 6px;
  padding: 14px 10px 10px;
  box-shadow: 0 0 12px rgba(64, 172, 255, .55);
}
.header img.banner { max-width: 400px; width: 90%; height: auto; image-rendering: auto; }
.header .tagline { color: #9bd7ff; margin-top: 4px; font-size: 12px; }
.side, .main-panel {
  background: #020202;
  border: 1px solid #57b9ff;
  box-shadow: inset 0 0 0 1px #064c90, 0 0 8px rgba(0,0,0,.55);
}
.side { padding: 8px; }
.main-panel { min-height: 760px; padding: 12px 18px; }
.section-title {
  background: linear-gradient(#2b8fe9, #08498e);
  color: #fff;
  border: 1px solid #7fd1ff;
  font-weight: bold;
  text-align: center;
  padding: 4px;
  margin: 8px 0 6px;
  text-shadow: 1px 1px #00244a;
}
.news-box, .login-box, .stats-box, .friends-box {
  background: #0b4fa6;
  border: 1px solid #6fcaff;
  padding: 7px;
  margin-bottom: 9px;
  color: #eaf7ff;
}
.news-box p { margin: 5px 0 10px; line-height: 1.35; }
.small { font-size: 10px; opacity: .95; }
.main-menu {
  display: flex;
  justify-content: center;
  gap: 26px;
  flex-wrap: wrap;
  margin: 6px 0 18px;
  font-size: 11px;
}
.label-img { display: block; width: 200px; height: auto; margin: 10px auto 8px; }
.maker-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px 28px;
  max-width: 560px;
  margin: 0 auto;
  text-align: left;
}
.maker-grid h3 {
  color: #94d8ff;
  font-size: 12px;
  border-bottom: 1px dotted #3aa7ff;
  padding-bottom: 4px;
  margin: 8px 0 6px;
}
.maker-list { list-style: none; padding: 0; margin: 0; }
.maker-list li { margin: 5px 0; padding-left: 10px; position: relative; }
.maker-list li::before { content: '✦'; position: absolute; left: 0; color: #54c6ff; font-size: 9px; }
.featured-makers {
  text-align: center;
  margin: 10px auto 16px;
}
.maker-button {
  display: inline-block;
  background: #0b4fa6;
  border: 1px solid #8bd8ff;
  padding: 7px 10px;
  margin: 5px;
  border-radius: 4px;
  box-shadow: inset 0 0 8px rgba(255,255,255,.18);
  font-weight: bold;
}
.maker-button:hover { background: #176ccc; }
.right-banner { width: 125px; height: auto; display:block; margin: 8px auto; border: 1px solid #57b9ff; }
.tiny-banner { display:block; width:88px; height:auto; margin: 6px auto; }
.login-box label { display:block; margin-top: 5px; }
.login-box input { width: 100%; font-size: 11px; padding: 3px; margin-top: 2px; }
.login-box button { margin-top: 6px; width: 100%; background:#1d64b6; color:white; border:1px solid #9de0ff; padding:4px; cursor:pointer; }
.decor-doll-row { text-align:center; margin: 6px 0; }
.decor-doll-row img { margin: 2px; vertical-align: middle; }
.footer {
  grid-column: 1 / -1;
  text-align:center;
  color:#cfeeff;
  background: rgba(0,0,0,.65);
  border: 1px solid #57b9ff;
  padding: 8px;
  font-size: 11px;
}
@media (max-width: 1050px) {
  .site-shell { width: 96%; grid-template-columns: 170px 1fr; }
  .right { grid-column: 1 / -1; display:grid; grid-template-columns: repeat(auto-fit, minmax(140px,1fr)); gap:8px; }
}
@media (max-width: 760px) {
  .site-shell { display:block; width: 94%; }
  .side, .main-panel { margin-bottom: 10px; }
  .maker-grid { grid-template-columns: 1fr; }
}


/* Login/Signup page styling restored */
.auth-page-wrap{
  max-width: 760px;
  margin: 0 auto;
  text-align:left;
}
.auth-card{
  background:#0b4fa6;
  border:1px solid #7fd1ff;
  box-shadow: inset 0 0 0 1px #063b7b, 0 0 8px rgba(0,0,0,.45);
  margin: 12px auto;
  padding: 12px;
  color:#eaf7ff;
}
.auth-title{
  background: linear-gradient(#2b8fe9, #08498e);
  border:1px solid #9de0ff;
  color:#fff;
  font-weight:bold;
  text-align:center;
  padding:6px;
  text-shadow:1px 1px #00244a;
  margin-bottom:10px;
}
.auth-subtitle{ text-align:center; font-size:11px; margin: 4px 0 12px; color:#dff5ff; }
.auth-form table{ width:100%; border-collapse:collapse; }
.auth-form td{ padding:5px; vertical-align:top; }
.auth-label{ width:165px; font-weight:bold; font-size:11px; color:#fff; text-align:right; }
.auth-form input[type="text"], .auth-form input[type="email"], .auth-form input[type="password"], .auth-form select{
  width:100%; max-width:310px; padding:4px; font-size:12px; border:1px solid #6fcaff; background:#eef8ff; color:#001d3f;
}
.auth-form input[type="checkbox"], .auth-form input[type="radio"]{ vertical-align:middle; }
.auth-actions{ text-align:center; padding-top:10px; }
.auth-button{
  background:#1d64b6; color:white; border:1px solid #9de0ff; padding:6px 18px; cursor:pointer; font-weight:bold; border-radius:3px; margin:4px;
  box-shadow: inset 0 0 8px rgba(255,255,255,.18);
}
.auth-button:hover{ background:#2b8fe9; }
.auth-note{
  background:#073b80; border:1px dotted #8bd8ff; padding:8px; font-size:11px; line-height:1.45; margin-top:10px;
}
.auth-message{ margin:10px 0; padding:8px; border:1px solid #8bd8ff; background:#05356f; text-align:center; display:none; }
.auth-message.show{ display:block; }
.auth-links{ text-align:center; margin-top:10px; font-size:11px; }
.auth-mini-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; }
@media(max-width:760px){ .auth-label{width:auto;text-align:left;display:block;} .auth-form td{display:block;width:100%;} .auth-mini-grid{grid-template-columns:1fr;} }
