.ccf-form{--ccf-primary:#0f766e;--ccf-primary-dark:#115e59;--ccf-accent:#2563eb;--ccf-ink:#0f172a;--ccf-muted:#64748b;--ccf-border:#dbe5ec;--ccf-soft:#f4faf9;--ccf-surface:#fff;max-width:1120px;margin:34px auto;font-family:inherit;color:var(--ccf-ink);font-size:15px;line-height:1.5}
.ccf-form *{box-sizing:border-box}.ccf-form-card{background:#fff;border:1px solid var(--ccf-border);border-radius:26px;padding:32px;box-shadow:0 22px 60px rgba(15,23,42,.08);overflow:hidden;position:relative}.ccf-form-card:before{content:"";position:absolute;inset:0 0 auto;height:6px;background:var(--ccf-primary)}
.ccf-wizard-head{text-align:center;margin-bottom:24px}.ccf-wizard-head .ccf-muted{max-width:680px;margin-left:auto;margin-right:auto;text-align:center}.ccf-eyebrow{margin:0 0 8px;color:var(--ccf-primary);font-weight:700;text-transform:uppercase;letter-spacing:.13em;font-size:11px}.ccf-form h2{margin:0 0 10px;font-size:34px;line-height:1.1;letter-spacing:-.035em;font-weight:600}.ccf-form h3{margin:0 0 10px;font-size:21px;letter-spacing:-.02em;font-weight:600}.ccf-muted{color:var(--ccf-muted);margin:0 0 18px;line-height:1.6}.ccf-wizard-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:30px}.ccf-stepper{position:relative;padding:8px;background:#f8fafc;border:1px solid #e6eef5;border-radius:22px;height:max-content}.ccf-stepper:before{content:"";position:absolute;left:32px;top:34px;bottom:34px;width:3px;background:#d9e5ec;border-radius:99px}.ccf-step-indicator{position:relative;display:flex;gap:14px;align-items:center;min-height:70px;color:#64748b;padding:0 10px;border-radius:16px;transition:.2s ease}.ccf-step-indicator span{position:relative;z-index:2;width:34px;height:34px;border-radius:999px;background:#fff;border:2px solid #cbd5e1;display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--ccf-primary);box-shadow:0 3px 10px rgba(15,23,42,.06)}.ccf-step-indicator strong{font-size:14px}.ccf-step-indicator.is-active{background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.06)}.ccf-step-indicator.is-active span,.ccf-step-indicator.is-complete span{background:var(--ccf-primary);border-color:var(--ccf-primary);color:#fff}.ccf-step-indicator.is-complete span{font-size:0}.ccf-step-indicator.is-complete span:after{content:"✓";font-size:16px}.ccf-step-indicator.is-active strong,.ccf-step-indicator.is-complete strong{color:var(--ccf-ink)}.ccf-wizard-body{background:#fff;border:1px solid #e8f0f6;border-radius:24px;padding:28px;box-shadow:inset 0 1px 0 rgba(255,255,255,.9)}.ccf-step{display:none;animation:ccfFade .22s ease}.ccf-step.is-active{display:block}@keyframes ccfFade{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
.ccf-step label{display:block;font-weight:600;margin:16px 0 7px;color:#1e293b}.ccf-form input[type=text],.ccf-form input[type=email],.ccf-form input[type=tel],.ccf-form textarea,.ccf-form select{width:100%;border:1px solid #cfdbe6;border-radius:14px;padding:14px 15px;font-size:15px;background:#fbfdff;color:#0f172a;transition:.16s ease}.ccf-form input:focus,.ccf-form textarea:focus,.ccf-form select:focus{outline:4px solid rgba(15,118,110,.13);border-color:var(--ccf-primary);background:#fff}.ccf-lookup-row{display:flex;gap:10px;align-items:stretch}.ccf-lookup-row input{flex:1}.ccf-button{display:inline-flex;align-items:center;justify-content:center;background:var(--ccf-primary);color:#fff!important;border:0;border-radius:14px;padding:14px 24px;font-weight:700;text-decoration:none;cursor:pointer;margin-top:16px;min-height:50px;box-shadow:0 12px 24px rgba(15,118,110,.22);transition:.16s ease}.ccf-button:hover{background:var(--ccf-primary-dark);transform:translateY(-1px)}.ccf-button:disabled{opacity:.65;cursor:wait;transform:none}.ccf-button-secondary{background:#1f2937;white-space:nowrap;box-shadow:0 12px 24px rgba(15,23,42,.16)}.ccf-button-light{background:#fff;color:#0f172a!important;border:1px solid #d5e0ea;box-shadow:none}.ccf-button-light:hover{background:#f8fafc}.ccf-actions{display:flex;gap:14px;justify-content:space-between;align-items:center;margin-top:24px}.ccf-actions .ccf-button{margin-top:0;flex:1}.ccf-actions-end{justify-content:flex-end}.ccf-actions-end .ccf-button{flex:0 0 auto;min-width:220px}.ccf-notice{background:#fff8e5;border:1px solid #f0d58a;border-radius:16px;padding:14px;margin:14px 0;color:#614700}.ccf-result{background:#f3f8fb;border:1px solid #d6e4ed;border-radius:18px;padding:20px;margin-top:18px}.ccf-lookup-message{margin-top:10px;min-height:22px;font-size:14px;color:#64748b}.ccf-lookup-message.is-success{color:#15803d}.ccf-lookup-message.is-error{color:#b91c1c}.ccf-lookup-message.is-loading{color:var(--ccf-primary)}.ccf-company-preview{margin-top:16px;padding:20px;border-radius:18px;background:#f8fafc;border:1px solid #d7e6ec}.ccf-company-preview-title{font-weight:700;font-size:17px;color:#0f172a;margin-bottom:8px;text-transform:uppercase}.ccf-company-preview-cui,.ccf-company-preview-reg,.ccf-company-preview-address,.ccf-company-preview-meta{color:#334155;font-size:15px;line-height:1.55}.ccf-company-preview-meta{margin-top:8px;color:#64748b}.ccf-link-button{margin:14px 0 0;padding:0;border:0;background:transparent;color:var(--ccf-primary);text-decoration:underline;cursor:pointer;font:inherit;font-weight:600}.ccf-manual-company-fields{margin-top:14px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px;padding:18px}.ccf-package-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:18px 0}.ccf-package-row{display:flex!important;align-items:flex-start;gap:13px;border:1px solid #e2e8f0;border-radius:20px;padding:18px;margin:0!important;cursor:pointer;background:#fff;min-height:110px;transition:.18s ease}.ccf-package-row:hover{background:#f8fafc;border-color:#b9d9d3;transform:translateY(-1px);box-shadow:0 14px 26px rgba(15,23,42,.07)}.ccf-package-row input{position:absolute;opacity:0;pointer-events:none}.ccf-radio-dot{width:21px;height:21px;border-radius:999px;border:2px solid #cbd5e1;margin-top:2px;box-sizing:border-box;flex:0 0 auto}.ccf-package-row input:checked+.ccf-radio-dot{border:6px solid var(--ccf-primary)}.ccf-package-row:has(input:checked){border-color:var(--ccf-primary);background:#f0fdfa;box-shadow:0 14px 28px rgba(15,118,110,.12)}.ccf-package-main{display:grid;gap:7px}.ccf-package-main strong{font-size:16px;line-height:1.25}.ccf-package-main em{font-style:normal;color:#0f766e;font-weight:700}.ccf-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.ccf-subsection-title{font-weight:700;font-size:17px;margin-top:24px;padding-top:18px;border-top:1px solid #edf1f5}.ccf-checkbox{display:flex!important;gap:10px;align-items:flex-start;font-weight:600!important}.ccf-checkbox input{margin-top:4px}.ccf-summary-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:18px;display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:16px 0}.ccf-summary-box div{display:grid;gap:4px}.ccf-summary-box span,.ccf-soft-label{color:#64748b;font-size:12px;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.ccf-summary-box strong{font-size:15px}.ccf-tracking{max-width:900px}.ccf-tracking-card{padding:34px}.ccf-tracking-header{display:flex;justify-content:space-between;gap:18px;align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:22px;padding:20px;margin-bottom:18px}.ccf-tracking-header strong{display:block;font-size:20px;margin-top:4px}.ccf-status-badge{display:inline-flex;border-radius:999px;padding:8px 13px;background:#ecfeff;border:1px solid #bae6fd;font-weight:700}.ccf-status-completed{background:#ecfdf5;border-color:#bbf7d0;color:#166534}.ccf-status-payment_failed,.ccf-status-cancelled{background:#fef2f2;border-color:#fecaca;color:#991b1b}.ccf-status-processing,.ccf-status-paid{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.ccf-status-payment_pending{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.ccf-tracking-timeline{display:flex;gap:0;margin:20px 0 22px;overflow:hidden;border-radius:16px;border:1px solid #dbe5ec;background:#f8fafc}.ccf-track-step{position:relative;flex:1;min-height:64px;padding:13px 18px 13px 30px;display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;color:#64748b;background:#f8fafc;border:0}.ccf-track-step:after{content:"";position:absolute;right:-17px;top:0;width:34px;height:100%;background:inherit;clip-path:polygon(0 0,50% 0,100% 50%,50% 100%,0 100%,50% 50%);z-index:2}.ccf-track-step:not(:last-child){border-right:1px solid #dbe5ec}.ccf-track-step span{width:26px;height:26px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #cbd5e1;font-weight:600;font-size:13px;flex:0 0 auto}.ccf-track-step strong{font-weight:600;font-size:15px}.ccf-track-step.is-complete{background:#ecfdf8;color:#0f766e}.ccf-track-step.is-complete span{background:#0f766e;color:#fff;border-color:#0f766e}.ccf-track-step.is-current{background:#e6f7f4;color:#0f766e;box-shadow:inset 0 0 0 1px rgba(15,118,110,.16)}.ccf-track-step:last-child:after{display:none}.ccf-tracking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.ccf-info-card{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:17px;display:grid;gap:5px}.ccf-info-card span{text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-size:12px;font-weight:700}.ccf-info-card strong{font-size:16px}.ccf-info-card small{color:#64748b}.ccf-delivery-card,.ccf-next-info{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-top:18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;padding:18px}.ccf-delivery-card p,.ccf-next-info p{margin:4px 0 0;color:#64748b}.ccf-delivery-ready{background:#ecfdf5;border-color:#bbf7d0}.ccf-manual-tracking{margin-top:18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:18px;padding:16px}.ccf-manual-tracking summary{cursor:pointer;font-weight:700;color:#0f766e}
@media(max-width:860px){.ccf-form{margin:20px auto}.ccf-form-card{padding:20px;border-radius:20px}.ccf-form h2{font-size:26px}.ccf-wizard-layout{grid-template-columns:1fr}.ccf-wizard-body{padding:18px}.ccf-stepper{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px}.ccf-stepper:before{display:none}.ccf-step-indicator{display:grid;place-items:center;text-align:center;gap:6px;min-height:auto;padding:8px 4px}.ccf-step-indicator span{width:30px;height:30px}.ccf-step-indicator strong{font-size:11px}.ccf-lookup-row,.ccf-two-col,.ccf-summary-box,.ccf-tracking-grid{grid-template-columns:1fr;display:grid}.ccf-tracking-timeline{display:grid;grid-template-columns:1fr;border-radius:16px}.ccf-track-step:after{display:none}.ccf-track-step{padding:12px 14px;justify-content:flex-start;text-align:left}.ccf-actions,.ccf-delivery-card,.ccf-next-info,.ccf-tracking-header{flex-direction:column;align-items:stretch}.ccf-actions .ccf-button,.ccf-actions-end .ccf-button{width:100%;min-width:0}.ccf-button-secondary{white-space:normal}}

/* v1.0 package cards */
.ccf-package-title-row {
    display: flex;
    gap: 8px;
    align-items: center;
    justify-content: space-between;
}
.ccf-package-title-row small {
    background: rgba(15, 118, 110, 0.10);
    color: #0f766e;
    border: 1px solid rgba(15, 118, 110, 0.18);
    border-radius: 999px;
    padding: 3px 8px;
    font-size: 11px;
    font-weight: 600;
    white-space: nowrap;
}
.ccf-package-description {
    display: block;
    margin-top: 5px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.4;
}

/* v1.1.8 clarification workflow */
.ccf-clarification-box {
    margin-top: 18px;
    background: #fffbeb;
    border: 1px solid #fde68a;
    border-radius: 20px;
    padding: 18px;
    color: #713f12;
}
.ccf-clarification-box strong {
    display: block;
    color: #92400e;
    font-size: 17px;
    margin-bottom: 6px;
}
.ccf-clarification-box p {
    margin: 6px 0 14px;
    color: #713f12;
    line-height: 1.6;
}
.ccf-clarification-reply-form {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}
.ccf-clarification-reply-form textarea {
    background: #fff;
}
.ccf-notice-success {
    background: #ecfdf5;
    border-color: #bbf7d0;
    color: #166534;
}


/* v1.2.2 customer clarification uploads */
.ccf-clarification-reply-form label small{font-weight:500;color:#64748b;margin-left:4px}.ccf-upload-field{display:flex;flex-direction:column;gap:7px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:13px;padding:12px;margin:4px 0 14px}.ccf-upload-field input[type=file]{background:#fff;border:1px solid #dbe5ec;border-radius:10px;padding:9px;width:100%;box-sizing:border-box}.ccf-upload-field small{color:#64748b;font-size:12px;line-height:1.4}.ccf-notice-success{background:#ecfdf5!important;border-color:#bbf7d0!important;color:#166534!important}

/* v1.2.4.1 payment follow-up polish */
.ccf-payment-followup-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);gap:22px;align-items:stretch;margin-top:18px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:24px;padding:24px;box-shadow:0 18px 40px rgba(15,23,42,.05)}
.ccf-payment-followup-main{display:flex;flex-direction:column;justify-content:center;gap:8px}.ccf-payment-followup-main strong{font-size:20px;color:#0f172a}.ccf-payment-followup-main p{margin:0;color:#64748b;line-height:1.55;max-width:520px}.ccf-bank-transfer-box{margin-top:10px;background:#fff;border:1px solid #dbe5ec;border-radius:18px;padding:14px 16px;display:grid;gap:4px;max-width:520px}.ccf-bank-transfer-box span{font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:#64748b;font-weight:700}.ccf-bank-transfer-box strong{font-size:15px;word-break:break-all;color:#0f172a}.ccf-bank-transfer-box small{color:#64748b}.ccf-payment-followup-actions{display:grid;gap:14px}.ccf-payment-action-box{background:#fff;border:1px solid #dbe5ec;border-radius:20px;padding:16px;display:grid;gap:8px}.ccf-payment-action-box strong{font-size:15px;color:#0f172a}.ccf-payment-action-box p{margin:0;color:#64748b;font-size:14px;line-height:1.45}.ccf-payment-action-box .ccf-button{width:100%;margin-top:6px;min-height:46px;padding:12px 18px}.ccf-file-picker{position:relative;display:flex!important;align-items:center;justify-content:center;border:1px dashed #a7c8c3;background:#f0fdfa;color:#0f766e;border-radius:14px;min-height:46px;padding:12px 16px;font-weight:700;cursor:pointer;transition:.16s ease}.ccf-file-picker:hover{background:#e6f7f4;border-color:#0f766e}.ccf-file-picker input{position:absolute;inset:0;opacity:0;cursor:pointer}.ccf-file-name{font-size:13px;color:#475569;background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:9px 12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ccf-proof-form small{color:#64748b;font-size:12px}@media (max-width:800px){.ccf-payment-followup-card{grid-template-columns:1fr;padding:18px}.ccf-payment-followup-actions{grid-template-columns:1fr}}


/* v1.3.1 frontend consistency pass */
.ccf-form{
    font-size:14px;
}

.ccf-form-card{
    border-radius:24px;
}

.ccf-form h2{
    font-size:30px;
}

.ccf-form h3{
    font-size:19px;
}

.ccf-muted{
    font-size:14px;
}

.ccf-form input,
.ccf-form select,
.ccf-form textarea{
    border-radius:14px;
    min-height:46px;
    transition:border-color .2s ease, box-shadow .2s ease;
}

.ccf-form textarea{
    min-height:120px;
}

.ccf-form input:focus,
.ccf-form select:focus,
.ccf-form textarea:focus{
    border-color:#0f766e;
    box-shadow:0 0 0 4px rgba(15,118,110,.08);
    outline:none;
}

.ccf-form .button,
.ccf-form button{
    border-radius:14px !important;
    min-height:48px;
    font-weight:600;
}

.ccf-step-indicator{
    min-height:62px;
}

.ccf-step-indicator strong{
    font-size:13px;
}

.ccf-status-pill,
.ccf-pill{
    border-radius:999px;
}

.ccf-upload-box{
    border:2px dashed #d5e3eb;
    border-radius:18px;
    padding:18px;
    background:#f8fbfc;
}

.ccf-upload-box:hover{
    border-color:#0f766e;
}

@media(max-width:768px){
    .ccf-wizard-layout{
        grid-template-columns:1fr;
    }

    .ccf-stepper{
        display:grid;
        grid-template-columns:repeat(auto-fit,minmax(120px,1fr));
        gap:10px;
    }

    .ccf-stepper:before{
        display:none;
    }

    .ccf-form-card{
        padding:22px;
    }

    .ccf-form h2{
        font-size:26px;
    }
}

/* v1.3.4 order checkout visual alignment only */
body.woocommerce-order-received .entry-title,
body.woocommerce-order-pay .entry-title,
body.woocommerce-order-received .page-title,
body.woocommerce-order-pay .page-title{
    display:none!important;
}

body.woocommerce-order-received .woocommerce,
body.woocommerce-order-pay .woocommerce{
    --ccf-primary:#0f766e;
    --ccf-primary-dark:#115e59;
    --ccf-ink:#0f172a;
    --ccf-muted:#64748b;
    --ccf-border:#dbe5ec;
    --ccf-soft:#f4faf9;
    max-width:1120px;
    margin:34px auto!important;
    background:#fff;
    border:1px solid var(--ccf-border);
    border-radius:24px;
    padding:32px;
    box-shadow:0 22px 60px rgba(15,23,42,.08);
    overflow:hidden;
    position:relative;
    color:var(--ccf-ink);
    font-size:15px;
    line-height:1.5;
}

body.woocommerce-order-received .woocommerce:before,
body.woocommerce-order-pay .woocommerce:before{
    content:"";
    position:absolute;
    inset:0 0 auto;
    height:6px;
    background:var(--ccf-primary);
}

.ccf-woo-checkout-head{
    text-align:center;
    margin:6px 0 30px;
}

.ccf-woo-checkout-head h2{
    margin:0 0 10px;
    color:#0f172a;
    font-size:30px;
    line-height:1.1;
    letter-spacing:-.035em;
    font-weight:600;
}

.ccf-woo-checkout-head .ccf-muted{
    max-width:720px;
    margin:0 auto;
}

body.woocommerce-order-received .woocommerce-notice,
body.woocommerce-order-pay .woocommerce-info,
body.woocommerce-order-pay .woocommerce-error,
body.woocommerce-order-pay .woocommerce-message{
    border:1px solid #dbe5ec!important;
    border-radius:18px!important;
    background:#f8fafc!important;
    color:#0f172a!important;
    padding:16px 18px 16px 52px!important;
    margin:0 0 18px!important;
    box-shadow:none!important;
}

body.woocommerce-order-pay .woocommerce-info{
    background:#fff7ed!important;
    border-color:#fed7aa!important;
}

body.woocommerce-order-received .woocommerce-order-overview{
    display:grid!important;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
    margin:0 0 24px!important;
    padding:0!important;
    list-style:none!important;
}

body.woocommerce-order-received .woocommerce-order-overview li{
    float:none!important;
    margin:0!important;
    padding:17px!important;
    border:1px solid #e2e8f0!important;
    border-radius:18px!important;
    background:#f8fafc!important;
    color:#64748b!important;
    font-size:12px!important;
    text-transform:uppercase;
    letter-spacing:.08em;
    font-weight:700;
}

body.woocommerce-order-received .woocommerce-order-overview li strong{
    display:block;
    margin-top:6px;
    color:#0f172a;
    font-size:15px;
    text-transform:none;
    letter-spacing:0;
    font-weight:600;
    word-break:break-word;
}

body.woocommerce-order-received .woocommerce-order-details,
body.woocommerce-order-received .woocommerce-customer-details,
body.woocommerce-order-pay #order_review,
body.woocommerce-order-pay form#order_review{
    background:#fff;
    border:1px solid #e8f0f6;
    border-radius:24px;
    padding:24px;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.9);
    margin:18px 0!important;
}

body.woocommerce-order-received .woocommerce-order-details__title,
body.woocommerce-order-received .woocommerce-column__title,
body.woocommerce-order-pay h3,
body.woocommerce-order-pay #order_review_heading{
    margin:0 0 16px!important;
    color:#0f172a;
    font-size:19px!important;
    line-height:1.2;
    letter-spacing:-.02em;
    font-weight:600;
}

