/* Only the real Birlo configurator. Existing styles are preserved; review workflow is handled separately. */
.b3dp-wrap {
  --b3-accent: #c64a05 !important;
  --b3-radius: 12px;
  color: #142337;
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  margin: 0 auto 16px;
}
.b3dp-wrap *, .b3dp-wrap *::before, .b3dp-wrap *::after { box-sizing: border-box; }
.b3dp-wrap .b3dp-grid { grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr); gap: 20px; }
.b3dp-wrap .b3dp-panel { min-width: 0; padding: 20px; background: #fff; border: 1px solid #dfe6ed; border-radius: 12px; box-shadow: none; }
.b3dp-wrap .b3dp-options { position: static; }
.b3dp-wrap .b3dp-steps .active,
.b3dp-wrap .b3dp-tabs button.active,
.b3dp-wrap .b3dp-section-title > span,
.b3dp-wrap .b3dp-cta,
.b3dp-wrap .b3dp-project-cart { background: #c64a05; color: #fff; border-color: #c64a05; }
.b3dp-wrap .b3dp-steps span { color: #536375; opacity: 1; }
.b3dp-wrap .b3dp-steps .active { color: #fff; }
.b3dp-wrap button { min-height: 44px; white-space: normal; overflow-wrap: anywhere; }
.b3dp-wrap button:focus-visible,
.b3dp-wrap input:focus-visible,
.b3dp-wrap select:focus-visible,
.b3dp-wrap textarea:focus-visible { outline: 3px solid #c64a05; outline-offset: 3px; }
.b3dp-wrap .b3dp-drop input[type=file] { display: block; width: 100%; max-width: 100%; min-height: 44px; margin-top: 10px; }
.b3dp-wrap .b3dp-drop { flex-wrap: wrap; background: #f6f8fa; border-color: #91a0b1; }
.b3dp-wrap .b3dp-drop input[type=file] { flex-basis: 100%; }
.b3dp-wrap .b3dp-drop:hover { background: #fff5ee; border-color: #c64a05; }
.b3dp-wrap .b3dp-drop.drag::after { content: 'Upuść plik tutaj'; }
.b3dp-wrap .b3dp-printer-card.active,
.b3dp-wrap .b3dp-material-card.active,
.b3dp-wrap .b3dp-use-card.active,
.b3dp-wrap .b3dp-quality-card.active { border-color: #c64a05; background: #fff5ee; box-shadow: 0 0 0 1px #c64a05; }
.b3dp-wrap .b3dp-secondary,
.b3dp-wrap .b3dp-project-add { color: #142337; background: #fff; border-color: #91a0b1; }
.b3dp-wrap .b3dp-scale, .b3dp-wrap .b3dp-rotate { flex-wrap: wrap; }
.b3dp-wrap .b3dp-drop small,
.b3dp-wrap .b3dp-empty,
.b3dp-wrap .b3dp-section-title small,
.b3dp-wrap .b3dp-extras small,
.b3dp-wrap .b3dp-note,
.b3dp-wrap .b3dp-quote small { opacity: 1; color: #536375; }
.b3dp-wrap .b3dp-note { font-size: 13px; line-height: 1.6; }
.b3dp-wrap .b3dp-project-file { gap: 12px; }
.b3dp-wrap .b3dp-project-file > span { min-width: 0; overflow-wrap: anywhere; }
.b3dp-wrap .b3dp-color-chip { min-height: 44px; }
@media (max-width: 1000px) {
  .b3dp-wrap .b3dp-grid { grid-template-columns: minmax(0, 1fr); }
  .b3dp-wrap .b3dp-options { position: static; }
}
@media (max-width: 560px) {
  .b3dp-wrap .b3dp-panel { padding: 14px; }
  .b3dp-wrap .b3dp-transform,
  .b3dp-wrap .b3dp-model-info,
  .b3dp-wrap .b3dp-two { grid-template-columns: minmax(0, 1fr); }
}
@media (prefers-reduced-motion: reduce) {
  .b3dp-wrap *, .b3dp-wrap *::before, .b3dp-wrap *::after { transition: none !important; animation: none !important; }
}

/* Review-only additions. Server hooks independently block calculator purchases. */
.b3dp-wrap #b3dp-request label.bf3d-review-consent {
  display: flex !important;
  align-items: flex-start;
  justify-content: flex-start;
  gap: 10px;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  font-size: 14px;
  line-height: 1.5;
  opacity: 1;
  margin: 14px 0;
  padding: 8px 0;
  cursor: pointer;
}
.b3dp-wrap #b3dp-request #bf3d-review-ack {
  flex: 0 0 18px !important;
  width: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  height: 18px !important;
  min-height: 18px !important;
  margin: 2px 0 0 !important;
  padding: 0 !important;
  appearance: auto;
  accent-color: #c64a05;
}
.b3dp-wrap #b3dp-request .bf3d-review-consent > span {
  display: block;
  flex: 1 1 0%;
  min-width: 0;
  overflow-wrap: anywhere;
}
.b3dp-wrap #b3dp-request textarea { font: inherit; min-height: 96px; resize: vertical; }
.b3dp-wrap .b3dp-color-swatch.is-unknown { background: repeating-linear-gradient(135deg, #eef1f4 0 4px, #8f9baa 4px 6px) !important; }
.b3dp-wrap .bf3d-review-trap { position: absolute; left: -10000px; width: 1px; height: 1px; overflow: hidden; }
.b3dp-wrap .b3dp-request input:not([type=checkbox]), .b3dp-wrap .b3dp-request textarea { max-width: 100%; }
.b3dp-wrap .bf3d-review-project-note { color: #536375; font-size: 13px; line-height: 1.5; }
.b3dp-wrap .b3dp-status-success { padding: 14px; border: 1px solid #2b7551; border-radius: 8px; background: #f2fbf5; }
