/* CircleTrust Q2 — media + composer tools */
.ct-plus-tools{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}.ct-plus-toggle{width:36px;height:36px;border:1px solid var(--ct-line);border-radius:50%;background:var(--ct-paper);font:900 1.2rem var(--ct-font-ui);cursor:pointer}.ct-plus-panel{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.ct-plus-panel[hidden]{display:none}.ct-plus-photo{border:1px solid var(--ct-line);border-radius:999px;background:var(--ct-paper);padding:8px 11px;font:800 .68rem var(--ct-font-ui);cursor:pointer}.ct-emoji-strip{display:flex;gap:3px;flex-wrap:wrap}.ct-emoji-strip button{border:0;background:transparent;border-radius:8px;padding:5px;font-size:1.05rem;cursor:pointer}.ct-media-preview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.ct-media-preview-item{position:relative;aspect-ratio:4/3;border:1px solid var(--ct-line);border-radius:10px;overflow:hidden;background:#eee8df}.ct-media-preview-item img{width:100%;height:100%;object-fit:contain}.ct-media-preview-item button{position:absolute;right:5px;top:5px;width:26px;height:26px;border:0;border-radius:50%;background:rgba(20,17,15,.7);color:#fff;cursor:pointer}.parity-reply-media{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:8px;margin:10px 0}.parity-reply-media img{display:block;width:100%;max-height:320px;object-fit:contain;border:1px solid var(--ct-line);border-radius:12px;background:#eee8df}.parity-inline-reply{margin-top:9px;border-top:1px solid var(--ct-line);padding-top:9px}.parity-inline-reply[hidden]{display:none}.parity-inline-reply textarea{width:100%;min-height:72px}.dm-media{display:block;max-width:min(320px,68vw);max-height:360px;object-fit:contain;border-radius:10px;background:#eee8df}.dm-media-wrap{display:grid;gap:6px}.dm-media-caption{font-size:.82rem;line-height:1.35}.dm-attach-preview{display:flex;gap:9px;align-items:center;padding:8px 0}.dm-attach-preview[hidden]{display:none}.dm-attach-preview img{width:76px;height:58px;object-fit:contain;border-radius:9px;border:1px solid var(--ct-line);background:#eee8df}.dm-attach-preview button{border:0;background:transparent;color:var(--ct-sub);cursor:pointer}.dm-tools{padding:7px 0}.dm-tools[hidden]{display:none}@media(max-width:620px){.ct-media-preview{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* VOICE-V1 — private DM voice notes */
.dm-voice-btn{
  appearance:none;
  width:42px;height:42px;min-width:42px;
  display:grid;place-items:center;
  border:1px solid var(--ct-line);
  border-radius:50%;
  background:var(--ct-paper);
  color:var(--ct-ink);
  font-size:1rem;
  cursor:pointer;
}
.dm-voice-btn:hover{border-color:var(--ct-accent)}
.dm-voice-btn.recording{animation:ctVoicePulse 1.1s ease-in-out infinite}
.dm-voice-btn:disabled{opacity:.42;cursor:not-allowed}
@keyframes ctVoicePulse{0%,100%{transform:scale(1)}50%{transform:scale(1.08)}}

.dm-voice-recorder{
  margin:8px 0 4px;
  padding:10px 12px;
  display:flex;align-items:center;gap:9px;flex-wrap:wrap;
  border:1px solid var(--ct-line);
  border-radius:12px;
  background:var(--ct-paper);
  font:700 .76rem/1.2 var(--ct-font-ui);
}
.dm-voice-recorder[hidden]{display:none!important}
.dm-rec-dot{width:9px;height:9px;border-radius:50%;background:#b44336;animation:ctVoiceBlink .9s linear infinite}
@keyframes ctVoiceBlink{50%{opacity:.25}}
.dm-voice-recorder button,.dm-voice-preview button{
  appearance:none;border:1px solid var(--ct-line);border-radius:8px;background:var(--ct-paper);color:var(--ct-ink);
  padding:7px 10px;font:800 .68rem/1 var(--ct-font-ui);cursor:pointer
}
.dm-voice-recorder #dmVoiceStop{border-color:var(--ct-ink);background:var(--ct-ink);color:var(--ct-base)}

.dm-voice-preview{margin:8px 0 4px}
.dm-voice-preview[hidden]{display:none!important}
.dm-voice-preview-card{
  display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;align-items:center;
  padding:10px 12px;border:1px solid var(--ct-line);border-radius:12px;background:var(--ct-paper)
}
.dm-voice-preview-card>div{display:flex;gap:8px;align-items:baseline}
.dm-voice-preview-card>div span{color:var(--ct-sub);font:700 .7rem var(--ct-font-ui)}
.dm-voice-preview-card audio{grid-column:1/-1;width:100%;height:38px}
.dm-voice-preview-card button{grid-column:2;grid-row:1}

.dm-voice-bubble{display:grid;gap:7px;min-width:min(245px,64vw)}
.dm-voice-label{display:flex;align-items:center;gap:7px;font:750 .72rem/1 var(--ct-font-ui)}
.dm-voice-label span:last-child{margin-left:auto;opacity:.7}
.dm-voice-audio{display:block;width:min(290px,66vw);height:38px;max-width:100%}

@media(max-width:620px){
  .dm-voice-btn{width:40px;height:40px;min-width:40px}
  .dm-voice-bubble{min-width:min(230px,72vw)}
  .dm-voice-audio{width:min(270px,72vw)}
}


/* Q2.3 — post-detail photo management */
.parity-post-media-manager{display:grid;gap:9px}
.parity-post-media-manager>button{appearance:none;width:max-content;min-height:38px;padding:0 13px;border:1px solid var(--ct-ink);border-radius:8px;background:var(--ct-ink);color:var(--ct-base);font:800 .72rem/1 var(--ct-font-ui);cursor:pointer}
.parity-post-media-manager>small{color:var(--ct-sub);font:650 .68rem/1.35 var(--ct-font-ui)}
.parity-post-photo-manage{display:flex;gap:8px;flex-wrap:wrap}
.parity-post-photo-manage>span{position:relative;display:block;width:76px;height:76px;overflow:hidden;border:1px solid var(--ct-line);border-radius:8px;background:var(--ct-paper)}
.parity-post-photo-manage img{width:100%;height:100%;object-fit:cover;display:block}
.parity-post-photo-manage button{position:absolute;right:4px;bottom:4px;appearance:none;border:0;border-radius:5px;padding:5px 6px;background:rgba(17,22,20,.84);color:#fff;font:800 .58rem/1 var(--ct-font-ui);cursor:pointer}
