/* Bare wall: big drop tiles. Shared by format walls (image now; HEIC/audio/PDF later). */
.wall { margin-top: 24px; }
.wall-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.wall-tile {
  min-height: 168px; padding: 20px; border: 1.5px dashed var(--hair); border-radius: var(--radius-tile);
  background: var(--paper); color: var(--ink); font: inherit; text-align: left; cursor: pointer;
  display: flex; flex-direction: column; justify-content: space-between; gap: 12px;
  transition: border-color .12s, background .12s, transform .12s;
}
.wall-tile:hover, .wall-tile:focus-visible { border-color: var(--ink); outline: none; }
.wall-tile.is-over { background: var(--ink); color: var(--paper); border-style: solid; transform: scale(1.015); }
.wall-tile.is-over .wt-sub { color: var(--hair); }
.wall-tile.is-last { border-style: solid; border-color: var(--ink); }
.wall-tile.is-busy { opacity: .55; }
.wt-label { font-size: clamp(40px, 9vw, 72px); font-weight: 700; letter-spacing: -0.03em; line-height: 1; }
.wt-sub { font-size: var(--small); color: var(--mute); }
.wall:not(.is-ready) .wall-grid { min-height: 348px; }
.wall-status { margin-top: 16px; font-size: var(--small); color: var(--mute); min-height: 1.4em; }
.wall-log { list-style: none; margin-top: 12px; font-size: var(--small); border-top: 1px solid var(--hair); }
.wall-log li { display: flex; justify-content: space-between; gap: 12px; padding: 8px 0; border-bottom: 1px solid var(--hair); }
.wl-name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; min-width: 0; }
.wl-size { color: var(--mute); white-space: nowrap; font-variant-numeric: tabular-nums; }
.wall-log li.err .wl-size { color: #b00020; }
@media (min-width: 900px) { .wall-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 400px) { .wall-tile { min-height: 132px; padding: 16px; } }
.wall-again { color: var(--ink); }
