/* Listnova 0.27.6 — isolated login popup.
 * Every component rule is scoped under .ln-auth-modal so enabling popup login
 * cannot alter listing, archive, Elementor or account layouts. */
body.ln-auth-modal-open{overscroll-behavior:none}
.ln-auth-modal[hidden]{display:none!important}
.ln-auth-modal{position:fixed;inset:0;z-index:999999;display:grid;place-items:center;padding:24px;opacity:0;transition:opacity .18s ease;font-family:inherit;color:var(--ln-ink,var(--ln-brand,var(--ln-front-brand-text,#123f35)));overscroll-behavior:contain;contain:layout paint style}
.ln-auth-modal.is-open{opacity:1}
.ln-auth-modal__backdrop{position:absolute;inset:0;width:100%;height:100%;margin:0;padding:0;border:0;border-radius:0;background:rgba(8,24,20,.58);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);cursor:default}
.ln-auth-modal__dialog{position:relative;z-index:1;width:min(100%,520px);max-height:min(780px,calc(100vh - 48px));overflow:auto;padding:30px;border:1px solid rgba(223,231,227,.92);border-radius:28px;background:var(--ln-front-surface-glass,rgba(255,255,255,.985));box-shadow:0 32px 100px rgba(6,31,25,.3);transform:translateY(12px) scale(.985);transition:transform .18s ease;outline:0}
.ln-auth-modal.is-open .ln-auth-modal__dialog{transform:translateY(0) scale(1)}
.ln-auth-modal__close{position:absolute;top:18px;right:18px;display:grid;width:40px;height:40px;place-items:center;padding:0;border:1px solid var(--ln-front-border,#e2e9e6);border-radius:13px;background:var(--ln-front-surface,#f7faf8);color:var(--ln-ink,var(--ln-brand,var(--ln-front-brand-text,#123f35)));font:inherit;font-size:1.2rem;line-height:1;cursor:pointer;transition:background .16s ease,transform .16s ease}
.ln-auth-modal__close:hover{background:var(--ln-front-surface-soft,#eef4f1);transform:translateY(-1px)}
.ln-auth-modal__intro{display:grid;gap:7px;padding-right:48px;margin-bottom:22px}
.ln-auth-modal .ln-auth-icon{display:grid;width:48px;height:48px;place-items:center;margin:0 0 5px;border-radius:15px;background:var(--ln-front-surface-soft,#edf4f1);color:var(--ln-ink,var(--ln-brand,var(--ln-front-brand-text,#123f35)));box-shadow:inset 0 0 0 1px #e3ece8;font-size:1.2rem}
.ln-auth-modal .ln-section-kicker{display:block;color:var(--ln-front-muted,#73837d);font-size:.65rem;font-weight:900;letter-spacing:.15em;line-height:1.2;text-transform:uppercase}
.ln-auth-modal__intro h2{margin:0;color:var(--ln-ink,var(--ln-brand,var(--ln-front-brand-text,#123f35)));font-size:clamp(2rem,5vw,3rem);line-height:.96;letter-spacing:-.055em}
.ln-auth-modal__intro p{margin:4px 0 0;color:var(--ln-muted,var(--ln-front-muted,#687873));font-size:.86rem;line-height:1.6}
.ln-auth-modal .ln-auth-notice{display:flex;align-items:flex-start;gap:10px;margin:0 0 18px;padding:13px 14px;border:1px solid transparent;border-radius:14px;font-size:.8rem;font-weight:760;line-height:1.5}
.ln-auth-modal .ln-auth-notice.is-error{border-color:var(--ln-front-border,#f0d7d3);background:var(--ln-front-surface-soft,#fff5f3);color:#8f4038}
.ln-auth-modal .ln-auth-notice.is-success{border-color:var(--ln-front-border,#d9ebdf);background:var(--ln-front-surface-soft,#f1faf5);color:#17663f}
.ln-auth-modal .ln-auth-notice i{font-size:1.05rem}
.ln-auth-modal .ln-auth-form{display:grid;gap:14px}
.ln-auth-modal .ln-auth-form p{display:grid;gap:7px;margin:0}
.ln-auth-modal .ln-auth-form label{font-size:.75rem;font-weight:850;letter-spacing:-.01em;color:var(--ln-ink,var(--ln-brand,#123f35))}
.ln-auth-modal .ln-auth-input{position:relative;display:flex;align-items:center}
.ln-auth-modal .ln-auth-input>i{position:absolute;left:16px;z-index:1;color:var(--ln-front-muted,#78908a)}
.ln-auth-modal .ln-auth-input>i+input{padding-left:44px}
.ln-auth-modal .ln-auth-form input{box-sizing:border-box;width:100%;min-height:56px;padding:13px 15px;border:1px solid var(--ln-front-border,#dfe7e3);border-radius:15px;background:var(--ln-front-surface,#fbfcfb);font:inherit;color:var(--ln-ink,var(--ln-brand,var(--ln-front-brand-text,#123f35)));transition:border-color .16s ease,box-shadow .16s ease,background .16s ease}
.ln-auth-modal .ln-auth-form input::placeholder{color:var(--ln-front-muted,#9aa6a2)}
.ln-auth-modal .ln-auth-form input:focus{outline:0;border-color:color-mix(in srgb,var(--ln-ink,var(--ln-brand,#123f35)) 42%,var(--ln-front-border,#dfe7e3));background:var(--ln-front-surface,#fff);box-shadow:0 0 0 4px rgba(18,63,53,.07)}
.ln-auth-modal .ln-password-toggle{position:absolute;right:9px;display:grid;width:38px;height:38px;place-items:center;padding:0;border:0;border-radius:10px;background:transparent;color:var(--ln-ink,var(--ln-brand,var(--ln-front-brand-text,#123f35)));font:inherit;cursor:pointer}
.ln-auth-modal .ln-password-toggle:hover{background:var(--ln-front-surface-soft,#eef4f1)}
.ln-auth-modal .ln-auth-input input:has(+.ln-password-toggle){padding-right:48px}
.ln-auth-modal .ln-auth-row{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:-1px;font-size:.74rem}
.ln-auth-modal .ln-auth-row a,.ln-auth-modal .ln-auth-switch a{color:var(--ln-ink,var(--ln-brand,var(--ln-front-brand-text,#123f35)));font-weight:850;text-decoration:none}
.ln-auth-modal .ln-auth-row a:hover,.ln-auth-modal .ln-auth-switch a:hover{text-decoration:underline;text-underline-offset:3px}
.ln-auth-modal .ln-auth-check{display:flex!important;align-items:flex-start;gap:9px;font-size:.78rem!important;font-weight:700!important;line-height:1.5}
.ln-auth-modal .ln-auth-check input{width:18px!important;height:18px!important;min-height:0!important;margin:1px 0 0;padding:0!important;border-radius:5px;accent-color:var(--ln-ink,var(--ln-brand,#123f35))}
.ln-auth-modal .ln-auth-submit{display:flex;width:100%;min-height:56px;align-items:center;justify-content:space-between;margin-top:2px;padding-inline:20px;border-radius:15px;font-weight:900;box-shadow:0 12px 26px rgba(230,32,81,.16);transition:transform .16s ease,box-shadow .16s ease,opacity .16s ease}
.ln-auth-modal .ln-auth-submit:hover{transform:translateY(-1px);box-shadow:0 15px 30px rgba(230,32,81,.2)}
.ln-auth-modal .ln-auth-submit.is-loading{opacity:.72;pointer-events:none}
.ln-auth-modal .ln-auth-submit.is-loading i{animation:ln-popup-auth-spin .75s linear infinite}
@keyframes ln-popup-auth-spin{to{transform:rotate(360deg)}}
.ln-auth-modal__return{display:flex;align-items:flex-start;gap:8px;margin-top:13px;padding:11px 13px;border-radius:13px;background:var(--ln-front-surface-soft,#f5f8f7);color:var(--ln-front-muted,#74837e);font-size:.68rem;line-height:1.5}
.ln-auth-modal__return i{margin-top:1px;color:var(--ln-front-muted,#4f6c63)}
.ln-auth-modal .ln-auth-switch{display:flex;align-items:center;justify-content:center;gap:8px;margin-top:17px;padding-top:16px;border-top:1px solid var(--ln-line,var(--ln-front-border,#dfe7e3));color:var(--ln-muted,var(--ln-front-muted,#687873));font-size:.74rem}
@media(max-width:640px){
 .ln-auth-modal{padding:12px;align-items:end}
 .ln-auth-modal__dialog{width:100%;max-height:calc(100vh - 24px);padding:24px 20px 22px;border-radius:24px}
 .ln-auth-modal__close{top:14px;right:14px}
 .ln-auth-modal__intro{padding-right:42px;margin-bottom:20px}
 .ln-auth-modal__intro h2{font-size:2.35rem}
 .ln-auth-modal .ln-auth-row{flex-direction:row;align-items:center}
 .ln-auth-modal .ln-auth-switch{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){.ln-auth-modal,.ln-auth-modal__dialog,.ln-auth-modal__close{transition:none!important}}
