*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif;background:#1a1a2e;color:#eee;height:100vh;display:flex;flex-direction:column}header{background:#16213e;padding:12px 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #0f3460}header h1{font-size:1.25rem;font-weight:500;color:#e94560}header h2{font-size:1em;font-weight:400}header button{border:none;background:#1a4080;color:#4682b4;padding:.25em .5em;border-radius:4px}.controls{display:flex;align-items:center;gap:20px}.control-group{display:flex;align-items:center;gap:8px}.control-group label{font-size:.875rem;color:#aaa}.control-group input[type=range]{width:120px;accent-color:#e94560}.control-group span{font-size:.875rem;color:#fff;min-width:35px}select{background:#0f3460;color:#fff;border:1px solid #1a4080;padding:6px 10px;border-radius:4px;cursor:pointer}select:hover{border-color:#e94560}main{flex:1;display:flex;overflow:hidden}.panel{flex:1;display:flex;flex-direction:column;min-width:0}.panel-header{background:#16213e;padding:8px 16px;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:#888;border-bottom:1px solid #0f3460}.panel-content{flex:1;overflow:auto}.divider{width:4px;background:#0f3460;cursor:col-resize}.divider:hover{background:#e94560}#tikz-input{width:100%;height:100%;background:#1a1a2e;color:#fff;border:none;padding:16px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.5;resize:none;outline:none}#tikz-input::placeholder{color:#555}#tikz-preview{width:100%;height:100%;background:#fff;display:flex;align-items:center;justify-content:center;overflow:auto}#tikz-preview svg{max-width:100%;max-height:100%}#tikz-errors{display:none;background:#ff4757;color:#fff;padding:10px 16px;font-size:.875rem}.error-item{padding:4px 0}.empty-preview{color:#999;font-size:.875rem;text-align:center}.keyword{color:#e94560}.option{color:#0be881}.number{color:#f9ca24}.comment{color:#666;font-style:italic}.cm-editor .cm-keyword{color:#ffb86c}.cm-editor .cm-atom{color:#8be9fd}.cm-editor .cm-variableName{color:#c0e6ff}.cm-editor .cm-number{color:#f1fa8c}.cm-editor .cm-operator,.cm-editor .cm-punctuation,.cm-editor .cm-bracket{color:#c7d2e3}.cm-editor .cm-comment{color:#7a8599;font-style:italic}.cm-tooltip{background:#101827;border:1px solid #22304a;color:#e6edf7;box-shadow:0 8px 24px #00000073}.cm-tooltip-autocomplete{padding:4px;background:#101827}.cm-tooltip-autocomplete ul{max-height:240px;background:#101827}.cm-tooltip-autocomplete li{border-radius:4px;color:#e6edf7;background:transparent}.cm-tooltip-autocomplete li[aria-selected=true]{background:#1f2a44;color:#fff}.cm-completionLabel{color:inherit}.cm-completionDetail{color:#9fb0cc}.cm-completionMatchedText{color:#ffd166}
