.analytic-report-page{display:grid;gap:24px}.analytic-report-header h1{margin:0;font-size:clamp(1.7rem,3vw,2.4rem);font-weight:800}.analytic-report-header p{margin:5px 0 0;color:color-mix(in srgb,var(--color-text),transparent 28%)}.analytic-filters{display:grid;grid-template-columns:repeat(4,minmax(160px,1fr));align-items:end;gap:16px;padding:16px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-card)}.analytic-filters label{display:grid;gap:7px;font-size:.82rem;font-weight:700}.analytic-filters input,.analytic-filters select{width:100%;min-height:46px;padding:10px 13px;border:1px solid var(--color-border);border-radius:8px;background:var(--theme-surface);color:var(--color-text)}.analytic-actions{display:grid;grid-template-columns:1fr 46px;gap:8px}.analytic-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 16px;border:1px solid var(--color-border);border-radius:9px;background:transparent;color:var(--color-text);font-weight:800;cursor:pointer}.analytic-button.excel{padding:10px;color:#22c55e;font-size:1.15rem}.analytic-button:disabled{cursor:wait;opacity:.55}.analytic-cards{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px}.analytic-cards article{display:grid;align-content:space-between;gap:10px;min-height:116px;padding:18px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-card)}.analytic-cards span{color:color-mix(in srgb,var(--color-text),transparent 34%);font-size:.82rem;font-weight:700}.analytic-cards strong{font-size:1.45rem}.analytic-panel{overflow:hidden;border:1px solid var(--color-border);border-radius:12px;background:var(--color-card)}.analytic-table-wrap{overflow-x:auto}.analytic-table{width:100%;border-collapse:collapse}.analytic-table th,.analytic-table td{padding:17px 18px;border-bottom:1px solid var(--color-border);text-align:left;white-space:nowrap}.analytic-table th{font-size:.84rem;font-weight:800}.analytic-table tbody tr:last-child td{border-bottom:0}.analytic-empty{display:grid;gap:5px;padding:36px;text-align:center;color:color-mix(in srgb,var(--color-text),transparent 35%)}.analytic-empty strong{color:var(--color-text)}.ranking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.ranking-card,.trend-panel{padding:18px;border:1px solid var(--color-border);border-radius:12px;background:var(--color-card)}.ranking-card h2,.trend-panel h2{margin:0 0 16px;font-size:1rem}.ranking-row{display:grid;grid-template-columns:minmax(90px,1fr) 2fr auto;align-items:center;gap:10px;margin-top:11px;font-size:.8rem}.ranking-track{height:8px;border-radius:999px;background:color-mix(in srgb,var(--color-primary),transparent 88%);overflow:hidden}.ranking-track i{display:block;height:100%;border-radius:inherit;background:var(--color-primary)}.situation-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:color-mix(in srgb,var(--color-primary),transparent 86%);color:var(--color-primary);font-size:.76rem;font-weight:800}.trend-tabs{display:flex;gap:8px;margin-bottom:16px}.trend-tabs button{padding:7px 11px;border:1px solid var(--color-border);border-radius:8px;background:transparent;color:var(--color-text);cursor:pointer}.trend-tabs button.active{background:color-mix(in srgb,var(--color-primary),transparent 86%);color:var(--color-primary)}.trend-bars{display:flex;align-items:end;gap:9px;min-height:190px;overflow-x:auto}.trend-bar{display:grid;grid-template-rows:1fr auto auto;align-items:end;justify-items:center;gap:7px;min-width:54px;height:180px;font-size:.7rem}.trend-bar i{display:block;width:28px;min-height:2px;border-radius:6px 6px 0 0;background:var(--color-primary)}.comparison{padding:16px 18px;border-left:4px solid var(--color-primary);border-radius:8px;background:color-mix(in srgb,var(--color-primary),transparent 92%)}
@media(max-width:1100px){.analytic-filters{grid-template-columns:repeat(3,1fr)}.analytic-cards{grid-template-columns:repeat(3,1fr)}.ranking-grid{grid-template-columns:1fr}}
@media(max-width:760px){.analytic-filters,.analytic-cards{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.analytic-report-page{gap:18px}.analytic-filters,.analytic-cards{grid-template-columns:1fr}}
