.ps-stack { display: flex; flex-direction: column; gap: 1.5rem; }
.ps-grid { display: grid; gap: 1rem; grid-template-columns: repeat(auto-fill, minmax(18rem, 1fr)); }
.ps-tiles { display: grid; gap: .75rem; grid-template-columns: repeat(auto-fill, minmax(9rem, 1fr)); }
.ps-tile-value { font-size: 1.5rem; font-weight: 600; }
.ps-row { display: flex; flex-wrap: wrap; gap: .5rem; align-items: center; }
.ps-facts { display: grid; grid-template-columns: max-content 1fr; gap: .25rem 1rem; margin-top: 1rem; }
.ps-facts dt { font-weight: 600; }
.ps-env-badge { display: inline-block; border-radius: .375rem; color: #fff; font-size: 11px; font-weight: 600;
                line-height: 1.5rem; padding: 0 .5rem; text-transform: uppercase; }
.ps-table { width: 100%; border-collapse: collapse; }
.ps-table th, .ps-table td { border-bottom: 1px solid rgba(127, 127, 127, .2); padding: .375rem .75rem; text-align: left; }
.ps-pre { font-family: ui-monospace, monospace; font-size: 12px; overflow-x: auto; white-space: pre; }
.ps-diff-add { color: #059669; }
.ps-diff-del { color: #dc2626; }
.ps-diff-meta { color: #6b7280; }
.ps-warning { border-left: 4px solid #f59e0b; margin: .75rem 0; padding: .5rem 1rem; }
.ps-grafana { border: 0; border-radius: .5rem; height: 900px; width: 100%; }
.ps-confirm > summary { list-style: none; cursor: pointer; display: inline-block; border-radius: .375rem;
                        background: #dc2626; color: #fff; font-weight: 500; padding: .5rem .75rem; }
.ps-confirm[open] > summary { display: none; }
