.cm-page,.cm-context,.cm-home-invite,.cm-admin { --cm-green:var(--accent-text); --cm-border:var(--line); }
.cm-page { padding-bottom:40px; }
.cm-page *, .cm-admin *, .cm-context * { min-width:0; }
.cm-page a,.cm-context a,.cm-admin a { text-underline-offset:4px; }
.cm-header-account { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:8px 13px; border:1px solid var(--line); border-radius:5px; color:var(--accent-text); font-size:.72rem; font-weight:800; white-space:nowrap; }
.broadcast-site-mode .site-header .site-nav { position:static; transform:none; margin-left:auto; }
.broadcast-site-mode .site-header .header-actions { margin-left:10px; }
.broadcast-site-mode .site-header { gap:18px; }
.cm-subnav { display:flex; flex-wrap:wrap; gap:12px 26px; padding:20px 0; border-bottom:1px solid var(--line); }
.cm-subnav a { font-size:.76rem; color:var(--muted); font-weight:650; }
.cm-subnav a:hover { color:var(--ink); }
.cm-subnav a:last-child { margin-left:auto; color:var(--accent-text); }
.cm-kicker,.cm-mono,.cm-entry-num { font:700 .65rem/1.5 ui-monospace,SFMono-Regular,Consolas,monospace; letter-spacing:.13em; text-transform:uppercase; color:var(--accent-text); }
.cm-kicker { display:block; }
.cm-kicker i { display:inline-block; width:7px; height:7px; margin-right:7px; border-radius:50%; background:currentColor; }
.cm-hero { display:grid; grid-template-columns:1.35fr .8fr; gap:7%; align-items:center; padding:60px 0 46px; }
.cm-hero h1 { margin:18px 0 22px; font-size:clamp(3.3rem,6.3vw,6.4rem); font-weight:850; line-height:1.02; letter-spacing:-.065em; }
.cm-hero h1 em { color:var(--accent-text); font-style:normal; }
.cm-hero-copy>p { max-width:570px; color:var(--muted); font-size:1.1rem; line-height:1.8; }
.cm-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px 22px; }
.cm-hero .cm-actions { margin-top:28px; }
.cm-button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:46px; padding:12px 20px; border:1px solid var(--line); border-radius:7px; font:750 .8rem/1.4 var(--body); text-decoration:none; cursor:pointer; transition:background-color .15s,border-color .15s; }
.cm-primary { background:var(--accent); color:#071008; border-color:var(--accent); }
html[data-theme="light"] .cm-primary { background:#267a45; border-color:#267a45; color:#fff; }
.cm-primary:hover { filter:brightness(1.08); }
.cm-secondary { color:var(--ink); background:var(--surface); }
.cm-secondary:hover { background:var(--surface-2); border-color:var(--accent-text); }
.cm-danger { background:#a62e2e; color:#fff; border-color:#a62e2e; }
.cm-text-link { font-size:.8rem; font-weight:750; color:var(--accent-text); }
.cm-text-link:hover { text-decoration:underline; }
.cm-text-button { padding:5px 0; border:0; background:none; color:var(--accent-text); cursor:pointer; font-size:.78rem; font-weight:700; text-decoration:underline; text-underline-offset:4px; }
.cm-trust { display:flex; flex-wrap:wrap; gap:20px; margin-top:28px; color:var(--muted); font-size:.72rem; }
.cm-trust span::before { content:'✓'; margin-right:7px; color:var(--accent-text); }
.cm-welcome-panel { overflow:hidden; border:1px solid var(--line); border-radius:14px; background:var(--surface); box-shadow:0 14px 50px color-mix(in srgb,var(--accent) 7%,transparent); }
.cm-panel-label { display:flex; justify-content:space-between; gap:10px; padding:16px 20px; border-bottom:1px solid var(--line); font:650 .57rem ui-monospace,monospace; color:var(--muted); letter-spacing:.12em; }
.cm-signal-art { height:235px; position:relative; display:grid; place-items:center; background:radial-gradient(circle,color-mix(in srgb,var(--accent) 10%,transparent),transparent 70%); }
.cm-signal-ring { position:absolute; width:110px; height:110px; border:1px solid color-mix(in srgb,var(--accent-text) 24%,transparent); border-radius:50%; }
.cm-signal-ring:nth-child(2) { width:170px; height:170px; }
.cm-signal-ring:nth-child(3) { width:225px; height:225px; }
.cm-signal-art strong { position:relative; text-align:center; font-size:2.8rem; letter-spacing:-.1em; line-height:1; color:var(--accent-text); }
.cm-signal-art strong span { display:block; margin-top:12px; font:700 .48rem ui-monospace,monospace; letter-spacing:.22em; }
.cm-signal-art i { position:absolute; width:13px; height:13px; background:var(--accent-text); border:4px solid var(--surface); box-sizing:content-box; border-radius:50%; left:calc(50% + 72px); top:52px; }
.cm-signal-art i:nth-last-child(2) { left:calc(50% - 103px); top:128px; background:var(--broadcast-cyan,var(--accent-text)); }
.cm-signal-art i:last-child { left:calc(50% + 14px); top:189px; background:var(--broadcast-pink,var(--accent-text)); }
.cm-welcome-bottom { padding:16px 22px 22px; border-top:1px solid var(--line); }
.cm-welcome-bottom p { margin:9px 0 0; font-size:1.4rem; font-weight:750; letter-spacing:-.03em; line-height:1.4; }
.cm-entry-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; padding-bottom:44px; border-bottom:1px solid var(--line); }
.cm-entry { display:block; padding:24px; background:var(--surface); border:1px solid var(--line); border-radius:9px; position:relative; }
.cm-entry:hover { background:var(--surface-2); border-color:var(--accent-text); }
.cm-entry h2 { margin:13px 0 6px; font-size:1.2rem; letter-spacing:-.035em; }
.cm-entry p { margin:0; color:var(--muted); font-size:.85rem; }
.cm-entry>span:last-child { position:absolute; right:22px; top:20px; color:var(--accent-text); }
.cm-main-grid { display:grid; grid-template-columns:minmax(0,1.7fr) minmax(280px,1fr); gap:32px; padding-top:40px; }
.cm-section-head { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:20px; }
.cm-section-head h2 { margin:6px 0 0; font-size:clamp(1.4rem,2.3vw,2rem); line-height:1.25; letter-spacing:-.04em; }
.cm-section-head p { max-width:760px; color:var(--muted); }
.cm-section-head>.cm-text-link { white-space:nowrap; }
.cm-filters { display:flex; flex-wrap:wrap; gap:8px; margin:18px 0 24px; }
.cm-filters a { padding:8px 12px; border:1px solid var(--line); border-radius:5px; font-size:.72rem; color:var(--muted); background:var(--bg); }
.cm-filters a[aria-current],.cm-filters a:hover { color:var(--accent-text); border-color:var(--accent-text); background:var(--surface-2); }
.cm-card { padding:26px; border:1px solid var(--line); border-radius:10px; background:var(--surface); margin-bottom:20px; overflow-wrap:anywhere; }
.cm-card h2 { margin:7px 0 16px; font-size:1.5rem; letter-spacing:-.035em; line-height:1.25; }
.cm-card h3 { margin:16px 0 10px; font-size:1.16rem; line-height:1.4; letter-spacing:-.02em; }
.cm-card p { color:var(--muted); font-size:.92rem; line-height:1.75; }
.cm-card-top { display:flex; align-items:center; justify-content:space-between; gap:10px; }
.cm-tag,.cm-featured,.cm-status { display:inline-flex; padding:4px 8px; border:1px solid var(--line); border-radius:4px; color:var(--accent-text); font:650 .6rem/1.5 ui-monospace,monospace; text-transform:uppercase; letter-spacing:.07em; }
.cm-featured { color:var(--broadcast-pink,var(--accent-text)); }
.cm-preserve { white-space:pre-wrap; overflow-wrap:anywhere; }
.cm-author { display:flex; align-items:center; gap:10px; margin:20px 0; }
.cm-author>img,.cm-avatar { width:38px; height:38px; border-radius:50%; object-fit:cover; }
.cm-avatar { display:grid; place-items:center; font-weight:750; color:var(--accent-text); background:var(--surface-2); border:1px solid var(--line); }
.cm-author strong { font-size:.81rem; }
.cm-author small { display:block; margin-top:2px; color:var(--muted); font-size:.68rem; }
.cm-artist-reply { padding:15px 18px; margin:15px 0 20px; border-left:3px solid var(--accent-text); background:var(--surface-2); border-radius:0 6px 6px 0; }
.cm-artist-reply p { margin:8px 0 0; color:var(--ink); }
.cm-artist-badge { color:var(--accent-text); font-size:.74rem; font-weight:800; }
.cm-artwork { width:100%; max-height:420px; height:auto; object-fit:contain; margin-top:20px; background:var(--surface-2); border-radius:5px; }
.cm-empty { min-height:350px; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; padding:38px; border:1px dashed var(--line); border-radius:10px; background:color-mix(in srgb,var(--surface) 80%,transparent); }
.cm-empty-icon { font-size:3rem; line-height:1; color:var(--accent-text); }
.cm-empty h3 { font-size:1.6rem; letter-spacing:-.04em; margin:22px 0 10px; }
.cm-empty p { max-width:430px; color:var(--muted); font-size:.93rem; }
.cm-empty small { max-width:380px; color:var(--muted); margin-top:20px; font-size:.72rem; }
.cm-spotlight-section { margin-top:38px; }
.cm-spotlight-empty { display:flex; align-items:flex-start; gap:24px; padding:28px; background:var(--surface-2); border:1px solid var(--line); border-radius:9px; }
.cm-spotlight-empty>span { font-size:2.5rem; color:var(--accent-text); }
.cm-spotlight-empty h3 { margin:0 0 8px; font-size:1.2rem; }
.cm-spotlight-empty p { color:var(--muted); font-size:.88rem; }
.cm-sidebar>.cm-card { margin-bottom:22px; }
.cm-sidebar .cm-kicker { font-size:.58rem; }
.cm-poll+.cm-poll { border-top:1px solid var(--line); padding-top:18px; margin-top:24px; }
.cm-poll h3 { font-size:1rem; }
.cm-poll>small { display:block; margin-bottom:16px; color:var(--muted); font-size:.68rem; }
.cm-poll-option { display:flex!important; flex-direction:row!important; gap:12px; align-items:center; padding:12px; margin:0 0 8px!important; border:1px solid var(--line); border-radius:5px; background:var(--bg); font-size:.83rem; cursor:pointer; }
.cm-poll-option:has(input:checked) { border-color:var(--accent-text); background:var(--surface-2); }
.cm-poll-result { margin:14px 0; }
.cm-poll-result>div { display:flex; justify-content:space-between; gap:10px; font-size:.8rem; }
.cm-poll-result progress { display:block; width:100%; height:6px; margin-top:7px; border:0; border-radius:9px; overflow:hidden; background:var(--surface-2); accent-color:var(--accent-text); }
.cm-poll-result progress::-webkit-progress-bar { background:var(--surface-2); }
.cm-poll-result progress::-webkit-progress-value { background:var(--accent-text); }
.cm-outcome { border-top:1px solid var(--line); padding-top:16px; margin-top:20px; font-size:.85rem; }
.cm-event { padding:18px 0; border-top:1px solid var(--line); }
.cm-event time { display:block; font-size:.78rem; color:var(--accent-text); }
.cm-event form { margin-top:14px; }
.cm-values { background:var(--surface-2); }
.cm-bottom-note { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:34px 0 0; margin-top:40px; border-top:1px solid var(--line); }
.cm-bottom-note a { color:var(--muted); font-size:.72rem; }
.cm-updates { margin:30px 0 0; }
.cm-updates article { padding:24px 28px; border:1px solid var(--line); border-left:3px solid var(--accent-text); border-radius:7px; background:var(--surface); margin-bottom:14px; }
.cm-updates h2 { font-size:1.3rem; margin:10px 0; }
.cm-updates p { color:var(--muted); font-size:.92rem; }
.cm-auth-grid { display:grid; grid-template-columns:1fr 1fr; gap:9%; max-width:1100px; margin:60px auto; align-items:start; }
.cm-auth-intro { padding-top:24px; }
.cm-auth-intro h1,.cm-page-heading h1,.cm-account-heading h1,.cm-profile-header h1,.cm-policy h1 { font-size:clamp(2.2rem,4.6vw,4.2rem); line-height:1.07; letter-spacing:-.055em; margin:18px 0; font-weight:800; }
.cm-auth-intro>p { max-width:420px; font-size:1.04rem; line-height:1.8; color:var(--muted); }
.cm-auth-points { margin:30px 0; }
.cm-auth-points p { font-size:.87rem; margin:18px 0; }
.cm-auth-points span { font:700 .7rem ui-monospace,monospace; color:var(--accent-text); margin-right:15px; }
.cm-auth-form { padding:32px; }
.cm-auth-footer { border-top:1px solid var(--line); padding-top:18px; margin-top:24px; font-size:.8rem; color:var(--muted); }
.cm-auth-footer a,.cm-policy a,.cm-form a,.cm-notice a { color:var(--accent-text); text-decoration:underline; }
.cm-form { display:flex; flex-direction:column; gap:9px; }
.cm-form>label:not(.cm-check),.cm-form>div>label,.cm-form-columns>label { margin-top:12px; color:var(--ink); font-size:.81rem; font-weight:700; }
.cm-form label:not(.cm-check):not(.cm-poll-option) { display:flex; flex-direction:column; gap:7px; }
.cm-form input:not([type=checkbox]):not([type=radio]),.cm-form select,.cm-form textarea { width:100%; max-width:100%; padding:12px; background:var(--bg); color:var(--ink); border:1px solid var(--line); border-radius:5px; font:400 .9rem/1.5 var(--body); }
.cm-form input:focus,.cm-form select:focus,.cm-form textarea:focus { outline:2px solid var(--accent-text); outline-offset:2px; }
.cm-form textarea { resize:vertical; }
.cm-form small,.cm-card>small { color:var(--muted); font-size:.71rem; line-height:1.6; }
.cm-form fieldset { border:0; padding:0; margin:0; }
.cm-form .cm-check { display:flex; align-items:flex-start; gap:11px; font-size:.77rem; font-weight:400; line-height:1.7; margin:12px 0 0; }
.cm-form input[type=checkbox],.cm-form input[type=radio] { width:18px; height:18px; min-width:18px; margin:3px 0 0; accent-color:var(--accent-text); }
.cm-form .cm-button { align-self:flex-start; margin-top:14px; }
.cm-form [hidden] { display:none!important; }
.cm-form [data-cm-artwork],.cm-form [data-cm-playlist] { display:flex; flex-direction:column; gap:9px; padding-top:12px; }
.cm-form-columns { display:grid; grid-template-columns:1fr 1fr; gap:15px; }
.cm-honeypot { position:absolute!important; width:1px!important; height:1px!important; opacity:0; overflow:hidden; pointer-events:none; }
.cm-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.cm-notice { padding:17px; margin:15px 0; border:1px solid var(--line); border-left:3px solid var(--accent-text); background:var(--surface-2); border-radius:6px; font-size:.85rem; }
.cm-notice p { margin:6px 0; }
.cm-page-heading { margin:45px 0 32px; }
.cm-page-heading>p { max-width:650px; color:var(--muted); }
.cm-editor-grid { display:grid; grid-template-columns:1.6fr 1fr; align-items:start; gap:32px; }
.cm-steps { padding-left:22px; color:var(--muted); font-size:.9rem; }
.cm-steps li { padding:6px 0; }
.cm-post-layout { max-width:820px; margin:38px auto; }
.cm-post-layout>.cm-card { margin-top:22px; }
.cm-post-layout .cm-post-card h3 { font-size:clamp(1.7rem,3vw,2.6rem); letter-spacing:-.045em; }
.cm-post-layout .cm-post-card p { font-size:1rem; }
.cm-context-link { display:block; padding:18px; margin-bottom:25px; border:1px solid var(--line); color:var(--accent-text); font-weight:700; border-radius:6px; }
.cm-replies { margin-top:35px; }
.cm-report { margin:30px 0; color:var(--muted); font-size:.78rem; }
.cm-report summary,.cm-card summary { cursor:pointer; font-weight:750; padding:6px 0; }
.cm-profile-header { display:flex; gap:30px; align-items:center; margin:50px 0 40px; }
.cm-profile-header>img,.cm-profile-initial { width:100px; height:100px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.cm-profile-initial { display:grid; place-items:center; background:var(--surface-2); border:1px solid var(--line); color:var(--accent-text); font-size:2.5rem; }
.cm-profile-header h1 { margin:12px 0 5px; }
.cm-profile-header p { max-width:650px; }
.cm-profile-feed { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; }
.cm-muted { color:var(--muted); }
.cm-account-heading { display:flex; justify-content:space-between; align-items:center; gap:24px; margin:40px 0 25px; }
.cm-account-heading h1 { font-size:clamp(2rem,4vw,3.5rem); }
.cm-account-heading p { color:var(--muted); }
.cm-account-grid { display:grid; grid-template-columns:1.5fr 1fr; gap:28px; align-items:start; }
.cm-account-item { padding:22px 0; border-top:1px solid var(--line); }
.cm-account-item h3 { margin:12px 0 5px; }
.cm-status-pending { color:var(--muted); }
.cm-status-declined,.cm-status-withdrawn { color:var(--danger); }
.cm-saved-list,.cm-notifications { padding:0; list-style:none; }
.cm-saved-list li { display:flex; justify-content:space-between; align-items:center; gap:18px; padding:12px 0; border-bottom:1px solid var(--line); font-size:.87rem; }
.cm-notifications li { border-top:1px solid var(--line); font-size:.85rem; }
.cm-notifications a { display:block; padding:15px 10px; }
.cm-notifications small { display:block; color:var(--muted); margin-top:7px; }
.cm-unread { border-left:3px solid var(--accent-text); background:var(--surface-2); }
.cm-avatar-preview { display:flex; align-items:center; gap:15px; margin:15px 0; }
.cm-avatar-preview img { width:70px; height:70px; border-radius:50%; object-fit:cover; }
.cm-verification { display:flex; align-items:center; gap:24px; justify-content:space-between; }
.cm-verification .cm-button { white-space:nowrap; }
.cm-delete-account { margin-top:28px; border-top:1px solid var(--line); padding-top:20px; }
.cm-policy { max-width:780px; margin:48px auto; }
.cm-policy h2 { font-size:1.3rem; margin:30px 0 10px; }
.cm-policy p { font-size:.97rem; line-height:1.9; color:var(--muted); }
.cm-home-invite { display:flex; justify-content:space-between; align-items:center; gap:32px; padding:30px; margin:24px 0 30px; border:1px solid var(--line); border-radius:10px; background:var(--surface); }
.cm-home-invite h2 { font-size:clamp(1.5rem,2.6vw,2.5rem); letter-spacing:-.05em; line-height:1.15; margin:10px 0; }
.cm-home-invite p { max-width:650px; color:var(--muted); margin:0; font-size:.9rem; }
.cm-home-invite>.cm-button { flex-shrink:0; }
.cm-context { padding-block:40px; border-top:1px solid var(--line); }
.cm-context-feed { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-top:25px; }
.cm-track-list { padding-left:22px; }
.cm-track-list li { padding:12px; border-bottom:1px solid var(--line); }
.cm-track-list a { display:flex; justify-content:space-between; gap:20px; font-size:.9rem; }
.cm-pagination { margin:22px 0; }
.cm-admin { padding-bottom:40px; }
.cm-admin .admin-panel { margin-bottom:24px; }
.cm-admin .cm-form { max-width:850px; }
.cm-admin .cm-form>.cm-button { max-width:100%; }
.cm-admin-image { display:block; max-width:min(100%,500px); max-height:400px; object-fit:contain; height:auto; margin:18px 0; }
.cm-submitted-text { padding:20px; margin:20px 0; background:var(--surface-2); border:1px solid var(--line); border-radius:6px; }
.cm-admin-table-wrap { overflow:auto; }
.cm-admin-table { width:100%; border-collapse:collapse; font-size:.85rem; }
.cm-admin-table th,.cm-admin-table td { padding:16px; text-align:left; border-bottom:1px solid var(--line); }
.admin-header { flex-wrap:wrap; gap:18px; padding-block:18px; }
.admin-header nav { flex-wrap:wrap; gap:15px; }
@media(min-width:1600px) { .cm-hero { gap:12%; padding-inline:40px; } }
@media(max-width:1100px) { .broadcast-site-mode .site-header .global-hit-counter { display:none; } .cm-main-grid { gap:22px; } .cm-card { padding:22px; } }
@media(min-width:681px) and (max-width:980px) { .broadcast-site-mode .site-header .site-nav { position:static; transform:none; margin-left:auto; } .cm-header-account { padding-inline:10px; } }
@media(max-width:800px) { .cm-hero { grid-template-columns:1.35fr .85fr; gap:28px; } .cm-hero h1 { font-size:3.7rem; } .cm-panel-label { font-size:.47rem; padding-inline:14px; } .cm-welcome-bottom { padding:16px; } .cm-welcome-bottom p { font-size:1.2rem; } .cm-main-grid,.cm-editor-grid { grid-template-columns:1fr; } .cm-sidebar { display:grid; grid-template-columns:1fr 1fr; gap:20px; align-items:start; } .cm-sidebar .cm-values { grid-column:1/-1; } .cm-account-grid { grid-template-columns:1.2fr 1fr; gap:18px; } .cm-auth-grid { gap:30px; } .cm-profile-feed { grid-template-columns:1fr 1fr; } }
@media(max-width:680px) {
 .broadcast-site-mode .site-header { gap:10px; flex-wrap:nowrap; } .broadcast-site-mode .site-header .header-actions { margin-left:auto; gap:6px; }
 .broadcast-site-mode .site-header .site-nav { position:absolute; margin-left:0; } .broadcast-site-mode .site-nav a { gap:7px; } .broadcast-site-mode .site-nav a span { display:inline; font-size:.58rem; } .cm-header-account { padding:8px 10px; font-size:.65rem; min-height:38px; }
 .cm-subnav { padding:15px 0; gap:11px 18px; } .cm-subnav a { font-size:.68rem; } .cm-subnav a:last-child { margin-left:0; }
 .cm-hero { grid-template-columns:1fr; gap:28px; padding:34px 0 28px; } .cm-hero h1 { font-size:clamp(2.9rem,11vw,4.5rem); margin:16px 0; } .cm-hero-copy>p { font-size:.98rem; } .cm-hero .cm-actions { margin-top:22px; gap:16px; } .cm-trust { font-size:.65rem; gap:14px; margin-top:23px; }
 .cm-welcome-panel { display:none; } .cm-entry-grid { grid-template-columns:1fr; gap:10px; padding-bottom:28px; } .cm-entry { padding:17px 20px; } .cm-entry h2 { margin:6px 0 3px; font-size:1.08rem; } .cm-entry p { font-size:.8rem; } .cm-entry-num { font-size:.55rem; }
 .cm-main-grid { padding-top:28px; } .cm-sidebar { grid-template-columns:1fr; } .cm-sidebar .cm-values { grid-column:auto; }
 .cm-section-head { align-items:flex-start; gap:12px; } .cm-section-head h2 { font-size:1.55rem; } .cm-section-head>.cm-text-link { font-size:.7rem; margin-top:6px; }
 .cm-empty { padding:28px 18px; min-height:310px; } .cm-empty h3 { font-size:1.4rem; } .cm-card { padding:22px 19px; } .cm-filters { gap:6px; } .cm-filters a { font-size:.65rem; padding:8px 10px; }
 .cm-spotlight-empty { padding:22px; gap:16px; } .cm-auth-grid { grid-template-columns:1fr; margin:25px auto; gap:25px; } .cm-auth-intro { padding-top:8px; } .cm-auth-points { display:none; } .cm-auth-intro h1 { font-size:2.7rem; } .cm-auth-intro>p { font-size:.9rem; } .cm-auth-intro>.cm-text-link { display:none; }
 .cm-editor-grid,.cm-account-grid { grid-template-columns:1fr; } .cm-page-heading { margin-top:30px; } .cm-page-heading h1 { font-size:2.6rem; } .cm-account-heading { flex-direction:column; align-items:flex-start; margin-top:30px; gap:10px; } .cm-account-heading h1 { margin-top:10px; }
 .cm-verification { flex-direction:column; align-items:flex-start; gap:12px; } .cm-form-columns { grid-template-columns:1fr; } .cm-profile-header { align-items:flex-start; gap:18px; margin-top:32px; } .cm-profile-header>img,.cm-profile-initial { width:65px; height:65px; font-size:1.8rem; } .cm-profile-header h1 { font-size:2.1rem; } .cm-profile-feed { grid-template-columns:1fr; }
 .cm-home-invite { flex-direction:column; align-items:flex-start; gap:22px; padding:23px; margin-top:20px; } .cm-home-invite .cm-kicker { font-size:.54rem; } .cm-context-feed { grid-template-columns:1fr; } .cm-context { padding-block:30px; } .cm-context .cm-section-head h2 { font-size:1.6rem; }
 .cm-policy { margin-top:30px; } .cm-policy h1 { font-size:2.7rem; } .cm-policy p { font-size:.9rem; } .cm-bottom-note .cm-mono { font-size:.5rem; } .cm-post-layout .cm-post-card h3 { font-size:1.8rem; }
 .cm-form input:not([type=checkbox]):not([type=radio]),.cm-form textarea,.cm-form select { font-size:16px; } .cm-header-account span { display:none; }
}
@media(prefers-reduced-motion:reduce) { .cm-button { transition:none; } }
.cm-song-social { grid-column:1/-1; }
.cm-song-likes { padding:20px 0; border-bottom:1px solid var(--line); scroll-margin-top:20px; }
.cm-like-bar { display:flex; align-items:center; flex-wrap:wrap; gap:14px 20px; }
.cm-like-bar form { margin:0; }
.cm-like-button { display:inline-flex; align-items:center; justify-content:center; gap:9px; min-height:44px; padding:10px 20px; color:var(--muted); background:var(--surface); border:1px solid var(--line); border-radius:7px; font:750 .85rem var(--body); cursor:pointer; }
.cm-like-button svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.cm-like-button.is-liked { color:#69aaff; border-color:#4578b8; background:#102943; }
html[data-theme="light"] .cm-like-button.is-liked { color:#1767c5; border-color:#b9d3f4; background:#eaf3ff; }
.cm-like-button.is-liked svg { fill:currentColor; stroke-width:1; }
.cm-like-button:hover { border-color:#1877f2; color:#1877f2; }
.cm-like-button:disabled { opacity:.6; cursor:wait; }
.cm-like-summary { display:inline-flex; align-items:center; gap:10px; color:var(--muted); font-size:.8rem; }
.cm-like-summary:hover { color:var(--accent-text); text-decoration:underline; }
.cm-like-avatars { display:flex; padding-left:7px; }
.cm-like-avatars>img,.cm-like-avatars>span { width:33px; height:33px; border-radius:50%; border:2px solid var(--bg); margin-left:-7px; object-fit:cover; background:var(--surface-2); }
.cm-like-avatars>span { display:grid; place-items:center; color:var(--muted); font-size:.7rem; }
.cm-like-help { font-size:.7rem!important; color:var(--muted); margin:12px 0 0; }
.cm-like-help a { color:var(--accent-text); text-decoration:underline; text-underline-offset:3px; }
.cm-like-error { display:block; margin-top:10px; color:var(--danger); font-size:.8rem; }
.cm-demo-badge { display:inline-flex; align-items:center; flex-shrink:0; padding:4px 8px; font:700 .63rem ui-monospace,monospace; color:var(--broadcast-pink,var(--accent-text)); border:1px solid var(--line); border-radius:4px; text-transform:uppercase; letter-spacing:.07em; }
.cm-demo-section { padding:28px 0; border-bottom:1px solid var(--line); }
.cm-demo-section .cm-section-head p { margin:10px 0 0; font-size:.85rem; }
.cm-demo-profile-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.cm-demo-profile { display:flex; align-items:center; gap:14px; padding:19px; border:1px solid var(--line); border-radius:9px; background:var(--surface); }
.cm-demo-profile:hover { border-color:var(--accent-text); }
.cm-demo-profile img { width:66px; height:66px; border-radius:50%; object-fit:cover; flex-shrink:0; }
.cm-demo-profile strong { display:block; font-size:.88rem; }
.cm-demo-profile small { display:block; margin-top:3px; color:var(--muted); font-size:.66rem; }
.cm-demo-profile em { display:block; margin-top:8px; font-size:.7rem; font-style:normal; color:var(--accent-text); }
.cm-likers-list { padding:0; margin:0; list-style:none; }
.cm-likers-list li { display:flex; align-items:center; gap:15px; padding:17px 0; border-bottom:1px solid var(--line); }
.cm-likers-list li:last-child { border-bottom:0; }
.cm-likers-list img,.cm-likers-list .cm-avatar { width:54px; height:54px; object-fit:cover; border-radius:50%; flex-shrink:0; }
.cm-likers-list strong { font-size:.94rem; }
.cm-likers-list small { display:block; margin-top:4px; font-size:.73rem; color:var(--muted); }
.cm-likers-list .cm-demo-badge { margin-left:auto; }
.cm-likers-page .cm-page-heading h1 { font-size:clamp(2rem,4vw,3.6rem); }
.cm-profile-likes { margin:30px 0; }
.cm-join-placeholder { position:relative; display:flex; align-items:center; gap:14px; padding:19px; border:1px dashed var(--accent-text); border-radius:9px; background:color-mix(in srgb,var(--surface-2) 50%,var(--bg)); color:var(--accent-text); text-decoration:none; min-height:104px; }
.cm-join-placeholder:hover,.cm-join-placeholder:focus-visible { background:var(--surface-2); border-style:solid; }
.cm-join-placeholder:focus-visible { outline:3px solid var(--accent-text); outline-offset:4px; }
.cm-join-portrait { display:grid; place-items:center; width:58px; height:58px; flex-shrink:0; border:1px dashed var(--accent-text); border-radius:50%; background:var(--bg); }
.cm-join-portrait svg { width:34px; height:34px; fill:none; stroke:currentColor; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round; }
.cm-join-plus { stroke-width:2; }
.cm-join-copy strong { display:block; font-size:.88rem; }
.cm-join-copy small { display:block; margin-top:4px; color:var(--muted); font-size:.66rem; line-height:1.5; }
.cm-join-copy em { display:block; margin-top:8px; font-size:.7rem; font-style:normal; font-weight:700; }
.cm-join-tooltip { position:absolute; z-index:60; top:calc(100% + 9px); right:0; width:max-content; max-width:180px; padding:9px 12px; border-radius:6px; background:var(--ink); color:var(--bg); box-shadow:var(--shadow); font-size:.76rem; font-weight:700; line-height:1.4; opacity:0; visibility:hidden; pointer-events:none; }
.cm-join-tooltip::before { content:''; position:absolute; right:18px; top:-5px; width:10px; height:10px; background:var(--ink); transform:rotate(45deg); }
.cm-join-placeholder:focus-visible .cm-join-tooltip { opacity:1; visibility:visible; }
.cm-join-profile { margin-left:auto; max-width:310px; }
.cm-profile-header:has(>.cm-join-profile) { flex-wrap:wrap; }
.cm-join-avatar { min-height:44px; padding:0; border:0; background:none; gap:6px; flex-shrink:0; }
.cm-join-avatar:hover,.cm-join-avatar:focus-visible { background:none; }
.cm-join-avatar .cm-join-portrait { width:34px; height:34px; }
.cm-join-avatar .cm-join-portrait svg { width:23px; height:23px; }
.cm-join-mini { font-size:.72rem; font-weight:750; }
.cm-join-row { margin-top:18px; min-height:90px; }
.cm-listener-grid-join { grid-template-columns:repeat(5,minmax(0,1fr)); }
@media(hover:hover) { .cm-join-placeholder:hover .cm-join-tooltip { opacity:1; visibility:visible; } }
@media(max-width:1100px) { .cm-listener-grid-join { grid-template-columns:repeat(2,minmax(0,1fr)); } .cm-listener-grid-join>.cm-join-card { grid-column:1/-1; justify-content:center; } }
@media(max-width:680px) { .cm-join-profile { margin-left:0; width:100%; max-width:none; } .cm-join-placeholder:not(.cm-join-avatar) { padding:16px; min-height:94px; } .cm-join-portrait { width:52px; height:52px; } .cm-join-avatar .cm-join-portrait { width:32px; height:32px; } .cm-join-copy strong { font-size:.86rem; } .cm-join-row .cm-join-tooltip,.cm-join-profile .cm-join-tooltip,.cm-join-card .cm-join-tooltip { right:10px; } }
@media(max-width:1100px) { .cm-demo-profile-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:680px) { .cm-demo-profile-grid { grid-template-columns:1fr 1fr; gap:10px; } .cm-demo-profile { flex-direction:column; text-align:center; padding:18px 10px; gap:10px; } .cm-demo-profile img { width:64px; height:64px; } .cm-demo-section>.cm-section-head { flex-direction:column; gap:10px; } .cm-like-bar { gap:12px; } .cm-like-button { padding-inline:15px; } .cm-like-summary { font-size:.74rem; } .cm-like-help { line-height:1.6; } }
.cm-song-stats { display:inline-flex; align-items:center; flex-wrap:wrap; gap:8px; margin-top:5px; vertical-align:middle; }
.cm-song-stat { display:inline-flex; align-items:center; justify-content:center; gap:5px; min-height:30px; padding:3px 7px; border:1px solid var(--line); border-radius:6px; color:var(--accent-text); background:var(--surface); font:700 .72rem ui-sans-serif,system-ui,sans-serif; text-decoration:none; white-space:nowrap; }
.cm-song-stat:hover { background:var(--surface-2); border-color:var(--accent-text); }
.cm-song-stat:focus-visible { outline:2px solid var(--accent-text); outline-offset:3px; }
.cm-song-stat svg,.cm-like-summary>svg { width:15px; height:15px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.cm-player-track { position:relative; min-width:0; }
.cm-player-track .mini-television { grid-template-columns:58px minmax(0,1fr); padding-right:61px; min-height:48px; }
.cm-player-track .mini-signal { display:none; }
.cm-player-track>.cm-song-stats { position:absolute; top:50%; right:6px; transform:translateY(-50%); flex-direction:column; flex-wrap:nowrap; gap:0; margin:0; }
.cm-player-track .cm-song-stat { min-height:22px; min-width:44px; padding:2px 4px; border:0; background:transparent; font-size:.65rem; }
.cm-player-track .cm-song-stat:hover { background:var(--surface-2); }
.cm-player-track .cm-song-stat svg { width:13px; height:13px; }
.cm-like-bar>.cm-song-stats { margin:0; }
.cm-saved-list li { flex-wrap:wrap; }
.cm-track-list li { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
#song-comments { scroll-margin-top:30px; }
@media(max-width:560px) { .cm-player-track .mini-television { grid-template-columns:76px minmax(0,1fr); } }
