@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+SC:wght@400;500;600;700&family=Noto+Serif+SC:wght@600;700&display=swap);.hero[data-v-0775a4c5]{position:relative;width:100%;height:520px;overflow:hidden;margin-top:72px;background:#1c1c1c}.hero-placeholder[data-v-0775a4c5]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#1b3a5c,#0f4c3a)}.placeholder-pulse[data-v-0775a4c5]{width:48px;height:48px;border:3px solid hsla(0,0%,100%,.2);border-top-color:#e8a840;border-radius:50%;animation:pulse-spin-0775a4c5 .8s linear infinite}@keyframes pulse-spin-0775a4c5{to{transform:rotate(1turn)}}.hero-track[data-v-0775a4c5]{display:flex;height:100%;transition:transform .6s cubic-bezier(.65,0,.35,1)}.hero-slide[data-v-0775a4c5]{min-width:100%;height:100%;position:relative}.hero-bg[data-v-0775a4c5]{position:absolute;inset:0}.hero-img[data-v-0775a4c5]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.hero-overlay[data-v-0775a4c5]{position:absolute;inset:0;background:linear-gradient(135deg,rgba(15,76,58,.72),rgba(15,76,58,.35) 60%,rgba(0,0,0,.15))}.hero-body[data-v-0775a4c5]{position:relative;z-index:2;max-width:1200px;margin:0 auto;padding:0 32px;height:100%;display:flex;align-items:center}.hero-text[data-v-0775a4c5]{max-width:560px;color:#fff}.hero-tag[data-v-0775a4c5]{display:inline-block;font-size:13px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#e8a840;background:rgba(232,168,64,.15);padding:4px 14px;border-radius:20px;margin-bottom:18px}.hero-title[data-v-0775a4c5]{font-family:"Noto Serif SC",STSong,Songti SC,serif;font-size:44px;font-weight:700;line-height:1.2;margin:0 0 16px 0;letter-spacing:-.01em}.hero-desc[data-v-0775a4c5]{font-size:17px;line-height:1.7;margin:0;opacity:.88;max-width:440px}.hero-accent[data-v-0775a4c5]{width:48px;height:3px;background:#e8a840;border-radius:2px;margin-top:24px}.hero-dots[data-v-0775a4c5]{position:absolute;bottom:28px;left:50%;transform:translateX(-50%);display:flex;gap:10px;z-index:3}.hero-dot[data-v-0775a4c5]{width:10px;height:10px;border-radius:50%;border:2px solid hsla(0,0%,100%,.6);background:transparent;cursor:pointer;padding:0;transition:background .3s,border-color .3s}.hero-dot.current[data-v-0775a4c5]{background:#e8a840;border-color:#e8a840}.hero-arrow[data-v-0775a4c5]{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border-radius:50%;border:1px solid hsla(0,0%,100%,.25);background:hsla(0,0%,100%,.12);backdrop-filter:blur(6px);color:#fff;font-size:26px;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:background .2s,border-color .2s;line-height:1;padding:0}.hero-arrow[data-v-0775a4c5]:hover{background:hsla(0,0%,100%,.2);border-color:hsla(0,0%,100%,.45)}.hero-arrow--left[data-v-0775a4c5]{left:20px}.hero-arrow--right[data-v-0775a4c5]{right:20px}@media (max-width:768px){.hero[data-v-0775a4c5]{height:360px}.hero-title[data-v-0775a4c5]{font-size:28px}.hero-desc[data-v-0775a4c5]{font-size:15px}.hero-arrow[data-v-0775a4c5]{width:36px;height:36px;font-size:22px}.hero-arrow--left[data-v-0775a4c5]{left:10px}.hero-arrow--right[data-v-0775a4c5]{right:10px}}.courses[data-v-6a167a60]{padding:80px 0;background:#fff}.section-inner[data-v-6a167a60]{max-width:1200px;margin:0 auto;padding:0 32px}.section-header[data-v-6a167a60]{display:flex;flex-wrap:wrap;align-items:baseline;gap:12px 24px;margin-bottom:44px}.section-title[data-v-6a167a60]{font-family:"Noto Serif SC",STSong,Songti SC,serif;font-size:28px;font-weight:700;color:#1c1c1c;margin:0}.section-sub[data-v-6a167a60]{font-size:15px;color:#6b7280;margin:0;flex:1}.course-grid[data-v-6a167a60]{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}@media (max-width:1024px){.course-grid[data-v-6a167a60]{grid-template-columns:repeat(2,1fr)}}@media (max-width:640px){.course-grid[data-v-6a167a60]{grid-template-columns:1fr}}.course-card[data-v-6a167a60]{border-radius:12px;overflow:hidden;background:#fff;border:1px solid #e8e5df;transition:transform .25s ease,box-shadow .25s ease;cursor:pointer;text-decoration:none;display:block}.course-card[data-v-6a167a60]:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(15,76,58,.1)}.course-thumb[data-v-6a167a60]{position:relative;aspect-ratio:16/10;overflow:hidden;background:#f0ede8}.course-thumb img[data-v-6a167a60]{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .4s ease}.course-card:hover .course-thumb img[data-v-6a167a60]{transform:scale(1.05)}.course-body[data-v-6a167a60]{padding:18px 20px 20px}.course-title[data-v-6a167a60]{font-size:16px;font-weight:600;color:#1c1c1c;margin:0 0 8px 0;line-height:1.5}.course-desc[data-v-6a167a60]{font-size:13px;color:#6b7280;margin:0 0 14px 0;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.course-footer[data-v-6a167a60]{display:flex;align-items:center;justify-content:space-between}.course-count[data-v-6a167a60]{font-size:13px;color:#0f4c3a;font-weight:500}.loading-hint[data-v-6a167a60]{text-align:center;padding:40px;color:#9ca3af}.questions[data-v-5735aa80]{padding:64px 0 80px;background:#fff}.section-inner[data-v-5735aa80]{max-width:1200px;margin:0 auto;padding:0 32px}.section-header[data-v-5735aa80]{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin-bottom:36px}.section-title[data-v-5735aa80]{font-family:"Noto Serif SC",STSong,Songti SC,serif;font-size:28px;font-weight:700;color:#1c1c1c;margin:0;letter-spacing:-.01em}.section-tabs[data-v-5735aa80]{display:flex;gap:4px;background:#f7f5f2;padding:4px;border-radius:10px}.tab-btn[data-v-5735aa80]{padding:7px 20px;font-size:14px;font-weight:500;color:#6b7280;background:transparent;border:none;border-radius:8px;cursor:pointer;transition:color .2s,background .2s}.tab-btn.active[data-v-5735aa80]{color:#0f4c3a;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.08)}.question-list[data-v-5735aa80]{display:flex;flex-direction:column;gap:12px}.question-card[data-v-5735aa80]{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 24px;border:1px solid #e8e5df;border-radius:12px;transition:border-color .2s,box-shadow .2s;cursor:pointer}.question-card[data-v-5735aa80]:hover{border-color:#0f4c3a;box-shadow:0 2px 16px rgba(15,76,58,.08)}.q-left[data-v-5735aa80]{display:flex;align-items:center;gap:16px;min-width:0}.q-type[data-v-5735aa80]{flex-shrink:0;display:inline-flex;align-items:center;padding:3px 10px;font-size:12px;font-weight:600;border-radius:6px}.q-type.programming[data-v-5735aa80]{background:rgba(15,76,58,.1);color:#0f4c3a}.q-type.written[data-v-5735aa80]{background:rgba(27,58,92,.1);color:#1b3a5c}.q-title[data-v-5735aa80]{font-size:15px;font-weight:500;color:#1c1c1c;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.q-tags[data-v-5735aa80]{display:flex;gap:6px;flex-shrink:0}.q-tag[data-v-5735aa80]{font-size:11px;color:#6b7280;background:#f7f5f2;padding:2px 8px;border-radius:4px}.q-right[data-v-5735aa80]{display:flex;gap:28px;flex-shrink:0}.q-stat[data-v-5735aa80]{text-align:center}.q-stat-val[data-v-5735aa80]{display:block;font-size:15px;font-weight:600;color:#1c1c1c}.q-stat-label[data-v-5735aa80]{font-size:12px;color:#9ca3af}@media (max-width:768px){.question-card[data-v-5735aa80]{flex-direction:column;align-items:flex-start}.q-left[data-v-5735aa80]{flex-wrap:wrap}.q-tags[data-v-5735aa80]{display:none}.q-right[data-v-5735aa80]{width:100%;justify-content:space-around}}.home-page[data-v-66ead7ff]{background:#faf9f6}.navbar[data-v-9eff0148]{position:fixed;top:0;left:0;right:0;z-index:1000;height:72px;background:hsla(0,0%,100%,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid transparent;transition:border-color .3s ease,box-shadow .3s ease}.navbar.scrolled[data-v-9eff0148]{border-bottom-color:#e8e5df;box-shadow:0 1px 12px rgba(0,0,0,.06)}.navbar-inner[data-v-9eff0148]{max-width:1200px;margin:0 auto;padding:0 32px;height:100%;display:flex;align-items:center;justify-content:space-between}.navbar-brand[data-v-9eff0148]{display:flex;align-items:center;text-decoration:none;flex-shrink:0}.navbar-logo[data-v-9eff0148]{height:38px;width:auto;display:block}.navbar-links[data-v-9eff0148]{display:flex;align-items:center;list-style:none;margin:0;padding:0;gap:4px}.nav-link[data-v-9eff0148]{display:inline-flex;align-items:center;padding:8px 18px;font-size:15px;font-weight:500;color:#4b5563;text-decoration:none;border-radius:8px;transition:color .2s ease,background .2s ease}.nav-link[data-v-9eff0148]:hover{color:#0f4c3a;background:rgba(15,76,58,.06)}.nav-link.active[data-v-9eff0148]{color:#0f4c3a;font-weight:600;background:rgba(15,76,58,.08)}.navbar-actions[data-v-9eff0148]{display:flex;align-items:center;gap:12px;flex-shrink:0}.btn-login[data-v-9eff0148]{padding:7px 22px;font-size:14px;font-weight:500;color:#0f4c3a;background:transparent;border:1px solid #0f4c3a;border-radius:8px;text-decoration:none;transition:background .2s,color .2s}.btn-login[data-v-9eff0148]:hover{background:#0f4c3a;color:#fff}.btn-register[data-v-9eff0148]{padding:7px 22px;font-size:14px;font-weight:500;color:#fff;background:#0f4c3a;border:1px solid #0f4c3a;border-radius:8px;text-decoration:none;transition:background .2s}.btn-register[data-v-9eff0148]:hover{background:#0b3b2d}.user-menu[data-v-9eff0148]{position:relative}.user-trigger[data-v-9eff0148]{display:flex;align-items:center;gap:10px;padding:4px 12px 4px 4px;border:1px solid #e8e5df;border-radius:30px;background:#fff;cursor:pointer;transition:box-shadow .2s}.user-trigger[data-v-9eff0148]:hover{box-shadow:0 2px 8px rgba(0,0,0,.06)}.user-avatar[data-v-9eff0148]{width:36px;height:36px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.user-info[data-v-9eff0148]{display:flex;flex-direction:column;align-items:flex-start;line-height:1.3}.user-name[data-v-9eff0148]{font-size:14px;font-weight:600;color:#1c1c1c}.user-class[data-v-9eff0148]{font-size:11px;color:#6b7280}.dropdown-arrow[data-v-9eff0148]{font-size:12px;color:#6b7280;transition:transform .2s}.dropdown-arrow.open[data-v-9eff0148]{transform:rotate(180deg)}.dropdown-panel[data-v-9eff0148]{position:absolute;top:calc(100% + 8px);right:0;width:220px;background:#fff;border:1px solid #e8e5df;border-radius:12px;box-shadow:0 8px 32px rgba(0,0,0,.1);overflow:hidden;z-index:100}.dropdown-header[data-v-9eff0148]{display:flex;align-items:center;gap:12px;padding:16px 18px}.dropdown-avatar[data-v-9eff0148]{width:44px;height:44px;border-radius:50%;-o-object-fit:cover;object-fit:cover}.dropdown-name[data-v-9eff0148]{font-size:15px;font-weight:600;color:#1c1c1c}.dropdown-role[data-v-9eff0148]{font-size:12px;color:#6b7280}.dropdown-divider[data-v-9eff0148]{height:1px;background:#f0ede8}.dropdown-item[data-v-9eff0148]{display:flex;align-items:center;gap:10px;width:100%;padding:12px 18px;font-size:14px;color:#1c1c1c;background:none;border:none;cursor:pointer;text-decoration:none;font-family:inherit;text-align:left;transition:background .15s}.dropdown-item[data-v-9eff0148]:hover{background:#f7f5f2}.dropdown-item.logout[data-v-9eff0148]{color:#dc2626}.dropdown-item.logout[data-v-9eff0148]:hover{background:#fef2f2}.dropdown-icon[data-v-9eff0148]{font-size:16px;width:22px;text-align:center}.hamburger[data-v-9eff0148]{display:none;flex-direction:column;gap:5px;background:none;border:none;cursor:pointer;padding:4px}.hamburger-line[data-v-9eff0148]{display:block;width:24px;height:2px;background:#1c1c1c;border-radius:2px;transition:transform .2s ease,opacity .2s ease}.mobile-menu[data-v-9eff0148]{display:none;flex-direction:column;background:#fff;border-bottom:1px solid #e8e5df;padding:12px 32px 20px;gap:2px;box-shadow:0 4px 16px rgba(0,0,0,.08)}.mobile-menu.open[data-v-9eff0148]{display:flex}.mobile-link[data-v-9eff0148]{display:block;padding:12px 16px;font-size:16px;font-weight:500;color:#1c1c1c;text-decoration:none;border-radius:8px;transition:background .15s ease;font-family:inherit;background:none;border:none;text-align:left;cursor:pointer}.mobile-link[data-v-9eff0148]:hover{background:rgba(15,76,58,.06)}.mobile-link.logout[data-v-9eff0148]{color:#dc2626}.mobile-link.mobile-login[data-v-9eff0148]{color:#0f4c3a}.mobile-link.mobile-register[data-v-9eff0148]{color:#fff;background:#0f4c3a;text-align:center;margin-top:4px}.mobile-link.mobile-register[data-v-9eff0148]:hover{background:#0b3b2d}.mobile-divider[data-v-9eff0148]{height:1px;background:#e8e5df;margin:8px 0}.mobile-user-info[data-v-9eff0148]{display:flex;align-items:center;gap:10px;padding:10px 16px;font-size:15px;font-weight:600;color:#1c1c1c}.mobile-avatar[data-v-9eff0148]{width:32px;height:32px;border-radius:50%;-o-object-fit:cover;object-fit:cover}@media (max-width:768px){.navbar-actions[data-v-9eff0148],.navbar-links[data-v-9eff0148]{display:none}.hamburger[data-v-9eff0148]{display:flex}}@media (min-width:769px){.mobile-menu[data-v-9eff0148]{display:none!important}}*,:after,:before{box-sizing:border-box}body{margin:0;padding:0;font-family:Noto Sans SC,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:16px;line-height:1.6;color:#1c1c1c;background:#faf9f6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}ol,ul{list-style:none;padding:0}.markdown-body ul{list-style:disc;padding-left:1.5em}.markdown-body ol{list-style:decimal;padding-left:1.5em}.markdown-body li{margin-bottom:.25em}:focus-visible{outline:2px solid #0f4c3a;outline-offset:2px}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.markdown-body code{font-family:SF Mono,Cascadia Code,Fira Code,JetBrains Mono,Menlo,Consolas,monospace;font-size:.88em;background:rgba(15,76,58,.06);color:#0f4c3a;padding:2px 6px;border-radius:4px}.markdown-body pre{background:#1b1f23;border:1px solid #30363d;border-radius:10px;padding:16px 20px;overflow-x:auto;line-height:1.6;margin:12px 0}.markdown-body pre code{background:transparent;color:inherit;padding:0;font-size:13px;border-radius:0}.markdown-body pre code.hljs{color:#e6edf3}.markdown-body pre code .hljs-keyword{color:#ff7b72}.markdown-body pre code .hljs-string{color:#a5d6ff}.markdown-body pre code .hljs-number{color:#79c0ff}.markdown-body pre code .hljs-comment{color:#8b949e;font-style:italic}.markdown-body pre code .hljs-function{color:#d2a8ff}.markdown-body pre code .hljs-type{color:#ffa657}.markdown-body pre code .hljs-title{color:#d2a8ff}.markdown-body pre code .hljs-params{color:#e6edf3}.markdown-body pre code .hljs-built_in{color:#ffa657}.markdown-body pre code .hljs-literal{color:#79c0ff}.markdown-body pre code .hljs-meta{color:#8b949e}.markdown-body pre code .hljs-attr{color:#79c0ff}.markdown-body pre code .hljs-variable{color:#ffa657}