/* House devices. ONE stripe, one gingham. The scalloped awning was removed in review — it read
   as spikes rather than a valance and dated the whole page. The stripe survives it.
   THE STRIPE: 48px bands, 1:1 ratio, buttermilk + paper, vertical. A fixed asset — same width,
   same ratio, same two colours everywhere: the thin section rule, the button fill wipe, and the
   page-transition wipe. Nothing else is striped, and nothing else animates stripes. */
:root {
  --stripe-a: var(--buttermilk); /* @kind color */
  --stripe-b: var(--paper); /* @kind color */
  --stripe-band: repeating-linear-gradient(90deg, var(--stripe-a) 0 var(--stripe-w), var(--stripe-b) var(--stripe-w) calc(var(--stripe-w) * 2)); /* @kind other */

  /* gingham: the quiet pattern. Powder on warm paper, small and faint, ONE place per page. */
  --gingham-size: 9px; /* @kind spacing */
  --gingham: repeating-linear-gradient(90deg, color-mix(in oklab, var(--powder) 15%, transparent) 0 var(--gingham-size), transparent var(--gingham-size) calc(var(--gingham-size) * 2)),
             repeating-linear-gradient(0deg, color-mix(in oklab, var(--powder) 15%, transparent) 0 var(--gingham-size), transparent var(--gingham-size) calc(var(--gingham-size) * 2)); /* @kind other */
}
.stripe-band { background-image: var(--stripe-band); background-size: calc(var(--stripe-w) * 2) 100%; }
.gingham-field { background-color: var(--surface-inquiry); background-image: var(--gingham); }

/* Marquee: constant linear speed, tuned to the stripe rhythm. */
@keyframes parasol-marquee { from { transform: translate3d(0, 0, 0); } to { transform: translate3d(-50%, 0, 0); } }
