*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#f0f2f5;color:#1a1a2e;min-height:100vh}.checkout-container{max-width:480px;margin:40px auto;padding:0 16px}.checkout-card{background:#fff;border-radius:12px;box-shadow:0 2px 12px #00000014;padding:32px}.checkout-header{text-align:center;margin-bottom:28px}.checkout-header h1{font-size:20px;font-weight:600;color:#1a1a2e;margin-bottom:4px}.checkout-header .amount{font-size:32px;font-weight:700;color:#009ee3}.checkout-header .description{font-size:14px;color:#666;margin-top:4px}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:13px;font-weight:500;color:#555;margin-bottom:6px}.form-group input,.form-group select{width:100%;padding:12px 14px;border:1.5px solid #ddd;border-radius:8px;font-size:15px;transition:border-color .2s;outline:none;background:#fff}.form-group input:focus,.form-group select:focus{border-color:#009ee3}.form-row{display:flex;gap:12px}.form-row .form-group{flex:1}.btn-pay{width:100%;padding:14px;background:#009ee3;color:#fff;border:none;border-radius:8px;font-size:16px;font-weight:600;cursor:pointer;margin-top:8px;transition:background .2s}.btn-pay:hover{background:#0084c7}.btn-pay:disabled{background:#ccc;cursor:not-allowed}.error-msg{background:#fff0f0;border:1px solid #ffcdd2;color:#c62828;padding:12px 16px;border-radius:8px;font-size:14px;margin-bottom:16px}.success-msg{text-align:center;padding:40px 20px}.success-msg .check{font-size:48px;margin-bottom:16px}.success-msg h2{color:#2e7d32;margin-bottom:8px}.success-msg .detail{color:#666;font-size:14px}.success-msg .payment-id{font-family:monospace;background:#f5f5f5;padding:8px 12px;border-radius:6px;font-size:13px;margin-top:12px;display:inline-block}.spinner{display:inline-block;width:18px;height:18px;border:2.5px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;animation:spin .7s linear infinite;vertical-align:middle;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}.auth-container{max-width:400px;margin:120px auto;padding:0 16px;text-align:center}.auth-container h2{margin-bottom:20px;color:#1a1a2e}.powered-by{text-align:center;margin-top:20px;font-size:12px;color:#999}.section-title{font-size:14px;font-weight:600;color:#333;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #eee}
