.side-admin{flex-direction:row;flex-wrap:nowrap}
.side-source-collapsed{display:none!important}
.side-card{position:relative;box-sizing:border-box}
.side-card.reply-flash{outline:2px solid #70c4cc}
.side-card .side-card-open{display:flex;flex-direction:column;gap:.35rem;width:100%;padding:0 2.5rem 0 0;margin:0;background:transparent;border:0;box-shadow:none;color:inherit;font:inherit;text-align:start;white-space:normal;overflow-wrap:anywhere;box-sizing:border-box}
.side-source-info{width:36px;min-width:36px;height:36px;padding:0;line-height:1;font-size:1.25rem}
.side-card>.side-source-info{position:absolute;right:.4rem;top:.4rem}
.side-source-tip{white-space:pre-wrap;overflow-wrap:anywhere;max-height:12rem;overflow:auto;padding:.65rem;border:1px solid #70c4cc66;border-radius:8px;background:#132a33;color:#eefbff;font-size:.85rem}
.side-source-tip[hidden]{display:none}
.side-thread .side-source{max-height:none;overflow:visible;margin:0}
.side-admin input[type="checkbox"]{flex:0 0 auto;margin:0}
.side-card{display:flex;flex-direction:column;gap:.35rem;text-align:start;width:min(100%,36rem);margin:.4rem 0 1rem;padding:.85rem;border:1px solid #70c4cc;border-radius:12px;background:#18343e;color:#eefbff;white-space:normal;overflow-wrap:anywhere}
.side-card small,.side-message small{opacity:.8}.side-preview{display:block;white-space:pre-wrap;overflow-wrap:anywhere}
.side-dialog{width:min(48rem,calc(100vw - 2rem));max-height:90dvh;overflow:auto;background:var(--bg,#14232c);color:var(--text,#fff);border:1px solid #70c4cc;border-radius:14px;padding:1rem}
.side-dialog::backdrop{background:#0009}.side-dialog button{min-height:36px;margin:.2rem}.side-dialog input,.side-dialog textarea{width:100%;box-sizing:border-box}
.side-thread{height:85dvh;display:flex;flex-direction:column;gap:.5rem}.side-thread:not([open]){display:none}.side-thread header{flex:none}.side-thread h2{margin:.25rem 0;overflow-wrap:anywhere;font-size:1.2rem}
.side-toolbar{display:flex;flex-wrap:wrap;gap:.25rem}.side-history{overflow:auto;flex:1;min-height:0;overscroll-behavior:contain}.side-message{padding:.75rem;margin:.5rem 0;background:#ffffff0a;border-radius:10px;overflow-wrap:anywhere}.side-message-body{white-space:pre-wrap}.side-message blockquote{margin:.4rem 0;padding:.4rem;border-inline-start:3px solid #70c4cc;white-space:pre-wrap}.side-source{font-size:.85rem;max-height:5rem;overflow:auto;white-space:pre-wrap}.side-status{margin:0}.side-composer{flex:none}.side-admin{display:flex;align-items:center;gap:.5rem}.side-admin input{width:auto}.side-message button[aria-pressed=true]{outline:2px solid #70c4cc}
@media(max-width:600px){.side-preview-older{display:none}.side-thread{width:100%;height:100dvh;max-height:100dvh;max-width:100%;margin:0;box-sizing:border-box;border-radius:0;padding:.7rem}.side-toolbar button{min-height:44px}}
@media(prefers-reduced-motion:no-preference){.side-thread[open]{animation:side-enter .15s ease-out}@keyframes side-enter{from{transform:translateX(20px);opacity:.5}to{transform:translateX(0);opacity:1}}}

.side-description { margin:.3rem 0;white-space:pre-wrap;overflow-wrap:anywhere;max-height:7rem;overflow:auto;font-size:.9rem; }
.side-paste-preview,.chat-editor-paste-preview { max-height:25dvh;overflow:auto;min-height:0;flex:none; }
.side-paste-preview[hidden],.chat-editor-paste-preview[hidden] { display:none; }
.side-media { display:block;max-width:100%;max-height:18rem;margin:.5rem 0; }
.side-paste-preview .side-media,.chat-editor-paste-preview .side-media { max-height:8rem; }
/* Images fill the side-chat field; preview containers retain their scroll limit. */
.side-message-body img.side-media,.side-paste-preview img.side-media,.chat-editor-paste-preview img.side-media { width:100%;height:auto;max-height:none; }
.side-rich-preview,.side-message-body { overflow-wrap:anywhere;max-width:100%;overflow-x:auto; }
.side-rich-preview table,.side-message-body table { border-collapse:collapse; }
.side-rich-preview :is(td,th),.side-message-body :is(td,th) { border:1px solid var(--border);padding:.3rem; }
.side-attachment-link { display:block;overflow-wrap:anywhere; }
