.cmt-wrap { grid-template-columns: minmax(0,1fr); }
.cmt-wrap > * { min-width: 0; }
.cmt-composer,.cmt-replyform,.cmt-field,.cmt-who { min-width: 0; max-width: 100%; }
.cmt-who { overflow-wrap: anywhere; }
.cmt-composer .cmt-field { display: block; border-color: var(--in-line); }
.cmt-composer .cmt-field:focus-within { border-color: var(--in-pink); }
.cmt-composer .cmt-field textarea,.cmt-replyform textarea { display: block; box-sizing: border-box; width: 100%; max-width: 100%; min-width: 0; min-height: 112px; padding: .85rem; resize: vertical; font-size: 1rem; line-height: 1.5; }
.cmt-composer .cmt-field textarea { border: 0 !important; background: transparent !important; border-radius: 0 !important; }
.cmt-composer .cmt-field textarea:focus { box-shadow: none !important; }
.cmt-tools { margin: 0; padding: .75rem; min-width: 0; max-width: 100%; border-top: 1px solid var(--in-line); }
.cmt-replyform .cmt-tools { border-top: 0; padding: .75rem 0; }
.cmt-toolrow { display: flex; align-items: center; gap: .5rem; flex-wrap: wrap; }
.cmt-tools button, .cmt-media button { font: inherit; font-size: .82rem; cursor: pointer; border: 1px solid var(--in-line-soft, #45506b); border-radius: .5rem; background: var(--in-card, #141a29); color: var(--in-text, #e6e9ff); min-height: 44px; min-width: 44px; max-width: 100%; padding: .5rem .7rem; }
.cmt-tools button:hover, .cmt-tools button:focus-visible { border-color: #ff168c; outline: 2px solid transparent; box-shadow: 0 0 0 2px #ff168c66; }
.cmt-toolrow small, .cmt-media-status { font-size: .78rem; color: var(--in-muted, #929db9); overflow-wrap: anywhere; }
.cmt-media-status:not(:empty) { margin-top: .65rem; line-height: 1.5; }
.cmt-emojis { display: grid; grid-template-columns: repeat(auto-fill,minmax(44px,1fr)); gap: .4rem; padding: .75rem; margin-top: .75rem; max-width: 28rem; border: 1px solid var(--in-line); background: var(--in-card); border-radius: .5rem; }
.cmt-emojis button { font-size: 1.25rem; padding: .35rem; }
.cmt-attachment { display: flex; align-items: center; flex-wrap: wrap; gap: .6rem; padding: .6rem; border: 1px dashed #7784a1; border-radius: .65rem; margin-top: .6rem; }
.cmt-attachment img { width: 64px; height: 64px; object-fit: contain; border-radius: .4rem; }
.cmt-attachment span { overflow-wrap: anywhere; flex: 1; min-width: 90px; font-size: .8rem; }
.cmt-media { margin: .65rem 0; max-width: min(100%, 420px); display: flex; flex-direction: column; align-items: start; gap: .4rem; }
.cmt-media img { display: block; width: auto; height: auto; max-width: 100%; max-height: 360px; object-fit: contain; border-radius: .7rem; background: #10131c; }
.spoiler-closed .cmt-media { display: none; }
.cmt-tools [hidden] { display: none !important; }
.cmt-tools button:disabled { opacity: .55; cursor: wait; }
.cmt-composer .cmt-bar { gap: .75rem; padding: .65rem .75rem; border-color: var(--in-line); }
.cmt-composer .cmt-spoiler { min-height: 44px; }
.cmt-composer .cmt-spoiler input { width: 16px; height: 16px; flex: none; }
.cmt-composer .cmt-counter { margin-left: auto; white-space: nowrap; }
.cmt-composer .cmt-send,.cmt-replyform .cmt-send,.cmt-replyform .cmt-cancel { min-height: 44px; }
.cmt-replyform .row { flex-wrap: wrap; }
.moderation-card .cmt-media img, .admin-recent-comment .cmt-media img { max-height: 160px; }
@media (max-width: 480px) { .cmt-toolrow small { flex-basis: 100%; } .cmt-media img { max-height: 280px; } }
