.search{display:flex;gap:8px;margin:20px 0}.heatmap-actions button,.search button{background:#fff;border:var(--border);border-radius:10px;color:var(--txt);cursor:pointer;font-weight:600;padding:10px 14px}.heatmap-actions button:hover,.search button:hover{background:#f4f8ff}.heatmap-actions button:disabled,.search button:disabled{cursor:progress;opacity:.55}.list{display:grid;gap:12px}.card{background:var(--card);border:var(--border);border-radius:14px;padding:14px}.row{align-items:center;display:flex;gap:12px;justify-content:space-between}.muted{color:var(--muted)}.heatmap-controls select,.search input[type=search]{background:#fff;border:var(--border);border-radius:10px;color:var(--txt)}.search input[type=search]{flex:1;padding:10px 12px}.heatmap-controls select{padding:8px 10px;width:100%}.pill{border-radius:8px;font-variant-numeric:tabular-nums;padding:4px 8px}.up{background:rgba(0,211,167,.12);color:#0f8f73}.down{background:rgba(255,90,90,.14);color:#b42828}.heatmap{display:grid;gap:12px;margin:20px 0;min-width:0;overflow:hidden}.heatmap-head{align-items:flex-start;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between}.heatmap-title{font-size:1.2rem;margin:0}.heatmap-subtitle{font-size:.92rem;margin-top:4px;max-width:700px}.heatmap-actions{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.heatmap-auto{align-items:center;color:var(--muted);display:inline-flex;font-size:.9rem;gap:6px}.heatmap-auto input{height:16px;width:16px}.heatmap-controls{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.heatmap-controls label{color:var(--muted);display:grid;font-size:.88rem;gap:6px}.heatmap-stats{display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.stat-chip{background:#fff;border:1px solid rgba(15,26,45,.12);border-radius:10px;padding:10px}.stat-label{color:var(--muted);display:block;font-size:.8rem;margin-bottom:2px}.stat-value{font-size:1rem;font-weight:700}.heatmap-legend{background:#fff;border:1px solid rgba(15,26,45,.12);border-radius:10px;padding:10px 12px}.legend-bar{background:linear-gradient(90deg,#d64a4a,#e6ecf7 50%,#0ba36e);border-radius:999px;height:10px}.legend-labels{color:var(--muted);display:flex;font-size:.76rem;justify-content:space-between;margin-top:6px}.heatmap-sectors{display:flex;flex-wrap:wrap;gap:8px}.sector-chip{background:#fff;border:1px solid rgba(15,26,45,.16);border-radius:999px;cursor:pointer;font-size:.82rem;padding:6px 10px}.sector-chip.is-active{background:rgba(0,211,167,.13);border-color:rgba(0,155,122,.45)}.heatmap-grid{display:grid;gap:10px;min-width:0;overflow:hidden}.sector-block{background:linear-gradient(180deg,hsla(0,0%,100%,.95),rgba(248,251,255,.95));border:1px solid rgba(15,26,45,.12);border-radius:14px;min-width:0;overflow:hidden;padding:10px}.sector-head{align-items:baseline;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:8px;min-width:0}.sector-title{font-size:.94rem;margin:0}.sector-meta{color:var(--muted);font-size:.8rem;max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sector-tiles{display:grid;gap:8px;grid-auto-flow:dense;grid-auto-rows:28px;grid-template-columns:repeat(12,minmax(0,1fr));min-width:0;width:100%}.heat-tile{background:var(--tile-bg,#f6f9ff);border:1px solid var(--tile-border,rgba(15,26,45,.18));border-radius:9px;box-sizing:border-box;color:var(--tile-fg,var(--txt));display:flex;flex-direction:column;gap:3px;grid-column:span 2;grid-row:span 2;justify-content:flex-start;max-width:100%;min-height:56px;min-width:0;overflow:hidden;padding:8px;text-decoration:none}.heat-tile:hover{transform:translateY(-1px)}.heat-tile.is-highlight{outline:2px solid rgba(15,26,45,.52)}.heat-sym{font-size:.86rem;font-weight:800;letter-spacing:.1px}.heat-name,.heat-sym{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.heat-name{font-size:.75rem;line-height:1.2;opacity:.9}.heat-change{font-size:.84rem;font-weight:700;margin-top:auto}.heat-extra{font-size:.72rem;opacity:.92;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.heat-tile.is-compact{padding:6px}.heat-tile.is-compact .heat-extra,.heat-tile.is-compact .heat-name{display:none}.heat-tile.is-compact .heat-sym{font-size:.8rem}.heat-tile.is-compact .heat-change{font-size:.8rem;line-height:1.1}.heatmap-empty{background:hsla(0,0%,100%,.9);border:1px dashed rgba(15,26,45,.22);border-radius:10px;color:var(--muted);padding:18px;text-align:center}@media (max-width:980px){.sector-tiles{grid-auto-rows:26px;grid-template-columns:repeat(10,minmax(0,1fr))}}@media (max-width:760px){.search{flex-direction:column}.search button{width:100%}.heatmap-head{flex-direction:column}.heatmap-actions{justify-content:space-between;width:100%}.sector-tiles{gap:6px;grid-auto-rows:24px;grid-template-columns:repeat(6,minmax(0,1fr))}}