.cm{border-bottom:1px solid var(--border);background:linear-gradient(180deg, #0b0c09 0%, var(--bg) 100%)}.cm-stage{opacity:0;max-width:1100px;height:clamp(260px,46vh,460px);margin:0 auto;transition:opacity .6s;position:relative}.cm-stage.is-ready{opacity:1}.cm-canvas{touch-action:pan-y;width:100%;height:100%;display:block}.cm-tip{pointer-events:none;border:1px solid var(--accent);white-space:nowrap;z-index:3;background:#0e0f0cf0;gap:2px;padding:7px 10px;display:grid;position:absolute;transform:translate(-50%,calc(-100% - 14px))}.cm-tip strong{color:var(--text);font-size:.72rem;font-weight:500}.cm-tip span{color:var(--accent);font-size:.66rem}.cm-tip em{color:var(--muted);letter-spacing:.06em;text-transform:uppercase;font-size:.58rem;font-style:normal}.cm-hint,.cm-credit{color:var(--muted);letter-spacing:.06em;pointer-events:none;font-size:.6rem;position:absolute}.cm-hint{bottom:14px;left:24px}.cm-hint b{color:var(--accent);font-weight:400}.cm-credit{pointer-events:auto;bottom:14px;right:24px}.cm-credit a{color:var(--muted)}.cm-credit a:hover{color:var(--accent)}.cm-toggle{border:1px solid var(--border);color:var(--muted);font-family:var(--font-body);letter-spacing:.08em;text-transform:uppercase;cursor:pointer;z-index:3;background:#0e0f0cb3;padding:6px 12px;font-size:.6rem;position:absolute;top:16px;right:24px}.cm-toggle:hover{border-color:var(--accent);color:var(--accent)}@media (max-width:640px){.cm-stage{height:240px}.cm-hint{bottom:10px;left:16px}.cm-credit{bottom:10px;right:16px}.cm-toggle{top:10px;right:16px}}
