.rep-page{display:flex;flex-direction:column;gap:var(--space-4)}.rep-head h2{margin:0}.rep-sub{color:var(--text-muted);font-size:.85rem;margin:.25rem 0 0;max-width:90ch}.rep-panel{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);padding:var(--space-4);box-shadow:var(--shadow-xs);min-width:0}.rep-panel>h3{margin:0 0 var(--space-3);font-size:.92rem;font-weight:700;color:var(--text);display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}.rep-panel-head{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:var(--space-3)}.rep-panel-head h3{margin:0;font-size:.92rem;font-weight:700}.rep-filters{display:flex;flex-wrap:wrap;gap:var(--space-3) var(--space-4);align-items:flex-end}.rep-field{display:flex;flex-direction:column;gap:.35rem;min-width:0}.rep-field-grow{flex:1 1 200px}.rep-field-label{font-size:.74rem;font-weight:600;color:var(--text-muted)}.rep-field select,.rep-field input[type=date]{min-width:150px}.rep-check{display:inline-flex;align-items:center;gap:.45rem;font-size:.85rem;color:var(--text);padding-bottom:.55rem}.rep-check input{width:auto;margin:0}.rep-check-group{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem 1rem;padding-bottom:.1rem}.rep-check-group .rep-check{padding-bottom:0}.rep-filters .date-range-filter label{display:flex;flex-direction:column;gap:.35rem}.rep-filters .date-range-filter label>span{font-size:.74rem;font-weight:600;color:var(--text-muted)}.rep-presets{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}.rep-presets-label{font-size:.74rem;font-weight:600;color:var(--text-muted);margin-right:.2rem}.rep-chip{border:1px solid var(--border-strong);background:var(--surface);color:var(--text);border-radius:var(--radius-pill);padding:.25rem .75rem;font-size:.78rem;font-weight:600;cursor:pointer;box-shadow:none}.rep-chip:hover{background:var(--brand-blue-light);color:var(--brand-blue)}.rep-seg{display:inline-flex;border:1px solid var(--border-strong);border-radius:var(--radius-md);overflow:hidden;background:var(--surface)}.rep-seg-btn{border:0;border-right:1px solid var(--border-strong);background:transparent;color:var(--text);box-shadow:none;padding:.5rem .9rem;font-size:.82rem;font-weight:600;cursor:pointer;border-radius:0}.rep-seg-btn:last-child{border-right:0}.rep-seg-btn:hover:not(:disabled):not(.rep-seg-active){background:var(--brand-blue-light)}.rep-seg-btn:disabled{opacity:.4;cursor:not-allowed}.rep-seg-active,.rep-seg-active:hover{background:var(--brand-blue);color:#fff}:root[data-theme=dark] .rep-seg-active,:root[data-theme=dark] .rep-seg-active:hover{color:#0b1730}.rep-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:var(--space-3)}.rep-tile{background:var(--surface);border:1px solid var(--border-strong);border-radius:var(--radius-md);box-shadow:var(--shadow-xs);padding:var(--space-3) var(--space-4);display:flex;flex-direction:column;gap:.2rem;min-width:0}.rep-tile-wide{grid-column:span 2}.rep-tile-label{font-size:.72rem;font-weight:700;color:var(--text-muted);text-transform:uppercase;letter-spacing:.03em}.rep-tile-value{font-size:1.25rem;font-weight:700;color:var(--text);font-variant-numeric:tabular-nums;white-space:nowrap}.rep-tile-hint{font-size:.74rem;color:var(--text-muted);line-height:1.35}.rep-pos{color:var(--color-success)}.rep-neg{color:var(--color-danger)}.rep-chart{width:100%;height:300px;min-width:0}.rep-chart .recharts-wrapper{max-width:100%}.rep-legend{display:flex;flex-wrap:wrap;gap:.4rem 1.1rem;font-size:.78rem;color:var(--text-muted);margin-top:.5rem}.rep-legend i{display:inline-block;width:10px;height:10px;border-radius:2px;margin-right:.35rem;vertical-align:-1px}.rep-table-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius-md)}.rep-table{margin:0;border:0;border-radius:0;box-shadow:none;min-width:760px;width:100%}.rep-table th{font-size:.7rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);white-space:nowrap;background:var(--surface);position:sticky;top:0}.rep-table td{font-size:.84rem;font-variant-numeric:tabular-nums}.rep-table th,.rep-table td{padding:.6rem .7rem}.rep-table .num,.rep-table th.num{text-align:right}.rep-table tfoot td{font-weight:700;background:var(--gray-100);border-top:2px solid var(--border-strong)}.rep-table tbody tr:hover td{background:var(--brand-blue-light)}.rep-partial{font-size:.68rem;color:var(--text-muted);margin-left:.35rem;font-weight:500}.rep-nowrap{white-space:nowrap}.rep-state{display:flex;align-items:center;justify-content:center;gap:.75rem;flex-wrap:wrap;padding:var(--space-8) var(--space-4);color:var(--text-muted);font-size:.9rem;text-align:center}.rep-state-error{color:var(--color-danger);background:var(--color-danger-bg);border-radius:var(--radius-md)}.rep-retry{padding:.35rem .9rem;font-size:.82rem}.rep-spinner{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-strong);border-top-color:var(--brand-blue);animation:rep-spin .8s linear infinite}@keyframes rep-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.rep-spinner{animation-duration:2s}}.rep-busy{opacity:.55;pointer-events:none;transition:opacity .15s}.rep-notes{font-size:.8rem;color:var(--text-muted);line-height:1.55}.rep-notes h3{color:var(--text)}.rep-notes dl{display:grid;grid-template-columns:max-content 1fr;gap:.35rem 1rem;margin:0}.rep-notes dt{font-weight:700;color:var(--text)}.rep-notes dd{margin:0}.rep-notes code{background:var(--gray-100);padding:.05rem .35rem;border-radius:4px;font-size:.78rem;color:var(--text)}.rep-breakdown{display:flex;flex-wrap:wrap;gap:.4rem .6rem}.rep-breakdown span{background:var(--gray-100);border-radius:var(--radius-pill);padding:.2rem .7rem;font-size:.78rem;color:var(--text)}.rep-breakdown b{font-variant-numeric:tabular-nums}@media (max-width: 640px){.rep-tile-wide{grid-column:auto}.rep-notes dl{grid-template-columns:1fr}.rep-notes dt{margin-top:.4rem}.rep-chart{height:240px}.rep-field select,.rep-field input[type=date]{min-width:0;width:100%}.rep-field{flex:1 1 140px}}.rep-table a{color:var(--brand-blue);font-weight:600}.rep-seg-active,.rep-seg-active:hover{background:var(--brand-blue)!important;opacity:1}
