.room-echo{--stage-ink:var(--pm-ink)}.echo-hud .pm-stats{flex:auto}.echo-board{aspect-ratio:1;border-radius:var(--pm-radius);background:var(--pm-accent-deep);width:100%;box-shadow:0 6px 0 var(--pm-accent-deep), 0 12px 14px -6px color-mix(in srgb, var(--pm-ink) 30%, transparent);-webkit-user-select:none;user-select:none;position:relative;overflow:hidden;container-type:inline-size}.echo-grid{grid-template-rows:repeat(2,minmax(44px,1fr));grid-template-columns:repeat(2,minmax(44px,1fr));gap:3%;display:grid;position:absolute;inset:3%}.echo-pad{border:var(--pm-ink-line-w) solid var(--pm-ink-line);background:var(--pad-color);min-width:44px;min-height:44px;color:var(--pm-ink);box-shadow:inset 0 -7px 0 color-mix(in srgb, var(--pm-ink) 16%, transparent);touch-action:manipulation;transition:filter var(--pm-dur-fast), box-shadow var(--pm-dur-fast), transform var(--pm-dur-fast);border-radius:clamp(10px,4cqw,20px);place-items:center;padding:0;display:grid;position:relative}.echo-shape{width:32%;height:32%;fill:var(--pm-ink);pointer-events:none;grid-area:1/1;transform:translateY(-34%)}.echo-num{font:800 clamp(20px, 9cqw, 40px)/1 var(--pm-font-display);pointer-events:none;grid-area:1/1;transform:translateY(46%)}.echo-pad.is-active{filter:brightness(1.18)saturate(1.15);box-shadow:inset 0 0 0 clamp(5px, 2cqw, 9px) var(--pm-surface);transform:scale(.985)}.echo-pad.is-active .echo-shape{transform:translateY(-34%)scale(1.25)}.echo-board:focus-visible,.echo-pad:focus-visible{outline:3px solid var(--pm-focus);outline-offset:2px}.echo-overlay{z-index:1;padding:10px;position:absolute;inset:0}.echo-overlay>div{justify-items:center;gap:6px;max-width:360px;display:grid}.echo-overlay p:not(.pm-eyebrow){font-size:clamp(11px,3.5cqw,14px)}.echo-toolbar{flex-wrap:wrap;justify-content:center;gap:4px;margin-top:8px;display:flex}.echo-toolbar p{justify-content:space-between;width:100%;margin:0;font-size:12px;display:flex}@media (hover:hover){.echo-pad[aria-disabled=false]:hover{filter:brightness(1.08)}}@media (prefers-reduced-motion:reduce){.echo-pad{transition:none}}
