@import"https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{color-scheme:dark;--bg: #020617;--bg-elevated: #0f172a;--panel: rgba(30, 41, 59, .72);--panel-solid: #111827;--ink: #f8fafc;--muted: #94a3b8;--line: rgba(148, 163, 184, .18);--accent: #22c55e;--accent-2: #38bdf8;--danger: #f87171;--radius: 18px;--shadow: 0 24px 60px rgba(2, 6, 23, .45);font-family:Plus Jakarta Sans,Segoe UI,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.5;color:var(--ink);background:var(--bg)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(circle at 12% -10%,rgba(34,197,94,.18),transparent 32%),radial-gradient(circle at 88% 0%,rgba(56,189,248,.16),transparent 28%),linear-gradient(180deg,#020617,#07111f)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer;border:0;border-radius:12px;background:linear-gradient(135deg,#22c55e,#16a34a);color:#04110a;font-weight:700;padding:.75rem 1.1rem;transition:transform .18s ease,box-shadow .18s ease,opacity .18s ease;box-shadow:0 10px 30px #22c55e40}button:hover{transform:translateY(-1px)}button:disabled{opacity:.55;cursor:not-allowed;transform:none}button.secondary{background:#94a3b81f;color:var(--ink);box-shadow:none;border:1px solid var(--line)}button.ghost{background:transparent;color:var(--muted);box-shadow:none}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:.8rem .95rem;background:#0206178c;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid rgba(34,197,94,.35);border-color:#22c55e8c}.shell{min-height:100vh;display:grid;grid-template-columns:260px 1fr}.sidebar{background:#0f172ae0;border-right:1px solid var(--line);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);padding:1.4rem 1rem;display:flex;flex-direction:column;gap:1.2rem}.brand{display:flex;align-items:center;gap:.75rem;padding:.4rem .55rem 1rem;border-bottom:1px solid var(--line)}.brand-mark{width:36px;height:36px;border-radius:12px;background:linear-gradient(135deg,#22c55e,#38bdf8);box-shadow:0 10px 30px #22c55e59}.brand strong{display:block;font-size:1.05rem}.brand span{color:var(--muted);font-size:.8rem}.nav{display:grid;gap:.35rem}.nav a{display:block;padding:.8rem .9rem;border-radius:12px;color:var(--muted);transition:background .18s ease,color .18s ease}.nav a.active,.nav a:hover{background:#22c55e1f;color:#fff}.content{padding:1.5rem}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.35rem;gap:1rem}.hero-strip{display:grid;grid-template-columns:1.4fr 1fr;gap:1rem;margin-bottom:1rem}.panel{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:1.25rem;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}.stat-card{padding:1.1rem 1.2rem;border-radius:16px;border:1px solid var(--line);background:linear-gradient(180deg,#1e293be6,#0f172ae6)}.stat-card .label{color:var(--muted);font-size:.85rem}.stat-card .value{margin-top:.35rem;font-size:1.7rem;font-weight:800;letter-spacing:-.03em}.grid{display:grid;gap:1rem}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.muted{color:var(--muted)}.stack{display:grid;gap:.8rem}.row{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center}table{width:100%;border-collapse:collapse}th,td{text-align:left;padding:.85rem .55rem;border-bottom:1px solid var(--line);vertical-align:top;font-size:.92rem}.login-page{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.login-visual{padding:3rem;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,#02061733,#020617e0),radial-gradient(circle at 30% 20%,rgba(34,197,94,.25),transparent 40%),radial-gradient(circle at 70% 60%,rgba(56,189,248,.18),transparent 35%)}.login-visual h1{font-size:clamp(2.2rem,4vw,3.4rem);line-height:1.05;margin:0 0 .8rem;letter-spacing:-.04em}.login-panel{display:grid;place-items:center;padding:2rem}.login-card{width:min(420px,100%)}.error{color:var(--danger)}.ok{color:#86efac}.upload-progress{position:relative;height:.55rem;border-radius:999px;background:#94a3b833;overflow:hidden}.upload-progress>div{height:100%;background:linear-gradient(90deg,#22c55e,#38bdf8);transition:width .15s ease}.upload-progress>span{position:absolute;right:0;top:.7rem;font-size:.78rem;color:var(--muted)}.task-status{padding:.9rem 1rem;border:1px solid var(--line);border-radius:12px;background:#0f172a59}.badge{display:inline-flex;align-items:center;padding:.2rem .55rem;border-radius:999px;background:#22c55e24;color:#86efac;font-size:.78rem;font-weight:600}.chip-row{display:flex;flex-wrap:wrap;gap:.5rem}.chip{border:1px solid var(--line);background:#94a3b814;color:var(--ink);border-radius:999px;padding:.45rem .85rem;box-shadow:none;font-weight:600}.chip.active{background:#22c55e29;border-color:#22c55e73;color:#bbf7d0}.code-block{background:#020617;border:1px solid var(--line);border-radius:14px;padding:1rem;overflow:auto;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;color:#cbd5e1}@media(max-width:960px){.shell,.login-page,.hero-strip,.stat-grid,.grid.two{grid-template-columns:1fr}.login-visual{min-height:240px;padding:1.5rem}}
