:root{color-scheme:light;--color-brand-500: #a04be3;--color-brand-600: #8b35d4;--color-brand-700: #7a28c4;--color-accent: #f095f8;--color-brand-rgb: 160 75 227;--color-brand-surface: rgb(var(--color-brand-rgb) / 8%);--color-brand-border: rgb(var(--color-brand-rgb) / 28%);--color-brand-focus: rgb(var(--color-brand-rgb) / 18%);--color-trail-line: rgb(var(--color-brand-rgb) / 28%);--color-workshop-yellow: #f5d56e;--color-workshop-coral: #f07167;--color-workshop-ink: #171717;--color-workshop-mint: #d8f3e7;--color-workshop-lilac: var(--color-brand-surface);--color-workshop-peach: #ffe8d6;--color-workshop-sky: #e7f1ff;--gradient-brand: linear-gradient(135deg, #a04be3 0%, #c55aee 58%, #f095f8 100%);--gradient-brand-soft: linear-gradient( 135deg, rgb(var(--color-brand-rgb) / 12%) 0%, rgb(240 149 248 / 10%) 100% );--gradient-coral: linear-gradient(160deg, #ff8f7a 0%, #f07167 48%, #e85d6a 100%);--gradient-yellow: linear-gradient(160deg, #ffe089 0%, #f5d56e 100%);--color-success: #22c55e;--color-warning: #f59e0b;--color-danger: #ef4444;--color-vip: #c9a227;--color-bg: #f7f7f5;--color-ink-900: #0b0812;--color-ink-800: #160f26;--color-surface: #ffffff;--color-surface-muted: #efefed;--color-text: #171717;--color-text-muted: #6b7280;--color-border: rgb(23 23 23 / 8%);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--radius-sm: .75rem;--radius-md: 1rem;--radius-lg: 1.25rem;--radius-xl: 1.5rem;--radius-2xl: 1.75rem;--radius-pill: 999px;--shadow-sm: 0 2px 8px rgb(23 23 23 / 4%);--shadow-md: 0 12px 32px rgb(23 23 23 / 7%);--shadow-lg: 0 22px 50px rgb(23 23 23 / 10%);--shadow-brand: 0 12px 28px rgb(var(--color-brand-rgb) / 24%);--font-sans: "PingFang SC", "Microsoft YaHei", "Noto Sans SC", "Segoe UI", system-ui, -apple-system, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--text-display: clamp(2.8rem, 4vw, 4rem);--text-h1: clamp(2.25rem, 2.8vw, 3rem);--text-h2: clamp(1.75rem, 2.2vw, 2.25rem);--text-h3: 1.375rem;--text-body-lg: 1.125rem;--text-body: 1rem;--text-label: .875rem;--sidebar-width: 16.5rem;--content-max-width: 84rem;--page-gutter: clamp(1.5rem, 2.8vw, 2.75rem);--topbar-height: 4.5rem;--duration-fast: .12s;--duration-normal: .2s;--duration-enter: .42s;--ease-standard: cubic-bezier(.2, 0, 0, 1);--focus-ring: 0 0 0 2px #fff, 0 0 0 4px var(--color-brand-500);--focus-ring-field: 0 0 0 2px var(--color-brand-focus), 0 2px 8px rgb(23 23 23 / 4%);--promo-banner-height: 3rem;--promo-banner-offset: 0px;--z-sidebar: 40;--z-promo-banner: 45;--z-overlay: 50}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%}body{margin:0;min-width:1024px;font-family:var(--font-sans);font-size:var(--text-body);line-height:1.7;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}ul,ol{margin:0;padding:0;list-style:none}h1,h2,h3,h4,p{margin:0}:focus{outline:none}:focus-visible{outline:none;box-shadow:var(--focus-ring)}input:where(:not([type=checkbox],[type=radio],[type=file],[type=range],[type=button],[type=submit],[type=reset])):focus,input:where(:not([type=checkbox],[type=radio],[type=file],[type=range],[type=button],[type=submit],[type=reset])):focus-visible,textarea:focus,textarea:focus-visible,select:focus,select:focus-visible{outline:none;border-color:rgb(var(--color-brand-rgb) / 45%);box-shadow:var(--focus-ring-field)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.course-content{width:100%;max-width:100%;min-width:0;padding:0;font-size:var(--text-label);line-height:1.75;overflow-x:auto;overflow-wrap:break-word}.course-content h2,.course-content h3,.course-content h4{margin:1.5rem 0 .75rem;font-weight:800;letter-spacing:-.02em;overflow-wrap:break-word;scroll-margin-top:calc(var(--promo-banner-offset, 0px) + var(--space-6) + .5rem)}.course-content h2:first-child,.course-content h3:first-child,.course-content h4:first-child{margin-top:0}.course-content p{margin:.75rem 0}.course-content>:first-child{margin-top:0}.course-content>:last-child{margin-bottom:0}.course-content ul,.course-content ol{margin:.75rem 0;padding-left:1.5em}.course-content ul{list-style:disc}.course-content ol,.course-content .feishu-doc ol,.course-content .feishu-ordered{list-style:decimal}.course-content li{margin:.35rem 0}.course-content li::marker{color:var(--color-brand-500)}.course-content img{display:block;max-width:100%;height:auto;margin:var(--space-4) 0;border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:zoom-in}.course-content video{display:block;max-width:100%;height:auto;margin:var(--space-4) 0;border-radius:var(--radius-md)}.course-content iframe{display:block;max-width:100%;margin:var(--space-4) 0;border:0;border-radius:var(--radius-md)}.course-content audio{display:block;width:100%;max-width:100%;height:2.75rem;min-height:2.75rem;margin:var(--space-4) 0}.course-content a img{cursor:pointer}.course-content figure{margin:var(--space-4) 0}.course-content figure img,.course-content figure video,.course-content figure iframe{margin:0}.course-content figcaption{margin-top:var(--space-2);color:var(--color-text-muted);font-size:.8125rem;text-align:center}.course-content .feishu-html-preview{margin:var(--space-6) 0;overflow:hidden;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm)}.course-content .feishu-html-preview-frame{display:block;width:100%;height:640px;max-width:100%;margin:var(--space-4) 0;overflow:auto;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.course-content .feishu-html-preview .feishu-html-preview-frame{margin:0;border:0;border-radius:0}.course-content .feishu-html-preview figcaption{margin:0;padding:var(--space-3) var(--space-4);border-top:1px solid var(--color-border);background:var(--color-surface-muted);text-align:left}.course-content .feishu-html-preview .attachment{color:var(--color-brand-600);font-weight:600;text-decoration:none}.course-content .feishu-html-preview .attachment:hover{text-decoration:underline;text-decoration-color:currentcolor}.course-content .feishu-grid{display:flex;align-items:flex-start;gap:var(--space-4);margin:var(--space-4) 0;min-width:0}.course-content .feishu-grid-column{flex:1 1 0;min-width:0}.course-content .feishu-grid-column>:first-child,.course-content .feishu-grid>:first-child{margin-top:0}.course-content .feishu-grid-column>:last-child,.course-content .feishu-grid>:last-child{margin-bottom:0}.course-content .feishu-grid figure{margin:0}.course-content .feishu-grid img{width:100%;margin:0}.course-content .feishu-grid video,.course-content .feishu-grid iframe{margin:0}.course-content [class*=feishu-bg-]:not([class*=feishu-callout]){padding:.05em .2em;border-radius:.2em;box-decoration-break:clone}.course-content .feishu-bg-1{background:#fee3e2}.course-content .feishu-bg-2{background:#fee6c7}.course-content .feishu-bg-3{background:#fff5c2}.course-content .feishu-bg-4{background:#d9f5d6}.course-content .feishu-bg-5{background:#d0eaff}.course-content .feishu-bg-6{background:#e8deff}.course-content .feishu-bg-7{background:#e8eaed}.course-content .feishu-bg-8{background:#f76964}.course-content .feishu-bg-9{background:#ffa53d}.course-content .feishu-bg-10{background:#f8d84a}.course-content .feishu-bg-11{background:#62d256}.course-content .feishu-bg-12{background:#4ea4f4}.course-content .feishu-bg-13{background:#8f7cff}.course-content .feishu-bg-14{background:#8f959e}.course-content .feishu-tc-1{color:#f54a45}.course-content .feishu-tc-2{color:#f80}.course-content .feishu-tc-3{color:#ffc60a}.course-content .feishu-tc-4{color:#34c724}.course-content .feishu-tc-5{color:#3370ff}.course-content .feishu-tc-6{color:#7b61ff}.course-content .feishu-tc-7{color:#8f959e}.course-content .feishu-callout,.course-content .callout{display:flex;align-items:flex-start;gap:.7rem;box-sizing:border-box;margin:var(--space-4) 0;padding:1rem 1.2rem;border:1px solid #f0e0c4;border-radius:1.25rem;background:#fff8ee;color:var(--color-text)}.course-content .feishu-callout-emoji{flex:0 0 auto;margin-top:.12em;line-height:1.4;font-size:1.05em}.course-content .feishu-callout-body{min-width:0;flex:1 1 auto}.course-content .feishu-callout-body>:first-child,.course-content .callout>:first-child{margin-top:0}.course-content .feishu-callout-body>:last-child,.course-content .callout>:last-child{margin-bottom:0}.course-content table p{margin:0}.course-content .feishu-callout-body p,.course-content .callout p{margin:.35rem 0}.course-content .feishu-callout-bg-1{background:#fdecec}.course-content .feishu-callout-bg-2{background:#fff1e3}.course-content .feishu-callout-bg-3{background:#fff8ee}.course-content .feishu-callout-bg-4{background:#eef8ec}.course-content .feishu-callout-bg-5{background:#eef5ff}.course-content .feishu-callout-bg-6{background:#f4eeff}.course-content .feishu-callout-bg-7,.course-content .feishu-callout-bg-15{background:#f4f5f7}.course-content .feishu-callout-bg-8{background:#f8d0ce}.course-content .feishu-callout-bg-9{background:#ffd9b0}.course-content .feishu-callout-bg-10{background:#ffe9a3}.course-content .feishu-callout-bg-11{background:#c8efc2}.course-content .feishu-callout-bg-12{background:#c5e2ff}.course-content .feishu-callout-bg-13{background:#ddd0ff}.course-content .feishu-callout-bg-14{background:#d8dadd}.course-content .feishu-callout-border-1{border-color:#f3c8c6}.course-content .feishu-callout-border-2{border-color:#f3d4b0}.course-content .feishu-callout-border-3{border-color:#f0e0c4}.course-content .feishu-callout-border-4{border-color:#c8e4c3}.course-content .feishu-callout-border-5{border-color:#c4d8f2}.course-content .feishu-callout-border-6{border-color:#d4c6ef}.course-content .feishu-callout-border-7{border-color:#e0e2e6}.course-content .feishu-callout-tc-1{color:#f54a45}.course-content .feishu-callout-tc-2{color:#f80}.course-content .feishu-callout-tc-3{color:#c9a227}.course-content .feishu-callout-tc-4{color:#34c724}.course-content .feishu-callout-tc-5{color:#3370ff}.course-content .feishu-callout-tc-6{color:#7b61ff}.course-content .feishu-callout-tc-7{color:#8f959e}.course-content .course-code{position:relative;display:inline-flex;align-items:flex-start;gap:.4rem;max-width:100%;vertical-align:top}.course-content .course-code--block{display:block;margin:var(--space-4) 0}.course-content .course-code__copy{display:grid;flex-shrink:0;place-items:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-brand-600);cursor:pointer}.course-content .course-code__icon{display:block}.course-content .course-code__icon--done,.course-content .course-code__copy.is-copied .course-code__icon--copy{display:none}.course-content .course-code__copy.is-copied .course-code__icon--done{display:block}.course-content .course-code--block .course-code__copy{position:absolute;top:.55rem;right:.55rem;z-index:1}.course-content .course-code__copy:hover,.course-content .course-code__copy:focus-visible{color:var(--color-brand-700);border-color:var(--color-brand-border)}.course-content .course-code__copy.is-copied{color:#15803d;border-color:#22c55e47}.course-content pre{display:block;max-width:100%;overflow-x:auto;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-muted);white-space:pre-wrap}.course-content blockquote{margin:var(--space-4) 0;padding:var(--space-3) var(--space-4);border-left:3px solid var(--color-brand-500);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-brand-surface);color:var(--color-text-muted)}.course-content pre,.course-content code{font-family:var(--font-mono)}.course-content code{display:inline-block;max-width:100%;padding:0;border-radius:.4rem;background:var(--color-surface-muted);font-size:.9em;white-space:pre-wrap;overflow-wrap:anywhere}.course-content pre code{display:block;padding:0;border-radius:0;background:none;font-size:inherit}.course-content .course-code--block>code,.course-content .course-code--block>pre{padding-right:2.6rem}.course-content .course-code--block>code{display:block;box-sizing:border-box;width:100%;padding-top:0;padding-bottom:0;padding-left:0}.course-content .course-code__heading{color:#d24b3a}.course-content .course-code__strong{font-weight:800}.course-content table{width:100%;max-width:100%;margin:var(--space-4) 0;border-collapse:collapse;background:#eaf4fb;font-size:.875rem;line-height:1.6}.course-content th,.course-content td{padding:.7rem .85rem;border:1px solid #c4d5e3;background:#eaf4fb;color:var(--color-text);text-align:left;vertical-align:top;font-weight:400}.course-content th,.course-content table:not(:has(thead)) tr:first-child td{background:#b7d6ed;font-weight:600}.course-content .feishu-sheet-note,.course-content .feishu-bitable-note{margin:var(--space-3) 0 0;color:var(--color-text-muted);font-size:.8125rem}.course-content hr{margin:var(--space-8) 0;border:0;border-top:1px solid var(--color-border)}.course-content a[href]{pointer-events:auto;cursor:pointer;color:var(--color-brand-600);text-decoration:underline;text-decoration-color:var(--color-brand-border);text-underline-offset:.2em;transition:text-decoration-color var(--duration-normal) var(--ease-standard)}.course-content a[href]:hover{text-decoration-color:currentcolor}.course-content a:not([href]){color:inherit;text-decoration:none;cursor:inherit}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,input:-webkit-autofill:active,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,textarea:-webkit-autofill:active{-webkit-text-fill-color:var(--color-text);caret-color:var(--color-text);box-shadow:0 0 0 1000px var(--color-surface) inset;transition:background-color 99999s ease-out 0s}#app{min-height:100vh;background:var(--color-bg)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.section-shell{width:min(100%,var(--content-max-width));margin-inline:auto;padding-inline:var(--page-gutter)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:var(--space-6);margin-bottom:var(--space-8)}.section-heading h2{font-size:var(--text-h2);line-height:1.15;font-weight:700;letter-spacing:-.03em}.section-link{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-label);font-weight:600;transition:color var(--duration-normal) var(--ease-standard),transform var(--duration-normal) var(--ease-standard)}.section-link:hover{color:var(--color-brand-600);transform:translate(2px)}.circle-action{display:inline-grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--radius-pill);border:1.5px solid currentColor;background:#ffffff8c;color:inherit;transition:transform var(--duration-normal) var(--ease-standard),background var(--duration-normal) var(--ease-standard)}.circle-action:hover{transform:translate(2px);background:var(--color-surface)}.filter-bar{display:flex;flex-wrap:nowrap;align-items:center;gap:var(--space-2);margin-bottom:var(--space-8);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-2xl);background:#ffffffb8;box-shadow:var(--shadow-sm);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.surface-card{border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-sm);transition:transform var(--duration-normal) var(--ease-standard),border-color var(--duration-normal) var(--ease-standard),box-shadow var(--duration-normal) var(--ease-standard)}.surface-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.surface-card:focus-visible{border-color:var(--color-brand-border);box-shadow:var(--shadow-md),var(--focus-ring)}.page-hero{display:grid;gap:var(--space-3)}.page-hero h1{font-weight:700}.page-hero__subtitle{max-width:46rem;color:var(--color-text-muted);font-size:var(--text-body-lg)}.content-enter{animation:content-rise-in var(--duration-enter) var(--ease-standard) both}@keyframes content-rise-in{0%{opacity:0;transform:translateY(.875rem)}to{opacity:1;transform:translateY(0)}}.filter-bar>.base-input{flex:1 1 10rem;max-width:14rem;min-width:9rem;width:auto}.filter-bar>.base-select{flex:0 1 7.25rem;width:7.25rem;max-width:7.25rem;min-width:0}.filter-bar>.base-select .base-select__trigger{min-height:2.5rem;padding:.45rem .7rem .45rem .85rem;font-size:.8125rem}.filter-bar>.base-segmented{flex:0 0 auto;width:auto}.filter-bar>.base-button{flex:0 0 auto;min-height:2.5rem;padding:.55rem 1.1rem}@media(width<=1100px){.filter-bar{flex-wrap:wrap}.filter-bar>.base-select{flex:0 1 7.5rem;width:7.5rem;max-width:7.5rem}}@media(width<=720px){.filter-bar>.base-input{flex:1 1 100%;max-width:none}.filter-bar>.base-select{flex:1 1 calc(50% - var(--space-2));width:auto;max-width:none}}@media(width<=480px){.filter-bar>.base-select{flex:1 1 100%}}@media(prefers-reduced-motion:reduce){.content-enter{animation:none}.surface-card:hover{transform:none}}.doodle-star,.doodle-arrow{pointer-events:none;user-select:none}
