/* CPG v7 — Checkout + Thank-you Styles */

/* CHECKOUT */
.cpg-box{padding:8px 0 4px}
.cpg-disc-badge{display:inline-block;background:#d4f4dd;border:1.5px solid #28a745;color:#145523;padding:8px 14px;border-radius:6px;font-size:14px;margin-bottom:12px;font-weight:500}
.cpg-lbl{display:block;font-weight:600;font-size:13px;margin:10px 0 4px;color:#333}
.cpg-note{font-size:12px;color:#666;margin:6px 0 0;line-height:1.5}
.cpg-sel{display:block;width:100%;max-width:360px;padding:8px 12px;border:1.5px solid #bbb;border-radius:7px;font-size:14px;background:#fff;margin-bottom:4px}
.cpg-addr-row{display:flex;align-items:center;gap:8px;background:#f5f7ff;border:1.5px solid #c5cfe8;border-radius:8px;padding:10px 12px;margin:6px 0;flex-wrap:wrap}
.cpg-pill{background:#2271b1;color:#fff;font-size:11px;font-weight:700;padding:3px 9px;border-radius:4px;white-space:nowrap;flex-shrink:0}
.cpg-addr{font-family:monospace;font-size:13px;word-break:break-all;color:#111;flex:1;line-height:1.5}
.cpg-copy-btn{background:#2271b1;color:#fff!important;border:none;border-radius:5px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;transition:opacity .15s}
.cpg-copy-btn:hover{opacity:.85}
.cpg-mp-btn{display:inline-flex;align-items:center;gap:8px;background:linear-gradient(135deg,#7B2FF7,#4C7CF4);color:#fff!important;text-decoration:none!important;padding:11px 20px;border-radius:8px;font-size:14px;font-weight:700;margin:10px 0 4px;box-shadow:0 3px 10px rgba(76,124,244,.3)}
.cpg-mp-btn:hover{opacity:.9;color:#fff!important}
.cpg-how{background:#f0f4ff;border:1px solid #c5d0f0;border-radius:8px;padding:12px 14px;margin-bottom:12px}
.cpg-how-ttl{font-weight:700;font-size:13px;margin-bottom:8px;color:#1a2a6e}
.cpg-step{display:flex;align-items:flex-start;gap:9px;margin-bottom:7px;font-size:13px;line-height:1.5;color:#333}
.cpg-n{flex-shrink:0;width:20px;height:20px;background:#4C7CF4;color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:11px}
.cpg-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px}
.cpg-tab{padding:7px 16px;border:2px solid var(--tc,#aaa);color:var(--tc,#444);background:#fff;border-radius:24px;font-size:13px;font-weight:600;cursor:pointer;transition:all .15s;white-space:nowrap}
.cpg-tab:hover,.cpg-tab-on{background:var(--tc,#aaa)!important;color:#fff!important}
.cpg-acct-card{border:2px solid;border-radius:10px;padding:14px 16px;margin-bottom:6px}
.cpg-acct-hdr{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.7px;margin-bottom:4px}
.cpg-acct-handle{font-size:24px;font-weight:800;color:#111;word-break:break-all;line-height:1.2;margin-bottom:4px}
.cpg-acct-name{font-size:13px;color:#555;margin-bottom:8px}

/* THANK-YOU PAGE */
#cpg-payment-info,#cpg-payment-section{margin:20px 0 10px}
.cpg-ty-box{background:#fff;border-radius:12px;box-shadow:0 3px 16px rgba(0,0,0,.09);padding:0;margin:0 0 20px;overflow:hidden}
.cpg-ty-head{font-size:17px;font-weight:700;padding:14px 20px;background:#f8f8f8;border-bottom:1px solid #eee;display:flex;align-items:center;gap:8px}
.cpg-ty-amount{display:flex;align-items:center;justify-content:space-between;background:#fffbe6;border:2px solid #ffc107;border-radius:9px;padding:13px 16px;margin:16px 20px 0;flex-wrap:wrap;gap:4px}
.cpg-ty-albl{font-size:11px;font-weight:700;color:#7a5200;text-transform:uppercase;letter-spacing:.5px}
.cpg-ty-aval{font-size:22px;font-weight:800;color:#3d2800}
.cpg-ty-sub{font-size:13px;font-weight:600;color:#444;padding:12px 20px 4px}
.cpg-ty-addr{display:flex;align-items:center;gap:8px;background:#f4f7ff;border:1.5px solid #c0cdf5;border-radius:8px;padding:11px 14px;margin:0 20px 6px;flex-wrap:wrap}
.cpg-ty-addr code{font-family:monospace;font-size:13px;word-break:break-all;color:#111;flex:1;background:none;border:none;padding:0;line-height:1.6}
.cpg-ty-handle{border:3px solid;border-radius:10px;padding:12px 16px;margin:0 20px 6px;background:#fafafa}
.cpg-ty-hname{font-size:12px;color:#777;margin-bottom:3px}
.cpg-ty-hval{font-size:28px;font-weight:800;color:#111;word-break:break-all;line-height:1.2}
.cpg-ty-box .cpg-copy-btn{display:inline-flex;align-items:center;gap:6px;margin:4px 20px 8px;padding:9px 18px;font-size:13px;border-radius:7px}
.cpg-ty-warn{background:#fff3cd;border-left:4px solid #ffc107;padding:10px 14px;margin:8px 20px 16px;border-radius:0 6px 6px 0;font-size:12px;color:#5c4000;line-height:1.5}

/* Contact box */
.cpg-ty-contact{background:linear-gradient(135deg,#f8f9ff,#fff);border:2px solid #dde3ff;border-radius:12px;padding:20px 22px;margin:0 0 20px;box-shadow:0 2px 10px rgba(80,80,200,.06)}
.cpg-ty-ctitle{font-size:17px;font-weight:800;color:#1a1a2e;margin-bottom:8px}
.cpg-ty-cmsg{font-size:14px;color:#555;line-height:1.6;margin-bottom:14px}
.cpg-ty-clab{font-size:11px;font-weight:700;color:#333;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}
.cpg-ty-cbtns{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:14px}
.cpg-ch-btn{display:inline-flex;align-items:center;gap:9px;padding:11px 18px;color:#fff!important;text-decoration:none!important;border-radius:9px;font-size:14px;font-weight:700;box-shadow:0 3px 10px rgba(0,0,0,.14);transition:transform .15s,opacity .15s;white-space:nowrap}
.cpg-ch-btn:hover{opacity:.9;transform:translateY(-2px);color:#fff!important}
.cpg-ch-ico{width:20px;height:20px;display:flex;align-items:center;flex-shrink:0}
.cpg-ch-ico svg{width:20px;height:20px}
.cpg-ty-cfooter{font-size:13px;color:#888;margin:4px 0 0}

/* ══════════════════════════════════════════════════
   CARTFLOWS CHECKOUT FIELD LABEL FIX
   Fixes missing/invisible labels on CartFlows pages
   ══════════════════════════════════════════════════ */

/* Show all CartFlows field labels */
.wcf-field label,
.wcf-form-control label,
.cartflows-checkout label,
.wcf-checkout-form label,
.wcf-fields-wrap label,
.wcf-billing-fields label,
.wcf-shipping-fields label,
.wcf-contact-fields label,
form.checkout label,
.woocommerce-checkout label,
.cartflows_checkout_form label {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    color: #333 !important;
    margin-bottom: 4px !important;
    position: static !important;
    transform: none !important;
    top: auto !important;
    left: auto !important;
    pointer-events: auto !important;
    line-height: 1.4 !important;
}

/* Fix floating label style that hides labels inside inputs */
.wcf-field .wcf-floating-label label,
.wcf-field.wcf-floating-label label,
.cartflows-field .floating-label label,
.wcf-form-field .floating-label label {
    position: static !important;
    transform: none !important;
    font-size: 13px !important;
    color: #333 !important;
    background: transparent !important;
    padding: 0 !important;
    top: auto !important;
    left: auto !important;
}

/* Ensure input fields have proper padding when labels are shown */
.wcf-field input[type="text"],
.wcf-field input[type="email"],
.wcf-field input[type="tel"],
.wcf-field input[type="number"],
.wcf-field select,
.wcf-field textarea,
.wcf-fields-wrap input,
.wcf-fields-wrap select {
    padding: 10px 14px !important;
    font-size: 14px !important;
    border-radius: 6px !important;
    width: 100% !important;
    box-sizing: border-box !important;
}

/* Fix placeholder text color so fields don't look empty */
.wcf-field input::placeholder,
.wcf-fields-wrap input::placeholder {
    color: #aaa !important;
    opacity: 1 !important;
}

/* Required asterisk */
.wcf-field label .required,
.woocommerce-checkout label .required,
abbr.required {
    color: #e2401c !important;
    text-decoration: none !important;
    font-weight: 700 !important;
}

/* Field wrapper spacing */
.wcf-field,
.wcf-fields-wrap .form-row,
.woocommerce-checkout .form-row {
    margin-bottom: 14px !important;
}

/* Error messages */
.wcf-field .woocommerce-invalid-required-field,
.wcf-field .woocommerce-error {
    border-color: #e2401c !important;
}

/* Section headings like "Contact", "Billing Details" */
.wcf-checkout-form h3,
.wcf-checkout-form h2,
.cartflows-checkout h3,
.cartflows-checkout h2,
.wcf-section-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    margin-bottom: 14px !important;
    color: #1a1a1a !important;
}
