:root{--brand: #0057ff;--loss: #c62828;--text: #111827;--text-muted: #5b6470;--border: #d9dde3;--bg: #ffffff;--font: Inter, "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.45}h1,h2,h3,p{margin:0}.page{min-height:100vh;max-width:1280px;margin:0 auto;padding:0 16px 48px}.header{display:flex;align-items:center;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;padding:20px 0 16px}.header__brand{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.header__logo{display:block;height:40px;width:auto}.header__title{font-size:18px;font-weight:700}.filters{display:flex;gap:16px;flex-wrap:wrap}.filter{display:flex;flex-direction:column;gap:2px;font-size:12px;color:var(--text-muted)}.filter--off{opacity:.4}.filter__select{font:inherit;font-size:14px;color:var(--text);background:transparent;border:0;border-bottom:1px solid var(--border);border-radius:0;padding:4px 0;min-width:150px}.tabs{display:flex;gap:24px;flex-wrap:wrap;border-bottom:1px solid var(--border);background:var(--bg);position:sticky;top:0;z-index:5}.tab{font:inherit;color:var(--text-muted);background:none;border:0;border-bottom:2px solid transparent;padding:10px 0 8px;cursor:pointer}.tab:hover{color:var(--text)}.tab--active{color:var(--text);font-weight:700;border-bottom-color:var(--text)}.main{padding-top:24px;display:flex;flex-direction:column;gap:40px}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px 16px;position:sticky;top:0;z-index:10;padding:10px 0;background:var(--bg);border-bottom:1px solid var(--border)}.kpi{display:flex;flex-direction:column;gap:2px;break-inside:avoid}.kpi__label{font-size:12px;font-weight:400;color:var(--text-muted)}.kpi__value{font-size:22px;font-weight:700;line-height:1.2;white-space:nowrap;font-variant-numeric:tabular-nums}.kpi__value--loss{color:var(--loss)}.kpi__sub{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums}.section{display:flex;flex-direction:column;gap:24px}.section__title{font-size:18px;font-weight:700;padding-bottom:6px;border-bottom:1px solid var(--border)}.grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:32px 24px}.span-4{grid-column:span 4}.span-5{grid-column:span 5}.span-6{grid-column:span 6}.span-7{grid-column:span 7}.span-8{grid-column:span 8}.span-12{grid-column:span 12}.block{min-width:0;break-inside:avoid;page-break-inside:avoid}.block__title{font-size:14px;font-weight:700;margin-bottom:8px}.chart__canvas{width:100%}.table__wrap{overflow-x:auto}.table__wrap--scroll{max-height:420px;overflow-y:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th,.table td{padding:6px 10px;border-top:1px solid var(--border);text-align:left;vertical-align:top}.table th{position:sticky;top:0;background:var(--bg);font-size:12px;font-weight:600;color:var(--text-muted);border-top:0;border-bottom:1px solid var(--text);white-space:nowrap}.table .num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.table th:first-child,.table td:first-child{padding-left:0}.table th:last-child,.table td:last-child{padding-right:0}.table tfoot td{font-weight:700;border-top:1px solid var(--text)}.row--alert td{color:var(--loss);font-weight:600}.row--muted td{color:var(--text-muted)}.row--group td,.row--total td{font-weight:700}.row--total td{border-top:1px solid var(--text)}.indent{display:inline-block;padding-left:18px}.callout{border:1px solid var(--border);border-left:4px solid var(--brand);border-radius:6px;padding:12px 16px;background:#f7f9fc}.callout__title{font-size:14px;font-weight:600;margin-bottom:6px}.callout__list{margin:0;padding-left:18px;color:var(--text-muted)}.callout__list li+li{margin-top:3px}.empty{padding:8px 0;color:var(--text-muted)}@media (max-width: 900px){.span-4,.span-5,.span-6,.span-7,.span-8{grid-column:span 12}}@media (max-width: 640px){.filter__select{min-width:120px}}@page{size:A4 landscape;margin:10mm}@media (max-width: 900px){.kpis{position:static}}@media print{.kpis{position:static}*{-webkit-print-color-adjust:exact;print-color-adjust:exact}body{font-size:11px}.page{max-width:none;padding:0}.tabs,.filters{display:none}.main{gap:20px}.kpi__value{font-size:16px}.grid{gap:12px}}
