/* MR LEE authentication header / consult soft-lock, 2026-10-18.
   Scoped to the original home page; no global form, school, video or Firebase styling. */
:root { --auth2-blue:#1555cd; --auth2-pink:#ed2677; }
#mrlee-auth2-actions { display:flex; align-items:center; justify-content:flex-end; gap:9px; flex:0 0 auto; }
#mrlee-auth2-actions .mrlee-auth2-btn,
#mrlee-auth2-mobile-strip .mrlee-auth2-btn,
#mrlee-auth-nav.mrlee-auth2-account,
#mrlee-auth2-mobile-account {
 display:inline-flex; align-items:center; justify-content:center; gap:7px;
 box-sizing:border-box; border-radius:14px; min-height:49px; min-width:126px;
 padding:12px 17px; text-decoration:none; font:800 15px/1.25 'Be Vietnam Pro',system-ui,sans-serif;
 white-space:nowrap; text-align:center; border:1.5px solid transparent;
 box-shadow:0 5px 17px rgba(31,64,115,.14);
 transition:transform .16s, box-shadow .16s;
}
.mrlee-auth2-btn:hover,#mrlee-auth-nav.mrlee-auth2-account:hover {transform:translateY(-1px);box-shadow:0 9px 21px rgba(23,60,120,.17)}
.mrlee-auth2-btn:focus-visible,#mrlee-auth-nav.mrlee-auth2-account:focus-visible,#mrlee-auth2-locked-hero:focus-visible,#mrlee-auth2-locked-top:focus-visible {outline:3px solid #ffae23;outline-offset:3px;}
.mrlee-auth2-login { color:#fff!important; background:linear-gradient(115deg,#144aba,#2878eb)!important; }
.mrlee-auth2-register { color:#fff!important; background:linear-gradient(115deg,#e91d70,#ff6097)!important; }
#mrlee-auth-nav.mrlee-auth2-account, #mrlee-auth2-mobile-account { color:#103774; background:#eaf2ff; border-color:#acc7fc; min-width:165px; max-width:220px; overflow:hidden; text-overflow:ellipsis; }
#mrlee-auth2-mobile-strip{display:none;}
/* Fail closed: only Firebase onAuthStateChanged for an email-verified user reveals actual consultation controls. */
html:not([data-mrlee-auth2="verified"]) #openContactTop,
html:not([data-mrlee-auth2="verified"]) #openContactHero,
html:not([data-mrlee-auth2="verified"]) #consultFormV21,
html:not([data-mrlee-auth2="verified"]) #v21Result {display:none!important;}
html:not([data-mrlee-auth2="verified"]) #mrlee-auth-nav,
html:not([data-mrlee-auth2="verified"]) #mrlee-auth-nav-mobile,
html:not([data-mrlee-auth2="verified"]) #mrlee-auth2-mobile-account {display:none!important;}
html[data-mrlee-auth2="verified"] #mrlee-auth2-actions,
html[data-mrlee-auth2="verified"] #mrlee-auth2-mobile-strip .mrlee-auth2-guest,
html[data-mrlee-auth2="verified"] #mrlee-auth2-locked-top,
html[data-mrlee-auth2="verified"] #mrlee-auth2-locked-hero {display:none!important;}
#mrlee-auth-nav.mrlee-auth2-account {font-size:14px!important;min-height:49px!important;padding:12px 16px!important;}
#mrlee-auth2-locked-top{font-size:12px;font-weight:800;border:1px solid #c4d1e5;border-radius:999px;padding:12px 15px;color:#20518e;background:#edf4fd;cursor:pointer;white-space:nowrap;}
#mrlee-auth2-locked-hero{display:flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;flex:1;background:linear-gradient(95deg,#475b7a,#74869e);color:white;border:2px solid white;border-radius:24px;box-shadow:0 3px 12px #122f7038;padding:12px 18px;font:800 clamp(10px,1vw,14px)/1.3 'Be Vietnam Pro',sans-serif;}
/* Only one consultation CTA per location: verified=real, guest=locked. */
@media (min-width:1801px) {
 .site-header .header-inner {gap:13px!important;padding-left:14px!important;padding-right:14px!important;}
 .site-header .header-inner .brand {min-width:175px;}
 .site-header .main-nav {gap:5px;}
 .site-header .main-nav>a {font-size:11px;}
 .site-header .top-cta {padding:11px 14px;font-size:12px;}
 #mrlee-auth2-locked-top {display:none;}
}
@media (min-width:901px) and (max-width:1800px){
 .site-header .main-nav {display:none!important;}
 .site-header .menu-toggle {display:block!important;background:#e5f0ff;border:0;border-radius:12px;padding:10px 13px;cursor:pointer;}
 .site-header .header-inner {gap:10px!important;}
 .site-header .mobile-nav {display:flex;flex-direction:column;background:white;padding:12px 18px;}
 .site-header .mobile-nav[hidden]{display:none!important;}
 .site-header .mobile-nav a {font-weight:750;font-size:14px;padding:9px;}
 #mrlee-auth2-locked-top{display:none;}
}
@media(max-width:900px) {
 #mrlee-auth2-actions,#mrlee-auth-nav.mrlee-auth2-account {display:none!important;}
 #mrlee-auth2-mobile-strip {display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:10px;padding:8px 14px 12px; background:#fff; border-top:1px solid #edf1f7;}
 #mrlee-auth2-mobile-strip .mrlee-auth2-btn{min-width:0; min-height:52px; width:100%; font-size:15px; border-radius:13px;}
 #mrlee-auth2-mobile-account {grid-column:1/-1;display:flex;min-width:0;max-width:none;min-height:52px;}
 .site-header .header-inner .brand {min-width:unset;}
 #mrlee-auth2-locked-top{display:none;}
 html[data-mrlee-auth2="verified"] #openContactTop{display:none!important;}
 .site-header .mobile-nav #mrlee-auth-nav-mobile{display:none!important;}
}
@media(max-width:540px){
 #mrlee-auth2-locked-hero{font-size:11px;white-space:normal;padding:12px 11px;}
 #mrlee-auth2-mobile-strip{gap:8px;padding:8px 10px 11px;}
 #mrlee-auth2-mobile-strip .mrlee-auth2-btn{font-size:14px;padding:10px 6px;}
}
/* Accessible, non-blocking sign-in dialog; show only after deliberate click. */
#mrlee-auth2-dialog {width:min(490px,calc(100vw - 28px));max-height:calc(100dvh - 28px);overflow:auto;border:0;border-radius:24px;padding:30px 25px;background:#fff;color:#163353;box-shadow:0 25px 75px rgba(8,30,68,.35);font-family:'Be Vietnam Pro',system-ui,sans-serif;}
#mrlee-auth2-dialog::backdrop{background:rgba(8,26,52,.65);backdrop-filter:blur(3px);}
#mrlee-auth2-dialog h2{font-size:23px;line-height:1.4;margin:0 35px 13px 0;color:#153b82;}
#mrlee-auth2-dialog p{font-size:14px;line-height:1.8;color:#53647b;margin:0 0 22px;}
#mrlee-auth2-dialog .mrlee-auth2-dialog-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
#mrlee-auth2-dialog .mrlee-auth2-btn{min-width:0;min-height:52px;padding:12px 8px;font-size:14px;}
#mrlee-auth2-dialog .mrlee-auth2-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:12px;border:0;background:#f0f5fc;color:#183d75;font-size:24px;cursor:pointer;}
#mrlee-auth2-dialog .mrlee-auth2-caution{margin-top:14px;font-size:12px;color:#69788b;}
