/* ---------- R2: Mekko, Gantt, combination chart, Same scale (340 px pane) ---------- */
#charts .types{grid-template-columns:repeat(4,1fr)}
.r2-panel{border-top:1px solid var(--line);margin-top:4px}
.r2-panel h3:first-child{margin-top:12px}
.r2-seg{margin:6px 0 4px}
.r2-widths{display:grid;grid-template-columns:repeat(2,1fr);gap:0 10px}
.r2-widths label{margin:6px 0}
table.r2-series{width:100%;border-collapse:collapse;font-size:12px}
table.r2-series th{text-align:left;font-weight:normal;color:var(--muted);padding:3px}
table.r2-series td{border-top:1px solid var(--line);padding:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:120px}
table.r2-series select{margin:0;padding:4px}
.data-grid.r2-gantt{max-height:320px}
.data-grid.r2-gantt table.tt-sheet{border-collapse:separate;border-spacing:0;table-layout:fixed;width:max-content}
.data-grid.r2-gantt th,.data-grid.r2-gantt td{padding:0;border-right:1px solid var(--line);border-top:1px solid var(--line);width:78px;min-width:78px}
.data-grid.r2-gantt th{position:sticky;top:0;z-index:2;background:var(--paper);padding:4px;font-size:11px}
.data-grid.r2-gantt .n{width:24px;min-width:24px;text-align:center;color:var(--muted);font-size:10px;background:var(--paper)}
.data-grid.r2-gantt td.c1,.data-grid.r2-gantt th:nth-child(3){width:130px;min-width:130px}
.data-grid.r2-gantt td.c1{position:sticky;left:0;z-index:1;background:#fff}
.data-grid.r2-gantt td.c5,.data-grid.r2-gantt th:nth-child(7){width:52px;min-width:52px}
.data-grid.r2-gantt input{width:100%;min-width:0;border:0;margin:0;padding:5px 4px;font:12px Arial,sans-serif;background:transparent;border-radius:0}
.data-grid.r2-gantt input:focus{outline:2px solid var(--red);outline-offset:-2px;background:#fff}
.data-grid.r2-gantt td.bad input{background:var(--pink);color:#a81920}
.r2-scale{border-top:1px solid var(--line);margin-top:14px}
.hint.conflict{color:#a81920}
@media(min-width:850px){#charts .types{grid-template-columns:repeat(6,1fr)}}
