/* Local finishing rules for the approved 2026-10-29 repair. */
.room__button { min-height: 44px; }
.room__head { border-bottom-color: rgba(157,127,70,.25); }
.room--exhibit .exhibit__voice { padding-top: .4rem; }
.exhibit__lines { margin-top: 1.2rem; }
.room--exhibit .exhibit__caption { max-width: 32em; }
.room__button[aria-pressed="true"] { border-color: var(--sw-brass-lit); color: var(--sw-brass-lit); }
.gallery__manuscript,.gallery__silence { margin-top: clamp(2rem,5vw,3.5rem); padding-top: 1.7rem; border-top: 1px solid var(--sw-hair); }
.gallery__paper { display: block; width: 100%; max-width: 36rem; min-height: 12rem; resize: vertical; border: 1px solid rgba(157,127,70,.28); padding: clamp(1rem,3vw,1.8rem); background: linear-gradient(135deg,rgba(217,210,180,.055),rgba(217,210,180,.015)); color: var(--sw-pale); font: 1.08rem/1.8 var(--sw-display); }
.gallery__paper[readonly] { cursor: default; }
.gallery__paper:focus-visible { outline: 1px solid var(--sw-brass-lit); outline-offset: 4px; }
.gallery__folio { color: var(--sw-pale-soft); font: .72rem/1.7 var(--sw-mono); letter-spacing: .15em; margin: .6rem 0 0; }
.gallery__quiet { min-height: 7rem; padding: 1.2rem 0; color: var(--sw-pale-soft); font: italic 1.05rem/1.7 var(--sw-display); }
.gallery__silence { max-width: 38rem; }
.ritual__finish { margin-bottom: 1.2rem; }
.ritual__reveal { animation: sw-rise 650ms var(--sw-ease) both; }
.writing__status--pending { color: var(--sw-brass-lit); }
.writing__page { scroll-margin-block: 2rem; }
.music__scrub,.music__volume-slider { height: 44px; background: linear-gradient(var(--sw-hair-strong),var(--sw-hair-strong)) center/100% 3px no-repeat; margin: 0; }
.music__scrub::-webkit-slider-thumb,.music__volume-slider::-webkit-slider-thumb { width: 18px; height: 18px; }
.music__scrub::-moz-range-thumb,.music__volume-slider::-moz-range-thumb { width: 18px; height: 18px; }
.music__time,.music__volume-label,.music__credit { color: var(--sw-pale-soft); font-size: .76rem; }
.music__retry { margin-top: .8rem; }
.music__retro { position: fixed; overflow-y: auto; align-content: start; padding-top: clamp(2rem,8vh,5rem); padding-bottom: max(2rem,env(safe-area-inset-bottom)); background: #030b0e; }
.music__retro-stage { width: 100%; max-width: 38rem; }
.music__retro-source { color: var(--sw-pale-soft); }
.music__retro-close { margin-bottom: 1rem; }
@media(min-width:900px) {
  .room--exhibit { display: grid; grid-template-columns: minmax(0,.95fr) minmax(0,1fr); gap: 0 clamp(2rem,4vw,3.4rem); align-items: start; }
  .room--exhibit>.room__head,.room--exhibit>.room__exits { grid-column: 1/-1; }
  .room--exhibit>.exhibit__figure { grid-column: 1; grid-row: 2; margin-bottom: 0; }
  .room--exhibit>.exhibit__voice { grid-column: 2; grid-row: 2; padding-top: 1rem; }
  .room--exhibit .exhibit__window { max-width: 100%; }
}
@media(max-width:640px) {
  .room__mark,.gallery__prompt,.writing__privacy,.writing__count,.music__time,.music__volume-label,.music__credit,.hidden__plate-label { color: var(--sw-pale-soft); font-size: .76rem; }
  .room__button { max-width: 100%; overflow-wrap: anywhere; line-height: 1.6; letter-spacing: .1em; }
  .sw-nav__item,.sw-nav__close,.sw-masthead__door { min-height: 44px; }
  .music__stanza { color: var(--sw-pale); font-size: 1.05rem; }
  .gallery__options { grid-template-columns: minmax(0,1fr); }
  .gallery__manuscript .room__button { flex: 1 1 100%; }
  .music__retro-note,.music__retro-when { font-size: .72rem; }
  .music__retro-source { font-size: .68rem; }
}
