/* —— BuddhaJones.org Archive Project — Shared Stylesheet —— */

/* —— VARIABLES —— */
:root {
  --black:          #111111;
  --white:          #ffffff;
  --paper:          #ffffff;
  --bg-light:       #ffffff;
  --tint:           #faf7fe;
  --border:         #d9c8e8;
  --rule:           #d9c8e8;
  --rule-light:     #ead8f5;
  --lavender-light: #f7f0fc;
  --logo-purple:    #c97fd4;
  --logo-lavender:  #b8b0d8;
  --logo-cyan:      #40b0e0;
  --logo-yellow:    #e8c800;
  --logo-green:     #6ab830;
  --dark-green:     #2d6e1a;
  --wt-color:       #9b59c4;
  --lb-color:       #40b0e0;
  --sd-color:       #b8b0d8;
}

/* —— RESET —— */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

/* —— BASE —— */
body {
  background: var(--bg-light);
  color: var(--black);
  font-family: 'DM Sans', sans-serif;
  font-size: 20px;
  line-height: 1.6;
}

/* —— SITE HEADER —— */
header {
  border-bottom: 2px solid var(--black);
  padding: 28px 40px;
  display: flex;
  align-items: center;
  gap: 24px;
  background: var(--white);
}
header > a {
  display: flex;
  align-items: center;
  gap: 24px;
  text-decoration: none;
  color: inherit;
  flex: 1;
}
header img.logo {
  height: 96px;
  width: auto;
  display: block;
  flex-shrink: 0;
}
.header-text h1 {
  font-family: 'DM Sans', sans-serif;
  font-size: 1.35rem;
  font-weight: 600;
  letter-spacing: 0.01em;
  line-height: 1.2;
  color: var(--black);
}
.header-text p {
  font-family: 'DM Mono', monospace;
  font-size: 0.85rem;
  font-weight: 400;
  color: var(--black);
  margin-top: 4px;
  letter-spacing: 0.03em;
}

/* —— PAGE INTRO —— */
.page-intro {
  padding: 32px 40px 20px;
  border-bottom: 3px solid var(--black);
  background: var(--white);
}
.page-intro h2 {
  font-family: 'Inter', Arial, sans-serif;
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--black);
  margin-bottom: 6px;
}
.intro-meta {
  font-family: 'Inter', Arial, sans-serif;
  font-size: 0.8rem;
  color: var(--black);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-weight: 600;
  margin-bottom: 8px;
}
.intro-desc {
  font-family: 'Inter', Arial, sans-serif;
  font-size: 1rem;
  color: var(--black);
}

/* —— NAVIGATION TABS —— */
.site-nav {
  border-bottom: 2px solid var(--rule);
  padding: 0 40px;
  display: flex;
  flex-wrap: wrap;
  background: var(--white);
}
.site-nav a {
  display: inline-block;
  padding: 15px 22px;
  font-family: 'Inter', Arial, sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--black);
  text-decoration: none;
  border-right: 1px solid var(--rule);
}
.site-nav a:first-child { border-left: 1px solid var(--rule); }
.site-nav a:hover { background: var(--lavender-light); color: var(--logo-purple); }

