/* Mobile overrides follow the desktop editor and brand styles. */
@media (max-width: 900px) {
  .product-workspace {
    grid-template-columns: minmax(0, 1fr);
    overflow: visible;
  }
  .product-workspace > .preview-panel,
  .product-workspace > .control-panel,
  .product-workspace > .purchase-strip {
    grid-column: 1;
    grid-row: auto;
    min-width: 0;
    max-width: 100%;
  }
  .product-workspace > .control-panel {
    border-left: 0;
    border-top: 1px solid var(--line);
  }
  .preview-panel {
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto auto auto auto auto;
    grid-template-areas: "status" "guide" "stage" "tools" "inputs";
  }
  .preview-stage {
    grid-template-rows: auto auto auto auto;
    gap: 10px;
  }
  .preview-stage .canvas-wrap,
  .preview-stage .shape-view {
    width: min(100%, 380px);
    max-width: 100%;
  }
  .preview-panel > .edit-tools {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 12px;
    padding: 14px;
  }
  .edit-tools .upload-box { min-height: 76px; }
  .edit-tools .vertical-ranges { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 12px; }
  .edit-tools .tool-range { display: grid; grid-template-columns: 1fr auto; gap: 4px 10px; }
  .edit-tools .tool-range span { text-align: left; }
  .edit-tools .tool-range input {
    grid-column: 1 / -1;
    writing-mode: horizontal-tb;
    direction: ltr;
    width: 100%;
    height: 44px;
    min-height: 44px;
    cursor: ew-resize;
    touch-action: pan-y;
  }
  .edit-tools .tool-actions { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .edit-tools button, .design-inputs button, .stage-actions button { min-height: 44px; touch-action: manipulation; }
  .design-inputs .font-picker { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .design-inputs .text-field input,
  .purchase-strip .quantity-row input,
  .order-dialog input:not([type="checkbox"]),
  .order-dialog textarea { font-size: 16px; min-height: 44px; }
  .design-inputs .color-field input { height: 44px; }
  .product-workspace > .purchase-strip { grid-template-columns: minmax(0, 1fr); margin: 12px; padding: 14px; }
  .purchase-strip .quantity-row { grid-template-columns: minmax(0, 1fr) 90px auto; }
  .purchase-strip .quantity-row label { grid-column: auto; }
  .control-panel .swatch-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px 6px; }
  .control-panel .swatch-grid label { min-height: 64px; font-size: 12px; }
  .control-panel .swatch-grid i { width: 36px; height: 36px; }
  .preview-panel > .editor-callout span,
  .preview-stage .print-warning,
  .edit-tools .tool-range span,
  .edit-tools .tool-range output,
  .edit-tools .editor-targets button,
  .edit-tools .tool-actions button,
  .edit-tools .save-preview,
  .design-inputs legend,
  .design-inputs .text-field,
  .design-inputs .color-field { font-size: 14px; }
  .edit-tools .upload-box small,
  .edit-tools > p,
  .design-inputs .font-license-note,
  .design-inputs .font-picker small,
  .sample-detail-note,
  .control-panel .color-options > p,
  .purchase-actions > .rights-note { font-size: 12px; line-height: 1.6; }
  .preview-stage .print-warning, .preview-stage .shape-help { overflow-wrap: anywhere; }
  .order-dialog { max-height: calc(100dvh - 24px); overflow-y: auto; }
  html.embedded .order-dialog {
    position: fixed;
    top: var(--host-visible-top, 12px);
    margin: 0 auto;
    max-height: var(--host-visible-height, 650px);
  }
  .order-dialog input, .order-dialog textarea { scroll-margin-block: 24px; }
}
@media (max-width: 560px) {
  .customizer-section { padding: 12px 8px 28px; }
  .product-workspace { --workspace-panel-padding: 12px; }
  .stage-actions .preview-directions { max-width: none; width: 100%; }
  .spec-block { min-width: 0; }
}

/* Honor receipt state before a successful server response. */
.order-receipt[hidden] { display: none; }
.order-dialog .demo-notice { font-size: 14px; line-height: 1.6; }