body.woocommerce-order-received table.shop_table,
body.woocommerce-order-pay table.shop_table{
    border:1px solid #dbe5ec!important;
    border-radius:18px!important;
    border-collapse:separate!important;
    border-spacing:0!important;
    overflow:hidden;
    margin:0 0 18px!important;
    background:#fff;
}

body.woocommerce-order-received table.shop_table th,
body.woocommerce-order-received table.shop_table td,
body.woocommerce-order-pay table.shop_table th,
body.woocommerce-order-pay table.shop_table td{
    border-top:1px solid #e2e8f0!important;
    padding:15px 16px!important;
    color:#0f172a;
}

body.woocommerce-order-received table.shop_table thead th,
body.woocommerce-order-pay table.shop_table thead th{
    border-top:0!important;
    background:#f8fafc;
    font-weight:700;
}

body.woocommerce-order-received table.shop_table tfoot th,
body.woocommerce-order-pay table.shop_table tfoot th{
    background:#f8fafc;
    font-weight:700;
}

body.woocommerce-order-received .woocommerce-customer-details address{
    border:1px solid #dbe5ec!important;
    border-radius:18px!important;
    background:#f8fafc;
    padding:18px!important;
    color:#0f172a;
    line-height:1.6;
}

body.woocommerce-order-received .woocommerce-bacs-bank-details,
body.woocommerce-order-received .wc-bacs-bank-details,
body.woocommerce-order-received .woocommerce-order p:not(.woocommerce-notice),
body.woocommerce-order-pay #payment{
    background:#f8fafc!important;
    border:1px solid #e2e8f0!important;
    border-radius:20px!important;
    padding:18px!important;
    margin:18px 0!important;
    color:#0f172a!important;
}

