/* ============================================
   POGO Monitor — CSS
   Extracted from live_monitor.html
   ============================================ */

*{margin:0;padding:0;box-sizing:border-box}
html,body{height:100%;overflow:hidden;background:#1a1612;color:#f5ede0;font-family:'Hanken Grotesk',system-ui,-apple-system,sans-serif}

/* ===== GRID LAYOUT ===== */
.monitor{display:grid;height:100vh;grid-template-columns:1fr minmax(260px, 260px);grid-template-rows:40px 1fr 1fr 180px;gap:0;
  grid-template-areas:
    "header    header"
    "charts1   sidebar"
    "charts2   sidebar"
    "heartbeat sidebar"}

/* ===== HEADER ===== */
.header{grid-area:header;background:#1f1b16;border-bottom:1px solid rgba(245,225,180,0.09);display:flex;align-items:center;justify-content:space-between;padding:0 18px}
.header-left{display:flex;align-items:center;gap:12px}
.logo{color:#e8b96a;font-weight:800;font-size:16px;letter-spacing:2px}
.badge{font-size:10px;font-weight:700;padding:2px 8px;border-radius:3px;letter-spacing:1px}
.badge-mode{background:#e8b96a;color:#000}
.badge-status{margin-left:2px}
.badge-open{background:rgba(0,200,80,0.15);color:#5fdb95}
.badge-closed{background:rgba(255,50,50,0.15);color:#ff6b6b}
.badge-pre{background:rgba(212,160,23,0.15);color:#e8b96a}
.header-right{display:flex;align-items:center;gap:14px}
.clock{font-family:'JetBrains Mono',monospace;font-size:14px;color:#e8b96a;font-weight:600}
.live-dot{width:8px;height:8px;background:#5fdb95;border-radius:50%;display:inline-block;animation:pulse 2s infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}

/* ===== CHART ROWS ===== */
.charts-row1{grid-area:charts1;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#1f1b16;padding:2px;overflow:hidden;min-width:0}
.charts-row2{grid-area:charts2;display:grid;grid-template-columns:repeat(3,1fr);gap:2px;background:#1f1b16;padding:2px;overflow:hidden;min-width:0}

/* ===== CHART CARD ===== */
.chart-card{background:#272218;display:flex;flex-direction:column;padding:4px 6px 2px;overflow:hidden;min-width:0}
.chart-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:2px;flex-shrink:0;min-height:20px}
.chart-ticker{font-weight:700;font-size:13px;color:#e8b96a;flex-shrink:0}
.chart-price{font-size:12px;font-weight:600}
.chart-change{font-size:10px;margin-left:4px}
.up{color:#5fdb95}.down{color:#ff6b6b}

/* Chart area — SVG fills this */
.chart-ema-legend{font-size:8px;color:#555;margin-bottom:1px;flex-shrink:0}
.chart-ema-legend span{margin-right:6px}
.chart-area{flex:1;position:relative;overflow:hidden;min-height:0;background:#1a1612;border-radius:2px;cursor:grab;user-select:none;padding-right:45px;will-change:transform;-webkit-transform:translateZ(0);transform:translateZ(0)}
.chart-area:active{cursor:grabbing}
.chart-area svg{display:block;will-change:transform;-webkit-transform:translateZ(0);transform:translateZ(0)}
.crosshair-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;z-index:5}
.crosshair-overlay line{stroke:#888;stroke-width:1;stroke-dasharray:4,3}
.crosshair-overlay .ch-price-box{fill:rgba(31,27,22,0.92);stroke:#555;stroke-width:0.5;rx:3}
.crosshair-overlay .ch-time-box{fill:rgba(31,27,22,0.92);stroke:#555;stroke-width:0.5;rx:3}
.crosshair-overlay text{fill:#ccc;font-family:'JetBrains Mono',monospace;font-size:10px}
.chart-times{display:flex;justify-content:space-between;font-size:7px;color:#444;padding:1px 0 0;flex-shrink:0}
.price-axis{position:absolute;right:0;top:0;height:100%;width:45px;display:flex;flex-direction:column;justify-content:space-between;padding:2px 0;pointer-events:none;z-index:2;background:rgba(26,22,18,0.85)}
.price-label{color:#888;font-size:9px;font-family:'JetBrains Mono',monospace;padding:1px 3px;text-align:right;white-space:nowrap;overflow:hidden}
.time-axis{display:flex;justify-content:space-between;padding:2px 4px 0;pointer-events:none;flex-shrink:0;margin-right:45px}
.time-label{color:#666;font-size:9px;font-family:'JetBrains Mono',monospace}

/* Trade marker badge below chart */
.trade-marker{background:rgba(212,160,23,0.1);border:1px solid rgba(212,160,23,0.3);border-radius:3px;padding:2px 5px;font-size:9px;color:#e8b96a;flex-shrink:0;margin-top:1px}

/* ===== HEARTBEAT ===== */
.heartbeat{grid-area:heartbeat;background:#1a1612;border-top:1px solid rgba(245,225,180,0.09);display:flex;flex-direction:column}
.hb-title{font-size:11px;color:#666;text-transform:uppercase;letter-spacing:1px;padding:6px 12px;border-bottom:1px solid rgba(245,225,180,0.09);flex-shrink:0;display:flex;align-items:center;gap:8px}
.hb-title .live-dot{width:6px;height:6px}
.hb-log{flex:1;overflow:scroll;-webkit-overflow-scrolling:touch;padding:4px 10px;font-family:'JetBrains Mono',monospace;font-size:11px;line-height:1.6}
.hb-log::-webkit-scrollbar{width:4px;height:4px}
.hb-log::-webkit-scrollbar-thumb{background:#333;border-radius:2px}
.log-entry{white-space:nowrap}
.log-ts{color:#555}.log-comp{color:#666;font-weight:600}
.log-sys{color:#e8b96a}.log-trade{color:#5fdb95;font-weight:700}.log-scan{color:#bbb}.log-error{color:#ff6b6b}.log-warning{color:#ffa500}.log-decision{color:#e8b96a;font-weight:600}

/* ===== SIDEBAR ===== */
.sidebar{grid-area:sidebar;background:#1f1b16;border-left:1px solid rgba(245,225,180,0.09);display:flex;flex-direction:column;overflow-y:auto}
.sidebar::-webkit-scrollbar{width:4px}
.sidebar::-webkit-scrollbar-thumb{background:#333;border-radius:2px}
.sb-section{padding:12px 14px;border-bottom:1px solid rgba(245,225,180,0.09)}
.sb-title{font-size:10px;color:#555;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:8px}
.sb-value{font-size:22px;font-weight:700;color:#e8b96a}
.sb-value.green{color:#5fdb95}.sb-value.red{color:#ff6b6b}
.sb-label{font-size:11px;color:#666;margin-top:2px}
.stats-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.stat-box{background:rgba(255,255,255,0.04);border-radius:4px;padding:6px 8px;text-align:center}
.stat-box .stat-val{font-size:15px;font-weight:700;color:#e8b96a}
.stat-box .stat-lbl{font-size:9px;color:#555;text-transform:uppercase;letter-spacing:.5px;margin-top:1px}
.position-item{background:rgba(255,255,255,0.04);border-radius:4px;padding:6px 8px;margin-bottom:4px;font-size:11px}
.pos-header{display:flex;justify-content:space-between;align-items:center}
.pos-ticker{color:#e8b96a;font-weight:700;font-size:12px}
.pos-pnl{font-weight:600}
.pos-details{color:#666;margin-top:2px;font-size:10px}
.reset-btn{width:100%;padding:6px 0;background:rgba(245,225,180,0.09);color:#ff6b6b;border:1px solid #ff6b6b;border-radius:4px;font-size:10px;font-weight:700;letter-spacing:1px;cursor:pointer;text-transform:uppercase}

/* ===== TAB BUTTONS ===== */
.tab-btns{display:flex;gap:2px;margin-left:16px}
.tab-btn{background:transparent;border:1px solid rgba(245,225,180,0.09);color:#666;font-size:10px;font-weight:600;padding:3px 12px;border-radius:3px;cursor:pointer;letter-spacing:.5px;transition:all .15s}
.tab-btn:hover{color:#f5ede0;border-color:#333}
.tab-btn.active{background:#e8b96a;color:#000;border-color:#e8b96a}

/* ===== PERFORMANCE PANEL ===== */
.perf-panel{grid-row:2/5;grid-column:1;background:#1a1612;overflow-y:auto;padding:16px 20px;display:none}
.perf-panel::-webkit-scrollbar{width:4px}
.perf-panel::-webkit-scrollbar-thumb{background:#333;border-radius:2px}
.perf-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:18px}
.perf-stat{background:rgba(255,255,255,0.04);border-radius:5px;padding:10px 12px;text-align:center}
.perf-stat .ps-val{font-size:18px;font-weight:700;color:#e8b96a}
.perf-stat .ps-lbl{font-size:9px;color:#555;text-transform:uppercase;letter-spacing:.5px;margin-top:3px}
.perf-equity{background:#272218;border-radius:5px;padding:12px;margin-bottom:18px;touch-action:none;-webkit-user-select:none;user-select:none}
#equity-svg{touch-action:none;-webkit-touch-callout:none}
.perf-equity-title{font-size:10px;color:#555;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:8px}
.perf-table{width:100%;border-collapse:collapse;font-size:11px}
.perf-table th{text-align:left;color:#555;font-size:9px;text-transform:uppercase;letter-spacing:.5px;padding:6px 8px;border-bottom:1px solid rgba(245,225,180,0.09)}
.perf-table td{padding:6px 8px;border-bottom:1px solid rgba(255,255,255,0.04);color:#f5ede0}
.perf-table tr:hover td{background:rgba(255,255,255,0.04)}

/* ===== EOD PANEL ===== */
.eod-panel{grid-row:2/5;grid-column:1;background:#1a1612;overflow-y:auto;padding:16px 20px;display:none}
.eod-panel::-webkit-scrollbar{width:4px}
.eod-panel::-webkit-scrollbar-thumb{background:#333;border-radius:2px}
.eod-card{background:rgba(255,255,255,0.04);border:1px solid rgba(245,225,180,0.09);border-radius:6px;padding:14px 16px;margin-bottom:10px;cursor:pointer;transition:border-color .15s}
.eod-card:hover{border-color:rgba(232,185,106,0.25)}
.eod-card-hdr{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}
.eod-card-sym{font-weight:700;font-size:14px;color:#e8b96a}
.eod-card-status{font-size:10px;font-weight:600;padding:2px 8px;border-radius:3px;letter-spacing:1px}
.eod-card-status.traded{background:rgba(95,219,149,0.15);color:#5fdb95}
.eod-card-status.no-trade{background:rgba(255,107,107,0.15);color:#ff6b6b}
.eod-card-detail{font-size:11px;color:rgba(245,237,224,0.6);line-height:1.6}
.eod-card-detail .eod-row{display:flex;justify-content:space-between;padding:2px 0;border-bottom:1px solid rgba(245,225,180,0.05)}
.eod-card-detail .eod-val{color:#f5ede0;font-family:'JetBrains Mono',monospace;font-size:11px}
.eod-totals{background:rgba(232,185,106,0.08);border:1px solid rgba(232,185,106,0.15);border-radius:6px;padding:14px 16px;margin-bottom:16px}
.eod-totals-title{font-size:10px;color:#e8b96a;text-transform:uppercase;letter-spacing:1.5px;margin-bottom:8px}
.eod-totals-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.eod-totals-item{text-align:center}
.eod-totals-item .tv{font-size:18px;font-weight:700;color:#e8b96a;font-family:'JetBrains Mono',monospace}
.eod-totals-item .tl{font-size:9px;color:rgba(245,237,224,0.38);text-transform:uppercase;letter-spacing:.5px;margin-top:2px}
.eod-day-detail{padding:8px 0}
.eod-day-back{display:inline-flex;align-items:center;gap:6px;color:#e8b96a;font-size:12px;cursor:pointer;margin-bottom:14px;padding:4px 0}
.eod-day-back:hover{text-decoration:underline}
.eod-chart-wrap{background:rgba(255,255,255,0.03);border:1px solid rgba(245,225,180,0.09);border-radius:6px;margin-bottom:12px;overflow:hidden}
.eod-chart-hdr{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;border-bottom:1px solid rgba(245,225,180,0.06)}
.eod-chart-hdr .eod-sym{font-weight:700;font-size:14px;color:#e8b96a}
.eod-chart-hdr .eod-trades-badge{font-size:10px;color:#5fdb95;font-weight:600}
.eod-chart-area{position:relative;height:220px;background:#1a1612}
.eod-chart-area svg{position:absolute;top:0;left:0;width:100%;height:100%}
.eod-trade-list{padding:8px 14px;font-size:11px;color:rgba(245,237,224,0.6)}
.eod-trade-list .eod-tl-row{display:flex;justify-content:space-between;padding:3px 0;border-bottom:1px solid rgba(245,225,180,0.04)}
.eod-trade-list .eod-tl-val{color:#f5ede0;font-family:'JetBrains Mono',monospace}

/* ===== ULTRA-WIDE ===== */
@media(min-width:2000px){.monitor{grid-template-columns:1fr 340px}}

/* ===== MOBILE ===== */
@media(max-width:768px){
  html,body{height:auto;overflow-x:hidden;overflow-y:auto;-webkit-overflow-scrolling:touch;width:100%;max-width:100vw}
  .monitor{display:flex;flex-direction:column;height:auto;min-height:100vh;width:100%;max-width:100vw;overflow-x:hidden}
  .header{flex-shrink:0;position:sticky;top:0;z-index:10;padding:4px 8px;width:100%;box-sizing:border-box;flex-wrap:wrap;height:auto;min-height:0}
  .header-left{gap:6px;min-width:0;flex:1 1 100%;overflow:hidden}
  .header-right{flex-shrink:0;gap:6px;flex:1 1 100%;justify-content:flex-end}
  .logo{font-size:13px;flex-shrink:0}
  .badge{font-size:8px;padding:2px 5px;flex-shrink:0}
  .live-dot{width:6px;height:6px}
  .tab-btns{margin-left:0;gap:2px;flex:1}
  .tab-btn{padding:3px 10px;font-size:9px;flex:1;text-align:center}
  .clock{font-size:10px;white-space:nowrap;flex-shrink:0}
  #self-check{display:none}
  .charts-row1,.charts-row2{display:flex;flex-direction:column;gap:1px;width:100%;overflow:hidden}
  .chart-card{min-height:160px;width:100%;overflow:hidden;padding:2px}
  .chart-area{min-height:160px;touch-action:none;-webkit-touch-callout:none;-webkit-user-select:none;padding-right:36px;overscroll-behavior:none;-webkit-overflow-scrolling:auto}
  .chart-area svg{will-change:transform;-webkit-transform:translateZ(0);transform:translateZ(0)}
  .price-axis{width:36px}
  .price-label{font-size:8px;padding:1px 2px}
  .time-axis{padding:2px 2px;margin-right:36px}
  .time-label{font-size:8px}
  .chart-ema-legend{font-size:7px;padding:0 2px}
  .crosshair-overlay{display:none}
  .chart-hdr{padding:2px}
  .chart-ticker{font-size:13px}
  .chart-price{font-size:11px}
  .chart-change{font-size:9px}
  .trade-marker{font-size:8px;padding:1px 4px;margin:1px 2px}
  .sidebar{order:10;border-left:none;border-top:1px solid rgba(245,225,180,0.09);width:100%;overflow:hidden;padding:0}
  .sb-section{padding:10px 14px}
  .sb-value{font-size:22px}
  .stats-grid{grid-template-columns:1fr 1fr;gap:6px}
  .stat-box .stat-val{font-size:14px}
  .position-item{padding:6px 8px;margin-bottom:3px}
  .heartbeat{order:9;min-height:180px;max-height:300px;width:100%;overflow:hidden}
  .hb-title{padding:5px 10px;font-size:10px}
  .hb-log{max-height:260px;overflow-y:scroll;font-size:9px;padding:4px 8px;word-break:break-all}
  .log-entry{white-space:normal;word-break:break-all}
  .perf-panel{padding:12px 10px;width:100%;overflow:hidden}
  .perf-stats{grid-template-columns:1fr 1fr}
  .perf-table{font-size:9px}
  .perf-table th,.perf-table td{padding:4px 5px}
  .eod-panel{padding:12px 10px;width:100%;overflow:hidden}
  .eod-totals-grid{grid-template-columns:1fr 1fr 1fr}
  .eod-chart-area{height:170px}
  .reset-btn{font-size:9px;padding:5px 0}
  .sidebar,.eod-panel,.perf-panel{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain}
  .pos-ticker{font-size:11px}
  .pos-details{font-size:9px}
  .stat-box{padding:6px}
  .stat-box .stat-lbl{font-size:8px}
}
@media(max-width:768px){.perf-stats{grid-template-columns:repeat(2,1fr)}}
