/* Scoped to the user order payment dialog. */
.n8-payment-sheet.van-popup { box-sizing:border-box; width:100%; max-width:100%; max-height:94vh; max-height:94dvh; border-radius:22px 22px 0 0; background:#fff; box-shadow:0 -8px 40px #23352e1a; }
.n8-payment-sheet .van-action-sheet__content { overscroll-behavior:contain; }
.n8-payment-sheet .n8-user-payment[data-v-5a38ea91] { box-sizing:border-box; display:flex; width:100%; height:auto; min-height:0; padding:22px 20px calc(14px + env(safe-area-inset-bottom)); color:#23352e; background:#fff; }
.n8-payment-sheet .n8-user-payment .title-row[data-v-5a38ea91] { gap:16px; padding:0; line-height:1.45; font-size:17px; font-weight:600; color:#23352e; }
.n8-payment-title { flex:1; min-width:0; }
.n8-payment-close { display:flex; flex:0 0 36px; align-items:center; justify-content:center; width:36px; height:36px; padding:0; border:0; border-radius:50%; font-size:27px; line-height:1; font-weight:300; color:#76827b; background:#f3f5f2; cursor:pointer; }
.n8-payment-close:hover { color:#23352e; background:#e9eeea; }
.n8-payment-close:disabled { cursor:wait; opacity:.45; }
.n8-payment-close:focus-visible { outline:2px solid #31624f; outline-offset:3px; }
.n8-payment-summary { padding:20px 0 24px; text-align:center; }
.n8-payment-total-label { font-size:13px; line-height:1.4; color:#879189; }
.n8-payment-sheet .n8-user-payment .money-row[data-v-5a38ea91] { margin-top:7px; padding:0; font-size:clamp(30px,8vw,38px); line-height:1.2; font-weight:700; font-variant-numeric:tabular-nums; letter-spacing:-.8px; color:#23352e; overflow-wrap:anywhere; }
.n8-payment-wallet { display:flex; align-items:center; gap:12px; padding:14px 16px; border:1px solid #dce6dc; border-radius:12px; background:#f5f8f2; }
.n8-payment-wallet-icon { display:flex; align-items:center; justify-content:center; width:38px; height:38px; border-radius:10px; color:#31624f; background:#e7eee3; }
.n8-payment-wallet-copy { display:flex; flex:1; min-width:0; gap:3px; flex-direction:column; font-size:15px; font-variant-numeric:tabular-nums; }
.n8-payment-wallet-label { color:#879189; font-size:12px; }
.n8-payment-wallet-copy strong { overflow-wrap:anywhere; font-weight:600; }
.n8-payment-wallet-check { display:flex; flex:0 0 22px; align-items:center; justify-content:center; width:22px; height:22px; border-radius:50%; color:#fff; background:#31624f; font-size:14px; }
.n8-payment-sheet .n8-user-payment .pwd-container[data-v-5a38ea91] { padding-top:24px; }
.n8-payment-password { position:relative; min-width:0; }
.n8-payment-password .van-password-input { margin:0; }
.n8-payment-password .van-password-input__security { height:48px; }
.n8-payment-sheet .n8-payment-password .van-password-input__security li { box-sizing:border-box; min-width:0; border:1px solid #e0e5de; border-radius:9px; background:#fafbf8!important; }
.n8-payment-password .van-password-input__cursor { height:35%; background:#31624f; }
.n8-payment-native { position:absolute; inset:0; z-index:1; box-sizing:border-box; width:100%; height:100%; min-width:0; margin:0; padding:0; border:0; opacity:0; font-size:16px; cursor:text; }
.n8-payment-native:disabled { cursor:wait; }
.n8-payment-password:focus-within .van-password-input__security { outline:2px solid #7ca08a; outline-offset:4px; border-radius:9px; }
.n8-payment-password--invalid .van-password-input__security { outline-color:#da6262; }
.n8-payment-progress { display:flex; min-height:30px; align-items:center; justify-content:center; }
.n8-payment-sheet .n8-user-payment .van-number-keyboard { position:static; width:100%; margin:0; padding:0; background:transparent; --van-number-keyboard-key-height:45px; --van-number-keyboard-key-font-size:21px; }
.n8-payment-sheet .n8-user-payment .van-number-keyboard__body { padding:0; background:transparent; }
.n8-payment-sheet .n8-user-payment .van-number-keyboard__keys { gap:8px; }
.n8-payment-sheet .n8-user-payment .van-key__wrapper { flex-basis:calc((100% - 16px) / 3); padding:0; }
.n8-payment-sheet .n8-user-payment .van-key { border-radius:9px; color:#35483c; background:#f4f6f1; transition:background .15s; }
.n8-payment-sheet .n8-user-payment .van-key:hover { background:#e9efe4; }
.n8-payment-sheet .n8-user-payment .van-key--active { background:#dfe8d9; }
.n8-payment-sheet .n8-user-payment .van-key:focus-visible { outline:2px solid #31624f; outline-offset:1px; }
.n8-user-payment--busy .van-number-keyboard { opacity:.55; pointer-events:none; }
@media(min-width:768px) {
  .n8-payment-sheet.van-popup { top:50%; bottom:auto; left:50%; width:480px; max-width:calc(100vw - 48px); max-height:calc(100vh - 48px); max-height:calc(100dvh - 48px); border:1px solid #e5e9e0; border-radius:22px; box-shadow:0 24px 90px #23352e40; transform:translate(-50%,-50%); }
  .n8-payment-sheet.van-popup-slide-bottom-enter-active,.n8-payment-sheet.van-popup-slide-bottom-leave-active { transition:opacity .2s ease; }
  .n8-payment-sheet.van-popup-slide-bottom-enter-from,.n8-payment-sheet.van-popup-slide-bottom-leave-to { opacity:0; transform:translate(-50%,-50%); }
  .n8-payment-sheet .n8-user-payment[data-v-5a38ea91] { padding:26px 30px 28px; }
  .n8-payment-summary { padding:22px 0 24px; }
}
@media(max-height:620px) {
  .n8-payment-sheet .n8-user-payment[data-v-5a38ea91] { padding-top:14px; padding-bottom:calc(12px + env(safe-area-inset-bottom)); }
  .n8-payment-summary { padding:12px 0 16px; }
  .n8-payment-sheet .n8-user-payment .pwd-container[data-v-5a38ea91] { padding-top:16px; }
  .n8-payment-progress { min-height:20px; }
  .n8-payment-sheet .n8-user-payment .van-number-keyboard { --van-number-keyboard-key-height:40px; }
}
