*,*:before,*:after{box-sizing:border-box}:root{--bg-page: #ffffff;--text-main: #1a1a1a;--text-secondary: #666666;--text-body: #374151;--text-muted: #6b7280;--placeholder-text: #9ca3af;--section-divider: #e1e5e9;--bg-surface: #ffffff;--bg-surface-alt: #f9f9f9;--bg-surface-hover: #f9fafb;--panel-bg: #ffffff;--panel-header-bg: #f9f9f9;--panel-border: #ececec;--border-color: #e5e7eb;--border-color-strong: #d1d5db;--border-color-subtle: #ececec;--border-color-muted: #ddd;--border-color-menu: #e3e3e3;--chip-bg: #f8fafc;--chip-bg-hover: #f3f4f6;--chip-border: #e5e7eb;--chip-border-hover: #d1d5db;--chip-kicker: #6b7280;--chip-value: #0f172a;--muted: #6b7280;--accent: #0f172a;--pill-idle-bg: #e5e7eb;--pill-idle-text: #6b7280;--pill-ready-bg: #dcfce7;--pill-ready-bg-hover: #bbf7d0;--pill-ready-text: #16a34a;--pill-busy-bg: #fef3c7;--pill-busy-text: #d97706;--pill-stop-bg: #fee2e2;--pill-stop-bg-hover: #fecaca;--pill-stop-text: #dc2626;--btn-run-idle-bg: #f3f4f6;--btn-run-idle-text: #9ca3af;--btn-run-active-bg: #d1fae5;--btn-run-active-hover-bg: #bbf7d0;--btn-run-active-text: #10b981;--btn-del-bg: #fee2e2;--btn-del-hover-bg: #fecaca;--btn-del-text: #dc2626;--button-neutral-bg: #e5e7eb;--button-neutral-hover-bg: #dddde1;--badge-bg: #f3f4f6;--badge-text: #6b7280;--insert-hover-bg: #f0f0f0;--action-btn-bg: #ffffff;--action-btn-border: #d1d5db;--action-btn-hover-bg: #f9fafb;--action-btn-hover-border: #9ca3af;--action-text-hover-bg: #eff6ff;--action-text-hover-border: #3b82f6;--action-text-hover-color: #3b82f6;--action-image-hover-bg: #f0fdf4;--action-image-hover-border: #22c55e;--action-image-hover-color: #22c55e;--action-comment-hover-bg: #fef3c7;--action-comment-hover-border: #facc15;--action-comment-hover-color: #ca8a04;--action-code-hover-bg: #e5e4e4;--action-code-hover-border: #000000;--action-code-hover-color: #000000;--output-bg: #f3f4f6;--output-text: #374151;--output-border: #e5e7eb;--output-tools-bg: #e5e7eb;--output-tools-text: #6b7280;--dropdown-bg: #ffffff;--dropdown-border: #e3e3e3;--dropdown-hover-bg: #f5f7fb;--dropdown-text: #333333;--dropdown-item-hover-bg: #f0f0f0;--accent-blue-bg: #3b82f6;--accent-blue-bg-hover: #2563eb;--accent-green-bg: #22c55e;--accent-green-bg-hover: #16a34a;--accent-red-bg: #ef4444;--accent-red-bg-hover: #dc2626;--comment-edit-bg: #f9f9f9;--comment-edit-border: #ddd;--comment-edit-text: #000000;--comment-preview-bg: #fef9c3;--comment-preview-border: #ccc;--comment-preview-accent: #facc15;--comment-preview-code-bg: #f5f5f5;--toast-bg: #ffffff;--toast-border: #e5e7eb;--toast-shadow: rgba(0, 0, 0, .12);--success-bg: #ecfdf5;--success-border: #a7f3d0;--success-text: #065f46;--error-bg: #fef2f2;--error-border: #fecaca;--error-text: #991b1b;--quota-text: #374151;--progress-track-bg: #f3f4f6;--progress-border: #e5e7eb;--progress-ok-bg: #22c55e;--progress-warn-bg: #f59e0b;--progress-danger-bg: #ef4444;--spinner-ring-border: #fca5a5;--spinner-ring-top: #dc2626;--trash-text: #b91c1c;--md-toolbar-btn-bg: #f0f0f0;--md-toolbar-btn-border: #ccc;--md-toolbar-btn-hover-bg: #e0e0e0;--caret-color: #000;--scrollbar-track-bg: #e5e7eb;--scrollbar-thumb-bg: #9ca3af;--scrollbar-thumb-hover-bg: #6b7280;--mono-bg: #ffffff;--mono-fg: #000000;--mono-border: #000000;--modal-surface: var(--bg-surface, #f6f7f9);--modal-surface-2: var(--bg-surface-alt, #eef0f4);--modal-text: var(--text-main, #0f172a);--modal-text-muted: var(--text-secondary, #475569);--modal-border: var(--border-color, #d1d5db);--modal-hover: #eceff3;--modal-backdrop: rgba(17, 24, 39, .35)}:root[data-theme=dark]{--bg-page: #0f172a;--text-main: #f8fafc;--text-secondary: #94a3b8;--text-body: #e2e8f0;--text-muted: #94a3b8;--placeholder-text: #9ca3af;--section-divider: #334155;--bg-surface: #1e2535;--bg-surface-alt: #1e293b;--bg-surface-hover: #334155;--panel-bg: #1e293b;--panel-header-bg: #1e2535;--panel-border: #475569;--border-color: #334155;--border-color-strong: #475569;--border-color-subtle: #475569;--border-color-muted: #475569;--border-color-menu: #475569;--chip-bg: #1e293b;--chip-bg-hover: #334155;--chip-border: #475569;--chip-border-hover: #64748b;--chip-kicker: #94a3b8;--chip-value: #f8fafc;--muted: #94a3b8;--accent: #f8fafc;--pill-idle-bg: #334155;--pill-idle-text: #94a3b8;--pill-ready-bg: #064e3b;--pill-ready-bg-hover: #065f46;--pill-ready-text: #6ee7b7;--pill-busy-bg: #78350f;--pill-busy-text: #fde68a;--pill-stop-bg: #4c1d1d;--pill-stop-bg-hover: #7f1d1d;--pill-stop-text: #fca5a5;--btn-run-idle-bg: #334155;--btn-run-idle-text: #9ca3af;--btn-run-active-bg: #065f46;--btn-run-active-hover-bg: #047857;--btn-run-active-text: #6ee7b7;--btn-del-bg: #4c1d1d;--btn-del-hover-bg: #7f1d1d;--btn-del-text: #fca5a5;--button-neutral-bg: #334155;--button-neutral-hover-bg: #475569;--badge-bg: #334155;--badge-text: #94a3b8;--insert-hover-bg: #334155;--action-btn-bg: #1e2535;--action-btn-border: #475569;--action-btn-hover-bg: #334155;--action-btn-hover-border: #94a3b8;--action-text-hover-bg: rgba(59, 130, 246, .15);--action-text-hover-border: #3b82f6;--action-text-hover-color: #3b82f6;--action-image-hover-bg: rgba(34, 197, 94, .15);--action-image-hover-border: #22c55e;--action-image-hover-color: #22c55e;--action-comment-hover-bg: rgba(250, 204, 21, .15);--action-comment-hover-border: #facc15;--action-comment-hover-color: #fde68a;--action-code-hover-bg: #334155;--action-code-hover-border: #f8fafc;--action-code-hover-color: #f8fafc;--output-bg: #1e293b;--output-text: #e2e8f0;--output-border: #334155;--output-tools-bg: #334155;--output-tools-text: #94a3b8;--dropdown-bg: #1e293b;--dropdown-border: #475569;--dropdown-hover-bg: #334155;--dropdown-text: #f8fafc;--dropdown-item-hover-bg: #334155;--accent-blue-bg: #3b82f6;--accent-blue-bg-hover: #2563eb;--accent-green-bg: #22c55e;--accent-green-bg-hover: #16a34a;--accent-red-bg: #ef4444;--accent-red-bg-hover: #dc2626;--comment-edit-bg: #1e2535;--comment-edit-border: #475569;--comment-edit-text: #f8fafc;--comment-preview-bg: #3f3f46;--comment-preview-border: #71717a;--comment-preview-accent: #facc15;--comment-preview-code-bg: #334155;--toast-bg: #1e293b;--toast-border: #475569;--toast-shadow: rgba(0, 0, 0, .8);--success-bg: #065f46;--success-border: #047857;--success-text: #6ee7b7;--error-bg: #7f1d1d;--error-border: #dc2626;--error-text: #fca5a5;--quota-text: #e2e8f0;--progress-track-bg: #334155;--progress-border: #475569;--progress-ok-bg: #22c55e;--progress-warn-bg: #f59e0b;--progress-danger-bg: #ef4444;--spinner-ring-border: #fca5a5;--spinner-ring-top: #dc2626;--trash-text: #fca5a5;--md-toolbar-btn-bg: #334155;--md-toolbar-btn-border: #475569;--md-toolbar-btn-hover-bg: #475569;--caret-color: #fff;--scrollbar-track-bg: #1e293b;--scrollbar-thumb-bg: #475569;--scrollbar-thumb-hover-bg: #64748b;--mono-bg: #000000;--mono-fg: #ffffff;--mono-border: #ffffff;--modal-surface: var( --bg-surface, #0f141b );--modal-surface-2: var(--bg-surface-alt, #131a24);--modal-text: var(--text-main, #e5e7eb);--modal-text-muted: var(--text-secondary, #a8b0bf);--modal-border: var(--border-color, #253041);--modal-hover: #1a2230;--modal-backdrop: rgba(0, 0, 0, .55)}body{margin:0;padding:0;min-width:320px;min-height:100vh;background-color:var(--bg-page);color:var(--text-main);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.5;font-weight:400;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-color:var(--scrollbar-thumb-bg) var(--scrollbar-track-bg);scrollbar-width:thin}a{font-weight:500;color:var(--accent-blue-bg);text-decoration:none}a:hover{text-decoration:underline}h1{font-size:2.25rem;line-height:1.3;margin-bottom:.5rem;color:var(--text-main)}button{font-family:inherit;color:inherit;background:transparent;border:none;cursor:pointer}.app-surface{background-color:var(--bg-surface);color:var(--text-main);border:1px solid var(--border-color)}.app-surface-alt{background-color:var(--bg-surface-alt);color:var(--text-main);border:1px solid var(--border-color)}.border-default{border-color:var(--border-color)}.border-strong{border-color:var(--border-color-strong)}html,body,#root,.output-block,.files-panel-body,.editor-textarea{scrollbar-color:var(--scrollbar-thumb-bg) var(--scrollbar-track-bg);scrollbar-width:thin}html::-webkit-scrollbar,body::-webkit-scrollbar,#root::-webkit-scrollbar,.output-block::-webkit-scrollbar,.files-panel-body::-webkit-scrollbar,.editor-textarea::-webkit-scrollbar{width:8px;height:8px}html::-webkit-scrollbar-track,body::-webkit-scrollbar-track,#root::-webkit-scrollbar-track,.output-block::-webkit-scrollbar-track,.files-panel-body::-webkit-scrollbar-track,.editor-textarea::-webkit-scrollbar-track{background-color:var(--scrollbar-track-bg);border-radius:999px}html::-webkit-scrollbar-thumb,body::-webkit-scrollbar-thumb,#root::-webkit-scrollbar-thumb,.output-block::-webkit-scrollbar-thumb,.files-panel-body::-webkit-scrollbar-thumb,.editor-textarea::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb-bg);border-radius:999px;border:2px solid var(--scrollbar-track-bg)}html::-webkit-scrollbar-thumb:hover,body::-webkit-scrollbar-thumb:hover,#root::-webkit-scrollbar-thumb:hover,.output-block::-webkit-scrollbar-thumb:hover,.files-panel-body::-webkit-scrollbar-thumb:hover,.editor-textarea::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover-bg)}.highlighter-container{margin:0;padding:8px 12px;font-family:Fira Code,monospace;font-size:14px;line-height:20px;white-space:pre;box-sizing:border-box;position:absolute;top:0;left:0;width:max-content;height:100%;z-index:1;pointer-events:none}.highlighter-container.placeholder{font-style:italic;opacity:.5}.highlighter-theme-light{color:#2d2d2d;background:transparent}.highlighter-theme-light.placeholder{color:#999;font-style:italic}.highlighter-theme-light span[data-token=token-string]{color:#0550ae}.highlighter-theme-light span[data-token=token-comment]{color:#6a737d;font-style:italic}.highlighter-theme-light span[data-token=token-decorator]{color:#a333c8;font-weight:700}.highlighter-theme-light span[data-token^=token-control],.highlighter-theme-light span[data-token=token-return],.highlighter-theme-light span[data-token=token-yield]{color:#d73a49;font-weight:700}.highlighter-theme-light span[data-token^=token-loop]{color:#0969da;font-weight:600}.highlighter-theme-light span[data-token=token-def],.highlighter-theme-light span[data-token=token-class]{color:#9b59b6;font-weight:700}.highlighter-theme-light span[data-token=token-function-name]{color:#005cc5;font-weight:600}.highlighter-theme-light span[data-token=token-class-name]{color:#cf7500;font-weight:600}.highlighter-theme-light span[data-token^=token-exception]{color:#e36209;font-weight:700}.highlighter-theme-light span[data-token=token-assert]{color:#b33a3a}.highlighter-theme-light span[data-token=token-import],.highlighter-theme-light span[data-token=token-from],.highlighter-theme-light span[data-token=token-as]{color:#0e8a16;font-weight:600}.highlighter-theme-light span[data-token=token-async],.highlighter-theme-light span[data-token=token-await]{color:#22863a;font-weight:700}.highlighter-theme-light span[data-token=token-and],.highlighter-theme-light span[data-token=token-or],.highlighter-theme-light span[data-token=token-not]{color:#d73a49}.highlighter-theme-light span[data-token=token-self],.highlighter-theme-light span[data-token=token-cls]{color:#b08800;font-style:italic}.highlighter-theme-light span[data-token=token-boolean],.highlighter-theme-light span[data-token=token-none]{color:#005cc5;font-weight:700}.highlighter-theme-light span[data-token^=token-builtin]{color:#6f42c1}.highlighter-theme-light span[data-token=token-variable-name],.highlighter-theme-light span[data-token=token-identifier]{color:#24292e}.highlighter-theme-light span[data-token=token-number-int],.highlighter-theme-light span[data-token=token-number-float]{color:#005cc5;font-weight:600}.highlighter-theme-light span[data-token^=token-op]{color:#444d56}.highlighter-theme-light span[data-token^=token-lib]{color:#0a7b83;font-weight:600}.highlighter-theme-light span[data-token=token-brace],.highlighter-theme-light span[data-token=token-paren],.highlighter-theme-light span[data-token=token-bracket],.highlighter-theme-light span[data-token=token-comma],.highlighter-theme-light span[data-token=token-colon],.highlighter-theme-light span[data-token=token-dot]{color:#57606a}.highlighter-theme-light span[data-token=token-magic]{color:#0969da;font-style:italic}.highlighter-theme-neon{color:#e0e0e0;background:#0a0e27;text-shadow:0 0 2px rgba(224,224,224,.3)}.highlighter-theme-neon.placeholder{color:#666}.highlighter-theme-neon span[data-token=token-string]{color:#7df9ff;text-shadow:0 0 5px rgba(125,249,255,.5),0 0 10px rgba(125,249,255,.3)}.highlighter-theme-neon span[data-token=token-comment]{color:#6a7b8c;font-style:italic;opacity:.7}.highlighter-theme-neon span[data-token=token-decorator]{color:#ff6ec7;font-weight:700;text-shadow:0 0 8px rgba(255,110,199,.6),0 0 15px rgba(255,110,199,.4)}.highlighter-theme-neon span[data-token=token-control-if]{color:#ff2e97;font-weight:700;text-shadow:0 0 10px rgba(255,46,151,.8),0 0 20px rgba(255,46,151,.4),0 0 30px rgba(255,46,151,.2)}.highlighter-theme-neon span[data-token=token-control-match]{color:#ff1744;font-weight:700;text-shadow:0 0 10px rgba(255,23,68,.8),0 0 20px rgba(255,23,68,.4)}.highlighter-theme-neon span[data-token=token-loop-for]{color:#00e5ff;font-weight:700;text-shadow:0 0 10px rgba(0,229,255,.8),0 0 20px rgba(0,229,255,.5),0 0 30px rgba(0,229,255,.3)}.highlighter-theme-neon span[data-token=token-loop-while]{color:#18ffff;font-weight:700;text-shadow:0 0 10px rgba(24,255,255,.8),0 0 20px rgba(24,255,255,.5)}.highlighter-theme-neon span[data-token=token-loop-control]{color:#64ffda;font-weight:700;text-shadow:0 0 8px rgba(100,255,218,.7),0 0 15px rgba(100,255,218,.4)}.highlighter-theme-neon span[data-token=token-def]{color:#b388ff;font-weight:700;text-shadow:0 0 10px rgba(179,136,255,.8),0 0 20px rgba(179,136,255,.5),0 0 30px rgba(179,136,255,.3)}.highlighter-theme-neon span[data-token=token-class]{color:#d396ff;font-weight:700;text-shadow:0 0 10px rgba(211,150,255,.8),0 0 20px rgba(211,150,255,.5)}.highlighter-theme-neon span[data-token=token-return]{color:#ff4081;font-weight:700;text-shadow:0 0 10px rgba(255,64,129,.8),0 0 20px rgba(255,64,129,.4)}.highlighter-theme-neon span[data-token=token-yield]{color:#ff80ab;font-weight:700;text-shadow:0 0 8px rgba(255,128,171,.7),0 0 15px rgba(255,128,171,.4)}.highlighter-theme-neon span[data-token=token-lambda]{color:#ea80fc;font-weight:700;text-shadow:0 0 8px rgba(234,128,252,.7),0 0 15px rgba(234,128,252,.4)}.highlighter-theme-neon span[data-token=token-exception-try]{color:#ffab40;font-weight:700;text-shadow:0 0 10px rgba(255,171,64,.8),0 0 20px rgba(255,171,64,.4)}.highlighter-theme-neon span[data-token=token-exception-finally]{color:#ff9100;font-weight:700;text-shadow:0 0 8px rgba(255,145,0,.7),0 0 15px rgba(255,145,0,.4)}.highlighter-theme-neon span[data-token=token-exception-raise]{color:#ff3d00;font-weight:700;text-shadow:0 0 10px rgba(255,61,0,.9),0 0 20px rgba(255,61,0,.5),0 0 30px rgba(255,61,0,.3)}.highlighter-theme-neon span[data-token=token-assert]{color:#ff6e40;font-weight:700;text-shadow:0 0 8px rgba(255,110,64,.7),0 0 15px rgba(255,110,64,.4)}.highlighter-theme-neon span[data-token=token-import]{color:#1de9b6;font-weight:700;text-shadow:0 0 10px rgba(29,233,182,.8),0 0 20px rgba(29,233,182,.5)}.highlighter-theme-neon span[data-token=token-from]{color:#64ffda;font-weight:700;text-shadow:0 0 8px rgba(100,255,218,.7),0 0 15px rgba(100,255,218,.4)}.highlighter-theme-neon span[data-token=token-as]{color:#a7ffeb;font-weight:700;text-shadow:0 0 6px rgba(167,255,235,.6)}.highlighter-theme-neon span[data-token=token-async]{color:#69f0ae;font-weight:700;text-shadow:0 0 10px rgba(105,240,174,.8),0 0 20px rgba(105,240,174,.5)}.highlighter-theme-neon span[data-token=token-await]{color:#b9f6ca;font-weight:700;text-shadow:0 0 8px rgba(185,246,202,.7),0 0 15px rgba(185,246,202,.4)}.highlighter-theme-neon span[data-token=token-and]{color:#f48fb1;font-weight:400;text-shadow:0 0 6px rgba(244,143,177,.6)}.highlighter-theme-neon span[data-token=token-or]{color:#f8bbd0;font-weight:400;text-shadow:0 0 6px rgba(248,187,208,.6)}.highlighter-theme-neon span[data-token=token-not]{color:#ff5252;font-weight:400;text-shadow:0 0 8px rgba(255,82,82,.7)}.highlighter-theme-neon span[data-token=token-in]{color:#b388ff;font-weight:400;text-shadow:0 0 6px rgba(179,136,255,.6)}.highlighter-theme-neon span[data-token=token-is]{color:#d1c4e9;font-weight:400;text-shadow:0 0 6px rgba(209,196,233,.6)}.highlighter-theme-neon span[data-token=token-global]{color:#ff1744;font-weight:700;text-shadow:0 0 10px rgba(255,23,68,.9),0 0 20px rgba(255,23,68,.5)}.highlighter-theme-neon span[data-token=token-nonlocal]{color:#ff6e40;font-weight:700;text-shadow:0 0 8px rgba(255,110,64,.8)}.highlighter-theme-neon span[data-token=token-with]{color:#00e676;font-weight:700;text-shadow:0 0 10px rgba(0,230,118,.8),0 0 20px rgba(0,230,118,.4)}.highlighter-theme-neon span[data-token=token-pass]{color:#616161;font-weight:700;opacity:.8}.highlighter-theme-neon span[data-token=token-del]{color:#ff5252;font-weight:700;text-shadow:0 0 8px rgba(255,82,82,.7)}.highlighter-theme-neon span[data-token=token-self]{color:#ffd740;font-style:italic;text-shadow:0 0 8px rgba(255,215,64,.7),0 0 15px rgba(255,215,64,.4)}.highlighter-theme-neon span[data-token=token-cls]{color:#ffea00;font-style:italic;text-shadow:0 0 8px rgba(255,234,0,.7),0 0 15px rgba(255,234,0,.4)}.highlighter-theme-neon span[data-token=token-boolean]{color:#00e5ff;font-weight:700;text-shadow:0 0 10px rgba(0,229,255,.9),0 0 20px rgba(0,229,255,.5),0 0 30px rgba(0,229,255,.3)}.highlighter-theme-neon span[data-token=token-none]{color:#78909c;font-weight:700;text-shadow:0 0 6px rgba(120,144,156,.6)}.highlighter-theme-neon span[data-token=token-builtin-type]{color:#e040fb;font-weight:600;text-shadow:0 0 8px rgba(224,64,251,.7),0 0 15px rgba(224,64,251,.4)}.highlighter-theme-neon span[data-token=token-builtin-io]{color:#00e676;font-weight:600;text-shadow:0 0 8px rgba(0,230,118,.7),0 0 15px rgba(0,230,118,.4)}.highlighter-theme-neon span[data-token=token-builtin-iter]{color:#00b0ff;font-weight:600;text-shadow:0 0 8px rgba(0,176,255,.7),0 0 15px rgba(0,176,255,.4)}.highlighter-theme-neon span[data-token=token-builtin-collection]{color:#ffd600;font-weight:600;text-shadow:0 0 8px rgba(255,214,0,.7),0 0 15px rgba(255,214,0,.4)}.highlighter-theme-neon span[data-token=token-builtin-introspection]{color:#d1c4e9;font-weight:600;text-shadow:0 0 6px rgba(209,196,233,.6)}.highlighter-theme-neon span[data-token=token-builtin-object]{color:#ff80ab;font-weight:600;text-shadow:0 0 8px rgba(255,128,171,.7),0 0 15px rgba(255,128,171,.4)}.highlighter-theme-neon span[data-token=token-builtin-math]{color:#ff6e40;font-weight:600;text-shadow:0 0 8px rgba(255,110,64,.7),0 0 15px rgba(255,110,64,.4)}.highlighter-theme-neon span[data-token=token-builtin-conversion]{color:#40c4ff;font-weight:600;text-shadow:0 0 8px rgba(64,196,255,.7),0 0 15px rgba(64,196,255,.4)}.highlighter-theme-neon span[data-token=token-builtin-other]{color:#90caf9;font-weight:600;text-shadow:0 0 6px rgba(144,202,249,.6)}.highlighter-theme-neon span[data-token=token-lib-datascience]{color:#1de9b6;font-weight:700;text-shadow:0 0 10px rgba(29,233,182,1),0 0 20px rgba(29,233,182,.6),0 0 30px rgba(29,233,182,.4)}.highlighter-theme-neon span[data-token=token-lib-ml]{color:#ff4081;font-weight:700;text-shadow:0 0 10px rgba(255,64,129,1),0 0 20px rgba(255,64,129,.6),0 0 30px rgba(255,64,129,.4)}.highlighter-theme-neon span[data-token=token-lib-web]{color:#f50057;font-weight:700;text-shadow:0 0 10px rgba(245,0,87,.9),0 0 20px rgba(245,0,87,.5)}.highlighter-theme-neon span[data-token=token-lib-stdlib]{color:#448aff;font-weight:700;text-shadow:0 0 8px rgba(68,138,255,.8),0 0 15px rgba(68,138,255,.4)}.highlighter-theme-neon span[data-token=token-lib-alias]{color:#18ffff;font-weight:700;text-shadow:0 0 10px rgba(24,255,255,.9),0 0 20px rgba(24,255,255,.5),0 0 30px rgba(24,255,255,.3)}.highlighter-theme-neon span[data-token=token-class-name]{color:#ff9e80;font-weight:700;text-shadow:0 0 10px rgba(255,158,128,.8),0 0 20px rgba(255,158,128,.5)}.highlighter-theme-neon span[data-token=token-function-name]{color:#b388ff;font-weight:600;text-shadow:0 0 8px rgba(179,136,255,.7),0 0 15px rgba(179,136,255,.4)}.highlighter-theme-neon span[data-token=token-variable-name]{color:#ff0;text-shadow:0 0 8px rgba(255,255,0,.7),0 0 15px rgba(255,255,0,.4)}.highlighter-theme-neon span[data-token=token-identifier]{color:#ffff8d;text-shadow:0 0 4px rgba(255,255,141,.4)}.highlighter-theme-neon span[data-token=token-number-int]{color:#00e5ff;text-shadow:0 0 8px rgba(0,229,255,.8),0 0 15px rgba(0,229,255,.4)}.highlighter-theme-neon span[data-token=token-number-float]{color:#84ffff;text-shadow:0 0 8px rgba(132,255,255,.8),0 0 15px rgba(132,255,255,.4)}.highlighter-theme-neon span[data-token=token-op-comparison]{color:#ff5252;text-shadow:0 0 6px rgba(255,82,82,.6)}.highlighter-theme-neon span[data-token=token-op-arithmetic]{color:#ff6e40;text-shadow:0 0 6px rgba(255,110,64,.6)}.highlighter-theme-neon span[data-token=token-op-assignment]{color:#ffd740;text-shadow:0 0 6px rgba(255,215,64,.6)}.highlighter-theme-neon span[data-token=token-op-arrow]{color:#b388ff;text-shadow:0 0 6px rgba(179,136,255,.6)}.highlighter-theme-neon span[data-token=token-brace]{color:#ff2e97;text-shadow:0 0 8px rgba(255,46,151,.8)}.highlighter-theme-neon span[data-token=token-paren]{color:#90a4ae}.highlighter-theme-neon span[data-token=token-bracket]{color:#b388ff;text-shadow:0 0 6px rgba(179,136,255,.6)}.highlighter-theme-neon span[data-token=token-colon],.highlighter-theme-neon span[data-token=token-comma]{color:#e0e0e0}.highlighter-theme-neon span[data-token=token-dot]{color:#b388ff;text-shadow:0 0 4px rgba(179,136,255,.5)}.highlighter-theme-neon span[data-token=token-magic]{color:#1de9b6;font-style:italic;font-weight:700;text-shadow:0 0 12px rgba(29,233,182,1),0 0 24px rgba(29,233,182,.7),0 0 36px rgba(29,233,182,.4)}.highlighter-theme-dracula{color:#f8f8f2;background:#282a36}.highlighter-theme-dracula.placeholder{color:#6272a4;font-style:italic}.highlighter-theme-dracula span[data-token=token-string]{color:#f1fa8c}.highlighter-theme-dracula span[data-token=token-comment]{color:#6272a4;font-style:italic}.highlighter-theme-dracula span[data-token^=token-control],.highlighter-theme-dracula span[data-token=token-def],.highlighter-theme-dracula span[data-token=token-class],.highlighter-theme-dracula span[data-token=token-return]{color:#ff79c6;font-weight:700}.highlighter-theme-dracula span[data-token=token-function-name]{color:#50fa7b;font-weight:700}.highlighter-theme-dracula span[data-token=token-class-name]{color:#bd93f9;font-weight:700}.highlighter-theme-dracula span[data-token=token-variable-name]{color:#8be9fd}.highlighter-theme-dracula span[data-token^=token-number]{color:#bd93f9}.highlighter-theme-dracula span[data-token^=token-op],.highlighter-theme-dracula span[data-token^=token-dot]{color:#ffb86c}.highlighter-theme-dracula span[data-token=token-magic]{color:#50fa7b;font-style:italic}.highlighter-theme-matrix{background:#010a01;color:#00ff41;font-family:Courier New,monospace}.highlighter-theme-matrix span[data-token=token-string],.highlighter-theme-matrix span[data-token=token-fstring]{color:#6dcc93;font-weight:500;text-shadow:0 0 6px rgba(168,255,102,.6)}.highlighter-theme-matrix span[data-token=token-comment]{color:#2f8f4e;font-style:italic;opacity:.85;text-shadow:0 0 3px rgba(47,143,78,.4)}.highlighter-theme-matrix span[data-token^=token-control],.highlighter-theme-matrix span[data-token=token-def],.highlighter-theme-matrix span[data-token=token-class],.highlighter-theme-matrix span[data-token=token-return],.highlighter-theme-matrix span[data-token=token-yield],.highlighter-theme-matrix span[data-token=token-async],.highlighter-theme-matrix span[data-token=token-await],.highlighter-theme-matrix span[data-token=token-import],.highlighter-theme-matrix span[data-token=token-from]{color:#00e65c;font-weight:700;text-transform:lowercase;letter-spacing:.3px;text-shadow:0 0 7px rgba(0,230,92,.8)}.highlighter-theme-matrix span[data-token=token-function-name]{color:#66ff7a;font-weight:600;text-shadow:0 0 5px rgba(102,255,122,.7)}.highlighter-theme-matrix span[data-token=token-class-name]{color:#9f9;font-weight:700;text-decoration:underline dotted #66ff7a40;text-shadow:0 0 6px rgba(153,255,153,.6)}.highlighter-theme-matrix span[data-token^=token-builtin],.highlighter-theme-matrix span[data-token^=token-number]{color:#0f6;font-weight:500;text-shadow:0 0 8px rgba(0,255,102,.8)}.highlighter-theme-matrix span[data-token^=token-op]{color:#0c4;font-weight:600;text-shadow:0 0 5px rgba(0,204,68,.6)}.highlighter-theme-matrix span[data-token=token-variable-name],.highlighter-theme-matrix span[data-token=token-identifier]{color:#00ff41;font-weight:400;text-shadow:0 0 4px rgba(0,255,65,.5)}.highlighter-theme-matrix span[data-token^=token-lib-]{color:#3f7;font-weight:600;text-shadow:0 0 6px rgba(51,255,119,.7)}.highlighter-theme-matrix span[data-token=token-decorator]{color:#7fff7f;font-style:italic;font-weight:500;text-shadow:0 0 5px rgba(127,255,127,.6)}.highlighter-theme-matrix span[data-token^=token-brace],.highlighter-theme-matrix span[data-token^=token-paren],.highlighter-theme-matrix span[data-token^=token-bracket],.highlighter-theme-matrix span[data-token^=token-colon],.highlighter-theme-matrix span[data-token^=token-comma],.highlighter-theme-matrix span[data-token^=token-dot]{color:#66ff8c;opacity:.9;font-weight:400;text-shadow:0 0 4px rgba(102,255,140,.6)}.highlighter-theme-matrix span[data-token=token-magic]{color:#00ff80;font-weight:700;text-shadow:0 0 9px rgba(0,255,128,.8)}.highlighter-theme-matrix span[data-token=token-number-float],.highlighter-theme-matrix span[data-token=token-number-int]{color:#00ff5e;font-weight:600;text-shadow:0 0 6px rgba(0,255,94,.7)}.highlighter-theme-matrix span[data-token=token-self],.highlighter-theme-matrix span[data-token=token-cls]{color:#7fff9f;font-style:italic;font-weight:500;text-shadow:0 0 5px rgba(127,255,159,.6)}.highlighter-theme-nord{color:#d8dee9;background:#2e3440}.highlighter-theme-nord.placeholder{color:#616e88;font-style:italic}.highlighter-theme-nord span[data-token=token-string]{color:#a3be8c}.highlighter-theme-nord span[data-token=token-comment]{color:#616e88;font-style:italic}.highlighter-theme-nord span[data-token^=token-control],.highlighter-theme-nord span[data-token=token-def],.highlighter-theme-nord span[data-token=token-class]{color:#81a1c1;font-weight:700}.highlighter-theme-nord span[data-token=token-function-name],.highlighter-theme-nord span[data-token=token-class-name]{color:#88c0d0}.highlighter-theme-nord span[data-token^=token-builtin]{color:#8fbcbb}.highlighter-theme-nord span[data-token^=token-number]{color:#b48ead}.highlighter-theme-nord span[data-token^=token-op]{color:#81a1c1}.highlighter-theme-one-dark-pro{color:#abb2bf;background:#282c34}.highlighter-theme-one-dark-pro.placeholder{color:#5c6370;font-style:italic}.highlighter-theme-one-dark-pro span[data-token=token-string]{color:#98c379}.highlighter-theme-one-dark-pro span[data-token=token-comment]{color:#5c6370;font-style:italic}.highlighter-theme-one-dark-pro span[data-token^=token-control],.highlighter-theme-one-dark-pro span[data-token=token-def],.highlighter-theme-one-dark-pro span[data-token=token-class]{color:#c678dd;font-weight:700}.highlighter-theme-one-dark-pro span[data-token=token-function-name],.highlighter-theme-one-dark-pro span[data-token=token-class-name]{color:#61afef}.highlighter-theme-one-dark-pro span[data-token^=token-builtin]{color:#e5c07b}.highlighter-theme-one-dark-pro span[data-token^=token-number]{color:#d19a66}.highlighter-theme-one-dark-pro span[data-token^=token-op]{color:#c678dd}.highlighter-theme-solarized-light{color:#657b83;background:#fdf6e3}.highlighter-theme-solarized-light.placeholder{color:#93a1a1;font-style:italic}.highlighter-theme-solarized-light span[data-token=token-string]{color:#2aa198}.highlighter-theme-solarized-light span[data-token=token-comment]{color:#93a1a1;font-style:italic}.highlighter-theme-solarized-light span[data-token^=token-control],.highlighter-theme-solarized-light span[data-token=token-def],.highlighter-theme-solarized-light span[data-token=token-class]{color:#268bd2;font-weight:700}.highlighter-theme-solarized-light span[data-token=token-function-name],.highlighter-theme-solarized-light span[data-token=token-class-name]{color:#859900}.highlighter-theme-solarized-light span[data-token^=token-builtin]{color:#268bd2}.highlighter-theme-solarized-light span[data-token^=token-number]{color:#d33682}.highlighter-theme-solarized-light span[data-token^=token-op]{color:#268bd2}.highlighter-theme-cyberpunk{background:#0d0221;color:#e0e0e0}.highlighter-theme-cyberpunk span[data-token=token-comment]{color:#6b6b6b;font-style:italic}.highlighter-theme-cyberpunk span[data-token=token-string]{color:#00fff9}.highlighter-theme-cyberpunk span[data-token^=token-control],.highlighter-theme-cyberpunk span[data-token=token-def],.highlighter-theme-cyberpunk span[data-token=token-class]{color:#ff007c;font-weight:700;text-shadow:0 0 8px #ff007c}.highlighter-theme-cyberpunk span[data-token=token-function-name]{color:#00c3ff}.highlighter-theme-cyberpunk span[data-token=token-variable-name]{color:#ffea00}.highlighter-theme-cyberpunk span[data-token^=token-number]{color:#ffe600}.highlighter-theme-cyberpunk span[data-token^=token-op]{color:#ff66b2}.highlighter-theme-cyberpunk span[data-token=token-pass],.highlighter-theme-cyberpunk span[data-token=token-loop-control]{color:#0fc;font-style:italic}.highlighter-theme-rose{color:#4a2545;background:#fff5f7}.highlighter-theme-rose.placeholder{color:#d4a5b8;font-style:italic}.highlighter-theme-rose span[data-token=token-string]{color:#c76b98}.highlighter-theme-rose span[data-token=token-comment]{color:#b08ea5;font-style:italic;opacity:.8}.highlighter-theme-rose span[data-token=token-decorator]{color:#e63b7a;font-weight:700}.highlighter-theme-rose span[data-token=token-control-if]{color:#d4145a;font-weight:700}.highlighter-theme-rose span[data-token=token-control-match]{color:#c41e5a;font-weight:700}.highlighter-theme-rose span[data-token=token-loop-for]{color:#e63b7a;font-weight:700}.highlighter-theme-rose span[data-token=token-loop-while]{color:#e85080;font-weight:700}.highlighter-theme-rose span[data-token=token-loop-control]{color:#f06292;font-weight:700}.highlighter-theme-rose span[data-token=token-def]{color:#a8386d;font-weight:700}.highlighter-theme-rose span[data-token=token-class]{color:#963a6b;font-weight:700}.highlighter-theme-rose span[data-token=token-return]{color:#d4145a;font-weight:700}.highlighter-theme-rose span[data-token=token-yield]{color:#e85080;font-weight:700}.highlighter-theme-rose span[data-token=token-lambda]{color:#c76b98;font-weight:700}.highlighter-theme-rose span[data-token=token-exception-try]{color:#ff7597;font-weight:700}.highlighter-theme-rose span[data-token=token-exception-finally]{color:#ff8fab;font-weight:700}.highlighter-theme-rose span[data-token=token-exception-raise]{color:#ff4081;font-weight:700}.highlighter-theme-rose span[data-token=token-assert]{color:#f06292;font-weight:700}.highlighter-theme-rose span[data-token=token-import]{color:#ad5389;font-weight:700}.highlighter-theme-rose span[data-token=token-from]{color:#ba5f8b;font-weight:700}.highlighter-theme-rose span[data-token=token-as]{color:#c76b98;font-weight:700}.highlighter-theme-rose span[data-token=token-async]{color:#d4145a;font-weight:700}.highlighter-theme-rose span[data-token=token-await]{color:#e63b7a;font-weight:700}.highlighter-theme-rose span[data-token=token-and]{color:#9c4668;font-weight:400}.highlighter-theme-rose span[data-token=token-or]{color:#ad5073;font-weight:400}.highlighter-theme-rose span[data-token=token-not]{color:#c41e5a;font-weight:400}.highlighter-theme-rose span[data-token=token-in]{color:#a8386d;font-weight:400}.highlighter-theme-rose span[data-token=token-is]{color:#b54678;font-weight:400}.highlighter-theme-rose span[data-token=token-global]{color:#d4145a;font-weight:700}.highlighter-theme-rose span[data-token=token-nonlocal]{color:#c41e5a;font-weight:700}.highlighter-theme-rose span[data-token=token-with]{color:#a8386d;font-weight:700}.highlighter-theme-rose span[data-token=token-pass]{color:#8d8d8d;font-weight:700;opacity:.7}.highlighter-theme-rose span[data-token=token-del]{color:#c41e5a;font-weight:700}.highlighter-theme-rose span[data-token=token-self]{color:#d98fb0;font-style:italic}.highlighter-theme-rose span[data-token=token-cls]{color:#e5a0bb;font-style:italic}.highlighter-theme-rose span[data-token=token-boolean]{color:#e63b7a;font-weight:700}.highlighter-theme-rose span[data-token=token-none]{color:#9a7d8f;font-weight:700}.highlighter-theme-rose span[data-token=token-builtin-type]{color:#ba5f8b;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-io]{color:#d4145a;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-iter]{color:#a8386d;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-collection]{color:#c76b98;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-introspection]{color:#ad5389;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-object]{color:#ba5f8b;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-math]{color:#e85080;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-conversion]{color:#f06292;font-weight:600}.highlighter-theme-rose span[data-token=token-builtin-other]{color:#c876a0;font-weight:600}.highlighter-theme-rose span[data-token=token-lib-datascience]{color:#963a6b;font-weight:700}.highlighter-theme-rose span[data-token=token-lib-ml]{color:#a8386d;font-weight:700}.highlighter-theme-rose span[data-token=token-lib-web]{color:#d4145a;font-weight:700}.highlighter-theme-rose span[data-token=token-lib-stdlib]{color:#ba5f8b;font-weight:700}.highlighter-theme-rose span[data-token=token-lib-alias]{color:#e63b7a;font-weight:700}.highlighter-theme-rose span[data-token=token-class-name]{color:#a8386d;font-weight:700}.highlighter-theme-rose span[data-token=token-function-name]{color:#ba5f8b;font-weight:600}.highlighter-theme-rose span[data-token=token-variable-name]{color:#8b4670}.highlighter-theme-rose span[data-token=token-identifier]{color:#5a3a4f}.highlighter-theme-rose span[data-token=token-number-int]{color:#e85080}.highlighter-theme-rose span[data-token=token-number-float]{color:#f06292}.highlighter-theme-rose span[data-token=token-op-comparison]{color:#d4145a}.highlighter-theme-rose span[data-token=token-op-arithmetic]{color:#c41e5a}.highlighter-theme-rose span[data-token=token-op-assignment]{color:#a8386d}.highlighter-theme-rose span[data-token=token-op-arrow]{color:#ba5f8b}.highlighter-theme-rose span[data-token=token-brace]{color:#d4145a}.highlighter-theme-rose span[data-token=token-paren]{color:#7d5a6d}.highlighter-theme-rose span[data-token=token-bracket]{color:#a8386d}.highlighter-theme-rose span[data-token=token-colon],.highlighter-theme-rose span[data-token=token-comma]{color:#5a3a4f}.highlighter-theme-rose span[data-token=token-dot]{color:#ba5f8b}.highlighter-theme-rose span[data-token=token-magic]{color:#e63b7a;font-style:italic;font-weight:700}.editor-container{display:flex;position:relative;width:100%;left:0;margin:16px auto;border-radius:8px;overflow:hidden;font-family:Fira Code,monospace;color:var(--text-main)}.editor-line-numbers{width:2rem;padding:8px 4px;text-align:center;-webkit-user-select:none;user-select:none;color:var(--text-main);background:transparent}.line-number{height:20px;line-height:20px;font-size:14px}.editor-input-area{position:relative;flex:1;overflow:hidden}.editor-textarea{position:absolute;top:0;left:0;width:100%;resize:none;border:none;margin:0;padding:8px 12px;font-size:14px;line-height:20px;font-family:inherit;tab-size:2;background:transparent;color:transparent;caret-color:var(--caret-color);white-space:pre;overflow-x:auto;overflow-y:hidden;box-sizing:border-box;z-index:2}.editor-textarea:focus{outline:none;box-shadow:none}.hl-mirror{position:absolute;inset:0;overflow:auto;pointer-events:none;z-index:1}.hl-mirror::-webkit-scrollbar{display:none}.hl-mirror{scrollbar-width:none}@media (min-width: 1550px){.editor-container{width:100%;left:0}}.editor-theme-light{background:#fafafa;border:1px solid #e1e4e8;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.editor-theme-light .editor-line-numbers{background:#f6f8fa;border-right:1px solid #e1e4e8}.editor-theme-light .line-number{color:#6a737d}.editor-theme-light .line-number.is-active{color:#24292e;font-weight:600}.editor-theme-light .editor-input-area{background:#fff}.editor-theme-light .editor-textarea{caret-color:#24292e}.editor-theme-light .editor-input-area::-webkit-scrollbar{width:10px}.editor-theme-light .editor-input-area::-webkit-scrollbar-thumb{background:#e1e4e8;border-radius:8px}.editor-theme-light .editor-input-area::-webkit-scrollbar-track{background:#f6f8fa}.editor-theme-neon{background:#0a0e27;border:1px solid #1a1f3a}.editor-theme-neon .editor-line-numbers{background:#0f1229;border-right:1px solid #1a1f3a}.editor-theme-neon .line-number{color:#6b7280}.editor-theme-neon .editor-input-area{background:#0a0e27}.editor-theme-neon .editor-textarea{caret-color:#00e5ff}.editor-theme-dracula{background:#282a36;border:1px solid #44475a}.editor-theme-dracula .editor-line-numbers{background:#44475a;border-right:1px solid #282a36}.editor-theme-dracula .line-number{color:#f8f8f2}.editor-theme-dracula .editor-input-area{background:#282a36}.editor-theme-dracula .editor-textarea{caret-color:#50fa7b}.editor-theme-matrix{background:#010a01;border:1px solid #004d00;font-family:Courier New,monospace}.editor-theme-matrix .editor-line-numbers{background:#001400;border-right:1px solid #003300;color:#007a00}.editor-theme-matrix .editor-textarea{caret-color:#00ff41}.editor-theme-matrix ::selection{background:#00ff4133}.editor-theme-nord{background:#2e3440;border:1px solid #3b4252}.editor-theme-nord .editor-line-numbers{background:#3b4252}.editor-theme-nord .line-number{color:#81a1c1}.editor-theme-nord .editor-input-area{background:#2e3440}.editor-theme-nord .editor-textarea{caret-color:#d8dee9}.editor-theme-one-dark-pro{background:#282c34;border:1px solid #21252b}.editor-theme-one-dark-pro .editor-line-numbers{background:#21252b}.editor-theme-one-dark-pro .line-number{color:#5c6370}.editor-theme-one-dark-pro .editor-input-area{background:#282c34}.editor-theme-one-dark-pro .editor-textarea{caret-color:#abb2bf}.editor-theme-solarized-light{background:#fdf6e3;border:1px solid #e1dcc9}.editor-theme-solarized-light .editor-line-numbers{background:#eee8d5}.editor-theme-solarized-light .line-number{color:#657b83}.editor-theme-solarized-light .editor-input-area{background:#fdf6e3}.editor-theme-solarized-light .editor-textarea{caret-color:#657b83}.editor-theme-cyberpunk{background:#0d0221;border:1px solid #ff007c;box-shadow:0 0 10px #ff007c4d}.editor-theme-cyberpunk .editor-line-numbers{background:#180036;border-right:1px solid #ff007c}.editor-theme-cyberpunk .line-number{color:#ff66c4}.editor-theme-cyberpunk .editor-textarea{caret-color:#00fff9}.editor-theme-cyberpunk .editor-input-area{background:#0d0221}.editor-theme-rose{background:#fff5f7;border:1px solid #ffc9d4}.editor-theme-rose .editor-line-numbers{background:#ffe4e9;border-right:1px solid #ffc9d4}.editor-theme-rose .line-number{color:#c7567c}.editor-theme-rose .editor-input-area{background:#fff5f7}.editor-theme-rose .editor-textarea{caret-color:#e63b7a}.editor-theme-rose ::selection{background:#e06c8833}.download-menu-container{position:relative;display:inline-block}.download-pill{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;border-radius:50%;background:var(--accent-blue-bg);color:#fff;cursor:pointer;transition:all .25s ease;box-shadow:0 2px 8px #3b82f633}.download-pill:hover{background:var(--accent-blue-bg-hover);box-shadow:0 4px 16px #3b82f666}.download-pill:active{transform:scale(.95)}.download-options{position:absolute;top:110%;right:0;background-color:var(--dropdown-bg);border:1px solid var(--border-color-muted);border-radius:8px;box-shadow:0 4px 12px #0000001a;width:auto;min-width:200px;z-index:1000;padding:8px 0;animation:slideDown .2s ease;color:var(--dropdown-text)}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.download-options button{background:none;border:none;width:100%;text-align:left;padding:10px 16px;font-size:14px;cursor:pointer;color:var(--dropdown-text);transition:background .2s}.download-options button:hover{background-color:var(--dropdown-item-hover-bg)}.download-options .do-pdf{cursor:not-allowed;opacity:.5}.md-toolbar{display:flex;flex-direction:column;gap:4px;margin-bottom:4px;color:var(--text-main)}.md-toolbar button{padding:4px 8px;font-size:.9rem;background:var(--md-toolbar-btn-bg);border:1px solid var(--md-toolbar-btn-border);border-radius:4px;cursor:pointer;color:var(--text-main)}.md-toolbar button:hover{background:var(--md-toolbar-btn-hover-bg)}.comment-block{display:flex;position:relative;max-width:100%;margin:16px 0;padding:0;box-sizing:border-box}.comment-block.split-view{display:flex;gap:8px}.comment-block.single-preview{max-width:100%;margin:16px 0;cursor:pointer}.comment-block.single-preview .comment-preview{width:100%}.comment-block-view,.comment-preview{width:50%;padding:12px;font-size:1rem;font-family:inherit;border-radius:8px;line-height:1.6;min-height:120px;box-sizing:border-box}.comment-block-view{background-color:var(--comment-edit-bg);border:1px solid var(--comment-edit-border);color:var(--comment-edit-text);resize:none;overflow:hidden;outline:none}.comment-preview{border:1px solid var(--comment-preview-border);background-color:var(--comment-preview-bg);border-left:4px solid var(--comment-preview-accent);color:var(--comment-edit-text);white-space:pre-wrap;overflow-wrap:break-word;cursor:pointer;transition:all .2s ease}.comment-preview p{margin:0}.comment-preview>*{margin-top:0;margin-bottom:0}.comment-preview pre{background-color:var(--comment-preview-code-bg);padding:8px;border-radius:4px;font-family:monospace;overflow-x:auto}.toast-bubble{position:fixed;right:16px;bottom:16px;min-width:160px;max-width:260px;background:var(--toast-bg);color:var(--text-main);border:1px solid var(--toast-border);box-shadow:0 10px 24px var(--toast-shadow);border-radius:8px;padding:10px 12px;font-size:14px;font-weight:500;line-height:1.4;opacity:0;pointer-events:none;transform:translateY(10px) scale(.98);transition:opacity .18s ease,transform .18s ease;z-index:9999}.toast-success{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.toast-error{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.toast-visible{opacity:1;transform:translateY(0) scale(1)}.files-panel{position:fixed;top:0;left:-250px;width:250px;height:100%;background:var(--panel-bg);box-shadow:2px 0 8px #0000001a;transition:left .3s ease;display:flex;flex-direction:column;z-index:1200;will-change:left;color:var(--text-main)}.files-panel.open{left:0}.files-panel-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--panel-border);background:var(--panel-header-bg);color:var(--text-main)}.files-panel-header h3{margin:0;font-size:16px;font-weight:600}.close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:inherit}.files-panel-body{flex:1;padding:10px;overflow:hidden;color:var(--text-main)}.sections{height:100%;display:flex;flex-direction:column;gap:10px}.section{display:flex;flex-direction:column;min-height:0;border:1px solid var(--panel-border);border-radius:8px;background:var(--bg-surface)}.section-header{padding:8px 10px;font-size:12px;font-weight:700;color:var(--text-main);background:var(--bg-surface-alt);border-bottom:1px solid var(--panel-border);letter-spacing:.2px}.section-inner{flex:1;min-height:0;display:flex;flex-direction:column;padding:8px;gap:8px}.section-controls{display:flex;flex-direction:column;gap:8px}.section-scroll{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding-right:4px}.empty-hint{font-size:12px;color:var(--text-muted);padding:6px 2px}.upload-actions{display:flex;gap:12px;align-items:center;margin:0}.pick-btn,.dropzone{width:110px;height:110px;border-radius:10px;border:1px solid var(--border-color-strong);background:var(--bg-surface);display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-main)}.pick-btn:hover,.dropzone:hover{background:var(--bg-surface-hover)}.dropzone{border:2px dashed var(--border-color-strong);flex-direction:column;gap:6px}.dropzone .plus{font-size:32px;line-height:1}.dropzone .drop-hint{padding:10px;font-size:12px;color:var(--text-muted)}.dropzone.drag-over{background:var(--action-image-hover-bg);border-color:var(--accent-green-bg)}.upload-hint{font-size:12px;color:var(--text-muted);margin:2px 2px 0}.quota-box{margin:2px 0 0}.quota-line{display:flex;align-items:baseline;gap:6px;font-size:12px;color:var(--quota-text)}.quota-line strong{font-weight:700}.quota-line .sep{opacity:.6}.progress{width:100%;height:8px;border-radius:999px;background:var(--progress-track-bg);overflow:hidden;margin-top:6px;border:1px solid var(--progress-border)}.progress .bar{height:100%;border-radius:999px;transition:width .2s linear}.progress .bar.ok{background:var(--progress-ok-bg)}.progress .bar.warn{background:var(--progress-warn-bg)}.progress .bar.danger{background:var(--progress-danger-bg)}.files-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px}.file-item{display:flex;justify-content:space-between;align-items:center;border:1px solid var(--panel-border);border-radius:6px;padding:8px 10px;background:var(--bg-surface);color:var(--text-main)}.file-name{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-right{display:flex;align-items:center;gap:8px}.pill{position:relative;display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;font-size:.5rem;line-height:1.1;text-align:center;color:var(--text-main);background:var(--badge-bg);border:2px solid var(--border-color)}.pill.loading:after{content:"";position:absolute;inset:-3px;border-radius:50%;border:3px solid var(--accent-green-bg);border-top-color:transparent;animation:spin .8s linear infinite}.pill.ok{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}.pill.err{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.trash-btn{width:28px;height:28px;border:none;border-radius:8px;background:var(--btn-del-bg);color:var(--trash-text);cursor:pointer}.trash-btn:hover{background:var(--btn-del-hover-bg)}.trash-btn:disabled{opacity:.5;cursor:not-allowed}.open-hint{font-size:12px;color:var(--text-muted);margin:2px 2px 0}.hint-label{font-weight:600;color:var(--text-secondary)}.ext-chip-row{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.ext-chip{padding:2px 8px;border:1px solid var(--panel-border);border-radius:9999px;background:var(--bg-surface);color:var(--text-main);line-height:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.ext-more{margin-top:6px}.ext-more summary{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text-muted)}.ext-more ul{margin:6px 0 0;padding-left:16px}.section--files{flex:1.2}.section--open{flex:.8}@media (min-width: 1550px){.section--files{flex:1.4}.section--open{flex:.6}}:root{--sysstats-width: 300px}.resources-wrapper{position:relative;display:inline-flex;align-items:center;gap:8px}.sysstats-toggle-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:10px;background:var(--button-neutral-bg);color:var(--text-main);cursor:pointer;line-height:1;font-size:16px;transition:all .15s ease}.sysstats-toggle-btn:hover{background:var(--button-neutral-hover-bg);border-color:var(--border-color-strong);transform:translateY(-1px)}.sysstats-toggle-btn:active{transform:scale(.97)}.sysstats-panel{position:fixed;top:0;right:calc(-1 * var(--sysstats-width));width:var(--sysstats-width);height:100%;background:var(--panel-bg);color:var(--text-main);border-left:1px solid var(--panel-border);box-shadow:2px 0 8px #0000001a;display:flex;flex-direction:column;z-index:1000;will-change:right;transition:right .3s ease}.sysstats-panel.open{right:0}.sysstats-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--panel-border);background:var(--panel-header-bg);color:var(--text-main)}.sysstats-header h3{margin:0;font-size:16px;font-weight:600}.close-btn{background:none;border:none;font-size:20px;cursor:pointer;color:inherit;line-height:1}.sysstats-body{flex:1;padding:16px;overflow-y:auto;color:var(--text-main)}.loading-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;height:160px;color:var(--text-muted);font-size:14px}.spin{animation:spin 1s linear infinite}.metric-section{margin-bottom:14px;padding-bottom:12px;border-bottom:1px solid var(--panel-border)}.metric-section:last-of-type{border-bottom:none;margin-bottom:8px}.metric-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:6px}.metric-header{font-size:13px;font-weight:600;color:var(--text-muted);display:flex;align-items:center;gap:6px;min-width:80px}.metric-bar{flex:1;height:6px;background:var(--progress-track-bg);border-radius:3px;overflow:hidden;position:relative}.metric-fill{height:100%;border-radius:3px;transition:width .6s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden}.metric-fill:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent,rgba(255,255,255,.3),transparent);animation:shimmer 2s infinite}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}.metric-value{font-size:12px;font-weight:500;color:var(--text-body);margin-bottom:6px;padding-left:2px}.metric-subtitle{font-size:11.5px;font-weight:500;color:var(--text-muted);line-height:1.4;margin-top:-2px;margin-bottom:4px;padding-left:2px}.metric-chart{width:100%;height:40px;margin-top:4px}.metric-chart .recharts-surface{overflow:visible}.metric-chart .recharts-area-area,.metric-chart .recharts-area-curve{transition:all .6s cubic-bezier(.4,0,.2,1)}.metric-chart .recharts-area-curve{filter:drop-shadow(0 2px 4px rgba(0,0,0,.1))}:root[data-theme=dark] .metric-chart .recharts-area-curve{filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.custom-tooltip{background:#111827f2;color:#fff;padding:4px 8px;border-radius:4px;font-size:11px;font-weight:600;box-shadow:0 2px 8px #00000026;pointer-events:none}:root[data-theme=dark] .custom-tooltip{background:#f8fafcf2;color:#1e293b}.sys-info{font-size:11.5px;font-weight:500;color:var(--text-muted);text-align:center;padding-top:10px;margin-top:8px;letter-spacing:.2px}@media (max-width: 640px){:root{--sysstats-width: 92vw}}.kernel-modal-backdrop{position:fixed;inset:0;background:#0003;display:flex;align-items:center;justify-content:center;z-index:1200;pointer-events:auto}body.modal-open .notebook-container{overflow:hidden}.kernel-modal{width:440px;max-width:92vw;background:var(--modal-surface);color:var(--modal-text);border:1px solid var(--modal-border);border-radius:0;padding:20px 22px;box-shadow:none;outline:none}.kernel-modal h2{margin:0 0 10px;font-size:1.1rem;font-weight:700;color:var(--modal-text)}.kernel-modal p{margin:8px 0;line-height:1.5;font-size:.95rem;color:var(--modal-text-muted)}.kernel-modal .modal-buttons{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.kernel-modal button{appearance:none;-webkit-appearance:none;border:1px solid var(--modal-border);background:var(--modal-surface-2);color:var(--modal-text);border-radius:0;padding:8px 14px;font:inherit;cursor:pointer;transition:background .12s ease-in-out,border-color .12s ease-in-out}.kernel-modal button:hover{background:var(--modal-hover);border-color:var(--modal-border)}.kernel-modal button:focus-visible{outline:2px solid var(--modal-border);outline-offset:2px}@media (max-width: 440px){.kernel-modal{width:95vw;padding:16px}}.cd-overlay{position:fixed;inset:0;background:#0003;display:grid;place-items:center;z-index:1200}html.modal-open,body.modal-open{overflow:hidden;overscroll-behavior:contain;touch-action:none}.cd-card{width:440px;max-width:92vw;background:var(--modal-surface);color:var(--modal-text);border:1px solid var(--modal-border);border-radius:0;padding:20px 22px;box-shadow:none;outline:none}.cd-header{padding:0;background:transparent;border:0;margin:0 0 10px}.cd-title{margin:0;font-size:1.1rem;font-weight:700;color:var(--modal-text)}.cd-body{padding:0}.cd-message{margin:8px 0 0;line-height:1.5;font-size:.95rem;color:var(--modal-text-muted)}.cd-footer{display:flex;gap:10px;justify-content:flex-end;padding:0;border:0;background:transparent;margin-top:18px}.cd-btn{appearance:none;-webkit-appearance:none;border:1px solid var(--modal-border);background:var(--modal-surface-2);color:var(--modal-text);border-radius:0;min-width:96px;height:34px;font:inherit;cursor:pointer;transition:background .12s ease-in-out,border-color .12s ease-in-out}.cd-btn:hover{background:var(--modal-hover)}.cd-btn-ghost{background:transparent}.cd-card:focus-visible,.cd-btn:focus-visible{outline:2px solid var(--modal-border);outline-offset:2px}@media (max-width: 440px){.cd-card{width:95vw;padding:16px}}.notebook-container{width:100%;margin:0 auto;padding-left:20px;padding-right:20px;padding-bottom:20px;position:relative}.notebook-container.with-panel{margin-left:250px;width:calc(100% - 250px)}.notebook-container.with-right-panel{margin-right:300px;width:calc(100% - 300px)}.notebook-container.with-panel.with-right-panel{margin-left:250px;margin-right:300px;width:calc(100% - 550px)}.notebook-header{margin-bottom:30px;padding-bottom:20px;padding-top:20px;border-bottom:2px solid var(--section-divider);position:sticky;top:0;z-index:1100;background:var(--bg-page)}.header-row{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:nowrap}.header-files-icon{display:flex;align-items:center;justify-content:center}.files-toggle-btn{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:1px solid var(--border-color);border-radius:10px;background:var(--button-neutral-bg);color:var(--text-main);cursor:pointer;line-height:1;font-size:16px;transition:all .15s ease}.files-toggle-btn:hover{background:var(--button-neutral-hover-bg);border-color:var(--border-color-strong);transform:translateY(-1px)}.files-toggle-btn:active{transform:scale(.97)}.title-input{font-size:28px;font-weight:600;color:var(--text-main);border:none;outline:none;background:transparent;flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:4px 0}.title-input:focus{border-color:var(--accent-blue-bg-hover)}.notebook-info{color:var(--text-secondary);font-size:14px}.header-actions{display:flex;gap:8px;flex:0 0 auto}.header-actions>*{flex-shrink:0}.tool-chip{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;background:var(--chip-bg);border:1px solid var(--chip-border);border-radius:999px;cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease}.tool-chip:hover{background:var(--chip-bg-hover);border-color:var(--chip-border-hover);box-shadow:0 4px 10px #0206170d}.kernel-chip .chip-value{display:inline-block;white-space:nowrap;min-width:4.5rem;text-align:center}.kernel-chip{flex-shrink:0}.runtime-chip .chip-value{display:inline-block;white-space:nowrap;min-width:3rem;text-align:center}.runtime-chip{flex-shrink:0}.chip-icon{opacity:.8}.chip-text{display:flex;flex-direction:column;line-height:1.05}.chip-kicker{font-size:10px;color:var(--chip-kicker);text-transform:uppercase;letter-spacing:.04em}.chip-value{font-size:12px;font-weight:600;color:var(--chip-value)}.chip-caret{font-size:10px;color:var(--chip-kicker)}.chip-caret-r{font-size:16px;color:var(--chip-kicker)}.runall-group{display:inline-flex;align-items:stretch;height:44px;border:1px solid var(--chip-border);border-radius:999px;overflow:visible;box-sizing:border-box}.runall-pill{display:inline-flex;align-items:center;gap:8px;padding:8px 20px 8px 12px;border:none;border-radius:999px 0 0 999px;background:var(--pill-idle-bg);color:var(--pill-idle-text);font-size:14px;font-weight:600;cursor:not-allowed;transition:all .25s ease;position:relative}.runall-group{flex-shrink:0}.runall-pill>span{display:inline-block;white-space:nowrap;min-width:3rem;text-align:center}.runall-pill>span .bouncing-loader{display:inline-flex;justify-content:center;width:100%}.runall-pill{flex-shrink:0}.runall-dropdown-wrap{position:relative;display:inline-block}.runall-dd-btn{width:32px;height:100%;display:flex;align-items:center;justify-content:center;border:4px solid var(--chip-border);border-radius:0 999px 999px 0;background:var(--chip-bg);color:var(--chip-kicker);cursor:pointer;transition:background .15s ease,border-color .15s ease,box-shadow .15s ease;margin-left:-1px;position:relative}.runall-dd-btn:hover{background:var(--chip-bg-hover);border-color:var(--chip-border-hover);box-shadow:0 4px 10px #0206170d}.runall-dd-btn:disabled{opacity:.5;cursor:not-allowed}.runall-dd-btn:disabled:hover{background:var(--chip-bg);border-color:var(--chip-border);box-shadow:none}.runall-pill.ready{background:var(--pill-ready-bg);color:var(--pill-ready-text);cursor:pointer}.runall-pill.ready:hover{background:var(--pill-ready-bg-hover);box-shadow:0 4px 16px #22c55e40}.runall-pill.running{background:var(--pill-stop-bg);color:var(--pill-stop-text);cursor:pointer}.runall-pill.running:hover{background:var(--pill-stop-bg-hover);box-shadow:0 4px 16px #dc262640}.runall-pill.busy{background:var(--pill-busy-bg);color:var(--pill-busy-text);cursor:not-allowed}.runall-pill.busy:hover{background:var(--pill-busy-bg);color:var(--pill-busy-text);box-shadow:none}.bouncing-loader{display:inline-flex;align-items:flex-end;justify-content:center;gap:4px;min-width:24px;height:10px}.bouncing-loader .dot{width:5px;height:5px;border-radius:50%;background-color:var(--pill-busy-text);animation:bounce-dot 1.4s infinite ease-in-out}.bouncing-loader .dot:nth-child(1){animation-delay:0s}.bouncing-loader .dot:nth-child(2){animation-delay:.2s}.bouncing-loader .dot:nth-child(3){animation-delay:.4s}@keyframes bounce-dot{0%,80%,to{transform:translateY(0);opacity:1}40%{transform:translateY(-6px);opacity:.7}}.pill-icon-wrap{position:relative;width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:var(--bg-surface);border-radius:50%;box-shadow:0 2px 4px #0000001a}.spinner-ring{position:absolute;width:32px;height:32px;border:3px solid var(--spinner-ring-border);border-top-color:var(--spinner-ring-top);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.runtime-btn{width:160px;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border:none;border-radius:8px;font-size:14px;font-weight:500;background-color:var(--button-neutral-bg)}.runtime-btn:hover{background-color:var(--button-neutral-hover-bg)}.runtime-btn-resource{width:180px;display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border:none;border-radius:8px;font-size:14px;font-weight:500;background-color:var(--button-neutral-bg)}.runtime-btn-resource:hover{background-color:var(--button-neutral-hover-bg)}.pdf-button{background-color:var(--accent-blue-bg);color:#fff;border:none;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:background-color .2s ease}.pdf-button:hover{background-color:var(--accent-blue-bg-hover)}.notebook-content{position:relative}.content-block{position:relative;margin:8px 0;background:var(--bg-surface);border:1px solid var(--border-color);border-radius:8px;transition:all .2s ease-in-out}.content-block:hover{border-color:var(--border-color-strong);box-shadow:0 2px 8px #0000001a}.block-content{padding:16px;cursor:pointer;position:relative;min-height:50px;display:flex;align-items:center}.text-content{width:100%;line-height:1.6;color:var(--text-body);white-space:pre-wrap;word-wrap:break-word}.image-content{width:97%;height:auto;text-align:center;position:relative;padding:16px}.image-content img{width:100%;height:auto;border-radius:6px;box-shadow:0 2px 8px #0000001a}.empty-image{display:flex;align-items:center;justify-content:center;height:150px;color:var(--placeholder-text);font-style:italic;border:2px dashed var(--border-color-strong);border-radius:6px;background-color:var(--bg-surface-hover);cursor:pointer;transition:all .2s ease}.empty-image:hover{background-color:var(--chip-bg-hover);border-color:var(--placeholder-text)}.image-content.drag-over .empty-image{background-color:var(--pill-ready-bg);border-color:var(--accent-green-bg);color:var(--pill-ready-text)}.block-tools{position:absolute;top:8px;left:8px;display:flex;align-items:center;gap:6px;opacity:1;pointer-events:auto;z-index:2}.block-index{font-size:1rem;color:var(--badge-text);background:var(--badge-bg);border:1px solid var(--border-color);border-radius:4px;padding:2px;line-height:1}.run-btn{width:28px;height:28px;margin:2px;border:none;display:flex;align-items:center;justify-content:center;border-radius:50%;cursor:pointer;background-color:var(--btn-run-idle-bg);color:var(--btn-run-idle-text);transition:all .2s ease}.delete-btn{width:28px;height:28px;border:1px solid var(--border-color);display:flex;align-items:center;justify-content:center;border-radius:8px;cursor:pointer;transition:all .2s ease;background:var(--btn-del-bg);color:var(--trash-text);box-shadow:0 1px 2px #00000014}.delete-btn:hover{background:var(--btn-del-hover-bg);border-color:var(--border-color-strong);box-shadow:0 2px 6px #00000026}.run-btn.active{background-color:var(--btn-run-active-bg);color:var(--btn-run-active-text)}.run-btn.active:hover{background-color:var(--btn-run-active-hover-bg)}.hover-area{height:20px;position:relative;display:flex;align-items:center;justify-content:center;margin:4px 0;border-radius:4px;transition:background-color .2s ease}.hover-area:hover{background-color:var(--insert-hover-bg)}.action-buttons{display:flex;gap:8px;opacity:0;transition:opacity .2s ease}.hover-area:hover .action-buttons,.always-visible .action-buttons{opacity:1;pointer-events:auto}.action-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--action-btn-border);background:var(--action-btn-bg);border-radius:6px;cursor:pointer;transition:all .2s ease;box-shadow:0 1px 3px #0000001a}.action-btn:hover{background-color:var(--action-btn-hover-bg);border-color:var(--action-btn-hover-border);transform:translateY(-1px);box-shadow:0 2px 6px #00000026}.text-btn:hover{background-color:var(--action-text-hover-bg);border-color:var(--action-text-hover-border);color:var(--action-text-hover-color)}.image-btn:hover{background-color:var(--action-image-hover-bg);border-color:var(--action-image-hover-border);color:var(--action-image-hover-color)}.comment-btn:hover{background-color:var(--action-comment-hover-bg);border-color:var(--action-comment-hover-border);color:var(--action-comment-hover-color)}.code-btn:hover{background-color:var(--action-code-hover-bg);border-color:var(--action-code-hover-border);color:var(--action-code-hover-color)}.editing-container{padding:16px}.edit-textarea{width:100%;min-height:100px;padding:12px;border:2px solid var(--accent-blue-bg);border-radius:6px;font-family:inherit;font-size:14px;line-height:1.6;resize:vertical;outline:none;background:var(--bg-surface);color:var(--text-main)}.edit-textarea:focus{border-color:var(--accent-blue-bg-hover);box-shadow:0 0 0 3px #3b82f61a}.edit-textarea::placeholder{color:var(--placeholder-text);font-style:italic;opacity:1}.edit-actions{display:flex;gap:8px;margin-top:12px;justify-content:flex-end}.save-btn,.cancel-btn{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:6px;cursor:pointer;transition:all .2s ease;color:#fff}.save-btn{background:var(--accent-green-bg)}.save-btn:hover{background:var(--accent-green-bg-hover)}.cancel-btn{background:var(--accent-red-bg)}.cancel-btn:hover{background:var(--accent-red-bg-hover)}.image-upload{text-align:center;padding:20px}.file-input{display:none}.upload-label{display:inline-flex;flex-direction:column;align-items:center;gap:12px;padding:30px;border:2px dashed var(--accent-green-bg);border-radius:8px;background:var(--action-image-hover-bg);color:var(--accent-green-bg);cursor:pointer;transition:all .2s ease}.upload-label:hover{background:var(--pill-ready-bg);border-color:var(--accent-green-bg-hover)}.output-block{margin-top:-4px;border-top:1px solid var(--output-border);background:var(--output-bg);border-radius:0 0 8px 8px;padding:12px 16px 12px 100px;font-family:Fira Code,monospace;font-size:14px;line-height:1.6;color:var(--output-text);position:relative;overflow-x:auto;overflow-y:auto;max-height:700px;max-width:100%;box-sizing:border-box}.output-tools{position:absolute;top:8px;left:12px;font-size:13px;padding:2px 6px;border-radius:4px}.output-content{margin-top:2rem;position:relative;width:100%;border-radius:5px;white-space:pre-wrap}.spin-border-overlay{position:absolute;width:28px;height:28px;border:2px solid var(--btn-run-active-text);border-bottom-color:transparent;border-radius:50%;animation:rotation .75s linear infinite;z-index:0}.spin-border-overlay-p{position:absolute;width:28px;height:28px;border:2px dashed var(--btn-run-active-text);border-bottom-color:transparent;border-radius:50%;animation:rotation .75s linear infinite;z-index:0}.dropdown-wrap{position:relative;display:inline-block}.dropdown-menu{position:absolute;top:110%;right:0;background:var(--dropdown-bg);border:1px solid var(--dropdown-border);border-radius:8px;box-shadow:0 10px 24px #0000001f;padding:6px;z-index:1000;min-width:max-content;color:var(--dropdown-text)}.dropdown-item{display:block;width:100%;text-align:left;padding:8px 10px;border-radius:6px;border:0;background:transparent;cursor:pointer;font-size:14px;color:inherit}.dropdown-item:hover{background:var(--dropdown-hover-bg)}.dropdown-item-disabled{opacity:.4;cursor:not-allowed}.plot-gallery{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.plot-img{position:relative;max-width:100%;height:auto;border:1px solid var(--border-color);border-radius:6px;background:var(--bg-surface)}.block-top-right-tools{position:absolute;top:8px;right:8px;display:flex;flex-direction:row;align-items:flex-end;gap:6px;z-index:3}.output-copy-topright{position:absolute;top:8px;right:8px;z-index:2}.copy-btn{width:28px;height:28px;min-width:24px;min-height:24px;display:flex;align-items:center;justify-content:center;border-radius:6px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-main);font-size:12px;line-height:1;cursor:pointer;transition:all .15s ease;box-shadow:0 1px 2px #00000014}.copy-btn:hover{background:var(--chip-bg-hover);border-color:var(--border-color-strong);box-shadow:0 2px 6px #00000026}.kernel-dot{width:8px;height:8px;border-radius:9999px;margin-right:6px}.dot-green{background-color:#22c55e}.dot-yellow{background-color:#eab308}.dot-gray{background-color:#9ca3af}.output-loading{display:flex;align-items:center;justify-content:flex-start;gap:4px;padding:8px 0}.output-loading .dot{width:6px;height:6px;border-radius:50%;background-color:var(--text-color, #555);animation:bounce 1.4s infinite ease-in-out both}.output-loading .dot:nth-child(1){animation-delay:-.32s}.output-loading .dot:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0);opacity:.5}40%{transform:scale(1);opacity:1}}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width: 768px){.notebook-container{width:95%;padding:15px}.action-btn{width:28px;height:28px}.block-content{padding:12px}}@media (max-width: 900px){.header-row{flex-wrap:wrap}.title-input{order:2;width:100%;white-space:normal}.header-actions{order:3}}.content-block.is-code{display:grid;grid-template-columns:100px minmax(0,1fr) 80px;grid-auto-rows:auto;align-items:start}.content-block.is-comment{display:grid;grid-template-columns:100px minmax(0,1fr) 50px;grid-auto-rows:auto;align-items:start}.content-block.is-code .block-tools,.content-block.is-comment .block-tools{position:relative;grid-column:1;grid-row:1;align-self:start}.content-block.is-code .block-top-right-tools,.content-block.is-comment .block-top-right-tools{position:relative;grid-column:3;grid-row:1;justify-self:end}.content-block.is-code .output-block,.content-block.is-comment .output-block{grid-column:1 / -1;grid-row:2}.content-block.is-image{display:block}.content-block.is-image .block-tools{position:absolute;top:8px;left:8px}.content-block.is-image .block-top-right-tools{position:absolute;top:8px;right:8px}.content-block.is-comment .comment-block,.content-block.is-comment .comment-block.single-preview{grid-column:2;justify-self:stretch}.content-block.is-comment .comment-block-view,.content-block.is-comment .comment-preview{flex:1 1 0;min-width:0}.demo-badge{position:fixed;left:21%;top:20px;z-index:1500;display:inline-block;text-align:center;line-height:1.2;align-items:center;justify-content:center;gap:6px;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:600;line-height:1;background:#fff3cd;border:1px solid #ffecb5;color:#664d03;cursor:default}.demo-badge:hover{background:#ffe9a8}
