.pay-guide-thumbnail { display: block; width: 100%; padding: 0; border: 1px solid #d6d3d1; border-radius: 10px; overflow: hidden; background: #fafaf9; cursor: zoom-in; }
.pay-guide-thumbnail img { display: block; width: 100%; aspect-ratio: 1919 / 998; object-fit: contain; }
.pay-guide-thumbnail span { display: block; padding: 6px; font-size: 11px; color: #57534e; }
.pay-guide-thumbnail:focus-visible, .pay-guide-dialog button:focus-visible { outline: 3px solid #0071e3; outline-offset: 3px; }
.pay-guide-dialog { width: min(1200px, 94vw); max-width: 94vw; max-height: 94dvh; padding: 20px; border: 0; border-radius: 16px; color: #1c1917; background: #fff; }
.pay-guide-dialog[open] { display: flex; flex-direction: column; gap: 14px; }
.pay-guide-dialog::backdrop { background: rgb(0 0 0 / 72%); }
.pay-guide-dialog header, .pay-guide-dialog footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px; }
.pay-guide-dialog h2 { font-size: 18px; font-weight: 700; margin: 0; }
.pay-guide-dialog p { margin: 0; font-size: 13px; color: #57534e; }
.pay-guide-dialog button { min-height: 44px; padding: 8px 14px; border: 1px solid #d6d3d1; border-radius: 8px; background: #fff; font-size: 14px; cursor: pointer; }
.pay-guide-dialog button:hover { background: #f5f5f4; }
.pay-guide-dialog button[aria-pressed="true"] { color: #fff; background: #1c1917; }
.pay-guide-carousel { position: relative; flex: 1; min-height: 0; }
.pay-guide-stage { min-height: 120px; max-height: 65dvh; overflow: auto; background: #f5f5f4; border-radius: 10px; border: 1px solid #e7e5e4; touch-action: pan-y; cursor: pointer; }
.pay-guide-stage.is-original { touch-action: none; cursor: grab; }
.pay-guide-stage.is-dragging { cursor: grabbing; }
.pay-guide-dialog .pay-guide-arrow { position: absolute; top: 50%; transform: translateY(-50%); z-index: 1; width: 44px; height: 44px; padding: 0; border-radius: 50%; color: #D90000; background: rgb(255 255 255 / 95%); box-shadow: 0 2px 8px rgb(0 0 0 / 15%); display: grid; place-items: center; }
.pay-guide-arrow-prev { left: 8px; }
.pay-guide-arrow-next { right: 8px; }
.pay-guide-arrow svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.pay-guide-frame { position: relative; width: min(100%, calc(65dvh * 1919 / 998)); margin: auto; }
.pay-guide-frame img { display: block; width: 100%; height: auto; user-select: none; -webkit-user-drag: none; }
.pay-guide-frame svg { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.pay-guide-frame.is-original { width: 1919px; }
.pay-guide-toolbar { display: flex; flex-wrap: wrap; gap: 8px; }
@media (max-width: 600px) { .pay-guide-dialog { padding: 12px; gap: 10px; } .pay-guide-dialog h2 { font-size: 16px; } .pay-guide-dialog footer { justify-content: center; } }

/* 中国红：统一操作箭头、框线对应的标题与说明。 */
#alipayGuide strong, .pay-guide-dialog h2, .pay-guide-dialog #payGuideNote { color: #D90000; }

/* 套餐 → 居中的两档加油包 → 支付宝指引。 */
#minuteTopupGrid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; max-width: 520px; margin-inline: auto; }
.pay-guide-heading { display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; margin-bottom: 10px; }
.pay-guide-heading h4 { margin: 0; font-size: 15px; font-weight: 700; }
.alipay-brand { display: inline-flex; background: #1677ff; padding: 5px 8px; border-radius: 6px; }
.alipay-brand img { display: block; width: 64px; height: auto; object-fit: contain; }
@media (max-width: 480px) { #minuteTopupGrid { grid-template-columns: 1fr; max-width: 300px; } }
