/* theme-holobase.css — HoloBase shared styles, reduced to what Module 00 uses (preview of 4b86b29). */
html[data-project-theme="holobase"] {
  --hb-cream: #f8f4ee;
  --hb-card: #fffdf9;
  --hb-border: #d8d2c8;
  --hb-muted: #a49c92;
  --hb-text: #5e5954;
  --hb-charcoal: #3f3b37;
  --hb-charcoal-dark: #2c2926;

  --ice: var(--hb-cream);
  --ice-light: var(--hb-card);
  --border: var(--hb-border);
  --border-soft: #e8e3db;
  --navy: var(--hb-charcoal);
  --accent: var(--hb-charcoal);
  --accent-dark: var(--hb-charcoal-dark);
  --text: var(--hb-text);
  --text-muted: var(--hb-text);
  --shadow-sm: 0 1px 2px rgba(63, 59, 55, 0.07);
  --shadow-md: 0 6px 20px rgba(63, 59, 55, 0.08);
}

html[data-project-theme="holobase"] body {
  background: var(--hb-cream);
  color: var(--hb-text);
}

html[data-project-theme="holobase"] .btn-primary {
  background: var(--hb-charcoal);
  border-color: var(--hb-charcoal);
  color: #fff;
}

html[data-project-theme="holobase"] .btn-primary:hover {
  background: var(--hb-charcoal-dark);
  border-color: var(--hb-charcoal-dark);
  color: #fff;
}

html[data-project-theme="holobase"] .btn-secondary {
  background: var(--hb-card);
  border-color: var(--hb-border);
  color: var(--hb-charcoal);
}

html[data-project-theme="holobase"] .btn-secondary:hover {
  border-color: var(--hb-charcoal);
  color: var(--hb-charcoal);
}

html[data-project-theme="holobase"] a:focus-visible,
html[data-project-theme="holobase"] button:focus-visible {
  outline: 3px solid var(--hb-charcoal);
  outline-offset: 2px;
}

.hub-shell {
  max-width: 1180px;
  margin: 0 auto;
  padding: 0 24px 3rem;
}

.hub-topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  padding: 1.1rem 0;
}

.hub-wordmark {
  display: flex;
  flex-direction: column;
  text-decoration: none;
  color: var(--hb-charcoal);
}

.hub-wordmark-name {
  font-family: var(--font-heading);
  font-size: 1.45rem;
  font-weight: 700;
  line-height: 1.1;
}

.hub-wordmark-tagline {
  font-size: 0.82rem;
  color: var(--hb-text);
}

.hub-footer {
  margin-top: 3rem;
  padding-top: 1.25rem;
  border-top: 1px solid var(--hb-border);
  text-align: center;
  font-size: 0.85rem;
  color: var(--hb-text);
}

@media (max-width: 760px) {
  .hub-shell {
    padding: 0 16px 2.5rem;
  }
}
