/* v532U — mobile phase 2 interaction polish
   Scope: mobile/tablet interaction surfaces only. Desktop is intentionally untouched. */
@media (max-width: 980px){
  html, body{max-width:100%;overflow-x:hidden;}
  body{padding-bottom:calc(86px + env(safe-area-inset-bottom,0px));}
  input, select, textarea, button{font-size:16px;}
  input, select, textarea{max-width:100%;}
  .form-shell, .order-shell, .payment-shell{width:100%;max-width:100%;}
  .order-layout, .payment-grid, .status-help-grid, .inline-payment-grid{display:grid !important;grid-template-columns:1fr !important;gap:16px !important;align-items:start;}
  .order-main, .order-summary, .payment-action-card, .status-card{width:100%;min-width:0;}
  .order-summary{position:static !important;top:auto !important;max-height:none !important;order:2;margin-top:4px;}
  .order-summary [data-review], .review-mobile, #paymentSummary, #inlinePaymentSummary, #trackingResult{max-width:100%;overflow-wrap:anywhere;word-break:normal;}
  .step-header.compact-steps, .three-step-header{display:flex !important;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 10px;margin-left:-2px;margin-right:-2px;-webkit-overflow-scrolling:touch;}
  .step-header.compact-steps .step-pill, .three-step-header .step-pill{flex:0 0 min(78vw,260px);scroll-snap-align:start;min-width:0;padding:10px 12px;border-radius:16px;}
  .step-pill span{min-width:0;}
  .step-pill small{display:block;white-space:normal;line-height:1.25;}
  .mini-section, .plain-section, .applicant-card, .confirmation-box, .inline-payment-card, .payment-action-card, .status-card{border-radius:18px;padding:16px;}
  .grid.two, .travel-grid, .compact-contact-grid, .applicant-grid, .applicant-compact-grid, .fast-track-grid-v499G, .pickup-grid, .upload-grid, .applicant-upload-grid{grid-template-columns:1fr !important;gap:12px !important;}
  .span-2, .passport-expiry-compact, .fast-track-flight-number-v499G{grid-column:auto !important;}
  label{min-width:0;}
  .order-main label, .status-card label{display:block;line-height:1.35;}
  .order-main input, .order-main select, .order-main textarea, .status-card input, .payment-shell input{width:100%;min-height:48px;border-radius:14px;}
  .order-main textarea{min-height:112px;resize:vertical;}
  .date-combo{display:grid !important;grid-template-columns:minmax(0,1fr) 48px;gap:8px;align-items:center;width:100%;}
  .date-combo input[data-date-input]{min-width:0;}
  .date-combo .date-button{width:48px;height:48px;min-height:48px;border-radius:14px;padding:0;display:inline-flex;align-items:center;justify-content:center;}
  .native-date-picker{position:absolute !important;opacity:0 !important;pointer-events:none !important;width:1px !important;height:1px !important;}
  .field-error{display:block;margin-top:6px;font-size:12px;line-height:1.35;}
  .actions, .actions.actions-right, .hero-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:stretch;}
  .actions .btn, .hero-actions .btn, .status-input-row .btn, .payment-action-card .btn, .refined-submit-btn{width:100%;justify-content:center;min-height:48px;}
  .addon-switch{margin:8px 0;}
  .addon-check, .confirm-check{display:flex !important;align-items:flex-start;gap:10px;padding:12px;border-radius:14px;background:rgba(248,251,255,.86);border:1px solid rgba(16,42,76,.1);}
  .addon-check input, .confirm-check input{flex:0 0 auto;width:20px;height:20px;margin-top:1px;min-height:20px;}
  .addon-fields{margin-top:10px;padding:12px;border-radius:16px;background:#f8fbff;border:1px solid rgba(16,42,76,.1);}
  .status-input-row{display:grid !important;grid-template-columns:1fr !important;gap:12px !important;}
  .paypal-box, #paymentBox, #inlinePaymentBox{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;}
}

