/* v5: retained history, device sessions, encrypted draft previews and preset thumbnails. */
.folder-tabs { gap: 14px; padding-inline: 14px; overflow-x: auto; scrollbar-width: thin; flex-shrink: 0; }
.folder-tab { flex-shrink: 0; gap: 5px; }
.folder-tab .tab-count:empty { display: none; }
.chat-preview.has-draft { color: var(--text); }
.draft-label { color: var(--danger); font-weight: 600; }
.chat-marquee, .dark .chat-marquee { background: #ffe16a; color: #000; border-bottom-color: #e9cc55; }
.destroyed-notice { padding: 10px 20px; text-align: center; font-size: 12px; color: var(--muted); background: var(--surface-soft); border-bottom: 1px solid var(--line); }
.preset-previews { display: flex; gap: 8px; flex-wrap: wrap; padding-top: 5px; width: 100%; }
.preset-preview { position: relative; width: 82px; height: 66px; border-radius: 8px; overflow: hidden; background: var(--surface-soft); border: 1px solid var(--line); display: flex; align-items: center; justify-content: center; flex: none; }
.preset-preview > img, .preset-preview > video { width: 100%; height: 100%; object-fit: cover; display: block; }
.preset-preview.loading > .icon { color: var(--muted); width: 22px; height: 22px; }
.preset-preview > small { font-size: 10px; color: var(--muted); }
.preset-video-badge { position: absolute; bottom: 3px; right: 3px; border-radius: 4px; background: #000a; color: #fff; font-size: 9px; padding: 2px 4px; display: flex; align-items: center; gap: 2px; pointer-events: none; }
.preset-video-badge .icon { width: 10px; height: 10px; }
.template-row { align-items: flex-start; }
.template-tools { flex-shrink: 0; }
.settings-subpage { justify-content: flex-start; gap: 12px; }
.settings-subpage > .icon:last-child { margin-left: auto; }
.active-sessions { display: flex; flex-direction: column; gap: 16px; }
.active-sessions > .muted { line-height: 1.7; font-size: 12px; }
.device-session-list { display: flex; flex-direction: column; gap: 12px; }
.device-session { display: flex; align-items: flex-start; gap: 12px; padding: 16px; border: 1px solid var(--line); border-radius: 13px; background: var(--surface); }
.device-session > .icon { width: 26px; height: 26px; color: var(--muted); flex-shrink: 0; }
.device-session.current-device { border-color: var(--primary); background: var(--primary-soft); }
.device-session-details { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 7px; }
.device-session-title { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.device-session-title > strong { font-size: 13px; line-height: 1.5; }
.device-session-details p { font-size: 12px; line-height: 1.6; overflow-wrap: anywhere; }
.device-session-details > small { color: var(--muted); font-size: 10px; line-height: 1.5; }
.current-device-badge { color: var(--primary); font-size: 10px; font-weight: 600; }
.device-session > button { white-space: nowrap; font-size: 12px; padding: 2px 0; }
@media (max-width: 600px) {
  .folder-tabs { gap: 13px; padding-inline: 12px; }
  .preset-preview { width: 72px; height: 62px; }
  .device-session { padding: 13px; gap: 10px; }
}
