@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap";.layout[data-v-c566840e]{display:flex;min-height:100vh;background:var(--bg)}.sidebar[data-v-c566840e]{width:var(--sidebar-w);min-width:var(--sidebar-w);background:var(--surface);display:flex;flex-direction:column;position:fixed;top:0;left:0;bottom:0;z-index:40;border-right:1px solid var(--border-light);overflow-y:auto}.sb-header[data-v-c566840e]{padding:24px 20px 16px;border-bottom:1px solid var(--border-light)}.sb-logo[data-v-c566840e]{display:flex;align-items:center;gap:12px;text-decoration:none;cursor:pointer}.sb-logo-svg[data-v-c566840e]{width:38px;height:38px;flex-shrink:0}.sb-logo-name[data-v-c566840e]{font-family:var(--font-heading);font-size:17px;font-weight:700;color:var(--text);display:block}.sb-logo-sub[data-v-c566840e]{font-size:11px;color:var(--text-muted)}.sb-nav[data-v-c566840e]{flex:1;padding:8px 12px;overflow-y:auto}.sb-group[data-v-c566840e]{margin-bottom:4px}.sb-group-label[data-v-c566840e]{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:1.2px;padding:12px 10px 4px}.sb-item[data-v-c566840e]{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:var(--radius);text-decoration:none;color:var(--text-secondary);font-size:13px;transition:all var(--transition);margin-bottom:1px;cursor:pointer;border:none;background:none;width:100%;text-align:left}.sb-item[data-v-c566840e]:hover{background:var(--primary-bg);color:var(--primary)}.sb-item.active[data-v-c566840e]{background:var(--primary-light);color:var(--primary);font-weight:600}.sb-sub[data-v-c566840e]{padding-left:24px}.sb-item-svg[data-v-c566840e]{width:18px;height:18px;flex-shrink:0}.sb-item-text[data-v-c566840e]{flex:1}.sb-item-badge[data-v-c566840e]{font-size:10px;color:var(--text-muted);font-weight:500}.sb-item-count[data-v-c566840e]{font-size:10px;color:var(--text-muted)}.sb-grade-dot[data-v-c566840e]{width:22px;height:22px;border-radius:6px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:#fff;flex-shrink:0}.sb-tool[data-v-c566840e]{font-size:13px;color:var(--text-muted);cursor:pointer}.sb-tool[data-v-c566840e]:hover{color:var(--text)}.sb-tool-icon[data-v-c566840e]{font-size:15px;width:18px;text-align:center}.sb-fav[data-v-c566840e]{font-size:12px}.sb-fav[data-v-c566840e]:hover,.sb-fav:hover .sb-item-svg[data-v-c566840e]{color:#eab308}.sb-footer[data-v-c566840e]{padding:14px 20px;border-top:1px solid var(--border-light);font-size:11px;color:var(--text-muted)}.main[data-v-c566840e]{flex:1;margin-left:var(--sidebar-w);min-height:100vh;padding:40px 48px;max-width:calc(100vw - var(--sidebar-w))}:root{--primary: #0D9488;--primary-hover: #0F766E;--primary-light: #CCFBF1;--primary-bg: #F0FDFA;--secondary: #14B8A6;--cta: #EA580C;--cta-hover: #C2410C;--bg: #F8FAFC;--surface: #FFFFFF;--text: #134E4A;--text-secondary: #64748B;--text-muted: #94A3B8;--border: #5EEAD4;--border-light: #E2E8F0;--shadow-sm: 0 1px 2px rgba(0,0,0,.05);--shadow: 0 1px 3px rgba(0,0,0,.1), 0 1px 2px rgba(0,0,0,.06);--shadow-md: 0 4px 6px rgba(0,0,0,.07), 0 2px 4px rgba(0,0,0,.06);--shadow-lg: 0 10px 15px rgba(0,0,0,.1), 0 4px 6px rgba(0,0,0,.05);--radius-sm: 6px;--radius: 10px;--radius-lg: 14px;--radius-xl: 18px;--font-heading: "Inter", "PingFang SC", "Microsoft YaHei", sans-serif;--font-body: "Inter", "PingFang SC", "Microsoft YaHei", sans-serif;--transition: .2s ease;--sidebar-w: 240px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-body);font-size:14px;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none;cursor:pointer}button{cursor:pointer;font-family:inherit;transition:all var(--transition)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px;border-radius:4px}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
