/* Shared post and reply editor; behavior lives in markdown-toolbar.js. */
.markdown-editor{min-width:0;border:1px solid var(--border,#343744);border-radius:14px;overflow:hidden;background:var(--surface,#10151f)}
.markdown-editor:focus-within{border-color:var(--accent,#7865e9)}
.md-toolbar{display:flex;flex-wrap:wrap;gap:3px;padding:7px 9px;border-bottom:1px solid var(--border,#343744);align-items:center}
.md-toolbar button{display:grid;place-items:center;flex:0 0 34px;width:34px;min-height:34px;padding:6px;margin:0;border:0;border-radius:7px;background:transparent;color:var(--text,#dce0ed);cursor:pointer}
.md-toolbar button:hover{background:var(--surface-2,#292c38)}
.md-toolbar button:focus-visible{outline:2px solid var(--accent,#7865e9);outline-offset:-2px}
.md-toolbar svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.md-gif-word{font-size:10px;font-weight:800;letter-spacing:.04em;border:1px solid currentColor;border-radius:4px;padding:2px 3px;line-height:1}
.markdown-editor textarea{display:block;width:100%;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;padding:14px;resize:vertical}
.composer-gif-preview{position:relative;margin:0 14px 14px;overflow:hidden;border:1px solid var(--border,#343744);border-radius:14px;background:#07090d;max-width:520px}
.composer-gif-preview img{display:block;width:100%;max-height:420px;object-fit:contain;background:#07090d}
.composer-gif-remove{position:absolute;top:10px;right:10px;display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;border-radius:999px;background:rgba(0,0,0,.72);color:#fff;font-size:24px;line-height:1;cursor:pointer;box-shadow:0 2px 12px rgba(0,0,0,.35)}
.composer-gif-remove:hover{background:rgba(0,0,0,.9)}
.composer-media-notice{margin-top:8px;padding:9px 11px;border:1px solid var(--border,#343744);border-radius:10px;background:color-mix(in srgb,var(--surface-2,#292c38) 72%,transparent);font-size:.82rem;color:var(--muted,#9aa2b5);line-height:1.4}
.composer-media-notice a{font-weight:700}
.gif-picker{width:min(680px,calc(100vw - 24px));max-height:min(760px,calc(100vh - 24px));padding:0;border:1px solid var(--border,#343744);border-radius:18px;background:var(--surface,#10151f);color:var(--text,#dce0ed);box-shadow:0 24px 80px rgba(0,0,0,.45)}
.gif-picker::backdrop{background:rgba(3,6,12,.72);backdrop-filter:blur(4px)}
.gif-picker-shell{display:flex;flex-direction:column;max-height:min(760px,calc(100vh - 24px));padding:0;margin:0}
.gif-picker-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px 10px}
.gif-picker-head>div{display:flex;flex-direction:column;gap:2px}.gif-picker-head strong{font-size:1.05rem}.gif-picker-head small{color:var(--muted,#9aa2b5)}
.gif-picker-close{border:0;background:transparent;color:inherit;font-size:28px;line-height:1;cursor:pointer;border-radius:8px;width:36px;height:36px}
.gif-picker-close:hover{background:var(--surface-2,#292c38)}
.gif-search{display:flex;align-items:center;gap:8px;margin:0 18px 10px;padding:0 12px;border:1px solid var(--border,#343744);border-radius:999px;background:var(--surface-2,#292c38)}
.gif-search input{width:100%;border:0;background:transparent;color:inherit;padding:11px 0;outline:none}
.gif-picker-status{min-height:22px;padding:0 18px 8px;color:var(--muted,#9aa2b5);font-size:.84rem}
.gif-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:0 18px 18px;overflow:auto}
.gif-tile{display:block;aspect-ratio:1/1;border:0;border-radius:8px;overflow:hidden;padding:0;background:var(--surface-2,#292c38);cursor:pointer;transition:transform .12s ease,outline-color .12s ease}
.gif-tile img{display:block;width:100%;height:100%;object-fit:cover}.gif-tile:hover{outline:2px solid var(--accent,#7865e9);transform:scale(.985)}
@media(max-width:680px){.md-toolbar{gap:2px;padding:6px}.md-toolbar button{flex-basis:32px;width:32px}.gif-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding-inline:12px}.gif-picker-head,.gif-search{margin-inline:12px}.gif-picker-head{padding-inline:0}.gif-search{margin-top:0}.gif-picker-status{padding-inline:12px}.composer-gif-preview{margin-inline:10px;max-width:none}.composer-gif-preview img{max-height:55vh}}