@media (max-width: 760px){
  .page-hero.compact, .page-hero{padding-top:34px;padding-bottom:28px;}
  .form-intro, .compact-note, .submit-note, .payment-note{font-size:14px;line-height:1.55;}
  .applicant-card h4{font-size:13px;letter-spacing:.08em;margin-bottom:10px;}
  .upload-card, .upload-card-balanced, .applicant-upload-card-v489G{display:grid !important;grid-template-columns:1fr !important;gap:12px;padding:14px;border-radius:18px;min-height:0;}
  .upload-card-copy-v489G small{font-size:12.5px;line-height:1.45;}
  .upload-preview-v489G{width:100%;min-height:0;}
  .upload-preview-media-v489G{height:auto;min-height:140px;max-height:230px;border-radius:14px;overflow:hidden;}
  .upload-preview-media-v489G img{width:100%;height:100%;object-fit:cover;}
  .upload-preview-media-passport-v489G{aspect-ratio:16/10;}
  .upload-preview-media-portrait-v489G{aspect-ratio:4/5;max-height:260px;}
  .upload-select-btn{width:100%;min-height:46px;border-radius:14px;}
  .passport-upload-guide-v489G, .portrait-upload-guide-v496G{margin-top:14px;padding:14px;border-radius:18px;overflow:hidden;}
  .passport-guide-grid-v489G, .portrait-guide-grid-v496G{display:grid !important;grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:10px !important;}
  .passport-guide-item-v489G, .portrait-guide-item-v496G{min-width:0;border-radius:14px;overflow:hidden;}
  .passport-guide-item-v489G img, .portrait-guide-item-v496G img{width:100%;height:96px;object-fit:cover;}
  .passport-guide-item-v489G b, .portrait-guide-item-v496G b{font-size:11.5px;line-height:1.25;padding:7px 6px;}
  .payment-flow-stack{display:grid;grid-template-columns:1fr;gap:14px;}
  .summary-row{display:grid !important;grid-template-columns:1fr !important;gap:4px;padding:10px 0;}
  .summary-row strong{text-align:left;overflow-wrap:anywhere;}
  .payment-grid .card, .status-help-grid .status-card{padding:16px;border-radius:20px;}
}

@media (max-width: 640px){
  body.vge-chatbot-is-open{overflow:hidden;}
  .whatsapp-float, .messenger-float, .telegram-float{right:10px !important;max-width:44px;min-width:44px;width:44px;height:44px;border-radius:999px;padding:0 !important;justify-content:center;}
  .whatsapp-float .whatsapp-text, .messenger-float .messenger-text, .telegram-float .telegram-text{display:none !important;}
  .whatsapp-float{bottom:calc(18px + env(safe-area-inset-bottom,0px)) !important;}
  .messenger-float{bottom:calc(68px + env(safe-area-inset-bottom,0px)) !important;}
  .telegram-float{bottom:calc(118px + env(safe-area-inset-bottom,0px)) !important;}
  .vge-chatbot-root{right:10px !important;bottom:calc(170px + env(safe-area-inset-bottom,0px)) !important;z-index:10020;}
  .vge-chatbot-root.is-open{left:0;right:0;bottom:0 !important;top:0;display:flex;align-items:flex-end;justify-content:center;pointer-events:none;}
  .vge-chatbot-root.is-open .vge-chatbot-panel{pointer-events:auto;position:fixed !important;left:8px !important;right:8px !important;bottom:calc(8px + env(safe-area-inset-bottom,0px)) !important;top:auto !important;width:auto !important;height:min(640px,calc(100dvh - 18px - env(safe-area-inset-bottom,0px))) !important;max-height:calc(100dvh - 18px - env(safe-area-inset-bottom,0px)) !important;border-radius:20px;}
  .vge-chatbot-root.is-open .vge-chatbot-launcher{display:none !important;}
  .vge-chatbot-header{padding:12px 13px;}
  .vge-chatbot-messages{padding:11px;}
  .vge-chatbot-form{padding:9px;padding-bottom:calc(9px + env(safe-area-inset-bottom,0px));}
  .vge-chatbot-send{min-width:72px;padding:0 12px;}
  .vge-chatbot-quick{grid-template-columns:1fr 1fr;max-height:112px;overflow-y:auto;}
  .vge-chatbot-bubble{max-width:94%;}
  .vge-chatbot-root.is-keyboard-open .vge-chatbot-panel{top:6px !important;bottom:6px !important;height:auto !important;max-height:none !important;}
  .vge-chatbot-root.is-keyboard-open .vge-chatbot-quick{display:none;}
  .vge-chatbot-root.is-keyboard-open .vge-chatbot-note{display:none;}
}

@media (max-width: 420px){
  .container{padding-left:16px;padding-right:16px;}
  .mini-section, .plain-section, .applicant-card, .confirmation-box, .inline-payment-card, .payment-grid .card, .status-help-grid .status-card{padding:14px;border-radius:16px;}
  .step-header.compact-steps .step-pill, .three-step-header .step-pill{flex-basis:82vw;padding:9px 10px;}
  .passport-guide-grid-v489G, .portrait-guide-grid-v496G{grid-template-columns:1fr !important;}
  .passport-guide-item-v489G img, .portrait-guide-item-v496G img{height:132px;}
  .date-combo{grid-template-columns:minmax(0,1fr) 46px;gap:7px;}
  .date-combo .date-button{width:46px;height:46px;min-height:46px;}
  .vge-chatbot-root.is-open .vge-chatbot-panel{left:6px !important;right:6px !important;border-radius:18px;}
  .vge-chatbot-header span{display:none;}
}
