.home-banner-carousel[data-v-6662a041]{width:100%}.banner-shell.card[data-v-6662a041]{padding:0;overflow:visible}.banner-media[data-v-6662a041]{position:relative;width:100%;aspect-ratio:1920 / 800;overflow:hidden;border-radius:var(--radius)}.banner-shell[data-v-6662a041] .el-carousel,.banner-shell[data-v-6662a041] .el-carousel__container,.banner[data-v-6662a041]{height:100%}.banner-slide[data-v-6662a041]{display:block;width:100%;height:100%;padding:0;margin:0;border:0;background:transparent}.banner-slide.is-clickable[data-v-6662a041]{cursor:pointer}.banner-slide img[data-v-6662a041]{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.banner-dots[data-v-6662a041]{position:absolute;left:0;right:0;bottom:16px;z-index:2;display:flex;align-items:center;justify-content:center;gap:10px;pointer-events:none}.banner-dot[data-v-6662a041]{pointer-events:auto;width:10px;height:10px;padding:0;border:0;border-radius:50%;background:#ffffffb8;box-shadow:0 1px 4px #0f172a40;cursor:pointer;transition:background-color .2s ease,transform .2s ease}.banner-dot[data-v-6662a041]:hover{background:#ffffffeb}.banner-dot.is-active[data-v-6662a041]{background:var(--primary, #2563eb);transform:scale(1.15)}.welcome-banner[data-v-6662a041]{width:100%;aspect-ratio:1920 / 800;min-height:160px;background:linear-gradient(120deg,var(--primary-light) 0%,#dbeafe 50%,#e0e7ff 100%);display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 32px;border-color:var(--primary-muted);overflow:hidden;position:relative}.welcome-banner[data-v-6662a041]:after{content:"";position:absolute;right:-20px;top:-20px;width:120px;height:120px;background:radial-gradient(circle,rgba(37,99,235,.1),transparent 70%);pointer-events:none}.welcome-banner-content h3[data-v-6662a041]{margin:0 0 8px;font-size:22px;font-weight:700;color:var(--text-primary)}.welcome-banner-content p[data-v-6662a041]{margin:0;color:var(--text-secondary)}@media(max-width:768px){.welcome-banner[data-v-6662a041]{flex-direction:column;align-items:flex-start;padding:20px}.welcome-banner-btn[data-v-6662a041]{width:100%}}.home-study-overview[data-v-4ca14c1a]{height:100%;max-height:100%;display:flex;flex-direction:column;justify-content:flex-start;gap:9px;margin:0;padding:15px 17px;overflow:hidden;box-sizing:border-box;background:radial-gradient(circle at 100% 0%,rgba(37,99,235,.08),transparent 42%),var(--card-bg)}.home-study-overview.is-guest[data-v-4ca14c1a]{background:radial-gradient(circle at 100% 0%,rgba(37,99,235,.1),transparent 45%),linear-gradient(180deg,#fff,#f8fbff)}.overview-header[data-v-4ca14c1a]{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-shrink:0}.overview-title[data-v-4ca14c1a]{margin:0;font-size:16px;font-weight:700;color:var(--text);letter-spacing:-.02em}.overview-subject[data-v-4ca14c1a]{margin:2px 0 0;font-size:11px;color:var(--text-secondary);line-height:1.4;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.overview-vip[data-v-4ca14c1a]{flex-shrink:0;padding:4px 10px;border-radius:999px;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;font-size:11px;font-weight:600}.overview-body[data-v-4ca14c1a]{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:11px;flex-shrink:0;padding:0;margin-top:7px}.overview-ring[data-v-4ca14c1a]{--track: #e2e8f0;--fill: var(--primary);flex-shrink:0;width:104px;height:104px;margin-top:3px;border-radius:50%;background:conic-gradient(var(--fill) var(--progress),var(--track) 0);display:grid;place-items:center;box-shadow:0 6px 18px #2563eb1f}.overview-ring-inner[data-v-4ca14c1a]{width:81px;height:81px;border-radius:50%;background:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;box-shadow:inset 0 0 0 1px #e2e8f0e6}.overview-ring-inner strong[data-v-4ca14c1a]{font-size:23px;line-height:1;color:var(--primary);letter-spacing:-.03em}.overview-ring-inner span[data-v-4ca14c1a]{font-size:11px;color:var(--text-secondary)}.overview-stats[data-v-4ca14c1a]{width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.overview-stat[data-v-4ca14c1a]{padding:9px 8px;border-radius:10px;background:#f8fafcf2;border:1px solid rgba(226,232,240,.9);text-align:center}.overview-stat strong[data-v-4ca14c1a]{display:block;font-size:16px;line-height:1.1;color:var(--primary);letter-spacing:-.02em}.overview-stat span[data-v-4ca14c1a]{display:block;margin-top:3px;font-size:11px;color:var(--text-secondary)}.overview-stat.is-warn strong[data-v-4ca14c1a]{color:#dc2626}.overview-progress-meta[data-v-4ca14c1a]{margin:0;width:100%;padding:7px 10px;border-radius:9px;background:#eff6ffb8;font-size:11px;color:var(--text-secondary);line-height:1.42;text-align:center}.overview-actions[data-v-4ca14c1a]{display:grid;grid-template-columns:1fr 1fr;gap:8px;flex-shrink:0;margin-top:3px}.overview-actions[data-v-4ca14c1a] .el-button{width:100%;margin:0;padding-top:8px;padding-bottom:8px}.guest-actions[data-v-4ca14c1a]{flex-shrink:0}.guest-actions[data-v-4ca14c1a] .el-button{width:100%}.guest-features[data-v-4ca14c1a]{display:flex;flex-direction:column;justify-content:center;gap:12px;flex:1;min-height:0;padding:8px 0}.guest-feature[data-v-4ca14c1a]{display:flex;align-items:center;gap:12px;padding:12px 14px;border-radius:12px;background:#ffffffe0;border:1px solid rgba(226,232,240,.9)}.guest-feature-icon[data-v-4ca14c1a]{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.guest-feature-icon .el-icon[data-v-4ca14c1a]{font-size:16px}.guest-feature-copy[data-v-4ca14c1a]{display:flex;flex-direction:column;gap:2px;min-width:0}.guest-feature-copy strong[data-v-4ca14c1a]{font-size:13px;color:var(--text)}.guest-feature-copy span[data-v-4ca14c1a]{font-size:11px;color:var(--text-secondary);line-height:1.45}@media(max-width:1023px){.home-study-overview[data-v-4ca14c1a]{padding:15px}.overview-ring[data-v-4ca14c1a]{width:98px;height:98px}.overview-ring-inner[data-v-4ca14c1a]{width:76px;height:76px}.overview-ring-inner strong[data-v-4ca14c1a]{font-size:21px}}.subject-tip[data-v-7fc1b9f8]{display:flex;align-items:center;gap:8px;padding:12px 16px;margin-bottom:16px;background:#eff6ff;border-color:#bfdbfe;color:#1e40af;font-size:14px;line-height:1.5;cursor:pointer}.subject-tip .el-icon[data-v-7fc1b9f8]{flex-shrink:0;color:#2563eb}.subject-tip span[data-v-7fc1b9f8]{flex:1;min-width:0}.home-hero[data-v-7fc1b9f8]{display:grid;gap:16px;margin-bottom:20px}.home-hero-banner[data-v-7fc1b9f8],.home-hero-side[data-v-7fc1b9f8]{min-width:0}.home-hero-side[data-v-7fc1b9f8]{display:flex}.home-hero-side[data-v-7fc1b9f8] .home-study-overview{flex:1}@media(min-width:1024px){.home-hero[data-v-7fc1b9f8]{grid-template-columns:minmax(0,1fr) 340px;align-items:stretch}}.home-main[data-v-7fc1b9f8]{display:flex;flex-direction:column;gap:20px;min-width:0}.home-sidebar[data-v-7fc1b9f8]{display:flex;flex-direction:column;gap:16px}.modules-section[data-v-7fc1b9f8]{margin:0}.module-grid[data-v-7fc1b9f8]{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(min-width:640px){.module-grid[data-v-7fc1b9f8]{grid-template-columns:repeat(4,1fr)}}.module-item[data-v-7fc1b9f8]{display:flex;align-items:center;gap:12px;padding:16px;border-radius:var(--radius);background:var(--mod-bg);border:1px solid transparent;cursor:pointer;transition:transform var(--transition-fast),box-shadow var(--transition-base),border-color var(--transition-base)}.module-item[data-v-7fc1b9f8]:hover{transform:translateY(-3px);box-shadow:var(--shadow-card-hover);border-color:var(--mod-color)}.module-icon[data-v-7fc1b9f8]{width:46px;height:46px;border-radius:var(--radius-sm);background:var(--card-bg);display:flex;align-items:center;justify-content:center;color:var(--mod-color);flex-shrink:0;box-shadow:0 1px 3px #0f172a0f,inset 0 1px #fffc;transition:transform var(--transition-fast),box-shadow var(--transition-base)}.module-item:hover .module-icon[data-v-7fc1b9f8]{transform:scale(1.06);box-shadow:0 4px 14px color-mix(in srgb,var(--mod-color) 22%,transparent)}.module-info[data-v-7fc1b9f8]{display:flex;flex-direction:column;gap:2px;min-width:0}.module-info strong[data-v-7fc1b9f8]{font-size:14px;color:var(--text)}.module-info span[data-v-7fc1b9f8]{font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-section[data-v-7fc1b9f8]{margin:0}.nav-grid[data-v-7fc1b9f8]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}@media(min-width:768px){.nav-grid[data-v-7fc1b9f8]{grid-template-columns:repeat(6,1fr)}}.nav-item[data-v-7fc1b9f8]{display:flex;flex-direction:column;align-items:center;gap:8px;cursor:pointer;font-size:13px;padding:10px 8px;border-radius:var(--radius);transition:background var(--transition-fast),transform var(--transition-fast)}.nav-item[data-v-7fc1b9f8]:hover{background:var(--primary-light);transform:translateY(-2px)}.nav-item img[data-v-7fc1b9f8]{width:48px;height:48px;border-radius:var(--radius-sm);box-shadow:var(--shadow-xs);transition:box-shadow var(--transition-base)}.nav-item:hover img[data-v-7fc1b9f8]{box-shadow:var(--shadow-sm)}.unit-progress[data-v-7fc1b9f8]{display:flex;flex-direction:column;gap:6px}.unit-progress-text[data-v-7fc1b9f8]{font-size:12px;color:var(--text-secondary)}.section-title a[data-v-7fc1b9f8]{font-size:13px;color:var(--text-secondary);display:flex;align-items:center;gap:2px}.article-panel[data-v-7fc1b9f8],.feed-panel[data-v-7fc1b9f8]{padding-bottom:8px}.feed-panel-head[data-v-7fc1b9f8]{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:4px;padding-bottom:12px;border-bottom:1px solid var(--border)}.feed-tabs[data-v-7fc1b9f8]{display:inline-flex;align-items:center;gap:2px;padding:3px;border-radius:999px;background:#f8fafcf2;border:1px solid rgba(226,232,240,.95)}.feed-tab[data-v-7fc1b9f8]{border:none;background:transparent;padding:6px 12px;border-radius:999px;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast),box-shadow var(--transition-fast)}.feed-tab[data-v-7fc1b9f8]:hover{color:var(--primary)}.feed-tab.active[data-v-7fc1b9f8]{background:linear-gradient(135deg,var(--primary) 0%,#3b82f6 100%);color:#fff;box-shadow:0 2px 8px #2563eb38}.feed-single-title[data-v-7fc1b9f8]{font-size:15px;font-weight:600;color:var(--text)}.feed-panel-body[data-v-7fc1b9f8]{min-height:0}.feed-panel .more-link[data-v-7fc1b9f8]{float:none;flex-shrink:0;white-space:nowrap}.sidebar-article-item[data-v-7fc1b9f8]{display:flex;gap:10px;padding:12px 0;border-bottom:1px solid var(--border);cursor:pointer;transition:opacity .15s}.sidebar-article-item[data-v-7fc1b9f8]:last-child{border-bottom:none;padding-bottom:0}.sidebar-article-item:hover .sidebar-article-title[data-v-7fc1b9f8]{color:var(--primary)}.sidebar-article-thumb[data-v-7fc1b9f8]{width:56px;height:42px;border-radius:6px;object-fit:cover;flex-shrink:0}.sidebar-article-body[data-v-7fc1b9f8]{flex:1;min-width:0}.sidebar-article-title[data-v-7fc1b9f8]{font-size:13px;font-weight:500;line-height:1.4;margin-bottom:4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s}.sidebar-article-time[data-v-7fc1b9f8]{font-size:11px;color:var(--text-secondary)}.quick-panel .quick-grid[data-v-7fc1b9f8]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.quick-grid-item[data-v-7fc1b9f8]{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:80px;padding:14px 8px;border-radius:var(--radius-sm);font-size:12px;font-weight:500;color:var(--text);background:#f8fafccc;border:1px solid rgba(226,232,240,.85);transition:background var(--transition-fast),border-color var(--transition-fast),color var(--transition-fast),transform var(--transition-fast)}.quick-grid-item .icon-badge[data-v-7fc1b9f8]{--icon-bg: var(--primary-light)}.quick-grid-item[data-v-7fc1b9f8]:hover{background:var(--primary-light);border-color:#2563eb2e;color:var(--primary);transform:translateY(-1px)}.more-link[data-v-7fc1b9f8]{float:right;font-size:13px;font-weight:400;color:var(--text-secondary)}.side-panel-title[data-v-7fc1b9f8]{display:flex;align-items:center;justify-content:space-between}
