.mdk3d-v13{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
  color:var(--text);
  display:grid;
  gap:14px;
}
.mdk3d-v13 *,
.mdk3d-v13 *::before,
.mdk3d-v13 *::after{min-width:0;box-sizing:border-box}
.mdk3d-v13-hero{
  margin:0;
  padding:20px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(135deg,rgba(47,128,255,.16),rgba(0,213,255,.07)),var(--panel);
}
.mdk3d-v13-hero h1{font-size:clamp(30px,7vw,44px);line-height:1.03;margin-bottom:10px}
.mdk3d-v13 .single-viewer-stage,
.mdk3d-v13 .three-d-settings{
  width:100%;
  max-width:100%;
  min-width:0;
  margin:0;
  padding:12px;
  border:1px solid var(--line);
  border-radius:26px;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.025));
  box-shadow:var(--shadow);
  overflow:hidden;
}
.mdk3d-v13 .compact-viewer{
  width:100%;
  max-width:100%;
  min-width:0;
  height:clamp(330px,50vh,520px);
  border-radius:24px;
  background:linear-gradient(180deg,rgba(225,244,255,.12),rgba(47,128,255,.08)),var(--panel-strong);
}
.mdk3d-v13 .viewer-canvas{touch-action:none}
.mdk3d-v13 .viewer-empty{
  inset:76px 14px 76px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  align-items:center;
  gap:9px;
  padding:18px;
  overflow:hidden;
}
.mdk3d-v13 .viewer-empty-icon,
.mdk3d-v13 .primary{background:linear-gradient(135deg,var(--brand),var(--cyan))}
.mdk3d-v13 .viewer-empty strong,
.mdk3d-v13 .viewer-empty small,
.mdk3d-v13 .viewer-empty-note{
  max-width:100%;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
}
.mdk3d-v13 .viewer-empty-note{font-style:normal;color:var(--muted);font-size:12px;line-height:1.35;max-width:260px}
.mdk3d-v13 .viewer-primary-file-button,
.mdk3d-v13 .mdk3d-upload-button,
.mdk3d-v13 .mdk3d-upload-secondary{
  max-width:100%;
  min-height:52px;
  border:1px solid var(--line);
  border-radius:18px;
  background:rgba(255,255,255,.08);
  color:var(--text);
  font-weight:950;
  padding:0 16px;
  white-space:normal;
}
.mdk3d-v13 .mdk-step-scroller{
  width:100%;
  max-width:100%;
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0 0 14px;
  padding:8px;
  border:1px solid var(--line);
  border-radius:22px;
  background:rgba(255,255,255,.05);
  overflow:hidden;
}
.mdk3d-v13 .mdk-step-scroller button{
  min-width:0;
  min-height:64px;
  border:1px solid var(--line);
  border-radius:17px;
  background:rgba(255,255,255,.08);
  color:var(--muted);
  display:grid;
  place-items:center;
  gap:3px;
  font-weight:950;
  padding:7px 5px;
}
.mdk3d-v13 .mdk-step-scroller button span{
  width:34px;
  height:34px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:rgba(255,255,255,.10);
  color:var(--text);
}
.mdk3d-v13 .mdk-step-scroller button small{
  width:100%;
  max-width:100%;
  font-size:12px;
  color:currentColor;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  text-align:center;
}
.mdk3d-v13 .mdk-step-scroller button.active{color:white;border-color:rgba(47,128,255,.58);background:linear-gradient(135deg,rgba(47,128,255,.55),rgba(109,92,255,.72))}
.mdk3d-v13 .mdk-step-scroller button.done{border-color:rgba(34,197,94,.36)}
.mdk3d-v13 .mdk-step-scroller button.locked{opacity:.55;cursor:not-allowed}

