.py-shell{background:#eef2f6;min-height:100vh}.py-top{border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;height:84px;padding:15px 3vw;display:flex}.py-top a{color:var(--blue);margin-bottom:5px;font-size:9px;text-decoration:none;display:block}.py-top h1{color:var(--navy);margin:2px 0;font-family:Georgia,serif;font-size:22px}.kernel{align-items:center;gap:9px;display:flex}.kernel>span{background:#d79a35;border-radius:50%;width:8px;height:8px}.kernel small,.kernel b{display:block}.kernel small{color:var(--muted);font-size:7px}.kernel b{color:var(--navy);font-size:10px}.py-context{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;padding:24px 3vw;display:flex}.py-context h2{margin:5px 0;font-family:Georgia,serif;font-size:27px}.py-context p{color:#bdcbd6;margin:0;font-size:10px}.py-context>a{color:var(--gold);font-size:10px;text-decoration:none}.ide{background:#fff;border:1px solid #cbd4dc;grid-template-columns:205px minmax(380px,1.25fr) minmax(330px,1fr);min-height:660px;margin:25px 3vw;display:grid}.ide-files{border-right:1px solid var(--line);background:#f7f9fb;padding:12px}.ide-label{letter-spacing:1.3px;color:#7b8995;margin:5px 4px 10px;font-size:7px;font-weight:800}.ide-label.gap{margin-top:25px}.ide-files button{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;width:100%;padding:9px;display:flex}.ide-files button.file-active{border-left:2px solid var(--gold);background:#e8eef4}.ide-files button>span{color:var(--blue);font-size:10px;font-weight:800}.ide-files button b,.ide-files button small{display:block}.ide-files button b{color:var(--navy);font-size:9px}.ide-files button small{color:var(--muted);font-size:7px}.env p{border-bottom:1px solid var(--line);justify-content:space-between;margin:0;padding:5px;font-size:8px;display:flex}.env p span{color:var(--muted)}.engine-note{background:#fff6e9;border:1px solid #f0dcc0;margin-top:28px;padding:12px}.engine-note b{color:#8a571c;font-size:9px}.engine-note p{color:#775f46;font-size:8px;line-height:1.5}.editor-area{border-right:1px solid var(--line);flex-direction:column;min-width:0;display:flex}.editor-toolbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;height:48px;padding:0 12px;display:flex}.editor-toolbar b{color:var(--navy);font-size:10px}.editor-toolbar span{color:var(--muted);margin-left:10px;font-size:8px}.editor-toolbar button{border:1px solid var(--line);cursor:pointer;background:#fff;margin-left:5px;padding:8px 10px;font-size:9px}.editor-toolbar button.run{background:var(--navy);color:#fff;border-color:var(--navy);font-weight:800}.editor-toolbar button:disabled{opacity:.6}.code-wrap{background:#101b25;flex:1;grid-template-columns:42px 1fr;min-height:610px;display:grid}.line-nos{color:#647788;text-align:right;background:#0c1620;padding:14px 8px;font:11px/20px Consolas,monospace;overflow:hidden}.line-nos span{display:block}.code-wrap textarea{resize:none;color:#dce7ef;tab-size:4;background:#101b25;border:0;outline:0;width:100%;min-height:610px;padding:14px;font:12px/20px Consolas,Courier New,monospace}.output-area{flex-direction:column;min-width:0;display:flex}.output-tabs{border-bottom:1px solid var(--line);height:48px;display:flex}.output-tabs button{color:var(--muted);cursor:pointer;background:#fff;border:0;flex:1;font-size:9px;font-weight:700}.output-tabs button.active{color:var(--navy);border-bottom:2px solid var(--gold)}.console,.result-table,.chart-output{height:410px;overflow:auto}.console{color:#cbd9e3;background:#07121b}.console-head{border-bottom:1px solid #243542;justify-content:space-between;align-items:center;height:38px;padding:0 12px;display:flex}.console-head span{letter-spacing:1px;color:#8295a4;font-size:7px}.console-head button{color:#8295a4;background:0 0;border:0;font-size:8px}.console pre{white-space:pre-wrap;color:#b8c8d4;padding:15px;font:10px/1.7 Consolas,monospace}.output-empty{text-align:center;padding:80px 25px}.output-empty b{color:#fff;font-family:Georgia,serif}.output-empty p{color:#7f95a5;font-size:9px}.result-note{color:#80571f;background:#fff7eb;padding:10px;font-size:8px}.result-table{overflow:auto}.result-table table{font-size:9px}.chart-output{padding:25px}.chart-placeholder{text-align:center}.chart-bars{border-bottom:1px solid #c8d0d8;border-left:1px solid #c8d0d8;align-items:end;gap:6px;height:220px;margin-bottom:20px;padding:15px 10px 0;display:flex}.chart-bars i{background:#aab9c5;flex:1;min-width:6px}.chart-placeholder b{color:var(--navy);font-family:Georgia,serif}.chart-placeholder p{color:var(--muted);font-size:9px}.interpret{border-top:1px solid var(--line);background:#fbfcfd;flex:1;padding:13px}.interpret span{letter-spacing:1px;color:var(--blue);margin-bottom:7px;font-size:7px;font-weight:800;display:block}.interpret textarea{resize:none;border:1px solid var(--line);width:100%;height:115px;padding:10px;font:10px/1.5 inherit}.py-footer{border-left:3px solid var(--gold);background:#fff;justify-content:space-between;margin:0 3vw 30px;padding:16px;display:flex}.py-footer b,.py-footer span{display:block}.py-footer b{color:var(--navy);font-size:10px}.py-footer span{color:var(--muted);font-size:8px}.py-footer>div:last-child{text-align:right}.py-footer a{color:var(--blue);font-size:9px;text-decoration:none}@media (max-width:1050px){.ide{grid-template-columns:170px 1fr}.output-area{border-top:1px solid var(--line);grid-column:1/-1}.console,.result-table,.chart-output{height:320px}.interpret textarea{height:80px}}@media (max-width:650px){.py-top,.py-context,.py-footer{height:auto;display:block}.kernel{margin-top:10px}.py-context>a{margin-top:12px;display:inline-block}.ide{margin:15px;display:block}.ide-files{display:none}.editor-area{border-right:0}.code-wrap,.code-wrap textarea{min-height:500px}.py-footer>div:last-child{text-align:left;margin-top:10px}}
