/* Shared stencilled goods. Shape and printed names carry identity without colour. */
.commodity-icon { display:inline-block;flex:none;vertical-align:middle;overflow:visible;--goods-edge:var(--art-outline,#0e120f);--goods-hi:#f1cd87;--goods-low:#313a2c;--goods-plate:#293026;--goods-rivet:#bba674; }
.commodity-mineral { --goods-paint:var(--paint-mineral,#a8843f); }
.commodity-renewable { --goods-paint:var(--paint-renewable,#5f7472); }
.commodity-organic { --goods-paint:var(--paint-organic,#5d6a45); }
.commodity-small { --goods-detail:none; }
.goods-chip { display:inline-flex;align-items:center;gap:6px;max-width:100%;min-width:min-content;vertical-align:middle; }
.goods-chip>span { min-width:min-content;overflow-wrap:normal;word-break:normal;hyphens:none; }
.goods-quantity { white-space:nowrap;font-variant-numeric:tabular-nums; }
.weight-crate { display:inline-block;flex:none;vertical-align:-2px;color:var(--brass,#8a7546); }
.goods-thumb { display:inline-grid;position:relative;isolation:isolate;place-items:center;width:var(--goods-thumb-size,28px);height:var(--goods-thumb-size,28px);flex:none;vertical-align:middle;background:#1b2019;box-shadow:inset 0 1px 3px #000;border:1px solid #45483b;box-sizing:border-box; }
.goods-thumb::before { content:"";position:absolute;inset:0;z-index:-1; }
.goods-thumb-fallback { display:grid;place-items:center; }
.goods-atlas-cell { display:none;position:absolute;inset:0;background-size:600% 600%;background-position:var(--goods-x) var(--goods-y);background-repeat:no-repeat; }
:root[data-goods-atlas="ready"] .goods-atlas-cell { display:block;background-image:image-set(url('../assets/goods/goods-atlas-64.webp') 1x,url('../assets/goods/goods-atlas-128.webp') 2x); }
:root[data-goods-atlas="ready"][data-goods-save-data="true"] .goods-atlas-cell { background-image:url('../assets/goods/goods-atlas-64.webp'); }
:root[data-goods-atlas="ready"] .goods-thumb-fallback { visibility:hidden; }
.goods-plate { display:inline-grid;position:relative;place-items:center;width:24px;height:24px;flex:none;vertical-align:middle; }
:root[data-goods-raster="ready"] .goods-plate { width:var(--goods-plate-size,160px);height:var(--goods-plate-size,160px); }
.goods-plate>img { position:absolute;inset:0;display:block;object-fit:contain;width:100%;height:100%; }
.goods-plate-loaded .goods-plate-fallback { visibility:hidden; }
/* Paper tones preserve silhouette contrast for authors. */
.goods-desk .commodity-icon { --goods-edge:#293127;--goods-hi:#f3f2e9;--goods-low:#293127;--goods-plate:#dddccd;--goods-rivet:#293127;--goods-paint:#69745c; }
.goods-desk .weight-crate { color:#293127; }
@media (max-width:760px), (max-height:500px) and (max-width:1100px) {
  :root[data-goods-raster="ready"] .goods-plate { width:var(--goods-phone-size,var(--goods-plate-size,160px));height:var(--goods-phone-size,var(--goods-plate-size,160px)); }
}
@media (forced-colors:active), (prefers-contrast:more), (prefers-reduced-transparency:reduce) {
  .goods-thumb,.goods-thumb::before,.goods-plate { background-image:none!important;border-image:none!important;mask-image:none!important;clip-path:none!important;filter:none!important;mix-blend-mode:normal!important;border:2px solid CanvasText;background:Canvas;color:CanvasText;box-shadow:none; }
  .goods-thumb::before,.goods-atlas-cell,.goods-plate>img { display:none!important; }
  .goods-thumb-fallback,.goods-plate-fallback { visibility:visible!important; }
  .goods-thumb .commodity-icon,.goods-plate .commodity-icon { --goods-edge:CanvasText;--goods-hi:CanvasText;--goods-low:Canvas;--goods-plate:Canvas;--goods-rivet:CanvasText;--goods-paint:Canvas; }
}
