.monaco-aria-container{position:absolute;left:-999em}::-ms-clear{display:none}.monaco-editor .editor-widget input{color:inherit}.monaco-editor{position:relative;overflow:visible;-webkit-text-size-adjust:100%;color:var(--vscode-editor-foreground);background-color:var(--vscode-editor-background);overflow-wrap:initial}.monaco-editor-background{background-color:var(--vscode-editor-background)}.monaco-editor .rangeHighlight{background-color:var(--vscode-editor-rangeHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-rangeHighlightBorder)}.monaco-editor.hc-black .rangeHighlight,.monaco-editor.hc-light .rangeHighlight{border-style:dotted}.monaco-editor .symbolHighlight{background-color:var(--vscode-editor-symbolHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-symbolHighlightBorder)}.monaco-editor.hc-black .symbolHighlight,.monaco-editor.hc-light .symbolHighlight{border-style:dotted}.monaco-editor .editorCanvas{position:absolute;width:100%;height:100%;z-index:0;pointer-events:none}.monaco-editor .overflow-guard{position:relative;overflow:hidden}.monaco-editor .view-overlays{position:absolute;top:0}.monaco-editor .view-overlays>div,.monaco-editor .margin-view-overlays>div{position:absolute;width:100%}.monaco-editor .squiggly-error{border-bottom:4px double var(--vscode-editorError-border)}.monaco-editor .squiggly-error:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorError-background)}.monaco-editor .squiggly-warning{border-bottom:4px double var(--vscode-editorWarning-border)}.monaco-editor .squiggly-warning:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorWarning-background)}.monaco-editor .squiggly-info{border-bottom:4px double var(--vscode-editorInfo-border)}.monaco-editor .squiggly-info:before{display:block;content:"";width:100%;height:100%;background:var(--vscode-editorInfo-background)}.monaco-editor .squiggly-hint{border-bottom:2px dotted var(--vscode-editorHint-border)}.monaco-editor.showUnused .squiggly-unnecessary{border-bottom:2px dashed var(--vscode-editorUnnecessaryCode-border)}.monaco-editor.showDeprecated .squiggly-inline-deprecated{text-decoration:line-through;text-decoration-color:var(--vscode-editor-foreground, inherit)}.monaco-scrollable-element>.scrollbar>.scra{cursor:pointer;font-size:11px!important}.monaco-scrollable-element>.visible{opacity:1;background:#0000;transition:opacity .1s linear;z-index:11}.monaco-scrollable-element>.invisible{opacity:0;pointer-events:none}.monaco-scrollable-element>.invisible.fade{transition:opacity .8s linear}.monaco-scrollable-element>.shadow{position:absolute;display:none}.monaco-scrollable-element>.shadow.top{display:block;top:0;left:3px;height:3px;width:100%;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-scrollable-element>.shadow.left{display:block;top:3px;left:0;height:100%;width:3px;box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.shadow.top-left-corner{display:block;top:0;left:0;height:3px;width:3px}.monaco-scrollable-element>.shadow.top.left{box-shadow:var(--vscode-scrollbar-shadow) 6px 0 6px -6px inset}.monaco-scrollable-element>.scrollbar{background:var(--vscode-scrollbar-background)}.monaco-scrollable-element>.scrollbar>.slider{background:var(--vscode-scrollbarSlider-background)}.monaco-scrollable-element>.scrollbar>.slider:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-scrollable-element>.scrollbar>.slider.active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .blockDecorations-container{position:absolute;top:0;pointer-events:none}.monaco-editor .blockDecorations-block{position:absolute;box-sizing:border-box}.monaco-editor .view-overlays .current-line,.monaco-editor .margin-view-overlays .current-line{display:block;position:absolute;left:0;top:0;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .current-line.current-line-margin.current-line-margin-both{border-right:0}.monaco-editor .lines-content .cdr{position:absolute;height:100%}.monaco-editor .glyph-margin{position:absolute;top:0}.monaco-editor .glyph-margin-widgets .cgmr{position:absolute;display:flex;align-items:center;justify-content:center}.monaco-editor .glyph-margin-widgets .cgmr.codicon-modifier-spin:before{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.monaco-editor .lines-content .core-guide{position:absolute;box-sizing:border-box;height:100%}.monaco-editor .margin-view-overlays .line-numbers{bottom:0;font-variant-numeric:tabular-nums;position:absolute;text-align:right;display:inline-block;vertical-align:middle;box-sizing:border-box;cursor:default}.monaco-editor .relative-current-line-number{text-align:left;display:inline-block;width:100%}.monaco-editor .margin-view-overlays .line-numbers.lh-odd{margin-top:1px}.monaco-editor .line-numbers{color:var(--vscode-editorLineNumber-foreground)}.monaco-editor .line-numbers.active-line-number{color:var(--vscode-editorLineNumber-activeForeground)}.monaco-mouse-cursor-text{cursor:text}.mtkcontrol{color:#fff!important;background:#960000!important}.mtkoverflow{background-color:var(--vscode-button-background, var(--vscode-editor-background));color:var(--vscode-button-foreground, var(--vscode-editor-foreground));border-width:1px;border-style:solid;border-color:var(--vscode-contrastBorder);border-radius:2px;padding:4px;cursor:pointer}.mtkoverflow:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-editor.no-user-select .lines-content,.monaco-editor.no-user-select .view-line,.monaco-editor.no-user-select .view-lines{user-select:none;-webkit-user-select:none}.monaco-editor.mac .lines-content:hover,.monaco-editor.mac .view-line:hover,.monaco-editor.mac .view-lines:hover{user-select:text;-webkit-user-select:text;-ms-user-select:text}.monaco-editor.enable-user-select{user-select:initial;-webkit-user-select:initial}.monaco-editor .view-lines{white-space:nowrap}.monaco-editor .view-line{box-sizing:border-box;position:absolute;width:100%}.monaco-editor .lines-content>.view-lines>.view-line>span{top:0;bottom:0;position:absolute}.monaco-editor .mtkw{color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .mtkz{display:inline-block;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .lines-decorations{position:absolute;top:0;background:#fff}.monaco-editor .margin-view-overlays .cldr{position:absolute;height:100%}.monaco-editor .margin{background-color:var(--vscode-editorGutter-background)}.monaco-editor .margin-view-overlays .cmdr{position:absolute;left:0;width:100%;height:100%}.monaco-editor .minimap.slider-mouseover .minimap-slider{opacity:0;transition:opacity .1s linear}.monaco-editor .minimap.slider-mouseover:hover .minimap-slider,.monaco-editor .minimap.slider-mouseover .minimap-slider.active{opacity:1}.monaco-editor .minimap-slider .minimap-slider-horizontal{background:var(--vscode-minimapSlider-background)}.monaco-editor .minimap-slider:hover .minimap-slider-horizontal{background:var(--vscode-minimapSlider-hoverBackground)}.monaco-editor .minimap-slider.active .minimap-slider-horizontal{background:var(--vscode-minimapSlider-activeBackground)}.monaco-editor .minimap-shadow-visible{box-shadow:var(--vscode-scrollbar-shadow) -6px 0 6px -6px inset}.monaco-editor .minimap-shadow-hidden{position:absolute;width:0}.monaco-editor .minimap-shadow-visible{position:absolute;left:-6px;width:6px;pointer-events:none}.monaco-editor.no-minimap-shadow .minimap-shadow-visible{position:absolute;left:-1px;width:1px}.minimap.minimap-autohide-mouseover,.minimap.minimap-autohide-scroll{opacity:0;transition:opacity .5s}.minimap.minimap-autohide-scroll{pointer-events:none}.minimap.minimap-autohide-mouseover:hover,.minimap.minimap-autohide-scroll.active{opacity:1;pointer-events:auto}.monaco-editor .minimap{z-index:5}.monaco-editor .overlayWidgets{position:absolute;top:0;left:0}.monaco-editor .view-ruler{position:absolute;top:0;box-shadow:1px 0 0 0 var(--vscode-editorRuler-foreground) inset}.monaco-editor .scroll-decoration{position:absolute;top:0;left:0;height:6px;box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px inset}.monaco-editor .lines-content .cslr{position:absolute}.monaco-editor .focused .selected-text{background-color:var(--vscode-editor-selectionBackground)}.monaco-editor .selected-text{background-color:var(--vscode-editor-inactiveSelectionBackground)}.monaco-editor .top-left-radius{border-top-left-radius:3px}.monaco-editor .bottom-left-radius{border-bottom-left-radius:3px}.monaco-editor .top-right-radius{border-top-right-radius:3px}.monaco-editor .bottom-right-radius{border-bottom-right-radius:3px}.monaco-editor.hc-black .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-black .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-black .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-black .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor.hc-light .top-left-radius{border-top-left-radius:0}.monaco-editor.hc-light .bottom-left-radius{border-bottom-left-radius:0}.monaco-editor.hc-light .top-right-radius{border-top-right-radius:0}.monaco-editor.hc-light .bottom-right-radius{border-bottom-right-radius:0}.monaco-editor .cursors-layer{position:absolute;top:0}.monaco-editor .cursors-layer>.cursor{position:absolute;overflow:hidden;box-sizing:border-box}.monaco-editor .cursors-layer.cursor-smooth-caret-animation>.cursor{transition:all 80ms}.monaco-editor .cursors-layer.cursor-block-outline-style>.cursor{background:transparent!important;border-style:solid;border-width:1px}.monaco-editor .cursors-layer.cursor-underline-style>.cursor{border-bottom-width:2px;border-bottom-style:solid;background:transparent!important}.monaco-editor .cursors-layer.cursor-underline-thin-style>.cursor{border-bottom-width:1px;border-bottom-style:solid;background:transparent!important}@keyframes monaco-cursor-smooth{0%,20%{opacity:1}60%,to{opacity:0}}@keyframes monaco-cursor-phase{0%,20%{opacity:1}90%,to{opacity:0}}@keyframes monaco-cursor-expand{0%,20%{transform:scaleY(1)}80%,to{transform:scaleY(0)}}.cursor-smooth{animation:monaco-cursor-smooth .5s ease-in-out 0s 20 alternate}.cursor-phase{animation:monaco-cursor-phase .5s ease-in-out 0s 20 alternate}.cursor-expand>.cursor{animation:monaco-cursor-expand .5s ease-in-out 0s 20 alternate}.monaco-editor .mwh{position:absolute;color:var(--vscode-editorWhitespace-foreground)!important}.monaco-editor .monaco-decoration-css-rule-extractor{visibility:hidden;pointer-events:none}.monaco-editor .inputarea{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .inputarea.ime-input{z-index:10;caret-color:var(--vscode-editorCursor-foreground);color:var(--vscode-editor-foreground)}.monaco-editor .native-edit-context{margin:0;padding:0;position:absolute;overflow-y:scroll;scrollbar-width:none;z-index:-10;white-space:pre-wrap}.monaco-editor .ime-text-area{min-width:0;min-height:0;margin:0;padding:0;position:absolute;outline:none!important;resize:none;border:none;overflow:hidden;color:transparent;background-color:transparent;z-index:-10}.monaco-editor .edit-context-composition-none{background-color:transparent;border-bottom:none}.monaco-editor :not(.hc-black,.hc-light) .edit-context-composition-secondary{border-bottom:1px solid var(--vscode-editor-compositionBorder)}.monaco-editor :not(.hc-black,.hc-light) .edit-context-composition-primary{border-bottom:2px solid var(--vscode-editor-compositionBorder)}.monaco-editor :is(.hc-black,.hc-light) .edit-context-composition-secondary{border:1px solid var(--vscode-editor-compositionBorder)}.monaco-editor :is(.hc-black,.hc-light) .edit-context-composition-primary{border:2px solid var(--vscode-editor-compositionBorder)}.monaco-editor .margin-view-overlays .gpu-mark{position:absolute;top:0;bottom:0;left:0;width:100%;display:inline-block;border-left:solid 2px var(--vscode-editorWarning-foreground);opacity:.2;transition:background-color .1s linear}.monaco-editor .margin-view-overlays .gpu-mark:hover{background-color:var(--vscode-editorWarning-foreground)}.monaco-select-box{width:100%;cursor:pointer;border-radius:2px}.monaco-select-box-dropdown-container{font-size:13px;font-weight:400;text-transform:none}.monaco-action-bar .action-item.select-container{cursor:default}.monaco-action-bar .action-item .monaco-select-box{cursor:pointer;min-width:100px;min-height:18px;padding:2px 23px 2px 8px}.mac .monaco-action-bar .action-item .monaco-select-box{font-size:11px;border-radius:3px;min-height:24px}.monaco-list{position:relative;height:100%;width:100%;white-space:nowrap}.monaco-list.mouse-support{user-select:none;-webkit-user-select:none}.monaco-list>.monaco-scrollable-element{height:100%}.monaco-list-rows{position:relative;width:100%;height:100%}.monaco-list.horizontal-scrolling .monaco-list-rows{width:auto;min-width:100%}.monaco-list-row{position:absolute;box-sizing:border-box;overflow:hidden;width:100%}.monaco-list.mouse-support .monaco-list-row{cursor:pointer;touch-action:none}.monaco-list .monaco-scrollable-element>.scrollbar.vertical,.monaco-pane-view>.monaco-split-view2.vertical>.monaco-scrollable-element>.scrollbar.vertical{z-index:14}.monaco-list-row.scrolling{display:none!important}.monaco-list.element-focused,.monaco-list.selection-single,.monaco-list.selection-multiple{outline:0!important}.monaco-list-type-filter-message{position:absolute;box-sizing:border-box;width:100%;height:100%;top:0;left:0;padding:40px 1em 1em;text-align:center;white-space:normal;opacity:.7;pointer-events:none}.monaco-list-type-filter-message:empty{display:none}.monaco-drag-image{display:inline-block;padding:1px 7px;border-radius:10px;font-size:12px;position:absolute;z-index:1000;background-color:var(--vscode-list-activeSelectionBackground);color:var(--vscode-list-activeSelectionForeground);outline:1px solid var(--vscode-list-focusOutline);outline-offset:-1px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-select-box-dropdown-padding{--dropdown-padding-top: 1px;--dropdown-padding-bottom: 1px}.hc-black .monaco-select-box-dropdown-padding,.hc-light .monaco-select-box-dropdown-padding{--dropdown-padding-top: 3px;--dropdown-padding-bottom: 4px}.monaco-select-box-dropdown-container{display:none;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown *{margin:0}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown a:focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px}.monaco-select-box-dropdown-container>.select-box-details-pane>.select-box-description-markdown code{line-height:15px;font-family:var(--monaco-monospace-font)}.monaco-select-box-dropdown-container.visible{display:flex;flex-direction:column;text-align:left;width:1px;overflow:hidden;border-bottom-left-radius:3px;border-bottom-right-radius:3px}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container{flex:0 0 auto;align-self:flex-start;padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom);padding-left:1px;padding-right:1px;width:100%;overflow:hidden;box-sizing:border-box}.monaco-select-box-dropdown-container>.select-box-details-pane{padding:5px}.hc-black .monaco-select-box-dropdown-container>.select-box-dropdown-list-container{padding-top:var(--dropdown-padding-top);padding-bottom:var(--dropdown-padding-bottom)}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row{cursor:pointer}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-text{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-detail{text-overflow:ellipsis;overflow:hidden;padding-left:3.5px;white-space:nowrap;float:left;opacity:.7}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.option-decorator-right{text-overflow:ellipsis;overflow:hidden;padding-right:10px;white-space:nowrap;float:right}.monaco-select-box-dropdown-container>.select-box-dropdown-list-container .monaco-list .monaco-list-row>.visually-hidden{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control{flex:1 1 auto;align-self:flex-start;opacity:0}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div{overflow:hidden;max-height:0px}.monaco-select-box-dropdown-container>.select-box-dropdown-container-width-control>.width-control-div>.option-text-width-control{padding-left:4px;padding-right:8px;white-space:nowrap}.monaco-action-bar{white-space:nowrap;height:100%}.monaco-action-bar .actions-container{display:flex;margin:0 auto;padding:0;height:100%;width:100%;align-items:center}.monaco-action-bar.vertical .actions-container{display:inline-block}.monaco-action-bar .action-item{display:block;align-items:center;justify-content:center;cursor:pointer;position:relative}.monaco-action-bar .action-item.disabled{cursor:default}.monaco-action-bar .action-item .icon,.monaco-action-bar .action-item .codicon{display:block}.monaco-action-bar .action-item .codicon{display:flex;align-items:center;width:16px;height:16px}.monaco-action-bar .action-label{display:flex;font-size:11px;padding:3px;border-radius:5px}.monaco-action-bar .action-item.disabled .action-label:not(.icon),.monaco-action-bar .action-item.disabled .action-label:not(.icon):before,.monaco-action-bar .action-item.disabled .action-label:not(.icon):hover{color:var(--vscode-disabledForeground)}.monaco-action-bar .action-item.disabled .action-label.icon,.monaco-action-bar .action-item.disabled .action-label.icon:before,.monaco-action-bar .action-item.disabled .action-label.icon:hover{opacity:.6}.monaco-action-bar.vertical{text-align:left}.monaco-action-bar.vertical .action-item{display:block}.monaco-action-bar.vertical .action-label.separator{display:block;border-bottom:1px solid var(--vscode-disabledForeground);padding-top:1px;margin-left:.8em;margin-right:.8em}.monaco-action-bar .action-item .action-label.separator{width:1px;height:16px;margin:5px 4px!important;cursor:default;min-width:1px;padding:0;background-color:var(--vscode-disabledForeground)}.secondary-actions .monaco-action-bar .action-label{margin-left:6px}.monaco-action-bar .action-item.select-container{overflow:hidden;flex:1;max-width:170px;min-width:60px;display:flex;align-items:center;justify-content:center;margin-right:10px}.monaco-action-bar .action-item.action-dropdown-item{display:flex}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator{display:flex;align-items:center;cursor:default}.monaco-action-bar .action-item.action-dropdown-item>.action-dropdown-item-separator>div{width:1px}.monaco-diff-editor .diff-review{position:absolute}.monaco-component.diff-review{user-select:none;-webkit-user-select:none;z-index:99}.monaco-component.diff-review .diff-review-line-number{text-align:right;display:inline-block;color:var(--vscode-editorLineNumber-foreground)}.monaco-component.diff-review .diff-review-summary{padding-left:10px}.monaco-component.diff-review .diff-review-shadow{position:absolute;box-shadow:var(--vscode-scrollbar-shadow) 0 -6px 6px -6px inset}.monaco-component.diff-review .diff-review-row{white-space:pre}.monaco-component.diff-review .diff-review-table{display:table;min-width:100%}.monaco-component.diff-review .diff-review-row{display:table-row;width:100%}.monaco-component.diff-review .diff-review-spacer{display:inline-block;width:10px;vertical-align:middle}.monaco-component.diff-review .diff-review-spacer>.codicon{font-size:9px!important}.monaco-component.diff-review .diff-review-actions{display:inline-block;position:absolute;right:10px;top:2px;z-index:100}.monaco-component.diff-review .diff-review-actions .action-label{width:16px;height:16px;margin:2px 0}.monaco-component.diff-review .revertButton{cursor:pointer}.monaco-component.diff-review .action-label{background:var(--vscode-editorActionList-background)}:root{--vscode-sash-size: 4px;--vscode-sash-hover-size: 4px}.monaco-sash{position:absolute;z-index:35;touch-action:none}.monaco-sash.disabled{pointer-events:none}.monaco-sash.mac.vertical{cursor:col-resize}.monaco-sash.vertical.minimum{cursor:e-resize}.monaco-sash.vertical.maximum{cursor:w-resize}.monaco-sash.mac.horizontal{cursor:row-resize}.monaco-sash.horizontal.minimum{cursor:s-resize}.monaco-sash.horizontal.maximum{cursor:n-resize}.monaco-sash.disabled{cursor:default!important;pointer-events:none!important}.monaco-sash.vertical{cursor:ew-resize;top:0;width:var(--vscode-sash-size);height:100%}.monaco-sash.horizontal{cursor:ns-resize;left:0;width:100%;height:var(--vscode-sash-size)}.monaco-sash:not(.disabled)>.orthogonal-drag-handle{content:" ";height:calc(var(--vscode-sash-size) * 2);width:calc(var(--vscode-sash-size) * 2);z-index:100;display:block;cursor:all-scroll;position:absolute}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.start,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.end{cursor:nwse-resize}.monaco-sash.horizontal.orthogonal-edge-north:not(.disabled)>.orthogonal-drag-handle.end,.monaco-sash.horizontal.orthogonal-edge-south:not(.disabled)>.orthogonal-drag-handle.start{cursor:nesw-resize}.monaco-sash.vertical>.orthogonal-drag-handle.start{left:calc(var(--vscode-sash-size) * -.5);top:calc(var(--vscode-sash-size) * -1)}.monaco-sash.vertical>.orthogonal-drag-handle.end{left:calc(var(--vscode-sash-size) * -.5);bottom:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.start{top:calc(var(--vscode-sash-size) * -.5);left:calc(var(--vscode-sash-size) * -1)}.monaco-sash.horizontal>.orthogonal-drag-handle.end{top:calc(var(--vscode-sash-size) * -.5);right:calc(var(--vscode-sash-size) * -1)}.monaco-sash:before{content:"";pointer-events:none;position:absolute;width:100%;height:100%;background:transparent}.monaco-enable-motion .monaco-sash:before{transition:background-color .1s ease-out}.monaco-sash.hover:before,.monaco-sash.active:before{background:var(--vscode-sash-hoverBorder)}.monaco-sash.vertical:before{width:var(--vscode-sash-hover-size);left:calc(50% - (var(--vscode-sash-hover-size) / 2))}.monaco-sash.horizontal:before{height:var(--vscode-sash-hover-size);top:calc(50% - (var(--vscode-sash-hover-size) / 2))}.pointer-events-disabled{pointer-events:none!important}.monaco-sash.debug{background:#0ff}.monaco-sash.debug.disabled{background:#0ff3}.monaco-sash.debug:not(.disabled)>.orthogonal-drag-handle{background:red}.monaco-dropdown{height:100%;padding:0}.monaco-dropdown>.dropdown-label{cursor:pointer;height:100%;display:flex;align-items:center;justify-content:center}.monaco-dropdown>.dropdown-label>.action-label.disabled{cursor:default}.monaco-dropdown-with-primary{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-primary>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-primary>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-toolbar{height:100%}.monaco-toolbar .toolbar-toggle-more{display:inline-block;padding:0}.monaco-toolbar.responsive .monaco-action-bar>.actions-container>.action-item{flex-shrink:1;min-width:20px}.monaco-action-bar .action-item.menu-entry .action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-action-bar .action-item.menu-entry.text-only .action-label{color:var(--vscode-descriptionForeground);overflow:hidden;border-radius:2px}.monaco-action-bar .action-item.menu-entry.text-only.use-comma:not(:last-of-type) .action-label:after{content:", "}.monaco-action-bar .action-item.menu-entry.text-only+.action-item:not(.text-only)>.monaco-dropdown .action-label{color:var(--vscode-descriptionForeground)}.monaco-dropdown-with-default{display:flex!important;flex-direction:row;border-radius:5px}.monaco-dropdown-with-default>.action-container>.action-label{margin-right:0}.monaco-dropdown-with-default>.action-container.menu-entry>.action-label.icon{width:16px;height:16px;background-repeat:no-repeat;background-position:50%;background-size:16px}.monaco-dropdown-with-default:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label .codicon[class*=codicon-]{font-size:12px;padding-left:0;padding-right:0;line-height:16px;margin-left:-3px}.monaco-dropdown-with-default>.dropdown-action-container>.monaco-dropdown>.dropdown-label>.action-label{display:block;background-size:16px;background-position:center center;background-repeat:no-repeat}.monaco-editor .diff-hidden-lines-widget{width:100%}.monaco-editor .diff-hidden-lines{height:0px;transform:translateY(-10px);font-size:13px;line-height:14px}.monaco-editor .diff-hidden-lines:not(.dragging) .top:hover,.monaco-editor .diff-hidden-lines:not(.dragging) .bottom:hover,.monaco-editor .diff-hidden-lines .top.dragging,.monaco-editor .diff-hidden-lines .bottom.dragging{background-color:var(--vscode-focusBorder)}.monaco-editor .diff-hidden-lines .top,.monaco-editor .diff-hidden-lines .bottom{transition:background-color .1s ease-out;height:4px;background-color:transparent;background-clip:padding-box;border-bottom:2px solid transparent;border-top:4px solid transparent}.monaco-editor.draggingUnchangedRegion.canMoveTop:not(.canMoveBottom) *,.monaco-editor .diff-hidden-lines .top.canMoveTop:not(.canMoveBottom),.monaco-editor .diff-hidden-lines .bottom.canMoveTop:not(.canMoveBottom){cursor:n-resize!important}.monaco-editor.draggingUnchangedRegion:not(.canMoveTop).canMoveBottom *,.monaco-editor .diff-hidden-lines .top:not(.canMoveTop).canMoveBottom,.monaco-editor .diff-hidden-lines .bottom:not(.canMoveTop).canMoveBottom{cursor:s-resize!important}.monaco-editor.draggingUnchangedRegion.canMoveTop.canMoveBottom *,.monaco-editor .diff-hidden-lines .top.canMoveTop.canMoveBottom,.monaco-editor .diff-hidden-lines .bottom.canMoveTop.canMoveBottom{cursor:ns-resize!important}.monaco-editor .diff-hidden-lines .top{transform:translateY(4px)}.monaco-editor .diff-hidden-lines .bottom{transform:translateY(-6px)}.monaco-editor .diff-unchanged-lines{background:var(--vscode-diffEditor-unchangedCodeBackground)}.monaco-editor .noModificationsOverlay{z-index:1;background:var(--vscode-editor-background);display:flex;justify-content:center;align-items:center}.monaco-editor .diff-hidden-lines .center{background:var(--vscode-diffEditor-unchangedRegionBackground);color:var(--vscode-diffEditor-unchangedRegionForeground);overflow:hidden;display:block;text-overflow:ellipsis;white-space:nowrap;height:24px;box-shadow:inset 0 -5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow),inset 0 5px 5px -7px var(--vscode-diffEditor-unchangedRegionShadow)}.monaco-editor .diff-hidden-lines .center span.codicon{vertical-align:middle}.monaco-editor .diff-hidden-lines .center a:hover .codicon{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .diff-hidden-lines div.breadcrumb-item{cursor:pointer}.monaco-editor .diff-hidden-lines div.breadcrumb-item:hover{color:var(--vscode-editorLink-activeForeground)}.monaco-editor .movedOriginal,.monaco-editor .movedModified{border:2px solid var(--vscode-diffEditor-move-border)}.monaco-editor .movedOriginal.currentMove,.monaco-editor .movedModified.currentMove{border:2px solid var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path.currentMove{stroke:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines path{pointer-events:visiblestroke}.monaco-diff-editor .moved-blocks-lines .arrow{fill:var(--vscode-diffEditor-move-border)}.monaco-diff-editor .moved-blocks-lines .arrow.currentMove{fill:var(--vscode-diffEditor-moveActive-border)}.monaco-diff-editor .moved-blocks-lines .arrow-rectangle{fill:var(--vscode-editor-background)}.monaco-diff-editor .moved-blocks-lines{position:absolute;pointer-events:none}.monaco-diff-editor .moved-blocks-lines path{fill:none;stroke:var(--vscode-diffEditor-move-border);stroke-width:2}.monaco-editor .char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-diffEditor-removedTextBackground) 3px}.monaco-editor .char-insert.diff-range-empty{border-left:solid var(--vscode-diffEditor-insertedTextBackground) 3px}.monaco-editor .fold-unchanged{cursor:pointer}.monaco-diff-editor .diff-moved-code-block{display:flex;justify-content:flex-end;margin-top:-4px}.monaco-diff-editor .diff-moved-code-block .action-bar .action-label.codicon{width:12px;height:12px;font-size:12px}.monaco-diff-editor .diffOverview{z-index:9}.monaco-diff-editor .diffOverview .diffViewport{z-index:10}.monaco-diff-editor.vs .diffOverview{background:#00000008}.monaco-diff-editor.vs-dark .diffOverview{background:#ffffff03}.monaco-scrollable-element.modified-in-monaco-diff-editor.vs .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.vs-dark .scrollbar{background:#0000}.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-black .scrollbar,.monaco-scrollable-element.modified-in-monaco-diff-editor.hc-light .scrollbar{background:none}.monaco-scrollable-element.modified-in-monaco-diff-editor .slider{z-index:10}.modified-in-monaco-diff-editor .slider.active{background:#ababab66}.modified-in-monaco-diff-editor.hc-black .slider.active,.modified-in-monaco-diff-editor.hc-light .slider.active{background:none}.monaco-editor .insert-sign,.monaco-diff-editor .insert-sign,.monaco-editor .delete-sign,.monaco-diff-editor .delete-sign{font-size:11px!important;opacity:.7!important;display:flex!important;align-items:center}.monaco-editor.hc-black .insert-sign,.monaco-diff-editor.hc-black .insert-sign,.monaco-editor.hc-black .delete-sign,.monaco-diff-editor.hc-black .delete-sign,.monaco-editor.hc-light .insert-sign,.monaco-diff-editor.hc-light .insert-sign,.monaco-editor.hc-light .delete-sign,.monaco-diff-editor.hc-light .delete-sign{opacity:1}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .inline-added-margin-view-zone{text-align:right}.monaco-editor .arrow-revert-change{z-index:10;position:absolute}.monaco-editor .arrow-revert-change:hover{cursor:pointer}.monaco-editor .view-zones .view-lines .view-line span{display:inline-block}.monaco-editor .margin-view-zones .lightbulb-glyph:hover{cursor:pointer}.monaco-editor .char-insert,.monaco-diff-editor .char-insert{background-color:var(--vscode-diffEditor-insertedTextBackground)}.monaco-editor .line-insert,.monaco-diff-editor .line-insert{background-color:var(--vscode-diffEditor-insertedLineBackground, var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .line-insert,.monaco-editor .char-insert{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-insertedTextBorder)}.monaco-editor.hc-black .line-insert,.monaco-editor.hc-light .line-insert,.monaco-editor.hc-black .char-insert,.monaco-editor.hc-light .char-insert{border-style:dashed}.monaco-editor .line-delete,.monaco-editor .char-delete{box-sizing:border-box;border:1px solid var(--vscode-diffEditor-removedTextBorder)}.monaco-editor.hc-black .line-delete,.monaco-editor.hc-light .line-delete,.monaco-editor.hc-black .char-delete,.monaco-editor.hc-light .char-delete{border-style:dashed}.monaco-editor .inline-added-margin-view-zone,.monaco-editor .gutter-insert,.monaco-diff-editor .gutter-insert{background-color:var(--vscode-diffEditorGutter-insertedLineBackground, var(--vscode-diffEditor-insertedLineBackground), var(--vscode-diffEditor-insertedTextBackground))}.monaco-editor .char-delete,.monaco-diff-editor .char-delete,.monaco-editor .inline-deleted-text{background-color:var(--vscode-diffEditor-removedTextBackground)}.monaco-editor .inline-deleted-text{text-decoration:line-through}.monaco-editor .line-delete,.monaco-diff-editor .line-delete{background-color:var(--vscode-diffEditor-removedLineBackground, var(--vscode-diffEditor-removedTextBackground))}.monaco-editor .inline-deleted-margin-view-zone,.monaco-editor .gutter-delete,.monaco-diff-editor .gutter-delete{background-color:var(--vscode-diffEditorGutter-removedLineBackground, var(--vscode-diffEditor-removedLineBackground), var(--vscode-diffEditor-removedTextBackground))}.monaco-diff-editor.side-by-side .editor.modified{box-shadow:-6px 0 5px -5px var(--vscode-scrollbar-shadow);border-left:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor.side-by-side .editor.original{box-shadow:6px 0 5px -5px var(--vscode-scrollbar-shadow);border-right:1px solid var(--vscode-diffEditor-border)}.monaco-diff-editor .diffViewport{background:var(--vscode-scrollbarSlider-background)}.monaco-diff-editor .diffViewport:hover{background:var(--vscode-scrollbarSlider-hoverBackground)}.monaco-diff-editor .diffViewport:active{background:var(--vscode-scrollbarSlider-activeBackground)}.monaco-editor .diagonal-fill{background-image:linear-gradient(-45deg,var(--vscode-diffEditor-diagonalFill) 12.5%,#0000 12.5%,#0000 50%,var(--vscode-diffEditor-diagonalFill) 50%,var(--vscode-diffEditor-diagonalFill) 62.5%,#0000 62.5%,#0000 100%);background-size:8px 8px}.monaco-diff-editor .gutter{position:relative;overflow:hidden;flex-shrink:0;flex-grow:0}.monaco-diff-editor .gutter>div{position:absolute}.monaco-diff-editor .gutter .gutterItem{opacity:0;transition:opacity .7s}.monaco-diff-editor .gutter .gutterItem.showAlways{opacity:1;transition:none}.monaco-diff-editor .gutter .gutterItem.noTransition{transition:none}.monaco-diff-editor .gutter:hover .gutterItem{opacity:1;transition:opacity .1s ease-in-out}.monaco-diff-editor .gutter .gutterItem .background{position:absolute;height:100%;left:50%;width:1px;border-left:2px var(--vscode-menu-separatorBackground) solid}.monaco-diff-editor .gutter .gutterItem .buttons{position:absolute;width:100%;display:flex;justify-content:center;align-items:center}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar{height:fit-content}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar{line-height:1}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container{width:fit-content;border-radius:4px;background:var(--vscode-editorGutter-itemBackground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item:hover{background:var(--vscode-toolbar-hoverBackground)}.monaco-diff-editor .gutter .gutterItem .buttons .monaco-toolbar .monaco-action-bar .actions-container .action-item .action-label{color:var(--vscode-editorGutter-itemGlyphForeground);padding:1px 2px}.monaco-diff-editor .diff-hidden-lines-compact{display:flex;height:11px}.monaco-diff-editor .diff-hidden-lines-compact .line-left,.monaco-diff-editor .diff-hidden-lines-compact .line-right{height:1px;border-top:1px solid;border-color:var(--vscode-editorCodeLens-foreground);opacity:.5;margin:auto;width:100%}.monaco-diff-editor .diff-hidden-lines-compact .line-left{width:20px}.monaco-diff-editor .diff-hidden-lines-compact .text{color:var(--vscode-editorCodeLens-foreground);text-wrap:nowrap;font-size:11px;line-height:11px;margin:0 4px}.monaco-editor .line-delete-selectable{user-select:text!important;-webkit-user-select:text!important;z-index:1!important}.line-delete-selectable .view-line{user-select:text!important;-webkit-user-select:text!important}.monaco-editor .selection-anchor{background-color:#007acc;width:2px!important}.monaco-editor .bracket-match{box-sizing:border-box;background-color:var(--vscode-editorBracketMatch-background);border:1px solid var(--vscode-editorBracketMatch-border)}.inline-editor-progress-decoration{display:inline-block;width:1em;height:1em}.inline-progress-widget{display:flex!important;justify-content:center;align-items:center}.inline-progress-widget .icon{font-size:80%!important}.inline-progress-widget:hover .icon{font-size:90%!important;animation:none}.inline-progress-widget:hover .icon:before{content:var(--vscode-icon-x-content);font-family:var(--vscode-icon-x-font-family)}.monaco-editor .monaco-editor-overlaymessage{padding-bottom:8px;z-index:10000}.monaco-editor .monaco-editor-overlaymessage.below{padding-bottom:0;padding-top:8px;z-index:10000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.monaco-editor .monaco-editor-overlaymessage.fadeIn{animation:fadeIn .15s ease-out}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.monaco-editor .monaco-editor-overlaymessage.fadeOut{animation:fadeOut .1s ease-out}.monaco-editor .monaco-editor-overlaymessage .message{padding:2px 4px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-inputValidation-infoBorder);border-radius:3px}.monaco-editor .monaco-editor-overlaymessage .message p{margin-block:0px}.monaco-editor .monaco-editor-overlaymessage .message a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-editor-overlaymessage .message a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor.hc-black .monaco-editor-overlaymessage .message,.monaco-editor.hc-light .monaco-editor-overlaymessage .message{border-width:2px}.monaco-editor .monaco-editor-overlaymessage .anchor{width:0!important;height:0!important;border-color:transparent;border-style:solid;z-index:1000;border-width:8px;position:absolute;left:2px}.monaco-editor .monaco-editor-overlaymessage .anchor.top{border-bottom-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage .anchor.below{border-top-color:var(--vscode-inputValidation-infoBorder)}.monaco-editor .monaco-editor-overlaymessage:not(.below) .anchor.top,.monaco-editor .monaco-editor-overlaymessage.below .anchor.below{display:none}.monaco-editor .monaco-editor-overlaymessage.below .anchor.top{display:inherit;top:-8px}.monaco-text-button{box-sizing:border-box;display:flex;width:100%;padding:4px;border-radius:2px;text-align:center;cursor:pointer;justify-content:center;align-items:center;border:1px solid var(--vscode-button-border, transparent);line-height:18px}.monaco-text-button:focus{outline-offset:2px!important}.monaco-text-button:hover{text-decoration:none!important}.monaco-button.disabled:focus,.monaco-button.disabled{opacity:.4!important;cursor:default}.monaco-text-button .codicon{margin:0 .2em;color:inherit!important}.monaco-text-button.monaco-text-button-with-short-label{flex-direction:row;flex-wrap:wrap;padding:0 4px;overflow:hidden;height:28px}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label{flex-basis:100%}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{flex-grow:1;width:0;overflow:hidden}.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label,.monaco-text-button.monaco-text-button-with-short-label>.monaco-button-label-short{display:flex;justify-content:center;align-items:center;font-weight:400;font-style:inherit;padding:4px 0}.monaco-button-dropdown{display:flex;cursor:pointer}.monaco-button-dropdown.disabled{cursor:default}.monaco-button-dropdown>.monaco-button:focus{outline-offset:-1px!important}.monaco-button-dropdown.disabled>.monaco-button.disabled,.monaco-button-dropdown.disabled>.monaco-button.disabled:focus,.monaco-button-dropdown.disabled>.monaco-button-dropdown-separator{opacity:.4!important}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-right-width:0!important}.monaco-button-dropdown .monaco-button-dropdown-separator{padding:4px 0;cursor:default}.monaco-button-dropdown .monaco-button-dropdown-separator>div{height:100%;width:1px}.monaco-button-dropdown>.monaco-button.monaco-dropdown-button{border:1px solid var(--vscode-button-border, transparent);border-left-width:0!important;border-radius:0 2px 2px 0;display:flex;align-items:center}.monaco-button-dropdown>.monaco-button.monaco-text-button{border-radius:2px 0 0 2px}.monaco-description-button{display:flex;flex-direction:column;align-items:center;margin:4px 5px}.monaco-description-button .monaco-button-description{font-style:italic;font-size:11px;padding:4px 20px}.monaco-description-button .monaco-button-label,.monaco-description-button .monaco-button-description{display:flex;justify-content:center;align-items:center}.monaco-description-button .monaco-button-label>.codicon,.monaco-description-button .monaco-button-description>.codicon{margin:0 .2em;color:inherit!important}.monaco-button.default-colors,.monaco-button-dropdown.default-colors>.monaco-button{color:var(--vscode-button-foreground);background-color:var(--vscode-button-background)}.monaco-button.default-colors:hover,.monaco-button-dropdown.default-colors>.monaco-button:hover{background-color:var(--vscode-button-hoverBackground)}.monaco-button.default-colors.secondary,.monaco-button-dropdown.default-colors>.monaco-button.secondary{color:var(--vscode-button-secondaryForeground);background-color:var(--vscode-button-secondaryBackground)}.monaco-button.default-colors.secondary:hover,.monaco-button-dropdown.default-colors>.monaco-button.secondary:hover{background-color:var(--vscode-button-secondaryHoverBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator{background-color:var(--vscode-button-background);border-top:1px solid var(--vscode-button-border);border-bottom:1px solid var(--vscode-button-border)}.monaco-button-dropdown.default-colors .monaco-button.secondary+.monaco-button-dropdown-separator{background-color:var(--vscode-button-secondaryBackground)}.monaco-button-dropdown.default-colors .monaco-button-dropdown-separator>div{background-color:var(--vscode-button-separator)}.action-widget{font-size:13px;min-width:100px;max-width:80vw;z-index:40;display:block;width:100%;border:1px solid var(--vscode-menu-border)!important;border-radius:5px;background-color:var(--vscode-menu-background);color:var(--vscode-menu-foreground);padding:4px;box-shadow:0 2px 8px var(--vscode-widget-shadow)}.context-view-block{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:-1}.context-view-pointerBlock{position:fixed;cursor:initial;left:0;top:0;width:100%;height:100%;z-index:2}.action-widget .monaco-list{user-select:none;-webkit-user-select:none;border:none!important;border-width:0!important}.action-widget .monaco-list:focus:before{outline:0!important}.action-widget .monaco-list .monaco-scrollable-element{overflow:visible}.action-widget .monaco-list .monaco-list-row{padding:0 4px;white-space:nowrap;cursor:pointer;touch-action:none;width:100%;border-radius:3px}.action-widget .monaco-list .monaco-list-row.action.focused:not(.option-disabled){background-color:var(--vscode-list-activeSelectionBackground)!important;color:var(--vscode-list-activeSelectionForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.action-widget .monaco-list-row.group-header{color:var(--vscode-descriptionForeground)!important;font-weight:600;font-size:13px}.action-widget .monaco-list-row.group-header:not(:first-of-type){margin-top:2px}.action-widget .monaco-scrollable-element .monaco-list-rows .monaco-list-row.separator{border-top:1px solid var(--vscode-editorHoverWidget-border);color:var(--vscode-descriptionForeground);font-size:12px;padding:0;margin:4px 0 0;cursor:default;-webkit-user-select:none;user-select:none;border-radius:0}.action-widget .monaco-scrollable-element .monaco-list-rows .monaco-list-row.separator.focused{outline:0 solid;background-color:transparent;border-radius:0}.action-widget .monaco-list-row.separator:first-of-type{border-top:none;margin-top:0}.action-widget .monaco-list .group-header,.action-widget .monaco-list .option-disabled,.action-widget .monaco-list .option-disabled:before,.action-widget .monaco-list .option-disabled .focused,.action-widget .monaco-list .option-disabled .focused:before{cursor:default!important;-webkit-touch-callout:none;-webkit-user-select:none;user-select:none;background-color:transparent!important;outline:0 solid!important}.action-widget .monaco-list-row.action{display:flex;gap:4px;align-items:center}.action-widget .monaco-list-row.action.option-disabled,.action-widget .monaco-list:focus .monaco-list-row.focused.action.option-disabled,.action-widget .monaco-list-row.action.option-disabled .codicon,.action-widget .monaco-list:not(.drop-target):not(.dragging) .monaco-list-row:hover:not(.selected):not(.focused).option-disabled{color:var(--vscode-disabledForeground)}.action-widget .monaco-list-row.action:not(.option-disabled) .codicon{color:inherit}.action-widget .monaco-list-row.action .title{flex:1;overflow:hidden;text-overflow:ellipsis}.action-widget .monaco-list-row.action .monaco-keybinding>.monaco-keybinding-key{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow)}.action-widget .action-widget-action-bar{background-color:var(--vscode-menu-background);border-top:1px solid var(--vscode-menu-border);margin-top:2px}.action-widget .action-widget-action-bar:before{display:block;content:"";width:100%}.action-widget .action-widget-action-bar .actions-container{padding:4px 8px 2px 24px}.action-widget-action-bar .action-label{color:var(--vscode-textLink-activeForeground);font-size:13px;line-height:22px;padding:0;pointer-events:all}.action-widget-action-bar .action-item{margin-right:16px;pointer-events:none}.action-widget-action-bar .action-label:hover{background-color:transparent!important}.monaco-action-bar .actions-container.highlight-toggled .action-label.checked{background:var(--vscode-actionBar-toggledBackground)!important}.action-widget .monaco-list .monaco-list-row .description{opacity:.7;margin-left:.5em}.monaco-keybinding{display:flex;align-items:center;line-height:10px}.monaco-keybinding>.monaco-keybinding-key{display:inline-block;border-style:solid;border-width:1px;border-radius:3px;vertical-align:middle;font-size:11px;padding:3px 5px;margin:0 2px}.monaco-keybinding>.monaco-keybinding-key:first-child{margin-left:0}.monaco-keybinding>.monaco-keybinding-key:last-child{margin-right:0}.monaco-keybinding>.monaco-keybinding-key-separator{display:inline-block}.monaco-keybinding>.monaco-keybinding-key-chord-separator{width:6px}.post-edit-widget{box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:1px solid var(--vscode-widget-border, transparent);border-radius:4px;color:var(--vscode-button-foreground);background-color:var(--vscode-button-background);overflow:hidden}.post-edit-widget .monaco-button{padding:2px;border:none;border-radius:0}.post-edit-widget .monaco-button:hover{background-color:var(--vscode-button-hoverBackground)!important}.post-edit-widget .monaco-button .codicon{margin:0}@font-face{font-family:codicon;font-display:block;src:url(/assets/codicon-ngg6Pgfi.ttf) format("truetype")}.codicon[class*=codicon-]{font: 16px/1 codicon;display:inline-block;text-decoration:none;text-rendering:auto;text-align:center;text-transform:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;user-select:none;-webkit-user-select:none}.codicon-wrench-subaction{opacity:.5}@keyframes codicon-spin{to{transform:rotate(360deg)}}.codicon-sync.codicon-modifier-spin,.codicon-loading.codicon-modifier-spin,.codicon-gear.codicon-modifier-spin,.codicon-notebook-state-executing.codicon-modifier-spin{animation:codicon-spin 1.5s steps(30) infinite}.codicon-modifier-disabled{opacity:.4}.codicon-loading,.codicon-tree-item-loading:before{animation-duration:1s!important;animation-timing-function:cubic-bezier(.53,.21,.29,.67)!important}.monaco-editor .codicon.codicon-symbol-array,.monaco-workbench .codicon.codicon-symbol-array{color:var(--vscode-symbolIcon-arrayForeground)}.monaco-editor .codicon.codicon-symbol-boolean,.monaco-workbench .codicon.codicon-symbol-boolean{color:var(--vscode-symbolIcon-booleanForeground)}.monaco-editor .codicon.codicon-symbol-class,.monaco-workbench .codicon.codicon-symbol-class{color:var(--vscode-symbolIcon-classForeground)}.monaco-editor .codicon.codicon-symbol-method,.monaco-workbench .codicon.codicon-symbol-method{color:var(--vscode-symbolIcon-methodForeground)}.monaco-editor .codicon.codicon-symbol-color,.monaco-workbench .codicon.codicon-symbol-color{color:var(--vscode-symbolIcon-colorForeground)}.monaco-editor .codicon.codicon-symbol-constant,.monaco-workbench .codicon.codicon-symbol-constant{color:var(--vscode-symbolIcon-constantForeground)}.monaco-editor .codicon.codicon-symbol-constructor,.monaco-workbench .codicon.codicon-symbol-constructor{color:var(--vscode-symbolIcon-constructorForeground)}.monaco-editor .codicon.codicon-symbol-value,.monaco-workbench .codicon.codicon-symbol-value,.monaco-editor .codicon.codicon-symbol-enum,.monaco-workbench .codicon.codicon-symbol-enum{color:var(--vscode-symbolIcon-enumeratorForeground)}.monaco-editor .codicon.codicon-symbol-enum-member,.monaco-workbench .codicon.codicon-symbol-enum-member{color:var(--vscode-symbolIcon-enumeratorMemberForeground)}.monaco-editor .codicon.codicon-symbol-event,.monaco-workbench .codicon.codicon-symbol-event{color:var(--vscode-symbolIcon-eventForeground)}.monaco-editor .codicon.codicon-symbol-field,.monaco-workbench .codicon.codicon-symbol-field{color:var(--vscode-symbolIcon-fieldForeground)}.monaco-editor .codicon.codicon-symbol-file,.monaco-workbench .codicon.codicon-symbol-file{color:var(--vscode-symbolIcon-fileForeground)}.monaco-editor .codicon.codicon-symbol-folder,.monaco-workbench .codicon.codicon-symbol-folder{color:var(--vscode-symbolIcon-folderForeground)}.monaco-editor .codicon.codicon-symbol-function,.monaco-workbench .codicon.codicon-symbol-function{color:var(--vscode-symbolIcon-functionForeground)}.monaco-editor .codicon.codicon-symbol-interface,.monaco-workbench .codicon.codicon-symbol-interface{color:var(--vscode-symbolIcon-interfaceForeground)}.monaco-editor .codicon.codicon-symbol-key,.monaco-workbench .codicon.codicon-symbol-key{color:var(--vscode-symbolIcon-keyForeground)}.monaco-editor .codicon.codicon-symbol-keyword,.monaco-workbench .codicon.codicon-symbol-keyword{color:var(--vscode-symbolIcon-keywordForeground)}.monaco-editor .codicon.codicon-symbol-module,.monaco-workbench .codicon.codicon-symbol-module{color:var(--vscode-symbolIcon-moduleForeground)}.monaco-editor .codicon.codicon-symbol-namespace,.monaco-workbench .codicon.codicon-symbol-namespace{color:var(--vscode-symbolIcon-namespaceForeground)}.monaco-editor .codicon.codicon-symbol-null,.monaco-workbench .codicon.codicon-symbol-null{color:var(--vscode-symbolIcon-nullForeground)}.monaco-editor .codicon.codicon-symbol-number,.monaco-workbench .codicon.codicon-symbol-number{color:var(--vscode-symbolIcon-numberForeground)}.monaco-editor .codicon.codicon-symbol-object,.monaco-workbench .codicon.codicon-symbol-object{color:var(--vscode-symbolIcon-objectForeground)}.monaco-editor .codicon.codicon-symbol-operator,.monaco-workbench .codicon.codicon-symbol-operator{color:var(--vscode-symbolIcon-operatorForeground)}.monaco-editor .codicon.codicon-symbol-package,.monaco-workbench .codicon.codicon-symbol-package{color:var(--vscode-symbolIcon-packageForeground)}.monaco-editor .codicon.codicon-symbol-property,.monaco-workbench .codicon.codicon-symbol-property{color:var(--vscode-symbolIcon-propertyForeground)}.monaco-editor .codicon.codicon-symbol-reference,.monaco-workbench .codicon.codicon-symbol-reference{color:var(--vscode-symbolIcon-referenceForeground)}.monaco-editor .codicon.codicon-symbol-snippet,.monaco-workbench .codicon.codicon-symbol-snippet{color:var(--vscode-symbolIcon-snippetForeground)}.monaco-editor .codicon.codicon-symbol-string,.monaco-workbench .codicon.codicon-symbol-string{color:var(--vscode-symbolIcon-stringForeground)}.monaco-editor .codicon.codicon-symbol-struct,.monaco-workbench .codicon.codicon-symbol-struct{color:var(--vscode-symbolIcon-structForeground)}.monaco-editor .codicon.codicon-symbol-text,.monaco-workbench .codicon.codicon-symbol-text{color:var(--vscode-symbolIcon-textForeground)}.monaco-editor .codicon.codicon-symbol-type-parameter,.monaco-workbench .codicon.codicon-symbol-type-parameter{color:var(--vscode-symbolIcon-typeParameterForeground)}.monaco-editor .codicon.codicon-symbol-unit,.monaco-workbench .codicon.codicon-symbol-unit{color:var(--vscode-symbolIcon-unitForeground)}.monaco-editor .codicon.codicon-symbol-variable,.monaco-workbench .codicon.codicon-symbol-variable{color:var(--vscode-symbolIcon-variableForeground)}.monaco-editor .lightBulbWidget{display:flex;align-items:center;justify-content:center}.monaco-editor .lightBulbWidget:hover{cursor:pointer}.monaco-editor .lightBulbWidget.codicon-light-bulb,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .lightBulbWidget.codicon-lightbulb-autofix,.monaco-editor .lightBulbWidget.codicon-lightbulb-sparkle-autofix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .lightBulbWidget.codicon-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .lightBulbWidget:before{position:relative;z-index:2}.monaco-editor .lightBulbWidget:after{position:absolute;top:0;left:0;content:"";display:block;width:100%;height:100%;opacity:.3;z-index:1}.monaco-editor .glyph-margin-widgets .cgmr[class*=codicon-gutter-lightbulb]{display:block;cursor:pointer}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle{color:var(--vscode-editorLightBulb-foreground)}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-auto-fix,.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-aifix-auto-fix{color:var(--vscode-editorLightBulbAutoFix-foreground, var(--vscode-editorLightBulb-foreground))}.monaco-editor .glyph-margin-widgets .cgmr.codicon-gutter-lightbulb-sparkle-filled{color:var(--vscode-editorLightBulbAi-foreground, var(--vscode-icon-foreground))}.monaco-editor .codelens-decoration{overflow:hidden;display:inline-flex!important;align-items:center;text-overflow:ellipsis;white-space:nowrap;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize);padding-right:calc(var(--vscode-editorCodeLens-fontSize)*.5);font-feature-settings:var(--vscode-editorCodeLens-fontFeatureSettings);font-family:var(--vscode-editorCodeLens-fontFamily),var(--vscode-editorCodeLens-fontFamilyDefault)}.monaco-editor .codelens-decoration>span,.monaco-editor .codelens-decoration>a{user-select:none;-webkit-user-select:none;white-space:nowrap;vertical-align:sub;display:inline-flex;align-items:center}.monaco-editor .codelens-decoration>a{text-decoration:none}.monaco-editor .codelens-decoration>a:hover{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration>a:hover .codicon{color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .codelens-decoration .codicon[class*=codicon-]{vertical-align:middle;color:currentColor!important;color:var(--vscode-editorCodeLens-foreground);line-height:var(--vscode-editorCodeLens-lineHeight);font-size:var(--vscode-editorCodeLens-fontSize)}.monaco-editor .codelens-decoration>a:hover .codicon:before{cursor:pointer}@keyframes fadein{0%{opacity:0}to{opacity:1}}.monaco-editor .codelens-decoration.fadein{animation:fadein .1s linear}.monaco-editor .inlineSuggestionsHints{padding:4px}.monaco-editor .inlineSuggestionsHints .warningMessage p{margin:0}.monaco-editor .inlineSuggestionsHints.withBorder{z-index:39;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .inlineSuggestionsHints a,.monaco-editor .inlineSuggestionsHints a:hover{color:var(--vscode-foreground)!important}.monaco-editor .inlineSuggestionsHints .keybinding{display:flex;margin-left:4px;opacity:.6}.monaco-editor .inlineSuggestionsHints .keybinding .monaco-keybinding-key{font-size:8px;padding:2px 3px}.monaco-editor .inlineSuggestionsHints .availableSuggestionCount a{display:flex;min-width:19px;justify-content:center}.monaco-editor .inlineSuggestionStatusBarItemLabel{margin-right:2px}.monaco-hover{cursor:default;position:absolute;overflow:hidden;user-select:text;-webkit-user-select:text;box-sizing:border-box;line-height:1.5em;white-space:var(--vscode-hover-whiteSpace, normal)}.monaco-hover.fade-in{animation:fadein .1s linear}.monaco-hover.hidden{display:none}.monaco-hover a:hover:not(.disabled){cursor:pointer}.monaco-hover .hover-contents:not(.html-hover-contents){padding:4px 8px}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents){max-width:var(--vscode-hover-maxWidth, 500px);word-wrap:break-word}.monaco-hover .markdown-hover>.hover-contents:not(.code-hover-contents) hr{min-width:100%}.monaco-hover p,.monaco-hover .code,.monaco-hover ul,.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{margin:8px 0}.monaco-hover h1,.monaco-hover h2,.monaco-hover h3,.monaco-hover h4,.monaco-hover h5,.monaco-hover h6{line-height:1.1}.monaco-hover code{font-family:var(--monaco-monospace-font)}.monaco-hover hr{box-sizing:border-box;border-left:0px;border-right:0px;margin:4px -8px -4px;height:1px}.monaco-hover p:first-child,.monaco-hover .code:first-child,.monaco-hover ul:first-child{margin-top:0}.monaco-hover p:last-child,.monaco-hover .code:last-child,.monaco-hover ul:last-child{margin-bottom:0}.monaco-hover ul,.monaco-hover ol{padding-left:20px}.monaco-hover li>p{margin-bottom:0}.monaco-hover li>ul{margin-top:0}.monaco-hover code{border-radius:3px;padding:0 .4em}.monaco-hover .monaco-tokenized-source{white-space:var(--vscode-hover-sourceWhiteSpace, pre-wrap)}.monaco-hover .hover-row.status-bar{font-size:12px;line-height:22px}.monaco-hover .hover-row.status-bar .info{font-style:italic;padding:0 8px}.monaco-hover .hover-row.status-bar .actions{display:flex;padding:0 8px;width:100%}.monaco-hover .hover-row.status-bar .actions .action-container{margin-right:16px;cursor:pointer;overflow:hidden;text-wrap:nowrap;text-overflow:ellipsis}.monaco-hover .hover-row.status-bar .actions .action-container .action .icon{padding-right:4px;vertical-align:middle}.monaco-hover .hover-row.status-bar .actions .action-container a{color:var(--vscode-textLink-foreground);text-decoration:var(--text-link-decoration)}.monaco-hover .hover-row.status-bar .actions .action-container a .icon.codicon{color:var(--vscode-textLink-foreground)}.monaco-hover .markdown-hover .hover-contents .codicon{color:inherit;font-size:inherit;vertical-align:middle}.monaco-hover .hover-contents a.code-link:hover,.monaco-hover .hover-contents a.code-link{color:inherit}.monaco-hover .hover-contents a.code-link:before{content:"("}.monaco-hover .hover-contents a.code-link:after{content:")"}.monaco-hover .hover-contents a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-foreground)}.monaco-hover .hover-contents a.code-link>span:hover{color:var(--vscode-textLink-activeForeground)}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) p:last-child [style*=background-color]{margin-bottom:4px;display:inline-block}.monaco-hover .markdown-hover .hover-contents:not(.code-hover-contents):not(.html-hover-contents) span.codicon{margin-bottom:2px}.monaco-hover-content .action-container a{-webkit-user-select:none;user-select:none}.monaco-hover-content .action-container.disabled{pointer-events:none;opacity:.4;cursor:default}.monaco-hover .action-container,.monaco-hover .action,.monaco-hover button,.monaco-hover .monaco-button,.monaco-hover .monaco-text-button,.monaco-hover [role=button]{-webkit-user-select:none;user-select:none}.monaco-custom-toggle{margin-left:2px;float:left;cursor:pointer;overflow:hidden;width:20px;height:20px;border-radius:3px;border:1px solid transparent;padding:1px;box-sizing:border-box;user-select:none;-webkit-user-select:none}.monaco-custom-toggle:hover{background-color:var(--vscode-inputOption-hoverBackground)}.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{border:1px dashed var(--vscode-focusBorder)}.hc-black .monaco-custom-toggle,.hc-light .monaco-custom-toggle,.hc-black .monaco-custom-toggle:hover,.hc-light .monaco-custom-toggle:hover{background:none}.monaco-custom-toggle.monaco-checkbox{height:18px;width:18px;border:1px solid transparent;border-radius:3px;margin-right:9px;margin-left:0;padding:0;opacity:1;background-size:16px!important}.monaco-action-bar .checkbox-action-item{display:flex;align-items:center;border-radius:2px;padding-right:2px}.monaco-action-bar .checkbox-action-item:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-action-bar .checkbox-action-item>.monaco-custom-toggle.monaco-checkbox{margin-right:4px}.monaco-action-bar .checkbox-action-item>.checkbox-label{font-size:12px}.monaco-editor .find-widget{position:absolute;z-index:35;height:33px;overflow:hidden;line-height:19px;transition:transform .2s linear;padding:0 4px;box-sizing:border-box;transform:translateY(calc(-100% - 10px));box-shadow:0 0 8px 2px var(--vscode-widget-shadow);color:var(--vscode-editorWidget-foreground);border-left:1px solid var(--vscode-widget-border);border-right:1px solid var(--vscode-widget-border);border-bottom:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px;background-color:var(--vscode-editorWidget-background)}.monaco-reduce-motion .monaco-editor .find-widget{transition:transform 0ms linear}.monaco-editor .find-widget textarea{margin:0}.monaco-editor .find-widget.hiddenEditor{display:none}.monaco-editor .find-widget.replaceToggled>.replace-part{display:flex}.monaco-editor .find-widget.visible{transform:translateY(0)}.monaco-editor .find-widget .monaco-inputbox.synthetic-focus{outline:1px solid -webkit-focus-ring-color;outline-offset:-1px;outline-color:var(--vscode-focusBorder)}.monaco-editor .find-widget .monaco-inputbox .input{background-color:transparent;min-height:0}.monaco-editor .find-widget .monaco-findInput .input{font-size:13px}.monaco-editor .find-widget>.find-part,.monaco-editor .find-widget>.replace-part{margin:3px 25px 0 17px;font-size:12px;display:flex}.monaco-editor .find-widget>.find-part .monaco-inputbox,.monaco-editor .find-widget>.replace-part .monaco-inputbox{min-height:25px}.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-right:22px}.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.find-part .monaco-inputbox>.ibwrapper>.mirror,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.input,.monaco-editor .find-widget>.replace-part .monaco-inputbox>.ibwrapper>.mirror{padding-top:2px;padding-bottom:2px}.monaco-editor .find-widget>.find-part .find-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget>.replace-part .replace-actions{height:25px;display:flex;align-items:center}.monaco-editor .find-widget .monaco-findInput{vertical-align:middle;display:flex;flex:1}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element{width:100%}.monaco-editor .find-widget .monaco-findInput .monaco-scrollable-element .scrollbar.vertical{opacity:0}.monaco-editor .find-widget .matchesCount{display:flex;flex:initial;margin:0 0 0 3px;padding:2px 0 0 2px;height:25px;vertical-align:middle;box-sizing:border-box;text-align:center;line-height:23px}.monaco-editor .find-widget .button{width:16px;height:16px;padding:3px;border-radius:5px;flex:initial;margin-left:3px;background-position:center center;background-repeat:no-repeat;cursor:pointer;display:flex;align-items:center;justify-content:center}.monaco-editor .find-widget .codicon-find-selection{width:22px;height:22px;padding:3px;border-radius:5px}.monaco-editor .find-widget .button.left{margin-left:0;margin-right:3px}.monaco-editor .find-widget .button.wide{width:auto;padding:1px 6px;top:-1px}.monaco-editor .find-widget .button.toggle{position:absolute;top:0;left:3px;width:18px;height:100%;border-radius:0;box-sizing:border-box}.monaco-editor .find-widget .button.toggle.disabled{display:none}.monaco-editor .find-widget .disabled{color:var(--vscode-disabledForeground);cursor:default}.monaco-editor .find-widget>.replace-part{display:none}.monaco-editor .find-widget>.replace-part>.monaco-findInput{position:relative;display:flex;vertical-align:middle;flex:auto;flex-grow:0;flex-shrink:0}.monaco-editor .find-widget>.replace-part>.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.monaco-editor .find-widget.reduced-find-widget .matchesCount{display:none}.monaco-editor .find-widget.narrow-find-widget{max-width:257px!important}.monaco-editor .find-widget.collapsed-find-widget{max-width:170px!important}.monaco-editor .find-widget.collapsed-find-widget .button.previous,.monaco-editor .find-widget.collapsed-find-widget .button.next,.monaco-editor .find-widget.collapsed-find-widget .button.replace,.monaco-editor .find-widget.collapsed-find-widget .button.replace-all,.monaco-editor .find-widget.collapsed-find-widget>.find-part .monaco-findInput .controls{display:none}.monaco-editor .find-widget.no-results .matchesCount{color:var(--vscode-errorForeground)}.monaco-editor .findMatch{animation-duration:0;animation-name:inherit!important;background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor .currentFindMatch{background-color:var(--vscode-editor-findMatchBackground);border:2px solid var(--vscode-editor-findMatchBorder);padding:1px;box-sizing:border-box}.monaco-editor .findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor .find-widget .monaco-sash{left:0!important;background-color:var(--vscode-editorWidget-resizeBorder, var(--vscode-editorWidget-border))}.monaco-editor.hc-black .find-widget .button:before{position:relative;top:1px;left:2px}.monaco-editor .find-widget .button:not(.disabled):hover,.monaco-editor .find-widget .codicon-find-selection:hover{background-color:var(--vscode-toolbar-hoverBackground)!important}.monaco-editor.findMatch{background-color:var(--vscode-editor-findMatchHighlightBackground)}.monaco-editor.currentFindMatch{background-color:var(--vscode-editor-findMatchBackground)}.monaco-editor.findScope{background-color:var(--vscode-editor-findRangeHighlightBackground)}.monaco-editor.findMatch{background-color:var(--vscode-editorWidget-background)}.monaco-editor .find-widget>.button.codicon-widget-close{position:absolute;top:5px;right:4px}.monaco-inputbox{position:relative;display:block;padding:0;box-sizing:border-box;border-radius:2px;font-size:inherit}.monaco-inputbox>.ibwrapper>.input,.monaco-inputbox>.ibwrapper>.mirror{padding:4px 6px}.monaco-inputbox>.ibwrapper{position:relative;width:100%}.monaco-inputbox>.ibwrapper>.input{display:inline-block;box-sizing:border-box;width:100%;height:100%;line-height:inherit;border:none;font-family:inherit;font-size:inherit;resize:none;color:inherit}.monaco-inputbox>.ibwrapper>input{text-overflow:ellipsis}.monaco-inputbox>.ibwrapper>textarea.input{display:block;scrollbar-width:none;outline:none}.monaco-inputbox>.ibwrapper>textarea.input::-webkit-scrollbar{display:none}.monaco-inputbox>.ibwrapper>textarea.input.empty{white-space:nowrap}.monaco-inputbox>.ibwrapper>.mirror{position:absolute;display:inline-block;width:100%;top:0;left:0;box-sizing:border-box;white-space:pre-wrap;visibility:hidden;word-wrap:break-word}.monaco-inputbox-container{text-align:right}.monaco-inputbox-container .monaco-inputbox-message{display:inline-block;overflow:hidden;text-align:left;width:100%;box-sizing:border-box;padding:.4em;font-size:12px;line-height:17px;margin-top:-1px;word-wrap:break-word}.monaco-inputbox .monaco-action-bar{position:absolute;right:2px;top:4px}.monaco-inputbox .monaco-action-bar .action-item{margin-left:2px}.monaco-inputbox .monaco-action-bar .action-item .codicon{background-repeat:no-repeat;width:16px;height:16px}.monaco-findInput{position:relative}.monaco-findInput .monaco-inputbox{font-size:13px;width:100%}.monaco-findInput>.controls{position:absolute;top:3px;right:2px}.vs .monaco-findInput.disabled{background-color:#e1e1e1}.vs-dark .monaco-findInput.disabled{background-color:#333}.monaco-findInput.highlight-0 .controls,.hc-light .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-0 .1s linear 0s}.monaco-findInput.highlight-1 .controls,.hc-light .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-1 .1s linear 0s}.hc-black .monaco-findInput.highlight-0 .controls,.vs-dark .monaco-findInput.highlight-0 .controls{animation:monaco-findInput-highlight-dark-0 .1s linear 0s}.hc-black .monaco-findInput.highlight-1 .controls,.vs-dark .monaco-findInput.highlight-1 .controls{animation:monaco-findInput-highlight-dark-1 .1s linear 0s}@keyframes monaco-findInput-highlight-0{0%{background:#fdff00cc}to{background:transparent}}@keyframes monaco-findInput-highlight-1{0%{background:#fdff00cc}99%{background:transparent}}@keyframes monaco-findInput-highlight-dark-0{0%{background:#ffffff70}to{background:transparent}}@keyframes monaco-findInput-highlight-dark-1{0%{background:#ffffff70}99%{background:transparent}}.colorpicker-widget{height:190px;user-select:none;-webkit-user-select:none}.colorpicker-color-decoration,.hc-light .colorpicker-color-decoration{border:solid .1em #000;box-sizing:border-box;margin:.1em .2em 0;width:.8em;height:.8em;line-height:.8em;display:inline-block;cursor:pointer}.hc-black .colorpicker-color-decoration,.vs-dark .colorpicker-color-decoration{border:solid .1em #eee}.colorpicker-header{display:flex;height:24px;position:relative;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-header .picked-color{width:240px;display:flex;align-items:center;justify-content:center;line-height:24px;cursor:pointer;color:#fff;flex:1;white-space:nowrap;overflow:hidden}.colorpicker-header .picked-color .picked-color-presentation{white-space:nowrap;margin-left:5px;margin-right:5px}.colorpicker-header .picked-color .codicon{color:inherit;font-size:14px}.colorpicker-header .picked-color.light{color:#000}.colorpicker-header .original-color{width:74px;z-index:inherit;cursor:pointer}.standalone-colorpicker{color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header.standalone-colorpicker{border-bottom:none}.colorpicker-header .close-button{cursor:pointer;background-color:var(--vscode-editorHoverWidget-background);border-left:1px solid var(--vscode-editorHoverWidget-border)}.colorpicker-header .close-button-inner-div{width:100%;height:100%;text-align:center}.colorpicker-header .close-button-inner-div:hover{background-color:var(--vscode-toolbar-hoverBackground)}.colorpicker-header .close-icon{padding:3px}.colorpicker-body{display:flex;padding:8px;position:relative}.colorpicker-body .saturation-wrap{overflow:hidden;height:150px;position:relative;min-width:220px;flex:1}.colorpicker-body .saturation-box{height:150px;position:absolute}.colorpicker-body .saturation-selection{width:9px;height:9px;margin:-5px 0 0 -5px;border:1px solid rgb(255,255,255);border-radius:100%;box-shadow:0 0 2px #000c;position:absolute}.colorpicker-body .strip{width:25px;height:150px}.colorpicker-body .standalone-strip{width:25px;height:122px}.colorpicker-body .hue-strip{position:relative;margin-left:8px;cursor:grab;background:linear-gradient(to bottom,red,#ff0 17%,#0f0 33%,#0ff,#00f 67%,#f0f 83%,red)}.colorpicker-body .opacity-strip{position:relative;margin-left:8px;cursor:grab;background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAQAAAAECAYAAACp8Z5+AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAAZdEVYdFNvZnR3YXJlAHBhaW50Lm5ldCA0LjAuMTZEaa/1AAAAHUlEQVQYV2PYvXu3JAi7uLiAMaYAjAGTQBPYLQkAa/0Zef3qRswAAAAASUVORK5CYII=);background-size:9px 9px;image-rendering:pixelated}.colorpicker-body .strip.grabbing{cursor:grabbing}.colorpicker-body .slider{position:absolute;top:0;left:-2px;width:calc(100% + 4px);height:4px;box-sizing:border-box;border:1px solid rgba(255,255,255,.71);box-shadow:0 0 1px #000000d9}.colorpicker-body .strip .overlay{height:150px;pointer-events:none}.colorpicker-body .standalone-strip .standalone-overlay{height:122px;pointer-events:none}.standalone-colorpicker-body{display:block;border:1px solid transparent;border-bottom:1px solid var(--vscode-editorHoverWidget-border);overflow:hidden}.colorpicker-body .insert-button{position:absolute;height:20px;width:58px;padding:0;right:8px;bottom:8px;background:var(--vscode-button-background);color:var(--vscode-button-foreground);border-radius:2px;border:none;cursor:pointer}.colorpicker-body .insert-button:hover{background:var(--vscode-button-hoverBackground)}.monaco-editor .peekview-widget .head{box-sizing:border-box;display:flex;justify-content:space-between;flex-wrap:nowrap}.monaco-editor .peekview-widget .head .peekview-title{display:flex;align-items:baseline;font-size:13px;margin-left:20px;min-width:0;text-overflow:ellipsis;overflow:hidden}.monaco-editor .peekview-widget .head .peekview-title.clickable{cursor:pointer}.monaco-editor .peekview-widget .head .peekview-title .dirname:not(:empty){font-size:.9em;margin-left:.5em}.monaco-editor .peekview-widget .head .peekview-title .meta{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.monaco-editor .peekview-widget .head .peekview-title .dirname,.monaco-editor .peekview-widget .head .peekview-title .filename{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .peekview-widget .head .peekview-title .meta:not(:empty):before{content:"-";padding:0 .3em}.monaco-editor .peekview-widget .head .peekview-actions{flex:1;text-align:right;padding-right:2px}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar{display:inline-block}.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar,.monaco-editor .peekview-widget .head .peekview-actions>.monaco-action-bar>.actions-container{height:100%}.monaco-editor .peekview-widget>.body{border-top:1px solid;position:relative}.monaco-editor .peekview-widget .head .peekview-title .codicon{margin-right:4px;align-self:center}.monaco-editor .peekview-widget .monaco-list .monaco-list-row.focused .codicon{color:inherit!important}.monaco-editor .zone-widget{position:absolute;z-index:10}.monaco-editor .zone-widget .zone-widget-container{border-top-style:solid;border-bottom-style:solid;border-top-width:0;border-bottom-width:0;position:relative}.monaco-split-view2{position:relative;width:100%;height:100%}.monaco-split-view2>.sash-container{position:absolute;width:100%;height:100%;pointer-events:none}.monaco-split-view2>.sash-container>.monaco-sash{pointer-events:initial}.monaco-split-view2>.monaco-scrollable-element{width:100%;height:100%}.monaco-split-view2>.monaco-scrollable-element>.split-view-container{width:100%;height:100%;white-space:nowrap;position:relative}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view{white-space:initial;position:absolute}.monaco-split-view2>.monaco-scrollable-element>.split-view-container>.split-view-view:not(.visible){display:none}.monaco-split-view2.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view{width:100%}.monaco-split-view2.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view{height:100%}.monaco-split-view2.separator-border>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{content:" ";position:absolute;top:0;left:0;z-index:5;pointer-events:none;background-color:var(--separator-border)}.monaco-split-view2.separator-border.horizontal>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:100%;width:1px}.monaco-split-view2.separator-border.vertical>.monaco-scrollable-element>.split-view-container>.split-view-view:not(:first-child):before{height:1px;width:100%}.monaco-table{display:flex;flex-direction:column;position:relative;height:100%;width:100%;white-space:nowrap;overflow:hidden}.monaco-table>.monaco-split-view2{border-bottom:1px solid transparent}.monaco-table>.monaco-list{flex:1}.monaco-table-tr{display:flex;height:100%}.monaco-table-th{width:100%;height:100%;font-weight:700;overflow:hidden;text-overflow:ellipsis}.monaco-table-th,.monaco-table-td{box-sizing:border-box;flex-shrink:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{content:"";position:absolute;left:calc(var(--vscode-sash-size) / 2);width:0;border-left:1px solid transparent}.monaco-enable-motion .monaco-table>.monaco-split-view2,.monaco-enable-motion .monaco-table>.monaco-split-view2 .monaco-sash.vertical:before{transition:border-color .2s ease-out}.monaco-tl-row{display:flex;height:100%;align-items:center;position:relative}.monaco-tl-row.disabled{cursor:default}.monaco-tl-indent{height:100%;position:absolute;top:0;left:16px;pointer-events:none}.hide-arrows .monaco-tl-indent{left:12px}.monaco-tl-indent>.indent-guide{display:inline-block;box-sizing:border-box;height:100%;border-left:1px solid transparent;opacity:0}.monaco-enable-motion .monaco-tl-indent>.indent-guide{transition:opacity .1s linear}.monaco-tl-twistie,.monaco-tl-contents{height:100%}.monaco-tl-twistie{font-size:10px;text-align:right;padding-right:6px;flex-shrink:0;width:16px;display:flex!important;align-items:center;justify-content:center;transform:translate(3px)}.monaco-tl-contents{flex:1;overflow:hidden}.monaco-tl-twistie:before{border-radius:20px}.monaco-tl-twistie.collapsed:before{transform:rotate(-90deg)}.monaco-tl-twistie.codicon-tree-item-loading:before{animation:codicon-spin 1.25s steps(30) infinite}.monaco-tree-type-filter{position:absolute;top:0;right:0;display:flex;padding:3px;max-width:200px;z-index:100;margin:0 10px 0 6px;border:1px solid var(--vscode-widget-border);border-bottom-left-radius:4px;border-bottom-right-radius:4px}.monaco-enable-motion .monaco-tree-type-filter{transition:top .3s}.monaco-tree-type-filter.disabled{top:-40px!important}.monaco-tree-type-filter-input{flex:1}.monaco-tree-type-filter-input .monaco-inputbox{height:23px}.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.input,.monaco-tree-type-filter-input .monaco-inputbox>.ibwrapper>.mirror{padding:2px 4px}.monaco-tree-type-filter-input .monaco-findInput>.controls{top:2px}.monaco-tree-type-filter-actionbar{margin-left:4px}.monaco-tree-type-filter-actionbar .monaco-action-bar .action-label{padding:2px}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container{position:absolute;top:0;left:0;width:100%;height:0;z-index:13;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row.monaco-list-row{position:absolute;width:100%;opacity:1!important;overflow:hidden;background-color:var(--vscode-sideBar-background)}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-row:hover{background-color:var(--vscode-list-hoverBackground)!important;cursor:pointer}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty,.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container.empty .monaco-tree-sticky-container-shadow{display:none}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container .monaco-tree-sticky-container-shadow{position:absolute;bottom:-3px;left:0;height:0px;width:100%}.monaco-list .monaco-scrollable-element .monaco-tree-sticky-container[tabindex="0"]:focus{outline:none}.monaco-editor .zone-widget .zone-widget-container.reference-zone-widget{border-top-width:1px;border-bottom-width:1px}.monaco-editor .reference-zone-widget .inline{display:inline-block;vertical-align:top}.monaco-editor .reference-zone-widget .messages{height:100%;width:100%;text-align:center;padding:3em 0}.monaco-editor .reference-zone-widget .ref-tree{line-height:23px;background-color:var(--vscode-peekViewResult-background);color:var(--vscode-peekViewResult-lineForeground)}.monaco-editor .reference-zone-widget .ref-tree .reference{text-overflow:ellipsis;overflow:hidden}.monaco-editor .reference-zone-widget .ref-tree .reference-file{display:inline-flex;width:100%;height:100%;color:var(--vscode-peekViewResult-fileForeground)}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .selected .reference-file{color:inherit!important}.monaco-editor .reference-zone-widget .ref-tree .monaco-list:focus .monaco-list-rows>.monaco-list-row.selected:not(.highlighted){background-color:var(--vscode-peekViewResult-selectionBackground);color:var(--vscode-peekViewResult-selectionForeground)!important}.monaco-editor .reference-zone-widget .ref-tree .reference-file .count{margin-right:12px;margin-left:auto}.monaco-editor .reference-zone-widget .ref-tree .referenceMatch .highlight{color:var(--vscode-peekViewResult-fileForeground)!important;background-color:var(--vscode-peekViewResult-matchHighlightBackground)!important}.monaco-editor .reference-zone-widget .preview .reference-decoration{background-color:var(--vscode-peekViewEditor-matchHighlightBackground);border:2px solid var(--vscode-peekViewEditor-matchHighlightBorder);box-sizing:border-box}.monaco-editor .reference-zone-widget .preview .monaco-editor .monaco-editor-background,.monaco-editor .reference-zone-widget .preview .monaco-editor .inputarea.ime-input{background-color:var(--vscode-peekViewEditor-background)}.monaco-editor .reference-zone-widget .preview .monaco-editor .margin{background-color:var(--vscode-peekViewEditorGutter-background)}.monaco-editor.hc-black .reference-zone-widget .ref-tree .reference-file,.monaco-editor.hc-light .reference-zone-widget .ref-tree .reference-file{font-weight:700}.monaco-editor.hc-black .reference-zone-widget .ref-tree .referenceMatch .highlight,.monaco-editor.hc-light .reference-zone-widget .ref-tree .referenceMatch .highlight{border:1px dotted var(--vscode-contrastActiveBorder, transparent);box-sizing:border-box}.monaco-count-badge{padding:3px 5px;border-radius:11px;font-size:11px;min-width:18px;min-height:18px;line-height:11px;font-weight:400;text-align:center;display:inline-block;box-sizing:border-box}.monaco-count-badge.long{padding:2px 3px;border-radius:2px;min-height:auto;line-height:normal}.monaco-icon-label{display:flex;overflow:hidden;text-overflow:ellipsis}.monaco-icon-label:before{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;line-height:inherit!important;display:inline-block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;vertical-align:top;flex-shrink:0}.monaco-icon-label-iconpath{width:16px;height:22px;margin-right:6px;display:flex}.monaco-icon-label-container.disabled{color:var(--vscode-disabledForeground)}.monaco-icon-label>.monaco-icon-label-container{min-width:0;overflow:hidden;text-overflow:ellipsis;flex:1}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name{color:inherit;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-name-container>.label-name>.label-separator{margin:0 2px;opacity:.5}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-suffix-container>.label-suffix{opacity:.7;white-space:pre}.monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.7;margin-left:.5em;font-size:.9em;white-space:pre}.monaco-icon-label.nowrap>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{white-space:nowrap}.vs .monaco-icon-label>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{opacity:.95}.monaco-icon-label.bold>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.bold>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-weight:700}.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.italic>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{font-style:italic}.monaco-icon-label.deprecated{text-decoration:line-through;opacity:.66}.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-name-container>.label-name,.monaco-icon-label.strikethrough>.monaco-icon-label-container>.monaco-icon-description-container>.label-description{text-decoration:line-through}.monaco-icon-label:after{opacity:.75;font-size:90%;font-weight:600;margin:auto 16px 0 5px;text-align:center}.monaco-list:focus .selected .monaco-icon-label,.monaco-list:focus .selected .monaco-icon-label:after{color:inherit!important}.monaco-list-row.focused.selected .label-description,.monaco-list-row.selected .label-description{opacity:.8}.monaco-editor .peekview-widget .head .peekview-title .severity-icon{display:inline-block;vertical-align:text-top;margin-right:4px}.monaco-editor .marker-widget{text-overflow:ellipsis;white-space:nowrap}.monaco-editor .marker-widget>.stale{opacity:.6;font-style:italic}.monaco-editor .marker-widget .title{display:inline-block;padding-right:5px}.monaco-editor .marker-widget .descriptioncontainer{position:absolute;white-space:pre;user-select:text;-webkit-user-select:text;padding:8px 12px 0 20px}.monaco-editor .marker-widget .descriptioncontainer .message{display:flex;flex-direction:column}.monaco-editor .marker-widget .descriptioncontainer .message .details{padding-left:6px}.monaco-editor .marker-widget .descriptioncontainer .message .source,.monaco-editor .marker-widget .descriptioncontainer .message span.code{opacity:.6}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link{opacity:.6;color:inherit}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:before{content:"("}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link:after{content:")"}.monaco-editor .marker-widget .descriptioncontainer .message a.code-link>span{text-decoration:underline;border-bottom:1px solid transparent;text-underline-position:under;color:var(--vscode-textLink-activeForeground)}.monaco-editor .marker-widget .descriptioncontainer .filename{cursor:pointer;color:var(--vscode-textLink-activeForeground)}.monaco-editor .zone-widget .codicon.codicon-error,.markers-panel .marker-icon.error,.markers-panel .marker-icon .codicon.codicon-error,.text-search-provider-messages .providerMessage .codicon.codicon-error,.extensions-viewlet>.extensions .codicon.codicon-error,.extension-editor .codicon.codicon-error,.chat-attached-context-attachment .codicon.codicon-error{color:var(--vscode-problemsErrorIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-warning,.markers-panel .marker-icon.warning,.markers-panel .marker-icon .codicon.codicon-warning,.text-search-provider-messages .providerMessage .codicon.codicon-warning,.extensions-viewlet>.extensions .codicon.codicon-warning,.extension-editor .codicon.codicon-warning,.preferences-editor .codicon.codicon-warning{color:var(--vscode-problemsWarningIcon-foreground)}.monaco-editor .zone-widget .codicon.codicon-info,.markers-panel .marker-icon.info,.markers-panel .marker-icon .codicon.codicon-info,.text-search-provider-messages .providerMessage .codicon.codicon-info,.extensions-viewlet>.extensions .codicon.codicon-info,.extension-editor .codicon.codicon-info{color:var(--vscode-problemsInfoIcon-foreground)}.monaco-editor .hoverHighlight{background-color:var(--vscode-editor-hoverHighlightBackground)}.monaco-editor .monaco-resizable-hover{border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;box-sizing:content-box}.monaco-editor .monaco-resizable-hover>.monaco-hover{border:none;border-radius:none}.monaco-editor .monaco-hover{border:1px solid var(--vscode-editorHoverWidget-border);border-radius:3px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background)}.monaco-editor .monaco-hover a{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .monaco-hover .hover-row{display:flex}.monaco-editor .monaco-hover .hover-row.hover-row-with-copy{position:relative;padding-right:20px}.monaco-editor .monaco-hover .hover-row .hover-row-contents{min-width:0;display:flex;flex-direction:column}.monaco-editor .monaco-hover .hover-row .verbosity-actions{border-right:1px solid var(--vscode-editorHoverWidget-border);width:22px;overflow-y:clip}.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner{display:flex;flex-direction:column;padding-left:5px;padding-right:5px;justify-content:flex-end;position:relative}.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner .codicon{cursor:pointer;font-size:11px}.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner .codicon.enabled{color:var(--vscode-textLink-foreground)}.monaco-editor .monaco-hover .hover-row .verbosity-actions-inner .codicon.disabled{opacity:.6}.monaco-editor .monaco-hover .hover-row .actions{background-color:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-editor .monaco-hover code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .monaco-hover .hover-copy-button{position:absolute;top:4px;right:4px;padding:2px 4px;border-radius:3px;display:flex;align-items:center;justify-content:center;opacity:0}.monaco-editor .monaco-hover .hover-row-with-copy:hover .hover-copy-button,.monaco-editor .monaco-hover .hover-row-with-copy:focus-within .hover-copy-button{opacity:1}.monaco-editor .monaco-hover .hover-copy-button:hover{background-color:var(--vscode-toolbar-hoverBackground);cursor:pointer}.monaco-editor .monaco-hover .hover-copy-button:focus{outline:1px solid var(--vscode-focusBorder);outline-offset:-1px}.monaco-editor .monaco-hover .hover-copy-button .codicon{font-size:16px;color:var(--vscode-foreground)}.monaco-editor.vs .dnd-target,.monaco-editor.hc-light .dnd-target{border-right:2px dotted black;color:#fff}.monaco-editor.vs-dark .dnd-target{border-right:2px dotted #AEAFAD;color:#51504f}.monaco-editor.hc-black .dnd-target{border-right:2px dotted #fff;color:#000}.monaco-editor.mouse-default .view-lines,.monaco-editor.vs-dark.mac.mouse-default .view-lines,.monaco-editor.hc-black.mac.mouse-default .view-lines,.monaco-editor.hc-light.mac.mouse-default .view-lines{cursor:default}.monaco-editor.mouse-copy .view-lines,.monaco-editor.vs-dark.mac.mouse-copy .view-lines,.monaco-editor.hc-black.mac.mouse-copy .view-lines,.monaco-editor.hc-light.mac.mouse-copy .view-lines{cursor:copy}.monaco-editor .findOptionsWidget{background-color:var(--vscode-editorWidget-background);color:var(--vscode-editorWidget-foreground);box-shadow:0 0 8px 2px var(--vscode-widget-shadow);border:2px solid var(--vscode-contrastBorder)}.monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-editor .margin-view-overlays .codicon-folding-collapsed{cursor:pointer;opacity:0;transition:opacity .5s;display:flex;align-items:center;justify-content:center;font-size:140%;margin-left:2px}.monaco-reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-collapsed,.monaco-reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-manual-expanded,.monaco-reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-expanded,.monaco-reduce-motion .monaco-editor .margin-view-overlays .codicon-folding-collapsed{transition:initial}.monaco-editor .margin-view-overlays:hover .codicon,.monaco-editor .margin-view-overlays .codicon.codicon-folding-collapsed,.monaco-editor .margin-view-overlays .codicon.codicon-folding-manual-collapsed,.monaco-editor .margin-view-overlays .codicon.alwaysShowFoldIcons{opacity:1}.monaco-editor .inline-folded:after{color:var(--vscode-editor-foldPlaceholderForeground);margin:.1em .2em 0;content:"⋯";display:inline;line-height:1em;cursor:pointer}.monaco-editor .folded-background{background-color:var(--vscode-editor-foldBackground)}.monaco-editor .cldr.codicon.codicon-folding-expanded,.monaco-editor .cldr.codicon.codicon-folding-collapsed,.monaco-editor .cldr.codicon.codicon-folding-manual-expanded,.monaco-editor .cldr.codicon.codicon-folding-manual-collapsed{color:var(--vscode-editorGutter-foldingControlForeground)!important}.monaco-editor .snippet-placeholder{min-width:2px;outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetTabstopHighlightBorder, transparent)}.monaco-editor .finish-snippet-placeholder{outline-style:solid;outline-width:1px;background-color:var(--vscode-editor-snippetFinalTabstopHighlightBackground, transparent);outline-color:var(--vscode-editor-snippetFinalTabstopHighlightBorder, transparent)}.monaco-editor .suggest-widget{width:430px;z-index:40;display:flex;flex-direction:column;border-radius:3px}.monaco-editor .suggest-widget.message{flex-direction:row;align-items:center}.monaco-editor .suggest-widget,.monaco-editor .suggest-details{flex:0 1 auto;width:100%;border-style:solid;border-width:1px;border-color:var(--vscode-editorSuggestWidget-border);background-color:var(--vscode-editorSuggestWidget-background)}.monaco-editor.hc-black .suggest-widget,.monaco-editor.hc-black .suggest-details,.monaco-editor.hc-light .suggest-widget,.monaco-editor.hc-light .suggest-details{border-width:2px}.monaco-editor .suggest-widget .suggest-status-bar{box-sizing:border-box;display:none;flex-flow:row nowrap;justify-content:space-between;width:100%;font-size:80%;padding:0 4px;border-top:1px solid var(--vscode-editorSuggestWidget-border);overflow:hidden}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar{display:flex}.monaco-editor .suggest-widget .suggest-status-bar .left{padding-right:8px}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-label{color:var(--vscode-editorSuggestWidgetStatus-foreground)}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label{margin-right:0}.monaco-editor .suggest-widget.with-status-bar .suggest-status-bar .action-item:not(:last-of-type) .action-label:after{content:", ";margin-right:.3em}.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row>.contents>.main>.right>.readMore,.monaco-editor .suggest-widget.with-status-bar .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget.with-status-bar:not(.docs-side) .monaco-list .monaco-list-row:hover>.contents>.main>.right.can-expand-details>.details-label{width:100%}.monaco-editor .suggest-widget>.message{padding-left:22px}.monaco-editor .suggest-widget>.tree{height:100%;width:100%}.monaco-editor .suggest-widget .monaco-list{user-select:none;-webkit-user-select:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row{display:flex;-mox-box-sizing:border-box;box-sizing:border-box;padding-right:10px;background-repeat:no-repeat;background-position:2px 2px;white-space:nowrap;cursor:pointer;touch-action:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused{color:var(--vscode-editorSuggestWidget-selectedForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused .codicon{color:var(--vscode-editorSuggestWidget-selectedIconForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents{flex:1;height:100%;overflow:hidden;padding-left:2px}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main{display:flex;overflow:hidden;text-overflow:ellipsis;white-space:pre;justify-content:space-between}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{display:flex}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.focused)>.contents>.main .monaco-icon-label{color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-widget:not(.frozen) .monaco-highlighted-label .highlight{font-weight:700}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-highlightForeground)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused>.contents>.main .monaco-highlighted-label .highlight{color:var(--vscode-editorSuggestWidget-focusHighlightForeground)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:before{color:inherit;opacity:1;font-size:14px;cursor:pointer}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close{position:absolute;top:6px;right:2px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.codicon-close:hover,.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore:hover{opacity:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{opacity:.7}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.signature-label{overflow:hidden;text-overflow:ellipsis;opacity:.6}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.qualifier-label{margin-left:12px;opacity:.4;font-size:85%;line-height:initial;text-overflow:ellipsis;overflow:hidden;align-self:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{font-size:85%;margin-left:1.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label>.monaco-tokenized-source{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.details-label{display:none}.monaco-editor .suggest-widget:not(.shows-details) .monaco-list .monaco-list-row.focused>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.right>.details-label,.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row.focused:not(.string-label)>.contents>.main>.right>.details-label{display:inline}.monaco-editor .suggest-widget:not(.docs-side) .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right.can-expand-details>.details-label{width:calc(100% - 26px)}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left{flex-shrink:1;flex-grow:1;overflow:hidden}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.left>.monaco-icon-label{flex-shrink:0}.monaco-editor .suggest-widget .monaco-list .monaco-list-row:not(.string-label)>.contents>.main>.left>.monaco-icon-label{max-width:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.left>.monaco-icon-label{flex-shrink:1}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right{overflow:hidden;flex-shrink:4;max-width:70%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:inline-block;position:absolute;right:10px;width:18px;height:18px;visibility:hidden}.monaco-editor .suggest-widget.docs-side .monaco-list .monaco-list-row>.contents>.main>.right>.readMore{display:none!important}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.string-label>.contents>.main>.right>.readMore{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused.string-label>.contents>.main>.right>.readMore{display:inline-block}.monaco-editor .suggest-widget .monaco-list .monaco-list-row.focused:hover>.contents>.main>.right>.readMore{visibility:visible}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated{opacity:.66;text-decoration:unset}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label.deprecated>.monaco-icon-label-container>.monaco-icon-name-container{text-decoration:line-through}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .monaco-icon-label:before{height:100%}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon{display:block;height:16px;width:16px;margin-left:2px;background-repeat:no-repeat;background-size:80%;background-position:center}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.hide{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .suggest-icon{display:flex;align-items:center;margin-right:4px}.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .icon,.monaco-editor .suggest-widget.no-icons .monaco-list .monaco-list-row .suggest-icon:before{display:none}.monaco-editor .suggest-widget .monaco-list .monaco-list-row .icon.customcolor .colorspan{margin:0 0 0 .3em;border:.1em solid #000;width:.7em;height:.7em;display:inline-block}.monaco-editor .suggest-details-container{z-index:41}.monaco-editor .suggest-details{display:flex;flex-direction:column;cursor:default;color:var(--vscode-editorSuggestWidget-foreground)}.monaco-editor .suggest-details:focus{border-color:var(--vscode-focusBorder)}.monaco-editor .suggest-details a{color:var(--vscode-textLink-foreground)}.monaco-editor .suggest-details a:hover{color:var(--vscode-textLink-activeForeground)}.monaco-editor .suggest-details code{background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .suggest-details.no-docs{display:none}.monaco-editor .suggest-details>.monaco-scrollable-element{flex:1}.monaco-editor .suggest-details>.monaco-scrollable-element>.body{box-sizing:border-box;height:100%;width:100%}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type{flex:2;overflow:hidden;text-overflow:ellipsis;opacity:.7;white-space:pre;margin:0 24px 0 0;padding:4px 0 4px 5px}.monaco-editor .suggest-details.detail-and-doc>.monaco-scrollable-element>.body>.header>.type{padding-bottom:12px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.header>.type.auto-wrap{white-space:normal;word-break:break-all}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs{margin:0;padding:4px 5px;white-space:pre-wrap}.monaco-editor .suggest-details.no-type>.monaco-scrollable-element>.body>.docs{margin-right:24px;overflow:hidden}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs{padding:0;white-space:initial;min-height:calc(1rem + 8px)}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div,.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>span:not(:empty){padding:4px 5px}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:first-child{margin-top:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs>div>p:last-child{margin-bottom:0}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .monaco-tokenized-source{white-space:pre}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs .code{white-space:pre-wrap;word-wrap:break-word}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>.docs.markdown-docs .codicon{vertical-align:sub}.monaco-editor .suggest-details>.monaco-scrollable-element>.body>p:empty{display:none}.monaco-editor .suggest-details code{border-radius:3px;padding:0 .4em}.monaco-editor .suggest-details ul,.monaco-editor .suggest-details ol{padding-left:20px}.monaco-editor .suggest-details p code{font-family:var(--monaco-monospace-font)}.monaco-editor .suggest-preview-additional-widget{white-space:nowrap}.monaco-editor .suggest-preview-additional-widget .content-spacer{color:transparent;white-space:pre}.monaco-editor .suggest-preview-additional-widget .button{display:inline-block;cursor:pointer;text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-hidden{opacity:0;font-size:0}.monaco-editor .ghost-text-decoration,.monaco-editor .suggest-preview-text .ghost-text{font-style:italic}.monaco-editor .suggest-preview-text.clickable .view-line{z-index:1}.monaco-editor .ghost-text-decoration.clickable,.monaco-editor .ghost-text-decoration-preview.clickable,.monaco-editor .suggest-preview-text.clickable .ghost-text{cursor:pointer}.monaco-editor .inline-completion-text-to-replace{text-decoration:underline;text-underline-position:under}.monaco-editor .ghost-text-decoration,.monaco-editor .ghost-text-decoration-preview,.monaco-editor .suggest-preview-text .ghost-text{background-color:var(--vscode-editorGhostText-background);border:1px solid var(--vscode-editorGhostText-border)}.monaco-editor .ghost-text-decoration.syntax-highlighted,.monaco-editor .ghost-text-decoration-preview.syntax-highlighted,.monaco-editor .suggest-preview-text .ghost-text.syntax-highlighted{opacity:.7}.monaco-editor .ghost-text-decoration:not(.syntax-highlighted),.monaco-editor .ghost-text-decoration-preview:not(.syntax-highlighted),.monaco-editor .suggest-preview-text .ghost-text:not(.syntax-highlighted){color:var(--vscode-editorGhostText-foreground)}.monaco-editor .ghost-text-decoration.warning,.monaco-editor .ghost-text-decoration-preview.warning,.monaco-editor .suggest-preview-text .ghost-text.warning{background:var(--monaco-editor-warning-decoration) repeat-x bottom left;border-bottom:4px double var(--vscode-editorWarning-border)}.ghost-text-view-warning-widget-icon .codicon{color:var(--vscode-editorWarning-foreground)!important}.monaco-editor .edits-fadeout-decoration{opacity:var(--animation-opacity, 1);background-color:var(--vscode-inlineEdit-modifiedChangedTextBackground)}.monaco-editor .sticky-widget{overflow:hidden;border-bottom:1px solid var(--vscode-editorStickyScroll-border);width:100%;box-shadow:var(--vscode-editorStickyScroll-shadow) 0 4px 2px -2px;z-index:4;right:initial!important;margin-left:"0px"}.monaco-editor .sticky-widget .sticky-widget-line-numbers{float:left;background-color:var(--vscode-editorStickyScrollGutter-background)}.monaco-editor .sticky-widget.peek .sticky-widget-line-numbers{background-color:var(--vscode-peekViewEditorStickyScrollGutter-background)}.monaco-editor .sticky-widget .sticky-widget-lines-scrollable{display:inline-block;position:absolute;overflow:hidden;width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:var(--vscode-editorStickyScroll-background)}.monaco-editor .sticky-widget.peek .sticky-widget-lines-scrollable{background-color:var(--vscode-peekViewEditorStickyScroll-background)}.monaco-editor .sticky-widget .sticky-widget-lines{position:absolute;background-color:inherit}.monaco-editor .sticky-widget .sticky-line-number,.monaco-editor .sticky-widget .sticky-line-content{color:var(--vscode-editorLineNumber-foreground);white-space:nowrap;display:inline-block;position:absolute;background-color:inherit}.monaco-editor .sticky-widget .sticky-line-number .codicon-folding-expanded,.monaco-editor .sticky-widget .sticky-line-number .codicon-folding-collapsed{float:right;transition:var(--vscode-editorStickyScroll-foldingOpacityTransition);position:absolute;margin-left:2px}.monaco-editor .sticky-widget .sticky-line-content{width:var(--vscode-editorStickyScroll-scrollableWidth);background-color:inherit;white-space:nowrap}.monaco-editor .sticky-widget .sticky-line-number-inner{display:inline-block;text-align:right}.monaco-editor .sticky-widget .sticky-line-content:hover{background-color:var(--vscode-editorStickyScrollHover-background);cursor:pointer}.monaco-editor .inline-edits-view-indicator{display:flex;z-index:34;height:20px;color:var(--vscode-inlineEdit-gutterIndicator-primaryForeground);background-color:var(--vscode-inlineEdit-gutterIndicator-background);border:1px solid var(--vscode-inlineEdit-gutterIndicator-primaryBorder);border-radius:3px;align-items:center;padding:2px 10px 2px 2px;margin:0 4px;opacity:0}.monaco-editor .inline-edits-view-indicator.contained{transition:opacity .2s ease-in-out;transition-delay:.4s}.monaco-editor .inline-edits-view-indicator.visible,.monaco-editor .inline-edits-view-indicator.top{opacity:1}.monaco-editor .inline-edits-view-indicator.top .icon{transform:rotate(90deg)}.monaco-editor .inline-edits-view-indicator.bottom{opacity:1}.monaco-editor .inline-edits-view-indicator.bottom .icon{transform:rotate(-90deg)}.monaco-editor .inline-edits-view-indicator .icon{display:flex;align-items:center;margin:0 2px;transform:none;transition:transform .2s ease-in-out}.monaco-editor .inline-edits-view-indicator .icon .codicon{color:var(--vscode-inlineEdit-gutterIndicator-primaryForeground)}.monaco-editor .inline-edits-view-indicator .label{margin:0 2px;display:flex;justify-content:center;width:100%}.monaco-editor .inline-edits-view .editorContainer .preview .monaco-editor .view-overlays .current-line-exact,.monaco-editor .inline-edits-view .editorContainer .preview .monaco-editor .current-line-margin{border:none}.monaco-editor .inline-edits-view .editorContainer .inline-edits-view-zone.diagonal-fill{opacity:.5}.monaco-editor .strike-through{text-decoration:line-through}.monaco-editor .inlineCompletions-line-insert{background:var(--vscode-inlineEdit-modifiedChangedLineBackground)}.monaco-editor .inlineCompletions-line-delete{background:var(--vscode-inlineEdit-originalChangedLineBackground)}.monaco-editor .inlineCompletions-char-insert{background:var(--vscode-inlineEdit-modifiedChangedTextBackground);cursor:pointer}.monaco-editor .inlineCompletions-char-delete{background:var(--vscode-inlineEdit-originalChangedTextBackground)}.monaco-editor .inlineCompletions-char-delete.diff-range-empty{margin-left:-1px;border-left:solid var(--vscode-inlineEdit-originalChangedTextBackground) 3px}.monaco-editor .inlineCompletions-char-insert.diff-range-empty{border-left:solid var(--vscode-inlineEdit-modifiedChangedTextBackground) 3px}.monaco-editor .inlineCompletions-char-delete.single-line-inline{border:1px solid var(--vscode-editorHoverWidget-border);margin:-2px 0 0 -2px}.monaco-editor .inlineCompletions-char-insert.single-line-inline{border-top:1px solid var(--vscode-inlineEdit-modifiedBorder);border-bottom:1px solid var(--vscode-inlineEdit-modifiedBorder)}.monaco-editor .inlineCompletions-char-insert.single-line-inline.start{border-top-left-radius:4px;border-bottom-left-radius:4px;border-left:1px solid var(--vscode-inlineEdit-modifiedBorder)}.monaco-editor .inlineCompletions-char-insert.single-line-inline.end{border-top-right-radius:4px;border-bottom-right-radius:4px;border-right:1px solid var(--vscode-inlineEdit-modifiedBorder)}.monaco-editor .inlineCompletions-char-delete.single-line-inline.empty,.monaco-editor .inlineCompletions-char-insert.single-line-inline.empty{display:none}.monaco-editor .inlineCompletions.strike-through{text-decoration-thickness:1px}.monaco-editor .inlineCompletions-modified-bubble{background:var(--vscode-inlineEdit-modifiedChangedTextBackground)}.monaco-editor .inlineCompletions-original-bubble{background:var(--vscode-inlineEdit-originalChangedTextBackground)}.monaco-editor .inlineCompletions-modified-bubble,.monaco-editor .inlineCompletions-original-bubble{pointer-events:none;display:inline-block}.monaco-editor .inline-edit.ghost-text,.monaco-editor .inline-edit.ghost-text-decoration,.monaco-editor .inline-edit.ghost-text-decoration-preview,.monaco-editor .inline-edit.suggest-preview-text .ghost-text{font-style:normal!important}.monaco-editor .inline-edit.ghost-text.syntax-highlighted,.monaco-editor .inline-edit.ghost-text-decoration.syntax-highlighted,.monaco-editor .inline-edit.ghost-text-decoration-preview.syntax-highlighted,.monaco-editor .inline-edit.suggest-preview-text .ghost-text.syntax-highlighted{opacity:1!important}.monaco-editor .inline-edit.modified-background.ghost-text,.monaco-editor .inline-edit.modified-background.ghost-text-decoration,.monaco-editor .inline-edit.modified-background.ghost-text-decoration-preview,.monaco-editor .inline-edit.modified-background.suggest-preview-text .ghost-text{background:var(--vscode-inlineEdit-modifiedChangedTextBackground)!important;display:inline-block!important}.monaco-editor .inlineCompletions-original-lines{background:var(--vscode-editor-background)}.monaco-menu-option{color:var(--vscode-editorActionList-foreground);font-size:13px;padding:0 4px;line-height:28px;display:flex;gap:4px;align-items:center;border-radius:3px;cursor:pointer}.monaco-menu-option .monaco-keybinding-key{font-size:13px;opacity:.7}.monaco-menu-option.active{background:var(--vscode-editorActionList-focusBackground);color:var(--vscode-editorActionList-focusForeground);outline:1px solid var(--vscode-menu-selectionBorder, transparent);outline-offset:-1px}.monaco-menu-option.active .monaco-keybinding-key{color:var(--vscode-editorActionList-focusForeground)}.monaco-editor .goto-definition-link{text-decoration:underline;cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor.vs .valueSetReplacement{outline:solid 2px var(--vscode-editorBracketMatch-border)}.monaco-editor .linked-editing-decoration{background-color:var(--vscode-editor-linkedEditingBackground);min-width:1px}.monaco-editor .detected-link,.monaco-editor .detected-link-active{text-decoration:underline;text-underline-position:under}.monaco-editor .detected-link-active{cursor:pointer;color:var(--vscode-editorLink-activeForeground)!important}.monaco-editor .scroll-editor-on-middle-click-dot{cursor:all-scroll;position:absolute;z-index:1;background-color:var(--vscode-editor-foreground, white);border:1px solid var(--vscode-editor-background, black);opacity:.5;width:5px;height:5px;border-radius:50%;transform:translate(-50%,-50%)}.monaco-editor .scroll-editor-on-middle-click-dot.hidden{display:none}.monaco-editor.scroll-editor-on-middle-click-editor *{cursor:all-scroll}.monaco-editor .focused .selectionHighlight{background-color:var(--vscode-editor-selectionHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-selectionHighlightBorder)}.monaco-editor.hc-black .focused .selectionHighlight,.monaco-editor.hc-light .focused .selectionHighlight{border-style:dotted}.monaco-editor .wordHighlight{background-color:var(--vscode-editor-wordHighlightBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightBorder)}.monaco-editor.hc-black .wordHighlight,.monaco-editor.hc-light .wordHighlight{border-style:dotted}.monaco-editor .wordHighlightStrong{background-color:var(--vscode-editor-wordHighlightStrongBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightStrongBorder)}.monaco-editor.hc-black .wordHighlightStrong,.monaco-editor.hc-light .wordHighlightStrong{border-style:dotted}.monaco-editor .wordHighlightText{background-color:var(--vscode-editor-wordHighlightTextBackground);box-sizing:border-box;border:1px solid var(--vscode-editor-wordHighlightTextBorder)}.monaco-editor.hc-black .wordHighlightText,.monaco-editor.hc-light .wordHighlightText{border-style:dotted}.monaco-editor .parameter-hints-widget{z-index:39;display:flex;flex-direction:column;line-height:1.5em;cursor:default;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.hc-black .monaco-editor .parameter-hints-widget,.hc-light .monaco-editor .parameter-hints-widget{border-width:2px}.monaco-editor .parameter-hints-widget>.phwrapper{max-width:440px;display:flex;flex-direction:row}.monaco-editor .parameter-hints-widget.multiple{min-height:3.3em;padding:0}.monaco-editor .parameter-hints-widget.multiple .body:before{content:"";display:block;height:100%;position:absolute;opacity:.5;border-left:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget p,.monaco-editor .parameter-hints-widget ul{margin:8px 0}.monaco-editor .parameter-hints-widget .monaco-scrollable-element,.monaco-editor .parameter-hints-widget .body{display:flex;flex:1;flex-direction:column;min-height:100%}.monaco-editor .parameter-hints-widget .signature{padding:4px 5px;position:relative}.monaco-editor .parameter-hints-widget .signature.has-docs:after{content:"";display:block;position:absolute;left:0;width:100%;padding-top:4px;opacity:.5;border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor .parameter-hints-widget .code{font-family:var(--vscode-parameterHintsWidget-editorFontFamily),var(--vscode-parameterHintsWidget-editorFontFamilyDefault)}.monaco-editor .parameter-hints-widget .docs{padding:0 10px 0 5px;white-space:pre-wrap}.monaco-editor .parameter-hints-widget .docs.empty{display:none}.monaco-editor .parameter-hints-widget .docs a{color:var(--vscode-textLink-foreground)}.monaco-editor .parameter-hints-widget .docs a:hover{color:var(--vscode-textLink-activeForeground);cursor:pointer}.monaco-editor .parameter-hints-widget .docs .markdown-docs{white-space:initial}.monaco-editor .parameter-hints-widget .docs code{font-family:var(--monaco-monospace-font);border-radius:3px;padding:0 .4em;background-color:var(--vscode-textCodeBlock-background)}.monaco-editor .parameter-hints-widget .docs .monaco-tokenized-source,.monaco-editor .parameter-hints-widget .docs .code{white-space:pre-wrap}.monaco-editor .parameter-hints-widget .controls{display:none;flex-direction:column;align-items:center;min-width:22px;justify-content:flex-end}.monaco-editor .parameter-hints-widget.multiple .controls{display:flex;padding:0 2px}.monaco-editor .parameter-hints-widget.multiple .button{width:16px;height:16px;background-repeat:no-repeat;cursor:pointer}.monaco-editor .parameter-hints-widget .button.previous{bottom:24px}.monaco-editor .parameter-hints-widget .overloads{text-align:center;height:12px;line-height:12px;font-family:var(--monaco-monospace-font)}.monaco-editor .parameter-hints-widget .signature .parameter.active{color:var(--vscode-editorHoverWidget-highlightForeground);font-weight:700}.monaco-editor .parameter-hints-widget .documentation-parameter>.parameter{font-weight:700;margin-right:.5em}.monaco-editor .editorPlaceholder{top:0;position:absolute;overflow:hidden;text-overflow:ellipsis;text-wrap:nowrap;pointer-events:none;color:var(--vscode-editor-placeholder-foreground)}.monaco-editor .rename-box{z-index:100;color:inherit;border-radius:4px}.monaco-editor .rename-box.preview{padding:4px 4px 0}.monaco-editor .rename-box .rename-input-with-button{padding:3px;border-radius:2px;width:calc(100% - 8px)}.monaco-editor .rename-box .rename-input{width:calc(100% - 8px);padding:0}.monaco-editor .rename-box .rename-input:focus{outline:none}.monaco-editor .rename-box .rename-suggestions-button{display:flex;align-items:center;padding:3px;background-color:transparent;border:none;border-radius:5px;cursor:pointer}.monaco-editor .rename-box .rename-suggestions-button:hover{background-color:var(--vscode-toolbar-hoverBackground)}.monaco-editor .rename-box .rename-candidate-list-container .monaco-list-row{border-radius:2px}.monaco-editor .rename-box .rename-label{display:none;opacity:.8}.monaco-editor .rename-box.preview .rename-label{display:inherit}.monaco-editor .unicode-highlight{border:1px solid var(--vscode-editorUnicodeHighlight-border);background-color:var(--vscode-editorUnicodeHighlight-background);box-sizing:border-box}.editor-banner{box-sizing:border-box;cursor:default;width:100%;font-size:12px;display:flex;overflow:visible;height:26px;background:var(--vscode-banner-background)}.editor-banner .icon-container{display:flex;flex-shrink:0;align-items:center;padding:0 6px 0 10px}.editor-banner .icon-container.custom-icon{background-repeat:no-repeat;background-position:center center;background-size:16px;width:16px;padding:0;margin:0 6px 0 10px}.editor-banner .message-container{display:flex;align-items:center;line-height:26px;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.editor-banner .message-container p{margin-block-start:0;margin-block-end:0}.editor-banner .message-actions-container{flex-grow:1;flex-shrink:0;line-height:26px;margin:0 4px}.editor-banner .message-actions-container a.monaco-button{width:inherit;margin:2px 8px;padding:0 12px}.editor-banner .message-actions-container a{padding:3px;margin-left:12px;text-decoration:underline}.editor-banner .action-container{padding:0 10px 0 6px}.editor-banner{background-color:var(--vscode-banner-background)}.editor-banner,.editor-banner .action-container .codicon,.editor-banner .message-actions-container .monaco-link{color:var(--vscode-banner-foreground)}.editor-banner .icon-container .codicon{color:var(--vscode-banner-iconForeground)}.monaco-link{color:var(--vscode-textLink-foreground)}.monaco-link:hover{color:var(--vscode-textLink-activeForeground)}.floating-menu-overlay-widget{padding:0;color:var(--vscode-button-foreground);background-color:var(--vscode-button-background);border-radius:2px;border:1px solid var(--vscode-contrastBorder);display:flex;align-items:center;z-index:10;box-shadow:0 2px 8px var(--vscode-widget-shadow);overflow:hidden}.floating-menu-overlay-widget .action-item>.action-label{padding:5px;font-size:12px;border-radius:2px}.floating-menu-overlay-widget .action-item>.action-label.codicon{color:var(--vscode-button-foreground)}.floating-menu-overlay-widget .action-item>.action-label.codicon:not(.separator){padding-top:6px;padding-bottom:6px}.floating-menu-overlay-widget .action-item:first-child>.action-label{padding-left:7px}.floating-menu-overlay-widget .action-item:last-child>.action-label{padding-right:7px}.floating-menu-overlay-widget .action-item .action-label.separator{background-color:var(--vscode-menu-separatorBackground)}.monaco-editor .iPadShowKeyboard{width:58px;min-width:0;height:36px;min-height:0;margin:0;padding:0;position:absolute;resize:none;overflow:hidden;background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjNDI0MjQyIi8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #F6F6F6;border-radius:4px}.monaco-editor.vs-dark .iPadShowKeyboard{background:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIHZpZXdCb3g9IjAgMCA1MyAzNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGcgY2xpcC1wYXRoPSJ1cmwoI2NsaXAwKSI+CjxwYXRoIGZpbGwtcnVsZT0iZXZlbm9kZCIgY2xpcC1ydWxlPSJldmVub2RkIiBkPSJNNDguMDM2NCA0LjAxMDQySDQuMDA3NzlMNC4wMDc3OSAzMi4wMjg2SDQ4LjAzNjRWNC4wMTA0MlpNNC4wMDc3OSAwLjAwNzgxMjVDMS43OTcyMSAwLjAwNzgxMjUgMC4wMDUxODc5OSAxLjc5OTg0IDAuMDA1MTg3OTkgNC4wMTA0MlYzMi4wMjg2QzAuMDA1MTg3OTkgMzQuMjM5MiAxLjc5NzIxIDM2LjAzMTIgNC4wMDc3OSAzNi4wMzEySDQ4LjAzNjRDNTAuMjQ3IDM2LjAzMTIgNTIuMDM5IDM0LjIzOTIgNTIuMDM5IDMyLjAyODZWNC4wMTA0MkM1Mi4wMzkgMS43OTk4NCA1MC4yNDcgMC4wMDc4MTI1IDQ4LjAzNjQgMC4wMDc4MTI1SDQuMDA3NzlaTTguMDEwNDIgOC4wMTMwMkgxMi4wMTNWMTIuMDE1Nkg4LjAxMDQyVjguMDEzMDJaTTIwLjAxODIgOC4wMTMwMkgxNi4wMTU2VjEyLjAxNTZIMjAuMDE4MlY4LjAxMzAyWk0yNC4wMjA4IDguMDEzMDJIMjguMDIzNFYxMi4wMTU2SDI0LjAyMDhWOC4wMTMwMlpNMzYuMDI4NiA4LjAxMzAySDMyLjAyNlYxMi4wMTU2SDM2LjAyODZWOC4wMTMwMlpNNDAuMDMxMiA4LjAxMzAySDQ0LjAzMzlWMTIuMDE1Nkg0MC4wMzEyVjguMDEzMDJaTTE2LjAxNTYgMTYuMDE4Mkg4LjAxMDQyVjIwLjAyMDhIMTYuMDE1NlYxNi4wMTgyWk0yMC4wMTgyIDE2LjAxODJIMjQuMDIwOFYyMC4wMjA4SDIwLjAxODJWMTYuMDE4MlpNMzIuMDI2IDE2LjAxODJIMjguMDIzNFYyMC4wMjA4SDMyLjAyNlYxNi4wMTgyWk00NC4wMzM5IDE2LjAxODJWMjAuMDIwOEgzNi4wMjg2VjE2LjAxODJINDQuMDMzOVpNMTIuMDEzIDI0LjAyMzRIOC4wMTA0MlYyOC4wMjZIMTIuMDEzVjI0LjAyMzRaTTE2LjAxNTYgMjQuMDIzNEgzNi4wMjg2VjI4LjAyNkgxNi4wMTU2VjI0LjAyMzRaTTQ0LjAzMzkgMjQuMDIzNEg0MC4wMzEyVjI4LjAyNkg0NC4wMzM5VjI0LjAyMzRaIiBmaWxsPSIjQzVDNUM1Ii8+CjwvZz4KPGRlZnM+CjxjbGlwUGF0aCBpZD0iY2xpcDAiPgo8cmVjdCB3aWR0aD0iNTMiIGhlaWdodD0iMzYiIGZpbGw9IndoaXRlIi8+CjwvY2xpcFBhdGg+CjwvZGVmcz4KPC9zdmc+Cg==) center center no-repeat;border:4px solid #252526}.monaco-editor .tokens-inspect-widget{z-index:50;user-select:text;-webkit-user-select:text;padding:10px;color:var(--vscode-editorHoverWidget-foreground);background-color:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border)}.monaco-editor.hc-black .tokens-inspect-widget,.monaco-editor.hc-light .tokens-inspect-widget{border-width:2px}.monaco-editor .tokens-inspect-widget .tokens-inspect-separator{height:1px;border:0;background-color:var(--vscode-editorHoverWidget-border)}.monaco-editor .tokens-inspect-widget .tm-token{font-family:var(--monaco-monospace-font)}.monaco-editor .tokens-inspect-widget .tm-token-length{font-weight:400;font-size:60%;float:right}.monaco-editor .tokens-inspect-widget .tm-metadata-table{width:100%}.monaco-editor .tokens-inspect-widget .tm-metadata-value{font-family:var(--monaco-monospace-font);text-align:right}.monaco-editor .tokens-inspect-widget .tm-token-type{font-family:var(--monaco-monospace-font)}.monaco-editor{font-family:-apple-system,BlinkMacSystemFont,Segoe WPC,Segoe UI,HelveticaNeue-Light,system-ui,Ubuntu,Droid Sans,sans-serif;--monaco-monospace-font: "SF Mono", Monaco, Menlo, Consolas, "Ubuntu Mono", "Liberation Mono", "DejaVu Sans Mono", "Courier New", monospace}.monaco-menu .monaco-action-bar.vertical .action-item .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-editor.vs-dark .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-black .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label,.monaco-editor.hc-light .monaco-menu .monaco-action-bar.vertical .action-menu-item:focus .action-label{stroke-width:1.2px}.monaco-hover p{margin:0}.monaco-aria-container{position:absolute!important;top:0;height:1px;width:1px;margin:-1px;overflow:hidden;padding:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%)}.monaco-editor .synthetic-focus,.monaco-diff-editor .synthetic-focus,.monaco-editor [tabindex="0"]:focus,.monaco-diff-editor [tabindex="0"]:focus,.monaco-editor [tabindex="-1"]:focus,.monaco-diff-editor [tabindex="-1"]:focus,.monaco-editor button:focus,.monaco-diff-editor button:focus,.monaco-editor input[type=button]:focus,.monaco-diff-editor input[type=button]:focus,.monaco-editor input[type=checkbox]:focus,.monaco-diff-editor input[type=checkbox]:focus,.monaco-editor input[type=search]:focus,.monaco-diff-editor input[type=search]:focus,.monaco-editor input[type=text]:focus,.monaco-diff-editor input[type=text]:focus,.monaco-editor select:focus,.monaco-diff-editor select:focus,.monaco-editor textarea:focus,.monaco-diff-editor textarea:focus{outline-width:1px;outline-style:solid;outline-offset:-1px;outline-color:var(--vscode-focusBorder);opacity:1}.monaco-hover.workbench-hover{position:relative;font-size:13px;line-height:19px;z-index:40;overflow:hidden;max-width:700px;background:var(--vscode-editorHoverWidget-background);border:1px solid var(--vscode-editorHoverWidget-border);border-radius:5px;color:var(--vscode-editorHoverWidget-foreground);box-shadow:0 2px 8px var(--vscode-widget-shadow)}.monaco-hover.workbench-hover .monaco-action-bar .action-item .codicon{width:13px;height:13px}.monaco-hover.workbench-hover hr{border-bottom:none}.monaco-hover.workbench-hover.compact{font-size:12px}.monaco-hover.workbench-hover.compact .monaco-action-bar .action-item .codicon{width:12px;height:12px}.monaco-hover.workbench-hover.compact .hover-contents{padding:2px 8px}.workbench-hover-container.locked .monaco-hover.workbench-hover{outline:1px solid var(--vscode-editorHoverWidget-border)}.workbench-hover-container:focus-within.locked .monaco-hover.workbench-hover{outline-color:var(--vscode-focusBorder)}.workbench-hover-pointer{position:absolute;z-index:41;pointer-events:none}.workbench-hover-pointer:after{content:"";position:absolute;width:5px;height:5px;background-color:var(--vscode-editorHoverWidget-background);border-right:1px solid var(--vscode-editorHoverWidget-border);border-bottom:1px solid var(--vscode-editorHoverWidget-border)}.workbench-hover-container:not(:focus-within).locked .workbench-hover-pointer:after{width:4px;height:4px;border-right-width:2px;border-bottom-width:2px}.workbench-hover-container:focus-within .workbench-hover-pointer:after{border-right:1px solid var(--vscode-focusBorder);border-bottom:1px solid var(--vscode-focusBorder)}.workbench-hover-pointer.left{left:-3px}.workbench-hover-pointer.right{right:3px}.workbench-hover-pointer.top{top:-3px}.workbench-hover-pointer.bottom{bottom:3px}.workbench-hover-pointer.left:after{transform:rotate(135deg)}.workbench-hover-pointer.right:after{transform:rotate(315deg)}.workbench-hover-pointer.top:after{transform:rotate(225deg)}.workbench-hover-pointer.bottom:after{transform:rotate(45deg)}.monaco-hover.workbench-hover a{color:var(--vscode-textLink-foreground)}.monaco-hover.workbench-hover a:focus{outline:1px solid;outline-offset:-1px;text-decoration:underline;outline-color:var(--vscode-focusBorder)}.monaco-hover.workbench-hover a.codicon:focus,.monaco-hover.workbench-hover a.monaco-button:focus{text-decoration:none}.monaco-hover.workbench-hover a:hover,.monaco-hover.workbench-hover a:active{color:var(--vscode-textLink-activeForeground)}.monaco-hover.workbench-hover code{background:var(--vscode-textCodeBlock-background)}.monaco-hover.workbench-hover .hover-row .actions{background:var(--vscode-editorHoverWidget-statusBarBackground)}.monaco-hover.workbench-hover.right-aligned{left:1px}.monaco-hover.workbench-hover.right-aligned .hover-row.status-bar .actions{flex-direction:row-reverse}.monaco-hover.workbench-hover.right-aligned .hover-row.status-bar .actions .action-container{margin-right:0;margin-left:16px}.context-view{position:absolute}.context-view.fixed{all:initial;font-family:inherit;font-size:13px;position:fixed;color:inherit}.quick-input-widget{font-size:13px}.quick-input-widget .monaco-highlighted-label .highlight{color:#0066bf}.vs .quick-input-widget .monaco-list-row.focused .monaco-highlighted-label .highlight{color:#9dddff}.vs-dark .quick-input-widget .monaco-highlighted-label .highlight{color:#0097fb}.hc-black .quick-input-widget .monaco-highlighted-label .highlight{color:#f38518}.hc-light .quick-input-widget .monaco-highlighted-label .highlight{color:#0f4a85}.monaco-keybinding>.monaco-keybinding-key{background-color:#ddd6;border:solid 1px rgba(204,204,204,.4);border-bottom-color:#bbb6;box-shadow:inset 0 -1px #bbb6;color:#555}.hc-black .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px rgb(111,195,223);box-shadow:none;color:#fff}.hc-light .monaco-keybinding>.monaco-keybinding-key{background-color:transparent;border:solid 1px #0F4A85;box-shadow:none;color:#292929}.vs-dark .monaco-keybinding>.monaco-keybinding-key{background-color:#8080802b;border:solid 1px rgba(51,51,51,.6);border-bottom-color:#4449;box-shadow:inset 0 -1px #4449;color:#ccc}.quick-input-widget{position:absolute;width:600px;z-index:2550;left:50%;-webkit-app-region:no-drag;border-radius:6px}.quick-input-titlebar{cursor:grab;display:flex;align-items:center;border-top-right-radius:5px;border-top-left-radius:5px}.quick-input-left-action-bar{display:flex;margin-left:4px;flex:1}.quick-input-inline-action-bar>.actions-container>.action-item:first-child{margin-left:5px}.quick-input-inline-action-bar>.actions-container>.action-item{margin-top:2px}.quick-input-title{cursor:grab;padding:3px 0;text-align:center;text-overflow:ellipsis;overflow:hidden}.quick-input-right-action-bar{display:flex;margin-right:4px;flex:1}.quick-input-right-action-bar>.actions-container{justify-content:flex-end}.quick-input-right-action-bar>.actions-container>.action-item{margin-left:4px}.quick-input-titlebar .monaco-action-bar .action-label.codicon{background-position:center;background-repeat:no-repeat;padding:2px}.quick-input-description{margin:6px 6px 6px 11px}.quick-input-header .quick-input-description{margin:4px 2px;flex:1}.quick-input-header{cursor:grab;display:flex;padding:6px 6px 2px}.quick-input-widget.hidden-input .quick-input-header{padding:0;margin-bottom:0}.quick-input-and-message{display:flex;flex-direction:column;flex-grow:1;min-width:0;position:relative}.quick-input-check-all{align-self:center;margin:0}.quick-input-widget .quick-input-header .monaco-checkbox{margin-top:6px}.quick-input-filter{flex-grow:1;display:flex;position:relative}.quick-input-box{flex-grow:1}.quick-input-widget.show-checkboxes .quick-input-box,.quick-input-widget.show-checkboxes .quick-input-message{margin-left:5px}.quick-input-visible-count{position:absolute;left:-10000px}.quick-input-count{align-self:center;position:absolute;right:4px;display:flex;align-items:center}.quick-input-count .monaco-count-badge{vertical-align:middle;padding:2px 4px;border-radius:2px;min-height:auto;line-height:normal}.quick-input-action{margin-left:6px}.quick-input-action .monaco-text-button{font-size:11px;padding:0 6px;display:flex;height:25px;align-items:center}.quick-input-message{margin-top:-1px;padding:5px;overflow-wrap:break-word}.quick-input-message>.codicon{margin:0 .2em;vertical-align:text-bottom}.quick-input-message a{color:inherit}.quick-input-progress.monaco-progress-container{position:relative}.quick-input-list{line-height:22px}.quick-input-widget.hidden-input .quick-input-list{margin-top:4px;padding-bottom:4px}.quick-input-list .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-list .monaco-scrollable-element{padding:0 6px}.quick-input-list .quick-input-list-entry{box-sizing:border-box;overflow:hidden;display:flex;padding:0 6px}.quick-input-list .quick-input-list-entry.quick-input-list-separator-border{border-top-width:1px;border-top-style:solid}.quick-input-list .monaco-list-row{border-radius:3px}.quick-input-list .monaco-list-row[data-index="0"] .quick-input-list-entry.quick-input-list-separator-border{border-top-style:none}.quick-input-list .quick-input-list-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-widget .monaco-checkbox{margin-right:0}.quick-input-widget .quick-input-list .monaco-checkbox,.quick-input-widget .quick-input-tree .monaco-checkbox{margin-top:4px}.quick-input-list .quick-input-list-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-list .quick-input-list-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-list .quick-input-list-rows>.quick-input-list-row{display:flex;align-items:center}.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label,.quick-input-list .quick-input-list-rows>.quick-input-list-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-list .quick-input-list-rows>.quick-input-list-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-list .quick-input-list-rows .monaco-highlighted-label>span{opacity:1}.quick-input-list .quick-input-list-entry .quick-input-list-entry-keybinding{margin-right:8px}.quick-input-list .quick-input-list-label-meta{opacity:.7;line-height:normal;text-overflow:ellipsis;overflow:hidden}.quick-input-list .monaco-list .monaco-list-row .monaco-highlighted-label .highlight{font-weight:700;background-color:unset;color:var(--vscode-list-highlightForeground)!important}.quick-input-list .monaco-list .monaco-list-row.focused .monaco-highlighted-label .highlight{color:var(--vscode-list-focusHighlightForeground)!important}.quick-input-list .quick-input-list-entry .quick-input-list-separator{margin-right:4px}.quick-input-list .quick-input-list-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-list .quick-input-list-entry-action-bar .action-label{display:none}.quick-input-list .quick-input-list-entry-action-bar .action-label.codicon{margin-right:4px;padding:2px}.quick-input-list .quick-input-list-entry-action-bar{margin-top:1px}.quick-input-list .quick-input-list-entry-action-bar{margin-right:4px}.quick-input-list .quick-input-list-entry .quick-input-list-entry-action-bar .action-label.always-visible,.quick-input-list .quick-input-list-entry:hover .quick-input-list-entry-action-bar .action-label,.quick-input-list .quick-input-list-entry.focus-inside .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.focused .quick-input-list-entry-action-bar .action-label,.quick-input-list .monaco-list-row.passive-focused .quick-input-list-entry-action-bar .action-label{display:flex}.quick-input-list>.monaco-list:focus .monaco-list-row.focused{outline:1px solid var(--vscode-list-focusOutline)!important;outline-offset:-1px}.quick-input-list>.monaco-list:focus .monaco-list-row.focused .quick-input-list-entry.quick-input-list-separator-border{border-color:transparent}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key,.quick-input-list .monaco-list-row.focused .quick-input-list-entry .quick-input-list-separator{color:inherit}.quick-input-list .monaco-list-row.focused .monaco-keybinding-key{background:none}.quick-input-list .quick-input-list-separator-as-item{padding:4px 6px;font-size:12px}.quick-input-list .quick-input-list-separator-as-item .label-name{font-weight:600}.quick-input-list .quick-input-list-separator-as-item .label-description{opacity:1!important}.quick-input-list .monaco-tree-sticky-row .quick-input-list-entry.quick-input-list-separator-as-item.quick-input-list-separator-border{border-top-style:none}.quick-input-list .monaco-tree-sticky-row{padding:0 5px}.quick-input-list .monaco-tl-twistie{display:none!important}.quick-input-tree .monaco-list{overflow:hidden;max-height:440px;padding-bottom:5px}.quick-input-tree .quick-input-tree-entry{box-sizing:border-box;overflow:hidden;display:flex;padding:0 6px}.quick-input-tree .quick-input-tree-label{overflow:hidden;display:flex;height:100%;flex:1}.quick-input-tree .quick-input-tree-icon{background-size:16px;background-position:left center;background-repeat:no-repeat;padding-right:6px;width:16px;height:22px;display:flex;align-items:center;justify-content:center}.quick-input-tree .quick-input-tree-rows{overflow:hidden;text-overflow:ellipsis;display:flex;flex-direction:column;height:100%;flex:1;margin-left:5px}.quick-input-tree .quick-input-tree-rows>.quick-input-tree-row{display:flex;align-items:center}.quick-input-tree .quick-input-tree-rows>.quick-input-tree-row .monaco-icon-label,.quick-input-tree .quick-input-tree-rows>.quick-input-tree-row .monaco-icon-label .monaco-icon-label-container>.monaco-icon-name-container{flex:1}.quick-input-tree .quick-input-tree-rows>.quick-input-tree-row .codicon[class*=codicon-]{vertical-align:text-bottom}.quick-input-tree .quick-input-tree-rows .monaco-highlighted-label>span{opacity:1}.quick-input-tree .quick-input-tree-entry-action-bar{display:flex;flex:0;overflow:visible}.quick-input-tree .quick-input-tree-entry-action-bar .action-label{display:none}.quick-input-tree .quick-input-tree-entry-action-bar .action-label.codicon{margin-right:4px;padding:2px}.quick-input-tree .quick-input-tree-entry-action-bar{margin-top:1px}.quick-input-tree .quick-input-tree-entry-action-bar{margin-right:4px}.quick-input-tree .quick-input-tree-entry .quick-input-tree-entry-action-bar .action-label.always-visible,.quick-input-tree .quick-input-tree-entry:hover .quick-input-tree-entry-action-bar .action-label,.quick-input-tree .quick-input-tree-entry.focus-inside .quick-input-tree-entry-action-bar .action-label,.quick-input-tree .monaco-list-row.focused .quick-input-tree-entry-action-bar .action-label,.quick-input-tree .monaco-list-row.passive-focused .quick-input-tree-entry-action-bar .action-label{display:flex}.quick-input-tree>.monaco-list:focus .monaco-list-row.focused{outline:1px solid var(--vscode-list-focusOutline)!important;outline-offset:-1px}.monaco-progress-container{width:100%;height:2px;overflow:hidden}.monaco-progress-container .progress-bit{width:2%;height:2px;position:absolute;left:0;display:none}.monaco-progress-container.active .progress-bit{display:inherit}.monaco-progress-container.discrete .progress-bit{left:0;transition:width .1s linear}.monaco-progress-container.discrete.done .progress-bit{width:100%}.monaco-progress-container.infinite .progress-bit{animation-name:progress;animation-duration:4s;animation-iteration-count:infinite;transform:translateZ(0);animation-timing-function:linear}.monaco-progress-container.infinite.infinite-long-running .progress-bit{animation-timing-function:steps(100)}@keyframes progress{0%{transform:translate(0) scaleX(1)}50%{transform:translate(2500%) scaleX(3)}to{transform:translate(4900%) scaleX(1)}}.monaco-editor .rendered-markdown kbd{background-color:var(--vscode-keybindingLabel-background);color:var(--vscode-keybindingLabel-foreground);border-style:solid;border-width:1px;border-radius:3px;border-color:var(--vscode-keybindingLabel-border);border-bottom-color:var(--vscode-keybindingLabel-bottomBorder);box-shadow:inset 0 -1px 0 var(--vscode-widget-shadow);vertical-align:middle;padding:1px 3px}.rendered-markdown li:has(input[type=checkbox]){list-style-type:none}.monaco-component.multiDiffEditor{background:var(--vscode-multiDiffEditor-background);position:relative;height:100%;width:100%;overflow-y:hidden}.monaco-component.multiDiffEditor>div{position:absolute;top:0;left:0;height:100%;width:100%}.monaco-component.multiDiffEditor>div.placeholder{visibility:hidden;display:grid;place-items:center;place-content:center}.monaco-component.multiDiffEditor>div.placeholder.visible{visibility:visible}.monaco-component.multiDiffEditor .active{--vscode-multiDiffEditor-border: var(--vscode-focusBorder)}.monaco-component.multiDiffEditor .multiDiffEntry{display:flex;flex-direction:column;flex:1;overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button{margin:0 5px;cursor:pointer}.monaco-component.multiDiffEditor .multiDiffEntry .collapse-button a{display:block}.monaco-component.multiDiffEditor .multiDiffEntry .header{z-index:1000;background:var(--vscode-editor-background)}.monaco-component.multiDiffEditor .multiDiffEntry .header:not(.collapsed) .header-content{border-bottom:1px solid var(--vscode-sideBarSectionHeader-border)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content{margin:8px 0 0;padding:4px 5px;border-top:1px solid var(--vscode-multiDiffEditor-border);display:flex;align-items:center;color:var(--vscode-foreground);background:var(--vscode-multiDiffEditor-headerBackground)}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content.shadow{box-shadow:var(--vscode-scrollbar-shadow) 0 6px 6px -6px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path{display:flex;flex:1;min-width:0}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title{font-size:14px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .title.original{flex:1;min-width:0;text-overflow:ellipsis}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .file-path .status{font-weight:600;opacity:.75;margin:0 10px;line-height:22px}.monaco-component.multiDiffEditor .multiDiffEntry .header .header-content .actions{padding:0 8px}.monaco-component.multiDiffEditor .multiDiffEntry .editorParent{flex:1;display:flex;flex-direction:column;border-bottom:1px solid var(--vscode-multiDiffEditor-border);overflow:hidden}.monaco-component.multiDiffEditor .multiDiffEntry .editorContainer{flex:1}.history-sort select{padding:7px 32px 7px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text);font-size:13px;cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .2s}.history-sort-select{padding:7px 32px 7px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text);font-size:13px;cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .2s;max-width:240px;text-overflow:ellipsis;overflow:hidden}.loading-network-progress{stroke:url(#progressGradient);stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(37,99,235,.4));stroke:var(--gs-primary)}.live2d-avatar{position:absolute;z-index:20;pointer-events:none;opacity:0;transition:opacity .5s ease;width:280px;height:360px}.live2d-avatar--loaded{opacity:1}.live2d-avatar--bottom-right{bottom:60px;right:20px}.live2d-avatar--bottom-left{bottom:60px;left:20px}.live2d-avatar-canvas{width:100%;height:100%;display:block}.live2d-avatar-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.live2d-avatar-spinner{width:32px;height:32px;border:3px solid rgba(79,70,229,.15);border-top-color:#4f46e5;border-radius:50%;animation:live2dSpin .8s linear infinite}@keyframes live2dSpin{to{transform:rotate(360deg)}}@media (max-width: 768px){.live2d-avatar{width:180px;height:230px;bottom:50px}.live2d-avatar--bottom-right{right:8px}.live2d-avatar--bottom-left{left:8px}}.slide-player.fullscreen .live2d-avatar{width:320px;height:400px}pre code.hljs{display:block;overflow-x:auto;padding:1em}code.hljs{padding:3px 5px}.hljs{color:#abb2bf;background:#282c34}.hljs-comment,.hljs-quote{color:#5c6370;font-style:italic}.hljs-doctag,.hljs-keyword,.hljs-formula{color:#c678dd}.hljs-section,.hljs-name,.hljs-selector-tag,.hljs-deletion,.hljs-subst{color:#e06c75}.hljs-literal{color:#56b6c2}.hljs-string,.hljs-regexp,.hljs-addition,.hljs-attribute,.hljs-meta .hljs-string{color:#98c379}.hljs-attr,.hljs-variable,.hljs-template-variable,.hljs-type,.hljs-selector-class,.hljs-selector-attr,.hljs-selector-pseudo,.hljs-number{color:#d19a66}.hljs-symbol,.hljs-bullet,.hljs-link,.hljs-meta,.hljs-selector-id,.hljs-title{color:#61aeee}.hljs-built_in,.hljs-title.class_,.hljs-class .hljs-title{color:#e6c07b}.hljs-emphasis{font-style:italic}.hljs-strong{font-weight:700}.hljs-link{text-decoration:underline}@font-face{font-display:block;font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(/assets/KaTeX_AMS-Regular-BQhdFMY1.woff2) format("woff2"),url(/assets/KaTeX_AMS-Regular-DMm9YOAa.woff) format("woff"),url(/assets/KaTeX_AMS-Regular-DRggAlZN.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Caligraphic-Bold-Dq_IR9rO.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Bold-BEiXGLvX.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Bold-ATXxdsX0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Caligraphic-Regular-Di6jR-x-.woff2) format("woff2"),url(/assets/KaTeX_Caligraphic-Regular-CTRA-rTL.woff) format("woff"),url(/assets/KaTeX_Caligraphic-Regular-wX97UBjC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Fraktur-Bold-CL6g_b3V.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Bold-BsDP51OF.woff) format("woff"),url(/assets/KaTeX_Fraktur-Bold-BdnERNNW.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Fraktur-Regular-CTYiF6lA.woff2) format("woff2"),url(/assets/KaTeX_Fraktur-Regular-Dxdc4cR9.woff) format("woff"),url(/assets/KaTeX_Fraktur-Regular-CB_wures.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(/assets/KaTeX_Main-Bold-Cx986IdX.woff2) format("woff2"),url(/assets/KaTeX_Main-Bold-Jm3AIy58.woff) format("woff"),url(/assets/KaTeX_Main-Bold-waoOVXN0.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Main-BoldItalic-DxDJ3AOS.woff2) format("woff2"),url(/assets/KaTeX_Main-BoldItalic-SpSLRI95.woff) format("woff"),url(/assets/KaTeX_Main-BoldItalic-DzxPMmG6.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Main-Italic-NWA7e6Wa.woff2) format("woff2"),url(/assets/KaTeX_Main-Italic-BMLOBm91.woff) format("woff"),url(/assets/KaTeX_Main-Italic-3WenGoN9.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Main-Regular-B22Nviop.woff2) format("woff2"),url(/assets/KaTeX_Main-Regular-Dr94JaBh.woff) format("woff"),url(/assets/KaTeX_Main-Regular-ypZvNtVU.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(/assets/KaTeX_Math-BoldItalic-CZnvNsCZ.woff2) format("woff2"),url(/assets/KaTeX_Math-BoldItalic-iY-2wyZ7.woff) format("woff"),url(/assets/KaTeX_Math-BoldItalic-B3XSjfu4.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(/assets/KaTeX_Math-Italic-t53AETM-.woff2) format("woff2"),url(/assets/KaTeX_Math-Italic-DA0__PXp.woff) format("woff"),url(/assets/KaTeX_Math-Italic-flOr_0UB.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:700;src:url(/assets/KaTeX_SansSerif-Bold-D1sUS0GD.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Bold-DbIhKOiC.woff) format("woff"),url(/assets/KaTeX_SansSerif-Bold-CFMepnvq.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:italic;font-weight:400;src:url(/assets/KaTeX_SansSerif-Italic-C3H0VqGB.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Italic-DN2j7dab.woff) format("woff"),url(/assets/KaTeX_SansSerif-Italic-YYjJ1zSn.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_SansSerif;font-style:normal;font-weight:400;src:url(/assets/KaTeX_SansSerif-Regular-DDBCnlJ7.woff2) format("woff2"),url(/assets/KaTeX_SansSerif-Regular-CS6fqUqJ.woff) format("woff"),url(/assets/KaTeX_SansSerif-Regular-BNo7hRIc.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Script-Regular-D3wIWfF6.woff2) format("woff2"),url(/assets/KaTeX_Script-Regular-D5yQViql.woff) format("woff"),url(/assets/KaTeX_Script-Regular-C5JkGWo-.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size1-Regular-mCD8mA8B.woff2) format("woff2"),url(/assets/KaTeX_Size1-Regular-C195tn64.woff) format("woff"),url(/assets/KaTeX_Size1-Regular-Dbsnue_I.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size2-Regular-Dy4dx90m.woff2) format("woff2"),url(/assets/KaTeX_Size2-Regular-oD1tc_U0.woff) format("woff"),url(/assets/KaTeX_Size2-Regular-B7gKUWhC.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(data:font/woff2;base64,d09GMgABAAAAAA4oAA4AAAAAHbQAAA3TAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmAAgRQIDgmcDBEICo1oijYBNgIkA14LMgAEIAWJAAeBHAyBHBvbGiMRdnO0IkRRkiYDgr9KsJ1NUAf2kILNxgUmgqIgq1P89vcbIcmsQbRps3vCcXdYOKSWEPEKgZgQkprQQsxIXUgq0DqpGKmIvrgkeVGtEQD9DzAO29fM9jYhxZEsL2FeURH2JN4MIcTdO049NCVdxQ/w9NrSYFEBKTDKpLKfNkCGDc1RwjZLQcm3vqJ2UW9Xfa3tgAHz6ivp6vgC2yD4/6352ndnN0X0TL7seypkjZlMsjmZnf0Mm5Q+JykRWQBKCVCVPbARPXWyQtb5VgLB6Biq7/Uixcj2WGqdI8tGSgkuRG+t910GKP2D7AQH0DB9FMDW/obJZ8giFI3Wg8Cvevz0M+5m0rTh7XDBlvo9Y4vm13EXmfttwI4mBo1EG15fxJhUiCLbiiyCf/ZA6MFAhg3pGIZGdGIVjtPn6UcMk9A/UUr9PhoNsCENw1APAq0gpH73e+M+0ueyHbabc3vkbcdtzcf/fiy+NxQEjf9ud/ELBHAXJ0nk4z+MXH2Ev/kWyV4k7SkvpPc9Qr38F6RPWnM9cN6DJ0AdD1BhtgABtmoRoFCvPsBAumNm6soZG2Gk5GyVTo2sJncSyp0jQTYoR6WDvTwaaEcHsxHfvuWhHA3a6bN7twRKtcGok6NsCi7jYRrM2jExsUFMxMQYuJbMhuWNOumEJy9hi29Dmg5zMp/A5+hhPG19j1vBrq8JTLr8ki5VLPmG/PynJHVul440bxg5xuymHUFPBshC+nA9I1FmwbRBTNHAcik3Oae0cxKoI3MOriM42UrPe51nsaGxJ+WfXubAsP84aabUlQSJ1IiE0iPETLUU4CATgfXSCSpuRFRmCGbO+wSpAnzaeaCYW1VNEysRtuXCEL1kUFUbbtMv3Tilt/1c11jt3Q5bbMa84cpWipp8Elw3MZhOHsOlwwVUQM3lAR35JiFQbaYCRnMF2lxAWoOg2gyoIV4PouX8HytNIfLhqpJtXB4vjiViUI8IJ7bkC4ikkQvKksnOTKICwnqWSZ9YS5f0WCxmpgjbIq7EJcM4aI2nmhLNY2JIUgOjXZFWBHb+x5oh6cwb0Tv1ackHdKi0I9OO2wE9aogIOn540CCCziyhN+IaejtgAONKznHlHyutPrHGwCx9S6B8kfS4Mfi4Eyv7OU730bT1SCBjt834cXsf43zVjPUqqJjgrjeGnBxSG4aYAKFuVbeCfkDIjAqMb6yLNIbCuvXhMH2/+k2vkNpkORhR59N1CkzoOENvneIosjYmuTxlhUzaGEJQ/iWqx4dmwpmKjrwTiTGTCVozNAYqk/zXOndWxuWSmJkQpJw3pK5KX6QrLt5LATMqpmPAQhkhK6PUjzHUn7E0gHE0kPE0iKkolgkUx9SZmVAdDgpffdyJKg3k7VmzYGCwVXGz/tXmkOIp+vcWs+EMuhhvN0h9uhfzWJziBQmCREGSIFmQIkgVpAnSBRmC//6hkLZwaVhwxlrJSOdqlFtOYxlau9F2QN5Y98xmIAsiM1HVp2VFX+DHHGg6Ecjh3vmqtidX3qHI2qycTk/iwxSt5UzTmEP92ZBnEWTk4Mx8Mpl78ZDokxg/KWb+Q0QkvdKVmq3TMW+RXEgrsziSAfNXFMhDc60N5N9jQzjfO0kBKpUZl0ZmwJ41j/B9Hz6wmRaJB84niNmQrzp9eSlQCDDzazGDdVi3P36VZQ+Jy4f9UBNp+3zTjqI4abaFAm+GShVaXlsGdF3FYzZcDI6cori4kMxUECl9IjJZpzkvitAoxKue+90pDMvcKRxLl53TmOKCmV/xRolNKSqqUxc6LStOETmFOiLZZptlZepcKiAzteG8PEdpnQpbOMNcMsR4RR2Bs0cKFEvSmIjAFcnarqwUL4lDhHmnVkwu1IwshbiCcgvOheZuYyOteufZZwlcTlLgnZ3o/WcYdzZHW/WGaqaVfmTZ1aWCceJjkbZqsfbkOtcFlUZM/jy+hXHDbaUobWqqXaeWobbLO99yG5N3U4wxco0rQGGcOLASFMXeJoham8M+/x6O2WywK2l4HGbq1CoUyC/IZikQhdq3SiuNrvAEj0AVu9x2x3lp/xWzahaxidezFVtdcb5uEnzyl0ZmYiuKI0exvCd4Xc9CV1KB0db00z92wDPde0kukbvZIWN6jUWFTmPIC/Y4UPCm8UfDTFZpZNon1qLFTkBhxzB+FjQRA2Q/YRJT8pQigslMaUpFyAG8TMlXigiqmAZX4xgijKjRlGpLE0GdplRfCaJo0JQaSxNBk6ZmMzcya0FmrcisDdn0Q3HI2sWSppYigmlM1XT/kLQZSNpMJG0WkjYbSZuDpM1F0uYhFc1HxU4m1QJjDK6iL0S5uSj5rgXc3RejEigtcRBtqYPQsiTskmO5vosV+q4VGIKbOkDg0jtRrq+Em1YloaTFar3EGr1EUC8R0kus1Uus00usL97ABr2BjXoDm/QGNhuWtMVBKOwg/i78lT7hBsAvDmwHc/ao3vmUbBmhjeYySZNWvGkfZAgISDSaDo1SVpzGDsAEkF8B+gEapViUoZgUWXcRIGFZNm6gWbAKk0bp0k1MHG9fLYtV4iS2SmLEQFARzRcnf9PUS0LVn05/J9MiRRBU3v2IrvW974v4N00L7ZMk0wXP1409CHo/an8zTRHD3eSJ6m8D4YMkZNl3M79sqeuAsr/m3f+8/yl7A50aiAEJgeBeMWzu7ui9UfUBCe2TIqZIoOd/3/udRBOQidQZUERzb2/VwZN1H/Sju82ew2H2Wfr6qvfVf3hqwDvAIpkQVFy4B9Pe9e4/XvPeceu7h3dvO56iJPf0+A6cqA2ip18ER+iFgggiuOkvj24bby0N9j2UHIkgqIt+sVgfodC4YghLSMjSZbH0VR/6dMDrYJeKHilKTemt6v6kvzvn3/RrdWtr0GoN/xL+Sex/cPYLUpepx9cz/D46UPU5KXgAQa+NDps1v6J3xP1i2HtaDB0M9aX2deA7SYff//+gUCovMmIK/qfsFcOk+4Y5ZN97XlG6zebqtMbKgeRFi51vnxTQYBUik2rS/Cn6PC8ADR8FGxsRPB82dzfND90gIcshOcYUkfjherBz53odpm6TP8txlwOZ71xmfHHOvq053qFF/MRlS3jP0ELudrf2OeN8DHvp6ZceLe8qKYvWz/7yp0u4dKPfli3CYq0O13Ih71mylJ80tOi10On8wi+F4+LWgDPeJ30msSQt9/vkmHq9/Lvo2b461mP801v3W4xTcs6CbvF9UDdrSt+A8OUbpSh55qAUFXWznBBfdeJ8a4d7ugT5tvxUza3h9m4H7ptTqiG4z0g5dc0X29OcGlhpGFMpQo9ytTS+NViZpNdvU4kWx+LKxNY10kQ1yqGXrhe4/1nvP7E+nd5A92TtaRplbHSqoIdOqtRWti+fkB5/n1+/VvCmz12pG1kpQWsfi1ftlBobm0bpngs16CHkbIwdLnParxtTV3QYRlfJ0KFskH7pdN/YDn+yRuSd7sNH3aO0DYPggk6uWuXrfOc+fa3VTxFVvKaNxHsiHmsXyCLIE5yuOeN3/Jdf8HBL/5M6shjyhxHx9BjB1O0+4NLOnjLLSxwO7ukN4jMbOIcD879KLSi6Pk61Oqm2377n8079PXEEQ7cy7OKEC9nbpet118fxweTafpt69x/Bt8UqGzNQt7aelpc44dn5cqhwf71+qKp/Zf/+a0zcizOUWpl/iBcSXip0pplkatCchoH5c5aUM8I7/dWxAej8WicPL1URFZ9BDJelUwEwTkGqUhgSlydVes95YdXvhh9Gfz/aeFWvgVb4tuLbcv4+wLdutVZv/cUonwBD/6eDlE0aSiKK/uoH3+J1wDE/jMVqY2ysGufN84oIXB0sPzy8ollX/LegY74DgJXJR57sn+VGza0x3DnuIgABFM15LmajjjsNlYj+JEZGbuRYcAMOWxFkPN2w6Wd46xo4gVWQR/X4lyI/R6K/YK0110GzudPRW7Y+UOBGTfNNzHeYT0fiH0taunBpq9HEW8OKSaBGj21L0MqenEmNRWBAWDWAk4CpNoEZJ2tTaPFgbQYj8HxtFilErs3BTRwT8uO1NXQaWfIotchmPkAF5mMBAliEmZiOGVgCG9LgRzpscMAOOwowlT3JhusdazXGSC/hxR3UlmWVwWHpOIKheqONvjyhSiTHIkVUco5bnji8m//zL7PKaT1Vl5I6UE609f+gkr6MZKVyKc7zJRmCahLsdlyA5fdQkRSan9LgnnLEyGSkaKJCJog0wAgvepWBt80+1yKln1bMVtCljfNWDueKLsWwaEbBSfSPTEmVRsUcYYMnEjcjeyCZzBXK9E9BYBXLKjOSpUDR+nEV3TFSUdQaz+ot98QxgXwx0GQ+EEUAKB2qZPkQQ0GqFD8UPFMqyaCHM24BZmSGic9EYMagKizOw9Hz50DMrDLrqqLkTAhplMictiCAx5S3BIUQdeJeLnBy2CNtMfz6cV4u8XKoFZQesbf9YZiIERiHjaNodDW6LgcirX/mPnJIkBGDUpTBhSa0EIr38D5hCIszhCM8URGBqImoWjpvpt1ebu/v3Gl3qJfMnNM+9V+kiRFyROTPHQWOcs1dNW94/ukKMPZBvDi55i5CttdeJz84DLngLqjcdwEZ87bFFR8CIG35OAkDVN6VRDZ7aq67NteYqZ2lpT8oYB2CytoBd6VuAx4WgiAsnuj3WohG+LugzXiQRDeM3XYXlULv4dp5VFYC) format("woff2"),url(/assets/KaTeX_Size3-Regular-CTq5MqoE.woff) format("woff"),url(/assets/KaTeX_Size3-Regular-DgpXs0kz.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Size4-Regular-Dl5lxZxV.woff2) format("woff2"),url(/assets/KaTeX_Size4-Regular-BF-4gkZK.woff) format("woff"),url(/assets/KaTeX_Size4-Regular-DWFBv043.ttf) format("truetype")}@font-face{font-display:block;font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(/assets/KaTeX_Typewriter-Regular-CO6r4hn1.woff2) format("woff2"),url(/assets/KaTeX_Typewriter-Regular-C0xS9mPB.woff) format("woff"),url(/assets/KaTeX_Typewriter-Regular-D3Ib7_Hf.ttf) format("truetype")}.katex{font: 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;position:relative;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.45"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1px;overflow:hidden;padding:0;position:absolute;width:1px}.katex .katex-html>.newline{display:block}.katex .base{position:relative;white-space:nowrap;width:-webkit-min-content;width:-moz-min-content;width:min-content}.katex .base,.katex .strut{display:inline-block}.katex .textbf{font-weight:700}.katex .textit{font-style:italic}.katex .textrm{font-family:KaTeX_Main}.katex .textsf{font-family:KaTeX_SansSerif}.katex .texttt{font-family:KaTeX_Typewriter}.katex .mathnormal{font-family:KaTeX_Math;font-style:italic}.katex .mathit{font-family:KaTeX_Main;font-style:italic}.katex .mathrm{font-style:normal}.katex .mathbf{font-family:KaTeX_Main;font-weight:700}.katex .boldsymbol{font-family:KaTeX_Math;font-style:italic;font-weight:700}.katex .amsrm,.katex .mathbb,.katex .textbb{font-family:KaTeX_AMS}.katex .mathcal{font-family:KaTeX_Caligraphic}.katex .mathfrak,.katex .textfrak{font-family:KaTeX_Fraktur}.katex .mathboldfrak,.katex .textboldfrak{font-family:KaTeX_Fraktur;font-weight:700}.katex .mathtt{font-family:KaTeX_Typewriter}.katex .mathscr,.katex .textscr{font-family:KaTeX_Script}.katex .mathsf,.katex .textsf{font-family:KaTeX_SansSerif}.katex .mathboldsf,.katex .textboldsf{font-family:KaTeX_SansSerif;font-weight:700}.katex .mathitsf,.katex .mathsfit,.katex .textitsf{font-family:KaTeX_SansSerif;font-style:italic}.katex .mainrm{font-family:KaTeX_Main;font-style:normal}.katex .vlist-t{border-collapse:collapse;display:inline-table;table-layout:fixed}.katex .vlist-r{display:table-row}.katex .vlist{display:table-cell;position:relative;vertical-align:bottom}.katex .vlist>span{display:block;height:0;position:relative}.katex .vlist>span>span{display:inline-block}.katex .vlist>span>.pstrut{overflow:hidden;width:0}.katex .vlist-t2{margin-right:-2px}.katex .vlist-s{display:table-cell;font-size:1px;min-width:2px;vertical-align:bottom;width:2px}.katex .vbox{align-items:baseline;display:inline-flex;flex-direction:column}.katex .hbox{width:100%}.katex .hbox,.katex .thinbox{display:inline-flex;flex-direction:row}.katex .thinbox{max-width:0;width:0}.katex .msupsub{text-align:left}.katex .mfrac>span>span{text-align:center}.katex .mfrac .frac-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline,.katex .hline,.katex .mfrac .frac-line,.katex .overline .overline-line,.katex .rule,.katex .underline .underline-line{min-height:1px}.katex .mspace{display:inline-block}.katex .smash{display:inline;line-height:0}.katex .clap,.katex .llap,.katex .rlap{position:relative;width:0}.katex .clap>.inner,.katex .llap>.inner,.katex .rlap>.inner{position:absolute}.katex .clap>.fix,.katex .llap>.fix,.katex .rlap>.fix{display:inline-block}.katex .llap>.inner{right:0}.katex .clap>.inner,.katex .rlap>.inner{left:0}.katex .clap>.inner>span{margin-left:-50%;margin-right:50%}.katex .rule{border:0 solid;display:inline-block;position:relative}.katex .hline,.katex .overline .overline-line,.katex .underline .underline-line{border-bottom-style:solid;display:inline-block;width:100%}.katex .hdashline{border-bottom-style:dashed;display:inline-block;width:100%}.katex .sqrt>.root{margin-left:.2777777778em;margin-right:-.5555555556em}.katex .fontsize-ensurer.reset-size1.size1,.katex .sizing.reset-size1.size1{font-size:1em}.katex .fontsize-ensurer.reset-size1.size2,.katex .sizing.reset-size1.size2{font-size:1.2em}.katex .fontsize-ensurer.reset-size1.size3,.katex .sizing.reset-size1.size3{font-size:1.4em}.katex .fontsize-ensurer.reset-size1.size4,.katex .sizing.reset-size1.size4{font-size:1.6em}.katex .fontsize-ensurer.reset-size1.size5,.katex .sizing.reset-size1.size5{font-size:1.8em}.katex .fontsize-ensurer.reset-size1.size6,.katex .sizing.reset-size1.size6{font-size:2em}.katex .fontsize-ensurer.reset-size1.size7,.katex .sizing.reset-size1.size7{font-size:2.4em}.katex .fontsize-ensurer.reset-size1.size8,.katex .sizing.reset-size1.size8{font-size:2.88em}.katex .fontsize-ensurer.reset-size1.size9,.katex .sizing.reset-size1.size9{font-size:3.456em}.katex .fontsize-ensurer.reset-size1.size10,.katex .sizing.reset-size1.size10{font-size:4.148em}.katex .fontsize-ensurer.reset-size1.size11,.katex .sizing.reset-size1.size11{font-size:4.976em}.katex .fontsize-ensurer.reset-size2.size1,.katex .sizing.reset-size2.size1{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size2.size2,.katex .sizing.reset-size2.size2{font-size:1em}.katex .fontsize-ensurer.reset-size2.size3,.katex .sizing.reset-size2.size3{font-size:1.1666666667em}.katex .fontsize-ensurer.reset-size2.size4,.katex .sizing.reset-size2.size4{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size2.size5,.katex .sizing.reset-size2.size5{font-size:1.5em}.katex .fontsize-ensurer.reset-size2.size6,.katex .sizing.reset-size2.size6{font-size:1.6666666667em}.katex .fontsize-ensurer.reset-size2.size7,.katex .sizing.reset-size2.size7{font-size:2em}.katex .fontsize-ensurer.reset-size2.size8,.katex .sizing.reset-size2.size8{font-size:2.4em}.katex .fontsize-ensurer.reset-size2.size9,.katex .sizing.reset-size2.size9{font-size:2.88em}.katex .fontsize-ensurer.reset-size2.size10,.katex .sizing.reset-size2.size10{font-size:3.4566666667em}.katex .fontsize-ensurer.reset-size2.size11,.katex .sizing.reset-size2.size11{font-size:4.1466666667em}.katex .fontsize-ensurer.reset-size3.size1,.katex .sizing.reset-size3.size1{font-size:.7142857143em}.katex .fontsize-ensurer.reset-size3.size2,.katex .sizing.reset-size3.size2{font-size:.8571428571em}.katex .fontsize-ensurer.reset-size3.size3,.katex .sizing.reset-size3.size3{font-size:1em}.katex .fontsize-ensurer.reset-size3.size4,.katex .sizing.reset-size3.size4{font-size:1.1428571429em}.katex .fontsize-ensurer.reset-size3.size5,.katex .sizing.reset-size3.size5{font-size:1.2857142857em}.katex .fontsize-ensurer.reset-size3.size6,.katex .sizing.reset-size3.size6{font-size:1.4285714286em}.katex .fontsize-ensurer.reset-size3.size7,.katex .sizing.reset-size3.size7{font-size:1.7142857143em}.katex .fontsize-ensurer.reset-size3.size8,.katex .sizing.reset-size3.size8{font-size:2.0571428571em}.katex .fontsize-ensurer.reset-size3.size9,.katex .sizing.reset-size3.size9{font-size:2.4685714286em}.katex .fontsize-ensurer.reset-size3.size10,.katex .sizing.reset-size3.size10{font-size:2.9628571429em}.katex .fontsize-ensurer.reset-size3.size11,.katex .sizing.reset-size3.size11{font-size:3.5542857143em}.katex .fontsize-ensurer.reset-size4.size1,.katex .sizing.reset-size4.size1{font-size:.625em}.katex .fontsize-ensurer.reset-size4.size2,.katex .sizing.reset-size4.size2{font-size:.75em}.katex .fontsize-ensurer.reset-size4.size3,.katex .sizing.reset-size4.size3{font-size:.875em}.katex .fontsize-ensurer.reset-size4.size4,.katex .sizing.reset-size4.size4{font-size:1em}.katex .fontsize-ensurer.reset-size4.size5,.katex .sizing.reset-size4.size5{font-size:1.125em}.katex .fontsize-ensurer.reset-size4.size6,.katex .sizing.reset-size4.size6{font-size:1.25em}.katex .fontsize-ensurer.reset-size4.size7,.katex .sizing.reset-size4.size7{font-size:1.5em}.katex .fontsize-ensurer.reset-size4.size8,.katex .sizing.reset-size4.size8{font-size:1.8em}.katex .fontsize-ensurer.reset-size4.size9,.katex .sizing.reset-size4.size9{font-size:2.16em}.katex .fontsize-ensurer.reset-size4.size10,.katex .sizing.reset-size4.size10{font-size:2.5925em}.katex .fontsize-ensurer.reset-size4.size11,.katex .sizing.reset-size4.size11{font-size:3.11em}.katex .fontsize-ensurer.reset-size5.size1,.katex .sizing.reset-size5.size1{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size5.size2,.katex .sizing.reset-size5.size2{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size5.size3,.katex .sizing.reset-size5.size3{font-size:.7777777778em}.katex .fontsize-ensurer.reset-size5.size4,.katex .sizing.reset-size5.size4{font-size:.8888888889em}.katex .fontsize-ensurer.reset-size5.size5,.katex .sizing.reset-size5.size5{font-size:1em}.katex .fontsize-ensurer.reset-size5.size6,.katex .sizing.reset-size5.size6{font-size:1.1111111111em}.katex .fontsize-ensurer.reset-size5.size7,.katex .sizing.reset-size5.size7{font-size:1.3333333333em}.katex .fontsize-ensurer.reset-size5.size8,.katex .sizing.reset-size5.size8{font-size:1.6em}.katex .fontsize-ensurer.reset-size5.size9,.katex .sizing.reset-size5.size9{font-size:1.92em}.katex .fontsize-ensurer.reset-size5.size10,.katex .sizing.reset-size5.size10{font-size:2.3044444444em}.katex .fontsize-ensurer.reset-size5.size11,.katex .sizing.reset-size5.size11{font-size:2.7644444444em}.katex .fontsize-ensurer.reset-size6.size1,.katex .sizing.reset-size6.size1{font-size:.5em}.katex .fontsize-ensurer.reset-size6.size2,.katex .sizing.reset-size6.size2{font-size:.6em}.katex .fontsize-ensurer.reset-size6.size3,.katex .sizing.reset-size6.size3{font-size:.7em}.katex .fontsize-ensurer.reset-size6.size4,.katex .sizing.reset-size6.size4{font-size:.8em}.katex .fontsize-ensurer.reset-size6.size5,.katex .sizing.reset-size6.size5{font-size:.9em}.katex .fontsize-ensurer.reset-size6.size6,.katex .sizing.reset-size6.size6{font-size:1em}.katex .fontsize-ensurer.reset-size6.size7,.katex .sizing.reset-size6.size7{font-size:1.2em}.katex .fontsize-ensurer.reset-size6.size8,.katex .sizing.reset-size6.size8{font-size:1.44em}.katex .fontsize-ensurer.reset-size6.size9,.katex .sizing.reset-size6.size9{font-size:1.728em}.katex .fontsize-ensurer.reset-size6.size10,.katex .sizing.reset-size6.size10{font-size:2.074em}.katex .fontsize-ensurer.reset-size6.size11,.katex .sizing.reset-size6.size11{font-size:2.488em}.katex .fontsize-ensurer.reset-size7.size1,.katex .sizing.reset-size7.size1{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size7.size2,.katex .sizing.reset-size7.size2{font-size:.5em}.katex .fontsize-ensurer.reset-size7.size3,.katex .sizing.reset-size7.size3{font-size:.5833333333em}.katex .fontsize-ensurer.reset-size7.size4,.katex .sizing.reset-size7.size4{font-size:.6666666667em}.katex .fontsize-ensurer.reset-size7.size5,.katex .sizing.reset-size7.size5{font-size:.75em}.katex .fontsize-ensurer.reset-size7.size6,.katex .sizing.reset-size7.size6{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size7.size7,.katex .sizing.reset-size7.size7{font-size:1em}.katex .fontsize-ensurer.reset-size7.size8,.katex .sizing.reset-size7.size8{font-size:1.2em}.katex .fontsize-ensurer.reset-size7.size9,.katex .sizing.reset-size7.size9{font-size:1.44em}.katex .fontsize-ensurer.reset-size7.size10,.katex .sizing.reset-size7.size10{font-size:1.7283333333em}.katex .fontsize-ensurer.reset-size7.size11,.katex .sizing.reset-size7.size11{font-size:2.0733333333em}.katex .fontsize-ensurer.reset-size8.size1,.katex .sizing.reset-size8.size1{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size8.size2,.katex .sizing.reset-size8.size2{font-size:.4166666667em}.katex .fontsize-ensurer.reset-size8.size3,.katex .sizing.reset-size8.size3{font-size:.4861111111em}.katex .fontsize-ensurer.reset-size8.size4,.katex .sizing.reset-size8.size4{font-size:.5555555556em}.katex .fontsize-ensurer.reset-size8.size5,.katex .sizing.reset-size8.size5{font-size:.625em}.katex .fontsize-ensurer.reset-size8.size6,.katex .sizing.reset-size8.size6{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size8.size7,.katex .sizing.reset-size8.size7{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size8.size8,.katex .sizing.reset-size8.size8{font-size:1em}.katex .fontsize-ensurer.reset-size8.size9,.katex .sizing.reset-size8.size9{font-size:1.2em}.katex .fontsize-ensurer.reset-size8.size10,.katex .sizing.reset-size8.size10{font-size:1.4402777778em}.katex .fontsize-ensurer.reset-size8.size11,.katex .sizing.reset-size8.size11{font-size:1.7277777778em}.katex .fontsize-ensurer.reset-size9.size1,.katex .sizing.reset-size9.size1{font-size:.2893518519em}.katex .fontsize-ensurer.reset-size9.size2,.katex .sizing.reset-size9.size2{font-size:.3472222222em}.katex .fontsize-ensurer.reset-size9.size3,.katex .sizing.reset-size9.size3{font-size:.4050925926em}.katex .fontsize-ensurer.reset-size9.size4,.katex .sizing.reset-size9.size4{font-size:.462962963em}.katex .fontsize-ensurer.reset-size9.size5,.katex .sizing.reset-size9.size5{font-size:.5208333333em}.katex .fontsize-ensurer.reset-size9.size6,.katex .sizing.reset-size9.size6{font-size:.5787037037em}.katex .fontsize-ensurer.reset-size9.size7,.katex .sizing.reset-size9.size7{font-size:.6944444444em}.katex .fontsize-ensurer.reset-size9.size8,.katex .sizing.reset-size9.size8{font-size:.8333333333em}.katex .fontsize-ensurer.reset-size9.size9,.katex .sizing.reset-size9.size9{font-size:1em}.katex .fontsize-ensurer.reset-size9.size10,.katex .sizing.reset-size9.size10{font-size:1.2002314815em}.katex .fontsize-ensurer.reset-size9.size11,.katex .sizing.reset-size9.size11{font-size:1.4398148148em}.katex .fontsize-ensurer.reset-size10.size1,.katex .sizing.reset-size10.size1{font-size:.2410800386em}.katex .fontsize-ensurer.reset-size10.size2,.katex .sizing.reset-size10.size2{font-size:.2892960463em}.katex .fontsize-ensurer.reset-size10.size3,.katex .sizing.reset-size10.size3{font-size:.337512054em}.katex .fontsize-ensurer.reset-size10.size4,.katex .sizing.reset-size10.size4{font-size:.3857280617em}.katex .fontsize-ensurer.reset-size10.size5,.katex .sizing.reset-size10.size5{font-size:.4339440694em}.katex .fontsize-ensurer.reset-size10.size6,.katex .sizing.reset-size10.size6{font-size:.4821600771em}.katex .fontsize-ensurer.reset-size10.size7,.katex .sizing.reset-size10.size7{font-size:.5785920926em}.katex .fontsize-ensurer.reset-size10.size8,.katex .sizing.reset-size10.size8{font-size:.6943105111em}.katex .fontsize-ensurer.reset-size10.size9,.katex .sizing.reset-size10.size9{font-size:.8331726133em}.katex .fontsize-ensurer.reset-size10.size10,.katex .sizing.reset-size10.size10{font-size:1em}.katex .fontsize-ensurer.reset-size10.size11,.katex .sizing.reset-size10.size11{font-size:1.1996142719em}.katex .fontsize-ensurer.reset-size11.size1,.katex .sizing.reset-size11.size1{font-size:.2009646302em}.katex .fontsize-ensurer.reset-size11.size2,.katex .sizing.reset-size11.size2{font-size:.2411575563em}.katex .fontsize-ensurer.reset-size11.size3,.katex .sizing.reset-size11.size3{font-size:.2813504823em}.katex .fontsize-ensurer.reset-size11.size4,.katex .sizing.reset-size11.size4{font-size:.3215434084em}.katex .fontsize-ensurer.reset-size11.size5,.katex .sizing.reset-size11.size5{font-size:.3617363344em}.katex .fontsize-ensurer.reset-size11.size6,.katex .sizing.reset-size11.size6{font-size:.4019292605em}.katex .fontsize-ensurer.reset-size11.size7,.katex .sizing.reset-size11.size7{font-size:.4823151125em}.katex .fontsize-ensurer.reset-size11.size8,.katex .sizing.reset-size11.size8{font-size:.578778135em}.katex .fontsize-ensurer.reset-size11.size9,.katex .sizing.reset-size11.size9{font-size:.6945337621em}.katex .fontsize-ensurer.reset-size11.size10,.katex .sizing.reset-size11.size10{font-size:.8336012862em}.katex .fontsize-ensurer.reset-size11.size11,.katex .sizing.reset-size11.size11{font-size:1em}.katex .delimsizing.size1{font-family:KaTeX_Size1}.katex .delimsizing.size2{font-family:KaTeX_Size2}.katex .delimsizing.size3{font-family:KaTeX_Size3}.katex .delimsizing.size4{font-family:KaTeX_Size4}.katex .delimsizing.mult .delim-size1>span{font-family:KaTeX_Size1}.katex .delimsizing.mult .delim-size4>span{font-family:KaTeX_Size4}.katex .nulldelimiter{display:inline-block;width:.12em}.katex .delimcenter,.katex .op-symbol{position:relative}.katex .op-symbol.small-op{font-family:KaTeX_Size1}.katex .op-symbol.large-op{font-family:KaTeX_Size2}.katex .accent>.vlist-t,.katex .op-limits>.vlist-t{text-align:center}.katex .accent .accent-body{position:relative}.katex .accent .accent-body:not(.accent-full){width:0}.katex .overlay{display:block}.katex .mtable .vertical-separator{display:inline-block;min-width:1px}.katex .mtable .arraycolsep{display:inline-block}.katex .mtable .col-align-c>.vlist-t{text-align:center}.katex .mtable .col-align-l>.vlist-t{text-align:left}.katex .mtable .col-align-r>.vlist-t{text-align:right}.katex .svg-align{text-align:left}.katex svg{fill:currentColor;stroke:currentColor;display:block;height:inherit;position:absolute;width:100%}.katex svg path{stroke:none}.katex svg{fill-rule:nonzero;fill-opacity:1;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-dashoffset:0;stroke-opacity:1}.katex img{border-style:none;max-height:none;max-width:none;min-height:0;min-width:0}.katex .stretchy{display:block;overflow:hidden;position:relative;width:100%}.katex .stretchy:after,.katex .stretchy:before{content:""}.katex .hide-tail{overflow:hidden;position:relative;width:100%}.katex .halfarrow-left{left:0;overflow:hidden;position:absolute;width:50.2%}.katex .halfarrow-right{overflow:hidden;position:absolute;right:0;width:50.2%}.katex .brace-left{left:0;overflow:hidden;position:absolute;width:25.1%}.katex .brace-center{left:25%;overflow:hidden;position:absolute;width:50%}.katex .brace-right{overflow:hidden;position:absolute;right:0;width:25.1%}.katex .x-arrow-pad{padding:0 .5em}.katex .cd-arrow-pad{padding:0 .55556em 0 .27778em}.katex .mover,.katex .munder,.katex .x-arrow{text-align:center}.katex .boxpad{padding:0 .3em}.katex .fbox,.katex .fcolorbox{border:.04em solid;box-sizing:border-box}.katex .cancel-pad{padding:0 .2em}.katex .cancel-lap{margin-left:-.2em;margin-right:-.2em}.katex .sout{border-bottom-style:solid;border-bottom-width:.08em}.katex .angl{border-right:.049em solid;border-top:.049em solid;box-sizing:border-box;margin-right:.03889em}.katex .anglpad{padding:0 .03889em}.katex .eqn-num:before{content:"(" counter(katexEqnNo) ")";counter-increment:katexEqnNo}.katex .mml-eqn-num:before{content:"(" counter(mmlEqnNo) ")";counter-increment:mmlEqnNo}.katex .mtr-glue{width:50%}.katex .cd-vert-arrow{display:inline-block;position:relative}.katex .cd-label-left{display:inline-block;position:absolute;right:calc(50% + .3em);text-align:left}.katex .cd-label-right{display:inline-block;left:calc(50% + .3em);position:absolute;text-align:right}.katex-display{display:block;margin:1em 0;text-align:center}.katex-display>.katex{display:block;text-align:center;white-space:nowrap}.katex-display>.katex>.katex-html{display:block;position:relative}.katex-display>.katex>.katex-html>.tag{position:absolute;right:0}.katex-display.leqno>.katex>.katex-html>.tag{left:0;right:auto}.katex-display.fleqn>.katex{padding-left:2em;text-align:left}body{counter-reset:katexEqnNo mmlEqnNo}:root{--gs-primary: #2563eb;--gs-primary-d: #1d4ed8;--gs-primary-soft: #eff5ff;--gs-accent: #7c3aed;--gs-bg: #f5f8fd;--gs-surface: #ffffff;--gs-surface-2: #f8fafc;--gs-text: #0f172a;--gs-text-soft: #334155;--gs-text-muted: #64748b;--gs-border: #e7edf6;--gs-border-strong: #d8e2f0;--gs-warning: #d97706;--gs-success: #059669;--gs-danger: #dc2626;--gs-shadow-sm: 0 1px 2px rgba(15, 23, 42, .06), 0 2px 6px rgba(15, 23, 42, .04);--gs-shadow-md: 0 10px 30px -12px rgba(15, 23, 42, .16), 0 4px 12px rgba(15, 23, 42, .06);--gs-shadow-lg: 0 24px 50px -20px rgba(15, 23, 42, .22), 0 8px 20px rgba(15, 23, 42, .08);--gs-radius: 14px;--accent: #2563eb}*{margin:0;padding:0;box-sizing:border-box}select{color-scheme:light}select option{background:#fff;color:#0f172a}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;background:var(--gs-bg);min-height:100vh;color:var(--gs-text)}.app{max-width:1600px;margin:0 auto;padding:20px}@media (min-width: 1400px){.app{max-width:95%}}@media (min-width: 1800px){.app{max-width:90%}}.header{text-align:center;padding:40px 0;position:relative;z-index:100}.header h1{font-size:2.5rem;font-weight:800;letter-spacing:-.02em;background:linear-gradient(110deg,var(--gs-primary),var(--gs-accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;margin-bottom:10px}.header p{color:var(--gs-text-muted);font-size:1.1rem}.header-content{display:flex;justify-content:space-between;align-items:center}.header-title{text-align:center;flex:1}.header-actions{position:absolute;right:20px;top:50%;transform:translateY(-50%)}.header-home-btn{position:absolute;left:20px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text-soft);font-size:13px;cursor:pointer;transition:all .2s;z-index:2;box-shadow:var(--gs-shadow-sm)}.header-home-btn:hover:not(:disabled){background:var(--gs-primary-soft);color:var(--gs-primary);border-color:#c7d8f7;transform:translateY(calc(-50% - 1px))}.header-home-btn:disabled{opacity:.5;cursor:not-allowed}.loading{text-align:center;padding:40px;color:var(--gs-primary)}.loading-spinner{width:40px;height:40px;border:3px solid rgba(37,99,235,.18);border-top-color:var(--gs-primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto 16px}.loading-small,.empty-state{text-align:center;color:var(--gs-text-muted);padding:40px}.error-message{background:#fef2f2;border:1px solid #fecaca;border-radius:12px;padding:20px;color:var(--gs-danger);text-align:center}.search-section{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;padding:30px;margin-bottom:30px;box-shadow:var(--gs-shadow-sm)}.search-box{display:flex;gap:12px}.search-box input{flex:1;padding:14px 20px;border:1px solid var(--gs-border);border-radius:12px;background:var(--gs-surface-2);color:var(--gs-text);font-size:1rem;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.search-box input::placeholder{color:#94a3b8}.search-box input:focus{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.search-box button{padding:14px 28px;background:var(--gs-primary);border:none;border-radius:12px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s,background .2s,box-shadow .2s;box-shadow:0 8px 20px -8px #2563eb99}.search-box button:hover{transform:translateY(-2px);background:var(--gs-primary-d)}.search-box button:disabled{opacity:.5;cursor:not-allowed;transform:none}.results-section{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;padding:30px;margin-bottom:30px;box-shadow:var(--gs-shadow-sm)}.results-section h2{color:var(--gs-text);margin-bottom:20px;font-size:1.3rem;display:flex;align-items:center;gap:10px}.results-section h2 svg{color:var(--gs-primary)}.code-section{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;padding:30px;margin-bottom:30px;box-shadow:var(--gs-shadow-sm)}.code-section h2{color:var(--gs-text);margin-bottom:20px;font-size:1.4rem}.code-block{background:#0d1117;border:1px solid #1f2733;border-radius:12px;padding:20px;overflow-x:auto;font-family:Fira Code,monospace;font-size:.9rem;line-height:1.6;max-height:400px;overflow-y:auto;color:#e6edf3}.code-block pre{margin:0;white-space:pre-wrap;word-break:break-word}.progress-bar{height:6px;background:#e7edf6;border-radius:3px;margin-bottom:20px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--gs-primary),var(--gs-accent));transition:width .3s}.score-display{text-align:center;padding:24px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:12px;margin-top:20px}.score-display h3{font-size:2rem;color:var(--gs-primary)}.final-score{font-size:1.5rem;margin-top:12px;color:var(--gs-primary)}.score-message{color:var(--gs-text-muted);margin:12px 0 20px}.score-display .reset-btn{background:var(--gs-primary);border:none;color:#fff;font-weight:600}.score-display .reset-btn:hover{background:var(--gs-primary-d)}.reset-btn{padding:10px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text-soft);cursor:pointer;transition:all .2s}.reset-btn:hover{background:var(--gs-surface-2);color:var(--gs-text);border-color:var(--gs-border-strong)}.login-hint{text-align:center;color:var(--gs-text-muted);margin-top:16px;font-size:14px}.login-hint button{background:none;border:none;color:var(--gs-primary);cursor:pointer;font-size:14px;text-decoration:underline}.login-hint button:hover{color:var(--gs-accent)}.user-avatar-btn:disabled,.login-btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.code-layout{display:flex;border-radius:12px;overflow:hidden;border:1px solid #1f2733;height:calc(100vh - 320px);min-height:500px;box-shadow:var(--gs-shadow-md)}.file-sidebar{width:200px;min-width:150px;max-width:400px;background:#1e1e1e;border-right:1px solid rgba(255,255,255,.1);overflow-y:auto;flex-shrink:0;display:flex;flex-direction:column}.file-sidebar::-webkit-scrollbar{width:6px}.file-sidebar::-webkit-scrollbar-track{background:transparent}.file-sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:3px}.sidebar-section{border-bottom:1px solid rgba(255,255,255,.1)}.sidebar-section:last-child{border-bottom:none;flex:1;display:flex;flex-direction:column;min-height:0}.sidebar-title{padding:12px;font-size:11px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px;background:#0003;position:sticky;top:0;z-index:1;cursor:pointer;display:flex;align-items:center;gap:6px;-webkit-user-select:none;user-select:none;transition:background .2s}.sidebar-title:hover{background:#0006}.collapse-icon{font-size:10px;color:#666}.file-tree{flex:1;overflow-y:auto;min-height:0}.file-tree::-webkit-scrollbar{width:6px}.file-tree::-webkit-scrollbar-track{background:transparent}.file-tree::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}.file-item{display:flex;align-items:center;gap:8px;padding:10px 12px;cursor:pointer;transition:all .2s;border-left:3px solid transparent}.file-item:hover{background:#ffffff0d}.file-item.active{background:#60a5fa24;border-left-color:#60a5fa}.file-icon{font-size:14px}.file-name{font-size:13px;color:#ccc;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-item.active .file-name{color:#60a5fa}.file-item.core{background:#7c3aed14}.file-item.core .file-icon{color:#fbbf24}.file-item.more{color:#666;font-size:12px;font-style:italic;cursor:default;padding:8px 12px}.file-item.more:hover{background:transparent}.file-item.folder{color:#ccc}.file-item.folder:hover{background:#ffffff0d}.file-item.folder .file-name{font-weight:500}.loading-indicator{color:#60a5fa;font-size:12px;margin-left:auto;animation:pulse 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.code-editor-wrapper{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0}.editor-header{display:flex;justify-content:space-between;align-items:center;background:#252526;color:#888;font-size:12px;padding:8px 16px;border-bottom:1px solid rgba(255,255,255,.1)}.code-main{flex:1;display:flex;flex-direction:column;min-width:0;overflow:hidden}.editor-container{flex:1;min-height:0;position:relative}.editor-container>div{position:absolute;top:0;left:0;right:0;bottom:0}.editor-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#1e1e1e;color:#888}.editor-loading .loading-spinner{margin-bottom:16px}.editor-actions{display:flex;gap:8px}.explain-btn{padding:6px 14px;background:linear-gradient(90deg,#2563eb,#7c3aed);border:none;border-radius:6px;color:#fff;font-size:12px;cursor:pointer;transition:all .2s}.explain-btn:hover{opacity:.92;transform:scale(1.02)}.explain-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}.file-summary{background:#7c3aed26;border-left:3px solid #7c3aed;padding:12px 16px;font-size:14px;color:#e0e0e0;line-height:1.6}.file-explained{color:#34d399;font-size:12px;margin-left:auto}.code-explanation-panel{background:#1e1e1e;border-top:1px solid rgba(255,255,255,.1);padding:16px;max-height:250px;overflow-y:auto}.code-explanation-panel h4{color:#60a5fa;margin-bottom:12px;font-size:14px}.explanation-section{background:#ffffff0a;border-radius:8px;padding:12px;margin-bottom:10px}.explanation-section .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.explanation-section .section-title{color:#a78bfa;font-weight:600;font-size:13px}.explanation-section .section-lines{color:#888;font-size:12px}.explanation-section p{color:#bbb;font-size:13px;line-height:1.6;margin:0}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{color:var(--gs-text);font-size:1.4rem;display:flex;align-items:center;gap:12px}.section-header h2 svg{color:var(--gs-primary)}.repo-stars-small{font-size:.9rem;color:#d97706;font-weight:400}.repo-description{color:var(--gs-text-muted);margin-bottom:16px;line-height:1.6}@media (min-width: 1400px){.code-layout{height:calc(100vh - 300px)}.file-sidebar{width:280px}}@media (min-width: 1800px){.code-layout{height:calc(100vh - 280px)}.file-sidebar{width:320px}}.code-layout.fullscreen{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;height:100vh!important;max-height:none!important;border-radius:0;background:#0d1117}.code-layout.fullscreen .file-sidebar,.code-layout.fullscreen .code-main,.code-layout.fullscreen .code-editor-wrapper,.code-layout.fullscreen .chat-sidebar{height:100%}.code-layout.fullscreen .editor-container{height:calc(100% - 50px)}.code-layout.fullscreen .notebook-view{height:calc(100% - 90px)}.fullscreen-btn{position:absolute;bottom:16px;right:16px;width:36px;height:36px;background:#0009;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;z-index:10}.fullscreen-btn:hover{background:#60a5fa4d;border-color:#60a5fa}.resize-handle{width:4px;background:transparent;cursor:col-resize;flex-shrink:0;transition:background .2s;position:relative}.resize-handle:hover,.resize-handle.dragging{background:#60a5fa99}.resize-handle:before{content:"";position:absolute;top:0;bottom:0;width:12px;left:-4px}.resize-handle.left,.resize-handle.right{margin-left:-2px;margin-right:-2px}.repo-list{display:flex;flex-direction:column;gap:12px}.repo-card{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;padding:20px;cursor:pointer;transition:all .25s;box-shadow:var(--gs-shadow-sm)}.repo-card:hover{border-color:#c7d8f7;box-shadow:var(--gs-shadow-md);transform:translate(6px)}.repo-header{display:flex;align-items:center;gap:12px;margin-bottom:10px}.repo-index{background:linear-gradient(110deg,var(--gs-primary),var(--gs-accent));color:#fff;width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:600;flex-shrink:0}.repo-header h3{flex:1;color:var(--gs-text);font-size:1.1rem}.repo-stars{color:#d97706;font-size:.9rem}.repo-desc{color:var(--gs-text-muted);font-size:.9rem;line-height:1.5;margin-bottom:12px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.repo-meta{display:flex;gap:16px;font-size:.8rem}.repo-lang{background:#f1ecfe;color:#7c3aed;padding:4px 10px;border-radius:12px;font-weight:500}.repo-updated{color:#94a3b8}.quiz-section{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;padding:30px;box-shadow:var(--gs-shadow-sm)}.quiz-section h2{color:var(--gs-text);margin-bottom:20px;font-size:1.4rem}.quiz-generate-card{text-align:center;padding:48px 32px;background:linear-gradient(135deg,#f3f0ff,#eef5ff);border:1px solid #e0e7ff;border-radius:16px;position:relative;overflow:hidden}.quiz-generate-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 20%,rgba(124,58,237,.08),transparent 50%),radial-gradient(circle at 80% 80%,rgba(37,99,235,.08),transparent 50%);pointer-events:none}.quiz-generate-icon{display:inline-flex;align-items:center;justify-content:center;width:72px;height:72px;margin-bottom:20px;background:linear-gradient(135deg,#7c3aed,#2563eb);border-radius:50%;color:#fff;box-shadow:0 12px 28px -8px #7c3aed73;animation:quiz-icon-float 3s ease-in-out infinite;position:relative;z-index:1}@keyframes quiz-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.quiz-generate-card h2{background:linear-gradient(90deg,#2563eb,#7c3aed);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;font-size:1.6rem!important;margin:0 0 16px!important;position:relative;z-index:1}.quiz-generate-desc{color:var(--gs-text-soft);font-size:15px;line-height:1.7;max-width:520px;margin:0 auto 12px;position:relative;z-index:1}.quiz-generate-hint{color:var(--gs-text-muted);font-size:13px;margin:0 auto 24px;max-width:520px;position:relative;z-index:1}.quiz-generate-btn{display:inline-flex;align-items:center;gap:10px;padding:12px 28px;background:linear-gradient(90deg,#7c3aed,#2563eb);color:#fff;border:none;border-radius:10px;font-size:15px;font-weight:600;cursor:pointer;transition:all .25s;box-shadow:0 10px 24px -8px #7c3aed80;position:relative;z-index:1}.quiz-generate-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 14px 30px -8px #7c3aed99}.quiz-generate-btn:disabled{opacity:.75;cursor:not-allowed}.quiz-generate-btn .spin{animation:spin 1s linear infinite}.chapter-tabs{display:flex;gap:10px;margin-bottom:24px;flex-wrap:wrap}.chapter-tab{padding:10px 20px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text-muted);cursor:pointer;transition:all .25s}.chapter-tab:hover{color:var(--gs-text);border-color:var(--gs-border-strong)}.chapter-tab.active{background:linear-gradient(90deg,#2563eb,#7c3aed);border-color:transparent;color:#fff}.question-card{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:12px;padding:24px;margin-bottom:20px;box-shadow:var(--gs-shadow-sm)}.question-card h3{color:var(--gs-text);margin-bottom:16px;font-size:1.1rem;line-height:1.5;word-break:break-word}.question-header{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:16px}.question-header h3{flex:1;margin:0}.options{display:flex;flex-direction:column;gap:12px}.option{padding:14px 20px;background:var(--gs-surface-2);border:1.5px solid var(--gs-border);border-radius:10px;color:var(--gs-text-soft);cursor:pointer;transition:all .2s;text-align:left}.option:hover{border-color:var(--gs-primary);background:var(--gs-primary-soft)}.option.selected{border-color:#7c3aed;background:#f1ecfe;color:#5b21b6}.option.correct{border-color:#10b981;background:#ecfdf5;color:#047857}.option.wrong{border-color:#ef4444;background:#fef2f2;color:#b91c1c}.truefalse-options{flex-direction:row!important;gap:16px}.truefalse-options .option{flex:1;text-align:center}.fillblank-input{display:flex;gap:12px}.fillblank-input input{flex:1;padding:14px 20px;border:1.5px solid var(--gs-border);border-radius:10px;background:var(--gs-surface-2);color:var(--gs-text);font-size:1rem;outline:none;transition:border-color .2s,box-shadow .2s}.fillblank-input input:focus{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.fillblank-input input:disabled{opacity:.6}.submit-btn{padding:14px 28px;background:var(--gs-primary);border:none;border-radius:10px;color:#fff;font-size:1rem;font-weight:600;cursor:pointer;transition:background .2s,transform .2s}.submit-btn:hover{background:var(--gs-primary-d);transform:translateY(-1px)}.code-question{display:flex;flex-direction:column;gap:16px}.code-snippet{background:#0d1117;border-radius:8px;padding:16px;font-family:Fira Code,Consolas,monospace;font-size:13px;color:#e6edf3;overflow-x:auto;white-space:pre-wrap;word-break:break-all;border:1px solid #1f2733;max-width:100%}.code-hint{color:#b45309;font-size:14px;margin-bottom:12px;padding:8px 12px;background:#fffbeb;border:1px solid #fde68a;border-radius:6px}.code-input{width:100%;padding:14px;border:1.5px solid #1f2733;border-radius:8px;background:#0d1117;color:#e6edf3;font-family:Fira Code,Consolas,monospace;font-size:14px;resize:vertical;outline:none;transition:border-color .3s}.code-input:focus{border-color:var(--gs-primary)}.code-input:disabled{opacity:.6}.code-editor-small{border:1.5px solid var(--gs-border);border-radius:8px;overflow:hidden;margin-bottom:12px}.code-editor-small:focus-within{border-color:var(--gs-primary)}.explanation{margin-top:16px;padding:16px;background:#f5f1fe;border-radius:8px;border-left:4px solid #7c3aed}.explanation h4{color:#6d28d9;margin-bottom:8px}.explanation p{color:var(--gs-text-soft);line-height:1.6}.explanation code{background:#ece6fb;color:#5b21b6;padding:4px 8px;border-radius:4px;font-family:Fira Code,Consolas,monospace;font-size:13px}.ai-feedback{color:var(--gs-primary);font-style:italic;margin-bottom:8px}.file-overview{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:12px;padding:20px;margin-bottom:24px;box-shadow:var(--gs-shadow-sm)}.file-overview h3{color:var(--gs-primary);font-size:1rem;margin-bottom:16px}.file-overview-list{display:flex;flex-direction:column;gap:10px}.file-overview-item{display:flex;align-items:flex-start;gap:12px;padding:10px 14px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:8px}.file-overview-name{color:#7c3aed;font-weight:600;font-size:13px;white-space:nowrap;min-width:180px}.file-overview-desc{color:var(--gs-text-muted);font-size:13px;line-height:1.5}.related-files{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:20px;padding:12px 16px;background:#f5f1fe;border-radius:8px}.related-files-label{color:var(--gs-text-muted);font-size:13px}.related-file-tag{background:#ece6fb;color:#7c3aed;padding:4px 10px;border-radius:12px;font-size:12px}.summary-box{background:var(--gs-primary-soft);padding:16px;border-radius:12px;margin-bottom:24px;border-left:4px solid var(--gs-primary)}.summary-box strong{color:var(--gs-primary-d)}.summary-box p{margin-top:8px;line-height:1.6;color:var(--gs-text-soft)}.favorite-btn{background:transparent;border:none;color:#94a3b8;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.favorite-btn:hover{color:#d97706;background:#fffbeb}.favorite-btn.favorited{color:#d97706}.view-toggle{display:flex;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:6px;padding:2px;margin-right:8px}.view-toggle button{padding:6px 10px;background:transparent;border:none;color:var(--gs-text-muted);cursor:pointer;border-radius:4px;transition:all .2s;display:flex;align-items:center}.view-toggle button:hover{color:var(--gs-text)}.view-toggle button.active{background:var(--gs-primary);color:#fff}.comment-toggle{display:flex;align-items:center;justify-content:center;width:32px;height:32px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text-muted);cursor:pointer;transition:all .2s}.comment-toggle:hover{background:var(--gs-surface);color:var(--gs-text);border-color:var(--gs-border-strong)}.comment-toggle.active{color:var(--gs-primary);border-color:#c7d8f7;background:var(--gs-primary-soft)}.prereq-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:6px;color:#fff;font-size:12px;cursor:pointer;transition:all .2s}.prereq-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b4d}.prereq-btn:disabled{opacity:.6;cursor:not-allowed}.back-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text-soft);font-size:12px;cursor:pointer;transition:all .2s}.back-btn:hover{background:var(--gs-surface);border-color:var(--gs-border-strong);color:var(--gs-text)}.prereq-title{margin-left:12px;font-size:13px;color:var(--gs-text-muted)}.login-btn{display:flex;align-items:center;gap:8px;padding:10px 20px;background:var(--gs-primary);border:none;border-radius:8px;color:#fff;font-size:14px;cursor:pointer;transition:all .2s;box-shadow:0 8px 20px -8px #2563eb99}.login-btn:hover{background:var(--gs-primary-d);transform:translateY(-1px)}.chat-btn{padding:6px 14px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text-muted);font-size:12px;cursor:pointer;transition:all .2s}.chat-btn:hover{background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary-d)}.chat-btn.active{background:linear-gradient(90deg,#2563eb,#7c3aed);border-color:transparent;color:#fff}.chat-sidebar{width:350px;min-width:280px;max-width:600px;background:var(--gs-surface);border-left:1px solid var(--gs-border);display:flex;flex-direction:column;flex-shrink:0}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--gs-surface-2);border-bottom:1px solid var(--gs-border);font-size:14px;color:var(--gs-text-soft)}.chat-close{background:none;border:none;color:var(--gs-text-muted);cursor:pointer;font-size:16px;padding:4px 8px;border-radius:4px;transition:all .2s}.chat-close:hover{background:var(--gs-surface-2);color:var(--gs-text)}.chat-panel{height:250px;border-top:1px solid var(--gs-border);display:flex;flex-direction:column;background:var(--gs-surface)}.chat-messages{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:12px;min-height:0}.chat-welcome{color:var(--gs-text-muted);font-size:13px;text-align:center;padding:20px}.chat-welcome-avatar{width:52px;height:52px;border-radius:50%;margin:8px auto 14px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--gs-primary),var(--gs-accent));box-shadow:0 10px 22px -10px #6366f1b3}.chat-welcome-title{font-size:16px;font-weight:700;color:var(--gs-text);margin-bottom:8px}.chat-welcome-title span{background:linear-gradient(110deg,var(--gs-primary),var(--gs-accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.chat-welcome-sub{font-size:13px;color:var(--gs-text-muted);line-height:1.6;margin-bottom:18px}.chat-suggestions{display:flex;flex-direction:column;gap:9px;text-align:left}.chat-suggestions-label{font-size:12px;font-weight:600;color:var(--gs-text-soft);margin-bottom:2px}.chat-suggestion{width:100%;text-align:left;padding:11px 14px;border-radius:11px;border:1px solid var(--gs-border);background:var(--gs-surface-2);color:var(--gs-text-soft);font-size:13px;cursor:pointer;transition:all .16s;line-height:1.45}.chat-suggestion:hover{background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary-d);transform:translate(2px)}.chat-message{display:flex;gap:10px;align-items:flex-start}.chat-message.user{flex-direction:row-reverse}.chat-avatar{font-size:18px;flex-shrink:0;width:30px;height:30px;border-radius:50%;display:flex;align-items:center;justify-content:center}.chat-message.assistant .chat-avatar{background:linear-gradient(135deg,var(--gs-primary),var(--gs-accent));color:#fff}.chat-message.user .chat-avatar{background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-text-muted)}.chat-content{background:var(--gs-surface-2);border:1px solid var(--gs-border);box-shadow:var(--gs-shadow-sm);color:var(--gs-text);padding:11px 15px;border-radius:14px;font-size:13.5px;line-height:1.65;max-width:82%}.chat-message.assistant .chat-content{border-top-left-radius:4px}.chat-message.user .chat-content{border-top-right-radius:4px}.chat-content p{margin:0 0 8px}.chat-content p:last-child{margin-bottom:0}.chat-content strong{color:var(--gs-primary);font-weight:600}.chat-content code{background:#161b22;color:#e6edf3;padding:2px 6px;border-radius:4px;font-family:Consolas,monospace;font-size:12px}.chat-content pre{background:#0d1117;padding:12px;border-radius:8px;overflow-x:auto;margin:8px 0}.chat-content pre code{background:none;padding:0}.chat-content table{border-collapse:collapse;width:100%;margin:8px 0;font-size:12px}.chat-content th,.chat-content td{border:1px solid var(--gs-border);padding:6px 10px;text-align:left}.chat-content th{background:var(--gs-primary-soft);font-weight:600}.chat-content tr:nth-child(2n){background:var(--gs-surface-2)}.chat-content ul,.chat-content ol{margin:8px 0;padding-left:20px}.chat-content li{margin:4px 0}.chat-content blockquote{border-left:3px solid var(--gs-primary);margin:8px 0;padding-left:12px;color:var(--gs-text-soft)}.chat-message.user .chat-content{background:var(--gs-primary-soft);border-color:#c7d8f7}.chat-message.assistant .chat-content{background:var(--gs-surface)}.chat-content.typing{color:var(--gs-text-muted);font-style:italic}.chat-input-area{display:flex;gap:8px;padding:12px;border-top:1px solid var(--gs-border)}.chat-input-area input{flex:1;padding:10px 14px;border:1px solid var(--gs-border);border-radius:8px;background:var(--gs-surface-2);color:var(--gs-text);font-size:13px;outline:none}.chat-input-area input::placeholder{color:#94a3b8}.chat-input-area input:focus{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.chat-input-area button{padding:10px 20px;background:linear-gradient(90deg,#2563eb,#7c3aed);border:none;border-radius:8px;color:#fff;font-size:13px;cursor:pointer;transition:opacity .2s}.chat-input-area button:hover{opacity:.9}.chat-input-area button:disabled{opacity:.5;cursor:not-allowed}@media (max-width: 1200px){.chat-sidebar{width:300px}}@media (max-width: 900px){.chat-sidebar{position:fixed;right:0;top:0;bottom:0;width:100%;max-width:400px;z-index:100;box-shadow:var(--gs-shadow-lg)}}.demo-chat-notice{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--gs-text-muted)}.demo-chat-notice p{margin:0 0 8px}.demo-chat-notice button{padding:10px 20px;background:linear-gradient(90deg,#2563eb,#7c3aed);border:none;border-radius:8px;color:#fff;font-size:14px;cursor:pointer;transition:all .2s}.demo-chat-notice button:hover{opacity:.9;transform:translateY(-1px)}.user-menu{position:relative;z-index:1000}.user-avatar-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:20px;color:var(--gs-text);cursor:pointer;transition:all .2s}.user-avatar-btn:hover{background:var(--gs-primary-soft);border-color:#c7d8f7}.user-avatar-btn img{width:28px;height:28px;border-radius:50%}.user-dropdown{position:absolute;top:100%;right:0;margin-top:8px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:12px;min-width:240px;box-shadow:var(--gs-shadow-lg);z-index:999;overflow:hidden}.user-dropdown .user-info{padding:16px;border-bottom:1px solid var(--gs-border)}.user-dropdown .user-name{font-weight:600;color:var(--gs-text)}.user-dropdown .user-email{font-size:12px;color:var(--gs-text-muted);margin-top:4px}.user-menu-items{padding:8px 0}.user-menu-items button{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;color:var(--gs-text-soft);font-size:14px;cursor:pointer;transition:all .2s}.user-menu-items button:hover{background:var(--gs-surface-2);color:var(--gs-text)}.logout-btn{display:flex;align-items:center;gap:10px;width:100%;padding:12px 16px;background:none;border:none;border-top:1px solid var(--gs-border);color:var(--gs-danger);font-size:14px;cursor:pointer;transition:all .2s}.logout-btn:hover{background:#fef2f2}.user-credits-badge{display:inline-flex;align-items:center;gap:3px;background:#fffbeb;border:1px solid #fde68a;padding:2px 8px;border-radius:10px;font-size:11px;color:#d97706;font-weight:600;margin-left:4px;max-width:80px;overflow:hidden}.user-credits-display{display:flex;align-items:center;gap:6px;margin-top:10px;padding:8px 10px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;white-space:nowrap}.user-credits-display .credits-amount{font-weight:700;color:#d97706}.user-credits-display .credits-label{font-size:11px;color:var(--gs-text-muted)}.user-credits-display svg{color:#d97706}.credits-recharge-btn{margin-left:auto;padding:3px 10px;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:6px;color:#fff;font-size:11px;font-weight:600;cursor:pointer;transition:opacity .2s}.credits-recharge-btn:hover{opacity:.85}.user-invite-section{display:flex;align-items:center;gap:6px;padding:8px 16px;border-bottom:1px solid var(--gs-border);font-size:12px;color:var(--gs-text-muted);cursor:pointer;transition:background .2s}.user-invite-section:hover{background:var(--gs-surface-2);color:var(--gs-text-soft)}.user-invite-section svg{color:#6d28d9;flex-shrink:0}.invite-copied{color:var(--gs-success)!important}.auth-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.auth-container{position:relative;width:100%;max-width:900px;height:550px;background:var(--gs-surface);border-radius:20px;box-shadow:var(--gs-shadow-lg);overflow:hidden}.auth-close{position:absolute;top:16px;right:16px;background:var(--gs-surface-2);border:none;color:var(--gs-text-muted);cursor:pointer;z-index:10;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .3s}.auth-close:hover{color:var(--gs-text);background:var(--gs-border)}.forms-container{position:absolute;width:50%;height:100%;top:0;left:0;transition:all .6s ease-in-out;z-index:2}.auth-container.sign-up-mode .forms-container{left:50%}.auth-form{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;padding:0 50px;display:flex;flex-direction:column;align-items:center;opacity:1;transition:opacity .3s ease-in-out}.sign-in-form{opacity:1}.sign-up-form,.auth-container.sign-up-mode .sign-in-form{opacity:0;pointer-events:none}.auth-container.sign-up-mode .sign-up-form{opacity:1;pointer-events:all}.auth-form h2{color:var(--gs-text);font-size:1.8rem;margin-bottom:24px}.auth-field{display:flex;align-items:center;gap:12px;background:var(--gs-surface-2);border:2px solid var(--gs-border);border-radius:12px;padding:0 16px;margin-bottom:16px;width:100%;max-width:320px;transition:all .3s}.auth-field:focus-within{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.auth-field svg{color:var(--gs-text-muted);flex-shrink:0}.auth-field input{flex:1;padding:14px 0;background:none;border:none;color:var(--gs-text);font-size:15px;outline:none}.auth-field input::-ms-reveal,.auth-field input::-ms-clear{display:none}.auth-field input::-webkit-credentials-auto-fill-button{display:none!important}.auth-field input::placeholder{color:#94a3b8}.auth-field.with-btn{padding-right:8px}.auth-field.error{border-color:var(--gs-danger)}.auth-field.error:focus-within{border-color:var(--gs-danger);background:#fef2f2;box-shadow:0 0 0 4px #dc26261f}.password-field{position:relative;overflow:hidden}.eye-btn{background:none;border:none;padding:8px;cursor:pointer;color:var(--gs-text-muted);display:flex;align-items:center;justify-content:center;transition:all .3s;position:relative;z-index:2}.eye-btn:hover{color:var(--gs-primary)}.password-field.revealed .eye-btn{color:#ffd966;filter:drop-shadow(0 0 8px rgba(255,220,100,.9));animation:eyeGlow 2s ease-in-out infinite}@keyframes eyeGlow{0%,to{filter:drop-shadow(0 0 8px rgba(255,220,100,.8))}50%{filter:drop-shadow(0 0 12px rgba(255,200,80,1))}}.light-beam{position:absolute;top:50%;right:42px;width:0;height:0;pointer-events:none;opacity:0;z-index:0;transform:translateY(-50%);border-top:4px solid transparent;border-bottom:4px solid transparent;border-left:0 solid rgba(255,220,100,.35);filter:blur(4px)}.password-field.revealed .light-beam{animation:beamShine .4s ease-out forwards,beamPulse 2s ease-in-out .4s infinite}@keyframes beamShine{0%{opacity:0;border-left-width:0;border-top-width:4px;border-bottom-width:4px}to{opacity:1;border-left-width:240px;border-top-width:26px;border-bottom-width:26px}}@keyframes beamPulse{0%,to{opacity:.8;filter:blur(4px) drop-shadow(0 0 10px rgba(255,220,100,.3))}50%{opacity:1;filter:blur(5px) drop-shadow(0 0 15px rgba(255,200,80,.4))}}.send-code-btn{padding:8px 14px;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .3s}.send-code-btn:hover:not(:disabled){transform:scale(1.02)}.send-code-btn:disabled{opacity:.5;cursor:not-allowed}.auth-error{color:var(--gs-danger);font-size:13px;text-align:center;margin-bottom:12px;max-width:320px}.auth-error.field-error{margin-top:-8px;margin-bottom:8px;text-align:left}.auth-success{color:#047857;font-size:14px;text-align:center;margin-bottom:12px;padding:10px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px}.auth-submit{width:100%;max-width:320px;padding:14px;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;justify-content:center;margin-top:8px}.auth-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px #2563eb4d}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.login-mode-switch{margin-top:16px}.login-mode-switch button{background:none;border:none;color:var(--gs-primary);cursor:pointer;font-size:14px;transition:all .2s}.login-mode-switch button:hover{text-decoration:underline}.panels-container{position:absolute;top:0;right:0;width:50%;height:100%;transition:all .6s ease-in-out;z-index:5;overflow:hidden}.auth-container.sign-up-mode .panels-container{right:50%}.panel{position:absolute;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px;background:linear-gradient(135deg,#2563eb,#7c3aed);transition:opacity .3s ease-in-out}.left-panel{opacity:0;pointer-events:none}.right-panel,.auth-container.sign-up-mode .left-panel{opacity:1;pointer-events:all}.auth-container.sign-up-mode .right-panel{opacity:0;pointer-events:none}.panel-content{position:relative;z-index:2}.panel-icon{color:#fff;margin-bottom:20px;filter:drop-shadow(0 0 20px rgba(255,255,255,.3))}.panel h3{color:#fff;font-size:1.6rem;margin-bottom:12px}.panel p{color:#ffffffd9;font-size:.95rem;line-height:1.6;margin-bottom:28px;white-space:nowrap}.panel-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 32px;background:transparent;border:2px solid #fff;border-radius:30px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .3s}.panel-btn:hover{background:#fff;color:#7c3aed}.panel-decoration{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;overflow:hidden}.sparkle{position:absolute;color:#ffffff4d;animation:sparkleFloat 4s ease-in-out infinite}.sparkle.s1{top:15%;right:20%;animation-delay:0s}.sparkle.s2{bottom:25%;left:15%;animation-delay:1s}.sparkle.s3{top:60%;right:10%;animation-delay:2s}@keyframes sparkleFloat{0%,to{transform:translateY(0) rotate(0);opacity:.3}50%{transform:translateY(-15px) rotate(10deg);opacity:.6}}.spin{animation:spin 1s linear infinite}@media (max-width: 768px){.auth-container{max-width:400px;height:auto;min-height:500px}.forms-container{position:relative;height:auto}.auth-form{position:relative;width:100%;padding:40px 30px;transform:none;top:0;left:0!important;opacity:1!important;display:none}.sign-in-form{display:flex}.auth-container.sign-up-mode .sign-in-form{display:none}.auth-container.sign-up-mode .sign-up-form{display:flex}.panels-container{position:relative;width:100%;height:auto;left:0!important}.panel{position:relative;padding:30px 20px;display:none}.right-panel{display:flex}.auth-container.sign-up-mode .right-panel{display:none}.auth-container.sign-up-mode .left-panel{display:flex}.panel h3{font-size:1.3rem}.panel p{font-size:.9rem;margin-bottom:20px}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:var(--gs-surface);border-radius:16px;padding:32px;width:100%;max-width:500px;max-height:80vh;overflow-y:auto;position:relative;box-shadow:var(--gs-shadow-lg)}.modal-close{position:absolute;top:16px;right:16px;background:none;border:none;color:var(--gs-text-muted);cursor:pointer}.modal-close:hover{color:var(--gs-text)}.modal-content h2{display:flex;align-items:center;gap:12px;color:var(--gs-primary);margin-bottom:24px}.leaderboard-modal{max-width:450px}.leaderboard-tabs{display:flex;gap:8px;margin-bottom:20px}.leaderboard-tabs button{flex:1;padding:10px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text-muted);cursor:pointer;transition:all .2s}.leaderboard-tabs button.active{background:linear-gradient(90deg,#2563eb,#7c3aed);border-color:transparent;color:#fff}.leaderboard-list{display:flex;flex-direction:column;gap:8px}.leaderboard-item{display:flex;align-items:center;gap:12px;padding:12px 16px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px}.leaderboard-item.rank-1{background:#fffbeb}.leaderboard-item.rank-2{background:#f1f5f9}.leaderboard-item.rank-3{background:#fdf3e7}.leaderboard-item .rank{width:30px;text-align:center;font-weight:600;color:var(--gs-text-muted);display:flex;align-items:center;justify-content:center}.leaderboard-item .rank .gold{color:#eab308}.leaderboard-item .rank .silver{color:#94a3b8}.leaderboard-item .rank .bronze{color:#b45309}.leaderboard-item .user-info{flex:1;display:flex;align-items:center;gap:10px}.leaderboard-item .avatar{width:32px;height:32px;border-radius:50%}.leaderboard-item .avatar-placeholder{color:var(--gs-text-muted)}.leaderboard-item .name{color:var(--gs-text)}.leaderboard-item .score{color:var(--gs-primary);font-weight:600}.history-list{display:flex;flex-direction:column;gap:12px}.history-item{background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;padding:16px}.history-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.history-header .repo-name{color:var(--gs-text);font-weight:600}.history-header .completed-icon{color:var(--gs-success)}.history-stats{display:flex;justify-content:space-between;font-size:13px;color:var(--gs-text-muted);margin-bottom:8px}.history-time{display:flex;align-items:center;gap:4px}.history-progress{height:4px;background:#e2e8f0;border-radius:2px;overflow:hidden}.history-progress-fill{height:100%;background:linear-gradient(90deg,#2563eb,#7c3aed)}.history-item .continue-btn{margin-top:12px;width:100%;padding:8px 16px;background:linear-gradient(90deg,#2563eb,#7c3aed);border:none;border-radius:6px;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:6px;transition:opacity .2s}.history-item .continue-btn:hover{opacity:.9}.favorites-modal,.wrong-modal{max-width:700px}.favorites-list,.wrong-list{display:flex;flex-direction:column;gap:12px;max-height:60vh;overflow-y:auto}.favorite-item,.wrong-item{background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;overflow:hidden}.favorite-header,.wrong-header{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;cursor:pointer;transition:background .2s}.favorite-header:hover,.wrong-header:hover{background:var(--gs-primary-soft)}.favorite-info,.wrong-info{display:flex;align-items:center;gap:12px}.favorite-repo,.wrong-repo{color:var(--gs-primary);font-weight:600}.favorite-chapter,.wrong-chapter{color:var(--gs-text-muted);font-size:13px}.wrong-count{display:flex;align-items:center;gap:4px;color:var(--gs-danger);font-size:12px}.favorite-actions,.wrong-actions{display:flex;align-items:center;gap:8px;color:var(--gs-text-muted)}.remove-btn{background:transparent;border:none;color:var(--gs-text-muted);cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.remove-btn:hover{color:var(--gs-danger);background:#fef2f2}.favorite-content,.wrong-content{padding:0 16px 16px;border-top:1px solid var(--gs-border)}.question-text{color:var(--gs-text);margin:16px 0 12px;line-height:1.6}.question-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.option-item{padding:10px 14px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text-soft);font-size:14px}.option-item.correct{background:#ecfdf5;color:#047857;border:1px solid #a7f3d0}.question-code{background:#1e1e1e;color:#e6edf3;padding:12px;border-radius:6px;font-family:monospace;font-size:13px;overflow-x:auto;margin-bottom:12px}.question-answer{color:var(--gs-success);margin-bottom:8px}.wrong-answers{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.your-answer .wrong-text{color:var(--gs-danger)}.correct-answer .correct-text{color:var(--gs-success)}.question-explanation{color:var(--gs-text-muted);font-size:14px;line-height:1.6;padding-top:12px;border-top:1px solid var(--gs-border)}.daily-reward-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px;margin-bottom:16px}.reward-info{display:flex;align-items:center;gap:8px;color:#d97706;font-size:12px;flex-shrink:1}.claim-reward-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:linear-gradient(135deg,#f59e0b,#d97706);border:none;border-radius:8px;color:#fff;font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;transition:transform .2s,box-shadow .2s}.claim-reward-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #d977064d}.claim-reward-btn:disabled{opacity:.6;cursor:not-allowed}.reward-claimed-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:#ecfdf5;border-radius:6px;color:#047857;font-size:12px;white-space:nowrap}.reward-badge{display:inline-block;margin-left:6px;padding:2px 6px;background:#fffbeb;border-radius:4px;color:#d97706;font-size:11px;font-weight:600}.leaderboard-tabs button{display:inline-flex;align-items:center;justify-content:center;gap:4px}.page-transition-overlay{position:fixed;top:0;left:0;width:100%;height:100%;z-index:9999;pointer-events:none;background:radial-gradient(ellipse at center,#1a1a2e,#0a0a15);opacity:0}.page-transition-overlay.neural-out{animation:neuralFadeIn .3s ease-out forwards}.page-transition-overlay.neural-in{animation:neuralFadeOut .5s ease-in .3s forwards;opacity:1}@keyframes neuralFadeIn{0%{opacity:0}to{opacity:1}}@keyframes neuralFadeOut{0%{opacity:1}to{opacity:0}}.neural-network{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden}.neuron{position:absolute;width:16px;height:16px;transform:translate(-50%,-50%)}.neuron-core{width:100%;height:100%;background:radial-gradient(circle,#00d4ff,#7c3aed);border-radius:50%;opacity:0;transform:scale(0)}.neuron-pulse{position:absolute;top:50%;left:50%;width:32px;height:32px;margin:-16px 0 0 -16px;border:2px solid #00d4ff;border-radius:50%;opacity:0;transform:scale(0)}.neural-lines{position:absolute;top:0;left:0;width:100%;height:100%}.neural-lines line{stroke:#00d4ff;stroke-width:.15;opacity:0}.neural-out .neuron-core{animation:neuronAppear .4s ease-out forwards}.neural-out .neuron-pulse{animation:neuronPulse .6s ease-out .15s forwards}.neural-out .neural-lines line{animation:lineAppear .4s ease-out forwards}.neural-out .n1 .neuron-core{animation-delay:0s}.neural-out .n2 .neuron-core{animation-delay:.03s}.neural-out .n3 .neuron-core{animation-delay:.06s}.neural-out .n4 .neuron-core{animation-delay:.04s}.neural-out .n5 .neuron-core{animation-delay:.08s}.neural-out .n6 .neuron-core{animation-delay:.1s}.neural-out .n7 .neuron-core{animation-delay:.15s}.neural-out .n8 .neuron-core{animation-delay:.18s}.neural-out .n9 .neuron-core{animation-delay:.2s}.neural-out .n10 .neuron-core{animation-delay:.22s}.neural-out .neural-lines line:nth-child(1){animation-delay:.08s}.neural-out .neural-lines line:nth-child(2){animation-delay:.1s}.neural-out .neural-lines line:nth-child(3){animation-delay:.12s}.neural-out .neural-lines line:nth-child(4){animation-delay:.11s}.neural-out .neural-lines line:nth-child(5){animation-delay:.14s}.neural-out .neural-lines line:nth-child(6){animation-delay:.16s}.neural-out .neural-lines line:nth-child(7){animation-delay:.15s}.neural-out .neural-lines line:nth-child(8){animation-delay:.17s}.neural-out .neural-lines line:nth-child(9){animation-delay:.25s}.neural-out .neural-lines line:nth-child(10){animation-delay:.27s}.neural-out .neural-lines line:nth-child(11){animation-delay:.29s}.neural-out .neural-lines line:nth-child(12){animation-delay:.31s}@keyframes neuronAppear{0%{opacity:0;transform:scale(0)}50%{opacity:1;transform:scale(1.3)}to{opacity:1;transform:scale(1)}}@keyframes neuronPulse{0%{opacity:.8;transform:scale(.5)}to{opacity:0;transform:scale(2.5)}}@keyframes lineAppear{0%{opacity:0}to{opacity:.6}}.neural-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(0);color:#fff;opacity:0;filter:drop-shadow(0 0 20px rgba(0,212,255,.8))}.neural-out .neural-center{animation:centerAppear .4s ease-out .35s forwards}@keyframes centerAppear{0%{opacity:0;transform:translate(-50%,-50%) scale(0) rotate(-180deg)}to{opacity:1;transform:translate(-50%,-50%) scale(1) rotate(0)}}.code-symbols{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.symbol{position:absolute;font-family:Fira Code,monospace;font-size:14px;color:#7c3aed;opacity:0;text-shadow:0 0 10px rgba(124,58,237,.5)}.symbol.s1{top:20%;left:35%}.symbol.s2{top:25%;left:62%}.symbol.s3{top:72%;left:30%;font-weight:700;color:#10b981}.symbol.s4{top:68%;left:68%;font-weight:700;color:#00d4ff}.neural-out .symbol{animation:symbolFloat .5s ease-out forwards}.neural-out .s1{animation-delay:.15s}.neural-out .s2{animation-delay:.2s}.neural-out .s3{animation-delay:.25s}.neural-out .s4{animation-delay:.3s}@keyframes symbolFloat{0%{opacity:0;transform:translateY(20px)}to{opacity:.7;transform:translateY(0)}}.neural-in .neuron-core{animation:neuronShrink .3s ease-in forwards}.neural-in .neural-lines line{animation:lineFade .2s ease-in forwards}.neural-in .neural-center{opacity:1;transform:translate(-50%,-50%) scale(1);animation:centerPulse .3s ease-in forwards}.neural-in .symbol{animation:symbolFade .2s ease-in forwards}@keyframes neuronShrink{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(0)}}@keyframes lineFade{to{opacity:0}}@keyframes centerPulse{0%{transform:translate(-50%,-50%) scale(1);filter:drop-shadow(0 0 20px rgba(0,212,255,.8))}50%{transform:translate(-50%,-50%) scale(1.5);filter:drop-shadow(0 0 40px rgba(0,212,255,1))}to{transform:translate(-50%,-50%) scale(0);opacity:0}}@keyframes symbolFade{to{opacity:0;transform:translateY(-10px)}}.app.fade-in .header,.app.fade-in .search-section,.app.fade-in .results-section,.app.fade-in .code-section,.app.fade-in .demo-mode-banner,.app.fade-in .homepage{animation:fadeSlideIn .3s ease-out}@keyframes fadeSlideIn{0%{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}.results-section .repo-card{animation:cardWaveIn .4s ease-out backwards}@keyframes cardWaveIn{0%{opacity:0;transform:translateY(25px)}to{opacity:1;transform:translateY(0)}}.notebook-view{flex:1;overflow-y:auto;padding:16px;background:#1e1e1e;position:relative}.notebook-view .fullscreen-btn{position:sticky;bottom:16px;float:right;margin-top:-52px;margin-right:16px}.notebook-cell{margin-bottom:16px;border:1px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden;background:#252526}.cell-header{display:flex;align-items:center;gap:12px;padding:10px 14px;background:#60a5fa1f;border-bottom:1px solid rgba(255,255,255,.1)}.cell-number{color:#60a5fa;font-family:monospace;font-size:12px;font-weight:600}.cell-title{color:#fff;font-weight:600;font-size:14px}.cell-description{padding:10px 14px;color:#aaa;font-size:13px;line-height:1.5;background:#7c3aed1a;border-bottom:1px solid rgba(255,255,255,.05)}.cell-code{background:#1e1e1e;padding:8px 0}.cell-code .monaco-editor .margin{padding-right:8px!important}.cell-code .monaco-editor .line-numbers{padding-right:12px}.notebook-view::-webkit-scrollbar{width:8px}.notebook-view::-webkit-scrollbar-track{background:transparent}.notebook-view::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.notebook-view::-webkit-scrollbar-thumb:hover{background:#94a3b8}.notebook-view.light-theme{background:var(--gs-surface-2)}.notebook-view.light-theme .notebook-cell{background:var(--gs-surface);border-color:var(--gs-border);box-shadow:var(--gs-shadow-sm)}.notebook-view.light-theme .cell-header{background:linear-gradient(135deg,var(--gs-primary-soft) 0%,#f1ecfe 100%);border-bottom-color:var(--gs-border)}.notebook-view.light-theme .cell-number{color:var(--gs-primary)}.notebook-view.light-theme .cell-title{color:var(--gs-text)}.notebook-view.light-theme .cell-description{background:linear-gradient(135deg,#f5f1fe,#faf8ff);color:var(--gs-text-soft);border-bottom-color:var(--gs-border)}.notebook-view.light-theme .cell-code,.editor-container.light-theme{background:var(--gs-surface-2)}.file-summary.light-theme{background:linear-gradient(135deg,var(--gs-primary-soft) 0%,#f1ecfe 100%);color:var(--gs-text);border-color:var(--gs-border)}.file-summary.light-theme svg{color:var(--gs-warning)}.notebook-view.light-theme .fullscreen-btn,.editor-container.light-theme .fullscreen-btn{background:#ffffffe6;border-color:var(--gs-border);color:var(--gs-text);box-shadow:var(--gs-shadow-sm)}.notebook-view.light-theme .fullscreen-btn:hover,.editor-container.light-theme .fullscreen-btn:hover{background:#fff;border-color:var(--gs-primary);color:var(--gs-primary)}.prerequisites-view{flex:1;overflow-y:auto;padding:16px;background:#1e1e1e;position:relative}.prerequisites-view.light-theme{background:var(--gs-bg)}.prereq-cell{background:#ffffff08;border:1px solid rgba(255,255,255,.1);border-radius:8px;margin-bottom:16px;overflow:hidden}.light-theme .prereq-cell{background:var(--gs-surface);border-color:var(--gs-border)}.prereq-header{display:flex;align-items:center;gap:10px;padding:12px 16px;background:#0003;border-bottom:1px solid rgba(255,255,255,.1)}.light-theme .prereq-header{background:var(--gs-surface-2);border-bottom-color:var(--gs-border)}.prereq-number{color:#888;font-size:12px;font-family:monospace}.prereq-category{padding:2px 8px;border-radius:4px;font-size:11px;font-weight:600;color:#fff}.prereq-title-text{font-weight:600;font-size:14px;color:#fff}.light-theme .prereq-title-text{color:var(--gs-text)}.prereq-description{padding:12px 16px;font-size:13px;line-height:1.6;color:#fffc}.light-theme .prereq-description{color:var(--gs-text-soft)}.prereq-code{margin:0 16px 16px;border-radius:6px;overflow:hidden;border:1px solid rgba(255,255,255,.1)}.light-theme .prereq-code{border-color:var(--gs-border)}.prereq-empty{text-align:center;padding:60px 20px;color:#888;font-size:14px}.prerequisites-view .fullscreen-btn{position:sticky;bottom:16px;float:right;margin-top:16px}.prereq-code-wrapper{margin:0 16px 16px}.prereq-code-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:#0000004d;border-radius:6px 6px 0 0;font-size:11px;color:#ffffff80}.light-theme .prereq-code-header{background:var(--gs-surface-2);color:var(--gs-text-muted)}.run-btn{display:flex;align-items:center;gap:4px;padding:4px 10px;background:#10b981;border:none;border-radius:4px;color:#fff;font-size:11px;cursor:pointer;transition:all .2s}.run-btn:hover:not(:disabled){background:#059669}.run-btn:disabled{opacity:.6;cursor:not-allowed}.prereq-code-wrapper .prereq-code{margin:0;border-radius:0;border:1px solid rgba(255,255,255,.1);border-top:none}.light-theme .prereq-code-wrapper .prereq-code{border-color:var(--gs-border)}.code-output{border:1px solid rgba(255,255,255,.1);border-top:none;border-radius:0 0 6px 6px;overflow:hidden}.code-output.success{background:#10b9811a;border-color:#10b9814d}.code-output.error{background:#ef44441a;border-color:#ef44444d}.output-header{padding:6px 12px;font-size:11px;font-weight:600;background:#0003}.code-output.success .output-header{color:#10b981}.code-output.error .output-header{color:#ef4444}.code-output pre{margin:0;padding:12px;font-family:Consolas,monospace;font-size:12px;line-height:1.5;white-space:pre-wrap;color:#fff}.light-theme .code-output pre{color:var(--gs-text)}.light-theme .output-header{background:var(--gs-surface-2)}.output-explanation{padding:8px 12px;font-size:12px;color:#fff9;border-top:1px solid rgba(255,255,255,.1);background:#0000001a}.light-theme .output-explanation{color:var(--gs-text-muted);border-top-color:var(--gs-border);background:var(--gs-surface-2)}.tour-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a8c;z-index:1000}.tour-spotlight{position:fixed;border-radius:8px;box-shadow:0 0 0 9999px #0f172a8c,inset 0 0 30px #2563eb26;border:2px solid var(--gs-primary);background:#2563eb0f;z-index:1001;pointer-events:none;transition:all .3s ease}.tour-tooltip{position:fixed;background:var(--gs-surface);border-radius:12px;padding:20px;width:320px;box-shadow:var(--gs-shadow-lg);border:1px solid var(--gs-border);z-index:1002;animation:tourFadeIn .3s ease}.tour-tooltip:before{content:"";position:absolute;width:12px;height:12px;background:var(--gs-surface);border:1px solid var(--gs-border);transform:rotate(45deg)}.tour-tooltip.position-right:before{left:-7px;top:30px;border-right:none;border-top:none}.tour-tooltip.position-left:before{right:-7px;top:30px;border-left:none;border-bottom:none}.tour-tooltip.position-bottom:before{top:-7px;left:50%;margin-left:-6px;border-bottom:none;border-right:none}.tour-tooltip.position-top:before{bottom:-7px;left:50%;margin-left:-6px;border-top:none;border-left:none}@keyframes tourFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.tour-content h3{color:var(--gs-primary);font-size:1.3rem;margin-bottom:12px}.tour-content p{color:var(--gs-text-soft);font-size:1rem;line-height:1.7}.tour-actions{display:flex;justify-content:space-between;align-items:center;margin-top:24px;padding-top:16px;border-top:1px solid var(--gs-border)}.tour-progress{color:var(--gs-text-muted);font-size:13px}.tour-buttons{display:flex;gap:12px}.tour-skip{padding:10px 20px;background:transparent;border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text-muted);cursor:pointer;font-size:14px;transition:all .2s}.tour-skip:hover{background:var(--gs-surface-2);color:var(--gs-text);border-color:var(--gs-border-strong)}.tour-next{padding:10px 24px;background:var(--gs-primary);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;font-weight:600;transition:all .2s;box-shadow:0 8px 20px -8px #2563eb99}.tour-next:hover{background:var(--gs-primary-d);transform:translateY(-1px)}.theme-switch{position:relative;cursor:pointer;margin-right:8px}.switch-track{position:relative;width:52px;height:28px;background:linear-gradient(135deg,#1a1a2e,#16213e);border-radius:14px;padding:2px;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);box-shadow:inset 0 2px 4px #0000004d,0 1px 2px #ffffff1a;overflow:hidden}.theme-switch.light .switch-track{background:linear-gradient(135deg,#74b9ff,#a29bfe)}.switch-icon{position:absolute;top:50%;transform:translateY(-50%);transition:all .4s ease;z-index:1}.switch-icon.sun{left:8px;color:#ffeaa7;opacity:0}.switch-icon.moon{right:8px;color:#dfe6e9;opacity:1}.theme-switch.light .switch-icon.sun{opacity:1}.theme-switch.light .switch-icon.moon{opacity:0}.switch-thumb{position:absolute;width:24px;height:24px;background:linear-gradient(145deg,#fff,#e0e0e0);border-radius:50%;top:2px;left:2px;transition:all .4s cubic-bezier(.68,-.55,.265,1.55);box-shadow:0 2px 8px #0000004d,inset 0 -2px 4px #0000001a,inset 0 2px 4px #fffc}.theme-switch.light .switch-thumb{left:26px;background:linear-gradient(145deg,#ffeaa7,#fdcb6e);box-shadow:0 2px 8px #fdcb6e80,inset 0 -2px 4px #0000001a,inset 0 2px 4px #ffffff80}.theme-switch.transitioning .switch-track:before{content:"";position:absolute;top:50%;left:50%;width:100px;height:100px;background:radial-gradient(circle,rgba(255,255,255,.8) 0%,transparent 70%);transform:translate(-50%,-50%) scale(0);animation:themeFlash .5s ease-out forwards;z-index:10}@keyframes themeFlash{0%{transform:translate(-50%,-50%) scale(0);opacity:1}to{transform:translate(-50%,-50%) scale(3);opacity:0}}.theme-transitioning{animation:editorThemeTransition .3s ease}@keyframes editorThemeTransition{0%{opacity:1;filter:brightness(1)}50%{opacity:.7;filter:brightness(1.5)}to{opacity:1;filter:brightness(1)}}.demo-mode-banner{position:fixed;top:0;left:0;right:0;background:linear-gradient(90deg,#f59e0b,#ef4444);color:#fff;padding:10px 20px;text-align:center;font-size:14px;font-weight:600;z-index:1000;display:flex;align-items:center;justify-content:center;gap:12px}.demo-mode-banner button{padding:6px 16px;background:#fff3;border:1px solid rgba(255,255,255,.3);border-radius:6px;color:#fff;font-size:13px;cursor:pointer;transition:all .2s}.demo-mode-banner button:hover{background:#ffffff4d}.app.show-homepage .header,.app.show-homepage .search-section{display:none}.app.demo-mode .header{margin-top:44px}.demo-disabled{opacity:.5!important;cursor:not-allowed!important;pointer-events:none}.explain-btn.demo-disabled-hint{position:relative}.explain-btn.demo-disabled-hint:hover:after{content:"演示模式下仅第一个文件可解读";position:absolute;bottom:-35px;left:50%;transform:translate(-50%);padding:6px 12px;background:#000000e6;color:#fff;font-size:11px;border-radius:6px;white-space:nowrap;z-index:100}body:has(.homepage){background:#fff}.app:has(.homepage){max-width:none;margin:0;padding:0}.homepage{--hp-blue: #2563eb;--hp-blue-d: #1d4ed8;--hp-blue-soft: #eff5ff;--hp-violet: #7c3aed;--hp-ink: #0f172a;--hp-ink-soft: #475569;--hp-muted: #64748b;--hp-line: #e7edf6;--hp-bg: #ffffff;--hp-bg-soft: #f5f8fd;--hp-shadow-sm: 0 1px 2px rgba(15, 23, 42, .06), 0 2px 6px rgba(15, 23, 42, .04);--hp-shadow-md: 0 10px 30px -12px rgba(15, 23, 42, .18), 0 4px 12px rgba(15, 23, 42, .06);--hp-shadow-blue: 0 18px 40px -14px rgba(37, 99, 235, .45);position:relative;min-height:100vh;color:var(--hp-ink);background:radial-gradient(1100px 560px at 82% -8%,#e9f1ff 0%,transparent 58%),radial-gradient(900px 500px at 8% 12%,#f1f5ff 0%,transparent 55%),linear-gradient(180deg,#fff,#f7faff);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;overflow-x:clip;opacity:0;transition:opacity .7s ease}.homepage.visible{opacity:1}.homepage *,.homepage *:before,.homepage *:after{box-sizing:border-box}.hp-nav{position:fixed;top:0;left:0;right:0;z-index:200;padding:18px 0;transition:padding .3s ease,background .3s ease,box-shadow .3s ease,border-color .3s ease;border-bottom:1px solid transparent}.hp-nav.scrolled{padding:10px 0;background:#ffffffd1;backdrop-filter:saturate(180%) blur(16px);-webkit-backdrop-filter:saturate(180%) blur(16px);border-bottom-color:var(--hp-line);box-shadow:0 6px 24px -16px #0f172a40}.hp-nav-inner{max-width:1200px;margin:0 auto;padding:0 28px;display:flex;align-items:center;justify-content:space-between}.hp-nav-brand{display:flex;align-items:center;gap:10px}.hp-nav-logo{width:32px;height:32px;border-radius:8px}.hp-nav-name{font-size:1.22rem;font-weight:800;letter-spacing:-.02em;color:var(--hp-ink)}.hp-nav-links{display:flex;align-items:center;gap:4px}.hp-nav-link{display:inline-flex;align-items:center;gap:6px;padding:9px 14px;background:transparent;border:none;border-radius:10px;color:var(--hp-ink-soft);font-size:.92rem;font-weight:500;cursor:pointer;transition:color .2s,background .2s;white-space:nowrap}.hp-nav-link svg{opacity:.65;transition:opacity .2s}.hp-nav-link:hover{color:var(--hp-blue);background:var(--hp-blue-soft)}.hp-nav-link:hover svg{opacity:1}.hp-nav-cta{display:inline-flex;align-items:center;gap:7px;margin-left:10px;padding:10px 20px;background:var(--hp-blue);border:none;border-radius:11px;color:#fff;font-size:.92rem;font-weight:600;cursor:pointer;box-shadow:0 8px 20px -8px #2563eb99;transition:transform .2s,box-shadow .2s,background .2s}.hp-nav-cta:hover{background:var(--hp-blue-d);transform:translateY(-1px);box-shadow:0 12px 26px -8px #2563ebb3}.hp-nav-toggle{display:none;background:none;border:none;color:var(--hp-ink);cursor:pointer;padding:6px}.hp-section{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:96px 28px}.hp-section-head{text-align:center;max-width:720px;margin:0 auto 56px}.hp-eyebrow{display:inline-flex;align-items:center;gap:7px;padding:6px 14px;margin-bottom:18px;background:var(--hp-blue-soft);color:var(--hp-blue);border:1px solid #dbe7ff;border-radius:999px;font-size:.8rem;font-weight:600}.hp-section-title{font-size:clamp(1.7rem,3.2vw,2.5rem);font-weight:800;line-height:1.2;letter-spacing:-.02em;color:var(--hp-ink);margin:0}.hp-title-accent{background:linear-gradient(110deg,var(--hp-blue),var(--hp-violet));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hp-section-sub{margin:16px auto 0;max-width:600px;color:var(--hp-muted);font-size:1.02rem;line-height:1.7}.hp-section .hp-section-head,.hp-flow-node,.hp-cta,.hp-contact-grid{opacity:0;transform:translateY(34px);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1);transition-delay:var(--delay, 0s)}.hp-section.in .hp-section-head,.hp-features.in .hp-feature-card,.hp-workflow.in .hp-flow-node,.hp-cta-wrap.in .hp-cta,.hp-contact.in .hp-contact-grid{opacity:1;transform:none}.hp-btn{display:inline-flex;align-items:center;gap:9px;padding:14px 26px;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;border:1px solid transparent;transition:transform .2s,box-shadow .2s,background .2s,border-color .2s,color .2s}.hp-btn-primary{background:var(--hp-blue);color:#fff;box-shadow:var(--hp-shadow-blue)}.hp-btn-primary:hover:not(:disabled){background:var(--hp-blue-d);transform:translateY(-2px);box-shadow:0 22px 44px -14px #2563eb8c}.hp-btn-primary:disabled{opacity:.65;cursor:not-allowed}.hp-btn-ghost{background:#fff;color:var(--hp-ink);border-color:var(--hp-line);box-shadow:var(--hp-shadow-sm)}.hp-btn-ghost:hover{border-color:var(--hp-blue);color:var(--hp-blue);transform:translateY(-2px)}.hp-btn-light{background:#fff;color:var(--hp-blue)}.hp-btn-light:hover{transform:translateY(-2px);box-shadow:0 18px 40px -16px #00000080}.hp-btn-outline-light{background:transparent;color:#fff;border-color:#ffffff80}.hp-btn-outline-light:hover{background:#ffffff1f;border-color:#fff}.hp-features-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.hp-feature-card{position:relative;padding:30px 26px;background:#fff;border:1px solid var(--hp-line);border-radius:18px;box-shadow:var(--hp-shadow-sm);overflow:hidden;transform-style:preserve-3d;opacity:0;transform:translateY(34px);transition:opacity .5s cubic-bezier(.16,1,.3,1) var(--delay, 0s),transform .25s cubic-bezier(.16,1,.3,1),box-shadow .35s ease,border-color .35s ease}.hp-feature-card:before{content:"";position:absolute;inset:0 0 auto 0;height:3px;background:var(--accent, var(--hp-blue));transform:scaleX(0);transform-origin:left;transition:transform .35s ease}.hp-feature-card:hover{border-color:color-mix(in srgb,var(--accent, #2563eb) 45%,var(--hp-line));box-shadow:0 26px 50px -24px color-mix(in srgb,var(--accent, #2563eb) 55%,transparent),var(--hp-shadow-md)}.hp-feature-card:hover:before{transform:scaleX(1)}.hp-feature-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;margin-bottom:18px;border-radius:14px;color:var(--accent, var(--hp-blue));background:color-mix(in srgb,var(--accent, #2563eb) 12%,#fff);transition:transform .3s ease}.hp-feature-card:hover .hp-feature-icon{transform:translateY(-2px) scale(1.05)}.hp-feature-card h3{font-size:1.12rem;font-weight:700;color:var(--hp-ink);margin:0 0 9px}.hp-feature-card p{color:var(--hp-muted);font-size:.92rem;line-height:1.65;margin:0}.hp-feature-card.clickable{cursor:pointer}.hp-feature-card.clickable:focus-visible{outline:2px solid var(--accent, #2563eb);outline-offset:3px}.hp-feature-go{display:inline-flex;align-items:center;gap:5px;margin-top:16px;color:var(--accent, var(--hp-blue));font-size:.86rem;font-weight:600}.hp-feature-badge{position:absolute;top:16px;right:16px;padding:3px 10px;font-size:10px;font-weight:700;letter-spacing:.5px;color:#fff;background:linear-gradient(90deg,#db2777,#7c3aed);border-radius:999px;box-shadow:0 6px 14px -4px #db277780}.hp-flow{position:relative;padding:36px 0 8px}.hp-flow-svg{position:absolute;top:70px;left:6%;right:6%;width:88%;height:60px;z-index:0;display:none;pointer-events:none}@media (min-width: 900px){.hp-flow-svg{display:block}}.hp-flow-nodes{display:flex;flex-direction:column;gap:26px;position:relative;z-index:1}@media (min-width: 900px){.hp-flow-nodes{flex-direction:row;justify-content:space-between;gap:14px}}.hp-flow-node{flex:1;display:flex;flex-direction:column;align-items:center;text-align:center}.hp-workflow.in .hp-flow-node{transition-delay:var(--delay, 0s)}.hp-flow-dot{width:70px;height:70px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:16px;background:#fff;border:2px solid var(--hp-line);color:var(--hp-muted);box-shadow:var(--hp-shadow-sm);transition:all .4s cubic-bezier(.16,1,.3,1)}.hp-flow-node.active .hp-flow-dot{border-color:var(--hp-blue);color:var(--hp-blue);background:var(--hp-blue-soft);transform:translateY(-4px) scale(1.04);box-shadow:0 16px 30px -14px #2563eb8c}.hp-flow-step{font-size:11px;font-weight:700;color:var(--hp-blue);background:var(--hp-blue-soft);border:1px solid #dbe7ff;padding:3px 11px;border-radius:999px;margin-bottom:8px}.hp-flow-node h4{font-size:.98rem;font-weight:700;color:var(--hp-ink);margin:0 0 6px}.hp-flow-node p{font-size:.82rem;color:var(--hp-muted);line-height:1.55;max-width:150px;margin:0}@media (max-width: 899px){.hp-flow-node{flex-direction:row;text-align:left;gap:18px;position:relative}.hp-flow-dot{margin-bottom:0;flex-shrink:0}.hp-flow-node p{max-width:none}.hp-flow-node>div:first-child{align-self:flex-start}}.hp-footer{position:relative;z-index:1;border-top:1px solid var(--hp-line);background:#fff9}.hp-footer-inner{max-width:1200px;margin:0 auto;padding:30px 28px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.hp-footer-copy{color:var(--hp-muted);font-size:.88rem}@media (max-width: 900px){.hp-features-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 760px){.hp-nav-toggle{display:block}.hp-nav-links{position:absolute;top:calc(100% + 8px);left:16px;right:16px;flex-direction:column;align-items:stretch;padding:12px;background:#fff;border:1px solid var(--hp-line);border-radius:16px;box-shadow:var(--hp-shadow-md);display:none}.hp-nav-links.open{display:flex}.hp-nav-link{width:100%;justify-content:flex-start}.hp-nav-cta{margin-left:0;justify-content:center}.hp-section{padding:72px 20px}}@media (max-width: 560px){.hp-features-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion: reduce){.homepage *,.homepage *:before,.homepage *:after{animation-duration:.01ms!important;animation-delay:0ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.hp-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none}.hp-bg-grid{position:absolute;top:-10%;right:-10%;bottom:0;left:-10%;background-image:linear-gradient(rgba(37,99,235,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.045) 1px,transparent 1px);background-size:56px 56px;mask-image:radial-gradient(900px 600px at 50% 6%,#000 0%,transparent 78%);-webkit-mask-image:radial-gradient(900px 600px at 50% 6%,#000 0%,transparent 78%);transform:translateY(calc(var(--sy, 0) * .04px))}.hp-watermark{position:absolute;font-weight:900;letter-spacing:.04em;color:#0f172a;opacity:.035;-webkit-user-select:none;user-select:none;white-space:nowrap;line-height:.9}.hp-watermark-1{top:8%;left:-2%;font-size:clamp(7rem,18vw,18rem);transform:translateY(calc(var(--sy, 0) * .14px))}.hp-watermark-2{top:44%;right:-3%;font-size:clamp(6rem,15vw,15rem);color:#2563eb;opacity:.04;transform:translateY(calc(var(--sy, 0) * -.08px))}.hp-blob{position:absolute;border-radius:50%;filter:blur(70px);opacity:.55}.hp-blob-1{width:460px;height:460px;top:-120px;right:-60px;background:radial-gradient(circle,rgba(37,99,235,.28),transparent 70%);transform:translateY(calc(var(--sy, 0) * .06px))}.hp-blob-2{width:380px;height:380px;top:38%;left:-120px;background:radial-gradient(circle,rgba(124,58,237,.18),transparent 70%);transform:translateY(calc(var(--sy, 0) * -.05px))}.hp-blob-3{width:320px;height:320px;bottom:6%;right:8%;background:radial-gradient(circle,rgba(8,145,178,.14),transparent 70%);transform:translateY(calc(var(--sy, 0) * .03px))}.hp-hero{position:relative;z-index:1;max-width:1200px;margin:0 auto;padding:150px 28px 70px;text-align:center}.hp-hero-inner{max-width:860px;margin:0 auto;display:flex;flex-direction:column;align-items:center}.hp-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;background:#fffc;border:1px solid #dbe7ff;border-radius:999px;color:var(--hp-blue);font-size:.85rem;font-weight:600;box-shadow:var(--hp-shadow-sm);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.hp-badge svg{color:var(--hp-violet)}.hp-title{margin:26px 0 0;font-size:clamp(2.4rem,6vw,4.4rem);font-weight:900;line-height:1.08;letter-spacing:-.03em;color:var(--hp-ink)}.hp-title-line{display:block}.hp-hero .hp-title-accent{background:linear-gradient(110deg,#2563eb 10%,#4f46e5,#7c3aed);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hp-subtitle{margin:22px 0 0;max-width:600px;color:var(--hp-ink-soft);font-size:clamp(1rem,1.6vw,1.18rem);line-height:1.7}.hp-search{display:flex;align-items:center;gap:12px;width:min(560px,100%);margin:34px 0 0;padding:7px 7px 7px 20px;background:#fff;border:1px solid var(--hp-line);border-radius:16px;box-shadow:var(--hp-shadow-md);cursor:text;transition:box-shadow .25s,border-color .25s,transform .25s}.hp-search:hover{border-color:#c7d8f7;box-shadow:0 18px 44px -18px #2563eb66,var(--hp-shadow-md);transform:translateY(-2px)}.hp-search-icon{color:var(--hp-muted);flex-shrink:0}.hp-search-text{flex:1;text-align:left;color:var(--hp-muted);font-size:.98rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hp-search-type{color:var(--hp-ink);font-family:Fira Code,Consolas,monospace}.hp-caret{color:var(--hp-blue);animation:hpBlink 1s step-end infinite}@keyframes hpBlink{0%,to{opacity:1}50%{opacity:0}}.hp-search-go{flex-shrink:0;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:11px;background:var(--hp-blue);color:#fff;box-shadow:0 8px 18px -8px #2563ebb3;transition:background .2s,transform .2s}.hp-search:hover .hp-search-go{background:var(--hp-blue-d);transform:translate(2px)}.hp-hero-actions{display:flex;gap:14px;margin-top:26px;flex-wrap:wrap;justify-content:center}.hp-visual{position:relative;width:min(720px,100%);margin:60px auto 0;transform:translateY(calc(var(--sy, 0) * -.03px))}.hp-arrow-glow{position:absolute;inset:-8% 6% auto 6%;height:80%;background:radial-gradient(60% 80% at 50% 40%,rgba(37,99,235,.26),transparent 70%);filter:blur(20px);z-index:0}.hp-code-window{position:relative;z-index:2;margin:0 auto;width:min(560px,100%);background:#0f172a;border:1px solid rgba(148,163,184,.18);border-radius:16px;overflow:hidden;box-shadow:0 40px 80px -30px #0f172a99,0 12px 28px -12px #2563eb59;transform:perspective(1400px) rotateX(7deg) rotateY(calc(var(--mx, 0) * -6deg)) translate(calc(var(--mx, 0) * 8px),calc(var(--my, 0) * 8px));transition:transform .3s ease}.hp-code-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;background:#111c33;border-bottom:1px solid rgba(148,163,184,.12)}.hp-dot{width:11px;height:11px;border-radius:50%}.hp-dot.r{background:#ff5f56}.hp-dot.y{background:#ffbd2e}.hp-dot.g{background:#27ca40}.hp-code-file{margin-left:10px;color:#64748b;font-size:.8rem;font-family:Fira Code,monospace}.hp-code-body{margin:0;padding:20px 22px 24px;font-family:Fira Code,Consolas,monospace;font-size:.84rem;line-height:1.7;color:#cbd5e1;text-align:left;white-space:pre;overflow-x:auto}.t-key{color:#93c5fd}.t-cls{color:#fcd34d}.t-fn{color:#67e8f9}.t-num{color:#f9a8d4}.t-cmt{color:#6b7a90;font-style:italic}.hp-code-scan{position:absolute;left:0;right:0;top:44px;height:38px;background:linear-gradient(180deg,rgba(37,99,235,.22),transparent);animation:hpScan 4.5s ease-in-out infinite;pointer-events:none}@keyframes hpScan{0%,to{transform:translateY(0);opacity:0}20%{opacity:1}80%{transform:translateY(200px);opacity:.2}}.hp-node{position:absolute;z-index:3;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;background:#ffffffeb;border:1px solid var(--hp-line);border-radius:12px;font-size:.82rem;font-weight:600;color:var(--hp-ink);box-shadow:var(--hp-shadow-md);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:hpFloat 6s ease-in-out infinite}.hp-node svg{color:var(--hp-blue)}.hp-node-1{top:6%;left:-2%;animation-delay:0s;transform:translate(calc(var(--mx, 0) * 26px),calc(var(--my, 0) * 26px))}.hp-node-2{top:40%;right:-4%;animation-delay:1.4s;transform:translate(calc(var(--mx, 0) * 34px),calc(var(--my, 0) * 30px))}.hp-node-2 svg{color:var(--hp-violet)}.hp-node-3{bottom:2%;left:8%;animation-delay:.7s;transform:translate(calc(var(--mx, 0) * 22px),calc(var(--my, 0) * 24px))}.hp-node-3 svg{color:#059669}@keyframes hpFloat{0%,to{translate:0 0}50%{translate:0 -10px}}@media (max-width: 600px){.hp-node{display:none}.hp-visual{margin-top:44px}}.hp-steps{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);gap:22px;max-width:1040px;margin:70px auto 0}.hp-step-card{position:relative;padding:28px 24px;background:#fff;border:1px solid var(--hp-line);border-radius:18px;box-shadow:var(--hp-shadow-sm);opacity:0;transform:translateY(26px);animation:hpStepIn .6s cubic-bezier(.16,1,.3,1) forwards;animation-delay:calc(.5s + var(--i) * .12s);transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}@keyframes hpStepIn{to{opacity:1;transform:none}}.hp-step-card:hover{transform:translateY(-6px);border-color:#c7d8f7;box-shadow:var(--hp-shadow-md)}.hp-step-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.hp-step-num{font-size:2rem;font-weight:900;letter-spacing:-.02em;background:linear-gradient(180deg,#bcd2fb,#2563eb);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.hp-step-icon{width:46px;height:46px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:var(--hp-blue-soft);color:var(--hp-blue)}.hp-step-card h3{font-size:1.12rem;font-weight:700;color:var(--hp-ink);margin:0 0 8px}.hp-step-card p{font-size:.9rem;color:var(--hp-muted);line-height:1.6;margin:0}.hp-step-link{position:absolute;top:50%;right:-26px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;transform:translateY(-50%);color:#c7d2e3;z-index:2}@media (max-width: 820px){.hp-steps{grid-template-columns:1fr;max-width:460px}.hp-step-link{display:none}}.hp-br{display:none}@media (min-width: 600px){.hp-br{display:inline}}.hp-cta{position:relative;max-width:1100px;margin:0 auto;padding:64px 40px;text-align:center;border-radius:28px;overflow:hidden;color:#fff;background:radial-gradient(120% 140% at 0% 0%,#3b82f6 0%,transparent 55%),linear-gradient(120deg,#2563eb,#4f46e5 52%,#7c3aed);box-shadow:0 40px 80px -30px #2563eb99}.hp-cta:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:44px 44px;mask-image:radial-gradient(circle at 50% 0%,#000,transparent 70%);-webkit-mask-image:radial-gradient(circle at 50% 0%,#000,transparent 70%);pointer-events:none}.hp-cta-glow{position:absolute;width:420px;height:420px;right:-80px;bottom:-160px;background:radial-gradient(circle,rgba(255,255,255,.35),transparent 65%);filter:blur(40px);pointer-events:none}.hp-cta h2{position:relative;font-size:clamp(1.7rem,3.4vw,2.6rem);font-weight:800;letter-spacing:-.02em;margin:0 0 14px}.hp-cta p{position:relative;max-width:520px;margin:0 auto 30px;font-size:1.05rem;line-height:1.7;color:#ffffffe6}.hp-cta-actions{position:relative;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.hp-contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:48px;align-items:center;max-width:1080px;margin:0 auto}.hp-contact-info .hp-section-title{text-align:left}.hp-contact-desc{margin:18px 0 22px;color:var(--hp-muted);font-size:1.02rem;line-height:1.7;max-width:420px}.hp-contact-promise{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--hp-blue-soft);border:1px solid #dbe7ff;border-radius:999px;color:var(--hp-blue);font-size:.88rem;font-weight:600}.hp-contact-form{background:#fff;border:1px solid var(--hp-line);border-radius:22px;padding:30px;box-shadow:var(--hp-shadow-md)}.hp-form-group{margin-bottom:18px}.hp-form-group label{display:block;margin-bottom:8px;font-size:.88rem;font-weight:600;color:var(--hp-ink-soft)}.hp-input-wrap{position:relative}.hp-input-icon{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--hp-muted)}.hp-contact-form input,.hp-contact-form textarea{width:100%;padding:13px 16px;background:var(--hp-bg-soft);border:1px solid var(--hp-line);border-radius:12px;color:var(--hp-ink);font-size:.96rem;font-family:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .2s}.hp-contact-form input{padding-left:42px}.hp-contact-form textarea{resize:vertical;min-height:110px}.hp-contact-form input::placeholder,.hp-contact-form textarea::placeholder{color:#94a3b8}.hp-contact-form input:focus,.hp-contact-form textarea:focus{background:#fff;border-color:var(--hp-blue);box-shadow:0 0 0 4px #2563eb1f}.hp-contact-submit{width:100%;justify-content:center;margin-top:4px}.hp-contact-error{margin-bottom:14px;padding:10px 14px;background:#fef2f2;border:1px solid #fecaca;border-radius:10px;color:#dc2626;font-size:.9rem}.hp-contact-success{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px;color:#059669;font-weight:600}@media (max-width: 820px){.hp-contact-grid{grid-template-columns:1fr;gap:28px}.hp-contact-info .hp-section-title,.hp-contact-info{text-align:center}.hp-contact-desc{margin-left:auto;margin-right:auto}.hp-cta{padding:48px 24px}}.loading-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:linear-gradient(135deg,#f5f8fd,#eaf1ff,#f5f8fd);display:flex;align-items:center;justify-content:center;z-index:1000;overflow:hidden}.loading-canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:.5}.code-rain{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.code-line-float{position:absolute;top:-50px;font-family:Fira Code,Monaco,monospace;font-size:12px;color:#2563eb29;white-space:nowrap;animation:loadingCodeRain 8s linear forwards;text-shadow:0 0 10px rgba(37,99,235,.15)}@keyframes loadingCodeRain{0%{transform:translateY(0) rotate(-2deg);opacity:0}10%{opacity:1}90%{opacity:1}to{transform:translateY(calc(100vh + 100px)) rotate(2deg);opacity:0}}.loading-content{position:relative;display:flex;flex-direction:column;align-items:center;gap:48px;padding:40px;z-index:10}.loading-logo{position:relative;width:120px;height:120px;display:flex;align-items:center;justify-content:center}.logo-icon{color:var(--gs-primary);filter:drop-shadow(0 0 20px rgba(37,99,235,.4));animation:logoPulse 2s ease-in-out infinite}@keyframes logoPulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.logo-ring{position:absolute;border:2px solid transparent;border-radius:50%;animation:ringRotate 3s linear infinite}.ring-1{width:100%;height:100%;border-top-color:var(--gs-primary);border-right-color:#2563eb4d}.ring-2{width:80%;height:80%;border-bottom-color:#7c3aed;border-left-color:#7c3aed4d;animation-direction:reverse;animation-duration:2.5s}.ring-3{width:60%;height:60%;border-top-color:#10b981;animation-duration:2s}@keyframes ringRotate{to{transform:rotate(360deg)}}.loading-neural-network{position:relative;width:min(600px,90vw);height:120px}.loading-network-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.loading-network-line{stroke:#d8e2f0;stroke-width:2;stroke-linecap:round;transition:stroke .5s ease}.loading-network-line.active{stroke:#2563eb73}.loading-network-progress{stroke:url(#progressGradient);stroke-width:3;stroke-linecap:round;filter:drop-shadow(0 0 8px rgba(37,99,235,.4));stroke:var(--gs-primary)}.loading-network-node{position:absolute;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;gap:12px}.loading-node-circle{position:relative;width:48px;height:48px;border-radius:50%;background:var(--gs-surface);border:2px solid var(--gs-border);display:flex;align-items:center;justify-content:center;color:var(--gs-text-muted);box-shadow:var(--gs-shadow-sm);transition:all .5s cubic-bezier(.16,1,.3,1)}.loading-network-node.active .loading-node-circle{background:var(--gs-primary-soft);border-color:var(--gs-primary);color:var(--gs-primary);box-shadow:0 0 20px #2563eb40}.loading-network-node.current .loading-node-circle{transform:scale(1.15);background:#dbeafe}.loading-node-pulse{position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border-radius:50%;border:2px solid var(--gs-primary);animation:loadingNodePulse 1.5s ease-out infinite}@keyframes loadingNodePulse{0%{transform:scale(1);opacity:1}to{transform:scale(1.5);opacity:0}}.loading-node-label{font-size:12px;color:var(--gs-text-muted);white-space:nowrap;transition:color .3s ease}.loading-network-node.active .loading-node-label{color:var(--gs-text-soft)}.loading-network-node.current .loading-node-label{color:var(--gs-primary)}.loading-status{display:flex;flex-direction:column;align-items:center;gap:20px}.status-text{display:flex;align-items:center;gap:10px;font-size:16px;color:var(--gs-text-soft);padding:12px 24px;background:var(--gs-primary-soft);border:1px solid #dbe7ff;border-radius:30px;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.status-icon{color:var(--gs-primary);animation:statusPulse 1s ease-in-out infinite}@keyframes statusPulse{0%,to{opacity:1}50%{opacity:.5}}.loading-decoration{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.loading-decoration .hex{position:absolute;width:60px;height:60px;background:#2563eb0a;clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);animation:hexFloat 6s ease-in-out infinite}.hex-1{top:10%;left:10%;animation-delay:0s}.hex-2{top:20%;right:15%;animation-delay:2s;width:40px;height:40px}.hex-3{bottom:15%;left:20%;animation-delay:4s;width:50px;height:50px}@keyframes hexFloat{0%,to{transform:translateY(0) rotate(0);opacity:.5}50%{transform:translateY(-20px) rotate(30deg);opacity:1}}@media (max-width: 600px){.loading-content{gap:32px;padding:20px}.loading-logo{width:80px;height:80px}.logo-icon{width:32px;height:32px}.loading-neural-network{height:100px}.loading-node-circle{width:36px;height:36px}.loading-node-circle svg{width:16px;height:16px}.loading-node-label{font-size:10px}.status-text{font-size:14px;padding:10px 18px}}.call-info-popup{position:absolute;z-index:100;width:390px;max-height:400px;overflow-y:auto;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:10px;box-shadow:var(--gs-shadow-lg);font-size:.85rem;animation:popupFadeIn .15s ease-out}@keyframes popupFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.call-info-header{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--gs-border);background:var(--gs-primary-soft);border-radius:10px 10px 0 0}.call-info-func-name{color:var(--gs-primary-d);font-family:Fira Code,monospace;font-size:.9rem;font-weight:600}.call-info-close{background:none;border:none;color:var(--gs-text-muted);cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center}.call-info-close:hover{color:var(--gs-text);background:var(--gs-surface-2)}.call-info-desc{padding:8px 12px;color:var(--gs-text-soft);font-size:.82rem;border-bottom:1px solid var(--gs-border)}.call-info-params{padding:6px 12px;color:#0891b2;font-family:Fira Code,monospace;font-size:.78rem;border-bottom:1px solid var(--gs-border)}.call-info-section{padding:8px 0}.call-info-section-title{padding:4px 12px;color:var(--gs-text-muted);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.call-info-item{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;cursor:pointer;transition:background .1s}.call-info-item:hover{background:var(--gs-primary-soft)}.call-info-item-name{color:var(--gs-primary);font-family:Fira Code,monospace;font-size:.83rem}.call-info-item-file{color:var(--gs-text-muted);font-size:.75rem;margin-left:8px;flex-shrink:0}.editor-container .monaco-editor .codelens-decoration>a,.editor-container .monaco-editor .codelens-decoration>span{color:#60a5fa!important;font-size:11px!important}.editor-container .monaco-editor .codelens-decoration>a:hover{color:#3b82f6!important}.cell-calltree-badges{display:flex;flex-wrap:wrap;gap:6px;padding:6px 16px 2px}.calltree-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;background:var(--gs-primary-soft);border:1px solid #c7d8f7;border-radius:12px;color:var(--gs-primary-d);font-family:Fira Code,monospace;font-size:.75rem;cursor:pointer;transition:all .15s}.calltree-badge:hover{background:#e0eafe;border-color:var(--gs-primary)}.badge-count{font-size:.7rem;padding:0 3px;border-radius:4px;font-family:system-ui,sans-serif}.badge-count.up{color:#059669}.badge-count.down{color:#ea580c}.calltree-status{display:inline-flex;align-items:center;gap:4px;font-size:.75rem;padding:3px 8px;border-radius:6px;white-space:nowrap}.calltree-status.loading{color:var(--gs-text-muted)}.calltree-status.loading .spin{animation:spin 1s linear infinite}.calltree-status.ready{color:#059669;background:#ecfdf5}.run-panel{display:flex;flex-direction:column;background:#1a1a2e;border-top:1px solid rgba(0,212,255,.2);max-height:350px;overflow:hidden;font-size:.85rem;animation:runSlideUp .2s ease-out}.run-panel.light-theme{background:#f8f9fa;border-top-color:#0096c84d}@keyframes runSlideUp{0%{max-height:0;opacity:0}to{max-height:350px;opacity:1}}.run-toolbar{display:flex;align-items:center;justify-content:space-between;padding:6px 12px;background:#00d4ff0f;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}.run-panel.light-theme .run-toolbar{background:#0096c80f;border-bottom-color:#00000014}.run-toolbar-left{display:flex;align-items:center;gap:8px}.run-icon{color:#00d4ff}.run-title{color:#00d4ff;font-weight:600;font-size:.82rem}.run-panel.light-theme .run-title,.run-panel.light-theme .run-icon{color:#08a}.run-toolbar-actions{display:flex;align-items:center;gap:4px}.run-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid rgba(255,255,255,.1);border-radius:4px;background:#ffffff0d;color:#fffc;font-size:.78rem;cursor:pointer;transition:all .15s;white-space:nowrap}.run-panel.light-theme .run-btn{border-color:#00000026;background:#0000000a;color:#000000b3}.run-btn:hover:not(:disabled){background:#ffffff1f;border-color:#00d4ff4d;color:#fff}.run-panel.light-theme .run-btn:hover:not(:disabled){background:#0096c81a;border-color:#0096c84d;color:#000}.run-btn:disabled{opacity:.5;cursor:not-allowed}.run-btn.primary{background:#00d4ff26;border-color:#00d4ff4d;color:#00d4ff}.run-btn.primary:hover{background:#00d4ff40}.run-btn.stop{color:#ff6b6b;border-color:#ff6b6b33}.run-btn.stop:hover{background:#ff6b6b26;border-color:#ff6b6b66}.run-panel .spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.run-entry{border-bottom:1px solid rgba(255,255,255,.06);padding:8px 12px}.run-entry-header{color:#ffffff80;font-size:.78rem;margin-bottom:6px}.run-panel.light-theme .run-entry-header{color:#00000080}.run-entry-textarea{width:100%;background:#0000004d;border:1px solid rgba(255,255,255,.1);border-radius:6px;color:#e8d44d;font-family:Fira Code,monospace;font-size:.82rem;line-height:1.5;padding:8px;resize:vertical;outline:none;box-sizing:border-box}.run-entry-textarea:focus{border-color:#00d4ff66}.run-panel.light-theme .run-entry-textarea{background:#fff;border-color:#00000026;color:#333}.run-entry-actions{display:flex;gap:6px;margin-top:6px}.run-result{overflow-y:auto;flex:1;min-height:0}.run-result-header{display:flex;align-items:center;gap:6px;padding:8px 12px;font-size:.78rem;font-weight:600}.run-result-header.success{color:#4ec9b0}.run-result-header.error{color:#ff6b6b}.run-output{margin:0;padding:8px 12px;font-family:Fira Code,monospace;font-size:.82rem;line-height:1.6;white-space:pre-wrap;word-break:break-all;color:#4ec9b0;background:#0003}.run-output.error{color:#ff6b6b}.run-panel.light-theme .run-output{color:#098658;background:#00000008}.run-panel.light-theme .run-output.error{color:#d32f2f}.run-explanation{padding:6px 12px;color:#ffffff80;font-size:.78rem;border-top:1px solid rgba(255,255,255,.05)}.run-panel.light-theme .run-explanation{color:#00000080}.run-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;color:#ffffff4d;gap:6px}.run-panel.light-theme .run-empty{color:#0000004d}.run-empty p{margin:0;font-size:.82rem}.run-hint{font-size:.75rem!important;opacity:.7}.debug-toggle-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid rgba(0,212,255,.25);border-radius:6px;background:#00d4ff14;color:#00d4ff;font-size:.78rem;cursor:pointer;transition:all .15s;white-space:nowrap}.debug-toggle-btn:hover{background:#00d4ff2e;border-color:#00d4ff66}.debug-toggle-btn.active{background:#00d4ff33;border-color:#00d4ff80;box-shadow:0 0 8px #00d4ff33}.light-theme .debug-toggle-btn{border-color:#0096c84d;background:#0096c814;color:#08a}.light-theme .debug-toggle-btn:hover{background:#0096c826}.light-theme .debug-toggle-btn.active{background:#0096c833;border-color:#0096c880}.run-toggle-btn{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid rgba(78,201,176,.3);border-radius:6px;background:#4ec9b01a;color:#4ec9b0;cursor:pointer;transition:all .15s}.run-toggle-btn:hover{background:#4ec9b033;border-color:#4ec9b080}.run-toggle-btn.active{background:#4ec9b040;border-color:#4ec9b099;box-shadow:0 0 8px #4ec9b033}.light-theme .run-toggle-btn{border-color:#0096644d;background:#00966414;color:#098658}.light-theme .run-toggle-btn:hover{background:#00966426}.light-theme .run-toggle-btn.active{background:#00966433;border-color:#00966480}.run-file{color:#ffffff59;font-size:.75rem;font-family:Fira Code,monospace}.run-panel.light-theme .run-file{color:#00000059}.run-loading{display:inline-flex;align-items:center;gap:4px;color:#ffffff80;font-size:.78rem}.run-panel.light-theme .run-loading{color:#00000080}.run-btn.close{color:#fff6;border-color:#ffffff14}.run-btn.close:hover{color:#fffc;background:#ffffff14}.run-panel.light-theme .run-btn.close{color:#0006}.run-no-output{padding:16px 12px;color:#ffffff73;font-size:.82rem;text-align:center}.run-panel.light-theme .run-no-output{color:#00000073}.selection-actions{position:absolute;top:0;right:0;z-index:50;display:flex;flex-direction:column;height:100%;pointer-events:none;animation:selectionFadeIn .15s ease-out}@keyframes selectionFadeIn{0%{opacity:0;transform:translate(4px)}to{opacity:1;transform:translate(0)}}.selection-action-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:4px;width:64px;border:none;border-left:1px solid rgba(78,201,176,.2);background:#1e1e2ed9;color:#4ec9b0;font-size:.7rem;cursor:pointer;transition:all .15s;pointer-events:auto;writing-mode:vertical-rl;text-orientation:mixed;letter-spacing:1px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.selection-action-btn:hover{background:#4ec9b033}.selection-action-btn.run{border-bottom:1px solid rgba(255,255,255,.06)}.selection-action-btn.visualize{border-left-color:#0af3;color:#0af;border-bottom:1px solid rgba(255,255,255,.06)}.selection-action-btn.visualize:hover{background:#0af3}.selection-action-btn.ask{border-left-color:#c896ff33;color:#c896ff}.selection-action-btn.ask:hover{background:#c896ff33}.selection-action-btn:disabled{opacity:.6;cursor:not-allowed}.selection-action-btn .spin{animation:spin 1s linear infinite}.light-theme .selection-action-btn{background:#ffffffe6;border-left-color:#00966433;color:#098658}.light-theme .selection-action-btn:hover{background:#0096641a}.light-theme .selection-action-btn.visualize{border-left-color:#0078c833;color:#0078c8}.light-theme .selection-action-btn.visualize:hover{background:#0078c81a}.light-theme .selection-action-btn.ask{border-left-color:#8c50c833;color:#8c50c8}.light-theme .selection-action-btn.ask:hover{background:#8c50c81a}.viz-overlay,.viz-error-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;background:#0009;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:selectionFadeIn .15s ease-out}.viz-modal{background:#1e1e2e;border:1px solid rgba(78,201,176,.3);border-radius:12px;width:90%;max-width:520px;max-height:80vh;display:flex;flex-direction:column;box-shadow:0 20px 60px #00000080}.viz-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08);font-size:.95rem;color:#4ec9b0;font-weight:600}.viz-header button{background:none;border:none;color:#888;cursor:pointer;padding:4px;border-radius:4px}.viz-header button:hover{color:#fff;background:#ffffff1a}.viz-pipeline{padding:20px;overflow-y:auto;display:flex;flex-direction:column;align-items:center}.viz-step{display:flex;flex-direction:column;align-items:center;width:100%}.viz-arrow{display:flex;justify-content:center;opacity:.6}.viz-node{width:100%;max-width:400px;border:1px solid;border-radius:8px;background:#1e1e2ecc;overflow:hidden}.viz-node-type{padding:4px 12px;font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:#1e1e2e}.viz-node-label{padding:8px 12px 4px;font-size:.85rem;color:#e0e0e0;font-weight:500}.viz-node-code{padding:4px 12px 10px}.viz-node-code code{font-size:.72rem;color:#888;font-family:Fira Code,monospace;word-break:break-all}.viz-error-modal{background:#1e1e2e;border:1px solid rgba(0,170,255,.3);border-radius:12px;width:90%;max-width:400px;box-shadow:0 20px 60px #00000080}.viz-error-header{display:flex;align-items:center;gap:8px;padding:14px 18px;border-bottom:1px solid rgba(255,255,255,.08);color:#0af;font-weight:600;font-size:.95rem}.viz-error-header button{margin-left:auto;background:none;border:none;color:#888;cursor:pointer;padding:4px;border-radius:4px}.viz-error-header button:hover{color:#fff;background:#ffffff1a}.viz-error-body{padding:18px;color:#ccc;font-size:.85rem;line-height:1.6;white-space:pre-wrap}.slide-player{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10000;display:flex;flex-direction:column;background:#f8f9fb;color:#1e293b;font-family:Microsoft YaHei,PingFang SC,sans-serif}.slide-player.fullscreen{border-radius:0}.slide-player-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#fff;border-bottom:1px solid #e5e7eb;flex-shrink:0}.slide-player-title{display:flex;align-items:center;gap:8px;font-size:14px;color:#64748b}.slide-page-indicator{font-size:12px;color:#4f46e5;background:#4f46e514;padding:2px 8px;border-radius:10px;font-variant-numeric:tabular-nums}.slide-player-header-actions{display:flex;gap:4px}.slide-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;border-radius:8px;background:#f1f5f9;color:#64748b;cursor:pointer;transition:all .2s;font-size:12px;font-weight:600}.slide-btn:hover{background:#e2e8f0;color:#1e293b}.slide-btn:disabled{opacity:.3;cursor:not-allowed}.slide-btn.active{background:#4f46e51a;color:#4f46e5}.slide-btn-primary{width:40px;height:40px;background:#4f46e5;color:#fff;border-radius:50%}.slide-btn-primary:hover{background:#4338ca;color:#fff;transform:scale(1.05)}.slide-canvas-container{flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:#f1f3f5;min-height:0}.slide-canvas{position:relative;border-radius:8px;overflow:hidden;box-shadow:0 2px 20px #00000014}.slide-canvas:has(.slide-layout--quiz),.slide-canvas--scrollable{overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}.slide-layout{width:100%;height:100%;display:flex;flex-direction:column;padding:56px 64px 48px;box-sizing:border-box;overflow:hidden}.slide-layout__title{flex-shrink:0;margin-bottom:28px}.slide-layout__title h2{margin:0;font-size:30px;font-weight:700;color:#1e293b;line-height:1.3}.slide-layout__subtitle{margin:8px 0 0;font-size:17px;color:#64748b;line-height:1.5}.slide-layout__body{flex:1;min-height:0;display:flex;align-items:center;overflow:hidden}.slide-layout--cover{justify-content:center;align-items:center;text-align:center;padding:72px 64px 56px}.slide-layout--cover .slide-layout__title{margin-bottom:24px}.slide-layout--cover .slide-layout__title h2{font-size:40px;background:linear-gradient(135deg,#4f46e5,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.slide-layout--cover .slide-layout__subtitle{font-size:20px;color:#64748b;max-width:700px}.slide-layout--cover .slide-layout__body{flex:none;justify-content:center}.layout-cover{display:flex;flex-direction:column;align-items:center;gap:24px}.cover-desc{margin:0;font-size:17px;color:#64748b;line-height:1.7;max-width:650px;text-align:center}.cover-tags{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}.cover-tag{padding:6px 18px;border-radius:20px;font-size:14px;background:#4f46e50f;color:#4f46e5;border:1px solid rgba(79,70,229,.15)}.layout-bullets{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px;width:100%}.layout-bullets li{position:relative;padding:10px 16px 10px 32px;font-size:18px;line-height:1.6;color:#334155;background:#f8fafc;border-radius:8px;border-left:3px solid #4f46e5}.layout-bullets li strong{color:#1e293b}.layout-bullets li em{color:#4f46e5;font-style:normal}.layout-text{font-size:18px;line-height:1.8;color:#475569;width:100%;overflow-y:auto}.layout-text p{margin:0 0 14px}.layout-text strong{color:#1e293b}.layout-text em{color:#4f46e5;font-style:normal}.layout-code-full{width:100%;flex:1;min-height:0;display:flex;align-items:center}.layout-code-full .slide-code-block{width:100%;max-height:100%}.layout-mermaid-full{width:100%;flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.layout-mermaid-full .slide-mermaid,.layout-mermaid-full .slide-mermaid-fallback{width:100%;height:100%}.layout-table-full{width:100%;flex:1;min-height:0;overflow-y:auto;display:flex;align-items:flex-start}.layout-table-full .slide-table-inner{width:100%}.layout-svg-full{width:100%;flex:1;min-height:0;display:flex;align-items:center;justify-content:center}.layout-svg-full .slide-svg-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.layout-svg-full .diagram-svg,.layout-svg-full svg{max-width:100%;max-height:100%;height:auto}.layout-two-col{display:grid;grid-template-columns:1fr 1fr;gap:32px;width:100%;height:100%;min-height:0;align-items:center}.layout-col{min-height:0;overflow-y:auto;font-size:17px;line-height:1.8;color:#475569;height:100%;display:flex;flex-direction:column;justify-content:center}.layout-col p{margin:0 0 12px}.layout-col strong{color:#1e293b}.layout-col em{color:#4f46e5;font-style:normal}.layout-col .layout-bullets{gap:12px}.layout-col .layout-bullets li{font-size:16px;padding:8px 12px 8px 28px}.layout-text-table{display:flex;flex-direction:column;gap:20px;width:100%;height:100%;min-height:0}.layout-text-section{font-size:17px;line-height:1.7;color:#475569;flex-shrink:0}.layout-text-section p{margin:0 0 8px}.layout-text-section strong{color:#1e293b}.layout-table-section{flex:1;min-height:0;overflow-y:auto}.slide-layout--highlight{justify-content:center;align-items:center}.slide-layout--highlight .slide-layout__title{display:none}.slide-layout--highlight .slide-layout__body{flex:none}.layout-highlight{display:flex;align-items:center;justify-content:center}.highlight-card{text-align:center;padding:48px 64px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:20px;max-width:720px;box-shadow:0 4px 24px #0000000a}.highlight-icon{font-size:52px;margin-bottom:20px}.highlight-main{font-size:28px;font-weight:700;color:#1e293b;line-height:1.4;margin-bottom:16px}.highlight-desc{font-size:17px;color:#64748b;line-height:1.7}.slide-layout--ending{justify-content:center}.layout-ending{display:flex;flex-direction:column;gap:28px;width:100%}.ending-summary{font-size:17px;line-height:1.8;color:#475569;padding:20px 24px;background:#f8fafc;border-left:3px solid #4f46e5;border-radius:0 12px 12px 0}.ending-steps{display:flex;flex-direction:column;gap:14px}.ending-step{display:flex;align-items:center;gap:16px;font-size:17px;color:#334155;line-height:1.5;padding:8px 12px;background:#f8fafc;border-radius:8px}.ending-step-num{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-size:14px;font-weight:700}.slide-code-block{position:relative;background:#f8fafc;border-radius:10px;border:1px solid #e2e8f0;overflow:hidden;display:flex;flex-direction:column;max-height:100%}.slide-code-lang{padding:4px 12px;font-size:11px;color:#94a3b8;background:#f1f5f9;border-bottom:1px solid #e2e8f0;text-transform:uppercase;letter-spacing:.5px;flex-shrink:0}.slide-code-block pre{margin:0;padding:16px 18px;overflow:auto;flex:1;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.1) transparent}.slide-code-block code{font-family:Fira Code,Consolas,Monaco,monospace;font-size:14px;line-height:1.7;color:#334155;white-space:pre-wrap;word-break:break-all}.slide-code-block .hljs{color:#334155;background:transparent}.slide-code-block .hljs-keyword,.slide-code-block .hljs-selector-tag,.slide-code-block .hljs-built_in,.slide-code-block .hljs-type{color:#7c3aed}.slide-code-block .hljs-string,.slide-code-block .hljs-attr{color:#059669}.slide-code-block .hljs-number,.slide-code-block .hljs-literal{color:#d97706}.slide-code-block .hljs-comment,.slide-code-block .hljs-doctag{color:#94a3b8;font-style:italic}.slide-code-block .hljs-function,.slide-code-block .hljs-title{color:#2563eb}.slide-code-block .hljs-params{color:#334155}.slide-code-block .hljs-variable,.slide-code-block .hljs-template-variable{color:#dc2626}.slide-code-block .hljs-meta{color:#d97706}.slide-code-block .hljs-regexp{color:#0891b2}.slide-code-block .hljs-symbol,.slide-code-block .hljs-bullet,.slide-code-block .hljs-class .hljs-title,.slide-code-block .hljs-title.class_{color:#d97706}.slide-code-block .hljs-property{color:#0d9488}.slide-code-block .hljs-operator{color:#0891b2}.slide-code-block .hljs-punctuation{color:#64748b}.slide-code-block .hljs-decorator,.slide-code-block .hljs-meta .hljs-keyword{color:#2563eb}.slide-mermaid{display:flex;align-items:center;justify-content:center;background:#f8fafc;border-radius:10px;padding:16px;overflow:hidden;max-height:100%;width:100%;border:1px solid #e2e8f0}.slide-mermaid-inner{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.slide-mermaid-inner svg{max-width:100%;max-height:100%;height:auto;width:auto}.slide-mermaid-fallback{display:flex;align-items:center;justify-content:center;height:100%;width:100%;padding:16px}.slide-svg svg{max-width:100%;height:auto}.slide-image-wrapper{width:100%;max-height:100%;border-radius:10px;overflow:hidden}.slide-image-wrapper img{width:100%;height:auto;max-height:100%;object-fit:contain;border-radius:10px}.slide-image-placeholder{width:100%;aspect-ratio:16 / 9;max-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:#f1f5f9;border-radius:10px;border:1px dashed #cbd5e1;font-size:48px;color:#94a3b8}.slide-image-hint{font-size:13px;color:#94a3b8}.slide-image-spinner{width:24px;height:24px;border:2px solid #e2e8f0;border-top-color:#4f46e5;border-radius:50%;animation:spin .8s linear infinite}.layout-col--image{overflow:hidden;border-radius:10px}.cover-bg-image{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.08}.cover-bg-image .slide-image-wrapper,.cover-bg-image .slide-image-wrapper img{border-radius:0}.slide-layout--cover{position:relative}.slide-layout--cover .slide-layout__title,.slide-layout--cover .slide-layout__body{position:relative;z-index:1}.slide-table-inner{width:100%;border-collapse:collapse;font-size:15px;color:#334155}.slide-table-inner th{background:#f1f5f9;color:#4f46e5;font-weight:600;padding:12px 16px;text-align:left;border-bottom:2px solid #e2e8f0}.slide-table-inner td{padding:10px 16px;border-bottom:1px solid #f1f5f9;line-height:1.6}.slide-table-inner tr:hover td{background:#f8fafc}.slide-table-inner td code{background:#f1f5f9;color:#7c3aed;padding:2px 6px;border-radius:4px;font-size:13px;font-family:Fira Code,Consolas,monospace}.mermaid-fallback-flow{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;width:100%}.mermaid-fallback-item{display:flex;align-items:center;gap:6px}.mermaid-fallback-arrow{color:#cbd5e1;font-size:20px;font-weight:300;padding:0 2px}.mermaid-fallback-node{padding:10px 18px;border:1.5px solid;border-radius:8px;font-size:14px;font-weight:500;background:#fff;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}.slide-subtitle{position:absolute;bottom:24px;left:50%;transform:translate(-50%);max-width:80%;padding:10px 20px;background:#ffffffeb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:10px;border:1px solid #e2e8f0;box-shadow:0 2px 12px #0000000f;animation:subtitleFadeIn .3s ease;z-index:10}.slide-subtitle p{margin:0;font-size:15px;line-height:1.6;color:#334155;text-align:center}.slide-subtitle-loading{display:flex;align-items:center;justify-content:center;gap:8px;font-size:13px!important;color:#64748b!important;margin-bottom:4px!important}.slide-subtitle-spinner{display:inline-block;width:12px;height:12px;border:2px solid #cbd5e1;border-top-color:#4f46e5;border-radius:50%;animation:slideSubtitleSpin .8s linear infinite}@keyframes slideSubtitleSpin{to{transform:rotate(360deg)}}@keyframes subtitleFadeIn{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.slide-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:40px;height:80px;border:none;border-radius:8px;background:#ffffffb3;color:#94a3b8;cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;z-index:5;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.slide-nav-btn:hover{background:#fff;color:#4f46e5;box-shadow:0 2px 8px #00000014}.slide-nav-prev{left:12px}.slide-nav-next{right:12px}.slide-progress-bar{height:6px;background:#e2e8f0;cursor:pointer;position:relative;flex-shrink:0}.slide-progress-fill{height:100%;background:linear-gradient(90deg,#4f46e5,#7c3aed);border-radius:0 3px 3px 0;transition:width .3s ease}.slide-controls{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:#fff;border-top:1px solid #e5e7eb;flex-shrink:0}.slide-controls-left,.slide-controls-right{display:flex;align-items:center;gap:6px}.slide-controls-center{flex:1;text-align:center}.slide-current-title{font-size:13px;color:#94a3b8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.slide-speed-select{background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text);font-size:12px;padding:4px 6px;cursor:pointer;outline:none;color-scheme:light}.slide-speed-select:hover{border-color:#4f46e5}.slide-speed-select:focus{border-color:#4f46e5;background:#fff;box-shadow:0 0 0 4px #4f46e51f}.slide-speed-select option{background:#fff;color:var(--gs-text)}.slide-thumbnails{display:flex;gap:8px;padding:12px 16px;background:#fff;border-top:1px solid #e5e7eb;overflow-x:auto;flex-shrink:0;scrollbar-width:thin;scrollbar-color:rgba(79,70,229,.2) transparent}.slide-thumbnail{flex-shrink:0;width:120px;cursor:pointer;border-radius:6px;overflow:hidden;border:2px solid #e2e8f0;transition:all .2s}.slide-thumbnail:hover{border-color:#a5b4fc}.slide-thumbnail.active{border-color:#4f46e5;box-shadow:0 0 8px #4f46e533}.slide-thumbnail-inner{aspect-ratio:16/9;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:6px;gap:2px}.slide-thumbnail-number{font-size:16px;font-weight:700;color:#94a3b8}.slide-thumbnail-title{font-size:9px;color:#94a3b8;text-align:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.colab-btn{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:8px;border:1px solid #fde68a;background:#fffbeb;color:#d97706;font-size:13px;font-weight:500;cursor:pointer;transition:all .3s;white-space:nowrap;text-decoration:none}.colab-btn:hover{background:#fef3c7;border-color:#fcd34d;color:#b45309;box-shadow:0 2px 10px #d977062e;transform:translateY(-1px)}.colab-btn:active{transform:translateY(0)}.colab-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}a.colab-btn{background:#ecfdf5;border-color:#a7f3d0;color:#059669}a.colab-btn:hover{background:#d1fae5;border-color:#6ee7b7;color:#047857;box-shadow:0 2px 10px #0596692e}.slides-generate-btn{padding:10px 20px;border-radius:8px;border:none;background:linear-gradient(135deg,#4f46e5,#7c3aed);color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .3s;white-space:nowrap}.slides-generate-btn:hover{background:linear-gradient(135deg,#4338ca,#6d28d9);box-shadow:0 0 16px #4f46e54d;transform:translateY(-1px)}.slides-generate-btn:active{transform:translateY(0)}.slides-generate-btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.slides-generating-bar{margin:8px 0 12px;padding:10px 14px;background:#6366f114;border:1px solid rgba(99,102,241,.15);border-radius:10px;animation:slideGenFadeIn .3s ease}.slides-generating-bar-inner{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:13px;color:#4f46e5}.slides-generating-spinner{width:14px;height:14px;border:2px solid rgba(99,102,241,.2);border-top-color:#818cf8;border-radius:50%;animation:spin .8s linear infinite;flex-shrink:0}.slides-generating-track{height:4px;background:#6366f11a;border-radius:2px;overflow:hidden}.slides-generating-fill{height:100%;width:40%;background:linear-gradient(90deg,transparent,#818cf8,transparent);border-radius:2px;animation:slideGenSweep 2s ease-in-out infinite}.slide-layout--quiz{padding:48px 48px 16px;overflow:visible;height:auto;min-height:100%}.slide-layout--quiz .slide-layout__title{margin-bottom:16px;flex-shrink:0}.slide-layout--quiz .slide-layout__title h2{font-size:24px;color:#4f46e5}.slide-layout--quiz .slide-layout__body{align-items:stretch;overflow:visible;flex:none}.layout-quiz{width:100%;padding-bottom:24px}.quiz-block{display:flex;flex-direction:column;gap:20px;width:100%;padding-bottom:16px}.quiz-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;padding:20px 24px;transition:border-color .3s}.quiz-item.quiz-correct{border-color:#10b981;background:#f0fdf4}.quiz-item.quiz-wrong{border-color:#ef4444;background:#fef2f2}.quiz-question-header{display:flex;align-items:center;gap:10px;margin-bottom:10px}.quiz-num{width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#4f46e5;color:#fff;font-size:13px;font-weight:700;flex-shrink:0}.quiz-type-tag{font-size:11px;color:#64748b;background:#f1f5f9;padding:2px 8px;border-radius:4px}.quiz-question-text{font-size:16px;color:#1e293b;line-height:1.6;margin-bottom:14px;font-weight:500}.quiz-options{display:flex;flex-direction:column;gap:8px;margin-bottom:12px}.quiz-tf{flex-direction:row;gap:12px}.quiz-tf .quiz-option{flex:1;justify-content:center}.quiz-option{display:flex;align-items:center;gap:10px;padding:10px 14px;border:1.5px solid #e2e8f0;border-radius:8px;cursor:pointer;transition:all .2s;font-size:14px;color:#334155;background:#fff}.quiz-option:hover{border-color:#a5b4fc;background:#f5f3ff}.quiz-option.selected{border-color:#4f46e5;background:#ede9fe;color:#4f46e5}.quiz-option.correct-answer{border-color:#10b981;background:#ecfdf5;color:#059669}.quiz-option.wrong-answer{border-color:#ef4444;background:#fef2f2;color:#dc2626}.quiz-option-letter{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#f1f5f9;font-size:12px;font-weight:700;color:#64748b;flex-shrink:0}.quiz-option.selected .quiz-option-letter{background:#4f46e5;color:#fff}.quiz-option.correct-answer .quiz-option-letter{background:#10b981;color:#fff}.quiz-option.wrong-answer .quiz-option-letter{background:#ef4444;color:#fff}.quiz-submit-btn{padding:8px 24px;border:none;border-radius:8px;background:#4f46e5;color:#fff;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.quiz-submit-btn:hover{background:#4338ca}.quiz-submit-btn:disabled{opacity:.4;cursor:not-allowed}.quiz-explanation{display:flex;align-items:flex-start;gap:8px;padding:10px 14px;border-radius:8px;font-size:14px;line-height:1.5;margin-top:8px}.quiz-explanation.correct{background:#ecfdf5;color:#065f46}.quiz-explanation.wrong{background:#fef2f2;color:#991b1b}.quiz-result-icon{flex-shrink:0;font-size:16px}@keyframes slideGenFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@keyframes slideGenSweep{0%{transform:translate(-100%)}to{transform:translate(350%)}}.file-overview-graph{background:radial-gradient(ellipse at 50% 0%,var(--gs-primary-soft) 0%,var(--gs-surface) 70%);border:1px solid var(--gs-border);border-radius:14px;margin-bottom:24px;overflow:hidden;position:relative;box-shadow:var(--gs-shadow-sm)}.file-overview-graph.maximized{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:var(--gs-bg);background-image:radial-gradient(ellipse at 50% 0%,var(--gs-primary-soft) 0%,var(--gs-bg) 60%);border-color:var(--gs-border-strong);margin:0;border-radius:0;box-shadow:none;isolation:isolate}.fog-header{display:flex;align-items:center;justify-content:space-between;padding:12px 18px;border-bottom:1px solid var(--gs-border);background:var(--gs-surface-2);flex-wrap:wrap;gap:8px}.fog-header h3{display:flex;align-items:center;gap:8px;color:var(--gs-primary);font-size:.92rem;font-weight:600;margin:0;white-space:nowrap}.fog-header h3 svg{color:var(--gs-primary)}.fog-header-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.fog-loading-inline{display:flex;align-items:center;gap:6px;color:var(--gs-text-muted);font-size:.78rem}.fog-spin{animation:fogSpin 1s linear infinite}@keyframes fogSpin{to{transform:rotate(360deg)}}.fog-file-count{color:var(--gs-text-muted);font-size:.76rem}.fog-legend{display:flex;gap:10px;font-size:.72rem;color:var(--gs-text-muted)}.fog-legend-item{display:flex;align-items:center;gap:4px}.fog-legend-dot{width:8px;height:8px;border-radius:50%}.fog-legend-dot.core{background:#fbbf24;box-shadow:0 0 6px #fbbf2480}.fog-legend-dot.import{background:#4ec9b0;box-shadow:0 0 6px #4ec9b080}.fog-legend-dot.imported-by{background:#60a5fa;box-shadow:0 0 6px #60a5fa80}.fog-maximize-btn{background:none;border:1px solid var(--gs-border);color:var(--gs-text-muted);border-radius:6px;padding:4px 6px;cursor:pointer;display:flex;align-items:center;transition:all .15s}.fog-maximize-btn:hover{color:var(--gs-primary);border-color:#c7d8f7;background:var(--gs-primary-soft)}.fog-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;-webkit-user-select:none;user-select:none}.fog-toggle input{display:none}.fog-toggle-slider{position:relative;width:32px;height:18px;background:#cbd5e1;border-radius:9px;transition:all .25s;flex-shrink:0}.fog-toggle-slider:after{content:"";position:absolute;top:2px;left:2px;width:14px;height:14px;background:#fff;border-radius:50%;box-shadow:0 1px 2px #0f172a33;transition:all .25s}.fog-toggle input:checked+.fog-toggle-slider{background:#2563eb59}.fog-toggle input:checked+.fog-toggle-slider:after{left:16px;background:var(--gs-primary);box-shadow:0 0 6px #2563eb66}.fog-toggle-label{color:var(--gs-text-muted);font-size:.72rem;white-space:nowrap}.fog-toggle input:checked~.fog-toggle-label{color:var(--gs-primary)}.fog-canvas{position:relative;height:450px;overflow:hidden;background-image:radial-gradient(circle at 50% 50%,rgba(37,99,235,.04) 0%,transparent 70%),linear-gradient(rgba(15,23,42,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(15,23,42,.04) 1px,transparent 1px);background-size:100% 100%,40px 40px,40px 40px}.file-overview-graph.maximized .fog-canvas{height:calc(100% - 48px)}.fog-svg{display:block}.fog-layer-label{font-family:Fira Code,monospace;-webkit-user-select:none;user-select:none;pointer-events:none;fill:#cbd5e1}.fog-node{transition:opacity .2s}.fog-node.dimmed{opacity:.12}.fog-node-bg{fill:var(--gs-surface);stroke:#c7d8f7;stroke-width:1.2;transition:all .2s}.fog-node.hovered .fog-node-bg{fill:var(--gs-primary-soft);stroke:var(--gs-primary);stroke-width:2}.fog-node.core .fog-node-bg{stroke:#f59e0b;fill:#fffbeb}.fog-node.is-import .fog-node-bg{fill:#ecfdf5;stroke:#4ec9b0;stroke-width:1.8}.fog-node.is-imported-by .fog-node-bg{fill:var(--gs-primary-soft);stroke:#60a5fa;stroke-width:1.8}.fog-node-text{fill:var(--gs-text);font-family:Fira Code,Consolas,monospace;font-weight:500;pointer-events:none;-webkit-user-select:none;user-select:none}.fog-node.hovered .fog-node-text{fill:var(--gs-primary-d)}.fog-node.core .fog-node-text{fill:#b45309}.fog-node.is-import .fog-node-text{fill:#047857}.fog-node.is-imported-by .fog-node-text{fill:var(--gs-primary-d)}.fog-node.dimmed .fog-node-text{fill:#0f172a40}.fog-node-meta{fill:var(--gs-text-muted);font-family:Fira Code,monospace;pointer-events:none;-webkit-user-select:none;user-select:none}.fog-node.dimmed .fog-node-meta{fill:#0f172a1f}.fog-edge-hl{animation:edgePulse 2s ease-in-out infinite}@keyframes edgePulse{0%,to{stroke-opacity:.8}50%{stroke-opacity:1}}.fog-tooltip{position:absolute;z-index:100;pointer-events:none;background:#fffffff7;border:1px solid #c7d8f7;border-radius:10px;padding:12px 16px;min-width:200px;max-width:320px;box-shadow:var(--gs-shadow-lg);animation:tooltipIn .12s ease-out;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}@keyframes tooltipIn{0%{opacity:0;transform:translate(-50%,-100%) translateY(6px)}to{opacity:1;transform:translate(-50%,-100%) translateY(0)}}.fog-tooltip-filename{color:var(--gs-primary-d);font-family:Fira Code,monospace;font-size:.88rem;font-weight:600;margin-bottom:2px}.fog-tooltip-path{color:var(--gs-text-muted);font-size:.7rem;margin-bottom:8px;word-break:break-all}.fog-tooltip-desc{color:var(--gs-text-soft);font-size:.82rem;line-height:1.5;margin-bottom:8px;border-left:2px solid var(--gs-primary);padding-left:8px}.fog-tooltip-deps{display:flex;gap:8px;flex-wrap:wrap}.fog-tooltip-dep-tag{font-size:.7rem;padding:2px 8px;border-radius:8px;font-family:Fira Code,monospace}.fog-tooltip-dep-tag.import{color:#047857;background:#ecfdf5;border:1px solid #a7f3d0}.fog-tooltip-dep-tag.by{color:var(--gs-primary-d);background:var(--gs-primary-soft);border:1px solid #c7d8f7}.fog-tooltip-core{color:#d97706;font-size:.75rem;margin-top:6px}@media (max-width: 768px){.fog-canvas{height:350px}.fog-header{padding:10px 14px}.fog-legend{display:none}}.fog-orphans{border-top:1px solid var(--gs-border)}.fog-orphans-header{display:flex;align-items:center;gap:6px;padding:8px 14px;cursor:pointer;color:var(--gs-text-muted);font-size:.72rem;transition:background .15s,color .15s;-webkit-user-select:none;user-select:none}.fog-orphans-header:hover{background:var(--gs-surface-2);color:var(--gs-text-soft)}.fog-orphans-toggle{display:flex;align-items:center}.fog-orphans-title{font-weight:500}.fog-orphans-count{background:var(--gs-surface-2);padding:1px 6px;border-radius:8px;font-size:.65rem;margin-left:2px}.fog-orphans-list{display:flex;flex-wrap:wrap;gap:6px;padding:4px 14px 10px}.fog-orphan-tag{display:inline-flex;align-items:center;gap:3px;padding:3px 8px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text-muted);font-size:.68rem;cursor:pointer;transition:all .15s}.fog-orphan-tag:hover{background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-text)}.fog-orphan-tag.core{border-color:#fde68a}.fog-orphan-tag.core:hover{border-color:#fcd34d}.fog-orphan-star{color:#d97706;font-size:.6rem}.profile-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a73;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.profile-container{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;width:520px;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;position:relative;box-shadow:var(--gs-shadow-lg)}.profile-close{position:absolute;top:12px;right:12px;background:none;border:none;color:var(--gs-text-muted);cursor:pointer;z-index:1;padding:4px;border-radius:6px;transition:all .2s}.profile-close:hover{color:var(--gs-text);background:var(--gs-surface-2)}.profile-header{display:flex;align-items:center;gap:14px;padding:24px 24px 16px;border-bottom:1px solid var(--gs-border)}.profile-avatar{width:48px;height:48px;border-radius:50%;background:linear-gradient(135deg,#2563eb,#7c3aed);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;color:#fff;flex-shrink:0}.profile-user-info{flex:1}.profile-nickname{font-weight:600;color:var(--gs-text);font-size:15px}.profile-email{font-size:12px;color:var(--gs-text-muted);margin-top:2px}.profile-credits-card{display:flex;align-items:center;gap:6px;padding:8px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:10px}.profile-credits-card svg{color:var(--gs-warning)}.profile-credits-num{font-weight:700;color:var(--gs-warning)}.profile-credits-unit{font-size:11px;color:var(--gs-text-muted)}.profile-tabs{display:flex;gap:2px;padding:0 24px;border-bottom:1px solid var(--gs-border)}.profile-tab{display:flex;align-items:center;gap:5px;padding:10px 14px;background:none;border:none;border-bottom:2px solid transparent;color:var(--gs-text-muted);font-size:13px;cursor:pointer;transition:all .2s}.profile-tab:hover{color:var(--gs-text-soft)}.profile-tab.active{color:var(--gs-primary);border-bottom-color:var(--gs-primary)}.profile-content{padding:20px 24px;overflow-y:auto;flex:1}.reward-item{display:flex;align-items:center;gap:12px;padding:14px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;margin-bottom:10px}.reward-icon{width:36px;height:36px;border-radius:10px;background:var(--gs-primary-soft);display:flex;align-items:center;justify-content:center;color:var(--gs-primary);flex-shrink:0}.reward-info{flex:1;min-width:0}.reward-title{font-size:13px;font-weight:600;color:var(--gs-text);white-space:nowrap}.reward-desc{font-size:11px;color:var(--gs-text-muted);margin-top:3px}.reward-amount{font-size:14px;font-weight:700;color:var(--gs-warning);margin-right:8px}.reward-status.claimed{font-size:11px;color:var(--gs-text-muted);background:#eef2f7;padding:3px 8px;border-radius:6px}.reward-claim-btn{padding:5px 12px;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:6px;color:#fff;font-size:12px;font-weight:600;cursor:pointer;transition:opacity .2s}.reward-claim-btn:hover{opacity:.85}.reward-claim-btn:disabled{opacity:.5}.reward-invite-btn{display:flex;align-items:center;gap:2px;padding:5px 10px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text-muted);font-size:11px;cursor:pointer;transition:all .2s}.reward-invite-btn:hover{color:var(--gs-text);border-color:var(--gs-border-strong)}.reward-item.star-reward{flex-direction:column;align-items:stretch;gap:10px}.reward-item.star-reward .reward-item-top{display:flex;align-items:center;gap:10px}.star-repo-link{color:var(--gs-warning);text-decoration:none;font-weight:600}.star-repo-link:hover{text-decoration:underline}.star-claim-bar{display:flex;align-items:center;gap:8px;padding:8px 10px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:8px;margin-left:30px;flex-wrap:wrap}.star-github-input{flex:1;min-width:140px;padding:6px 10px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text);font-size:12px;outline:none;transition:border-color .2s}.star-github-input:focus{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.star-github-input::placeholder{color:#94a3b8}.star-msg{font-size:11px;padding:3px 8px;border-radius:4px;white-space:nowrap}.star-msg.success{color:#047857;background:#ecfdf5}.star-msg.error{color:var(--gs-danger);background:#fef2f2}.recharge-plans{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.recharge-plan{text-align:center;padding:16px 10px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;transition:all .2s;display:flex;flex-direction:column;align-items:center;justify-content:space-between;min-height:140px}.recharge-plan:hover{border-color:#c7d8f7}.plan-price{font-size:20px;font-weight:700;color:var(--gs-text)}.plan-credits{font-size:12px;color:var(--gs-warning);margin-top:4px}.plan-bonus{font-size:10px;color:var(--gs-success);margin-top:2px}.plan-buy-btn{margin-top:auto;padding:5px 16px;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:6px;color:#fff;font-size:12px;cursor:pointer;transition:opacity .2s;text-decoration:none;display:inline-block;text-align:center}.plan-buy-btn:hover{opacity:.85}.recharge-note{text-align:center;margin-top:16px;color:var(--gs-text-muted);font-size:12px}.redeem-section{margin-bottom:16px}.redeem-title{font-size:13px;font-weight:600;color:var(--gs-text-soft);margin-bottom:10px}.redeem-input-row{display:flex;gap:8px}.redeem-input{flex:1;padding:9px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text);font-size:14px;font-family:monospace;letter-spacing:1px;outline:none;transition:border-color .2s}.redeem-input:focus{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.redeem-input::placeholder{color:#94a3b8;font-family:inherit;letter-spacing:0}.redeem-btn{padding:9px 18px;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:8px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .2s}.redeem-btn:hover{opacity:.85}.redeem-btn:disabled{opacity:.4;cursor:not-allowed}.redeem-msg{margin-top:8px;font-size:12px;padding:6px 10px;border-radius:6px}.redeem-msg.success{color:#047857;background:#ecfdf5}.redeem-msg.error{color:var(--gs-danger);background:#fef2f2}.recharge-divider{display:flex;align-items:center;gap:12px;margin:16px 0;color:var(--gs-text-muted);font-size:11px}.recharge-divider:before,.recharge-divider:after{content:"";flex:1;height:1px;background:var(--gs-border)}.invite-card{padding:20px;background:linear-gradient(135deg,#eff5ff,#f1ecfe);border:1px solid #c7d8f7;border-radius:12px}.invite-title{font-size:14px;font-weight:600;color:var(--gs-text);margin-bottom:12px}.invite-link-box{display:flex;align-items:center;gap:8px;padding:10px 12px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:8px;cursor:pointer;transition:border-color .2s}.invite-link-box:hover{border-color:#c7d8f7}.invite-link-text{flex:1;font-size:12px;color:var(--gs-text-soft);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.invite-link-box svg{color:var(--gs-text-muted);flex-shrink:0}.invite-copied-icon{color:var(--gs-success)!important}.invite-tip{font-size:11px;color:var(--gs-text-muted);margin-top:10px}.invite-records{margin-top:20px}.invite-records-title{font-size:13px;font-weight:600;color:var(--gs-text-soft);margin-bottom:10px}.invite-record-item{display:flex;align-items:center;gap:10px;padding:8px 0;border-bottom:1px solid var(--gs-border);font-size:12px}.invite-record-name{flex:1;color:var(--gs-text-soft)}.invite-record-time{color:var(--gs-text-muted)}.invite-record-status{color:var(--gs-text-muted);font-size:11px}.invite-record-status.activated{color:var(--gs-success)}.logs-filter{display:flex;gap:6px;margin-bottom:14px}.logs-filter-btn{padding:6px 16px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:6px;color:var(--gs-text-muted);font-size:12px;cursor:pointer;transition:all .2s}.logs-filter-btn:hover{background:var(--gs-surface-2);color:var(--gs-text-soft)}.logs-filter-btn.active{background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary)}.log-item{display:flex;align-items:center;gap:10px;padding:10px 0;border-bottom:1px solid var(--gs-border)}.log-info{flex:1}.log-desc{font-size:13px;color:var(--gs-text-soft)}.log-time{font-size:11px;color:var(--gs-text-muted);margin-top:2px}.log-amount{font-size:14px;font-weight:600;min-width:60px;text-align:right}.log-amount.income{color:var(--gs-success)}.log-amount.expense{color:var(--gs-danger)}.log-balance{font-size:11px;color:var(--gs-text-muted);min-width:70px;text-align:right}.logs-empty{text-align:center;padding:40px;color:var(--gs-text-muted);font-size:13px}@media (max-width: 560px){.profile-container{width:95vw;max-height:90vh}.recharge-plans{grid-template-columns:repeat(2,1fr)}}.redeem-celebration{position:fixed;top:0;left:0;right:0;bottom:0;pointer-events:none;z-index:9999;overflow:hidden}.firework-trail{position:absolute;bottom:0;width:4px;height:4px;background:#ffd93d;border-radius:50%;opacity:0;animation:fireworkLaunch .5s ease-out forwards}.firework-trail:after{content:"";position:absolute;top:0;left:50%;width:2px;height:40px;background:linear-gradient(to top,rgba(255,217,61,.6),transparent);transform:translate(-50%)}@keyframes fireworkLaunch{0%{opacity:1;bottom:0;box-shadow:0 0 8px #ffd93d,0 0 20px #ffd93d66}80%{opacity:1}to{opacity:0;bottom:calc(100% - var(--target-y, 45%));box-shadow:0 0 4px #ffd93d}}.firework-particle{position:absolute;width:6px;height:6px;border-radius:50%;opacity:0;animation:fireworkBurst 1.4s ease-out forwards}@keyframes fireworkBurst{0%{opacity:1;transform:translate(0) scale(1.2)}30%{opacity:1}to{opacity:0;transform:translate(var(--dx),var(--dy)) scale(0)}}.firework-spark{position:absolute;width:3px;height:3px;border-radius:50%;opacity:0;animation:fireworkSpark 1s ease-out forwards}@keyframes fireworkSpark{0%{opacity:1;transform:translate(0);box-shadow:0 0 4px #fff}50%{opacity:.8}to{opacity:0;transform:translate(var(--dx),calc(var(--dy) + 30px))}}.pricing-page{min-height:100vh;position:relative;padding:40px 20px 80px;animation:pricingFadeIn .6s ease-out}@keyframes pricingFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.pricing-page-bg{position:fixed;top:0;left:0;right:0;bottom:0;z-index:-1;pointer-events:none}.pricing-bg-gradient{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 30% 10%,rgba(124,58,237,.07) 0%,transparent 50%),radial-gradient(ellipse at 70% 60%,rgba(37,99,235,.06) 0%,transparent 40%)}.pricing-bg-grid{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(37,99,235,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.04) 1px,transparent 1px);background-size:60px 60px;opacity:.5}.pricing-container{max-width:960px;margin:0 auto;position:relative;z-index:1}.pricing-back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text-muted);font-size:14px;cursor:pointer;transition:all .2s;margin-bottom:40px;box-shadow:var(--gs-shadow-sm)}.pricing-back-btn:hover{background:var(--gs-primary-soft);color:var(--gs-primary);border-color:#c7d8f7}.pricing-hero{text-align:center;margin-bottom:60px}.pricing-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;background:var(--gs-primary-soft);border:1px solid #c7d8f7;border-radius:50px;color:var(--gs-primary);font-size:13px;margin-bottom:24px}.pricing-hero-title{font-size:2.4rem;font-weight:800;color:var(--gs-text);line-height:1.3;margin-bottom:16px}.pricing-hero-title span{display:block}.pricing-highlight{background:linear-gradient(90deg,#2563eb,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.pricing-hero-desc{color:var(--gs-text-muted);font-size:1.05rem}.pricing-section{margin-bottom:56px}.pricing-section-title{display:flex;align-items:center;gap:10px;font-size:1.3rem;color:var(--gs-text);margin-bottom:8px}.pricing-section-title svg{color:var(--gs-primary)}.pricing-section-desc{color:var(--gs-text-muted);font-size:.9rem;margin-bottom:24px}.consume-grid{display:flex;flex-direction:column;gap:10px}.consume-card{display:flex;align-items:center;gap:16px;padding:16px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:12px;transition:all .2s;box-shadow:var(--gs-shadow-sm)}.consume-card:hover{background:var(--gs-surface-2);border-color:#c7d8f7}.consume-icon{width:44px;height:44px;display:flex;align-items:center;justify-content:center;background:var(--gs-primary-soft);border-radius:10px;color:var(--gs-primary);flex-shrink:0}.consume-info{flex:1}.consume-info h3{color:var(--gs-text);font-size:.95rem;margin-bottom:2px}.consume-info p{color:var(--gs-text-muted);font-size:.8rem;margin:0}.consume-cost{display:flex;flex-direction:column;align-items:flex-end;flex-shrink:0}.cost-value{font-size:1.2rem;font-weight:700;color:var(--gs-primary)}.cost-unit{font-size:.7rem;color:var(--gs-text-muted)}.free-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 700px){.free-grid{grid-template-columns:1fr}}.free-card{padding:28px 24px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;text-align:center;transition:all .3s;position:relative;overflow:hidden;box-shadow:var(--gs-shadow-sm)}.free-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;background:var(--gs-primary);transform:scaleX(0);transition:transform .3s}.free-card:hover:before{transform:scaleX(1)}.free-card:hover{background:var(--gs-surface-2);transform:translateY(-4px);box-shadow:var(--gs-shadow-md)}.free-card-icon{width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:var(--gs-primary-soft);border-radius:14px;color:var(--gs-primary);margin:0 auto 16px}.free-card h3{color:var(--gs-text);font-size:1rem;margin-bottom:8px}.free-card p{color:var(--gs-text-muted);font-size:.85rem;line-height:1.5;margin:0 0 16px}.free-amount{display:inline-block;padding:4px 14px;background:var(--gs-primary-soft);border-radius:20px;color:var(--gs-primary);font-weight:700;font-size:.95rem}.plans-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 700px){.plans-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.plans-grid{grid-template-columns:1fr}}.plan-card{padding:28px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;text-align:center;transition:all .3s;position:relative;box-shadow:var(--gs-shadow-sm)}.plan-card:hover,.plan-card.hovered{background:var(--gs-surface-2);border-color:#c7d8f7;transform:translateY(-4px);box-shadow:var(--gs-shadow-md)}.plan-card.popular{border-color:#c4b5fd;background:#f5f1fe}.plan-card.popular:hover{border-color:#a78bfa}.popular-tag{position:absolute;top:-1px;right:16px;display:inline-flex;align-items:center;gap:4px;padding:4px 12px;background:linear-gradient(135deg,#7c3aed,#2563eb);border-radius:0 0 8px 8px;color:#fff;font-size:11px;font-weight:600}.plan-price{margin-bottom:12px}.plan-yuan{font-size:2rem;font-weight:800;color:var(--gs-text)}.plan-credits{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--gs-primary);font-size:1.05rem;font-weight:600;margin-bottom:8px}.plan-bonus{color:var(--gs-warning);font-size:.8rem;margin-bottom:16px}.plan-features{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.plan-features li{display:flex;align-items:center;justify-content:center;gap:6px;color:var(--gs-text-muted);font-size:.8rem}.plan-features li svg{color:var(--gs-success)}.pricing-footer-note{text-align:center;padding:24px;color:var(--gs-text-muted);font-size:.9rem}.contact-page{min-height:100vh;position:relative;padding:40px 20px 80px;animation:contactFadeIn .6s ease-out}@keyframes contactFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.contact-page-bg{position:fixed;top:0;left:0;right:0;bottom:0;z-index:-1;pointer-events:none}.contact-page-bg-gradient{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 50% 20%,rgba(37,99,235,.07) 0%,transparent 50%),radial-gradient(ellipse at 20% 70%,rgba(124,58,237,.06) 0%,transparent 40%)}.contact-page-bg-grid{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(37,99,235,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.04) 1px,transparent 1px);background-size:60px 60px;opacity:.5}.contact-page-orb{position:absolute;border-radius:50%;filter:blur(80px)}.contact-page-orb.orb-a{width:300px;height:300px;background:radial-gradient(circle,rgba(37,99,235,.12) 0%,transparent 70%);top:10%;right:5%;animation:orbDrift 12s ease-in-out infinite}.contact-page-orb.orb-b{width:250px;height:250px;background:radial-gradient(circle,rgba(124,58,237,.1) 0%,transparent 70%);bottom:20%;left:5%;animation:orbDrift 15s ease-in-out infinite reverse}@keyframes orbDrift{0%,to{transform:translate(0)}50%{transform:translate(20px,-20px)}}.contact-page-container{max-width:700px;margin:0 auto;position:relative;z-index:1}.contact-page-back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text-muted);font-size:14px;cursor:pointer;transition:all .2s;margin-bottom:40px;box-shadow:var(--gs-shadow-sm)}.contact-page-back-btn:hover{background:var(--gs-primary-soft);color:var(--gs-primary);border-color:#c7d8f7}.contact-page-hero{text-align:center;margin-bottom:50px}.contact-page-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 20px;background:var(--gs-primary-soft);border:1px solid #c7d8f7;border-radius:50px;color:var(--gs-primary);font-size:13px;margin-bottom:24px}.contact-page-title{font-size:2.4rem;font-weight:800;color:var(--gs-text);line-height:1.3;margin-bottom:16px}.contact-page-title span{display:block}.contact-page-highlight{background:linear-gradient(90deg,#2563eb,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact-page-desc{color:var(--gs-text-muted);font-size:1.05rem;max-width:500px;margin:0 auto;line-height:1.7}.qr-section{display:flex;justify-content:center;margin-bottom:50px}.qr-card{position:relative;padding:32px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:24px;text-align:center;transition:all .3s;overflow:hidden;box-shadow:var(--gs-shadow-sm)}.qr-card:hover{border-color:#c7d8f7;transform:translateY(-4px);box-shadow:var(--gs-shadow-lg)}.qr-card-glow{position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,rgba(37,99,235,.05) 0%,transparent 50%);pointer-events:none}.qr-image-wrapper{width:220px;height:220px;margin:0 auto 20px;border-radius:16px;overflow:hidden;background:#fff;padding:12px}.qr-image{width:100%;height:100%;object-fit:contain;border-radius:8px}.qr-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--gs-text-muted);font-size:13px}.qr-label{display:flex;align-items:center;justify-content:center;gap:8px;color:var(--gs-text-soft);font-size:.95rem}.qr-label svg{color:var(--gs-primary)}.contact-page-extras{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.contact-page-extras{grid-template-columns:1fr}.contact-page-title{font-size:1.8rem}}.contact-extra-card{display:flex;gap:16px;padding:20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;transition:all .2s;box-shadow:var(--gs-shadow-sm)}.contact-extra-card:hover{background:var(--gs-surface-2);border-color:#c7d8f7}.contact-extra-card svg{color:var(--gs-primary);flex-shrink:0;margin-top:2px}.contact-extra-card h3{color:var(--gs-text);font-size:.95rem;margin-bottom:4px}.contact-extra-card p{color:var(--gs-text-muted);font-size:.85rem;line-height:1.5;margin:0}.history-page{min-height:100vh;position:relative;padding:40px 20px 80px;animation:historyFadeIn .5s ease-out}@keyframes historyFadeIn{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.history-page-bg{position:fixed;top:0;left:0;right:0;bottom:0;z-index:-1;pointer-events:none}.history-bg-gradient{position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(ellipse at 20% 0%,rgba(37,99,235,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 50%,rgba(124,58,237,.05) 0%,transparent 45%)}.history-bg-grid{position:absolute;top:0;left:0;right:0;bottom:0;background-image:linear-gradient(rgba(37,99,235,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.04) 1px,transparent 1px);background-size:60px 60px;opacity:.6}.history-container{max-width:1080px;margin:0 auto;position:relative;z-index:1}.history-back-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text-muted);font-size:14px;cursor:pointer;transition:all .2s;margin-bottom:32px;box-shadow:var(--gs-shadow-sm)}.history-back-btn:hover{background:var(--gs-primary-soft);color:var(--gs-primary);border-color:#c7d8f7}.history-hero{text-align:center;margin-bottom:40px}.history-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 16px;background:var(--gs-primary-soft);border:1px solid #c7d8f7;border-radius:50px;color:var(--gs-primary);font-size:13px;margin-bottom:20px}.history-hero-title{font-size:2.2rem;font-weight:800;color:var(--gs-text);line-height:1.2;margin-bottom:12px;display:flex;justify-content:center;align-items:center;gap:14px;flex-wrap:wrap}.history-highlight{background:linear-gradient(90deg,#2563eb,#7c3aed);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.history-hero-desc{color:var(--gs-text-muted);font-size:1rem;margin:0}.history-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:32px}@media (max-width: 780px){.history-stats-grid{grid-template-columns:repeat(2,1fr)}}.history-stat-card{display:flex;align-items:center;gap:14px;padding:18px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;transition:all .25s;position:relative;overflow:hidden;box-shadow:var(--gs-shadow-sm)}.history-stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:var(--accent);opacity:.5}.history-stat-card:hover{background:var(--gs-surface);border-color:#c7d8f7;transform:translateY(-2px);box-shadow:var(--gs-shadow-md)}.history-stat-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--accent) 12%,transparent);border-radius:10px;color:var(--accent);flex-shrink:0}.history-stat-info{flex:1;min-width:0}.history-stat-value{color:var(--gs-text);font-size:1.5rem;font-weight:700;line-height:1.1;margin-bottom:2px}.history-stat-label{color:var(--gs-text-muted);font-size:.8rem}.history-toolbar{display:flex;flex-wrap:wrap;gap:14px;align-items:center;padding:14px 16px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;margin-bottom:20px;box-shadow:var(--gs-shadow-sm)}.history-search{position:relative;display:flex;align-items:center;gap:8px;padding:8px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;flex:1;min-width:220px;transition:border-color .2s,box-shadow .2s,background .2s}.history-search:focus-within{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.history-search svg:first-child{color:#94a3b8;flex-shrink:0}.history-search input{flex:1;background:transparent;border:none;outline:none;color:var(--gs-text);font-size:14px}.history-search input::placeholder{color:#94a3b8}.history-search-clear{background:transparent;border:none;color:var(--gs-text-muted);cursor:pointer;padding:2px;border-radius:4px;display:flex;align-items:center;justify-content:center}.history-search-clear:hover{color:var(--gs-text);background:#0f172a0f}.history-toolbar-label{color:var(--gs-text-muted);font-size:12px;margin-right:8px;white-space:nowrap}.history-chips-group{display:flex;align-items:center}.history-chips{display:flex;gap:6px;background:var(--gs-surface-2);padding:4px;border-radius:10px;border:1px solid var(--gs-border)}.history-chip{padding:6px 12px;background:transparent;border:none;border-radius:7px;color:var(--gs-text-muted);font-size:13px;cursor:pointer;transition:all .18s;white-space:nowrap}.history-chip:hover{color:var(--gs-text);background:var(--gs-surface)}.history-chip.active{background:linear-gradient(90deg,#2563eb,#7c3aed);color:#fff;box-shadow:var(--gs-shadow-sm)}.history-sort{display:flex;align-items:center}.history-sort select{padding:7px 32px 7px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text);font-size:13px;cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .2s}.history-sort select:hover,.history-sort select:focus{border-color:var(--gs-primary)}.history-sort select option{background:#fff;color:var(--gs-text)}.history-result-meta{color:var(--gs-text-muted);font-size:13px;margin-bottom:16px;padding:0 4px}.history-result-meta strong{color:var(--gs-primary);font-weight:600}.history-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.history-card{padding:20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;transition:all .25s;display:flex;flex-direction:column;gap:14px;animation:historyCardIn .4s ease-out both;box-shadow:var(--gs-shadow-sm)}@keyframes historyCardIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.history-card:hover{background:var(--gs-surface);border-color:#c7d8f7;transform:translateY(-3px);box-shadow:var(--gs-shadow-md)}.history-card.completed{border-color:#a7f3d0}.history-card.completed:hover{border-color:#6ee7b7}.history-card-head{display:flex;justify-content:space-between;align-items:flex-start}.history-card-title{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-width:0;flex:1}.history-card-repo-icon{color:#7c3aed;flex-shrink:0}.history-card-title h3{color:var(--gs-text);font-size:1rem;margin:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;flex:1}.history-badge{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:12px;font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0}.completed-badge{background:#ecfdf5;color:#047857}.ongoing-badge{background:var(--gs-primary-soft);color:var(--gs-primary)}.history-card-progress{display:flex;align-items:center;gap:10px}.history-progress-bar{flex:1;height:6px;background:#e7edf6;border-radius:3px;overflow:hidden}.history-progress-fill{height:100%;background:linear-gradient(90deg,var(--gs-primary),var(--gs-accent));border-radius:3px;transition:width .4s ease-out}.history-card.completed .history-progress-fill{background:linear-gradient(90deg,var(--gs-success),var(--gs-primary))}.history-progress-text{color:var(--gs-text-soft);font-size:12px;font-weight:600;min-width:50px;text-align:right}.history-card-meta{display:flex;gap:16px;flex-wrap:wrap}.history-meta-item{display:flex;align-items:center;gap:5px;color:var(--gs-text-muted);font-size:12px}.history-meta-item strong{color:var(--gs-primary);font-weight:600}.history-card.completed .history-meta-item strong{color:#047857}.history-card-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:9px 14px;background:linear-gradient(90deg,var(--gs-primary),var(--gs-accent));border:none;border-radius:9px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.history-card-btn:hover{opacity:.92;transform:translateY(-1px);box-shadow:0 6px 16px #2563eb4d}.history-card.completed .history-card-btn{background:linear-gradient(90deg,var(--gs-success),var(--gs-primary))}.history-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;gap:14px;color:var(--gs-text-muted)}.history-spinner{width:34px;height:34px;border:3px solid rgba(37,99,235,.18);border-top-color:var(--gs-primary);border-radius:50%;animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.history-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:72px 20px;gap:14px;text-align:center;background:var(--gs-surface-2);border:1px dashed var(--gs-border-strong);border-radius:14px}.history-empty-icon{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:var(--gs-primary-soft);border-radius:50%;color:var(--gs-primary)}.history-empty h3{color:var(--gs-text);font-size:1.1rem;margin:0}.history-empty p{color:var(--gs-text-muted);font-size:.9rem;margin:0}.history-empty-btn{display:inline-flex;align-items:center;gap:6px;margin-top:6px;padding:8px 18px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:9px;color:var(--gs-text-soft);font-size:13px;cursor:pointer;transition:all .2s;box-shadow:var(--gs-shadow-sm)}.history-empty-btn:hover{background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary)}@media (max-width: 640px){.history-page{padding:24px 14px 60px}.history-container{padding:0}.history-hero-title{font-size:1.7rem;gap:8px}.history-toolbar{padding:12px;gap:10px}.history-chips-group{width:100%}.history-chips{flex-wrap:wrap}.history-sort,.history-sort select{width:100%}.history-cards{grid-template-columns:1fr}.history-stats-grid{grid-template-columns:repeat(2,1fr);gap:10px}.history-stat-card{padding:14px}.history-stat-value{font-size:1.2rem}}.favorites-bg-gradient{background:radial-gradient(ellipse at 20% 0%,rgba(245,158,11,.08) 0%,transparent 50%),radial-gradient(ellipse at 80% 50%,rgba(124,58,237,.05) 0%,transparent 45%)!important}.favorites-hero-badge{background:#fffbeb!important;border-color:#fde68a!important;color:#d97706!important}.favorites-highlight{background:linear-gradient(90deg,#ea580c,#d97706)!important;-webkit-background-clip:text!important;background-clip:text!important}.history-sort-select{padding:7px 32px 7px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text);font-size:13px;cursor:pointer;outline:none;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;transition:border-color .2s;max-width:240px;text-overflow:ellipsis;overflow:hidden}.history-sort-select:hover,.history-sort-select:focus{border-color:var(--gs-primary)}.history-sort-select option{background:#fff;color:var(--gs-text)}.favorites-select-wrap{display:flex;align-items:center}.favorites-view-toggle{display:flex;gap:4px;background:var(--gs-surface-2);padding:4px;border-radius:10px;border:1px solid var(--gs-border);margin-left:auto}.favorites-view-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:transparent;border:none;border-radius:7px;color:var(--gs-text-muted);font-size:13px;cursor:pointer;transition:all .18s}.favorites-view-btn:hover{color:var(--gs-text);background:var(--gs-surface)}.favorites-view-btn.active{background:#b45309;color:#fff;box-shadow:var(--gs-shadow-sm)}.favorites-list{display:flex;flex-direction:column;gap:10px}.favorites-card{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:12px;overflow:hidden;transition:all .2s;animation:historyCardIn .35s ease-out both;box-shadow:var(--gs-shadow-sm)}.favorites-card:hover{background:var(--gs-surface);border-color:#fde68a}.favorites-card.expanded{border-color:#fcd34d;background:#fffbeb}.favorites-card-head{display:flex;align-items:center;gap:14px;padding:14px 18px;cursor:pointer}.favorites-type-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:11px;background:color-mix(in srgb,var(--pill) 15%,transparent);color:var(--pill);font-size:11px;font-weight:600;white-space:nowrap;flex-shrink:0}.favorites-card-main{flex:1;min-width:0;display:flex;flex-direction:column;justify-content:center;gap:4px}.favorites-card-repo{color:var(--gs-primary);font-size:13px;font-weight:600}.favorites-card-chapter{color:var(--gs-text-muted);font-size:12px;line-height:1.4}.favorites-card-preview{color:var(--gs-text-soft);font-size:13px;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;line-height:1.5;word-break:break-word}.favorites-card-actions{display:flex;align-items:center;gap:8px;color:var(--gs-text-muted);flex-shrink:0}.favorites-icon-btn{background:transparent;border:none;color:var(--gs-text-muted);cursor:pointer;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border-radius:6px;transition:all .2s}.favorites-icon-btn:hover{color:var(--gs-text);background:#0f172a0f}.favorites-icon-btn.danger:hover{color:var(--gs-danger);background:#fef2f2}.favorites-card-body{padding:16px 18px 18px;border-top:1px solid var(--gs-border);animation:favFadeIn .25s ease-out}@keyframes favFadeIn{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.favorites-question-text{color:var(--gs-text);font-size:14px;line-height:1.7;margin-bottom:12px}.favorites-question-code{background:#0d1117;border:1px solid rgba(255,255,255,.06);padding:14px 16px;border-radius:8px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:12.5px;line-height:1.6;color:#e0e0e0;overflow-x:auto;margin-bottom:12px;white-space:pre}.favorites-options{display:flex;flex-direction:column;gap:8px;margin-bottom:14px}.favorites-option{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text-soft);font-size:13.5px;line-height:1.55}.favorites-option.correct{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.favorites-option-idx{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;background:#e2e8f0;border-radius:50%;font-size:11px;font-weight:700;flex-shrink:0;margin-top:1px}.favorites-option.correct .favorites-option-idx{background:#047857;color:#fff}.favorites-answer-row{display:flex;align-items:center;gap:10px;padding:10px 14px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:8px;margin-bottom:12px}.favorites-answer-row.is-code{align-items:flex-start;flex-direction:column;gap:8px}.favorites-answer-label{color:#047857;font-size:12px;font-weight:600;flex-shrink:0}.favorites-answer-value{color:var(--gs-text);font-size:13.5px;font-weight:500;white-space:pre-wrap;word-break:break-word}.favorites-answer-code{margin:0;padding:10px 12px;background:#0d1117;border:1px solid rgba(16,185,129,.18);border-radius:6px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:12.5px;line-height:1.55;color:#e8e8ea;overflow-x:auto;white-space:pre;word-break:normal;max-height:320px;overflow-y:auto;width:100%;box-sizing:border-box}.favorites-hint-box{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;margin-bottom:12px;color:var(--gs-text-soft);font-size:13px;line-height:1.55}.favorites-hint-label{color:#b45309;font-size:11.5px;font-weight:700;letter-spacing:.04em;flex-shrink:0;padding-top:1px}.favorites-explanation{padding:12px 14px;background:var(--gs-primary-soft);border:1px solid #c7d8f7;border-radius:8px}.favorites-explanation-label{color:var(--gs-primary);font-size:12px;font-weight:600;margin-bottom:6px}.favorites-explanation>div:last-child{color:var(--gs-text-soft);font-size:13px;line-height:1.65}.favorites-groups{display:flex;flex-direction:column;gap:16px}.favorites-group{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;overflow:hidden;box-shadow:var(--gs-shadow-sm)}.favorites-group-head{display:flex;align-items:center;gap:10px;padding:14px 18px;color:var(--gs-text);cursor:pointer;background:var(--gs-surface-2);transition:background .2s}.favorites-group-head:hover{background:var(--gs-primary-soft)}.favorites-group-head svg{color:#d97706}.favorites-group-name{flex:1;font-weight:600;font-size:14.5px}.favorites-group-count{color:var(--gs-text-muted);font-size:12px;padding:3px 10px;background:#fffbeb;border-radius:10px;color:#b45309}.favorites-group .favorites-list{padding:0 12px 12px}.favorites-group .favorites-card{background:var(--gs-surface-2)}@media (max-width: 680px){.favorites-view-toggle{margin-left:0;width:100%}.favorites-view-btn{flex:1;justify-content:center}.favorites-card-head{gap:10px;padding:12px 14px}.favorites-type-pill{font-size:10.5px;padding:2px 6px}.favorites-select-wrap{width:100%}.history-sort-select{flex:1;max-width:100%;width:100%}}.wrong-bg-gradient{background:radial-gradient(ellipse at 20% 0%,rgba(220,38,38,.06) 0%,transparent 50%),radial-gradient(ellipse at 80% 40%,rgba(245,158,11,.05) 0%,transparent 45%)!important}.wrong-hero-badge{background:#fef2f2!important;border-color:#fecaca!important;color:var(--gs-danger)!important}.wrong-highlight{background:linear-gradient(90deg,#dc2626,#ea580c)!important;-webkit-background-clip:text!important;background-clip:text!important}.wrong-toggle-btn,.wrong-practice-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 14px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:10px;color:var(--gs-text-soft);font-size:13px;cursor:pointer;transition:all .2s;box-shadow:var(--gs-shadow-sm)}.wrong-toggle-btn:hover,.wrong-practice-btn:hover{color:var(--gs-text);background:var(--gs-surface-2);border-color:var(--gs-border-strong)}.wrong-toggle-btn.active{background:linear-gradient(90deg,#c2410c,#dc2626);border-color:transparent;color:#fff;box-shadow:var(--gs-shadow-sm)}.wrong-practice-btn.active{background:linear-gradient(90deg,#2563eb,#7c3aed);border-color:transparent;color:#fff;box-shadow:var(--gs-shadow-sm)}.wrong-practice-tag{display:inline-flex;align-items:center;gap:4px;margin-left:10px;padding:3px 8px;border-radius:10px;background:var(--gs-primary-soft);color:var(--gs-primary);font-size:11px;font-weight:600}.wc-list{display:flex;flex-direction:column;gap:10px}.wc-card{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:12px;overflow:hidden;transition:border-color .2s,background .2s;animation:historyCardIn .35s ease-out both;box-shadow:var(--gs-shadow-sm)}.wc-card:hover{background:var(--gs-surface);border-color:#fecaca}.wc-card.expanded{border-color:#fca5a5;background:#fef2f2}.wc-card.high-freq{border-color:#fed7aa;background:linear-gradient(135deg,#fff7ed,#fef2f2);position:relative}.wc-card.high-freq:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,#f97316,#dc2626);pointer-events:none}.wc-head{display:flex;align-items:flex-start;gap:14px;padding:14px 18px;cursor:pointer;box-sizing:border-box}.wc-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:color-mix(in srgb,var(--pill, #2563eb) 15%,transparent);color:var(--pill, #2563eb);border:1px solid color-mix(in srgb,var(--pill, #2563eb) 30%,transparent);border-radius:8px;font-size:12px;font-weight:600;white-space:nowrap;flex-shrink:0;height:24px;box-sizing:border-box;line-height:1}.wc-pill svg{flex-shrink:0}.wc-meta{flex:1 1 auto;min-width:0;display:block}.wc-line{display:block;min-width:0;width:100%}.wc-line+.wc-line{margin-top:5px}.wc-line-top{display:flex;align-items:center;gap:8px;flex-wrap:wrap;min-height:22px;line-height:1.3}.wc-repo{color:var(--gs-primary);font-size:14px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;line-height:1.3}.wc-freq{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;background:#fff7ed;color:#c2410c;font-size:11px;font-weight:600;border-radius:8px;border:1px solid #fed7aa;flex-shrink:0}.wc-freq-subtle{background:#f1f5f9;color:var(--gs-text-muted);border-color:transparent;background-image:none}.wc-line-sub{color:var(--gs-text-muted);font-size:12px;line-height:1.5;min-height:18px}.wc-line-preview{color:var(--gs-text-soft);font-size:13px;line-height:1.55;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;word-break:break-word;min-height:20px}.wc-empty{color:var(--gs-text-muted);font-style:italic}.wc-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;color:var(--gs-text-muted);align-self:flex-start}.wc-icon-btn{background:transparent;border:none;padding:6px;border-radius:8px;color:var(--gs-text-muted);cursor:pointer;transition:all .18s;display:inline-flex;align-items:center;justify-content:center}.wc-icon-btn:hover{background:#0f172a0f;color:var(--gs-text)}.wc-icon-btn.danger:hover{background:#fef2f2;color:var(--gs-danger)}.wc-body{padding:16px 18px 18px;border-top:1px solid var(--gs-border);background:var(--gs-surface-2);display:flex;flex-direction:column;gap:12px}.wc-question{color:var(--gs-text);font-size:14px;line-height:1.65;word-break:break-word;white-space:pre-wrap}.wc-code-block{margin:0;padding:12px 14px;background:#0d1117;border:1px solid rgba(255,255,255,.06);border-radius:8px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:13px;line-height:1.6;color:#e8e8ea;overflow-x:auto;white-space:pre;max-height:360px;overflow-y:auto}.wc-hint{display:flex;align-items:flex-start;gap:10px;padding:10px 14px;background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:var(--gs-text-soft);font-size:13px;line-height:1.55}.wc-hint-label{color:#b45309;font-size:11.5px;font-weight:700;letter-spacing:.04em;flex-shrink:0;padding-top:1px}.wc-options{display:flex;flex-direction:column;gap:6px}.wc-option{display:flex;align-items:center;gap:10px;padding:9px 14px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text-soft);font-size:13.5px;line-height:1.5}.wc-option-idx{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:6px;background:#e2e8f0;color:var(--gs-text-soft);font-size:12px;font-weight:600;flex-shrink:0}.wc-option-text{flex:1;min-width:0;word-break:break-word}.wc-option.correct{background:#ecfdf5;border-color:#a7f3d0;color:#047857}.wc-option.correct .wc-option-idx{background:#047857;color:#fff}.wc-option.wrong{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.wc-option.wrong .wc-option-idx{background:var(--gs-danger);color:#fff}.wc-tag{margin-left:auto;font-size:11px;font-weight:600;padding:2px 8px;border-radius:8px;white-space:nowrap;flex-shrink:0}.wc-tag.correct-tag{background:#d1fae5;color:#047857}.wc-tag.wrong-tag{background:#fee2e2;color:#b91c1c}.wc-answer-pair{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wc-answer-row{padding:10px 14px;border-radius:8px;border:1px solid;display:flex;flex-direction:column;gap:6px;min-width:0}.wc-answer-row.yours{background:#fef2f2;border-color:#fecaca}.wc-answer-row.yours.ok{background:#ecfdf5;border-color:#a7f3d0}.wc-answer-row.yours.ok .wc-answer-label{color:#047857}.wc-answer-row.correct{background:#ecfdf5;border-color:#a7f3d0}.wc-answer-label{font-size:11px;font-weight:600;letter-spacing:.04em;opacity:.85}.wc-answer-row.yours .wc-answer-label{color:#b91c1c}.wc-answer-row.correct .wc-answer-label{color:#047857}.wc-answer-value{color:var(--gs-text);font-size:13.5px;font-weight:500;word-break:break-word;white-space:pre-wrap}.wc-answer-value.missing{color:var(--gs-text-muted);font-style:italic;font-weight:400}.wc-answer-code{margin:0;padding:10px 12px;background:#0d1117;border:1px solid rgba(255,255,255,.06);border-radius:6px;font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:12.5px;line-height:1.55;color:#e8e8ea;overflow-x:auto;white-space:pre;word-break:normal;max-height:320px;overflow-y:auto}.wc-answer-row.yours .wc-answer-code{border-color:#ef444438}.wc-answer-row.yours.ok .wc-answer-code,.wc-answer-row.correct .wc-answer-code{border-color:#10b98138}.wc-explanation{padding:10px 14px;background:var(--gs-primary-soft);border:1px solid #c7d8f7;border-radius:8px;color:var(--gs-text-soft);font-size:13px;line-height:1.6}.wc-explanation-label{color:var(--gs-primary);font-size:11.5px;font-weight:700;letter-spacing:.04em;margin-bottom:4px}.wc-explanation-text{word-break:break-word;white-space:pre-wrap}.wc-card.practice{border-color:#c4b5fd;box-shadow:0 0 0 1px #7c3aed1f inset}.wc-practice{display:flex;flex-direction:column;gap:12px}.wc-options-interactive .wc-option{cursor:pointer;transition:background .18s,border-color .18s,transform .1s;text-align:left;font-family:inherit}.wc-options-interactive button.wc-option{background:var(--gs-surface);color:var(--gs-text-soft)}.wc-options-interactive button.wc-option:hover:not(:disabled):not(.correct):not(.wrong){background:var(--gs-primary-soft);border-color:#c7d8f7}.wc-options-interactive button.wc-option.selected{background:var(--gs-primary-soft);border-color:var(--gs-primary);color:var(--gs-primary)}.wc-options-interactive button.wc-option.selected .wc-option-idx{background:var(--gs-primary);color:#fff}.wc-options-interactive button.wc-option:disabled{cursor:default}.wc-options-tf{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wc-options-tf .wc-option{justify-content:center;gap:8px;padding:12px 14px;font-size:14px;font-weight:500}.wc-practice-input{display:flex;flex-direction:column;gap:8px}.wc-input,.wc-textarea{width:100%;box-sizing:border-box;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:8px;color:var(--gs-text);font-size:13.5px;padding:10px 14px;outline:none;transition:border-color .18s,background .18s,box-shadow .18s;font-family:inherit}.wc-textarea{font-family:ui-monospace,SF Mono,Consolas,monospace;font-size:13px;line-height:1.55;resize:vertical;min-height:120px;white-space:pre}.wc-input:focus,.wc-textarea:focus{border-color:var(--gs-primary);background:#fff;box-shadow:0 0 0 4px #2563eb1f}.wc-input:disabled,.wc-textarea:disabled{opacity:.8;cursor:default}.wc-practice-actions{display:flex;gap:10px;flex-wrap:wrap}.wc-submit-btn{display:inline-flex;align-items:center;gap:6px;padding:9px 18px;background:linear-gradient(90deg,var(--gs-primary),var(--gs-accent));border:1px solid transparent;border-radius:10px;color:#fff;font-size:13.5px;font-weight:600;cursor:pointer;transition:transform .12s,box-shadow .2s,opacity .2s}.wc-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #2563eb4d}.wc-submit-btn:disabled{opacity:.45;cursor:not-allowed}.wc-submit-btn.secondary{background:var(--gs-surface);border-color:var(--gs-border);color:var(--gs-text-soft)}.wc-submit-btn.secondary:hover:not(:disabled){background:var(--gs-surface-2);box-shadow:none}.wc-submit-btn.success{background:linear-gradient(90deg,var(--gs-success),var(--gs-primary));border-color:transparent}.wc-submit-btn.success:hover:not(:disabled){box-shadow:0 6px 20px #0596694d}.wc-practice-feedback{display:flex;flex-direction:column;gap:10px}.wc-feedback-banner{display:flex;align-items:center;gap:8px;padding:10px 14px;border-radius:8px;font-size:13.5px;font-weight:600}.wc-feedback-banner.ok{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.wc-feedback-banner.bad{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.wc-prev-attempt{font-size:12.5px;color:var(--gs-text-muted);padding:4px 2px}.wc-prev-attempt-val{color:var(--gs-text-soft);font-weight:500}.wc-status-tag{display:inline-flex;align-items:center;gap:3px;padding:2px 8px;border-radius:8px;font-size:11px;font-weight:600;flex-shrink:0}.wc-status-tag.correct-tag{background:#d1fae5;color:#047857;border:1px solid #a7f3d0}.wc-status-tag.wrong-tag{background:#fee2e2;color:#b91c1c;border:1px solid #fecaca}@media (max-width: 680px){.wc-answer-pair{grid-template-columns:1fr}.wrong-toggle-btn,.wrong-practice-btn{flex:1;justify-content:center}.wc-tag{margin-left:0;margin-top:4px}.wc-option{flex-wrap:wrap}.wc-options-tf{grid-template-columns:1fr}.wc-practice-actions .wc-submit-btn{flex:1;justify-content:center}}html.article-mode-locked,body.article-mode-locked{overflow:hidden!important;height:100%!important}.am-root .am-outline,.am-root .am-chapter-body,.am-root .am-code-pre,.am-root .am-fullfile-pre,.am-root .am-mermaid-container{scrollbar-width:thin;scrollbar-color:rgba(124,58,237,.3) transparent}.am-root .am-outline::-webkit-scrollbar,.am-root .am-chapter-body::-webkit-scrollbar,.am-root .am-code-pre::-webkit-scrollbar,.am-root .am-fullfile-pre::-webkit-scrollbar,.am-root .am-mermaid-container::-webkit-scrollbar{width:8px;height:8px}.am-root .am-outline::-webkit-scrollbar-track,.am-root .am-chapter-body::-webkit-scrollbar-track,.am-root .am-code-pre::-webkit-scrollbar-track,.am-root .am-fullfile-pre::-webkit-scrollbar-track,.am-root .am-mermaid-container::-webkit-scrollbar-track{background:transparent}.am-root .am-outline::-webkit-scrollbar-thumb,.am-root .am-chapter-body::-webkit-scrollbar-thumb,.am-root .am-code-pre::-webkit-scrollbar-thumb,.am-root .am-fullfile-pre::-webkit-scrollbar-thumb,.am-root .am-mermaid-container::-webkit-scrollbar-thumb{background:#7c3aed40;border-radius:999px;border:2px solid transparent;background-clip:padding-box;transition:background .2s}.am-root .am-outline::-webkit-scrollbar-thumb:hover,.am-root .am-chapter-body::-webkit-scrollbar-thumb:hover,.am-root .am-code-pre::-webkit-scrollbar-thumb:hover,.am-root .am-fullfile-pre::-webkit-scrollbar-thumb:hover,.am-root .am-mermaid-container::-webkit-scrollbar-thumb:hover{background:#7c3aed80;background-clip:padding-box}.am-root .am-code-pre::-webkit-scrollbar-thumb,.am-root .am-fullfile-pre::-webkit-scrollbar-thumb{background:#e2e8f040}.am-root .am-code-pre::-webkit-scrollbar-thumb:hover,.am-root .am-fullfile-pre::-webkit-scrollbar-thumb:hover{background:#e2e8f080}.lm-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#080c1cb8;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:9500;animation:lm-overlay-in .25s ease-out}@keyframes lm-overlay-in{0%{opacity:0}to{opacity:1}}.lm-modal-content{position:relative;width:100%;max-width:860px;max-height:calc(100vh - 48px);overflow-y:auto;background:linear-gradient(180deg,#fff,#fafaf7);border:1px solid rgba(124,58,237,.18);border-radius:22px;box-shadow:0 40px 80px -20px #0609188c,0 0 0 1px #ffffff0a inset;padding:36px 36px 28px;animation:lm-modal-in .3s cubic-bezier(.34,1.3,.64,1);color:#1e293b;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif}@keyframes lm-modal-in{0%{opacity:0;transform:translateY(20px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}.lm-modal-header{text-align:center;margin-bottom:28px}.lm-modal-badge{display:inline-flex;align-items:center;gap:5px;padding:4px 12px;background:linear-gradient(135deg,#ede9fe,#dbeafe);color:#7c3aed;border-radius:999px;font-size:11px;font-weight:600;letter-spacing:.06em;margin-bottom:14px}.lm-modal-title{font-size:clamp(22px,3vw,28px);font-weight:700;color:#1e293b;margin:0 0 8px;line-height:1.3;letter-spacing:-.01em}.lm-modal-repo{background:linear-gradient(135deg,#7c3aed,#06b6d4);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:800;word-break:break-all}.lm-modal-subtitle{font-size:14px;color:#64748b;margin:0}.lm-modal-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:22px}.lm-mode-card{position:relative;text-align:left;padding:24px 22px 20px;background:#fff;border:1.5px solid #e2e8f0;border-radius:18px;cursor:pointer;font-family:inherit;color:inherit;transition:all .22s cubic-bezier(.4,0,.2,1);display:flex;flex-direction:column;gap:10px;min-height:290px}.lm-mode-card:hover{transform:translateY(-4px);border-color:#7c3aed;box-shadow:0 20px 40px -18px #7c3aed59}.lm-card-icon{width:56px;height:56px;border-radius:14px;background:linear-gradient(135deg,#ecfeff,#e0f2fe);color:#0891b2;display:flex;align-items:center;justify-content:center;transition:all .2s;margin-bottom:4px}.lm-mode-card.lm-mode-explore:hover .lm-card-icon{background:linear-gradient(135deg,#cffafe,#bae6fd);transform:scale(1.06) rotate(-4deg)}.lm-card-icon-accent{background:linear-gradient(135deg,#ede9fe,#dbeafe);color:#7c3aed}.lm-mode-card.lm-mode-article:hover .lm-card-icon-accent{background:linear-gradient(135deg,#ddd6fe,#bfdbfe);transform:scale(1.06) rotate(4deg)}.lm-mode-card.lm-mode-lab .lm-card-icon-accent{background:linear-gradient(135deg,#ccfbf1,#e0f2fe);color:#0d9488}.lm-mode-card.lm-mode-lab:hover .lm-card-icon-accent{background:linear-gradient(135deg,#99f6e4,#bae6fd);transform:scale(1.06) rotate(-4deg)}.lm-mode-card.lm-mode-lab .lm-card-features li svg{color:#0d9488}.lm-mode-card.lm-mode-lab .lm-card-action-accent{background:linear-gradient(135deg,#0d9488,#0891b2)}.lm-mode-card.lm-mode-lab .lm-card-badge-new{background:linear-gradient(135deg,#14b8a6,#0ea5e9);box-shadow:0 4px 12px -2px #0ea5e980}.lm-card-badge-new{position:absolute;top:16px;right:16px;padding:3px 10px;background:linear-gradient(135deg,#f59e0b,#ec4899);color:#fff;font-size:10.5px;font-weight:700;letter-spacing:.05em;border-radius:999px;box-shadow:0 4px 12px -2px #ec489980}.lm-card-title{font-size:20px;font-weight:700;color:#1e293b;margin:0;letter-spacing:-.01em}.lm-card-desc{font-size:13.5px;line-height:1.65;color:#475569;margin:0;flex-shrink:0}.lm-card-features{list-style:none;padding:0;margin:4px 0;display:flex;flex-direction:column;gap:6px;flex:1}.lm-card-features li{display:flex;align-items:center;gap:7px;font-size:12.5px;color:#475569;line-height:1.5}.lm-card-features li svg{flex-shrink:0;color:#7c3aed}.lm-mode-card.lm-mode-explore .lm-card-features li svg{color:#0891b2}.lm-card-action{display:inline-flex;align-items:center;gap:6px;padding:10px 18px;background:#1e293b;color:#fff;border-radius:999px;font-size:13px;font-weight:600;align-self:flex-start;margin-top:4px;transition:all .2s}.lm-mode-card:hover .lm-card-action{transform:translate(4px)}.lm-card-action-accent{background:linear-gradient(135deg,#7c3aed,#06b6d4);box-shadow:0 8px 20px -6px #7c3aed8c}.lm-card-arrow{display:inline-block;transition:transform .2s}.lm-mode-card:hover .lm-card-arrow{transform:translate(2px)}.lm-card-meta{font-size:11.5px;color:#94a3b8;padding-top:10px;border-top:1px dashed #e2e8f0;margin-top:auto}.lm-modal-footer{display:flex;justify-content:center;padding-top:16px;border-top:1px solid #f1f5f9}.lm-modal-skip{background:transparent;border:none;color:#94a3b8;font-size:13px;cursor:pointer;padding:6px 16px;border-radius:999px;transition:all .15s;font-family:inherit}.lm-modal-skip:hover{color:#475569;background:#f1f5f9}@media (max-width: 680px){.lm-modal-content{padding:26px 20px 20px;border-radius:18px}.lm-modal-cards{grid-template-columns:1fr;gap:14px}.lm-mode-card{min-height:auto;padding:20px 18px 18px}.lm-card-badge-new{top:12px;right:12px}}.am-root{--am-bg: #fafaf7;--am-ink: #1e293b;--am-ink-soft: #475569;--am-ink-muted: #64748b;--am-line: #e2e8f0;--am-surface: #ffffff;--am-accent: #7c3aed;--am-accent-2: #06b6d4;--am-accent-warm: #f59e0b;--am-success: #10b981;--am-error: #ef4444;--am-analogy: #faf5ff;--am-analogy-border: #c4b5fd;--am-formula: #f0f9ff;--am-formula-border: #7dd3fc;--am-challenge: #fefce8;--am-challenge-border: #fde68a;--am-code-bg: #0b1120;--am-code-border: #1e293b;--am-serif: "Source Serif Pro", "Iowan Old Style", "Charter", "Georgia", "Songti SC", "SimSun", serif;--am-sans: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", sans-serif;--am-mono: ui-monospace, "JetBrains Mono", "SF Mono", Menlo, Consolas, monospace}.am-root{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--am-bg);color:var(--am-ink);font-family:var(--am-sans);z-index:9000;display:flex;flex-direction:column;overflow:hidden}.am-topbar{height:52px;display:flex;align-items:center;padding:0 20px;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--am-line);gap:16px}.am-topbar-btn{display:inline-flex;align-items:center;gap:6px;background:transparent;border:none;color:var(--am-ink-muted);font-size:13px;cursor:pointer;padding:6px 10px;border-radius:8px;transition:background .15s}.am-topbar-btn:hover{background:#f1f5f9;color:var(--am-ink)}.am-topbar-title{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--am-ink)}.am-topbar-title svg{color:var(--am-accent)}.am-topbar-repo{font-weight:400;color:var(--am-ink-muted)}.am-topbar-stats{margin-left:auto;display:inline-flex;align-items:center;gap:16px}.am-stat{display:inline-flex;flex-direction:column;align-items:flex-end;gap:1px}.am-stat-value{font-size:14px;font-weight:700;color:var(--am-ink);font-variant-numeric:tabular-nums}.am-stat-label{font-size:10px;color:var(--am-ink-muted);letter-spacing:.04em}.am-stat-xp .am-stat-value{background:linear-gradient(135deg,var(--am-accent),var(--am-accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.am-body{flex:1;overflow:hidden;display:flex;flex-direction:column}.am-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:40px}.am-loading-orb{width:80px;height:80px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#ede9fe,#c4b5fd);display:flex;align-items:center;justify-content:center;color:var(--am-accent);box-shadow:0 20px 40px -10px #7c3aed4d}.am-loading-label{font-family:var(--am-serif);font-size:20px;font-weight:600;color:var(--am-ink)}.am-loading-sub{font-size:13px;color:var(--am-ink-muted)}.am-spin{animation:am-spin 1s linear infinite}@keyframes am-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.am-error{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:40px;text-align:center}.am-error-icon{color:var(--am-error)}.am-error-title{font-family:var(--am-serif);font-size:22px;font-weight:700}.am-error-msg{color:var(--am-ink-muted);max-width:420px}.am-error-actions{display:flex;gap:10px;margin-top:8px}.am-error-retry{padding:9px 18px;border-radius:8px;background:var(--am-accent);color:#fff;border:none;font-weight:600;cursor:pointer}.am-error-retry:hover{filter:brightness(1.1)}.am-error-exit{padding:9px 18px;border-radius:8px;background:transparent;color:var(--am-ink-muted);border:1px solid var(--am-line);cursor:pointer}.am-outline{flex:1;overflow-y:auto;padding:48px 24px 80px;max-width:920px;margin:0 auto;width:100%}.am-guide-intro{display:flex;gap:24px;align-items:center;padding:32px;border-radius:20px;background:radial-gradient(circle at 100% 0%,rgba(124,58,237,.08),transparent 60%),radial-gradient(circle at 0% 100%,rgba(6,182,212,.06),transparent 55%),#fff;border:1px solid var(--am-line);box-shadow:0 12px 30px -15px #0f172a1f;margin-bottom:28px}.am-guide-avatar-wrap{flex-shrink:0;width:96px;height:96px;border-radius:50%;overflow:hidden;background:#fff;box-shadow:0 6px 18px -8px #0f172a40}.am-guide-meta{flex:1;min-width:0}.am-guide-badge{display:inline-block;font-size:11px;font-weight:600;color:var(--am-accent);background:#ede9fe;padding:3px 10px;border-radius:999px;letter-spacing:.08em;margin-bottom:8px}.am-guide-name{font-family:var(--am-serif);font-size:28px;font-weight:700;margin:0;color:var(--am-ink);display:flex;align-items:baseline;gap:10px;flex-wrap:wrap}.am-guide-role{font-size:15px;color:var(--am-ink-muted);font-weight:400}.am-guide-persona{font-size:15px;line-height:1.6;color:var(--am-ink-soft);margin:8px 0 6px}.am-guide-tagline{font-size:13px;font-style:italic;color:var(--am-accent);margin:0}.am-book-status{background:#fff;border:1px solid var(--am-line);border-radius:16px;padding:20px 24px;margin-bottom:28px}.am-book-status-row{display:flex;gap:24px;margin-bottom:14px}.am-book-status-item{flex:1}.am-book-status-value{font-family:var(--am-serif);font-size:24px;font-weight:700;color:var(--am-ink);font-variant-numeric:tabular-nums}.am-book-status-label{font-size:12px;color:var(--am-ink-muted);margin-top:2px}.am-book-progress{height:6px;border-radius:999px;background:#f1f5f9;overflow:hidden}.am-book-progress-fill{height:100%;background:linear-gradient(90deg,var(--am-accent),var(--am-accent-2));transition:width .6s cubic-bezier(.4,0,.2,1)}.am-section-title{font-family:var(--am-serif);font-size:20px;font-weight:700;color:var(--am-ink);display:flex;align-items:baseline;gap:12px;margin:0 0 20px;padding-bottom:12px;border-bottom:2px solid var(--am-ink)}.am-section-title-no{font-size:12px;letter-spacing:.15em;color:var(--am-ink-muted);font-weight:500}.am-chapter-list{display:flex;flex-direction:column;gap:14px}.am-chapter-card{position:relative;text-align:left;padding:20px 24px 18px;background:#fff;border:1px solid var(--am-line);border-radius:14px;cursor:pointer;transition:all .2s ease;font-family:inherit;color:inherit}.am-chapter-card:not(:disabled):hover{transform:translateY(-2px);border-color:var(--am-accent);box-shadow:0 14px 30px -16px #7c3aed59}.am-chapter-card:disabled{cursor:not-allowed;opacity:.72}.am-chapter-card.is-locked{background:#f8fafc;border-style:dashed}.am-chapter-card.is-passed{border-color:#a7f3d0;background:linear-gradient(135deg,#fff,#f0fdf4)}.am-chapter-card.is-current:before{content:"";position:absolute;left:-1px;top:-1px;bottom:-1px;width:4px;background:linear-gradient(180deg,var(--am-accent),var(--am-accent-2));border-radius:14px 0 0 14px}.am-chapter-card-index{display:flex;align-items:center;gap:8px;margin-bottom:6px}.am-chapter-card-no{font-size:11px;letter-spacing:.1em;color:var(--am-ink-muted);font-weight:600}.am-chapter-card.is-passed .am-chapter-status-icon{color:var(--am-success)}.am-chapter-card.is-locked .am-chapter-status-icon{color:var(--am-ink-muted)}.am-chapter-card-title{font-family:var(--am-serif);font-size:20px;font-weight:700;margin:0 0 4px;color:var(--am-ink);line-height:1.35}.am-chapter-card-subtitle{font-size:13px;color:var(--am-ink-muted);margin:0 0 10px}.am-chapter-card-question{display:flex;gap:8px;align-items:flex-start;font-size:13px;color:var(--am-ink-soft);margin:10px 0 0;padding:10px 12px;background:#f8fafc;border-left:3px solid var(--am-accent);border-radius:0 8px 8px 0}.am-chapter-card-q-mark{font-family:var(--am-serif);font-weight:700;color:var(--am-accent);font-style:italic}.am-chapter-card-footer{display:flex;align-items:center;margin-top:14px;gap:12px}.am-chapter-card-meta{display:inline-flex;align-items:center;gap:4px;font-size:12px;color:var(--am-ink-muted)}.am-chapter-card-action{margin-left:auto;display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--am-accent)}.am-chapter-card-action.is-locked{color:var(--am-ink-muted);font-weight:400}.am-chapter-card-action.is-passed{color:var(--am-success)}.am-chapter-card-action.is-loading{color:var(--am-ink-muted)}.am-chapter-card-arrow{transition:transform .2s}.am-chapter-card:hover .am-chapter-card-arrow{transform:translate(3px)}.am-chapter{flex:1;display:flex;flex-direction:column;min-height:0}.am-chapter-progress{height:3px;background:#f1f5f9;overflow:hidden}.am-chapter-progress-fill{height:100%;background:linear-gradient(90deg,var(--am-accent),var(--am-accent-2));transition:width .1s linear}.am-chapter-topbar{display:flex;align-items:center;padding:12px 24px;background:#ffffffeb;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--am-line);gap:14px}.am-chapter-back,.am-chapter-jump{display:inline-flex;align-items:center;gap:5px;background:transparent;border:1px solid var(--am-line);color:var(--am-ink-soft);font-size:12px;font-weight:500;padding:6px 12px;border-radius:999px;cursor:pointer;transition:all .15s}.am-chapter-back:hover,.am-chapter-jump:hover{border-color:var(--am-accent);color:var(--am-accent)}.am-chapter-topbar-title{flex:1;text-align:center;font-family:var(--am-serif);font-size:14px;font-weight:600;color:var(--am-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.am-chapter-body{flex:1;overflow-y:auto;padding:40px 24px;scroll-behavior:smooth}.am-chapter-hero{max-width:720px;margin:0 auto 48px}.am-chapter-hero-no{font-size:12px;letter-spacing:.2em;color:var(--am-accent);font-weight:600;margin-bottom:12px}.am-chapter-hero-title{font-family:var(--am-serif);font-size:clamp(28px,4vw,44px);font-weight:700;line-height:1.2;color:var(--am-ink);margin:0 0 12px;letter-spacing:-.02em}.am-chapter-hero-subtitle{font-size:16px;line-height:1.6;color:var(--am-ink-muted);margin:0 0 18px}.am-chapter-hero-analogy{display:inline-flex;flex-direction:column;padding:12px 16px;background:var(--am-analogy);border:1px solid var(--am-analogy-border);border-radius:10px;margin:0 0 24px;max-width:100%}.am-chapter-hero-analogy span{font-size:11px;letter-spacing:.1em;color:var(--am-accent);font-weight:600;margin-bottom:4px}.am-chapter-hero-analogy em{font-style:normal;font-family:var(--am-serif);font-size:16px;font-weight:600;color:var(--am-ink)}.am-chapter-hero-guide{display:flex;align-items:center;gap:10px;padding-top:16px;border-top:1px solid var(--am-line)}.am-chapter-hero-guide-name{font-size:14px;font-weight:600;color:var(--am-ink)}.am-chapter-hero-guide-name span{font-weight:400;color:var(--am-ink-muted)}.am-chapter-hero-guide-persona{font-size:12px;color:var(--am-ink-muted);margin-top:2px}.am-chapter-blocks{max-width:720px;margin:0 auto;display:flex;flex-direction:column;gap:32px}.am-chapter-bottom-space{height:120px}.am-block{animation:am-block-in .4s ease-out both}@keyframes am-block-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.am-intro-block{display:flex;gap:14px;align-items:flex-start}.am-intro-speaker{display:flex;flex-direction:column;align-items:center;gap:6px;flex-shrink:0}.am-intro-speaker-name{font-size:11px;font-weight:600;color:var(--am-ink-muted)}.am-intro-bubble{flex:1;position:relative;padding:16px 20px;background:linear-gradient(135deg,#fff,#f8fafc);border:1px solid var(--am-line);border-radius:4px 14px 14px}.am-intro-bubble:before{content:"";position:absolute;left:-8px;top:12px;width:0;height:0;border-right:8px solid #ffffff;border-top:8px solid transparent;border-bottom:8px solid transparent;filter:drop-shadow(-1px 0 0 var(--am-line))}.am-intro-bubble p{margin:0;font-size:15.5px;line-height:1.75;color:var(--am-ink);font-family:var(--am-serif)}.am-text-block{font-family:var(--am-serif)}.am-text-body{font-size:16px;line-height:1.8;color:var(--am-ink)}.am-text-body p{margin:0 0 14px}.am-text-body p:last-child{margin-bottom:0}.am-text-body strong{color:var(--am-ink);font-weight:700}.am-text-body em{color:var(--am-accent);font-style:italic}.am-text-body code{font-family:var(--am-mono);font-size:.92em;background:#f1f5f9;padding:1px 6px;border-radius:4px;color:#be185d}.am-analogy-block{position:relative;display:flex;gap:16px;padding:20px 22px 20px 20px;background:var(--am-analogy);border:1px solid var(--am-analogy-border);border-radius:16px;margin:0}.am-analogy-block:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:linear-gradient(180deg,var(--am-accent),#ec4899);border-radius:16px 0 0 16px}.am-analogy-icon{flex-shrink:0;width:48px;height:48px;border-radius:12px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:24px;box-shadow:0 4px 10px -4px #7c3aed33}.am-analogy-content{flex:1;min-width:0}.am-analogy-header{display:inline-flex;align-items:center;gap:5px;font-size:11px;font-weight:600;color:var(--am-accent);letter-spacing:.05em;margin-bottom:6px}.am-analogy-heading{font-family:var(--am-serif);font-size:18px;font-weight:700;margin:0 0 8px;color:var(--am-ink);line-height:1.4}.am-analogy-body{font-family:var(--am-serif);font-size:15px;line-height:1.7;color:var(--am-ink-soft);margin:0}.am-analogy-avatar-mini{flex-shrink:0;align-self:flex-start;opacity:.85}.am-code-block{border-radius:14px;background:var(--am-code-bg);border:1px solid var(--am-code-border);overflow:hidden}.am-code-caption{display:flex;align-items:center;gap:10px;padding:12px 18px;border-bottom:1px solid #1e293b;background:#0f172a;color:#cbd5e1;font-size:13px}.am-code-caption-lang{font-family:var(--am-mono);font-size:10px;background:var(--am-accent);color:#fff;padding:2px 8px;border-radius:4px;text-transform:uppercase;letter-spacing:.05em}.am-code-view-full{margin-left:auto;display:inline-flex;align-items:center;gap:5px;padding:4px 10px;background:#7c3aed2e;color:#c4b5fd;border:1px solid rgba(124,58,237,.3);border-radius:999px;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s;font-family:var(--am-sans)}.am-code-view-full:hover{background:#7c3aed4d;color:#ede9fe;border-color:#7c3aed8c}.am-fullfile-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9600;background:#060918c7;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:center;padding:32px;animation:am-fullfile-in .22s ease-out;overflow:hidden;overscroll-behavior:contain}@keyframes am-fullfile-in{0%{opacity:0}to{opacity:1}}.am-fullfile-panel{width:100%;max-width:1040px;height:100%;max-height:calc(100vh - 64px);display:flex;flex-direction:column;background:#0b1220;border:1px solid #1e293b;border-radius:16px;box-shadow:0 30px 80px -20px #000000b3;overflow:hidden;animation:am-fullfile-panel-in .28s cubic-bezier(.34,1.3,.64,1)}@keyframes am-fullfile-panel-in{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:none}}.am-fullfile-head{display:flex;align-items:center;padding:14px 20px;background:#0f172a;border-bottom:1px solid #1e293b;gap:12px;flex-shrink:0}.am-fullfile-title{display:inline-flex;align-items:center;gap:8px;color:#e2e8f0;font-size:13px;font-family:var(--am-mono);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.am-fullfile-title svg{color:var(--am-accent);flex-shrink:0}.am-fullfile-meta{margin-left:auto;color:#64748b;font-size:11px;flex-shrink:0}.am-fullfile-close{background:transparent;border:none;color:#94a3b8;padding:6px;border-radius:6px;cursor:pointer;display:inline-flex;transition:all .15s;flex-shrink:0}.am-fullfile-close:hover{background:#1e293b;color:#e2e8f0}.am-fullfile-pre{flex:1;margin:0;padding:14px 0;overflow:auto;overscroll-behavior:contain;font-family:var(--am-mono);font-size:13px;line-height:1.75;color:#e2e8f0;background:transparent}.am-fullfile-pre code{display:block}.am-code-hint{display:flex;align-items:center;gap:6px;padding:8px 18px;background:#0f172a;border-bottom:1px solid #1e293b;font-size:11px;color:#94a3b8}.am-code-hint-dot{width:6px;height:6px;border-radius:50%;background:var(--am-accent);animation:am-pulse 1.6s ease-in-out infinite}@keyframes am-pulse{0%,to{opacity:.4}50%{opacity:1}}.am-code-pre{margin:0;padding:14px 0;overflow-x:auto;font-family:var(--am-mono);font-size:13px;line-height:1.75;color:#e2e8f0}.am-code-pre code{display:block}.am-code-line{display:flex;padding:0 18px;position:relative;transition:background .15s}.am-code-line.has-comment{cursor:pointer}.am-code-line.has-comment:hover{background:#7c3aed1f}.am-code-line.has-comment:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--am-accent);opacity:.6}.am-code-line.is-selected{background:#7c3aed38}.am-code-line-no{flex-shrink:0;width:36px;color:#475569;font-size:11px;text-align:right;padding-right:12px;-webkit-user-select:none;user-select:none}.am-code-line-content{flex:1;white-space:pre}.am-code-line-tag{flex-shrink:0;margin-left:8px;opacity:.9;font-size:12px}.am-code-bubble{margin:10px 18px 16px;padding:12px 14px;border-radius:10px;background:linear-gradient(135deg,#1e1b4b,#312e81);border:1px solid #4c1d95;color:#e0e7ff;font-size:13px;animation:am-bubble-in .25s ease-out}.am-code-bubble-inline{position:sticky;left:0;right:0;margin:6px 14px 8px 44px;padding:10px 14px 12px;font-family:var(--am-sans);white-space:normal;box-shadow:0 8px 24px -8px #1e1b4b8c;z-index:2}.am-code-bubble-inline:before{content:"";position:absolute;top:-5px;left:20px;width:10px;height:10px;background:linear-gradient(135deg,#1e1b4b,#312e81);border-left:1px solid #4c1d95;border-top:1px solid #4c1d95;transform:rotate(45deg)}@keyframes am-bubble-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.am-code-bubble-head{display:flex;align-items:center;gap:8px;font-size:11px;color:#a5b4fc;margin-bottom:6px}.am-code-bubble-tag{font-size:13px}.am-code-bubble-close{margin-left:auto;background:transparent;border:none;color:#a5b4fc;font-size:18px;line-height:1;cursor:pointer;padding:0 4px}.am-code-bubble-close:hover{color:#fff}.am-code-bubble-body{font-family:var(--am-serif);font-size:14px;line-height:1.6;color:#e0e7ff}.am-formula-block{padding:20px 22px;background:var(--am-formula);border:1px solid var(--am-formula-border);border-radius:14px}.am-formula-header{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.08em;color:#0369a1;font-weight:600;margin-bottom:10px}.am-formula-math{text-align:center;margin:12px 0;overflow-x:auto}.am-formula-math .katex-display{margin:0}.am-formula-toggle{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:#fff;border:1px solid var(--am-formula-border);color:#0369a1;font-size:12px;font-weight:500;border-radius:999px;cursor:pointer;margin-top:6px;transition:all .15s}.am-formula-toggle:hover{background:#e0f2fe;border-color:#38bdf8}.am-formula-toggle svg{transition:transform .2s}.am-formula-toggle.is-expanded svg{transform:rotate(180deg)}.am-formula-symbols{list-style:none;margin:14px 0 0;padding:14px 16px;background:#fff;border-radius:10px;border:1px solid #e0f2fe;display:flex;flex-direction:column;gap:8px;animation:am-block-in .25s ease-out}.am-formula-symbol-item{display:flex;gap:12px;align-items:baseline;font-size:14px}.am-formula-symbol-sym{flex-shrink:0;min-width:32px;font-family:KaTeX_Math,Georgia,serif;font-style:italic;font-size:16px;color:var(--am-accent);font-weight:600}.am-formula-symbol-meaning{color:var(--am-ink-soft);line-height:1.5}.am-mermaid-block{padding:20px 24px 24px;background:#fff;border:1px solid var(--am-line);border-radius:14px;margin:0}.am-mermaid-caption{display:inline-flex;align-items:center;gap:6px;font-size:11px;letter-spacing:.08em;color:var(--am-accent);font-weight:600;margin-bottom:12px}.am-mermaid-container{position:relative;min-height:120px;overflow-x:auto}.am-mermaid-svg-slot{display:flex;align-items:center;justify-content:center;min-height:120px;width:100%}.am-mermaid-container.is-rendered .am-mermaid-svg-slot{animation:am-mermaid-reveal .5s ease-out}@keyframes am-mermaid-reveal{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.am-mermaid-svg-slot svg{max-width:100%;height:auto}.am-mermaid-svg-slot .nodeLabel,.am-mermaid-svg-slot .edgeLabel,.am-mermaid-svg-slot text,.am-mermaid-svg-slot foreignObject{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif!important;font-size:14px!important}.am-mermaid-svg-slot .edgeLabel{background:#fffffff2!important;padding:2px 6px!important;border-radius:4px!important}.am-mermaid-container.is-rendered .am-mermaid-skeleton{display:none}.am-mermaid-skeleton{padding:40px 20px;color:var(--am-ink-muted);font-size:13px;background:linear-gradient(90deg,transparent,rgba(124,58,237,.06),transparent);background-size:200% 100%;animation:am-shimmer 1.6s infinite;width:100%;text-align:center;border-radius:8px}@keyframes am-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.am-mermaid-error{color:var(--am-error);font-size:13px;padding:20px}.am-mini-challenge{padding:22px 24px;background:var(--am-challenge);border:2px solid var(--am-challenge-border);border-radius:16px;position:relative;transition:all .3s}.am-mini-challenge.is-correct{background:#f0fdf4;border-color:#86efac}.am-mini-challenge.is-wrong{background:#fef2f2;border-color:#fca5a5}.am-mini-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.am-mini-icon-wrap{width:28px;height:28px;border-radius:8px;background:#fff;display:flex;align-items:center;justify-content:center;color:var(--am-accent-warm);box-shadow:0 2px 6px -2px #f59e0b66}.am-mini-label{font-size:13px;font-weight:600;color:#92400e;letter-spacing:.02em}.am-mini-challenge.is-correct .am-mini-label{color:#065f46}.am-mini-challenge.is-wrong .am-mini-label{color:#991b1b}.am-mini-challenge.is-correct .am-mini-icon-wrap{color:var(--am-success)}.am-mini-challenge.is-wrong .am-mini-icon-wrap{color:var(--am-error)}.am-mini-prompt{font-family:var(--am-serif);font-size:17px;font-weight:600;color:var(--am-ink);line-height:1.5;margin:0 0 14px}.am-mini-options{list-style:none;padding:0;margin:0 0 12px;display:flex;flex-direction:column;gap:8px}.am-mini-option-btn{width:100%;display:flex;align-items:center;gap:10px;padding:11px 14px;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;cursor:pointer;font-family:inherit;font-size:14px;color:var(--am-ink);text-align:left;transition:all .15s}.am-mini-option-btn:disabled{cursor:default}.am-mini-option-btn:not(:disabled):hover{border-color:var(--am-accent);background:#faf5ff}.am-mini-option.is-selected .am-mini-option-btn{border-color:var(--am-accent);background:#faf5ff}.am-mini-option.is-answer .am-mini-option-btn{border-color:var(--am-success);background:#ecfdf5;color:#064e3b;font-weight:600}.am-mini-option.is-wrong-pick .am-mini-option-btn{border-color:var(--am-error);background:#fef2f2;color:#7f1d1d}.am-mini-option-marker{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:#f1f5f9;color:var(--am-ink-muted);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.am-mini-option.is-selected .am-mini-option-marker,.am-mini-option.is-answer .am-mini-option-marker{background:var(--am-accent);color:#fff}.am-mini-option.is-answer .am-mini-option-marker{background:var(--am-success)}.am-mini-option.is-wrong-pick .am-mini-option-marker{background:var(--am-error);color:#fff}.am-mini-option-text{flex:1}.am-mini-option-icon{flex-shrink:0}.am-mini-submit{padding:10px 22px;border-radius:999px;background:var(--am-accent);color:#fff;border:none;font-weight:600;font-size:13px;cursor:pointer;transition:all .15s}.am-mini-submit:hover:not(:disabled){background:#6d28d9;transform:translateY(-1px)}.am-mini-submit:disabled{background:#cbd5e1;cursor:not-allowed}.am-mini-feedback{display:flex;gap:12px;margin-top:14px;padding:14px;border-radius:12px;background:#fff;animation:am-block-in .3s ease-out}.am-mini-feedback.is-correct{background:#f0fdf4;border:1px solid #bbf7d0}.am-mini-feedback.is-wrong{background:#fef2f2;border:1px solid #fecaca}.am-mini-feedback-avatar{flex-shrink:0}.am-mini-feedback-body{flex:1}.am-mini-feedback-head{display:inline-flex;align-items:center;gap:5px;font-size:13px;font-weight:600;margin-bottom:4px}.am-mini-feedback.is-correct .am-mini-feedback-head{color:#065f46}.am-mini-feedback.is-wrong .am-mini-feedback-head{color:#991b1b}.am-mini-feedback-body p{margin:0;font-size:14px;line-height:1.6;color:var(--am-ink-soft);font-family:var(--am-serif)}.am-mini-retry{margin-top:8px;padding:5px 12px;background:transparent;border:1px solid var(--am-error);color:var(--am-error);border-radius:999px;font-size:12px;cursor:pointer}.am-mini-retry:hover{background:var(--am-error);color:#fff}.am-final-challenge{margin:48px auto 0;max-width:720px;padding:28px 30px;background:linear-gradient(135deg,#fff,#faf5ff);border:2px solid var(--am-accent);border-radius:20px;box-shadow:0 30px 60px -30px #7c3aed59}.am-final-challenge-intro{text-align:center;padding:40px 32px}.am-final-intro-icon{display:inline-flex;width:72px;height:72px;border-radius:20px;background:linear-gradient(135deg,var(--am-accent),var(--am-accent-2));color:#fff;align-items:center;justify-content:center;margin-bottom:14px;box-shadow:0 20px 40px -10px #7c3aed80}.am-final-intro-title{font-family:var(--am-serif);font-size:26px;font-weight:700;color:var(--am-ink);margin:0 0 10px}.am-final-intro-desc{font-size:15px;line-height:1.7;color:var(--am-ink-soft);margin:0 0 20px}.am-final-intro-badge-preview{display:inline-flex;align-items:center;gap:6px;margin-left:4px;padding:3px 10px;background:#fff;border:1px solid var(--am-line);border-radius:999px;font-size:13px}.am-final-intro-start{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;background:linear-gradient(135deg,var(--am-accent),var(--am-accent-2));color:#fff;border:none;border-radius:999px;font-size:15px;font-weight:600;cursor:pointer;box-shadow:0 10px 30px -10px #7c3aed99;transition:all .2s}.am-final-intro-start:hover{transform:translateY(-2px);box-shadow:0 14px 34px -10px #7c3aeda6}.am-final-intro-hint{font-size:12px;color:var(--am-ink-muted);margin:14px 0 0}.am-final-header{display:flex;align-items:center;gap:10px;padding-bottom:16px;border-bottom:1px solid #ede9fe;margin-bottom:18px;font-family:var(--am-serif);font-size:18px;font-weight:700;color:var(--am-accent)}.am-final-badge{margin-left:auto;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;font-family:var(--am-sans)}.am-final-badge.is-passed{background:#dcfce7;color:#15803d}.am-final-badge.is-failed{background:#fee2e2;color:#b91c1c}.am-final-questions{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:22px}.am-final-question{padding:0}.am-final-q-head{display:flex;gap:10px;align-items:flex-start;margin-bottom:10px}.am-final-q-no{flex-shrink:0;font-family:var(--am-serif);font-size:16px;font-weight:700;color:var(--am-accent);line-height:1.4}.am-final-q-head p{font-size:15px;line-height:1.6;color:var(--am-ink);margin:0;font-weight:600}.am-final-q-options{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px}.am-final-q-option button{width:100%;display:flex;align-items:center;gap:10px;padding:9px 12px;background:#fff;border:1.5px solid #e5e7eb;border-radius:10px;font-family:inherit;font-size:13.5px;color:var(--am-ink);cursor:pointer;text-align:left;transition:all .15s}.am-final-q-option button:disabled{cursor:default}.am-final-q-option button:not(:disabled):hover{border-color:var(--am-accent);background:#faf5ff}.am-final-q-option.is-selected button{border-color:var(--am-accent);background:#faf5ff}.am-final-q-option.is-answer button{border-color:var(--am-success);background:#ecfdf5;color:#064e3b;font-weight:600}.am-final-q-option.is-wrong-pick button{border-color:var(--am-error);background:#fef2f2;color:#7f1d1d}.am-final-q-marker{flex-shrink:0;width:22px;height:22px;border-radius:50%;background:#f1f5f9;color:var(--am-ink-muted);font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.am-final-q-option.is-selected .am-final-q-marker,.am-final-q-option.is-answer .am-final-q-marker{background:var(--am-accent);color:#fff}.am-final-q-option.is-answer .am-final-q-marker{background:var(--am-success)}.am-final-q-option.is-wrong-pick .am-final-q-marker{background:var(--am-error);color:#fff}.am-final-q-text{flex:1}.am-final-q-explain{margin-top:8px;padding:10px 12px;border-radius:8px;font-size:13px;line-height:1.5;font-family:var(--am-serif)}.am-final-q-explain.is-correct{background:#ecfdf5;color:#065f46}.am-final-q-explain.is-wrong{background:#fef2f2;color:#991b1b}.am-final-actions{display:flex;align-items:center;gap:14px;margin-top:22px;padding-top:18px;border-top:1px solid #ede9fe}.am-final-submit{padding:11px 24px;border-radius:999px;background:var(--am-accent);color:#fff;border:none;font-weight:600;font-size:14px;cursor:pointer}.am-final-submit:hover:not(:disabled){background:#6d28d9;transform:translateY(-1px)}.am-final-submit:disabled{background:#cbd5e1;cursor:not-allowed}.am-final-hint{font-size:12px;color:var(--am-ink-muted)}.am-final-result{margin-top:20px;padding:18px 20px;border-radius:14px}.am-final-result.is-passed{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #86efac}.am-final-result.is-failed{background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fca5a5}.am-final-result-title{font-family:var(--am-serif);font-size:16px;font-weight:600;margin-bottom:6px}.am-final-result.is-passed .am-final-result-title{color:#065f46}.am-final-result.is-failed .am-final-result-title{color:#991b1b}.am-final-result-hook{font-size:14px;color:var(--am-ink-soft);font-family:var(--am-serif);margin:10px 0 0;line-height:1.6}.am-final-retry{margin-top:10px;padding:7px 16px;background:transparent;border:1.5px solid var(--am-error);color:var(--am-error);border-radius:999px;font-size:13px;font-weight:500;cursor:pointer}.am-final-retry:hover{background:var(--am-error);color:#fff}.am-unlock-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ad1;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:9500;animation:am-fade .3s ease-out}@keyframes am-fade{0%{opacity:0}to{opacity:1}}.am-unlock-card{position:relative;max-width:440px;width:100%;padding:40px 32px 32px;background:#fff;border-radius:24px;text-align:center;box-shadow:0 40px 80px -20px #7c3aed80;overflow:hidden}.am-unlock-confetti{position:absolute;inset:0 0 auto 0;height:100%;pointer-events:none;overflow:hidden}.am-unlock-confetti span{position:absolute;top:-10px;width:8px;height:8px;background:var(--am-accent);border-radius:2px;animation:am-confetti-fall 2.5s ease-in forwards;left:calc(6% + var(--i) * 7%);animation-delay:calc(var(--i) * 80ms)}.am-unlock-confetti span:nth-child(2n){background:var(--am-accent-2)}.am-unlock-confetti span:nth-child(3n){background:var(--am-accent-warm)}.am-unlock-confetti span:nth-child(4n){background:#ec4899}.am-unlock-confetti span:nth-child(5n){background:var(--am-success)}@keyframes am-confetti-fall{0%{transform:translateY(-20px) rotate(0);opacity:1}to{transform:translateY(600px) rotate(720deg);opacity:0}}.am-unlock-icon{display:inline-flex;width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--am-accent),var(--am-accent-2));color:#fff;align-items:center;justify-content:center;margin-bottom:14px;opacity:0;transform:scale(.6);transition:opacity .4s,transform .4s cubic-bezier(.34,1.56,.64,1);box-shadow:0 14px 30px -6px #7c3aed99}.am-unlock-icon.is-visible{opacity:1;transform:scale(1)}.am-unlock-title{font-family:var(--am-serif);font-size:26px;font-weight:700;margin:0 0 4px;color:var(--am-ink);opacity:0;transform:translateY(10px);transition:opacity .4s .1s,transform .4s .1s}.am-unlock-title.is-visible{opacity:1;transform:translateY(0)}.am-unlock-sub{font-size:14px;color:var(--am-ink-muted);margin:0 0 22px;opacity:0;transition:opacity .4s .2s}.am-unlock-sub.is-visible{opacity:1}.am-unlock-badge{position:relative;margin:18px auto;opacity:0;transform:scale(.5) rotate(-15deg);transition:opacity .6s .1s,transform .6s .1s cubic-bezier(.34,1.56,.64,1)}.am-unlock-badge.is-visible{opacity:1;transform:scale(1) rotate(0)}.am-unlock-badge-glow{position:absolute;top:-30px;right:-30px;bottom:-30px;left:-30px;background:radial-gradient(circle,rgba(124,58,237,.3),transparent 60%);animation:am-badge-pulse 2s ease-in-out infinite;z-index:0}@keyframes am-badge-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.am-unlock-badge-ring{position:relative;width:110px;height:110px;margin:0 auto 10px;border-radius:50%;background:conic-gradient(from 0deg,var(--am-accent),var(--am-accent-2),var(--am-accent-warm),var(--am-accent));padding:4px;z-index:1}.am-unlock-badge-inner{width:100%;height:100%;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;font-size:48px}.am-unlock-badge-name{font-family:var(--am-serif);font-size:18px;font-weight:700;color:var(--am-ink);margin-top:8px;position:relative;z-index:1}.am-unlock-badge-caption{font-size:11px;letter-spacing:.1em;color:var(--am-ink-muted);position:relative;z-index:1;margin-top:2px}.am-unlock-stats{display:flex;gap:14px;justify-content:center;margin:20px 0 16px;opacity:0;transform:translateY(10px);transition:opacity .4s .3s,transform .4s .3s}.am-unlock-stats.is-visible{opacity:1;transform:translateY(0)}.am-unlock-stat{flex:1;max-width:140px;padding:10px 12px;background:#f8fafc;border-radius:12px}.am-unlock-stat.is-xp{background:linear-gradient(135deg,#ede9fe,#dbeafe)}.am-unlock-stat-value{font-family:var(--am-serif);font-size:22px;font-weight:700;color:var(--am-ink);font-variant-numeric:tabular-nums}.am-unlock-stat-label{font-size:11px;color:var(--am-ink-muted);margin-top:2px}.am-unlock-stat.is-xp .am-unlock-stat-value{background:linear-gradient(135deg,var(--am-accent),var(--am-accent-2));-webkit-background-clip:text;background-clip:text;color:transparent}.am-unlock-guide{display:flex;gap:10px;align-items:center;padding:12px 14px;background:#faf5ff;border-left:3px solid var(--am-accent);border-radius:0 10px 10px 0;margin:18px 0;text-align:left;opacity:0;transition:opacity .4s .4s}.am-unlock-guide.is-visible{opacity:1}.am-unlock-guide p{margin:0;font-family:var(--am-serif);font-size:14px;line-height:1.5;color:var(--am-ink-soft)}.am-unlock-actions{display:flex;gap:10px;justify-content:center;opacity:0;transform:translateY(10px);transition:opacity .4s .5s,transform .4s .5s}.am-unlock-actions.is-visible{opacity:1;transform:translateY(0)}.am-unlock-back{display:inline-flex;align-items:center;gap:5px;padding:10px 18px;background:transparent;border:1.5px solid var(--am-line);color:var(--am-ink-soft);border-radius:999px;font-weight:500;font-size:13px;cursor:pointer;transition:all .15s}.am-unlock-back:hover{border-color:var(--am-ink);color:var(--am-ink)}.am-unlock-continue{display:inline-flex;align-items:center;gap:6px;padding:10px 24px;background:linear-gradient(135deg,var(--am-accent),var(--am-accent-2));color:#fff;border:none;border-radius:999px;font-weight:600;font-size:13px;cursor:pointer;box-shadow:0 10px 24px -8px #7c3aed8c;transition:all .2s}.am-unlock-continue:hover{transform:translateY(-1px)}.am-bc-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172ae0;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);display:flex;align-items:center;justify-content:center;padding:24px;z-index:9600;animation:am-fade .4s ease-out;overflow-y:auto}.am-bc-card{position:relative;max-width:540px;width:100%;padding:48px 40px 32px;background:radial-gradient(ellipse at top,#faf5ff,#fff 60%),#fff;border:1px solid var(--am-line);border-radius:20px;box-shadow:0 50px 100px -30px #7c3aed80;animation:am-bc-in .4s cubic-bezier(.34,1.56,.64,1)}@keyframes am-bc-in{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.am-bc-close{position:absolute;top:14px;right:14px;width:32px;height:32px;border-radius:50%;background:#f1f5f9;border:none;color:var(--am-ink-muted);cursor:pointer;display:flex;align-items:center;justify-content:center}.am-bc-close:hover{background:#e2e8f0;color:var(--am-ink)}.am-bc-stamp{position:absolute;top:20px;left:20px;padding:8px 14px;border:2px solid var(--am-accent);border-radius:8px;color:var(--am-accent);font-family:var(--am-serif);font-weight:700;font-size:12px;transform:rotate(-6deg);display:flex;flex-direction:column;line-height:1.1}.am-bc-stamp-sub{font-size:8px;letter-spacing:.2em;margin-top:2px;opacity:.8}.am-bc-header{text-align:center;margin-bottom:22px}.am-bc-title{font-size:13px;letter-spacing:.1em;color:var(--am-ink-muted);margin-bottom:4px}.am-bc-repo{font-family:var(--am-serif);font-size:28px;font-weight:700;color:var(--am-ink);margin:0 0 6px;word-break:break-all}.am-bc-sub{font-size:13px;color:var(--am-ink-muted);font-style:italic;margin:0}.am-bc-guide{display:flex;gap:14px;align-items:center;padding:14px 18px;background:#faf5ff;border:1px solid #e0e7ff;border-radius:14px;margin-bottom:20px}.am-bc-guide-lead{font-size:13px;font-weight:600;color:var(--am-ink)}.am-bc-guide-tag{font-size:12px;color:var(--am-ink-muted);margin-top:2px;font-style:italic}.am-bc-stats{display:flex;gap:14px;padding:16px 0;border-top:1px dashed var(--am-line);border-bottom:1px dashed var(--am-line);margin-bottom:18px}.am-bc-stat{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;font-size:12px;color:var(--am-ink-muted)}.am-bc-stat svg{color:var(--am-accent)}.am-bc-stat strong{font-family:var(--am-serif);font-size:18px;color:var(--am-ink);font-weight:700}.am-bc-badges-title{font-size:12px;letter-spacing:.08em;color:var(--am-ink-muted);font-weight:600;margin-bottom:10px}.am-bc-badges-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:10px}.am-bc-badge{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 8px;background:#fff;border:1px solid var(--am-line);border-radius:10px;text-align:center;transition:transform .2s}.am-bc-badge:hover{transform:translateY(-2px);border-color:var(--am-accent)}.am-bc-badge-icon{font-size:28px}.am-bc-badge-name{font-size:10.5px;font-weight:600;color:var(--am-ink);line-height:1.3}.am-bc-footer{display:flex;justify-content:space-between;align-items:center;margin-top:22px;padding-top:14px;border-top:1px solid var(--am-line);font-size:11px;color:var(--am-ink-muted);letter-spacing:.04em}.am-bc-watermark{font-weight:600;color:var(--am-accent)}@media (max-width: 768px){.am-outline{padding:24px 16px 60px}.am-guide-intro{flex-direction:column;text-align:center;padding:24px 20px}.am-book-status-row{flex-wrap:wrap;gap:12px}.am-book-status-item{flex:1 1 40%}.am-chapter-body{padding:24px 16px}.am-chapter-topbar{padding:10px 14px}.am-chapter-topbar-title{font-size:12px}.am-chapter-hero-title{font-size:clamp(24px,6vw,32px)}.am-analogy-block{flex-direction:column}.am-analogy-avatar-mini{align-self:flex-end}.am-final-challenge{padding:22px 18px}.am-final-intro-start{width:100%;justify-content:center}.am-unlock-card{padding:32px 22px 24px}.am-bc-card{padding:40px 22px 24px}.am-bc-badges-grid{grid-template-columns:repeat(auto-fill,minmax(80px,1fr))}}.lab-root{position:fixed;top:0;right:0;bottom:0;left:0;z-index:2000;background:radial-gradient(ellipse at top,#ffffff 0%,var(--gs-bg) 55%,#eef3fb 100%);color:var(--gs-text);overflow:hidden;display:flex;flex-direction:column;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}body:has(.lab-root){overflow:hidden}.lab-root:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(rgba(37,99,235,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(37,99,235,.05) 1px,transparent 1px);background-size:40px 40px;pointer-events:none;mask-image:radial-gradient(ellipse at center,black 20%,transparent 80%);-webkit-mask-image:radial-gradient(ellipse at center,black 20%,transparent 80%)}.lab-topbar{position:relative;display:flex;align-items:center;gap:14px;padding:14px 20px;border-bottom:1px solid var(--gs-border);background:linear-gradient(90deg,#ffffffeb,#f8fafcd9);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}.lab-topbar-back{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-text-soft);border-radius:8px;cursor:pointer;font-size:13px;transition:all .18s}.lab-topbar-back:hover{background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary)}.lab-topbar-title{display:inline-flex;align-items:center;gap:8px;font-weight:600;font-size:15px;color:var(--gs-text)}.lab-topbar-title svg{color:var(--gs-primary)}.lab-topbar-beta{padding:2px 8px;background:linear-gradient(90deg,#2563eb,#7c3aed);color:#fff;font-size:10px;font-weight:700;letter-spacing:.5px;border-radius:999px;margin-left:2px}.lab-topbar-tabs{margin-left:auto;display:flex;gap:6px;padding:4px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:10px}.lab-topbar-tab{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:transparent;border:none;color:var(--gs-text-muted);font-size:12px;cursor:pointer;border-radius:6px;transition:all .18s}.lab-topbar-tab:hover{color:var(--gs-text)}.lab-topbar-tab.active{background:var(--gs-surface);color:var(--gs-primary);box-shadow:var(--gs-shadow-sm)}.lab-body{position:relative;flex:1;overflow-y:auto;padding:24px clamp(20px,4vw,40px) 40px}.lab-intro{max-width:960px;margin:0 auto 24px;text-align:left}.lab-intro-badge{display:inline-block;padding:4px 12px;background:var(--gs-primary-soft);color:var(--gs-primary);font-size:11px;font-weight:600;letter-spacing:1px;border-radius:999px;border:1px solid #c7d8f7;margin-bottom:12px}.lab-intro-title{margin:0 0 10px;font-size:clamp(22px,3vw,32px);font-weight:700;background:linear-gradient(120deg,#2563eb,#4f7cf0,#7c3aed);-webkit-background-clip:text;background-clip:text;color:transparent}.lab-intro-desc{margin:0;max-width:720px;color:var(--gs-text-soft);font-size:14px;line-height:1.75}.lab-intro-desc strong{color:var(--gs-primary);font-weight:600}.moons-lab{max-width:1040px;margin:0 auto}.moons-lab-grid{display:grid;grid-template-columns:minmax(280px,340px) 1fr;gap:20px;align-items:stretch}@media (max-width: 900px){.moons-lab-grid{grid-template-columns:1fr}}.lab-panel{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;padding:18px;display:flex;flex-direction:column;box-shadow:var(--gs-shadow-sm)}.lab-panel-controls{gap:12px;justify-content:space-between;overflow:hidden}.lab-panel-viz{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;overflow:hidden}.lab-canvas-wrap,.lab-chart-wrap{display:flex;flex-direction:column;gap:8px;align-items:center}.lab-canvas-header,.lab-chart-header{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}.lab-canvas-title,.lab-chart-title{flex:0 0 auto;font-size:12px;color:var(--gs-text-soft);font-weight:600;letter-spacing:.3px}.lab-canvas-legend{flex:0 1 auto;text-align:right;font-size:11px;color:var(--gs-text-muted);display:inline-flex;align-items:center}.lab-canvas-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px;vertical-align:middle}.lab-canvas{max-width:100%;border-radius:10px;background:#0b1020;border:1px solid var(--gs-border);box-shadow:var(--gs-shadow-sm);display:block;margin:0 auto}.lab-canvas-hint{font-size:11px;color:var(--gs-text-muted);line-height:1.5}.lab-chart-svg{width:100%;max-width:460px;height:auto;background:#0b1020d9;border-radius:10px;border:1px solid var(--gs-border)}.lab-chart-legend{display:flex;gap:12px;font-size:11px;color:var(--gs-text-muted)}.lab-chart-legend-item{display:inline-flex;align-items:center;gap:5px;font-family:JetBrains Mono,monospace}.lab-chart-dot{display:inline-block;width:8px;height:8px;border-radius:50%}.lab-chart-empty{text-align:center;color:var(--gs-text-muted);font-size:12px;padding:10px}.lab-mode-toggle{display:flex;gap:2px;background:var(--gs-surface-2);border-radius:8px;padding:3px;margin-bottom:14px}.lab-mode-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:6px 12px;border:none;border-radius:6px;background:transparent;color:var(--gs-text-muted);font-size:12px;font-weight:500;cursor:pointer;transition:all .2s}.lab-mode-btn:hover:not(:disabled){color:var(--gs-text);background:#2563eb0f}.lab-mode-btn.active{background:var(--gs-surface);color:var(--gs-primary);box-shadow:var(--gs-shadow-sm)}.lab-mode-btn:disabled{opacity:.4;cursor:not-allowed}.lab-code-editor-wrap{border-radius:8px;overflow:hidden;border:1px solid var(--gs-border);margin-bottom:10px;position:relative}.lab-code-editor-wrap .monaco-editor{border-radius:8px}.lab-code-error{display:flex;align-items:flex-start;gap:6px;padding:8px 10px;background:#fef2f2;border:1px solid #fecaca;border-radius:6px;color:var(--gs-danger);font-size:12px;line-height:1.5;margin-bottom:10px;word-break:break-word}.lab-code-error svg{flex-shrink:0;margin-top:2px}.lab-code-fullscreen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3000;min-height:unset;max-height:unset;border-radius:0;border:none;display:flex;flex-direction:column;background:#1e1e1e;margin-bottom:0}.lab-code-editor-toolbar{display:flex;justify-content:flex-end;padding:4px 8px;background:var(--gs-surface-2);border-bottom:1px solid var(--gs-border);flex-shrink:0;z-index:1}.lab-code-fullscreen .lab-code-editor-toolbar{background:#252526;border-bottom-color:#333}.lab-code-fullscreen-actions{display:flex;gap:8px;padding:10px 16px;background:#252526;border-top:1px solid #333;flex-shrink:0}.lab-panel-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.5px;color:var(--gs-primary);text-transform:uppercase;font-weight:600;margin-bottom:14px}.lab-field{margin-bottom:16px}.lab-field:last-child{margin-bottom:0}.lab-field label{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--gs-text-soft);margin-bottom:8px;font-weight:500}.lab-field-value{font-family:JetBrains Mono,Fira Code,monospace;color:var(--gs-primary);font-size:12px;padding:1px 8px;background:var(--gs-primary-soft);border-radius:4px}.lab-field input[type=range]{width:100%;-moz-appearance:none;appearance:none;-webkit-appearance:none;height:4px;background:var(--gs-border);border-radius:2px;outline:none}.lab-field input[type=range]::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:14px;height:14px;background:linear-gradient(135deg,#2563eb,#7c3aed);border-radius:50%;cursor:pointer;box-shadow:0 1px 4px #2563eb66}.lab-field input[type=range]::-moz-range-thumb{width:14px;height:14px;background:linear-gradient(135deg,#2563eb,#7c3aed);border:none;border-radius:50%;cursor:pointer}.lab-field input[type=range]:disabled{opacity:.4;cursor:not-allowed}.lab-layers{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.lab-layer-box{display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 8px;background:var(--gs-primary-soft);border:1px solid #c7d8f7;border-radius:6px;min-width:52px}.lab-layer-box.lab-layer-fixed{background:var(--gs-surface-2);border-color:var(--gs-border)}.lab-layer-tag{font-size:9px;letter-spacing:.3px;color:var(--gs-text-muted);text-transform:uppercase}.lab-layer-value{color:var(--gs-text);font-size:14px;font-weight:600;font-family:JetBrains Mono,monospace}.lab-layer-box input{width:42px;background:transparent;border:none;color:var(--gs-text);font-size:14px;font-weight:600;text-align:center;font-family:JetBrains Mono,monospace;outline:none;padding:0}.lab-layer-box input:disabled{opacity:.5}.lab-layer-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.lab-icon-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-text-soft);border-radius:6px;cursor:pointer;font-size:11px;transition:all .15s}.lab-icon-btn:hover:not(:disabled){background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary)}.lab-icon-btn:disabled{opacity:.4;cursor:not-allowed}.lab-icon-btn-accent{background:linear-gradient(90deg,#fdf2f8,#f3ecfe);border-color:#f0abcc;color:#be185d}.lab-icon-btn-accent:hover:not(:disabled){background:linear-gradient(90deg,#fce7f3,#ede4fd);color:#9d174d;border-color:#ec4899}.lab-icon-btn-accent:disabled{opacity:.8}.lab-param-count{margin-left:auto;font-size:11px;color:var(--gs-text-muted);font-family:JetBrains Mono,monospace}.lab-tabs{display:flex;gap:4px;padding:3px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:7px}.lab-tab{flex:1;padding:6px 4px;background:transparent;border:none;color:var(--gs-text-muted);font-size:11px;cursor:pointer;border-radius:5px;transition:all .15s;font-family:JetBrains Mono,monospace}.lab-tab:hover:not(:disabled){color:var(--gs-text)}.lab-tab.active{background:var(--gs-surface);color:var(--gs-primary);box-shadow:var(--gs-shadow-sm)}.lab-tab:disabled{opacity:.5;cursor:not-allowed}.lab-action-row{display:flex;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--gs-border)}.lab-btn{flex:1;display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border:none;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.lab-btn-primary{background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;box-shadow:0 4px 14px -4px #2563eb80}.lab-btn-primary:hover{transform:translateY(-1px);box-shadow:0 8px 20px -6px #2563eb8c}.lab-btn-danger{background:var(--gs-danger);color:#fff}.lab-btn-ghost{background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-text-soft)}.lab-btn-ghost:hover:not(:disabled){background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary)}.lab-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}.lab-status-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:14px}.lab-status-pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:20px;font-size:11px}.lab-status-label{color:var(--gs-text-muted)}.lab-status-value{color:var(--gs-primary);font-family:JetBrains Mono,monospace;font-weight:600}.lab-explain{max-width:1040px;margin:20px auto 0;padding:16px 20px;background:linear-gradient(135deg,#f5f1fe,#eff5ff);border:1px solid #e4dafc;border-radius:12px}.lab-explain-header{display:inline-flex;align-items:center;gap:6px;font-size:12px;letter-spacing:.5px;color:#6d28d9;text-transform:uppercase;font-weight:600;margin-bottom:10px}.lab-explain ol{margin:0;padding-left:22px;color:var(--gs-text-soft);font-size:13px;line-height:1.8}.lab-explain ol li{margin-bottom:8px}.lab-explain ol li:last-child{margin-bottom:0}.lab-explain strong{color:var(--gs-text);font-weight:600}.lab-explain code{padding:1px 6px;background:var(--gs-primary-soft);color:var(--gs-primary);border-radius:4px;font-family:JetBrains Mono,Fira Code,monospace;font-size:12px}.lab-template-grid{max-width:1040px;margin:0 auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.lab-template-card{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px 22px 20px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:14px;color:var(--gs-text);text-align:left;cursor:pointer;transition:all .22s ease;position:relative;overflow:hidden;box-shadow:var(--gs-shadow-sm)}.lab-template-card:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 20% 0%,rgba(124,58,237,.1),transparent 50%);opacity:0;transition:opacity .3s;pointer-events:none}.lab-template-card:hover:not(.lab-template-card-coming){transform:translateY(-4px);border-color:#c7d8f7;box-shadow:var(--gs-shadow-md)}.lab-template-card:hover:before{opacity:1}.lab-template-card-coming{cursor:default;opacity:.7;border-style:dashed;border-color:var(--gs-border)}.lab-template-card-icon{font-size:32px;line-height:1}.lab-template-card-header{display:flex;align-items:center;gap:8px;width:100%}.lab-template-card-name{font-size:17px;font-weight:700;color:var(--gs-text)}.lab-template-card-difficulty{padding:2px 8px;font-size:10px;font-weight:700;letter-spacing:.3px;border-radius:999px;margin-left:auto}.lab-template-card-difficulty-easy{color:#047857;background:#ecfdf5}.lab-template-card-difficulty-medium{color:#d97706;background:#fffbeb}.lab-template-card-difficulty-hard{color:var(--gs-danger);background:#fef2f2}.lab-template-card-tagline{color:var(--gs-primary);font-size:13px;font-weight:500}.lab-template-card-desc{color:var(--gs-text-muted);font-size:12.5px;line-height:1.65}.lab-template-card-action{margin-top:auto;display:inline-flex;align-items:center;gap:6px;padding-top:8px;color:var(--gs-primary);font-size:13px;font-weight:600}.lab-project-banner{max-width:1040px;margin:0 auto 20px;padding:14px 18px;display:flex;align-items:center;gap:14px;background:linear-gradient(135deg,#f5f1fe,#eff5ff);border:1px solid #e4dafc;border-radius:14px;flex-wrap:wrap}.lab-project-banner-main{display:flex;align-items:center;gap:12px;flex:1;min-width:0}.lab-project-banner-icon{font-size:28px;line-height:1}.lab-project-banner-text{min-width:0}.lab-project-banner-head{color:var(--gs-text);font-size:14px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lab-project-banner-head strong{color:var(--gs-primary)}.lab-project-banner-sub{color:var(--gs-text-muted);font-size:12px;line-height:1.5}.lab-project-banner-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.lab-template-switcher{position:relative}.lab-template-dropdown{position:absolute;top:calc(100% + 6px);right:0;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:10px;padding:6px;min-width:200px;z-index:10;box-shadow:var(--gs-shadow-md)}.lab-template-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 10px;background:transparent;border:none;color:var(--gs-text-soft);text-align:left;font-size:13px;border-radius:6px;cursor:pointer}.lab-template-dropdown-item:hover{background:var(--gs-primary-soft);color:var(--gs-primary)}.lab-template-dropdown-item.active{background:#f1ecfe;color:#6d28d9}.lab-template-dropdown-icon{font-size:16px}.lab-body:has(.lab-loading-wrap),.lab-body:has(.lab-error-wrap){display:flex;align-items:center;justify-content:center}.lab-loading-wrap,.lab-error-wrap{max-width:560px;width:100%;margin:0 auto;text-align:center;padding:30px;background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:16px;box-shadow:var(--gs-shadow-md)}.lab-loading-spinner{display:inline-flex;padding:14px;background:var(--gs-primary-soft);border-radius:50%;color:var(--gs-primary);animation:lab-spin 1.1s linear infinite}@keyframes lab-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.lab-loading-title{margin-top:20px;font-size:17px;color:var(--gs-text);font-weight:600}.lab-loading-title strong{color:var(--gs-primary)}.lab-loading-sub{margin-top:8px;color:var(--gs-text-muted);font-size:13px}.lab-error-icon{display:inline-flex;padding:14px;background:#fef2f2;border-radius:50%;color:var(--gs-danger)}.lab-error-title{margin-top:20px;color:var(--gs-text);font-size:17px;font-weight:600}.lab-error-sub{margin-top:8px;color:var(--gs-text-muted);font-size:13px;line-height:1.6}.lab-error-actions{margin-top:22px;display:flex;gap:10px;justify-content:center}.lab-topbar-change{display:inline-flex;align-items:center;gap:5px;padding:6px 12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-text-soft);font-size:12px;cursor:pointer;border-radius:8px;transition:all .15s}.lab-topbar-change:hover{background:var(--gs-primary-soft);border-color:#c7d8f7;color:var(--gs-primary)}.lab-diffusion-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 720px){.lab-diffusion-row{grid-template-columns:1fr}}.lab-cnn-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 900px){.lab-cnn-row{grid-template-columns:1fr}}.lab-tabs-vertical{flex-direction:column;gap:6px}.lab-tab-full{width:100%;justify-content:flex-start;text-align:left;font-family:JetBrains Mono,monospace;font-size:11.5px}.lab-attn-pred{margin-top:14px;padding:12px 14px;background:#f5f1fe;border:1px solid #e4dafc;border-radius:10px}.lab-attn-pred-label{font-size:10.5px;text-transform:uppercase;letter-spacing:.5px;color:#6d28d9;font-weight:600;margin-bottom:8px}.lab-attn-pred-original,.lab-attn-pred-out,.lab-attn-pred-target{display:flex;align-items:center;gap:6px;font-family:JetBrains Mono,monospace;font-size:12px;padding:4px 0;color:var(--gs-text-soft)}.lab-attn-pred-out{color:var(--gs-primary);font-weight:600}.lab-attn-pred-target{color:var(--gs-text-muted)}.hero-lab-entry{margin-top:28px;margin-bottom:36px;display:inline-flex;align-items:center;gap:8px;padding:10px 18px;background:var(--gs-surface);border:1px dashed #c4b5fd;color:#6d28d9;border-radius:999px;font-size:13px;cursor:pointer;transition:all .25s;position:relative;overflow:hidden;box-shadow:var(--gs-shadow-sm)}.hero-lab-entry:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent,rgba(124,58,237,.1),transparent);transform:translate(-100%);transition:transform .6s}.hero-lab-entry:hover:before{transform:translate(100%)}.hero-lab-entry:hover{border-color:#a78bfa;background:#f1ecfe;color:#5b21b6;box-shadow:0 6px 18px -6px #7c3aed4d}.hero-lab-entry-badge{padding:1px 6px;background:linear-gradient(90deg,#7c3aed,#2563eb);color:#fff;font-size:9px;font-weight:700;letter-spacing:.5px;border-radius:999px}.app.ws-active{max-width:none;margin:0;padding:0}body.ws-no-scroll{overflow:hidden}.ws-root{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;background:var(--gs-bg);z-index:50;color:var(--gs-text)}.ws-nav{width:248px;flex-shrink:0;background:var(--gs-surface);border-right:1px solid var(--gs-border);display:flex;flex-direction:column;transition:width .22s ease}.ws-nav.collapsed{width:68px}.ws-nav-head{display:flex;align-items:center;justify-content:space-between;padding:16px 14px;gap:8px}.ws-nav-brand{display:flex;align-items:center;gap:9px;cursor:pointer;min-width:0}.ws-nav-logo{width:30px;height:30px;border-radius:8px}.ws-nav-brand-name{font-size:1.15rem;font-weight:800;letter-spacing:-.01em;background:linear-gradient(110deg,var(--gs-primary),var(--gs-accent));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.ws-nav-collapse{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:7px;border:1px solid var(--gs-border);background:var(--gs-surface-2);color:var(--gs-text-muted);cursor:pointer;flex-shrink:0}.ws-nav-collapse:hover{color:var(--gs-primary);border-color:#c7d8f7}.ws-nav.collapsed .ws-nav-head{flex-direction:column}.ws-nav-items{flex:1;overflow-y:auto;padding:8px 10px;display:flex;flex-direction:column;gap:4px}.ws-nav-item{display:flex;align-items:center;gap:11px;padding:11px 12px;border:none;border-radius:11px;background:transparent;cursor:pointer;text-align:left;width:100%;color:var(--gs-text-soft);transition:background .15s,color .15s}.ws-nav-item:hover{background:var(--gs-surface-2)}.ws-nav-item.active{background:var(--gs-primary-soft);color:var(--gs-primary)}.ws-nav-item-icon{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:9px;flex-shrink:0;background:var(--gs-surface-2);color:var(--gs-text-muted);transition:all .15s}.ws-nav-item.active .ws-nav-item-icon{background:var(--gs-primary);color:#fff}.ws-nav-item-text{display:flex;flex-direction:column;min-width:0}.ws-nav-item-label{font-size:13.5px;font-weight:600;white-space:nowrap}.ws-nav-item-desc{font-size:11px;color:var(--gs-text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-nav.collapsed .ws-nav-item{justify-content:center;padding:11px 0}.ws-nav-foot{border-top:1px solid var(--gs-border);padding:12px 10px}.ws-nav-user{display:flex;align-items:center;gap:9px}.ws-nav-avatar{width:32px;height:32px;border-radius:50%;overflow:hidden;flex-shrink:0;background:var(--gs-primary-soft);color:var(--gs-primary);display:flex;align-items:center;justify-content:center}.ws-nav-avatar img{width:100%;height:100%;object-fit:cover}.ws-nav-user-info{display:flex;flex-direction:column;min-width:0;flex:1}.ws-nav-user-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ws-nav-user-credits{font-size:11px;color:var(--gs-warning);display:inline-flex;align-items:center;gap:3px}.ws-nav-settings{border:none;background:transparent;color:var(--gs-text-muted);cursor:pointer;padding:6px;border-radius:8px;flex-shrink:0}.ws-nav-settings:hover{background:var(--gs-surface-2);color:var(--gs-primary)}.ws-main{flex:1;display:flex;flex-direction:column;min-width:0}.ws-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 26px;background:var(--gs-surface);border-bottom:1px solid var(--gs-border);flex-shrink:0}.ws-topbar-left{display:flex;align-items:center;gap:18px;min-width:0;flex-wrap:wrap}.ws-topbar-titleblock{display:flex;flex-direction:column}.ws-topbar-eyebrow{font-size:11px;color:var(--gs-text-muted)}.ws-topbar-title{font-size:1.45rem;font-weight:800;letter-spacing:-.02em;color:var(--gs-text);line-height:1.1}.ws-topbar-pills{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.ws-pill{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:20px;font-size:12px;background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-text-soft)}.ws-pill-repo{color:var(--gs-text-muted);max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ws-pill-star{color:var(--gs-warning)}.ws-topbar-actions{display:flex;align-items:center;gap:9px;flex-shrink:0}.ws-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 15px;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .18s;border:1px solid transparent}.ws-btn-ghost{background:var(--gs-surface);border-color:var(--gs-border);color:var(--gs-text-soft)}.ws-btn-ghost:hover{background:var(--gs-surface-2);color:var(--gs-text)}.ws-btn-primary{background:linear-gradient(120deg,var(--gs-primary),var(--gs-accent));color:#fff;box-shadow:0 8px 18px -10px #2563eb99}.ws-btn-primary:hover{transform:translateY(-1px)}.ws-btn-primary.is-fav{background:var(--gs-warning);box-shadow:none}.ws-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.ws-content{flex:1;overflow-y:auto;padding:22px 26px;scroll-behavior:smooth}.ws-content-flush{padding:0;overflow:hidden}.ws-section{scroll-margin-top:12px}.ws-section+.ws-section{margin-top:30px}.ws-section-explore{height:86vh;min-height:560px}.ws-lab-fullpanel{height:88vh;min-height:560px}.ws-lab-fullpanel .lab-root{height:100%;overflow-y:auto;border:1px solid var(--gs-border);border-radius:var(--gs-radius)}.ws-card{background:var(--gs-surface);border:1px solid var(--gs-border);border-radius:var(--gs-radius);padding:20px 22px;box-shadow:var(--gs-shadow-sm)}.ws-card+.ws-card{margin-top:18px}.ws-card-head{margin-bottom:16px}.ws-card-head h2{font-size:1.25rem;font-weight:700;display:flex;align-items:center;gap:8px}.ws-card-head h3{font-size:1.05rem;font-weight:700;display:flex;align-items:center;gap:7px}.ws-card-head p{font-size:13.5px;color:var(--gs-text-muted);margin-top:5px}.ws-ico-primary{color:var(--gs-primary)}.ws-muted{color:var(--gs-text-muted)}.ws-spin{animation:spin 1s linear infinite}.ws-interp-loading,.ws-map-empty,.ws-review-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:36px;color:var(--gs-text-muted);font-size:14px;text-align:center}.ws-map-empty{min-height:320px}.ws-guide-error{background:#fef2f2;border:1px solid #fecaca;color:var(--gs-danger);padding:10px 14px;border-radius:10px;font-size:13px;margin-bottom:12px;display:flex;align-items:center;gap:10px;justify-content:space-between}.ws-guide-error button{border:1px solid #fecaca;background:#fff;color:var(--gs-danger);border-radius:8px;padding:4px 12px;cursor:pointer;font-size:12px}.ws-skeleton-line{display:block;height:12px;border-radius:6px;width:90%;background:linear-gradient(90deg,#eef2f7 25%,#e2e8f0 37%,#eef2f7 63%);background-size:400% 100%;animation:wsShimmer 1.3s ease infinite}@keyframes wsShimmer{0%{background-position:100% 0}to{background-position:-100% 0}}.ws-guide-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:18px;align-items:start}.ws-guide-side{display:flex;flex-direction:column;gap:18px;position:sticky;top:0}.ws-guide-side .ws-card+.ws-card{margin-top:0}.ws-hex-layout{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center}.ws-hex-col{display:flex;flex-direction:column;gap:14px}.ws-hex-center{position:relative;width:130px;height:130px;display:flex;align-items:center;justify-content:center}.ws-hex-shape{width:88px;height:88px;display:flex;align-items:center;justify-content:center;color:#fff;background:linear-gradient(135deg,var(--gs-primary),var(--gs-accent));clip-path:polygon(50% 0%,93% 25%,93% 75%,50% 100%,7% 75%,7% 25%);box-shadow:0 16px 36px -12px #6366f199;z-index:2}.ws-hex-ring{position:absolute;border-radius:50%;border:1.5px dashed rgba(99,102,241,.3)}.ws-hex-ring.r1{width:112px;height:112px;animation:wsRing 16s linear infinite}.ws-hex-ring.r2{width:130px;height:130px;border-color:#7c3aed2e;animation:wsRing 22s linear infinite reverse}@keyframes wsRing{to{transform:rotate(360deg)}}.ws-dim-card{background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:12px;padding:13px 14px;transition:all .18s;border-left:3px solid var(--dim-color)}.ws-dim-card:hover{box-shadow:var(--gs-shadow-sm);transform:translateY(-1px)}.ws-dim-head{display:flex;align-items:center;gap:7px;margin-bottom:6px}.ws-dim-icon{display:flex;color:var(--dim-color)}.ws-dim-no{font-size:12px;font-weight:700;color:var(--dim-color)}.ws-dim-title{font-size:15px;font-weight:700}.ws-dim-text{font-size:13.5px;color:var(--gs-text-soft);line-height:1.6}.ws-steps{display:flex;align-items:stretch;gap:6px}.ws-step-wrap{display:flex;align-items:center;flex:1;gap:6px}.ws-step{flex:1;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:12px;padding:16px}.ws-step-head{display:flex;align-items:center;gap:8px;margin-bottom:9px}.ws-step-badge{width:24px;height:24px;border-radius:50%;flex-shrink:0;background:linear-gradient(135deg,var(--gs-primary),var(--gs-accent));color:#fff;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.ws-step-title{font-size:15px;font-weight:700;display:flex;align-items:center;gap:6px}.ws-step-desc{font-size:13px;color:var(--gs-text-soft);line-height:1.6;margin-bottom:11px}.ws-step-points{list-style:none;display:flex;flex-direction:column;gap:6px}.ws-step-points li{font-size:13px;color:var(--gs-text-soft);padding-left:15px;position:relative}.ws-step-points li:before{content:"•";position:absolute;left:2px;color:var(--gs-primary)}.ws-step-arrow{color:var(--gs-border-strong);flex-shrink:0}.ws-steps-track{display:flex;align-items:center;gap:12px;margin-top:16px;font-size:12.5px;color:var(--gs-text-muted)}.ws-steps-line{flex:1;height:4px;border-radius:2px;background:var(--gs-border);position:relative}.ws-steps-line .dot{position:absolute;top:50%;width:12px;height:12px;border-radius:50%;transform:translate(-50%,-50%);background:var(--gs-primary);border:2px solid #fff;box-shadow:var(--gs-shadow-sm)}.ws-steps-line .d1{left:4%}.ws-steps-line .d2{left:50%;background:var(--gs-accent)}.ws-steps-line .d3{left:96%;background:var(--gs-border-strong)}.ws-interp-tabs{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px;border-bottom:1px solid var(--gs-border);padding-bottom:12px}.ws-interp-tab{padding:7px 14px;border-radius:8px;font-size:13.5px;cursor:pointer;border:1px solid var(--gs-border);background:var(--gs-surface);color:var(--gs-text-soft)}.ws-interp-tab:hover{background:var(--gs-surface-2)}.ws-interp-tab.active{background:var(--gs-primary);border-color:var(--gs-primary);color:#fff}.ws-interp-body{font-size:14.5px;line-height:1.8;color:var(--gs-text-soft);white-space:pre-wrap}.ws-meta-list{list-style:none;display:flex;flex-direction:column}.ws-meta-list li{display:flex;align-items:center;justify-content:space-between;padding:9px 0;border-bottom:1px dashed var(--gs-border);font-size:13.5px}.ws-meta-list li:last-child{border-bottom:none}.ws-meta-k{display:inline-flex;align-items:center;gap:7px;color:var(--gs-text-muted)}.ws-meta-v{font-weight:600;color:var(--gs-text)}.ws-meta-gh{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:12px;padding:9px;border-radius:10px;background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-primary);font-size:13px;font-weight:600;text-decoration:none}.ws-meta-gh:hover{background:var(--gs-primary-soft)}.ws-outcomes{list-style:none;display:flex;flex-direction:column;gap:9px}.ws-outcomes li{display:flex;align-items:flex-start;gap:8px;font-size:13.5px;color:var(--gs-text-soft)}.ws-outcomes li svg{color:var(--gs-success);flex-shrink:0;margin-top:1px}.ws-guide-cta{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px;border:none;border-radius:12px;cursor:pointer;font-size:14px;font-weight:700;background:linear-gradient(120deg,var(--gs-primary),var(--gs-accent));color:#fff;box-shadow:0 12px 24px -12px #6366f199}.ws-guide-cta:hover{transform:translateY(-1px)}.ws-map-grid{display:grid;grid-template-columns:1fr;gap:18px}.ws-map-grid.with-detail{grid-template-columns:minmax(0,1fr) 320px;align-items:start}.ws-map-graph{min-height:640px}.ws-map-graph .fog-canvas,.ws-map-grid.with-detail .ws-map-graph .fog-canvas{height:640px}.ws-module-detail{position:sticky;top:0}.ws-module-detail-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}.ws-module-detail-head h3{font-size:1rem;font-weight:700}.ws-icon-close{border:none;background:var(--gs-surface-2);color:var(--gs-text-muted);cursor:pointer;border-radius:8px;padding:5px;display:flex}.ws-icon-close:hover{color:var(--gs-danger)}.ws-module-name{display:flex;gap:10px;align-items:center;padding:12px;background:var(--gs-primary-soft);border-radius:11px;margin-bottom:14px}.ws-module-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:9px;background:var(--gs-primary);color:#fff;flex-shrink:0}.ws-module-file{font-size:14px;font-weight:700;color:var(--gs-primary);word-break:break-all}.ws-module-sub{font-size:12px;color:var(--gs-text-muted)}.ws-module-sections{display:flex;flex-direction:column;gap:15px}.ws-module-sec-title{font-size:12px;font-weight:700;color:var(--gs-text-muted);margin-bottom:6px;display:flex;align-items:center;gap:5px;text-transform:uppercase;letter-spacing:.03em}.ws-module-sec p{font-size:13px;line-height:1.6;color:var(--gs-text-soft);margin-bottom:4px}.ws-module-sec ul{list-style:none;display:flex;flex-direction:column;gap:5px}.ws-module-sec ul li{font-size:13px;color:var(--gs-text-soft);padding-left:13px;position:relative}.ws-module-sec ul li:before{content:"•";position:absolute;left:2px;color:var(--gs-primary)}.ws-tag-row{display:flex;flex-wrap:wrap;gap:6px}.ws-tag{font-size:12px;padding:3px 10px;border-radius:14px;background:var(--gs-surface-2);border:1px solid var(--gs-border);color:var(--gs-text-soft)}.ws-tag-link{cursor:pointer}.ws-tag-link:hover{background:var(--gs-primary-soft);color:var(--gs-primary);border-color:#c7d8f7}.ws-module-explore{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:16px;padding:11px;border:none;border-radius:11px;cursor:pointer;font-size:13.5px;font-weight:600;background:var(--gs-primary-soft);color:var(--gs-primary)}.ws-module-explore:hover{background:var(--gs-primary);color:#fff}.ws-explore{height:100%;display:flex;background:var(--gs-surface)}.ws-explore.code-layout{border-radius:var(--gs-radius);border:1px solid var(--gs-border);box-shadow:var(--gs-shadow-sm);height:100%;min-height:0;overflow:hidden}.ws-explore .file-sidebar{background:var(--gs-surface-2);border-right:1px solid var(--gs-border)}.ws-explore .file-sidebar::-webkit-scrollbar-thumb,.ws-explore .file-tree::-webkit-scrollbar-thumb{background:#cbd5e1}.ws-explore .sidebar-section{border-bottom:1px solid var(--gs-border)}.ws-explore .sidebar-title{background:#eef2f8;color:var(--gs-text-muted)}.ws-explore .sidebar-title:hover{background:#e3eaf3}.ws-explore .collapse-icon{color:#94a3b8}.ws-explore .file-item:hover{background:#2563eb0f}.ws-explore .file-item.active{background:var(--gs-primary-soft);border-left-color:var(--gs-primary)}.ws-explore .file-name{color:var(--gs-text-soft)}.ws-explore .file-item.active .file-name{color:var(--gs-primary)}.ws-explore .file-item.core{background:#7c3aed0f}.ws-explore .file-item.folder{color:var(--gs-text-soft)}.ws-explore .editor-header{background:var(--gs-surface);color:var(--gs-text-muted);border-bottom:1px solid var(--gs-border)}.ws-explore .src-explorer{overflow:hidden}.src-explorer-head{display:flex;align-items:center;justify-content:space-between;padding:11px 13px;border-bottom:1px solid var(--gs-border);background:var(--gs-surface)}.src-explorer-title{display:inline-flex;align-items:center;gap:7px;font-size:13.5px;font-weight:700;color:var(--gs-text)}.src-explorer-title svg{color:var(--gs-primary)}.src-explorer-head-actions{display:flex;gap:4px}.src-explorer-head-actions button{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border:none;background:transparent;color:var(--gs-text-muted);border-radius:7px;cursor:pointer}.src-explorer-head-actions button:hover{background:var(--gs-surface-2);color:var(--gs-primary)}.src-explorer-body{flex:1;overflow-y:auto;min-height:0}.src-explorer.collapsed{align-items:center;padding-top:12px}.src-explorer-expand{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:1px solid var(--gs-border);background:var(--gs-surface);color:var(--gs-text-muted);border-radius:8px;cursor:pointer}.src-explorer-expand:hover{color:var(--gs-primary);border-color:#c7d8f7}.ws-explore .src-section-ico{color:var(--gs-text-muted)}.ws-explore .src-section-ico.core,.ws-explore .file-item.core .file-icon{color:#f59e0b}.ws-explore .file-explained{margin-left:auto;color:var(--gs-success);display:inline-flex}.ws-explore .file-active-dot{width:7px;height:7px;border-radius:50%;background:var(--gs-primary);margin-left:6px;flex-shrink:0}.src-explorer-foot{border-top:1px solid var(--gs-border);padding:10px 13px;background:var(--gs-surface)}.src-explorer-foot-row{display:flex;align-items:center;justify-content:space-between;font-size:11.5px;color:var(--gs-text-muted);margin-bottom:7px}.src-explorer-foot-check{color:var(--gs-success)}.src-explorer-progress{height:5px;border-radius:3px;background:var(--gs-border);overflow:hidden}.src-explorer-progress-fill{height:100%;border-radius:3px;background:linear-gradient(90deg,var(--gs-primary),var(--gs-accent));transition:width .3s}.ws-bg-intro{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:48px 30px;max-width:560px;margin:30px auto}.ws-bg-intro-icon{width:70px;height:70px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:var(--gs-primary-soft);color:var(--gs-primary)}.ws-bg-intro h2{font-size:1.4rem;font-weight:800}.ws-bg-intro p{font-size:14px;color:var(--gs-text-soft);line-height:1.6}.ws-bg-gen-btn{margin-top:8px;display:inline-flex;align-items:center;gap:8px;padding:12px 26px;border:none;border-radius:12px;cursor:pointer;font-size:14px;font-weight:700;background:linear-gradient(120deg,var(--gs-primary),var(--gs-accent));color:#fff;box-shadow:0 12px 26px -12px #6366f199}.ws-bg-gen-btn:hover:not(:disabled){transform:translateY(-1px)}.ws-bg-gen-btn:disabled{opacity:.55;cursor:not-allowed}.ws-bg-grid{display:grid;grid-template-columns:minmax(0,1fr) 290px;gap:18px;align-items:start}.ws-bg-side{position:sticky;top:0}.ws-kc-row{display:flex;gap:12px;overflow-x:auto;padding-bottom:6px}.ws-kc{flex:0 0 168px;background:var(--gs-surface-2);border:1px solid var(--gs-border);border-radius:12px;padding:14px;cursor:pointer;transition:all .18s}.ws-kc:hover{box-shadow:var(--gs-shadow-sm);transform:translateY(-2px)}.ws-kc.active{border-color:var(--gs-primary);background:var(--gs-primary-soft)}.ws-kc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.ws-kc-no{font-size:12px;font-weight:800;color:var(--gs-primary)}.ws-kc-bm{border:none;background:transparent;color:var(--gs-text-muted);cursor:pointer;padding:2px;display:flex}.ws-kc-bm.on{color:var(--gs-warning)}.ws-kc-title{font-size:13.5px;font-weight:700;margin-bottom:6px;line-height:1.35}.ws-kc-stars{display:inline-flex;gap:2px;margin-bottom:8px}.ws-kc-tags{display:flex;flex-wrap:wrap;gap:5px}.ws-kc-tag{font-size:10.5px;padding:2px 7px;border-radius:10px;border:1px solid;background:var(--gs-surface)}.ws-bg-detail-head{display:flex;align-items:flex-start;gap:12px}.ws-bg-detail-no{flex-shrink:0;width:34px;height:34px;border-radius:10px;font-size:14px;font-weight:800;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gs-primary),var(--gs-accent));color:#fff}.ws-bg-detail{font-size:14.5px;line-height:1.75;color:var(--gs-text-soft);white-space:pre-wrap;margin-bottom:16px}.ws-bg-nocode{font-size:13px;color:var(--gs-text-muted);padding:14px;background:var(--gs-surface-2);border-radius:10px;text-align:center}.ws-bg-run{border:1px solid var(--gs-border);border-radius:12px;overflow:hidden;box-shadow:var(--gs-shadow-sm)}.ws-bg-run-head{display:flex;align-items:center;justify-content:space-between;padding:11px 14px;background:var(--gs-surface-2);border-bottom:1px solid var(--gs-border);font-size:13px;font-weight:600;color:var(--gs-text-soft)}.ws-bg-run-head>span{display:inline-flex;align-items:center;gap:7px}.ws-bg-run-head svg:first-child{color:var(--gs-primary)}.ws-run-btn{display:inline-flex;align-items:center;gap:5px;padding:6px 16px;border:none;border-radius:8px;background:var(--gs-primary);color:#fff;cursor:pointer;font-size:12.5px;font-weight:600;box-shadow:0 6px 14px -8px #2563ebb3}.ws-run-btn:hover:not(:disabled){background:var(--gs-primary-d)}.ws-run-btn:disabled{opacity:.6;cursor:not-allowed}.ws-bg-editor{background:#fff;border-bottom:1px solid var(--gs-border)}.ws-bg-output{padding:14px 16px;font-size:13px}.ws-bg-output.ok{background:#f0fdf4}.ws-bg-output.err{background:#fef2f2}.ws-bg-output-head{font-weight:700;font-size:12.5px;margin-bottom:8px;display:flex;align-items:center;gap:7px;color:var(--gs-text)}.ws-bg-output-dot{width:8px;height:8px;border-radius:50%}.ws-bg-output-dot.ok{background:var(--gs-success)}.ws-bg-output-dot.err{background:var(--gs-danger)}.ws-bg-output pre{white-space:pre-wrap;word-break:break-word;font-family:Fira Code,monospace;color:var(--gs-text);line-height:1.6}.ws-bg-output-exp{margin-top:10px;padding-top:10px;border-top:1px dashed var(--gs-border);color:var(--gs-text-muted)}.ws-path{list-style:none;display:flex;flex-direction:column;gap:8px}.ws-path-item{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:11px;border:1px solid var(--gs-border);background:var(--gs-surface-2);cursor:pointer;transition:all .15s}.ws-path-item:hover{box-shadow:var(--gs-shadow-sm)}.ws-path-item.active{border-color:var(--gs-primary);background:var(--gs-primary-soft)}.ws-path-item.done{opacity:.9}.ws-path-item.lock{opacity:.65}.ws-path-icon{display:flex;flex-shrink:0}.ws-path-item.done .ws-path-icon{color:var(--gs-success)}.ws-path-item.active .ws-path-icon{color:var(--gs-primary)}.ws-path-item.lock .ws-path-icon{color:var(--gs-text-muted)}.ws-path-text{flex:1;display:flex;flex-direction:column;min-width:0}.ws-path-title{font-size:13px;font-weight:600}.ws-path-time{font-size:11px;color:var(--gs-text-muted)}.ws-path-arrow{color:var(--gs-text-muted);flex-shrink:0}.ws-lab-pagehead{margin-bottom:18px}.ws-lab-pagehead h2{font-size:1.2rem}.ws-lab-fullpanel{height:100%}.ws-lab-top{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:18px;margin-bottom:18px}.ws-lab-bottom{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:18px;align-items:start}.ws-lab-quizembed{display:flex;flex-direction:column}.ws-quiz-scroll{max-height:620px;overflow-y:auto;margin:-4px -6px -6px;padding:4px 6px}.ws-quiz-scroll .ws-quiz{padding:0}.ws-lab-bottom .ws-review{align-self:start}.ws-exp-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.ws-exp-card{position:relative;border:1px solid var(--gs-border);border-radius:12px;padding:16px 14px;background:var(--gs-surface-2);display:flex;flex-direction:column;gap:7px;transition:all .18s}.ws-exp-card:not(.locked):hover{box-shadow:var(--gs-shadow-md);transform:translateY(-2px)}.ws-exp-card.locked{opacity:.65;align-items:center;text-align:center;justify-content:center}.ws-exp-badge{position:absolute;top:10px;right:10px;font-size:10px;font-weight:700;color:var(--gs-accent);background:#f3edff;padding:2px 8px;border-radius:10px}.ws-exp-icon{font-size:26px;line-height:1;display:flex;align-items:center;color:var(--gs-text-muted)}.ws-exp-name{font-size:14px;font-weight:700}.ws-exp-tag{font-size:12px;color:var(--gs-text-muted);line-height:1.45;flex:1}.ws-exp-start{display:inline-flex;align-items:center;justify-content:center;gap:6px;margin-top:4px;padding:7px;border:none;border-radius:9px;cursor:pointer;font-size:12.5px;font-weight:600;background:var(--gs-primary-soft);color:var(--gs-primary)}.ws-exp-start:hover{background:var(--gs-primary);color:#fff}.ws-lab-allbtn{display:flex;align-items:center;justify-content:center;gap:7px;width:100%;margin-top:14px;padding:11px;border:1px solid var(--gs-border);border-radius:11px;cursor:pointer;background:var(--gs-surface);color:var(--gs-text-soft);font-size:13.5px;font-weight:600}.ws-lab-allbtn:hover{background:var(--gs-surface-2);color:var(--gs-primary)}.ws-class-preview{display:flex;gap:16px;align-items:center}.ws-class-thumb{position:relative;width:130px;height:86px;flex-shrink:0;border-radius:11px;background:linear-gradient(135deg,var(--gs-primary),var(--gs-accent));color:#fff;display:flex;align-items:center;justify-content:center}.ws-class-thumb-loading{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000040;border-radius:11px;display:flex;align-items:center;justify-content:center}.ws-class-features{list-style:none;display:flex;flex-direction:column;gap:7px}.ws-class-features li{display:flex;align-items:center;gap:7px;font-size:13px;color:var(--gs-text-soft)}.ws-class-features li svg{color:var(--gs-success)}.ws-class-progress{margin-top:12px;font-size:12.5px;color:var(--gs-text-muted);display:flex;align-items:center;gap:7px}.ws-class-enter{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;margin-top:14px;padding:12px;border:none;border-radius:11px;cursor:pointer;font-size:14px;font-weight:700;background:linear-gradient(120deg,var(--gs-primary),var(--gs-accent));color:#fff}.ws-class-enter:hover:not(:disabled){transform:translateY(-1px)}.ws-class-enter:disabled{opacity:.6;cursor:not-allowed}.ws-quizcta-body{display:flex;align-items:center;justify-content:space-between;gap:16px}.ws-quizcta-stat{display:flex;flex-direction:column}.ws-quizcta-num{font-size:2rem;font-weight:800;color:var(--gs-primary);line-height:1}.ws-quizcta-label{font-size:12px;color:var(--gs-text-muted)}.ws-quizcta-body .ws-class-enter{width:auto;margin-top:0;padding:11px 20px}.ws-review-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}.ws-review-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 13px;border-radius:9px;border:1px solid var(--gs-border);background:var(--gs-surface);color:var(--gs-text-soft);cursor:pointer;font-size:12.5px}.ws-review-tab:hover{background:var(--gs-surface-2)}.ws-review-tab.active{background:var(--gs-primary);border-color:var(--gs-primary);color:#fff}.ws-review-count{font-weight:700}.ws-review-list{list-style:none;display:flex;flex-direction:column;gap:8px;max-height:320px;overflow-y:auto}.ws-review-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 13px;border:1px solid var(--gs-border);border-radius:11px;background:var(--gs-surface-2)}.ws-review-item-main{min-width:0}.ws-review-q{display:block;font-size:13px;font-weight:600;color:var(--gs-text);margin-bottom:4px}.ws-review-meta{display:flex;flex-wrap:wrap;gap:10px;font-size:11.5px;color:var(--gs-text-muted)}.ws-review-go{display:inline-flex;align-items:center;gap:5px;flex-shrink:0;padding:6px 13px;border-radius:9px;border:1px solid var(--gs-border);background:var(--gs-surface);color:var(--gs-primary);cursor:pointer;font-size:12.5px;font-weight:600}.ws-review-go:hover{background:var(--gs-primary-soft)}@media (max-width: 1100px){.ws-guide-grid,.ws-bg-grid{grid-template-columns:1fr}.ws-guide-side,.ws-bg-side,.ws-module-detail{position:static}.ws-map-grid.with-detail,.ws-lab-top,.ws-lab-bottom{grid-template-columns:1fr}}
