/* Extend the existing Carbon tokens without changing other website sections. */
[hidden] { display: none !important; }
.gallery-grid { grid-template-columns: repeat(auto-fill, minmax(min(100%, 280px), 1fr)); }
.gallery-item figcaption { padding: .75rem 0; overflow-wrap: anywhere; font-size: 1rem; }
.gallery-dialog { margin: auto; max-width: 96vw; max-height: 96vh; padding: 1rem; background: #161616; color: #f4f4f4; border: 1px solid #525252; }
.gallery-dialog::backdrop { background: rgb(0 0 0 / 85%); }
.gallery-dialog img { display: block; max-width: 90vw; max-height: 75vh; object-fit: contain; margin: auto; }
.gallery-dialog p { max-width: 75ch; white-space: pre-wrap; overflow-wrap: anywhere; color: #f4f4f4; }
.gallery-manager { padding-top: 7rem; padding-bottom: 3rem; }
.gallery-manager p { max-width: 80ch; }
.gallery-upload { padding: 1.5rem 0; }
.gallery-manager input, .gallery-manager textarea { display: block; width: 100%; padding: .75rem; margin: .5rem 0 1rem; font: inherit; color: var(--cds-text-primary); background: var(--cds-layer-01, #262626); border: 1px solid var(--cds-border-subtle, #525252); }
.gallery-manager textarea { min-height: 7rem; resize: vertical; }
.gallery-admin-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 320px), 1fr)); gap: 1.5rem; margin: 1.5rem 0; }
.gallery-editor { padding: 1rem; border: 1px solid var(--cds-border-subtle, #525252); }
.gallery-editor img { display: block; max-width: 100%; height: 180px; object-fit: contain; margin: 0 auto 1rem; }
.gallery-editor .gallery-actions { display: flex; flex-wrap: wrap; gap: .5rem; }
.gallery-editor label { display: block; margin-top: 1rem; }
.gallery-editor p { overflow-wrap: anywhere; }
.gallery-manager button:disabled { opacity: .55; cursor: wait; }
.gallery-editor:focus-within { border-color: var(--cds-link-primary, #78a9ff); }
