:root {
  --nitrix-bg: #f8fafc;
  --nitrix-surface: #ffffff;
  --nitrix-tone: #dc2626;
  --nitrix-tone-hover: #b91c1c;
  --nitrix-ink: #0f172a;
  --nitrix-gradient: linear-gradient(135deg, #dc2626 0%, #991b1b 100%);
  --font-display: 'Oswald', sans-serif;
  --font-body: 'Roboto', sans-serif;
}

/* Base Styles */
body {
  margin: 0;
  padding: 0;
  color: var(--nitrix-ink);
  background-color: var(--nitrix-bg);
  font-family: var(--font-body);
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3 {
  font-family: var(--font-display);
}

/* Preset D: Header with thin divider line */
.nitrix-top-navigation {
  background-color: var(--nitrix-surface);
  border-bottom: 1px solid #e2e8f0;
}

.nitrix-brand-title {
  color: var(--nitrix-ink);
}

/* Gallery - Pure CSS Radio Setup */
.nitrix-trigger {
  display: none;
}

.nitrix-slide {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.25s ease-in-out;
  pointer-events: none;
  z-index: 1;
}

#nitrix-pic-1:checked ~ .nitrix-viewer .nitrix-slide-1,
#nitrix-pic-2:checked ~ .nitrix-viewer .nitrix-slide-2,
#nitrix-pic-3:checked ~ .nitrix-viewer .nitrix-slide-3,
#nitrix-pic-4:checked ~ .nitrix-viewer .nitrix-slide-4 {
  opacity: 1;
  pointer-events: auto;
  z-index: 2;
}

/* Soft Border Radius Styling */
.nitrix-viewer,
.nitrix-user-feedback-entry,
.nitrix-purchase-action {
  border-radius: 12px;
}

/* Preset D Thumbnails: Side without frame */
.nitrix-thumb-item {
  border-radius: 8px;
  overflow: hidden;
  opacity: 0.6;
  transition: opacity 0.2s ease, transform 0.2s ease;
  border: 1px solid transparent;
}

.nitrix-thumb-item:hover {
  opacity: 0.9;
}

#nitrix-pic-1:checked ~ .nitrix-thumb-list label[for="nitrix-pic-1"],
#nitrix-pic-2:checked ~ .nitrix-thumb-list label[for="nitrix-pic-2"],
#nitrix-pic-3:checked ~ .nitrix-thumb-list label[for="nitrix-pic-3"],
#nitrix-pic-4:checked ~ .nitrix-thumb-list label[for="nitrix-pic-4"] {
  opacity: 1;
  transform: scale(1.03);
}

/* Preset D CTA: Wide without shadow, hover underline */
.nitrix-purchase-action {
  box-shadow: none;
  text-decoration: none;
  border-radius: 12px;
}

.nitrix-purchase-action:hover {
  text-decoration: underline;
  background-color: var(--nitrix-tone-hover) !important;
}

/* Preset D Reviews: border-bottom + box-shadow */
.nitrix-user-feedback-entry {
  border-bottom: 3px solid #cbd5e1;
  box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.05), 0 4px 6px -2px rgba(0, 0, 0, 0.025);
}

/* Responsiveness */
@media (max-width: 767px) {
  .nitrix-thumb-list {
    padding-bottom: 4px;
  }
}