.mdk3d-v13 .mdk-step-scroller-5{grid-template-columns:repeat(5,minmax(0,1fr))}
.mdk3d-v13 .mdk3d-flow-summary{
  display:grid;
  grid-template-columns:1fr auto;
  gap:10px;
  align-items:center;
  margin:0 0 12px;
  padding:13px 14px;
  border:1px solid rgba(47,128,255,.24);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(47,128,255,.13),rgba(0,212,255,.07));
  box-shadow:0 14px 34px rgba(0,0,0,.14);
}
.mdk3d-v13 .mdk3d-flow-summary small{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.10em;color:var(--cyan);font-weight:950}
.mdk3d-v13 .mdk3d-flow-summary strong{display:block;font-size:16px;color:var(--text);line-height:1.18;margin-top:2px}
.mdk3d-v13 .mdk3d-flow-summary span{display:block;color:var(--muted);font-size:13px;line-height:1.35;margin-top:4px}
.mdk3d-v13 .mdk3d-flow-summary b{
  justify-self:end;
  white-space:nowrap;
  border:1px solid rgba(245,158,11,.42);
  color:#fde68a;
  background:rgba(245,158,11,.10);
  border-radius:999px;
  padding:9px 11px;
  font-size:13px;
}
.mdk3d-v13 .wizard-step-body{display:none}
.mdk3d-v13 .wizard-step-body.active{display:block;animation:mdk3dStep .22s ease both}
@keyframes mdk3dStep{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.mdk3d-v13 .step-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:12px}
.mdk3d-v13 .step-head h2{margin:0}
.mdk3d-v13 .model-meta-grid,
.mdk3d-v13 .calc-metric-grid,
.mdk3d-v13 .final-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.mdk3d-v13 .model-meta-grid div,
.mdk3d-v13 .calc-metric-grid>div,
.mdk3d-v13 .final-check-grid>div{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055);padding:12px;min-width:0}
.mdk3d-v13 small{color:var(--muted)}
.mdk3d-v13 .model-upload-actions{display:grid;grid-template-columns:1fr auto;gap:10px;margin:14px 0}
.mdk3d-v13 .mdk3d-upload-button{background:linear-gradient(135deg,var(--brand),var(--cyan));color:white;display:grid;align-content:center}
.mdk3d-v13 .mdk3d-upload-secondary[hidden]{display:none}
.mdk3d-v13 .upload-trust-note{margin:10px 0 0;padding:12px;border:1px solid rgba(34,197,94,.30);border-radius:16px;background:rgba(34,197,94,.08);color:var(--text);font-size:13px;line-height:1.45}
.mdk3d-v13 .price-pill.is-awaiting{border-color:rgba(245,158,11,.42);background:rgba(245,158,11,.10);color:#fde68a}
.mdk3d-v13 .mdk3d-upload-button small{color:rgba(255,255,255,.78)}
.mdk3d-v13 .format-advice-details{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.04);margin:12px 0;overflow:hidden}
.mdk3d-v13 .format-advice-details summary{cursor:pointer;padding:12px 14px;font-weight:950;color:var(--text)}
.mdk3d-v13 .format-advice-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 12px 12px}
.mdk3d-v13 .format-card,
.mdk3d-v13 .size-panel,
.mdk3d-v13 .detected-palette-panel,
.mdk3d-v13 .filament-calc-panel,
.mdk3d-v13 .print-mode-panel{border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.055);padding:14px;min-width:0;max-width:100%}
.mdk3d-v13 .format-card.best{border-color:rgba(245,158,11,.34)}
.mdk3d-v13 label.field-card{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055);padding:12px;color:var(--muted);font-weight:900}
.mdk3d-v13 .range-wrap{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.05);padding:12px}
.mdk3d-v13 .size-actions,
.mdk3d-v13 .wizard-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}
.mdk3d-v13 .wizard-actions.single{grid-template-columns:1fr}
.mdk3d-v13 .compact-dimensions input{text-align:center;font-weight:950}
.mdk3d-v13 .print-accordion{border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.045);margin:12px 0;overflow:hidden}
.mdk3d-v13 .print-accordion-static summary{cursor:default}
.mdk3d-v13 .print-accordion summary{display:grid;grid-template-columns:1fr auto;gap:6px 10px;align-items:center;padding:14px;cursor:pointer}
.mdk3d-v13 .print-accordion summary span{font-size:17px;font-weight:950}
.mdk3d-v13 .print-accordion summary small{text-align:right}
.mdk3d-v13 .print-accordion-body{padding:0 14px 14px}
.mdk3d-v13 .print-mode-head{display:flex;justify-content:space-between;gap:12px;margin-bottom:10px}
.mdk3d-v13 .print-mode-head small{max-width:300px;text-align:right}
.mdk3d-v13 .print-mode-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mdk3d-v13 .print-mode-card{display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:flex-start;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.06);padding:12px;cursor:pointer}
.mdk3d-v13 .print-mode-card input{width:20px;min-height:20px;accent-color:var(--brand)}
.mdk3d-v13 .print-mode-card strong{display:block;color:var(--text)}
.mdk3d-v13 .print-mode-card small{display:block;line-height:1.35;margin-top:4px}
.mdk3d-v13 .print-mode-card.is-active{border-color:rgba(47,128,255,.56);background:rgba(47,128,255,.14)}
.mdk3d-v13 .print-mode-card.is-disabled{opacity:.52;cursor:not-allowed;filter:saturate(.55)}
.mdk3d-v13 .print-mode-card.is-disabled small::after{content:" Nur bei erkannten Mehrfarben-Daten aktiv."}

