:root{--main:#1e73be;--main-hover:#1b67ab;--header:#0c152a;--page:#fafafa;--surface:#ffffff;--text:#111111;--muted:#595959;--border:#e3e7ee;--yellow:#ffd343;--danger:#d94343;--success:#2d9b5f;--editor:#1e1e1e;--editor-2:#252526;--editor-3:#2d2d30;--editor-border:#3b3b40;--console-height:220px;--radius:10px;--shadow:0 8px 28px rgba(15,23,42,.08)}*{box-sizing:border-box}html{background:var(--page);scroll-behavior:smooth}body{margin:0;background:var(--page);color:var(--text);font-family:Tahoma,Segoe UI,Arial,sans-serif;min-height:100vh}button,input{font:inherit}a{color:inherit;text-decoration:none}button{touch-action:manipulation}.site-header{height:68px;background:var(--header);position:sticky;top:0;z-index:50;box-shadow:0 2px 12px #00000024}.header-inner{width:min(1140px,calc(100% - 32px));height:68px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{height:68px;display:flex;align-items:center;gap:10px;color:#fff;flex:none}.brand-mark{width:38px;height:38px;position:relative;display:block}.brand-mark span{position:absolute;width:26px;height:18px;border-radius:8px 8px 5px}.brand-mark span:first-child{background:var(--main);top:3px;right:3px}.brand-mark span:last-child{background:var(--yellow);bottom:3px;left:3px;transform:rotate(180deg)}.brand-mark span:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#fff;top:5px;right:6px}.brand-mark span:last-child:after{background:var(--header)}.brand-copy{display:flex;align-items:baseline;gap:7px;white-space:nowrap}.brand-copy strong{font-size:20px}.brand-copy small{font-size:10px;color:var(--yellow);font-weight:800;letter-spacing:1.3px}.main-nav{height:68px;display:flex;align-items:stretch;margin-inline-start:auto}.main-nav a{display:flex;align-items:center;padding:0 13px;color:#f7f9fc;font-size:14px;font-weight:700;border-bottom:3px solid transparent;transition:.15s ease}.main-nav a:hover,.main-nav a.active{color:#fff;border-bottom-color:var(--main)}.main-nav .blog-link{color:var(--yellow)}.menu-toggle{display:none;width:42px;height:42px;border:0;border-radius:8px;background:#ffffff14;color:#fff;font-size:22px;cursor:pointer}.page-shell{width:min(1140px,calc(100% - 32px));margin:0 auto;padding:26px 0 30px}.tool-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:18px}.eyebrow{display:inline-block;color:var(--main);font-size:13px;font-weight:800;margin-bottom:7px}.tool-intro h1{font-size:28px;line-height:1.35;margin:0 0 7px;font-weight:800}.tool-intro p{margin:0;max-width:760px;color:var(--muted);line-height:1.8;font-size:15px}.runtime-chip{display:flex;align-items:center;gap:8px;flex:none;border:1px solid var(--border);background:var(--surface);padding:9px 12px;border-radius:999px;color:var(--muted);font-size:13px;box-shadow:0 3px 12px #0f172a0a}.state-dot{width:9px;height:9px;border-radius:50%;background:#d49b22;box-shadow:0 0 0 3px #d49b2221}.runtime-chip[data-state=ready] .state-dot{background:var(--success);box-shadow:0 0 0 3px #2d9b5f21}.runtime-chip[data-state=running] .state-dot{background:var(--main);box-shadow:0 0 0 3px #1e73be21;animation:pulse 1s infinite}.runtime-chip[data-state=error] .state-dot{background:var(--danger);box-shadow:0 0 0 3px #d9434321}@keyframes pulse{50%{opacity:.4}}.editor-app{background:var(--editor-2);border:1px solid #34343a;border-radius:12px;overflow:hidden;box-shadow:0 18px 45px #0f172a2b;direction:ltr;text-align:left}.app-topbar{height:42px;background:#181818;display:flex;align-items:stretch;justify-content:space-between;border-bottom:1px solid var(--editor-border)}.file-tabs{display:flex;align-items:stretch}.file-tab{border:0;border-right:1px solid #333;background:var(--editor-2);color:#ddd;padding:0 16px;display:flex;align-items:center;gap:8px;cursor:default;font-family:Consolas,Monaco,monospace;font-size:13px}.file-tab.active{background:var(--editor)}.python-dot{font-size:10px;font-weight:800;color:var(--yellow)}.unsaved-dot{color:#aaa;font-size:10px}.top-actions{display:flex;align-items:center;padding:0 7px}.icon-btn{width:32px;height:30px;border:0;border-radius:5px;background:transparent;color:#aaa;cursor:pointer;font-size:18px}.icon-btn:hover{background:#333;color:#fff}.toolbar{min-height:48px;background:var(--editor-3);border-bottom:1px solid var(--editor-border);display:flex;align-items:center;justify-content:space-between;gap:10px;padding:7px 9px;direction:ltr;overflow-x:auto}.toolbar-primary,.toolbar-secondary{display:flex;align-items:center;gap:7px;white-space:nowrap}.btn{border:1px solid #56565c;background:#3b3b40;color:#eee;border-radius:6px;min-height:32px;padding:5px 10px;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer;font-size:13px;transition:.12s ease}.btn:hover:not(:disabled){background:#494950;border-color:#6a6a70}.btn:focus-visible,.icon-btn:focus-visible,.text-btn:focus-visible{outline:2px solid #4da3ff;outline-offset:2px}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-run{background:var(--main);border-color:#2c86cf;color:#fff;font-weight:800}.btn-run:hover:not(:disabled){background:var(--main-hover)}.btn-stop{background:#6d3030;border-color:#8f4343;color:#fff}.btn-stop:hover:not(:disabled){background:#843939}.btn-install{background:#2b6a45;border-color:#3b8559}kbd{font-family:inherit;font-size:10px;border:1px solid rgba(255,255,255,.2);border-bottom-width:2px;border-radius:4px;padding:1px 4px;color:#e6e6e6;background:#0000002e}.package-bar{background:#202023;border-bottom:1px solid var(--editor-border);padding:11px 12px;color:#ddd;direction:rtl;text-align:right}.package-bar label{font-weight:800;font-size:13px;display:block;margin-bottom:7px}.package-control{display:flex;gap:7px;direction:ltr}.package-control input{flex:1;min-width:0;background:#151516;color:#eee;border:1px solid #4c4c52;border-radius:6px;padding:8px 10px;font-family:Consolas,Monaco,monospace;outline:0}.package-control input:focus{border-color:var(--main)}.package-bar p{margin:7px 0 0;color:#9b9ba2;font-size:12px}.workbench{height:min(72vh,760px);min-height:520px;display:flex;flex-direction:column;background:var(--editor)}.editor-pane{min-height:180px;flex:1;overflow:hidden;position:relative}.editor-pane #editor{height:100%}.splitter{height:7px;flex:0 0 7px;background:#252529;border-top:1px solid #3a3a40;border-bottom:1px solid #3a3a40;cursor:row-resize;display:flex;align-items:center;justify-content:center;touch-action:none}.splitter span{width:42px;height:2px;border-radius:99px;background:#666}.splitter:hover,.splitter:focus{background:#2e2e34;outline:0}.splitter:hover span,.splitter:focus span{background:var(--main)}.console-pane{height:var(--console-height);min-height:110px;max-height:65%;flex:0 0 var(--console-height);background:#161617;display:flex;flex-direction:column;overflow:hidden}.console-header{height:36px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #303034;padding:0 10px}.console-tabs{height:100%;display:flex}.console-tab{border:0;border-bottom:2px solid var(--main);background:transparent;color:#eee;font-size:11px;font-weight:800;letter-spacing:.6px;padding:0 8px}.text-btn{border:0;background:transparent;color:#999;cursor:pointer;font-size:12px}.text-btn:hover{color:#fff}.console-output{flex:1;overflow:auto;padding:10px 13px;color:#d4d4d4;font:13px/1.65 Consolas,Monaco,Courier New,monospace;white-space:pre-wrap;overflow-wrap:anywhere;direction:ltr;text-align:left;overscroll-behavior:contain}.console-line{min-height:1.65em}.console-line.stdout{color:#d4d4d4}.console-line.stderr{color:#ff7b72}.console-line.system{color:#a9a9b0}.console-line.success{color:#7ee787}.console-line.warning{color:#e5b567}.console-line.input{color:#79c0ff}.error-card{direction:rtl;text-align:right;font-family:Tahoma,Segoe UI,Arial,sans-serif;background:#261d1e;border:1px solid #633538;border-right:4px solid #f15b64;border-radius:7px;padding:10px 12px;margin:7px 0;color:#eee}.error-card strong{display:block;color:#ff8d94;margin-bottom:5px}.error-card p{margin:4px 0;line-height:1.7;font-size:13px}.error-card details{margin-top:7px;color:#c8c8ce}.error-card pre{direction:ltr;text-align:left;white-space:pre-wrap;color:#e8e8e8;font:12px/1.55 Consolas,monospace;background:#171718;border-radius:5px;padding:8px;overflow:auto}.stdin-bar{border-top:1px solid #34343a;background:#1d1d20;padding:9px 12px;color:#ddd;direction:rtl;text-align:right}.stdin-bar label{display:block;font-size:12px;color:#bbb;margin-bottom:6px}.stdin-control{display:flex;align-items:center;direction:ltr;background:#111;border:1px solid #4c4c52;border-radius:6px;overflow:hidden}.stdin-control:focus-within{border-color:var(--main)}.stdin-control .prompt{padding-left:9px;color:#79c0ff;font-family:monospace}.stdin-control input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:#fff;padding:8px;font-family:Consolas,monospace}.stdin-control button{height:100%;border:0;border-left:1px solid #3d3d42;background:var(--main);color:#fff;padding:8px 13px;cursor:pointer}.statusbar{height:28px;background:#0969a5;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 10px;font-size:11px;direction:ltr;overflow:hidden}.status-group{display:flex;align-items:center;gap:8px;white-space:nowrap}.separator{opacity:.45}.privacy-note{text-align:center;color:var(--muted);font-size:12px;margin:12px 0 0;line-height:1.7}.toast{position:fixed;left:50%;bottom:28px;transform:translate(-50%,20px);background:#15161a;color:#fff;border:1px solid #333;border-radius:8px;padding:9px 13px;box-shadow:0 10px 30px #0000003d;font-size:13px;z-index:1000;opacity:0;pointer-events:none;transition:.18s ease;direction:rtl}.toast.show{opacity:1;transform:translate(-50%)}.cm-editor{height:100%;background:var(--editor);font-size:14px}.cm-editor.cm-focused{outline:none}.cm-scroller{font-family:Consolas,Monaco,Courier New,monospace;line-height:1.55;overscroll-behavior:contain}.cm-gutters{background:#1e1e1e!important;color:#6e7681!important;border-right:1px solid #2f3035!important}.cm-activeLineGutter{background:#27272a!important}.cm-activeLine{background:#ffffff06!important}.cm-selectionBackground{background:#264f78!important}.cm-cursor{border-left-color:#fff!important}.cm-error-line{background:#f4474721!important;box-shadow:inset 3px 0 #f44747}.editor-app:fullscreen{width:100vw;height:100vh;border-radius:0;border:0;background:#111}.editor-app:fullscreen .workbench{height:calc(100vh - 118px);max-height:none}.editor-app:fullscreen .app-topbar{height:42px}.editor-app:fullscreen .toolbar{min-height:48px}@media(max-width:880px){.header-inner{width:100%;padding:0 14px}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:68px;right:0;left:0;height:auto;background:var(--header);border-top:1px solid rgba(255,255,255,.08);padding:8px 14px 14px;box-shadow:0 12px 24px #0003;flex-direction:column}.main-nav.open{display:flex}.main-nav a{height:44px;border-bottom:0;border-right:3px solid transparent;padding:0 12px}.main-nav a:hover,.main-nav a.active{border-right-color:var(--main);background:#ffffff0a}.tool-intro{align-items:flex-start;flex-direction:column;gap:12px}.runtime-chip{align-self:flex-start}.toolbar{align-items:flex-start}.toolbar-secondary{overflow-x:auto;max-width:100%;padding-bottom:1px}.workbench{height:68vh;min-height:480px}.page-shell{width:min(100% - 20px,1140px);padding-top:18px}}@media(max-width:600px){.brand-copy strong{font-size:18px}.brand-mark{width:34px;height:34px}.tool-intro h1{font-size:23px}.tool-intro p{font-size:14px}.editor-app{border-radius:9px}.app-topbar{height:40px}.toolbar{padding:6px;gap:6px}.btn{min-height:34px;padding:5px 9px}.btn-run kbd{display:none}.workbench{height:calc(100svh - 245px);min-height:430px;max-height:660px}.console-pane{--console-height:170px}.statusbar{font-size:10px;padding:0 7px}.desktop-only{display:none}.cm-editor{font-size:13.5px}.cm-content{padding-bottom:42px}.privacy-note{padding:0 8px}}@media(max-width:420px){.page-shell{width:calc(100% - 12px)}.toolbar-secondary .btn{font-size:12px}.status-runtime span:nth-child(n+2){display:none}.tool-intro{padding:0 4px}.runtime-chip{font-size:12px}}.file-tab{min-width:180px;max-width:320px}.file-name-input{width:150px;min-width:80px;max-width:240px;border:1px solid transparent;border-radius:4px;background:transparent;color:#ddd;font:13px/1.2 Consolas,Monaco,Courier New,monospace;padding:4px 5px;outline:0}.file-name-input:hover{background:#2c2c2f}.file-name-input:focus{background:#1b1b1c;border-color:#4d8fca;color:#fff}.icon-btn.active{background:#094771;color:#fff}.btn-save{background:#345f89;border-color:#477aa9}.btn-save:hover:not(:disabled){background:#3e6f9e}.console-output{display:block;white-space:pre-wrap}.console-chunk{white-space:pre-wrap}.console-chunk.stdout{color:#d4d4d4}.console-chunk.stderr{color:#ff7b72}.console-chunk.input{color:#79c0ff}.error-title-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.error-title-row strong{margin:0}.error-go-line{border:1px solid #744047;background:#321f22;color:#ffb1b6;border-radius:5px;padding:4px 8px;cursor:pointer;font:12px/1.2 Tahoma,Segoe UI,Arial,sans-serif}.error-go-line:hover{background:#48272b}.cm-error-token{text-decoration-line:underline;text-decoration-style:wavy;text-decoration-color:#f44747;text-decoration-thickness:1.5px;text-underline-offset:3px}#problemsState.has-problem{color:#ffd5d7;background:#791f276b;padding:2px 5px;border-radius:3px}.shortcut-strip{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;margin:12px 0 0;color:var(--muted);font-size:11px;direction:rtl}.shortcut-strip span{display:inline-flex;align-items:center;gap:5px}.shortcut-strip kbd{color:#4a4f57;background:#fff;border-color:#cbd1da}.stdin-bar:not([hidden]){display:block;animation:stdinIn .14s ease}@keyframes stdinIn{0%{opacity:.4;transform:translateY(3px)}to{opacity:1;transform:none}}.runtime-chip[data-state=error]{border-color:#d9434347;color:#9b3636}@media(max-width:600px){.file-tab{min-width:150px;max-width:220px}.file-name-input{width:122px}.shortcut-strip{display:none}.toolbar-secondary{scrollbar-width:none}.toolbar-secondary::-webkit-scrollbar{display:none}.error-title-row{align-items:flex-start;flex-direction:column}}
