.checkout-overlay{position:fixed;inset:0;background:#2a22208c;z-index:1000;display:none;align-items:center;justify-content:center;padding:1.5rem}.checkout-overlay.open{display:flex}.checkout-modal{background:#fff;border-radius:24px;width:min(560px,100%);max-height:90vh;overflow-y:auto;padding:2.5rem;animation:fadeUp .3s ease both}.checkout-modal h2{font-family:Nunito,sans-serif;font-weight:900;font-size:1.5rem;color:var(--dark);margin-bottom:.3rem}.checkout-modal .co-sub{font-size:.85rem;color:var(--mid);margin-bottom:2rem}.co-section-title{font-family:Nunito,sans-serif;font-weight:800;font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin:1.6rem 0 .8rem}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.8rem;font-weight:700;color:var(--dark);margin-bottom:.35rem}.form-group label .req{color:var(--blue);margin-left:2px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.7rem 1rem;border-radius:10px;border:1.5px solid #e8e0de;font-family:Noto Sans TC,sans-serif;font-size:.88rem;color:var(--dark);background:var(--warm-gray);transition:border-color .2s,box-shadow .2s;outline:none}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #6d9bcc26;background:#fff}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.co-order-summary{background:var(--warm-gray);border-radius:14px;padding:1rem 1.2rem;margin-bottom:1.5rem}.co-order-item{display:flex;justify-content:space-between;font-size:.85rem;color:var(--mid);padding:.25rem 0}.co-order-item.total{border-top:1px solid #ddd;margin-top:.5rem;padding-top:.7rem;font-family:Nunito,sans-serif;font-weight:900;color:var(--dark);font-size:1rem}.co-order-item.total span:last-child{color:var(--blue)}.co-btns{display:flex;gap:.8rem;margin-top:1.5rem}.btn-co-back{flex:0 0 auto;padding:.85rem 1.5rem;border-radius:99px;background:none;border:1.5px solid #ddd;cursor:pointer;font-family:Nunito,sans-serif;font-weight:700;color:var(--mid);transition:border-color .2s}.btn-co-back:hover{border-color:var(--dark);color:var(--dark)}.btn-co-submit{flex:1;padding:.85rem;border-radius:99px;background:var(--dark);color:#fff;border:none;cursor:pointer;font-family:Nunito,sans-serif;font-weight:800;font-size:.95rem;transition:background .25s}.btn-co-submit:hover{background:var(--blue)}.success-overlay{position:fixed;inset:0;background:#2a22208c;z-index:1100;display:none;align-items:center;justify-content:center;padding:1.5rem}.success-overlay.open{display:flex}.success-modal{background:#fff;border-radius:24px;padding:3rem 2.5rem;text-align:center;max-width:420px;width:100%;animation:fadeUp .3s ease both}.success-icon{font-size:3.5rem;margin-bottom:1rem}.success-modal h2{font-family:Nunito,sans-serif;font-weight:900;font-size:1.4rem;color:var(--dark);margin-bottom:.5rem}.success-modal p{font-size:.88rem;color:var(--mid);line-height:1.7;margin-bottom:1.8rem}.btn-success-close{padding:.85rem 2.5rem;border-radius:99px;background:var(--pink);color:var(--dark);border:none;cursor:pointer;font-family:Nunito,sans-serif;font-weight:800;font-size:.95rem;transition:background .25s}.btn-success-close:hover{background:var(--blue);color:#fff}.order-confirm-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem 1rem;background:#faf7f5}.order-confirm-container{background:#fff;border-radius:24px;padding:2.5rem 2rem;width:min(560px,100%);box-shadow:0 4px 24px #2a222014}.order-confirm-header{text-align:center;margin-bottom:2rem}.order-confirm-header h1{font-family:Nunito,sans-serif;font-weight:800;font-size:1.6rem;color:var(--dark);margin:0}.order-status-badge{display:inline-block;border-radius:99px;padding:.3rem 1rem;font-size:.85rem;font-weight:700}.order-status-badge.pending{background:#fff3e0;color:#e65100}.order-status-badge.paid{background:#e8f5e9;color:#2e7d32}.order-status-badge.shipped{background:#e3f2fd;color:#1565c0}.order-status-badge.completed{background:#f5f5f5;color:#616161}.order-items-table{width:100%;border-collapse:collapse;font-size:.9rem;margin-top:.5rem}.order-items-table th{font-family:Nunito,sans-serif;font-weight:700;font-size:.78rem;letter-spacing:.08em;text-transform:uppercase;color:var(--mid);padding:.5rem .3rem;border-bottom:1.5px solid #e8e0de}.order-items-table td{padding:.6rem .3rem;border-bottom:1px solid #f0ebe9;color:var(--dark)}.order-summary-line{display:flex;justify-content:space-between;padding:.3rem 0;font-size:.9rem;color:var(--mid)}.order-summary-line.total{border-top:1.5px solid #e8e0de;margin-top:.5rem;padding-top:.7rem;font-family:Nunito,sans-serif;font-weight:900;color:var(--dark);font-size:1.1rem}.order-summary-line.total span:last-child{color:var(--blue)}.order-delivery-info{background:#faf7f5;border-radius:14px;padding:1rem 1.2rem;margin-top:1.2rem}.order-delivery-info dl{margin:0}.order-delivery-info dt{font-size:.78rem;font-weight:700;color:var(--mid);text-transform:uppercase;letter-spacing:.08em;margin-top:.6rem}.order-delivery-info dt:first-child{margin-top:0}.order-delivery-info dd{margin:.2rem 0 0;font-size:.9rem;color:var(--dark)}.order-actions{display:flex;flex-direction:column;align-items:center;margin-top:1.5rem;gap:.8rem}.btn-pay-now{padding:.85rem 2.5rem;border-radius:99px;background:var(--pink);color:var(--dark);border:none;cursor:pointer;font-family:Nunito,sans-serif;font-weight:800;font-size:.95rem;transition:all .25s ease}.btn-pay-now:hover{background:var(--pink-deep);transform:translateY(-2px)}.btn-pay-now:disabled{opacity:.6;cursor:not-allowed;transform:none}.order-confirm-loading{text-align:center;padding:3rem;color:var(--mid);font-size:.95rem}.order-confirm-error{text-align:center;padding:2rem}.order-confirm-error h2{font-family:Nunito,sans-serif;font-weight:800;color:var(--dark);margin-bottom:.5rem}.order-confirm-error p{color:var(--mid);margin-bottom:1.5rem}.order-confirm-error a{color:var(--pink);font-weight:700;text-decoration:none}@media(max-width:480px){.form-row{grid-template-columns:1fr}.checkout-modal{padding:1.8rem 1.4rem}}
