/* Batch 02 · shell / grid / PDP / spacing systems */

.an-chrome-note { margin: 0.35rem 0 0.85rem; font-size: 0.85rem; color: var(--muted); }
.an-chrome-note strong { color: var(--ink); font-weight: 650; }

/* Spacing rhythms, compact (no spare empty bands) */
body.chrome-space-editorial .an-section { padding-block: 0.7rem; }
body.chrome-space-compact .an-section { padding-block: 0.55rem; }
body.chrome-space-luxury .an-section { padding-block: 0.75rem; }
body.chrome-space-loud .an-section { padding-block: 0.7rem; }
body.chrome-space-organic .an-section { padding-block: 0.7rem; }
body.chrome-space-dense .an-section { padding-block: 0.55rem; }
body.chrome-space-magazine .an-section { padding-block: 0.7rem; }
body.chrome-space-utility .an-section { padding-block: 0.55rem; }
body.chrome-space-hand .an-section { padding-block: 0.7rem; }
body.chrome-space-future .an-section { padding-block: 0.7rem; }

/* Grid systems */
body.chrome-grid-uneven .an-grid { grid-template-columns: 1fr; gap: 1.5rem; }
@media (min-width: 800px) {
  body.chrome-grid-uneven .an-grid { grid-template-columns: 1.2fr 1fr; align-items: stretch; }
  body.chrome-grid-uneven .an-grid > :nth-child(3n) { grid-column: auto; }
}
body.chrome-grid-dense-3 .an-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; }
@media (min-width: 800px) { body.chrome-grid-dense-3 .an-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
body.chrome-grid-breath .an-grid { grid-template-columns: 1fr; gap: 0.85rem; }
@media (min-width: 900px) { body.chrome-grid-breath .an-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; } }
body.chrome-grid-overlap .an-grid { gap: 0; }
body.chrome-grid-overlap .an-grid .an-product { margin: -0.35rem; border: 2px solid var(--ink); }
body.chrome-grid-soft-3 .an-grid { gap: 1.5rem; }
@media (min-width: 800px) { body.chrome-grid-soft-3 .an-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
body.chrome-grid-aligned-4 .an-grid { gap: 0.65rem; }
@media (min-width: 900px) { body.chrome-grid-aligned-4 .an-grid { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
body.chrome-grid-mixed .an-grid { grid-template-columns: 1fr; gap: 1.75rem; }
@media (min-width: 800px) {
  body.chrome-grid-mixed .an-grid { grid-template-columns: 1.2fr 0.8fr 1fr; }
  body.chrome-grid-mixed .an-grid > :first-child { grid-row: span 2; }
}
body.chrome-grid-hard-5 .an-grid { gap: 0; border: 2px solid var(--ink); }
body.chrome-grid-hard-5 .an-grid .an-product { border: 1px solid var(--ink); margin: 0; }
@media (min-width: 1000px) { body.chrome-grid-hard-5 .an-grid { grid-template-columns: repeat(5, minmax(0, 1fr)); } }
body.chrome-grid-asymm-3 .an-grid { gap: 1.75rem; }
@media (min-width: 800px) {
  body.chrome-grid-asymm-3 .an-grid { grid-template-columns: 1fr 1.2fr 1fr; }
  body.chrome-grid-asymm-3 .an-grid > :nth-child(2) { transform: translateY(1.5rem); }
}
body.chrome-grid-exp-3 .an-grid { gap: 1.25rem; }
@media (min-width: 800px) { body.chrome-grid-exp-3 .an-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }

/* Shell personalities */
body.chrome-shell-canvas .an-wrap { width: 90vw; max-width: 90vw; }
body.chrome-shell-blocks .an-section { border-bottom: 3px solid var(--ink); }
body.chrome-shell-modular .an-section { border: 1px solid var(--line); margin: 0.5rem; border-radius: 0; }
body.chrome-shell-columns .an-journal { column-count: 1; }
@media (min-width: 900px) { body.chrome-shell-columns .an-journal { column-count: 2; column-gap: 2.5rem; } }
body.chrome-shell-layers .hx { position: relative; }
body.chrome-shell-organic .an-wrap { width: 90vw; max-width: 90vw; }

/* PDP architectures */
body.chrome-pdp-sticky-panel .an-pdp { align-items: start; }
body.chrome-pdp-sticky-panel .an-buy { position: sticky; top: 5.5rem; }
body.chrome-pdp-sticky-bottom .an-buy { order: 2; }
body.chrome-pdp-sticky-bottom .b02-pdp-dock,
body.chrome-pdp-sticky-bottom .an-sticky-atc {
  position: fixed; inset: auto 0 0 0; z-index: 45;
  display: flex; justify-content: space-between; align-items: center; gap: 1rem;
  padding: 0.85rem 1rem; background: var(--bg); border-top: 1px solid var(--line);
}
body.chrome-nav-bottom.chrome-pdp-sticky-bottom .b02-pdp-dock,
body.chrome-nav-bottom.chrome-pdp-sticky-bottom .an-sticky-atc { bottom: 3.6rem; }
body.chrome-pdp-immersive .an-gallery { min-height: 75vh; }
body.chrome-pdp-immersive .an-buy { border: 0; padding: 0; }
body.chrome-pdp-convert .an-buy { border: 3px solid var(--ink); padding: 1.25rem; }
body.chrome-pdp-tech-spec .b02-specs,
body.chrome-pdp-dense-tech .b02-specs {
  display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 0.75rem; margin: 1.5rem 0;
}
body.chrome-pdp-tech-spec .b02-specs > div,
body.chrome-pdp-dense-tech .b02-specs > div { border: 1px solid var(--line); padding: 0.65rem; }
body.chrome-pdp-tech-spec dt, body.chrome-pdp-dense-tech dt { font-size: 0.68rem; letter-spacing: 0.1em; text-transform: uppercase; color: var(--muted); }
body.chrome-pdp-longform .b02-craft-steps { list-style: none; padding: 0; display: grid; gap: 0.85rem; margin: 2rem 0; }
body.chrome-pdp-longform .b02-craft-steps li { display: grid; gap: 0.15rem; border-left: 2px solid var(--ink); padding-left: 0.85rem; }
body.chrome-pdp-immersive-hud .an-buy {
  border: 1px solid color-mix(in srgb, var(--moss) 40%, transparent);
  border-radius: 16px; padding: 1rem;
  background: color-mix(in srgb, var(--bg) 70%, transparent); backdrop-filter: blur(12px);
}
body.chrome-pdp-story-edit .an-gallery { grid-template-columns: 1fr; }
body.chrome-pdp-dense-tech .an-buy { border: 2px solid var(--ink); padding: 1rem; font-family: ui-monospace, monospace; }

/* Collection chrome */
body.chrome-collection-dense .an-filters { border: 2px solid var(--ink); padding: 0.75rem; }
body.chrome-collection-sparse .an-grid { width: 90vw; max-width: 90vw; margin-inline: auto; }
body.chrome-collection-asymm .an-coll-hero { border-bottom: 0; }
body.chrome-collection-journal .an-coll-hero .an-h2 { font-family: var(--font-display, Georgia, serif); font-size: clamp(2.5rem, 6vw, 4rem); }
