.payment-panel { padding:24px 0; border-bottom:1px solid #e1e5e7; }
.targeted-coupons { min-width:0; }
.my-coupon-filters { display:flex; gap:4px; overflow:auto; padding:4px 0 12px; }
.my-coupon-filters button { flex:none; min-height:44px; padding:8px 12px; border:0; border-bottom:2px solid transparent; background:transparent; color:var(--muted); white-space:nowrap; cursor:pointer; }
.my-coupon-filters button[aria-pressed="true"] { border-bottom-color:var(--action); color:var(--action); font-weight:600; }
[data-my-coupons] .coupon-item { border-left-width:1px; }
.targeted-coupons .section-head { flex-wrap:wrap; }
.targeted-coupons [data-targeted-editor]:not(:empty) { padding:24px 0 32px; border-bottom:1px solid var(--line); }
.targeted-coupons [data-targeted-form="save"] { display:grid; gap:20px; }
.targeted-coupons h2 { font-size:18px; }
.targeted-coupons h3 { margin:0; font-size:16px; }
.targeted-campaign { padding:24px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
.targeted-coupons .form-actions { display:flex; flex-wrap:wrap; gap:12px; }
.targeted-store-picker { margin:0; padding:16px; border:1px solid var(--line); border-radius:8px; min-width:0; }
.targeted-store-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px 20px; max-height:280px; overflow:auto; }
.targeted-store-list label { display:flex; align-items:flex-start; gap:10px; min-height:44px; padding:8px 0; overflow-wrap:anywhere; }
.targeted-store-list input { flex:none; width:18px; height:18px; min-height:0; margin:2px 0 0; }
.targeted-store-list small { display:block; color:var(--muted); }
.targeted-preview-stores { padding:0; list-style:none; }
.targeted-preview-stores li { display:grid; gap:6px; padding:12px 0; border-bottom:1px solid var(--line); overflow-wrap:anywhere; }
@media(max-width:600px) { .targeted-store-list { grid-template-columns:minmax(0,1fr); } .targeted-coupons .form-grid { grid-template-columns:minmax(0,1fr); } .targeted-coupons .button { white-space:normal; } }
.demo-banner { display:flex;align-items:flex-start;gap:12px;padding:16px 0;border-bottom:2px solid #216d57;margin-bottom:24px;color:#216d57; }
.demo-banner>svg { width:24px;height:24px;flex:none; }
.demo-banner div { display:grid;gap:6px;min-width:0; }
.demo-banner span { color:#62666b;font-size:13px;line-height:1.6;overflow-wrap:anywhere; }
.processing-bill-row { display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,auto) auto;gap:16px;align-items:center;padding:18px 0;border-top:1px solid #e1e5e7; }
.processing-bill-title { display:grid;gap:6px;min-width:0;overflow-wrap:anywhere; }
.processing-bill-title small,.processing-bill-title span { color:#62666b;font-size:13px; }
.processing-bill-state { display:flex;gap:14px;align-items:center;flex-wrap:wrap; }
.processing-bill-state strong { font-size:14px;color:#216d57; }
.processing-bill-state b { font-size:18px;font-variant-numeric:tabular-nums; }
.processing-bill-row .form-actions { margin:0; }
.processing-bill-row .form-actions svg { width:18px;height:18px; }
.processing-amounts{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:14px;margin:18px 0;font-variant-numeric:tabular-nums}
.processing-amounts div{min-width:0}.processing-amounts dt{font-size:13px;color:#62666b}.processing-amounts dd{margin:5px 0 0;font-size:18px;font-weight:600;overflow-wrap:anywhere}
.processing-amend-preview{display:block;min-height:24px;font-weight:600;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.payment-dialog .processing-amounts{grid-template-columns:repeat(3,minmax(0,1fr));margin:12px 0}
.processing-history{margin:18px 0}.processing-history summary{cursor:pointer;min-height:44px;align-content:center}.processing-history ol{padding-left:20px}.processing-history li{padding:10px 0;border-top:1px solid #e1e5e7;overflow-wrap:anywhere}.processing-history li span,.processing-history time{display:block;color:#62666b;font-size:13px;margin-top:6px}.processing-history li p{margin:6px 0}
@media(max-width:700px) { .processing-bill-row { grid-template-columns:minmax(0,1fr);gap:12px; }.processing-bill-state b { margin-left:auto; }.processing-bill-row .form-actions { justify-content:flex-start; } }
body:has(.payment-page),body:has(.payment-panel) { min-width:0; }
.payment-panel h2 { display:flex; gap:10px; align-items:center; font-size:20px; margin:0 0 20px; }
.payment-panel h2 svg { color:#9c2330; width:22px; height:22px; }
.payment-status { display:flex; align-items:center; flex-wrap:wrap; gap:16px; }
.payment-status strong { color:#8d2130; }
.payment-status b { margin-left:auto; font-size:22px; font-variant-numeric:tabular-nums; }
.payment-balance { display:grid; gap:6px; margin-bottom:24px; }
.payment-balance span { color:#62666b; }
.payment-balance strong { font-size:32px; font-variant-numeric:tabular-nums; }
.payment-page .field { min-width:0; }
.payment-order-queue>div { display:flex; gap:12px; align-items:center; padding:14px 0; border-top:1px solid #e1e5e7; }
.payment-order-queue>div>div { flex:1; min-width:0; overflow-wrap:anywhere; }
.payment-order-queue small { display:block; font-size:12px; color:#62666b; margin-top:6px; }
.payment-order-queue b { font-variant-numeric:tabular-nums; }
.payment-page td { overflow-wrap:anywhere; }
.payment-page td small { display:block; color:#62666b; font-size:12px; }
.payment-page .form-actions,.payment-panel .form-actions { flex-wrap:wrap; }
.payment-dialog { width:min(480px,calc(100% - 32px)); max-height:calc(100dvh - 40px); overflow:auto; border:1px solid #dadfe1; border-radius:8px; padding:24px; color:#202526; background:white; box-sizing:border-box; }
.payment-dialog::backdrop { background:#10161770; }
.payment-dialog-heading { display:flex; gap:12px; align-items:center; justify-content:space-between; margin-bottom:20px; }
.payment-dialog h2 { font-size:20px; margin:0; }
.payment-dialog p { overflow-wrap:anywhere; }
.factory-mail-status { margin:0 0 20px; padding:12px 0; border-block:1px solid #dadfe1; overflow-wrap:anywhere; }
.factory-mail-status summary { min-height:44px; padding:10px 0; cursor:pointer; font-weight:600; }
.factory-mail-review { padding:16px 0; border-top:1px solid #dadfe1; }
.factory-mail-review small,.factory-mail-history small { display:block; margin-top:6px; color:#545d61; }
.factory-mail-review p { margin:8px 0; }
.factory-mail-review .button { min-height:44px; }
.factory-mail-history { overflow-wrap:anywhere; }
.payment-dialog form { display:grid; gap:16px; }
.payment-total { font-size:24px; font-weight:600; }
.coupon-issue { border-top:1px solid #e1e5e7; border-bottom:1px solid #e1e5e7; padding:16px 0; }
.coupon-issue summary { display:flex; align-items:center; gap:8px; color:#8d2130; cursor:pointer; font-weight:600; }
.coupon-issue form { margin-top:20px; }
.coupon-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr)); gap:16px; }
.coupon-item { padding:20px; border:1px solid #dee4e4; border-left:3px solid #9c2330; border-radius:6px; background:#fff; min-width:0; }
.coupon-item-title { display:flex; align-items:flex-start; flex-wrap:wrap; gap:8px; }
.coupon-item-title>svg { width:20px; height:20px; color:#9c2330; flex:none; }
.coupon-item-title strong { overflow-wrap:anywhere; flex:1; }
.coupon-state { font-size:12px; color:#697276; }
.coupon-state.available { color:#216d57; }
.coupon-state.reserved { color:#8d2130; }
.coupon-face { display:block; font-size:24px; margin:16px 0; font-variant-numeric:tabular-nums; }
.coupon-gift-name { font-size:14px; color:#216d57; overflow-wrap:anywhere; line-height:1.6; }
.coupon-issue [hidden] { display:none!important; }
.coupon-item[hidden] { display:none!important; }
.coupon-lookup { display:flex; flex-wrap:wrap; gap:10px; align-items:end; margin:18px 0; }
.coupon-lookup .field { flex:1 1 240px; margin:0; min-width:0; }
.coupon-code-display { text-align:center; }
.coupon-code-display canvas { display:block; width:min(280px,100%); height:auto; margin:16px auto; image-rendering:pixelated; }
.coupon-code-display input { font-size:13px; width:100%; min-width:0; }
.coupon-code-display strong { overflow-wrap:anywhere; }
.coupon-item>.button { margin:8px 8px 0 0; }
.coupon-item-details { display:grid; gap:6px; margin:12px 0; color:#62666b; font-size:13px; overflow-wrap:anywhere; }
.order-coupon-form { display:flex; align-items:flex-end; flex-wrap:wrap; gap:12px; margin:20px 0 12px; }
.order-coupon-form .field { flex:1 1 200px; min-width:0; }
.order-coupon-form .field span,.coupon-applied { display:flex; align-items:center; gap:8px; }
.order-coupon-form svg,.coupon-applied svg,.coupon-issue svg { width:20px; height:20px; }
.coupon-applied { color:#216d57; font-size:14px; }
.coupon-calculation { display:flex; flex-wrap:wrap; gap:16px; padding:16px 0 0; font-size:14px; }
.frame-order-mode { display:flex; align-items:center; flex-wrap:wrap; gap:16px; padding:16px 0; margin-bottom:12px; border-bottom:1px solid #dfe5e6; }
.frame-order-mode-copy { display:flex; align-items:flex-start; gap:12px; flex:1 1 220px; min-width:0; }
.frame-order-mode-copy>svg { width:24px; height:24px; color:#216d57; flex:none; }
.frame-order-mode-copy strong { font-size:16px; }
.frame-order-mode-copy p { font-size:14px; color:#62666b; margin:6px 0 0; }
.frame-order-mode.is-pending { border-left:3px solid #9c2330; padding-left:14px; background:#faf5f5; }
.frame-order-mode.is-pending strong,.frame-order-mode.is-pending svg { color:#8d2130; }
.frame-order-mode [hidden] { display:none!important; }
.frame-mode-dialog .form-actions { flex-wrap:wrap; }
.product-access,.authorization-duration { border:0; padding:0; margin:8px 0 16px; min-width:0; display:flex; flex-wrap:wrap; gap:8px 16px; }
.product-access legend,.authorization-duration legend { font-size:14px; font-weight:600; margin-bottom:8px; }
.product-access .check-row,.authorization-duration .check-row { min-height:44px; margin:0; }
.product-access .check-row input,.authorization-duration .check-row input { width:18px; height:18px; accent-color:#9c2330; }
.transfer-proof-preview { display:block; width:100%; max-height:420px; object-fit:contain; border:1px solid #dce2df; margin:16px 0; background:#fff; }
.binding-code-preview { display:block; width:240px; max-width:100%; height:auto; margin:16px auto; }
[data-transfer-upload][hidden] { display:none!important; }
[data-transfer-upload] { border-left:3px solid #9c2330; padding:12px 16px; margin:12px 0; background:#faf5f5; }
@media(max-width:600px) { .payment-panel { padding:20px 0; } .payment-panel .form-actions .button { flex:1 1 140px; } .payment-panel .button { white-space:normal; } .payment-dialog { padding:20px; } .payment-order-queue>div { flex-wrap:wrap; } .payment-order-queue>div>div { flex-basis:100%; } }
.coupon-activities .activity-list{display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))}
.activity-item{border:1px solid var(--line,#dce2df);border-radius:8px;padding:18px;min-width:0;background:#fff}
.activity-item-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.activity-item-heading strong{overflow-wrap:anywhere;line-height:1.5}
.activity-offer{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:12px;color:var(--brand,#941d2b)}
.activity-offer b{font-size:24px;font-variant-numeric:tabular-nums}
.activity-offer span{font-size:14px;overflow-wrap:anywhere}
.activity-rules{display:grid;gap:6px;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.activity-item .form-actions{margin-top:16px}
.activity-targets{border:1px solid var(--line,#dce2df);border-radius:6px;padding:12px;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:8px;margin:16px 0}
.activity-targets[hidden]{display:none}
.activity-targets legend{font-weight:600;padding:0 6px}
.activity-targets label{display:flex;gap:10px;align-items:center;min-height:44px;padding:6px;cursor:pointer;min-width:0}
.activity-targets input{width:18px;height:18px;flex:0 0 18px;accent-color:var(--brand,#941d2b)}
.activity-targets span{overflow-wrap:anywhere}
.activity-error{color:#a61a28;padding:10px 0;line-height:1.5}
.order-promotion{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-block:1px solid var(--line,#dce2df);margin:16px 0;font-size:14px;line-height:1.6;overflow-wrap:anywhere}
.order-promotion>svg{color:var(--brand,#941d2b);flex:none;width:24px;height:24px}
.coupon-activities form .button,.activity-item .button{min-height:44px}
@media(max-width:600px){.activity-item{padding:14px}.activity-item .form-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.activity-offer{align-items:baseline}.activity-targets{grid-template-columns:1fr}.coupon-activities .form-grid,.payment-dialog [data-coupon-activity-form] .form-grid{grid-template-columns:minmax(0,1fr)}}
