/* QuickLab compact premium sign-in · 2026-11-01 */
body.ql-auth-premium{
  --auth-bg:#f5f7fc;--auth-paper:#fff;--auth-ink:#1b2541;
  --auth-muted:#737e96;--auth-border:#dde5f2;--auth-input:#f8faff;
  --auth-link:#6550d3;--auth-primary:#664cdc;--auth-shadow:0 30px 80px rgba(21,31,70,.10);
  margin:0!important;min-height:100svh;overflow-x:hidden;
  background:var(--auth-bg)!important;color:var(--auth-ink)!important;
  font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
html[data-theme="dark"] body.ql-auth-premium{
 --auth-bg:#0d1323;--auth-paper:#171f34;--auth-ink:#eef2ff;
 --auth-muted:#9aa9c3;--auth-border:#34415c;--auth-input:#202a43;
 --auth-link:#baa9ff;--auth-primary:#8e77f4;--auth-shadow:0 28px 84px rgba(0,0,0,.29);
}
.ql-auth-premium *,.ql-auth-premium *::before,.ql-auth-premium *::after{box-sizing:border-box}
.ql-auth-premium .authshell{
 position:relative;isolation:isolate;display:flex!important;align-items:center;justify-content:center;
 width:100%;min-height:100svh;min-height:100dvh;padding:36px 16px 28px!important;
 background:
 radial-gradient(ellipse 430px 260px at 14% 8%,rgba(41,177,218,.11),transparent 70%),
 radial-gradient(ellipse 480px 360px at 88% 82%,rgba(119,70,237,.11),transparent 72%),
 var(--auth-bg)!important;
}
.ql-auth-premium .authshell::before{
 content:"";position:absolute;inset:16px;z-index:-1;pointer-events:none;
 background-image:radial-gradient(circle,rgba(106,123,168,.13) .7px,transparent .8px);
 background-size:25px 25px;mask-image:linear-gradient(to bottom,transparent,#0005 40%,transparent);
}
.ql-auth-premium .authbox{
 position:relative;width:100%!important;max-width:424px!important;
 padding:24px 30px 23px!important;border-radius:22px!important;
 border:1px solid var(--auth-border)!important;background:var(--auth-paper)!important;
 box-shadow:var(--auth-shadow)!important;
 color:var(--auth-ink)!important;overflow:hidden;
}
.ql-auth-premium .authbox::before{
 content:"";position:absolute;inset:0 0 auto;height:4px;pointer-events:none;
 background:linear-gradient(90deg,#00b0bf 0%,#528be8 46%,#9b52e7 100%);
}
.ql-auth-premium .ql-auth-brandbar{display:flex;align-items:center;justify-content:space-between;min-height:42px;margin-bottom:20px;gap:10px}
.ql-auth-premium .authbox a.brand{display:inline-flex!important;align-items:center;min-width:0;margin:0!important;max-width:178px;line-height:1}
.ql-auth-premium .authbox a.brand img{width:135px!important;max-width:100%;height:auto!important;display:block}
.ql-auth-premium .ql-auth-pill{
 font-size:9.5px;color:var(--auth-link);border:1px solid var(--auth-border);
 background:var(--auth-input);padding:6px 9px;border-radius:99px;font-weight:800;letter-spacing:.05em;white-space:nowrap;
}
.ql-auth-premium .authbox h1{
 font-size:clamp(22px,4vw,27px)!important;line-height:1.2!important;
 letter-spacing:-.04em!important;margin:0 0 8px!important;font-weight:820!important;
 color:var(--auth-ink)!important;
}
.ql-auth-premium .authbox h1+p{font-size:12.7px!important;color:var(--auth-muted)!important;line-height:1.5!important;margin:0 0 18px!important}
.ql-auth-premium #authContext:empty{display:none}
.ql-auth-premium #authContext{
 color:var(--auth-muted)!important;border:1px solid var(--auth-border);background:var(--auth-input);
 padding:9px 11px;border-radius:9px;font-size:11.2px;line-height:1.45;margin:0 0 14px;
}
.ql-auth-premium #message{font-size:12px!important;line-height:1.5!important;margin:0 0 10px!important;padding:0;min-height:0}
.ql-auth-premium #message:empty{display:none}
.ql-auth-premium #message:not(:empty){padding:9px 11px!important;border-radius:9px;background:var(--auth-input)!important}
.ql-auth-premium #authForm{display:grid!important;gap:13px!important;margin:0!important}
.ql-auth-premium #authForm>label{
 margin:0!important;display:grid!important;gap:6px!important;font-size:11.5px!important;
 font-weight:770;color:var(--auth-ink)!important;line-height:1.35;
}
.ql-auth-premium #authForm input{
 box-sizing:border-box;display:block;width:100%;height:43px;min-height:43px!important;margin:0!important;
 padding:0 13px!important;border:1px solid var(--auth-border)!important;border-radius:10px!important;
 background:var(--auth-input)!important;color:var(--auth-ink)!important;font-family:inherit;font-size:14px!important;
 outline:none;box-shadow:none!important;transition:border-color .18s,box-shadow .18s;
}
.ql-auth-premium #authForm input:focus{
 border-color:var(--auth-primary)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--auth-primary) 17%,transparent)!important;
}
.ql-auth-premium .ql-password-wrap{position:relative;display:block}
.ql-auth-premium #authForm .ql-password-wrap input{padding-right:52px!important}
.ql-auth-premium .ql-password-visibility{
 position:absolute;right:5px;top:4px;height:35px;min-width:40px;border:0!important;
 border-radius:8px;background:transparent!important;color:var(--auth-muted);
 cursor:pointer;font:inherit;font-size:11px;font-weight:700;padding:0 8px;
}
.ql-auth-premium .ql-password-visibility:hover{background:color-mix(in srgb,var(--auth-primary) 10%,transparent)!important;color:var(--auth-link)}
.ql-auth-premium #authForm button[type=submit]{
 height:44px!important;min-height:44px!important;width:100%!important;margin-top:4px!important;
 background:linear-gradient(108deg,#2786cf 0%,#6465dd 51%,#8552dc 100%)!important;
 color:white!important;border:0!important;border-radius:10px!important;
 box-shadow:0 8px 19px rgba(94,82,205,.20)!important;
 font-size:12.8px!important;font-weight:790;line-height:1.2!important;padding:10px!important;
}
.ql-auth-premium #authForm button[type=submit]:hover{filter:brightness(1.075);transform:translateY(-1px)}
.ql-auth-premium .ql-auth-recovery{margin:11px 0 0!important;text-align:right;font-size:11px}
.ql-auth-premium .ql-auth-recovery a,.ql-auth-premium .formlinks a{color:var(--auth-link)!important;text-decoration:none;font-weight:700}
.ql-auth-premium .ql-auth-recovery a:hover,.ql-auth-premium .formlinks a:hover{text-decoration:underline}
.ql-auth-premium .formlinks{
 border-top:1px solid var(--auth-border);margin:17px 0 0!important;padding-top:13px!important;
 display:flex!important;justify-content:center!important;align-items:center!important;
 flex-wrap:wrap!important;gap:7px 15px!important;font-size:10.8px!important;
}
.ql-auth-premium .ql-auth-security{
 display:flex;gap:6px;justify-content:center;align-items:center;text-align:center;
 margin:15px 0 0;color:var(--auth-muted);font-size:10px;letter-spacing:.01em;
}
.ql-auth-premium .ql-auth-security::before{content:"●";color:#16b99a;font-size:9px}
.ql-auth-premium .authbox>.ql-theme-toggle,
.ql-auth-premium .authbox>.ql-theme-toggle.ql-auth-theme{
 position:absolute!important;right:16px!important;top:19px!important;width:30px!important;height:30px!important;
 min-width:30px!important;min-height:30px!important;padding:0!important;border:1px solid var(--auth-border)!important;
 border-radius:9px!important;background:var(--auth-input)!important;color:var(--auth-ink)!important;
 line-height:1;font-size:17px!important;box-shadow:none!important;z-index:3!important;
}
.ql-auth-premium .ql-auth-brandbar{padding-right:37px}
.ql-auth-premium .ql-auth-back{position:fixed;left:18px;top:15px;font-size:11px;color:var(--auth-muted)!important;text-decoration:none}
.ql-auth-premium #ql-whatsapp-support{display:none!important}
@media(max-width:520px){
 .ql-auth-premium .authshell{padding:18px 12px!important;align-items:center}
 .ql-auth-premium .authbox{max-width:400px!important;padding:21px 21px 19px!important;border-radius:18px!important}
 .ql-auth-premium .ql-auth-brandbar{margin-bottom:15px}
 .ql-auth-premium .authbox a.brand img{width:124px!important}
 .ql-auth-premium .authbox h1{font-size:23px!important}
 .ql-auth-premium .authbox h1+p{margin-bottom:15px!important}
 .ql-auth-premium .formlinks{font-size:10.3px!important;gap:8px 11px!important}
}
@media(max-height:610px) and (min-width:520px){.ql-auth-premium .authshell{align-items:flex-start;padding:18px!important}}
@media(prefers-reduced-motion:reduce){.ql-auth-premium *{transition:none!important}}
.ql-auth-premium .ql-auth-kicker{
 display:block;margin:0 0 6px;font-size:9.5px;letter-spacing:.12em;
 color:var(--auth-link);font-weight:850;line-height:1.4;
}
