.hamlogin-card,.hamlogin-card *{box-sizing:border-box}.hamlogin-card{--hamlogin-ink:#211a2f;--hamlogin-muted:#746c80;--hamlogin-line:#e8e1ef;position:relative;isolation:isolate;overflow:hidden;width:100%;max-width:470px;margin:0 auto;border:1px solid color-mix(in srgb,var(--hamlogin-primary) 14%,#fff);border-radius:30px;background:linear-gradient(155deg,rgba(255,255,255,.98),rgba(250,248,255,.97) 58%,rgba(255,250,240,.96));box-shadow:0 35px 100px rgba(31,17,61,.16),inset 0 1px 0 rgba(255,255,255,.85);font-family:Tahoma,Arial,sans-serif;color:var(--hamlogin-ink);transition:transform .35s ease,box-shadow .35s ease}.hamlogin-card::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(125deg,rgba(255,255,255,.78),transparent 34%,rgba(255,255,255,.2));pointer-events:none}.hamlogin-card.is-login-success{transform:scale(.992);box-shadow:0 26px 80px color-mix(in srgb,var(--hamlogin-primary) 20%,transparent)}.hamlogin-card-content{position:relative;z-index:2;padding:36px}.hamlogin-orb{position:absolute;z-index:-1;border-radius:999px;filter:blur(5px);opacity:.38;pointer-events:none}.hamlogin-orb-one{width:220px;height:220px;top:-125px;right:-85px;background:radial-gradient(circle,var(--hamlogin-primary),transparent 68%)}.hamlogin-orb-two{width:185px;height:185px;bottom:-112px;left:-75px;background:radial-gradient(circle,var(--hamlogin-accent),transparent 70%)}.hamlogin-brand{display:flex;align-items:center;gap:15px;margin-bottom:26px}.hamlogin-brand img,.hamlogin-logo-mark{flex:0 0 auto;width:62px;height:62px;border:1px solid rgba(255,255,255,.8);border-radius:20px;object-fit:contain;background:rgba(255,255,255,.9);box-shadow:0 12px 32px rgba(65,35,105,.14)}.hamlogin-logo-mark{display:grid;place-items:center;background:linear-gradient(145deg,var(--hamlogin-primary),#8b5cf6);color:#fff;font-size:28px;font-weight:900;text-shadow:0 2px 10px rgba(0,0,0,.12)}.hamlogin-brand h2{margin:0 0 5px;font-size:23px;line-height:1.45;color:#1f1830}.hamlogin-brand p{margin:0;color:var(--hamlogin-muted);font-size:13px;line-height:1.85}.hamlogin-step{display:none;animation:hamloginIn .3s cubic-bezier(.2,.7,.25,1)}.hamlogin-step.is-active{display:block}@keyframes hamloginIn{from{opacity:0;transform:translateY(10px) scale(.995)}to{opacity:1;transform:none}}.hamlogin-step>label:not(.hamlogin-remember){display:block;margin-bottom:9px;font-size:13px;font-weight:800;color:#443b52}.hamlogin-input-wrap{position:relative}.hamlogin-input-wrap svg{position:absolute;right:16px;top:50%;z-index:2;width:20px;height:20px;transform:translateY(-50%);fill:none;stroke:#8a8195;stroke-width:1.7}.hamlogin-input-wrap input{width:100%;height:58px;padding:0 48px 0 15px!important;border:1px solid var(--hamlogin-line)!important;border-radius:17px!important;outline:0!important;background:rgba(255,255,255,.86)!important;color:#251d33!important;font:600 15px Tahoma,Arial,sans-serif!important;text-align:left;direction:ltr;box-shadow:0 8px 25px rgba(42,26,70,.055)!important;transition:border-color .2s,box-shadow .2s,transform .2s}.hamlogin-input-wrap input:focus{border-color:color-mix(in srgb,var(--hamlogin-primary) 70%,#fff)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--hamlogin-primary) 11%,transparent),0 12px 30px rgba(42,26,70,.07)!important;transform:translateY(-1px)}.hamlogin-primary-btn,.hamlogin-trigger,.hamlogin-open{appearance:none;border:0;cursor:pointer}.hamlogin-primary-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:56px;margin-top:16px;padding:0 20px;border-radius:17px;background:linear-gradient(135deg,var(--hamlogin-primary),color-mix(in srgb,var(--hamlogin-primary) 66%,#b794ff));color:#fff;font:800 15px Tahoma,Arial,sans-serif;box-shadow:0 14px 32px color-mix(in srgb,var(--hamlogin-primary) 30%,transparent),inset 0 1px 0 rgba(255,255,255,.25);transition:transform .2s,filter .2s,box-shadow .2s}.hamlogin-primary-btn:hover{transform:translateY(-2px);filter:saturate(1.08);box-shadow:0 18px 38px color-mix(in srgb,var(--hamlogin-primary) 34%,transparent)}.hamlogin-primary-btn:active{transform:translateY(0)}.hamlogin-primary-btn:disabled{opacity:.68;cursor:wait;transform:none}.hamlogin-primary-btn i{font-style:normal;font-size:20px}.hamlogin-primary-btn.is-loading i{animation:hamloginSpin .8s linear infinite}@keyframes hamloginSpin{to{transform:rotate(360deg)}}.hamlogin-methods{display:flex;align-items:center;gap:8px;margin-top:19px;color:#746c80}.hamlogin-methods span{padding:6px 10px;border:1px solid color-mix(in srgb,var(--hamlogin-primary) 11%,transparent);border-radius:20px;background:color-mix(in srgb,var(--hamlogin-primary) 8%,#fff);color:var(--hamlogin-primary);font-size:11px;font-weight:800}.hamlogin-methods small{margin-right:auto;font-size:11px}.hamlogin-alert{display:none;margin:-7px 0 15px;padding:12px 14px;border-radius:13px;font-size:12px;line-height:1.9}.hamlogin-alert.is-visible{display:block;animation:hamloginAlert .22s ease}@keyframes hamloginAlert{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.hamlogin-alert.is-error{border:1px solid #ffd2d7;background:#fff0f1;color:#b42338}.hamlogin-alert.is-success{border:1px solid #abefc6;background:#ecfdf3;color:#067647}.hamlogin-code-icon{display:flex;align-items:center;justify-content:center;gap:5px;width:52px;height:52px;margin:0 auto 11px;border:1px solid color-mix(in srgb,var(--hamlogin-primary) 14%,transparent);border-radius:18px;background:linear-gradient(145deg,color-mix(in srgb,var(--hamlogin-primary) 9%,#fff),#fff);box-shadow:0 10px 25px rgba(42,26,70,.08)}.hamlogin-code-icon span{width:6px;height:6px;border-radius:50%;background:var(--hamlogin-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--hamlogin-primary) 10%,transparent)}.hamlogin-step h3{text-align:center;margin:0 0 7px;font-size:20px}.hamlogin-step>p{text-align:center;margin:0 0 20px;color:var(--hamlogin-muted);font-size:12px;line-height:1.9}.hamlogin-destination{display:inline-block;margin:0 3px;color:var(--hamlogin-ink);font-weight:900;direction:ltr;unicode-bidi:isolate;font-family:Arial,Tahoma,sans-serif;letter-spacing:.4px}.hamlogin-otp-grid{position:relative;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));direction:ltr;gap:9px;width:100%;margin:4px auto 2px;cursor:text}.hamlogin-otp-input{position:absolute!important;z-index:4;inset:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;border:0!important;outline:0!important;opacity:.01!important;background:transparent!important;color:transparent!important;caret-color:transparent!important;font-size:16px!important;letter-spacing:30px!important;direction:ltr!important;box-shadow:none!important;cursor:text}.hamlogin-otp-slot{position:relative;display:grid;place-items:center;aspect-ratio:1/1;min-height:57px;border:1.5px solid #e2dbe9;border-radius:15px;background:rgba(255,255,255,.88);color:#231a31;font:900 24px/1 Arial,Tahoma,sans-serif;box-shadow:0 8px 22px rgba(42,26,70,.05);transition:border-color .18s,box-shadow .18s,transform .18s,background .18s}.hamlogin-otp-slot::after{content:"";position:absolute;right:50%;bottom:10px;width:0;height:2px;border-radius:10px;background:var(--hamlogin-primary);transform:translateX(50%);transition:width .18s}.hamlogin-otp-slot.is-filled{border-color:color-mix(in srgb,var(--hamlogin-primary) 56%,#fff);background:linear-gradient(145deg,#fff,color-mix(in srgb,var(--hamlogin-primary) 5%,#fff));box-shadow:0 10px 25px color-mix(in srgb,var(--hamlogin-primary) 10%,transparent)}.hamlogin-otp-slot.is-filled::after{width:18px}.hamlogin-otp-slot.is-current,.hamlogin-otp-grid.is-focused .hamlogin-otp-slot.is-current{border-color:var(--hamlogin-primary);box-shadow:0 0 0 4px color-mix(in srgb,var(--hamlogin-primary) 10%,transparent),0 10px 24px rgba(42,26,70,.07);transform:translateY(-2px)}.hamlogin-otp-grid.is-confirming .hamlogin-otp-slot{animation:hamloginSlotPulse .46s ease both}.hamlogin-otp-grid.is-confirming .hamlogin-otp-slot:nth-of-type(1){animation-delay:0s}.hamlogin-otp-grid.is-confirming .hamlogin-otp-slot:nth-of-type(2){animation-delay:.08s}.hamlogin-otp-grid.is-confirming .hamlogin-otp-slot:nth-of-type(3){animation-delay:.16s}.hamlogin-otp-grid.is-confirming .hamlogin-otp-slot:nth-of-type(4){animation-delay:.24s}.hamlogin-otp-grid.is-confirming .hamlogin-otp-slot:nth-of-type(5){animation-delay:.32s}.hamlogin-otp-grid.is-confirming .hamlogin-otp-slot:nth-of-type(6){animation-delay:.40s}@keyframes hamloginSlotPulse{0%{border-color:color-mix(in srgb,var(--hamlogin-primary) 55%,#fff);transform:translateY(0)}45%{border-color:var(--hamlogin-primary);box-shadow:0 0 0 5px color-mix(in srgb,var(--hamlogin-primary) 13%,transparent),0 12px 28px color-mix(in srgb,var(--hamlogin-primary) 15%,transparent);transform:translateY(-4px)}100%{border-color:var(--hamlogin-primary);box-shadow:0 0 0 2px color-mix(in srgb,var(--hamlogin-primary) 8%,transparent);transform:translateY(0)}}.hamlogin-otp-grid.is-error{animation:hamloginShake .36s ease}@keyframes hamloginShake{20%,60%{transform:translateX(-5px)}40%,80%{transform:translateX(5px)}}.hamlogin-remember{display:flex;align-items:center;gap:8px;margin-top:15px;color:#635b6e;font-size:12px}.hamlogin-remember input{accent-color:var(--hamlogin-primary)}.hamlogin-resend{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:15px;font-size:12px}.hamlogin-resend button,.hamlogin-back{border:0;background:none;color:var(--hamlogin-primary);cursor:pointer;font:800 12px Tahoma,Arial,sans-serif}.hamlogin-resend button:disabled{color:#9b94a4;cursor:not-allowed}.hamlogin-back{display:block;margin:14px auto 0}.hamlogin-terms{margin:22px 0 0!important;color:#9a93a3!important;font-size:10px!important;text-align:center!important}.hamlogin-trigger{padding:12px 18px;border-radius:14px;background:var(--hamlogin-primary);color:#fff;font-weight:800}.hamlogin-modal{position:fixed;z-index:999999;inset:0;display:grid;place-items:center;padding:20px;visibility:hidden;opacity:0;transition:.25s}.hamlogin-modal[aria-hidden="false"]{visibility:visible;opacity:1}.hamlogin-modal-backdrop{position:absolute;inset:0;background:rgba(20,12,32,.64);backdrop-filter:blur(10px)}.hamlogin-modal-dialog{position:relative;z-index:2;width:100%;max-width:470px;transform:translateY(18px) scale(.975);transition:.25s cubic-bezier(.2,.8,.25,1)}.hamlogin-modal[aria-hidden="false"] .hamlogin-modal-dialog{transform:none}.hamlogin-modal-close{position:absolute;z-index:8;top:14px;left:14px;width:36px;height:36px;border:1px solid rgba(255,255,255,.9);border-radius:50%;background:rgba(255,255,255,.92);color:#40364b;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 6px 18px rgba(0,0,0,.09)}html.hamlogin-modal-open{overflow:hidden}.hamlogin-wp-login-hint{margin-top:14px!important}.hamlogin-wp-login-hint button,.hamlogin-woo-hint button{width:100%;padding:12px;border:1px solid var(--hamlogin-primary);border-radius:11px;background:#fff;color:var(--hamlogin-primary);font-weight:800;cursor:pointer}.hamlogin-woo-hint{display:grid;gap:5px;margin-bottom:18px;padding:15px;border-radius:14px;background:color-mix(in srgb,var(--hamlogin-primary) 6%,#fff);text-align:center}.hamlogin-woo-hint span{font-size:11px;color:#766f80}.hamlogin-logged-in{padding:18px;border-radius:14px;background:#ecfdf3;color:#067647}.hamlogin-mode-tabs{display:flex;gap:7px;margin:-4px 0 21px;padding:5px;border:1px solid rgba(109,40,217,.05);border-radius:15px;background:#f1edf6}.hamlogin-mode-tabs button{flex:1;min-height:40px;border:0;border-radius:11px;background:transparent;color:#756d82;font:800 12px Tahoma,Arial,sans-serif;cursor:pointer;transition:.18s}.hamlogin-mode-tabs button.is-active{background:#fff;color:var(--hamlogin-primary);box-shadow:0 6px 18px rgba(42,26,70,.09)}.hamlogin-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important}.hamlogin-password-box{max-width:560px;margin:20px auto;padding:24px;border:1px solid #e4deeb;border-radius:18px;background:#fff;box-shadow:0 12px 36px rgba(42,26,70,.08);font-family:Tahoma,Arial,sans-serif}.hamlogin-password-box h3{margin:0 0 18px}.hamlogin-password-box label{display:block;margin:0 0 14px;font-weight:700}.hamlogin-password-box input{display:block;width:100%;min-height:48px;margin-top:7px;padding:8px 12px;border:1px solid #e4deeb;border-radius:12px;box-sizing:border-box}.hamlogin-password-notice{margin-bottom:14px;padding:11px 13px;border-radius:10px}.hamlogin-password-notice.is-success{background:#ecfdf3;color:#067647}.hamlogin-password-notice.is-error{background:#fff0f1;color:#b42338}.screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:520px){.hamlogin-card{border-radius:24px}.hamlogin-card-content{padding:29px 21px}.hamlogin-brand{margin-bottom:22px}.hamlogin-brand h2{font-size:20px}.hamlogin-brand img,.hamlogin-logo-mark{width:56px;height:56px;border-radius:18px}.hamlogin-modal{padding:10px}.hamlogin-modal-dialog{max-height:calc(100vh - 20px);overflow:auto;border-radius:24px}.hamlogin-methods small{display:none}.hamlogin-otp-grid{gap:6px}.hamlogin-otp-slot{min-height:49px;border-radius:12px;font-size:21px}}

/* Homlog 1.5: locked login modal and full WooCommerce login replacement. */
.hamlogin-modal.is-locked .hamlogin-modal-backdrop{cursor:default}
.hamlogin-modal.is-locked .hamlogin-modal-close{display:none!important}
.hamlogin-woo-replacement{width:min(100%,500px);margin:24px auto 34px}
body.hamlogin-replace-woo-login #customer_login{display:none!important}
body.hamlogin-replace-woo-login .woocommerce-notices-wrapper{width:min(100%,500px);margin-right:auto;margin-left:auto}

/* Homlog 1.7: full WordPress registration, recovery, account icon and commerce entry points. */
.hamlogin-mode-tabs{grid-template-columns:repeat(auto-fit,minmax(90px,1fr))!important}
.hamlogin-step>h3{margin:0 0 8px;font-size:19px;color:#281f31}
.hamlogin-step-description{margin:0 0 18px!important;color:#746a7d!important;line-height:1.85!important}
.hamlogin-step label b{color:#c1284b}.hamlogin-step label small{font-weight:400;color:#887f8f}
.hamlogin-text-action{display:block;width:100%;margin:10px 0 0;padding:6px;border:0;background:transparent;color:var(--hamlogin-primary);font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.hamlogin-account-icon{display:inline-flex;align-items:center;justify-content:center;width:var(--hamlogin-account-size,48px);height:var(--hamlogin-account-size,48px);padding:0;border:1px solid rgba(109,40,217,.18);border-radius:50%;background:#fff;color:var(--hamlogin-primary);box-shadow:0 8px 24px rgba(36,19,61,.12);cursor:pointer;text-decoration:none;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;box-sizing:border-box}
.hamlogin-account-icon:hover{transform:translateY(-2px);border-color:var(--hamlogin-primary);box-shadow:0 12px 30px rgba(36,19,61,.18)}
.hamlogin-account-icon svg{width:55%;height:55%;fill:currentColor}.hamlogin-account-icon.is-logged-in{color:#166534;border-color:rgba(22,101,52,.22)}
.hamlogin-floating-account{position:fixed;z-index:99990}.hamlogin-floating-account.is-bottom-left{left:22px;bottom:22px}.hamlogin-floating-account.is-bottom-right{right:22px;bottom:22px}.hamlogin-floating-account.is-top-left{left:22px;top:22px}.hamlogin-floating-account.is-top-right{right:22px;top:22px}
.hamlogin-menu-account-link{display:inline-flex!important;align-items:center;justify-content:center}.hamlogin-menu-account-icon{display:inline-flex;width:24px;height:24px;color:currentColor}.hamlogin-menu-account-icon svg{width:100%;height:100%;fill:currentColor}
.hamlogin-woo-account-prompt{display:flex;align-items:center;gap:13px;margin:0 0 22px;padding:15px 17px;border:1px solid #e4d9f1;border-radius:16px;background:linear-gradient(135deg,#fff,#faf7ff);box-shadow:0 8px 24px rgba(36,19,61,.06)}
.hamlogin-woo-account-prompt>svg{flex:0 0 28px;width:28px;height:28px;fill:var(--hamlogin-primary)}.hamlogin-woo-account-prompt>span{flex:1;line-height:1.7}.hamlogin-woo-account-prompt>button{border:0;border-radius:10px;background:var(--hamlogin-primary);color:#fff;padding:10px 15px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap}
body.hamlogin-replace-woo-checkout-login .woocommerce-form-login-toggle,body.hamlogin-replace-woo-checkout-login form.woocommerce-form-login{display:none!important}
.hamlogin-logged-in{display:flex;align-items:center;gap:12px;padding:14px;border:1px solid #e8e0ef;border-radius:14px;background:#fff}
@media(max-width:520px){.hamlogin-woo-account-prompt{align-items:flex-start;flex-wrap:wrap}.hamlogin-woo-account-prompt>span{min-width:calc(100% - 50px)}.hamlogin-woo-account-prompt>button{width:100%}.hamlogin-floating-account.is-bottom-left{left:14px;bottom:14px}.hamlogin-floating-account.is-bottom-right{right:14px;bottom:14px}}
.hamlogin-trigger[href]{display:inline-flex;align-items:center;justify-content:center;text-decoration:none}
.hamlogin-wp-login-hint a,.hamlogin-woo-hint a{display:block;width:100%;box-sizing:border-box;padding:12px;border:1px solid var(--hamlogin-primary);border-radius:11px;background:#fff;color:var(--hamlogin-primary);font-weight:800;text-align:center;text-decoration:none}
.hamlogin-woo-account-prompt>a{border:0;border-radius:10px;background:var(--hamlogin-primary);color:#fff;padding:10px 15px;font:inherit;font-weight:700;cursor:pointer;white-space:nowrap;text-decoration:none}
@media(max-width:520px){.hamlogin-woo-account-prompt>a{width:100%;box-sizing:border-box;text-align:center}}

/* Homlog 1.7.1: mobile-first login, WebOTP status and registration details. */
.hamlogin-card,
.hamlogin-card-content,
.hamlogin-step,
.hamlogin-input-wrap,
.hamlogin-mode-tabs,
.hamlogin-modal-dialog{min-width:0;max-width:100%}
.hamlogin-card input,
.hamlogin-card button,
.hamlogin-card select,
.hamlogin-card textarea{max-width:100%;box-sizing:border-box}
.hamlogin-step-badge{display:table;margin:0 auto 10px;padding:5px 10px;border-radius:999px;background:color-mix(in srgb,var(--hamlogin-primary) 9%,#fff);color:var(--hamlogin-primary);font-size:10px;font-weight:900}
.hamlogin-field-help{margin:-2px 2px 13px!important;text-align:right!important;color:#867d8f!important;font-size:10px!important;line-height:1.7!important}
.hamlogin-otp-autofill{margin:9px 0 0!important;text-align:center!important;color:#81788a!important;font-size:10px!important;line-height:1.75!important}
.hamlogin-otp-autofill.is-listening{color:var(--hamlogin-primary)!important;font-weight:700}
.hamlogin-otp-autofill.is-listening::before{content:"";display:inline-block;width:7px;height:7px;margin-left:6px;border-radius:50%;background:currentColor;vertical-align:middle;animation:hamloginListening 1.1s ease-in-out infinite}
@keyframes hamloginListening{0%,100%{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.2)}}
.hamlogin-register-step .hamlogin-step-description bdi{font-weight:900;color:var(--hamlogin-primary);unicode-bidi:isolate}
.hamlogin-mode-tabs{display:grid!important;grid-template-columns:none!important;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:stretch}
.hamlogin-mode-tabs button{min-width:0;white-space:normal;line-height:1.55;padding:6px 5px}
.hamlogin-otp-grid{max-width:100%;grid-auto-columns:minmax(0,1fr)}
.hamlogin-otp-slot{min-width:0}

@supports(height:100dvh){
  .hamlogin-modal{min-height:100dvh}
  .hamlogin-modal-dialog{max-height:calc(100dvh - 24px)}
}

@media(max-width:640px){
  html.hamlogin-modal-open,html.hamlogin-modal-open body{overscroll-behavior:none}
  .hamlogin-modal{display:flex;align-items:center;justify-content:center;padding:max(8px,env(safe-area-inset-top)) max(8px,env(safe-area-inset-right)) max(8px,env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left));overflow:hidden}
  .hamlogin-modal-dialog{width:100%;max-width:100%;max-height:calc(100vh - 16px);overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;border-radius:22px}
  .hamlogin-card{width:100%;max-width:none;margin:0;border-radius:22px;overflow:hidden}
  .hamlogin-card-content{padding:clamp(19px,6vw,28px)}
  .hamlogin-brand{gap:11px;margin-bottom:19px}
  .hamlogin-brand img,.hamlogin-logo-mark{width:52px;height:52px;border-radius:16px}
  .hamlogin-brand h2{font-size:clamp(18px,5.7vw,21px)}
  .hamlogin-brand p{font-size:11px;line-height:1.65}
  .hamlogin-mode-tabs{gap:4px;margin-bottom:17px;padding:4px;border-radius:13px}
  .hamlogin-mode-tabs button{min-height:38px;border-radius:9px;font-size:clamp(10px,3vw,12px)}
  .hamlogin-step>h3,.hamlogin-step h3{font-size:clamp(18px,5.3vw,20px);line-height:1.55}
  .hamlogin-step-description,.hamlogin-step>p{font-size:11px!important;line-height:1.75!important}
  .hamlogin-step>label:not(.hamlogin-remember){font-size:12px}
  .hamlogin-input-wrap input{height:52px!important;padding-right:14px!important;border-radius:14px!important;font-size:16px!important}
  .hamlogin-input-wrap svg + input{padding-right:43px!important}
  .hamlogin-primary-btn{min-height:52px;margin-top:14px;border-radius:14px;font-size:14px}
  .hamlogin-methods{flex-wrap:wrap;margin-top:14px}
  .hamlogin-methods small{flex-basis:100%;margin-right:0}
  .hamlogin-code-icon{width:46px;height:46px;border-radius:15px}
  .hamlogin-otp-grid{gap:clamp(3px,1.6vw,7px);margin-top:7px}
  .hamlogin-otp-slot{aspect-ratio:1/1;min-height:0!important;border-radius:clamp(8px,3vw,13px);font-size:clamp(17px,6vw,23px)}
  .hamlogin-otp-slot::after{bottom:7px}
  .hamlogin-remember{align-items:flex-start;line-height:1.7}
  .hamlogin-alert{margin-top:-3px;padding:10px 11px;font-size:11px}
  .hamlogin-modal-close{top:10px;left:10px;width:34px;height:34px;background:#fff}
}

@media(max-width:380px){
  .hamlogin-card{border-radius:18px}
  .hamlogin-card-content{padding:18px 15px}
  .hamlogin-brand img,.hamlogin-logo-mark{width:46px;height:46px;border-radius:14px}
  .hamlogin-brand p{display:none}
  .hamlogin-mode-tabs button{padding-inline:2px;font-size:10px}
  .hamlogin-otp-grid{gap:3px}
  .hamlogin-otp-slot{border-radius:8px;font-size:18px}
  .hamlogin-resend{flex-wrap:wrap;row-gap:3px}
}

@media(max-height:620px) and (orientation:landscape){
  .hamlogin-modal{align-items:flex-start}
  .hamlogin-modal-dialog{max-height:calc(100dvh - 12px)}
  .hamlogin-card-content{padding-top:18px;padding-bottom:18px}
  .hamlogin-brand{margin-bottom:12px}
  .hamlogin-brand img,.hamlogin-logo-mark{width:44px;height:44px}
  .hamlogin-step>p{margin-bottom:12px}
}


/* Homlog 1.8: WoodMart bridge, strict WooCommerce replacement and customizable account button. */
.hamlogin-card{
  --hamlogin-ink:var(--hamlogin-card-text,#211a2f);
  border-radius:var(--hamlogin-card-radius,30px);
  background-color:var(--hamlogin-card-bg,#fff);
  background-image:var(--hamlogin-card-image,none),linear-gradient(155deg,color-mix(in srgb,var(--hamlogin-card-bg,#fff) 98%,#fff),color-mix(in srgb,var(--hamlogin-card-bg,#fff) 94%,var(--hamlogin-primary)) 58%,color-mix(in srgb,var(--hamlogin-card-bg,#fff) 95%,var(--hamlogin-accent)));
  background-size:cover,auto;
  background-position:center,center;
  color:var(--hamlogin-card-text,#211a2f)
}
.hamlogin-brand h2,.hamlogin-step>h3,.hamlogin-step h3{color:var(--hamlogin-card-text,#211a2f)}
.hamlogin-input-wrap input{background:color-mix(in srgb,var(--hamlogin-input-bg,#fff) 94%,transparent)!important;color:var(--hamlogin-card-text,#211a2f)!important}
.hamlogin-primary-btn{color:var(--hamlogin-button-text,#fff)}
.hamlogin-modal-backdrop{background:color-mix(in srgb,var(--hamlogin-modal-backdrop,#140c20) 88%,transparent)}

.hamlogin-account-button{
  display:inline-flex!important;align-items:center;justify-content:center;gap:8px;min-height:42px;max-width:100%;padding:9px 15px!important;
  border:1px solid var(--hamlogin-account-border,var(--hamlogin-primary))!important;border-radius:var(--hamlogin-account-radius,14px)!important;
  background:var(--hamlogin-account-bg,var(--hamlogin-primary))!important;color:var(--hamlogin-account-text,#fff)!important;
  box-shadow:0 8px 22px color-mix(in srgb,var(--hamlogin-account-bg,var(--hamlogin-primary)) 23%,transparent)!important;
  font:800 13px/1.5 Tahoma,Arial,sans-serif!important;text-decoration:none!important;white-space:nowrap;cursor:pointer;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;box-sizing:border-box
}
.hamlogin-account-button:hover{color:var(--hamlogin-account-text,#fff)!important;transform:translateY(-1px);filter:saturate(1.08);box-shadow:0 11px 27px color-mix(in srgb,var(--hamlogin-account-bg,var(--hamlogin-primary)) 30%,transparent)!important}
.hamlogin-account-button-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 22px;width:22px;height:22px}
.hamlogin-account-button-icon svg{display:block;width:100%;height:100%;fill:currentColor}
.hamlogin-account-button-text{display:block;overflow:hidden;text-overflow:ellipsis;max-width:180px}
.hamlogin-account-button.is-logged-in{filter:saturate(.94)}

.hamlogin-woodmart-account-host{display:flex!important;align-items:center!important;justify-content:center!important}
.hamlogin-woodmart-account-host>.hamlogin-account-button,.hamlogin-woodmart-account-host .hamlogin-account-button{width:auto!important;height:auto!important;margin:0!important}
.hamlogin-woodmart-account-host .wd-tools-icon,.hamlogin-woodmart-account-host .wd-tools-text,.hamlogin-woodmart-account-host .wd-tools-count{display:none!important}
.hamlogin-woodmart-account-host .wd-dropdown-my-account,.hamlogin-woodmart-account-host .woodmart-my-account-sidebar,.hamlogin-woodmart-account-host .login-dropdown-inner{display:none!important}
.hamlogin-duplicate-account-hidden,.hamlogin-native-login-hidden{display:none!important}

/* The replacement is printed immediately before WooCommerce's native customer_login block. */
.hamlogin-woo-replacement~#customer_login,
.hamlogin-woo-replacement~form.woocommerce-form-login,
.hamlogin-woo-replacement~form.woocommerce-form-register,
body.hamlogin-replace-woo-login #customer_login,
body.hamlogin-replace-woo-login form.woocommerce-form-login.login,
body.hamlogin-replace-woo-login form.woocommerce-form-register.register{display:none!important}
body:has(.hamlogin-woo-replacement) .main-page-wrapper{background-color:var(--hamlogin-page-bg,#f7f5fb)}
body:has(.hamlogin-woo-replacement) .hamlogin-woo-replacement{position:relative;z-index:2}

@media(max-width:768px){
  .hamlogin-account-button{min-height:40px;padding:8px 12px!important;font-size:12px!important}
  .hamlogin-account-button-text{max-width:130px}
}
body.hamlogin-woodmart-account-enabled .wd-header-my-account .wd-dropdown-my-account,
body.hamlogin-woodmart-account-enabled .wd-header-my-account .login-dropdown-inner{display:none!important}

/* Homlog 2.0: boxed responsive login, theme presets and account button variants. */
.hamlogin-card{
  width:min(100%,var(--hamlogin-card-width,460px));
  max-width:var(--hamlogin-card-width,460px);
  border-radius:var(--hamlogin-card-radius,30px);
}
.hamlogin-card-content{padding:var(--hamlogin-card-padding,34px)}
.hamlogin-login-replacement{width:100%;max-width:var(--hamlogin-card-width,460px);margin-inline:auto}
.hamlogin-modal-dialog{width:min(100%,var(--hamlogin-card-width,460px));max-width:var(--hamlogin-card-width,460px)}
.hamlogin-modal-dialog>.hamlogin-card{width:100%}
.hamlogin-shadow-none{box-shadow:none!important}
.hamlogin-shadow-soft{box-shadow:0 24px 70px rgba(31,17,61,.14),inset 0 1px 0 rgba(255,255,255,.82)}
.hamlogin-shadow-strong{box-shadow:0 38px 110px rgba(31,17,61,.24),inset 0 1px 0 rgba(255,255,255,.9)}

.hamlogin-theme-minimal{background:var(--hamlogin-card-bg,#fff);background-image:none;border:1px solid color-mix(in srgb,var(--hamlogin-card-text,#211a2f) 12%,transparent)}
.hamlogin-theme-minimal::before,.hamlogin-theme-minimal .hamlogin-orb{display:none}
.hamlogin-theme-minimal .hamlogin-logo-mark{background:var(--hamlogin-primary)}
.hamlogin-theme-minimal .hamlogin-input-wrap input{box-shadow:none!important}
.hamlogin-theme-minimal .hamlogin-primary-btn{background:var(--hamlogin-primary);box-shadow:none}

.hamlogin-theme-glass{
  background:color-mix(in srgb,var(--hamlogin-card-bg,#fff) 72%,transparent);
  background-image:var(--hamlogin-card-image,none),linear-gradient(145deg,rgba(255,255,255,.72),rgba(255,255,255,.42));
  border-color:rgba(255,255,255,.7);
  -webkit-backdrop-filter:blur(24px) saturate(1.25);
  backdrop-filter:blur(24px) saturate(1.25)
}
.hamlogin-theme-glass .hamlogin-input-wrap input,.hamlogin-theme-glass .hamlogin-mode-tabs{background:rgba(255,255,255,.68)!important}

.hamlogin-theme-dark{
  --hamlogin-ink:#f8f7fb;
  --hamlogin-muted:#b8b0c5;
  --hamlogin-line:rgba(255,255,255,.14);
  background:#17121f;
  background-image:var(--hamlogin-card-image,none),radial-gradient(circle at 90% 0,color-mix(in srgb,var(--hamlogin-primary) 40%,transparent),transparent 42%),linear-gradient(155deg,#201729,#120f18);
  border-color:rgba(255,255,255,.12);
  color:#f8f7fb
}
.hamlogin-theme-dark .hamlogin-brand h2,.hamlogin-theme-dark .hamlogin-step h3,.hamlogin-theme-dark .hamlogin-step>label:not(.hamlogin-remember){color:#fff}
.hamlogin-theme-dark .hamlogin-brand p,.hamlogin-theme-dark .hamlogin-step>p,.hamlogin-theme-dark .hamlogin-remember,.hamlogin-theme-dark .hamlogin-methods{color:#b8b0c5}
.hamlogin-theme-dark .hamlogin-input-wrap input{background:rgba(255,255,255,.08)!important;color:#fff!important;border-color:rgba(255,255,255,.15)!important}
.hamlogin-theme-dark .hamlogin-input-wrap input::placeholder{color:#93899f}
.hamlogin-theme-dark .hamlogin-mode-tabs{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.08)}
.hamlogin-theme-dark .hamlogin-mode-tabs button{color:#aaa1b7}
.hamlogin-theme-dark .hamlogin-mode-tabs button.is-active{background:rgba(255,255,255,.13);color:#fff}
.hamlogin-theme-dark .hamlogin-otp-slot{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16);color:#fff}
.hamlogin-theme-dark .hamlogin-logo-mark,.hamlogin-theme-dark .hamlogin-brand img{border-color:rgba(255,255,255,.18);background:rgba(255,255,255,.1)}

.hamlogin-theme-soft{
  background:var(--hamlogin-card-bg,#fff);
  background-image:var(--hamlogin-card-image,none),linear-gradient(150deg,color-mix(in srgb,var(--hamlogin-primary) 8%,#fff),#fff 50%,color-mix(in srgb,var(--hamlogin-accent) 10%,#fff));
  border-color:color-mix(in srgb,var(--hamlogin-primary) 12%,#fff)
}
.hamlogin-theme-soft .hamlogin-primary-btn{box-shadow:0 11px 24px color-mix(in srgb,var(--hamlogin-primary) 20%,transparent)}

.hamlogin-account-button.is-style-outline{background:transparent!important;color:var(--hamlogin-account-border,var(--hamlogin-primary))!important;box-shadow:none!important}
.hamlogin-account-button.is-style-outline:hover{background:color-mix(in srgb,var(--hamlogin-account-border,var(--hamlogin-primary)) 7%,transparent)!important}
.hamlogin-account-button.is-style-soft{background:color-mix(in srgb,var(--hamlogin-account-bg,var(--hamlogin-primary)) 12%,transparent)!important;color:var(--hamlogin-account-bg,var(--hamlogin-primary))!important;border-color:color-mix(in srgb,var(--hamlogin-account-border,var(--hamlogin-primary)) 28%,transparent)!important;box-shadow:none!important}
.hamlogin-account-button.is-style-ghost{background:transparent!important;color:var(--hamlogin-account-bg,var(--hamlogin-primary))!important;border-color:transparent!important;box-shadow:none!important}

.hamlogin-otp-input{opacity:1!important;color:transparent!important;-webkit-text-fill-color:transparent!important;caret-color:transparent!important;background:transparent!important}
.hamlogin-otp-input:-webkit-autofill{-webkit-text-fill-color:transparent!important;transition:background-color 9999s ease-out 0s!important}

@media(max-width:520px){
  .hamlogin-card{width:100%;max-width:var(--hamlogin-card-width,460px);border-radius:min(var(--hamlogin-card-radius,30px),24px)}
  .hamlogin-card-content{padding:clamp(20px,6vw,var(--hamlogin-card-padding,34px))}
  .hamlogin-modal{padding:max(10px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(10px,env(safe-area-inset-left))}
  .hamlogin-modal-dialog{width:min(100%,var(--hamlogin-card-width,460px));max-height:calc(100dvh - 20px);overflow:auto}
}

/* Homlog 2.0.2: explicit exit control on every login card. */
.hamlogin-card-exit{
  position:absolute;
  top:14px;
  left:14px;
  z-index:12;
  display:grid;
  place-items:center;
  width:38px;
  height:38px;
  border:1px solid color-mix(in srgb,var(--hamlogin-card-text,#211a2f) 12%,transparent);
  border-radius:50%;
  background:color-mix(in srgb,var(--hamlogin-card-bg,#fff) 88%,transparent);
  color:var(--hamlogin-card-text,#211a2f);
  font:400 27px/1 Arial,Tahoma,sans-serif;
  text-decoration:none;
  box-shadow:0 8px 22px rgba(31,17,61,.09);
  -webkit-backdrop-filter:blur(8px);
  backdrop-filter:blur(8px);
  transition:transform .18s ease,background .18s ease,border-color .18s ease,box-shadow .18s ease
}
.hamlogin-card-exit:hover{
  transform:translateY(-1px) rotate(4deg);
  border-color:color-mix(in srgb,var(--hamlogin-primary) 38%,transparent);
  background:color-mix(in srgb,var(--hamlogin-primary) 8%,var(--hamlogin-card-bg,#fff));
  color:var(--hamlogin-primary);
  box-shadow:0 11px 26px rgba(31,17,61,.13)
}
.hamlogin-card-exit:focus-visible{
  outline:3px solid color-mix(in srgb,var(--hamlogin-primary) 25%,transparent);
  outline-offset:2px
}
@media(max-width:520px){
  .hamlogin-card-exit{top:10px;left:10px;width:34px;height:34px;font-size:24px}
}

/* WooCommerce/Woodmart native headings left outside the hidden login form. */
body.hamlogin-replace-woo-login .hamlogin-hidden-woo-native,
body.hamlogin-replace-woo-login .hamlogin-hidden-woo-title,
body.hamlogin-replace-woo-login #customer_login,
body.hamlogin-replace-woo-login .wd-my-account-login > h2,
body.hamlogin-replace-woo-login .woocommerce > h2,
body.hamlogin-replace-woo-login .woocommerce-account-title,
body.hamlogin-replace-woo-login .entry-content > h1.entry-title,
body.hamlogin-replace-woo-login .entry-content > h2.entry-title{display:none!important}
