/* --- Reset básico --- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

/* --- Corpo da página --- */
body {
  background-color: #d5ebf2; /* Azul bebê de base */
  background-image: url('#'); /* Plaid azul+rosa suave */
  background-repeat: repeat;
  background-position: top left;
  background-size: auto;
  font-family: 'IM Fell DW Pica', serif;
  cursor: url('ribboncursor.png'), auto;
  color: #4a3f35;
  line-height: 1.6;
}

/* --- Container principal --- */
#container {
  max-width: 900px;
  margin: 0 auto;
  border: 1px dashed #e0bfcf; /* tom rosa suave */
  background-color: rgba(255, 255, 255, 0.85);
}

/* --- Header --- */
#header {
  background: linear-gradient(90deg, #d5ebf2, #ffd1dc); /* azul bebê → rosa bebê */
  height: 150px;
  width: 100%;
  border-bottom: 1px dashed #e0bfcf;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2em;
  color: #4a3f35;
  font-weight: bold;
}

/* --- Navbar --- */
#navbar {
  background-color: #ffe6ef; /* rosa bem suave */
  border-bottom: 1px dashed #e0bfcf;
}

#navbar ul {
  list-style: none;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 30px;
  padding: 10px 0;
}

#navbar li a {
  text-decoration: none;
  color: #4a5d73; /* contraste suave com rosa */
  font-weight: bold;
  font-size: 1.1em;
  transition: color 0.3s;
}

#navbar li a:hover {
  color: #6c7ba1; /* leve destaque azul/lavanda */
  text-decoration: underline;
}

/* --- Layout Flexível --- */
#flex {
  display: flex;
  flex-wrap: wrap;
  margin-top: 0;
}

/* --- Sidebars --- */
aside {
  width: 200px;
  background: linear-gradient(180deg, #d5ebf2, #ffd1dc); /* azul → rosa sutil */
  padding: 20px;
  border: 1px dashed #e0bfcf;
  border-radius: 0;
  margin: 0;
}

#leftSidebar { order: 1; }
#rightSidebar { order: 3; }

/* --- Conteúdo Principal --- */
main {
  flex: 1;
  padding: 20px;
  background-color: #fff0f5; /* rosa bem suave com toque branco */
  border: 1px dashed #e0bfcf;
  border-radius: 0;
  order: 2;
}

/* --- Box (caixas informativas) --- */
.box {
  background-color: #f5f8ff; /* azul bem clarinho */
  padding: 10px;
  margin-bottom: 15px;
  border: 1px dashed #e0bfcf;
  border-radius: 0;
}

/* --- Rodapé --- */
footer {
  background: linear-gradient(90deg, #d5ebf2, #ffd1dc); /* azul bebê → rosa bebê */
  text-align: center;
  padding: 10px;
  border-top: 1px dashed #e0bfcf;
  color: #4a3f35;
  font-weight: bold;
  border-radius: 0;
}

/* --- Títulos e Destaques --- */
h1, h2, h3 { color: #7b8fa3; }
strong { color: #e0bfcf; }

/* --- Links Gerais --- */
a {
  color: #a64d79;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

/* --- Responsivo --- */
@media (max-width: 800px) {
  #flex { flex-direction: column; }
  aside, main { width: 100%; border: 1px dashed #e0bfcf; }
  #navbar ul { flex-direction: column; gap: 15px; align-items: center; }
}