/* POSTBEEP.NET tier 3 stylesheet. Hand-written. No framework.
   The visual target is HTML 3.2 plus Netscape extensions, rendered with
   CSS instead of <font> tags. Don't add gradients, shadows, or
   transitions; the look is flat by design. */

:root {
  --bg: #d8c9a8;          /* tan page */
  --fg: #000000;
  --link: #0000ee;
  --vlink: #551a8b;
  --alink: #ff0000;
  --header-bar: #234a34;  /* deep forest fake browser chrome */
  --section-bar: #2f5d3f; /* forest green "[ Label ]" bars */
  --section-fg: #f5efe0;  /* cream text on the green bars */
  --bevel-light: #ffffff;
  --bevel-dark: #404040;
  --frame-bg: #d8d8d8;
}

html, body {
  margin: 0;
  padding: 0;
}

body {
  background-color: var(--bg);
  background-image: url("/assets/common/img/bg_tan_tile.gif");
  color: var(--fg);
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  line-height: 1.4;
}

a:link    { color: var(--link); }
a:visited { color: var(--vlink); }
a:active  { color: var(--alink); }

.page {
  max-width: 800px;
  margin: 0 auto;
  padding: 0;
  background: var(--bg);
  border-left: 2px solid var(--bevel-light);
  border-right: 2px solid var(--bevel-dark);
}

