*{box-sizing:border-box;margin:0;padding:0}
body{background:#000;color:#0f0;font-family:'Courier New',monospace;overflow-x:hidden}
a{color:#0f0;text-decoration:none}
#sidebarToggle{position:fixed;top:16px;left:16px;z-index:1100;background:#000;border:1px solid #0f0;width:44px;height:44px;cursor:pointer;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px}
#sidebarToggle span{display:block;width:22px;height:2px;background:#0f0;transition:.3s}
#sidebarToggle.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
#sidebarToggle.open span:nth-child(2){opacity:0}
#sidebarToggle.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
#overlay{position:fixed;inset:0;background:rgba(0,0,0,.6);opacity:0;visibility:hidden;transition:.3s;z-index:900}
#overlay.show{opacity:1;visibility:visible}
#sidebar{position:fixed;top:0;left:0;height:100vh;width:260px;background:#0a0a0a;border-right:1px solid #0f0;transform:translateX(-100%);transition:transform .3s ease;z-index:1000;padding-top:70px;overflow-y:auto}
#sidebar.open{transform:translateX(0)}
.brand{display:block;padding:0 20px 20px;border-bottom:1px solid rgba(0,255,0,.3);font-size:18px;letter-spacing:2px}
#sidebar-tree{padding:16px}
#sidebar-tree details{margin-bottom:14px}
#sidebar-tree summary{cursor:pointer;padding:8px;font-weight:600}
#sidebar-tree ul{list-style:none;padding-left:14px}
#sidebar-tree li{margin-bottom:6px}
#sidebar-tree a{display:block;padding:4px 6px}
#sidebar-tree a:hover{background:rgba(0,255,0,.1)}
.ticker-bar{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;background:#0a0a0a;border-bottom:1px solid rgba(0,255,0,.3);justify-content:center}
footer.ticker-bar{border-bottom:none;border-top:1px solid rgba(0,255,0,.3)}
.ticker-chip{display:flex;align-items:center;gap:4px;padding:4px 10px;border:1px solid rgba(0,255,0,.3);border-radius:4px;font-size:.85rem;white-space:nowrap}
.chip-up{color:#26a69a;border-color:#26a69a}
.chip-down{color:#ef5350;border-color:#ef5350}
.chip-flat{color:#888;border-color:#444}
.page-main{padding:16px}
.heatmap-section-title{margin:12px 0 10px;color:#0f0}
.heatmap-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin-bottom:24px}
.heatmap-tile{border-radius:8px;padding:14px 10px;color:#fff;display:flex;flex-direction:column;gap:3px;border:1px solid rgba(255,255,255,.25);min-width:0;overflow:hidden;text-shadow:0 1px 3px rgba(0,0,0,.85)}
.heatmap-ticker{font-weight:900;font-size:2rem;font-stretch:condensed;letter-spacing:.5px;color:#fff;line-height:1.1}
.heatmap-price{font-size:1.15rem;font-weight:800;color:#fff;overflow-wrap:anywhere;white-space:normal;line-height:1.2}
.heatmap-pt{font-size:1.1rem;font-weight:800;display:flex;align-items:center;gap:4px;overflow-wrap:anywhere}
.heatmap-change{font-size:.9rem;font-weight:700}
.heatmap-rates{font-size:.78rem;font-weight:700;color:#f0f0f0;opacity:.9}
.heatmap-change-up,.heatmap-pt-up{color:#c8ffe8}
.heatmap-change-down,.heatmap-pt-down{color:#ffd9d6}
.chart-page{display:flex;flex-direction:column;height:calc(100vh - 120px)}
.chart-head{display:flex;justify-content:space-between;align-items:center;padding:8px 4px}
.chart-head h4{margin:0}
#tf-buttons .tf-btn{cursor:pointer;padding:6px 14px;margin:0 4px;border-radius:4px;border:1px solid rgba(0,255,0,.3);color:#0f0}
#tf-buttons .tf-btn.active{background:#0f0;color:#000}
.chart-container{flex-grow:1;width:99%;margin:0 auto}
@media (max-width:640px){#sidebar{width:80%}}
