@import"https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;700&display=swap";:root{--color-code-bg-python: #272822;--color-code-border: #3c3f41;--color-code-output-bg: #1e1e1e;--color-code-output-border: #555;--color-code-output-border-top: #444;--color-code-filename-bg: #2d2d2d;--color-gutter-comment: #75715e;--color-monokai-foreground: #f8f8f2;--color-play-button: #4caf50;--color-play-button-hover: #45a049;--color-spinner-border: rgba(255, 255, 255, .4);--color-spinner-border-top: #fff;--color-text-light: #a9b7c6;--shadow-light: 0 2px 5px rgba(0, 0, 0, .05);--shadow-play-button: 0 2px 4px rgba(0, 0, 0, .2);--border-radius-md: 4px;--border-radius-full: 50%;--spacing-sm: .5rem;--spacing-lg: .8rem;--spacing-xl: 1em;--spacing-2xl: 1.2em;--spacing-3xl: 1.5em}.loading-spinner-container{text-align:center;padding:20px}.loading-spinner-message{margin-bottom:10px}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid #f3f3f3;border-top:2px solid #3498db;border-radius:50%;animation:spin 1s linear infinite}.error-container{text-align:center;padding:50px}.error-container h1,.error-container p{margin-bottom:1em}.error-container a{color:var(--color-primary);text-decoration:none}.error-container a:hover{text-decoration:underline}:root{--color-bg-light: #f0f2f5;--color-bg-container: #ffffff;--color-bg-sidebar: #f9f9f9;--color-border-light: #e0e0e0;--color-text-dark: #333;--color-text-medium: #666;--color-text-light: #a9b7c6;--color-primary: #007bff;--color-primary-hover: #0056b3;--color-button-secondary: #555;--color-button-secondary-gradient-start: #4e545c;--color-button-secondary-gradient-end: #3e4451;--color-button-secondary-hover-gradient-start: #5e646c;--color-button-secondary-hover-gradient-end: #4e545c;--color-play-button: #4caf50;--color-play-button-hover: #45a049;--color-code-bg-python: #272822;--color-code-border: #3c3f41;--color-code-output-bg: #1e1e1e;--color-code-output-border: #555;--color-code-output-border-top: #444;--color-inline-code-bg: #f0f0f0;--color-blockquote-border: #ccc;--color-table-border: #ddd;--color-table-header-bg: #f2f2f2;--color-spinner-border: rgba(255, 255, 255, .4);--color-spinner-border-top: #fff;--color-code-filename-bg: #2d2d2d;--color-gutter-comment: #75715e;--color-folder-border: #cfd4db;--color-monokai-foreground: #f8f8f2;--shadow-light: 0 2px 5px rgba(0, 0, 0, .05);--shadow-medium: 0 4px 10px rgba(0, 0, 0, .03);--shadow-button: 0 2px 5px rgba(0, 0, 0, .2);--shadow-play-button: 0 2px 4px rgba(0, 0, 0, .2);--border-radius-sm: 3px;--border-radius-md: 4px;--border-radius-lg: 6px;--border-radius-full: 50%;--spacing-xs: .2rem;--spacing-sm: .5rem;--spacing-md: .6rem;--spacing-lg: .8rem;--spacing-xl: 1em;--spacing-2xl: 1.2em;--spacing-3xl: 1.5em;--spacing-4xl: 2rem;--spacing-5xl: 2.5rem}@media (prefers-color-scheme: dark){:root{--color-bg-light: #1a1a1a;--color-bg-container: #2d2d2d;--color-bg-sidebar: #2d2d2d;--color-border-light: #404040;--color-text-dark: #e0e0e0;--color-text-medium: #a9b7c6;--color-inline-code-bg: #404040;--color-blockquote-border: #404040;--color-table-header-bg: #404040;--color-table-border: #404040;--color-folder-border: #404040}}body{margin:0;padding:0;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background-color:var(--color-bg-light);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.cm-editor-container{position:relative;margin-bottom:var(--spacing-3xl);border:1px solid var(--color-code-border);border-radius:var(--border-radius-md);box-shadow:var(--shadow-light);pointer-events:auto;margin:var(--spacing-xl) 0;overflow:hidden}.cm-editor-container--python{background-color:var(--color-code-bg-python)}.cm-editor-container--collapsible{max-height:12em;overflow:hidden;position:relative;mask-image:linear-gradient(to bottom,black 80%,transparent 100%);-webkit-mask-image:linear-gradient(to bottom,black 80%,transparent 100%)}.cm-editor-container--expanded{max-height:none;mask-image:none;-webkit-mask-image:none;overflow:auto}.cm-editor-container--expanded .cm-editor{height:auto!important}.cm-expand-overlay{position:absolute;bottom:0;left:0;right:0;height:4em;background:linear-gradient(to top,#fff,#fff0);display:flex;justify-content:center;align-items:center;cursor:pointer;z-index:10;pointer-events:none}.cm-editor-container--expanded .cm-expand-overlay{background:transparent}.cm-expand-button{background-color:var(--color-button-secondary);background:linear-gradient(to bottom,var(--color-button-secondary-gradient-start),var(--color-button-secondary-gradient-end));color:#fff;padding:var(--spacing-sm) var(--spacing-xl);border:none;border-radius:var(--border-radius-md);cursor:pointer;font-size:.9em;box-shadow:var(--shadow-button);pointer-events:auto}.cm-expand-button:hover{background-color:var(--color-button-secondary-hover);background:linear-gradient(to bottom,var(--color-button-secondary-hover-gradient-start),var(--color-button-secondary-hover-gradient-end))}.play-button{position:absolute;display:flex;justify-content:center;align-items:center;cursor:pointer;z-index:9999;top:-2px;right:-2px;width:32px;height:32px;background:var(--color-play-button);clip-path:polygon(20% 15%,80% 50%,20% 85%);border-radius:var(--border-radius-full);padding:8px;box-shadow:var(--shadow-play-button)}.play-button:hover{background:var(--color-play-button-hover)}.play-button.running{width:36px;height:36px;background:transparent;clip-path:none;border:4px solid var(--color-spinner-border);border-top:4px solid var(--color-spinner-border-top);animation:spin .8s linear infinite;cursor:default;pointer-events:none}button{margin-top:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-2xl);border:none;border-radius:var(--border-radius-md);background-color:var(--color-primary);color:#fff;cursor:pointer}button:hover{background-color:var(--color-primary-hover)}pre.output{background:none;color:var(--color-monokai-foreground);padding:.5ex var(--spacing-2xl);padding-top:1ex;border-radius:0 0 var(--border-radius-md) var(--border-radius-md);white-space:pre-wrap;min-height:2em;margin-top:1ex;margin-bottom:0;border:1px solid var(--color-code-output-border);border-top:.5px solid var(--color-code-output-border-top);text-align:left;line-height:1.4;font-family:Source Code Pro,monospace;font-size:.9rem;overflow-x:auto;display:none;pointer-events:auto;position:static;background-color:var(--color-code-output-bg)}pre pre{margin:0}pre.output img{max-width:100%;height:auto;display:block;margin:var(--spacing-xl) auto;border-radius:var(--border-radius-md)}pre.output.visible{display:block}.container{display:flex;height:100vh;margin:0;padding:0;background-color:var(--color-bg-container);box-shadow:0 0 15px #0000000d;overflow:hidden}#sidebar{width:280px;background-color:var(--color-bg-sidebar);border-right:1px solid var(--color-border-light);overflow-y:auto;flex-shrink:0;padding:var(--spacing-3xl) var(--spacing-sm);box-sizing:border-box;-webkit-overflow-scrolling:touch}.sidebar-header{position:relative;display:flex;flex-direction:column;align-items:flex-start;padding:0 var(--spacing-xl) var(--spacing-xl) var(--spacing-xl);border-bottom:1px solid var(--color-border-light);margin-bottom:var(--spacing-xl)}.sidebar-header h2{margin-bottom:var(--spacing-xs);font-size:1.3rem;color:var(--color-text-dark);font-weight:600}.sidebar-header h4{margin-top:0;margin-bottom:var(--spacing-xl);font-size:1rem;color:var(--color-text-medium);font-weight:400}#notebook-list{padding:0 var(--spacing-sm)}.notebook-item{padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-xs);cursor:pointer;border-radius:var(--border-radius-lg);display:flex;align-items:center;flex-wrap:nowrap;text-decoration:none;color:inherit;transition:background-color .2s ease}.notebook-item:hover{background-color:var(--color-border-light);color:var(--color-text-dark)}.notebook-item.active{background-color:var(--color-button-secondary);background:linear-gradient(to bottom,var(--color-button-secondary-gradient-start),var(--color-button-secondary-gradient-end));color:#fff}.folder-icon,.file-icon{margin-right:var(--spacing-md);flex-shrink:0;font-size:1.1em}.folder-name,.file-name{flex-grow:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0;max-width:100%;opacity:1}.folder-container{margin-left:var(--spacing-3xl);padding-top:var(--spacing-xs);padding-bottom:var(--spacing-xs);border-left:1px dashed var(--color-folder-border);padding-left:var(--spacing-sm);display:none}.notebook-item.expanded+.folder-container{display:block}#main-content{flex:1;overflow-y:auto;padding:var(--spacing-5xl);background-color:var(--color-bg-container);-webkit-overflow-scrolling:touch}#main-content-inner{max-width:1200px;margin:0 auto;position:relative}#notebook-display-area{max-width:1000px;margin:0 auto}.notebook-content-wrapper{border:1px solid var(--color-border-light);border-radius:var(--border-radius-md);padding:var(--spacing-4xl);margin-top:var(--spacing-sm);box-shadow:var(--shadow-medium);background-color:var(--color-bg-container)}.notebook-meta-info{font-size:.9em;color:var(--color-text-medium);margin:0 auto;padding-left:var(--spacing-sm);max-width:1000px}.notebook-meta-info p{margin:0;line-height:1.4}h1,h2,h3,h4,h5,h6{color:#2c3e50;margin-top:var(--spacing-3xl);margin-bottom:var(--spacing-lg)}.notebook-meta-info+.markdown-content-block h1:first-child,.notebook-meta-info+.markdown-content-block p:first-child,.notebook-meta-info+.markdown-content-block ul:first-child,.notebook-meta-info+.markdown-content-block ol:first-child{margin-top:var(--spacing-sm)!important}p{line-height:1.6;margin-bottom:var(--spacing-xl)}code:not(pre>code){background-color:var(--color-inline-code-bg);padding:.2em .4em;border-radius:var(--border-radius-sm);font-family:Fira Code,Consolas,monospace;font-size:.9em}blockquote{border-left:4px solid var(--color-blockquote-border);padding-left:var(--spacing-xl);color:var(--color-text-medium);margin:var(--spacing-xl) 0}ul,ol{margin-left:var(--spacing-3xl);margin-bottom:var(--spacing-xl)}li{margin-bottom:var(--spacing-sm)}table{width:100%;border-collapse:collapse;margin:var(--spacing-xl) 0}th,td{border:1px solid var(--color-table-border);padding:var(--spacing-lg);text-align:left}th{background-color:var(--color-table-header-bg)}.container.collapsed #sidebar .notebook-item .folder-name,.container.collapsed #sidebar .notebook-item .file-name{display:none}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.filename-display{background-color:var(--color-code-filename-bg);color:var(--color-text-light);padding:var(--spacing-sm) var(--spacing-lg);border-bottom:1px solid var(--color-code-border);font-family:Source Code Pro,monospace;font-size:.9rem;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-lg);height:2.5rem;box-sizing:border-box}.file-icon{margin-right:var(--spacing-sm)}.notebook-item.active .folder-icon,.notebook-item.active .file-icon{filter:brightness(0) invert(1)}.snippet-buttons{display:flex;gap:var(--spacing-sm);margin-left:auto;height:100%;align-items:center}.snippet-button{padding:0;border:none;background-color:var(--color-code-filename-bg);color:var(--color-text-light);font-size:1rem;cursor:pointer;border-radius:var(--border-radius-sm);height:1.8rem;width:1.8rem;display:flex;align-items:center;justify-content:center;box-sizing:border-box;box-shadow:var(--shadow-button)}.snippet-button:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.snippet-button:not(:disabled):hover{transform:scale(1.05)}.snippet-button.save-button{background-color:var(--color-play-button);color:#fff}.snippet-button.revert-button{background-color:var(--color-button-secondary);color:#fff}@media (max-width: 768px){.container{flex-direction:column}#sidebar{width:100%;height:auto;border-right:none;border-bottom:1px solid var(--color-border-light)}#main-content,.notebook-content-wrapper{padding:var(--spacing-xl)}}@media (prefers-color-scheme: dark){body{background-color:var(--color-bg-light)}.container,#main-content,.notebook-content-wrapper{background-color:var(--color-bg-container)}.notebook-meta-info{color:var(--color-text-medium)}.sidebar-header{border-bottom-color:var(--color-border-light)}#sidebar{background-color:var(--color-bg-sidebar);border-right-color:var(--color-border-light)}.notebook-item:hover{background-color:var(--color-border-light)}.notebook-item.active{background-color:var(--color-primary)}h1,h2,h3,h4,h5,h6,p,li{color:var(--color-text-dark)}code:not(pre>code){background-color:var(--color-inline-code-bg)}blockquote{border-left-color:var(--color-blockquote-border)}th{background-color:var(--color-table-header-bg)}th,td{border-color:var(--color-table-border)}}
