:root{--bg-primary: #0b0e17;--bg-card: rgba(13, 17, 28, .85);--bg-card-hover: rgba(18, 24, 40, .95);--bg-input: rgba(15, 20, 35, .9);--glass-border: rgba(0, 240, 160, .08);--glass-border-hover: rgba(0, 240, 160, .18);--glass-blur: 12px;--accent: #00f0a0;--accent-dim: #00c07a;--accent-glow: rgba(0, 240, 160, .12);--cyan: #00b8ff;--cyan-glow: rgba(0, 184, 255, .1);--green: #00e68a;--red: #ff4466;--red-dim: #cc3355;--yellow: #ffc44d;--text: #e8ecf4;--text-dim: #7a8ba8;--text-muted: #4a5568;--radius: 12px;--radius-sm: 8px;--transition: .12s ease-out;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}body{background:var(--bg-primary);color:var(--text);font-family:var(--font-sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;overflow-x:hidden}body:before{content:"";position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 20% 50%,rgba(0,240,160,.03) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(0,184,255,.03) 0%,transparent 50%),repeating-linear-gradient(0deg,transparent,transparent 60px,rgba(0,240,160,.015) 60px,rgba(0,240,160,.015) 61px),repeating-linear-gradient(90deg,transparent,transparent 60px,rgba(0,240,160,.015) 60px,rgba(0,240,160,.015) 61px);pointer-events:none;z-index:0}.container{max-width:1480px;margin:0 auto;padding:16px 20px;position:relative;z-index:1}.header{display:flex;justify-content:space-between;align-items:center;padding:16px 24px;background:var(--bg-card);-webkit-backdrop-filter:blur(var(--glass-blur));backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-radius:var(--radius);margin-bottom:16px}.header-left,.logo{display:flex;align-items:center;gap:12px}.logo h1{font-size:18px;font-weight:700;letter-spacing:.5px;background:linear-gradient(135deg,var(--accent),var(--cyan));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-right{display:flex;align-items:center;gap:20px}.header-meta{display:flex;align-items:center;gap:16px;font-size:13px}.last-updated{color:var(--text-dim);font-size:12px}.clock{font-family:var(--font-mono);font-size:20px;font-weight:700;color:var(--text);letter-spacing:1px}.strategy-select{background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--accent);font-family:var(--font-sans);font-size:13px;font-weight:500;padding:8px 14px;cursor:pointer;transition:border-color var(--transition);outline:none}.strategy-select:hover,.strategy-select:focus{border-color:var(--glass-border-hover)}.kpi-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:16px}.kpi-card{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius);padding:18px 20px;transition:border-color var(--transition);position:relative;overflow:hidden}.kpi-card:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--accent-dim),transparent);opacity:0;transition:opacity var(--transition)}.kpi-card:hover{border-color:var(--glass-border-hover)}.kpi-card:hover:before{opacity:1}.kpi-highlight{border-color:#00f0a026;box-shadow:0 0 30px var(--accent-glow)}.kpi-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.kpi-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.8px;color:var(--text-dim)}.kpi-icon{font-size:14px}.kpi-value{font-family:var(--font-mono);font-size:26px;font-weight:800;color:var(--text);line-height:1.2}.kpi-value.positive{color:var(--green)}.kpi-value.negative{color:var(--red)}.kpi-sub{font-size:11px;color:var(--text-muted);margin-top:4px}.panel{background:var(--bg-card);border:1px solid var(--glass-border);border-radius:var(--radius);padding:20px}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.panel-title{font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--accent)}.charts-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.chart-container{position:relative;width:100%;will-change:contents;height:280px}.chart-container-sm{height:200px}.chart-container canvas{width:100%!important;height:100%!important}.date-filters{display:flex;align-items:center;gap:8px}.date-input{background:var(--bg-input);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--text);font-family:var(--font-mono);font-size:11px;padding:5px 10px;outline:none;transition:border-color var(--transition)}.date-input:focus{border-color:var(--accent-dim)}.btn-sm{background:linear-gradient(135deg,#00f0a026,#00b8ff1a);border:1px solid var(--glass-border);border-radius:var(--radius-sm);color:var(--accent);font-family:var(--font-sans);font-size:11px;font-weight:600;padding:5px 14px;cursor:pointer;transition:all var(--transition);text-transform:uppercase;letter-spacing:.5px}.btn-sm:hover{background:linear-gradient(135deg,#00f0a040,#00b8ff2e);border-color:var(--glass-border-hover)}.btn-ghost{background:transparent;color:var(--text-dim)}.btn-ghost:hover{background:#ffffff0a;color:var(--text)}.content-row{margin-bottom:16px}.trade-log-panel .panel-header{margin-bottom:12px}.log-controls{display:flex;align-items:center;gap:8px}.trade-count{font-size:12px;color:var(--text-dim);font-weight:500}.trade-log-container{max-height:380px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--glass-border) transparent}.trade-log-container::-webkit-scrollbar{width:6px}.trade-log-container::-webkit-scrollbar-track{background:transparent}.trade-log-container::-webkit-scrollbar-thumb{background:var(--glass-border);border-radius:3px}.trade-log{width:100%;border-collapse:separate;border-spacing:0;font-size:12px}.trade-log th{background:#00f0a00a;color:var(--text-dim);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.8px;padding:10px 14px;text-align:left;position:sticky;top:0;z-index:10;border-bottom:1px solid var(--glass-border)}.trade-log td{padding:9px 14px;border-bottom:1px solid rgba(255,255,255,.03);font-family:var(--font-mono);font-size:12px;transition:background var(--transition)}.trade-log tr:hover td{background:#ffffff05}.trade-log .win{color:var(--green);font-weight:600}.trade-log .loss{color:var(--red);font-weight:600}.trade-log .type-long{color:var(--green)}.trade-log .type-short{color:var(--red)}.badge{display:inline-block;padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;text-transform:uppercase}.badge-win{background:#00e68a1f;color:var(--green)}.badge-loss{background:#ff44661f;color:var(--red)}.badge-be{background:#ffc44d1f;color:var(--yellow)}.breakdown-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:16px}.breakdown-content{max-height:260px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--glass-border) transparent}.symbol-bar{display:flex;align-items:center;gap:10px;margin-bottom:10px}.symbol-label{min-width:55px;font-size:12px;font-weight:600;color:var(--text);font-family:var(--font-mono)}.bar-track{flex:1;height:24px;background:#ffffff08;border-radius:4px;overflow:hidden;position:relative}.bar-fill{height:100%;border-radius:4px;transition:width .6s cubic-bezier(.4,0,.2,1)}.bar-fill.positive{background:linear-gradient(90deg,#00e68a26,#00e68a59)}.bar-fill.negative{background:linear-gradient(90deg,#ff446626,#ff446659)}.symbol-pnl{min-width:90px;text-align:right;font-size:12px;font-weight:700;font-family:var(--font-mono);white-space:nowrap}.symbol-pnl.positive{color:var(--green)}.symbol-pnl.negative{color:var(--red)}.setup-table{width:100%;border-collapse:separate;border-spacing:0;font-size:11px}.setup-table th{color:var(--text-muted);font-weight:600;font-size:10px;text-transform:uppercase;letter-spacing:.5px;padding:8px 10px;text-align:left;border-bottom:1px solid var(--glass-border)}.setup-table td{padding:7px 10px;border-bottom:1px solid rgba(255,255,255,.02);font-family:var(--font-mono)}.stats-row{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:16px}.mini-panel{display:flex;flex-direction:column;gap:4px;padding:16px 20px}.mini-stat{display:flex;justify-content:space-between;align-items:center;padding:6px 0}.mini-label{font-size:12px;color:var(--text-dim)}.mini-value{font-family:var(--font-mono);font-size:16px;font-weight:700;color:var(--text)}.mini-value.positive{color:var(--green)}.mini-value.negative{color:var(--red)}.heatmap-compact{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:4px;max-height:120px;overflow-y:auto}.heatmap-cell{padding:6px 8px;border-radius:4px;font-size:10px;font-family:var(--font-mono);text-align:center;font-weight:600}.heatmap-cell.profit{background:#00e68a1f;color:var(--green)}.heatmap-cell.loss-cell{background:#ff44661f;color:var(--red)}.footer{display:flex;justify-content:center;padding:12px 0}.refresh-indicator{display:flex;align-items:center;gap:8px;font-size:11px;color:var(--text-muted)}.refresh-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.loading-pulse{animation:loadPulse .6s ease-in-out}@keyframes loadPulse{0%{opacity:1}50%{opacity:.6}to{opacity:1}}@media(max-width:1024px){.kpi-strip{grid-template-columns:repeat(3,1fr)}.charts-row,.breakdown-row,.stats-row{grid-template-columns:1fr}.header{flex-direction:column;gap:12px}.header-right{flex-wrap:wrap;justify-content:center}}@media(max-width:768px){body{font-size:13px}.container{padding:8px 10px}.kpi-strip{grid-template-columns:repeat(2,1fr);gap:8px;position:sticky;top:0;z-index:100;background:var(--bg-primary);padding:8px 0}.kpi-value{font-size:20px}.kpi-card{padding:12px 14px}.chart-container{height:220px}.header{padding:12px 16px}.logo h1{font-size:14px}.clock{font-size:16px}.date-filters{flex-wrap:wrap}.trade-log-container{max-height:300px}.trade-log{min-width:600px}.trade-log-container{overflow-x:auto;-webkit-overflow-scrolling:touch}}@media(max-width:480px){.kpi-strip{grid-template-columns:repeat(2,1fr);gap:6px}.kpi-value{font-size:17px}.kpi-label{font-size:9px}.logo h1{font-size:12px}.chart-container{height:180px}.panel{padding:14px}}