body.woocommerce-order-received .woocommerce-bacs-bank-details h2,
body.woocommerce-order-received .wc-bacs-bank-details-heading{
    margin:0 0 12px!important;
    font-size:19px!important;
    color:#0f172a;
}

body.woocommerce-order-pay #payment ul.payment_methods{
    border:0!important;
    padding:0!important;
    margin:0 0 16px!important;
}

body.woocommerce-order-pay #payment ul.payment_methods li{
    background:#fff;
    border:1px solid #dbe5ec;
    border-radius:18px;
    padding:16px!important;
    margin:0!important;
}

body.woocommerce-order-pay #payment div.payment_box{
    background:#f8fafc!important;
    border:1px solid #e2e8f0!important;
    border-radius:16px!important;
    color:#475569!important;
    margin:14px 0 0!important;
}

body.woocommerce-order-pay #payment div.payment_box:before{
    display:none!important;
}

body.woocommerce-order-pay #payment .form-row{
    padding:0!important;
    margin:16px 0 0!important;
}

body.woocommerce-order-pay #payment #place_order,
body.woocommerce-order-pay .button,
body.woocommerce-order-received .button{
    display:inline-flex!important;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:13px 24px!important;
    border-radius:14px!important;
    border:0!important;
    background:#0f766e!important;
    color:#fff!important;
    font-weight:700!important;
    box-shadow:0 14px 30px rgba(15,118,110,.22)!important;
    transition:.16s ease;
}

