dialog.checkout-dialog{position:fixed;inset:0;margin:auto;width:min(92vw,27rem);height:fit-content;max-height:calc(100dvh - 2rem);overflow:auto;background:#fff;border:.8px solid #c9c9c9;border-radius:18px;corner-shape:superellipse(2.2);box-shadow:0 24px 60px -16px #14201847;padding:0}dialog.checkout-dialog::backdrop{background:#183d2480}.co-form{display:flex;flex-direction:column;gap:16px;padding:24px;font-family:var(--font-body)}.co-title{margin:0;font-family:var(--font-body);font-weight:700;font-size:20px;line-height:1.25;color:var(--color-ink)}.co-sub{margin:-8px 0 0;font-size:14px;color:#5b6b61}.co-price{margin:-6px 0 0;font-size:15px;font-weight:800;color:var(--color-brand);font-variant-numeric:tabular-nums}.co-price:empty{display:none}.co-price s{margin-right:6px;font-weight:500;font-size:13px;color:#9aa69e;text-decoration-color:#c61e00}.co-price-tag{margin-left:6px;border-radius:999px;background:#fff1cc;color:#6b4e00;font-size:11px;font-weight:800;padding:.15rem .5rem;vertical-align:1px}.co-field{display:flex;flex-direction:column;gap:6px}.co-label{font-weight:500;font-size:14px;color:var(--color-ink)}.co-input{width:100%;font-family:var(--font-body);font-size:16px;color:var(--color-ink);background:#fff;border:1px solid #c9c9c9;border-radius:14px;corner-shape:superellipse(2.2);padding:12px 14px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.co-input::placeholder{color:#9aa69e}.co-input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px #2b643e24}.co-bumps{display:flex;flex-direction:column;gap:8px}.co-bumps:empty{display:none}.co-coupon{display:flex;flex-direction:column;gap:8px;border:1px solid #dfe7df;border-radius:14px;background:#f7f9f5;padding:12px}.co-coupon-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.co-coupon-apply{border:0;border-radius:12px;background:var(--color-brand);color:#fff;cursor:pointer;font-family:var(--font-body);font-size:14px;font-weight:700;padding:0 14px}.co-coupon-apply:hover{background:var(--color-brand-dark)}.co-coupon-msg{min-height:18px;margin:0;font-size:13px;line-height:1.4;color:#5b6b61}.co-coupon-msg.is-ok{color:var(--color-brand);font-weight:700}.co-coupon-msg.is-bad{color:var(--color-cta-hover);font-weight:700}.co-bump-intro{margin:0 0 2px;padding:10px 12px;background:#eef6ee;border-radius:10px;font-size:12.5px;line-height:1.5;color:#35502f}.co-bump-intro strong{color:#1b4d2e;font-weight:800}.co-error{margin:0;font-weight:500;font-size:14px;color:var(--color-cta-hover)}.co-error.hidden{display:none}.co-actions{display:flex;gap:12px;margin-top:4px}.co-cancel,.co-submit{font-family:var(--font-body);border-radius:14px;corner-shape:superellipse(2.2);padding:12px 16px;cursor:pointer;transition:background .15s ease,box-shadow .15s ease}.co-cancel{flex:1;font-weight:600;font-size:16px;color:var(--color-ink);background:#fff;border:1px solid #c9c9c9}.co-cancel:hover{background:#f5f5f5}.co-submit{flex:1.6;font-weight:700;font-size:16px;color:#fff;background:var(--color-cta);border:none;font-variant-numeric:tabular-nums}.co-submit:hover{box-shadow:0 8px 20px #fe670352}.co-submit:disabled{opacity:.6;cursor:default;box-shadow:none}@media(max-width:420px){.co-coupon-row{grid-template-columns:1fr}.co-coupon-apply{min-height:44px}}.co-pay{display:flex;flex-direction:column;gap:14px;padding:24px;font-family:var(--font-body);text-align:center}.co-pay-qr{display:block;width:240px;max-width:72%;height:auto;margin:2px auto 0;border:.8px solid #c9c9c9;border-radius:14px;corner-shape:superellipse(2.2)}.co-pay-amount{margin:0;font-size:28px;font-weight:800;line-height:1;color:var(--color-brand)}.co-pay-info{display:flex;flex-direction:column;gap:9px;text-align:left;background:#f7f9f5;border-radius:14px;corner-shape:superellipse(2.2);padding:14px 16px}.co-pay-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;font-size:14px;color:var(--color-ink)}.co-pay-row>span{color:#5b6b61;flex:none}.co-pay-row>b{font-weight:700;text-align:right;word-break:break-word}.co-copy{cursor:pointer;border-bottom:1px dashed #9aa69e;transition:color .15s ease}.co-copy:hover{color:var(--color-brand);border-bottom-color:var(--color-brand)}.co-pay-note{margin:0;text-align:left;padding:12px 14px;background:#fff1cc;border-radius:12px;corner-shape:superellipse(2.2);font-size:13.5px;line-height:1.55;color:#6b4e00}.co-pay-note b{font-weight:800}.co-pay-sub{margin:0;font-size:12.5px;line-height:1.5;color:#5b6b61}.co-pay-close{margin-top:2px;flex:none}.co-pay-waiting{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;font-size:13px;font-weight:600;color:var(--color-brand)}.co-pay-dot{width:8px;height:8px;border-radius:999px;background:var(--color-brand);animation:co-pay-pulse 1.1s ease-in-out infinite}@keyframes co-pay-pulse{0%,to{opacity:.25}50%{opacity:1}}.co-bump-card{display:grid;grid-template-columns:1.25rem minmax(0,1fr);gap:.75rem;cursor:pointer;border:2px solid rgba(224,123,57,.45);border-radius:.75rem;background:#fff;padding:.875rem;box-shadow:0 2px 8px #e07b3914;transition:border-color .15s,box-shadow .15s}.co-bump-card:has(input:checked){border-color:#e07b39;box-shadow:0 4px 16px #e07b392e}.co-bump-card input{margin-top:.15rem;width:1.2rem;height:1.2rem;accent-color:#2d7a3e}.co-bump-kicker{display:inline-flex;width:fit-content;border-radius:999px;background:#e07b391f;color:#b85f24;font-size:.68rem;font-weight:800;padding:.2rem .5rem;margin-bottom:.35rem}.co-bump-title{display:block;color:#1b4d2e;font-size:.98rem;font-weight:800;line-height:1.25}.co-bump-inner{display:flex;flex-direction:column}.co-bump-cover{display:block;margin:.55rem 0;width:100%;aspect-ratio:16 / 9;overflow:hidden;border-radius:.65rem;background:#d6ead9;flex-shrink:0}.co-bump-cover img{width:100%;height:100%;display:block;object-fit:cover}.co-bump-body{display:flex;flex-direction:column;min-width:0}.co-bump-desc{display:block;color:#425048;font-size:.78rem;line-height:1.45}.co-bump-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:.35rem .6rem;border-top:1px dashed #ddb987;margin-top:.65rem;padding-top:.55rem;font-size:.78rem}@media(min-width:540px){.co-bump-inner{flex-direction:row;align-items:flex-start;gap:.65rem}.co-bump-cover{flex:0 0 108px;width:108px;aspect-ratio:1;margin:0;border-radius:.5rem}.co-bump-body{flex:1}}.co-bump-old{color:#858b86;text-decoration:line-through}.co-bump-now{color:#b85f24;font-size:1.12rem;font-weight:900}.co-bump-save{border-radius:999px;background:#1b4d2e;color:#fff;font-size:.7rem;font-weight:800;padding:.2rem .48rem}
