html,body{height:100%}body:has(#python-ide[data-theme=light]){background:#eceef1}body:has(#python-ide[data-theme=dark]){background:#16170f}#python-ide{--ide-bg: #eceef1;--ide-panel: #ffffff;--ide-border: #d6d9df;--ide-text: #111827;--ide-muted: #6b7280;--ide-soft: #f1f2f4;--ide-accent: #111827;--ide-accent-text: #ffffff;--term-bg: #f7f8fa;--term-text: #1f2937;--r-panel: 4px;--r-ctrl: 3px;height:100dvh;box-sizing:border-box;display:flex;flex-direction:column;gap:.4rem;padding:.45rem;color:var(--ide-text);background:var(--ide-bg)}#python-ide[data-theme=dark]{--ide-bg: #16170f;--ide-panel: #23241d;--ide-border: #3a3b32;--ide-text: #f3f4f2;--ide-muted: #9aa0a6;--ide-soft: #2c2d25;--ide-accent: #525a64;--term-bg: #14150f;--term-text: #e5e7eb}#python-ide *{box-sizing:border-box}#python-ide .ide-card,#python-ide .ide-toolbar,#python-ide .ide-statusbar{background:var(--ide-panel);border:1px solid var(--ide-border);border-radius:var(--r-panel)}#python-ide .ide-card{overflow:hidden}#python-ide .ide-head{border-bottom:1px solid var(--ide-border)}#python-ide .ide-muted{color:var(--ide-muted)}#python-ide .ide-btn{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--ide-border);background:var(--ide-panel);color:var(--ide-text);border-radius:var(--r-ctrl);padding:.3rem .55rem;font-size:.78rem;font-weight:500;cursor:pointer;white-space:nowrap}#python-ide .ide-btn:hover{background:var(--ide-soft)}#python-ide .ide-btn:disabled{opacity:.5;cursor:default}#python-ide .ide-btn-primary{background:var(--ide-accent);color:var(--ide-accent-text);border-color:var(--ide-accent)}#python-ide .ide-btn-primary:hover{background:color-mix(in srgb,var(--ide-accent) 88%,#fff)}#python-ide .ide-icon{padding:.3rem .45rem;font-size:.9rem;line-height:1}#python-ide .ide-btn svg,#python-ide .ac-brand svg{width:1em;height:1em;flex:0 0 auto}#python-ide select.ide-input,#python-ide input.ide-input{border:1px solid var(--ide-border);background:var(--ide-panel);color:var(--ide-text);border-radius:var(--r-ctrl);padding:.28rem .4rem;font-size:.78rem}#python-ide .ide-top{flex:0 0 auto}#python-ide .ide-toolbar{container-type:inline-size}#python-ide .tb-right{margin-left:0}@container (min-width: 880px){#python-ide .tb-right{margin-left:auto}}#python-ide .ac-brand{display:inline-flex;align-items:center;gap:.3rem}#python-ide .ac-divider{width:1px;align-self:stretch;min-height:1.3rem;margin:0 .2rem;background:var(--ide-border)}#python-ide .ide-main{flex:1 1 auto;min-height:0;min-width:0;display:grid}#python-ide[data-monitor=bottom] .ide-main{grid-template-rows:minmax(0,1fr) 8px var(--mon-h, 260px);grid-template-areas:"editor" "rez" "monitor"}#python-ide[data-monitor=top] .ide-main{grid-template-rows:var(--mon-h, 260px) 8px minmax(0,1fr);grid-template-areas:"monitor" "rez" "editor"}#python-ide[data-monitor=right] .ide-main{grid-template-columns:minmax(0,1fr) 8px var(--mon-w, 520px);grid-template-areas:"editor rez monitor"}#python-ide .ide-editor-pane{grid-area:editor;min-height:0;min-width:0;display:grid;grid-template-rows:auto minmax(0,1fr) 8px var(--msg-h, 150px);grid-template-areas:"ehead" "edit" "mrez" "msgs"}#python-ide .ide-monitor-pane{grid-area:monitor;min-height:0;min-width:0;display:flex;flex-direction:column}#python-ide .ide-rez{grid-area:rez}#python-ide[data-edit=closed] .ide-editor-pane,#python-ide[data-out=closed] .ide-monitor-pane,#python-ide[data-edit=closed] .ide-rez,#python-ide[data-out=closed] .ide-rez{display:none}#python-ide[data-edit=closed] .ide-main,#python-ide[data-out=closed] .ide-main{display:block}#python-ide[data-edit=closed] .ide-monitor-pane,#python-ide[data-out=closed] .ide-editor-pane{height:100%}#python-ide[data-console=closed] .ide-editor-pane{grid-template-rows:auto minmax(0,1fr) auto;grid-template-areas:"ehead" "edit" "msgs"}#python-ide[data-console=closed] .ide-mrez,#python-ide[data-console=closed] .ac-log{display:none}#python-ide .ac-console-min{padding:0 .3rem}#python-ide .ide-rez,#python-ide .ide-mrez{position:relative;touch-action:none}#python-ide[data-monitor=bottom] .ide-rez,#python-ide[data-monitor=top] .ide-rez{cursor:row-resize}#python-ide[data-monitor=right] .ide-rez{cursor:col-resize}#python-ide .ide-mrez{grid-area:mrez;cursor:row-resize}#python-ide .ide-rez:after,#python-ide .ide-mrez:after{content:"";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:var(--ide-border);border-radius:2px;width:40px;height:3px}#python-ide[data-monitor=right] .ide-rez:after{width:3px;height:40px}#python-ide .ide-rez:hover:after,#python-ide .ide-mrez:hover:after{background:var(--ide-muted)}#python-ide .ide-ehead{grid-area:ehead}#python-ide .ac-fname{border:0;background:transparent;color:var(--ide-text);font:inherit;font-weight:600;field-sizing:content;min-width:2ch;max-width:14rem;padding:0 .1rem}#python-ide .ac-fname:focus{outline:1px solid var(--ide-border);border-radius:2px}#python-ide .ac-ace,#python-ide .ac-code{grid-area:edit;min-height:0;height:100%;width:100%}#python-ide .ac-code{resize:none;border:0;padding:.65rem;font-family:ui-monospace,SF Mono,Menlo,monospace;line-height:1.5;background:var(--ide-panel);color:var(--ide-text)}#python-ide[data-theme=dark] .ac-code{background:#272822;color:#f8f8f2}#python-ide .ide-messages{grid-area:msgs;min-height:0;display:flex;flex-direction:column;overflow:hidden;border-top:1px solid var(--ide-border)}#python-ide .ac-log{flex:1 1 auto;min-height:0;overflow:auto;margin:0;padding:.45rem .6rem;white-space:pre-wrap;font-family:ui-monospace,Menlo,monospace;font-size:12px;background:var(--term-bg);color:var(--term-text)}#python-ide .ide-figs{flex:1 1 auto;min-height:0;min-width:0;overflow:auto;padding:.7rem;display:flex;flex-direction:column;gap:.8rem;background:var(--term-bg)}#python-ide .ide-figs img{max-width:100%;height:auto;align-self:flex-start;background:#fff;border:1px solid var(--ide-border);border-radius:var(--r-panel)}#python-ide .ide-figs-empty{margin:auto;text-align:center;color:var(--ide-muted);font-size:.82rem;line-height:1.6;padding:1.5rem}#python-ide .ide-figs-empty code{font-family:ui-monospace,Menlo,monospace;font-size:.76rem;background:var(--ide-soft);padding:.04rem .25rem;border-radius:3px}
