/* Image collage (#114) */
.ic-workspace { display: grid; min-width: 0; gap: 1.25rem; margin-bottom: 1.5rem; }
.ic-workspace[hidden], .ic-grid-settings[hidden] { display: none; }
.ic-images-panel, .ic-preview-panel, .ic-export-panel { min-width: 0; }
.ic-image-list { display: grid; gap: .65rem; margin: 1rem 0 0; padding: 0; list-style: none; counter-reset: none; }
.ic-image-list li { display: grid; grid-template-columns: auto 96px minmax(0, 1fr) auto; align-items: center; min-width: 0; gap: .7rem; padding: .7rem; border: 1px solid var(--color-border); border-radius: var(--radius-sm); background: var(--color-surface-soft); }
.ic-image-order { display: grid; place-items: center; width: 2rem; height: 2rem; border-radius: 999px; background: var(--color-primary); color: #fff; font-weight: 850; }
.ic-thumbnail { display: block; max-width: 100%; border-radius: 8px; background: repeating-conic-gradient(#e5ecea 0 25%, #fff 0 50%) 50% / 12px 12px; }
.ic-image-detail { display: grid; min-width: 0; gap: .25rem; }
.ic-image-detail strong, .ic-image-detail span { min-width: 0; overflow-wrap: anywhere; }
.ic-image-detail span { color: var(--color-muted); font-size: .85rem; }
.ic-image-actions { display: grid; grid-template-columns: repeat(3, minmax(0, auto)); gap: .4rem; }
.ic-image-actions .button { min-width: 0; padding: .55rem .65rem; white-space: nowrap; }
.ic-editor-grid { display: grid; grid-template-columns: minmax(300px, .8fr) minmax(0, 1.4fr); align-items: start; gap: 1.25rem; }
.ic-choice-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: .55rem; }
.ic-choice-grid legend { grid-column: 1 / -1; }
.ic-choice-grid label { display: flex; align-items: center; min-width: 0; gap: .5rem; padding: .65rem; border: 1px solid var(--color-border); border-radius: var(--radius-sm); background: var(--color-surface); font-weight: 750; cursor: pointer; }
.ic-choice-grid input { flex: 0 0 auto; width: auto; margin: 0; accent-color: var(--color-primary); }
.ic-choice-grid input[type="color"] { flex: 1 1 auto; min-width: 44px; }
.ic-grid-settings { display: grid; gap: .8rem; }
.ic-canvas-wrap { box-sizing: border-box; width: 100%; max-width: 100%; min-height: 160px; overflow: auto; padding: .6rem; border-radius: 12px; background: repeating-conic-gradient(#263d38 0 25%, #36534c 0 50%) 50% / 20px 20px; }
.ic-canvas-wrap canvas { display: block; width: auto; max-width: 100%; height: auto; margin: auto; }
.ic-output-info { overflow-wrap: anywhere; font-weight: 800; }

@media (max-width: 860px) {
  .ic-editor-grid { grid-template-columns: minmax(0, 1fr); }
}

@media (max-width: 620px) {
  .ic-image-list li { grid-template-columns: auto 72px minmax(0, 1fr); }
  .ic-thumbnail { width: 72px; height: 54px; }
  .ic-image-actions { grid-column: 1 / -1; grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ic-image-actions .button { width: 100%; padding-inline: .35rem; }
}

@media (max-width: 420px) {
  .ic-choice-grid { grid-template-columns: minmax(0, 1fr); }
  .ic-image-list li { grid-template-columns: auto 64px minmax(0, 1fr); gap: .5rem; padding: .55rem; }
  .ic-thumbnail { width: 64px; height: 48px; }
}
