/* UCL Payments */
.ucl-pay,.ucl-pay *,.ucl-pay *::before,.ucl-pay *::after{box-sizing:border-box}
.ucl-pay{max-width:640px;background:#fff;color:var(--wp--preset--color--contrast,#151515);border-radius:4px;box-shadow:0 14px 40px rgba(0,0,0,.10);border-top:4px solid var(--wp--preset--color--accent-1,#e12229);padding:24px 26px 26px}
.ucl-pay form{margin:0}
.ucl-pay fieldset{border:0;margin:0 0 18px;padding:0;min-width:0}
.ucl-pay legend{padding:0;margin:0 0 10px;font-family:var(--serif,Georgia,serif);font-size:20px;font-weight:700;line-height:1.25}
.ucl-pay-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}
.ucl-pay-row:last-child{margin-bottom:0}
.ucl-pay-f{display:flex;flex-direction:column;gap:4px;min-width:0;margin:0}
.ucl-pay-f>span:first-child{font-size:13px;font-weight:700;color:#3c3c3c;line-height:1.3}
.ucl-pay input:not([type=checkbox]),.ucl-pay select{font:inherit;font-size:15px;width:100%;max-width:100%;height:46px;margin:0;padding:0 12px;border:1px solid #c9c9ce;border-radius:3px;background-color:#fff;color:inherit;line-height:1.3;transition:border-color .2s,box-shadow .2s}
.ucl-pay select{-webkit-appearance:none;appearance:none;padding-right:34px;cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1.5l5 5 5-5' fill='none' stroke='%23151515' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:11px 8px}
.ucl-pay input:focus,.ucl-pay select:focus{outline:none;border-color:var(--wp--preset--color--contrast,#151515);box-shadow:0 0 0 3px rgba(21,21,21,.08)}
.ucl-pay .is-bad{border-color:var(--wp--preset--color--accent-1,#e12229)!important;box-shadow:0 0 0 3px rgba(225,34,41,.1)!important}
.ucl-pay-amt{position:relative;display:block}
.ucl-pay-amt b{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:15px;font-weight:700;color:#6b6b70;pointer-events:none}
.ucl-pay .ucl-pay-amt input{padding-left:40px;font-size:18px;font-weight:700;font-variant-numeric:tabular-nums}
.ucl-pay-terms{display:flex;align-items:flex-start;gap:10px;margin:4px 0 0;font-size:14.5px;line-height:1.45;cursor:pointer}
.ucl-pay-terms input{flex:0 0 18px;width:18px;height:18px;margin:2px 0 0;accent-color:var(--wp--preset--color--accent-1,#e12229)}
.ucl-pay-terms a{color:inherit;text-decoration:underline}
.ucl-pay-err{display:block;margin:6px 0 0!important;font-size:13px;font-style:normal;font-weight:600;color:var(--wp--preset--color--accent-1,#e12229)}
.ucl-pay-err[hidden]{display:none}
.ucl-pay-err a{color:inherit}
.ucl-pay-btn{display:flex;align-items:center;justify-content:center;width:100%;height:52px;margin-top:18px;border:0;border-radius:2px;background:var(--wp--preset--color--accent-1,#e12229);color:#fff;font-family:var(--disp,inherit);font-size:16px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer;transition:background .2s}
.ucl-pay-btn:hover{background:var(--wp--preset--color--accent-2,#b5141a)}
.ucl-pay-btn:disabled{opacity:.55;cursor:not-allowed}
.ucl-pay-note{display:flex;align-items:flex-start;gap:8px;margin:12px 0 0!important;font-size:13px;line-height:1.5;color:var(--wp--preset--color--accent-4,#5b5b60)}
.ucl-pay-lock{flex:0 0 14px;width:14px;height:16px;margin-top:1px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 16'%3E%3Crect x='1' y='7' width='12' height='8.2' rx='1.5' fill='none' stroke='%235b5b60' stroke-width='1.5'/%3E%3Cpath d='M4 7V4.8a3 3 0 016 0V7' fill='none' stroke='%235b5b60' stroke-width='1.5'/%3E%3C/svg%3E") center/contain no-repeat}
.ucl-pay-off{margin:0 0 18px!important;padding:12px 14px;background:#fff6e5;border-left:3px solid #d98a00;font-size:14px;line-height:1.5}
.ucl-pay-off a{color:inherit;font-weight:700}
.ucl-pay-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
@media (max-width:640px){
	.ucl-pay{padding:20px 16px 22px}
	.ucl-pay-row{grid-template-columns:1fr}
	.ucl-pay input:not([type=checkbox]),.ucl-pay select{font-size:16px}
}

/* Pay step (order-pay) and receipt (order-received) pages */
.ucl-pay-step .woocommerce,.ucl-pay-done .woocommerce{max-width:720px;margin:0 auto}
.ucl-pay-step .woocommerce table.shop_table,.ucl-pay-done .woocommerce table.shop_table{width:100%;border-collapse:collapse;border:1px solid #e3e3e6;border-radius:3px;margin:0 0 24px;font-size:15px}
.ucl-pay-step .woocommerce table.shop_table th,.ucl-pay-step .woocommerce table.shop_table td,.ucl-pay-done .woocommerce table.shop_table th,.ucl-pay-done .woocommerce table.shop_table td{padding:12px 14px;border-bottom:1px solid #ececef;text-align:left}
.ucl-pay-step .woocommerce table.shop_table thead th{background:#f6f6f7;font-size:13px;letter-spacing:.04em;text-transform:uppercase}
.ucl-pay-step .woocommerce table.shop_table tfoot tr:last-child th,.ucl-pay-step .woocommerce table.shop_table tfoot tr:last-child td{font-size:18px;font-weight:700}
.ucl-pay-step #payment{background:#f6f6f7;border-radius:3px;padding:18px}
.ucl-pay-step #payment ul.payment_methods{list-style:none;margin:0 0 14px;padding:0}
.ucl-pay-step #payment ul.payment_methods li{font-weight:700}
.ucl-pay-step #payment .payment_box{margin:6px 0 0;font-weight:400;font-size:14px;color:#5b5b60}
.ucl-pay-step #payment .payment_box p{margin:0}
.ucl-pay-step #place_order{display:flex;align-items:center;justify-content:center;width:100%;height:52px;border:0;border-radius:2px;background:var(--wp--preset--color--accent-1,#e12229);color:#fff;font-family:var(--disp,inherit);font-size:16px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;cursor:pointer}
.ucl-pay-step #place_order:hover{background:var(--wp--preset--color--accent-2,#b5141a)}
.ucl-pay-done .woocommerce-notice--success,.ucl-pay-done .woocommerce-thankyou-order-received{font-family:var(--serif,Georgia,serif);font-size:22px;font-weight:700;line-height:1.35;margin:0 0 20px}
.ucl-pay-done ul.woocommerce-order-overview{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:#e3e3e6;border:1px solid #e3e3e6;margin:0 0 24px;padding:0}
.ucl-pay-done ul.woocommerce-order-overview li{background:#fff;padding:12px 14px;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:#5b5b60}
.ucl-pay-done ul.woocommerce-order-overview li strong{display:block;margin-top:4px;font-size:15px;letter-spacing:0;text-transform:none;color:#151515}
.ucl-pay-done .woocommerce-customer-details,.ucl-pay-done .woocommerce-column--shipping-address{display:none}
.ucl-pay-head{margin:0 0 24px}
.ucl-pay-kicker{margin:0 0 6px!important;font-family:var(--disp,inherit);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--wp--preset--color--accent-4,#5b5b60)}
.ucl-pay-head h1{margin:0 0 10px!important;font-family:var(--serif,Georgia,serif);font-size:clamp(30px,4vw,42px);line-height:1.15}
.ucl-pay-head p{margin:0 0 12px;font-size:16px;line-height:1.55}
.ucl-pay-who{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin:16px 0 8px;background:#e3e3e6;border:1px solid #e3e3e6}
.ucl-pay-who div{background:#fff;padding:12px 14px;min-width:0}
.ucl-pay-who dt{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:#5b5b60}
.ucl-pay-who dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}
.ucl-pay-edit{font-size:14px!important;color:#5b5b60}
.ucl-pay-edit a{color:inherit}
.ucl-pay-step .woocommerce-error,.ucl-pay-step .woocommerce-info{font-size:14px}
.ucl-pay-step .woocommerce-privacy-policy-text p{font-size:13px;color:#5b5b60;margin:0 0 14px}
.ucl-pay-after{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin:8px 0 0}
.ucl-pay-after .ucl-pay-btn{width:auto;margin:0;padding:0 22px;text-decoration:none}
.ucl-pay-after a:not(.ucl-pay-btn){color:inherit;font-weight:700}
.ucl-pay-btn-line{background:transparent!important;color:var(--wp--preset--color--contrast,#151515)!important;border:1.5px solid currentColor!important;height:48px!important}
.ucl-pay-step .woocommerce table.shop_table .product-quantity{text-align:center;width:60px}
@media (max-width:640px){.ucl-pay-who{grid-template-columns:1fr}.ucl-pay-step .woocommerce table.shop_table{font-size:14px}.ucl-pay-step .woocommerce table.shop_table th,.ucl-pay-step .woocommerce table.shop_table td{padding:10px}}
/* Accounts (1.1) */
.ucl-pay-tabs{display:grid;grid-template-columns:1fr 1fr;margin:0 0 20px;border-bottom:1px solid #e3e3e6}
.ucl-pay-tabs button{font:inherit;font-family:var(--disp,inherit);font-size:14px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:none;border:0;border-bottom:3px solid transparent;margin-bottom:-1px;padding:12px 6px;color:#6b6b70;cursor:pointer}
.ucl-pay-tabs button.is-on{color:var(--wp--preset--color--contrast,#151515);border-bottom-color:var(--wp--preset--color--accent-1,#e12229)}
.ucl-pay-login{display:grid;gap:12px;margin:0}
.ucl-pay-login .ucl-pay-btn{margin-top:4px}
.ucl-pay-sub{margin:0 0 12px!important;font-size:14px;line-height:1.5;color:#5b5b60}
.ucl-pay-forgot{margin:2px 0 0!important;font-size:14px;text-align:center}
.ucl-pay-forgot a{color:inherit}
.ucl-pay-row-1{grid-template-columns:1fr}
.ucl-pay-me{display:flex;align-items:center;gap:12px;margin:0 0 20px;padding:12px 14px;background:#f6f6f7;border-radius:3px}
.ucl-pay-me-ico{flex:0 0 38px;width:38px;height:38px;border-radius:50%;background:var(--wp--preset--color--contrast,#151515);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700}
.ucl-pay-me div{flex:1;min-width:0;line-height:1.35}
.ucl-pay-me strong{display:block}
.ucl-pay-me span:not(.ucl-pay-me-ico){display:block;font-size:13px;color:#5b5b60}
.ucl-pay-me a{font-size:13px;color:inherit;white-space:nowrap}
.ucl-pay input[readonly]{background:#f3f3f5;color:#5b5b60;cursor:default}
.ucl-pay-past{margin-top:24px;padding-top:18px;border-top:1px solid #e3e3e6}
.ucl-pay-past h3{margin:0 0 10px!important;font-family:var(--serif,Georgia,serif);font-size:18px}
.ucl-pay-past ul{list-style:none;margin:0;padding:0}
.ucl-pay-past li{display:grid;grid-template-columns:90px 1fr auto;gap:10px;padding:8px 0;border-bottom:1px solid #f0f0f2;font-size:14px}
.ucl-pay-past li span:first-child{color:#5b5b60}
@media (max-width:640px){.ucl-pay-me{flex-wrap:wrap}.ucl-pay-past li{grid-template-columns:1fr auto}.ucl-pay-past li span:first-child{grid-column:1/-1}}
/* No shop wording: hide quantity and WooCommerce's own retry links */
.ucl-pay-step .woocommerce table.shop_table .product-quantity,.ucl-pay-step .woocommerce table.shop_table .product-name strong.product-quantity{display:none}
.ucl-pay-done .woocommerce-thankyou-order-failed-actions{display:none}
.ucl-pay-sum{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;margin:18px 0 8px;background:#e3e3e6;border:1px solid #e3e3e6}
.ucl-pay-sum div{background:#fff;padding:12px 14px;min-width:0}
.ucl-pay-sum dt{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:#5b5b60}
.ucl-pay-sum dd{margin:4px 0 0;font-weight:700;overflow-wrap:anywhere}
.ucl-pay-retry{margin:14px 0}
/* Receipt page: one clean details grid (WooCommerce's clearfix and dashed borders removed) */
.ucl-pay-done ul.woocommerce-order-overview::before,.ucl-pay-done ul.woocommerce-order-overview::after{display:none!important;content:none!important}
.ucl-pay-done ul.woocommerce-order-overview{grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;margin:18px 0 0!important}
.ucl-pay-done ul.woocommerce-order-overview li{float:none!important;width:auto!important;margin:0!important;border:0!important;line-height:1.4;min-width:0}
.ucl-pay-done ul.woocommerce-order-overview li strong{overflow-wrap:anywhere;font-weight:700}
.ucl-pay-done .ucl-pay-sum{margin:-1px 0 22px;border-top:0}
.ucl-pay-done .ucl-pay-sum dd{font-size:15px;color:#151515}
/* ===== Receipt card (step 3) ===== */
.ucl-pay-done ul.woocommerce-order-overview,.ucl-pay-done .woocommerce-thankyou-order-received,.ucl-pay-done .woocommerce-notice--success,.ucl-pay-done .woocommerce-thankyou-order-failed,.ucl-pay-done .ucl-pay-sum{display:none!important}
.ucl-rc{max-width:720px;background:#fff;border:1px solid #e5e7eb;border-top:5px solid #1a8f4a;border-radius:12px;box-shadow:0 10px 30px rgba(17,17,17,.06);padding:28px 32px;margin:8px 0 22px}
.ucl-rc-bad{border-top-color:#e12229}.ucl-rc-wait{border-top-color:#d98a00}
.ucl-rc-top{display:flex;align-items:center;gap:16px}
.ucl-rc-ico{flex:0 0 48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:700;color:#fff;background:#1a8f4a}
.ucl-rc-bad .ucl-rc-ico{background:#e12229}.ucl-rc-wait .ucl-rc-ico{background:#d98a00}
.ucl-rc-amtw{flex:1;min-width:0}
.ucl-rc-l{margin:0;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:#6b7280}
.ucl-rc-amt{margin:2px 0 0;font-size:clamp(28px,4vw,36px);font-weight:800;line-height:1.1;color:#111}
.ucl-rc-pill{flex:0 0 auto;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:700;background:#e7f6ec;color:#166534}
.ucl-rc-bad .ucl-rc-pill{background:#fdecec;color:#b42318}.ucl-rc-wait .ucl-rc-pill{background:#fef6e7;color:#93370d}
.ucl-rc-msg{margin:20px 0 6px;font-size:16px;line-height:1.6;color:#374151}
.ucl-rc-msg strong{color:#111;overflow-wrap:anywhere}
.ucl-rc-rows{margin:14px 0 0;padding:0}
.ucl-rc-rows div{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid #eef0f2}
.ucl-rc-rows div:last-child{border-bottom:0}
.ucl-rc-rows dt{margin:0;color:#6b7280;font-size:15px}
.ucl-rc-rows dd{margin:0;color:#111;font-size:15px;font-weight:700;text-align:right;overflow-wrap:anywhere}
.ucl-rc-note{margin:18px 0 0;padding:14px 16px;border-radius:10px;background:#f8fafc;font-size:14px;line-height:1.6;color:#4b5563}
.ucl-rc-note a{color:#e12229;font-weight:700}
.ucl-rc-actions{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px}
.ucl-rc-actions button.ucl-pay-btn{cursor:pointer;border:0;font:inherit}
.ucl-rc-wa{font-weight:700;color:#111;text-decoration:underline;text-underline-offset:3px}
@media (max-width:600px){.ucl-rc{padding:22px 18px}.ucl-rc-top{flex-wrap:wrap}.ucl-rc-rows div{flex-direction:column;gap:2px}.ucl-rc-rows dd{text-align:left}}
@media print{header,footer,.wp-site-blocks>header,.wp-site-blocks>footer,#wpadminbar,.ucl-rc-actions,.ucl-pay-kicker,.ucl-ws,.ucl-wa-float{display:none!important}.ucl-rc{box-shadow:none;border-color:#ccc}body{background:#fff!important}}
/* ===== Centred payment flow (steps 2 and 3) ===== */
.ucl-pay-done .woocommerce,.ucl-pay-step .woocommerce{max-width:720px!important;margin-left:auto!important;margin-right:auto!important}
.ucl-pay-done .ucl-pay-head{text-align:center;margin-bottom:22px}
.ucl-pay-done .ucl-rc{margin:0 auto 22px;max-width:none}
.ucl-rc-top{flex-direction:column;text-align:center;gap:8px;padding-bottom:20px;border-bottom:1px solid #eef0f2}
.ucl-rc-ico{flex:none;width:64px;height:64px;font-size:30px;margin-bottom:4px}
.ucl-rc-amtw{flex:none}
.ucl-rc-amt{font-size:clamp(32px,5vw,42px)}
.ucl-rc-pill{margin-top:2px}
.ucl-rc-msg{text-align:center;margin:18px auto 8px;max-width:520px}
.ucl-rc-note{text-align:center}
.ucl-rc-actions{justify-content:center}
.ucl-pay-step .ucl-pay-head{text-align:center}
.ucl-pay-step .ucl-pay-who{text-align:left}
@media (max-width:600px){.ucl-rc-top{flex-wrap:nowrap}}
.ucl-rc-actions button.ucl-pay-btn{font-family:var(--disp,inherit)!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:inherit}
/* ===== Password reset screens ===== */
.ucl-reset .ucl-acct .woocommerce-message:focus,.ucl-reset .ucl-acct .woocommerce-error:focus,.ucl-reset .ucl-acct .woocommerce-info:focus{outline:none!important;box-shadow:none!important}
.ucl-reset .ucl-acct .woocommerce-ResetPassword>p:first-child{font-size:15px!important;line-height:1.55;color:#5b5b60;margin:0 0 18px!important}
.ucl-reset .ucl-acct .woocommerce-ResetPassword>p:first-child::before,.ucl-reset .ucl-acct .lost_reset_password .form-row-first label::before{content:none!important;display:none!important}
.ucl-reset .ucl-acct .lost_reset_password .form-row-first label{font-size:13px!important}
.ucl-reset .ucl-acct .woocommerce-ResetPassword::before{display:block;font-family:var(--serif,Georgia,serif);font-size:22px;font-weight:700;color:#151515;line-height:1.3;margin:0 0 6px}
.ucl-reset .ucl-acct .woocommerce-ResetPassword::before{content:"Forgot your password?"}
.ucl-reset .ucl-acct .woocommerce-ResetPassword:has(#password_1)::before{content:"Set a new password"}
.ucl-reset .ucl-acct button.button{width:100%}
/* sent screen */
.ucl-reset-sent .ucl-acct .woocommerce-message{display:none!important}
.ucl-reset-sent .ucl-acct .woocommerce>p:not([class]){display:none!important}
.ucl-rs-head{text-align:center;margin:8px 0 0}
.ucl-rs-ico{display:inline-flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:#fdecec;color:#E12229;margin-bottom:14px}
.ucl-rs-head h2{margin:0 0 8px;font-size:26px;line-height:1.2}
.ucl-rs-to{margin:0;color:#4b5563;font-size:16px;line-height:1.6}
.ucl-rs-to strong{display:inline-block;margin-top:4px;color:#111;font-size:17px;letter-spacing:.01em}
.ucl-rs-foot{margin:22px 0 4px;padding-top:18px;border-top:1px solid #eef0f2;text-align:center}
.ucl-rs-small{margin:0 0 6px;font-size:14px;line-height:1.55;color:#6b7280}
.ucl-rs-small a{color:#E12229;font-weight:700;text-decoration:none}
.ucl-rs-small a:hover{text-decoration:underline}
/* success message on Pay Online after a new password */
.ucl-pay-okmsg{background:#e7f6ec;border:1px solid #bfe5cc;border-left:4px solid #1a8f4a;border-radius:8px;padding:12px 16px;color:#14532d;font-size:15px;line-height:1.5;margin:0 0 16px}
.ucl-reset-sent .ucl-acct .wc-block-components-notice-banner.is-success{display:none!important}
.ucl-reset .ucl-acct .wc-block-components-notice-banner,.ucl-pay .wc-block-components-notice-banner{outline:none!important}
.ucl-reset .ucl-acct .wc-block-components-notice-banner.is-error{margin-bottom:18px}
