/* Python编辑器：工具栏 + 带行号的代码区 + 运行结果 */
.py-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-bottom:.75rem}
.py-example{width:auto;max-width:11rem}

.py-wrap{display:grid;grid-template-columns:1.35fr 1fr;gap:1rem}
.py-editor{display:flex;min-width:0;height:27rem;border:1px solid #dfe4ec;border-radius:.5rem;overflow:hidden;background:#fff}
.py-gutter{flex:0 0 2.75rem;padding:.75rem .5rem .75rem 0;overflow:hidden;background:#f7f9fc;border-right:1px solid #eef1f5;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-size:13px;line-height:1.7;color:#9aa4b2;text-align:right;white-space:pre}
textarea.py-area{flex:1;height:100%;padding:.75rem .875rem;border:0;border-radius:0;resize:none;background:#fff;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,"Liberation Mono",monospace;font-size:13px;line-height:1.7;
  white-space:pre;overflow:auto;tab-size:4}
textarea.py-area:focus{box-shadow:none}

.py-output{display:flex;flex-direction:column;min-width:0;height:27rem;border:1px solid #eef1f5;border-radius:.5rem;overflow:hidden}
.py-out-head{display:flex;align-items:center;gap:.5rem;padding:.4rem .625rem;background:#fafbfd;border-bottom:1px solid #eef1f5;font-size:13px;color:#5b6675}
.py-out{flex:1;overflow:auto;padding:.5rem .625rem;background:#0f172a;color:#cbd5e1;
  font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12.5px;line-height:1.75;white-space:pre-wrap;word-break:break-word}
.py-line.is-err{color:#fca5a5}
.py-line.is-info{color:#64748b}
.py-line.is-in{color:#7dd3fc}
.py-input-row{display:flex;align-items:center;gap:.375rem;margin:.25rem 0}
.py-input-row span{color:#7dd3fc}
.py-input-row input{flex:1;min-width:6rem;padding:.1rem .375rem;border:1px solid #334155;border-radius:.25rem;background:#1e293b;color:#e2e8f0;
  font-family:inherit;font-size:12.5px}
.py-canvas{display:flex;flex-wrap:wrap;gap:.5rem;margin:.25rem 0}
.py-canvas canvas{background:#fff;border-radius:.375rem}

.py-notes li+li{margin-top:.375rem}
.py-notes kbd{vertical-align:.0625rem}

@media (max-width:991.98px){
  .py-wrap{grid-template-columns:1fr}
  .py-editor,.py-output{height:19rem}
}
