html, body { margin: 0; min-height: 100%; }
.inventory-shell { min-width: 0; padding: 16px 24px; display: grid; gap: 20px; }
.inventory-header, .inventory-toolbar, .inventory-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; }
.inventory-layout { display: grid; grid-template-columns: minmax(0, 1fr); gap: 24px; align-items: start; }
.inventory-list { min-width: 0; overflow-x: auto; }
.inventory-list table { min-width: 1080px; }
.inventory-brand { display: flex; gap: 10px; align-items: center; }
.inventory-icon { width: 32px; height: 32px; flex: none; }
.inventory-detail, .inventory-form { width: min(480px, calc(100vw - 80px)); display: grid; gap: var(--spacing-md); font-size: var(--font-size-xs); }
.inventory-control { display: grid; gap: var(--spacing-xs); min-width: 0; }
.inventory-control > input, .inventory-control > textarea { box-sizing: border-box; width: 100%; min-width: 0; }
.inventory-fields { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--spacing-md); }
.inventory-detail dl { margin: 0; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 2fr); gap: var(--spacing-sm) var(--spacing-md); }
.inventory-detail dt { color: var(--color-text-tertiary); }
.inventory-dialog-actions { display: flex; gap: var(--spacing-sm); flex-wrap: wrap; justify-content: flex-start; }
.inventory-photo-upload { display: flex; align-items: center; justify-content: space-between; gap: var(--spacing-sm); border-top: 1px solid var(--color-border); padding-top: var(--spacing-md); }
.inventory-detail dd { margin: 0; overflow-wrap: anywhere; white-space: pre-wrap; }
.inventory-photos { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--spacing-md); }
.inventory-photo { display: grid; gap: 8px; min-width: 0; }
.inventory-photo img { display: block; width: 100%; height: auto; }
.inventory-empty { padding: 32px 0; }
@media (max-width: 800px) {
  .inventory-shell { padding: 16px; }
  .inventory-layout, .inventory-fields { grid-template-columns: 1fr; }
}

.inventory-app { height: 100dvh; overflow: hidden; display: flex; flex-direction: column; }
.inventory-app > .inventory-shell { flex: 1; min-height: 0; overflow-y: auto; align-content: start; }
.inventory-item-name { color: var(--color-primary); font-size: var(--font-size-sm); font-weight: 590; }
.inventory-footer { position: sticky; bottom: 0; z-index: 10; flex-shrink: 0; display: flex; align-items: center; box-sizing: border-box; min-height: var(--size-control); padding: 4px var(--spacing-md); border-top: 1px solid var(--color-border); gap: var(--spacing-md); background: var(--color-base-100); color: var(--color-text-tertiary); font-size: var(--font-size-2xs); }
.inventory-footer-group, .inventory-footer-brand { display: inline-flex; align-items: center; gap: var(--spacing-xs); min-width: 0; }
.inventory-footer-system { margin-left: auto; }
.inventory-footer-brand { color: var(--color-text-primary); letter-spacing: .08em; }
.inventory-footer-brand .inventory-icon { width: 16px; height: 16px; }
@media (max-width: 480px) { .inventory-footer { gap: var(--spacing-sm); padding-inline: var(--spacing-sm); flex-wrap: wrap; } }

.inventory-brand h1 { margin: 0; font-size: var(--font-size-lg); font-weight: 590; color: var(--color-text-primary); }

.inventory-item-heading { display: inline-flex; align-items: center; gap: var(--spacing-xs); }
.inventory-detail { width: 100%; max-width: calc(100vw - 5rem); box-sizing: border-box; padding: var(--spacing-md); }
.inventory-detail dl { grid-template-columns: minmax(8rem, 1fr) minmax(0, 3fr); }
.inventory-photos { grid-template-columns: repeat(auto-fit, minmax(min(100%, 24rem), 1fr)); }
.inventory-photo-open { display: block; width: 100%; min-height: var(--size-control); padding: 0; border: 0; background: transparent; cursor: zoom-in; }
.inventory-photo-open:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 2px; }
.inventory-lightbox { display: grid; place-items: center; }
.inventory-lightbox img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 10rem); object-fit: contain; }

.inventory-photo { grid-template-rows: 1fr auto; }
.inventory-photo-open { align-self: start; }
.inventory-photo > .btn { justify-self: end; }
.inventory-gallery { display: grid; gap: var(--spacing-md); }
.inventory-gallery-controls { display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: var(--spacing-md); }
.inventory-gallery-controls > :first-child { justify-self: start; }
.inventory-gallery-controls > :last-child { justify-self: end; }
.inventory-gallery .inventory-lightbox img { max-height: calc(100dvh - 15rem); }

.inventory-gallery-controls .btn { white-space: normal; }

.inventory-gallery .inventory-lightbox { height: calc(100dvh - 15rem); }

.inventory-footer { line-height: 1; align-content: center; }
.inventory-footer-group, .inventory-footer-brand { min-height: var(--size-control-sm); align-self: center; }
.inventory-footer .toggle { display: flex; align-items: center; min-height: var(--size-control-sm); margin: 0; }
.inventory-footer .toggle__input { margin: 0; }

.inventory-table-notes { display: block; width: 18rem; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.inventory-table-notes:focus-visible { outline: 2px solid var(--color-primary); outline-offset: 2px; }
