@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--bg:#0c1015;--panel:#121820;--line:#242e39;--muted:#8492a5;--text:#e4eaf1;--green:#6be3b2;--red:#ff8d95;--gold:#e7bf79}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:14px 'DM Sans',sans-serif}aside{width:224px;position:fixed;height:100vh;padding:35px 19px;background:#0e141c;border-right:1px solid var(--line)}.brand{display:block;text-decoration:none;color:var(--text);font-size:30px;letter-spacing:5px;font-weight:700;padding-left:15px}.brand span{color:var(--green)}.brand small{font-size:8px;letter-spacing:2px;display:block;margin:8px 0 42px}.nav-label,.eyebrow{font-size:10px;letter-spacing:1.8px;color:var(--muted);margin:0 15px 14px}.eyebrow{margin:0 0 12px}nav button{display:block;text-align:left;width:100%;padding:13px 14px;background:none;border:0;color:var(--muted);margin-bottom:5px;font-size:13px;border-radius:6px}nav button.active{background:#1b2c2d;color:var(--green)}nav button span{display:inline-block;width:24px;color:#687c8a}.aside-foot{position:absolute;bottom:30px;font-size:10px;letter-spacing:1px;line-height:2;color:var(--muted);padding-left:12px}.aside-foot small{font-size:9px;letter-spacing:0}.dot{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:6px}main{margin-left:224px;padding:36px 38px;max-width:1900px}header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}h1{font-size:28px;letter-spacing:-.8px;font-weight:500;margin:0}h2{font-weight:500;font-size:18px;margin:0 0 20px}h3{font-size:14px;font-weight:500}.actions{display:flex;align-items:center;gap:18px}button{cursor:pointer;font-family:inherit}button,input,select,textarea{background:#18222c;border:1px solid #303e4b;border-radius:5px;color:var(--text);padding:10px 13px}button:hover{border-color:var(--green)}.pill{font:10px 'IBM Plex Mono',monospace;padding:6px 8px;border-radius:4px;background:#253027;color:var(--green)}.banner{background:#252219;border:1px solid #4e422c;border-radius:6px;padding:13px 17px;color:var(--gold);font-size:12px;line-height:1.7;margin-bottom:24px}.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:30px}.metrics article,.panel{background:var(--panel);border:1px solid var(--line);border-radius:7px;padding:23px}.metrics label{display:block;font-size:9px;letter-spacing:1.5px;color:var(--muted)}.metrics strong{display:block;font:28px 'IBM Plex Mono',monospace;margin:17px 0 11px}.metrics .smallstrong{font-size:19px;margin-top:22px;margin-bottom:16px}.metrics small{color:var(--muted);font-size:10px}.toolbar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:22px}.filters{display:flex;gap:10px}input,select{font-size:11px;background:#101720}.segmented{display:flex;gap:6px;flex-wrap:wrap}.segmented button{background:none;border:1px solid transparent;color:var(--muted);font-size:11px;padding:8px 10px}.segmented button.active{border-color:#35514a;color:var(--green);background:#192823}.table-wrap{overflow:auto;background:var(--panel);border:1px solid var(--line);border-radius:7px;margin-bottom:20px}table{width:100%;border-collapse:collapse;white-space:nowrap;text-align:left}th{font-size:9px;letter-spacing:1px;font-weight:400;color:var(--muted);padding:16px;border-bottom:1px solid var(--line)}td{padding:18px 16px;font-size:12px;border-bottom:1px solid #1c2630}tbody tr:last-child td{border:0}tbody tr[data-id]{cursor:pointer}tbody tr[data-id]:hover{background:#1b2530}td small{display:block;color:var(--muted);font-size:10px;margin-top:5px}.mono{font-family:'IBM Plex Mono',monospace}.bull,.LONG{color:var(--green)}.bear,.SHORT{color:var(--red)}.neutral,.muted{color:var(--muted)}.score{display:inline-block;min-width:45px;font-family:'IBM Plex Mono',monospace;font-size:16px}.bar{display:inline-block;width:35px;height:3px;background:#2c3640;vertical-align:middle;margin-left:5px}.bar i{display:block;height:100%;background:currentColor}.stage{font:9px 'IBM Plex Mono',monospace;border:1px solid #39434e;border-radius:4px;padding:5px 6px;color:var(--gold)}.section-title{display:flex;justify-content:space-between;color:var(--muted);font-size:10px;letter-spacing:1px;margin:24px 0 13px}.empty{padding:32px;color:var(--muted);line-height:1.8}.grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}p{line-height:1.8;color:var(--muted)}pre{font:11px 'IBM Plex Mono',monospace;white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;color:var(--muted);max-height:500px;overflow:auto}footer{display:flex;justify-content:space-between;color:#667587;font-size:10px;padding:25px 0}dialog{background:var(--bg);color:var(--text);border:1px solid #3e505c;border-radius:10px;width:min(1080px,94vw);max-height:90vh;padding:30px}dialog::backdrop{background:#000b;backdrop-filter:blur(4px)}.close{float:right;font-size:20px;padding:0 9px}.facts{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.facts span{border:1px solid var(--line);padding:10px}.chart{width:100%;height:210px;background:#101720;border-radius:5px}ul{padding-left:18px;line-height:1.9;font-size:12px;color:var(--muted)}textarea{width:100%;height:510px;font:12px 'IBM Plex Mono',monospace;line-height:1.5}.error{color:var(--red)}@media(max-width:1100px){aside{width:185px}main{margin-left:185px;padding:28px 22px}.metrics{grid-template-columns:repeat(2,1fr)}.toolbar{align-items:start;flex-direction:column}.actions{gap:8px}}@media(max-width:700px){aside{position:relative;width:100%;height:auto;padding:15px}.brand{font-size:22px}.brand small,.aside-foot,.nav-label{display:none}nav{display:flex;overflow:auto;margin-top:12px}nav button{white-space:nowrap;width:auto;margin:0;padding:9px}nav button span{display:none}main{margin:0;padding:20px 14px}header{align-items:start;gap:12px}h1{font-size:22px}.actions{flex-direction:column;align-items:end}.metrics{gap:9px}.metrics article{padding:17px}.metrics strong{font-size:23px}.grid{grid-template-columns:1fr}footer{gap:20px;line-height:1.6}.filters{width:100%}input{min-width:0;width:100%}}
