/* TOALDO Client V1.4.7 — website-parity login */
#loginView{
  --w-bg:#0b0f14;--w-panel:#11161d;--w-panel2:#0e1319;--w-line:#27313b;--w-line2:#34404c;
  --w-text:#f1f4f7;--w-muted:#8a96a2;--w-subtle:#65717d;--w-focus:#647689;--w-ok:#79c596;--w-bad:#d77d75;
  min-height:100vh;background:#0b0f14;color:var(--w-text);font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif;
  letter-spacing:0;font-weight:400;
}
#loginView *{box-sizing:border-box}
#loginView button,#loginView input{font:inherit}
#loginView .native-login-ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 22% 28%,rgba(91,111,132,.09),transparent 30%),radial-gradient(circle at 78% 72%,rgba(49,62,75,.08),transparent 28%)}
#loginView .native-login-frame{position:relative;z-index:1;min-height:100vh;display:grid;grid-template-rows:auto 1fr auto;max-width:1440px;margin:auto;padding:28px 40px 22px}
#loginView .native-login-topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;min-height:54px}
#loginView .native-login-brand{display:flex;align-items:center;gap:11px;color:var(--w-text)}
#loginView .native-login-brand img{width:34px;height:34px;object-fit:contain}
#loginView .native-login-brand strong{display:block;font-size:15px;line-height:1.05;font-weight:650;letter-spacing:.10em}
#loginView .native-login-brand span{display:block;margin-top:4px;font-size:8px;line-height:1;font-weight:500;letter-spacing:.24em;color:#66737f}
#loginView .native-connection-status{height:36px;display:inline-flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--w-line);border-radius:10px;background:#0e141a;color:#aeb8c2;font-size:11px;font-weight:500;cursor:pointer}
#loginView .native-connection-status:hover{border-color:#3b4855;background:#111820}
#loginView .native-connection-dot{width:7px;height:7px;border-radius:50%;background:#6d7883;box-shadow:none}
#loginView .native-connection-dot.is-checking{animation:toaldoPulse 1.15s infinite}
#loginView .native-connection-dot.is-online{background:var(--w-ok);box-shadow:0 0 0 3px rgba(121,197,150,.08)}
#loginView .native-connection-dot.is-warning,#loginView .native-connection-dot.is-offline{background:var(--w-bad);box-shadow:0 0 0 3px rgba(215,125,117,.08)}
@keyframes toaldoPulse{50%{opacity:.35}}
#loginView .native-endpoint-wrap,#loginView .native-endpoint-switch,#loginView .native-endpoint-menu{display:none!important}
#loginView .native-login-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,440px);gap:clamp(60px,9vw,150px);align-items:center;width:min(1120px,100%);margin:auto;padding:48px 0 64px}
#loginView .native-login-intro{max-width:590px}
#loginView .native-login-kicker{margin-bottom:18px;font-size:10px;line-height:1;font-weight:550;letter-spacing:.18em;color:#778491}
#loginView .native-login-intro h1{margin:0;color:#f3f6f8;font-size:clamp(38px,4.3vw,58px);line-height:1.08;letter-spacing:-.045em;font-weight:560}
#loginView .native-login-name,#loginView .native-login-native,#loginView .native-login-intro h1 small{display:contents;color:inherit;font:inherit;letter-spacing:inherit}
#loginView .native-login-intro>p{max-width:520px;margin:22px 0 0;color:#7e8a96;font-size:14px;line-height:1.75;font-weight:400}
#loginView .native-capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;margin-top:34px;max-width:560px}
#loginView .native-capability{min-height:62px;display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #202933;border-radius:12px;background:rgba(14,19,25,.58)}
#loginView .native-capability svg{width:22px;height:22px;fill:none;stroke:#8d9aa7;stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;flex:0 0 auto}
#loginView .native-capability strong{display:block;color:#dfe5ea;font-size:12px;line-height:1.3;font-weight:550}
#loginView .native-capability span{display:block;margin-top:4px;color:#687580;font-size:10px;line-height:1.35;font-weight:400}
#loginView .native-auth-card{width:100%;border:1px solid #29333d;border-radius:16px;background:rgba(17,22,29,.94);box-shadow:0 24px 80px rgba(0,0,0,.30);overflow:hidden}
#loginView .native-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:0;margin:0;padding:0 18px;border-bottom:1px solid #252f39}
#loginView .native-auth-tabs .login-tab{min-height:57px;border:0;border-bottom:2px solid transparent;background:transparent;color:#77838f;font-size:13px;font-weight:520;padding:0 8px}
#loginView .native-auth-tabs .login-tab:hover{color:#cbd3da}
#loginView .native-auth-tabs .login-tab.active{color:#eef2f5;border-bottom-color:#aab7c4}
#loginView .native-auth-body{padding:22px 24px 24px}
#loginView .login-method{display:none}
#loginView .login-method.active{display:block}
#loginView .native-legacy-method{display:none!important}
#loginView .native-field{display:grid;grid-template-columns:auto 1fr;align-items:center;min-height:48px;margin-bottom:10px;border:1px solid #28323c;border-radius:10px;background:#0c1117;overflow:hidden;transition:border-color .15s,box-shadow .15s}
#loginView .native-field:focus-within{border-color:#506070;box-shadow:0 0 0 3px rgba(80,96,112,.10)}
#loginView .native-field input{width:100%;height:46px;border:0!important;outline:0!important;background:transparent!important;color:#e9eef2!important;padding:0 12px;font-size:13px;line-height:1;box-shadow:none!important}
#loginView .native-field input::placeholder{color:#596570;opacity:1}
#loginView .native-field-prefix{min-width:60px;padding-left:13px;color:#8e9aa6;font-size:11px;font-weight:500}
#loginView .native-phone-field{grid-template-columns:76px 1fr}
#loginView .native-country-code{height:46px;display:flex;align-items:center;justify-content:center;gap:6px;border-right:1px solid #252f38;color:#cfd6dc}
#loginView .native-country-code b{font-size:13px;font-weight:550}
#loginView .native-country-code svg{width:12px;height:12px;fill:none;stroke:#697681;stroke-width:1.8}
#loginView .native-code-field{grid-template-columns:62px 1fr auto}
#loginView .native-code-field button{height:32px;margin-right:7px;padding:0 10px;border:0;border-left:1px solid #27313a;background:transparent;color:#b6c0c9;font-size:11px;font-weight:520}
#loginView .native-code-field button:hover{color:#f0f3f5}
#loginView .native-code-field button:disabled{color:#5d6872;cursor:default}
#loginView .native-password-field{grid-template-columns:62px 1fr 40px}
#loginView .native-password-toggle{width:36px;height:36px;border:0;background:transparent;color:#66737e;display:grid;place-items:center}
#loginView .native-password-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5}
#loginView .native-password-toggle:hover,#loginView .native-password-toggle.is-visible{color:#c3ccd4}
#loginView .native-login-agreement{display:flex;align-items:flex-start;gap:8px;margin-top:14px;color:#74808b;font-size:10px;line-height:1.55;cursor:pointer}
#loginView .native-login-agreement input{position:absolute;opacity:0;pointer-events:none}
#loginView .native-agreement-check{width:15px;height:15px;flex:0 0 15px;margin-top:1px;border:1px solid #4a5662;border-radius:4px;background:#0b1016}
#loginView .native-login-agreement input:checked+.native-agreement-check{border-color:#aeb9c4;background:#e4e9ed;box-shadow:inset 0 0 0 3px #111820}
#loginView .native-login-agreement a,#loginView .native-inline-action{color:#aab6c1;text-decoration:none}
#loginView .native-inline-action{border:0;background:transparent;padding:0;font-size:inherit}
#loginView .native-login-primary{width:100%;min-height:46px;margin-top:16px;border:1px solid #e5eaee;border-radius:9px;background:#e5eaee;color:#0b1015;font-size:13px;font-weight:620;transition:.15s}
#loginView .native-login-primary:hover{background:#f5f7f9;border-color:#f5f7f9}
#loginView .native-login-primary:disabled{opacity:.55;cursor:wait}
#loginView .native-login-tip{min-height:16px;margin-top:7px;text-align:center;color:#65717c;font-size:10px;line-height:1.45}
#loginView .native-other-login{display:flex;align-items:center;gap:10px;margin:17px 0 8px;color:#58646f;font-size:9px}
#loginView .native-other-login:before,#loginView .native-other-login:after{content:"";height:1px;background:#25303a;flex:1}
#loginView .native-wechat-login{width:100%;min-height:38px;display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;color:#aeb8c1;font-size:11px;font-weight:500}
#loginView .native-wechat-login:hover{color:#eef2f5}
#loginView .native-wechat-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#2dc34f}
#loginView .native-wechat-icon svg{width:18px;height:18px}
#loginView .native-wechat-icon path:first-child{fill:#fff}.native-wechat-icon path:nth-child(2){fill:#e5f8e9}.native-wechat-icon circle{fill:#2dc34f}
#loginView .native-login-error{display:none;min-height:17px;margin-top:8px;color:#d98b83;font-size:10px;line-height:1.5}
#loginView .native-login-error.is-visible{display:block}
#loginView .native-login-footer{display:flex;align-items:center;justify-content:center;gap:7px;min-height:28px;color:#535f6a;font-size:9px;letter-spacing:.03em}
#loginView .native-login-footer svg{display:none}
#loginView .native-qr-layer{position:fixed;inset:0;z-index:2000;display:none;place-items:center;padding:24px;background:rgba(5,8,11,.76);backdrop-filter:blur(8px)}
#loginView .native-qr-layer.active{display:grid}
#loginView .native-qr-card{position:relative;width:min(390px,92vw);padding:26px;border:1px solid #2b3540;border-radius:16px;background:#11171e;color:#eef2f5;box-shadow:0 28px 90px rgba(0,0,0,.48);text-align:center}
#loginView .native-qr-close{position:absolute;right:12px;top:12px;width:30px;height:30px;border:1px solid #29343e;border-radius:8px;background:#0e141a;color:#8c98a3;font-size:18px}
#loginView .native-qr-brand{font-size:14px;font-weight:600;letter-spacing:.08em}.native-qr-brand span{display:block;margin-top:4px;font-size:8px;color:#64717c;letter-spacing:.22em}
#loginView .native-qr-card .qr-box{width:190px;height:190px;margin:18px auto 14px;background:#fff;border-radius:8px;overflow:hidden;display:grid;place-items:center}
#loginView .native-qr-card .qr-box img{width:100%;height:100%}
#loginView .native-qr-card .qr-placeholder{color:#69737b;font-size:11px}
#loginView .native-qr-card .qr-login strong{font-size:15px;font-weight:560}
#loginView .native-qr-card .qr-login p,#loginView .native-qr-card .login-note{color:#77838e;font-size:10px;line-height:1.65}
#loginView .native-qr-refresh{margin-top:10px;padding:9px 12px;border:1px solid #32404c;border-radius:8px;background:#151d25;color:#d7dee4;font-size:11px}
@media(max-width:900px){#loginView .native-login-frame{padding:22px 24px}#loginView .native-login-layout{grid-template-columns:1fr;gap:34px;padding:34px 0 48px}#loginView .native-login-intro{max-width:660px}#loginView .native-capability-grid{grid-template-columns:repeat(4,1fr);max-width:none}#loginView .native-auth-card{max-width:480px}}
@media(max-width:620px){#loginView .native-login-frame{padding:18px 16px}#loginView .native-login-layout{padding:28px 0 38px}#loginView .native-login-intro h1{font-size:34px}#loginView .native-capability-grid{grid-template-columns:1fr 1fr}#loginView .native-capability{padding:10px}#loginView .native-auth-body{padding:18px}#loginView .native-login-brand img{width:30px;height:30px}}

/* TOALDO_V147_LINEAR_LOGIN_LAYOUT_FIX_V2_BEGIN */

#loginView.toaldo-native-login{
  display:block!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  min-height:100vh!important;
  margin:0!important;
  padding:0!important;
  gap:0!important;
  grid-template-columns:none!important;
  grid-template-rows:none!important;
  align-items:stretch!important;
  justify-items:stretch!important;
  background:#0b0f14!important;
  color:#eef2f5!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif!important;
  font-weight:400!important;
  letter-spacing:0!important;
}

#loginView .native-login-frame{
  width:100%!important;
  max-width:1360px!important;
  min-width:0!important;
  margin:0 auto!important;
  padding:26px 40px 22px!important;
}

