:root{color-scheme:dark;--bg:#15152a;--panel:#20213c;--input:#151629;--line:#3a3c5e;--text:#f2f3ff;--muted:#9699b7;--cyan:#22dff2;--violet:#8100ff;--pink:#ff006a;--ok:#58e39c;--bad:#ff6b81}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 20% 0,#2a2251 0,#15152a 38%,#101020 100%);font-family:Inter,"Microsoft YaHei",system-ui,sans-serif;color:var(--text)}.shell{width:min(1060px,calc(100% - 28px));margin:0 auto;padding:34px 0 70px}header{text-align:center;margin-bottom:34px}h1{font-size:40px;margin:0 0 12px;letter-spacing:2px}header p{color:var(--muted);font-size:17px}.tabs{width:min(420px,100%);margin:0 auto 38px;padding:6px;background:#15162c;border-radius:999px;display:flex}.tab{flex:1;border:0;background:transparent;color:var(--muted);padding:15px 20px;border-radius:999px;font-size:17px;cursor:pointer}.tab.active{color:white;background:linear-gradient(100deg,var(--violet),var(--pink));box-shadow:0 8px 24px #8100ff50}.panel{display:none}.active-panel{display:block}.field-title,label{display:block;color:#b7bad1;font-size:16px;font-weight:600}.field-title{margin:0 0 12px}label{margin:22px 0 10px}.provider-tabs{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:34px}.provider-tab{height:58px;border-radius:15px;border:1px solid #454768;background:#272943;color:#b8bbd2;font-size:17px;font-weight:650;cursor:pointer}.provider-tab.active{border-color:#8b00ff;background:#39206c;color:#fff;box-shadow:0 0 0 1px #8b00ff inset,0 8px 25px #7000ff22}.provider-tab:focus-visible,.tab:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}input,select{width:100%;height:64px;border:1px solid #34364f;border-radius:16px;background:var(--input);color:white;padding:0 18px;font-size:16px;outline:none}input:focus,select:focus{border-color:#7b38ff;box-shadow:0 0 0 3px #7b38ff20}.auth-card{margin-top:30px;padding:28px;border-radius:18px}.oauth-card{border:1px solid #1f8493;border-left:5px solid var(--cyan);background:#22304f}.firstmail-card{border:1px solid #7952ca;border-left:5px solid #9c5cff;background:#28234a}.auth-card h2{font-size:19px;color:var(--cyan);margin:0 0 12px}.firstmail-card h2{color:#c9adff}.server-note{display:inline-flex;padding:8px 12px;border-radius:9px;background:#17182e;color:#aeb1cb;font-size:13px;margin:3px 0 4px}.secret-wrap{display:flex;gap:10px;align-items:center}.secret-wrap input{flex:1}.ghost,.secondary,.primary{border:0;border-radius:14px;color:white;cursor:pointer;font-size:16px}.ghost{background:#2b2d49;border:1px solid #484b6c}.small{height:64px;padding:0 20px}.actions{display:grid;grid-template-columns:1fr 2fr;gap:24px;margin-top:34px}.secondary,.primary{height:68px}.secondary{background:#343650;border:1px solid #51536e}.primary{font-weight:700;background:linear-gradient(100deg,var(--violet),var(--pink));box-shadow:0 10px 30px #7b00ff3d}.primary:disabled{opacity:.6;cursor:wait}.status,.result,.totp-result{margin-top:24px;border:1px solid #34364f;background:#1b1c31;border-radius:18px;padding:22px}.status{color:#ccd0e8;white-space:pre-wrap}.status.error{border-color:#7c3341;color:#ffbac4}.hidden{display:none!important}.code-row{display:flex;align-items:center;justify-content:space-between;gap:18px}.muted{color:var(--muted)}.code,.big-code{display:block;border:0;background:transparent;color:white;cursor:pointer;font-weight:800;letter-spacing:4px}.code{font-size:36px;padding:8px 0}.big-code{font-size:56px;margin:14px auto}.badge{padding:8px 12px;border-radius:999px;background:#194934;color:#8ff1bb;font-size:13px}dl{margin:20px 0 0}dl div{display:grid;grid-template-columns:80px 1fr;gap:12px;padding:9px 0;border-bottom:1px solid #2b2d44}dt{color:var(--muted)}dd{margin:0;word-break:break-word}dd em{color:#8e91ad;font-style:normal;font-size:12px}.body-title{margin-top:22px;color:#b9bdd5}pre{white-space:pre-wrap;word-break:break-word;background:#111220;border:1px solid #2d2f47;border-radius:14px;padding:18px;line-height:1.7;max-height:420px;overflow:auto;color:#eceefe}.token-update{margin-top:16px;padding:14px;border-radius:12px;background:#3a2d18;color:#ffd68a}.token-update .ghost{margin-left:10px;padding:8px 12px}.totp-result{text-align:center}.countdown{color:#babdd3}.progress{height:8px;background:#2d2f47;border-radius:999px;overflow:hidden;margin:14px auto 18px;max-width:480px}.progress i{display:block;height:100%;background:linear-gradient(90deg,var(--violet),var(--pink));width:100%;transition:width .3s linear}.tip{color:#8589a8;font-size:13px}@media(max-width:680px){h1{font-size:30px}.shell{padding-top:24px}.provider-tabs{grid-template-columns:1fr;gap:10px}.auth-card{padding:20px}.actions{grid-template-columns:1fr}.secret-wrap{display:block}.secret-wrap .small{width:100%;height:46px;margin-top:8px}.code-row{align-items:flex-start;flex-direction:column}.code{font-size:30px}}

.fixed-range {
  width: 100%;
  box-sizing: border-box;
  border: 1px solid rgba(153, 151, 207, 0.25);
  border-radius: 16px;
  padding: 20px 24px;
  background: rgba(11, 13, 29, 0.55);
  color: #f4f4ff;
  font-weight: 700;
  margin-bottom: 26px;
}


/* V2.3 - 2FA 独立复制按钮 */
.totp-code-row{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:22px;
  margin:14px auto 16px;
  min-width:0;
}
.totp-code-row .big-code{
  margin:0;
  cursor:default;
  line-height:1;
}
.totp-copy-btn{
  min-width:104px;
  height:48px;
  padding:0 20px;
  border:1px solid #626684;
  border-radius:12px;
  background:#343650;
  color:#f5f6ff;
  font-size:16px;
  font-weight:700;
  cursor:pointer;
  transition:background .18s ease,border-color .18s ease,color .18s ease,transform .08s ease;
}
.totp-copy-btn:hover{
  border-color:#8b8fb5;
  background:#42455f;
}
.totp-copy-btn:active{
  transform:translateY(1px);
}
.totp-copy-btn.copied{
  background:#176b48;
  border-color:#58e39c;
  color:#dffff0;
}
.totp-copy-btn:focus-visible{
  outline:2px solid var(--cyan);
  outline-offset:2px;
}
@media(max-width:680px){
  .totp-code-row{
    gap:12px;
  }
  .totp-code-row .big-code{
    font-size:44px;
  }
  .totp-copy-btn{
    min-width:88px;
    padding:0 14px;
  }
}


/* V2.4 - 邮箱地址并入认证信息框 */
.auth-card h2 + label{
  margin-top:22px;
}


/* V2.5 - 邮箱验证码独立复制按钮 */
.mail-code-block{
  min-width:0;
}
.mail-code-row{
  display:flex;
  align-items:center;
  gap:18px;
  margin-top:6px;
  min-width:0;
}
.mail-code-row .code{
  padding:8px 0;
  cursor:default;
  line-height:1;
}
.mail-copy-btn:disabled{
  opacity:.45;
  cursor:not-allowed;
}
.mail-copy-btn.copied{
  background:#176b48;
  border-color:#58e39c;
  color:#dffff0;
}
@media(max-width:680px){
  .mail-code-row{
    gap:12px;
    flex-wrap:wrap;
  }
  .mail-copy-btn{
    min-width:88px;
  }
}