/* —— SEARCH BAR —— */
.site-search {
  background: var(--bg-light);
  padding: 18px 40px;
  border-bottom: 2px solid var(--rule);
}
.site-search-inner {
  display: flex;
  align-items: center;
  gap: 12px;
  max-width: 780px;
}
.site-search label {
  font-family: 'Inter', sans-serif;
  font-size: 0.8rem;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--black);
  white-space: nowrap;
  font-weight: 600;
}
.site-search input {
  flex: 1;
  padding: 9px 14px;
  font-family: 'Inter', sans-serif;
  font-size: 0.95rem;
  border: 2px solid var(--rule);
  border-radius: 3px;
  background: var(--white);
  color: var(--black);
  outline: none;
  transition: border-color 0.15s;
}
.site-search input:focus { border-color: var(--logo-purple); }
.site-search select {
  padding: 9px 14px;
  font-family: 'Inter', sans-serif;
  font-size: 0.88rem;
  font-weight: 500;
  border: 2px solid var(--rule);
  border-radius: 3px;
  background: var(--white);
  color: var(--black);
  outline: none;
  cursor: pointer;
}
.site-search button {
  background: var(--white);
  border: 1px solid var(--rule);
  border-radius: 3px;
  color: var(--black);
  font-family: 'Inter', sans-serif;
  font-size: 0.85rem;
  font-weight: 600;
  padding: 8px 14px;
  cursor: pointer;
  letter-spacing: 0.04em;
  transition: background 0.15s;
}
.site-search button:hover { background: var(--lavender-light); }
.count-label {
  font-family: 'DM Mono', monospace;
  font-size: 0.8rem;
  font-weight: 400;
  color: var(--black);
  white-space: nowrap;
}

/* —— MAIN CONTENT AREA —— */
.content-wrap {
  max-width: 960px;
  margin: 0 auto;
  padding: 32px 40px 0;
}

/* —— POST INDEX: MONTH GROUPS —— */
.month-group {
  background: var(--white);
  border-left: 1px solid var(--black);
  border-right: 1px solid var(--black);
  border-top: 1px solid var(--black);
}
.month-group:last-of-type {
  border-bottom: 1px solid var(--black);
  margin-bottom: 32px;
}
.month-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 9px 20px;
  background: var(--bg-light);
  border-bottom: 1px solid var(--rule);
}
.month-heading h2 {
  font-family: 'Inter', Arial, sans-serif;
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--black);
}
.month-count {
  font-family: 'DM Mono', monospace;
  font-size: 0.75rem;
  font-weight: 400;
  color: var(--black);
  letter-spacing: 0.04em;
}

/* —— POST INDEX: POST ROWS —— */
.post-list { list-style: none; }
.post-item {
  display: flex;
  align-items: center;
  border-bottom: 1px solid var(--rule-light);
}
.post-item:last-child { border-bottom: none; }
.post-item:hover { background: var(--tint); }
.post-day {
  flex-shrink: 0;
  width: 48px;
  padding-left: 20px;
  font-family: 'DM Mono', monospace;
  font-size: 0.8rem;
  font-weight: 400;
  color: var(--black);
}
.post-link {
  flex: 1;
  display: block;
  padding: 11px 16px 11px 8px;
  color: var(--black);
  text-decoration: none;
  font-family: 'DM Sans', sans-serif;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.4;
}
.post-link:hover { color: var(--dark-green); }
.post-cat {
  flex-shrink: 0;
  margin-right: 16px;
  font-family: 'DM Mono', monospace;
  font-size: 0.72rem;
  font-weight: 500;
  letter-spacing: 0.09em;
  text-transform: uppercase;
  color: var(--logo-purple);
  background: var(--lavender-light);
  border: 1px solid var(--rule);
  border-radius: 3px;
  padding: 2px 7px;
  white-space: nowrap;
}
.post-cat.cat-diary {
  color: #2288b0;
  background: #eef8fd;
  border-color: #c0e4f4;
}
.post-item.hidden   { display: none; }
.month-group.hidden { display: none; }
.no-results {
  display: none;
  padding: 48px 0;
  text-align: center;
  font-family: 'Inter', sans-serif;
  font-size: 1rem;
  color: var(--black);
}

