:root{--bg-color: #00040a;--panel-bg: #030a14;--panel-border: #1a2a40;--text-main: #d1d5db;--text-amber: #f59e0b;--text-green: #10b981;--text-red: #ef4444;--text-blue: #3b82f6;--font-mono: "JetBrains Mono", monospace, Consolas}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);font-family:var(--font-mono);font-size:12px;height:100vh;overflow:hidden}.text-green{color:var(--text-green)}.text-red{color:var(--text-red)}.text-amber{color:var(--text-amber)}.terminal-container{display:grid;grid-template-columns:1fr auto;grid-template-rows:min-content min-content 1fr 200px;grid-template-areas:"header header" "watchlist log" "chart log" "stats stats";height:100vh;width:100vw;gap:2px;background-color:var(--panel-border)}.panel{background-color:var(--panel-bg);display:flex;flex-direction:column;overflow:hidden}.panel-watchlist{grid-area:watchlist;position:relative;min-height:80px;height:150px;overflow:hidden}.panel-log{grid-area:log;position:relative;width:400px;min-width:150px;max-width:800px;overflow:hidden}.panel-chart{grid-area:chart}.panel-stats{grid-area:stats}.resize-handle-y{position:absolute;bottom:0;left:0;right:0;height:6px;cursor:ns-resize;background:transparent;z-index:50}.resize-handle-y:hover{background:#ffffff1a}.resize-handle-x{position:absolute;top:0;bottom:0;left:0;width:6px;cursor:ew-resize;background:transparent;z-index:50}.resize-handle-x:hover{background:#ffffff1a}.panel-header{background-color:#0b1a2f;color:var(--text-amber);padding:2px 8px;font-weight:700;border-bottom:1px solid var(--panel-border);display:flex;justify-content:space-between}.terminal-header{grid-area:header;background-color:#0b1a2f;color:var(--text-main);display:flex;justify-content:space-between;align-items:center;padding:0 12px}.header-right span{margin-left:16px}.live-badge{background:var(--text-amber);color:#000;padding:0 4px;border-radius:2px;font-weight:700}.watchlist-grid{display:flex;flex-direction:row;height:100%;overflow-x:auto;gap:2px;background:var(--panel-border)}.watchlist-card{flex:1;min-width:150px;background:var(--panel-bg);padding:8px;cursor:pointer;display:flex;flex-direction:column;justify-content:space-between;border:1px solid transparent}.watchlist-card:hover{background:#0f1c30}.watchlist-card.active{border:1px solid var(--text-amber);background:#0b1a2f}.card-top{display:flex;justify-content:space-between;color:var(--text-amber)}.card-name{font-size:10px;color:var(--text-main);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.card-price{font-size:16px;font-weight:700;display:flex;align-items:baseline;gap:8px}.card-price .pct{font-size:11px}.progress-section{display:flex;flex-direction:column;gap:4px;margin-top:8px}.progress-bar-container{display:flex;align-items:center;gap:4px}.progress-label{font-size:9px;width:35px;color:#666}.progress-track{flex:1;height:3px;background:#333;position:relative}.progress-fill{position:absolute;height:100%;left:0}.tp-fill{background:var(--text-green)}.sl-fill{background:var(--text-red)}.log-table-container{flex:1;overflow-y:auto}.log-table{width:100%;border-collapse:collapse;text-align:right}.log-table th{color:var(--text-amber);font-weight:400;border-bottom:1px dashed var(--panel-border);padding:4px}.log-table td{padding:4px;border-bottom:1px dashed #111}.log-table tr:hover{background:#0b1a2f}.date-group-header{background:#0f1c30;border-top:1px solid var(--panel-border);border-bottom:1px solid var(--panel-border)!important}.date-group-header:hover{background:#172a48!important}.log-summary{border-top:1px solid var(--panel-border);padding:8px;text-align:right;color:var(--text-main)}.chart-container{flex:1;width:100%;height:100%;position:relative}.stats-table-container{flex:1;overflow-y:auto}.stats-table{width:100%;border-collapse:collapse;text-align:right}.stats-table th,.stats-table td{padding:4px 12px;border-bottom:1px dotted var(--panel-border)}.stats-table th.stats-label{text-align:left;color:var(--text-amber);width:120px}.stats-table thead th{border-bottom:1px solid var(--panel-border);padding-top:8px;padding-bottom:8px}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--panel-bg)}::-webkit-scrollbar-thumb{background:var(--panel-border)}::-webkit-scrollbar-thumb:hover{background:#2a3a50}.context-menu{position:absolute;background:#0b1a2f;border:1px solid var(--panel-border);box-shadow:0 4px 12px #00000080;z-index:9999;display:none;min-width:150px;padding:4px 0}.context-menu-item{padding:8px 16px;cursor:pointer;color:var(--text-main);font-size:12px;display:flex;align-items:center;gap:8px}.context-menu-item:hover{background:#172a48}.context-menu-item.tp:hover{color:var(--text-green)}.context-menu-item.sl:hover{color:var(--text-red)}.ticker-tape-container{flex:1;overflow:hidden;margin:0 20px;height:28px;display:flex;align-items:center;background-color:#050a15;border-radius:4px;box-shadow:inset 0 0 10px #00000080;border:1px solid #1e293b}.ticker-tape-content{white-space:nowrap;padding-left:100%;animation:tickerScroll 30s linear infinite;font-family:JetBrains Mono,monospace;font-size:13px;font-weight:700}.ticker-tape-content:hover{animation-play-state:paused}@keyframes tickerScroll{0%{transform:translate(0)}to{transform:translate(-100%)}}.ticker-item{margin-right:40px}.ticker-up{color:var(--text-green)}.ticker-down{color:var(--text-red)}@media (max-width: 768px){body{overflow-y:auto;min-height:100vh}.terminal-container{grid-template-columns:1fr;grid-template-rows:auto auto 300px 300px auto;grid-template-areas:"header" "watchlist" "chart" "log" "stats";min-height:100vh;overflow-y:auto}.terminal-header{flex-direction:column;align-items:flex-start;padding:10px;gap:10px}.ticker-tape-container{margin:5px 0;width:100%}.header-right{display:flex;flex-direction:column!important;align-items:flex-start!important;gap:8px;width:100%}.header-right .search-container{margin-right:0!important}.header-right span,.header-right button{margin-left:0!important;margin-right:0!important}.panel-log{width:100%;min-width:100%;max-width:100%}.panel-watchlist{height:auto;min-height:120px}.resize-handle-x,.resize-handle-y{display:none}}
