:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f0f4fa;--bg-gradient:linear-gradient(180deg, #eef2f8 0%, #f5f7fb 100%);--topbar-background:#ffffffd9;--login-background:radial-gradient(circle at 20% 20%, #dbeafe 0%, transparent 50%), radial-gradient(circle at 80% 80%, #e0e7ff 0%, transparent 50%), var(--bg);--surface:#fff;--surface-subtle:#f8fafc;--surface-hover:#f1f5f9;--text:#1e293b;--text-secondary:#475569;--muted:#94a3b8;--line:#e2e8f0;--line-light:#f1f5f9;--primary:#3b82f6;--primary-light:#60a5fa;--primary-dark:#2563eb;--primary-content:#2563eb;--primary-strong:#2563eb;--primary-surface:#eff6ff;--primary-surface-hover:#dbeafe;--primary-focus-ring:#3b82f61f;--brand-accent:#8b5cf6;--on-primary:#fff;--danger:#ef4444;--danger-strong:#ef4444;--danger-surface:#fef2f2;--danger-border:#fecaca;--success:#22c55e;--success-surface:#f0fdf4;--warning:#f59e0b;--warning-surface:#fffbeb;--input-hover-border:#cbd5e1;--toast-background:linear-gradient(135deg, #1e293b 0%, #334155 100%);--toast-text:#fff;--radius-sm:6px;--radius:10px;--radius-lg:14px;--radius-xl:18px;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 2px 8px #0f172a0f;--shadow:0 4px 24px #0f172a14;--shadow-lg:0 12px 40px #0f172a1f;--shadow-primary:0 4px 14px #3b82f640;--transition:.2s cubic-bezier(.4, 0, .2, 1);--transition-fast:.15s cubic-bezier(.4, 0, .2, 1)}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#07111f;--bg-gradient:linear-gradient(180deg, #07111f 0%, #0b1728 100%);--topbar-background:#081220db;--login-background:radial-gradient(circle at 18% 18%, #2563eb33 0%, transparent 48%), radial-gradient(circle at 82% 82%, #7c3aed26 0%, transparent 50%), var(--bg);--surface:#101c2d;--surface-subtle:#142236;--surface-hover:#1a2a40;--text:#e7edf7;--text-secondary:#a9b7ca;--muted:#75859b;--line:#283a51;--line-light:#1d2d42;--primary:#3b82f6;--primary-light:#60a5fa;--primary-dark:#2563eb;--primary-content:#93c5fd;--primary-strong:#2563eb;--primary-surface:#3b82f624;--primary-surface-hover:#3b82f638;--primary-focus-ring:#60a5fa38;--brand-accent:#a78bfa;--danger:#fca5a5;--danger-strong:#dc2626;--danger-surface:#ef44441f;--danger-border:#f871715c;--success:#4ade80;--success-surface:#22c55e1f;--warning:#fbbf24;--warning-surface:#f59e0b1f;--input-hover-border:#40536d;--toast-background:linear-gradient(135deg, #22334a 0%, #18263a 100%);--toast-text:#f8fafc;--shadow-xs:0 1px 2px #0003;--shadow-sm:0 2px 10px #0000003d;--shadow:0 6px 28px #0000004d;--shadow-lg:0 16px 46px #0006;--shadow-primary:0 4px 16px #2563eb59}*{box-sizing:border-box}html,body{min-height:100%;margin:0}html{background:var(--bg);scrollbar-color:var(--muted) var(--surface-subtle)}body{background:var(--bg-gradient);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background var(--transition), color var(--transition);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{cursor:pointer;transition:all var(--transition-fast)}button:disabled{cursor:not-allowed;opacity:.5}::selection{background:var(--primary-surface-hover);color:var(--text)}::placeholder{color:var(--muted)}.shell{min-height:100vh}.topbar{z-index:30;background:var(--topbar-background);border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px)saturate(180%);height:60px;box-shadow:var(--shadow-sm);transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);justify-content:space-between;align-items:center;gap:20px;padding:0 24px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;min-width:170px;display:flex}.brand-icon{border-radius:var(--radius);background:linear-gradient(135deg, var(--primary) 0%, var(--brand-accent) 100%);width:36px;height:36px;color:var(--on-primary);box-shadow:var(--shadow-primary);flex-shrink:0;justify-content:center;align-items:center;font-size:18px;display:flex}.brand-text{flex-direction:column;gap:1px;display:flex}.brand strong{letter-spacing:-.01em;color:var(--text);font-size:15px;font-weight:700;display:block}.brand span{color:var(--muted);font-size:11px;font-weight:500}.tabs{scrollbar-width:none;-ms-overflow-style:none;flex:1;gap:3px;display:flex;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{border-radius:var(--radius-sm);color:var(--text-secondary);white-space:nowrap;transition:all var(--transition-fast);background:0 0;border:0;padding:8px 14px;font-size:13px;font-weight:500;position:relative}.tab:hover{background:var(--surface-hover);color:var(--text)}.tab.active{background:var(--primary-surface);color:var(--primary-content);font-weight:600}.container{width:min(1440px,100% - 32px);margin:24px auto 60px}.panel{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:background var(--transition), border-color var(--transition), box-shadow var(--transition);padding:24px}.panel:hover{box-shadow:var(--shadow)}.panel h2{letter-spacing:-.01em;margin:0 0 6px;font-size:18px;font-weight:700}.panel h3{margin:0 0 6px;font-size:15px;font-weight:600}.tip{color:var(--text-secondary);margin:0 0 18px;font-size:13px;line-height:1.6}.toolbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin:16px 0;display:flex}.actions{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.panelActions{margin-bottom:18px}.button{border:1px solid var(--line);background:var(--surface);color:var(--text);border-radius:var(--radius-sm);transition:all var(--transition-fast);align-items:center;gap:6px;padding:8px 14px;font-size:13px;font-weight:500;display:inline-flex}.button:hover{border-color:var(--primary-light);background:var(--primary-surface);color:var(--primary-content)}.button:active{transform:scale(.97)}.button.primary{background:var(--primary);border-color:var(--primary);color:var(--on-primary);box-shadow:var(--shadow-primary)}.button.primary:hover{background:var(--primary-strong);border-color:var(--primary-strong);color:var(--on-primary)}.button.danger{color:var(--danger);background:var(--danger-surface);border-color:var(--danger-border)}.button.danger:hover{background:var(--danger-strong);border-color:var(--danger-strong);color:var(--on-primary)}.button.small{padding:5px 10px;font-size:12px}.input,.select,.textarea{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);width:100%;color:var(--text);transition:all var(--transition-fast);padding:8px 11px;font-size:13px}.input:hover,.select:hover,.textarea:hover{border-color:var(--input-hover-border)}.input:focus,.select:focus,.textarea:focus{border-color:var(--primary);box-shadow:0 0 0 3px var(--primary-focus-ring);outline:none}.textarea{resize:vertical;min-height:140px;line-height:1.6}.search{width:min(340px,100%);position:relative}.tableWrap{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);transition:background var(--transition), border-color var(--transition);overflow-x:auto}table{border-collapse:collapse;width:100%;min-width:760px;font-size:13px}th,td{border-bottom:1px solid var(--line-light);text-align:left;vertical-align:middle;padding:10px 12px}th{background:var(--surface-subtle);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.03em;white-space:nowrap;font-size:12px;font-weight:600}tbody tr:last-child td{border-bottom:0}tbody tr{transition:background var(--transition-fast)}tbody tr:hover{background:var(--primary-surface)}.checkbox{width:17px;height:17px;accent-color:var(--primary);cursor:pointer}.key{text-align:center;width:64px;color:var(--primary-content);background:var(--primary-surface);border-radius:var(--radius-sm);font-weight:700}.drag{touch-action:none;cursor:grab;text-align:center;color:var(--muted);-webkit-user-select:none;user-select:none;width:36px;font-size:16px}.drag:active{cursor:grabbing;color:var(--primary)}.pager{color:var(--text-secondary);justify-content:center;align-items:center;gap:8px;margin-top:16px;font-size:13px;display:flex}.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface-subtle);transition:all var(--transition-fast);padding:18px}.card:hover{border-color:var(--primary-light);box-shadow:var(--shadow-sm)}.checklist{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface);min-width:220px;max-height:150px;padding:8px;overflow:auto}.checkItem{white-space:nowrap;align-items:center;gap:7px;margin:5px 0;font-size:13px;display:flex}.status{color:var(--text-secondary);font-size:13px}.status.success{color:var(--success)}.status.error{color:var(--danger)}.toast{z-index:100;background:var(--toast-background);color:var(--toast-text);border-radius:var(--radius);box-shadow:var(--shadow-lg);padding:12px 20px;font-size:14px;font-weight:500;animation:.3s cubic-bezier(.4,0,.2,1) toastIn;position:fixed;bottom:32px;left:50%;transform:translate(-50%)}@keyframes toastIn{0%{opacity:0;transform:translate(-50%)translateY(12px)}to{opacity:1;transform:translate(-50%)translateY(0)}}.loginPage{background:var(--login-background);min-height:100vh;transition:background var(--transition);place-items:center;padding:20px;display:grid}.loginCard{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-xl);width:min(400px,100%);box-shadow:var(--shadow-lg);padding:36px 32px}.loginCard h1{letter-spacing:-.02em;margin:0 0 8px;font-size:24px;font-weight:700}.loginCard p{color:var(--text-secondary);margin:0 0 24px;font-size:14px}.loginCard form{gap:14px;display:grid}.avatar{border-radius:var(--radius);object-fit:cover;background:var(--surface-hover);border:1px solid var(--line);width:46px;height:46px}.progress{border:1px solid var(--line);border-radius:var(--radius-sm);background:var(--surface-subtle);max-height:320px;margin-top:12px;padding:10px;font-size:13px;overflow:auto}.progress div{border-bottom:1px solid var(--line-light);padding:5px 4px}.progress div:last-child{border-bottom:0}.searchSelect{min-width:220px;position:relative}.searchSelectMenu{z-index:50;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);max-height:220px;box-shadow:var(--shadow-lg);padding:5px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto}.searchSelectMenu button{border-radius:var(--radius-sm);text-align:left;width:100%;color:var(--text);transition:all var(--transition-fast);background:0 0;border:0;padding:8px 10px;font-size:13px;display:block}.searchSelectMenu button:hover{background:var(--primary-surface);color:var(--primary-content)}.searchSelectEmpty{color:var(--muted);padding:8px;font-size:12px;display:block}.topbarActions{flex-shrink:0;justify-content:flex-end;align-items:center;gap:8px;display:flex}.themeToggle{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:36px;height:36px;color:var(--text-secondary);box-shadow:var(--shadow-xs);flex:0 0 36px;place-items:center;padding:0;display:inline-grid;position:relative;overflow:hidden}.themeToggle:hover{border-color:var(--primary-light);background:var(--primary-surface);color:var(--primary-content);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.themeToggle:active{transform:translateY(0)scale(.95)}.themeToggle:focus-visible{border-color:var(--primary-light);box-shadow:0 0 0 3px var(--primary-focus-ring);outline:none}.themeIcon{width:19px;height:19px;transition:opacity var(--transition), transform var(--transition);position:absolute}.themeIconSun{opacity:1;transform:rotate(0)scale(1)}.themeIconMoon{opacity:0;transform:rotate(-35deg)scale(.65)}:root[data-theme=dark] .themeIconSun{opacity:0;transform:rotate(45deg)scale(.65)}:root[data-theme=dark] .themeIconMoon{opacity:1;transform:rotate(0)scale(1)}.loginThemeControl{z-index:40;position:fixed;top:20px;right:20px}@media (max-width:900px){.topbar{flex-wrap:wrap;align-items:flex-start;height:auto;padding:12px 16px}.tabs{order:3;width:100%;margin-top:8px}.topbarActions{margin-left:auto}.grid2{grid-template-columns:1fr}.container{width:min(100% - 20px,1440px);margin:16px auto 40px}.panel{border-radius:var(--radius);padding:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
