/* RoiKib Login Popup - conservative visual-only patch v1.2.3.
 * Scoped to Discuz! #fwin_login (not registration, site-wide forms, or chat).
 * No JS, no form attributes, no auth logic, no changes to the page navbar.
 */
body.rk-v3 #fwin_login {
  box-sizing: border-box !important;
  position: fixed !important;
  left: 50% !important;
  top: 50% !important;
  right: auto !important;
  bottom: auto !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  padding: 0 !important;
  width: min(440px, calc(100vw - 32px)) !important;
  max-width: calc(100vw - 32px) !important;
  max-height: calc(100vh - 32px) !important;
  max-height: calc(100dvh - 32px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  background: #fff !important;
  border: 1px solid #e3eaf3 !important;
  border-radius: 20px !important;
  box-shadow: 0 22px 64px rgba(14, 34, 78, .22) !important;
  font-family: 'RoiKib Prompt', 'Prompt', Tahoma, sans-serif !important;
  color: #23395e !important;
  -webkit-overflow-scrolling: touch;
  isolation: isolate;
}
/* Discuz float uses a 3x3 table solely for decorative corners. The login-only
   selectors suppress the old grey frame without touching other showWindow boxes. */
body.rk-v3 #fwin_login table.fwin,
body.rk-v3 #fwin_login table.fwin > tbody,
body.rk-v3 #fwin_login table.fwin > tbody > tr {
  display: block !important;
  box-sizing: border-box !important;
  border: 0 !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
}
body.rk-v3 #fwin_login table.fwin > tbody > tr > td:not(.m_c) {
  display: none !important;
}
body.rk-v3 #fwin_login #fwin_content_login {
  display: block !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  padding: 0 !important;
  border: 0 !important;
  background: #fff !important;
}
body.rk-v3 #fwin_login .f_c,
body.rk-v3 #fwin_login .floatwrap,
body.rk-v3 #fwin_login [id^="main_messaqge_"] {
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  background: #fff !important;
}
body.rk-v3 #fwin_login .flb {
  box-sizing: border-box !important;
  position: relative !important;
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  min-height: 72px !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 18px 22px !important;
  border-bottom: 1px solid #edf1f7 !important;
  background: #fff !important;
}
body.rk-v3 #fwin_login .flb em {
  margin: 0 !important;
  padding: 0 !important;
  color: #17315c !important;
  font-size: 21px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  font-style: normal !important;
  white-space: normal !important;
}
body.rk-v3 #fwin_login .flb .flbc {
  position: static !important;
  display: inline-block !important;
  flex: 0 0 auto !important;
  margin-left: 10px !important;
  opacity: .65;
}
body.rk-v3 #fwin_login .c.cl,
body.rk-v3 #fwin_login form.cl > .c {
  box-sizing: border-box !important;
  width: 100% !important;
  padding: 20px 22px 24px !important;
  margin: 0 !important;
}
body.rk-v3 #fwin_login .rfm {
  box-sizing: border-box !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 0 13px !important;
  padding: 0 !important;
  border: none !important;
}
body.rk-v3 #fwin_login .rfm table,
body.rk-v3 #fwin_login .rfm table > tbody,
body.rk-v3 #fwin_login .rfm table > tbody > tr,
body.rk-v3 #fwin_login .rfm th,
body.rk-v3 #fwin_login .rfm td {
  display: block !important;
  box-sizing: border-box !important;
  float: none !important;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  min-width: 0 !important;
  border: 0 !important;
  background: transparent !important;
  text-align: left !important;
}
body.rk-v3 #fwin_login .rfm th {
  margin: 0 !important;
  padding: 0 0 6px !important;
  color: #344768 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  font-weight: 600 !important;
}
body.rk-v3 #fwin_login .rfm td {
  margin: 0 !important;
  padding: 0 !important;
}
body.rk-v3 #fwin_login .rfm td.tipcol {
  margin: 7px 0 0 !important;
  padding: 0 !important;
  color: #385bd6 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  text-align: right !important;
  overflow-wrap: anywhere !important;
}
body.rk-v3 #fwin_login .rfm td.tipcol a {
  color: #3159d9 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
body.rk-v3 #fwin_login .rfm input.px { display: block !important; }
body.rk-v3 #fwin_login .rfm input.px,
body.rk-v3 #fwin_login .rfm select {
  float: none !important;
  box-sizing: border-box !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 48px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 13px !important;
  border: 1px solid #d8e2f0 !important;
  border-radius: 11px !important;
  background: #f8faff !important;
  color: #1c3053 !important;
  font-size: 16px !important;
  line-height: normal !important;
  box-shadow: none !important;
}
body.rk-v3 #fwin_login .rfm input.px:focus,
body.rk-v3 #fwin_login .rfm select:focus {
  border-color: #365ce3 !important;
  outline: 2px solid rgba(54, 92, 227, .17) !important;
  outline-offset: 1px !important;
  background: #fff !important;
}
/* Preserve Discuz simulateSelect(), only clean its surrounding container. */
body.rk-v3 #fwin_login .login_slct {
  box-sizing: border-box !important;
  float: none !important;
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
}
body.rk-v3 #fwin_login .rfm input[type="checkbox"] {
  width: auto !important;
  height: auto !important;
  min-height: 0 !important;
  margin: 0 6px 0 0 !important;
  vertical-align: middle !important;
}
body.rk-v3 #fwin_login .rfm label {
  font-size: 14px !important;
  color: #334663 !important;
  line-height: 1.65 !important;
}
body.rk-v3 #fwin_login .rfm button[name="loginsubmit"],
body.rk-v3 #fwin_login .rfm button[name="lostpwsubmit"] {
  box-sizing: border-box !important;
  display: block !important;
  width: 100% !important;
  height: 49px !important;
  padding: 0 16px !important;
  margin: 5px 0 0 !important;
  border: none !important;
  border-radius: 11px !important;
  background: #3558dd !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 700 !important;
  line-height: 49px !important;
  text-align: center !important;
  box-shadow: none !important;
  cursor: pointer;
}
body.rk-v3 #fwin_login .rfm button[name="loginsubmit"] strong {
  color: #fff !important;
  font: inherit !important;
}
body.rk-v3 #fwin_login .rfm button[name="loginsubmit"]:hover,
body.rk-v3 #fwin_login .rfm button[name="lostpwsubmit"]:hover {
  background: #2949be !important;
}
body.rk-v3 #fwin_login .rfm button[name="loginsubmit"]:focus-visible,
body.rk-v3 #fwin_login .rfm button[name="lostpwsubmit"]:focus-visible {
  outline: 3px solid rgba(53, 88, 221, .3) !important;
  outline-offset: 2px !important;
}
@media (max-width: 480px) {
  body.rk-v3 #fwin_login { width: calc(100vw - 24px) !important; }
  body.rk-v3 #fwin_login .flb { min-height: 62px !important; padding: 14px 18px !important; }
  body.rk-v3 #fwin_login .flb em { font-size: 19px !important; }
  body.rk-v3 #fwin_login .c.cl,
  body.rk-v3 #fwin_login form.cl > .c { padding: 17px 18px 20px !important; }
}
