.header-inner[data-v-6d48f0f8]{max-width:var(--max-w);margin:0 auto;height:100%;padding:0 var(--page-px);display:flex;align-items:center;gap:40px}.header-logo[data-v-6d48f0f8]{display:flex;align-items:center;gap:8px;flex-shrink:0}.logo-mark[data-v-6d48f0f8]{width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,var(--brand),var(--brand-deeper));color:#fff;display:flex;align-items:center;justify-content:center;font-size:17px;font-weight:800;box-shadow:0 2px 8px #0d94884d}.logo-text[data-v-6d48f0f8]{font-size:17px;font-weight:700;color:var(--text-primary)}.logo-dot[data-v-6d48f0f8]{color:var(--text-muted);font-size:14px}.logo-en[data-v-6d48f0f8]{font-size:13px;font-weight:500;color:var(--text-muted);letter-spacing:.03em}.header-nav[data-v-6d48f0f8]{display:flex;align-items:center;gap:2px;flex:1}.nav-link[data-v-6d48f0f8]{padding:7px 18px;font-size:14px;font-weight:500;color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition);position:relative}.nav-link[data-v-6d48f0f8]:hover{color:var(--text-primary);background:var(--border-light)}.nav-link.active[data-v-6d48f0f8]{color:var(--brand);background:var(--brand-light);font-weight:600}.header-right[data-v-6d48f0f8]{display:flex;align-items:center;gap:10px;flex-shrink:0}.user-chip[data-v-6d48f0f8]{display:flex;align-items:center;gap:8px;padding:3px 14px 3px 3px;border-radius:24px;border:1px solid var(--border-light);transition:all var(--transition)}.user-chip[data-v-6d48f0f8]:hover{background:var(--border-light);border-color:var(--border)}.user-avatar[data-v-6d48f0f8]{width:28px;height:28px;border-radius:50%;background:linear-gradient(145deg,var(--brand),var(--brand-deeper));color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700}.user-name[data-v-6d48f0f8]{font-size:13px;color:var(--text-secondary);font-weight:500;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn-logout[data-v-6d48f0f8]{padding:5px 12px;font-size:12px;color:var(--text-muted);background:transparent;border:1px solid var(--border);border-radius:6px;transition:all var(--transition)}.btn-logout[data-v-6d48f0f8]:hover{color:#dc2626;border-color:#fecaca;background:#fef2f2}.student-footer[data-v-6d48f0f8]{border-top:1px solid var(--border-light);padding:20px var(--page-px)}.footer-inner[data-v-6d48f0f8]{max-width:var(--max-w);margin:0 auto;text-align:center;font-size:12px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;gap:6px}.footer-brand[data-v-6d48f0f8]{font-weight:500}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--brand: #0d9488;--brand-dark: #0f766e;--brand-deeper: #115e59;--brand-light: #f0fdfa;--brand-glow: rgba(13, 148, 136, .1);--accent: #f59e0b;--bg: #f8fafb;--surface: #ffffff;--surface-raised: #ffffff;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #94a3b8;--border: #e8ecf1;--border-light: #f1f5f9;--radius-sm: 8px;--radius: 14px;--radius-lg: 20px;--shadow-xs: 0 1px 2px rgba(0,0,0,.03);--shadow-sm: 0 1px 4px rgba(0,0,0,.04), 0 0 1px rgba(0,0,0,.02);--shadow-md: 0 4px 20px rgba(0,0,0,.05), 0 1px 3px rgba(0,0,0,.03);--shadow-lg: 0 10px 40px rgba(0,0,0,.07), 0 2px 6px rgba(0,0,0,.03);--header-h: 60px;--max-w: 1160px;--page-px: 28px;--transition: .2s cubic-bezier(.4, 0, .2, 1)}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Noto Sans SC,PingFang SC,sans-serif;background:var(--bg);color:var(--text-primary);line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button{font-family:inherit;cursor:pointer}::selection{background:var(--brand-glow);color:var(--brand-dark)}.student-layout{min-height:100vh;display:flex;flex-direction:column}.student-header{position:sticky;top:0;z-index:100;height:var(--header-h);background:#ffffffe0;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--border-light)}.student-main{flex:1;padding:28px 0 48px}@media (max-width: 768px){:root{--page-px: 16px;--header-h: 52px}}