.mdk3d-v13 .print-mode-options.is-single-only{grid-template-columns:1fr}
.mdk3d-v13 .print-mode-card[hidden]{display:none}
.color-decision-note[data-state="waiting"]{border-color:rgba(255,255,255,.16);background:rgba(255,255,255,.045);color:var(--muted)}
.mdk3d-v13 [hidden]{display:none}
.mdk3d-v13 .palette-editor-head{display:flex;justify-content:space-between;gap:10px;margin-bottom:8px}
.mdk3d-v13 .palette-editor-hint{font-size:13px;line-height:1.45}
.mdk3d-v13 .detected-palette{display:grid;gap:10px}
.mdk3d-v13 .palette-editor-row{display:grid;grid-template-columns:120px 1fr;gap:12px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.055);padding:12px;min-width:0}
.mdk3d-v13 .palette-inventory-swatches{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.mdk3d-v13 .palette-inventory-swatch-wrap{display:grid;gap:6px;justify-items:center}
.mdk3d-v13 .palette-inventory-swatch{width:48px;height:48px;border-radius:16px;border:1px solid rgba(255,255,255,.34);box-shadow:inset 0 0 0 2px rgba(0,0,0,.18)}
.mdk3d-v13 .palette-inventory-meta{display:grid;gap:8px;min-width:0}
.mdk3d-v13 .palette-inventory-select-label{margin:0;padding:0;border:0;background:transparent}
.mdk3d-v13 .palette-inventory-current,
.mdk3d-v13 .palette-inventory-detected{font-size:13px;line-height:1.35;overflow-wrap:anywhere}
html[data-theme="light"] .mdk3d-v13 .compact-viewer{background:linear-gradient(180deg,#f5fbff,#e8f4ff)}
html[data-theme="light"] .mdk3d-v13 .print-mode-card.is-active{background:#eef6ff}
html[data-theme="light"] .mdk3d-v13 .mdk-step-scroller button.active{color:white}
@media(max-width:640px){
  .mdk3d-v13{gap:12px;overflow:visible}
  .mdk3d-v13-hero{padding:15px;border-radius:22px}
  .mdk3d-v13 .single-viewer-stage,
  .mdk3d-v13 .three-d-settings{padding:10px;border-radius:22px}
  .mdk3d-v13 .compact-viewer{height:clamp(330px,52vh,500px);border-radius:21px}
  .mdk3d-v13 .viewer-empty{inset:72px 12px 80px;padding:14px;border-radius:20px}
  .mdk3d-v13 .viewer-empty-icon{width:58px;height:58px;border-radius:20px}
  .mdk3d-v13 .viewer-primary-file-button{min-height:48px;padding:0 14px}
  .mdk3d-v13 .mdk-step-scroller{display:flex;gap:7px;padding:6px;border-radius:20px;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .mdk3d-v13 .mdk-step-scroller::-webkit-scrollbar{display:none}
  .mdk3d-v13 .mdk-step-scroller button{flex:0 0 86px;min-width:86px;min-height:58px;border-radius:15px;padding:6px 3px;scroll-snap-align:center}
  .mdk3d-v13 .mdk-step-scroller-5 button{flex-basis:82px;min-width:82px}
  .mdk3d-v13 .mdk3d-flow-summary{grid-template-columns:1fr;margin-bottom:10px;padding:12px;border-radius:18px}
  .mdk3d-v13 .mdk3d-flow-summary b{justify-self:start;font-size:12px;padding:7px 10px}
  .mdk3d-v13 .wizard-step-body.active{scroll-margin-top:10px}
  /* The app frame already reserves the bottom navigation as its own grid row.
     Keep the mobile action bar near the bottom of the scroll area instead of
     floating one nav-height above it, otherwise it covers form content. */
  .mdk3d-v13 .wizard-actions{position:sticky;bottom:8px;z-index:12;margin-top:18px;padding:8px;border:1px solid var(--line);border-radius:18px;background:rgba(9,15,28,.96);backdrop-filter:blur(14px);box-shadow:0 -6px 22px rgba(0,0,0,.20),0 12px 34px rgba(0,0,0,.22)}
  html[data-theme="light"] .mdk3d-v13 .wizard-actions{background:rgba(255,255,255,.96)}
  .mdk3d-v13 .mdk-step-scroller button span{width:32px;height:32px;font-size:18px}
  .mdk3d-v13 .mdk-step-scroller button small{font-size:11px;letter-spacing:-.02em}
  .mdk3d-v13 .format-advice-grid,
  .mdk3d-v13 .print-mode-options,
  .mdk3d-v13 .print-mode-head{grid-template-columns:1fr;display:grid}
  .mdk3d-v13 .print-mode-head small{text-align:left;max-width:none}
  .mdk3d-v13 .compact-dimensions{grid-template-columns:repeat(3,minmax(0,1fr))}
  .mdk3d-v13 .compact-dimensions label.field-card{padding:8px 6px;font-size:11px}
  .mdk3d-v13 .compact-dimensions input{min-height:44px;padding:6px;font-size:17px}
  .mdk3d-v13 .print-physics-grid{grid-template-columns:1fr 1fr}
  .mdk3d-v13 .palette-editor-row{grid-template-columns:1fr}
  .mdk3d-v13 .palette-inventory-swatches{justify-items:start}
  .mdk3d-v13 .model-upload-actions{grid-template-columns:1fr}
  .mdk3d-v13 .model-meta-grid,
  .mdk3d-v13 .calc-metric-grid,
  .mdk3d-v13 .final-check-grid{grid-template-columns:1fr}
  .mdk3d-v13 .print-accordion summary small{text-align:left;grid-column:1/-1}
}
@media(max-width:380px){
  .mdk3d-v13 .mdk-step-scroller{gap:5px;padding:5px}
  .mdk3d-v13 .mdk-step-scroller button{flex-basis:76px;min-width:76px;min-height:54px;border-radius:14px}
  .mdk3d-v13 .mdk-step-scroller button span{width:29px;height:29px;font-size:16px}
  .mdk3d-v13 .mdk-step-scroller button small{font-size:10px}
  .mdk3d-v13 .print-physics-grid{grid-template-columns:1fr}
  .mdk3d-v13 .compact-dimensions input{font-size:16px}
}

.draft-save-status{
  margin:-2px 0 14px;
  padding:10px 12px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.055);
  color:var(--muted);
  font-size:12px;
  font-weight:850;
  display:flex;
  align-items:center;
  gap:8px;
}
.draft-save-status::before{
  content:"";
  width:8px;
  height:8px;
  border-radius:999px;
  background:var(--muted-2);
  flex:0 0 auto;
}
.draft-save-status[data-state="saving"]::before{background:var(--warn)}
.draft-save-status[data-state="saved"]::before{background:var(--ok)}
.draft-save-status[data-state="local"]::before{background:var(--cyan)}
.color-decision-note{
  margin:10px 0 0;
  padding:12px;
  border:1px solid var(--line);
  border-radius:16px;
  background:rgba(255,255,255,.055);
  color:var(--muted);
  font-size:13px;
  line-height:1.45;
}
.color-decision-note[data-state="multi"]{
  border-color:rgba(47,128,255,.40);
  background:linear-gradient(135deg,rgba(47,128,255,.14),rgba(0,213,255,.07));
  color:var(--text);
}

.mdk3d-v13 .viewer-pro.has-reset-required .viewer-empty{
  border-style:solid;
  border-color:rgba(245,158,11,.34);
  background:linear-gradient(180deg,rgba(245,158,11,.12),rgba(47,128,255,.06)),var(--panel);
}
.mdk3d-v13 .viewer-empty[data-state="reset-required"]{
  gap:10px;
}
.mdk3d-v13 .viewer-empty[data-state="reset-required"] .viewer-empty-icon{
  background:linear-gradient(135deg,#f59e0b,var(--cyan));
}

.mdk3d-v13 .sr-only{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}
.mdk3d-v13 .viewer-model-header{
  left:12px;
  right:12px;
  top:12px;
  display:grid;
  grid-template-columns:minmax(0,1fr) max-content;
  align-items:stretch;
  gap:8px;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  overflow:visible;
}
.mdk3d-v13 .viewer-header-chip{
  min-width:0;
  min-height:48px;
  display:grid;
  align-content:center;
  gap:2px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.11);
  border-radius:999px;
  background:rgba(2,7,18,.78);
  backdrop-filter:blur(14px);
  box-shadow:0 10px 26px rgba(0,0,0,.18);
}
.mdk3d-v13 .viewer-header-chip small{
  display:block;
  font-size:9px;
  line-height:1;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
  font-weight:900;
  white-space:nowrap;
}
.mdk3d-v13 .viewer-header-chip strong{
  display:block;
  min-width:0;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:13px;
  line-height:1.15;
  letter-spacing:.01em;
}
.mdk3d-v13 .viewer-file-chip strong{color:var(--text)}
.mdk3d-v13 .viewer-size-chip{
  justify-self:end;
  max-width:48vw;
  border-color:rgba(245,158,11,.42);
  background:linear-gradient(135deg,rgba(245,158,11,.20),rgba(245,158,11,.07)),rgba(2,7,18,.86);
}
.mdk3d-v13 .viewer-size-chip small{color:rgba(245,158,11,.86)}
.mdk3d-v13 .viewer-size-chip strong{
  color:var(--warn);
  font-weight:1000;
  font-size:13px;
}
.mdk3d-v13 .viewer-header-progress{
  position:absolute;
  left:14px;
  right:14px;
  bottom:-5px;
  height:3px;
  border-radius:999px;
  overflow:hidden;
  opacity:0;
  pointer-events:none;
  background:rgba(255,255,255,.10);
  transition:opacity .18s ease;
}
.mdk3d-v13 .viewer-header-progress span{
  display:block;
  width:0%;
  height:100%;
  border-radius:inherit;
  background:linear-gradient(90deg,var(--brand),var(--cyan));
  transition:width .16s ease;
}
.mdk3d-v13 .viewer-header-progress.uploading,
.mdk3d-v13 .viewer-header-progress.done,
.mdk3d-v13 .viewer-header-progress.error{opacity:1}
.mdk3d-v13 .viewer-header-progress.error span{background:linear-gradient(90deg,var(--danger),var(--warn))}
.mdk3d-v13 .viewer-header-progress.hidden-soft,
.mdk3d-v13 .viewer-header-progress.idle{opacity:0}

.mdk3d-v13 .viewer-quick-controls{
  position:absolute;
  right:14px;
  bottom:14px;
  z-index:6;
  display:flex;
  align-items:center;
  gap:8px;
}
.mdk3d-v13 .viewer-reset-view,
.mdk3d-v13 .viewer-shell-toggle{
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,.28);
  background:rgba(2,7,18,.78);
  color:var(--muted);
  font-size:12px;
  font-weight:1000;
  letter-spacing:.02em;
  box-shadow:0 14px 34px rgba(0,0,0,.26);
  backdrop-filter:blur(16px);
}
.mdk3d-v13 .viewer-reset-view{
  border-color:rgba(148,163,184,.24);
  background:rgba(2,7,18,.66);
  color:rgba(226,232,240,.86);
}
.mdk3d-v13 .viewer-reset-view:active,
.mdk3d-v13 .viewer-shell-toggle:active{transform:translateY(1px)}
.mdk3d-v13 .viewer-pro:not(.has-model) .viewer-quick-controls,
.mdk3d-v13 .viewer-pro.has-analysis-fallback .viewer-quick-controls{display:none}
.mdk3d-v13 .viewer-shell-toggle[aria-pressed="false"]{
  border-color:rgba(34,211,238,.38);
  background:linear-gradient(135deg,rgba(47,128,255,.24),rgba(0,213,255,.12)),rgba(2,7,18,.86);
  color:var(--text);
}
.mdk3d-v13 .viewer-shell-toggle[aria-pressed="true"]{
  border-color:rgba(245,158,11,.42);
  background:linear-gradient(135deg,rgba(245,158,11,.20),rgba(2,7,18,.84));
  color:#fde68a;
}
.mdk3d-v13 .viewer-pro.has-model .viewer-empty,
.mdk3d-v13 .viewer-pro.has-analysis-fallback .viewer-empty{display:none}
@media(max-width:640px){
  .mdk3d-v13 .viewer-model-header{
    left:10px;
    right:10px;
    top:10px;
    grid-template-columns:minmax(0,1fr) max-content;
    gap:6px;
  }
  .mdk3d-v13 .viewer-header-chip{
    min-height:44px;
    padding:7px 10px;
  }
  .mdk3d-v13 .viewer-header-chip small{font-size:8px}
  .mdk3d-v13 .viewer-header-chip strong{font-size:12px}
  .mdk3d-v13 .viewer-size-chip{max-width:50vw}
  .mdk3d-v13 .viewer-size-chip strong{font-size:11px;letter-spacing:-.01em}
  .mdk3d-v13 .viewer-quick-controls{right:12px;bottom:12px;gap:6px}
  .mdk3d-v13 .viewer-reset-view,
  .mdk3d-v13 .viewer-shell-toggle{min-height:36px;padding-inline:12px;font-size:11px}
  .mdk3d-v13 .viewer-empty,
  .mdk3d-v13 .viewer-empty[data-state="reset-required"]{
    inset:64px 12px 18px;
  }
}
@media(max-width:380px){
  .mdk3d-v13 .viewer-size-chip{max-width:52vw}
  .mdk3d-v13 .viewer-header-chip{padding-inline:9px}
  .mdk3d-v13 .viewer-file-chip small,
  .mdk3d-v13 .viewer-size-chip small{display:none}
  .mdk3d-v13 .viewer-header-chip{min-height:38px}
  .mdk3d-v13 .viewer-header-chip strong{font-size:11px}
  .mdk3d-v13 .viewer-size-chip strong{font-size:10.5px}
}

/* V13.29 full flow QA */
.price-pill.has-warning{border-color:rgba(245,158,11,.50);background:rgba(245,158,11,.14);color:#fde68a}
.no-filament-notice{margin:0}

/* V13.30 micro polish */
.price-pill.is-loading{border-color:rgba(59,130,246,.52);background:rgba(59,130,246,.13);color:#bfdbfe}
.price-pill.is-loading::after{content:"";display:inline-block;width:.55em;height:.55em;margin-left:.45em;border-radius:999px;border:2px solid currentColor;border-right-color:transparent;vertical-align:-.06em;animation:mdk3dPriceSpin .72s linear infinite}
@keyframes mdk3dPriceSpin{to{transform:rotate(360deg)}}
.price-warning-note{margin:8px 0 0;padding:10px 12px;border:1px solid rgba(245,158,11,.38);border-radius:14px;background:rgba(245,158,11,.10);color:#fde68a;font-size:13px;line-height:1.35}

/* V13.33 color procurement */
.mdk3d-v13 .palette-editor-row.needs-procurement{border-color:rgba(245,158,11,.38);background:linear-gradient(135deg,rgba(245,158,11,.10),rgba(255,255,255,.045))}
.mdk3d-v13 .palette-editor-row.is-procurement{border-color:rgba(34,197,94,.42);background:linear-gradient(135deg,rgba(34,197,94,.11),rgba(255,255,255,.045))}
.mdk3d-v13 .palette-procurement-toggle{display:flex;align-items:flex-start;gap:9px;margin:2px 0 0;padding:10px 11px;border:1px solid rgba(245,158,11,.30);border-radius:14px;background:rgba(245,158,11,.09);color:var(--text);font-weight:900;line-height:1.3}
.mdk3d-v13 .palette-procurement-toggle input{width:18px;min-width:18px;min-height:18px;margin-top:1px;accent-color:#f59e0b}
.mdk3d-v13 .palette-procurement-note{display:block;padding:9px 11px;border-radius:13px;background:rgba(255,255,255,.045);font-size:12px;line-height:1.4;color:var(--muted)}
.mdk3d-v13 .palette-editor-row.is-procurement .palette-procurement-note{background:rgba(34,197,94,.10);color:#bbf7d0}
html[data-theme="light"] .mdk3d-v13 .palette-procurement-note{background:#f8fafc}
html[data-theme="light"] .mdk3d-v13 .palette-editor-row.is-procurement .palette-procurement-note{background:#ecfdf5;color:#166534}

/* V13.36 meshy color studio + clearer color mapping */
.mdk3d-v13 .palette-match-card{
  grid-template-columns:minmax(140px,.55fr) minmax(0,1fr);
  align-items:stretch;
}
.mdk3d-v13 .palette-match-source{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px;
  align-items:center;
  min-width:0;
  border:1px solid rgba(255,255,255,.10);
  border-radius:16px;
  padding:10px;
  background:rgba(255,255,255,.035);
}
.mdk3d-v13 .palette-match-source strong{display:block;color:var(--text);font-size:14px;line-height:1.2}
.mdk3d-v13 .palette-match-source small{display:block;color:var(--muted);font-size:12px;line-height:1.3;overflow-wrap:anywhere}
.mdk3d-v13 .palette-match-decision{display:grid;gap:8px;min-width:0}
.mdk3d-v13 .palette-choice-card{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:9px;
  align-items:flex-start;
  margin:0;
  padding:10px 11px;
  border:1px solid var(--line);
  border-radius:15px;
  background:rgba(255,255,255,.045);
  cursor:pointer;
}
.mdk3d-v13 .palette-choice-card input{width:18px;min-width:18px;min-height:18px;margin-top:1px;accent-color:var(--brand)}
.mdk3d-v13 .palette-choice-card b{display:block;color:var(--text);line-height:1.25}
.mdk3d-v13 .palette-choice-card small{display:block;margin-top:2px;color:var(--muted);font-size:12px;line-height:1.35;overflow-wrap:anywhere}
.mdk3d-v13 .palette-choice-card:has(input:checked){border-color:rgba(47,128,255,.52);background:rgba(47,128,255,.12)}
.mdk3d-v13 .palette-choice-card-procure:has(input:checked){border-color:rgba(245,158,11,.52);background:rgba(245,158,11,.12)}
.mdk3d-v13 .palette-choice-card input:disabled + span{opacity:.62}
.mdk3d-v13 .palette-match-select{border:1px solid rgba(255,255,255,.10);border-radius:15px;background:rgba(255,255,255,.035);padding:10px;margin:0}
.mdk3d-v13 .palette-match-select span{display:block;margin-bottom:6px;color:var(--muted);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.mdk3d-v13 .palette-match-note{margin:0}
html[data-theme="light"] .mdk3d-v13 .palette-match-source,
html[data-theme="light"] .mdk3d-v13 .palette-match-select{background:#f8fafc;border-color:#e2e8f0}
@media(max-width:640px){
  .mdk3d-v13 .palette-match-card{grid-template-columns:1fr;gap:10px}
  .mdk3d-v13 .palette-match-source{grid-template-columns:auto 1fr}
  .mdk3d-v13 .palette-choice-card{padding:10px}
}

/* V13.36 Meshy-like multi-color studio */
.mdk3d-v13 .viewer-palette-strip{position:absolute;left:14px;right:14px;bottom:14px;z-index:8;display:flex;gap:7px;align-items:center;padding:8px;border:1px solid rgba(255,255,255,.14);border-radius:18px;background:rgba(8,14,26,.78);backdrop-filter:blur(14px);box-shadow:0 14px 38px rgba(0,0,0,.26);overflow-x:auto;scrollbar-width:none}
.mdk3d-v13 .viewer-palette-strip::-webkit-scrollbar{display:none}
.mdk3d-v13 .viewer-palette-strip[hidden]{display:none}
.mdk3d-v13 .viewer-palette-slot{display:grid;grid-template-columns:auto auto;gap:6px;align-items:center;min-height:34px;padding:5px 8px;border:1px solid rgba(255,255,255,.14);border-radius:13px;background:rgba(255,255,255,.08);color:white;font-weight:950;cursor:pointer}
.mdk3d-v13 .viewer-palette-slot i{width:22px;height:22px;border-radius:7px;border:1px solid rgba(255,255,255,.42);box-shadow:inset 0 0 0 2px rgba(0,0,0,.18)}
.mdk3d-v13 .viewer-palette-slot.is-active{border-color:rgba(47,128,255,.72);background:rgba(47,128,255,.24)}
.mdk3d-v13 .viewer-palette-slot.is-procurement{border-color:rgba(245,158,11,.62)}
.mdk3d-v13 .viewer-palette-more{padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.10);color:rgba(255,255,255,.78);font-weight:950;font-size:12px}
.mdk3d-v13 .palette-studio{display:grid;gap:12px}
.mdk3d-v13 .palette-studio-controls{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.mdk3d-v13 .palette-studio-control{display:grid;grid-template-columns:1fr minmax(96px,1.2fr) auto;gap:10px;align-items:center;margin:0;padding:10px 12px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.045);color:var(--muted);font-weight:950}
.mdk3d-v13 .palette-studio-control span{font-size:12px;line-height:1.2}
.mdk3d-v13 .palette-studio-control b{min-width:28px;text-align:center;color:var(--text);padding:5px 7px;border-radius:9px;background:rgba(255,255,255,.08)}
.mdk3d-v13 .palette-studio-control input[type="range"]{width:100%;min-height:24px;padding:0;background:transparent}
.mdk3d-v13 .palette-slot-list{display:grid;gap:9px}
.mdk3d-v13 .palette-slot-card{border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.045);overflow:hidden}
.mdk3d-v13 .palette-slot-card.is-open{border-color:rgba(47,128,255,.40);background:linear-gradient(180deg,rgba(47,128,255,.10),rgba(255,255,255,.045))}
.mdk3d-v13 .palette-slot-card.is-procurement{border-color:rgba(245,158,11,.48)}
.mdk3d-v13 .palette-slot-header{width:100%;display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border:0;background:transparent;color:var(--text);padding:10px 12px;text-align:left;cursor:pointer}
.mdk3d-v13 .palette-slot-swatch{width:36px;height:36px;border-radius:11px;border:1px solid rgba(255,255,255,.32);box-shadow:inset 0 0 0 2px rgba(0,0,0,.18)}
.mdk3d-v13 .palette-slot-title{display:grid;gap:2px;min-width:0}.mdk3d-v13 .palette-slot-title strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mdk3d-v13 .palette-slot-title small{font-size:12px;line-height:1.25;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mdk3d-v13 .palette-slot-chevron{width:26px;height:26px;border-radius:9px;display:grid;place-items:center;background:rgba(255,255,255,.07);color:var(--muted);font-weight:950}
.mdk3d-v13 .palette-slot-body{display:grid;gap:11px;padding:0 12px 12px}
.mdk3d-v13 .palette-slot-source{display:grid;grid-template-columns:auto 1fr auto;gap:9px;align-items:center;padding:9px;border:1px solid rgba(255,255,255,.10);border-radius:14px;background:rgba(255,255,255,.035)}
.mdk3d-v13 .palette-slot-source-swatch{width:28px;height:28px;border-radius:9px;border:1px solid rgba(255,255,255,.32)}
.mdk3d-v13 .palette-slot-source span{color:var(--muted);font-size:12px;font-weight:950}.mdk3d-v13 .palette-slot-source b{color:var(--text);font-size:12px}
.mdk3d-v13 .palette-swatch-group{display:grid;gap:7px}.mdk3d-v13 .palette-swatch-group>b{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.mdk3d-v13 .palette-swatch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(28px,1fr));gap:7px}.mdk3d-v13 .palette-swatch-pick{aspect-ratio:1;min-height:28px;border-radius:8px;border:1px solid rgba(255,255,255,.28);box-shadow:inset 0 0 0 2px rgba(0,0,0,.18);cursor:pointer}.mdk3d-v13 .palette-swatch-pick.selected{outline:2px solid var(--brand);outline-offset:2px}
.mdk3d-v13 .palette-slot-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.mdk3d-v13 .palette-slot-select{min-height:44px}.mdk3d-v13 .palette-procure-button{min-height:44px;white-space:nowrap}.mdk3d-v13 .palette-slot-note,.mdk3d-v13 .palette-slot-empty{margin:0;padding:9px 11px;border-radius:13px;background:rgba(255,255,255,.045);color:var(--muted);font-size:12px;line-height:1.35}
html[data-theme="light"] .mdk3d-v13 .viewer-palette-strip{background:rgba(248,250,252,.86);border-color:#dbeafe}html[data-theme="light"] .mdk3d-v13 .viewer-palette-slot{color:#0f172a;background:rgba(255,255,255,.82);border-color:#dbeafe}html[data-theme="light"] .mdk3d-v13 .viewer-palette-more{color:#475569;background:#e2e8f0}
@media(max-width:640px){.mdk3d-v13 .viewer-palette-strip{left:10px;right:10px;bottom:10px;padding:7px;border-radius:16px}.mdk3d-v13 .palette-studio-controls{grid-template-columns:1fr}.mdk3d-v13 .palette-studio-control{grid-template-columns:1fr minmax(90px,1.3fr) auto}.mdk3d-v13 .palette-slot-actions{grid-template-columns:1fr}.mdk3d-v13 .palette-procure-button{width:100%}}

/* Trust conversion price examples and docked stats */
.mdk3d-v13 .price-examples-panel{
  margin:14px 0;
  padding:14px;
  border:1px solid rgba(47,128,255,.26);
  border-radius:20px;
  background:linear-gradient(135deg,rgba(47,128,255,.10),rgba(0,213,255,.05));
}
.mdk3d-v13 .price-examples-head{display:grid;gap:4px;margin-bottom:10px}.mdk3d-v13 .price-examples-head strong{font-size:16px;color:var(--text)}.mdk3d-v13 .price-examples-head small{line-height:1.35}
.mdk3d-v13 .price-example-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.mdk3d-v13 .price-example-card{display:grid;gap:4px;border:1px solid rgba(255,255,255,.12);border-radius:16px;background:rgba(255,255,255,.055);padding:11px;min-width:0}.mdk3d-v13 .price-example-card small{text-transform:uppercase;letter-spacing:.06em;font-weight:950;font-size:11px;color:var(--cyan)}.mdk3d-v13 .price-example-card strong{font-size:20px;color:var(--text);line-height:1.1}.mdk3d-v13 .price-example-card span{font-size:12px;line-height:1.35;color:var(--muted)}.mdk3d-v13 .price-examples-panel p{margin:10px 0 0;color:var(--muted);font-size:13px;line-height:1.4}.mdk3d-v13 .price-examples-panel b{color:#fde68a}
.mdk3d-v13 .field-dim{display:grid;gap:7px}.mdk3d-v13 .field-dim input{font-size:clamp(22px,6vw,34px)}
.mdk3d-v13 .recommended-preset-card{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:flex-start;margin:0 0 12px;padding:12px 13px;border:1px solid rgba(34,197,94,.32);border-radius:18px;background:linear-gradient(135deg,rgba(34,197,94,.10),rgba(255,255,255,.045))}.mdk3d-v13 .recommended-preset-card span{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:rgba(34,197,94,.16)}.mdk3d-v13 .recommended-preset-card strong{display:block;color:var(--text);line-height:1.25}.mdk3d-v13 .recommended-preset-card small{display:block;margin-top:3px;line-height:1.4;color:var(--muted)}


/* V13.39 clean viewer layout: no overlay CTA, compact docked stats */
.mdk3d-v13 .mdk3d-sticky-summary{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:6px;
  margin:8px 4px 0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.mdk3d-v13 .mdk3d-sticky-summary[hidden]{display:none!important}
.mdk3d-v13 .mdk3d-sticky-summary>div{
  min-width:0;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.045);
  padding:8px 10px;
}
.mdk3d-v13 .mdk3d-sticky-summary small{display:block;color:var(--muted);font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.055em;line-height:1.1}
.mdk3d-v13 .mdk3d-sticky-summary strong{display:block;color:var(--text);font-size:13px;line-height:1.15;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mdk3d-v13 .mdk3d-sticky-summary .sticky-price{border-color:rgba(245,158,11,.36);background:rgba(245,158,11,.10)}
.mdk3d-v13 .mdk3d-sticky-summary .sticky-price strong{color:#fde68a;font-size:14px}
.mdk3d-v13 .viewer-pro.has-model .viewer-empty{display:none!important}
@media(max-width:640px){
  .mdk3d-v13 .mdk3d-sticky-summary{grid-template-columns:repeat(4,minmax(74px,1fr));overflow-x:auto;scrollbar-width:none;margin-top:8px;padding-bottom:1px}
  .mdk3d-v13 .mdk3d-sticky-summary::-webkit-scrollbar{display:none}
  .mdk3d-v13 .mdk3d-sticky-summary>div{padding:7px 9px;border-radius:13px}
  .mdk3d-v13 .mdk3d-sticky-summary strong{font-size:12px}
  .mdk3d-v13 .mdk3d-sticky-summary .sticky-price strong{font-size:13px}
}
html[data-theme="light"] .mdk3d-v13 .mdk3d-sticky-summary>div{background:#fff;border-color:#e2e8f0}
html[data-theme="light"] .mdk3d-v13 .mdk3d-sticky-summary strong{color:#0f172a}
html[data-theme="light"] .mdk3d-v13 .mdk3d-sticky-summary small{color:#64748b}

/* V13.40 launch-ready flow polish */
.mdk3d-v13 .mdk3d-v13-hero{
  background:radial-gradient(circle at 20% 0%,rgba(0,213,255,.16),transparent 34%),linear-gradient(135deg,rgba(8,37,68,.96),rgba(8,13,24,.98));
  border-color:rgba(56,189,248,.24);
  box-shadow:0 22px 70px rgba(0,0,0,.20), inset 0 1px 0 rgba(255,255,255,.06);
}
.mdk3d-v13 .mdk3d-v13-hero h1{letter-spacing:-.055em;max-width:13ch}
.mdk3d-v13 .mdk3d-v13-hero .muted{max-width:58ch;font-size:clamp(16px,3.6vw,21px);line-height:1.55}
.mdk3d-v13 .single-viewer-stage{margin-top:18px}
.mdk3d-v13 .viewer-pro-3d{box-shadow:0 26px 80px rgba(0,0,0,.22), inset 0 1px 0 rgba(255,255,255,.05)}
.mdk3d-v13 .viewer-header-chip{box-shadow:0 12px 28px rgba(0,0,0,.18)}
.mdk3d-v13 .mdk3d-flow-summary{
  border-color:rgba(47,128,255,.24);
  background:linear-gradient(135deg,rgba(47,128,255,.10),rgba(255,255,255,.045));
}
.mdk3d-v13 .mdk3d-flow-summary b{box-shadow:inset 0 0 0 1px rgba(245,158,11,.26)}
.mdk3d-v13 .mdk-step-scroller button small{font-weight:950}
.mdk3d-v13 .wizard-step-body.active{animation:mdk3dStep .18s ease both}
.mdk3d-v13 .step-head h2{letter-spacing:-.035em}
.mdk3d-v13 .price-examples-panel{border-color:rgba(0,213,255,.24);background:linear-gradient(135deg,rgba(0,213,255,.09),rgba(47,128,255,.055))}
.mdk3d-v13 .price-example-card{transition:transform .18s ease,border-color .18s ease,background .18s ease}
.mdk3d-v13 .price-example-card:hover{transform:translateY(-1px);border-color:rgba(0,213,255,.28);background:rgba(0,213,255,.065)}
.mdk3d-v13 .mdk3d-assurance-strip{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 12px}
.mdk3d-v13 .mdk3d-assurance-strip span{display:inline-flex;align-items:center;min-height:32px;padding:0 11px;border-radius:999px;border:1px solid rgba(34,197,94,.28);background:rgba(34,197,94,.09);color:#bbf7d0;font-weight:950;font-size:12px;line-height:1}
.mdk3d-v13 .format-advice-details{border-color:rgba(255,255,255,.10);background:rgba(255,255,255,.035)}
.mdk3d-v13 .format-card{border-radius:16px}.mdk3d-v13 .format-card.best{background:rgba(47,128,255,.10)}
.mdk3d-v13 .size-panel,.mdk3d-v13 .print-accordion,.mdk3d-v13 .field-card{box-shadow:inset 0 1px 0 rgba(255,255,255,.035)}
.mdk3d-v13 .recommended-preset-card{border-color:rgba(34,197,94,.34);background:linear-gradient(135deg,rgba(34,197,94,.11),rgba(14,165,233,.045))}
.mdk3d-v13 .mdk3d-sticky-summary{margin:10px 2px 0;gap:7px}
.mdk3d-v13 .mdk3d-sticky-summary>div{background:rgba(8,13,24,.50);border-color:rgba(148,163,184,.16);backdrop-filter:blur(14px)}
.mdk3d-v13 .mdk3d-sticky-summary .sticky-price{background:rgba(245,158,11,.075);border-color:rgba(245,158,11,.26)}
.mdk3d-v13 .wizard-actions .button.primary{box-shadow:0 18px 42px rgba(47,128,255,.24)}
.mdk3d-v13 .upload-trust-note{color:#cbd5e1}
html[data-theme="light"] .mdk3d-v13 .mdk3d-assurance-strip span{background:#ecfdf5;color:#166534;border-color:#bbf7d0}
html[data-theme="light"] .mdk3d-v13 .mdk3d-v13-hero{background:linear-gradient(135deg,#e0f2fe,#f8fafc);border-color:#bae6fd}
html[data-theme="light"] .mdk3d-v13 .mdk3d-sticky-summary>div{background:#fff}
@media(max-width:640px){
  .mdk3d-v13 .mdk3d-v13-hero h1{max-width:11ch}
  .mdk3d-v13 .price-example-grid{grid-template-columns:1fr}
  .mdk3d-v13 .mdk3d-assurance-strip{display:grid;grid-template-columns:1fr;gap:6px}
  .mdk3d-v13 .mdk3d-assurance-strip span{justify-content:center}
  .mdk3d-v13 .mdk3d-sticky-summary{grid-template-columns:repeat(4,minmax(76px,1fr));gap:6px}
}
