.osh{display:grid;gap:16px;min-width:0;color:var(--text)}
.osh-header,.osh-card,.osh-metrics>div{background:var(--surface);border:1px solid var(--line);border-radius:14px}
.osh-header{padding:21px 23px;display:flex;justify-content:space-between;gap:20px;align-items:flex-start}
.osh-header h2{font-size:23px;line-height:1.2;margin:4px 0 8px}
.osh-header p{margin:0;color:var(--muted);line-height:1.5;max-width:740px}
.osh-kicker{text-transform:uppercase;font-weight:700;letter-spacing:.09em;font-size:11px;color:var(--accent)}
.osh-year{display:flex;gap:6px;white-space:nowrap;align-items:center}
.osh-year select{font:inherit;font-weight:700;color:var(--text);background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:9px 10px;cursor:pointer}
.osh-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}
.osh-metrics>div{padding:16px;display:flex;flex-direction:column;gap:6px;min-width:0}
.osh-metrics span,.osh-metrics small{color:var(--muted);font-size:12px}
.osh-metrics strong{font-size:21px;line-height:1.2;overflow-wrap:anywhere}
.osh-card{padding:20px 22px;min-width:0}
.osh-card h3{font-size:17px;margin:0 0 12px}
.osh-section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}
.osh-section-head>span{color:var(--muted);font-size:12px;text-align:right}
.osh-chart-scroll,.osh-table-scroll{overflow-x:auto}
.osh-chart{height:284px;min-width:760px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:8px;padding:12px 6px 0;border-bottom:1px solid var(--line)}
.osh-month{min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;gap:6px}
.osh-bar-value{font-size:11px;font-weight:700;white-space:nowrap}
.osh-bar-track{height:214px;width:100%;display:flex;align-items:flex-end;justify-content:center;background:linear-gradient(to top,transparent calc(25% - 1px),var(--line) 25%,transparent calc(25% + 1px),transparent calc(50% - 1px),var(--line) 50%,transparent calc(50% + 1px),transparent calc(75% - 1px),var(--line) 75%,transparent calc(75% + 1px));border-radius:7px;position:relative}
.osh-bar{width:min(75%,39px);background:linear-gradient(180deg,#6797fa,#3666d8);border-radius:6px 6px 0 0;min-height:3px;transition:height .2s ease}
.osh-bar-peak{background:linear-gradient(180deg,#ffad6c,var(--accent))}
.osh-no-data{height:3px;width:34px;border-top:2px dashed var(--line);position:absolute;bottom:0}
.osh-month-name{font-size:11px;color:var(--muted)}
.osh-note,.osh-source{font-size:12px;color:var(--muted);line-height:1.45;margin:11px 0 0}
.osh-source{margin:0 4px}
.osh-table-scroll table{width:100%;border-collapse:collapse;min-width:560px}
.osh-table-scroll th,.osh-table-scroll td{padding:10px 11px;border-bottom:1px solid var(--line);text-align:left}
.osh-table-scroll thead th{font-size:12px;color:var(--muted);font-weight:600}
.osh-table-scroll tbody th{font-weight:600}
.osh-table-scroll tbody td:nth-child(2){font-weight:700}
.osh-muted{color:var(--muted);font-weight:400!important}
.osh-change{color:#285ac4}
.osh-pair-track{gap:3px;align-items:flex-end}
.osh-pair-track .osh-bar{width:min(42%,23px)}
.osh-bar-fact{background:linear-gradient(180deg,#76a7ff,#3c6bdc)}
.osh-bar-schedule{background:linear-gradient(180deg,#43c79c,#159a72)}
.osh-variance{color:#c92d32!important;font-weight:700}
.osh-balanced{color:#159a72!important;font-weight:700}
.osh-legend-dot{display:inline-block;width:9px;height:9px;border-radius:50%;vertical-align:middle}
.osh-legend-fact{background:#3c6bdc}.osh-legend-schedule{background:#159a72}
.osh-error{color:var(--red,#c62828)}
@media(max-width:1000px){.osh-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.osh-header{flex-direction:column;padding:16px}.osh-metrics{gap:7px}.osh-metrics>div{padding:12px}.osh-metrics strong{font-size:17px}.osh-card{padding:15px}.osh-section-head{display:block}.osh-section-head>span{display:block;text-align:left;margin-bottom:8px}}
