/* TG号铺登录界面——仅作用于 #login-view，不覆盖后台其他业务页面 */
#login-view.login-screen{background:radial-gradient(circle at 0% 8%,#c9e3ff 0,transparent 38%),radial-gradient(circle at 96% 88%,#b5d6ff 0,transparent 40%),linear-gradient(125deg,#e5f3ff,#f9fcff 50%,#e7f3ff);padding:clamp(20px,4vh,52px) 24px;isolation:isolate;overflow-x:hidden;overflow-y:auto}
#login-view .login-shell-wrap{position:relative;z-index:1;width:min(1160px,100%);display:grid;grid-template-columns:minmax(0,1.05fr) minmax(390px,.95fr);align-items:stretch;gap:24px}
#login-view .login-showcase{position:relative;display:block;min-height:615px;padding:0;overflow:hidden;border:1px solid rgba(179,210,255,.7);border-radius:30px;background:linear-gradient(135deg,#c6e3ff,#ebf6ff);box-shadow:0 22px 60px rgba(35,97,183,.14)}
#login-view .login-showcase:before,#login-view .login-showcase:after{content:none}
#login-view .login-social-scene{position:absolute;inset:-1px;background-image:linear-gradient(180deg,transparent 64%,rgba(229,242,255,.86) 100%),url('../img/login-social.webp');background-repeat:no-repeat;background-size:cover;background-position:center 43%;filter:saturate(1.07)}
#login-view .login-showcase-brand{position:absolute;left:34px;bottom:34px;z-index:1;display:flex;align-items:center;gap:15px;color:#124caa;text-shadow:0 1px 5px rgba(255,255,255,.8)}
#login-view .showcase-brand-mark{background:linear-gradient(145deg,#1b8eff,#0b60d4);width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff;font-size:16px;font-weight:900;box-shadow:0 8px 24px rgba(43,115,234,.22);text-shadow:none}
#login-view .login-showcase-brand strong{font-size:30px;font-weight:850;letter-spacing:.015em}
#login-view .login-panel{padding:52px clamp(28px,4vw,50px) 44px;min-height:615px;max-width:none;width:100%;border:1px solid #e0ebfc;background:rgba(255,255,255,.97);border-radius:30px;box-shadow:0 22px 65px rgba(33,94,174,.13);display:flex;flex-direction:column;justify-content:center}
#login-view .login-panel .login-brand{display:flex;align-items:center;gap:13px;margin:0 0 26px}
#login-view .telegram-brand-logo{height:45px;width:45px;object-fit:contain;flex-shrink:0;display:block}
#login-view .brand-name{font-size:23px;font-weight:850;letter-spacing:0;color:#143668}
#login-view .login-panel h1{font-size:29px;margin:0 0 32px;letter-spacing:-.035em;font-weight:800;color:#182f58}
#login-view .form-label{font-size:14px;font-weight:730;margin:0 0 9px;color:#354d70}
#login-view .input-wrap{min-height:55px;margin-bottom:21px;padding:0 16px;border:1px solid #d9e7f8;border-radius:14px;background:#fbfdff;transition:background .15s,border-color .15s,box-shadow .15s}
#login-view .input-wrap:focus-within{border-color:#62a6ff;background:#fff;box-shadow:0 0 0 4px rgba(57,139,240,.10)}
#login-view .input-wrap input{height:52px;font-size:15px;color:#233b5a}
#login-view .input-wrap input::placeholder{color:#9aabc3}
#login-view .input-wrap > span svg{height:18px;width:18px}
#login-view .input-trailing{padding:8px}
#login-view #login-submit{min-height:54px;width:100%;margin-top:7px;background:linear-gradient(110deg,#2b8aff,#0968e6);border:0;border-radius:13px;color:#fff;font-size:15px;font-weight:780;box-shadow:0 9px 21px rgba(40,121,236,.25);display:flex;align-items:center;gap:10px}
#login-view #login-submit:hover:not(:disabled){background:linear-gradient(110deg,#1677fa,#0759cc)}
#login-view #login-submit:disabled{opacity:.82}
#login-view .telegram-login-wrap{border:0;background:transparent;border-radius:0;padding:0;margin:0}
#login-view .telegram-login-wrap .login-divider{position:static;margin:21px 0 21px;font-size:12px;color:#9babc0}
#login-view .login-divider:before,#login-view .login-divider:after{background:#dfe9f7}
#login-view .telegram-login-button{position:relative;display:flex;width:100%;min-height:54px;align-items:center;justify-content:center;gap:13px;padding:10px 16px;border:1.5px solid #a7ccff;border-radius:13px;background:#fff;color:#1673e2;font-size:15px;font-weight:790;transition:background .16s,border-color .16s,box-shadow .16s}
#login-view .telegram-login-button:hover:not(:disabled){background:#f2f8ff;border-color:#4d9eff;box-shadow:0 6px 18px rgba(38,105,187,.09)}
#login-view .telegram-login-button .telegram-brand-logo{width:28px;height:28px}
#login-view .telegram-login-button:disabled{opacity:.75;cursor:wait}
#login-view #telegram-widget:not([hidden]){display:flex;justify-content:center;padding:17px 10px 8px;min-height:60px;align-items:center}
#login-view #telegram-widget iframe{max-width:100%}
#login-view .telegram-login-status{font-size:12px;line-height:1.5;color:#3e648f;margin:9px 0 0;text-align:center}
#login-view .login-progress{display:flex;align-items:center;justify-content:center;gap:9px;color:#236fcb;font-size:12px;font-weight:650;margin-top:16px}
#login-view .login-progress[hidden]{display:none}
#login-view .login-progress-spinner,#login-view .login-button-loader{width:16px;height:16px;border:2px solid rgba(32,112,226,.2);border-top-color:#1884ed;border-radius:50%;animation:loginSpin .8s linear infinite;flex:0 0 16px}
#login-view #login-submit .login-button-loader{border-color:rgba(255,255,255,.3);border-top-color:white}
#login-view .login-button-loader[hidden]{display:none}
@keyframes loginSpin{to{transform:rotate(360deg)}}
#login-view .form-error{font-size:12px;border-radius:9px;margin:0 0 12px}
@media(max-width:940px){
  #login-view.login-screen{background:radial-gradient(circle at 18% 15%,rgba(63,154,255,.22),transparent 49%),radial-gradient(circle at 90% 90%,rgba(58,148,255,.22),transparent 42%),#eff7ff}
  #login-view.login-screen:before{content:none}
  #login-view .login-shell-wrap{display:grid;grid-template-columns:minmax(0,1fr);width:min(100%,475px);gap:15px;align-items:start}
  #login-view .login-showcase{display:block;width:100%;height:clamp(196px,30vw,265px);min-height:0;padding:0;border-radius:23px;overflow:hidden}
  #login-view .login-social-scene{inset:0;background-image:linear-gradient(180deg,transparent 76%,rgba(225,240,255,.68)),url('../img/login-social.webp');background-size:cover;background-position:center 47%;filter:saturate(1.08)}
  #login-view .login-showcase-brand{left:17px;bottom:14px;gap:9px}
  #login-view .showcase-brand-mark{width:33px;height:33px;border-radius:10px;font-size:12px}
  #login-view .login-showcase-brand strong{font-size:18px}
  #login-view .login-panel{min-height:0;padding:33px 36px 33px;border-radius:23px}
}
@media(max-width:480px){
  #login-view.login-screen{min-height:100dvh;padding:18px 16px 24px;justify-content:flex-start}
  #login-view .login-shell-wrap{gap:12px}
  #login-view .login-showcase{height:clamp(175px,48vw,218px);border-radius:20px}
  #login-view .login-showcase-brand{left:13px;bottom:11px;gap:8px}
  #login-view .showcase-brand-mark{width:29px;height:29px;border-radius:8px;font-size:11px}
  #login-view .login-showcase-brand strong{font-size:16px}
  #login-view .login-panel{padding:27px 23px 25px;border-radius:21px;box-shadow:0 16px 42px rgba(26,95,184,.12)}
  #login-view .login-panel .login-brand{margin-bottom:22px}
  #login-view .telegram-brand-logo{width:41px;height:41px}
  #login-view .brand-name{font-size:21px}
  #login-view .login-panel h1{font-size:25px;margin-bottom:25px}
  #login-view .input-wrap{min-height:47px;margin-bottom:17px}
  #login-view .input-wrap input{height:46px;font-size:14px}
  #login-view #login-submit,#login-view .telegram-login-button{min-height:49px;font-size:14px}
  #login-view .telegram-login-wrap .login-divider{margin:19px 0}
  #login-view .telegram-login-button .telegram-brand-logo{width:25px;height:25px}
}
@media(prefers-reduced-motion:reduce){#login-view .login-button-loader,#login-view .login-progress-spinner{animation:none}}

/* TG 登录采用原生深链，不再嵌入 Telegram 网页组件 */
#login-view .telegram-login-button:focus-visible{outline:3px solid rgba(34,158,217,.23);outline-offset:3px}
