/* QualifyPath theme - logging in, registering and resetting a password on
 * WooCommerce's My account page (0.27.0). One white card on a soft band
 * under the page banner; the registration form lays its fields out two to a
 * row. Loaded on the My account page for visitors who are not logged in and
 * on the lost-password screens. The WooCommerce field names and hooks are
 * untouched; this only draws them. */

/* ---- The band, the panel and the card ------------------------------ */
.qp-account-page #pg_head{display:none!important}
.qp-account-page .woocommerce-account .woocommerce,.qp-account-page .qp-content>.woocommerce,.qp-account-page .row>.woocommerce{display:block!important;box-sizing:border-box!important;width:auto!important;max-width:none!important;margin:0!important;padding:clamp(28px,4vw,56px) var(--pg_padding_h,20px) clamp(56px,8vw,96px);background:linear-gradient(180deg,#f3f7fb 0%,#eef2f7 100%)}
.qp-account-page .qp-content{padding-top:0!important}
.qp-account-page #foot_main{margin-top:0!important}
.qp-account-page .woocommerce>.woocommerce-notices-wrapper,.qp-account-page .woocommerce>.woocommerce-error,.qp-account-page .woocommerce>.woocommerce-message,.qp-account-page .woocommerce>.woocommerce-info,.qp-account-page .woocommerce-notices-wrapper>.woocommerce-error,.qp-account-page .woocommerce-notices-wrapper>.woocommerce-message,.qp-account-page .woocommerce-notices-wrapper>.woocommerce-info{box-sizing:border-box;max-width:960px;margin:0 auto 20px!important}
.qp-account-page.qp-account-register .woocommerce>.woocommerce-notices-wrapper,.qp-account-page.qp-account-register .woocommerce>.woocommerce-error,.qp-account-page.qp-account-register .woocommerce>.woocommerce-message,.qp-account-page.qp-account-register .woocommerce>.woocommerce-info,.qp-account-page.qp-account-register .woocommerce-notices-wrapper>.woocommerce-error,.qp-account-page.qp-account-register .woocommerce-notices-wrapper>.woocommerce-message{max-width:1120px}
.qp-account-page .woocommerce-notices-wrapper:empty{display:none!important;margin:0!important}
#qp_account{margin:0;padding:0}
.qp-account-grid{display:grid;grid-template-columns:minmax(260px,340px) minmax(0,1fr);box-sizing:border-box;max-width:960px;margin:0 auto;border-radius:28px;overflow:hidden;background:#fff;border:1px solid #dfe6ee;box-shadow:0 32px 70px -44px rgba(15,23,42,.55)}
.qp-account-grid.is-wide{max-width:1120px;grid-template-columns:minmax(260px,360px) minmax(0,1fr)}
.qp-account-card{box-sizing:border-box;min-width:0;padding:clamp(28px,4vw,48px) clamp(20px,4vw,48px);background:#fff;text-align:left}
/* The panel: the brand colours, a headline and three reasons to have an account. */
.qp-account-panel{position:relative;box-sizing:border-box;padding:clamp(28px,4vw,44px) clamp(22px,3vw,36px);color:#fff;background:linear-gradient(160deg,var(--qp-col-accent-d,#0a3d62) 0%,var(--qp-col-accent,#0e6ba8) 100%);overflow:hidden}
.qp-account-panel::before{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.14) 1px,transparent 1.5px);background-size:18px 18px;opacity:.6;pointer-events:none}
.qp-account-panel::after{content:"";position:absolute;right:-120px;bottom:-140px;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.22),rgba(255,255,255,0) 70%);pointer-events:none}
.qp-account-panel-inner{position:relative;z-index:1;display:flex;flex-direction:column;height:100%;gap:0}
.qp-account-panel p,.qp-account-panel li,.qp-account-panel span,.qp-account-panel h1{color:#fff!important}
.qp-account-panel-eyebrow{margin:0 0 14px!important;font:700 .78rem/1.3 var(--qp-ff-body,system-ui),system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.78)!important}
.qp-account-panel-title{margin:0 0 12px!important;padding:0!important;border:0!important;font:800 clamp(1.6rem,1.2rem + 1.4vw,2.1rem)/1.15 var(--qp-ff-heading,var(--qp-ff-body,system-ui)),system-ui,sans-serif!important;letter-spacing:-.02em;color:#fff!important}
.qp-account-panel-text{margin:0 0 26px!important;font:400 1rem/1.6 var(--qp-ff-body,system-ui),system-ui,sans-serif!important;color:rgba(255,255,255,.9)!important}
.qp-account-benefits{list-style:none!important;margin:0!important;padding:0!important;display:flex;flex-direction:column;gap:14px}
.qp-account-benefits li{display:flex;align-items:center;gap:12px;margin:0!important;padding:0!important;font:600 .95rem/1.4 var(--qp-ff-body,system-ui),system-ui,sans-serif!important;color:#fff!important}
.qp-account-benefits li::before{display:none!important;content:none!important}
.qp-account-benefit-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px;width:38px;height:38px;border-radius:12px;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);color:#fff!important}
.qp-account-benefit-icon svg{width:20px;height:20px;stroke:#fff}
.qp-account-panel-foot{margin:auto 0 0!important;padding-top:28px;font:400 .9rem/1.5 var(--qp-ff-body,system-ui),system-ui,sans-serif!important;color:rgba(255,255,255,.82)!important}
.qp-account-panel-foot a{color:#fff!important;font-weight:700;text-decoration:underline;text-underline-offset:3px}

/* ---- Title and lead ------------------------------------------------- */
.qp-account-title{display:block;margin:0 0 6px;padding:0;border:0;text-align:left;font:800 clamp(1.25rem,1.05rem + .8vw,1.5rem)/1.22 var(--qp-ff-heading,var(--qp-ff-body,system-ui)),system-ui,sans-serif;letter-spacing:-.015em;color:var(--qp-col-heading,#0f172a)}
#qp_account .qp-account-title{border:0!important;padding:0!important}
.qp-account-title::before{content:none;display:none}
.qp-account-page .woocommerce-ResetPassword>p:first-child{margin:0 0 22px;font:400 .98rem/1.55 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-m,#64748b)}
.qp-account-lead{margin:0 0 24px;text-align:left;font:400 .98rem/1.55 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-m,#64748b)}

/* ---- Fields --------------------------------------------------------- */
#qp_account .form-row,.qp-account-page .woocommerce-ResetPassword .form-row{margin:0 0 16px!important}
#qp_account .form-row label,.qp-account-page .woocommerce-ResetPassword .form-row label{display:block;margin:0 0 6px;font:600 .88rem/1.4 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-d,#334155)}
#qp_account .form-row label .required{color:#b42318}
#qp_account .input-text,#qp_account select,.qp-account-page .woocommerce-ResetPassword .input-text{min-height:48px!important;height:48px;padding:0 14px!important;border-radius:12px!important;border-color:#cbd5e1!important}
#qp_account .input-text::placeholder{color:#94a3b8}
#qp_account .input-text:focus,#qp_account select:focus{border-color:var(--qp-col-accent,#0e6ba8)!important;box-shadow:0 0 0 3px rgba(14,107,168,.15)!important}
#qp_account .input-text:user-invalid,#qp_account select:user-invalid{border-color:#d92d20!important}
#qp_account .password-input .input-text{padding-right:44px!important}
#qp_account .qp-reg-select{display:block}
#qp_account select{appearance:none;-webkit-appearance:none;width:100%!important;padding-right:40px!important;font:inherit;font-size:1rem!important;color:var(--qp-col-heading,#0f172a)!important;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23475569' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") right 14px center/18px no-repeat!important;border:1px solid #cbd5e1!important;border-radius:12px!important;box-sizing:border-box}
#qp_account select:invalid,#qp_account select option[value=""]{color:#94a3b8}
#qp_account .qp-reg-label{display:block;margin:0 0 6px;font:600 .88rem/1.4 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-d,#334155)}
#qp_account .qp-reg-dob-parts{display:flex;gap:10px}
#qp_account .qp-reg-dob-parts input{flex:1 1 0;min-width:0;text-align:center!important;-moz-appearance:textfield}
#qp_account .qp-reg-dob-parts input:last-child{flex:1.5 1 0}
#qp_account .qp-reg-dob-parts input::-webkit-outer-spin-button,#qp_account .qp-reg-dob-parts input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}

/* Checkbox rows (Remember me, the agreements). */
#qp_account .form-row label:has(>input[type=checkbox]),#qp_account label.woocommerce-form__label-for-checkbox{display:flex;align-items:center;gap:10px;margin:0;font:500 .95rem/1.45 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-d,#334155);cursor:pointer}
#qp_account input[type=checkbox]{width:20px;height:20px;margin:0;flex:0 0 auto;accent-color:var(--qp-col-accent,#0e6ba8);border-radius:5px}
#qp_account label:has(>input[type=checkbox]) a{color:var(--qp-col-accent,#0e6ba8);font-weight:600}
#qp_account .qp-reg-agree{margin-bottom:10px!important}
#qp_account .qp-account-remember{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;margin:4px 0 22px!important}
#qp_account .qp-account-lost{font:600 .92rem/1.4 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-accent,#0e6ba8);text-decoration:none}
#qp_account .qp-account-lost:hover{text-decoration:underline}

/* WooCommerce's password strength meter, in the card's tone. */
#qp_account .woocommerce-password-strength{margin:8px 0 0;padding:6px 10px;border-radius:8px;font-size:.85rem;font-weight:600;text-align:center}
#qp_account .woocommerce-password-hint{display:block;margin:6px 0 0;font-size:.85rem;line-height:1.45;color:var(--qp-col-neutral-m,#64748b)}
#qp_account .woocommerce-privacy-policy-text p{margin:0;font:400 .9rem/1.5 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-m,#64748b)}
#qp_account .woocommerce-privacy-policy-text{margin:4px 0 14px!important;padding:12px 16px;border-radius:12px;background:#f6f9fc}
#qp_account .qp-reg-password-note{margin:0 0 16px;font:400 .95rem/1.5 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-d,#334155)}

/* ---- The registration form: two fields to a row --------------------- */
#qp_account .woocommerce-form-register{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px;align-items:start}
#qp_account .woocommerce-form-register>*{order:10;min-width:0}
#qp_account .woocommerce-form-register>.qp-reg-first_name{order:1}
#qp_account .woocommerce-form-register>.qp-reg-last_name{order:2}
#qp_account .woocommerce-form-register>.qp-reg-username{order:3;grid-column:1/-1}
#qp_account .woocommerce-form-register>.qp-reg-email{order:4}
#qp_account .woocommerce-form-register>.qp-reg-phone{order:5}
#qp_account .woocommerce-form-register>.qp-reg-password{order:6}
#qp_account .woocommerce-form-register>.qp-reg-password_confirm{order:7}
#qp_account .woocommerce-form-register>.qp-reg-password-note{order:6;grid-column:1/-1}
#qp_account .woocommerce-form-register>.qp-reg-dob{order:8}
#qp_account .woocommerce-form-register>.qp-reg-sex_at_birth{order:9}
#qp_account .woocommerce-form-register>.qp-reg-address_line_1{order:11}
#qp_account .woocommerce-form-register>.qp-reg-address_line_2{order:12}
#qp_account .woocommerce-form-register>.qp-reg-town{order:13}
#qp_account .woocommerce-form-register>.qp-reg-county{order:14}
#qp_account .woocommerce-form-register>.qp-reg-region{order:15}
#qp_account .woocommerce-form-register>.qp-reg-country{order:16}
#qp_account .woocommerce-form-register>.qp-reg-postcode{order:17}
#qp_account .woocommerce-form-register>.woocommerce-privacy-policy-text{order:20;grid-column:1/-1}
#qp_account .woocommerce-form-register>.qp-reg-agree{order:21;grid-column:1/-1}
#qp_account .woocommerce-form-register>.qp-account-submit{order:30;grid-column:1/-1}
#qp_account .woocommerce-form-register>input[type=hidden],#qp_account .woocommerce-form-register>wc-order-attribution-inputs{display:none}

/* ---- Buttons and the switch line ------------------------------------ */
#qp_account .qp-account-submit{display:flex!important;flex-direction:column;align-items:stretch;margin:14px 0 0!important}
#qp_account .qp-account-submit .button,.qp-account-page .woocommerce-ResetPassword .button{display:inline-flex!important;align-items:center;justify-content:center;width:100%!important;max-width:none;min-height:50px!important;margin:0!important;padding:12px 26px!important;border-radius:999px!important;border:0!important;font:700 1rem/1.2 var(--qp-ff-body,system-ui),system-ui,sans-serif!important;color:#fff!important;background:var(--qp-col-accent,#0e6ba8)!important;box-shadow:0 12px 24px -16px rgba(14,107,168,.9);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}
#qp_account .qp-account-submit .button:hover,.qp-account-page .woocommerce-ResetPassword .button:hover{background:var(--qp-col-accent-d,#0a3d62)!important;transform:translateY(-1px);box-shadow:0 16px 28px -16px rgba(14,107,168,.9)}
#qp_account .qp-account-submit .button:disabled,#qp_account .qp-account-submit .button.disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}
.qp-account-page .woocommerce-ResetPassword .form-row:last-child{display:flex;justify-content:flex-start;margin:20px 0 0!important}
.qp-account-page .woocommerce-ResetPassword .clear{display:none}
.qp-account-switch{margin:22px 0 0;padding-top:16px;border-top:1px solid #edf1f5;text-align:left;font:400 .95rem/1.5 var(--qp-ff-body,system-ui),system-ui,sans-serif;color:var(--qp-col-neutral-m,#64748b)}
.qp-account-switch a{color:var(--qp-col-accent,#0e6ba8);font-weight:700;text-decoration:none}
.qp-account-switch a:hover{text-decoration:underline}

/* ---- Phones ---------------------------------------------------------- */
@media (max-width:860px){
	.qp-account-grid,.qp-account-grid.is-wide{grid-template-columns:1fr}
	.qp-account-panel{padding:24px 22px 26px}
	.qp-account-panel-text{margin-bottom:0}
	.qp-account-benefits,.qp-account-panel-foot{display:none}
}
@media (max-width:700px){
	.qp-account-page .woocommerce-account .woocommerce,.qp-account-page .qp-content>.woocommerce,.qp-account-page .row>.woocommerce{padding:16px 12px 44px}
	.qp-account-grid{border-radius:20px}
	.qp-account-card{padding:22px 18px 26px}
	#qp_account .woocommerce-form-register{grid-template-columns:minmax(0,1fr)}
	#qp_account .woocommerce-form-register>*{grid-column:1/-1}
	#qp_account .qp-account-submit .button,.qp-account-page .woocommerce-ResetPassword .button{max-width:none}
}
@media (prefers-reduced-motion:reduce){
	#qp_account .qp-account-submit .button,.qp-account-page .woocommerce-ResetPassword .button{transition:none!important;transform:none!important}
}