body.woocommerce-order-pay #payment #place_order:hover,
body.woocommerce-order-pay .button:hover,
body.woocommerce-order-received .button:hover{
    background:#115e59!important;
    color:#fff!important;
}

@media(max-width:900px){
    body.woocommerce-order-received .woocommerce,
    body.woocommerce-order-pay .woocommerce{
        margin:20px auto!important;
        padding:22px;
        border-radius:20px;
    }

    body.woocommerce-order-received .woocommerce-order-overview{
        grid-template-columns:1fr 1fr;
    }

    .ccf-woo-checkout-head h2{
        font-size:26px;
    }
}

@media(max-width:560px){
    body.woocommerce-order-received .woocommerce-order-overview{
        grid-template-columns:1fr;
    }
}

/* v1.3.4.2 - confirmation checkbox alignment fix */
.ccf-form .ccf-checkbox {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 10px !important;
    margin: 16px 0 7px !important;
    line-height: 1.35 !important;
}

.ccf-form .ccf-checkbox input[type="checkbox"] {
    appearance: auto !important;
    -webkit-appearance: checkbox !important;
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    flex: 0 0 16px !important;
    margin: 0 !important;
    padding: 0 !important;
    position: static !important;
}


/* v1.3.4.3 - compact responsive WooCommerce order-pay page */
body.woocommerce-order-pay .woocommerce:empty,
body.woocommerce-order-pay .woocommerce:has(> .woocommerce-notices-wrapper:empty):not(:has(form#order_review)):not(:has(#order_review)):not(:has(.woocommerce-info)):not(:has(.woocommerce-error)):not(:has(.woocommerce-message)) {
    display: none !important;
}

body.woocommerce-order-pay .woocommerce {
    max-width: 980px;
    margin: 22px auto !important;
    padding: 24px !important;
}

body.woocommerce-order-pay .ccf-woo-checkout-head {
    margin: 2px 0 18px !important;
}

body.woocommerce-order-pay .ccf-woo-checkout-head h2 {
    font-size: 28px !important;
    margin-bottom: 6px !important;
}

body.woocommerce-order-pay .ccf-woo-checkout-head .ccf-muted {
    font-size: 14px !important;
    line-height: 1.45 !important;
}

body.woocommerce-order-pay form#order_review,
body.woocommerce-order-pay #order_review {
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

body.woocommerce-order-pay .woocommerce-info,
body.woocommerce-order-pay .woocommerce-error,
body.woocommerce-order-pay .woocommerce-message {
    margin: 0 0 14px !important;
    padding: 13px 16px 13px 46px !important;
    border-radius: 16px !important;
    font-size: 14px !important;
}

body.woocommerce-order-pay table.shop_table {
    margin: 0 0 14px !important;
    width: 100% !important;
}

body.woocommerce-order-pay table.shop_table th,
body.woocommerce-order-pay table.shop_table td {
    padding: 12px 14px !important;
    font-size: 14px !important;
    vertical-align: middle !important;
}

body.woocommerce-order-pay table.shop_table tfoot th,
body.woocommerce-order-pay table.shop_table tfoot td {
    padding-top: 11px !important;
    padding-bottom: 11px !important;
}

body.woocommerce-order-pay #payment {
    margin: 0 !important;
    padding: 14px !important;
    border-radius: 18px !important;
}

