.ms-plans-page[data-v-8c81a12d]{--plan-bg:#f6f8fc;--plan-bg-soft:#fff;--plan-surface:hsla(0,0%,100%,.94);--plan-surface-strong:#fff;--plan-surface-soft:#f8faff;--plan-ink:#1d2a44;--plan-ink-strong:#101a31;--plan-muted:#6a7893;--plan-muted-soft:#96a1b4;--plan-border:#edf1f8;--plan-border-strong:#dfe7f3;--plan-brand:#2f6cf6;--plan-brand-strong:#1f58e8;--plan-brand-soft:rgba(47,108,246,.1);--plan-accent:#7b61ff;--plan-success:#30c58e;--plan-success-soft:rgba(48,197,142,.14);--plan-warning:#ffad36;--plan-danger:#ff5165;--plan-card-shadow:0 24px 48px rgba(42,92,196,.08);--plan-card-hover-shadow:0 28px 60px rgba(90,126,195,.12);--plan-hero-overlay:linear-gradient(90deg,rgba(24,86,216,.92),rgba(39,112,246,.74) 50%,rgba(39,112,246,.34)),linear-gradient(180deg,rgba(13,42,106,.18),rgba(13,42,106,.44));min-height:100dvh;background:var(--plan-bg);color:var(--plan-ink);font-family:Inter,PingFang SC,Microsoft YaHei,Hiragino Sans GB,Arial,sans-serif}.ms-plans-page--dark[data-v-8c81a12d],html[data-theme=dark] .ms-plans-page{--plan-bg:#0f1117;--plan-bg-soft:#111827;--plan-surface:rgba(22,24,30,.94);--plan-surface-strong:#16181e;--plan-surface-soft:#1d2026;--plan-ink:#e2e4e9;--plan-ink-strong:#f3f6ff;--plan-muted:#a0a5b1;--plan-muted-soft:#7d8493;--plan-border:#2d313a;--plan-border-strong:#3a404d;--plan-brand:#6b5dff;--plan-brand-strong:#8a6eff;--plan-brand-soft:rgba(107,93,255,.14);--plan-accent:#8a6eff;--plan-success:#35d39a;--plan-success-soft:rgba(53,211,154,.14);--plan-warning:#ffb84d;--plan-danger:#ff7c8d;--plan-card-shadow:0 20px 48px rgba(0,0,0,.3);--plan-card-hover-shadow:0 24px 56px rgba(0,0,0,.36);--plan-hero-overlay:linear-gradient(90deg,rgba(22,26,44,.96),rgba(45,52,96,.82) 52%,rgba(45,52,96,.46)),linear-gradient(180deg,rgba(15,17,23,.2),rgba(15,17,23,.78));color-scheme:dark}.ms-plans-main[data-v-8c81a12d]{min-height:calc(100dvh - var(--layout-header-h));padding:calc(var(--layout-header-h) + 24px) 0 64px;overflow:clip;background:linear-gradient(180deg,var(--plan-bg) 0,var(--plan-bg-soft) 52%,var(--plan-bg) 100%)}.ms-plans-shell[data-v-8c81a12d]{width:min(1280px,calc(100% - 48px));margin:0 auto}.svg-defs[data-v-8c81a12d]{position:absolute;width:0;height:0;overflow:hidden}.icon[data-v-8c81a12d]{display:block;width:1em;height:1em;fill:none;stroke:currentcolor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2}.hero[data-v-8c81a12d]{position:relative;display:grid;min-height:300px;grid-template-columns:minmax(0,1fr) minmax(360px,520px);gap:32px;align-items:end;overflow:hidden;padding:48px;border:1px solid hsla(0,0%,100%,.24);border-radius:12px;background:var(--plan-hero-overlay),url(../images/ms-plans-top-bg.png) 50% /cover no-repeat;box-shadow:var(--plan-card-shadow);color:#fff}.hero[data-v-8c81a12d]:after{position:absolute;right:48px;bottom:0;width:280px;height:5px;border-radius:8px 8px 0 0;background:#ffffff94;content:""}.hero-copy[data-v-8c81a12d],.hero-features[data-v-8c81a12d]{position:relative;z-index:1}.hero-kicker[data-v-8c81a12d]{display:inline-flex;margin-bottom:16px;padding:5px 8px;border-radius:6px;background:#ffffff29;color:#ffffffeb;font-size:13px;font-weight:700;line-height:1.4}.hero-title[data-v-8c81a12d]{margin:0;color:#fff;font-size:48px;font-weight:700;letter-spacing:0;line-height:1.16;text-wrap:balance}.hero-subtitle[data-v-8c81a12d]{max-width:620px;margin:16px 0 0;color:#ffffffd6;font-size:20px;font-weight:500;letter-spacing:0;line-height:1.6}.hero-features[data-v-8c81a12d]{display:grid;grid-template-columns:1fr;gap:12px}.hero-feature[data-v-8c81a12d]{display:flex;min-height:72px;align-items:center;gap:16px;padding:14px 16px;border:1px solid hsla(0,0%,100%,.16);border-radius:8px;background:#ffffff1f;box-shadow:inset 0 1px #ffffff1f}.hero-feature-icon[data-v-8c81a12d]{display:grid;width:44px;height:44px;flex:0 0 auto;place-items:center;border-radius:8px;background:#ffffff24;color:#fff}.hero-feature-icon.gold[data-v-8c81a12d]{color:#ffd166}.hero-feature-icon .icon[data-v-8c81a12d]{width:24px;height:24px}.hero-feature-title[data-v-8c81a12d]{color:#fff;font-size:16px;font-weight:700;line-height:1.4}.hero-feature-desc[data-v-8c81a12d]{margin-top:2px;color:#ffffffc2;font-size:13px;font-weight:500;line-height:1.5}.ms-plans-layout[data-v-8c81a12d]{display:grid;grid-template-columns:minmax(0,1fr) 360px;grid-template-areas:"overview today" "route articles" "resources milestones" "tips milestones";gap:24px;align-items:start;margin-top:24px}.overview-grid[data-v-8c81a12d]{display:grid;grid-area:overview;grid-template-columns:minmax(280px,.9fr) minmax(360px,1.1fr);gap:24px}.panel[data-v-8c81a12d],.resource-card[data-v-8c81a12d]{border:1px solid var(--plan-border);border-radius:12px;background:var(--plan-surface);box-shadow:var(--plan-card-shadow)}.panel[data-v-8c81a12d]{padding:24px}.article-row[data-v-8c81a12d],.panel[data-v-8c81a12d],.primary-btn[data-v-8c81a12d],.resource-card[data-v-8c81a12d],.summary-link[data-v-8c81a12d],.tip-row[data-v-8c81a12d]{transition:border-color .18s ease,background-color .18s ease,box-shadow .18s ease,color .18s ease,transform .18s ease}.panel[data-v-8c81a12d]:hover,.resource-card[data-v-8c81a12d]:hover{border-color:var(--plan-border-strong);box-shadow:var(--plan-card-hover-shadow)}.section-head[data-v-8c81a12d],.side-head[data-v-8c81a12d]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.panel-title[data-v-8c81a12d],.side-title[data-v-8c81a12d]{margin:0;color:var(--plan-ink-strong);font-size:20px;font-weight:700;letter-spacing:0;line-height:1.4}.section-note[data-v-8c81a12d],.side-date[data-v-8c81a12d],.side-more[data-v-8c81a12d]{color:var(--plan-muted);font-size:13px;font-weight:600;line-height:1.5;white-space:nowrap}.progress-body[data-v-8c81a12d]{display:grid;grid-template-columns:156px minmax(0,1fr);gap:24px;align-items:center;margin-top:24px}.progress-ring[data-v-8c81a12d]{position:relative;display:grid;width:156px;height:156px;place-items:center;background:conic-gradient(from 280deg,var(--plan-brand) 0 68%,var(--plan-surface-soft) 68% 100%)}.progress-ring[data-v-8c81a12d],.progress-ring[data-v-8c81a12d]:before{border-radius:50%;box-shadow:inset 0 0 0 1px var(--plan-border)}.progress-ring[data-v-8c81a12d]:before{position:absolute;width:112px;height:112px;background:var(--plan-surface-strong);content:""}.progress-label[data-v-8c81a12d],.progress-percent[data-v-8c81a12d]{position:relative;z-index:1;text-align:center}.progress-percent[data-v-8c81a12d]{color:var(--plan-brand);font-size:42px;font-weight:700;line-height:1}.progress-percent small[data-v-8c81a12d]{font-size:20px;font-weight:700}.progress-label[data-v-8c81a12d]{margin-top:8px;color:var(--plan-muted);font-size:13px;font-weight:600;line-height:1.4}.stat-row[data-v-8c81a12d],.stats[data-v-8c81a12d]{display:grid;gap:12px}.stat-row[data-v-8c81a12d]{min-height:44px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;color:var(--plan-muted);font-size:14px;font-weight:600;line-height:1.45}.stat-icon[data-v-8c81a12d]{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;background:var(--plan-surface-soft)}.stat-icon.green[data-v-8c81a12d]{color:var(--plan-success)}.stat-icon.orange[data-v-8c81a12d]{color:var(--plan-warning)}.stat-icon .icon[data-v-8c81a12d]{width:18px;height:18px;stroke-width:2.25}.stat-label[data-v-8c81a12d]{min-width:0}.stat-value[data-v-8c81a12d]{color:var(--plan-ink-strong);font-size:18px;font-weight:700;white-space:nowrap}.stat-value small[data-v-8c81a12d]{color:var(--plan-muted);font-size:13px}.weekly-panel[data-v-8c81a12d]{min-width:0}.weeks[data-v-8c81a12d]{position:relative;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px;margin-top:28px;padding-top:1px}.week-line[data-v-8c81a12d]{position:absolute;top:17px;right:7%;left:7%;height:2px;background:var(--plan-border-strong)}.week-line[data-v-8c81a12d]:before{position:absolute;inset:0 auto 0 0;width:28%;background:var(--plan-brand);content:""}.week-step[data-v-8c81a12d]{position:relative;z-index:1;display:grid;justify-items:center;color:var(--plan-muted);font-size:12px;font-weight:600;line-height:1.4;text-align:center}.week-step .dot[data-v-8c81a12d]{display:grid;width:34px;height:34px;place-items:center;margin-bottom:10px;border:2px solid var(--plan-border-strong);border-radius:50%;background:var(--plan-surface-strong);color:var(--plan-muted);font-size:13px;font-weight:700}.week-step.current .dot[data-v-8c81a12d],.week-step.done .dot[data-v-8c81a12d]{border-color:var(--plan-brand);background:var(--plan-brand);color:#fff}.week-step.current[data-v-8c81a12d]{color:var(--plan-ink-strong);font-weight:700}.week-step.done .icon[data-v-8c81a12d]{width:17px;height:17px;stroke-width:3}.weekly-summary[data-v-8c81a12d]{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.85fr);gap:16px;margin-top:24px}.summary-block[data-v-8c81a12d]{min-width:0;padding:16px;border:1px solid var(--plan-border);border-radius:8px;background:var(--plan-surface-soft)}.summary-block--action[data-v-8c81a12d]{display:flex;align-items:center;justify-content:space-between;gap:16px}.summary-label[data-v-8c81a12d]{color:var(--plan-ink-strong);font-size:14px;font-weight:700;line-height:1.45}.summary-desc[data-v-8c81a12d]{margin-top:4px;color:var(--plan-muted);font-size:13px;font-weight:500;line-height:1.6}.summary-value[data-v-8c81a12d]{margin-top:4px;color:var(--plan-brand);font-size:28px;font-weight:700;line-height:1}.summary-value small[data-v-8c81a12d]{margin-left:4px;font-size:15px}.side-more[data-v-8c81a12d],.summary-link[data-v-8c81a12d]{display:inline-flex;align-items:center;gap:5px;color:var(--plan-brand);text-decoration:none}.summary-link[data-v-8c81a12d]{flex:0 0 auto;font-size:14px;font-weight:700;white-space:nowrap}.side-more[data-v-8c81a12d]:hover,.summary-link[data-v-8c81a12d]:hover{color:var(--plan-brand-strong)}.side-more-icon[data-v-8c81a12d],.summary-link-icon[data-v-8c81a12d]{width:14px;height:14px}.route-panel[data-v-8c81a12d]{grid-area:route}.route-map[data-v-8c81a12d]{position:relative;display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:16px;margin-top:24px}.route-road[data-v-8c81a12d]{position:absolute;top:64px;right:6%;left:6%;height:2px;background:var(--plan-border-strong)}.route-road-progress[data-v-8c81a12d]{display:block;width:28%;height:100%;background:var(--plan-success)}.module[data-v-8c81a12d]{position:relative;z-index:1;min-width:0;text-align:center}.module-icon[data-v-8c81a12d]{position:relative;display:grid;width:56px;height:56px;place-items:center;margin:0 auto 16px;border:1px solid var(--plan-border);border-radius:10px;background:var(--plan-surface-soft);color:var(--plan-brand);box-shadow:inset 0 1px #ffffff57}.module.done .module-icon[data-v-8c81a12d],.module.studying .module-icon[data-v-8c81a12d]{border-color:transparent;background:var(--plan-success-soft);color:var(--plan-success)}.module-icon .icon[data-v-8c81a12d]{width:28px;height:28px}.module-icon .icon.is-redis[data-v-8c81a12d]{color:var(--plan-danger)}.complete-badge[data-v-8c81a12d]{position:absolute;top:-7px;right:-7px;display:grid;width:20px;height:20px;place-items:center;border:2px solid var(--plan-surface-strong);border-radius:50%;background:var(--plan-success);color:#fff}.complete-badge .icon[data-v-8c81a12d]{width:12px;height:12px;stroke-width:3}.road-node[data-v-8c81a12d]{position:absolute;top:58px;left:50%;width:14px;height:14px;border:2px solid var(--plan-border-strong);border-radius:50%;background:var(--plan-surface-strong);transform:translate(-50%)}.module.done .road-node[data-v-8c81a12d],.module.studying .road-node[data-v-8c81a12d]{border-color:var(--plan-success)}.module.done .road-node[data-v-8c81a12d]:after,.module.studying .road-node[data-v-8c81a12d]:after{position:absolute;inset:3px;border-radius:50%;background:var(--plan-success);content:""}.module-name[data-v-8c81a12d]{overflow:hidden;color:var(--plan-ink-strong);font-size:14px;font-weight:700;line-height:1.45;text-overflow:ellipsis;white-space:nowrap}.module-meta[data-v-8c81a12d]{display:flex;justify-content:center;gap:12px;margin-top:8px;color:var(--plan-muted);font-size:12px;font-weight:600;line-height:1.4;white-space:nowrap}.module-meta .green[data-v-8c81a12d]{color:var(--plan-success);font-weight:700}.jvm[data-v-8c81a12d]{color:currentcolor;font-size:17px;font-weight:700;line-height:1}.resource-panel[data-v-8c81a12d]{grid-area:resources;min-width:0}.resource-grid[data-v-8c81a12d]{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px;margin-top:16px}.resource-card[data-v-8c81a12d]{min-width:0;padding:18px}.resource-card[data-v-8c81a12d]:hover{transform:translateY(-2px)}.resource-icon[data-v-8c81a12d]{display:grid;width:44px;height:44px;place-items:center;border-radius:8px;color:#fff}.resource-icon .icon[data-v-8c81a12d]{width:25px;height:25px}.resource-icon.blue[data-v-8c81a12d]{background:var(--plan-brand)}.resource-icon.green[data-v-8c81a12d]{background:var(--plan-success)}.resource-icon.purple[data-v-8c81a12d]{background:var(--plan-accent)}.resource-icon.orange[data-v-8c81a12d]{background:var(--plan-warning)}.resource-icon.red[data-v-8c81a12d]{background:var(--plan-danger)}.resource-name[data-v-8c81a12d]{margin-top:16px;color:var(--plan-ink-strong);font-size:15px;font-weight:700;line-height:1.45}.resource-count[data-v-8c81a12d],.resource-desc[data-v-8c81a12d]{color:var(--plan-muted);font-size:13px;font-weight:500;line-height:1.55}.resource-desc[data-v-8c81a12d]{margin-top:4px}.resource-count[data-v-8c81a12d]{margin-top:10px;color:var(--plan-brand);font-weight:700}.tips-panel[data-v-8c81a12d]{grid-area:tips}.tips-list[data-v-8c81a12d]{display:grid;gap:8px;margin-top:16px}.tip-row[data-v-8c81a12d]{display:grid;min-height:52px;grid-template-columns:28px minmax(72px,.2fr) minmax(0,1fr) 16px;align-items:center;gap:12px;padding:10px 12px;border-radius:8px;color:var(--plan-muted);font-size:14px;font-weight:500}.tip-row[data-v-8c81a12d]:hover{background:var(--plan-brand-soft)}.tip-icon[data-v-8c81a12d]{display:grid;width:28px;height:28px;place-items:center;border-radius:8px;background:var(--plan-brand-soft);color:var(--plan-brand)}.tip-icon .icon[data-v-8c81a12d]{width:17px;height:17px}.tip-name[data-v-8c81a12d]{color:var(--plan-ink-strong);font-weight:700;white-space:nowrap}.tip-desc[data-v-8c81a12d]{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.tip-arrow[data-v-8c81a12d]{color:var(--plan-muted-soft);font-size:18px;line-height:1}.side-panel[data-v-8c81a12d]{min-width:0}.today-panel[data-v-8c81a12d]{grid-area:today}.article-panel[data-v-8c81a12d]{grid-area:articles}.milestone-panel[data-v-8c81a12d]{grid-area:milestones}.side-head[data-v-8c81a12d]{padding-bottom:16px;border-bottom:1px solid var(--plan-border)}.side-title-wrap[data-v-8c81a12d]{display:flex;align-items:center;gap:10px}.side-title-wrap .icon[data-v-8c81a12d]{width:20px;height:20px;color:var(--plan-brand)}.task-list[data-v-8c81a12d]{margin-top:16px}.task-list[data-v-8c81a12d],.task-row[data-v-8c81a12d]{display:grid;gap:10px}.task-row[data-v-8c81a12d]{min-height:44px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;color:var(--plan-ink-strong);font-size:14px;font-weight:600}.task-status[data-v-8c81a12d]{display:grid;width:22px;height:22px;place-items:center;border:2px solid var(--plan-border-strong);border-radius:50%;background:var(--plan-surface-strong);color:#fff}.task-status.done[data-v-8c81a12d]{border-color:var(--plan-brand);background:var(--plan-brand)}.task-status .icon[data-v-8c81a12d]{width:13px;height:13px;stroke-width:3}.task-name[data-v-8c81a12d],.task-tag[data-v-8c81a12d]{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.task-tag[data-v-8c81a12d]{display:inline-flex;max-width:92px;align-items:center;justify-content:center;padding:4px 8px;border-radius:6px;background:var(--plan-brand-soft);color:var(--plan-brand);font-size:12px;font-weight:700;line-height:1.35}.task-time[data-v-8c81a12d]{grid-column:2/-1;color:var(--plan-muted);font-size:12px;font-weight:500;line-height:1.4}.primary-btn[data-v-8c81a12d]{display:flex;min-height:44px;align-items:center;justify-content:center;margin-top:20px;border-radius:8px;background:var(--plan-brand);box-shadow:0 12px 24px #2f6cf633;color:#fff;font-size:16px;font-weight:700;line-height:1;text-align:center;text-decoration:none}.primary-btn[data-v-8c81a12d]:hover{background:var(--plan-brand-strong);box-shadow:var(--plan-card-hover-shadow);transform:translateY(-1px)}.article-list[data-v-8c81a12d]{display:grid;gap:12px;margin-top:16px}.article-row[data-v-8c81a12d]{display:grid;min-width:0;grid-template-columns:72px minmax(0,1fr);gap:12px;align-items:center;padding:8px;border-radius:8px;color:inherit;text-decoration:none}.article-row[data-v-8c81a12d]:hover{background:var(--plan-brand-soft)}.thumb[data-v-8c81a12d]{position:relative;width:72px;height:54px;overflow:hidden;border-radius:8px;background:radial-gradient(circle at 72% 30%,rgba(255,196,66,.9),transparent 16px),radial-gradient(circle at 28% 72%,rgba(25,109,255,.9),transparent 18px),linear-gradient(135deg,#0f4da8,#102a50)}.thumb.two[data-v-8c81a12d]{background:radial-gradient(circle at 54% 42%,rgba(130,204,255,.95),transparent 19px),linear-gradient(135deg,#1b80df,#1b2c5b)}.thumb.three[data-v-8c81a12d]{background:radial-gradient(circle at 62% 48%,rgba(20,87,153,.9),transparent 18px),linear-gradient(135deg,#091326,#16315a 62%,#081424)}.thumb[data-v-8c81a12d]:before{top:16px;left:14px;width:42px;height:22px;border:1px solid hsla(0,0%,100%,.35);border-radius:3px;background:#ffffff1f}.thumb[data-v-8c81a12d]:after,.thumb[data-v-8c81a12d]:before{position:absolute;content:"";transform:rotate(-12deg)}.thumb[data-v-8c81a12d]:after{top:24px;left:20px;width:30px;height:2px;border-radius:8px;background:#ffffffb3;box-shadow:0 7px #ffffff5c}.article-copy[data-v-8c81a12d]{min-width:0}.article-title[data-v-8c81a12d]{display:block;overflow:hidden;color:var(--plan-ink-strong);font-size:14px;font-weight:700;line-height:1.5;text-overflow:ellipsis;white-space:nowrap}.article-meta[data-v-8c81a12d]{display:flex;gap:12px;margin-top:8px;color:var(--plan-muted);font-weight:600}.article-meta[data-v-8c81a12d],.article-tag[data-v-8c81a12d]{align-items:center;font-size:12px}.article-tag[data-v-8c81a12d]{display:inline-flex;padding:3px 7px;border-radius:6px;background:var(--plan-brand-soft);color:var(--plan-brand);font-weight:700;line-height:1.3}.views[data-v-8c81a12d]{display:inline-flex;align-items:center;gap:4px}.views .icon[data-v-8c81a12d]{width:14px;height:14px;color:var(--plan-muted-soft)}.milestone-list[data-v-8c81a12d]{position:relative;display:grid;gap:12px;margin-top:20px}.milestone-list[data-v-8c81a12d]:before{position:absolute;top:14px;bottom:14px;left:10px;width:1px;background:var(--plan-border-strong);content:""}.milestone-row[data-v-8c81a12d]{min-height:36px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;color:var(--plan-ink-strong);font-size:14px;font-weight:600;line-height:1.45}.milestone-dot[data-v-8c81a12d],.milestone-row[data-v-8c81a12d]{position:relative;display:grid}.milestone-dot[data-v-8c81a12d]{z-index:1;width:22px;height:22px;place-items:center;border:2px solid var(--plan-surface-strong);border-radius:50%;background:var(--plan-success);color:#fff;font-size:11px;font-weight:700}.milestone-dot .icon[data-v-8c81a12d]{width:12px;height:12px;stroke-width:3}.milestone-dot.blue[data-v-8c81a12d]{background:var(--plan-brand)}.milestone-dot.gray[data-v-8c81a12d]{background:var(--plan-muted-soft)}.milestone-meta[data-v-8c81a12d]{color:var(--plan-muted);font-size:12px;font-weight:500;white-space:nowrap}.article-row[data-v-8c81a12d]:focus-visible,.panel[data-v-8c81a12d] :focus-visible,.primary-btn[data-v-8c81a12d]:focus-visible,.resource-card[data-v-8c81a12d]:focus-visible,.side-more[data-v-8c81a12d]:focus-visible,.summary-link[data-v-8c81a12d]:focus-visible{outline:3px solid var(--plan-brand-soft);outline-offset:3px}@media(max-width:1180px){.ms-plans-layout[data-v-8c81a12d]{grid-template-columns:1fr;grid-template-areas:"overview" "today" "route" "resources" "tips" "articles" "milestones"}.article-panel[data-v-8c81a12d],.milestone-panel[data-v-8c81a12d],.today-panel[data-v-8c81a12d]{width:100%}.resource-grid[data-v-8c81a12d]{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:960px){.hero[data-v-8c81a12d]{grid-template-columns:1fr;align-items:start;padding:40px}.hero-features[data-v-8c81a12d]{grid-template-columns:repeat(3,minmax(0,1fr))}.overview-grid[data-v-8c81a12d]{grid-template-columns:1fr}.route-map[data-v-8c81a12d]{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:28px}.road-node[data-v-8c81a12d],.route-road[data-v-8c81a12d]{display:none}.module-icon[data-v-8c81a12d]{margin-bottom:12px}}@media(max-width:720px){.ms-plans-main[data-v-8c81a12d]{padding-top:calc(var(--layout-header-h) + 16px);padding-bottom:48px}.ms-plans-shell[data-v-8c81a12d]{width:min(100% - 24px,1280px)}.hero[data-v-8c81a12d],.panel[data-v-8c81a12d]{padding:24px}.hero[data-v-8c81a12d]{min-height:0}.hero-title[data-v-8c81a12d]{font-size:40px}.hero-subtitle[data-v-8c81a12d]{font-size:18px}.hero-features[data-v-8c81a12d],.progress-body[data-v-8c81a12d],.resource-grid[data-v-8c81a12d]{grid-template-columns:1fr}.progress-body[data-v-8c81a12d]{justify-items:center}.stats[data-v-8c81a12d]{width:100%}.weeks[data-v-8c81a12d]{grid-template-columns:repeat(4,minmax(0,1fr));row-gap:16px}.week-line[data-v-8c81a12d]{display:none}.weekly-summary[data-v-8c81a12d]{grid-template-columns:1fr}.route-map[data-v-8c81a12d]{grid-template-columns:repeat(2,minmax(0,1fr))}.tip-row[data-v-8c81a12d]{grid-template-columns:28px minmax(0,1fr) 16px}.tip-desc[data-v-8c81a12d]{grid-column:2/3;white-space:normal}}@media(max-width:480px){.hero[data-v-8c81a12d],.panel[data-v-8c81a12d]{padding:20px}.hero-title[data-v-8c81a12d]{font-size:32px}.hero-subtitle[data-v-8c81a12d]{font-size:16px}.section-head[data-v-8c81a12d],.side-head[data-v-8c81a12d],.summary-block--action[data-v-8c81a12d]{align-items:flex-start;flex-direction:column}.panel-title[data-v-8c81a12d],.side-title[data-v-8c81a12d]{font-size:18px}.progress-ring[data-v-8c81a12d]{width:140px;height:140px}.progress-ring[data-v-8c81a12d]:before{width:100px;height:100px}.progress-percent[data-v-8c81a12d]{font-size:36px}.milestone-row[data-v-8c81a12d],.stat-row[data-v-8c81a12d],.task-row[data-v-8c81a12d]{font-size:13px}.resource-card[data-v-8c81a12d]{padding:16px}.article-row[data-v-8c81a12d]{grid-template-columns:64px minmax(0,1fr)}.thumb[data-v-8c81a12d]{width:64px;height:50px}}
