.matrix-top{text-align:center;letter-spacing:.18em;font-weight:700;color:#f5b959}
.target-view-controls,.target-optimizer{padding:12px;border:1px solid #435267;border-radius:8px;margin:12px 0}
.target-view-controls>div,.target-options{display:flex;flex-wrap:wrap;gap:8px;align-items:center}
.target-view-controls button,.target-optimizer button{min-height:44px;padding:8px 12px;touch-action:manipulation}
.target-view-controls p,.target-optimizer p{font-size:.8rem;line-height:1.5;color:#abbcd1}
.target-options label{display:flex;gap:7px;align-items:center;flex-wrap:wrap;max-width:100%}
.target-options input[type=checkbox]{width:20px;height:20px}
.target-options input[type=number]{max-width:85px}
.target-options select{max-width:190px}
.target-optimizer table{width:100%;border-collapse:collapse;font-size:.8rem;margin:12px 0}
.target-optimizer td,.target-optimizer th{padding:6px;text-align:left;border-bottom:1px solid #38495d}
.target-optimizer details{margin-top:12px}
.target-section-controls{display:flex;gap:10px;align-items:center;flex-wrap:wrap;padding:8px}
.target-section-controls input{max-width:120px}
@media print{.target-options,.target-view-controls button,.target-optimizer button,.target-section-controls{display:none!important}.target-view-controls p,.target-optimizer p{color:#222}.target-optimizer details{break-inside:avoid}.target-view-controls{break-inside:avoid}}

.activity-bar{height:5px;overflow:hidden;border-radius:4px;background:#34445a;margin:8px 0;min-width:100px}
.activity-bar::after{content:"";display:block;width:35%;height:100%;background:#ffae51;animation:activity-travel 1.2s ease-in-out infinite alternate}
@keyframes activity-travel{from{transform:translateX(0)}to{transform:translateX(185%)}}
@media(prefers-reduced-motion:reduce){.activity-bar::after{animation:none;width:100%}}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.optimization-patience{font-size:.9rem;color:#e9eff7}
.live-activity{padding:8px 12px;border:1px solid #ffae51;border-radius:6px;margin:8px 0}
@media print{.live-activity,.activity-bar,[data-elapsed],.optimization-patience{display:none!important}}

.fixture-overlay-controls { display:flex;flex-wrap:wrap;gap:4px 14px; }.fixture-overlay-controls label { display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer; }.fixture-overlay-controls input { width:18px;height:18px; }
#heatmapDialog .heatmap-dialog-inner { display:block;max-height:none; }
#heatmapDialog .heatmap-dialog-head { margin-bottom:12px; }