body.woocommerce-order-pay #payment ul.payment_methods {
    margin: 0 !important;
}

body.woocommerce-order-pay #payment ul.payment_methods li {
    padding: 14px !important;
    border-radius: 16px !important;
}

body.woocommerce-order-pay #payment ul.payment_methods li > label {
    font-weight: 700 !important;
    color: #0f172a !important;
}

body.woocommerce-order-pay #payment div.payment_box {
    margin: 10px 0 0 !important;
    padding: 12px 14px !important;
    font-size: 14px !important;
    line-height: 1.45 !important;
}

body.woocommerce-order-pay #payment .woocommerce-privacy-policy-text {
    margin: 12px 0 0 !important;
    padding: 0 !important;
    font-size: 13px !important;
    color: #64748b !important;
    line-height: 1.45 !important;
}

body.woocommerce-order-pay #payment .woocommerce-privacy-policy-text p {
    margin: 0 !important;
}

body.woocommerce-order-pay #payment .form-row {
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    margin: 14px 0 0 !important;
}

body.woocommerce-order-pay #payment #place_order {
    width: auto !important;
    min-width: 220px !important;
    min-height: 46px !important;
    padding: 12px 24px !important;
    float: none !important;
}

@media (max-width: 760px) {
    body.woocommerce-order-pay .woocommerce {
        margin: 14px 10px !important;
        padding: 18px !important;
        border-radius: 20px !important;
    }

    body.woocommerce-order-pay .ccf-woo-checkout-head h2 {
        font-size: 24px !important;
    }

    body.woocommerce-order-pay table.shop_table,
    body.woocommerce-order-pay table.shop_table thead,
    body.woocommerce-order-pay table.shop_table tbody,
    body.woocommerce-order-pay table.shop_table tfoot,
    body.woocommerce-order-pay table.shop_table tr,
    body.woocommerce-order-pay table.shop_table th,
    body.woocommerce-order-pay table.shop_table td {
        display: block !important;
        width: 100% !important;
        box-sizing: border-box !important;
    }

    body.woocommerce-order-pay table.shop_table thead {
        display: none !important;
    }

    body.woocommerce-order-pay table.shop_table tr {
        border-top: 1px solid #e2e8f0 !important;
    }

    body.woocommerce-order-pay table.shop_table tbody tr:first-child,
    body.woocommerce-order-pay table.shop_table tfoot tr:first-child {
        border-top: 0 !important;
    }

    body.woocommerce-order-pay table.shop_table td,
    body.woocommerce-order-pay table.shop_table tfoot th,
    body.woocommerce-order-pay table.shop_table tfoot td {
        border-top: 0 !important;
        display: flex !important;
        justify-content: space-between !important;
        gap: 14px !important;
        text-align: right !important;
    }

    body.woocommerce-order-pay table.shop_table td:before {
        content: attr(data-title);
        font-weight: 700;
        color: #64748b;
        text-align: left;
    }

    body.woocommerce-order-pay table.shop_table tfoot th {
        background: transparent !important;
        color: #64748b !important;
        padding-bottom: 4px !important;
    }

    body.woocommerce-order-pay table.shop_table tfoot td {
        padding-top: 4px !important;
        font-weight: 700 !important;
    }

    body.woocommerce-order-pay #payment .form-row {
        justify-content: stretch !important;
    }

    body.woocommerce-order-pay #payment #place_order {
        width: 100% !important;
        min-width: 0 !important;
    }
}