#loginView .native-login-layout{
  display:grid!important;
  width:100%!important;
  max-width:1080px!important;
  min-width:0!important;
  margin:auto!important;
  padding:42px 0 58px!important;
  grid-template-columns:minmax(420px,1fr) 380px!important;
  column-gap:clamp(40px,5.5vw,72px)!important;
  row-gap:32px!important;
  align-items:center!important;
  justify-content:center!important;
}

#loginView .native-login-intro{
  width:100%!important;
  max-width:560px!important;
  min-width:0!important;
}

#loginView .native-login-kicker{
  margin:0 0 14px!important;
  color:#74818d!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:450!important;
  letter-spacing:.14em!important;
}

#loginView .native-login-intro h1{
  display:block!important;
  width:100%!important;
  max-width:560px!important;
  margin:0!important;
  color:#edf1f4!important;
  font-size:clamp(32px,3.15vw,44px)!important;
  line-height:1.18!important;
  font-weight:500!important;
  letter-spacing:-.032em!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  line-break:strict!important;
  writing-mode:horizontal-tb!important;
  text-orientation:mixed!important;
}

#loginView .native-login-intro>p{
  width:100%!important;
  max-width:520px!important;
  margin:18px 0 0!important;
  color:#7d8994!important;
  font-size:13px!important;
  line-height:1.72!important;
  font-weight:400!important;
  letter-spacing:0!important;
  white-space:normal!important;
  word-break:keep-all!important;
  overflow-wrap:normal!important;
  writing-mode:horizontal-tb!important;
}

