.room-heading{display:flex;justify-content:space-between;align-items:start;gap:18px}.room-language{font-size:14px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:var(--muted)}.room-language select{max-width:180px}.instrument-tabs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:20px 0 24px}.instrument-tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;min-height:124px;background:var(--surface);border:1px solid var(--control-line);border-radius:16px;padding:13px 8px;color:var(--ink);font:inherit;cursor:pointer}.instrument-tab[aria-pressed=true]{background:var(--soft);border-color:var(--accent-ink);box-shadow:inset 0 0 0 2px var(--accent-ink)}.tab-icon{font-size:32px;line-height:1.15}.tab-name{font-weight:750;display:flex;flex-direction:column;align-items:center;gap:3px}.tab-kind{font-size:12px;color:var(--muted)}.instrument-intro{margin-bottom:18px}.instrument-intro h2{font-size:24px;margin:0 0 7px}.instrument-intro p{margin:0;color:var(--muted);line-height:1.65}.room-modes{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.room-modes button{font:inherit;font-weight:700;min-height:48px;padding:10px 18px;border-radius:12px;border:1px solid var(--control-line);background:var(--surface);color:var(--ink);display:flex;flex-direction:column;gap:3px}.room-modes button[aria-pressed=true]{background:var(--soft);box-shadow:inset 0 0 0 2px var(--accent-ink)}.room-toolbar{display:flex;gap:12px;flex-wrap:wrap;align-items:center}.room-toolbar label{display:flex;gap:8px;align-items:center;font-size:14px}.room-toolbar select{max-width:210px}.room-progress{min-height:22px;color:var(--muted);font-size:14px}.instrument-board{display:grid;gap:12px;margin:18px 0 24px;touch-action:pan-y;user-select:none;-webkit-user-select:none}.instrument-pad{position:relative;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;min-width:0;min-height:120px;padding:14px 8px;border:2px solid transparent;border-radius:16px;background:var(--pad-color);color:#fff;text-shadow:0 1px 3px #0004;box-shadow:0 6px 0 color-mix(in srgb,var(--pad-color),#000 24%);font:inherit;font-weight:750;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.pad-symbol{font-size:32px;line-height:1.1}.pad-label{font-size:18px}.pad-secondary{font-size:12px;opacity:.94}.instrument-pad.pressed,.instrument-pad.demo-active{transform:translateY(4px);box-shadow:0 2px 0 color-mix(in srgb,var(--pad-color),#000 24%);filter:brightness(1.17)}.instrument-pad.expected{outline:4px solid var(--yellow);outline-offset:4px}.instrument-pad.expected:after{content:'★';position:absolute;top:-12px;right:-8px;color:#513b0f;background:var(--yellow);border-radius:50%;width:28px;height:28px;display:grid;place-items:center;text-shadow:none}.instrument-pad:focus-visible,.instrument-tab:focus-visible{outline:3px solid var(--accent-ink);outline-offset:5px}.instrument-board[data-instrument=xylophone]{grid-template-columns:repeat(8,minmax(0,1fr));align-items:center;gap:9px;padding:16px 4px}.instrument-board[data-instrument=xylophone] .instrument-pad{height:calc(236px - var(--pad-index)*15px);border-radius:12px}.instrument-board[data-instrument=drums]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:670px;margin-left:auto;margin-right:auto}.instrument-board[data-instrument=drums] .instrument-pad{border-radius:48%;min-height:160px;border:6px solid #fff5}.instrument-board[data-instrument=percussion]{grid-template-columns:repeat(2,minmax(0,1fr));max-width:670px;margin-left:auto;margin-right:auto}.instrument-board[data-instrument=percussion] .instrument-pad{min-height:230px}.instrument-board[data-instrument=percussion] .pad-symbol{font-size:64px}.instrument-board[data-instrument=bells]{grid-template-columns:repeat(4,minmax(0,1fr))}.instrument-board[data-instrument=bells] .pad-symbol{font-size:42px}.instrument-board[data-instrument=guitar]{grid-template-columns:repeat(4,minmax(0,1fr));background:var(--soft);padding:18px;border-radius:16px}.instrument-board[data-instrument=guitar] .instrument-pad:nth-child(-n+6){grid-column:1/-1;min-height:54px;flex-direction:row;border-radius:8px;background:var(--surface);color:var(--ink);text-shadow:none;box-shadow:0 3px 0 var(--control-line);border:1px solid var(--control-line);overflow:visible}.instrument-board[data-instrument=guitar] .instrument-pad:nth-child(-n+6):before{content:'';position:absolute;left:16px;right:16px;top:50%;height:calc(6px - var(--pad-index)*.65px);background:#b18c56;opacity:.55}.instrument-board[data-instrument=guitar] .pad-label,.instrument-board[data-instrument=guitar] .pad-secondary{position:relative;background:inherit;padding:0 8px}.room-actions{display:flex;gap:10px;flex-wrap:wrap}.room-tip{font-size:13px;color:var(--muted);line-height:1.7;margin-bottom:0}.room-section-label{font-size:13px;color:var(--muted);margin:0}.room-toolbar select,.room-language select{min-height:44px}.instrument-tab .nav-label-sub{font-size:11px}.room-modes .nav-label-sub{font-size:12px}@media(max-width:760px){.instrument-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}.room-heading{flex-direction:column;gap:12px}.instrument-board[data-instrument=xylophone]{grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;row-gap:22px}.instrument-board[data-instrument=xylophone] .instrument-pad{height:130px}.instrument-board[data-instrument=guitar]{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:480px){.instrument-tabs{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.instrument-tab{min-height:104px;padding:10px 5px;gap:5px}.tab-icon{font-size:28px}.tab-name{font-size:14px}.instrument-board[data-instrument=bells]{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.instrument-pad{min-height:105px}.pad-label{font-size:15px}.instrument-board[data-instrument=drums] .instrument-pad{min-height:128px}.instrument-board[data-instrument=drums] .pad-label{font-size:14px}.instrument-board[data-instrument=percussion] .instrument-pad{min-height:170px}.piano-panel{padding:18px 14px}.room-toolbar label{width:100%;justify-content:space-between}.room-toolbar select{max-width:65%}.room-toolbar .music-button{flex:1}.room-modes button{flex:1;padding:10px 9px;font-size:14px}.instrument-board[data-instrument=xylophone] .instrument-pad{height:110px}.instrument-intro h2{font-size:22px}}@media(prefers-reduced-motion:no-preference){.instrument-pad{transition:transform .07s,filter .07s}.instrument-tab{transition:background .14s}}

.room-mode-label{margin-bottom:12px;font-weight:700}.room-play-label{margin-top:22px;font-weight:700}
