.page-main{padding:72px 0 96px}.page-header{max-width:600px;margin-bottom:2.5rem}.page-header h1{font-size:clamp(1.75rem,3.5vw,2.75rem);margin-bottom:1rem}.page-intro{font-size:.95rem;color:var(--text-muted);line-height:1.7}.back-link{font-size:.82rem;color:var(--text-muted);text-decoration:none;display:inline-block;margin-bottom:.75rem}.back-link:hover{color:var(--accent)}.game-layout{display:grid;grid-template-columns:1fr 280px;gap:3rem;align-items:start}.game-card{background:var(--white);border:1px solid var(--border);border-radius:12px;padding:2.5rem;display:flex;flex-direction:column;align-items:center;gap:1.75rem}.score-bar{display:flex;gap:3rem;width:100%;justify-content:center;padding-bottom:1.5rem;border-bottom:1px solid var(--border)}.score-stat{display:flex;flex-direction:column;align-items:center;gap:.15rem}.score-num{font-family:Archivo Narrow,sans-serif;font-size:2rem;font-weight:700;line-height:1}.score-lbl{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.mode-toggle{display:flex;gap:.5rem;width:100%}.mode-btn{flex:1;padding:.5rem;font-size:.82rem;font-weight:500;border:1.5px solid var(--border);background:var(--white);border-radius:6px;cursor:pointer;color:var(--text-muted);transition:all .15s}.mode-btn.active{border-color:var(--accent);color:var(--accent);background:#fdf8f4}.mode-btn:hover:not(.active){border-color:#ccc;color:var(--text)}.prompt-wrap{display:flex;align-items:center;justify-content:center;min-height:120px;width:100%}.prompt-symbol{font-family:Georgia,Times New Roman,serif;font-size:5rem;font-weight:400;font-style:italic;color:#1a1a1a;line-height:1;letter-spacing:-.02em}.prompt-symbol.hairpin{font-size:4rem;font-style:normal;letter-spacing:0}.prompt-word{font-size:1.6rem;font-weight:600;color:var(--text);text-align:center;line-height:1.3}.feedback{min-height:1.75rem;font-size:.88rem;font-weight:500;text-align:center;border-radius:6px;padding:.5rem 1.25rem;transition:all .2s;width:100%}.feedback.correct{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.feedback.wrong{background:#fef2f2;color:#991b1b;border:1px solid #fecaca}.answer-buttons{display:flex;gap:.6rem;flex-wrap:wrap;justify-content:center;width:100%}.answer-btn{padding:.55rem 1.1rem;border-radius:999px;border:2px solid var(--border);background:var(--white);font-size:.85rem;font-weight:500;color:var(--text);cursor:pointer;transition:background .15s,border-color .15s;min-width:120px;text-align:center}.answer-btn.hairpin-btn{font-family:Georgia,serif;font-size:1.4rem;font-style:italic;min-width:70px;padding:.4rem 1rem}.answer-btn:hover:not(:disabled){background:var(--accent);border-color:var(--accent);color:#fff}.answer-btn:disabled{cursor:default;opacity:.5}.answer-btn.correct{background:#10b981;border-color:#10b981;color:#fff;opacity:1}.answer-btn.wrong{background:#ef4444;border-color:#ef4444;color:#fff;opacity:1}.answer-btn.show-correct{background:#10b981;border-color:#10b981;color:#fff;opacity:1}.next-btn{visibility:hidden}.game-aside{position:sticky;top:80px;display:flex;flex-direction:column;gap:1.25rem}.hint-card{background:var(--white);border:1px solid var(--border);border-radius:8px;padding:1.5rem}.hint-card h3{font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:1rem}.dynamics-table{display:flex;flex-direction:column}.dyn-row{display:grid;grid-template-columns:36px 1fr;gap:.4rem .6rem;align-items:baseline;padding:.3rem 0;border-bottom:1px solid var(--border)}.dyn-row:last-child{border-bottom:none}.dyn-sym{font-family:Georgia,serif;font-style:italic;font-size:1.05rem;font-weight:700;color:var(--accent);text-align:center}.dyn-sym.cresc{font-style:normal;font-size:1.1rem}.dyn-name{font-size:.82rem;font-weight:500}.dyn-def{font-size:.75rem;color:var(--text-muted);grid-column:2;margin-top:-2px}.hint-card-tip p{font-size:.85rem;color:var(--text-muted);line-height:1.6}.hint-card-cta{background:var(--bg-alt)}.hint-card-cta p{font-size:.88rem;color:var(--text-muted);line-height:1.6}@media(max-width:900px){.game-layout{grid-template-columns:1fr}.game-aside{position:static}}
