@layer components {
  .admin-page {
    margin-inline: auto;
    max-inline-size: min(112ch, 100%);
    padding-block: calc(var(--block-space) * 0.5);
  }

  .admin-page .btn,
  .admin-header__action {
    font-family: inherit;
  }

  #header:has(.admin-header__title) {
    grid-template-columns: minmax(0, 1fr) minmax(0, auto) minmax(0, 1fr);
  }

  #header:has(.admin-header__title) .header__actions {
    inline-size: auto;
    min-inline-size: 0;
  }

  .admin-header__title {
    font-family: inherit;
    letter-spacing: normal;
    line-height: inherit;
  }

  .admin-header__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--inline-space-half);
    justify-content: flex-end;
  }

  .admin-header__actions .button_to {
    margin: 0;
  }

  .admin-header__actions :is(.btn, .admin-header__action) {
    white-space: nowrap;
  }

  .admin-header__panel,
  .admin-workspace__section {
    --panel-size: 100%;
  }

  .admin-header__brand {
    align-items: center;
    display: flex;
    gap: 0.75rem;
  }

  .admin-header__brand-icon {
    block-size: 1.6rem;
    inline-size: 1.6rem;
  }

  .admin-header__brand-text {
    color: var(--color-ink-dark);
    font-family: var(--font-accent);
    font-size: var(--text-x-small);
    letter-spacing: 0.18em;
    text-transform: uppercase;
  }

  .admin-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: var(--inline-space-half);
    justify-content: center;
  }

  .admin-tabs .btn {
    font-size: var(--text-x-small);
  }

  .admin-page.settings {
    align-items: stretch;
    gap: calc(var(--block-space) * 0.75);
  }

  @media (min-width: 960px) {
    .admin-page.settings {
      flex-direction: column;
    }
  }

  @media (max-width: 639px) {
    #header:has(.admin-header__title) .admin-header__actions {
      gap: 0.35rem;
    }
  }

  .admin-workspace__sections {
    display: flex;
    flex-direction: column;
    gap: var(--block-space);
  }

  .admin-workspace__section-grid {
    display: grid;
    gap: var(--block-space);
  }

  .admin-workspace__section-title {
    font-family: var(--font-display);
    font-size: var(--text-large);
    font-weight: 900;
    letter-spacing: -0.04em;
    line-height: 1.1;
  }

  .admin-header__panel h2 {
    font-family: var(--font-display);
    letter-spacing: -0.04em;
    line-height: 0.95;
  }

  .admin-editor-panel__eyebrow {
    font-family: var(--font-accent);
    letter-spacing: 0.08em;
  }

  .admin-workspace__section-desc,
  .admin-workspace__hint {
    max-inline-size: 44rem;
  }

  .admin-workspace__field-row {
    display: grid;
    gap: var(--block-space);
  }

  @media (min-width: 768px) {
    .admin-workspace__field-row {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  .admin-editor-readonly-list,
  .admin-photos-grid,
  .admin-model-reference-grid {
    display: grid;
    gap: var(--block-space-half);
    grid-template-columns: repeat(auto-fit, minmax(11rem, 1fr));
  }

  .admin-editor-readonly-list__item,
  .admin-model-reference-card {
    background-color: color-mix(in srgb, var(--color-canvas) 88%, var(--color-ink-lightest));
    max-inline-size: 10rem;
  }

  .admin-template-form__prompt-row {
    background-color: transparent;
    inline-size: 100%;
    max-inline-size: none;
  }

  .admin-template-card__preview,
  .admin-photo-table__preview,
  .admin-model-reference-card__preview,
  .admin-photo-thumb__image {
    background-color: var(--color-ink-lightest);
    border-radius: 0.75rem;
    overflow: hidden;
  }

  .admin-photo-table__preview {
    aspect-ratio: 4 / 5;
    inline-size: 2rem;
  }

  .admin-photo-table__preview--compact {
    inline-size: 1.75rem;
  }

  .admin-template-card__preview,
  .admin-workspace__preview {
    aspect-ratio: 4 / 5;
    max-inline-size: 20rem;
  }

  .admin-photo-table__image,
  .admin-template-card__image,
  .admin-photo-thumb__image {
    block-size: 100%;
    inline-size: 100%;
    object-fit: cover;
  }

  .admin-photo-thumb {
    color: inherit;
    text-decoration: none;
    max-inline-size: 12rem;
  }

  .admin-photo-thumb__image {
    aspect-ratio: 4 / 5;
  }

  .admin-photo-thumb__meta {
    gap: 0.15rem;
  }

  .admin-archive__action-group {
    flex-direction: row;
    align-items: center;
  }

  .admin-archive__import-form {
    align-items: center !important;
  }

  .admin-archive__import-field {
    flex-direction: row;
    align-items: center;
    gap: 0.5rem;
  }

  .admin-archive__import-field input[type="file"] {
    margin: 0;
    padding: 0.5em;
    line-height: 1;
  }

  .admin-photo-table-wrap {
    inline-size: 100%;
  }

  .admin-photo-table {
    inline-size: 100%;
    table-layout: fixed;
  }

  .admin-photo-table th,
  .admin-photo-table td {
    padding-block: 0.4rem;
    vertical-align: middle;
  }

  .admin-photo-table__row {
    cursor: pointer;
  }

  .admin-photo-table__row > td {
    transition: background-color 100ms ease-out;
  }

  @media (any-hover: hover) {
    .admin-photo-table__row:hover .admin-listing-primary {
      text-decoration: underline;
    }
  }

  .admin-photo-table__check-header,
  .admin-photo-table__check-cell {
    inline-size: 3.5rem;
  }

  .admin-photo-table__check {
    accent-color: var(--color-link);
    block-size: 1rem;
    inline-size: 1rem;
  }

  .admin-photo-table__actions {
    display: flex;
  }

  .admin-photo-table__actions--stacked {
    align-items: flex-start;
    flex-direction: column;
    gap: var(--block-space-half);
  }

  .admin-photo-table__inline-form {
    display: inline;
  }

  /* Model list (card-style like "People on this account")
  /* ------------------------------------------------------------------------ */

  .admin-model-list__item {
    cursor: pointer;
  }

  .admin-model-list__preview {
    flex: 0 0 auto;
    block-size: 2rem;
    inline-size: 2rem;
    overflow: hidden;
  }

  .admin-model-list__image {
    block-size: 100%;
    inline-size: 100%;
    object-fit: cover;
    display: block;
  }

  .admin-listing-panel {
    --panel-padding: calc(var(--block-space) * 0.85);

    min-inline-size: 0;
  }

  @media (min-width: 640px) {
    .admin-listing-panel {
      --panel-padding: calc(var(--block-space) * 1.35);
    }
  }

  .admin-listing-panel__section {
    min-inline-size: 0;
  }

  .admin-listing-panel__toolbar,
  .admin-listing-panel__actions,
  .admin-listing-panel__action-group,
  .admin-listing-panel__footer,
  .admin-listing-panel__footer-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--inline-space-half);
  }

  .admin-listing-panel__toolbar,
  .admin-listing-panel__actions,
  .admin-listing-panel__action-group {
    align-items: center;
  }

  .admin-listing-panel__toolbar {
    justify-content: flex-start;
  }

  .admin-listing-panel__actions,
  .admin-listing-panel__action-group {
    justify-content: space-between;
  }

  .admin-listing-panel__footer {
    padding-top: 0.125rem;
  }

  .admin-listing-panel__footer-actions {
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
  }

  .admin-listing-panel__footer-form {
    display: flex;
    gap: var(--inline-space-half);
  }

  .admin-listing-panel__footer-form--stacked {
    align-items: flex-start;
    flex-direction: column;
  }

  .admin-prompt-components__layout {
    display: grid;
    gap: calc(var(--block-space) * 0.75);
  }

  .admin-prompt-components__sidebar,
  .admin-prompt-components__detail {
    display: flex;
    flex-direction: column;
    gap: calc(var(--block-space) * 0.75);
    min-inline-size: 0;
  }

  .admin-prompt-components__detail .admin-settings__panel {
    inline-size: 100%;
  }

  @media (min-width: 960px) {
    .admin-prompt-components__layout {
      align-items: start;
      grid-template-columns: minmax(20rem, 24rem) minmax(0, 1fr);
    }
  }

  .admin-filters {
    display: block;
    inline-size: 100%;
  }

  .admin-page > .admin-filters {
    margin-inline: auto;
    max-inline-size: 100%;
  }

  .admin-filters__summary {
    align-items: center;
    display: inline-flex;
    gap: 0.5rem;
    justify-content: flex-start;
    list-style: none;
    white-space: nowrap;
  }

  .admin-filters__summary-meta {
    white-space: nowrap;
  }

  .admin-filters__controls.filters {
    justify-content: flex-start;
  }

  .admin-filters__search-form {
    display: contents;
  }

  .admin-quick-filter--active .input--select {
    --input-background: var(--color-selected);
  }

  .admin-listing-panel__records {
    min-height: 0;
  }

  .admin-listing-panel__list {
    display: flex;
    flex-direction: column;
    gap: 0;
  }

  .admin-listing-item {
    border-radius: 0.5rem;
    transition: background-color 120ms ease-out;
  }

  .admin-listing-item[aria-selected] {
    background: var(--color-selected);
  }

  .admin-listing-item__row {
    align-items: center;
    display: grid;
    gap: 0.5rem;
    grid-template-columns: minmax(0, 1fr) auto;
    min-inline-size: 0;
  }

  .admin-listing-item__link {
    align-items: center;
    color: inherit;
    display: flex;
    gap: 0.45rem;
    inline-size: 100%;
    min-inline-size: 0;
    padding: 0.3rem var(--settings-item-padding-inline);
    text-decoration: none;
  }

  @media (any-hover: hover) {
    .admin-listing-item__link:hover .admin-listing-primary {
      text-decoration: underline;
    }
  }

  .admin-listing-item__media {
    flex: 0 0 auto;
  }

  .admin-listing-item__media--compact {
    inline-size: 2rem;
  }

  .admin-listing-item__body {
    align-items: center;
    display: flex;
    flex: 1 1 auto;
    gap: 0.4rem;
    min-inline-size: 0;
    overflow: hidden;
  }

  .admin-listing-item__meta {
    align-items: center;
    color: var(--color-ink-dark);
    display: flex;
    flex: 0 1 auto;
    flex-wrap: nowrap;
    gap: 0.15rem 0.35rem;
    margin-inline-start: auto;
    min-inline-size: 0;
    overflow: hidden;
    white-space: nowrap;
  }

  .admin-listing-item__meta-text {
    font-size: var(--text-x-small);
    line-height: 1.2;
    min-inline-size: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .admin-listing-item__chip {
    border: 1px solid color-mix(in srgb, currentColor 18%, transparent);
    border-radius: 999px;
    display: inline-flex;
    font-size: var(--text-x-small);
    font-weight: 700;
    line-height: 1;
    padding: 0.15rem 0.45rem;
  }

  .admin-listing-item__controls {
    align-items: center;
    display: flex;
    gap: 0.35rem;
    padding-inline-end: 0.35rem;
  }

  .admin-listing-item__checkbox {
    accent-color: var(--color-link);
    block-size: 1rem;
    inline-size: 1rem;
  }

  .admin-listing-cell {
    display: block;
    line-height: 1.2;
    max-inline-size: 100%;
  }

  .admin-listing-primary {
    display: block;
    flex: 0 1 auto;
    font-weight: 400;
    line-height: 1.2;
    min-inline-size: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .admin-listing-secondary {
    color: var(--color-ink-dark);
    display: block;
    flex: 1 1 auto;
    font-size: var(--text-x-small);
    line-height: 1.2;
    margin-top: 0;
    min-inline-size: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .admin-listing-mono {
    font-family: var(--font-mono);
    font-size: 0.92em;
  }

  .admin-listing-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .admin-status--queued {
    color: var(--color-link);
  }

  .admin-status--processing {
    color: var(--color-marker);
  }

  .admin-status--completed {
    color: var(--color-positive);
  }

  .admin-status--failed {
    color: var(--color-negative);
  }

  .admin-code-block {
    background-color: var(--color-ink-lightest);
    border: 1px solid var(--color-ink-lighter);
    border-radius: 0.75rem;
    font-family: var(--font-mono);
    font-size: var(--text-x-small);
    line-height: 1.5;
    overflow: auto;
    padding: 0.85rem;
    white-space: pre-wrap;
    word-break: break-word;
  }

  .admin-code-block--json {
    white-space: pre;
  }

  .admin-request-card {
    display: grid;
    gap: var(--block-space-half);
  }

  .admin-request-card__header {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: var(--inline-space-half);
    justify-content: space-between;
  }

  .admin-request-card__details {
    inline-size: 100%;
  }

  .admin-request-card__summary {
    cursor: pointer;
    font-size: var(--text-x-small);
    margin-block-end: 0.5rem;
  }

  .admin-copy-button--success {
    color: var(--color-positive);
  }

  .admin-template-form__prompts {
    display: grid;
    gap: var(--block-space-half);
  }

  .admin-template-form__prompt-heading {
    display: grid;
    gap: var(--block-space-half);
  }

  .admin-template-form__prompt-row-header {
    align-items: center;
    display: flex;
    gap: var(--inline-space-half);
    justify-content: space-between;
  }

  .admin-rich-textarea {
    inline-size: 100%;
    max-inline-size: none;
  }

  .admin-rich-textarea--short {
    --lexxy-editor-rows: 5lh;
  }

  .admin-textarea {
    min-block-size: 9rem;
    resize: vertical;
  }

  .admin-textarea--short {
    min-block-size: 5.5rem;
  }

  .admin-photo-table__empty,
  .admin-photo-thumb__empty,
  .admin-photo-edit__empty {
    align-items: center;
    color: var(--color-ink-dark);
    display: flex;
    justify-content: center;
    min-block-size: 100%;
    padding: var(--block-space);
    text-align: center;
  }

  .admin-pagination {
    border-top: 1px solid var(--color-ink-lighter);
  }

  .admin-workspace__preview-link {
    display: block;
  }

  .admin-record {
    display: flex;
    flex-direction: column;
    gap: calc(var(--block-space) * 0.75);
  }

  .admin-settings {
    display: flex;
    flex-direction: column;
    gap: calc(var(--block-space) * 0.75);
  }

  .admin-settings__panel {
    --panel-padding: calc(var(--block-space) * 0.85);

    min-inline-size: 0;
  }

  @media (min-width: 640px) {
    .admin-settings__panel {
      --panel-padding: calc(var(--block-space) * 1.35);
    }
  }

  .admin-settings__section {
    min-inline-size: 0;
  }

  .admin-settings__section-header {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 0.3rem var(--inline-space-half);
    justify-content: space-between;
  }

  .admin-settings__section-copy-block {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    max-inline-size: 28rem;
  }

  .admin-settings__section-title {
    font-size: var(--text-large);
  }

  .admin-settings__section-copy {
    line-height: 1.35;
    max-inline-size: 30rem;
  }

  .admin-settings__section-actions,
  .admin-settings__key-actions,
  .admin-settings__meta {
    display: flex;
    flex-wrap: wrap;
    gap: var(--inline-space-half);
  }

  .admin-settings__rows {
    display: flex;
    flex-direction: column;
  }

  .admin-settings__row {
    align-items: start;
    display: grid;
    gap: 0.625rem;
    min-inline-size: 0;
    padding-block: 0.625rem;
  }

  .admin-settings__row + .admin-settings__row {
    border-top: 1px solid color-mix(in srgb, var(--color-ink-light) 70%, var(--color-canvas));
  }

  .admin-settings__row:first-child {
    padding-block-start: 0;
  }

  .admin-settings__row:last-child {
    padding-block-end: 0;
  }

  @media (min-width: 860px) {
    .admin-settings__row {
      gap: 1.1rem;
      grid-template-columns: minmax(13rem, 0.85fr) minmax(0, 1.15fr);
    }
  }

  .admin-settings__key {
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-inline-size: 0;
    padding-inline-end: var(--inline-space);
  }

  .admin-settings__label {
    color: var(--color-ink);
    font-family: var(--font-sans);
    font-size: var(--text-small);
    font-weight: 600;
    letter-spacing: -0.01em;
    line-height: 1.3;
    text-transform: none;
  }

  .admin-settings__hint {
    font-size: var(--text-x-small);
    line-height: 1.35;
    max-inline-size: 32ch;
  }

  .admin-settings__value,
  .admin-settings__stack {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    min-inline-size: 0;
  }

  .admin-settings__input,
  .admin-settings__field,
  .admin-settings__surface {
    min-inline-size: 0;
  }

  .admin-settings__textarea {
    min-block-size: 6rem;
  }

  .admin-settings__surface,
  .admin-settings__field {
    --input-background: transparent;
    --input-border-color: var(--color-ink-medium);
    --input-border-radius: 0.5em;
    --input-padding: 0.45em 0.75em;

    background: var(--input-background);
    border: var(--input-border-size, 1px) solid var(--input-border-color);
    border-radius: var(--input-border-radius);
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
    justify-content: center;
    line-height: 1.4;
    overflow-wrap: anywhere;
    padding: var(--input-padding);
  }

  .admin-settings__field--readonly,
  .admin-settings__row--readonly .admin-settings__surface {
    color: color-mix(in srgb, var(--color-ink) 64%, var(--color-canvas));
    cursor: not-allowed;
  }

  .admin-settings__field--readonly {
    --input-background: color-mix(in srgb, var(--color-canvas) 96%, var(--color-ink-lightest));
    --input-border-color: color-mix(in srgb, var(--color-ink-medium) 70%, var(--color-canvas));
  }

  .admin-settings__field--mono {
    font-family: var(--font-mono);
    font-size: 0.92em;
  }

  .admin-settings__field--media,
  .admin-settings__field--multiline,
  .admin-settings__surface--stacked,
  .admin-settings__surface:has(.admin-settings__stack) {
    justify-content: flex-start;
  }

  .admin-settings__field--multiline {
    min-block-size: 6rem;
    white-space: pre-wrap;
  }

  .admin-settings__field a {
    color: inherit;
  }

  .admin-settings__toggle {
    align-items: center;
    display: flex;
    gap: var(--inline-space-half);
  }

  .admin-settings__toggle-note,
  .admin-settings__caption,
  .admin-settings__media-note,
  .admin-settings__subfield-label {
    color: var(--color-ink-dark);
    font-size: var(--text-x-small);
  }

  .admin-settings__subfield {
    display: flex;
    flex-direction: column;
    gap: 0.3rem;
  }

  .admin-settings__subfield-label {
    font-family: var(--font-accent);
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
  }

  .admin-settings__gallery {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
  }

  .admin-settings__readonly-code {
    min-block-size: auto;
  }

  .admin-settings__readonly-code .admin-code-block {
    background: transparent;
    border: 0;
    padding: 0;
  }

  .admin-record__meta {
    color: var(--color-ink-dark);
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem 0.8rem;
  }

  .admin-record__meta-chip {
    background: var(--color-ink-lightest);
    border: 1px solid var(--color-ink-lighter);
    border-radius: 999px;
    color: var(--color-ink-dark);
    display: inline-flex;
    font-size: var(--text-x-small);
    gap: 0.35rem;
    padding: 0.22rem 0.55rem;
  }

  .admin-record__actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--inline-space-half);
  }

  .admin-prompt-components__delete {
    align-items: center;
    display: flex;
    flex-direction: column;
    gap: var(--block-space-half);
    margin-block-start: calc(var(--block-space) * 1.5);
    text-align: center;
    width: 100%;
  }

  .admin-prompt-components__delete .button_to {
    margin: 0;
  }

  .admin-record__grid {
    display: grid;
    gap: var(--block-space-half);
    grid-template-columns: repeat(auto-fit, minmax(10rem, 1fr));
  }

  .admin-record__item {
    background: color-mix(in srgb, var(--color-canvas) 88%, var(--color-ink-lightest));
    border: 1px solid var(--color-ink-lighter);
    border-radius: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.2rem;
    min-inline-size: 0;
    padding: 0.7rem 0.8rem;
  }

  .admin-record__label {
    color: var(--color-ink-dark);
    font-size: var(--text-x-small);
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .admin-record__value {
    line-height: 1.35;
    min-inline-size: 0;
    overflow-wrap: anywhere;
  }

  .admin-record__value--mono {
    font-family: var(--font-mono);
    font-size: 0.92em;
  }

  .admin-record__media-strip {
    display: flex;
    flex-wrap: wrap;
    gap: var(--block-space-half);
    padding: 0;
  }

  .admin-record__media-strip--gallery {
    gap: 0.75rem;
    padding: 0;
  }

  .admin-record__media-layout {
    align-items: start;
    display: grid;
    gap: 0.25rem;
  }

  @media (min-width: 768px) {
    .admin-record__media-layout {
      grid-template-columns: auto auto;
      justify-content: start;
    }

    .admin-record__media-layout--compact {
      grid-template-columns: repeat(2, minmax(0, 1fr));
    }
  }

  .admin-record__media-stack,
  .admin-record__media-aside {
    display: flex;
    flex-direction: column;
    gap: var(--block-space-half);
  }

  .admin-record__media-toolbar {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
  }

  .admin-image-collection {
    display: flex;
    flex-direction: column;
    gap: var(--block-space-half);
  }

  .admin-image-collection__grid {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
  }

  .admin-image-collection__item {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    inline-size: 7.5rem;
    position: relative;
  }

  .admin-image-collection__item.is-removed {
    opacity: 0.45;
  }

  .admin-image-collection__item.is-removed .admin-image-collection__surface {
    pointer-events: none;
  }

  .admin-image-collection__surface {
    color: inherit;
    display: block;
    text-decoration: none;
  }

  .admin-image-collection__frame,
  .admin-image-collection__add-frame {
    align-items: center;
    aspect-ratio: 4 / 5;
    background: color-mix(in srgb, var(--color-canvas) 88%, var(--color-ink-lightest));
    border: 1px solid var(--color-ink-lighter);
    border-radius: 1rem;
    display: flex;
    justify-content: center;
    overflow: hidden;
    position: relative;
  }

  .admin-image-collection__image {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    object-fit: cover;
  }

  .admin-image-collection__state {
    align-items: center;
    background: color-mix(in srgb, var(--color-negative) 82%, transparent);
    color: var(--color-ink-inverted);
    display: none;
    font-size: var(--text-x-small);
    font-weight: 700;
    inset: 0;
    justify-content: center;
    letter-spacing: 0.08em;
    position: absolute;
    text-transform: uppercase;
  }

  .admin-image-collection__item.is-removed .admin-image-collection__state {
    display: flex;
  }

  .admin-image-collection__delete {
    --btn-size: 2rem;
    inset-block-start: -0.45rem;
    inset-inline-end: -0.45rem;
    position: absolute;
    z-index: 1;
  }

  .admin-image-collection__meta {
    display: flex;
    flex-direction: column;
    gap: 0.1rem;
    min-inline-size: 0;
  }

  .admin-image-collection__title,
  .admin-image-collection__subtitle {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }

  .admin-image-collection__title {
    color: var(--color-ink-dark);
    font-size: var(--text-x-small);
    font-weight: 700;
  }

  .admin-image-collection__subtitle {
    color: var(--color-ink-medium);
    font-size: var(--text-x-small);
  }

  .admin-image-collection__add {
    --btn-background: transparent;
    --btn-border-color: transparent;
    --btn-padding: 0;
    inline-size: 7.5rem;
    padding: 0;
  }

  .admin-image-collection__add-frame {
    border-style: dashed;
    color: var(--color-ink-medium);
    inline-size: 100%;
  }

  .admin-image-collection__add-icon {
    --icon-size: 1.6rem;
  }

  .admin-record__thumb-link,
  .admin-record__thumb-card {
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    inline-size: 4.5rem;
    min-inline-size: 0;
    text-decoration: none;
  }

  .admin-record__thumb-frame {
    aspect-ratio: 4 / 5;
    background: var(--color-ink-lightest);
    border: 1px solid var(--color-ink-lighter);
    border-radius: 0.75rem;
    overflow: hidden;
  }

  .admin-record__thumb-image {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    object-fit: cover;
  }

  .admin-record__thumb-empty {
    align-items: center;
    block-size: 100%;
    color: var(--color-ink-dark);
    display: flex;
    font-size: var(--text-x-small);
    justify-content: center;
    padding: 0.5rem;
    text-align: center;
  }

  .admin-record__thumb-meta {
    color: var(--color-ink-dark);
    display: flex;
    flex-direction: column;
    font-size: var(--text-x-small);
    gap: 0.15rem;
    line-height: 1.2;
  }

  .admin-record__thumb-toggle {
    align-items: center;
    display: flex;
    font-size: var(--text-x-small);
    gap: 0.35rem;
  }

  .admin-record__thumb-delete {
    inline-size: 100%;
    justify-content: center;
  }

  .admin-record__thumb-delete:has(input:checked) .unchecked {
    display: none;
  }

  .admin-record__field-grid {
    display: grid;
    gap: var(--block-space-half);
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  }

  .admin-record__field {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
  }

  .admin-record__card-grid {
    display: grid;
    gap: var(--block-space-half);
    grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
  }

  .admin-record__text-stack {
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
  }

  .admin-record__text-block {
    background: color-mix(in srgb, var(--color-canvas) 92%, var(--color-ink-lightest));
    border: 1px solid var(--color-ink-lighter);
    border-radius: 0.75rem;
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
    line-height: 1.45;
    min-inline-size: 0;
    overflow-wrap: anywhere;
    padding: 0.7rem 0.8rem;
    white-space: pre-wrap;
  }

  .admin-record__text-block strong {
    font-size: var(--text-x-small);
    letter-spacing: 0.08em;
    text-transform: uppercase;
  }

  .admin-record__upload-card {
    color: inherit;
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    inline-size: 4.5rem;
    min-inline-size: 0;
  }

  .admin-record__upload-field {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
  }

  .admin-record__upload-field .image-upload__control-row {
    display: block;
  }

  .admin-record__upload-trigger {
    display: block;
    padding: 0;
    cursor: pointer;
  }

  .admin-record__upload-trigger input[type="file"] {
    position: absolute;
    opacity: 0;
    pointer-events: none;
  }

  .admin-record__upload-frame {
    aspect-ratio: 4 / 5;
    background: var(--color-ink-lightest);
    border: 1px solid var(--color-ink-lighter);
    border-radius: 0.75rem;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
  }

  .admin-record__upload-image {
    block-size: 100%;
    display: block;
    inline-size: 100%;
    object-fit: cover;
  }

  .admin-record__upload-meta {
    color: var(--color-ink-dark);
    display: flex;
    flex-direction: column;
    font-size: var(--text-x-small);
    gap: 0.15rem;
    line-height: 1.2;
  }
}
