/* R28 — one 900px design canvas, proportionally fitted by its shell everywhere. */
.mpqc-scale-shell{position:relative;width:100%;max-width:900px;margin:0 auto;overflow:hidden}.mpqc-scale-stage{position:absolute;left:50%;top:0;width:900px;transform-origin:top center}.mpqc-scale-stage>.mpqc-runtime-preview{box-sizing:border-box;width:900px!important;max-width:none!important;height:auto!important;min-height:calc(var(--mpqc-canvas-h,640) * 1px)!important;aspect-ratio:auto!important;overflow:visible!important}.mpqc-runtime-preview{box-sizing:border-box;width:900px;max-width:none;margin:0;padding:44px 56px;aspect-ratio:900 / var(--mpqc-canvas-h,640);height:auto;min-height:0;background-color:var(--mpqc-bg,#fff);color:var(--mpqc-text,#1d2327);background-position:center;background-size:cover;background-repeat:no-repeat;border-radius:8px;overflow:visible}
.mpqc-runtime-preview .mpqc-preview-fields{width:100%;max-width:560px;margin:0 auto}
.mpqc-runtime-preview>h3{max-width:620px;margin:0 auto 18px;color:inherit}
.mpqc-runtime-preview .mpqc-preview-field{margin:0 0 18px}
.mpqc-runtime-preview .mpqc-preview-field label{display:block;margin-bottom:7px;line-height:1.35;color:inherit}
.mpqc-runtime-preview .mpqc-preview-field input,.mpqc-runtime-preview .mpqc-preview-field select{box-sizing:border-box;width:100%;max-width:100%;min-height:42px;padding:8px 10px;color:inherit;border:1px solid currentColor}
.mpqc-runtime-preview .mpqc-preview-field textarea{box-sizing:border-box;width:100%;max-width:100%;min-height:118px;padding:10px;color:inherit;border:1px solid currentColor}
.mpqc-runtime-preview .mpqc-preview-counter-value{box-sizing:border-box;width:100%;min-height:42px;display:flex;align-items:center;justify-content:center;padding:8px 10px;border:1px solid currentColor;font-size:20px;font-weight:700;line-height:1.2;text-align:center}
.mpqc-runtime-preview.has-background-image>h3,.mpqc-runtime-preview.has-background-image .mpqc-preview-field>label{font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.mpqc-runtime-preview.has-background-image .mpqc-preview-counter-value{font-size:24px;font-weight:800;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.35)}
.mpqc-runtime-preview>#mpqc-preview-submit{display:block;width:auto;max-width:620px;min-height:42px;margin:18px auto 0;padding:6px 20px;background:var(--mpqc-button,#2271b1);border:1px solid var(--mpqc-button,#2271b1);color:var(--mpqc-button-text,#fff);border-radius:3px;cursor:pointer}
.mpqc-preview-reserve{margin:10px 0;padding:10px 12px;background:rgba(255,255,255,.82);color:#1d2327;border-left:4px solid currentColor}
.mpqc-public-copy{max-width:560px;margin:0 auto 14px}.mpqc-public-copy label{color:inherit}
.mpqc-public-success{box-sizing:border-box;max-width:900px;margin:0 auto;padding:24px;border:1px solid #dcdcde;border-radius:8px}


/* R30 — contact-specific control background opacity. */
.mpqc-runtime-preview .mpqc-preview-field input,.mpqc-runtime-preview .mpqc-preview-field textarea,.mpqc-runtime-preview .mpqc-preview-field select,.mpqc-runtime-preview .mpqc-preview-counter-value{background-color:rgba(255,255,255,var(--mpqc-control-opacity,1))!important}

/* R32 — compact type badges on phone-sized displays. The 900px canvas geometry stays unchanged. */
.mpqc-mobile-type-icon{display:none}
@media (max-width:600px){
  .mpqc-public-form .mpqc-preview-field>label .mpqc-label-text{display:none}
  .mpqc-public-form .mpqc-preview-field>label .mpqc-mobile-type-icon{
    display:inline-flex;align-items:center;justify-content:center;
    box-sizing:border-box;min-width:34px;height:30px;padding:0 8px;
    border-radius:6px;background:rgba(20,24,30,.82);color:#fff;
    font-size:18px;font-weight:800;line-height:1;text-shadow:none;
  }
  .mpqc-public-form .mpqc-type-text>label .mpqc-mobile-type-icon::before{content:'A'}
  .mpqc-public-form .mpqc-type-email>label .mpqc-mobile-type-icon::before{content:'✉'}
  .mpqc-public-form .mpqc-type-tel>label .mpqc-mobile-type-icon::before{content:'☎'}
  .mpqc-public-form .mpqc-type-textarea>label .mpqc-mobile-type-icon::before{content:'▤'}
  .mpqc-public-form .mpqc-type-select>label .mpqc-mobile-type-icon::before{content:'≡⌄';font-size:15px}
  .mpqc-public-form .mpqc-type-number>label .mpqc-mobile-type-icon::before{content:'#'}
  .mpqc-public-form .mpqc-type-counter>label .mpqc-mobile-type-icon::before{content:'◉'}
  .mpqc-public-form .mpqc-preview-field>label .mpqc-required-mark{font-weight:800;text-shadow:0 1px 2px rgba(0,0,0,.35)}
}

/* R47 — phone portrait entry mode. Keep the designed contact visible normally;
   when a visitor starts entering details, expand it to a readable full-screen form. */
@media (max-width:480px) and (orientation:portrait){
  body.mpqc-mobile-entry-open{overflow:hidden}
  .mpqc-scale-shell.mpqc-mobile-entry{overflow:visible!important;z-index:999999}
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-scale-stage{
    position:fixed!important;inset:0!important;left:0!important;top:0!important;
    width:100vw!important;height:100dvh!important;transform:none!important;
    overflow-y:auto!important;overflow-x:hidden!important;background:#fff;
    z-index:999999;overscroll-behavior:contain;-webkit-overflow-scrolling:touch
  }
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-runtime-preview{
    width:100%!important;max-width:none!important;height:auto!important;min-height:100dvh!important;
    padding:28px 18px 36px!important;border-radius:0!important;overflow:visible!important;
    background-position:center!important;background-size:cover!important
  }
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-preview-fields{width:100%!important;max-width:560px!important}
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-preview-field{margin-bottom:16px!important}
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-preview-field input,
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-preview-field select,
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-preview-field textarea{
    min-height:48px!important;font-size:16px!important
  }
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-preview-field textarea{min-height:120px!important}
  .mpqc-scale-shell.mpqc-mobile-entry #mpqc-preview-submit{min-height:48px!important;font-size:16px!important}
}

/* R48 — Cancel is available only while the phone portrait entry view is expanded. */
.mpqc-mobile-entry-cancel{display:none}
@media (max-width:480px) and (orientation:portrait){
  .mpqc-scale-shell.mpqc-mobile-entry .mpqc-mobile-entry-cancel{
    display:block;width:100%;max-width:560px;min-height:48px;margin:12px auto 0;
    padding:10px 16px;border:1px solid currentColor;border-radius:6px;background:transparent;
    color:inherit;font:inherit;font-size:16px;line-height:1.2;cursor:pointer
  }
}

/* Front-end preview container (previously emitted as inline CSS). */
.mpqc-front-preview { box-sizing: border-box; width: 100%; max-width: 1100px; margin: 20px auto; padding: 0 16px; }
@media (max-width: 782px) { .mpqc-front-preview { margin: 10px auto; padding: 0 10px; } }
