.caustic-page h1 { text-wrap: balance; }
.caustic-layout { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(18px, 4.5vw, 60px); margin-top: clamp(22px, 4vw, 46px); align-items: start; }
.caustic-screen { margin: 0; padding: clamp(12px, 2.5vw, 24px); background: #34313a; color: #f0dabc; border: 1px solid #675a5e; box-shadow: inset 0 0 35px #1c202b66, 0 10px 22px #33262d20; }
.caustic-plate-head, .caustic-plate-foot { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 4px 14px; font-size: 10px; letter-spacing: .13em; text-transform: uppercase; }
.caustic-plate-head { padding-bottom: 9px; }
.caustic-plate-foot { padding-top: 9px; }
.caustic-receiver { aspect-ratio: 1; border: 1px solid #9c7c5b; background: #232330; }
.caustic-receiver :is(img,canvas) { display: block; width: 100%; height: 100%; object-fit: contain; }
.caustic-console { min-width: 0; }
.caustic-console h2 { margin: 6px 0 16px; font: 300 clamp(30px, 4.3vw, 57px)/.98 var(--font-serif); letter-spacing: -.045em; }
.caustic-setting { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 0 10px; margin-top: 8px; font-size: 13px; }
.caustic-setting output { color: #783e2e; font-variant-numeric: tabular-nums; }
.caustic-setting input { grid-column: 1 / -1; width: 100%; min-height: 44px; accent-color: var(--merch-rust); }
.caustic-setting input:focus-visible { outline: 3px solid var(--merch-rust); outline-offset: 3px; }
.caustic-controls .proof-controls { margin: 12px 0; }
.caustic-paths { margin: 18px 0 16px; }
.caustic-paths svg { display: block; width: 100%; font: 10px var(--font-sans); letter-spacing: .12em; }
.caustic-paths figcaption, .caustic-target figcaption { font-size: 12px; }
.caustic-paths figcaption { margin-top: 5px; }
.caustic-target { display: flex; align-items: center; gap: 12px; margin: 0; }
.caustic-target img { width: 61px; height: 61px; object-fit: cover; border: 1px solid #a9927c; }
@media (max-width: 710px) { .caustic-layout { grid-template-columns: 1fr; } }