/* —— COLLECTION CARDS —— */
.site-cards {
  background: white;
  border-top: 1px solid var(--black);
}
.site-card {
  display: flex;
  align-items: stretch;
  border-bottom: 1px solid var(--black);
  text-decoration: none;
  color: var(--black);
}
.site-card:hover { background: var(--tint); }
.site-card-accent { width: 6px; flex-shrink: 0; }
.site-card-body { padding: 28px 28px 28px 24px; flex: 1; }
.site-card-label {
  font-family: 'DM Mono', monospace;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  margin-bottom: 8px;
}
.site-card h3 { font-family: 'DM Sans', sans-serif; font-size: 1.2rem; font-weight: 600; margin-bottom: 6px; }
.site-card p  { font-family: 'DM Sans', sans-serif; font-size: 0.95rem; font-weight: 400; color: var(--black); line-height: 1.5; margin-bottom: 12px; }
.site-card-url { font-family: 'DM Mono', monospace; font-size: 0.8rem; font-weight: 400; color: var(--black); letter-spacing: 0.02em; }
.site-card-arrow { display: flex; align-items: center; padding-right: 24px; font-size: 1.3rem; color: var(--black); flex-shrink: 0; }
.card-purple .site-card-accent { background: var(--logo-lavender); }
.card-purple .site-card-label  { color: var(--logo-purple); }
.card-cyan .site-card-accent   { background: var(--logo-cyan); }
.card-cyan .site-card-label    { color: #2288b0; }

/* —— WP POST PAGE BODY CONTENT —— */
.entry-content {
  font-family: 'DM Sans', sans-serif;
  font-size: 1.1rem;
  font-weight: 400;
  color: var(--black);
  line-height: 1.8;
  max-width: 720px;
  margin: 0 auto;
  padding: 40px;
}
.entry-content h1,
.entry-content h2,
.entry-content h3 {
  font-family: 'Inter', Arial, sans-serif;
  font-weight: 700;
  color: var(--black);
  margin: 1.4em 0 0.5em;
  line-height: 1.3;
}
.entry-content h1 { font-size: 1.7rem; }
.entry-content h2 { font-size: 1.35rem; }
.entry-content h3 { font-size: 1.15rem; }
.entry-content p  { margin-bottom: 1.6em; }
.entry-content a  { color: var(--logo-purple); text-decoration: underline; }
.entry-content a:hover { color: var(--dark-green); }
.entry-content ul,
.entry-content ol {
  padding-left: 1.5em;
  margin-bottom: 1.1em;
}
.entry-content img { max-width: 100%; height: auto; display: block; margin: 1.5em auto; }

/* —— BLOCKQUOTE STYLE (used in posts and comments) —— */
blockquote {
  border-left: 4px solid var(--logo-lavender);
  margin: 1.5em 0 1.5em 1em;
  padding: 14px 20px;
  background: var(--lavender-light);
  font-style: italic;
  font-size: 1.05rem;
  line-height: 1.7;
  color: #444;
  border-radius: 0 4px 4px 0;
}
blockquote p { margin-bottom: 0; }

/* —— WP POST NAVIGATION —— */
.post-navigation, .nav-links {
  max-width: 720px;
  margin: 0 auto;
  padding: 24px 40px;
  display: flex;
  justify-content: space-between;
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
}
.nav-previous a, .nav-next a {
  color: var(--black);
  text-decoration: none;
}
.nav-previous a:hover, .nav-next a:hover { color: var(--dark-green); }

/* —— WP COMMENTS —— */
.comments-area {
  max-width: 720px;
  margin: 16px auto 0;
  padding: 32px 40px 48px;
  border-top: 1px solid var(--rule);
}
.comments-area h2 {
  font-family: 'Inter', Arial, sans-serif;
  font-size: 1.05rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  margin: 24px 0 28px;
  color: var(--black);
}
.comment-body {
  border-bottom: 1px solid var(--rule-light);
  padding: 16px 0;
  font-family: 'DM Sans', sans-serif;
  font-size: 1rem;
  color: var(--black);
}
.comment-author { font-weight: 600; margin-bottom: 4px; }
.comment-metadata {
  font-family: 'DM Mono', monospace;
  font-size: 0.8rem;
  color: var(--black);
  margin-bottom: 0;
}
.comment-metadata a { color: var(--black); text-decoration: none; }

/* —— COMMENT META (name/date block) —— */
/* Reset global footer rule that was hijacking this element */
footer.comment-meta {
  all: unset !important;
  display: block !important;
  margin-bottom: 24px !important;
}

/* Space between comment date and comment text */
.comment-body .comment-content {
  margin-top: 32px !important;
}
.comment-content p {
  line-height: 1.8;
  margin-bottom: 1em;
}
.comment-content a {
  padding: 0 2px;
  margin: 0 1px;
  color: var(--logo-purple);
  text-decoration: underline;
}
.comment-content a:hover { color: var(--dark-green); }

/* Hide WP admin bar and sidebar junk */
#wpadminbar,
.widget-area,
.wp-block-archives,
.wp-block-categories,
aside { display: none !important; }

/* Make WP single-column */
.site-content, #primary {
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* —— ABOUT THIS PROJECT —— */
.site-about {
  background: var(--white);
  padding: 40px;
  border-top: 1px solid var(--border);
}
.site-about h4 {
  font-family: 'DM Mono', monospace;
  font-size: 0.78rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #888;
  margin-bottom: 14px;
}
.site-about p {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.95rem;
  font-weight: 400;
  color: var(--black);
  line-height: 1.7;
  max-width: 640px;
}

/* —— SITE FOOTER —— */
footer {
  border-top: 2px solid var(--black);
  padding: 24px 40px;
  display: flex;
  align-items: center;
  gap: 20px;
  flex-wrap: wrap;
  background: var(--white);
}
footer img.logo { height: 60px; width: auto; display: block; }
.footer-name {
  font-family: 'DM Sans', sans-serif;
  font-size: 0.85rem;
  font-weight: 500;
  color: var(--black);
}
.footer-name a { color: inherit; text-decoration: none; }
.footer-name a:hover { color: var(--dark-green); }
.footer-contact {
  font-family: 'DM Mono', monospace;
  font-size: 0.8rem;
  color: var(--black);
  letter-spacing: 0.03em;
}

/* —— RESPONSIVE —— */
@media (max-width: 700px) {
  header,
  .page-intro,
  .site-search,
  .content-wrap,
  .site-about,
  footer,
  .entry-content,
  .comments-area,
  .post-navigation,
  .post-nav-bar {
    padding-left: 20px;
    padding-right: 20px;
  }
  .site-search-inner { flex-wrap: wrap; }
  .post-cat { display: none; }
  .site-nav { padding: 0 20px; }
}

/* —— POST PAGE CONTENT CONSTRAINT —— */
#content,
#main,
#primary,
.site-content,
.hentry,
article {
  max-width: 780px;
  margin: 0 auto;
  padding: 16px 48px;
  box-sizing: border-box;
}
p {
  margin-bottom: 1.6em;
}
.skip-link {
  display: none;
}
.site-info {
  display: none;
}
.comment-author img,
.avatar {
  width: 32px !important;
  height: 32px !important;
}

/* —— POST AUTHOR/DATE LINE —— */
.blog-info-single-page {
  margin-top: 24px !important;
  margin-bottom: 12px;
}

/* —— POST TITLE —— */
.single-page-title {
  margin-top: 16px !important;
  margin-bottom: 24px !important;
}

/* —— POST NAV BAR —— */
.post-nav-bar {
  max-width: 780px;
  margin: 0 auto 16px;
  padding: 28px 48px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-top: 1px solid var(--rule);
  font-family: 'Inter', sans-serif;
  font-size: 0.9rem;
  font-weight: 600;
  gap: 80px;
}
.post-nav-bar a {
  color: var(--black);
  text-decoration: none;
  white-space: nowrap;
}
.post-nav-bar a:hover { color: var(--dark-green); }
.post-nav-center {
  font-size: 0.78rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #888;
  white-space: nowrap;
}

/* —— INDEX EXCERPT —— */
.post-excerpt {
  margin: 4px 0 0 0;
  font-family: 'DM Sans', sans-serif;
  font-size: 0.92rem;
  color: #555;
  line-height: 1.5;
}

/* —— ARCHIVE IDENTITY: collective (Nichiren Collective in the Wilderness 2022) —— */
/* Corresponds to card-4 green on the main index */
header {
  border-top: 4px solid #6ab830;
  background: #f3faea;
}
