/* Precious Tax Center — matches SilverScoreboard classic board theme */
:root {
  --bg: #0f1012;
  --surface: #16181b;
  --surface-2: #1c1f23;
  --border: #2a2d33;
  --text: #ecebe8;
  --text-faint: #b8bcc4;
  --accent: #d4af37;
  --accent-soft: rgba(212, 175, 55, 0.15);
  --silver: #c0c0c0;
  --bull: #4ade80;
  --bear: #f87171;
  --radius: 12px;
  --radius-lg: 18px;
  --shadow: 0 1px 3px rgba(0,0,0,0.4), 0 4px 12px rgba(0,0,0,0.25);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { overflow-x: hidden; }
html, body { background: var(--bg); color: var(--text); }
body {
  font-family: 'Satoshi', 'Segoe UI', 'Helvetica Neue', Arial, sans-serif;
  line-height: 1.65;
  -webkit-font-smoothing: antialiased;
  padding-bottom: 64px;
}
a { color: var(--accent); text-decoration: none; }
a:hover { text-decoration: underline; }

/* Header */
.tc-head {
  display: flex; align-items: center; justify-content: space-between;
  padding: 16px 20px; border-bottom: 1px solid var(--border);
  background: var(--surface);
  position: sticky; top: 0; z-index: 10;
}
.tc-head .brand {
  font-weight: 700; font-size: 15px; letter-spacing: 0.02em; color: var(--text);
}
.tc-head .brand span { color: var(--accent); }
.tc-head .home-link { font-size: 13px; color: var(--text-faint); }
.tc-head .home-link:hover { color: var(--accent); }

/* Layout */
.wrap { max-width: 860px; margin: 0 auto; padding: 28px 20px 0; }
.page-title { font-size: 28px; font-weight: 900; letter-spacing: -0.01em; margin-bottom: 6px; }
.page-sub { color: var(--text-faint); font-size: 15px; margin-bottom: 26px; }
h2 { font-size: 20px; font-weight: 700; margin: 34px 0 10px; color: var(--text); }
h3 { font-size: 16px; font-weight: 700; margin: 22px 0 8px; color: var(--silver); }
p { margin-bottom: 14px; font-size: 15.5px; }
ul, ol { margin: 0 0 16px 22px; font-size: 15.5px; }
li { margin-bottom: 8px; }
strong { color: var(--text); }

/* Cards / shelves */
.shelf-grid { display: grid; grid-template-columns: 1fr; gap: 14px; }
@media (min-width: 640px) { .shelf-grid { grid-template-columns: 1fr 1fr; } }
.shelf {
  display: block; background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius); padding: 20px; color: var(--text);
  transition: border-color .15s ease;
}
.shelf:hover { border-color: var(--accent); text-decoration: none; }
.shelf .shelf-kicker { font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--accent); margin-bottom: 8px; font-weight: 700; }
.shelf .shelf-title { font-size: 17px; font-weight: 700; margin-bottom: 6px; }
.shelf .shelf-desc { font-size: 13.5px; color: var(--text-faint); line-height: 1.5; }

/* Callout boxes */
.note {
  background: var(--accent-soft); border: 1px solid rgba(212,175,55,.4);
  border-radius: var(--radius); padding: 14px 16px; margin: 18px 0; font-size: 14.5px;
}
.note strong { color: var(--accent); }
.plain {
  background: var(--surface); border: 1px solid var(--border);
  border-radius: var(--radius); padding: 14px 16px; margin: 18px 0; font-size: 14.5px;
}

/* Tables */
table { width: 100%; border-collapse: collapse; margin: 14px 0 20px; font-size: 14px; }
.table-scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.table-scroll table { margin-top: 6px; margin-bottom: 6px; }
th, td { text-align: left; padding: 10px 12px; border-bottom: 1px solid var(--border); }
th { color: var(--accent); font-weight: 700; font-size: 12.5px; text-transform: uppercase; letter-spacing: .05em; }
td { color: var(--text); }
tr td:last-child, tr th:last-child { text-align: right; }
.num-pos { color: var(--bull); }
.num-neg { color: var(--bear); }

/* Buttons */
.btn {
  display: inline-block; background: var(--accent); color: #141414;
  font-weight: 700; font-size: 14.5px; padding: 12px 22px;
  border-radius: 10px; margin: 6px 10px 6px 0;
}
.btn:hover { text-decoration: none; filter: brightness(1.08); }
.btn.secondary { background: var(--surface-2); color: var(--text); border: 1px solid var(--border); }

/* Letter preview */
.letter {
  background: #f5f2ea; color: #1a1a1a; border-radius: var(--radius);
  padding: 28px 26px; font-family: 'Times New Roman', Times, serif;
  font-size: 15px; line-height: 1.6; margin: 16px 0 24px;
  box-shadow: var(--shadow);
}
.letter .ph { color: #7a6a30; font-style: italic; }
.letter p { margin-bottom: 13px; color: #1a1a1a; font-size: 15px; }
.letter .re-line { font-weight: bold; }

/* Audio cards (Weekend Wisdom tax editions) */
.shelf audio { width: 100%; margin-top: 14px; }
.listen-btn {
  display: inline-block; margin-top: 10px; padding: 9px 16px;
  border: 1px solid var(--accent); border-radius: 8px;
  color: var(--accent); font-weight: 500; font-size: 13px;
  text-decoration: none;
}
.listen-btn:hover { background: rgba(212,175,55,0.12); }

/* Footer */
.tc-foot {
  margin-top: 48px; padding: 22px 20px; border-top: 1px solid var(--border);
  color: var(--text-faint); font-size: 12.5px; text-align: center; line-height: 1.7;
}
.tc-foot .disc { max-width: 720px; margin: 0 auto 8px; }