@media (max-width: 460px) {
    body.woocommerce-order-pay .woocommerce {
        margin-left: 6px !important;
        margin-right: 6px !important;
        padding: 14px !important;
    }

    body.woocommerce-order-pay #payment,
    body.woocommerce-order-pay #payment ul.payment_methods li {
        padding: 12px !important;
    }
}


/* v1.3.4.4 - order-pay privacy text outside payment card */
body.woocommerce-order-pay #payment .woocommerce-privacy-policy-text.ccf-privacy-moved {
    display: none !important;
}

body.woocommerce-order-pay .woocommerce-privacy-policy-text.ccf-privacy-moved {
    margin: 10px 4px 0 !important;
    padding: 0 2px !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    color: #64748b !important;
    font-size: 13px !important;
    line-height: 1.45 !important;
}

body.woocommerce-order-pay .woocommerce-privacy-policy-text.ccf-privacy-moved p {
    margin: 0 !important;
}

body.woocommerce-order-pay .woocommerce-privacy-policy-text.ccf-privacy-moved a {
    color: #0f766e !important;
    font-weight: 600 !important;
}

@media (max-width: 760px) {
    body.woocommerce-order-pay .woocommerce-privacy-policy-text.ccf-privacy-moved {
        font-size: 12.5px !important;
        margin-top: 9px !important;
    }
}

