/* GateSection.css */ .gate-section { container-type: size; position: absolute; left: 0; right: 0; bottom: 0; height: 40%; display: flex; align-items: flex-end; justify-content: center; box-sizing: border-box; background: var(--bg-panel); z-index: 20; border-top: var(--border-width) solid var(--border-hairline); } .gate-panels { display: grid; grid-auto-flow: column; height: 100%; gap: var(--space-2); overflow-x: auto; justify-content: center; } .gate-panel { position: relative; height: 100%; aspect-ratio: 1 / 2; flex: 0 0 auto; display: flex; flex-direction: column; align-items: stretch; justify-content: flex-start; border: var(--border-width) solid var(--border-hairline); border-radius: var(--radius-md); box-sizing: border-box; background: var(--bg-void); } .gate-panel__title { flex: 0 0 auto; width: 100%; text-align: center; font-family: var(--font-ui); font-size: 4cqh; font-weight: var(--font-weight-semibold); padding-top: 2cqh; padding-bottom: 2cqh; border-bottom: var(--border-width) solid var(--border-hairline); min-width: 0; overflow: hidden; text-overflow: ellipsis; } .gate-panel__grid { flex: 1 1 auto; min-height: 0; display: grid; grid-template-columns: repeat(2, 1fr); grid-template-rows: repeat(2, 1fr); gap: 2cqh; padding: 2cqh; box-sizing: border-box; } .gate-panel__cell { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; min-height: 0; min-width: 0; gap: 1cqh; } .gate-panel__cell-label { flex: 0 0 auto; font-family: var(--font-ui); font-size: 2.5cqh; color: var(--text-muted); white-space: nowrap; } .gate-linear-graph-section { flex: 0 0 calc(100% - var(--dsp-control-heigth)); min-height: 0; display: flex; flex-direction: row; gap: 1cqh; padding: 0.5cqh; box-sizing: border-box; background: var(--bg-panel); } .gate-graph-panel { flex: 1 1 auto; /* take remaining space */ min-width: 0; min-height: 0; display: flex; flex-direction: column; border: var(--border-width) solid var(--border-hairline); border-radius: var(--radius-md); } .gate-meter-panel { flex: 0 0 auto; /* only required width */ min-width: max-content; display: flex; flex-direction: column; border: var(--border-width) solid var(--border-hairline); border-radius: var(--radius-md); } .gate-graph-title { flex: 0 0 auto; text-align: center; padding: 1cqh; font-family: var(--font-ui); font-size: 2.5cqh; font-weight: var(--font-weight-semibold); } .gate-graph-panel > .container { flex: 1; min-height: 0; } .gate-graph__meters { flex: 1; min-height: 0; display: flex; flex-direction: row; align-items: stretch; justify-content: center; gap: 1cqh; padding: 1cqh; }