.react-flow{--xy-edge-stroke-default:#b1b1b7;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#555;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#ffffff80;--xy-minimap-background-color-default:#fff;--xy-minimap-mask-background-color-default:#f0f0f099;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#e2e2e2;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:transparent;--xy-background-pattern-dots-color-default:#91919a;--xy-background-pattern-lines-color-default:#eee;--xy-background-pattern-cross-color-default:#e2e2e2;background-color:var(--xy-background-color,var(--xy-background-color-default));--xy-node-color-default:inherit;--xy-node-border-default:1px solid #1a192b;--xy-node-background-color-default:#fff;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #00000014;--xy-node-boxshadow-selected-default:0 0 0 .5px #1a192b;--xy-node-border-radius-default:3px;--xy-handle-background-color-default:#1a192b;--xy-handle-border-color-default:#fff;--xy-selection-background-color-default:#0059dc14;--xy-selection-border-default:1px dotted #0059dccc;--xy-controls-button-background-color-default:#fefefe;--xy-controls-button-background-color-hover-default:#f4f4f4;--xy-controls-button-color-default:inherit;--xy-controls-button-color-hover-default:inherit;--xy-controls-button-border-color-default:#eee;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#fff;--xy-edge-label-color-default:inherit;--xy-resize-background-color-default:#3367d9;direction:ltr}.react-flow.dark{--xy-edge-stroke-default:#3e3e3e;--xy-edge-stroke-width-default:1;--xy-edge-stroke-selected-default:#727272;--xy-connectionline-stroke-default:#b1b1b7;--xy-connectionline-stroke-width-default:1;--xy-attribution-background-color-default:#96969640;--xy-minimap-background-color-default:#141414;--xy-minimap-mask-background-color-default:#3c3c3c99;--xy-minimap-mask-stroke-color-default:transparent;--xy-minimap-mask-stroke-width-default:1;--xy-minimap-node-background-color-default:#2b2b2b;--xy-minimap-node-stroke-color-default:transparent;--xy-minimap-node-stroke-width-default:2;--xy-background-color-default:#141414;--xy-background-pattern-dots-color-default:#777;--xy-background-pattern-lines-color-default:#777;--xy-background-pattern-cross-color-default:#777;--xy-node-color-default:#f8f8f8;--xy-node-border-default:1px solid #3c3c3c;--xy-node-background-color-default:#1e1e1e;--xy-node-group-background-color-default:#f0f0f040;--xy-node-boxshadow-hover-default:0 1px 4px 1px #ffffff14;--xy-node-boxshadow-selected-default:0 0 0 .5px #999;--xy-handle-background-color-default:#bebebe;--xy-handle-border-color-default:#1e1e1e;--xy-selection-background-color-default:#c8c8dc14;--xy-selection-border-default:1px dotted #c8c8dccc;--xy-controls-button-background-color-default:#2b2b2b;--xy-controls-button-background-color-hover-default:#3e3e3e;--xy-controls-button-color-default:#f8f8f8;--xy-controls-button-color-hover-default:#fff;--xy-controls-button-border-color-default:#5b5b5b;--xy-controls-box-shadow-default:0 0 2px 1px #00000014;--xy-edge-label-background-color-default:#141414;--xy-edge-label-color-default:#f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props,var(--xy-background-color,var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__pane{z-index:1}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width,var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke,var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width,var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{pointer-events:none;position:absolute;overflow:visible}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:.5s linear infinite dashdraw}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected,var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke,var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:.5s linear infinite dashdraw}svg.react-flow__connectionline{z-index:1001;position:absolute;overflow:visible}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{-webkit-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default;position:absolute}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:0 0;pointer-events:none}.react-flow__nodesselection-rect{pointer-events:all;cursor:grab;position:absolute}.react-flow__handle{pointer-events:none;background-color:var(--xy-handle-background-color,var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color,var(--xy-handle-border-color-default));border-radius:100%;width:6px;min-width:5px;height:6px;min-height:5px;position:absolute}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;bottom:0;left:50%;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{z-index:5;margin:15px;position:absolute}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px)translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px)translateY(-50%)}.react-flow__attribution{background:var(--xy-attribution-background-color,var(--xy-attribution-background-color-default));margin:0;padding:2px 3px;font-size:10px}.react-flow__attribution a{color:#999;text-decoration:none}@keyframes dashdraw{0%{stroke-dashoffset:10px}}.react-flow__edgelabel-renderer{pointer-events:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__viewport-portal{-webkit-user-select:none;user-select:none;width:100%;height:100%;position:absolute;top:0;left:0}.react-flow__minimap{background:var(--xy-minimap-background-color-props,var(--xy-minimap-background-color,var(--xy-minimap-background-color-default)))}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var(--xy-minimap-mask-background-color-props,var(--xy-minimap-mask-background-color,var(--xy-minimap-mask-background-color-default)));stroke:var(--xy-minimap-mask-stroke-color-props,var(--xy-minimap-mask-stroke-color,var(--xy-minimap-mask-stroke-color-default)));stroke-width:var(--xy-minimap-mask-stroke-width-props,var(--xy-minimap-mask-stroke-width,var(--xy-minimap-mask-stroke-width-default)))}.react-flow__minimap-node{fill:var(--xy-minimap-node-background-color-props,var(--xy-minimap-node-background-color,var(--xy-minimap-node-background-color-default)));stroke:var(--xy-minimap-node-stroke-color-props,var(--xy-minimap-node-stroke-color,var(--xy-minimap-node-stroke-color-default)));stroke-width:var(--xy-minimap-node-stroke-width-props,var(--xy-minimap-node-stroke-width,var(--xy-minimap-node-stroke-width-default)))}.react-flow__background-pattern.dots{fill:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-dots-color-default)))}.react-flow__background-pattern.lines{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-lines-color-default)))}.react-flow__background-pattern.cross{stroke:var(--xy-background-pattern-color-props,var(--xy-background-pattern-color,var(--xy-background-pattern-cross-color-default)))}.react-flow__controls{box-shadow:var(--xy-controls-box-shadow,var(--xy-controls-box-shadow-default));flex-direction:column;display:flex}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{background:var(--xy-controls-button-background-color,var(--xy-controls-button-background-color-default));border:none;border-bottom:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)));width:26px;height:26px;color:var(--xy-controls-button-color-props,var(--xy-controls-button-color,var(--xy-controls-button-color-default)));cursor:pointer;-webkit-user-select:none;user-select:none;justify-content:center;align-items:center;padding:4px;display:flex}.react-flow__controls-button svg{fill:currentColor;width:100%;max-width:12px;max-height:12px}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{border-radius:var(--xy-node-border-radius,var(--xy-node-border-radius-default));width:150px;color:var(--xy-node-color,var(--xy-node-color-default));text-align:center;border:var(--xy-node-border,var(--xy-node-border-default));background-color:var(--xy-node-background-color,var(--xy-node-background-color-default));padding:10px;font-size:12px}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover,var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected,var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color,var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color,var(--xy-selection-background-color-default));border:var(--xy-selection-border,var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var(--xy-controls-button-background-color-hover-props,var(--xy-controls-button-background-color-hover,var(--xy-controls-button-background-color-hover-default)));color:var(--xy-controls-button-color-hover-props,var(--xy-controls-button-color-hover,var(--xy-controls-button-color-hover-default)))}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var(--xy-controls-button-border-color-props,var(--xy-controls-button-border-color,var(--xy-controls-button-border-color-default)))}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{background-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border:1px solid #fff;border-radius:1px;width:5px;height:5px;translate:-50% -50%}.react-flow__resize-control.handle.left{top:50%;left:0}.react-flow__resize-control.handle.right{top:50%;left:100%}.react-flow__resize-control.handle.top{top:0;left:50%}.react-flow__resize-control.handle.bottom{top:100%;left:50%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color,var(--xy-resize-background-color-default));border-style:solid;border-width:0}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;height:100%;top:0;transform:translate(-50%)}.react-flow__resize-control.line.left{border-left-width:1px;left:0}.react-flow__resize-control.line.right{border-right-width:1px;left:100%}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{width:100%;height:1px;left:0;transform:translateY(-50%)}.react-flow__resize-control.line.top{border-top-width:1px;top:0}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color,var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color,var(--xy-edge-label-color-default))}*,:before,:after,::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:#3b82f680;--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border:0 solid #e5e7eb}:before,:after{--tw-content:""}html,:host{-webkit-text-size-adjust:100%;tab-size:4;font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;line-height:1.5}body{line-height:inherit;margin:0}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-feature-settings:normal;font-variation-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-feature-settings:inherit;font-variation-settings:inherit;font-family:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:#0000;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{margin:0;padding:0;list-style:none}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder{opacity:1;color:#9ca3af}textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}.container{width:100%}@media (width>=640px){.container{max-width:640px}}@media (width>=768px){.container{max-width:768px}}@media (width>=1024px){.container{max-width:1024px}}@media (width>=1280px){.container{max-width:1280px}}@media (width>=1536px){.container{max-width:1536px}}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.collapse{visibility:collapse}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.-inset-1{inset:-.25rem}.inset-0{inset:0}.inset-y-0{top:0;bottom:0}.-bottom-1{bottom:-.25rem}.-bottom-20{bottom:-5rem}.-left-32{left:-8rem}.-right-4{right:-1rem}.-right-40{right:-10rem}.-right-8{right:-2rem}.-top-4{top:-1rem}.-top-40{top:-10rem}.-top-8{top:-2rem}.-top-\[3px\]{top:-3px}.bottom-0{bottom:0}.left-0{left:0}.left-1{left:.25rem}.left-1\/2{left:50%}.left-4{left:1rem}.left-8{left:2rem}.right-0{right:0}.right-1\/4{right:25%}.right-3{right:.75rem}.right-4{right:1rem}.top-0{top:0}.top-1{top:.25rem}.top-1\/3{top:33.3333%}.top-3{top:.75rem}.top-4{top:1rem}.-z-10{z-index:-10}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-50{z-index:50}.mx-1{margin-left:.25rem;margin-right:.25rem}.mx-auto{margin-left:auto;margin-right:auto}.my-4{margin-top:1rem;margin-bottom:1rem}.my-8{margin-top:2rem;margin-bottom:2rem}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-12{margin-bottom:3rem}.mb-2{margin-bottom:.5rem}.mb-20{margin-bottom:5rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.ml-auto{margin-left:auto}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-12{margin-top:3rem}.mt-2{margin-top:.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.mt-auto{margin-top:auto}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.table{display:table}.grid{display:grid}.hidden{display:none}.h-0\.5{height:.125rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-2{height:.5rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-32{height:8rem}.h-4{height:1rem}.h-40{height:10rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-72{height:18rem}.h-8{height:2rem}.h-80{height:20rem}.h-96{height:24rem}.h-full{height:100%}.h-px{height:1px}.max-h-\[95vh\]{max-height:95vh}.min-h-0{min-height:0}.min-h-\[400px\]{min-height:400px}.min-h-screen{min-height:100vh}.w-0{width:0}.w-1{width:.25rem}.w-12{width:3rem}.w-14{width:3.5rem}.w-2{width:.5rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-32{width:8rem}.w-4{width:1rem}.w-40{width:10rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-72{width:18rem}.w-8{width:2rem}.w-80{width:20rem}.w-96{width:24rem}.w-full{width:100%}.max-w-2xl{max-width:42rem}.max-w-3xl{max-width:48rem}.max-w-5xl{max-width:64rem}.max-w-6xl{max-width:72rem}.max-w-7xl{max-width:80rem}.max-w-none{max-width:none}.max-w-xs{max-width:20rem}.flex-1{flex:1}.shrink-0{flex-shrink:0}.border-collapse{border-collapse:collapse}.-translate-x-1\/2{--tw-translate-x:-50%;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-180{--tw-rotate:180deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-45{--tw-rotate:45deg;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.animate-float{animation:6s ease-in-out infinite float}@keyframes gradient{0%,to{background-position:0%}50%{background-position:100%}}.animate-gradient{animation:8s linear infinite gradient}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:1s linear infinite spin}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.resize{resize:both}.scroll-mt-28{scroll-margin-top:7rem}.list-outside{list-style-position:outside}.list-decimal{list-style-type:decimal}.list-disc{list-style-type:disc}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-center{align-items:center}.items-baseline{align-items:baseline}.justify-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.gap-5{gap:1.25rem}.gap-6{gap:1.5rem}.space-y-0\.5>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.125rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.125rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.space-y-6>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-top:calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1.5rem * var(--tw-space-y-reverse))}.self-center{align-self:center}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-x-hidden{overflow-x:hidden}.whitespace-nowrap{white-space:nowrap}.whitespace-pre-wrap{white-space:pre-wrap}.break-words{overflow-wrap:break-word}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-xl{border-radius:.75rem}.rounded-l{border-top-left-radius:.25rem;border-bottom-left-radius:.25rem}.rounded-bl-full{border-bottom-left-radius:9999px}.rounded-tl-full{border-top-left-radius:9999px}.border{border-width:1px}.border-0{border-width:0}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-l-4{border-left-width:4px}.border-t{border-top-width:1px}.border-cyan-500\/20{border-color:#06b6d433}.border-nebula-accent\/20{border-color:#e9456033}.border-nebula-accent\/40{border-color:#e9456066}.border-purple-500{--tw-border-opacity:1;border-color:rgb(168 85 247/var(--tw-border-opacity,1))}.border-purple-500\/20{border-color:#a855f733}.border-purple-500\/30{border-color:#a855f74d}.border-white\/10{border-color:#ffffff1a}.border-white\/30{border-color:#ffffff4d}.border-t-white{--tw-border-opacity:1;border-top-color:rgb(255 255 255/var(--tw-border-opacity,1))}.bg-\[var\(--surface\)\]{background-color:var(--surface)}.bg-black\/60{background-color:#0009}.bg-green-500{--tw-bg-opacity:1;background-color:rgb(34 197 94/var(--tw-bg-opacity,1))}.bg-nebula-accent{--tw-bg-opacity:1;background-color:rgb(233 69 96/var(--tw-bg-opacity,1))}.bg-nebula-accent\/10{background-color:#e945601a}.bg-nebula-accent\/20{background-color:#e9456033}.bg-nebula-accent\/90{background-color:#e94560e6}.bg-nebula-purple{--tw-bg-opacity:1;background-color:rgb(26 26 46/var(--tw-bg-opacity,1))}.bg-purple-900\/30{background-color:#581c874d}.bg-red-500{--tw-bg-opacity:1;background-color:rgb(239 68 68/var(--tw-bg-opacity,1))}.bg-white\/5{background-color:#ffffff0d}.bg-yellow-400{--tw-bg-opacity:1;background-color:rgb(250 204 21/var(--tw-bg-opacity,1))}.bg-yellow-600{--tw-bg-opacity:1;background-color:rgb(202 138 4/var(--tw-bg-opacity,1))}.bg-gradient-to-b{background-image:linear-gradient(to bottom, var(--tw-gradient-stops))}.bg-gradient-to-bl{background-image:linear-gradient(to bottom left, var(--tw-gradient-stops))}.bg-gradient-to-br{background-image:linear-gradient(to bottom right, var(--tw-gradient-stops))}.bg-gradient-to-r{background-image:linear-gradient(to right, var(--tw-gradient-stops))}.bg-gradient-to-tl{background-image:linear-gradient(to top left, var(--tw-gradient-stops))}.bg-gradient-to-tr{background-image:linear-gradient(to top right, var(--tw-gradient-stops))}.from-cyan-500{--tw-gradient-from:#06b6d4 var(--tw-gradient-from-position);--tw-gradient-to:#06b6d400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500\/20{--tw-gradient-from:#06b6d433 var(--tw-gradient-from-position);--tw-gradient-to:#06b6d400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500\/30{--tw-gradient-from:#06b6d44d var(--tw-gradient-from-position);--tw-gradient-to:#06b6d400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-cyan-500\/5{--tw-gradient-from:#06b6d40d var(--tw-gradient-from-position);--tw-gradient-to:#06b6d400 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-indigo-400{--tw-gradient-from:#818cf8 var(--tw-gradient-from-position);--tw-gradient-to:#818cf800 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-nebula-accent{--tw-gradient-from:#e94560 var(--tw-gradient-from-position);--tw-gradient-to:#e9456000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-nebula-accent\/20{--tw-gradient-from:#e9456033 var(--tw-gradient-from-position);--tw-gradient-to:#e9456000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-nebula-accent\/30{--tw-gradient-from:#e945604d var(--tw-gradient-from-position);--tw-gradient-to:#e9456000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-nebula-purple\/0{--tw-gradient-from:#1a1a2e00 var(--tw-gradient-from-position);--tw-gradient-to:#1a1a2e00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500\/30{--tw-gradient-from:#ec48994d var(--tw-gradient-from-position);--tw-gradient-to:#ec489900 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-pink-500\/5{--tw-gradient-from:#ec48990d var(--tw-gradient-from-position);--tw-gradient-to:#ec489900 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-400{--tw-gradient-from:#c084fc var(--tw-gradient-from-position);--tw-gradient-to:#c084fc00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500{--tw-gradient-from:#a855f7 var(--tw-gradient-from-position);--tw-gradient-to:#a855f700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500\/10{--tw-gradient-from:#a855f71a var(--tw-gradient-from-position);--tw-gradient-to:#a855f700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500\/20{--tw-gradient-from:#a855f733 var(--tw-gradient-from-position);--tw-gradient-to:#a855f700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500\/30{--tw-gradient-from:#a855f74d var(--tw-gradient-from-position);--tw-gradient-to:#a855f700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-500\/80{--tw-gradient-from:#a855f7cc var(--tw-gradient-from-position);--tw-gradient-to:#a855f700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-purple-600{--tw-gradient-from:#9333ea var(--tw-gradient-from-position);--tw-gradient-to:#9333ea00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.from-transparent{--tw-gradient-from:transparent var(--tw-gradient-from-position);--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.via-blue-500{--tw-gradient-to:#3b82f600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #3b82f6 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-nebula-accent\/30{--tw-gradient-to:#e9456000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #e945604d var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-nebula-blue\/0{--tw-gradient-to:#16213e00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #16213e00 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-nebula-glow\/20{--tw-gradient-to:#ff6b6b00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #ff6b6b33 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-pink-400{--tw-gradient-to:#f472b600 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #f472b6 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-pink-500{--tw-gradient-to:#ec489900 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #ec4899 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-500\/20{--tw-gradient-to:#a855f700 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #a855f733 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-transparent{--tw-gradient-to:#0000 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), transparent var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-blue-400{--tw-gradient-to:#60a5fa var(--tw-gradient-to-position)}.to-cyan-400{--tw-gradient-to:#22d3ee var(--tw-gradient-to-position)}.to-cyan-500\/10{--tw-gradient-to:#06b6d41a var(--tw-gradient-to-position)}.to-cyan-500\/60{--tw-gradient-to:#06b6d499 var(--tw-gradient-to-position)}.to-nebula-accent\/0{--tw-gradient-to:#e9456000 var(--tw-gradient-to-position)}.to-nebula-accent\/20{--tw-gradient-to:#e9456033 var(--tw-gradient-to-position)}.to-nebula-glow{--tw-gradient-to:#ff6b6b var(--tw-gradient-to-position)}.to-nebula-glow\/30{--tw-gradient-to:#ff6b6b4d var(--tw-gradient-to-position)}.to-purple-500{--tw-gradient-to:#a855f7 var(--tw-gradient-to-position)}.to-red-500{--tw-gradient-to:#ef4444 var(--tw-gradient-to-position)}.to-transparent{--tw-gradient-to:transparent var(--tw-gradient-to-position)}.bg-\[length\:200\%_200\%\]{background-size:200% 200%}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.px-6{padding-left:1.5rem;padding-right:1.5rem}.px-8{padding-left:2rem;padding-right:2rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.pb-10{padding-bottom:2.5rem}.pb-20{padding-bottom:5rem}.pb-3{padding-bottom:.75rem}.pl-16{padding-left:4rem}.pl-2{padding-left:.5rem}.pl-4{padding-left:1rem}.pl-6{padding-left:1.5rem}.pt-28{padding-top:7rem}.pt-32{padding-top:8rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-6{padding-top:1.5rem}.text-left{text-align:left}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-6xl{font-size:3.75rem;line-height:1}.text-\[100px\]{font-size:100px}.text-\[10px\]{font-size:10px}.text-\[120px\]{font-size:120px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.capitalize{text-transform:capitalize}.italic{font-style:italic}.leading-none{line-height:1}.leading-relaxed{line-height:1.625}.tracking-tight{letter-spacing:-.025em}.tracking-wide{letter-spacing:.025em}.tracking-widest{letter-spacing:.1em}.text-blue-400{--tw-text-opacity:1;color:rgb(96 165 250/var(--tw-text-opacity,1))}.text-cyan-400{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.text-cyan-400\/60{color:#22d3ee99}.text-cyan-500\/5{color:#06b6d40d}.text-nebula-accent{--tw-text-opacity:1;color:rgb(233 69 96/var(--tw-text-opacity,1))}.text-pink-400{--tw-text-opacity:1;color:rgb(244 114 182/var(--tw-text-opacity,1))}.text-purple-300{--tw-text-opacity:1;color:rgb(216 180 254/var(--tw-text-opacity,1))}.text-purple-400{--tw-text-opacity:1;color:rgb(192 132 252/var(--tw-text-opacity,1))}.text-purple-400\/40{color:#c084fc66}.text-purple-400\/60{color:#c084fc99}.text-purple-500\/5{color:#a855f70d}.text-transparent{color:#0000}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.text-white\/20{color:#fff3}.text-white\/90{color:#ffffffe6}.underline{text-decoration-line:underline}.decoration-blue-400\/50{text-decoration-color:#60a5fa80}.opacity-0{opacity:0}.opacity-30{opacity:.3}.opacity-60{opacity:.6}.shadow{--tw-shadow:0 1px 3px 0 #0000001a, 0 1px 2px -1px #0000001a;--tw-shadow-colored:0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-2xl{--tw-shadow:0 25px 50px -12px #00000040;--tw-shadow-colored:0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-lg{--tw-shadow:0 10px 15px -3px #0000001a, 0 4px 6px -4px #0000001a;--tw-shadow-colored:0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-md{--tw-shadow:0 4px 6px -1px #0000001a, 0 2px 4px -2px #0000001a;--tw-shadow-colored:0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-sm{--tw-shadow:0 1px 2px 0 #0000000d;--tw-shadow-colored:0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow,0 0 #0000), var(--tw-ring-shadow,0 0 #0000), var(--tw-shadow)}.shadow-purple-500\/10{--tw-shadow-color:#a855f71a;--tw-shadow:var(--tw-shadow-colored)}.ring{--tw-ring-offset-shadow:var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow:var(--tw-ring-inset) 0 0 0 calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow,0 0 #0000)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-3xl{--tw-blur:blur(64px);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow{--tw-drop-shadow:drop-shadow(0 1px 2px #0000001a) drop-shadow(0 1px 1px #0000000f);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur:blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-all{transition-property:all;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-opacity{transition-property:opacity;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-transform{transition-property:transform;transition-duration:.15s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}:root{--nebula-dark:#141413;--nebula-purple:#8f4f32;--nebula-blue:#6f7669;--nebula-accent:#d97757;--nebula-glow:#c96442;--page-bg:#1f1e1b;--text-primary:#f4efe7;--text-muted:#d8cfc2;--text-subtle:#a99f91;--surface:#2a2723d1;--surface-strong:#1f1e1bf0;--surface-hover:#3b3630f5;--border-soft:#f4efe724;--nav-bg:#1f1e1bd1;--shadow-soft:0 24px 70px #0000003d;--flow-dot:#d8cfc238;--display-font:"Noto Serif SC", "Source Han Serif SC", Georgia, serif;--ui-font:"Source Han Sans SC", "Microsoft YaHei UI", "PingFang SC", system-ui, sans-serif}.light-theme{--nebula-dark:#faf9f5;--nebula-purple:#8f4f32;--nebula-blue:#6f7669;--nebula-accent:#d97757;--nebula-glow:#c96442;--page-bg:#faf9f5;--text-primary:#141413;--text-muted:#4f4a43;--text-subtle:#7d7468;--surface:#fffcf6e6;--surface-strong:#fffdfa;--surface-hover:#fffaf2;--border-soft:#14141321;--nav-bg:#faf9f5e0;--shadow-soft:0 24px 70px #40342a1f;--flow-dot:#1414131f}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow-x:hidden}body{font-family:var(--ui-font);background:var(--page-bg);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color .3s,color .3s}.light-theme{color:var(--text-primary)}.app-shell{background:radial-gradient(ellipse at 20% 10%, #d9775729 0%, transparent 42%), radial-gradient(ellipse at 85% 35%, #6f766924 0%, transparent 44%), var(--page-bg);color:var(--text-primary);transition:background-color .3s,color .3s}.light-theme .app-shell{background:linear-gradient(180deg, #faf9f5f5 0%, #f6f1e9fa 100%), radial-gradient(ellipse at 12% 8%, #d977571c 0%, transparent 36%), radial-gradient(ellipse at 88% 22%, #6f76691c 0%, transparent 36%), var(--page-bg)}.brand-lockup{color:var(--text-primary);align-items:center;gap:.7rem;display:inline-flex}.brand-logo{filter:drop-shadow(0 10px 18px #4f46e538);width:2.4rem;height:2.4rem}.brand-word{font-family:var(--display-font);letter-spacing:0;font-size:1.55rem;font-weight:800;line-height:1}.primary-button{color:#fff;background:linear-gradient(135deg,#d97757,#8f4f32);border-radius:9999px;justify-content:center;align-items:center;min-height:3rem;padding:.75rem 1.45rem;font-weight:700;transition:transform .2s,box-shadow .2s;display:inline-flex;box-shadow:0 18px 36px #d9775738}.primary-button:hover{transform:translateY(-1px);box-shadow:0 22px 42px #d977574d}.theme-text{color:var(--text-primary)}.theme-muted{color:var(--text-muted)}.theme-subtle,.theme-link{color:var(--text-subtle)}.theme-link:hover{color:var(--nebula-accent)}.theme-outline-button{border:1px solid var(--border-soft);color:var(--text-primary);border-radius:9999px;padding:.75rem 1.5rem;transition:color .2s,background .2s,border-color .2s;display:inline-block}.theme-outline-button:hover{background:var(--surface-hover);border-color:var(--nebula-accent)}.home-lab{position:relative;overflow:hidden}.home-hero{background:radial-gradient(circle at 72% 48%,#d977572e,#0000 34%),radial-gradient(circle at 18% 30%,#fffaf214,#0000 30%);min-height:100vh;padding:7rem 1rem 4rem;position:relative;overflow:hidden}.home-hero:before{content:"";border:1px solid color-mix(in srgb, var(--nebula-accent) 18%, transparent);background:radial-gradient(circle at 50% 50%, color-mix(in srgb, var(--nebula-accent) 10%, transparent), transparent 58%), repeating-conic-gradient(from 12deg, color-mix(in srgb, var(--text-subtle) 16%, transparent) 0deg 1deg, transparent 1deg 16deg);opacity:.42;pointer-events:none;border-radius:9999px;width:min(78vw,58rem);height:min(78vw,58rem);position:absolute;inset:5rem auto auto 50%;transform:translate(-5%);-webkit-mask-image:radial-gradient(circle,#000 0 58%,#0000 72%);mask-image:radial-gradient(circle,#000 0 58%,#0000 72%)}.home-hero-grid{z-index:2;grid-template-columns:minmax(0,.9fr) minmax(29rem,.9fr);align-items:center;gap:clamp(2rem,5vw,5rem);width:min(100%,82rem);min-height:calc(100vh - 11rem);margin:0 auto;display:grid;position:relative}.home-hero-copy{z-index:4;max-width:42rem;position:relative}.home-kicker{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--surface-strong) 82%, transparent);color:var(--nebula-accent);letter-spacing:.12em;text-transform:uppercase;border-radius:9999px;align-items:center;gap:.6rem;margin-bottom:1.4rem;padding:.45rem .9rem .45rem .5rem;font-size:.75rem;font-weight:900;display:inline-flex}.home-hero-copy h1{color:var(--text-primary);font-family:var(--display-font);letter-spacing:0;font-size:clamp(3.4rem,7vw,7.4rem);font-weight:900;line-height:.98}.home-hero-copy h1 span{color:var(--nebula-accent);margin-top:.35rem;font-style:italic;display:block}.home-hero-copy p{max-width:38rem;color:var(--text-muted);margin-top:1.4rem;font-size:clamp(1rem,2vw,1.24rem);line-height:1.85}.home-actions{flex-wrap:wrap;gap:.85rem;margin-top:2rem;display:flex}.home-stats-strip{flex-wrap:wrap;gap:.75rem;margin-top:2rem;display:flex}.home-stats-strip span{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted);border-radius:9999px;padding:.5rem .85rem;font-size:.85rem}.home-stats-strip strong{color:var(--text-primary);font-family:var(--display-font);font-size:1.1rem}.home-orbit{z-index:3;aspect-ratio:1;border-radius:9999px;min-height:32rem;position:relative;transform:translate(-2%)}.home-orbit-rings{border:1px solid color-mix(in srgb, var(--nebula-accent) 48%, transparent);border-radius:inherit;animation:42s linear infinite home-orbit-spin;position:absolute;inset:6%}.home-orbit-rings:before,.home-orbit-rings:after{content:"";border:1px dashed color-mix(in srgb, var(--text-muted) 42%, transparent);border-radius:inherit;position:absolute;inset:13%}.home-orbit-rings:after{border-style:solid;border-color:color-mix(in srgb, var(--nebula-accent) 18%, transparent);inset:28%}.home-orbit-core{border:1px solid var(--border-soft);background:radial-gradient(circle at 16% 0%, #fffaf22e, transparent 38%), linear-gradient(145deg, #2a221cfa, #1c1b18f0), radial-gradient(circle at 22% 14%, color-mix(in srgb, var(--nebula-accent) 36%, transparent), transparent 36%);-webkit-backdrop-filter:blur(18px);border-radius:28px;flex-direction:column;justify-content:center;width:min(58%,23rem);min-height:15rem;padding:1.5rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 30px 90px #0000005c}.home-orbit-core span,.home-floating-card span,.home-section-heading p,.home-feature-top span:first-child,.home-capability-card span{color:var(--nebula-accent);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:900}.home-orbit-core strong{color:#fff8ee;font-family:var(--display-font);margin-top:.55rem;font-size:clamp(1.65rem,3vw,2.6rem);line-height:1.15}.home-orbit-core a,.home-feature-link{border-bottom:1px solid color-mix(in srgb, var(--nebula-accent) 54%, transparent);width:fit-content;color:var(--nebula-accent);margin-top:1.1rem;font-weight:800}.home-orbit-node{border:1px solid color-mix(in srgb, var(--nebula-accent) 28%, var(--border-soft));color:#efe3d3;-webkit-backdrop-filter:blur(14px);background:#25201cf0;border-radius:9999px;align-items:center;max-width:10rem;padding:.48rem .82rem;font-size:.78rem;transition:transform .2s,color .2s,border-color .2s;display:inline-flex;position:absolute;box-shadow:0 12px 34px #00000047}.home-orbit-node:hover{border-color:var(--nebula-accent);color:var(--nebula-accent);transform:translateY(-2px)}.node-1{top:21%;left:9%}.node-2{top:15%;right:13%}.node-3{top:45%;right:2%}.node-4{bottom:15%;right:18%}.node-5{bottom:12%;left:13%}.node-6{top:50%;left:0}.node-7{top:3%;left:30%}.node-8{bottom:0;left:36%}.home-floating-card{border:1px solid var(--border-soft);-webkit-backdrop-filter:blur(16px);background:#25201cf0;border-radius:20px;padding:1rem;position:absolute;box-shadow:0 24px 70px #0000004d}.home-floating-card strong{color:#fff8ee;font-family:var(--display-font);margin-top:.3rem;font-size:1.25rem;display:block}.home-floating-card small{color:var(--text-subtle)}.card-a{bottom:25%;left:4%}.card-b{bottom:29%;right:3%}.home-scroll-hint{z-index:3;border:1px solid var(--border-soft);border-radius:9999px;width:2rem;height:3.2rem;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.home-scroll-hint span{background:var(--nebula-accent);border-radius:9999px;width:.32rem;height:.8rem;position:absolute;top:.65rem;left:50%;transform:translate(-50%)}.home-section{z-index:2;padding-top:5rem;padding-bottom:5rem;position:relative}.home-section-heading{max-width:46rem;margin-bottom:2rem}.home-section-heading h2{color:var(--text-primary);font-family:var(--display-font);margin-top:.35rem;font-size:clamp(2rem,4vw,3.7rem);font-weight:900;line-height:1.1}.home-feature-grid{grid-template-columns:minmax(0,1.1fr) minmax(20rem,.9fr);gap:1.2rem;display:grid}.home-feature-note{border:1px solid var(--border-soft);background:linear-gradient(145deg, color-mix(in srgb, var(--nebula-accent) 14%, transparent), transparent 48%), var(--surface-strong);min-height:27rem;box-shadow:var(--shadow-soft);border-radius:32px;padding:clamp(1.4rem,4vw,2.4rem)}.home-feature-top{flex-wrap:wrap;justify-content:space-between;gap:.8rem;display:flex}.home-feature-note h3{max-width:48rem;color:var(--text-primary);font-family:var(--display-font);margin-top:3rem;font-size:clamp(2rem,5vw,4.8rem);font-weight:900;line-height:1}.home-feature-note p{max-width:43rem;color:var(--text-muted);margin-top:1.2rem;font-size:1.04rem;line-height:1.8}.home-feature-tags{flex-wrap:wrap;gap:.45rem;margin-top:1.4rem;display:flex}.home-feature-tags span{border:1px solid var(--border-soft);color:var(--text-subtle);border-radius:9999px;padding:.2rem .58rem;font-size:.76rem}.home-note-stack{gap:.85rem;display:grid}.home-stack-item{border:1px solid var(--border-soft);background:var(--surface);min-height:8rem;color:var(--text-primary);border-radius:24px;grid-template-columns:3rem minmax(0,1fr);align-items:center;padding:1rem;transition:transform .2s,border-color .2s,background .2s;display:grid}.home-stack-item:hover,.home-capability-card:hover{border-color:color-mix(in srgb, var(--nebula-accent) 46%, var(--border-soft));background:var(--surface-hover);transform:translateY(-2px)}.home-stack-item>span{color:var(--nebula-accent);font-family:var(--display-font);font-size:1.6rem;font-weight:900}.home-stack-item strong{color:var(--text-primary);font-family:var(--display-font);font-size:1.25rem;display:block}.home-stack-item small{color:var(--text-subtle);margin-top:.35rem;font-size:.8rem;display:block}.home-capabilities{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--nebula-accent) 6%, transparent), transparent)}.home-capability-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.home-capability-card{border:1px solid var(--border-soft);background:var(--surface);min-height:17rem;color:var(--text-primary);border-radius:26px;flex-direction:column;padding:1.5rem;transition:transform .2s,border-color .2s,background .2s;display:flex}.home-capability-icon{background:color-mix(in srgb, var(--nebula-accent) 12%, transparent);width:3.25rem;height:3.25rem;color:var(--nebula-accent);border-radius:16px;justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.home-capability-card h3{color:var(--text-primary);font-family:var(--display-font);margin-top:auto;font-size:1.45rem;line-height:1.2}.home-capability-card p{color:var(--text-muted);margin-top:.85rem;font-size:.92rem;line-height:1.7}@keyframes home-orbit-spin{to{transform:rotate(360deg)}}@media (width<=1080px){.home-hero-grid,.home-feature-grid{grid-template-columns:1fr}.home-orbit{width:min(100%,34rem);min-height:30rem;margin:0 auto}.home-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=680px){.home-hero{padding-top:6.5rem}.home-orbit{min-height:24rem}.home-floating-card,.node-5,.node-6,.node-7,.node-8{display:none}.home-orbit-core{width:72%;min-height:12rem}.home-capability-grid{grid-template-columns:1fr}.home-feature-note{min-height:auto}}.nav-link{color:var(--text-muted);transition:color .2s;position:relative}button.nav-link{appearance:none;cursor:pointer;font:inherit;background:0 0;border:0;padding:0}.nav-link:hover{color:var(--text-primary)}.glass-nav{background:var(--nav-bg);-webkit-backdrop-filter:blur(18px);border-color:var(--border-soft)}.light-theme .glass-card{background:var(--surface);border:1px solid var(--border-soft);box-shadow:0 12px 40px #0f172a14}.light-theme .glass-card:hover{background:var(--surface-hover);box-shadow:0 8px 32px #6366f126}.tag-pill{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted);border-radius:9999px;align-items:center;padding:.25rem .75rem;font-size:.75rem;line-height:1rem;transition:border-color .2s,color .2s,background .2s;display:inline-flex}.tag-pill:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.reading-main{z-index:40;width:min(100%,50rem);margin-left:auto;margin-right:auto;padding-top:5rem;position:relative}.reading-toc{z-index:30;pointer-events:none;width:17.5rem;position:fixed;top:7.25rem;bottom:2rem;left:max(2rem,50vw - 43rem)}@media (width>=1280px){.reading-main{margin-left:calc(max(2rem,50vw - 43rem) + 19.5rem);margin-right:calc(max(2rem,50vw - 43rem) + 18rem)}}.reading-toc{pointer-events:none}.reading-toc .toc-panel{pointer-events:auto}.toc-kicker{color:var(--nebula-accent);letter-spacing:.18em;text-transform:uppercase;margin-bottom:.5rem;font-size:.65rem;font-weight:800}.tag-filter,.tag-filter-active{border:1px solid var(--border-soft);border-radius:9999px;align-items:center;gap:.5rem;min-height:2.25rem;padding:.45rem .85rem;font-size:.875rem;line-height:1.25rem;transition:background .2s,border-color .2s,color .2s;display:inline-flex}.tag-filter{background:var(--surface);color:var(--text-muted)}.tag-filter:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.tag-filter-active{border-color:var(--nebula-accent);color:var(--nebula-accent);background:#4f46e529}.tag-filter span,.tag-filter-active span{background:#94a3b82e;border-radius:9999px;padding:.05rem .45rem;font-size:.75rem}.toc-panel{border:1px solid color-mix(in srgb, var(--nebula-accent) 12%, var(--border-soft));background:color-mix(in srgb, var(--nebula-accent) 4%, var(--surface));max-height:calc(100vh - 8rem);box-shadow:0 0 24px color-mix(in srgb, var(--nebula-accent) 8%, transparent);-webkit-backdrop-filter:blur(20px);border-radius:16px;padding:1.1rem 1.25rem;transition:box-shadow .3s;overflow-y:auto}.toc-panel:hover{box-shadow:0 0 30px color-mix(in srgb, var(--nebula-accent) 12%, transparent)}.note-graph-sidebar-collapsed{z-index:30;position:fixed;top:7.25rem;right:max(2rem,50vw - 43rem)}.note-graph-sidebar-toggle{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted);cursor:pointer;box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);border-radius:12px;flex-direction:column;align-items:center;gap:.25rem;padding:.6rem .5rem;font-size:.7rem;transition:color .2s,border-color .2s;display:flex}.note-graph-sidebar-toggle:hover{color:var(--nebula-accent);border-color:var(--nebula-accent)}.note-graph-sidebar-collapse{width:20px;height:20px;color:var(--text-subtle);cursor:pointer;background:0 0;border:none;border-radius:4px;justify-content:center;align-items:center;transition:color .2s;display:flex}.note-graph-sidebar-collapse:hover{color:var(--nebula-accent)}.note-graph-sidebar{z-index:30;width:16rem;position:fixed;top:7.25rem;bottom:2rem;right:max(2rem,50vw - 43rem)}.note-graph-sidebar-inner{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(16px);border-radius:18px;height:100%;padding:1rem;overflow-y:auto}.note-graph-sidebar-header{justify-content:space-between;align-items:center;margin-bottom:.2rem;display:flex}.note-graph-sidebar-title{font-size:.875rem;font-weight:600}.note-graph-sidebar-count{color:var(--nebula-accent);background:color-mix(in srgb, var(--nebula-accent) 15%, transparent);border-radius:9999px;padding:.1rem .5rem;font-size:.7rem;font-weight:600}.note-graph-sidebar-desc{opacity:.4;margin-bottom:.5rem;font-size:.68rem}.note-graph-sidebar-svg{width:100%;height:320px;display:block}.toc-panel{scrollbar-width:thin;scrollbar-color:var(--nebula-accent) transparent;max-height:calc(100vh - 8rem);overflow-y:auto}.toc-panel::-webkit-scrollbar{width:4px}.toc-panel::-webkit-scrollbar-track{background:0 0}.toc-panel::-webkit-scrollbar-thumb{background:var(--nebula-accent);border-radius:2px}.toc-root{flex-direction:column;gap:.15rem;margin:0;padding:0;list-style:none;display:flex}.toc-link{color:var(--text-subtle);border-radius:8px;padding:.35rem .6rem;font-size:.82rem;line-height:1.4;text-decoration:none;transition:color .2s,background .2s;display:block}.toc-link:hover{color:var(--text-primary);background:#a855f714}.toc-link-active{color:var(--text-primary);border-left:2px solid var(--nebula-accent);background:#a855f71f;font-weight:600}.toc-link-active .toc-num{opacity:.9;color:var(--nebula-accent)}.toc-num{color:var(--nebula-accent);opacity:.45;font-variant-numeric:tabular-nums;letter-spacing:.02em;flex-shrink:0;min-width:2.2rem;font-size:.7rem;font-weight:600}.toc-text{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.toc-tree{border-left:1px solid var(--border-soft);flex-direction:column;gap:.1rem;margin:0 0 0 .35rem;padding:0 0 0 1rem;list-style:none;display:flex}.toc-tree-item{margin:0;padding:0;position:relative}.toc-link-h3{color:var(--text-muted);font-size:.78rem}.mobile-toc{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:16px;padding:1rem}.mobile-toc summary{cursor:pointer;color:var(--text-primary);font-weight:700}.ai-aura{position:relative}.ai-aura-trigger{border:1px solid color-mix(in srgb, var(--nebula-accent) 18%, var(--border-soft));background:color-mix(in srgb, var(--nebula-accent) 6%, var(--surface));color:var(--nebula-accent);cursor:pointer;border-radius:9999px;align-items:center;gap:.5rem;padding:.45rem 1rem .45rem .75rem;font-size:.78rem;font-weight:700;transition:background .2s,border-color .2s,box-shadow .2s;display:inline-flex}.ai-aura-trigger:hover{background:color-mix(in srgb, var(--nebula-accent) 11%, var(--surface-hover));border-color:color-mix(in srgb, var(--nebula-accent) 35%, var(--border-soft));box-shadow:0 4px 20px #d977571f}.ai-aura-trigger svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.ai-aura-dot{background:var(--nebula-accent);border-radius:9999px;width:.5rem;height:.5rem;animation:2.5s ease-in-out infinite aura-pulse}@keyframes aura-pulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.ai-aura-body{border:1px solid var(--border-soft);background:linear-gradient(180deg, color-mix(in srgb, var(--surface-strong) 95%, transparent), color-mix(in srgb, var(--surface) 95%, transparent));-webkit-backdrop-filter:blur(16px);border-radius:20px;margin-top:1rem;padding:1.25rem;overflow:hidden;box-shadow:0 8px 32px #0000000f}.ai-aura-tabs{background:color-mix(in srgb, var(--nebula-accent) 6%, var(--surface));border-radius:9999px;gap:.25rem;margin-bottom:1rem;padding:.2rem;display:flex}.ai-tab{color:var(--text-subtle);border-radius:9999px;flex:1;padding:.4rem .35rem;font-size:.76rem;font-weight:750;transition:background .2s,color .2s}.ai-tab:hover,.ai-tab-active{background:color-mix(in srgb, var(--nebula-accent) 13%, transparent);color:var(--nebula-accent)}.ai-chip{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--nebula-accent) 8%, transparent);color:var(--text-muted);border-radius:9999px;align-items:center;padding:.25rem .6rem;font-size:.75rem;display:inline-flex}.ai-link-card{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--nebula-accent) 7%, var(--surface));color:var(--text-muted);border-radius:12px;padding:.75rem;font-size:.75rem;transition:background .2s,color .2s,transform .2s;display:block}.ai-link-card:hover{background:color-mix(in srgb, var(--nebula-accent) 12%, var(--surface-hover));color:var(--nebula-accent);transform:translateY(-1px)}.ai-actions{border-top:1px solid var(--border-soft);margin-top:1rem;padding-top:1rem}.ai-random-button{border:1px solid color-mix(in srgb, var(--nebula-accent) 24%, var(--border-soft));background:color-mix(in srgb, var(--nebula-accent) 9%, var(--surface));width:100%;color:var(--text-primary);border-radius:14px;justify-content:space-between;align-items:center;gap:.75rem;padding:.78rem .9rem;font-weight:800;transition:transform .2s,background .2s,border-color .2s;display:flex}.ai-random-button:hover{border-color:var(--nebula-accent);background:color-mix(in srgb, var(--nebula-accent) 14%, var(--surface-hover));transform:translateY(-1px)}.ai-random-button:disabled{cursor:not-allowed;opacity:.55}.ai-random-button svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}.roadmap-tabs{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-bottom:2rem;display:flex}.roadmap-tab,.roadmap-tab-active{border-radius:9999px;padding:.7rem 1rem;font-size:.9rem;font-weight:700;transition:transform .2s,background .2s,color .2s}.roadmap-tab{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted)}.roadmap-tab:hover{color:var(--nebula-accent);transform:translateY(-1px)}.roadmap-tab-active{color:#fff;background:linear-gradient(135deg,#4f46e5,#0f766e);box-shadow:0 14px 32px #4f46e538}.roadmap-board{border:1px solid var(--border-soft);background:var(--surface-strong);box-shadow:var(--shadow-soft);border-radius:26px;padding:clamp(1.2rem,3vw,2.4rem);overflow:hidden}.roadmap-header{justify-content:space-between;align-items:flex-start;gap:1.5rem;margin-bottom:2rem;display:flex}.roadmap-label{color:var(--nebula-accent);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:900}.roadmap-header h2{color:var(--text-primary);font-family:var(--display-font);margin-top:.35rem;font-size:clamp(1.8rem,4vw,3rem);font-weight:900}.roadmap-header p:not(.roadmap-label){max-width:42rem;color:var(--text-muted);margin-top:.75rem;line-height:1.75}.roadmap-flow-canvas{border:1px solid var(--border-soft);background:#1f1e1b;border-radius:22px;height:42rem;overflow:hidden}.light-theme .roadmap-flow-canvas{background:#f1eee7}.flow-card{border:1px solid color-mix(in srgb, var(--node-accent) 40%, transparent);background:var(--surface-strong);border-radius:14px;flex-direction:column;width:12.5rem;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 12px 30px #14141326}.flow-card-cover{background:linear-gradient(135deg, color-mix(in srgb, var(--node-accent) 18%, var(--surface-strong)), color-mix(in srgb, var(--node-accent) 6%, var(--surface)));border-bottom:1px solid color-mix(in srgb, var(--node-accent) 20%, transparent);flex-shrink:0;justify-content:center;align-items:center;height:4.5rem;display:flex;position:relative;overflow:hidden}.flow-card-favicon-wrap{background:color-mix(in srgb, var(--surface-strong) 80%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:12px;justify-content:center;align-items:center;width:2.8rem;height:2.8rem;display:flex;box-shadow:0 4px 14px #00000026}.flow-card-favicon{-o-object-fit:contain;object-fit:contain;width:1.6rem;height:1.6rem;display:block}.flow-card-level{background:var(--node-accent);color:#fff;border-radius:9999px;place-items:center;width:1.4rem;height:1.4rem;font-size:.7rem;font-weight:900;line-height:1;display:grid;position:absolute;top:.35rem;left:.35rem;box-shadow:0 2px 8px #0000004d}.flow-card-body{flex-direction:column;gap:.25rem;padding:.55rem .7rem .65rem;display:flex}.flow-card-title{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:.88rem;font-weight:800;line-height:1.3;display:-webkit-box;overflow:hidden}.flow-card-type{background:color-mix(in srgb, var(--node-accent) 14%, transparent);color:var(--node-accent);border-radius:9999px;align-self:flex-start;padding:.08rem .45rem;font-size:.65rem;font-weight:800;line-height:1.5;display:inline-flex}.flow-card-desc{color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;line-height:1.4;overflow:hidden}.react-flow__handle{border-color:var(--surface-strong);background:var(--nebula-accent);width:.5rem;height:.5rem}.react-flow__controls{border:1px solid var(--border-soft);box-shadow:var(--shadow-soft);border-radius:14px;overflow:hidden}.react-flow__controls-button{background:var(--surface-strong);border-bottom-color:var(--border-soft);color:var(--text-primary)}.react-flow__minimap{border:1px solid var(--border-soft);background:var(--surface-strong);box-shadow:var(--shadow-soft);border-radius:16px;overflow:hidden}.roadmap-minimap{width:13rem!important;height:8rem!important;bottom:1rem!important;right:1rem!important}.roadmap-minimap svg{width:100%;height:100%}.react-flow__attribution{display:none!important}.roadmap-resources{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;margin-top:1.2rem;display:grid}.resource-card{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-primary);border-radius:18px;padding:1rem;transition:transform .2s,border-color .2s,background .2s;display:block}.resource-card:hover{border-color:var(--nebula-accent);background:var(--surface-hover);transform:translateY(-2px)}.resource-card span{color:var(--nebula-accent);font-size:.75rem;font-weight:900}.resource-card h3{margin:.45rem 0;font-weight:800}.resource-card p{color:var(--text-subtle);word-break:break-all;font-size:.78rem}.reference-section{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:24px;margin-top:3rem;padding:clamp(1.2rem,3vw,1.8rem)}.reference-section-header{margin-bottom:1rem}.reference-section-header p{color:var(--nebula-accent);letter-spacing:.14em;text-transform:uppercase;font-size:.72rem;font-weight:900}.reference-section-header h2{color:var(--text-primary);font-family:var(--display-font);margin-top:.25rem;font-size:1.7rem;font-weight:900}.reference-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem;display:grid}.reference-grid>*{min-width:0}.reference-preview-card{border:1px solid var(--border-soft);background:linear-gradient(180deg, color-mix(in srgb, var(--surface-strong) 95%, transparent), var(--surface));min-width:0;height:100%;color:var(--text-primary);border-radius:18px;flex-direction:column;transition:transform .2s,border-color .2s,background .2s;display:flex;overflow:hidden;box-shadow:0 16px 42px #1414131a}.reference-preview-card:hover{border-color:color-mix(in srgb, var(--nebula-accent) 50%, var(--border-soft));background:var(--surface-hover);transform:translateY(-2px)}.reference-preview-cover{border-bottom:1px solid var(--border-soft);background-color:color-mix(in srgb, var(--nebula-accent) 8%, var(--surface-strong));height:6.5rem;display:block;position:relative;overflow:hidden}.reference-preview-cover img{-o-object-fit:cover;object-fit:cover;width:100%;height:100%;display:block}.reference-preview-cover:after{content:"";border-top-left-radius:inherit;border-top-right-radius:inherit;pointer-events:none;background:linear-gradient(#0000 40%,#14141333),radial-gradient(circle at 18% 12%,#fffaf22e,#0000 32%);position:absolute;inset:0}.reference-preview-shimmer{background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--surface-hover) 55%, transparent), transparent);animation:1.4s linear infinite reference-shimmer;position:absolute;inset:0}@keyframes reference-shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.reference-preview-body{flex-direction:column;flex:1;padding:.95rem 1rem 1.05rem;display:flex}.reference-preview-body strong{color:var(--text-primary);font-family:var(--display-font);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 .55rem;font-size:1.1rem;font-weight:900;line-height:1.35;display:-webkit-box;overflow:hidden}.reference-preview-desc{color:var(--text-muted);-webkit-line-clamp:3;-webkit-box-orient:vertical;font-size:.84rem;line-height:1.6;display:-webkit-box;overflow:hidden}.reference-preview-site{color:var(--nebula-accent);overflow-wrap:anywhere;margin-top:auto;padding-top:.85rem;font-size:.74rem;font-weight:850}.reference-card{border:1px solid var(--border-soft);background:var(--surface-strong);min-width:0;color:var(--text-primary);border-radius:16px;flex-direction:column;gap:.35rem;padding:.9rem;transition:transform .2s,border-color .2s,background .2s;display:flex}.reference-card:hover{border-color:var(--nebula-accent);background:var(--surface-hover);transform:translateY(-2px)}.reference-card span{color:var(--nebula-accent);font-size:.74rem;font-weight:850}.reference-card strong{color:var(--text-primary);font-size:.98rem;line-height:1.35}.reference-card small{color:var(--text-subtle);overflow-wrap:anywhere;font-size:.72rem}.tag-tabs{flex-wrap:wrap;gap:.4rem;margin-bottom:2rem;padding-bottom:.5rem;display:flex}.tag-tab{border:1px solid var(--border-soft);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:9999px;padding:.35rem 1rem;font-size:.88rem;font-weight:600;transition:all .18s}.tag-tab:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.tag-tab-active{background:color-mix(in srgb, var(--nebula-accent) 90%, transparent);color:#fff;border-color:#0000}.tag-tab-active:hover{color:#fff;border-color:#0000}.tag-tab-content{min-height:12rem}.tag-tab-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.tag-group-block{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);border-radius:16px;padding:1rem 1.1rem}.tag-group-header{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.85rem;display:flex}.tag-group-header h2{color:var(--text-primary);font-family:var(--display-font);font-size:1.15rem;font-weight:900}.tag-group-header span{background:color-mix(in srgb, var(--nebula-accent) 13%, transparent);min-width:1.6rem;height:1.6rem;color:var(--nebula-accent);border-radius:9999px;place-items:center;font-size:.75rem;font-weight:900;display:grid}.tag-group-link{color:var(--text-muted);border-radius:10px;align-items:center;gap:.45rem;padding:.45rem .6rem;font-size:.88rem;line-height:1.35;text-decoration:none;transition:background .15s,color .15s;display:flex}.tag-group-link svg{color:var(--nebula-accent);opacity:.5;flex-shrink:0;transition:opacity .15s}.tag-group-link:hover{background:color-mix(in srgb, var(--nebula-accent) 6%, transparent);color:var(--text-primary)}.tag-group-link:hover svg{opacity:1}.tag-group-more{color:var(--nebula-accent);border-radius:9999px;align-items:center;gap:.3rem;margin-top:.7rem;padding:.2rem .7rem;font-size:.78rem;font-weight:700;text-decoration:none;transition:background .15s;display:inline-flex}.tag-group-more:hover{background:color-mix(in srgb, var(--nebula-accent) 10%, transparent)}.notes-filter-tags{flex-wrap:wrap;align-items:center;gap:.45rem;display:flex}.notes-filter-tag{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:9999px;align-items:center;gap:.3rem;padding:.2rem .6rem;font-size:.78rem;font-weight:600;line-height:1.4;transition:border-color .15s,color .15s,background .15s;display:inline-flex}.notes-filter-tag:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.notes-filter-tag span{opacity:.5;font-size:.7rem;font-weight:700;line-height:1}.notes-filter-tag-active{background:color-mix(in srgb, var(--nebula-accent) 10%, transparent);border-color:var(--nebula-accent);color:var(--nebula-accent)}.notes-filter-tag-active span{opacity:.7}.notes-filter-tag-active:hover{background:color-mix(in srgb, var(--nebula-accent) 16%, transparent)}.timeline-bar-label{letter-spacing:.02em;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.7rem}.tag-cloud{flex-wrap:wrap;gap:.6rem .5rem;padding:.5rem 0;display:flex}.tag-cloud-chip{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted);cursor:pointer;white-space:nowrap;border-radius:9999px;align-items:center;gap:.3rem;padding:.28rem .7rem;font-weight:600;line-height:1;transition:border-color .15s,color .15s,background .15s,transform .1s;display:inline-flex}.tag-cloud-chip:hover{border-color:var(--nebula-accent);color:var(--nebula-accent);background:color-mix(in srgb, var(--nebula-accent) 6%, transparent);transform:translateY(-1px)}.tag-cloud-count{opacity:.55;margin-top:1px;font-size:.7em;font-weight:700;line-height:1}.tag-result-panel{margin-top:1.5rem}.tag-result-header{border-bottom:1px solid var(--border-soft);align-items:center;gap:1rem;margin-bottom:1.2rem;padding-bottom:1rem;display:flex}.tag-result-back{border:1px solid var(--border-soft);color:var(--text-muted);cursor:pointer;background:0 0;border-radius:9999px;align-items:center;gap:.35rem;padding:.3rem .8rem;font-size:.82rem;font-weight:600;transition:border-color .15s,color .15s;display:inline-flex}.tag-result-back:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.tag-result-label{align-items:center;gap:.6rem;display:flex}.tag-chip-active{color:var(--nebula-accent);font-size:1.2rem;font-weight:900;font-family:var(--display-font)}.tag-result-count{color:var(--text-muted);background:color-mix(in srgb, var(--nebula-accent) 10%, transparent);border-radius:9999px;padding:.15rem .55rem;font-size:.8rem;font-weight:700}.tag-result-list{flex-direction:column;gap:.5rem;display:flex}.tag-result-item{border:1px solid var(--border-soft);background:var(--surface);border-radius:14px;align-items:flex-start;gap:.6rem;padding:.9rem 1.1rem;text-decoration:none;transition:border-color .15s,background .15s,transform .1s;display:flex}.tag-result-item:hover{border-color:var(--nebula-accent);background:color-mix(in srgb, var(--nebula-accent) 4%, transparent);transform:translate(2px)}.tag-result-arrow{color:var(--nebula-accent);opacity:.5;flex-shrink:0;margin-top:3px;transition:opacity .15s,transform .15s}.tag-result-item:hover .tag-result-arrow{opacity:1;transform:translate(2px)}.tag-result-title{color:var(--text-primary);margin-bottom:.2rem;font-size:.95rem;font-weight:700;display:block}.tag-result-excerpt{color:var(--text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;line-height:1.5;display:block;overflow:hidden}.notes-view-toggle{border:1px solid var(--border-soft);background:var(--surface);border-radius:10px;display:inline-flex;overflow:hidden}.notes-view-btn{width:2.2rem;height:2.2rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;transition:background .15s,color .15s;display:flex}.notes-view-btn:hover{background:color-mix(in srgb, var(--nebula-accent) 8%, transparent);color:var(--nebula-accent)}.notes-view-active{background:color-mix(in srgb, var(--nebula-accent) 12%, transparent);color:var(--nebula-accent)}.note-cover-frame{aspect-ratio:16/9;background:var(--surface-strong);width:100%;position:relative;overflow:hidden}.note-cover-img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%;height:100%;display:block}.note-cover-card-thumb{width:100%}.note-cover-card-thumb .note-cover-frame{border-radius:0}.note-cover-full-width{display:block;overflow:hidden}.note-cover-full-width.note-cover-frame{aspect-ratio:16/9;border-radius:0;width:100%;overflow:hidden}.note-cover-full-width.note-cover-frame .note-cover-img{-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;width:100%;height:100%;display:block}@media (width>=768px){.note-cover-card-thumb{align-self:stretch;width:11rem;min-width:11rem}.note-cover-card-thumb .note-cover-frame{aspect-ratio:auto;border-radius:0;height:100%;min-height:12rem}}.notes-timeline{max-width:900px;margin:0 auto;padding:0 1rem;position:relative}.notes-timeline:before{content:"";background:linear-gradient(180deg, var(--nebula-accent), color-mix(in srgb, var(--nebula-accent) 30%, transparent));opacity:.35;border-radius:1px;width:2px;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.notes-timeline-item{align-items:flex-start;width:50%;padding-bottom:2.4rem;display:flex;position:relative}.notes-timeline-item:last-child{padding-bottom:0}.notes-timeline-item:before{content:"";background:var(--nebula-accent);border:2px solid var(--surface);width:.7rem;height:.7rem;box-shadow:0 0 0 2px color-mix(in srgb, var(--nebula-accent) 40%, transparent);z-index:1;border-radius:9999px;flex-shrink:0;position:absolute;top:.6rem}.notes-timeline-item:nth-child(odd){justify-content:flex-end;margin-left:0;padding-right:2.8rem}.notes-timeline-item:nth-child(odd):before{right:calc(50% - .35rem - 1px)}.notes-timeline-item:nth-child(2n){justify-content:flex-start;margin-left:50%;padding-left:2.8rem}.notes-timeline-item:nth-child(2n):before{left:calc(50% - .35rem)}.notes-timeline-card{border:1px solid var(--border-soft);background:var(--surface);width:100%;max-width:390px;box-shadow:var(--shadow-soft);border-radius:16px;flex-direction:column;align-items:stretch;gap:.75rem;padding:1rem 1.2rem;text-decoration:none;transition:transform .18s,border-color .18s,box-shadow .18s;display:flex}.notes-timeline-card-main{flex:1;min-width:0}.notes-timeline-cover{border-radius:12px;flex-shrink:0;width:100%;overflow:hidden}.notes-timeline-cover .note-cover-frame{aspect-ratio:16/9}@media (width>=480px){.notes-timeline-card{flex-direction:row;align-items:flex-start;gap:1rem}.notes-timeline-cover{border-radius:10px;width:7.5rem}.notes-timeline-cover .note-cover-frame{aspect-ratio:16/9}}.notes-timeline-card:hover{border-color:color-mix(in srgb, var(--nebula-accent) 50%, var(--border-soft));box-shadow:var(--shadow-hover);transform:translateY(-3px)}.notes-timeline-meta{color:var(--text-subtle);align-items:center;gap:.35rem;margin-bottom:.4rem;font-size:.78rem;display:flex}.notes-timeline-meta svg{stroke:var(--text-subtle);fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.notes-timeline-title{color:var(--text-primary);margin-bottom:.35rem;font-size:1.1rem;font-weight:800;line-height:1.35}.notes-timeline-excerpt{color:var(--text-muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-bottom:.5rem;font-size:.84rem;line-height:1.6;display:-webkit-box;overflow:hidden}.notes-timeline-tags{flex-wrap:wrap;gap:.4rem;display:flex}.notes-timeline-tags span{color:color-mix(in srgb, var(--nebula-accent) 70%, var(--text-muted));font-size:.72rem;font-weight:700}@media (width<=640px){.notes-timeline{max-width:100%;padding-left:1.5rem}.notes-timeline:before{left:0;transform:none}.notes-timeline-item,.notes-timeline-item:nth-child(odd),.notes-timeline-item:nth-child(2n){justify-content:flex-start;width:100%;margin-left:0;padding-left:1.5rem;padding-right:0}.notes-timeline-item:before,.notes-timeline-item:nth-child(odd):before,.notes-timeline-item:nth-child(2n):before{position:absolute;left:-1.3rem;right:auto}.notes-timeline-card{max-width:100%}}.search-box{border:1px solid var(--border-soft);background:var(--surface-strong);box-shadow:var(--shadow-soft);border-radius:22px;align-items:center;gap:.85rem;padding:.8rem 1rem;display:flex}.search-box svg{fill:none;width:1.25rem;height:1.25rem;stroke:var(--nebula-accent);stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex:none}.search-box input{min-width:0;color:var(--text-primary);background:0 0;outline:none;flex:1;font-size:1.08rem;line-height:1.5}.search-box input::placeholder{color:var(--text-subtle)}.search-box button{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--nebula-accent) 10%, transparent);color:var(--nebula-accent);border-radius:9999px;padding:.4rem .78rem;font-size:.85rem;font-weight:800}.search-modal-layer{z-index:90;place-items:start center;padding:min(12vh,7rem) 1rem 2rem;display:grid;position:fixed;inset:0}.search-modal-backdrop{-webkit-backdrop-filter:blur(10px);background:radial-gradient(circle at 50% 18%,#d9775729,#0000 38%),#1414137a;position:absolute;inset:0}.light-theme .search-modal-backdrop{background:radial-gradient(circle at 50% 18%,#d9775729,#0000 38%),#f6f1e9b8}.search-modal{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--surface-strong) 94%, transparent);-webkit-backdrop-filter:blur(24px);border-radius:28px;width:min(760px,100%);max-height:min(76vh,720px);padding:clamp(1rem,2.5vw,1.5rem);position:relative;overflow:hidden;box-shadow:0 32px 90px #1414133d}.search-modal-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.search-modal-header p{color:var(--nebula-accent);letter-spacing:.16em;text-transform:uppercase;font-size:.72rem;font-weight:900}.search-modal-header h2{color:var(--text-primary);font-family:var(--display-font);margin-top:.1rem;font-size:clamp(1.7rem,4vw,2.35rem);font-weight:900}.search-close-btn{border:1px solid var(--border-soft);background:var(--surface);width:2.35rem;height:2.35rem;color:var(--text-muted);border-radius:9999px;place-items:center;transition:background .2s,color .2s,transform .2s;display:grid}.search-close-btn:hover{background:color-mix(in srgb, var(--nebula-accent) 10%, var(--surface-hover));color:var(--nebula-accent);transform:translateY(-1px)}.search-close-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;width:1.05rem;height:1.05rem}.search-box-modal{box-shadow:none}.search-results-modal{max-height:min(45vh,430px);padding-right:.25rem;overflow-y:auto}.search-meta{color:var(--text-subtle);margin:1rem 0 1.4rem;font-size:.92rem}.search-results{gap:1rem;display:grid}.search-result-card{border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);color:var(--text-primary);border-radius:22px;padding:1.15rem;transition:transform .2s,border-color .2s,background .2s;display:block}.search-result-card:hover{border-color:var(--nebula-accent);background:var(--surface-hover);transform:translateY(-2px)}.search-result-card h2{color:var(--text-primary);font-family:var(--display-font);margin-bottom:.55rem;font-size:1.45rem;font-weight:900}.search-result-card p{color:var(--text-muted);margin-bottom:.8rem;line-height:1.75}.search-result-card small{color:var(--text-subtle)}.empty-search{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted);text-align:center;border-radius:20px;padding:1.5rem}.note-content-footer{border-top:1px solid var(--border-soft);color:var(--text-muted);grid-template-columns:minmax(0,auto) minmax(14rem,1fr);align-items:start;gap:1rem 1.5rem;margin-top:2.5rem;padding-top:1.5rem;font-size:.9rem;display:grid}.note-content-meta{flex-wrap:wrap;gap:.55rem 1.35rem;min-width:0;display:flex}.note-content-meta span{white-space:nowrap}.note-content-tags{flex-wrap:wrap;justify-content:flex-end;gap:.45rem;min-width:0;display:flex}.note-content-tags span{border:1px solid var(--border-soft);background:color-mix(in srgb, var(--text-subtle) 8%, transparent);max-width:100%;color:var(--text-subtle);overflow-wrap:anywhere;border-radius:9999px;padding:.18rem .55rem;font-size:.76rem;line-height:1.2}.note-navigation-section{margin-top:2.5rem}.note-adjacent-row{justify-content:space-between;align-items:center;gap:1rem;padding:.75rem 0;display:flex}.note-adjacent-link{color:var(--text-subtle);align-items:center;gap:.5rem;max-width:45%;font-size:.875rem;line-height:1.4;text-decoration:none;transition:color .2s;display:inline-flex}.note-adjacent-link svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}.note-adjacent-link:hover{color:var(--nebula-accent)}.note-adjacent-next{text-align:right;flex-direction:row-reverse}.note-adjacent-disabled{opacity:.4;cursor:default;pointer-events:none}.sidebar-related{border-top:1px solid var(--border-soft);margin-top:.5rem;padding-top:.75rem}.sidebar-related-header{align-items:center;margin-bottom:.6rem;display:flex}.sidebar-related-list{flex-direction:column;gap:.35rem;list-style:none;display:flex}.sidebar-related-link{color:var(--text-subtle);align-items:center;gap:.45rem;font-size:.78rem;line-height:1.35;text-decoration:none;transition:color .2s;display:inline-flex}.sidebar-related-link svg{stroke:currentColor;fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;opacity:.5;flex-shrink:0}.sidebar-related-link:hover{color:var(--nebula-accent)}.resource-item-link{border-radius:10px;grid-template-columns:1.25rem 1fr;align-items:center;gap:.45rem .5rem;padding:.45rem .6rem;text-decoration:none;transition:background .18s;display:grid}.resource-item-link:hover{background:var(--surface-hover)}.resource-item-icon{border-radius:4px;grid-row:span 2;align-self:center;width:1.25rem;height:1.25rem}.resource-item-name{color:var(--text-primary);min-width:0;font-size:.875rem;font-weight:550;line-height:1.4}.resource-item-desc{color:var(--text-subtle);text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.74rem;line-height:1.4;overflow:hidden}.resource-item-link:hover .resource-item-name{color:var(--nebula-accent)}.resources-page{min-height:100vh}.resources-hero{margin-bottom:2rem;padding:4rem 0 3rem;position:relative;overflow:hidden}.resources-hero-bg{background:radial-gradient(ellipse 70% 50% at 50% 0%, color-mix(in srgb, var(--nebula-accent) 12%, transparent) 0%, transparent 70%), radial-gradient(ellipse 50% 40% at 80% 50%, color-mix(in srgb, var(--nebula-purple) 8%, transparent) 0%, transparent 60%), linear-gradient(to bottom, transparent, var(--surface));pointer-events:none;position:absolute;inset:0}.resources-badge{background:color-mix(in srgb, var(--nebula-accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--nebula-accent) 20%, transparent);color:var(--nebula-accent);letter-spacing:.05em;border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.4rem .9rem;font-size:.75rem;font-weight:600;display:inline-flex}.resources-title{letter-spacing:-.02em;margin-bottom:.75rem;font-size:3rem;font-weight:800}.resources-subtitle{color:var(--text-muted);max-width:28rem;margin:0 auto 2rem;font-size:1.05rem;line-height:1.6}.resources-stats{justify-content:center;align-items:center;gap:1.5rem;display:flex}.resources-stat{flex-direction:column;align-items:center;gap:.15rem;display:flex}.resources-stat-num{color:var(--nebula-accent);font-size:1.75rem;font-weight:800;line-height:1}.resources-stat-label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.resources-stat-divider{background:var(--border-soft);width:1px;height:2rem}.resources-grid{-moz-column-count:3;column-count:3;-moz-column-gap:1.25rem;align-items:start;column-gap:1.25rem}@media (width<=1100px){.resources-grid{-moz-column-count:2;column-count:2}}@media (width<=700px){.resources-grid{-moz-column-count:1;column-count:1}}.resource-category-card{-moz-column-break-inside:avoid;break-inside:avoid;page-break-inside:avoid;background:var(--surface);border:1px solid var(--border-soft);-webkit-backdrop-filter:blur(12px);border-radius:18px;min-width:0;margin-bottom:1.25rem;padding:1.25rem;transition:border-color .25s,box-shadow .25s}.resource-category-card:hover{border-color:color-mix(in srgb, var(--nebula-accent) 25%, var(--border-soft));box-shadow:0 12px 40px color-mix(in srgb, var(--nebula-accent) 10%, transparent)}.resource-category-header{border-bottom:1px solid var(--border-soft);align-items:center;gap:.85rem;margin-bottom:1.25rem;padding-bottom:1rem;display:flex}.resource-category-icon{background:linear-gradient(135deg, color-mix(in srgb, var(--nebula-accent) 15%, transparent), color-mix(in srgb, var(--nebula-purple) 10%, transparent));width:2.5rem;height:2.5rem;color:var(--nebula-accent);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.resource-category-title-group{flex-direction:column;gap:.15rem;display:flex}.resource-category-title{color:var(--text-primary);margin:0;font-size:1.05rem;font-weight:700}.resource-category-count{color:var(--text-subtle);font-size:.72rem;font-weight:500}.graph-page{min-height:100vh}.graph-hero{margin-bottom:2.5rem;padding:3.5rem 0 2.5rem;position:relative;overflow:hidden}.graph-hero-bg{background:radial-gradient(ellipse 80% 60% at 50% -10%, color-mix(in srgb, var(--nebula-accent) 14%, transparent) 0%, transparent 60%), radial-gradient(ellipse 60% 50% at 20% 80%, color-mix(in srgb, var(--nebula-purple) 8%, transparent) 0%, transparent 50%), linear-gradient(to bottom, transparent, var(--surface));pointer-events:none;position:absolute;inset:0}.graph-badge{background:color-mix(in srgb, var(--nebula-accent) 8%, transparent);border:1px solid color-mix(in srgb, var(--nebula-accent) 20%, transparent);color:var(--nebula-accent);letter-spacing:.05em;border-radius:9999px;align-items:center;gap:.5rem;margin-bottom:1.25rem;padding:.4rem .9rem;font-size:.75rem;font-weight:600;display:inline-flex}.graph-title{letter-spacing:-.02em;margin-bottom:.75rem;font-size:3rem;font-weight:800}.graph-subtitle{color:var(--text-muted);max-width:30rem;margin:0 auto 1.75rem;font-size:1.05rem;line-height:1.6}.graph-stats{justify-content:center;align-items:center;gap:2rem;margin-bottom:1.25rem;display:flex}.graph-stat{flex-direction:column;align-items:center;gap:.35rem;display:flex}.graph-stat-icon{background:color-mix(in srgb, var(--nebula-accent) 10%, transparent);width:2.25rem;height:2.25rem;color:var(--nebula-accent);border-radius:10px;justify-content:center;align-items:center;margin-bottom:.25rem;display:flex}.graph-stat-num{color:var(--nebula-accent);font-size:1.6rem;font-weight:800;line-height:1}.graph-stat-label{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.graph-stat-divider{background:var(--border-soft);width:1px;height:2.5rem}.graph-hint{color:var(--text-subtle);justify-content:center;align-items:center;gap:.4rem;font-size:.78rem;display:flex}.graph-container{background:var(--surface);border:1px solid var(--border-soft);-webkit-backdrop-filter:blur(12px);border-radius:20px;margin-bottom:1.5rem;padding:1rem}.note-graph-container{width:100%;height:60vh;min-height:400px}.note-graph-svg{width:100%;height:100%}.graph-legend{background:var(--surface);border:1px solid var(--border-soft);border-radius:14px;justify-content:center;align-items:center;gap:2rem;padding:1rem;display:flex}.graph-legend-item{color:var(--text-subtle);align-items:center;gap:.5rem;font-size:.8rem;display:flex}.graph-legend-dot{background:var(--nebula-accent);width:12px;height:12px;box-shadow:0 0 8px var(--nebula-accent);border-radius:50%}.graph-legend-line{background:linear-gradient(to right, transparent, var(--border-soft), transparent);border-radius:1px;width:24px;height:2px}.resource-category-items{flex-direction:column;gap:.25rem;display:flex}.resource-item{cursor:pointer;border-radius:12px;align-items:center;gap:.75rem;padding:.7rem .85rem;text-decoration:none;transition:background .18s;display:flex}.resource-item:hover{background:color-mix(in srgb, var(--nebula-accent) 6%, var(--surface-hover))}.resource-item:hover .resource-item-name{color:var(--nebula-accent)}.resource-item:hover .resource-item-arrow{opacity:1;transform:translate(2px,-2px)}.resource-item-favicon-wrap{background:var(--surface);border:1px solid var(--border-soft);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;display:flex;overflow:hidden}.resource-item-favicon{-o-object-fit:contain;object-fit:contain;width:1rem;height:1rem}.resource-item-content{flex-direction:column;flex:1;gap:.1rem;min-width:0;display:flex}.resource-item-name{color:var(--text-primary);font-size:.9rem;font-weight:600;line-height:1.3;transition:color .18s}.resource-item-desc{color:var(--text-subtle);white-space:nowrap;text-overflow:ellipsis;font-size:.75rem;overflow:hidden}.resource-item-arrow{color:var(--nebula-accent);opacity:0;flex-shrink:0;transition:opacity .18s,transform .18s}@media (width<=720px){.note-content-footer{grid-template-columns:1fr}.note-content-tags{justify-content:flex-start}.note-adjacent-row{flex-direction:column;align-items:stretch;gap:.75rem}.note-adjacent-link{max-width:100%}.note-adjacent-next{flex-direction:row-reverse}}.light-theme .markdown-content p,.light-theme .markdown-content li{color:var(--text-muted)}.light-theme .markdown-content h2,.light-theme .markdown-content h3{color:var(--text-primary)}.light-theme .markdown-content code{color:#7c2d12;background:#edf2f7}.light-theme .markdown-content pre{border:1px solid var(--border-soft);background:#f1f5f9}.light-theme .markdown-content pre code,.light-theme .markdown-content code.block{color:#0f766e;background:#f1f5f9}.light-theme .markdown-content blockquote{color:#4b5563;border-left-color:#6366f1}.light-theme ::-webkit-scrollbar-track{background:#0000000d}.light-theme a{color:var(--nebula-accent)}.light-theme a:hover{color:#7c3aed}.light-theme .bg-gray-900\/80,.light-theme .bg-purple-900\/50,.light-theme .bg-white\/5{background-color:#f1f5f9e0}.light-theme .text-gray-200,.light-theme .text-gray-300,.light-theme .text-gray-400,.light-theme .text-gray-500{color:var(--text-muted)}.light-theme .text-blue-300,.light-theme .text-blue-400,.light-theme .text-purple-300,.light-theme .text-pink-300,.light-theme .text-green-300{color:var(--nebula-accent)}.light-theme .border-white\/10,.light-theme .border-purple-500\/30{border-color:var(--border-soft)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#ffffff0d;border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(#667eea,#764ba2);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(#764ba2,#f093fb)}.nebula-bg{z-index:-1;background:radial-gradient(at 20% 30%,#667eea26 0%,#0000 50%),radial-gradient(at 80% 70%,#764ba226 0%,#0000 50%),radial-gradient(#f093fb14 0%,#0000 70%);width:100vw;height:100vh;animation:15s ease-in-out infinite nebulaPulse;position:fixed;top:0;left:0}@keyframes nebulaPulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}.particle{pointer-events:none;border-radius:50%;animation:20s infinite floatParticle;position:absolute}@keyframes floatParticle{0%,to{opacity:.3;transform:translate(0)rotate(0)}25%{opacity:.6;transform:translate(100px,-100px)rotate(90deg)}50%{opacity:.4;transform:translate(-50px,50px)rotate(180deg)}75%{opacity:.5;transform:translate(80px,80px)rotate(270deg)}}.glass-card{background:var(--surface);-webkit-backdrop-filter:blur(10px);border:1px solid var(--border-soft);box-shadow:var(--shadow-soft);border-radius:14px}.glass-card:hover{background:var(--surface-hover);border-color:#667eea59;box-shadow:0 8px 32px #667eea33}.glow-text{text-shadow:0 0 10px #667eea80,0 0 20px #667eea4d,0 0 30px #667eea33}.gradient-text{font-family:var(--display-font);letter-spacing:0;background:linear-gradient(135deg,#f4efe7 0%,#d97757 52%,#b45f42 100%);-webkit-text-fill-color:transparent;background-size:200% 200%;-webkit-background-clip:text;background-clip:text;line-height:1.3;animation:8s infinite gradientShift}@keyframes gradientShift{0%,to{background-position:0%}50%{background-position:100%}}.markdown-content h1{background:linear-gradient(135deg, var(--nebula-accent), var(--nebula-purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:1.5rem;font-size:2.5rem;font-weight:700}.markdown-content h2{color:var(--nebula-accent);border-bottom:1px solid var(--border-soft);margin:2.5rem 0 1rem;padding-bottom:.5rem;font-family:Noto Serif SC,Source Han Serif SC,Songti SC,Georgia,serif;font-size:1.75rem;font-weight:700}.markdown-content h3{color:var(--nebula-purple);margin:1.8rem 0 .6rem;font-family:Noto Serif SC,Source Han Serif SC,Songti SC,Georgia,serif;font-size:1.35rem;font-weight:600}.light-theme .gradient-text{background:linear-gradient(135deg, var(--nebula-accent), var(--nebula-purple));-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.markdown-content p{color:var(--text-muted);text-align:justify;text-justify:inter-ideograph;letter-spacing:.02em;margin-bottom:1.5rem;font-family:Noto Serif SC,Source Han Serif SC,Songti SC,SimSun,Georgia,serif;font-size:1.1rem;line-height:1.9}.markdown-content a{color:var(--nebula-accent);border-bottom:1px solid color-mix(in srgb, var(--nebula-accent) 30%, transparent);text-decoration:none;transition:all .3s}.markdown-content a:hover{color:var(--nebula-glow);border-bottom-color:color-mix(in srgb, var(--nebula-glow) 50%, transparent)}.markdown-image-frame{margin:2rem 0;display:block}.markdown-image-frame img{-o-object-fit:contain;object-fit:contain;border:1px solid var(--border-soft);width:min(100%,860px);height:auto;max-height:72vh;box-shadow:var(--shadow-soft);background:var(--surface-strong);border-radius:24px;display:block}.markdown-image-caption{color:var(--text-subtle);margin-top:.65rem;font-size:.85rem;line-height:1.5;text-align:center!important;display:block!important}.markdown-image-fallback{border:1px dashed color-mix(in srgb, var(--nebula-accent) 38%, var(--border-soft));background:color-mix(in srgb, var(--nebula-accent) 6%, var(--surface));color:var(--text-muted);border-radius:18px;justify-content:space-between;align-items:center;gap:1rem;margin:1.2rem 0;padding:.9rem 1rem;font-size:.9rem;line-height:1.5;display:flex}.markdown-image-fallback a{color:var(--nebula-accent);flex:none;font-weight:800}.image-viewer-dialog{z-index:1000;background:#000000eb;border:none;justify-content:center;align-items:center;width:100%;max-width:100%;height:100%;max-height:100%;padding:0;display:flex;position:fixed;inset:0}.image-viewer-dialog::backdrop{background:0 0}.image-viewer-content{justify-content:center;align-items:center;max-width:90vw;max-height:90vh;display:flex;position:relative}.image-viewer-image{-o-object-fit:contain;object-fit:contain;border-radius:12px;max-width:90vw;max-height:85vh;box-shadow:0 25px 80px #0009}.image-viewer-loading{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.image-viewer-spinner{border:3px solid #ffffff1a;border-top-color:var(--nebula-accent,#a855f7);border-radius:50%;width:48px;height:48px;animation:.8s linear infinite image-viewer-spin}@keyframes image-viewer-spin{to{transform:rotate(360deg)}}.image-viewer-error{color:var(--text-muted);flex-direction:column;align-items:center;gap:1rem;display:flex}.image-viewer-close{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:44px;height:44px;transition:background .2s;display:flex;position:fixed;top:20px;right:20px}.image-viewer-close:hover{background:#fff3}.image-viewer-nav{color:#fff;cursor:pointer;background:#ffffff1a;border:none;border-radius:50%;justify-content:center;align-items:center;width:52px;height:52px;transition:background .2s;display:flex;position:fixed;top:50%;transform:translateY(-50%)}.image-viewer-nav:hover:not(:disabled){background:#fff3}.image-viewer-nav:disabled{opacity:.3;cursor:not-allowed}.image-viewer-prev{left:20px}.image-viewer-next{right:20px}.image-viewer-counter{color:#ffffffb3;font-family:inherit;font-size:.9rem;position:fixed;bottom:24px;left:50%;transform:translate(-50%)}.markdown-content code{background:#ffffff0d;border-radius:4px;padding:.2rem .4rem;font-family:Fira Code,monospace;font-size:.9em}.markdown-content :not(pre)>code{white-space:nowrap;word-break:keep-all;overflow-wrap:normal}.markdown-content pre{background:#0000004d;border:1px solid #ffffff1a;border-radius:8px;margin:1.5rem 0;padding:1.5rem;overflow-x:auto}.code-block-shell{border:1px solid var(--border-soft);box-shadow:var(--shadow-soft);background:#1f1e1b;border-radius:18px;margin:1.7rem 0;overflow:hidden}.code-block-toolbar{background:#2a2723f5;border-bottom:1px solid #f4efe71f;justify-content:space-between;align-items:center;gap:1rem;padding:.65rem .85rem;display:flex}.code-block-toolbar span{color:#d8cfc2;letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:800}.code-block-toolbar button{color:#f4efe7;background:#d9775724;border:1px solid #f4efe729;border-radius:9999px;padding:.28rem .72rem;font-size:.76rem;font-weight:800;transition:background .2s,border-color .2s,transform .2s}.code-block-toolbar button:hover{background:#d977573d;border-color:#d9775799;transform:translateY(-1px)}.markdown-content pre.code-block,.code-block{background:#1f1e1b;border:0;border-radius:0;margin:0;padding:1rem 1.1rem;overflow-x:auto}.code-block code,.markdown-content pre .hljs{color:#f4efe7;white-space:pre;word-break:normal;overflow-wrap:normal;background:0 0;min-width:max-content;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9rem;line-height:1.75;display:block}.hljs-keyword,.hljs-selector-tag,.hljs-literal,.hljs-title{color:#ffb088}.hljs-string,.hljs-attr,.hljs-symbol,.hljs-bullet{color:#b8d8a8}.hljs-number,.hljs-built_in,.hljs-variable,.hljs-template-variable{color:#f4cf86}.hljs-comment,.hljs-quote{color:#9f968b;font-style:italic}.hljs-function,.hljs-name,.hljs-section{color:#f0c0a4}.hljs-type,.hljs-class .hljs-title{color:#dbc7ff}.light-theme .code-block-shell{background:#fbf7ef;border-color:#e1d6c8;box-shadow:0 18px 40px #40342a1a}.light-theme .code-block-toolbar{background:#efe4d6;border-bottom-color:#e1d6c8}.light-theme .code-block-toolbar span{color:#6f4d3d}.light-theme .code-block-toolbar button{color:#7c3f2b;background:#fffaf2;border-color:#d7c4b2}.light-theme .code-block-toolbar button:hover{background:#f7e9dc;border-color:#d97757}.light-theme .markdown-content pre.code-block,.light-theme .code-block{background:#fbf7ef}.light-theme .code-block code,.light-theme .markdown-content pre .hljs{color:#2f2a24}.light-theme .hljs-keyword,.light-theme .hljs-selector-tag,.light-theme .hljs-literal,.light-theme .hljs-title{color:#9f3a24}.light-theme .hljs-string,.light-theme .hljs-attr,.light-theme .hljs-symbol,.light-theme .hljs-bullet{color:#4f6f3a}.light-theme .hljs-number,.light-theme .hljs-built_in,.light-theme .hljs-variable,.light-theme .hljs-template-variable{color:#9a5b16}.light-theme .hljs-comment,.light-theme .hljs-quote{color:#8a8176}.light-theme .hljs-function,.light-theme .hljs-name,.light-theme .hljs-section{color:#8750a0}.light-theme .hljs-type,.light-theme .hljs-class .hljs-title{color:#2f6f73}.markdown-content blockquote,.blockquote-styled{color:var(--text-muted);background:linear-gradient(135deg,#a855f70f,#ec489908);border:none;border-radius:12px;margin:1.75rem 0;padding:1.1rem 1.25rem 1.1rem 3.25rem;font-family:Noto Serif SC,Source Han Serif SC,Songti SC,Georgia,serif;font-style:normal;line-height:1.8;position:relative}.blockquote-styled:before{content:"❝";color:var(--nebula-accent);opacity:.4;font-size:1.35rem;line-height:1;position:absolute;top:.85rem;left:.75rem}.blockquote-styled:after{content:"";background:linear-gradient(to bottom, var(--nebula-accent), var(--nebula-purple));border-radius:2px;width:3px;height:60%;position:absolute;top:50%;left:1.85rem;transform:translateY(-50%)}.blockquote-styled>p{margin:0;font-size:.95rem}.blockquote-single{background:linear-gradient(135deg,#a855f714,#8b5cf60d);border-radius:9999px;align-items:center;margin:.5rem 0;padding:.5rem 1rem;font-size:.92rem;display:inline-flex}.blockquote-single:before{content:"\"";color:var(--nebula-accent);margin-right:.35rem;font-size:1.4rem;font-weight:700;line-height:0}.blockquote-inline{color:var(--text-muted);font-style:italic;display:inline}blockquote[data-type=tip],blockquote[data-type=warning],blockquote[data-type=info]{align-items:flex-start;gap:.75rem;padding-left:3rem;display:flex}blockquote[data-type=tip]:before,blockquote[data-type=warning]:before,blockquote[data-type=info]:before{font-size:1.1rem;position:absolute;top:1rem;left:1rem}blockquote[data-type=tip]{background:linear-gradient(135deg,#22c55e14,#22c55e08)}blockquote[data-type=tip]:before{content:"💡"}blockquote[data-type=warning]{background:linear-gradient(135deg,#fb923c14,#fb923c08)}blockquote[data-type=warning]:before{content:"⚠️"}blockquote[data-type=info]{background:linear-gradient(135deg,#3b82f614,#3b82f608)}blockquote[data-type=info]:before{content:"ℹ️"}.markdown-content ul,.markdown-content ol{color:var(--text-muted);margin:1rem 0 1.5rem 2rem}.markdown-content li{margin-bottom:.5rem;font-family:Noto Serif SC,Source Han Serif SC,Songti SC,SimSun,Georgia,serif;line-height:1.8}.mouse-glow{pointer-events:none;z-index:9999;mix-blend-mode:screen;background:radial-gradient(circle,#667eea26 0%,#0000 70%);border-radius:50%;width:400px;height:400px;position:fixed;transform:translate(-50%,-50%)}.floating-tools{z-index:60;border:1px solid var(--border-soft);background:var(--surface);box-shadow:var(--shadow-soft);-webkit-backdrop-filter:blur(18px);border-radius:9999px;gap:.45rem;padding:.45rem;display:grid;position:fixed;bottom:1.25rem;right:1.25rem}.floating-tools button{width:2.35rem;height:2.35rem;color:var(--text-muted);border-radius:9999px;place-items:center;transition:background .2s,color .2s,transform .2s;display:grid}.floating-tools button:hover{color:var(--nebula-accent);background:#d9775724;transform:translateY(-1px)}.floating-tools svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}.floating-tools .scroll-progress-button{width:2.75rem;height:2.75rem;color:var(--nebula-accent);position:relative}.floating-tools .scroll-progress-ring{width:100%;height:100%;position:absolute;inset:0;transform:rotate(-90deg)}.scroll-progress-track{fill:none;stroke:color-mix(in srgb, var(--text-subtle) 18%, transparent);stroke-width:3px}.scroll-progress-value{fill:none;stroke:var(--nebula-accent);stroke-width:3.4px;stroke-linecap:round;transition:stroke-dashoffset .12s linear}.floating-tools .scroll-progress-icon{z-index:1;width:1.05rem;height:1.05rem;color:var(--nebula-accent);position:relative}.floating-tools span{font-family:var(--display-font);font-weight:900}.floating-tools-notice{white-space:nowrap;border:1px solid var(--border-soft);background:var(--surface-strong);color:var(--text-muted);box-shadow:var(--shadow-soft);border-radius:9999px;padding:.45rem .7rem;font-size:.8rem;position:absolute;bottom:.55rem;right:3.2rem}.floating-tools-sep{background:var(--border-soft);width:1.5rem;height:1px;margin:.15rem auto}.floating-more-wrap{position:relative}.floating-more-wrap button.active{color:var(--nebula-accent);background:#d9775724}.floating-popover{z-index:70;border:1px solid var(--border-soft);background:var(--surface);-webkit-backdrop-filter:blur(18px);border-radius:14px;flex-direction:column;gap:.2rem;min-width:8.5rem;padding:.4rem;display:flex;position:absolute;bottom:0;right:calc(100% + .6rem);box-shadow:0 8px 32px #0003}.floating-popover button{width:100%;color:var(--text-muted);border-radius:10px;align-items:center;gap:.5rem;padding:.4rem .6rem;font-size:.8rem;transition:background .15s,color .15s;display:flex}.floating-popover button:hover{color:var(--nebula-accent);background:#d977571f}.floating-popover button.active{color:var(--nebula-accent);background:#d977572e}.floating-popover button svg{flex-shrink:0;width:1rem;height:1rem}.floating-popover-sep{background:var(--border-soft);height:1px;margin:.25rem 0}.floating-color-panel{background:var(--surface-strong);border:1px solid var(--border-soft);width:200px;box-shadow:var(--shadow-soft);z-index:150;border-radius:.75rem;margin-bottom:.75rem;padding:.875rem;position:absolute;bottom:100%;right:0}.floating-color-header{justify-content:space-between;align-items:center;margin-bottom:.75rem;display:flex}.floating-color-header span:first-child{color:var(--text-primary);font-size:.8rem;font-weight:600}.floating-color-mode{font-size:.9rem}.floating-color-preview{background:var(--surface);border-radius:.5rem;align-items:center;gap:.625rem;margin-bottom:.875rem;padding:.5rem;display:flex}.color-preview-swatch{border:1px solid var(--border-soft);border-radius:.375rem;flex-shrink:0;width:28px;height:28px;transition:background .15s}.color-preview-hex{color:var(--text-muted);text-transform:uppercase;font-family:SF Mono,Fira Code,monospace;font-size:.75rem}.floating-color-presets{justify-content:space-between;gap:.375rem;margin-bottom:.875rem;display:flex}.color-preset-btn{background:var(--preset-color);cursor:pointer;border:2px solid #0000;border-radius:50%;width:26px;height:26px;transition:all .15s;position:relative}.color-preset-btn:hover{border-color:var(--text-muted);transform:scale(1.15)}.color-preset-btn:active{transform:scale(.95)}.floating-color-sliders{flex-direction:column;gap:.5rem;display:flex}.slider-row{align-items:center;gap:.5rem;display:flex}.slider-label{width:14px;color:var(--text-subtle);text-align:center;font-size:.65rem;font-weight:600}.slider-value{width:32px;color:var(--text-subtle);text-align:right;font-family:SF Mono,monospace;font-size:.65rem}.hsl-slider{appearance:none;cursor:pointer;border-radius:3px;outline:none;flex:1;height:6px}.hsl-slider::-webkit-slider-thumb{appearance:none;border:2px solid var(--nebula-dark);cursor:grab;background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .1s;box-shadow:0 1px 3px #0000004d}.hsl-slider::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.1)}.hue-slider{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red)}.saturation-slider{background:linear-gradient(to right, gray, var(--slider-bg,red))}.lightness-slider{background:linear-gradient(to right, #000, var(--slider-bg,red), #fff)}.immersive-exit-btn{z-index:999;border:1px solid var(--border-soft);background:var(--surface);width:2.35rem;height:2.35rem;color:var(--text-muted);cursor:pointer;box-shadow:var(--shadow-soft);opacity:.45;border-radius:9999px;place-items:center;transition:opacity .3s;display:grid;position:fixed;top:1rem;right:1rem}.immersive-exit-btn:hover{opacity:1;color:var(--nebula-accent)}.immersive-exit-btn svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1.1rem;height:1.1rem}@media print{nav,.floating-tools,.reading-toc,.note-graph-sidebar,.mobile-toc,.ai-aura,.reference-section,footer,.particle-field,.mouse-glow,.back-to-notes,.related-notes,.theme-toggle{display:none!important}body{color:#000!important;background:#fff!important}.glass-card{box-shadow:none!important;border:1px solid #ddd!important}.markdown-content a{color:#1a73e8!important}.reading-main{max-width:100%!important;margin:0!important;padding:2rem 1.5rem!important}.reading-main h1.gradient-text{-webkit-text-fill-color:#1a1a2e!important;color:#1a1a2e!important;background:0 0!important;line-height:1.25!important;animation:none!important}figure.markdown-image-frame{page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;width:100%!important;margin:1rem 0!important;display:block!important}figure.markdown-image-frame img{page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important;-moz-column-break-before:avoid!important;break-before:avoid!important;-moz-column-break-after:avoid!important;break-after:avoid!important;width:auto!important;max-width:100%!important;height:auto!important;max-height:65vh!important;box-shadow:none!important;border-radius:0!important;margin-left:auto!important;margin-right:auto!important;display:block!important}figure.markdown-image-frame figcaption{text-align:center!important;display:block!important}.markdown-content p:has(img){page-break-inside:avoid!important;-moz-column-break-inside:avoid!important;break-inside:avoid!important}}[data-immersive] nav,[data-immersive] .reading-toc,[data-immersive] .note-graph-sidebar,[data-immersive] .mobile-toc,[data-immersive] .reference-section,[data-immersive] .ai-aura,[data-immersive] .related-notes,[data-immersive] .note-back-btn,[data-immersive] footer,[data-immersive] .particle-field,[data-immersive] .mouse-glow,[data-immersive] .theme-toggle,[data-immersive] .brand-lockup{display:none!important}[data-immersive] .reading-main{max-width:52rem;padding-top:2rem;margin:0 auto!important}[data-immersive] .reading-main .glass-card{box-shadow:none;background:0 0;border-color:#0000}[data-immersive] .reading-main .gradient-text{color:var(--text);-webkit-text-fill-color:initial!important;background:0 0!important}[data-immersive] .reading-main .markdown-content{font-size:1.125rem;line-height:1.85}[data-immersive] .reading-main .markdown-content h1{font-size:2.25rem}[data-immersive] .reading-main .markdown-content h2{font-size:1.75rem}[data-immersive] .reading-main .markdown-content h3{font-size:1.375rem}[data-immersive] .reading-main .markdown-content p{margin-bottom:1.5rem}.nav-link{align-items:center;gap:.38rem;font-weight:650;display:inline-flex}.nav-icon{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:1rem;height:1rem}.flow-card-link{color:inherit;text-decoration:none;display:block}.flow-card-link:hover .flow-card{border-color:var(--node-accent);transform:translateY(-2px);box-shadow:0 16px 38px #14141340}.markdown-content{word-break:normal;overflow-wrap:normal;line-break:auto}.markdown-content h1 .heading-num{color:inherit;font-size:inherit;font-weight:inherit;opacity:.7;margin-right:.1em}.markdown-content h2 .heading-num{color:inherit;font-size:inherit;font-weight:inherit;opacity:.65;margin-right:.1em}.markdown-content h3 .heading-num{color:inherit;font-size:inherit;font-weight:inherit;opacity:.6;margin-right:.1em}.markdown-content p,.markdown-content li{word-break:normal;overflow-wrap:normal;text-wrap:pretty}.markdown-content li>p:first-child{display:inline}.markdown-content li>p:not(:first-child){margin-top:.4rem}.markdown-content .markdown-code{white-space:nowrap;word-break:keep-all;overflow-wrap:normal;background:color-mix(in srgb, var(--nebula-accent) 12%, transparent);color:#9a3412;border-radius:.35rem;padding:.08rem .34rem;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.88em;display:inline}.markdown-content pre{white-space:pre}.markdown-content pre .markdown-code{white-space:pre;word-break:normal;color:inherit;background:0 0;border-radius:0;padding:0;display:block;overflow-x:auto}.markdown-content a{overflow-wrap:anywhere}html[data-font-size=large] .markdown-content p,html[data-font-size=large] .markdown-content li,html[data-font-size=large] .markdown-content h1,html[data-font-size=large] .markdown-content h2,html[data-font-size=large] .markdown-content h3,html[data-font-size=large] .markdown-content blockquote{font-size:1.2rem}html[data-font-size=large] .markdown-content p,html[data-font-size=large] .markdown-content li{line-height:1.9}html[data-font-size=xlarge] .markdown-content p,html[data-font-size=xlarge] .markdown-content li,html[data-font-size=xlarge] .markdown-content h1,html[data-font-size=xlarge] .markdown-content h2,html[data-font-size=xlarge] .markdown-content h3,html[data-font-size=xlarge] .markdown-content blockquote{font-size:1.35rem}html[data-font-size=xlarge] .markdown-content p,html[data-font-size=xlarge] .markdown-content li{line-height:2}@media (width<=1180px){.roadmap-resources{grid-template-columns:1fr}.roadmap-header{flex-direction:column}}@media (width<=760px){.brand-word{display:none}.brand-logo{width:2.1rem;height:2.1rem}.reference-grid,.tag-tab-grid{grid-template-columns:1fr}.tag-tabs{gap:.35rem}.tag-tab{padding:.3rem .75rem;font-size:.82rem}}.dissolve-enter{opacity:0;filter:blur(10px)}.dissolve-enter-active{opacity:1;filter:blur();transition:opacity .4s,filter .4s}.dissolve-exit{opacity:1;filter:blur()}.dissolve-exit-active{opacity:0;filter:blur(10px);transition:opacity .4s,filter .4s}.ai-summary-panel{background:var(--surface);border:1px solid var(--border-soft);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:1rem;margin-bottom:1.5rem;padding:1.25rem}.ai-summary-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.ai-summary-icon{font-size:1.25rem}.ai-summary-title{color:var(--text-primary);font-size:.95rem;font-weight:600}.ai-summary-badge{color:var(--nebula-accent);margin-left:auto;font-size:.75rem}.ai-summary-text{color:var(--text-muted);margin-bottom:1rem;font-size:.9rem;line-height:1.6}.ai-summary-refresh{cursor:pointer;opacity:.6;background:0 0;border:none;margin-left:auto;font-size:.9rem;transition:opacity .2s}.ai-summary-refresh:hover{opacity:1}.ai-keywords{border-top:1px solid var(--border-soft);margin-top:.75rem;padding-top:.75rem}.ai-keywords-label{color:var(--text-subtle);margin-bottom:.5rem;font-size:.75rem;display:block}.ai-keywords-list{flex-wrap:wrap;gap:.5rem;display:flex}.ai-keyword-tag{color:var(--nebula-accent);background:#d9775726;border-radius:.5rem;padding:.25rem .6rem;font-size:.8rem;font-weight:500}.ai-title-suggestion{border-top:1px solid var(--border-soft);margin-top:.75rem;padding-top:.75rem}.ai-title-label{color:var(--text-subtle);margin-bottom:.25rem;font-size:.75rem;display:block}.ai-title-text{color:var(--text-primary);font-size:.9rem;font-style:italic}.ai-summary-skeleton{margin-top:.5rem}.skeleton-line{background:linear-gradient(90deg, var(--border-soft) 25%, #f4efe71a 50%, var(--border-soft) 75%);background-size:200% 100%;border-radius:.25rem;height:.75rem;margin-bottom:.5rem;animation:1.5s infinite skeleton-shimmer}.skeleton-line-60{width:60%}.skeleton-line-80{width:80%}.skeleton-line-100{width:100%}.skeleton-tag{background:linear-gradient(90deg, var(--border-soft) 25%, #f4efe71a 50%, var(--border-soft) 75%);background-size:200% 100%;border-radius:.5rem;width:4rem;height:1.5rem;animation:1.5s infinite skeleton-shimmer;display:inline-block}.ai-keywords-skeleton{border-top:1px solid var(--border-soft);gap:.5rem;margin-top:1rem;padding-top:.75rem;display:flex}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.ai-summary-error-message{color:#e57373;margin-bottom:.5rem;font-size:.85rem}.ai-summary-retry{border:1px solid var(--nebula-accent);color:var(--nebula-accent);cursor:pointer;background:#d9775733;border-radius:.5rem;padding:.3rem .75rem;font-size:.8rem;transition:background .2s}.ai-summary-retry:hover{background:#d977574d}.ai-summary-unconfigured{border-style:dashed}.ai-summary-message{color:var(--text-muted);margin-bottom:.5rem;font-size:.85rem}.ai-summary-code{color:var(--text-subtle);background:var(--surface-strong);border-radius:.25rem;padding:.5rem;font-size:.75rem;display:block;overflow-x:auto}.color-customizer-toggle{background:var(--surface);border:1px solid var(--border-soft);width:44px;height:44px;color:var(--text-primary);cursor:pointer;z-index:100;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:fixed;bottom:100px;right:24px}.color-customizer-toggle:hover{background:var(--surface-hover);border-color:var(--nebula-accent)}.color-customizer-toggle svg{width:20px;height:20px}.color-customizer-overlay{z-index:200;background:#0000004d;position:fixed;inset:0}.color-customizer-panel{background:var(--surface-strong);border:1px solid var(--border-soft);z-index:201;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);width:280px;box-shadow:var(--shadow-soft);border-radius:1rem;position:fixed;bottom:100px;right:80px;overflow:hidden}.color-customizer-header{border-bottom:1px solid var(--border-soft);justify-content:space-between;align-items:center;padding:1rem;display:flex}.color-customizer-header h3{color:var(--text-primary);font-size:.95rem;font-weight:600}.color-customizer-close{width:28px;height:28px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.25rem;justify-content:center;align-items:center;font-size:1.5rem;display:flex}.color-customizer-close:hover{background:var(--surface-hover);color:var(--text-primary)}.color-customizer-body{padding:1rem}.color-customizer-hint{color:var(--text-muted);margin-bottom:.75rem;font-size:.8rem}.color-presets{flex-wrap:wrap;gap:.5rem;margin-bottom:1rem;display:flex}.preset-btn{border:1px solid var(--border-soft);background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:.5rem;padding:.3rem .6rem;font-size:.75rem;transition:all .2s}.preset-btn:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.preset-default{color:#fff;background:linear-gradient(135deg,#d97757,#8f4f32);border-color:#0000}.preset-rose{color:#fff;background:linear-gradient(135deg,#f43f5e,#9d174d);border-color:#0000}.preset-emerald{color:#fff;background:linear-gradient(135deg,#10b981,#065f46);border-color:#0000}.preset-sky{color:#fff;background:linear-gradient(135deg,#0ea5e9,#075985);border-color:#0000}.preset-violet{color:#fff;background:linear-gradient(135deg,#8b5cf6,#5b21b6);border-color:#0000}.preset-amber{color:#fff;background:linear-gradient(135deg,#f59e0b,#92400e);border-color:#0000}.color-inputs{flex-direction:column;gap:.75rem;display:flex}.color-input-row{justify-content:space-between;align-items:center;display:flex}.color-input-label{color:var(--text-muted);font-size:.8rem}.color-input-wrapper{align-items:center;gap:.5rem;display:flex}.color-picker{cursor:pointer;background:0 0;border:none;border-radius:.5rem;width:32px;height:32px;padding:0}.color-picker::-webkit-color-swatch-wrapper{padding:0}.color-picker::-webkit-color-swatch{border:1px solid var(--border-soft);border-radius:.5rem}.color-text-input{border:1px solid var(--border-soft);background:var(--surface);width:80px;color:var(--text-primary);border-radius:.5rem;padding:.3rem .5rem;font-family:monospace;font-size:.75rem}.color-text-input:focus{border-color:var(--nebula-accent);outline:none}.color-reset-btn{border:1px solid var(--border-soft);width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:.5rem;margin-top:1rem;padding:.5rem;font-size:.8rem;transition:all .2s}.color-reset-btn:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.color-customizer-footer{border-top:1px solid var(--border-soft);padding:.75rem 1rem}.color-customizer-note{color:var(--text-subtle);text-align:center;font-size:.7rem}.theme-drawer-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;background:#00000080;position:fixed;inset:0}.theme-drawer{background:var(--surface-strong);border-left:1px solid var(--border-soft);z-index:301;flex-direction:column;width:360px;max-width:100vw;display:flex;position:fixed;top:0;bottom:0;right:0;box-shadow:-8px 0 32px #0000004d}.theme-drawer-header{border-bottom:1px solid var(--border-soft);flex-shrink:0;justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.theme-drawer-title{color:var(--text-primary);align-items:center;gap:.75rem;font-size:1.1rem;font-weight:600;display:flex}.theme-drawer-icon{width:24px;height:24px;color:var(--nebula-accent)}.theme-drawer-close{width:36px;height:36px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.5rem;justify-content:center;align-items:center;transition:all .2s;display:flex}.theme-drawer-close:hover{background:var(--surface-hover);color:var(--text-primary)}.theme-drawer-close svg{width:20px;height:20px}.theme-drawer-content{flex:1;padding:1.25rem 1.5rem;overflow-y:auto}.theme-section{margin-bottom:1.75rem}.theme-section:last-child{margin-bottom:0}.theme-section-title{color:var(--text-subtle);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:.5rem;margin-bottom:.875rem;font-size:.8rem;font-weight:600;display:flex}.theme-section-title svg{opacity:.7;width:16px;height:16px}.theme-mode-toggle{background:var(--surface);border-radius:.75rem;gap:.25rem;padding:.25rem;display:flex}.mode-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:.5rem;flex:1;justify-content:center;align-items:center;gap:.5rem;padding:.625rem 1rem;font-size:.85rem;font-weight:500;transition:all .2s;display:flex}.mode-btn svg{width:18px;height:18px}.mode-btn:hover{color:var(--text-primary)}.mode-btn.active{background:var(--nebula-accent);color:#fff;box-shadow:0 2px 8px #d977574d}.color-preview-card{background:var(--surface);border:1px solid var(--border-soft);border-radius:.75rem;gap:1rem;padding:1rem;display:flex}.color-preview-main{border-radius:.625rem;flex-shrink:0;width:64px;height:64px;position:relative;overflow:hidden;box-shadow:0 4px 12px #0003}.color-preview-shine{background:linear-gradient(#ffffff40 0%,#fff0 100%);border-radius:.625rem .625rem 0 0;height:50%;position:absolute;top:0;left:0;right:0}.color-preview-info{flex-direction:column;justify-content:center;gap:.25rem;display:flex}.color-preview-label{color:var(--text-subtle);font-size:.75rem}.color-preview-hex{color:var(--text-primary);font-family:SF Mono,Fira Code,monospace;font-size:1.1rem;font-weight:600}.color-preview-hsl{color:var(--text-muted);font-family:SF Mono,Fira Code,monospace;font-size:.7rem}.preset-grid{grid-template-columns:repeat(4,1fr);gap:.625rem;display:grid}.preset-item{cursor:pointer;background:0 0;border:none;border-radius:.5rem;flex-direction:column;align-items:center;gap:.375rem;padding:.5rem;transition:all .2s;display:flex}.preset-item:hover{background:var(--surface)}.preset-swatch{border-radius:50%;width:36px;height:36px;transition:transform .2s;position:relative;overflow:hidden;box-shadow:0 2px 8px #0003}.preset-swatch-shine{background:linear-gradient(#ffffff4d 0%,#fff0 100%);height:50%;position:absolute;top:0;left:0;right:0}.preset-item:hover .preset-swatch{transform:scale(1.1)}.preset-name{color:var(--text-muted);font-size:.65rem}.sliders-container{background:var(--surface);border:1px solid var(--border-soft);border-radius:.75rem;flex-direction:column;gap:1rem;padding:1rem;display:flex}.slider-group{flex-direction:column;gap:.5rem;display:flex}.slider-header{justify-content:space-between;align-items:center;display:flex}.slider-label{color:var(--text-muted);font-size:.75rem;font-weight:500}.slider-value{color:var(--nebula-accent);font-family:SF Mono,Fira Code,monospace;font-size:.7rem;font-weight:600}.theme-slider{height:8px;position:relative}.theme-slider input[type=range]{appearance:none;cursor:pointer;background:0 0;outline:none;width:100%;height:100%;position:absolute}.theme-slider input[type=range]::-webkit-slider-thumb{appearance:none;border:3px solid var(--nebula-accent);cursor:grab;background:#fff;border-radius:50%;width:20px;height:20px;margin-top:-6px;transition:transform .15s,box-shadow .15s;box-shadow:0 2px 8px #0000004d}.theme-slider input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15);box-shadow:0 3px 12px #0006}.theme-slider input[type=range]::-webkit-slider-thumb:active{cursor:grabbing;transform:scale(1.05)}.hue-slider input[type=range]{background:linear-gradient(90deg,red,#ff0,#0f0,#0ff,#00f,#f0f,red);border-radius:4px}.saturation-slider input[type=range],.lightness-slider input[type=range]{border-radius:4px}.theme-slider input[type=range]::-moz-range-thumb{border:3px solid var(--nebula-accent);cursor:grab;background:#fff;border-radius:50%;width:20px;height:20px;box-shadow:0 2px 8px #0000004d}.theme-reset-btn{border:1px solid var(--border-soft);width:100%;color:var(--text-muted);cursor:pointer;background:0 0;border-radius:.625rem;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1rem;font-size:.85rem;transition:all .2s;display:flex}.theme-reset-btn svg{width:18px;height:18px}.theme-reset-btn:hover{border-color:var(--nebula-accent);color:var(--nebula-accent)}.theme-drawer-footer{border-top:1px solid var(--border-soft);text-align:center;flex-shrink:0;padding:1rem 1.5rem}.theme-drawer-footer p{color:var(--text-subtle);font-size:.7rem}@media (width<=480px){.theme-drawer{width:100vw}.preset-grid{grid-template-columns:repeat(4,1fr)}}.engineer-embed-wrapper{border:1px solid var(--border-soft);background:var(--surface);border-radius:16px;margin:0 auto;position:relative;overflow:hidden;box-shadow:0 8px 32px #00000040}.engineer-embed-header{background:var(--surface-strong);border-bottom:1px solid var(--border-soft);align-items:center;gap:.75rem;padding:.75rem 1rem;display:flex}.engineer-embed-dots{flex-shrink:0;gap:.4rem;display:flex}.engineer-embed-dots span{background:var(--border-soft);border-radius:50%;width:.65rem;height:.65rem}.engineer-embed-dots span:first-child{background:#ff5f57}.engineer-embed-dots span:nth-child(2){background:#ffbd2e}.engineer-embed-dots span:nth-child(3){background:#28ca41}.engineer-embed-url{text-align:center;color:var(--text-muted);background:var(--surface);border:1px solid var(--border-soft);border-radius:6px;flex:1;padding:.25rem .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.78rem}.engineer-embed-open{width:1.75rem;height:1.75rem;color:var(--text-muted);border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:color .15s,background .15s;display:flex}.engineer-embed-open:hover{color:var(--text-primary);background:var(--surface-hover)}.engineer-resize-handle{cursor:nwse-resize;opacity:0;z-index:10;justify-content:center;align-items:center;width:20px;height:20px;transition:opacity .2s;display:flex;position:absolute;bottom:0;right:0}.engineer-embed-wrapper:hover .engineer-resize-handle{opacity:1}.engineer-resize-handle:before{content:"";border-right:2px solid var(--nebula-accent);border-bottom:2px solid var(--nebula-accent);opacity:.6;width:8px;height:8px;transition:opacity .2s,transform .2s;position:absolute;bottom:4px;right:4px}.engineer-resize-handle:hover:before,.engineer-resize-handle-active:before{opacity:1;transform:scale(1.2)}.engineer-resize-indicator{background:var(--nebula-accent);color:#fff;opacity:0;pointer-events:none;white-space:nowrap;border-radius:4px;padding:4px 8px;font-size:.75rem;font-weight:600;transition:opacity .2s;position:absolute;bottom:24px;right:4px}.engineer-resize-handle-active .engineer-resize-indicator{opacity:1}.engineer-iframe{opacity:0;border:none;width:100%;height:100%;transition:opacity .3s;display:block}.engineer-iframe-loaded{opacity:1}.engineer-embed-loading{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:1rem;font-size:.9rem;display:flex}.engineer-embed-spinner{border:2px solid var(--border-soft);border-top-color:var(--nebula-accent);border-radius:50%;width:2rem;height:2rem;animation:.8s linear infinite engineer-spin}@keyframes engineer-spin{to{transform:rotate(360deg)}}.engineer-embed-fallback{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex}.light-theme .engineer-embed-dots span:first-child{background:#ff5f57}.light-theme .engineer-embed-dots span:nth-child(2){background:#ffbd2e}.light-theme .engineer-embed-dots span:nth-child(3){background:#28ca41}.light-theme .engineer-embed-wrapper{border-color:#e5e7eb;box-shadow:0 8px 32px #00000014}@media (width<=768px){.engineer-iframe,.engineer-embed-loading,.engineer-embed-fallback{height:60vh}}.unlock-overlay{z-index:1000;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.unlock-backdrop{background:linear-gradient(135deg, rgba(var(--nebula-dark-rgb,20, 20, 19), .95) 0%, rgba(var(--nebula-dark-rgb,20, 20, 19), .98) 100%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);position:absolute;inset:0}.light-theme .unlock-backdrop{background:linear-gradient(135deg,#faf9f5f5 0%,#faf9f5fa 100%)}.unlock-card{background:var(--surface-strong);border:1px solid var(--border-soft);text-align:center;border-radius:1.25rem;width:100%;max-width:420px;padding:2.5rem 2rem 2rem;position:relative;box-shadow:0 24px 70px #0006}.light-theme .unlock-card{background:var(--surface-strong);box-shadow:0 24px 70px #0000001f}.unlock-close-btn{width:2rem;height:2rem;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;transition:all .2s;display:flex;position:absolute;top:1rem;right:1rem}.unlock-close-btn:hover{background:var(--surface);color:var(--text-primary)}.unlock-icon-wrapper{justify-content:center;margin-bottom:1.5rem;display:flex}.unlock-icon-bg{background:linear-gradient(135deg, var(--nebula-accent), var(--nebula-purple));border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex;box-shadow:0 8px 24px #d977574d}.unlock-title{color:var(--text-primary);margin-bottom:.75rem;font-family:Noto Serif SC,Georgia,serif;font-size:1.5rem;font-weight:700}.unlock-description{color:var(--text-muted);margin-bottom:1.5rem;font-size:.95rem;line-height:1.6}.unlock-preview{background:var(--surface);border:1px solid var(--border-soft);border-radius:.75rem;max-height:120px;margin-bottom:1.5rem;padding:1rem;position:relative;overflow:hidden}.unlock-preview p{color:var(--text-muted);margin:0;font-size:.9rem;line-height:1.7}.unlock-preview-fade{background:linear-gradient(to bottom, transparent, var(--surface-strong));height:60px;position:absolute;bottom:0;left:0;right:0}.light-theme .unlock-preview-fade{background:linear-gradient(#0000,#fffdfa)}.unlock-form{flex-direction:column;gap:.75rem;display:flex}.unlock-input-wrapper{position:relative}.unlock-input{background:var(--surface);border:1.5px solid var(--border-soft);width:100%;color:var(--text-primary);text-align:center;border-radius:.75rem;padding:.875rem 1rem;font-size:1rem;transition:all .2s}.unlock-input::placeholder{color:var(--text-subtle)}.unlock-input:focus{border-color:var(--nebula-accent);outline:none;box-shadow:0 0 0 3px #d9775726}.unlock-input-error{border-color:#ef4444;animation:.4s shake}.unlock-input-error:focus{border-color:#ef4444;box-shadow:0 0 0 3px #ef444426}@keyframes shake{0%,to{transform:translate(0)}20%,60%{transform:translate(-6px)}40%,80%{transform:translate(6px)}}.unlock-error{color:#ef4444;justify-content:center;align-items:center;gap:.4rem;font-size:.85rem;display:flex}.unlock-button{background:linear-gradient(135deg, var(--nebula-accent), var(--nebula-purple));color:#fff;cursor:pointer;border:none;border-radius:.75rem;justify-content:center;align-items:center;gap:.5rem;width:100%;padding:.875rem 1.5rem;font-size:1rem;font-weight:600;transition:all .2s;display:flex}.unlock-button:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #d9775759}.unlock-button:active:not(:disabled){transform:translateY(0)}.unlock-button:disabled{opacity:.6;cursor:not-allowed}.unlock-spinner{border:2px solid #ffffff4d;border-top-color:#fff;border-radius:50%;width:1.25rem;height:1.25rem;animation:.7s linear infinite spin}.unlock-hint{color:var(--text-subtle);margin-top:1.5rem;font-size:.8rem}.unlock-sentinel{z-index:10;height:1px;margin-top:-1px;position:relative}.unlock-content-fade{background:linear-gradient(to bottom, transparent 0%, var(--surface-strong) 40%, var(--surface-strong) 100%);pointer-events:none;z-index:5;margin-top:-120px;padding-top:120px;position:relative}.light-theme .unlock-content-fade{background:linear-gradient(#0000 0%,#fffaf2 40% 100%)}.unlock-qr-button{width:100%;color:var(--text-muted);border:1px solid var(--border-soft);cursor:pointer;background:0 0;border-radius:.5rem;justify-content:center;align-items:center;gap:.5rem;margin-top:.75rem;padding:.625rem 1rem;font-size:.85rem;transition:all .2s;display:flex}.unlock-qr-button:hover{background:var(--surface);color:var(--nebula-accent);border-color:var(--nebula-accent)}.unlock-qr-section{flex-direction:column;align-items:center;gap:1rem;margin-bottom:.5rem;display:flex}.unlock-qr-wrapper{border:1px solid var(--border-soft);background:#fff;border-radius:.75rem;width:160px;height:160px;overflow:hidden}.unlock-qr-image{-o-object-fit:contain;object-fit:contain;width:100%;height:100%}.unlock-qr-placeholder{width:100%;height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex}.unlock-qr-placeholder p{font-size:.8rem}.unlock-qr-hint{color:var(--text-muted);text-align:center;font-size:.9rem;line-height:1.6}.unlock-qr-hint strong{color:var(--nebula-accent)}@media (width<=480px){.unlock-card{padding:2rem 1.5rem 1.5rem}.unlock-title{font-size:1.3rem}}.last\:mb-0:last-child{margin-bottom:0}.hover\:scale-105:hover{--tw-scale-x:1.05;--tw-scale-y:1.05;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-cyan-500\/50:hover{border-color:#06b6d480}.hover\:border-pink-500\/30:hover{border-color:#ec48994d}.hover\:border-purple-500\/30:hover{border-color:#a855f74d}.hover\:bg-nebula-accent\/90:hover{background-color:#e94560e6}.hover\:bg-white\/10:hover{background-color:#ffffff1a}.hover\:text-blue-300:hover{--tw-text-opacity:1;color:rgb(147 197 253/var(--tw-text-opacity,1))}.hover\:text-cyan-400:hover{--tw-text-opacity:1;color:rgb(34 211 238/var(--tw-text-opacity,1))}.hover\:text-nebula-accent:hover{--tw-text-opacity:1;color:rgb(233 69 96/var(--tw-text-opacity,1))}.hover\:text-pink-400:hover{--tw-text-opacity:1;color:rgb(244 114 182/var(--tw-text-opacity,1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:decoration-blue-300:hover{text-decoration-color:#93c5fd}.disabled\:cursor-not-allowed:disabled{cursor:not-allowed}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:w-full{width:100%}.group:hover .group-hover\:scale-110{--tw-scale-x:1.1;--tw-scale-y:1.1;transform:translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.group:hover .group-hover\:border-white\/60{border-color:#fff9}.group:hover .group-hover\:from-nebula-purple\/20{--tw-gradient-from:#1a1a2e33 var(--tw-gradient-from-position);--tw-gradient-to:#1a1a2e00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to)}.group:hover .group-hover\:via-nebula-blue\/20{--tw-gradient-to:#16213e00 var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from), #16213e33 var(--tw-gradient-via-position), var(--tw-gradient-to)}.group:hover .group-hover\:to-nebula-accent\/20{--tw-gradient-to:#e9456033 var(--tw-gradient-to-position)}.group:hover .group-hover\:text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity,1))}.group:hover .group-hover\:opacity-100{opacity:1}.group:hover .group-hover\:brightness-125{--tw-brightness:brightness(1.25);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}@media (width>=640px){.sm\:inline{display:inline}.sm\:flex-row{flex-direction:row}}@media (width>=768px){.md\:inline{display:inline}.md\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:gap-8{gap:2rem}.md\:p-8{padding:2rem}.md\:text-5xl{font-size:3rem;line-height:1}.md\:text-7xl{font-size:4.5rem;line-height:1}}@media (width>=1024px){.lg\:block{display:block}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width>=1280px){.xl\:block{display:block}.xl\:hidden{display:none}}
