.code-cell.svelte-1qt04dz{border:1px solid var(--border);border-radius:8px;margin-bottom:1.5rem;overflow:hidden;background:var(--bg);box-shadow:0 1px 3px #0000001a;text-align:left;width:100%;box-sizing:border-box}.editor-container.svelte-1qt04dz{position:relative;display:flex;align-items:stretch}.editor.svelte-1qt04dz{flex-grow:1;border-right:1px solid var(--border)}.side-controls.svelte-1qt04dz{width:60px;background:#f8f8f8;display:flex;flex-direction:column;align-items:center;gap:.5rem;padding-top:.5rem}.run-button.svelte-1qt04dz{width:40px;height:40px;background:#fff;border:1px solid #ddd;border-radius:4px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:all .2s;color:#4caf50}.run-button.svelte-1qt04dz:hover:not(:disabled){background:#f0f0f0;border-color:#4caf50}.auto-run-toggle.svelte-1qt04dz{display:flex;flex-direction:column;align-items:center;gap:2px;cursor:pointer;font-size:.7rem;color:#666}.auto-run-toggle.svelte-1qt04dz input:where(.svelte-1qt04dz){margin:0;cursor:pointer}.toggle-label.svelte-1qt04dz{font-weight:700;text-transform:uppercase}.run-button.svelte-1qt04dz:disabled{cursor:wait;opacity:.7}.output-area.svelte-1qt04dz{padding:.75rem;background:#fafafa;border-top:1px solid var(--border);font-family:var(--mono);font-size:.9rem;transition:opacity .2s;max-height:500px;overflow-y:auto}.output-area.stale.svelte-1qt04dz{opacity:.5;filter:grayscale(1)}.output-line.svelte-1qt04dz{white-space:pre-wrap;margin-bottom:.25rem}.stdout.svelte-1qt04dz{color:#333}.stderr.svelte-1qt04dz{color:#d32f2f}.error.svelte-1qt04dz{color:#d32f2f;background:#ffebee;padding:.5rem;border-radius:4px;margin:.5rem 0}.rich-output.svelte-1qt04dz{margin-top:.5rem;background:#fff;border:1px solid #eee;border-radius:4px;padding:.5rem;overflow:auto;display:flex;justify-content:center}.image-output.svelte-1qt04dz img:where(.svelte-1qt04dz){max-width:100%;height:auto;display:block}.result-line.svelte-1qt04dz{display:flex;gap:.5rem;margin-top:.5rem;padding-top:.5rem;border-top:1px dashed var(--border)}.out-prefix.svelte-1qt04dz{color:#d32f2f;font-weight:700;min-width:40px}.result-value.svelte-1qt04dz{margin:0;color:#333;white-space:pre-wrap}.metadata-line.svelte-1qt04dz{margin-top:.5rem;padding-top:.5rem;border-top:1px solid #eee;display:flex;align-items:center;gap:.5rem;font-size:.75rem}.meta-label.svelte-1qt04dz{color:#666;font-weight:700}.tags.svelte-1qt04dz{display:flex;gap:.25rem;flex-wrap:wrap}.tag.svelte-1qt04dz{background:#eef2ff;color:#4f46e5;padding:2px 6px;border-radius:4px;font-family:var(--mono)}.spinner.svelte-1qt04dz{width:20px;height:20px;border:2px solid #ccc;border-top-color:#4caf50;border-radius:50%;animation:svelte-1qt04dz-spin 1s linear infinite}@keyframes svelte-1qt04dz-spin{to{transform:rotate(360deg)}}.loading-status.svelte-1qt04dz{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:#666;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid #eee}.spinner-tiny.svelte-1qt04dz{width:12px;height:12px;border:2px solid #ccc;border-top-color:#3b82f6;border-radius:50%;animation:svelte-1qt04dz-spin 1s linear infinite}.markdown-cell.svelte-ityva3{padding:1rem;margin-bottom:1rem;border:1px solid transparent;border-radius:8px;transition:border-color .2s;cursor:text}.markdown-cell.svelte-ityva3:hover{border-color:#eee}.prose.svelte-ityva3{line-height:1.6;color:#374151}.editor-container.svelte-ityva3{display:flex;flex-direction:column;gap:.5rem}textarea.svelte-ityva3{width:100%;min-height:150px;padding:.75rem;border:1px solid var(--border);border-radius:4px;font-family:inherit;font-size:1rem;resize:vertical}.hint.svelte-ityva3{font-size:.8rem;color:#9ca3af}.notebook.svelte-dh5gkj{display:flex;flex-direction:column;gap:.5rem}.cell-wrapper.svelte-dh5gkj{position:relative;display:grid;grid-template-columns:1fr 40px;gap:1rem;padding:.5rem 0}.cell-wrapper.read-only.svelte-dh5gkj{grid-template-columns:1fr}.cell-content.svelte-dh5gkj{min-width:0}.cell-sidebar.svelte-dh5gkj{display:flex;flex-direction:column;justify-content:center;gap:.25rem;opacity:0;transition:opacity .2s}.cell-wrapper.svelte-dh5gkj:hover .cell-sidebar:where(.svelte-dh5gkj){opacity:1}.cell-actions.svelte-dh5gkj{position:absolute;left:0;right:0;display:flex;justify-content:center;gap:.5rem;opacity:0;transition:opacity .2s;z-index:10}.cell-actions.top.svelte-dh5gkj{top:-12px}.cell-actions.bottom.svelte-dh5gkj{bottom:-12px}.cell-wrapper.svelte-dh5gkj:hover .cell-actions:where(.svelte-dh5gkj){opacity:1}.add-btn.svelte-dh5gkj{background:#fff;border:1px solid #e5e7eb;padding:2px 12px;border-radius:12px;font-size:.75rem;font-weight:600;color:#6b7280;cursor:pointer;box-shadow:0 1px 2px #0000000d}.add-btn.svelte-dh5gkj:hover{background:#f9fafb;border-color:#d1d5db;color:#111827}.icon-btn.svelte-dh5gkj{width:32px;height:32px;border-radius:6px;border:1px solid #e5e7eb;background:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;color:#6b7280}.icon-btn.svelte-dh5gkj:hover:not(:disabled){background:#f3f4f6;color:#111827}.icon-btn.svelte-dh5gkj:disabled{opacity:.3;cursor:not-allowed}.icon-btn.delete.svelte-dh5gkj:hover{background:#fee2e2;color:#dc2626;border-color:#fecaca}.code-cell-container.svelte-dh5gkj{display:flex;gap:.75rem;align-items:flex-start}.engine-badge.svelte-dh5gkj{margin-top:1rem;writing-mode:vertical-lr;transform:rotate(180deg);font-size:.65rem;text-transform:uppercase;font-weight:800;padding:8px 4px;border-radius:4px;letter-spacing:.1em;min-width:24px;text-align:center}.engine-badge.pyodide.svelte-dh5gkj{background:#e0f2fe;color:#0369a1}.engine-badge.javascript.svelte-dh5gkj{background:#fef3c7;color:#92400e}.engine-badge.micropython.svelte-dh5gkj{background:#dcfce7;color:#166534}.notebook-container.svelte-aoplv{margin:1rem 0;border:1px solid #e2e8f0;border-radius:8px;overflow:hidden;min-height:100px}.loading.svelte-aoplv,.error.svelte-aoplv{padding:2rem;text-align:center;background:#f8fafc}.loading.svelte-aoplv{color:#64748b}.error.svelte-aoplv{color:#ef4444;background:#fef2f2}.spinner.svelte-aoplv{width:24px;height:24px;border:3px solid #f3f4f6;border-top-color:#3b82f6;border-radius:50%;animation:svelte-aoplv-spin 1s linear infinite;margin:0 auto .5rem}@keyframes svelte-aoplv-spin{to{transform:rotate(360deg)}}button.svelte-aoplv{margin-top:1rem;padding:.5rem 1rem;background:#ef4444;color:#fff;border:none;border-radius:4px;cursor:pointer}