/* v1.3.5 settings branding hooks */
.ccf-form input:focus,
.ccf-form select:focus,
.ccf-form textarea:focus{border-color:var(--ccf-primary)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--ccf-primary) 12%,transparent)!important}
.ccf-package-main em,
.ccf-manual-tracking summary,
.ccf-link-button{color:var(--ccf-primary)!important}
.ccf-package-title-row small{background:color-mix(in srgb,var(--ccf-primary) 10%,transparent)!important;color:var(--ccf-primary)!important;border-color:color-mix(in srgb,var(--ccf-primary) 18%,transparent)!important}
.ccf-status-payment_pending{color:var(--ccf-accent)!important}
.ccf-track-step.is-complete,.ccf-track-step.is-current{color:var(--ccf-primary)!important}
.ccf-track-step.is-complete span{background:var(--ccf-primary)!important;border-color:var(--ccf-primary)!important}
.ccf-file-picker{color:var(--ccf-primary)!important;border-color:color-mix(in srgb,var(--ccf-primary) 32%,#ffffff)!important;background:color-mix(in srgb,var(--ccf-primary) 8%,#ffffff)!important}
.ccf-file-picker:hover{border-color:var(--ccf-primary)!important;background:color-mix(in srgb,var(--ccf-primary) 12%,#ffffff)!important}
body.woocommerce-order-pay .ccf-woo-checkout-page .button,
body.woocommerce-order-received .ccf-woo-checkout-page .button,
body.woocommerce-order-pay #payment #place_order{background:var(--ccf-primary)!important;border-color:var(--ccf-primary)!important;color:#fff!important}
body.woocommerce-order-pay #payment #place_order:hover{background:var(--ccf-primary-dark)!important;border-color:var(--ccf-primary-dark)!important}

/* v1.3.8.7 page text styling controls */
.ccf-form h3{font-size:var(--ccf-form-title-size,21px);color:var(--ccf-form-title-color,#0f172a)}
.ccf-form .ccf-muted,.ccf-form .ccf-package-description,.ccf-form .ccf-lookup-message{font-size:var(--ccf-form-text-size,15px);color:var(--ccf-form-text-color,#64748b)}
.ccf-step label{color:var(--ccf-label-color,#1e293b)}
.ccf-button{font-size:var(--ccf-button-text-size,15px)}

/* v1.3.8.9 payment method choice + stable wizard scroll */
.ccf-payment-choice{margin:18px 0 8px;padding-top:2px}
.ccf-payment-method-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:12px 0 4px}
.ccf-payment-method-row{min-height:96px;background:#fff}
.ccf-payment-method-row .ccf-package-description{line-height:1.45}
@media(max-width:760px){.ccf-payment-method-list{grid-template-columns:1fr}.ccf-payment-method-row{min-height:auto}}
