.root { container-type: size; display: flex; flex-direction: column; height: 100%; min-height: 0; padding: clamp(6px, 3cqi, 12px); gap: clamp(4px, 2cqi, 8px); overflow: hidden; } .rootCompact { padding: clamp(4px, 2cqi, 8px); gap: clamp(2px, 1cqi, 4px); } .rootShort { padding: 4px; gap: 2px; } .grid { display: grid; flex: 1; width: 100%; min-height: 0; gap: clamp(4px, 2cqi, 8px); grid-template-columns: repeat(var(--stat-cols, 2), minmax(0, 1fr)); grid-auto-rows: 1fr; align-content: stretch; } .gridCompact { gap: clamp(2px, 1cqi, 4px); } .gridShort { gap: 2px; } .statTile { display: flex; flex-direction: column; align-items: center; justify-content: center; min-height: 0; min-width: 0; height: 100%; gap: clamp(2px, 1.5cqi, 4px); padding: clamp(4px, 2cqi, 8px); border-radius: var(--mantine-radius-md); background-color: rgb( from light-dark(var(--mantine-color-gray-0), var(--mantine-color-dark-6)) r g b / var(--opacity, 1) ); overflow: hidden; } .statTileAdvanced { background-color: transparent; } .statTileCompact { gap: clamp(1px, 0.8cqi, 2px); padding: clamp(2px, 1.2cqi, 5px); border-radius: var(--mantine-radius-sm); } .statTileShort { gap: 2px; padding: 3px; } .statTileNarrowShort { flex-direction: row; gap: 2px; padding: 1px 3px; } .statIcon { color: var(--mantine-color-dimmed); flex-shrink: 0; line-height: 0; } .statLabel { flex-shrink: 0; font-size: clamp( calc(8px * var(--board-canvas-ui-scale, 1)), calc(2.5cqi * var(--board-canvas-ui-scale, 1)), calc(11px * var(--board-canvas-ui-scale, 1)) ); color: var(--mantine-color-dimmed); line-height: 1.2; text-align: center; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .statTileCompact .statLabel { font-size: clamp( calc(7px * var(--board-canvas-ui-scale, 1)), calc(2cqi * var(--board-canvas-ui-scale, 1)), calc(9px * var(--board-canvas-ui-scale, 1)) ); } .statLabelShort { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; } .statValue { flex-shrink: 0; font-size: clamp( calc(13px * var(--board-canvas-ui-scale, 1)), calc(5cqi * var(--board-canvas-ui-scale, 1)), calc(20px * var(--board-canvas-ui-scale, 1)) ); font-weight: 700; color: var(--mantine-primary-color-filled); line-height: 1.1; text-align: center; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .statTileCompact .statValue { font-size: clamp( calc(11px * var(--board-canvas-ui-scale, 1)), calc(4cqi * var(--board-canvas-ui-scale, 1)), calc(16px * var(--board-canvas-ui-scale, 1)) ); } .statValueNarrowShort { font-size: calc(11px * var(--board-canvas-ui-scale, 1)); line-height: 1; } .emptyState { display: flex; flex: 1; align-items: center; justify-content: center; min-height: 0; color: var(--mantine-color-dimmed); font-size: clamp(11px, 3cqi, 13px); text-align: center; }