/* POS Detail Order Payment Card & Refund Action */
.payment-panel{box-sizing:border-box;padding:16px;margin:14px 0 6px;border:1px solid #e2e8f0;border-radius:12px;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,0.04);color:#0f172a;line-height:1.5}
.payment-panel label{display:block;margin-bottom:8px;font-weight:600}
.pos-payment-header{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.pos-payment-brand{display:inline-flex;align-items:center;gap:8px}
.pos-payment-channel-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:6px;background:#06c75515;border:1px solid #06c75535;color:#059640;font-size:12.5px;font-weight:800;letter-spacing:-0.2px}
.pos-payment-channel-badge svg{flex:none;color:#06c755}
.pos-payment-status-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:6px;font-size:12px;font-weight:700}
.pos-payment-status-pill.status-paid{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}
.pos-payment-status-pill.status-refunded{background:#f1f5f9;color:#475569;border:1px solid #cbd5e1}
.pos-payment-status-pill.status-pending{background:#fffbeb;color:#b45309;border:1px solid #fde68a}
.pos-payment-status-pill.status-failed{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}
.pos-payment-amount{font-size:17px;font-weight:800;font-variant-numeric:tabular-nums;color:#0f172a;margin-left:auto}

/* Critical Unrefunded Alert Banner */
.pos-payment-alert-unrefunded{display:flex;align-items:flex-start;gap:12px;margin:12px 0 8px;padding:12px 14px;background:#fef2f2;border:1.5px solid #fca5a5;border-radius:10px;color:#991b1b}
.pos-payment-alert-icon{flex:none;margin-top:1px;color:#dc2626}
.pos-payment-alert-content{min-width:0;flex:1}
.pos-payment-alert-title{margin:0 0 3px;font-size:13.5px;font-weight:800;color:#991b1b;line-height:1.4}
.pos-payment-alert-desc{margin:0;font-size:12.5px;color:#7f1d1d;line-height:1.45}

/* POS Tablet-First Refund Button */
.payment-button{min-height:48px;min-width:48px;box-sizing:border-box;padding:10px 18px;border:1.5px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;font:inherit;font-size:14px;font-weight:700;cursor:pointer;transition:all .15s ease}
.payment-button:focus-visible{outline:3px solid #2563eb;outline-offset:2px}
.payment-button:disabled{opacity:.55;cursor:wait}
.btn-pos-refund{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:8px;margin-top:10px;border-color:#fca5a5;background:#fff;color:#dc2626}
.btn-pos-refund svg{flex:none;transition:transform .2s ease}
.btn-pos-refund:hover{background:#fef2f2;border-color:#ef4444;color:#b91c1c}
.btn-pos-refund:hover svg{transform:rotate(-45deg)}
.btn-pos-refund:active{background:#fee2e2;transform:scale(0.99)}
.pos-payment-info-hint{margin:8px 0 0;font-size:12.5px;color:#64748b;line-height:1.45}

/* Tablet-First Refund & Confirmation Dialog */
.payment-dialog{border:0;border-radius:18px;padding:24px;width:min(500px,94vw);box-sizing:border-box;box-shadow:0 24px 60px rgba(0,0,0,0.22);color:#0f172a;background:#fff;overflow:visible}
.payment-dialog::backdrop{background:rgba(15,23,42,0.45);backdrop-filter:blur(3px)}
.payment-dialog h2{margin:0 0 12px;font-size:18px;font-weight:800;color:#0f172a;line-height:1.35}
.payment-dialog label{display:block;margin:12px 0 6px;font-size:13.5px;font-weight:700;color:#334155}
.payment-dialog input,.payment-dialog textarea{display:block;box-sizing:border-box;width:100%;min-height:48px;padding:12px 14px;font:inherit;font-size:14px;border:1.5px solid #cbd5e1;border-radius:10px;background:#fff;color:#0f172a;transition:border-color .15s,box-shadow .15s}
.payment-dialog textarea{min-height:76px;line-height:1.5;resize:vertical}
.payment-dialog input:focus,.payment-dialog textarea:focus{outline:none;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,0.15)}

/* Quick Reason Chips for Tablet Counter */
.payment-quick-chips{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 12px}
.payment-quick-chip{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:8px 14px;border:1.5px solid #e2e8f0;border-radius:999px;background:#f8fafc;color:#334155;font-size:13px;font-weight:650;cursor:pointer;user-select:none;transition:all .15s ease}
.payment-quick-chip:hover{background:#f1f5f9;border-color:#cbd5e1;color:#0f172a}
.payment-quick-chip:active,.payment-quick-chip.is-selected{background:#eff6ff;border-color:#3b82f6;color:#1d4ed8}

/* Dialog Order Info & Actions */
.pos-refund-summary-box{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin:0 0 14px}
.pos-refund-summary-key{font-size:13.5px;font-weight:700;color:#475569}
.pos-refund-summary-amount{font-size:16px;font-weight:850;font-variant-numeric:tabular-nums;color:#0f172a}
.payment-dialog-notice{margin:8px 0 0;font-size:12.5px;color:#64748b;line-height:1.45}
.payment-dialog [role="alert"]{margin:10px 0 0;font-size:13px;font-weight:650;color:#dc2626}
.payment-dialog [role="alert"]:empty{display:none}
.payment-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.payment-actions .payment-button{min-height:48px;padding:11px 22px;border-radius:10px}
.payment-button-ghost{background:#fff;border-color:#cbd5e1;color:#475569}
.payment-button-ghost:hover{background:#f8fafc;color:#0f172a}
.payment-button-danger{background:#ef4444;border-color:#ef4444;color:#fff}
.payment-button-danger:hover{background:#dc2626;border-color:#dc2626}
.payment-button-danger:active{background:#b91c1c}

/* Customer checkout: quiet surfaces, clear type and one brand accent. */
#sec-checkout .payment-method-section{min-width:0;margin:0;padding:0;border:0}
#checkout-payment-method:not(:empty){margin-bottom:20px}
#sec-checkout .payment-method-label{margin:0 0 12px;padding:0;color:var(--text,#1f2937);font-size:20px;font-weight:800}
#sec-checkout .payment-method-heading{display:flex;align-items:center;gap:8px}
#sec-checkout .payment-method-heading svg{flex:none;color:var(--primary,#059669)}
#sec-checkout .payment-method-choices{display:grid;gap:8px}
#sec-checkout .payment-method-option{display:flex;align-items:center;gap:12px;box-sizing:border-box;min-height:64px;padding:12px 14px;border:1.5px solid #e2e8f0;border-radius:12px;background:#fff;color:var(--text,#1f2937);cursor:pointer;transition:border-color .15s,background-color .15s}
#sec-checkout .payment-method-option:has(input:checked){border-color:var(--primary,#059669);background:#f0fdf4}
#sec-checkout .payment-method-option:has(input:focus-visible){outline:2px solid var(--primary,#059669);outline-offset:3px}
#sec-checkout .payment-method-option input{flex:none;width:20px;height:20px;margin:0;accent-color:var(--primary,#059669)}
#sec-checkout .payment-method-copy{display:flex;min-width:0;flex-direction:column;gap:3px}
#sec-checkout .payment-method-title{font-size:14px;font-weight:700;line-height:1.4;overflow-wrap:anywhere}
#sec-checkout .payment-method-description,.checkout-empty-cart-hint{font-size:12px;line-height:1.5;color:#64748b}
#sec-checkout .payment-method-logo{flex:none;box-sizing:content-box;width:83px;height:auto;margin-left:auto;padding:12px;background:#fff}
.checkout-empty-cart-hint[hidden]{display:none}
#sec-checkout .checkout-empty-cart-hint{margin:0}
#sec-checkout .btn-desktop-submit:disabled{background:#d1d5db;color:#374151;box-shadow:none;cursor:not-allowed;transform:none}
@media(max-width:1023px){
  #sec-checkout .desktop-sidebar-submit-wrap{display:flex;flex-direction:column;gap:10px;margin-top:18px;padding-top:16px;border-top:1px dashed #e2e8f0}
  #sec-checkout .desktop-sidebar-total-row,#sec-checkout .btn-desktop-submit{display:none}
  .footer .btn-send{max-width:65%;padding-right:18px;padding-left:18px;font-size:15px;line-height:1.35;white-space:normal;text-align:center}
}
#sec-checkout .payment-result-card{padding:18px;margin:0 0 22px;border:1px solid #e8edf0;border-radius:14px;background:#fafcfb;font-family:inherit;line-height:1.5}
#sec-checkout .payment-result-heading{display:flex;align-items:flex-start;gap:10px}
#sec-checkout .payment-result-mark{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:#f1f5f9;color:#64748b}
#sec-checkout [data-state="paid"] .payment-result-mark{background:#e7f5ee;color:#047857}
#sec-checkout .payment-result-titles{min-width:0}
#sec-checkout .payment-result-title{margin:0;font-size:15px;font-weight:750;letter-spacing:-.15px;color:#1f2937}
#sec-checkout .payment-result-description{margin:4px 0 0;font-size:12.5px;font-weight:400;line-height:1.65;color:#64748b}
#sec-checkout .payment-receipt-meta{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-top:18px;padding-top:16px;border-top:1px solid #e5ebe8}
#sec-checkout .payment-receipt-identity,#sec-checkout .payment-receipt-amount{display:flex;flex-direction:column;gap:4px;min-width:0}
#sec-checkout .payment-receipt-amount{margin-left:auto;text-align:right}
#sec-checkout .payment-receipt-label{font-size:11.5px;color:#64748b}
#sec-checkout .payment-receipt-key{font-size:13px;font-weight:600;overflow-wrap:anywhere;color:#334155;font-variant-numeric:tabular-nums}
#sec-checkout .payment-receipt-total{font-size:19px;font-weight:750;letter-spacing:-.35px;font-variant-numeric:tabular-nums;color:#1f2937}
#sec-checkout .payment-receipt-details{margin-top:12px;border-top:1px solid #e5ebe8}
#sec-checkout .payment-receipt-toggle{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:48px;padding:8px 0;list-style:none;cursor:pointer;font-size:12.5px;font-weight:500;color:#475569}
#sec-checkout .payment-receipt-toggle::-webkit-details-marker{display:none}
#sec-checkout .payment-receipt-toggle::after{content:'';width:6px;height:6px;margin-right:3px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);flex:none}
#sec-checkout .payment-receipt-details[open] .payment-receipt-toggle::after{transform:rotate(225deg)}
#sec-checkout .payment-receipt-toggle:focus-visible{outline:2px solid var(--primary,#059669);outline-offset:2px;border-radius:4px}
#sec-checkout .payment-receipt-body{padding:0 0 12px;font-family:inherit;font-size:13px;overflow-wrap:anywhere}
#sec-checkout .payment-receipt-choices{margin:0 0 12px;font-size:12px;color:#64748b}
#sec-checkout .payment-receipt-choice{display:flex;justify-content:space-between;gap:12px;padding:3px 0}
#sec-checkout .payment-receipt-choice dt{font-weight:400}
#sec-checkout .payment-receipt-choice dd{margin:0;text-align:right;color:#475569}
#sec-checkout .payment-receipt-items{padding:0;margin:0;list-style:none}
#sec-checkout .payment-receipt-item+.payment-receipt-item{margin-top:10px}
#sec-checkout .payment-receipt-line{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
#sec-checkout .payment-receipt-name{font-weight:500;color:#334155}
#sec-checkout .payment-receipt-price{flex:none;color:#475569;font-variant-numeric:tabular-nums}
#sec-checkout .payment-receipt-note{margin:4px 0 0;font-family:inherit;font-size:12px;line-height:1.65;color:#64748b;white-space:pre-wrap}
#sec-checkout .payment-result-button{width:100%;margin-top:4px;border-color:#dce5e0;border-radius:10px;background:#fff;font-size:13px;font-weight:600;color:#334155;transition:border-color .15s,background-color .15s}
#sec-checkout .payment-result-button:hover{background:#f3f7f5;border-color:#b8cec2}
#sec-checkout .payment-result-button:focus-visible{outline-color:var(--primary,#059669)}
@media(prefers-reduced-motion:reduce){#sec-checkout .payment-method-option,#sec-checkout .payment-result-button{transition:none}}
.payment-cancel-dialog{box-sizing:border-box;width:calc(100% - 32px);max-width:440px;max-height:85dvh;overflow:auto;padding:24px;border:1px solid #e2e8f0;border-radius:18px;color:#1f2937;background:#fff;font:inherit;line-height:1.65}
.payment-cancel-dialog::backdrop{background:rgb(15 23 42 / .35)}
.payment-cancel-dialog h2{font-size:19px;margin:0 0 12px}
.payment-dialog-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}
.payment-cancel-dialog .payment-button{margin:0;min-height:48px;font:inherit;cursor:pointer}
.payment-action-message,.payment-pending-meta{font-size:14px;color:#64748b}
.payment-button:focus-visible{outline:2px solid #059669;outline-offset:3px}
.payment-button:disabled{opacity:.6;cursor:wait}

.payment-panel > .payment-button{margin:6px 8px 0 0}
