body {
  margin: 0;
  padding: 12px 0;
  background: #141008;
  color: #2e2416;
  font-family: Verdana, Geneva, sans-serif;
  font-size: 12px;
}
.page { width: 900px; margin: 0 auto; }
.banner {
  background: linear-gradient(#3a2a15, #1d1409);
  border: 3px solid #5a4423;
  padding: 14px;
  text-align: center;
  color: #d4b96a;
  font-size: 24px;
  font-weight: bold;
  letter-spacing: 4px;
}
.layout { display: flex; gap: 10px; margin-top: 10px; align-items: flex-start; }
.sidebar { width: 170px; flex-shrink: 0; }
.navgroup {
  background: #4a5a2a;
  color: #e8dcc0;
  padding: 5px 8px;
  border: 2px solid #5a4423;
  font-weight: bold;
  font-size: 11px;
  letter-spacing: 1px;
  margin-top: 8px;
}
.navgroup:first-child { margin-top: 0; }
.navitem {
  display: block;
  background: #3b3125;
  color: #c9b78e;
  padding: 6px 8px;
  border: 2px solid #5a4423;
  border-top: 0;
  text-decoration: none;
}
.navitem:hover { background: #5c4c30; color: #f0e4c4; }
.content { flex: 1; }
.panel { border: 3px solid #5a4423; background: #d8c9a0; margin-bottom: 10px; }
.panel-header {
  background: #4a5a2a;
  color: #e8dcc0;
  padding: 6px 9px;
  font-weight: bold;
  border-bottom: 3px solid #5a4423;
}
.panel-body { padding: 9px; }
table { width: 100%; border-collapse: collapse; }
th { background: #b8a97e; padding: 5px 9px; text-align: left; }
tr:nth-child(odd) td { background: #d8c9a0; }
tr:nth-child(even) td { background: #c6b58c; }
td { padding: 5px 9px; }
label { display: block; margin: 8px 0 3px; font-weight: bold; }
input[type=text], input[type=email], input[type=password] {
  width: 260px;
  padding: 4px;
  border: 2px solid #5a4423;
  background: #efe6cd;
  font-family: inherit;
  font-size: 12px;
}
button {
  background: linear-gradient(#6b7d42, #4a5a2a);
  color: #f0e4c4;
  border: 2px solid #5a4423;
  padding: 5px 16px;
  font-weight: bold;
  font-family: inherit;
  cursor: pointer;
}
.error { color: #7a3020; font-weight: bold; }
.posted-at {
  margin: 8px 0 0;
  padding-top: 6px;
  border-top: 1px solid #b8a97e;
  color: #6b6355;
  font-size: 10px;
  font-style: italic;
}
.footer {
  margin-top: 10px;
  text-align: center;
  color: #6b6355;
  font-size: 10px;
  border-top: 2px solid #3a2f1e;
  padding-top: 8px;
}
