:root{--text: #18211f;--text-inverse: #fff;--page-bg: #f6f3ee;--page-gradient-start: rgba(255, 255, 255, .7);--page-gradient-end: rgba(246, 243, 238, .92);--primary: #22342e;--primary-text: #fff;--primary-soft: #e9efe4;--primary-soft-text: #26493c;--panel-bg: #fffaf3;--surface-bg: #fffdf8;--surface-alt: #f6f0e6;--heatmap-bg: #f2ece1;--border: #e5ded2;--border-strong: #d9d1c4;--border-soft: #ebe4da;--border-muted: #d8d0c3;--muted: #6d7670;--muted-2: #6a746d;--muted-3: #788179;--control-text: #46524c;--secondary-text: #647069;--heading-soft: #3e4943;--positive: #087750;--negative: #b23c38;--positive-strong: #10855c;--negative-strong: #c24341;--bar-bg: #ede6da;--bar-fill: #2f8d68;--tooltip-bg: rgba(255, 253, 248, .98);--tooltip-border: rgba(28, 42, 36, .14);--tooltip-shadow: rgba(28, 42, 36, .2);--option-badge-bg: rgba(255, 253, 248, .9);--option-badge-border: rgba(23, 35, 31, .18);--focus-soft: rgba(82, 120, 102, .12);--banner-bg: #fff7e8;--banner-border: #ded6c9;--banner-text: #5b4a2d;--error-bg: #fff0ef;--error-border: #ecc0bc;--error-text: #8d2e2a;color:var(--text);background:var(--page-bg);color-scheme:light;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}:root[data-theme=dark]{--text: #e8efe9;--text-inverse: #101513;--page-bg: #101513;--page-gradient-start: rgba(36, 43, 38, .72);--page-gradient-end: rgba(12, 16, 14, .96);--primary: #d6eadf;--primary-text: #101513;--primary-soft: #24372f;--primary-soft-text: #b9e7d0;--panel-bg: #181f1b;--surface-bg: #202821;--surface-alt: #252e27;--heatmap-bg: #111815;--border: #334138;--border-strong: #46544b;--border-soft: #2a352f;--border-muted: #46544b;--muted: #a1ada7;--muted-2: #b4c0ba;--muted-3: #9aa69f;--control-text: #dce7e1;--secondary-text: #aebbb4;--heading-soft: #d8e3dd;--positive: #4fd69b;--negative: #ff8580;--positive-strong: #38c489;--negative-strong: #f17370;--bar-bg: #2c352f;--bar-fill: #55bd90;--tooltip-bg: rgba(27, 34, 30, .98);--tooltip-border: rgba(215, 234, 222, .16);--tooltip-shadow: rgba(0, 0, 0, .42);--option-badge-bg: rgba(232, 239, 233, .92);--option-badge-border: rgba(16, 21, 19, .26);--focus-soft: rgba(102, 185, 145, .18);--banner-bg: #2c2519;--banner-border: #5b4c32;--banner-text: #f0d99d;--error-bg: #351c1d;--error-border: #6b3435;--error-text: #ffaaa4;color-scheme:dark}@media(prefers-color-scheme:dark){:root:not([data-theme]){--text: #e8efe9;--text-inverse: #101513;--page-bg: #101513;--page-gradient-start: rgba(36, 43, 38, .72);--page-gradient-end: rgba(12, 16, 14, .96);--primary: #d6eadf;--primary-text: #101513;--primary-soft: #24372f;--primary-soft-text: #b9e7d0;--panel-bg: #181f1b;--surface-bg: #202821;--surface-alt: #252e27;--heatmap-bg: #111815;--border: #334138;--border-strong: #46544b;--border-soft: #2a352f;--border-muted: #46544b;--muted: #a1ada7;--muted-2: #b4c0ba;--muted-3: #9aa69f;--control-text: #dce7e1;--secondary-text: #aebbb4;--heading-soft: #d8e3dd;--positive: #4fd69b;--negative: #ff8580;--positive-strong: #38c489;--negative-strong: #f17370;--bar-bg: #2c352f;--bar-fill: #55bd90;--tooltip-bg: rgba(27, 34, 30, .98);--tooltip-border: rgba(215, 234, 222, .16);--tooltip-shadow: rgba(0, 0, 0, .42);--option-badge-bg: rgba(232, 239, 233, .92);--option-badge-border: rgba(16, 21, 19, .26);--focus-soft: rgba(102, 185, 145, .18);--banner-bg: #2c2519;--banner-border: #5b4c32;--banner-text: #f0d99d;--error-bg: #351c1d;--error-border: #6b3435;--error-text: #ffaaa4;color-scheme:dark}}*{box-sizing:border-box}body{margin:0;min-width:320px;background:linear-gradient(180deg,var(--page-gradient-start),var(--page-gradient-end)),var(--page-bg)}button,input,select{font:inherit}button{cursor:pointer}.app-shell{width:min(1480px,calc(100% - 32px));margin:0 auto;padding:24px 0 40px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:18px}.eyebrow{margin:0 0 4px;color:var(--muted);font-size:.78rem;font-weight:800;text-transform:uppercase}h1,h2,p{margin:0}h1{font-size:clamp(1.7rem,3vw,2.7rem);line-height:1.02;letter-spacing:0}h2{font-size:1rem;letter-spacing:0}.topbar-actions{position:relative;display:flex;align-items:center;flex-wrap:wrap;gap:10px;justify-content:flex-end}.menu-button{min-height:40px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-bg);color:var(--control-text);padding:0 14px;font-weight:850}.menu-button[aria-expanded=true]{background:var(--primary);border-color:var(--primary);color:var(--primary-text)}.topbar-menu{position:absolute;top:calc(100% + 8px);right:0;z-index:40;width:min(328px,calc(100vw - 32px));display:grid;gap:10px;border:1px solid var(--border);border-radius:8px;background:var(--panel-bg);box-shadow:0 18px 48px var(--tooltip-shadow);padding:12px}.appearance-selector{min-height:40px;display:inline-grid;grid-template-columns:repeat(3,minmax(0,1fr));overflow:hidden;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-bg)}.appearance-selector button{min-width:82px;display:inline-flex;align-items:center;justify-content:center;gap:6px;border:0;border-right:1px solid var(--border);background:transparent;color:var(--control-text);padding:0 10px;font-weight:850}.appearance-selector button:last-child{border-right:0}.appearance-selector button.active{background:var(--primary);color:var(--primary-text)}.icon-button{min-height:40px;display:inline-flex;align-items:center;gap:8px;border:1px solid var(--primary);border-radius:8px;background:var(--primary);color:var(--primary-text);padding:0 14px;font-weight:800}.icon-button.quiet{background:var(--panel-bg);color:var(--primary)}.refresh-countdown{min-width:38px;height:24px;display:inline-grid;place-items:center;border:1px solid rgba(255,255,255,.38);border-radius:6px;background:#ffffff2e;padding:0 6px;font-size:.78rem;font-weight:900;font-variant-numeric:tabular-nums}.topbar-menu .appearance-selector,.topbar-menu .icon-button{width:100%}.topbar-menu .icon-button{justify-content:center}.menu-toggle{min-height:40px;display:flex;align-items:center;gap:10px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-bg);color:var(--control-text);padding:0 12px;font-weight:850}.menu-toggle input{width:18px;height:18px;accent-color:var(--primary)}.menu-auto-refresh{min-height:40px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-bg);color:var(--control-text);padding:0 10px 0 12px;font-weight:850}.auto-refresh-toggle,.auto-refresh-interval{display:inline-flex;align-items:center;gap:10px;min-width:0}.auto-refresh-toggle input{width:18px;height:18px;flex:0 0 auto;accent-color:var(--primary)}.auto-refresh-toggle span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auto-refresh-interval{justify-content:flex-end;gap:6px}.auto-refresh-interval input{width:68px;height:30px;border:1px solid var(--border-strong);border-radius:6px;background:var(--panel-bg);color:var(--text);padding:0 8px;font-weight:800}.auto-refresh-interval span{color:var(--muted);font-size:.82rem}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-banner{border:1px solid var(--banner-border);background:var(--banner-bg);color:var(--banner-text);border-radius:8px;padding:12px 14px;margin:12px 0;font-size:.92rem;font-weight:700}.status-banner.error{background:var(--error-bg);border-color:var(--error-border);color:var(--error-text)}.summary-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:18px 0}.metric{min-height:104px;background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;display:flex;align-items:flex-start;gap:14px;padding:16px}.metric-icon{width:36px;height:36px;border-radius:8px;display:grid;place-items:center;background:var(--primary-soft);color:var(--primary-soft-text);flex:0 0 auto}.metric span{display:block;color:var(--muted-2);font-size:.82rem;font-weight:800}.metric strong{display:block;margin-top:6px;font-size:clamp(1.25rem,2vw,1.75rem);line-height:1;letter-spacing:0}.metric small{display:block;margin-top:8px;color:var(--muted-3);font-weight:750}.tone-positive{color:var(--positive)}.tone-negative{color:var(--negative)}.toolbar{display:grid;grid-template-columns:minmax(180px,260px) auto minmax(180px,280px) auto;gap:12px;align-items:end;margin-bottom:14px}.field span{display:block;margin-bottom:6px;color:var(--muted);font-size:.78rem;font-weight:850;text-transform:uppercase}select,.search-field,.theme-input{width:100%;height:40px;border:1px solid var(--border-strong);border-radius:8px;background:var(--surface-bg);color:var(--text)}select{padding:0 12px}.segmented{min-height:40px;display:inline-grid;grid-template-columns:repeat(7,minmax(42px,1fr));border:1px solid var(--border-strong);border-radius:8px;overflow:hidden;background:var(--surface-bg)}.segmented.metric-selector{grid-template-columns:minmax(86px,1.35fr) repeat(7,minmax(42px,1fr))}.segmented button{min-width:42px;border:0;border-right:1px solid var(--border);background:transparent;color:var(--control-text);font-weight:850;padding:0 10px}.segmented button:last-child{border-right:0}.segmented button.active{background:var(--primary);color:var(--primary-text)}.search-field{display:flex;align-items:center;gap:8px;padding:0 12px}.search-field svg{color:var(--muted-3);flex:0 0 auto}.search-field input{width:100%;height:100%;border:0;outline:0;background:transparent}.toggle{min-height:40px;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;color:var(--control-text);font-weight:850}.toggle input{width:18px;height:18px;accent-color:var(--primary)}.dashboard-grid{display:grid;grid-template-columns:320px minmax(0,1fr);gap:14px;align-items:stretch}.side-panel,.heatmap-panel,.positions-panel{background:var(--panel-bg);border:1px solid var(--border);border-radius:8px;padding:14px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.panel-heading p,.panel-heading span{color:var(--muted);font-size:.86rem;font-weight:750}.pill{min-height:30px;border:1px solid var(--border-muted);border-radius:999px;background:var(--surface-bg);color:var(--control-text);padding:0 12px;font-size:.82rem;font-weight:850}.pill.active{background:var(--primary);color:var(--primary-text);border-color:var(--primary)}.theme-list{display:flex;flex-direction:column;gap:8px}.theme-row{width:100%;border:1px solid var(--border);background:var(--surface-bg);border-radius:8px;padding:10px;color:inherit;text-align:left}.theme-row.active{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.theme-row-top,.theme-row-bottom{display:flex;align-items:center;justify-content:space-between;gap:12px}.theme-row-top strong,.theme-row-top em{font-size:.9rem;font-style:normal}.theme-row-bottom{margin-top:8px;color:var(--secondary-text);font-size:.8rem;font-weight:800}.theme-bar{display:block;height:7px;margin-top:10px;border-radius:999px;overflow:hidden;background:var(--bar-bg)}.theme-bar span{display:block;height:100%;min-width:4px;border-radius:inherit;background:var(--bar-fill)}.legend{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-size:.8rem;font-weight:850}.legend-positive,.legend-negative{width:18px;height:10px;border-radius:999px;display:inline-block}.legend-positive{background:var(--positive-strong)}.legend-negative{background:var(--negative-strong)}.heatmap{width:100%;min-height:420px;border-radius:8px;position:relative;overflow:visible}.heatmap svg{display:block;width:100%;height:auto;border-radius:8px;background:var(--heatmap-bg);touch-action:manipulation}.heatmap-group-label{height:100%;display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;overflow:hidden;border-radius:6px;padding:0 8px;white-space:nowrap;font-size:13px;font-weight:900;box-shadow:inset 0 0 0 1px #ffffff52;cursor:default;outline:none}.heatmap-group-label.dark{color:#17231f;box-shadow:inset 0 0 0 1px #17231f2e}.heatmap-group-label.light{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.22)}.heatmap-group-label:hover,.heatmap-group-label:focus{box-shadow:inset 0 0 0 1px #ffffffb3,0 4px 10px #17201d33}.heatmap-group-label strong{min-width:0;overflow:hidden;text-overflow:ellipsis}.heatmap-group-label span{flex:0 0 auto;font-variant-numeric:tabular-nums}.tile-content{width:100%;height:100%;display:flex;flex-direction:column;justify-content:space-between;gap:3px;overflow:hidden;font-weight:850;line-height:1.05}.tile-content.compact{gap:2px;line-height:1}.tile-content.tiny{justify-content:flex-start;gap:1px;line-height:.95}.tile-content strong,.tile-content span,.tile-content em{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;font-style:normal}.tile-content strong{font-size:var(--ticker-size, 1rem)}.tile-content span{font-size:var(--tile-value-size, .8rem)}.tile-content em{font-size:var(--tile-change-size, .9rem)}.tile-content.light{color:#fff;text-shadow:0 1px 2px rgba(0,0,0,.2)}.tile-content.dark{color:#17231f}.tile-svg-label{letter-spacing:0;paint-order:stroke fill;stroke:#fffdf82e;stroke-width:.8px}.tile-option-badge rect{fill:var(--option-badge-bg);stroke:var(--option-badge-border);stroke-width:1px}.tile-option-badge text{fill:#17231f;font-size:8px;font-weight:950;letter-spacing:0}.heatmap-tile{cursor:pointer;outline:none}.heatmap-tile rect{stroke:transparent;transition:filter .16s ease,stroke .16s ease,stroke-width .16s ease}.heatmap-tile:hover rect,.heatmap-tile:focus rect{filter:drop-shadow(0 8px 12px rgba(23,32,29,.22));stroke:#ffffffdb;stroke-width:3px}.tile-tooltip{width:296px;max-width:calc(100vw - 28px);position:absolute;z-index:20;border:1px solid var(--tooltip-border);border-radius:8px;background:var(--tooltip-bg);box-shadow:0 18px 48px var(--tooltip-shadow);color:var(--text);padding:12px;pointer-events:none}.tile-tooltip.above{transform:translate(-50%,calc(-100% - 12px))}.tile-tooltip.below{transform:translate(-50%,12px)}.group-tooltip{width:272px}.tooltip-title{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.tooltip-title strong{font-size:1.08rem}.tooltip-title span{max-width:170px;overflow:hidden;color:var(--secondary-text);font-size:.78rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.tile-tooltip p{margin-top:4px;color:var(--secondary-text);font-size:.82rem;font-weight:760}.tile-tooltip dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px;margin:12px 0 0}.tile-tooltip div{min-width:0}.tile-tooltip dt{color:var(--muted-3);font-size:.7rem;font-weight:900;text-transform:uppercase}.tile-tooltip dd{margin:2px 0 0;overflow:hidden;font-size:.88rem;font-weight:850;text-overflow:ellipsis;white-space:nowrap}.tooltip-options{margin-top:12px;border-top:1px solid var(--border);padding-top:10px}.tooltip-options>strong{display:block;color:var(--control-text);font-size:.76rem;font-weight:900;text-transform:uppercase}.option-leg-list{display:flex;flex-direction:column;gap:7px;max-height:146px;margin-top:8px;overflow-y:auto}.option-leg{display:grid;grid-template-columns:minmax(0,1fr) max-content;gap:4px 10px;border-radius:6px;background:var(--surface-alt);padding:8px}.option-leg span{font-size:.78rem;font-weight:850;line-height:1.2;overflow-wrap:anywhere}.option-leg em{align-self:start;font-size:.78rem;font-style:normal;font-weight:900;text-align:right;white-space:nowrap}.option-leg small{grid-column:1 / -1;font-size:.72rem;font-weight:850}.heatmap-empty,.empty-state{min-height:160px;display:grid;place-items:center;color:var(--muted-3);font-weight:850;border:1px dashed var(--border-muted);border-radius:8px}.positions-panel{margin-top:14px}.table-wrap{width:100%;overflow-x:auto}table{width:100%;border-collapse:collapse;min-width:920px}th,td{padding:12px 10px;border-bottom:1px solid var(--border-soft);text-align:left;vertical-align:middle;font-size:.9rem}th{color:var(--muted);font-size:.76rem;font-weight:900;text-transform:uppercase}.sort-header{width:100%;min-height:28px;display:inline-flex;align-items:center;gap:6px;border:0;background:transparent;color:inherit;padding:0;font-size:inherit;font-weight:inherit;text-align:left;text-transform:inherit}.sort-header.numeric{justify-content:flex-end}.sort-indicator{min-width:10px;color:var(--muted-3);font-size:.7rem;line-height:1}.sort-indicator.active{color:var(--primary)}.numeric{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.symbol-cell{min-width:190px}.symbol-cell strong,.symbol-cell span{display:block}.symbol-cell strong{font-size:.98rem}.symbol-cell span{max-width:280px;overflow:hidden;color:var(--muted);font-size:.8rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.theme-input{min-width:170px;padding:0 34px 0 10px;outline-color:var(--bar-fill)}.theme-input-wrap{position:relative;min-width:170px}.theme-clear-button{position:absolute;top:50%;right:6px;display:inline-flex;width:26px;height:26px;align-items:center;justify-content:center;border:0;border-radius:6px;background:transparent;color:var(--muted-3);transform:translateY(-50%)}.theme-clear-button:hover{background:var(--focus-soft);color:var(--primary-soft-text)}@media(max-width:1120px){.summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.toolbar{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}}@media(max-width:700px){.app-shell{width:min(100% - 20px,1480px);padding-top:18px}.topbar{align-items:flex-start;flex-direction:column}.topbar-actions{align-self:stretch;display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.topbar-menu{left:0;right:0;width:100%}.topbar-actions,.appearance-selector,.icon-button{width:100%}.menu-button{justify-content:center;width:100%}.appearance-selector button{min-width:0}.icon-button{justify-content:center}.summary-grid,.toolbar{grid-template-columns:1fr}.segmented,.segmented.metric-selector{grid-template-columns:repeat(4,minmax(0,1fr))}.segmented button{min-height:40px;border-bottom:1px solid var(--border)}.toggle{justify-content:flex-start}.side-panel,.heatmap-panel,.positions-panel{padding:12px}}
