#llm-app *{box-sizing:border-box;margin:0;padding:0}
#llm-app .llm-ph{padding:7px 12px}
#llm-app .llm-pbd{padding:12px 14px}
#llm-app{width:100%;background:#0a0b0f;color:#dde1f0;font-family:'Roboto',sans-serif;border-radius:16px;overflow:hidden;border:1px solid rgba(255,107,0,.18);display:flex;flex-direction:column;min-height:860px;box-shadow:0 8px 40px rgba(0,0,0,.55)}
/* HEADER */
#llm-hdr{background:#111217;border-bottom:1px solid rgba(255,107,0,.22);padding:0 20px;height:58px;display:flex;align-items:center;gap:14px;overflow:hidden;flex-shrink:0}
.llm-brand{font-size:13px;font-weight:700;white-space:nowrap;flex-shrink:0;letter-spacing:.5px;font-family:'Roboto',sans-serif}
.llm-ba{color:#FF6B00}
.llm-bb{color:#ffaa55}
.llm-bc{color:#555870}
.llm-il{font-size:11px;color:#666a85;white-space:nowrap;flex-shrink:0;font-weight:500;letter-spacing:.3px}
#llm-inp{background:#17191f;color:#dde1f0;border:1px solid rgba(255,107,0,.3);border-radius:8px;padding:7px 12px;font-family:'Roboto Mono',monospace;font-size:13px;width:300px;outline:none;flex-shrink:1;min-width:120px;transition:border-color .2s}
#llm-inp:focus{border-color:#FF6B00}
#llm-proc{background:#FF6B00;color:#fff;border:none;border-radius:8px;padding:8px 20px;font-family:'Roboto',sans-serif;font-size:13px;font-weight:700;cursor:pointer;white-space:nowrap;flex-shrink:0;letter-spacing:.3px;transition:background .2s,box-shadow .2s;box-shadow:0 2px 10px rgba(255,107,0,.35)}
#llm-proc:hover{background:#ff8533;box-shadow:0 4px 16px rgba(255,107,0,.5)}
#llm-plbl{font-size:11px;color:#555870;white-space:nowrap;flex-shrink:0;margin-left:6px;font-weight:500}
#llm-pbg{width:130px;height:6px;background:#1e2028;border-radius:3px;flex-shrink:0;overflow:hidden}
#llm-pfl{height:6px;background:linear-gradient(90deg,#FF6B00,#ffaa55);border-radius:3px;width:0%;transition:width .4s ease}
/* GRID */
#llm-grid{display:grid;grid-template-columns:230px minmax(0,1fr) 296px;flex:1;min-height:0}
/* LEFT NAV */
#llm-left{background:#0e0f14;border-right:1px solid #1c1e26;display:flex;flex-direction:column;overflow-y:auto}
#llm-app .llm-nsec{font-size:9px;color:#4a5070;padding:18px 18px 10px;letter-spacing:2.5px;text-transform:uppercase;font-weight:700;font-family:'Roboto',sans-serif}
#llm-app .llm-ni{padding:13px 16px 13px 13px;border-left:3px solid transparent;cursor:pointer;transition:background .2s,border-color .2s;user-select:none}
.llm-ni:hover{background:rgba(255,107,0,.06)}
.llm-ni.active{border-left-color:#FF6B00;background:rgba(255,107,0,.1)}
.llm-ni.done{border-left-color:rgba(107,255,180,.5)}
#llm-app .llm-nf{font-size:9px;color:#5a6080;font-weight:700;margin-bottom:4px;letter-spacing:1px;font-family:'Roboto',sans-serif}
.llm-nt{font-size:13px;font-weight:600;color:#dde1f0;margin-bottom:4px;font-family:'Roboto',sans-serif;line-height:1.4}
.llm-ni.active .llm-nt{color:#FF6B00}
.llm-ni.done .llm-nt{color:#555870}
.llm-ns{font-size:11px;color:#555870;line-height:1.5;font-family:'Roboto',sans-serif}
.llm-sep{height:1px;background:#1c1e26;margin:14px 18px}
/* CONTROLS */
#llm-ctrl{padding:0 16px 20px;display:flex;flex-direction:column;gap:10px}
.llm-cr{display:grid;grid-template-columns:1fr 1fr;gap:8px}
#llm-app .llm-btn{border:1px solid #2a2d3a;border-radius:8px;background:#17191f;color:#c0c4d8;font-family:'Roboto',sans-serif;font-size:12px;font-weight:500;padding:9px 10px;cursor:pointer;transition:filter .2s,background .2s;width:100%;text-align:center;letter-spacing:.2px}
.llm-btn:hover{filter:brightness(1.25)}
.llm-btn:disabled{opacity:.3;cursor:default;pointer-events:none}
#llm-auto{background:#FF6B00;color:#fff;border-color:#FF6B00;font-weight:700;box-shadow:0 2px 8px rgba(255,107,0,.3)}
#llm-rot{background:rgba(40,20,68,.7);color:#c77dff;border-color:rgba(199,125,255,.25)}
/* CANVAS AREA */
#llm-ctr{background:#0a0b0f;overflow:hidden;position:relative;cursor:default}
#llm-cv{display:block;width:100%;height:100%;cursor:default}
#llm-ctr.llm-active #llm-cv{cursor:grab}
#llm-ctr.llm-active.llm-dragging #llm-cv{cursor:grabbing}
/* OVERLAY */
#llm-overlay{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;background:rgba(8,9,15,.6);backdrop-filter:blur(2px);transition:opacity .25s;cursor:pointer;z-index:10}
#llm-overlay.hidden{opacity:0;pointer-events:none;visibility:hidden}
#llm-overlay-inner{text-align:center;user-select:none}
#llm-overlay-icon{font-size:32px;margin-bottom:10px;opacity:.65}
#llm-overlay-msg{font-size:14px;color:#9fa8c8;line-height:1.7;font-family:'Roboto',sans-serif;font-weight:500}
#llm-overlay-msg span{font-size:12px;color:#555870;font-weight:400}
/* TOKEN LABELS */
#llm-labels{position:absolute;top:0;left:0;pointer-events:none;padding:12px 10px;display:flex;flex-direction:column;gap:6px}
#llm-app .llm-tl{display:inline-flex;align-items:center;gap:5px;padding:3px 9px;border-radius:5px;border:1px solid;font-size:11px;font-weight:700;white-space:nowrap;font-family:'Roboto',sans-serif}
.llm-te{font-size:10px;color:#555870;font-weight:400}
#llm-axlbl{position:absolute;bottom:10px;left:10px;font-size:10px;color:#2a2d3a;pointer-events:none;font-family:'Roboto',sans-serif;letter-spacing:.3px}
/* RIGHT PANEL */
#llm-right{background:#0e0f14;border-left:1px solid #1c1e26;display:flex;flex-direction:column;overflow:hidden}
#llm-sh{background:rgba(14,15,20,.98);border-bottom:1px solid rgba(255,107,0,.18);padding:16px 18px;flex-shrink:0}
#llm-fase{font-size:9px;color:#5a6080;font-weight:700;letter-spacing:2px;margin-bottom:6px;font-family:'Roboto',sans-serif}
#llm-stit{font-family:'Roboto',sans-serif;font-size:18px;font-weight:700;color:#FF6B00;margin-bottom:6px;line-height:1.3}
#llm-ssub{font-size:11px;color:#666a85;font-family:'Roboto Mono',monospace;line-height:1.6}
#llm-rscroll{flex:1;overflow-y:auto;padding:18px 18px 24px}
#llm-app .llm-pb{margin-bottom:18px}
.llm-ph{background:rgba(255,107,0,.08);border-left:3px solid #FF6B00;padding:7px 12px;font-size:10px;font-weight:700;color:#FF6B00;letter-spacing:.5px;font-family:'Roboto',sans-serif}
.llm-pbd{padding:12px 14px;font-size:12px;line-height:1.8;white-space:pre-wrap;border:1px solid #1c1e26;margin-top:2px;color:#d8d8d8;background:rgba(255,255,255,.02);border-radius:0 0 4px 4px;font-family:'Roboto',sans-serif}
.llm-pbd.code{background:rgba(10,11,18,.8);color:#ffcc88;border-color:#2a2d3a;font-family:'Roboto Mono',monospace;font-size:11px}
/* ATTENTION MATRIX */
#llm-hm{margin-top:10px;margin-bottom:14px;display:none}
.llm-hmh{background:rgba(255,107,107,.08);border-left:3px solid #FF6B6B;font-size:10px;font-weight:700;color:#FF6B6B;font-family:'Roboto',sans-serif}
#llm-app .llm-hmh{padding:6px 10px}
#llm-hmcv{display:block;margin-top:2px;background:rgba(10,11,18,.7)}
/* PROBABILITY BARS */
#llm-probs{margin-top:10px;margin-bottom:14px;display:none}
.llm-prh{background:rgba(255,107,0,.08);border-left:3px solid #FF6B00;font-size:10px;font-weight:700;color:#FF6B00;font-family:'Roboto',sans-serif}
#llm-app .llm-prh{padding:6px 10px}
#llm-pbrows{padding:8px 0}
#llm-app .llm-pbr{display:grid;grid-template-columns:90px 1fr 48px;align-items:center;gap:8px;margin-bottom:8px;padding:0}
.llm-pblbl{font-size:12px;text-align:right;overflow:hidden;text-overflow:ellipsis;font-family:'Roboto',sans-serif}
.llm-pbbg{height:16px;border-radius:4px;background:rgba(255,255,255,.04);overflow:hidden}
.llm-pbfl{height:100%;border-radius:4px;transition:width .6s ease}
.llm-pbpct{font-size:11px;text-align:right;white-space:nowrap;font-family:'Roboto',sans-serif}
@media(max-width:900px){#llm-grid{grid-template-columns:1fr}#llm-left,#llm-right{display:none}#llm-app{min-height:520px}}