.an-wrap{max-width:960px;padding:1.5rem 1rem 5rem}
.an-head{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;justify-content:space-between;margin-bottom:1rem}
.an-range{display:flex;gap:.35rem;flex-wrap:wrap}
.an-custom{display:flex;gap:.35rem;align-items:center;margin-bottom:1rem}
.an-custom input{width:auto}
.an-insights{display:flex;gap:.6rem;overflow-x:auto;padding-bottom:.35rem;margin-bottom:1rem;-webkit-overflow-scrolling:touch}
.an-insight{flex:0 0 min(260px,80%);background:var(--ok-bg);color:var(--ok-text);border:1px solid var(--ok-border);border-radius:var(--radius);padding:.7rem .85rem;font-size:.92rem;font-weight:600}
.an-insight.warn{background:var(--warn-bg);color:var(--warn-text);border-color:var(--warn-border)}
.an-kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:.6rem;margin-bottom:1rem}
.an-kpi{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:.75rem .85rem}
.an-kpi small{display:block;color:var(--muted);font-size:.78rem}
.an-kpi strong{display:block;font-size:1.2rem;margin-top:.15rem;word-break:break-word}
.an-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:.8rem}
.an-card h3{margin:0 0 .6rem;font-size:1rem}
.an-bars{display:flex;align-items:flex-end;gap:2px;height:130px}
.an-bars i{flex:1;background:var(--primary);border-radius:2px 2px 0 0;min-height:1px;opacity:.85}
.an-axis{display:flex;justify-content:space-between;color:var(--muted);font-size:.72rem;margin-top:.25rem}
.an-row{display:grid;grid-template-columns:minmax(70px,32%) 1fr auto;gap:.5rem;align-items:center;font-size:.86rem;margin:.35rem 0}
.an-row span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.an-track{background:var(--soft-bg);border-radius:99px;height:9px;overflow:hidden}
.an-track b{display:block;height:100%;background:var(--primary);border-radius:99px}
.an-track b.neg{background:var(--danger)}
.an-heat{display:grid;grid-template-columns:2rem repeat(24,1fr);gap:2px;font-size:.62rem;color:var(--muted)}
.an-heat div{aspect-ratio:1;border-radius:2px;background:var(--primary)}
.an-heat span{display:flex;align-items:center}
.an-na{color:var(--muted);font-size:.88rem;margin:0}
.an-note{color:var(--muted);font-size:.8rem;margin:.5rem 0 0}
