/* 01.10.2026: здесь стояло переопределение акцента в цвет текста
   (`body{--accent:var(--text)…}`) — оно и делало всё приложение чёрно-белым
   («белый чёрный, слишком простенький», надиктовка владельца). Акцент снова
   приходит из tokens.css — тёплый янтарь; прямых hex в этом файле больше нет. */
body.chat-workspace {background:var(--bg);color:var(--text)}
.cw-settings {position:relative;margin-left:auto}
.cw-settings summary {cursor:pointer;min-height:44px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;list-style:none}
.cw-settings-panel {position:absolute;right:0;top:52px;z-index:100;min-width:260px;max-width:90vw;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface);box-shadow:var(--sh-3);display:flex;flex-direction:column;gap:10px}
/* Меню «Настройки» по группам (01.10.2026, nastrojkiGruppy в app.html):
   заголовок группы, одна строка пояснения, кнопки. Пустая группа платного
   (место под галочку исполнителя №5) не показывается. */
.cw-settings-panel {width:min(340px,calc(100vw - 24px));max-height:calc(100dvh - 90px);overflow:auto;gap:0}
.cw-set-group {display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:12px 0;border-top:1px solid var(--line);min-width:0}
.cw-set-group:first-child {border-top:0;padding-top:0}
.cw-set-group:last-child {padding-bottom:0}
.cw-set-group:has(> #nastrojki-platnoe:empty) {display:none}
.cw-set-group h4 {margin:0;font-size:var(--f-xs);letter-spacing:var(--ls-2xs);text-transform:uppercase;color:var(--text-2);font-weight:var(--w-medium)}
.cw-set-note {margin:0;font-size:var(--f-xs);line-height:1.45;color:var(--text-2)}
.cw-set-modes {margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:4px;font-size:var(--f-xs);line-height:1.45;color:var(--text-2)}
.cw-set-modes b {color:var(--text);font-weight:var(--w-medium)}
.cw-settings .mode-zone {display:flex;flex-direction:column;align-items:flex-start;gap:6px}
.cw-settings .mode-zone > span.small:not(.mode-note) {display:none}
.cw-set-group > .btn {align-self:stretch;justify-content:flex-start}
.cw-set-group > .btn-quiet {color:var(--text)}
.cw-set-row {display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;font-size:var(--f-sm);color:var(--text-2)}
#nastrojki-platnoe {width:100%;min-width:0}
.editor-workspace #view {padding:12px;max-width:none}
.editor-workspace .st-top {border:0;background:transparent}
.editor-workspace .st-stage {background:var(--stage-bg);border-radius:14px;overflow:hidden}
.editor-workspace .st-stage video {max-height:44dvh;object-fit:contain;margin:auto}
.editor-workspace .st-side {max-height:52dvh;border-radius:14px}
.editor-workspace .st-side h3 {font-size:16px}
.cw-inspector-section summary {min-height:44px;padding:12px 0;cursor:pointer;font-weight:600}
.editor-workspace .st-side .small {line-height:1.5}
.editor-workspace .st-grid {grid-template-columns:190px minmax(0,1fr) 290px}
.cw-media {display:flex;flex-direction:column;gap:12px;max-height:52dvh;overflow:auto;min-width:0}
.cw-media input {width:100%;min-height:44px;padding:10px;border:1px solid var(--line);border-radius:10px}
.cw-media-list {display:flex;flex-direction:column;gap:10px}
/* Имя материала — одна строка с многоточием, полное имя — в подсказке
   кнопки. Было overflow-wrap:anywhere + обрезка третьей строкой: имя
   «vfx_449f359ca2.mov» рвалось посреди слова, а подпись исходника
   срезалась по высоте (замер 01.10 на 1280 px). */
.cw-media-item {display:flex;align-items:center;gap:10px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:10px;padding:8px;text-align:left;cursor:pointer;min-height:52px;font-size:12px;overflow:hidden;min-width:0}
.cw-media-item[hidden] {display:none}
.cw-media-item img {width:40px;height:40px;object-fit:cover;border-radius:6px;flex-shrink:0}
.cw-media-item:hover {border-color:var(--accent)}
.cw-media-item>span {min-width:0;flex:1 1 auto;display:flex;flex-direction:column;overflow:hidden}
.cw-mi-name {font-weight:var(--w-medium)}
.cw-mi-name,.cw-media-item>span>small {display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.cw-media #cw-media-add {width:100%;flex:0 0 auto}
.cw-media-list {min-width:0}
.editor-workspace .st-scroll .st-row:first-child {position:sticky;top:0;z-index:18}
.cw-media-item small {display:block;color:var(--text-2);font-size:11px;margin-top:2px}
.cw-media-source {border-color:var(--accent);background:var(--accent-soft)}
.cw-media-item>.ic {width:22px;height:22px;flex-shrink:0}
.cw-source-dialog {width:min(960px,90vw);max-height:90dvh;padding:16px;background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:14px}
.cw-source-dialog::backdrop {background:var(--scrim)}
.cw-source-dialog header {display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}
.cw-source-dialog header b {overflow-wrap:anywhere}
.cw-source-dialog button {min-width:44px;min-height:44px;border:0;background:transparent;color:inherit;cursor:pointer}
.cw-source-dialog video {display:block;width:100%;max-height:70dvh;background:var(--stage-bg)}
@media(max-width:1100px){.editor-workspace .st-grid{grid-template-columns:minmax(0,1fr) 290px}.cw-media{grid-column:1/-1;max-height:150px}.cw-media-list{flex-direction:row;overflow:auto}.cw-media-item{min-width:150px;max-width:200px}.cw-media input{max-width:300px}}
.editor-workspace .st-scroll {max-height:30dvh;overflow:auto}
.st-mobile-tabs {display:none}
@media(max-width:760px){.editor-workspace .st-grid{grid-template-columns:1fr}.editor-workspace .st-side{max-height:32dvh}.editor-workspace .st-scroll{max-height:35dvh}.editor-workspace .st-tools button{min-height:44px}.editor-workspace .st-stage video{max-height:38dvh}}
/* Монтажная на экране компьютера (01.10.2026, видение §6.1 и §7): слева
   только исходники и материалы, по центру крупный плеер, справа вкладки.
   Колонки идут за шириной окна, а не стоят числом: на 1920 материалам
   230 px и вкладкам 400, на 1280 — 160 и 288, плеер забирает остальное.
   Было 160 | 1fr | 220: в 220 px правой колонки «Инструменты монтажа»
   переносились, выпадающие списки вылезали за край, а «Добавить материалы»
   не помещалась в 160 px слева (замер 01.10 на 1280 px). Плеер и таймлайн
   стоят на одном экране и внутри панели чата. */
@media(min-width:761px){
  .editor-workspace .st-workbench {height:calc(100dvh - 100px);min-height:520px;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:44px minmax(220px,1fr) minmax(200px,33%);gap:10px}
  .cw-embedded-editor.editor-workspace .st-workbench {height:calc(100dvh - 24px)}
  .editor-workspace .st-workbench .st-grid {grid-template-columns:clamp(160px,12vw,230px) minmax(0,1fr) clamp(288px,21vw,400px);grid-template-rows:minmax(0,1fr);grid-template-areas:"media preview side";min-height:0;min-width:0;gap:10px}
  /* Прокручивается список, а не вся колонка: кнопка «Добавить» всегда видна
     внизу, а не уезжает под край на 1024×768. */
  .editor-workspace .st-workbench .cw-media {grid-area:media;grid-column:auto;max-height:none;height:100%;gap:8px;padding:10px;overflow:hidden}
  .editor-workspace .st-workbench .cw-media-list {flex-direction:column;flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto}
  .editor-workspace .st-workbench .cw-media-item {min-width:0;max-width:none;flex-shrink:0}
  .editor-workspace .st-workbench .cw-media h3 {font-size:14px}
  .editor-workspace .st-workbench .cw-media>p {display:none}
  .editor-workspace .st-preview-column {grid-area:preview}
  .editor-workspace .st-preview-column,.editor-workspace .st-preview-card {min-height:0;min-width:0;height:100%}
  .editor-workspace .st-preview-card {display:flex;flex-direction:column;gap:8px;padding:0;border:0;box-shadow:none;background:transparent}
  .editor-workspace .st-stage {flex:1;min-height:0;display:flex;align-items:center;border-radius:12px}
  .editor-workspace .st-stage video {width:100%;height:100%;max-height:none}
  .editor-workspace .st-preview-explanation {display:none}
  .editor-workspace .st-workbench .st-side {grid-area:side;max-height:none;height:100%;padding:0;display:flex;flex-direction:column;overflow:hidden;min-width:0}
  .editor-workspace .st-workbench .st-tabs {flex:0 0 auto}
  .editor-workspace .st-workbench .st-pane {flex:1 1 auto;min-height:0;overflow:auto}
  .editor-workspace .st-workbench #st-side-transcript {display:flex;flex-direction:column;gap:8px;overflow:hidden}
  .editor-workspace .st-workbench .st-tr-words {flex:1 1 auto;min-height:80px;max-height:none}
  .editor-workspace .st-timeline-card {min-height:0;min-width:0;display:flex;flex-direction:column;gap:8px;padding:10px;border-radius:12px}
  .editor-workspace .st-timeline-card .st-scroll {min-height:0;max-height:none;flex:1}
  .editor-workspace .st-timeline-card>.row {display:flex;flex-wrap:nowrap;align-items:center;gap:12px;min-width:0}
  .editor-workspace .st-timeline-card .st-tools {flex:1 1 auto;min-width:0;flex-wrap:nowrap;overflow-x:auto;padding-bottom:3px}
  .editor-workspace .st-timeline-card .st-tools button {flex-shrink:0;min-height:36px}
  .editor-workspace .st-timeline-card .st-legend {flex:0 0 auto;flex-wrap:nowrap;gap:12px}
  .editor-workspace .st-inline-help {display:none}
  .editor-workspace .st-top {padding:4px 10px;box-shadow:none;flex-wrap:nowrap;overflow:hidden;font-size:13px;gap:10px}
  .editor-workspace .st-top > * {flex-shrink:0}
  .editor-workspace .st-top .grow {flex:1 1 0}
  .editor-workspace .st-top .st-sel-note {flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
}
/* Узкая монтажная — планшет и встроенная в чат (761–1199 px): легенда
   клипов уходит (её цвета повторяют подписи дорожек), номер версии — тоже. */
@media(min-width:761px) and (max-width:1199px){
  .editor-workspace .st-timeline-card .st-legend {display:none}
  .editor-workspace .st-top .st-ver {display:none}
}
/* Совсем узкая (761–999 px, монтажная внутри чата на ноутбуке): материалы
   встают лентой над плеером, а не третьей колонкой — иначе плеер сжимался
   бы до 340 px. */
@media(min-width:761px) and (max-width:999px){
  .editor-workspace .st-workbench .st-grid {grid-template-columns:minmax(0,1fr) 288px;grid-template-rows:auto minmax(0,1fr);grid-template-areas:"media side" "preview side"}
  .editor-workspace .st-workbench .cw-media {height:auto;flex-direction:row;align-items:center;padding:6px;overflow-x:auto;overflow-y:hidden}
  .editor-workspace .st-workbench .cw-media h3,.editor-workspace .st-workbench .cw-media #cw-media-search {display:none}
  .editor-workspace .st-workbench .cw-media-list {flex-direction:row;flex:0 0 auto;overflow:visible}
  .editor-workspace .st-workbench .cw-media-item {width:150px;min-height:44px}
  .editor-workspace .st-workbench .cw-media #cw-media-add {width:auto}
  .editor-workspace .st-top .st-legacy {display:none}
}
@media(max-width:760px){
  .editor-workspace .st-workbench {height:calc(100dvh - 100px);min-height:560px;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:40px 44px minmax(180px,1fr) minmax(210px,32%);gap:8px}
  .cw-embedded-editor.editor-workspace .st-workbench {height:calc(100dvh - 24px)}
  .editor-workspace .st-mobile-tabs {display:flex;gap:4px;align-items:stretch}
  .editor-workspace .st-mobile-tabs button {flex:1;min-height:44px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--text);cursor:pointer;font-size:13px}
  .editor-workspace .st-mobile-tabs button[aria-selected=true] {border-bottom-color:var(--text);font-weight:600}
  .editor-workspace .st-workbench .st-grid {display:block;min-height:0;min-width:0}
  .editor-workspace .st-workbench .cw-media,.editor-workspace .st-workbench .st-side {display:none}
  .editor-workspace .st-preview-column,.editor-workspace .st-preview-card {height:100%;min-height:0;min-width:0}
  .editor-workspace .st-preview-card {display:flex;gap:8px;padding:6px;border:0;box-shadow:none;background:transparent}
  .editor-workspace .st-stage {flex:1;min-height:0;display:flex;align-items:center;border-radius:8px}
  .editor-workspace .st-stage video {width:100%;height:100%;max-height:none}
  .editor-workspace .st-preview-explanation,.editor-workspace .st-inline-help,.editor-workspace .st-legend {display:none}
  .editor-workspace .st-top {padding:4px 8px;box-shadow:none;flex-wrap:nowrap;overflow:hidden;font-size:12px;gap:6px}
  .editor-workspace .st-top #st-sel {display:none}
  .editor-workspace .st-top b {font-size:13px}
  /* Телефон: в шапке монтажной — только «К шагам», время и заметки; без
     этого «Заметки монтажёру» и «Старый редактор» уезжали за край (замер
     01.10 на 375 px: на 117 и 263 px). */
  .editor-workspace .st-top .st-legacy,.editor-workspace .st-top .st-ver,.editor-workspace .st-top .st-notes-long,
  .editor-workspace .st-top > b {display:none}
  .editor-workspace .st-top > * {flex-shrink:0}
  .editor-workspace .st-top .grow {flex:1 1 0}
  .editor-workspace .st-timeline-card {min-height:0;min-width:0;display:flex;flex-direction:column;gap:8px;padding:6px;border-radius:10px}
  .editor-workspace .st-timeline-card>.row {display:block;min-width:0}
  .editor-workspace .st-timeline-card .st-tools {flex-wrap:nowrap;overflow-x:auto;max-width:100%;padding-bottom:3px}
  .editor-workspace .st-timeline-card .st-tools button {flex-shrink:0;min-height:44px}
  .editor-workspace .st-timeline-card .st-scroll {min-height:0;max-height:none;flex:1}
  .editor-workspace .st-mobile-materials .st-preview-column,.editor-workspace .st-mobile-properties .st-preview-column {display:none}
  .editor-workspace .st-mobile-materials .cw-media {display:flex;height:100%;max-height:none;padding:10px;gap:8px}
  .editor-workspace .st-mobile-materials .cw-media-list {display:grid;grid-template-columns:1fr 1fr;gap:8px;overflow:visible}
  .editor-workspace .st-mobile-materials .cw-media-item {min-width:0;max-width:none}
  .editor-workspace .st-mobile-properties .st-side {display:block;height:100%;max-height:none;padding:12px;overflow:auto}
}
.chat-workspace > .top {display:none}
.chat-workspace #view {max-width:none;padding:0;margin:0}
.cw-shell {min-height:100dvh;display:grid;grid-template-columns:240px minmax(0,1fr);font-size:16px}
.cw-shell.menu-collapsed {grid-template-columns:minmax(0,1fr)}
.cw-shell.menu-collapsed .cw-sidebar {display:none}
.cw-with-editor #view {width:var(--cw-chat-width,420px)}
.cw-with-editor .cw-shell {grid-template-columns:minmax(0,1fr)}
.cw-with-editor .cw-sidebar {display:none}
.cw-with-editor .cw-header {padding:12px;gap:4px}
.cw-with-editor .cw-header b {margin:0;max-width:130px}
.cw-with-editor .cw-scroll {padding:20px 16px}
.cw-with-editor .cw-composer {padding:12px}
.cw-with-editor .cw-home .cw-intro h1 {font-size:26px}
.cw-with-editor .cw-home .cw-intro {padding-inline:0}
.cw-with-editor .cw-fields {grid-template-columns:1fr}
.cw-with-editor .cw-plan {padding:16px}
#cw-editor-panel {position:fixed;inset:0 0 0 var(--cw-chat-width,420px);background:var(--bg);border-left:1px solid var(--line);display:flex;flex-direction:column;z-index:20}
.cw-editor-divider {position:absolute;left:-6px;top:0;bottom:0;width:12px;z-index:2;cursor:col-resize;touch-action:none}
.cw-editor-divider::after {content:'';position:absolute;left:5px;top:0;bottom:0;width:2px;background:transparent}
.cw-editor-divider:hover::after,.cw-editor-divider:focus-visible::after,.cw-resizing .cw-editor-divider::after {background:var(--text-2)}
.cw-editor-divider:focus-visible {outline:2px solid var(--text-2);outline-offset:-3px}
.cw-resizing iframe {pointer-events:none}
.cw-editor-wide .cw-editor-divider {display:none}
#cw-editor-panel>header {height:64px;flex-shrink:0;display:flex;gap:8px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line);background:var(--surface)}
#cw-editor-panel>header b {font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1}
#cw-editor-panel>header button {min-height:44px;min-width:44px;padding:8px;border:0;background:transparent;color:var(--text);cursor:pointer;border-radius:10px}
#cw-editor-panel>header button:hover {background:var(--bg-sunken)}
#cw-editor-panel iframe {width:100%;flex:1;min-height:0;border:0}
.cw-embedded-editor>.top,.cw-embedded-editor .st-top #st-back,.cw-embedded-editor .st-top a[href='/legacy'] {display:none}
.cw-editor-wide #cw-editor-panel {left:0}
#cw-editor-chat,#cw-return-editor {display:none}
.cw-editor-wide #cw-editor-chat {display:inline-flex}
@media(max-width:900px){.cw-with-editor #view{width:100%}#cw-editor-panel{left:0;display:none}.cw-editor-mobile #cw-editor-panel{display:flex}.cw-with-editor #cw-return-editor,#cw-editor-chat{display:inline-flex}.cw-editor-mobile #view{visibility:hidden}#cw-editor-expand,.cw-editor-divider{display:none}.cw-with-editor .cw-header b{max-width:none}}
.cw-sidebar {padding:24px 14px 14px;background:var(--bg-sunken);border-right:1px solid var(--line);display:flex;flex-direction:column;gap:8px;height:100dvh;min-height:0;overflow:hidden}
.cw-brand {font-weight:800;letter-spacing:-.5px;padding:0 12px 24px;font-size:21px}
.cw-shell button,.cw-shell select {min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--text);padding:10px 14px;cursor:pointer}
.cw-shell button:hover {background:var(--bg-sunken)}
.cw-shell :focus-visible {outline:2px solid var(--text);outline-offset:3px}
.cw-sidebar button {display:flex;align-items:center;text-align:left;border-color:transparent;background:transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.cw-sidebar .cw-new,.cw-shell .cw-primary {background:var(--text);color:var(--surface)}
.cw-history {display:flex;flex-direction:column;gap:4px;flex:1;min-height:0;overflow:auto;margin-top:12px;scrollbar-width:thin}
.cw-history button {flex-shrink:0}
/* Имя разговора или проекта — одна строка с видимым многоточием: у flex-
   кнопки многоточие не рисуется, и имя просто обрубалось («Демо новой
   графики (сер», замер 01.10). Полное имя — в title. */
.cw-history button {display:block;width:100%;text-align:left}
.cw-sidebar-footer {display:flex;flex-direction:column;gap:2px;padding-top:10px;border-top:1px solid var(--line)}
.cw-sidebar-footer button {min-height:44px}
.cw-sidebar .ic {width:18px;height:18px;vertical-align:middle;margin-right:7px}
.cw-history small {color:var(--text-2);padding:8px 14px}
.cw-main {min-width:0;display:flex;flex-direction:column;height:100dvh}
.cw-header {display:flex;align-items:center;justify-content:space-between;padding:18px 28px;border-bottom:1px solid var(--line)}
.cw-header span {color:var(--text-2);font-size:14px}
.cw-header b {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-inline:18px;font-size:14px;font-weight:500}
.cw-scroll {overflow:auto;flex:1;padding:36px 24px;scroll-behavior:smooth}
.cw-content {max-width:800px;margin:auto}
.cw-intro {padding:9vh 0 36px}
.cw-intro h1 {font-size:clamp(28px,4vw,44px);line-height:1.15;letter-spacing:-1.4px;margin-bottom:20px}
.cw-intro p {color:var(--text-2);line-height:1.6;max-width:580px}
.cw-message {white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.65;margin:20px 0;padding:8px 0}
.cw-message.user {background:var(--bg-sunken);border-radius:18px;padding:16px 20px;margin-left:12%}
.cw-message.error {border-left:3px solid var(--err);padding-left:16px}
.cw-error-details {font-size:12px;line-height:1.5;margin-top:12px;color:var(--text-2)}
.cw-error-details summary {cursor:pointer;padding:8px 0}
.cw-answer-status {font-size:14px;color:var(--text-2);padding:16px 0}
.cw-composer {margin:0 auto;width:min(848px,100%);padding:16px 24px 24px}
.cw-input {border:1px solid var(--line);border-radius:22px;background:var(--surface);padding:16px;box-shadow:var(--sh-1)}
.cw-input textarea {display:block;box-sizing:border-box;width:100%;resize:none;min-height:100px;max-height:35dvh;overflow-y:auto;border:0;background:transparent;font:inherit;font-size:18px;line-height:1.55;color:var(--text);padding:4px;outline-offset:4px}
.cw-tools {display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.cw-tools select,.cw-tools #cw-model {max-width:220px;overflow:hidden;text-overflow:ellipsis}
.cw-shell button:disabled {opacity:.55;cursor:wait}
.cw-tools .cw-send {margin-left:auto}
.cw-tools .cw-send {width:44px;flex:0 0 44px;border-radius:50%;padding:10px}
.cw-tools .ic {width:19px;height:19px;flex-shrink:0}
.cw-tools button {display:inline-flex;align-items:center;justify-content:center;gap:7px}
.cw-tools #cw-model {max-width:210px}
.cw-tools #cw-model span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#cw-attach {width:44px;padding:10px;background:var(--bg-sunken);border-radius:50%}
#cw-files {display:flex;gap:8px;flex-wrap:wrap}
.cw-file-chip {display:flex;align-items:center;gap:8px;max-width:100%;padding:6px 6px 6px 12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;margin-bottom:12px}
.cw-file-chip>span {overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}
.cw-file-chip small {display:block;font-size:12px;color:var(--text-2)}
.cw-file-chip button {padding:8px;border:0;flex-shrink:0;min-width:44px}
.cw-file-chip .ic {width:18px;height:18px;flex-shrink:0}
.cw-main.cw-dragging {outline:2px dashed var(--line-strong);outline-offset:-12px;background:var(--accent-soft)}
.cw-model-dialog {width:min(480px,calc(100vw - 32px));max-height:80dvh;padding:24px;border:1px solid var(--line);border-radius:20px;background:var(--surface);color:var(--text);box-shadow:var(--sh-3)}
.cw-model-dialog::backdrop {background:var(--scrim)}
.cw-dialog-heading {display:flex;justify-content:space-between;align-items:center;gap:16px}
.cw-dialog-heading h2 {font-size:20px;margin:0}
.cw-model-dialog p {font-size:14px;color:var(--text-2);line-height:1.5}
.cw-model-dialog button {min-height:44px;border:0;background:transparent;color:inherit;cursor:pointer;border-radius:10px}
.cw-dialog-heading button {min-width:44px}
.cw-model-dialog input {width:100%;min-height:44px;border:1px solid var(--line);border-radius:10px;padding:10px 12px;margin:12px 0;font:inherit;background:var(--bg);color:var(--text)}
.cw-model-list {max-height:45dvh;overflow:auto}
.cw-model-list button {display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;width:100%;padding:12px;font-size:15px}
.cw-model-list button:hover,.cw-model-list button[aria-pressed=true] {background:var(--bg-sunken)}
.cw-model-list span {min-width:0;overflow-wrap:anywhere}
.cw-model-list small {display:block;color:var(--text-2);margin-top:5px;font-size:12px}
.cw-model-dialog :focus-visible {outline:2px solid var(--text);outline-offset:2px}
.cw-note {font-size:12px;color:var(--text-2);text-align:center;margin-top:10px}
.cw-plan {border:1px solid var(--line);border-radius:18px;padding:24px;background:var(--surface);margin-top:24px}
.cw-plan h2 {font-size:22px;margin-bottom:18px}
.cw-cut {padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}
.cw-cut p {margin:8px 0;line-height:1.5}
.cw-export-review {margin-bottom:18px;line-height:1.5;overflow-wrap:anywhere}
.cw-export-review p,.cw-export-review ul {margin-top:8px}
.cw-export-review.error {border-left:3px solid var(--err);padding-left:14px}
.cw-cut .cw-examples {margin:12px 0 0}
.cw-plan-settings {margin:0 0 20px}
.cw-plan-settings summary {cursor:pointer;min-height:44px;padding:12px 0}
.cw-plan-settings .cw-fields {padding-top:16px}
.cw-fields {display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:20px}
.cw-fields label {display:flex;flex-direction:column;gap:8px;font-size:14px}
.cw-fields [hidden] {display:none}
.cw-fields select {width:100%}
.cw-examples {display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}
@media(max-width:760px){.cw-shell{grid-template-columns:1fr}.cw-sidebar{display:none}.cw-shell.menu-open .cw-sidebar{display:flex;position:fixed;z-index:30;inset:64px 20% 0 0;box-shadow:var(--sh-3)}.cw-header{padding:12px 16px}.cw-scroll{padding:20px 16px}.cw-composer{padding:12px}.cw-fields{grid-template-columns:1fr}.cw-intro{padding-top:4vh}.cw-header span{display:none}.cw-message.user{margin-left:5%}}
@media(prefers-reduced-motion:reduce){.cw-scroll{scroll-behavior:auto}}

/* The empty workspace starts with the command, then becomes a conversation. */
.cw-home .cw-scroll {padding-top:clamp(40px,12vh,130px)}
.cw-home .cw-content {max-width:760px}
.cw-home .cw-intro {padding:0 16px 24px;text-align:center}
.cw-home .cw-intro h1 {font-size:32px;letter-spacing:-1px;margin:0 0 14px}
.cw-home .cw-intro p {margin:0 auto;max-width:560px;font-size:15px}
.cw-home .cw-composer {width:100%;padding:0 0 20px}
.cw-home .cw-examples {justify-content:center;margin-top:6px}
.cw-home .cw-input textarea {min-height:124px}
.cw-context-row {display:flex;align-items:center;gap:8px;padding:8px 0;flex-wrap:wrap}
.cw-context-row select {max-width:260px;border:0;background:transparent;font-size:13px}
.cw-context-row button {font-size:13px;border:0;background:transparent}
.cw-context-row {min-width:0;align-items:flex-start}
.cw-context-row select {min-width:0;flex:1;min-height:44px;text-overflow:ellipsis}
.cw-source-tools {margin-left:auto;max-width:100%;font-size:13px}
.cw-source-tools summary {display:flex;align-items:center;gap:8px;min-height:44px;padding:8px 10px;box-sizing:border-box;cursor:pointer;list-style:none;color:var(--text-2);border-radius:8px}
.cw-source-tools summary::-webkit-details-marker {display:none}
.cw-source-tools summary::after {content:'⌄'}
.cw-source-tools[open] summary::after {content:'⌃'}
.cw-source-tools summary:hover {background:var(--bg-sunken);color:var(--text)}
.cw-source-tools summary:focus-visible {outline:2px solid var(--text);outline-offset:2px}
.cw-source-actions {display:flex;flex-direction:column;align-items:stretch;border-top:1px solid var(--line);padding-top:4px}
.cw-source-actions button {text-align:left;min-height:44px}
.cw-short-item {padding:16px 0;border-top:1px solid var(--line)}
.cw-short-item h3 {font-size:16px;margin:0 0 8px}
.cw-short-item p {font-size:14px;color:var(--text-2)}
.cw-shorts-stale {font-size:14px;color:var(--warn);background:var(--accent-soft);padding:8px 12px;border-radius:6px}
.cw-short-item video {display:block;max-width:100%;max-height:50dvh;margin:12px 0;background:var(--stage-bg)}
#cw-shorts-fields label {display:flex;flex-direction:column;gap:8px;margin-bottom:12px}
#cw-shorts-fields [hidden] {display:none}
.cw-home .cw-header {border:0}
.cw-home .cw-header b {visibility:hidden}
.cw-tools button {font-size:13px;border-color:transparent;padding:8px 10px}
.cw-input {background:var(--bg-sunken);border-color:var(--line);box-shadow:none}
.cw-tools button {background:transparent}
.cw-plan-edit {margin:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.cw-plan-edit>summary {cursor:pointer;padding:14px 0;min-height:44px;font-size:14px}
.cw-plan-brief {font-size:17px;line-height:1.6;white-space:pre-wrap}
.cw-plan-source {font-size:13px;color:var(--text-2);overflow-wrap:anywhere}
#cw-plan-summary {font-size:13px;line-height:1.8;margin-top:12px}
#cw-run-status:empty {display:none}
#cw-run-status {padding:14px 0;font-size:14px}
@media(max-width:760px){.cw-home .cw-scroll{padding-top:7vh}.cw-home .cw-intro{padding-inline:0}.cw-home .cw-intro h1{font-size:28px}.cw-home .cw-composer{padding:0}.cw-home .cw-examples{margin-top:20px}.cw-plan{padding:18px}}
@media(max-width:760px){.cw-shell.menu-open .cw-sidebar{height:calc(100dvh - 64px)}.cw-tools{gap:4px}.cw-tools #cw-model{max-width:150px}.cw-tools #cw-plan-button{font-size:12px}.cw-context-row select{max-width:100%}.cw-header b{max-width:45vw}.cw-header span{display:block;font-size:12px}.cw-model-dialog{padding:18px}.cw-note{line-height:1.5}}
.cw-scope-chip {border-color:var(--text)}
/* Чат вкуса, образцы: «♥ Нравится» и «✕ Не моё» в клетке 170 px не влезали
   рядом с полными отступами кнопок чата — подпись переносилась, вторая
   кнопка вылезала на 11 px (замер 01.10 на 1280). Компактнее и с переносом
   кнопки целиком на вторую строку, а не подписи по буквам. */
.vk-obrazcy button {min-height:36px;padding:6px 10px;font-size:13px;white-space:nowrap}
.vk-obrazcy > div > div:last-child {flex-wrap:wrap}

/* Чат-агент: результаты инструментов свёрнуты, предложения списком */
.cw-tool-result{margin:4px 0;color:var(--text-2);font-size:13px}
.cw-tool-result summary{cursor:pointer;min-height:32px;display:flex;align-items:center}
.cw-tool-result pre{white-space:pre-wrap;word-break:break-word;max-height:240px;overflow:auto;background:var(--bg-sunken);border-radius:8px;padding:10px;font-size:12px}
.cw-agent-calls{margin:8px 0 12px;padding-left:20px}
.cw-agent-calls li{margin:6px 0}
.cw-agent-calls small{display:block;color:var(--text-2)}
#cw-agent-mode[aria-pressed="true"]{background:var(--text);color:var(--surface);border-radius:999px;padding:0 12px}
/* Пальцем, а не мышью (аудит 24.09.2026: на 375 px 16 кнопок монтажной были
   уже 32 px — разрез, удалить, магнит, глазик/замок/порядок дорожек, плеер).
   Норма касания ~44 px; кнопкам дорожек — 36, чтобы колонка имён не распухла. */
@media (pointer: coarse) {
  .editor-workspace .btn.btn-icon,
  .editor-workspace .st-tools button {min-width:44px;min-height:44px}
  .editor-workspace .st-mini {min-width:36px;min-height:36px}
  .editor-workspace .st-workbench .btn.btn-sm {min-height:40px}
  .editor-workspace #st-home,.editor-workspace #st-end {min-width:44px}
}
