.repl-shell { background: #10131a; border: 1px solid #343a46; border-radius: 1rem; box-shadow: 0 1rem 3rem rgb(0 0 0 / 18%); color: #e8ecf2; overflow: hidden; }
.repl-toolbar { align-items: center; border-bottom: 1px solid #343a46; display: flex; gap: .5rem; padding: .75rem; }
.repl-pane { min-height: 31rem; }
.repl-pane + .repl-pane { border-left: 1px solid #343a46; }
.editor-wrap { min-height: 31rem; position: relative; }
.editor-layer { border: 0; font: 500 .95rem/1.65 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; inset: 0; margin: 0; overflow: auto; padding: 1.25rem; position: absolute; tab-size: 2; white-space: pre-wrap; word-break: break-word; }
.editor-input { background: transparent; caret-color: #fff; color: transparent; outline: none; resize: none; -webkit-text-fill-color: transparent; }
.editor-input::selection { background: rgb(13 110 253 / 40%); }
.editor-status { align-items: center; border-top: 1px solid #343a46; color: #8e99aa; display: flex; justify-content: space-between; min-height: 2rem; padding: .35rem 1.25rem; }
#diagnostic-status { color: #ffab91; font-weight: 700; text-transform: uppercase; }
.pane-label { color: #8e99aa; font-size: .72rem; font-weight: 800; letter-spacing: .12em; padding: 1rem 1.25rem 0; text-transform: uppercase; }
#lisp-output { color: #d6f5dc; font: 500 .95rem/1.65 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; margin: 0; min-height: 20rem; padding: .65rem 1.25rem 1.25rem; white-space: pre-wrap; }
.repl-metrics { border-top: 1px solid #343a46; color: #b7c0ce; padding: 1rem 1.25rem; }
.repl-metrics dt { font-weight: 500; }.repl-metrics dd { color: #eef2f7; margin-bottom: 0; }
.tok-comment { color: #7f8c98; font-style: italic; }.tok-string { color: #a5d6a7; }.tok-number { color: #ffcc80; }.tok-boolean { color: #ef9a9a; }.tok-keyword { color: #f48fb1; }.tok-special { color: #82b1ff; font-weight: 800; }.tok-native { color: #80cbc4; font-weight: 750; }.tok-function { color: #b39ddb; }.tok-symbol { color: #e8ecf2; }.tok-paren { color: #ce93d8; }.tok-paren.depth-1 { color: #80cbc4; }.tok-paren.depth-2 { color: #fff176; }.tok-paren.depth-3 { color: #ffab91; }.tok-match { background: #0d6efd; border-radius: 2px; color: white !important; }.tok-invalid { background: #dc3545; color: white !important; }
@media (max-width: 991.98px) { .repl-pane + .repl-pane { border-left: 0; border-top: 1px solid #343a46; }.repl-pane, .editor-wrap { min-height: 24rem; }#lisp-output { min-height: 16rem; } }
