/* Shared Creative Python studio. It uses chapter variables when available. */
.creative-studio{--cps-bg:var(--bg2,#10131b);--cps-panel:var(--panel,#171c27);--cps-panel-2:var(--panel2,#202838);--cps-ink:var(--ink,#eef4ff);--cps-muted:var(--muted,#9aa7ba);--cps-line:var(--line,#324158);--cps-cyan:var(--cyan,#5cdbeb);--cps-green:var(--green,#72d39b);--cps-amber:var(--amber,#f3bc57);--cps-red:var(--red,#ef7777);margin:18px 0;border:1px solid var(--cps-line);border-radius:14px;background:var(--cps-bg);color:var(--cps-ink);overflow:hidden;box-shadow:0 16px 40px rgba(0,0,0,.16)}
.creative-studio *{box-sizing:border-box}.creative-studio button,.creative-studio select,.creative-studio textarea,.creative-studio input{font:inherit}.creative-studio button,.creative-studio select,.creative-studio textarea,.creative-studio input{color:var(--cps-ink)}
.creative-studio__head,.creative-studio__bar,.creative-studio__pane-head,.creative-studio__file-tools{display:flex;align-items:center;gap:9px}.creative-studio__head{justify-content:space-between;padding:12px 14px;border-bottom:1px solid var(--cps-line);background:var(--cps-panel)}.creative-studio__brand{display:flex;align-items:center;gap:8px;min-width:0}.creative-studio__brand i{width:9px;height:9px;border-radius:50%;background:var(--cps-cyan);box-shadow:0 0 12px var(--cps-cyan)}.creative-studio__brand strong{font:700 12px "JetBrains Mono",monospace}.creative-studio__status{color:var(--cps-muted);font:10px "JetBrains Mono",monospace}.creative-studio__status.ready{color:var(--cps-green)}.creative-studio__status.busy{color:var(--cps-amber)}.creative-studio__status.error{color:var(--cps-red)}
.creative-studio__select,.creative-studio__input{min-width:0;padding:7px 8px;border:1px solid var(--cps-line);border-radius:7px;background:var(--cps-panel-2);outline:0;font-size:11px}.creative-studio__select:focus,.creative-studio__input:focus,.creative-studio__editor:focus{border-color:var(--cps-cyan);box-shadow:0 0 0 2px color-mix(in srgb,var(--cps-cyan) 16%,transparent)}
.creative-studio__grid{display:grid;grid-template-columns:minmax(300px,1.08fr) minmax(300px,.92fr)}.creative-studio__editor-pane{min-width:0;border-right:1px solid var(--cps-line);background:#0d1118}.creative-studio__output-pane{min-width:0;background:var(--cps-bg)}.creative-studio__pane-head{justify-content:space-between;padding:9px 12px;border-bottom:1px solid var(--cps-line);font-size:11px}.creative-studio__pane-head b{font:700 10px "JetBrains Mono",monospace;text-transform:uppercase;letter-spacing:.06em}.creative-studio__pane-head span{color:var(--cps-muted);font-size:10px}
.creative-studio__editor,.creative-studio__file-editor{display:block;width:100%;border:0;outline:0;background:#0d1118;color:var(--cps-ink);resize:vertical;font:12px/1.65 "JetBrains Mono",monospace;tab-size:4}.creative-studio__editor{min-height:285px;padding:13px}.creative-studio__file-editor{min-height:88px;padding:10px;border-top:1px solid var(--cps-line);background:var(--cps-panel)}.creative-studio__file-tools{padding:8px 11px;border-top:1px solid var(--cps-line);background:var(--cps-panel)}.creative-studio__file-tools label{color:var(--cps-muted);font:9px "JetBrains Mono",monospace;text-transform:uppercase}.creative-studio__file-tools .creative-studio__select{flex:1}.creative-studio__bar{flex-wrap:wrap;padding:10px 12px;border-top:1px solid var(--cps-line);background:var(--cps-panel)}
.creative-studio__button{padding:7px 10px;border:1px solid var(--cps-line);border-radius:7px;background:var(--cps-panel-2);cursor:pointer;font-size:11px;font-weight:700;transition:.15s}.creative-studio__button:hover:not(:disabled){border-color:var(--cps-cyan);color:var(--cps-cyan)}.creative-studio__button--run{border-color:var(--cps-cyan);background:var(--cps-cyan);color:#071219}.creative-studio__button--stop{color:var(--cps-red)}.creative-studio__button:disabled{opacity:.45;cursor:not-allowed}.creative-studio__bar label{display:flex;align-items:center;gap:6px;margin-left:auto;color:var(--cps-muted);font-size:10px}.creative-studio__bar .creative-studio__input{width:130px}
.creative-studio__output{min-height:171px;max-height:330px;margin:0;padding:12px;overflow:auto;background:#0b1017;color:var(--cps-green);font:11px/1.6 "JetBrains Mono",monospace;white-space:pre-wrap;overflow-wrap:anywhere}.creative-studio__error{margin:10px 12px;padding:9px;border-left:3px solid var(--cps-red);background:color-mix(in srgb,var(--cps-red) 8%,var(--cps-panel));color:var(--cps-red);font:11px/1.45 "JetBrains Mono",monospace;white-space:pre-wrap;overflow-wrap:anywhere}.creative-studio__empty{padding:30px 15px;color:var(--cps-muted);font-size:12px;text-align:center}.creative-studio__pyui{display:grid;gap:9px;min-height:171px;padding:12px;overflow:auto}.creative-studio__pyui-row,.creative-studio__pyui-grid{display:grid;gap:8px}.creative-studio__pyui-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.creative-studio__pyui-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr))}.creative-studio__pyui-box,.creative-studio__pyui-card{padding:10px;border:1px solid var(--cps-line);border-radius:8px;background:var(--cps-panel)}.creative-studio__pyui-card h3{margin:0 0 8px;color:var(--cps-cyan);font-size:13px}.creative-studio__pyui-text{margin:0;color:var(--cps-ink);font-size:13px;line-height:1.5}.creative-studio__pyui-heading{margin:0;color:var(--cps-cyan);font-size:16px}.creative-studio__pyui-code{margin:0;padding:9px;border:1px solid var(--cps-line);border-radius:6px;background:#0b1017;color:var(--cps-amber);font:11px/1.5 "JetBrains Mono",monospace;white-space:pre-wrap;overflow-wrap:anywhere}.creative-studio__pyui-button{padding:7px 9px;border:1px solid var(--cps-line);border-radius:6px;background:var(--cps-panel-2);color:var(--cps-muted);text-align:left}.creative-studio__pyui-notice{padding:9px;border-left:3px solid var(--cps-cyan);background:var(--cps-panel);font-size:12px;line-height:1.45}.creative-studio__pyui-notice.success{border-color:var(--cps-green)}.creative-studio__pyui-notice.warning{border-color:var(--cps-amber)}.creative-studio__pyui-notice.error{border-color:var(--cps-red)}
.creative-studio__game{display:block;width:100%;max-height:430px;background:#0b1017;image-rendering:auto}.creative-studio__hint{padding:8px 12px;border-top:1px solid var(--cps-line);color:var(--cps-muted);font-size:10px;line-height:1.45}.creative-studio [hidden]{display:none!important}
@media(max-width:800px){.creative-studio__grid{grid-template-columns:1fr}.creative-studio__editor-pane{border-right:0;border-bottom:1px solid var(--cps-line)}}
@media(max-width:560px){.creative-studio__head{align-items:flex-start;flex-direction:column}.creative-studio__head .creative-studio__select{width:100%}.creative-studio__editor{min-height:230px}.creative-studio__bar label{width:100%;margin-left:0}.creative-studio__bar .creative-studio__input{flex:1}.creative-studio__file-tools{flex-wrap:wrap}.creative-studio__file-tools .creative-studio__select{min-width:180px}}
@media(prefers-reduced-motion:reduce){.creative-studio__button{transition:none}}
