.key-family{max-width:1100px;margin:auto;padding:8px 0 48px}.key-family h1{letter-spacing:-.4px;margin:0 0 8px;font-size:clamp(32px,5vw,48px);line-height:1.12}.key-family>.key-answer{color:var(--color-text);margin:0 0 16px;font-size:16.5px;line-height:1.4}.key-family>section{border:1px solid var(--color-border);background:var(--color-surface);border-radius:12px;margin:22px 0;padding:22px}.key-family h2,.key-family h3{text-align:left;margin:18px 0 10px}.key-family h2{font-size:clamp(23px,3vw,32px)}.key-family h3{font-size:18px}.key-family p,.key-family li{color:var(--color-muted);line-height:1.65}.key-family>.key-answer{color:var(--color-text)}.key-scroll{max-width:100%;overflow-x:auto}.key-family table{border-collapse:collapse;width:100%;font-size:14.5px}.key-family td,.key-family th{text-align:left;border-bottom:1px solid var(--color-border);vertical-align:top;padding:10px 12px}.key-family caption,.key-family figcaption{text-align:left;color:var(--color-muted);padding:8px 0;font-size:14px}.key-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;display:grid}.key-card{border:1px solid var(--color-border);border-radius:8px;min-width:0;padding:12px}.key-card h3{color:var(--color-text);margin:0 0 6px;font-size:22px}.key-degree{color:var(--color-primary);letter-spacing:.4px;margin:0;font-family:Courier New,monospace;font-size:12px}.key-card svg,.key-scale-svg{width:100%;max-width:220px;height:auto;display:block}.key-piano-svg{background:#fff;border-radius:8px;width:100%;max-width:364px;height:auto;display:block}.key-family button{min-height:44px}.key-actions{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.key-other{margin:0;padding-left:20px}.key-other li{margin:6px 0}#key-status:empty{margin:0}@media (width<=600px){.key-family>section{padding:16px 12px}.key-family td,.key-family th{padding:8px}}
