:root {
  --brand-red: #ae1b21;
  --brand-red-dark: #8a151a;
  --brand-taupe: #aea69b;
  --bs-primary: var(--brand-red);
  --bs-primary-rgb: 174, 27, 33;
  --bs-link-color: var(--brand-red);
  --bs-link-color-rgb: 174, 27, 33;
  --bs-link-hover-color: var(--brand-red-dark);
  --bs-link-hover-color-rgb: 138, 21, 26;
}

body {
  background-color: #faf9f7;
}

.bg-brand {
  background-color: var(--brand-red) !important;
}

.navbar-logo {
  height: 34px;
  width: 34px;
  object-fit: cover;
  border-radius: 6px;
}

.navbar-brand span {
  font-weight: 600;
}

.card {
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.04);
  transition: box-shadow 0.15s ease, transform 0.15s ease;
}

a:hover .card {
  box-shadow: 0 6px 16px rgba(174, 27, 33, 0.12);
  transform: translateY(-2px);
  border-color: rgba(174, 27, 33, 0.25);
}

.card-title, h3, h4, h5 {
  color: #2b2b2b;
}

.btn-primary {
  --bs-btn-bg: var(--brand-red);
  --bs-btn-border-color: var(--brand-red);
  --bs-btn-hover-bg: var(--brand-red-dark);
  --bs-btn-hover-border-color: var(--brand-red-dark);
  --bs-btn-active-bg: var(--brand-red-dark);
  --bs-btn-active-border-color: var(--brand-red-dark);
}

.form-control:focus,
.form-select:focus {
  border-color: var(--brand-taupe);
  box-shadow: 0 0 0 0.25rem rgba(174, 27, 33, 0.15);
}

.drawing-thumb {
  height: 160px;
  object-fit: cover;
  background: #f5f5f5;
}

.carousel-page {
  height: 70vh;
  object-fit: contain;
  background: #f5f5f5;
}

.analysis-result {
  white-space: pre-wrap;
  font-family: inherit;
  font-size: 0.9rem;
  margin: 0;
}