/* Fake browser chrome */
.chrome {
  background: var(--header-bar);
  color: var(--section-fg);
  border: 2px outset #5c7a64;
  padding: 2px 6px;
  font-family: "MS Sans Serif", Verdana, sans-serif;
  font-size: 11px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.chrome-buttons {
  font-family: monospace;
  letter-spacing: 2px;
}

/* ASCII banner block */
.banner {
  background: var(--bg);
  color: var(--fg);
  font-family: "Courier New", Courier, monospace;
  font-size: 11px;
  line-height: 1.1;
  white-space: pre;
  text-align: center;
  margin: 0;
  padding: 8px 4px;
  overflow-x: auto;
}

.tagline {
  text-align: center;
  font-style: italic;
  margin: 0 0 8px 0;
  padding: 0 8px;
}

/* Beveled section headers, the "[ Label ]" bars */
h2.section {
  background: var(--section-bar);
  color: var(--section-fg);
  font-family: "Times New Roman", Times, serif;
  font-size: 16px;
  font-weight: bold;
  margin: 12px 0 6px 0;
  padding: 2px 8px;
  border-top: 2px solid var(--bevel-light);
  border-left: 2px solid var(--bevel-light);
  border-right: 2px solid var(--bevel-dark);
  border-bottom: 2px solid var(--bevel-dark);
}

h3 {
  font-size: 15px;
  margin: 10px 0 4px 0;
}

.content {
  padding: 4px 12px 12px 12px;
}

.content p { margin: 6px 0; }
.content ul { margin: 4px 0; padding-left: 24px; }

/* Project directory listing on the homepage */
ul.directory {
  list-style: none;
  padding: 0;
  margin: 8px 0;
}

ul.directory li {
  padding: 6px 0;
  border-bottom: 1px dashed var(--bevel-dark);
}

ul.directory li:last-child { border-bottom: none; }

.proj-name {
  font-weight: bold;
  font-size: 17px;
}

.proj-tag {
  font-style: italic;
  margin-left: 6px;
}

.proj-meta {
  font-size: 13px;
  color: #303030;
  margin-top: 2px;
}

.featured-badge {
  background: #ffff80;
  color: #000;
  border: 1px solid #808000;
  font-size: 11px;
  padding: 0 4px;
  margin-left: 6px;
  font-family: "MS Sans Serif", Verdana, sans-serif;
}

.new-badge {
  vertical-align: middle;
  margin-left: 4px;
}

/* Tables for download tables on project pages */
.dl-table {
  border-collapse: collapse;
  margin: 6px 0;
  width: 100%;
}
.dl-table th, .dl-table td {
  border: 1px solid var(--bevel-dark);
  padding: 4px 8px;
  text-align: left;
  font-size: 14px;
}
.dl-table th {
  background: var(--section-bar);
  color: var(--section-fg);
}

code, pre {
  font-family: "Courier New", Courier, monospace;
}

pre.cmd {
  background: #000000;
  color: #00ff00;
  padding: 6px 8px;
  border: 2px inset #808080;
  overflow-x: auto;
  font-size: 13px;
}

/* Footer */
.footer {
  margin-top: 16px;
  padding: 8px 12px 12px 12px;
  border-top: 2px ridge var(--bevel-light);
  font-size: 13px;
  text-align: center;
}

.footer .nav {
  font-family: "Courier New", Courier, monospace;
  letter-spacing: 1px;
  margin: 6px 0;
}

.footer .counter {
  margin-top: 6px;
  font-family: "Courier New", Courier, monospace;
}

.footer .colophon {
  margin-top: 6px;
  color: #303030;
}

.button-row {
  margin: 8px 0;
  text-align: center;
}

.button-row img {
  border: 0;
  margin: 2px;
}

/* /buttons/ page: one row per linkback, button on the left, copyable
   snippet on the right. Flat layout; no grid. */
ul.button-list {
  list-style: none;
  padding: 0;
  margin: 8px 0;
}

ul.button-list li {
  display: flex;
  gap: 12px;
  align-items: flex-start;
  padding: 8px 0;
  border-bottom: 1px dashed var(--bevel-dark);
}

ul.button-list li:last-child { border-bottom: none; }

.button-preview {
  flex: 0 0 88px;
}

.button-preview img {
  border: 1px solid var(--bevel-dark);
}

.button-meta {
  flex: 1;
  min-width: 0;
}

.button-desc {
  font-style: italic;
  font-size: 13px;
  margin: 2px 0 4px 0;
}

.button-snippet {
  background: #f8f8f0;
  border: 1px inset var(--bevel-dark);
  padding: 4px 6px;
  font-size: 12px;
  white-space: pre-wrap;
  word-break: break-all;
  margin: 4px 0;
}

/* /links/ page: one ul per category, plain list with notes. */
ul.link-list {
  padding-left: 24px;
  margin: 4px 0 8px 0;
}

ul.link-list li {
  padding: 2px 0;
}

.link-note {
  font-style: italic;
  font-size: 13px;
  color: #303030;
}

/* /webring/ page */
.webring-nav {
  text-align: center;
  font-family: "Courier New", Courier, monospace;
  background: #e8e8e8;
  border: 1px inset var(--bevel-dark);
  padding: 4px 8px;
  margin: 8px 0;
}

ul.webring-list {
  list-style: none;
  padding: 0;
  margin: 8px 0;
}

ul.webring-list li {
  padding: 6px 0;
  border-bottom: 1px dashed var(--bevel-dark);
}

ul.webring-list li:last-child { border-bottom: none; }

.webring-stub {
  color: #808080;
  font-size: 12px;
  margin-left: 4px;
}

.webring-tag {
  font-style: italic;
  font-size: 13px;
  color: #303030;
  margin-top: 2px;
}

/* /tell-a-friend/ page */
a.big-mailto {
  display: inline-block;
  padding: 6px 14px;
  background: var(--section-bar);
  color: var(--section-fg);
  text-decoration: none;
  font-weight: bold;
  border-top: 2px solid var(--bevel-light);
  border-left: 2px solid var(--bevel-light);
  border-right: 2px solid var(--bevel-dark);
  border-bottom: 2px solid var(--bevel-dark);
  font-family: "MS Sans Serif", Verdana, sans-serif;
}

a.big-mailto:visited { color: var(--section-fg); }

pre.mail-preview {
  background: #ffffe0;
  border: 1px inset var(--bevel-dark);
  padding: 6px 8px;
  font-size: 13px;
  white-space: pre-wrap;
}

/* /whats-new/ list */
ul.news-list {
  list-style: none;
  padding: 0;
  margin: 8px 0;
}

ul.news-list li {
  padding: 8px 0;
  border-bottom: 1px dashed var(--bevel-dark);
}

ul.news-list li:last-child { border-bottom: none; }

.news-date {
  font-family: "Courier New", Courier, monospace;
  font-size: 12px;
  color: #404040;
}

.news-headline {
  margin: 2px 0;
}

.news-headline a {
  font-weight: bold;
  font-size: 16px;
}

.news-tag {
  font-family: "Courier New", Courier, monospace;
  background: #ffff80;
  color: #000;
  border: 1px solid #808000;
  font-size: 12px;
  padding: 0 4px;
  margin-left: 4px;
}

.news-release {
  font-size: 13px;
  margin-left: 6px;
}

.news-short {
  font-style: italic;
  font-size: 13px;
  margin-top: 2px;
}
