*{box-sizing:border-box}

body{
  margin:0;
  font-family:"Trebuchet MS", Verdana, Arial, sans-serif;
  color:#1a1a1a;

   background-image: url("rainbow2.gif");
  background-size: cover;
  background-position: center;
  background-attachment: fixed;
}

.wrap{
  max-width:1050px;
  margin:28px auto;
  padding:14px;
}

/* Header */
.header{
  border:2px solid #000;
  background:#fff4fb;
  box-shadow:0 6px 0 rgba(0,0,0,.25);
  border-radius:10px;
  overflow:hidden;
}

.banner{
  display:flex;
  gap:12px;
  align-items:center;
  justify-content:space-between;
  padding:14px 14px 8px;
  background:linear-gradient(180deg,#fff,#ffc1dc);
  border-bottom:2px solid #000;
}

.site-title{
  font-size:34px;
  font-weight:900;
  letter-spacing:.5px;
  text-shadow:2px 2px 0 rgba(0,0,0,.15);
}

.site-subtitle{
  font-size:13px;
  opacity:.85;
}

.avatar{
  width:74px;
  height:74px;
  border:2px solid #000;
  border-radius:12px;
  background:#fff;
  object-fit:cover;
}

/* Tabs */
.tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px 12px;
  background:linear-gradient(180deg,#ffc1dc,#ff9ac7);
}

.tab{
  display:inline-block;
  padding:8px 12px;
  border:2px solid #000;
  background:#fff;
  text-decoration:none;
  color:#000;
  border-radius:10px;
  box-shadow:0 3px 0 rgba(0,0,0,.25);
  font-weight:800;
}
.tab:hover{
  transform:translateY(1px);
  box-shadow:0 2px 0 rgba(0,0,0,.25);
}

/* Grid */
.grid{
  margin-top:14px;
  display:grid;
  grid-template-columns:260px 1fr 260px;
  gap:14px;
}

.col{
  display:flex;
  flex-direction:column;
  gap:14px;
}

/* Boxes */
.box{
  border:2px solid #000;
  border-radius:10px;
  overflow:hidden;
  background: rgba(255,255,255,0.92);
  
  box-shadow:0 6px 0 rgba(0,0,0,.25);
}

.box.big .box-body{ padding:16px; }

.box-title{
  font-weight:900;
  padding:10px 12px;
  background:linear-gradient(180deg,#ffc1dc,#ffd7ea);
  border-bottom:2px solid #000;
  letter-spacing:.3px;
}

.box-body{
  padding:12px;
  background:#fff;
}

.mini{ font-size:12px; opacity:.85; }

.list{ margin:8px 0 0; padding-left:18px; }
.list li{ margin:6px 0; }

.buttons{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:8px;
}
.button{
  height:31px;
  border:2px dashed rgba(0,0,0,.5);
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:11px;
  background:#fff8fd;
}

/* Center cards */
.split{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:12px;
  margin-top:12px;
}

.card{
  border:2px solid rgba(0,0,0,.5);
  border-radius:10px;
  padding:12px;
  background:#fff8fd;
}

.card-title{
  font-weight:900;
  margin-bottom:4px;
}

.more{
  display:inline-block;
  margin-top:8px;
  font-weight:900;
  text-decoration:none;
  color:#000;
  border-bottom:2px solid #000;
}

/* Little box */
.littlebox{
  border:2px dotted rgba(0,0,0,.55);
  border-radius:12px;
  padding:12px;
  background:linear-gradient(180deg,#fff,#fff1f8);
}
.lb-title{ font-weight:900; }
.lb-stars{ font-size:16px; margin:6px 0; }
.lb-text{ margin:0; }

/* Marquee safe */
.marquee{
  border:2px solid rgba(0,0,0,.4);
  background:#fff;
  border-radius:10px;
  overflow:hidden;
  padding:8px 10px;
  margin-bottom:12px;
}
.marquee-inner{
  white-space:nowrap;
  display:inline-block;
  animation:slide 12s linear infinite;
}
@keyframes slide{
  0%{ transform:translateX(100%); }
  100%{ transform:translateX(-100%); }
}

/* Fake counter */
.counter{
  font-family:"Courier New", monospace;
  font-size:26px;
  font-weight:900;
  letter-spacing:3px;
  padding:8px 10px;
  border:2px solid rgba(0,0,0,.5);
  border-radius:10px;
  background:#fff8fd;
  display:inline-block;
}

/* Moodboard */
.mood-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
}
.mood{
  height:90px;
  border:2px solid rgba(0,0,0,.35);
  border-radius:12px;
  background:linear-gradient(180deg,#fff,#ffe0ef);
  display:flex;
  align-items:center;
  justify-content:center;
  font-weight:900;
  opacity:.7;
}
.chatbox{
  padding: 0;
}

.chatbox iframe{
  border: none;
  border-radius: 8px;
}
/* Blink */
.blink{ animation:blink 1s steps(2,start) infinite; }
@keyframes blink{ to { visibility:hidden; } }

/* Footer */
.footer{
  margin-top:14px;
  text-align:center;
  padding:12px;
  border:2px solid #000;
  border-radius:10px;
  background:#fff4fb;
  box-shadow:0 6px 0 rgba(0,0,0,.25);
}

/* Responsive */
@media (max-width:980px){
  .grid{ grid-template-columns:1fr; }
  .split{ grid-template-columns:1fr; }
}