.heatmap-wrap[data-v-6bc6e476]{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.heatmap-header[data-v-6bc6e476]{flex-wrap:wrap;justify-content:space-between}.heatmap-header[data-v-6bc6e476],.heatmap-stats[data-v-6bc6e476]{align-items:center;display:flex;gap:var(--space-3)}.heatmap-stat[data-v-6bc6e476]{color:var(--text-secondary);font-size:var(--font-size-xs);font-weight:500}.heatmap-stat-sep[data-v-6bc6e476]{background:var(--border-medium);border-radius:50%;height:3px;width:3px}.heatmap-controls[data-v-6bc6e476]{align-items:center;display:flex;gap:var(--space-3)}.heatmap-filters[data-v-6bc6e476]{background:var(--bg-muted);border-radius:var(--radius-sm);display:flex;gap:2px;padding:2px}.heatmap-filter-btn[data-v-6bc6e476]{border-radius:6px;color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:500;padding:3px 10px;transition:color var(--transition-fast),background-color var(--transition-fast),box-shadow var(--transition-fast)}.heatmap-filter-btn[data-v-6bc6e476]:hover{color:var(--text-primary)}.heatmap-filter-btn.active[data-v-6bc6e476]{background:var(--bg-surface);box-shadow:var(--shadow-xs);color:var(--text-primary)}.heatmap-year-select[data-v-6bc6e476]{background:var(--bg-muted);border:none;border-radius:6px;color:var(--text-secondary);cursor:pointer;font-family:inherit;font-size:var(--font-size-2xs);font-weight:500;padding:4px 8px}.heatmap-year-select[data-v-6bc6e476]:hover{color:var(--text-primary)}.heatmap-calendar[data-v-6bc6e476]{display:flex;flex-direction:column;gap:2px;overflow-x:auto}.heatmap-month-row[data-v-6bc6e476]{display:grid;gap:2px;grid-template-columns:22px repeat(53,13px);margin-bottom:2px;min-width:-moz-max-content;min-width:max-content}.heatmap-month-label[data-v-6bc6e476]{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:500;text-align:left;white-space:nowrap}.heatmap-row[data-v-6bc6e476]{display:grid;gap:2px;grid-template-columns:22px repeat(53,13px);min-width:-moz-max-content;min-width:max-content}.heatmap-day-label[data-v-6bc6e476]{align-items:center;color:var(--text-muted);display:flex;font-size:var(--font-size-2xs);font-weight:500;height:13px;justify-content:flex-end;padding-right:4px}.heatmap-cell[data-v-6bc6e476]{border-radius:3px;cursor:default;height:13px;transition:outline var(--transition-fast);width:13px}.heatmap-cell[data-v-6bc6e476]:hover{outline:2px solid var(--border-strong);outline-offset:-1px}.heatmap-cell.is-empty[data-v-6bc6e476]{background:var(--bg-muted)}.heatmap-cell.is-out-of-range[data-v-6bc6e476]{background:var(--bg-muted);opacity:.3}.heatmap-cell.is-buy.intensity-1[data-v-6bc6e476]{background:#16a34a33}.heatmap-cell.is-buy.intensity-2[data-v-6bc6e476]{background:#16a34a66}.heatmap-cell.is-buy.intensity-3[data-v-6bc6e476]{background:#16a34a99}.heatmap-cell.is-buy.intensity-4[data-v-6bc6e476]{background:#16a34acc}.heatmap-cell.is-buy.intensity-5[data-v-6bc6e476]{background:#16a34a}.heatmap-cell.is-sell[data-v-6bc6e476]{background:var(--color-negative)}.heatmap-cell.is-dividend[data-v-6bc6e476]{background:var(--chart-1)}.heatmap-cell.is-mixed.intensity-1[data-v-6bc6e476]{background:linear-gradient(135deg,rgba(22,163,74,.2),var(--chart-1))}.heatmap-cell.is-mixed.intensity-2[data-v-6bc6e476]{background:linear-gradient(135deg,rgba(22,163,74,.4),var(--chart-1))}.heatmap-cell.is-mixed.intensity-3[data-v-6bc6e476]{background:linear-gradient(135deg,rgba(22,163,74,.6),var(--chart-1))}.heatmap-cell.is-mixed.intensity-4[data-v-6bc6e476]{background:linear-gradient(135deg,rgba(22,163,74,.8),var(--chart-1))}.heatmap-cell.is-mixed.intensity-5[data-v-6bc6e476]{background:linear-gradient(135deg,#16a34a,var(--chart-1))}.heatmap-legend[data-v-6bc6e476]{align-items:center;display:flex;flex-wrap:wrap;gap:4px}.heatmap-legend-label[data-v-6bc6e476]{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:500}.heatmap-legend .heatmap-cell[data-v-6bc6e476]{cursor:default;height:11px;width:11px}.heatmap-legend .heatmap-cell[data-v-6bc6e476]:hover{outline:none}.heatmap-legend .legend-empty[data-v-6bc6e476]{background:var(--bg-muted)}.heatmap-legend .legend-buy-1[data-v-6bc6e476]{background:#16a34a33}.heatmap-legend .legend-buy-2[data-v-6bc6e476]{background:#16a34a66}.heatmap-legend .legend-buy-3[data-v-6bc6e476]{background:#16a34a99}.heatmap-legend .legend-buy-4[data-v-6bc6e476]{background:#16a34acc}.heatmap-legend .legend-buy-5[data-v-6bc6e476]{background:#16a34a}.heatmap-legend .legend-sell[data-v-6bc6e476]{background:var(--color-negative)}.heatmap-legend .legend-dividend[data-v-6bc6e476]{background:var(--chart-1)}.heatmap-legend-sep[data-v-6bc6e476]{background:var(--border-light);height:11px;margin:0 4px;width:1px}.heatmap-legend-type[data-v-6bc6e476]{color:var(--text-muted);font-size:var(--font-size-2xs);font-weight:500;margin-right:4px}.heatmap-tooltip[data-v-6bc6e476]{background:var(--text-primary);border-radius:var(--radius-sm);box-shadow:var(--shadow-lg);color:var(--text-inverse);display:flex;flex-direction:column;font-size:var(--font-size-2xs);gap:4px;max-width:260px;padding:var(--space-2) var(--space-3);pointer-events:none;position:fixed;z-index:var(--z-max)}.heatmap-tooltip-date[data-v-6bc6e476]{border-bottom:1px solid hsla(0,0%,100%,.15);font-size:var(--font-size-2xs);font-weight:600;margin-bottom:2px;padding-bottom:4px}.heatmap-tooltip-row[data-v-6bc6e476]{align-items:center;display:flex;gap:var(--space-2)}.heatmap-tooltip-type[data-v-6bc6e476]{font-size:var(--font-size-2xs);font-weight:600;letter-spacing:.03em;text-transform:uppercase}.heatmap-tooltip-type.type-buy[data-v-6bc6e476]{color:#4ade80}.heatmap-tooltip-type.type-sell[data-v-6bc6e476]{color:#fca5a5}.heatmap-tooltip-type.type-dividend[data-v-6bc6e476]{color:#93c5fd}.heatmap-tooltip-detail[data-v-6bc6e476]{font-size:var(--font-size-2xs);opacity:.85}.heatmap-tooltip-total[data-v-6bc6e476]{border-top:1px solid hsla(0,0%,100%,.15);font-size:12px;font-weight:700;margin-top:2px;padding-top:4px}@media(max-width:768px){.heatmap-header[data-v-6bc6e476]{align-items:flex-start;flex-direction:column}.heatmap-calendar[data-v-6bc6e476]{-webkit-overflow-scrolling:touch}}
