@charset "UTF-8";
.robot-animation-link { display: inline-flex; align-items: center; min-height: 48px; margin-top: 20px; color: var(--accent); font-size: var(--font-small); }
.field-chapter { padding-top: 36px; margin-top: 60px; border-top: 1px solid var(--line); }
.field-chapter > h3 { font-size: clamp(24px, 2.3vw, 34px); line-height: 1.6; margin: 0 0 18px; font-weight: 400; }
.field-intro { font-size: var(--font-body); color: var(--muted); line-height: 2; max-width: 850px; margin-bottom: 36px; }
.field-grid { display: grid; grid-template-columns: repeat(12, minmax(0,1fr)); align-items: start; gap: 42px 36px; }
.field-item { grid-column: span 6; min-width: 0; }
.field-item.portrait { grid-column: span 5; }
.field-item.wide { grid-column: span 7; }
.field-grid.count-2 > :nth-child(2) { grid-column: span 5; }
.field-grid.count-2 > :first-child.portrait + .field-item { grid-column: span 7; }
.field-grid.count-3 > .field-item { grid-column: span 4; }
.field-grid.count-4 > .field-item.wide { grid-column: span 7; }
.reference-chapter .field-grid > .field-item.wide { grid-column: span 6; }
.field-item.offset { margin-top: 76px; }
.field-item.full { grid-column: 1 / -1; }
.field-image { position: relative; width: 100%; display: flex; align-items: center; justify-content: center; padding: 16px; background: var(--panel); border: 1px solid var(--line); aspect-ratio: 4/3; }
.field-image > img { width: 100%; height: 100%; object-fit: contain; min-width: 0; min-height: 0; }
.portrait > .field-image { aspect-ratio: 3/4; }
.full > .field-image { aspect-ratio: 16/10; max-height: 780px; }
.field-image::after { content: '↗'; position: absolute; right: 12px; bottom: 12px; background: var(--panel); padding: 3px 8px; color: var(--accent); }
.field-item figcaption { margin-top: 22px; max-width: 850px; }
.field-item h4 { font-size: 22px; line-height: 1.6; margin: 0 0 13px; font-weight: 400; }
.field-item figcaption p { font-size: var(--font-body); color: var(--muted); line-height: 2; margin: 0; }
.reference-badge { position: absolute; top: 12px; left: 12px; color: var(--accent); background: var(--panel); border: 1px solid var(--line); font-size: var(--font-label); padding: 5px 10px; }
.reference-chapter { padding: 30px; border: 1px solid var(--line); background: #111715; }
@media(max-width: 850px) {
  .field-grid { gap: 36px 24px; }
  .field-grid.count-3 > .field-item { grid-column: span 6; }
  .field-grid.count-3 > :last-child { grid-column: 3 / span 8; }
  .field-item.offset { margin-top: 42px; }
}
@media(max-width: 650px) {
  .field-chapter { margin-top: 38px; padding-top: 26px; }
  .field-intro { margin-bottom: 26px; }
  .field-grid { display: block; }
  .field-item, .field-item.offset { margin: 0 0 36px; }
  .field-item:last-child { margin-bottom: 0; }
  .field-item h4 { font-size: 21px; }
  .reference-chapter { padding: 20px; }
  .field-image { padding: 10px; }
  .reference-badge { font-size: var(--font-caption); top: 8px; left: 8px; }
}
