:root{--primary:#7c3aed;--primary2:#a855f7;--primary3:#c084fc;--ink:#171827;--muted:#6b7280;--line:#e8e3f3;--surface:rgba(255,255,255,.92);--soft:#f7f4ff;--ok:#059669;--danger:#dc2626;--warn:#d97706;--shadow:0 18px 55px rgba(76,29,149,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-height:100vh;font-family:Inter,"PingFang SC","Microsoft YaHei",system-ui,sans-serif;color:var(--ink);background:radial-gradient(circle at 12% -10%,#e9dcff 0,transparent 30%),radial-gradient(circle at 94% 8%,#f5ddff 0,transparent 25%),linear-gradient(#fbfaff,#f6f7fb 38%,#f7f7fb);display:flex;flex-direction:column}a{text-decoration:none;color:inherit}button,input{font:inherit}.container{width:min(1180px,calc(100% - 32px));margin:auto}.glass-nav{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.76);backdrop-filter:blur(18px);border-bottom:1px solid rgba(124,58,237,.08)}.nav-inner{height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:11px;font-size:20px;font-weight:850;letter-spacing:-.3px}.brand-mark{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#6d28d9,#a855f7 62%,#c084fc);box-shadow:0 10px 24px rgba(124,58,237,.28);font-weight:900}.nav-links{display:flex;align-items:center;gap:6px}.nav-links a{padding:9px 12px;border-radius:10px;font-size:14px;color:#52525b;transition:.2s}.nav-links a:hover,.nav-links a.active{background:#f1eafe;color:#6d28d9}.hero{padding:58px 0 24px;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;border:1px solid #eadcff;background:rgba(255,255,255,.7);color:#7c3aed;font-size:12px;font-weight:750}.hero h1{margin:14px 0 10px;font-size:clamp(34px,6vw,58px);line-height:1.08;letter-spacing:-1.8px}.hero h1 span{background:linear-gradient(90deg,#6d28d9,#a855f7);-webkit-background-clip:text;color:transparent}.hero p{margin:0 auto;max-width:720px;color:var(--muted);line-height:1.8}.shell{background:var(--surface);border:1px solid rgba(124,58,237,.12);border-radius:26px;box-shadow:var(--shadow);overflow:hidden}.shell-head{padding:22px 24px;border-bottom:1px solid #f0ecf6;background:linear-gradient(180deg,rgba(250,247,255,.9),rgba(255,255,255,.8));display:flex;align-items:center;justify-content:space-between;gap:14px}.shell-title{font-size:18px;font-weight:800}.shell-sub{font-size:12px;color:var(--muted);margin-top:4px}.shell-body{padding:24px}.chips{display:flex;gap:8px;flex-wrap:wrap}.chip{padding:7px 10px;border-radius:999px;background:#f3edff;color:#6d28d9;font-size:12px;font-weight:700;border:1px solid #eadcff}.api-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-top:18px}.api{position:relative}.api input{position:absolute;opacity:0;pointer-events:none}.api label{min-height:86px;border:1px solid var(--line);border-radius:16px;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;cursor:pointer;transition:.2s}.api label strong{font-size:16px}.api label small{margin-top:5px;color:#8b8b98;font-size:11px}.api input:checked+label{border-color:#8b5cf6;background:linear-gradient(180deg,#fbf8ff,#f4ecff);box-shadow:0 0 0 3px #eee6ff,0 10px 24px rgba(124,58,237,.09);color:#6d28d9;transform:translateY(-1px)}.drop{margin-top:18px;border:1.6px dashed #bfa8ed;border-radius:22px;padding:46px 20px;text-align:center;cursor:pointer;background:linear-gradient(180deg,#fbf9ff,#fff);transition:.2s}.drop:hover,.drop.drag{border-color:#7c3aed;background:#f7f1ff;transform:translateY(-1px)}.drop-icon{width:58px;height:58px;border-radius:18px;margin:0 auto 14px;display:grid;place-items:center;font-size:25px;background:linear-gradient(135deg,#ede4ff,#f7efff);color:#7c3aed}.drop b{display:block;font-size:18px}.drop span{display:block;font-size:13px;color:var(--muted);margin-top:7px}.queue{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:18px}.upload-item{border:1px solid var(--line);background:#fff;border-radius:18px;padding:11px;display:flex;gap:11px;align-items:center;min-width:0;box-shadow:0 8px 22px rgba(17,24,39,.04)}.thumb{width:68px;height:68px;border-radius:13px;object-fit:cover;background:#f3f4f6;flex:none}.meta{min-width:0;flex:1}.name{font-size:13px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sub,.status{font-size:11px;color:var(--muted);margin-top:5px}.ok{color:var(--ok)!important}.bad{color:var(--danger)!important}.warn{color:var(--warn)!important}.icon-btn{border:0;background:#f5f3f7;color:#7b7b86;border-radius:9px;width:30px;height:30px;cursor:pointer}.actions{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:22px}.btn{border:0;border-radius:13px;padding:12px 18px;font-weight:800;cursor:pointer;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn-primary{color:#fff;background:linear-gradient(135deg,#6d28d9,#8b5cf6 55%,#a855f7);box-shadow:0 10px 24px rgba(124,58,237,.24)}.btn-soft{background:#f3f0f7;color:#4b5563}.btn-danger{background:#fff0f0;color:#b91c1c}.btn:disabled{opacity:.48;cursor:not-allowed;transform:none}.results{margin-top:22px}.result-card{padding:15px;border:1px solid var(--line);border-radius:16px;background:#fff;margin-top:10px}.result-top{display:flex;justify-content:space-between;gap:12px;align-items:center}.url{font-size:12px;color:#626271;word-break:break-all;margin-top:7px;line-height:1.6}.result-actions{display:flex;gap:8px;margin-top:11px}.mini{border:0;padding:8px 10px;border-radius:9px;cursor:pointer;background:#f2edff;color:#6d28d9}.section{margin:24px 0 38px}.page-title{padding:42px 0 20px}.page-title h1{font-size:clamp(28px,4vw,42px);margin:0 0 8px}.page-title p{color:var(--muted);margin:0}.history-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}.history-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.history-card{background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 10px 26px rgba(17,24,39,.05);transition:.2s}.history-card:hover{transform:translateY(-2px);box-shadow:0 14px 32px rgba(76,29,149,.08)}.history-card .cover{position:relative;aspect-ratio:4/3;background:#f4f4f5;overflow:hidden}.history-card img{width:100%;height:100%;object-fit:cover}.api-tag{position:absolute;left:10px;top:10px;background:rgba(24,24,27,.72);backdrop-filter:blur(8px);color:#fff;padding:5px 8px;border-radius:8px;font-size:10px}.history-card .content{padding:13px}.empty{padding:70px 20px;text-align:center;color:#9ca3af}.empty .circle{width:64px;height:64px;border-radius:20px;background:#f3edff;color:#7c3aed;display:grid;place-items:center;margin:0 auto 14px;font-size:25px}.check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.check-card{background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;box-shadow:0 10px 26px rgba(17,24,39,.05)}.check-preview{height:210px;position:relative;background:linear-gradient(135deg,#f3eff9,#f7f7fb);display:grid;place-items:center;overflow:hidden}.check-preview img{width:100%;height:100%;object-fit:cover}.check-placeholder{color:#9ca3af;text-align:center;padding:20px;font-size:12px}.check-content{padding:14px}.check-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.status-pill{font-size:11px;padding:6px 9px;border-radius:999px;background:#f4f4f5;color:#71717a}.status-pill.ok{background:#ecfdf5;color:#047857}.status-pill.bad{background:#fef2f2;color:#b91c1c}.status-pill.warn{background:#fff7ed;color:#b45309}.terms{max-width:860px;margin:auto}.terms article{padding:30px}.terms h2{margin:30px 0 10px;font-size:20px}.terms h2:first-child{margin-top:0}.terms p,.terms li{color:#52525b;line-height:1.85;font-size:14px}.terms ul{padding-left:22px}.notice{padding:14px 16px;border-radius:14px;background:#f7f2ff;border:1px solid #eadcff;color:#6d28d9;font-size:13px;line-height:1.7}.footer{margin-top:auto;padding:30px 0 36px;color:#9898a3;text-align:center;font-size:12px}.footer a{color:#777784}.muted{color:var(--muted)}@media(max-width:920px){.api-grid{grid-template-columns:repeat(3,1fr)}.queue{grid-template-columns:repeat(2,1fr)}.history-grid{grid-template-columns:repeat(2,1fr)}.check-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:640px){.container{width:min(100% - 22px,1180px)}.nav-inner{height:64px;align-items:center}.brand{font-size:17px}.brand-mark{width:34px;height:34px;border-radius:11px}.nav-links{gap:2px;overflow-x:auto}.nav-links a{font-size:12px;padding:8px 7px;white-space:nowrap}.hero{padding:38px 0 16px}.hero h1{font-size:36px;letter-spacing:-1px}.shell{border-radius:20px}.shell-head{padding:17px;align-items:flex-start;flex-direction:column}.shell-body{padding:16px}.api-grid{grid-template-columns:repeat(2,1fr)}.api label{min-height:76px}.drop{padding:34px 14px}.queue,.history-grid,.check-grid{grid-template-columns:1fr}.actions .btn{flex:1}.history-toolbar{align-items:flex-start;flex-direction:column}.check-preview{height:230px}.terms article{padding:20px}.page-title{padding-top:30px}}

/* v2.4 - 主备线路 + 移动端重新排版 + 累计运行时间 */
.backend-strip{background:rgba(255,255,255,.78);border-bottom:1px solid rgba(124,58,237,.09);backdrop-filter:blur(14px)}
.backend-strip-inner{min-height:52px;display:flex;align-items:center;justify-content:center;gap:10px;padding:8px 0;flex-wrap:wrap}
.backend-live{min-height:36px;border:1px solid #e7e2ef;background:#fff;border-radius:999px;padding:7px 11px;display:inline-flex;align-items:center;gap:5px;color:#56515e;font-size:12px;cursor:pointer;transition:.18s;box-shadow:0 4px 12px rgba(31,24,42,.035)}
.backend-live:hover{border-color:#cdbcf2;background:#fbf9ff}
.backend-live.selected{border-color:#a78bfa;background:#f4efff;color:#6d28d9;box-shadow:0 0 0 2px rgba(139,92,246,.09)}
.backend-live .backend-dot{width:8px;height:8px;border-radius:50%;background:#a1a1aa;box-shadow:0 0 0 3px rgba(161,161,170,.12);flex:none}
.backend-live.online .backend-dot{background:#10b981;box-shadow:0 0 0 3px rgba(16,185,129,.12)}
.backend-live.offline .backend-dot{background:#ef4444;box-shadow:0 0 0 3px rgba(239,68,68,.12)}
.backend-live.checking .backend-dot{background:#f59e0b;box-shadow:0 0 0 3px rgba(245,158,11,.12)}
.backend-live.unset .backend-dot{background:#a1a1aa}
.backend-ms{color:#9993a1;font-size:10px;margin-left:1px}
.backend-use{font-size:10px;padding:3px 6px;border-radius:999px;background:#f4f4f5;color:#71717a;margin-left:2px}
.backend-live.selected .backend-use{background:#e9ddff;color:#6d28d9}
.backend-uptime{min-height:36px;display:inline-flex;align-items:center;gap:7px;border-left:1px solid #ebe7f0;padding-left:14px;color:#777180;font-size:12px;white-space:nowrap}
.uptime-icon{font-size:15px;color:#8b5cf6}
.backend-pref{color:#6f6977}.backend-pref:before{content:'·';margin-right:7px;color:#c2bdc8}
.backend-switch-card{margin-bottom:18px;padding:14px 16px;border:1px solid #eee8f6;border-radius:16px;background:linear-gradient(135deg,#fbf9ff,#fff);display:flex;align-items:center;justify-content:space-between;gap:16px}
.backend-switch-card>div:first-child{min-width:0}.backend-switch-card strong{display:block;font-size:13px}.backend-switch-card span{display:block;color:var(--muted);font-size:11px;line-height:1.65;margin-top:4px}.backend-current{flex:none;padding:8px 10px;border-radius:10px;background:#f2ebff;color:#6d28d9;font-size:12px}
.brand-mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:inherit}

@media(max-width:640px){
  .container{width:min(100% - 24px,1180px)}
  .glass-nav{position:relative}
  .nav-inner{height:auto;padding:12px 0 10px;display:block}
  .brand{width:max-content;margin:0 auto 10px;font-size:18px}
  .brand-mark{width:34px;height:34px;border-radius:10px}
  .nav-links{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;width:100%;overflow:visible}
  .nav-links a{min-width:0;min-height:42px;padding:8px 3px;border:1px solid #eee9f5;background:rgba(255,255,255,.72);border-radius:11px;display:flex;align-items:center;justify-content:center;text-align:center;font-size:11px;line-height:1.15;white-space:normal}
  .nav-links a.active{border-color:#d8c9f7;background:#f2ebff;box-shadow:inset 0 0 0 1px rgba(124,58,237,.04)}
  .backend-strip-inner{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px 0}
  .backend-live{width:100%;min-height:44px;border-radius:13px;justify-content:center;padding:8px 7px;font-size:12px}
  .backend-live .backend-use{margin-left:auto}
  .backend-uptime{grid-column:1/-1;min-height:auto;border-left:0;border-top:1px solid #eee9f4;padding:8px 2px 0;justify-content:center;gap:5px;font-size:11px;white-space:normal;text-align:center;flex-wrap:wrap}
  .backend-pref{width:100%}.backend-pref:before{display:none}
  .hero{padding:30px 0 14px}.hero h1{font-size:32px}.hero p{font-size:13px;line-height:1.7;padding:0 4px}
  .eyebrow{font-size:10px;padding:6px 9px}
  .shell-head{padding:16px}.shell-title{font-size:16px}.shell-sub{line-height:1.6}
  .chips{gap:6px}.chip{font-size:10px;padding:6px 8px}
  .shell-body{padding:14px}
  .backend-switch-card{padding:12px;align-items:flex-start;flex-direction:column;gap:9px}.backend-current{width:100%;text-align:center}
  .api-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:14px}
  .api label{min-height:66px;border-radius:13px}.api label strong{font-size:15px}.api label small{font-size:9px;margin-top:3px}
  .drop{margin-top:14px;padding:28px 12px;border-radius:17px}.drop-icon{width:50px;height:50px;border-radius:15px;margin-bottom:11px}.drop b{font-size:15px}.drop span{font-size:11px;line-height:1.6;padding:0 4px}
  .queue{gap:9px}.upload-item{padding:9px;border-radius:14px}.thumb{width:58px;height:58px;border-radius:10px}.icon-btn{width:36px;height:36px;font-size:20px;flex:none}
  .actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.actions .btn{width:100%;min-height:46px;padding:11px 8px;border-radius:12px;font-size:13px}
  .result-card{padding:12px}.result-top{align-items:flex-start}.result-actions{display:grid;grid-template-columns:1fr 1fr}.mini{min-height:40px;text-align:center}
  .history-toolbar{gap:12px}.history-toolbar .btn{width:100%;min-height:44px}
  .check-row{align-items:flex-start}.check-preview{height:200px}
  .page-title{padding:26px 0 14px}.page-title h1{font-size:27px}.page-title p{font-size:13px;line-height:1.7}
  .footer{padding:24px 0 28px}
}

@media(max-width:360px){
  .container{width:min(100% - 18px,1180px)}
  .nav-links{gap:4px}.nav-links a{font-size:10px}
  .backend-live{font-size:11px}.backend-ms{display:none}
  .api-grid{gap:6px}.api label{min-height:62px}
  .actions{grid-template-columns:1fr}
}
