.rhythm-app{font-family:system-ui,-apple-system,"Segoe UI",sans-serif;color:#182b36;background:#f6f8fa;max-width:1120px;margin:0 auto;padding:clamp(16px,3vw,32px);box-sizing:border-box;line-height:1.5;border-radius:16px}.rhythm-app *{box-sizing:border-box}.rhythm-app .rhythm-kicker{color:#176f73;font-size:12px;font-weight:800;letter-spacing:.12em}.rhythm-app h2{font-size:clamp(26px,4vw,36px);letter-spacing:-.03em;line-height:1.15;margin:9px 0 14px}.rhythm-app h3{font-size:17px;margin:0 0 12px}.rhythm-app .rhythm-intro{margin:0 0 10px;max-width:780px}.rhythm-app .rhythm-hint{font-size:14px;color:#475e6b;margin:0 0 20px}.rhythm-app .rhythm-status{background:#e0f0ee;color:#125953;border-radius:8px;padding:10px 14px;font-weight:700}.rhythm-app .rhythm-layout{display:grid;grid-template-columns:minmax(170px,1fr) minmax(0,3fr);gap:24px;margin-top:24px}.rhythm-app .rhythm-sounds{display:grid;gap:8px}.rhythm-app button{font:inherit;cursor:pointer;touch-action:manipulation;transition:background .12s,border-color .12s}.rhythm-app button:focus-visible,.rhythm-app a:focus-visible{outline:3px solid #e59b20;outline-offset:3px}.rhythm-app .rhythm-sound{border:2px solid #ccd9dd;border-radius:9px;background:#fff;padding:11px 8px;text-align:left;font-weight:650;font-size:14px;color:#244651;min-height:45px}.rhythm-app .rhythm-sound.is-selected{border-color:#137c80;background:#d8f1f1;color:#075457}.rhythm-app .rhythm-notes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.rhythm-app .rhythm-note{background:#fff;border:2px solid #d3dfe3;border-radius:10px;padding:10px;min-width:0;display:flex;align-items:center;flex-direction:column;justify-content:center;gap:8px;color:#344a55;min-height:142px}.rhythm-app .rhythm-note-label{align-self:flex-start;font-size:12px;font-weight:700;min-height:18px}.rhythm-app .rhythm-note img{max-width:100%;height:auto;max-height:101px;object-fit:contain}.rhythm-app button:hover:enabled{border-color:#137c80;background:#edf8f8}.rhythm-app button:disabled{cursor:default}.rhythm-app button.is-correct{border-color:#409b68;background:#eef8f1}.rhythm-app button.is-correct img{opacity:.5}.rhythm-app .rhythm-feedback{background:#fff;border-left:4px solid #178086;padding:14px 16px;border-radius:5px;margin:24px 0 16px;min-height:52px}.rhythm-app .rhythm-controls{display:flex;gap:10px;flex-wrap:wrap}.rhythm-app .rhythm-secondary{border:1px solid #9aadb5;background:#fff;border-radius:7px;padding:10px 14px;color:#243e4a}.rhythm-app .rhythm-secondary:disabled{opacity:.5}.rhythm-app .rhythm-footer{font-size:12px;margin:22px 0 0;color:#556b75}.rhythm-app a{color:#176c72;text-underline-offset:3px}.rhythm-app .rhythm-video{width:100%;max-width:480px;height:270px;border:0}.rhythm-app .rhythm-player a{display:block;margin:8px 0}.rhythm-app .rhythm-player:empty{display:none}@media(max-width:620px){.rhythm-app .rhythm-layout{grid-template-columns:1fr;gap:20px}.rhythm-app .rhythm-sounds{grid-template-columns:repeat(2,minmax(0,1fr))}.rhythm-app .rhythm-note{min-height:130px;padding:8px}.rhythm-app .rhythm-notes{gap:8px}}@media(prefers-reduced-motion:reduce){.rhythm-app button{transition:none}}

.rhythm-app .memory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:24px}.rhythm-app .memory-card{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-width:0;height:155px;border:2px solid #197c80;border-radius:12px;background:#197c80;color:white;padding:12px;overflow:hidden}.rhythm-app .memory-card:hover:enabled{background:#13676b;border-color:#125b60}.rhythm-app .memory-card.is-open{background:white;color:#182b36;border-color:#ccd9dd}.rhythm-app .memory-card.is-open:hover:enabled{background:#f4f9f9}.rhythm-app .memory-card.is-correct{border-color:#409b68;background:#eef8f1}.rhythm-app .memory-card:disabled{opacity:1}.rhythm-app .memory-back{font-size:56px;line-height:1}.rhythm-app .memory-card-number{font-size:12px;position:absolute;bottom:8px;right:10px;opacity:.8}.rhythm-app .memory-note-name{font-size:56px;font-weight:750}.rhythm-app .memory-card img{max-width:100%;width:100%;height:110px;object-fit:contain}.rhythm-app .memory-solution-label{font-size:12px;font-weight:700;position:absolute;bottom:4px;background:#fff;padding:1px 6px;border-radius:3px}@media(max-width:650px){.rhythm-app .memory-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.rhythm-app .memory-card{height:140px;padding:7px}}@media(max-width:420px){.rhythm-app .memory-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
