/* QH rural wastewater login. All rules are scoped to the original login view. */
html.qh-rural-login, html.qh-rural-login body, html.qh-rural-login #app { min-height:100%; height:auto; overflow:auto; }
html.qh-rural-login body { margin:0; background:#e9f2f1 !important; }
html.qh-rural-login .login-container {
  position:relative !important; width:100% !important; min-height:100vh !important; height:auto !important;
  color:#173d5c; background:#d8eaf1 url('/qh-rural-login-20261004-v1/background.webp') center center / cover no-repeat !important;
  font-family:'PingFang SC','Microsoft YaHei',sans-serif !important;
}
html.qh-rural-login .login-container .login-wrapper,
html.qh-rural-login .login-container .login-wrapper .login-main {
  position:relative !important; width:100% !important; max-width:none !important; min-width:0 !important;
  min-height:760px !important; min-height:max(720px,100vh) !important; height:auto !important; margin:0 !important; background:none !important;
}
html.qh-rural-login .qh-rural-brand { position:absolute; top:10.8vh; left:5.2%; z-index:1; color:#214e73; }
html.qh-rural-login .qh-rural-brand h1 { margin:0; color:inherit; font-size:clamp(36px,3.3vw,58px); line-height:1.25; font-weight:700; letter-spacing:2px; }
html.qh-rural-login .qh-brand-rule { display:block; width:27px; height:2px; background:#779aaa; margin:16px 0; }
html.qh-rural-login .qh-rural-brand p { margin:0; font-size:clamp(17px,1.6vw,24px); line-height:1.5; color:#456987; letter-spacing:1px; }
html.qh-rural-login .login-container .login-wrapper .login-main .form-wrapper {
  position:absolute !important; z-index:2 !important; box-sizing:border-box !important; top:48% !important; right:6% !important;
  width:clamp(380px,31vw,480px) !important; max-width:calc(100vw - 40px) !important; max-height:none !important;
  padding:clamp(34px,3.5vw,54px) !important; transform:translateY(-50%) !important; overflow:visible !important;
  border:1px solid rgba(255,255,255,.92) !important; border-radius:26px !important;
  background:linear-gradient(150deg,rgba(248,253,255,.84),rgba(242,249,245,.76)) !important;
  -webkit-backdrop-filter:blur(24px) saturate(.85); backdrop-filter:blur(24px) saturate(.85);
  box-shadow:0 20px 65px rgba(24,65,72,.13),inset 0 1px 0 rgba(255,255,255,.65) !important;
}
html.qh-rural-login .form-wrapper .platform-title { display:none !important; }
html.qh-rural-login .qh-login-heading h2 { margin:0 0 12px; font-size:36px; line-height:1.3; letter-spacing:2px; color:#173a56; font-weight:700; }
html.qh-rural-login .qh-login-heading p { margin:0 0 36px; font-size:15px; line-height:1.6; color:#5b7890; }
html.qh-rural-login .form-wrapper .lang-select { top:20px !important; right:22px !important; color:#496a80 !important; }
html.qh-rural-login .login-form .el-form-item { margin-bottom:24px !important; }
html.qh-rural-login .login-form .el-form-item__label { float:none !important; display:block !important; padding:0 0 10px !important; color:#21425e !important; font-size:15px !important; line-height:22px !important; font-weight:600; }
html.qh-rural-login .login-form .el-form-item__content { margin-left:0 !important; line-height:normal !important; }
html.qh-rural-login .login-form .el-input { height:54px !important; border:1px solid #c3d4e1 !important; border-radius:11px !important; background:rgba(250,252,255,.86) !important; transition:border-color .2s,box-shadow .2s; }
html.qh-rural-login .login-form .el-input input { box-sizing:border-box !important; height:52px !important; line-height:normal !important; padding:12px 42px !important; border:0 !important; border-radius:11px !important; background:transparent !important; color:#183d58 !important; font-size:15px !important; box-shadow:none !important; }
html.qh-rural-login .login-form .el-input input::placeholder { color:#7d95ac !important; opacity:1; }
html.qh-rural-login .login-form .el-input:focus-within { border-color:#2689e8 !important; box-shadow:0 0 0 3px rgba(38,137,232,.14) !important; }
html.qh-rural-login .login-form .svg-container { color:#54748e !important; bottom:0 !important; height:54px !important; width:40px !important; box-sizing:border-box; display:flex; align-items:center; padding:0 0 0 15px !important; pointer-events:none; }
html.qh-rural-login .login-form .el-input__suffix { display:flex; align-items:center; right:13px; line-height:normal !important; color:#67839a !important; }
html.qh-rural-login .login-form .el-button--primary {
  height:54px !important; width:100% !important; margin-top:4px !important; border:0 !important; border-radius:11px !important;
  background:linear-gradient(180deg,#3b9df5,#237fe5) !important; color:white !important; box-shadow:0 8px 22px rgba(35,127,229,.14) !important; font-size:17px !important; font-weight:600; letter-spacing:3px;
}
html.qh-rural-login .login-form .el-button--primary:hover { filter:brightness(1.035); }
html.qh-rural-login .login-form .el-button:focus-visible { outline:3px solid #2061a8; outline-offset:4px; }
html.qh-rural-login .login-form .is-error .el-input { border-color:#d43c3c !important; }
html.qh-rural-login .qh-login-note { margin:29px 0 0; text-align:center; color:#5d7b87; font-size:12px; line-height:1.6; letter-spacing:1px; white-space:nowrap; }
html.qh-rural-login .login-footer { position:absolute !important; bottom:0 !important; left:0; width:100%; box-sizing:border-box; height:auto !important; padding:14px 24px !important; background:rgba(244,250,249,.85) !important; color:#486372 !important; font-size:11px !important; line-height:1.6; gap:4px; z-index:3; -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px); }
html.qh-rural-login .login-footer .info-text { display:inline-block; margin-right:14px !important; }
html.qh-rural-login .login-footer a { color:#315e7b !important; }
html.qh-rural-login .login-footer .qh-browser-tip { display:none !important; }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) { html.qh-rural-login .login-container .login-wrapper .login-main .form-wrapper { background:rgba(246,251,252,.96) !important; } }
@media (max-width:1000px) {
  html.qh-rural-login .qh-rural-brand { left:5%; top:9vh; }
  html.qh-rural-login .login-container .login-wrapper .login-main .form-wrapper { right:4% !important; width:380px !important; padding:34px !important; }
}
@media (max-width:760px) {
  html.qh-rural-login .login-container { background-position:40% center !important; }
  html.qh-rural-login .login-container .login-wrapper,
  html.qh-rural-login .login-container .login-wrapper .login-main { min-height:100vh !important; }
  html.qh-rural-login .login-container .login-wrapper .login-main { box-sizing:border-box; padding:36px 20px 140px !important; }
  html.qh-rural-login .qh-rural-brand { position:relative; top:auto; left:auto; width:min(100%,420px); margin:0 auto 28px; }
  html.qh-rural-login .qh-rural-brand h1 { font-size:34px; }
  html.qh-rural-login .qh-brand-rule { margin:10px 0; }
  html.qh-rural-login .qh-rural-brand p { font-size:16px; }
  html.qh-rural-login .login-container .login-wrapper .login-main .form-wrapper { position:relative !important; top:auto !important; right:auto !important; transform:none !important; width:min(100%,420px) !important; max-width:none !important; margin:0 auto !important; padding:30px !important; border-radius:22px !important; }
  html.qh-rural-login .qh-login-heading h2 { font-size:30px; }
  html.qh-rural-login .qh-login-heading p { margin-bottom:26px; font-size:14px; }
  html.qh-rural-login .login-footer { padding:10px 16px !important; }
  html.qh-rural-login .qh-login-note { font-size:11px; letter-spacing:.4px; }
}
