/* 蓝色主题覆盖层：保留原有布局，仅替换品牌与交互色 */
:root {
  --ink: #172231;
  --muted: #778292;
  --line: #e6eaf0;
  --paper: #f7f9fc;
  --green: #356bd3;
  --green-dark: #244fae;
  --mint: #e7efff;
  --shadow: 0 8px 25px rgba(30, 58, 110, .08);
}
.workspace { border-color:#dfe5f0; background:#fbfcff; }
.nav-item:hover { background:#edf2fc; }
.nav-item.active { background:#e2ebff; }
.help-card { background:#e8effc; }
.trend { color:#4d78ce; }
.bar { background:#cddcf8; }
.legend-dot.light { background:#cddcf8; }
.status.done { color:#3973d5; background:#eaf1ff; }
.progress i, .big-play { background:var(--green); }
.play-mini.playing { background:var(--green); color:#fff; box-shadow:0 0 0 3px #dce8ff; }
.player-box { background:#f2f6ff; border-color:#dbe5fa; }
.listen-tip.ready { color:#3973d5; }
.rating button.selected { background:#e5edff; border-color:#a9c1f0; }
.db-badge span { background:#4b7fe0; }
.metric .trend { display:none; }
.metric .num { margin-bottom:0; }
.workspace, .help-card { display:none; }
.data-table.no-scene th:nth-child(3), .data-table.no-scene td:nth-child(3) { display:none; }
.login-screen{position:fixed;inset:0;z-index:30;display:grid;place-items:center;background:linear-gradient(135deg,#eef4ff,#f8fafc)}.login-card{width:min(410px,calc(100% - 32px));background:#fff;border:1px solid #e2e8f2;border-radius:16px;padding:34px 36px 28px;box-shadow:0 24px 70px rgba(31,62,120,.13)}.login-brand{display:flex;align-items:center;gap:9px;color:var(--green-dark);font-size:26px;font-weight:900;margin-bottom:40px}.login-brand .brand-mark{height:26px}.login-brand .brand-mark i{background:var(--green)}.login-brand small{font:600 10px Manrope;letter-spacing:.16em;color:#9aa8a3;margin-left:2px}.login-kicker{font:600 10px 'DM Mono';letter-spacing:.14em;color:var(--green);margin-bottom:9px}.login-card h1{font-size:24px;margin:0 0 7px}.login-desc{font-size:12px;color:var(--muted);margin:0 0 23px}.login-submit{width:100%;margin-top:18px;height:42px}.login-error{height:17px;color:#c75c56;font-size:11px;margin-top:12px}.login-demo{margin-top:22px;padding:10px;border-radius:7px;background:#f3f6fc;color:#8793a3;font-size:10px;text-align:center}.login-demo b{color:#356bd3;font-family:'DM Mono'}
.top-user{position:relative}.top-user-trigger{display:flex;align-items:center;gap:9px;padding:4px 4px 4px 9px;border-radius:9px}.top-user-trigger:hover{background:#f1f5fc}.top-user-copy{text-align:right;line-height:1.2}.top-user-copy b{display:block;font-size:12px;color:var(--ink)}.top-user-copy small{display:block;margin-top:3px;color:var(--muted);font-size:10px}.top-user-chevron{color:#8d99a9;font-size:15px;margin-left:-3px}.top-user-menu{position:absolute;right:0;top:46px;min-width:112px;padding:5px;background:#fff;border:1px solid #e0e7f1;border-radius:8px;box-shadow:0 10px 28px rgba(30,58,110,.14);z-index:8}.top-user-menu button{display:block;width:100%;padding:9px 11px;border-radius:5px;text-align:left;font-size:11px;color:#566477}.top-user-menu button:hover{background:#eef3fc;color:var(--green-dark)}
.user-row-actions{display:flex;align-items:center;gap:12px}.delete-link{color:#c45757;font-size:11px;font-weight:700}.danger{background:#c84f4f;color:#fff;border-radius:7px;padding:10px 14px;font-size:12px;font-weight:700}.danger:hover{background:#ac3e3e}.danger:disabled{opacity:.55;cursor:default}.delete-warning{padding:15px;border:1px solid #f0d7d7;background:#fff7f7;border-radius:8px}.delete-warning b{display:block;font-size:13px}.delete-warning span{display:block;color:#8b96a4;font:10px 'DM Mono';margin-top:4px}.delete-warning p{margin:12px 0 0;color:#9a6262;font-size:11px;line-height:1.7}
.login-screen{overflow:hidden;background:radial-gradient(circle at 15% 18%,#dce8ff 0,transparent 30%),radial-gradient(circle at 88% 82%,#dbe8ff 0,transparent 34%),linear-gradient(135deg,#f5f8ff,#edf3ff)}.login-screen::before,.login-screen::after{content:'';position:absolute;border-radius:50%;filter:blur(1px);pointer-events:none}.login-screen::before{width:420px;height:420px;left:-170px;bottom:-180px;border:1px solid #c9dafb;background:#ffffff40;box-shadow:0 0 0 32px #ffffff1f,0 0 0 64px #ffffff15}.login-screen::after{width:280px;height:280px;right:-110px;top:-110px;border:1px solid #c9dafb;background:#ffffff35;box-shadow:0 0 0 24px #ffffff20,0 0 0 48px #ffffff13}.login-card{position:relative;z-index:1;width:min(454px,calc(100% - 34px));padding:43px 46px 31px;border:1px solid #dce6f7;border-radius:22px;background:#fffffff2;box-shadow:0 28px 90px rgba(39,83,163,.16),0 4px 12px rgba(39,83,163,.06);backdrop-filter:blur(12px)}.login-brand{margin-bottom:46px;font-size:28px;letter-spacing:.01em}.login-brand .brand-mark{height:29px;gap:4px}.login-brand .brand-mark i{width:5px}.login-brand small{font-size:10px;color:#91a0b2}.login-kicker{font-size:10px;letter-spacing:.18em;margin-bottom:11px;color:#3d73d7}.login-card h1{font-size:29px;letter-spacing:-.05em;margin-bottom:10px;color:#17243a}.login-desc{font-size:13px;line-height:1.7;margin-bottom:30px;color:#7b899d}.login-card .form-label{margin:17px 0 8px;color:#53647b;font-size:11px}.login-card .form-input{height:48px;padding:0 14px;border-color:#d7e1f0;border-radius:9px;background:#f8faff;color:#1c2b40;transition:border-color .2s,box-shadow .2s,background .2s}.login-card .form-input::placeholder{color:#a4afbe}.login-card .form-input:focus{border-color:#4b7fe0;background:#fff;box-shadow:0 0 0 4px #dce8ff;outline:none}.login-card .form-input:-webkit-autofill{-webkit-text-fill-color:#1c2b40;box-shadow:0 0 0 1000px #f8faff inset}.login-submit{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;height:49px;margin-top:25px;border-radius:9px;background:linear-gradient(135deg,#4a7fe0,#2f63c9);box-shadow:0 9px 18px #396ed33d;font-size:13px;letter-spacing:.08em;transition:transform .2s,box-shadow .2s}.login-submit i{font-style:normal;font-size:18px;line-height:1;transition:transform .2s}.login-submit:hover{background:linear-gradient(135deg,#5689e8,#356bd3);box-shadow:0 12px 24px #396ed350;transform:translateY(-1px)}.login-submit:hover i{transform:translateX(3px)}.login-error{height:18px;margin-top:10px;font-size:11px}.login-footer{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:24px;color:#9aa8ba;font-size:10px}.login-footer-dot{width:6px;height:6px;border-radius:50%;background:#5b88dc;box-shadow:0 0 0 3px #e2ebff}@media(max-width:520px){.login-card{padding:34px 25px 26px}.login-brand{margin-bottom:38px}.login-card h1{font-size:25px}}
