/* Horizontal guest workflow: use width instead of building a long phone column. */
@media (orientation:landscape) and (min-width:650px) and (max-height:700px) {
  .camera input{width:1px;height:1px;overflow:hidden}
  .guest-top{position:sticky;top:0;height:40px;padding:0 14px}
  .guest-top .brand{font-size:17px}
  .guest-top .secure{font-size:10px}
  .shell{display:grid;grid-template-columns:minmax(260px,.78fr) minmax(360px,1.22fr);gap:10px;max-width:none;padding:10px 12px 22px}
  .hero{position:sticky;top:50px;align-self:start;padding:10px 14px}
  .hero .eyebrow{margin-bottom:7px;font-size:9px}
  .hero h1{max-width:440px;margin-bottom:10px;font-size:29px;line-height:.96}
  .hero p{margin-bottom:9px;font-size:11px;line-height:1.35}
  .progress-strip{margin:9px 0}
  .progress-strip span{padding:6px 3px;font-size:9px}
  .progress-strip b{width:17px;height:17px;font-size:9px}
  .advance-note{padding:9px 10px;font-size:10px;line-height:1.3}
  .card{margin:0;padding:14px;border-radius:13px}
  .card h2{margin:8px 0 6px;font-size:22px}
  .step-no{width:27px;height:27px;font-size:10px}
  #lookupStep form{gap:9px;margin-top:12px}
  #lookupStep input{padding:10px 11px}
  #lookupStep button{padding:11px 14px}
  .operator-link{margin-top:10px;font-size:11px}
  footer{padding:15px 18px;font-size:11px}

  body.form-active .shell{display:block;max-width:none;padding:8px 10px 20px}
  .form-active #registerStep{max-width:none;padding:12px}
  .stage-context{margin:-2px -2px 8px;padding:7px 9px}
  #registerForm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px;margin-top:10px;align-items:start}
  #registerForm>label:nth-of-type(-n+3){min-width:0}
  #registerForm>label:nth-of-type(3){grid-column:1/-1}
  #registerForm input,#registerForm textarea{padding:9px 10px;font-size:12px}
  .photo-block{min-height:0;margin:0;padding:10px;border-radius:10px}
  .photo-block h3,.receipt-upload h3{font-size:13px}
  .photo-block p,.receipt-upload p{margin:3px 0 7px;font-size:9.5px;line-height:1.25}
  .camera{padding:9px 10px;font-size:11px}
  .preview{margin-top:7px}
  .preview img{width:100%;max-height:120px;object-fit:contain;background:#f5f2eb}
  .preview .quality{margin-top:4px;font-size:9px}
  .payment-block,.deposit-block{min-width:0;margin:0;padding:10px;border:1px solid #d9d5cc;border-radius:11px;background:#fff}
  .payment-head{display:flex;gap:8px}
  .payment-head h2{margin:0;font-size:18px}
  .payment-total b{font-size:17px}
  .business-payment,.personal-payment{margin:8px 0;padding:10px}
  .business-mark b{font-size:13px}
  .business-mark span,.muted{font-size:9.5px}
  .business-pay-button{padding:9px;font-size:11px}
  .payment-switch{margin:8px 0}
  .payment-switch button{padding:7px 5px;font-size:10px}
  .qr-wrap{max-width:170px;margin:7px auto;padding:7px}
  .receipt-upload{padding:9px}
  .bank-card{padding:10px;gap:7px}
  .bank-card dl>div{grid-template-columns:90px 1fr;padding-top:5px}
  .already-paid{grid-column:1/-1}
  #registerForm>.check,#registerForm>button[type="submit"]{grid-column:1/-1}
  #registerForm>.check{padding:7px 9px;border:1px solid #ded9cf;border-radius:8px;background:#faf8f3;font-size:10px}
  #registerForm>button[type="submit"]{padding:11px 14px}
  .guest-upload-card{padding:18px}
  .guest-upload-ring{width:78px;height:78px}
  .guest-upload-card h2{margin-top:10px;font-size:20px}
}
