.progress-ring-container[data-v-095d4261]{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-ring[data-v-095d4261]{transform:rotate(-90deg)}.progress-ring-bg[data-v-095d4261]{opacity:.3}.progress-ring-fill[data-v-095d4261]{transform-origin:50%}.progress-text[data-v-095d4261]{color:var(--text-primary);font-family:system-ui,-apple-system,sans-serif;font-weight:600;position:absolute}.home-page[data-v-60fe925e]{max-width:1000px;margin:0 auto;padding:40px 20px}.hero[data-v-60fe925e]{text-align:center;margin-bottom:40px}.hero h1[data-v-60fe925e]{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:10px;font-size:36px}.hero p[data-v-60fe925e]{color:var(--text-secondary);font-size:18px}.progress-dashboard[data-v-60fe925e]{padding:var(--spacing-xl);border:2px solid var(--primary-color);background:linear-gradient(135deg,#1890ff0d 0%,#1890ff1a 100%);margin-bottom:40px}.dashboard-header[data-v-60fe925e]{margin-bottom:var(--spacing-lg);justify-content:space-between;align-items:center;display:flex}.dashboard-header h2[data-v-60fe925e]{color:var(--text-primary);margin:0;font-size:20px}.progress-stats[data-v-60fe925e]{align-items:baseline;gap:var(--spacing-md);display:flex}.stats-text[data-v-60fe925e]{color:var(--text-secondary);font-size:14px}.stats-percentage[data-v-60fe925e]{color:var(--primary-color);font-size:32px;font-weight:700}.progress-bar-large[data-v-60fe925e]{background:var(--border-color);width:100%;height:12px;margin-bottom:var(--spacing-lg);border-radius:6px;overflow:hidden}.progress-bar-large .fill[data-v-60fe925e]{background:linear-gradient(135deg,#84fab0 0%,#8fd3f4 100%);height:100%;transition:width .5s}.dashboard-actions[data-v-60fe925e]{gap:var(--spacing-sm);display:flex}.courses[data-v-60fe925e]{margin-top:var(--spacing-xl)}.courses h2[data-v-60fe925e]{margin-bottom:var(--spacing-lg);color:var(--text-primary);font-size:24px}.course-list[data-v-60fe925e]{gap:var(--spacing-lg);grid-template-columns:repeat(auto-fit,minmax(300px,1fr));display:grid}.course-item[data-v-60fe925e]{cursor:pointer;padding:var(--spacing-lg);gap:var(--spacing-md);border-radius:var(--radius-md);background:#fff;flex-direction:column;display:flex;position:relative;overflow:hidden}.course-item[data-v-60fe925e]:before{content:"";background:inherit;opacity:.1;z-index:0;position:absolute;inset:0}.course-icon-wrapper[data-v-60fe925e]{align-items:center;gap:var(--spacing-md);z-index:1;display:flex;position:relative}.course-icon[data-v-60fe925e]{flex-shrink:0;font-size:48px}.course-progress[data-v-60fe925e]{background:#fff;border-radius:50%;padding:4px;position:absolute;top:-8px;right:-8px;box-shadow:0 2px 8px #0000001a}.course-progress.is-completed[data-v-60fe925e]{background:#52c41a;box-shadow:0 4px 12px #52c41a59}.course-content[data-v-60fe925e]{z-index:1;flex:1;position:relative}.course-content h3[data-v-60fe925e]{margin-bottom:var(--spacing-sm);color:var(--text-primary);font-size:18px}.course-content p[data-v-60fe925e]{color:var(--text-primary);margin-bottom:var(--spacing-sm);opacity:.9;font-size:14px}.course-skills[data-v-60fe925e]{gap:var(--spacing-xs);margin-bottom:var(--spacing-sm);flex-wrap:wrap;display:flex}.skill-tag-small[data-v-60fe925e]{border-radius:var(--radius-round);color:var(--text-primary);background:#ffffffe6;border:1px solid #ffffff80;padding:4px 10px;font-size:11px;font-weight:500;display:inline-block}.course-meta[data-v-60fe925e]{color:var(--text-primary);opacity:.8;justify-content:space-between;align-items:center;font-size:13px;display:flex}.week-progress[data-v-60fe925e]{font-weight:600}@media (width<=768px){.home-page[data-v-60fe925e]{padding:20px 16px}.hero h1[data-v-60fe925e]{font-size:28px}.hero p[data-v-60fe925e]{font-size:16px}.course-list[data-v-60fe925e]{grid-template-columns:1fr}.dashboard-header[data-v-60fe925e]{align-items:flex-start;gap:var(--spacing-sm);flex-direction:column}.stats-percentage[data-v-60fe925e]{font-size:28px}}:root{--primary-color:#1890ff;--success-color:#52c41a;--warning-color:#faad14;--bg-color:#f0f2f5;--card-bg:#fff;--text-primary:#262626;--text-secondary:#8c8c8c;--border-color:#d9d9d9;--week1-gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--week2-gradient:linear-gradient(135deg, #f093fb 0%, #f5576c 100%);--week3-gradient:linear-gradient(135deg, #4facfe 0%, #00f2fe 100%);--week4-gradient:linear-gradient(135deg, #43e97b 0%, #38f9d7 100%);--week1-color:#667eea;--week2-color:#f5576c;--week3-color:#4facfe;--week4-color:#43e97b;--progress-ring-size:60px;--progress-ring-width:4px;--accordion-bg:#f8f9fa;--accordion-border:#e9ecef;--accordion-hover:#f1f3f5;--card-hover-shadow:0 4px 16px #00000026;--card-hover-transform:translateY(-4px);--spacing-xs:8px;--spacing-sm:12px;--spacing-md:16px;--spacing-lg:24px;--spacing-xl:32px;--spacing-xxl:48px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-round:50%;--section-bg:#f5f7fa;--primary-gradient:linear-gradient(135deg, #667eea 0%, #764ba2 100%);--locked-color:#d9d9d9;--info-color:#1890ff;--status-completed:#52c41a;--status-current:#1890ff;--status-locked:#d9d9d9}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg-color);color:var(--text-primary);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Arial,sans-serif;line-height:1.6}#app{min-height:100vh}.card{background:var(--card-bg);border-radius:12px;padding:24px;box-shadow:0 2px 8px #0000001a}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;padding:12px 24px;font-size:14px;font-weight:500;transition:all .3s;display:inline-flex}.btn-primary{background:var(--primary-color);color:#fff}.btn-primary:hover{background:#40a9ff}.btn-outline{border:1px solid var(--border-color);color:var(--text-primary);background:0 0}.btn-outline:hover{border-color:var(--primary-color);color:var(--primary-color)}a{color:var(--primary-color);text-decoration:none}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.fade-in{animation:.3s ease-out fadeIn}.card-hover{transition:all .3s}.card-hover:hover{transform:var(--card-hover-transform);box-shadow:var(--card-hover-shadow)}.skill-tag{background:var(--accordion-bg);border-radius:var(--radius-round);color:var(--text-primary);border:1px solid var(--border-color);margin-bottom:8px;margin-right:8px;padding:4px 12px;font-size:12px;display:inline-block}.progress-ring-container{justify-content:center;align-items:center;display:inline-flex;position:relative}.learning-path-node{cursor:pointer;transition:all .3s}.learning-path-node:hover{transform:scale(1.05)}.accordion-content{transition:max-height .3s,opacity .3s;overflow:hidden}@media (width<=768px){:root{--progress-ring-size:50px}}@media (width<=480px){:root{--progress-ring-size:45px}}