#loginView .native-login-brand strong{
  font-size:14px!important;
  font-weight:560!important;
  letter-spacing:.08em!important;
}
#loginView .native-login-brand span{font-weight:450!important}
#loginView .native-capability-grid{margin-top:28px!important;gap:8px!important}
#loginView .native-capability{
  min-height:58px!important;
  padding:11px 13px!important;
  border-radius:10px!important;
}
#loginView .native-capability strong{font-size:12px!important;font-weight:500!important}
#loginView .native-capability span{font-size:10px!important;font-weight:400!important}
#loginView .native-auth-tabs .login-tab{font-size:12px!important;font-weight:500!important}
#loginView .native-field-prefix{font-weight:450!important}
#loginView .native-country-code b{font-weight:500!important}
#loginView .native-code-field button{font-weight:500!important}
#loginView .native-login-primary{font-size:13px!important;font-weight:560!important}
#loginView .native-wechat-login{font-weight:450!important}
#loginView .native-connection-status{font-weight:450!important}

@media(max-width:930px){
  #loginView .native-login-frame{padding:22px 26px 20px!important}
  #loginView .native-login-layout{
    grid-template-columns:1fr!important;
    max-width:680px!important;
    gap:28px!important;
    padding:30px 0 44px!important;
  }
  #loginView .native-login-intro{max-width:620px!important}
  #loginView .native-login-intro h1{max-width:620px!important;font-size:36px!important}
  #loginView .native-capability-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    max-width:none!important;
  }
  #loginView .native-auth-card{max-width:440px!important}
}

@media(max-width:620px){
  #loginView .native-login-frame{padding:18px 16px!important}
  #loginView .native-login-layout{padding:24px 0 36px!important}
  #loginView .native-login-intro h1{font-size:30px!important;line-height:1.2!important}
  #loginView .native-capability-grid{grid-template-columns:1fr 1fr!important}
}

/* TOALDO_V147_LINEAR_LOGIN_LAYOUT_FIX_V2_END */

/* TOALDO_V147_LOGIN_SUCCESS_HIDE_GATE_V1_BEGIN */
html.toaldo-client-authenticated #loginView,
html.toaldo-client-authenticated #loginView.toaldo-native-login,
#loginView.toaldo-native-login.hidden{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
/* TOALDO_V147_LOGIN_SUCCESS_HIDE_GATE_V1_END */

