*{box-sizing:border-box}html,body,#app{margin:0;padding:0;height:100%;overflow:hidden;font-family:Segoe UI,PingFang SC,Microsoft YaHei,system-ui,-apple-system,sans-serif;color:#111827;background:#fff}a{color:inherit;text-decoration:none}code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.9em;background:#eef2ff;padding:1px 6px;border-radius:4px}.n-modal.fade-in-scale-up-transition-leave-active,.n-modal.fade-in-scale-up-transition-leave-to,.n-modal.fade-in-scale-up-transition-leave-from{transform:scale(1)!important}.md-body.courseware{color:#303133;line-height:1.75;font-size:14.5px}.md-body.courseware>.cw-enter{animation:cw-fade-up .45s ease both;animation-delay:var(--cw-delay, 0ms)}@keyframes cw-fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.md-body h1,.md-body h2,.md-body h3,.md-body h4{margin:1.15em 0 .5em;color:#1f2937;line-height:1.35;font-weight:650}.md-body h1{font-size:22px;letter-spacing:-.02em}.md-body h2{font-size:17px;padding-bottom:6px;border-bottom:1px solid #f1f5f9}.md-body h3{font-size:15px;color:#334155}.md-body h4{font-size:14px;color:#c2410c}.md-body p{margin:.55em 0}.md-body ul,.md-body ol{margin:.5em 0;padding-left:1.35em}.md-body li{margin:.28em 0}.md-body strong{color:#0f172a;font-weight:650}.md-body :not(pre)>code:not(.cw-code-card__code){font-family:JetBrains Mono,Fira Code,ui-monospace,Menlo,Consolas,monospace;font-size:.88em;background:#f1f5f9;color:#0284c7;padding:.15em .4em;border-radius:4px;border:1px solid #e0f2fe}.cw-table-wrap{overflow-x:auto;margin:14px 0;border-radius:10px;border:1px solid #eef2f7;box-shadow:0 1px 2px #0f172a08}.md-body table{width:100%;border-collapse:collapse;font-size:13.5px;margin:0}.md-body th,.md-body td{border-bottom:1px solid #eef2f7;border-right:1px solid #f8fafc;padding:10px 12px;text-align:left;vertical-align:top}.md-body th{background:linear-gradient(180deg,#fafbfc,#f4f6f8);color:#475569;font-weight:600;white-space:nowrap}.md-body tr:last-child td{border-bottom:none}.md-body tbody tr{transition:background .15s}.md-body tbody tr:hover{background:#fffbfa}.cw-quote,.md-body blockquote{margin:14px 0;padding:12px 16px;border-left:3px solid #e85d4c;background:linear-gradient(90deg,#fdecea,#fff7f5);color:#57534e;border-radius:0 10px 10px 0}.cw-inline-code,.md-body code:not(pre code){display:inline-block;padding:1.5px 6px;margin:0 3px;border-radius:5px;font-family:JetBrains Mono,Fira Code,ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.88em;font-weight:550;color:#0284c7;background:#f0f9ff;border:1px solid #bae6fd;line-height:1.45;vertical-align:baseline;word-break:break-word}.cw-code-card{position:relative;margin:20px 0;border-radius:12px;background:#1e293b!important;border:1px solid #334155!important;box-shadow:0 4px 20px #00000029,0 1px 3px #0000001a;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}.cw-code-card:hover{border-color:#475569!important;box-shadow:0 6px 24px #00000040,0 0 16px #38bdf814}.cw-code-card pre,.cw-code-card code,.cw-code-card .cw-code-card__code,.cw-code-card .cw-code-line,.cw-code-card span{background:transparent!important;background-color:transparent!important;border:none!important;box-shadow:none!important;outline:none!important;border-radius:0!important;padding:0!important}.cw-code-card__header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#0f172a!important;border-bottom:1px solid #334155!important;-webkit-user-select:none;user-select:none}.cw-code-card__dots{display:flex;align-items:center;gap:7px}.cw-dot{width:11px;height:11px;border-radius:50%;display:inline-block}.cw-dot--red{background:#ff5f56!important;box-shadow:0 0 4px #ff5f5699}.cw-dot--yellow{background:#ffbd2e!important;box-shadow:0 0 4px #ffbd2e99}.cw-dot--green{background:#27c93f!important;box-shadow:0 0 4px #27c93f99}.cw-code-card__lang-wrap{display:flex;align-items:center;gap:8px}.cw-code-card__lang{font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#94a3b8!important;padding:1px 7px!important;border-radius:4px!important;background:#ffffff0f!important;border:1px solid rgba(255,255,255,.1)!important}.cw-code-card__lines-count{font-size:11px;color:#64748b!important}.cw-code-card__copy-btn{display:inline-flex;align-items:center;gap:5px;padding:4px 10px!important;border-radius:6px!important;border:1px solid rgba(255,255,255,.14)!important;background:#ffffff14!important;color:#e2e8f0!important;font-size:11.5px;font-weight:550;cursor:pointer;transition:all .15s ease}.cw-code-card__copy-btn:hover{background:#ffffff29!important;border-color:#ffffff4d!important;color:#fff!important}.cw-code-card__copy-btn .check-icon{display:none;color:#34d399!important}.cw-code-card__copy-btn.is-copied{background:#34d3992e!important;border-color:#34d39980!important;color:#34d399!important}.cw-code-card__copy-btn.is-copied .copy-icon{display:none}.cw-code-card__copy-btn.is-copied .check-icon{display:inline-block}.cw-code-card__body{display:flex;overflow-x:auto;font-family:JetBrains Mono,Fira Code,ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:13.5px;line-height:1.7;background:#1e293b!important;scrollbar-width:thin;scrollbar-color:#475569 transparent}.cw-code-card__body::-webkit-scrollbar{height:8px;background:transparent}.cw-code-card__body::-webkit-scrollbar-thumb{background:#475569;border-radius:4px}.cw-code-card__body::-webkit-scrollbar-thumb:hover{background:#64748b}.cw-code-card__gutter{display:flex;flex-direction:column;flex-shrink:0;padding:14px 12px 14px 16px!important;text-align:right;-webkit-user-select:none;user-select:none;border-right:1px solid #334155!important;background:#0f172a!important;color:#64748b!important;font-size:12px}.cw-line-num{height:23px;line-height:23px;font-family:inherit;color:#64748b!important}.cw-code-card__pre{flex:1;margin:0!important;padding:14px 18px!important;overflow-x:visible;background:transparent!important;border:none!important}.cw-code-card__code{display:block;color:#f8fafc!important;font-family:inherit;font-size:inherit;line-height:inherit;white-space:pre}.cw-code-line{display:block;min-height:23px;line-height:23px}.tok-comment{color:#94a3b8!important;font-style:italic!important}.tok-keyword{color:#fb7185!important;font-weight:600!important}.tok-string{color:#34d399!important}.tok-type{color:#fbbf24!important;font-weight:550!important}.tok-constant{color:#38bdf8!important;font-weight:600!important}.tok-function{color:#38bdf8!important;font-weight:550!important}.tok-number{color:#f97316!important}.tok-operator{color:#93c5fd!important}.tok-tag{color:#4ade80!important;font-weight:600!important}.tok-attr{color:#38bdf8!important}.tok-ident{color:#f8fafc!important}.cw-code,.md-body pre.cw-code{background:#1e293b!important;color:#f8fafc!important;padding:14px 16px!important;border-radius:10px!important;border:1px solid #334155!important;overflow:auto;font-size:13.5px;margin:12px 0}.cw-diagram{position:relative;margin:16px 0 10px;padding:18px 14px;background:linear-gradient(180deg,#fbfcfe,#fff);border:1px solid #e2e8f0;border-radius:12px;overflow-x:auto;text-align:center;box-shadow:0 1px 4px #0f172a0a}.cw-diagram .mermaid,.cw-diagram svg{max-width:100%;height:auto;margin:0 auto;display:block;text-rendering:geometricPrecision;shape-rendering:geometricPrecision}.cw-diagram--zoomable{cursor:zoom-in;transition:border-color .15s ease,box-shadow .15s ease}.cw-diagram--zoomable:hover{border-color:#bfdbfe;box-shadow:0 4px 14px #2563eb1a}.cw-diagram--zoomable:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.cw-diagram__zoom-hint{position:absolute;top:8px;right:8px;z-index:1;padding:3px 8px;border-radius:999px;background:#0f172ab8;color:#fff;font-size:11px;line-height:1.4;pointer-events:none;opacity:.88;letter-spacing:.02em}.cw-diagram--zoomable:hover .cw-diagram__zoom-hint{background:#2563ebe6}.cw-diagram .mermaid-error{text-align:left;white-space:pre-wrap;color:#b91c1c;font-size:12px;background:#fef2f2;padding:10px;border-radius:8px}.md-body.courseware img.cw-img--zoomable{max-width:100%;height:auto;cursor:zoom-in;border-radius:8px;transition:box-shadow .15s ease}.md-body.courseware img.cw-img--zoomable:hover{box-shadow:0 4px 16px #0f172a1f}.cw-viewer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:4000;display:flex;flex-direction:column;background:#e8edf3;animation:cw-viewer-in .16s ease both;-webkit-user-select:none;user-select:none;touch-action:none}@keyframes cw-viewer-in{0%{opacity:0}to{opacity:1}}.cw-viewer__toolbar{flex:0 0 auto;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px 16px;padding:10px 14px;background:#0f172af5;border-bottom:1px solid rgba(148,163,184,.18);color:#e2e8f0}.cw-viewer__tools,.cw-viewer__zoom{display:flex;flex-wrap:wrap;align-items:center;gap:6px}.cw-viewer__btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(148,163,184,.28);background:#1e293be6;color:#e2e8f0;border-radius:8px;padding:6px 12px;font-size:13px;line-height:1.2;cursor:pointer;transition:background .12s ease,border-color .12s ease}.cw-viewer__btn:hover{background:#334155f2;border-color:#94a3b873}.cw-viewer__btn.is-active{background:#2563eb;border-color:#3b82f6;color:#fff}.cw-viewer__scale{min-width:64px;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace}.cw-viewer__close{margin-left:4px;background:#ef44442e;border-color:#f8717173}.cw-viewer__close:hover{background:#ef444459}.cw-viewer__divider{width:1px;height:22px;margin:0 4px;background:#94a3b840}.cw-viewer__colors{display:flex;align-items:center;gap:6px}.cw-viewer__swatch{width:22px;height:22px;border-radius:999px;border:2px solid transparent;cursor:pointer;padding:0;box-shadow:inset 0 0 0 1px #ffffff26}.cw-viewer__swatch.is-active{border-color:#fff;box-shadow:0 0 0 2px #3b82f6b3}.cw-viewer__width{display:inline-flex;align-items:center;gap:6px;margin:0 4px;font-size:12px;color:#94a3b8}.cw-viewer__width input{width:88px;accent-color:#3b82f6}.cw-viewer__viewport{--cw-canvas-bg: #e8edf3;--cw-canvas-grid: rgba(100, 116, 139, .22);position:relative;flex:1 1 auto;min-height:0;overflow:hidden;display:flex;align-items:center;justify-content:center;background-color:var(--cw-canvas-bg);background-image:linear-gradient(var(--cw-canvas-grid) 1px,transparent 1px),linear-gradient(90deg,var(--cw-canvas-grid) 1px,transparent 1px);background-size:28px 28px;cursor:grab}.cw-viewer__viewport.is-pan{cursor:grab}.cw-viewer__viewport.is-pan:active{cursor:grabbing}.cw-viewer__viewport.is-pen{cursor:crosshair}.cw-viewer__viewport.is-eraser{cursor:cell}.cw-viewer__world{position:relative;flex:0 0 auto;transform-origin:center center}.cw-viewer__content{position:relative;z-index:1;line-height:0;pointer-events:none;display:flex;align-items:center;justify-content:center}.cw-viewer__content svg,.cw-viewer__svg{display:block;max-width:none!important;max-height:none!important;width:auto;height:auto;margin:0 auto;background:#fffffff5;border-radius:12px;box-shadow:0 0 0 1px #0f172a14,0 12px 36px #0f172a1f;padding:24px 28px;box-sizing:content-box;text-rendering:geometricPrecision;shape-rendering:geometricPrecision}.cw-viewer__img{display:block;max-width:none;max-height:none;width:auto;height:auto;margin:0 auto;background:#fffffff5;border-radius:12px;padding:16px;box-sizing:content-box;box-shadow:0 0 0 1px #0f172a14,0 12px 36px #0f172a1f;image-rendering:-webkit-optimize-contrast}.cw-viewer__ink{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;width:100%;height:100%;pointer-events:none;touch-action:none}.cw-viewer__hint{flex:0 0 auto;margin:0;padding:6px 14px 8px;text-align:center;font-size:12px;color:#e2e8f08c;background:#0f172ae6;border-top:1px solid rgba(148,163,184,.12)}@media(max-width:720px){.cw-viewer__toolbar{padding:8px 10px}.cw-viewer__btn{padding:6px 9px;font-size:12px}}.cw-demo{margin:16px 0;overflow:hidden;border:1px solid #e7edf4;border-radius:12px;background:#fbfdff;box-shadow:0 1px 3px #0f172a0a}.cw-demo__caption{padding:8px 14px;border-bottom:1px solid #eef2f7;background:#f4f7fa;color:#475569;font-size:12px;font-weight:650}.cw-demo code{font-size:11px}.cw-demo--html{padding:12px}.cw-demo__header,.cw-demo__footer,.cw-demo__main{border:1px solid #dce7ee;border-radius:8px}.cw-demo__header{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:9px 10px;background:#eff8ff}.cw-demo__header strong{color:#0f3a57;font-size:14px}.cw-demo__header nav{display:flex;align-items:center;gap:8px;margin-left:auto}.cw-demo__header a{color:#2563eb;font-size:12px}.cw-demo__main{margin:8px 0;padding:12px;background:#fff}.cw-demo__main h4{margin:5px 0;color:#1e293b;font-size:15px}.cw-demo__main p{margin:4px 0 10px;color:#64748b;font-size:13px}.cw-demo__main button{padding:6px 10px;border:0;border-radius:6px;background:#cbd5e1;color:#475569}.cw-demo__footer{padding:7px 10px;background:#f8fafc;color:#64748b;font-size:12px}.cw-demo--css,.cw-demo--js{padding:12px}.cw-demo--css .cw-demo__caption,.cw-demo--js .cw-demo__caption{margin:-12px -12px 12px}.cw-demo__css-row{display:flex;gap:12px}.cw-demo__css-card{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:6px;padding:11px;border:1px solid #dce7ee;border-radius:9px;background:#fff;color:#475569;font-size:12px;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.cw-demo__css-card:hover{transform:translateY(-3px);border-color:#e85d4c;box-shadow:0 7px 14px #e85d4c21}.cw-demo__hint{margin:10px 0 0;color:#64748b;font-size:12px}.cw-demo__js-stage{display:flex;align-items:center;gap:14px}.cw-demo__action{min-height:34px;padding:6px 13px;border:1px solid #c2410c;border-radius:7px;background:#fff7ed;color:#9a3412;cursor:pointer;font-size:13px;font-weight:650;transition:transform .15s ease,background .15s ease}.cw-demo__action:hover{background:#ffedd5}.cw-demo__action:active{transform:translateY(1px) scale(.98)}.cw-demo__action:focus-visible{outline:2px solid #e85d4c;outline-offset:2px}.cw-demo__counter{display:flex;align-items:baseline;gap:7px;color:#64748b;font-size:12px}.cw-demo__counter strong{color:#c2410c;font-size:25px;line-height:1}.cw-quiz{margin:14px 0;padding:12px;border:1px solid #dce7ee;border-radius:12px;background:#fbfdff}.cw-quiz__caption{margin:-12px -12px 10px;padding:8px 12px;border-bottom:1px solid #e7edf4;background:#f4f7fa;color:#475569;font-size:12px;font-weight:650}.cw-quiz__question{margin:0 0 10px;color:#1e293b;font-size:14px;font-weight:600}.cw-quiz__options{display:grid;gap:7px}.cw-quiz__options button{width:100%;padding:8px 10px;border:1px solid #dce7ee;border-radius:7px;background:#fff;color:#475569;cursor:pointer;font:inherit;font-size:13px;text-align:left;transition:border-color .15s ease,background .15s ease}.cw-quiz__options button:hover{border-color:#e85d4c;background:#fff7f5}.cw-quiz__options button:focus-visible{outline:2px solid #e85d4c;outline-offset:2px}.cw-quiz__options button.is-correct{border-color:#86efac;background:#f0fdf4;color:#166534}.cw-quiz__options button.is-wrong{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.cw-quiz__feedback{min-height:1.6em;margin:10px 0 0;color:#64748b;font-size:12px}.cw-quiz-bank{margin:16px 0;overflow:hidden;border:1px solid #dce7ee;border-radius:12px;background:#fbfdff}.cw-quiz-bank__head{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid #e7edf4;background:#f4f7fa}.cw-quiz-bank__head strong{color:#334155;font-size:14px}.cw-quiz-bank__head span{color:#64748b;font-size:12px}.cw-quiz-bank__tabs{display:flex;gap:6px;padding:10px 12px 0;overflow-x:auto}.cw-quiz-bank__tabs button{flex:1 0 108px;min-height:34px;padding:6px 9px;border:1px solid #dce7ee;border-radius:7px 7px 0 0;background:#fff;color:#64748b;cursor:pointer;font:inherit;font-size:13px;font-weight:600}.cw-quiz-bank__tabs button span{margin-left:5px;color:#94a3b8;font-size:11px;font-weight:400}.cw-quiz-bank__tabs button[aria-selected=true]{border-color:#e85d4c;background:#fff7f5;color:#c2410c}.cw-quiz-bank__panel{padding:12px}.cw-quiz-bank__summary{margin-bottom:10px;padding:8px 10px;border-radius:7px;background:#eff8ff;color:#0f3a57;font-size:12px;font-weight:600}.cw-quiz-bank__question{padding:12px 0;border-bottom:1px solid #eef2f7}.cw-quiz-bank__question:last-child{border-bottom:0}.cw-quiz-bank__question>p{display:flex;align-items:flex-start;gap:8px;margin:0 0 8px;color:#334155;font-size:14px;font-weight:600}.cw-quiz-bank__question>p span{flex:0 0 20px;height:20px;border-radius:50%;background:#f1f5f9;color:#64748b;font-size:11px;line-height:20px;text-align:center}.cw-quiz-bank__options{display:grid;gap:6px}.cw-quiz-bank__options button{width:100%;padding:8px 10px;border:1px solid #dce7ee;border-radius:7px;background:#fff;color:#475569;cursor:pointer;font:inherit;font-size:13px;text-align:left;transition:border-color .15s ease,background .15s ease}.cw-quiz-bank__options button:hover{border-color:#e85d4c;background:#fff7f5}.cw-quiz-bank__options button:focus-visible,.cw-quiz-bank__tabs button:focus-visible{outline:2px solid #e85d4c;outline-offset:2px}.cw-quiz-bank__options button.is-correct{border-color:#86efac;background:#f0fdf4;color:#166534}.cw-quiz-bank__options button.is-wrong{border-color:#fecaca;background:#fef2f2;color:#b91c1c}.cw-quiz-bank__feedback{min-height:1.5em;margin-top:7px;color:#64748b;font-size:12px}@media(max-width:620px){.cw-demo__css-row{flex-direction:column}.cw-quiz-bank__head{display:block}.cw-quiz-bank__head span{display:block;margin-top:3px}.cw-demo__header nav{width:100%;margin-left:0}}@media(prefers-reduced-motion:reduce){.cw-demo__css-card,.cw-demo__action,.cw-quiz__options button{transition:none}}.cw-card{margin:14px 0;border-radius:12px;border:1px solid #eef2f7;overflow:hidden;box-shadow:0 1px 2px #0f172a08}.cw-card__label{font-size:12px;font-weight:700;letter-spacing:.04em;padding:8px 14px;border-bottom:1px solid rgba(0,0,0,.04)}.cw-card__body{padding:10px 14px 12px;font-size:14px}.cw-card__body p{margin:.35em 0}.cw-card__body ul{margin:.35em 0;padding-left:1.2em}.cw-card--goal{border-color:#bfdbfe;background:#f8fbff}.cw-card--goal .cw-card__label{background:#eff6ff;color:#1d4ed8}.cw-card--tip{border-color:#fcd9d3;background:#fffbfa}.cw-card--tip .cw-card__label{background:#fdecea;color:#c2410c}.cw-card--warn{border-color:#fde68a;background:#fffbeb}.cw-card--warn .cw-card__label{background:#fef3c7;color:#b45309}.cw-card--danger{border-color:#fecaca;background:#fef2f2}.cw-card--danger .cw-card__label{background:#fee2e2;color:#b91c1c}.cw-card--ok{border-color:#bbf7d0;background:#f0fdf4}.cw-card--ok .cw-card__label{background:#dcfce7;color:#15803d}.cw-roadmap{margin:18px 0 24px;padding:16px 18px 18px;border:1px solid #bfdbfe;border-radius:12px;background:linear-gradient(135deg,#f8fbff,#f0f7ff);box-shadow:0 2px 8px #2563eb0d}.cw-roadmap__head{display:flex;align-items:center;gap:10px;margin-bottom:12px}.cw-roadmap__pill{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:6px;background:#2563eb;color:#fff;font-size:11px;font-weight:700;letter-spacing:.02em}.cw-roadmap__title{color:#1e3a8a;font-size:15px;font-weight:700}.cw-roadmap__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.cw-roadmap-item{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid #dbeafe;border-radius:9px;background:#fff;transition:all .2s ease}.cw-roadmap-item:hover{transform:translateY(-2px);border-color:#93c5fd;box-shadow:0 4px 12px #2563eb14}.cw-roadmap-num{flex:0 0 auto;display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:6px;background:#eff6ff;border:1px solid #bfdbfe;color:#2563eb;font-size:12px;font-weight:800;font-family:ui-monospace,SFMono-Regular,monospace}.cw-roadmap-info{flex:1 1 auto;min-width:0}.cw-roadmap-name{color:#1e293b;font-size:13px;font-weight:700;line-height:1.4}.cw-roadmap-desc{margin-top:3px;color:#64748b;font-size:12px;line-height:1.4}details.cw-collapse{margin:10px 0 28px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease;box-shadow:0 1px 3px #0f172a0a}details.cw-collapse:hover{border-color:#cbd5e1}details.cw-collapse[open]{border-color:#cbd5e1;box-shadow:0 3px 10px #0f172a0f}summary.cw-collapse__summary{display:flex;align-items:center;gap:10px;padding:11px 16px;cursor:pointer;list-style:none;-webkit-user-select:none;user-select:none;background:#f8fafc;border-bottom:1px solid transparent;transition:background .15s ease}summary.cw-collapse__summary::-webkit-details-marker{display:none}summary.cw-collapse__summary:hover{background:#f1f5f9}details.cw-collapse[open]>summary.cw-collapse__summary{border-bottom-color:#e2e8f0;background:#f8fafc}.cw-collapse__arrow{flex:0 0 auto;color:#64748b;transition:transform .2s cubic-bezier(.4,0,.2,1),color .15s ease}details.cw-collapse[open] .cw-collapse__arrow{transform:rotate(90deg);color:#e85d4c}.cw-collapse__badge{flex:0 0 auto;padding:2px 7px;border-radius:4px;background:#fef2f2;border:1px solid #fecaca;color:#b91c1c;font-size:11px;font-weight:700;letter-spacing:.02em}.cw-collapse__title{flex:1 1 auto;min-width:0;color:#1e293b;font-size:13.5px;font-weight:650;line-height:1.4}.cw-collapse__status{flex:0 0 auto;font-size:12px;color:#94a3b8;transition:color .15s ease}summary.cw-collapse__summary:hover .cw-collapse__status{color:#64748b}details.cw-collapse:not([open]) .cw-collapse__status:after{content:"展开知识点 ▾"}details.cw-collapse[open] .cw-collapse__status:after{content:"收起 ▴";color:#e85d4c}.cw-collapse__content{padding:16px 20px 20px;color:#334155;font-size:13.5px;line-height:1.8;background:#fff}.cw-collapse__content p{margin:.5em 0}.cw-collapse__content ul,.cw-collapse__content ol{margin:.5em 0;padding-left:1.4em}.cw-collapse__content li{margin:.35em 0}.cw-collapse__content li strong{color:#0f172a}.cw-collapse__content h4{margin:20px 0 10px;padding:5px 0 5px 11px;color:#0f172a;font-size:14px;font-weight:700;border-left:3.5px solid #e85d4c;background:linear-gradient(90deg,#fff7f5 0%,transparent 100%);border-radius:0 4px 4px 0}.cw-collapse__content h4:first-child{margin-top:4px}.cw-collapse__content h5{margin:14px 0 6px;color:#1e293b;font-size:13.5px;font-weight:650}.cw-collapse__content :not(pre)>code:not(.cw-code-card__code){padding:2px 6px;font-size:12px;border-radius:4px;background:#f1f5f9;color:#0f766e;border:1px solid #e2e8f0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}.cw-collapse__content .cw-quote{margin:12px 0;padding:10px 14px;border-left:3px solid #3b82f6;background:#eff6ff;color:#1e40af;border-radius:0 8px 8px 0;font-size:13px;line-height:1.6}.cw-collapse__content .cw-table-wrap{margin:14px 0;border:1px solid #e2e8f0;border-radius:8px;overflow-x:auto;box-shadow:0 1px 2px #0f172a08}.cw-collapse__content table{width:100%;border-collapse:collapse;font-size:13px}.cw-collapse__content th{background:#f8fafc;color:#1e293b;font-weight:650;padding:10px 12px;border-bottom:1px solid #e2e8f0;text-align:left;white-space:nowrap}.cw-collapse__content td{padding:9px 12px;border-bottom:1px solid #f1f5f9;color:#475569}.cw-collapse__content tr:last-child td{border-bottom:none}.cw-collapse__content tr:nth-child(2n) td{background:#fafbfc}hr.cw-divider{border:none;border-top:1px solid #e2e8f0;margin:28px 0}hr.cw-divider+h2{border-top:none;padding-top:0;margin-top:0}.md-body.courseware h2{display:flex;align-items:center;gap:8px;padding-top:18px;margin-top:28px;border-top:2px dashed #e2e8f0;color:#0f172a}.md-body.courseware h2:first-of-type{border-top:none;padding-top:0;margin-top:16px}.cw-prompt-card{margin:24px 0;border-radius:14px;background:#fff;border:1px solid #cbd5e1;box-shadow:0 10px 25px -5px #0f172a14,0 8px 10px -6px #0f172a0a;overflow:hidden;transition:all .25s cubic-bezier(.4,0,.2,1)}.cw-prompt-card:hover{border-color:#94a3b8;box-shadow:0 14px 28px -4px #0f172a1f,0 10px 14px -6px #0f172a0f}.cw-prompt-card__header{display:flex;align-items:center;justify-content:space-between;padding:10px 18px;background:#0f172a;border-bottom:1px solid #1e293b;color:#f8fafc}.cw-prompt-card__header-left{display:flex;align-items:center;gap:10px}.cw-prompt-card__dots{display:flex;align-items:center;gap:6px}.cw-prompt-card__dots span{width:9px;height:9px;border-radius:50%;display:inline-block}.cw-prompt-card__dot--red{background:#ff5f56}.cw-prompt-card__dot--yellow{background:#ffbd2e}.cw-prompt-card__dot--green{background:#27c93f}.cw-prompt-card__title{font-size:13.5px;font-weight:700;color:#f1f5f9;letter-spacing:.02em;display:flex;align-items:center;gap:6px}.cw-prompt-card__tag{font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;padding:2px 7px;border-radius:4px;background:#6366f140;color:#a5b4fc;border:1px solid rgba(165,180,252,.3);letter-spacing:.05em}.cw-prompt-card__badge{font-size:11.5px;font-weight:600;padding:3px 10px;border-radius:100px;background:linear-gradient(135deg,#3b82f633,#6366f133);color:#93c5fd;border:1px solid rgba(147,197,253,.3);display:flex;align-items:center;gap:4px}.cw-prompt-card__body{padding:18px 20px;display:flex;flex-direction:column;gap:16px;background:#fff}.cw-prompt-card__section{display:flex;flex-direction:column;gap:8px}.cw-prompt-card__label{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:750;padding:4px 10px;border-radius:6px;width:fit-content;letter-spacing:.02em}.cw-prompt-card__label--goal{background:#eff6ff;color:#1d4ed8;border:1px solid #bfdbfe}.cw-prompt-card__label--req{background:#f8fafc;color:#334155;border:1px solid #cbd5e1}.cw-prompt-card__label--rule{background:#fef2f2;color:#b91c1c;border:1px solid #fecaca}.cw-prompt-card__goal-box{padding:12px 16px;background:linear-gradient(135deg,#f0f7ff,#f8faff);border-left:4px solid #3b82f6;border-radius:0 8px 8px 0;font-size:14px;line-height:1.6;font-weight:600;color:#1e3a8a}.cw-prompt-card__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.cw-prompt-card__item{display:flex;align-items:flex-start;gap:10px;padding:9px 13px;background:#f8fafc;border:1px solid #f1f5f9;border-radius:8px;font-size:13.5px;line-height:1.6;color:#334155;transition:all .15s ease}.cw-prompt-card__item:hover{background:#f1f5f9;border-color:#e2e8f0}.cw-prompt-card__num{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:50%;background:#3b82f6;color:#fff;font-size:11px;font-weight:750;flex-shrink:0;margin-top:2px}.cw-prompt-card__item strong{color:#0f172a;font-weight:700}.cw-prompt-card__footer-box{margin-top:4px;padding:10px 14px;border-radius:8px;background:#fefce8;border:1px solid #fef08a;color:#854d0e;font-size:13px;line-height:1.5;display:flex;align-items:center;gap:8px}.gkit{--brand: #e85d4c;--brand-hover: #d94f3f;--brand-light: #fdecea;--accent: #fb923c;--accent-light: #fff7ed;--border: #e5e7eb;--border-light: #f3f4f6;--text: #111827;--text-2: #4b5563;--text-3: #9ca3af;--bg-soft: #f8fafc;--bg-hover: #fdecea;--shadow-card: 0 1px 3px rgba(15, 23, 42, .08);--shadow-float: 0 16px 40px rgba(15, 23, 42, .16);--red: #dc2626;color:var(--text);font-size:13px;line-height:1.5}.gkit *{box-sizing:border-box}.gkit [data-ph]{display:block;min-height:54px;background:linear-gradient(135deg,#e2e8f0,#cbd5e1);border:0}.gkit a{color:var(--brand);pointer-events:none}.gkit .btn,.gkit button.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:32px;padding:0 12px;border-radius:8px;border:1px solid transparent;font-size:13px;font-weight:600;cursor:pointer;background:#fff;color:var(--text);transition:background .15s ease,transform .15s ease,box-shadow .15s ease,border-color .15s ease}.gkit .btn-primary{background:var(--brand);color:#fff}.gkit .btn-primary:hover{background:var(--brand-hover)}.gkit .btn-outline{border-color:var(--border);background:#fff}.gkit .btn-outline:hover{border-color:var(--brand);color:var(--brand)}.gkit .btn-text{background:transparent;color:var(--brand)}.gkit .btn-danger{background:var(--red);color:#fff}.gkit .btn:disabled{opacity:.55;cursor:not-allowed}.gkit .btn:active:not(:disabled){transform:translateY(1px)}.gkit .btn-spin{width:12px;height:12px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:gkit-spin .7s linear infinite}@keyframes gkit-spin{to{transform:rotate(360deg)}}.gkit .demo-input,.gkit input.demo-input,.gkit textarea.demo-input{display:block;width:100%;min-height:34px;padding:6px 10px;border:1px solid var(--border);border-radius:8px;background:#fff;color:var(--text)}.gkit .icon-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid var(--border);border-radius:7px;background:#fff;cursor:pointer}.gkit .demo-switch{display:inline-flex;align-items:center;cursor:pointer}.gkit .demo-switch input{position:absolute;opacity:0;width:0;height:0}.gkit .demo-switch .track{position:relative;width:38px;height:22px;border-radius:99px;background:#d1d5db;transition:background .15s ease}.gkit .demo-switch .track:after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #0f172a33;transition:transform .15s ease}.gkit .demo-switch input:checked+.track{background:var(--brand)}.gkit .demo-switch input:checked+.track:after{transform:translate(16px)}.gkit .hover-cursor{position:absolute;width:14px;height:18px;background:#111;clip-path:polygon(0 0,100% 70%,55% 70%,70% 100%,50% 100%,35% 72%,0 90%);pointer-events:none;z-index:3}.gkit .hover-btn{display:inline-flex;padding:6px 12px;border-radius:8px;border:1px solid var(--border);background:#fff;transition:background .15s ease,transform .15s ease,box-shadow .15s ease}.gkit .hover-btn:hover,.gkit .hov-color{background:var(--brand);color:#fff;border-color:var(--brand)}.gkit .hov-lift,.gkit .hover-v-card.hov-lift{transform:translateY(-4px);box-shadow:0 10px 22px #1d212929}.gkit .hover-v{display:inline-flex;align-items:center;gap:10px}.gkit .hover-v-btn{display:inline-flex;padding:5px 10px;border-radius:7px;border:1px solid var(--border);background:#fff}.gkit .hover-v-card{width:42px;height:28px;border-radius:6px;border:1px solid var(--border);background:#fff}.gkit .hover-v-row{display:inline-flex;gap:8px;padding:4px 8px;border-radius:6px;background:var(--bg-hover)}.gkit .mk-line{display:block;height:8px;border-radius:4px;background:#e5e7eb}.gkit .mk-row{display:flex;align-items:center;gap:8px}.gkit .mk-row.between{justify-content:space-between}.gkit .mk-btn{display:inline-flex;padding:4px 10px;border-radius:7px;border:1px solid var(--border);font-size:12px}.gkit .mk-btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.gkit .mk-btn.outline{background:#fff}.gkit .mk-icon-btn{display:inline-flex;width:22px;height:22px;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:5px;font-size:12px}.gkit .mk-phone{width:72px;padding:8px;border:1px solid var(--border);border-radius:10px;background:#fff}.gkit .mk-tip-wrap{position:relative;display:inline-flex}.gkit .mk-tip-bubble{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#111;color:#fff;font-size:11px;padding:4px 8px;border-radius:5px;white-space:nowrap}.gkit .ap{display:inline;border-radius:4px;transition:outline .15s ease,background .15s ease}.gkit .ap.gkit-on{outline:2px solid #2563eb;background:#2563eb1f;box-shadow:0 0 0 4px #2563eb40;animation:gkit-ap-pulse 1.4s infinite ease-in-out}@keyframes gkit-ap-pulse{0%,to{box-shadow:0 0 0 3px #2563eb40}50%{box-shadow:0 0 0 7px #2563eb73}}.gkit .terminal-win{background:#0f172a;color:#e2e8f0;border-radius:8px;overflow:hidden;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px}.gkit .terminal-body{display:flex;flex-direction:column;gap:2px;padding:10px 12px}.gkit .terminal-d{color:#94a3b8}.gkit .terminal-a{color:#fbbf24}.gkit .terminal-g{color:#34d399}.gkit .html-anat,.gkit .html-punc,.gkit .html-tagname,.gkit .html-attr,.gkit .html-content{font-family:ui-monospace,Menlo,Consolas,monospace}.gkit .html-tagname{color:#7c3aed}.gkit .html-attr{color:#b45309}
