.qlogin-shell,.qsuccess-overlay{--q-text:#f4f8fc;--q-text-muted:#b1becd;--q-primary:#00c8f7;--q-primary-pressed:#65dfff;--q-bg:#061522;--q-bg-secondary:#081b2a;--q-surface:#071726;--q-border:#244458;--q-border-strong:#35566b;--q-primary-tint:#00bfff22;--q-danger:#ffb2b2;--q-danger-tint:#742a3533;color:#f4f8fc;font-family:Inter,Arial,Helvetica,sans-serif;color-scheme:dark}
body.q-theme{margin:0;background:#020b14}
.qlogin-back{position:absolute;top:24px;left:clamp(20px,3vw,58px);color:#bbd7e6;text-decoration:none;font-size:12px;display:flex;align-items:center;gap:10px;z-index:2;padding:8px 0}
.qlogin-back:hover{color:#00c8f7}
.qlogin-shell{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(390px,.9fr);gap:clamp(28px,3vw,60px);align-items:center;min-height:calc(100svh - 160px);width:100%;box-sizing:border-box;max-width:none;margin:0 auto;background:#020b14 url('../images/login-quantum.webp') left center/cover no-repeat;padding:65px clamp(30px,3.5vw,70px) 50px 32%}
.qlogin-brand{align-self:center;padding-bottom:140px}
.qlogin-brand-copy{max-width:540px;text-shadow:0 2px 20px #000}
.qlogin-eyebrow{font-size:13px;letter-spacing:.58em;text-transform:uppercase;color:#c9d4dd;margin:0 0 12px}
.qlogin-brand-copy h2{font-size:clamp(30px,3.2vw,60px);line-height:1.1;letter-spacing:-.04em;white-space:nowrap;color:#fff;margin:0 0 12px;font-weight:750}
.qlogin-brand-copy h2 em{font-style:normal;color:#00bdec}
.qlogin-tagline{font-size:clamp(16px,1.45vw,25px);font-weight:600;line-height:1.4;margin:0;color:#eef6fb}
.qlogin-brand-list{list-style:none;padding:0;margin:32px 0 0;display:grid;gap:28px}
.qlogin-brand-list li{display:flex;align-items:center;gap:18px}
.qlogin-brand-list i{font-size:32px;width:40px;flex:none;color:#00caf5;text-align:center}
.qlogin-brand-list strong{display:block;font-size:16px;font-weight:600;color:#fff;margin-bottom:5px}
.qlogin-brand-list span{display:block;font-size:13px;line-height:1.55;color:#bdcbd5}
.qlogin-form-side{min-width:0}
.qlogin-wrap{width:100%;max-width:600px;margin:auto}
.qlogin-card{overflow:hidden;border:1px solid #467a98;border-radius:24px;background:linear-gradient(145deg,#071c2bea,#020e18f0);box-shadow:inset 1px 1px 0 #6bcfff55,0 18px 70px #0008,0 0 30px #00adff18;backdrop-filter:blur(14px);position:relative}
.qlogin-card:after{content:'';position:absolute;inset:0;pointer-events:none;border-radius:inherit;box-shadow:inset 2px 0 15px -9px #00bdff,inset -2px -2px 14px -8px #00bdff}
.qlogin-tabs{display:flex;gap:14px;padding:22px 30px 0;border-bottom:1px solid #294353;background:#06152255}
.qlogin-tabs button{position:relative;flex:1;display:flex;align-items:center;justify-content:center;gap:12px;padding:15px 0 20px;background:none;border:0;color:#e4edf7;font-family:inherit;font-size:15px;font-weight:600;line-height:1.4;cursor:pointer;white-space:nowrap}
.qlogin-tabs button i{font-size:22px}.qlogin-tabs button.active{color:#00d4ff}
.qlogin-tabs button.active:after{content:'';position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:3px 3px 0 0;background:#00cfff;box-shadow:0 -3px 15px #00bfff33}
.qlogin-panel{display:none;padding:30px clamp(24px,2.8vw,48px) 34px}.qlogin-panel.active{display:block}
.qlogin-intro{margin-bottom:25px}.qlogin-intro h1,.qlogin-intro h2{margin:0 0 7px;font-size:clamp(24px,1.85vw,32px);line-height:1.2;color:#fff;font-weight:700}
.qlogin-intro p{margin:0;font-size:15px;line-height:1.5;color:#bdc8d2}
.qlogin-field{position:relative;margin-bottom:16px}
.qlogin-field label{display:block;font-size:13px;font-weight:500;margin-bottom:7px;color:#c3d4de}
.qlogin-field input{box-sizing:border-box;width:100%;min-height:54px;border:1px solid #2e4c60;border-radius:14px;background:#102230a8;color:#f5f8fc;padding:13px 16px;font:inherit;font-size:16px;transition:border-color .2s,box-shadow .2s}
.qlogin-field input::placeholder{color:#9faebd;opacity:1}
.qlogin-field input:focus{outline:none;border-color:#00c8f7;box-shadow:0 0 0 3px #00bfff19}
.qlogin-field input[type=password],.qlogin-field input:has(+.qlogin-toggle-pw){padding-right:54px}
#panel-sign-in .qlogin-field input{padding-left:52px;min-height:60px}
.qlogin-input-icon{position:absolute;top:21px;left:20px;font-size:19px;color:#becedc;pointer-events:none}
.qlogin-toggle-pw{position:absolute;right:9px;bottom:7px;display:grid;place-items:center;width:42px;height:40px;background:none;border:0;color:#aabfce;font-size:18px;cursor:pointer}
#panel-sign-in .qlogin-toggle-pw{bottom:10px}
.qlogin-toggle-pw:hover{color:#00d0ff}
.qlogin-field .qlogin-sr{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.qlogin-forgot{display:block;width:fit-content;margin:3px 0 22px auto;color:#00cfff;text-decoration:none;font-size:14px}
.qlogin-forgot:hover{text-decoration:underline}
.qlogin-panel .q-btn-primary{width:100%;display:flex;align-items:center;justify-content:center;gap:22px;min-height:58px;padding:14px 20px;border:1px solid #3dd6ff;border-radius:15px;background:linear-gradient(110deg,#00b8df,#00b5f5);color:white;font-size:16px;font-weight:600;cursor:pointer;box-shadow:0 8px 26px #00b9ef15;transition:background .2s,box-shadow .2s}
.qlogin-panel .q-btn-primary:hover{background:linear-gradient(110deg,#04caec,#079de6);box-shadow:0 0 25px #00bbff33}
.qlogin-error{display:flex;align-items:flex-start;gap:10px;padding:13px 15px;margin-bottom:20px;background:#65232c55;border:1px solid #a44d5f;border-radius:10px;color:#ffd0d0;font-size:13px}
.qlogin-dealer-toggle{display:flex;justify-content:space-between;align-items:center;gap:15px;border:1px solid #2a485b;border-radius:12px;background:#0d2534;padding:14px;margin:20px 0;font-size:14px;cursor:pointer}
.qlogin-dealer-toggle input{accent-color:#00bfee;width:18px;height:18px;flex:none}
.qlogin-dealer-hint{display:block;font-size:11px;line-height:1.5;font-weight:400;color:#94adbc;margin-top:4px}
.qlogin-dealer-fields{display:none}.qlogin-status{display:block;font-size:12px;margin:-6px 0 14px}
.qlogin-trust{display:flex;align-items:center;justify-content:center;gap:9px;color:#96acbc;font-size:12px;margin:20px 0 0}.qlogin-trust i{color:#00cfff;font-size:18px}.qlogin-trust a{color:#bbd9e8;text-decoration:none}.qlogin-trust a:hover{color:#00d5ff}
.qlogin-footer{position:relative;display:flex;justify-content:flex-end;gap:24px;padding:15px clamp(24px,3.5vw,70px);font-size:11px;color:#849caf;background:#020b1455}.qlogin-footer a{color:#b9d2e0;text-decoration:none}
.qlogin-back:focus-visible,.qlogin-tabs button:focus-visible,.qlogin-toggle-pw:focus-visible,.qlogin-shell a:focus-visible,.qlogin-shell .q-btn:focus-visible{outline:2px solid #44d9ff;outline-offset:4px}
.qsuccess-overlay{position:fixed;inset:0;z-index:10000;display:grid;place-items:center;padding:20px;background:#010913c9;backdrop-filter:blur(6px)}
.qsuccess-dialog{position:relative;width:min(100%,440px);padding:36px 30px;border:1px solid #3f859e;border-radius:22px;background:#071b2b;box-shadow:0 20px 80px #0008;text-align:center}
.qsuccess-icon{display:grid;place-items:center;width:70px;height:70px;margin:0 auto 20px;border-radius:50%;color:#49e5c3;background:#0b3a3c;font-size:28px}
.qsuccess-dialog h2{color:white;font-size:26px;margin:0 0 12px}.qsuccess-dialog>p{font-size:15px;line-height:1.6;color:#b3c7d6;margin-bottom:20px}
.qsuccess-next{display:flex;gap:12px;padding:14px;border:1px solid #294958;border-radius:10px;color:#b6d9e7;background:#102a38;text-align:left;font-size:13px;line-height:1.5;margin-bottom:23px}
.qsuccess-close{position:absolute;right:12px;top:12px;width:36px;height:36px;border:0;background:none;color:#c1d4df;cursor:pointer}.qsuccess-dialog .q-btn{width:100%;background:#00b9ed;color:white;border:0;border-radius:10px;padding:13px;cursor:pointer}
@media(min-width:1900px){.qlogin-shell{padding-left:560px}}
@media(max-width:1390px){.qlogin-shell{padding-left:27%;grid-template-columns:minmax(0,.85fr) minmax(360px,1fr);gap:28px}.qlogin-brand{padding-bottom:110px}.qlogin-brand-copy h2{font-size:36px}.qlogin-tagline{font-size:18px}.qlogin-brand-list{gap:22px}.qlogin-brand-list li{gap:12px}.qlogin-brand-list i{font-size:26px;width:30px}.qlogin-brand-list strong{font-size:14px}.qlogin-brand-list span{font-size:12px}.qlogin-tabs{padding-inline:22px}.qlogin-tabs button{font-size:14px;gap:8px}.qlogin-panel{padding:28px}}
@media(max-width:1080px){.qlogin-shell{padding:55px 30px 40px;grid-template-columns:1fr 1.1fr;gap:32px;background:linear-gradient(90deg,#020b14b8,#020b1444),url('../images/login-quantum.webp') 25% center/cover no-repeat}.qlogin-brand{padding:0;align-self:center}.qlogin-brand-copy h2{font-size:38px}.qlogin-brand-list{margin-top:28px}.qlogin-brand-copy{padding:20px;background:#020b1466;border-radius:15px}.qlogin-panel{padding:27px 24px}}
@media(max-width:740px){.qlogin-shell{display:block;padding:40px 20px 30px;background:linear-gradient(#020b1410,#020b14d9 260px,#020b14 570px),url('../images/login-quantum.webp') left top/auto 650px no-repeat;min-height:0}.qlogin-brand{padding:0 0 28px}.qlogin-brand-copy{padding:0;background:none;text-align:center;max-width:none}.qlogin-brand-copy h2{font-size:36px}.qlogin-eyebrow{font-size:10px;letter-spacing:.4em}.qlogin-tagline{font-size:15px}.qlogin-brand-list{display:none}.qlogin-wrap{max-width:480px}.qlogin-card{border-radius:19px}.qlogin-panel{padding:26px 24px}.qlogin-tabs{padding:13px 20px 0;gap:12px}.qlogin-tabs button{font-size:14px;gap:9px}.qlogin-tabs button i{font-size:19px}.qlogin-footer{justify-content:center;flex-wrap:wrap;gap:8px 20px;text-align:center}.qlogin-back{top:18px}.qlogin-trust{font-size:12px}}
@media(max-width:380px){.qlogin-shell{padding-inline:12px}.qlogin-brand-copy h2{font-size:31px}.qlogin-panel{padding:24px 18px}.qlogin-tabs{padding-inline:14px}.qlogin-tabs button{font-size:12px}.qlogin-tabs button i{font-size:17px}}
/* Keep the desktop card and artwork steady even when dealer fields expand. */
.qlogin-scroll-hint{display:none}
@media(min-width:741px){
    .qlogin-scroll-hint{position:sticky;top:-30px;z-index:2;display:flex;align-items:center;gap:10px;margin:0 0 20px;padding:12px 14px;border:1px solid #276078;border-radius:10px;background:#0b293b;color:#89e6ff;font-size:12px;line-height:1.5;box-shadow:0 5px 15px #020b1466}
    #panel-sign-up{box-sizing:border-box;height:var(--login-panel-height,440px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:#33829e #071726;scroll-padding-block:20px}
}
/* Keep artwork sized to the sign-in layout, independent of registration height. */
.qlogin-shell{isolation:isolate;background:#020b14}
.qlogin-shell:before{content:'';position:absolute;inset:0 0 auto;height:var(--login-art-height,calc(100svh - 160px));z-index:-1;pointer-events:none;background:url('../images/login-quantum.webp') left center/cover no-repeat}
@media(max-width:1080px){.qlogin-shell:before{background:linear-gradient(90deg,#020b14b8,#020b1444),url('../images/login-quantum.webp') 25% center/cover no-repeat}}
@media(max-width:740px){.qlogin-shell:before{background:linear-gradient(#020b1410,#020b14d9 260px,#020b14 570px),url('../images/login-quantum.webp') left top/auto 650px no-repeat}}
/* Login-specific footer: retain shared content without changing store pages. */
body .q-footer.q-footer-login{background:linear-gradient(135deg,#04111c,#071d2c);animation:none;border-top:1px solid #204457;padding:48px 0 22px}
.q-footer.q-footer-login .q-footer-grid{max-width:1440px;padding:0 clamp(24px,4vw,64px);grid-template-columns:1.25fr 1fr 1.15fr .85fr;gap:36px}
.q-footer.q-footer-login .q-footer-logo img{height:42px;max-width:210px;filter:none}
.q-footer.q-footer-login .q-footer-about{font-size:13px;line-height:1.85;color:#9fb6c7;margin-top:10px}
.q-footer.q-footer-login .q-footer-title{color:#f0f7fc;font-size:12px;letter-spacing:.12em;margin-bottom:20px}
.q-footer.q-footer-login .q-footer-hours li,.q-footer.q-footer-login .q-footer-info li,.q-footer.q-footer-login .q-footer-links a{font-size:13px;color:#adc2d1}
.q-footer.q-footer-login .q-footer-social a{border-radius:10px;background:#0c2637;border-color:#264758;color:#77dfff}
.q-footer.q-footer-login .q-footer-links a:hover,.q-footer.q-footer-login .q-footer-info a:hover{color:#45d7ff}
.q-footer.q-footer-login .q-footer-bottom{max-width:1312px;margin:32px auto 0;padding:20px 24px 0;color:#8da8ba;border-color:#203c4b;line-height:1.7}
@media(max-width:1100px){.q-footer.q-footer-login .q-footer-grid{grid-template-columns:1fr 1fr;gap:32px 40px}}
@media(max-width:580px){body .q-footer.q-footer-login{padding-top:34px}.q-footer.q-footer-login .q-footer-grid{grid-template-columns:1fr;gap:28px}.q-footer.q-footer-login .q-footer-bottom{flex-direction:column;align-items:flex-start;margin-top:26px}}
@media(prefers-reduced-motion:reduce){.qlogin-field input,.qlogin-panel .q-btn-primary{transition:none}}
