/* LÀNG VIỆT — login design, 2026-11-05.
 * Full-resolution user-provided night village, with actual HTML/Supabase controls.
 * Does not affect gameplay or logged-in views. */
body.lv-auth-locked > header,
body.lv-auth-locked > main {visibility:hidden!important;pointer-events:none!important;}
body.lv-auth-locked #lvOnlineDialog,
body.lv-auth-locked #lvOnlineDialog:modal {
  position:fixed!important;
  inset:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  align-items:center!important;
  gap:0!important;
  box-sizing:border-box!important;
  width:100vw!important;height:100dvh!important;
  max-width:none!important;max-height:none!important;
  margin:0!important;padding:18px 12px!important;
  overflow-x:hidden!important;overflow-y:auto!important;
  border:0!important;border-radius:0!important;
  background-color:#183b51!important;
  background-image:url("assets/loading/lang-viet-login-bg-full.svg?v=20261105full1")!important;
  background-size:cover!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  box-shadow:none!important;
  color:#4a2b18!important;
  font-family:Georgia,"Times New Roman",serif!important;
  z-index:11000!important;
}
body.lv-auth-locked #lvOnlineDialog::before,
body.lv-auth-locked #lvOnlineDialog::after {content:none!important;display:none!important}
body.lv-auth-locked #lvOnlineDialog::backdrop {background:#122b37!important}
body.lv-auth-locked #lvOnlineDialog > .lv-login-head,
body.lv-auth-locked #lvOnlineDialog > #lvLobbyDescription,
body.lv-auth-locked #lvOnlineDialog > #lvStatus:not(.lv-notice-visible) {
  display:none!important;
}
body.lv-auth-locked #lvOnlineDialog :is(#lvAuthSection,#lvConfigSection,#lvRecoverySection)[hidden],
body.lv-auth-locked #lvOnlineDialog #lvRoomSection[hidden] {display:none!important;}
/* Carved wooden frame + warm parchment center */
body.lv-auth-locked #lvOnlineDialog :is(#lvAuthSection,#lvConfigSection,#lvRecoverySection) {
  position:relative!important;isolation:isolate!important;
  flex:0 0 auto!important;
  box-sizing:border-box!important;
  width:min(432px,calc(100vw - 28px))!important;
  max-width:432px!important;min-height:0!important;height:auto!important;
  margin:0 auto!important;
  padding:20px clamp(20px,3.2vw,31px) 19px!important;
  border:9px solid #573017!important;
  outline:3px solid #d3a35e!important;
  border-radius:11px!important;
  background:
    linear-gradient(90deg,rgba(120,72,30,.16),transparent 12%,transparent 88%,rgba(120,72,30,.16)),
    linear-gradient(160deg,#f4dfb4,#ffefd0 50%,#eace97)!important;
  box-shadow:
    inset 0 0 0 2px #f3d89d,
    inset 0 0 0 5px #9d652e,
    inset 0 0 0 8px #e8bb70,
    0 5px 0 #2a170d,0 16px 30px #0009!important;
  text-align:left!important;color:#492b1c!important;
}
body.lv-auth-locked #lvOnlineDialog :is(#lvAuthSection,#lvConfigSection,#lvRecoverySection)::before,
body.lv-auth-locked #lvOnlineDialog :is(#lvAuthSection,#lvConfigSection,#lvRecoverySection)::after {
  content:none!important;display:none!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection h3 {
  margin:0 0 10px!important;text-align:center!important;
  font:800 16px/1.25 Georgia,serif!important;color:#57301e!important;
  letter-spacing:.01em!important;text-shadow:none!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection h3::before{
  content:"LÀNG VIỆT";display:block;
  margin:0 0 5px!important;
  color:#9d5c21!important;
  font:900 clamp(28px,4vw,35px)/1.1 Georgia,serif!important;
  letter-spacing:2px!important;
  text-shadow:1px 1px 0 #ffebb7,2px 3px 0 #79451d!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection label{
  display:block;margin:7px 0!important;
  font:700 13px/1.25 Georgia,serif!important;color:#583821!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection input:not([type="checkbox"]){
  display:block;box-sizing:border-box!important;
  width:100%!important;height:39px!important;min-height:39px!important;
  margin:4px 0 0!important;padding:8px 10px!important;
  background:#fff8e9!important;color:#3d2b1d!important;
  border:2px solid #a67540!important;border-radius:4px!important;
  box-shadow:inset 0 2px 3px #6f4d2829!important;
  font:500 14px system-ui,sans-serif!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection input::placeholder{color:#967959!important;opacity:1}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection .lv-remember-login{
  display:flex!important;align-items:center!important;gap:7px!important;
  margin:10px 0 8px!important;font:600 11px system-ui,sans-serif!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection .lv-remember-login input{
  flex:none!important;width:16px!important;height:16px!important;min-height:0!important;
  margin:0!important;accent-color:#538145!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection button {
  cursor:pointer;
  font-family:Georgia,serif!important;
  border-radius:5px!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection #lvLogin {
  width:100%!important;min-height:42px!important;
  margin:8px 0 10px!important;padding:8px 10px!important;
  background:linear-gradient(#4e8b49,#2d6439)!important;color:#ffedbd!important;
  border:3px solid #bd8a43!important;
  box-shadow:inset 0 0 0 2px #81a96b,0 3px 0 #3d2c1c!important;
  font:800 18px Georgia,serif!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection #lvFacebookLogin {
  display:block!important;width:100%!important;min-height:42px!important;
  margin:0 0 10px!important;padding:8px 8px!important;
  background:#2365ac!important;color:white!important;
  border:3px solid #a1bedb!important;
  box-shadow:inset 0 0 0 2px #3f83c6,0 3px 0 #173b6b!important;
  font:700 14px system-ui,sans-serif!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection #lvFacebookLogin::before{
  content:"f";display:inline-grid;place-items:center;
  width:21px;height:21px;margin-right:10px;vertical-align:middle;
  border-radius:3px;background:white;color:#2365ac;
  font:900 21px Arial,sans-serif;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection .lv-login-links{
  display:flex!important;justify-content:center!important;gap:8px!important;
  flex-wrap:wrap!important;margin:0!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection .lv-login-links button{
  padding:6px 9px!important;font-size:12px!important;
  background:#f1d7a7!important;color:#56311c!important;
  border:2px solid #b78148!important;box-shadow:none!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection > .lv-hint{
  display:none!important;
}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection .lv-config-details{margin-top:8px!important;font-size:11px!important}
body.lv-auth-locked #lvOnlineDialog #lvAuthSection .lv-config-details summary{color:#754a2b!important}
body.lv-auth-locked #lvOnlineDialog #lvStatus.lv-notice-visible{
  width:min(432px,calc(100vw - 28px));box-sizing:border-box;
  margin:0 auto 12px!important;padding:10px 12px!important;
  background:#fff0cd!important;border:2px solid #a97d40!important;
  color:#6b3225!important;z-index:2;
}
@media(max-width:560px) {
  body.lv-auth-locked #lvOnlineDialog,
  body.lv-auth-locked #lvOnlineDialog:modal {padding:12px 9px!important;background-position:35% center!important}
  body.lv-auth-locked #lvOnlineDialog :is(#lvAuthSection,#lvConfigSection,#lvRecoverySection){
    width:min(400px,calc(100vw - 22px))!important;
    padding:15px 18px 15px!important;border-width:7px!important;
  }
  body.lv-auth-locked #lvOnlineDialog #lvAuthSection h3::before{font-size:29px!important}
}
@media(max-height:620px) {
  body.lv-auth-locked #lvOnlineDialog,
  body.lv-auth-locked #lvOnlineDialog:modal{justify-content:flex-start!important}
  body.lv-auth-locked #lvOnlineDialog :is(#lvAuthSection,#lvConfigSection,#lvRecoverySection){margin:12px auto!important}
}
