/* Community workspace: uses the panel's palette and preserves its chat view. */
.cm-workspace, .cm-dialog { --cm-bg:#0e0e0e; --cm-card:#161616; --cm-line:#2a2a2a; --cm-text:#f2f2f2; --cm-muted:#8d8d8d; --cm-accent:#c6f135; color:var(--cm-text); font:13px/1.4 "Segoe UI",system-ui,sans-serif; }
.cm-workspace *, .cm-dialog * { box-sizing:border-box; }
.cm-workspace [hidden], .cm-dialog [hidden], .cm-legacy[hidden] { display:none!important; }
.cm-shell { display:flex; flex-direction:column; gap:14px; min-width:0; }
.cm-legacy { display:flex; flex-direction:column; gap:14px; flex:1; min-width:0; min-height:0; overflow:hidden; }
/* Assistant inbox is isolated from the group room's DOM and scroll state. */
.cm-assistant-mode { flex:1; min-height:0; overflow:hidden; }
.cm-assistant-mode>.cm-top,.cm-assistant-mode>.cm-tabs { flex:none; }
.cm-assistant-mode>#cm-content { flex:1; min-height:0; overflow:hidden; }
.cm-assist-workspace { display:flex; flex-direction:column; gap:10px; flex:1; min-height:0; overflow:hidden; }
.cm-assist-toolbar { display:flex; align-items:flex-end; gap:10px; flex:none; }
.cm-assist-toolbar>.cm-field { flex:1; max-width:520px; display:grid; gap:6px; }
.cm-assist-toolbar>.cm-field>span { color:var(--cm-muted); font-size:12px; }
.cm-assist-account-note { color:var(--cm-muted); font-size:12px; flex:none; }
.cm-assist-main { display:grid; grid-template-columns:minmax(240px,310px) minmax(0,1fr); flex:1; min-height:0; overflow:hidden; border:1px solid var(--cm-line); border-radius:12px; background:var(--cm-card); }
.cm-assist-sidebar,.cm-assist-thread { display:flex; flex-direction:column; min-width:0; min-height:0; overflow:hidden; }
.cm-assist-sidebar { border-right:1px solid var(--cm-line); }
.cm-assist-search { padding:12px; display:grid; gap:9px; flex:none; }
.cm-assist-search .cm-check-label { display:flex; align-items:center; gap:7px; color:var(--cm-muted); font-size:12px; }
.cm-assist-list-note { padding:0 12px 10px; color:var(--cm-muted); font-size:11px; overflow-wrap:anywhere; flex:none; }
.cm-assist-list { overflow-y:auto; overflow-x:hidden; min-height:0; flex:1; scrollbar-width:thin; scrollbar-color:#484848 #161616; }
.cm-assist-dialog { display:flex; align-items:center; gap:10px; width:100%; min-width:0; padding:12px; border:0; border-top:1px solid #242424; border-left:3px solid transparent; background:transparent; color:var(--cm-text); font:inherit; text-align:left; cursor:pointer; }
.cm-assist-dialog:hover { background:#1f1f1f; }
.cm-assist-dialog.on { background:#20271a; border-left-color:var(--cm-accent); }
.cm-assist-dialog:focus-visible { outline:2px solid var(--cm-accent); outline-offset:-2px; }
.cm-assist-dialog-avatar { display:flex; align-items:center; justify-content:center; flex:none; width:34px; height:34px; border-radius:50%; background:#303629; color:#cddab6; font-size:11px; }
.cm-assist-dialog-body { flex:1; min-width:0; }
.cm-assist-dialog-head { display:flex; align-items:center; gap:6px; }
.cm-assist-dialog-head b { flex:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; }
.cm-assist-dialog-head small { color:var(--cm-muted); flex:none; font-size:10px; }
.cm-assist-dialog-preview { display:block; margin-top:4px; color:#a1a1a1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.cm-assist-unread { min-width:20px; padding:2px 6px; border-radius:12px; background:var(--cm-accent); color:#172000; font-size:11px; text-align:center; flex:none; }
.cm-assist-list-footer { flex:none; padding:8px 12px; }
.cm-assist-list-footer:has([hidden]) { display:none; }
.cm-assist-list-footer .cm-btn { width:100%; }
.cm-assist-thread-head { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:13px 16px; border-bottom:1px solid var(--cm-line); flex:none; }
.cm-assist-thread-head>div { min-width:0; }
.cm-assist-thread-head b { display:block; overflow-wrap:anywhere; }
.cm-assist-thread-head .cm-sub { font-size:11px; overflow-wrap:anywhere; }
.cm-assist-thread-head .cm-assist-back { display:none; }
.cm-assist-history-note { flex:none; padding:0 16px; color:var(--cm-muted); font-size:12px; }
.cm-assist-history-note:not(:empty) { padding-top:8px; padding-bottom:8px; }
.cm-assist-messages { min-height:0; flex:1; overflow-y:auto; overflow-x:hidden; padding:16px; background:#101010; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#484848 #101010; overflow-anchor:none; }
.cm-assist-empty { padding:30px 15px; color:var(--cm-muted); text-align:center; line-height:1.7; }
.cm-assist-message { width:fit-content; max-width:min(88%,700px); padding:10px 12px 7px; margin:0 auto 12px 0; border:1px solid #2c2c2c; border-radius:12px 12px 12px 3px; background:#1c1c1c; overflow-wrap:anywhere; }
.cm-assist-message.out { margin-left:auto; margin-right:0; background:#202a18; border-color:#344226; border-radius:12px 12px 3px 12px; }
.cm-assist-message-text { white-space:pre-wrap; line-height:1.6; }
.cm-assist-message a { color:#bedb8e; }
.cm-assist-message a:hover { color:#dbf7aa; }
.cm-assist-message-quote { padding:6px 9px; margin-bottom:8px; border-left:3px solid #829d4f; background:#ffffff08; border-radius:4px; color:#aaa; font-size:12px; white-space:pre-wrap; }
.cm-assist-attachment { display:block; padding:9px 11px; margin-bottom:6px; border:1px solid #464b3c; border-radius:7px; text-decoration:none; }
.cm-assist-links { display:grid; gap:5px; margin-top:9px; }
.cm-assist-links a { padding:6px 9px; border:1px solid #3c4930; border-radius:6px; text-align:center; }
.cm-assist-message-meta { display:flex; align-items:center; justify-content:flex-end; gap:8px; color:#959f87; font-size:10px; margin-top:5px; }
.cm-assist-message-meta .cm-btn { color:#abb89a; font-size:10px; min-height:22px; padding:2px 5px; }
.cm-assist-compose { flex:none; padding:12px 16px; border-top:1px solid var(--cm-line); }
.cm-assist-compose form { display:flex; align-items:flex-end; gap:10px; margin:0; }
.cm-assist-compose .cm-textarea { flex:1; min-height:64px; max-height:160px; }
.cm-assist-compose .cm-btn[type=submit] { flex:none; }
.cm-assist-compose-note { margin-top:7px; color:var(--cm-muted); font-size:11px; overflow-wrap:anywhere; }
.cm-assist-reply { display:flex; align-items:center; gap:10px; padding:8px 10px; margin-bottom:10px; border-left:3px solid var(--cm-accent); background:#20271a; border-radius:5px; }
.cm-assist-reply>div { flex:1; min-width:0; }
.cm-assist-reply b,.cm-assist-reply span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:12px; }
.cm-assist-reply b { color:#cbd9ac; margin-bottom:3px; }
.cm-assist-reply span { color:#aaa; }
.cm-assist-history-note.error,.cm-assist-compose-note.error { color:#f0a0a0; }
@media(max-width:760px) {
  .cm-assist-main { grid-template-columns:minmax(0,1fr); }
  .cm-assist-main:not(.thread-open)>.cm-assist-thread,.cm-assist-main.thread-open>.cm-assist-sidebar { display:none; }
  .cm-assist-sidebar { border-right:0; }
  .cm-assist-thread-head .cm-assist-back { display:inline-flex; margin:-5px 0 5px -8px; }
  .cm-assist-toolbar>.cm-field { max-width:none; }
  .cm-assist-messages { padding:12px; }
  .cm-assist-message { max-width:94%; }
  .cm-assist-compose { padding:10px; }
  .cm-assist-compose form { gap:7px; }
  .cm-assist-compose .cm-btn[type=submit] { padding:7px 9px; }
}
.cm-room-composer { flex:none; padding:10px 12px; border-top:1px solid #2a2a2a; background:#161616; color:#f2f2f2; font:13px/1.4 "Segoe UI",system-ui,sans-serif; }
.cm-room-composer[hidden], .cm-room-quote[hidden] { display:none!important; }
.cm-room-sender { display:flex; align-items:center; gap:10px; }
.cm-room-sender label { display:flex; align-items:center; gap:8px; flex:1; min-width:0; }
.cm-room-sender label>span { color:#aaa; flex:none; }
.cm-room-sender select { min-width:0; max-width:100%; flex:1; border:1px solid #333; border-radius:8px; padding:7px 9px; background:#111; color:#eee; font:inherit; }
.cm-room-refresh, .cm-room-quote button { border:1px solid #333; border-radius:7px; padding:6px 9px; background:#1b1b1b; color:#c5c5c5; font:inherit; cursor:pointer; }
.cm-room-refresh:disabled { opacity:.55; cursor:wait; }
.cm-room-quote { display:flex; align-items:center; gap:10px; margin-top:10px; padding:8px 10px; border-left:3px solid #c6f135; border-radius:5px; background:#20241a; }
.cm-room-quote>div { flex:1; min-width:0; }
.cm-room-quote b, .cm-room-quote span { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cm-room-quote b { color:#d0e69a; font-size:12px; margin-bottom:3px; }
.cm-room-quote span { color:#ccc; }
.cm-room-quote button { flex:none; font-size:18px; padding:2px 8px; }
.cm-room-send-note { margin-top:6px; color:#aaa; font-size:12px; overflow-wrap:anywhere; }
.cm-room-send-note.error { color:#f0a0a0; }
#room-msgs .cm-room-reply-button { display:block; margin:5px 0 0 auto; padding:3px 6px; border:0; border-radius:5px; background:transparent; color:#b5c8e2; font:12px "Segoe UI",system-ui,sans-serif; cursor:pointer; }
#room-msgs .cm-room-reply-button:hover, #room-msgs .cm-room-reply-button:focus-visible { background:#ffffff14; color:#fff; }
#room-msgs .bubble.cm-room-reply-selected { outline:1px solid #b4d86a; outline-offset:2px; }
@media(max-width:560px) { .cm-room-sender { align-items:flex-start; } .cm-room-sender label { flex-direction:column; align-items:stretch; gap:4px; } .cm-room-refresh { margin-top:22px; } }
.cm-top { display:flex; justify-content:space-between; align-items:center; gap:12px; }
.cm-top h1 { margin:0; font-size:18px; font-weight:650; letter-spacing:-.02em; }
.cm-sub { color:var(--cm-muted); font-size:12px; margin-top:4px; }
.cm-tabs { display:flex; gap:4px; border-bottom:1px solid var(--cm-line); padding-bottom:8px; overflow-x:auto; }
.cm-tabs button, .cm-local-tabs button { border:0; border-radius:8px; padding:8px 13px; background:transparent; color:var(--cm-muted); cursor:pointer; font:inherit; white-space:nowrap; }
.cm-tabs button:hover, .cm-local-tabs button:hover { background:#1c1c1c; color:var(--cm-text); }
.cm-tabs button.on, .cm-local-tabs button.on { background:#1c1c1c; color:var(--cm-text); font-weight:600; }
.cm-count { display:inline-flex; align-items:center; justify-content:center; border-radius:5px; min-width:18px; margin-left:5px; font-size:11px; color:var(--cm-muted); }
.cm-toolbar { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.cm-toolbar .cm-search { flex:1 1 230px; }
.cm-groups-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:8px; }
.cm-groups-heading .cm-local-tabs { margin:0; }
.cm-groups-heading .cm-sub { margin:0; }
.cm-discovery { padding:10px 12px; border:1px solid var(--cm-line); border-radius:9px; color:#b7b7b7; background:#131313; font-size:12px; }
.cm-discovery .cm-sub { margin:0; }
.cm-discovery details { margin-top:7px; }
.cm-discovery summary { cursor:pointer; color:#dfc583; }
.cm-discovery ul { margin:8px 0 0; padding-left:20px; }
.cm-discovery li { overflow-wrap:anywhere; margin-top:5px; }
.cm-input, .cm-select, .cm-textarea { border:1px solid #323232; background:#101010; color:var(--cm-text); border-radius:8px; min-height:34px; padding:7px 10px; font:inherit; min-width:0; width:100%; }
.cm-select { cursor:pointer; }
.cm-toolbar .cm-select { width:auto; max-width:220px; }
.cm-input:focus, .cm-select:focus, .cm-textarea:focus { outline:2px solid #647b22; outline-offset:1px; }
.cm-textarea { resize:vertical; min-height:86px; line-height:1.5; }
.cm-btn { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-height:34px; border:1px solid #333; border-radius:8px; padding:7px 12px; background:#191919; color:var(--cm-text); font:inherit; cursor:pointer; white-space:nowrap; }
.cm-btn:hover { background:#242424; border-color:#454545; }
.cm-btn:focus-visible { outline:2px solid var(--cm-accent); outline-offset:3px; }
.cm-btn.solid { background:var(--cm-accent); border-color:var(--cm-accent); color:#172000; font-weight:600; }
.cm-btn.solid:hover { background:#d6ff53; }
.cm-btn.ghost { background:transparent; border-color:transparent; }
.cm-btn.danger { color:#f0a0a0; }
.cm-btn:disabled { opacity:.45; cursor:not-allowed; }
.cm-btn.small { min-height:28px; font-size:12px; padding:4px 8px; }
.cm-btn.icon { width:34px; padding:6px; font-size:18px; }
.cm-space { flex:1; }
.cm-bulk { display:flex; flex-wrap:wrap; align-items:center; gap:10px; padding:10px 12px; border:1px solid #344418; border-radius:9px; background:#142000; }
.cm-bulk b { color:var(--cm-accent); font-weight:600; }
.cm-bulk .cm-sub { margin:0; }
.cm-menu-wrap { position:relative; }
.cm-menu { position:absolute; z-index:40; top:calc(100% + 6px); left:0; width:254px; padding:5px; border:1px solid #3a3a3a; border-radius:10px; background:#202020; box-shadow:0 16px 45px #0008; }
.cm-menu button { display:block; border:0; border-radius:6px; width:100%; padding:9px 10px; background:transparent; color:var(--cm-text); font:inherit; text-align:left; cursor:pointer; }
.cm-menu button:hover, .cm-menu button:focus { background:#303030; outline:none; }
.cm-menu button.danger { color:#f0a0a0; }
.cm-menu hr { border:0; border-top:1px solid #383838; margin:5px 6px; }
.cm-card { background:var(--cm-card); border:1px solid var(--cm-line); border-radius:12px; overflow:hidden; }
.cm-table-wrap { width:100%; overflow-x:auto; }
.cm-table { width:100%; border-collapse:collapse; text-align:left; }
.cm-table th { color:var(--cm-muted); font-weight:500; font-size:12px; padding:11px 13px; background:#121212; white-space:nowrap; }
.cm-table td { border-top:1px solid var(--cm-line); padding:12px 13px; vertical-align:middle; }
.cm-table tbody tr:hover { background:#1a1a1a; }
.cm-table tr.selected { background:#1a2112; }
.cm-table th:first-child, .cm-table td:first-child { padding-right:5px; width:36px; }
.cm-check { width:15px; height:15px; accent-color:var(--cm-accent); margin:0; vertical-align:middle; cursor:pointer; }
.cm-group-button { display:flex; align-items:center; gap:10px; border:0; background:transparent; color:var(--cm-text); text-align:left; padding:0; font:inherit; cursor:pointer; min-width:190px; }
.cm-group-button b { display:block; font-weight:600; }
.cm-group-button:hover b { color:var(--cm-accent); }
.cm-avatar { display:flex; flex:none; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; object-fit:cover; background:#272d21; color:#c6d5ad; font-size:12px; font-weight:600; }
.cm-avatar.large { width:46px; height:46px; font-size:17px; }
.cm-owner { max-width:150px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.cm-muted { color:var(--cm-muted); }
.cm-nowrap { white-space:nowrap; }
.cm-tag { display:inline-flex; align-items:center; border:1px solid #353535; border-radius:999px; padding:3px 8px; font-size:11px; white-space:nowrap; color:#b9b9b9; }
.cm-tag.good { color:#75d5a8; border-color:#254b38; background:#14251c; }
.cm-tag.warn { color:#dfc583; border-color:#51432a; background:#292319; }
.cm-tag.bad { color:#f0a0a0; border-color:#653536; background:#301c1d; }
.cm-progress { width:70px; height:3px; background:#333; border-radius:2px; margin-top:5px; overflow:hidden; }
.cm-progress span { display:block; height:100%; background:var(--cm-accent); }
.cm-pager { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:10px; padding:11px 13px; border-top:1px solid var(--cm-line); }
.cm-row { display:flex; align-items:center; gap:8px; flex-wrap:wrap; }
.cm-empty { padding:46px 24px; text-align:center; max-width:620px; margin:0 auto; }
.cm-empty h3 { margin:0 0 8px; font-size:16px; font-weight:600; }
.cm-empty p { color:var(--cm-muted); margin:0 0 20px; line-height:1.65; }
.cm-notice { border:1px solid #3c402a; border-radius:9px; background:#1a1f13; color:#c3cbb1; padding:11px 13px; font-size:12px; line-height:1.5; }
.cm-notice.error, .cm-error { color:#f0a0a0; background:#2b1919; border:1px solid #573031; border-radius:8px; padding:10px 12px; white-space:pre-wrap; overflow-wrap:anywhere; }
.cm-error:empty { display:none; }
.cm-toast { padding:10px 13px; border:1px solid #345239; border-radius:8px; background:#142419; color:#a0dfb4; }
.cm-list { display:flex; flex-direction:column; gap:10px; }
.cm-item { display:flex; gap:14px; justify-content:space-between; align-items:center; padding:16px; border:1px solid var(--cm-line); border-radius:11px; background:var(--cm-card); }
.cm-item h3 { margin:0; font-size:13px; font-weight:600; }
.cm-item p { color:var(--cm-muted); margin:5px 0 0; font-size:12px; }
.cm-item p.cm-runtime-warning { color:#f0a0a0; }
.cm-runtime-warning { color:#f0a0a0; font-size:12px; overflow-wrap:anywhere; }
.cm-member-summary { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); border:1px solid var(--cm-line); border-radius:10px; margin-bottom:14px; background:#111; }
.cm-member-summary>div { padding:13px; }
.cm-member-summary b { font-size:18px; font-weight:600; display:block; }
.cm-member-summary small { color:var(--cm-muted); display:block; margin-top:3px; font-size:11px; }
.cm-mini-tabs { display:flex; gap:3px; }
.cm-mini-tabs .cm-btn { border-color:transparent; background:transparent; color:var(--cm-muted); }
.cm-mini-tabs .cm-btn.on { background:#292929; color:var(--cm-text); }
.cm-member-table th:first-child,.cm-member-table td:first-child { width:auto; min-width:130px; }
.cm-member-table td { font-size:12px; }
.cm-core { border:1px solid var(--cm-line); border-radius:9px; padding:12px; }
.cm-core summary { cursor:pointer; font-weight:600; font-size:12px; }
.cm-core pre { margin:10px 0 0; padding:12px; background:#101010; border-radius:7px; font:12px/1.6 "Segoe UI",system-ui,sans-serif; white-space:pre-wrap; overflow-wrap:anywhere; color:#b9b9b9; }
.cm-prompt-result { border:1px solid #34462b; border-radius:9px; padding:14px; background:#141b11; }
.cm-prompt-result p { white-space:pre-wrap; margin:10px 0; }
.cm-prompt-save-note { margin-top:12px; }
.cm-persona-status { display:flex; flex-wrap:wrap; align-items:center; gap:8px 16px; color:var(--cm-muted); font-size:12px; }
.cm-persona-status [data-persona-draft] { color:#c3cbb1; }
.cm-assistant-tabs { margin:0; }
.cm-persona-generator { display:grid; gap:10px; padding:14px; border:1px solid var(--cm-line); border-radius:10px; background:#111; }
.cm-persona-generator details label { margin-top:12px; }
.cm-persona-wide { grid-column:1/-1; }
.cm-persona-chat { display:flex; flex-direction:column; gap:10px; min-height:170px; max-height:360px; overflow:auto; border:1px solid var(--cm-line); border-radius:10px; background:#101010; padding:14px; }
.cm-persona-message { max-width:90%; border:1px solid var(--cm-line); border-radius:9px; padding:10px 12px; background:#191919; overflow-wrap:anywhere; }
.cm-persona-message b { display:block; color:var(--cm-muted); font-size:11px; margin-bottom:5px; }
.cm-persona-message div { white-space:pre-wrap; }
.cm-persona-message.from-user { align-self:flex-end; background:#1d2417; border-color:#34462b; }
.cm-pool-summary { display:flex; flex-wrap:wrap; gap:10px 22px; padding:14px 16px; border:1px solid var(--cm-line); border-radius:10px; background:#161616; color:var(--cm-muted); }
.cm-pool-summary b { color:var(--cm-text); }
.cm-pool-link { display:block; background:none; border:0; padding:0; text-align:left; color:var(--cm-text); font:inherit; cursor:pointer; }
.cm-pool-link:hover b { color:var(--cm-accent); }
.cm-pool-link b,.cm-pool-link .cm-sub { display:block; }
.cm-pool-table th:first-child,.cm-pool-table td:first-child,.cm-team-table th:first-child,.cm-team-table td:first-child { width:auto; padding-right:13px; }
.cm-pool-table td { vertical-align:top; }
.cm-pool-details { display:grid; gap:14px; }
.cm-pool-details section { border-bottom:1px solid var(--cm-line); padding-bottom:14px; }
.cm-pool-details h3 { font-size:12px; color:var(--cm-muted); margin:0 0 6px; }
.cm-pool-details p { white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.6; margin:0; }
.cm-profile-preview { display:grid; gap:12px; padding:15px; border:1px solid var(--cm-line); border-radius:10px; background:#101010; }
.cm-profile-preview small { display:block; color:var(--cm-muted); margin-bottom:4px; }
.cm-profile-preview p { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; }
@media(max-width:640px) { .cm-member-summary { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.cm-dialog { width:min(900px,calc(100vw - 36px)); max-height:calc(100dvh - 40px); margin:auto; padding:0; border:1px solid #3a3a3a; border-radius:14px; background:#161616; box-shadow:0 24px 100px #000a; }
.cm-dialog::backdrop { background:#000a; backdrop-filter:blur(2px); }
.cm-dialog.cm-drawer { width:min(740px,calc(100vw - 36px)); margin:auto; max-height:calc(100dvh - 40px); }
.cm-dialog[open] { display:flex; flex-direction:column; }
.cm-dialog-head { display:flex; align-items:flex-start; gap:14px; padding:20px 22px 16px; border-bottom:1px solid var(--cm-line); flex:none; }
.cm-dialog-head h2 { margin:0; font-size:17px; line-height:1.4; font-weight:650; }
.cm-dialog-head .cm-btn { margin-left:auto; }
.cm-dialog-body { padding:20px 22px; overflow:auto; min-height:0; }
.cm-dialog-foot { display:flex; flex-wrap:wrap; justify-content:flex-end; align-items:center; gap:8px; padding:14px 22px; border-top:1px solid var(--cm-line); flex:none; }
.cm-dialog-foot .cm-foot-note { margin-right:auto; color:var(--cm-muted); font-size:12px; max-width:60%; }
.cm-dialog-error { margin:0 22px 12px; flex:none; }
.cm-form { display:grid; gap:15px; }
.cm-field { display:flex; flex-direction:column; gap:6px; min-width:0; }
.cm-field>span, .cm-label { font-size:12px; font-weight:600; }
.cm-field small { color:var(--cm-muted); font-size:11px; line-height:1.5; }
.cm-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.cm-check-label { display:flex; align-items:flex-start; gap:8px; cursor:pointer; line-height:1.5; }
.cm-check-label input { margin-top:3px; flex:none; }
.cm-options { display:flex; flex-wrap:wrap; gap:12px 20px; }
.cm-option-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; max-height:240px; overflow:auto; padding:1px; }
.cm-account-choice { display:flex; align-items:center; gap:8px; border:1px solid var(--cm-line); border-radius:8px; padding:10px; min-width:0; }
.cm-account-choice span { overflow:hidden; text-overflow:ellipsis; }
.cm-preview-item { border:1px solid var(--cm-line); border-radius:10px; padding:15px; display:grid; grid-template-columns:40px 1fr; gap:12px; background:#121212; }
.cm-preview-item .cm-fields { display:grid; gap:10px; min-width:0; }
.cm-preview-item[data-kind="profile"] .cm-fields { grid-template-columns:minmax(120px,1fr) minmax(180px,1.5fr) minmax(120px,.8fr); }
.cm-preview-item[data-kind="profile"] .cm-item-head { grid-column:1/-1; }
.cm-preview-item[data-kind="profile"] { grid-template-columns:20px 1fr; }
.cm-preview-item .cm-item-head { display:flex; gap:8px; justify-content:space-between; align-items:center; margin-bottom:1px; }
.cm-preview-item .cm-item-head b { font-size:12px; font-weight:600; }
.cm-preview-item .cm-textarea { min-height:70px; }
.cm-preview-thumb { width:40px; height:40px; border-radius:8px; object-fit:cover; background:#292929; }
.cm-preview-summary { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; margin-bottom:14px; }
.cm-preview-summary p { margin:0; color:var(--cm-muted); font-size:12px; }
.cm-post { border-left:2px solid #3b4727; padding-left:12px; display:grid; gap:8px; }
.cm-local-tabs { display:flex; gap:4px; margin:-4px 0 18px; border-bottom:1px solid var(--cm-line); padding-bottom:10px; }
.cm-checkpoints { display:grid; gap:0; border:1px solid var(--cm-line); border-radius:10px; overflow:hidden; }
.cm-checkpoint { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:12px; border-bottom:1px solid var(--cm-line); }
.cm-checkpoint:last-child { border-bottom:0; }
.cm-checkpoint .cm-status-dot { width:7px; height:7px; border-radius:50%; background:#665945; margin-right:7px; display:inline-block; }
.cm-checkpoint.ok .cm-status-dot { background:#3ecf8e; }
.cm-keyvalues { display:grid; grid-template-columns:1fr 1fr; gap:12px 20px; margin-bottom:20px; }
.cm-keyvalues small { display:block; color:var(--cm-muted); margin-bottom:4px; }
.cm-section-title { font-size:12px; font-weight:600; margin:22px 0 10px; color:#c6c6c6; }
.cm-media-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(108px,1fr)); gap:10px; }
.cm-media-card { border:1px solid var(--cm-line); border-radius:9px; padding:8px; min-width:0; background:#111; }
.cm-media-card img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:6px; }
.cm-media-card small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin-top:6px; }
.cm-job-items { border-top:1px solid var(--cm-line); margin-top:12px; padding-top:10px; }
.cm-job-items>div { display:flex; justify-content:space-between; gap:12px; padding:7px 0; font-size:12px; }
.cm-job-items .cm-error { max-width:440px; }
.cm-spinner { display:inline-block; width:12px; height:12px; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:cm-spin .8s linear infinite; }
@keyframes cm-spin { to { transform:rotate(360deg); } }
@media (max-width:900px) { .cm-hide-medium { display:none; } .cm-table td, .cm-table th { padding:11px 9px; } }
@media (max-width:640px) { .cm-top { align-items:flex-start; } .cm-top h1 { font-size:17px; } .cm-grid,.cm-option-list,.cm-keyvalues { grid-template-columns:1fr; } .cm-toolbar .cm-select { flex:1 1 140px; min-width:140px; max-width:none; } .cm-hide-small { display:none; } .cm-dialog,.cm-dialog.cm-drawer { width:calc(100vw - 16px); max-height:calc(100dvh - 16px); margin:auto; border-radius:11px; } .cm-dialog-head { padding:15px; } .cm-dialog-body { padding:15px; } .cm-dialog-foot { padding:12px 15px; } .cm-dialog-error { margin:0 15px 12px; } .cm-dialog-foot .cm-foot-note { max-width:100%; flex-basis:100%; } .cm-item { align-items:flex-start; flex-wrap:wrap; } .cm-preview-item { padding:10px; grid-template-columns:24px 1fr; gap:8px; } .cm-preview-item[data-kind="profile"] .cm-fields { grid-template-columns:1fr; } .cm-preview-thumb { width:24px; height:24px; } .cm-local-tabs { overflow:auto; } }
@media (prefers-reduced-motion:reduce) { .cm-spinner { animation:none; } }

/* FAQ workspace keeps editing and dispatch review in the same centred dialog. */
.cm-active-dialog { width:min(1040px,calc(100vw - 36px)); }
.cm-active-staffing { display:grid; grid-template-columns:1fr 1fr; gap:12px 24px; padding:16px; border:1px solid #3c4628; border-radius:10px; background:#161c12; }
.cm-active-staffing strong { display:block; margin-top:5px; font-size:19px; font-weight:600; }
.cm-active-staffing p { grid-column:1/-1; margin:0; color:#a5af98; font-size:12px; line-height:1.6; }
.cm-active-tools { display:flex; gap:16px; align-items:center; }
.cm-active-tools>.cm-input { flex:1; }
.cm-active-tools>.cm-check-label { flex-shrink:0; color:var(--cm-muted); font-size:12px; }
.cm-active-controls { flex-wrap:wrap; }
.cm-active-controls>.cm-sub { margin:0; }
.cm-active-list { display:grid; gap:8px; max-height:440px; overflow:auto; padding:2px; }
.cm-active-account { border:1px solid var(--cm-line); border-radius:10px; background:#121212; min-width:0; }
.cm-active-account.selected { border-color:#53682b; background:#192112; }
.cm-active-account.unavailable { background:#141414; }
.cm-active-account-main { display:flex; align-items:center; gap:12px; padding:13px; cursor:pointer; min-width:0; }
.cm-active-account.unavailable .cm-active-account-main { cursor:default; }
.cm-active-account-main>.cm-check { flex:none; }
.cm-active-avatar { width:37px; height:37px; display:flex; align-items:center; justify-content:center; flex:none; border-radius:50%; background:#2b3223; color:#c1d3ad; font-size:16px; }
.cm-active-identity { min-width:0; flex:1; }
.cm-active-identity>b,.cm-active-identity>small { display:block; overflow-wrap:anywhere; }
.cm-active-identity>small { color:var(--cm-muted); margin-top:4px; font-size:11px; }
.cm-active-identity>.cm-sub { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; overflow-wrap:anywhere; }
.cm-active-pills { display:flex; flex-wrap:wrap; gap:5px; max-width:180px; justify-content:flex-end; }
.cm-active-reason { margin:0 13px 12px 47px; color:#d7af83; font-size:12px; overflow-wrap:anywhere; }
.cm-active-job-link { margin:0 13px 10px 47px; }
.cm-active-assignment { padding:0 13px 11px 47px; font-size:11px; color:var(--cm-muted); }
.cm-active-assignment>summary { cursor:pointer; padding:2px 0; }
.cm-active-assignment>div { display:flex; justify-content:space-between; gap:16px; padding:7px 0; border-bottom:1px solid var(--cm-line); }
.cm-active-assignment small { display:block; color:#d7af83; margin-top:3px; }
.cm-active-groups { display:grid; gap:0; max-height:170px; overflow:auto; margin-top:10px; border:1px solid var(--cm-line); border-radius:9px; }
.cm-active-groups>div { display:flex; gap:14px; align-items:center; justify-content:space-between; padding:10px 12px; border-bottom:1px solid var(--cm-line); }
.cm-active-groups>div:last-child { border-bottom:0; }
.cm-active-groups b { font-size:12px; font-weight:500; overflow-wrap:anywhere; }
.cm-active-groups small { display:block; color:var(--cm-muted); margin-top:4px; font-size:11px; }
.cm-active-groups .cm-tag { flex:none; }
.cm-active-progress { display:grid; border:1px solid var(--cm-line); border-radius:10px; overflow:hidden; }
.cm-active-progress>div { display:flex; gap:14px; justify-content:space-between; padding:13px; border-bottom:1px solid var(--cm-line); }
.cm-active-progress>div:last-child { border:0; }
.cm-active-progress>div>span { min-width:0; overflow-wrap:anywhere; }
.cm-active-progress>div>span:last-child { max-width:55%; text-align:right; }
.cm-active-progress small { display:block; color:var(--cm-muted); margin-top:5px; }
.cm-active-faq-staffing { margin-bottom:22px; padding-bottom:20px; border-bottom:1px solid var(--cm-line); }
@media(max-width:640px) {
  .cm-active-dialog { width:calc(100vw - 16px); }
  .cm-active-staffing { gap:10px; padding:12px; }
  .cm-active-staffing strong { font-size:17px; }
  .cm-active-tools { flex-wrap:wrap; gap:10px; }
  .cm-active-tools>.cm-input { flex-basis:100%; }
  .cm-active-controls { gap:6px; }
  .cm-active-controls>.cm-sub { flex-basis:100%; }
  .cm-active-account-main { display:grid; grid-template-columns:18px 30px minmax(0,1fr); gap:9px; padding:11px; }
  .cm-active-avatar { width:30px; height:30px; font-size:14px; }
  .cm-active-pills { grid-column:3; max-width:none; justify-content:flex-start; }
  .cm-active-list { max-height:370px; }
  .cm-active-reason,.cm-active-assignment { margin-left:0; padding-left:39px; }
  .cm-active-assignment>div { flex-wrap:wrap; gap:4px; }
  .cm-active-dialog .cm-dialog-foot>.solid { width:100%; }
}
/* Only the account picker uses a fixed desktop workspace; other dialogs retain their flow. */
.cm-active-picker-layout,.cm-active-picker-summary,.cm-active-picker-selection { display:grid; gap:15px; min-width:0; }
.cm-active-picker .cm-active-list { max-height:none; overflow:visible; align-content:start; }
.cm-active-picker [data-active-summary]>.cm-row { flex-wrap:wrap; }
.cm-active-picker [data-active-summary]>.cm-notice { margin-top:10px; }
@media(min-width:901px) and (min-height:621px) {
  .cm-active-picker[open] { height:min(760px,calc(100dvh - 40px)); }
  .cm-active-picker>.cm-dialog-body { display:flex; flex:1; overflow:hidden; }
  .cm-active-picker-layout { grid-template-columns:270px minmax(0,1fr); gap:20px; flex:1; min-height:0; }
  .cm-active-picker-summary { display:flex; flex-direction:column; min-height:0; gap:14px; }
  .cm-active-picker-summary>.cm-active-staffing,.cm-active-picker-summary>.cm-sub { flex:none; }
  .cm-active-picker-summary>.cm-sub { font-size:11px; line-height:1.6; margin:0; }
  .cm-active-picker-summary>.cm-active-staffing { grid-template-columns:1fr; gap:10px; padding:13px; }
  .cm-active-picker-summary .cm-active-staffing>div { display:flex; gap:10px; align-items:center; justify-content:space-between; }
  .cm-active-picker-summary .cm-active-staffing .cm-sub { font-size:11px; margin:0; }
  .cm-active-picker-summary .cm-active-staffing strong { font-size:15px; white-space:nowrap; margin:0; }
  .cm-active-picker-summary .cm-active-staffing p { font-size:11px; }
  .cm-active-picker [data-active-summary] { display:flex; flex-direction:column; flex:1; min-height:0; }
  .cm-active-picker [data-active-summary]>.cm-row { flex:none; gap:5px; }
  .cm-active-picker [data-active-summary]>.cm-row>.cm-space { display:none; }
  .cm-active-picker [data-active-summary]>.cm-row>.cm-sub { width:100%; font-size:11px; }
  .cm-active-picker [data-active-summary]>.cm-notice { flex:none; font-size:11px; padding:9px; }
  .cm-active-picker .cm-active-groups { min-height:0; max-height:none; }
  .cm-active-picker .cm-active-groups>div { padding:9px; }
  .cm-active-picker-selection { grid-template-rows:auto auto minmax(0,1fr); gap:10px; min-height:0; }
  .cm-active-picker .cm-active-controls { align-content:start; gap:6px; }
  .cm-active-picker .cm-active-controls>.cm-space { display:none; }
  .cm-active-picker .cm-active-controls>.cm-sub { width:100%; font-size:11px; }
  .cm-active-picker .cm-active-list { overflow:auto; min-height:0; scrollbar-gutter:stable; }
  .cm-active-picker .cm-active-pills { max-width:145px; }
}
@media(max-width:900px),(max-height:620px) {
  .cm-active-picker .cm-active-groups { max-height:none; overflow:visible; }
}
.cm-scenario-dialog { width:min(1080px,calc(100vw - 36px)); }
.cm-faq-topics { display:grid; gap:8px; margin-top:10px; }
.cm-faq-topic { border:1px solid var(--cm-line); border-radius:9px; background:#121212; }
.cm-faq-topic>summary { display:flex; gap:10px; align-items:center; padding:12px 14px; cursor:pointer; font-weight:600; }
.cm-faq-topic>summary:before { content:'›'; color:var(--cm-muted); }
.cm-faq-topic[open]>summary:before { transform:rotate(90deg); }
.cm-faq-topic>summary>.cm-sub { margin:0 0 0 auto; font-weight:400; }
.cm-faq-topic>.cm-form { padding:0 14px 14px; }
.cm-faq-prompt { min-height:180px; }
.cm-faq-intro { padding:15px; border:1px solid var(--cm-line); border-radius:10px; background:#111; }
.cm-scenario-cover { display:grid; gap:10px; }
.cm-scenario-video { display:grid; justify-items:start; gap:9px; margin-bottom:10px; }
.cm-scenario-video video { display:block; width:min(260px,100%); aspect-ratio:1; border-radius:50%; object-fit:cover; background:#080808; border:1px solid var(--cm-line); }
.cm-launch-summary { margin-top:12px; overflow-wrap:anywhere; }
.cm-keyword-status { display:grid; gap:8px; border-top:1px solid var(--cm-line); padding-top:12px; }
.cm-scenario-cover:empty { display:none; }
.cm-scenario-cover>a { display:block; }
.cm-scenario-cover img { display:block; width:100%; max-height:300px; object-fit:contain; border:1px solid var(--cm-line); border-radius:8px; background:#080808; }
.cm-scenario-album { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; min-width:0; }
.cm-scenario-slide { display:grid; align-content:start; gap:9px; border:1px solid var(--cm-line); border-radius:9px; background:#151515; padding:10px; min-width:0; }
.cm-scenario-slide img { width:100%; height:auto; aspect-ratio:3/2; max-height:none; object-fit:contain; }
.cm-scenario-slide h4 { margin:0; font-size:12px; line-height:1.5; font-weight:600; overflow-wrap:anywhere; }
.cm-scenario-slide .cm-core { padding:9px; }
.cm-scenario-slide .cm-core summary { font-size:11px; }
.cm-scenario-slide-pending { display:flex; align-items:center; justify-content:center; aspect-ratio:3/2; border:1px dashed #3d3d3d; border-radius:8px; color:var(--cm-muted); font-size:12px; }
.cm-scenario-album-note { color:var(--cm-muted); font-size:11px; line-height:1.6; }
.cm-scenario-selected { display:grid; gap:6px; margin-top:12px; max-height:180px; overflow:auto; }
.cm-scenario-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:18px; align-items:start; }
.cm-scenario-groups { position:sticky; top:0; display:grid; gap:5px; max-height:64vh; overflow:auto; padding:2px; }
.cm-scenario-groups button { border:1px solid transparent; border-radius:9px; background:#121212; color:var(--cm-text); padding:11px 12px; text-align:left; font:inherit; cursor:pointer; overflow-wrap:anywhere; }
.cm-scenario-groups button:hover { border-color:#404040; }
.cm-scenario-groups button.on { border-color:#53682b; background:#1a2313; }
.cm-scenario-groups b { display:block; font-weight:600; }
.cm-scenario-groups small { display:block; margin-top:5px; color:var(--cm-muted); }
.cm-scenario-sequence { display:grid; gap:12px; min-width:0; }
.cm-scenario-group-head h3 { font-size:15px; margin:0 0 7px; }
.cm-scenario-group-head .cm-error { margin-top:12px; }
.cm-scenario-group-head>.cm-row { align-items:flex-start; gap:10px; }
.cm-scenario-group-head>.cm-row h3 { margin:3px 0 7px; }
.cm-scenario-group-head>.cm-toast { margin-bottom:12px; }
.cm-scenario-replacement { padding:15px; border:1px solid #53682b; border-radius:10px; background:#151910; }
.cm-replacement-options { display:grid; gap:5px; max-height:300px; overflow:auto; scrollbar-color:#484848 #161616; scrollbar-width:thin; }
.cm-replacement-option { display:flex; align-items:flex-start; gap:10px; padding:11px; border:1px solid var(--cm-line); border-radius:8px; background:#111; cursor:pointer; min-width:0; }
.cm-replacement-option.selected { border-color:#607b2c; background:#1a2313; }
.cm-replacement-option.unavailable { cursor:default; background:#141414; }
.cm-replacement-option>.cm-check { flex:none; margin-top:3px; }
.cm-replacement-option>span { min-width:0; }
.cm-replacement-option b,.cm-replacement-option small { display:block; overflow-wrap:anywhere; }
.cm-replacement-option small { margin-top:4px; color:var(--cm-muted); font-size:11px; line-height:1.5; }
.cm-replacement-option .cm-replacement-reason { color:#d0b58b; }
@media(max-width:720px) { .cm-scenario-replacement { padding:11px; } .cm-replacement-options { max-height:260px; } }
.cm-scenario-message { display:grid; gap:10px; border:1px solid var(--cm-line); background:#111; padding:14px; border-radius:10px; min-width:0; }
.cm-scenario-message.answer { border-left:3px solid #53682b; }
.cm-scenario-message.question { border-left:3px solid #365568; }
.cm-scenario-message>.cm-row>b { font-size:12px; }
.cm-scenario-reply { color:#a4ad99; border-left:2px solid #53682b; padding:5px 9px; font-size:11px; white-space:pre-wrap; overflow-wrap:anywhere; max-height:80px; overflow:auto; }
.cm-scenario-text { margin:0; white-space:pre-wrap; overflow-wrap:anywhere; line-height:1.65; }
.cm-scenario-delay { display:flex; align-items:center; gap:10px; font-size:11px; color:var(--cm-muted); }
.cm-scenario-delay input { width:90px; margin-left:auto; }
.cm-scenario-progress { height:5px; border-radius:4px; background:#303030; overflow:hidden; }
.cm-scenario-progress>span { display:block; height:100%; background:var(--cm-accent); }
.cm-scenario-actions { position:relative; }
.cm-scenario-actions>summary { list-style:none; }
.cm-scenario-actions>summary::-webkit-details-marker { display:none; }
.cm-scenario-actions>.cm-menu { right:0; left:auto; width:235px; }
.cm-scenario-history-actions { position:relative; }
.cm-scenario-history-actions>summary { list-style:none; }
.cm-scenario-history-actions>summary::-webkit-details-marker { display:none; }
.cm-scenario-history-actions>.cm-menu { right:0; left:auto; width:210px; }
.cm-history-tabs { margin:0; }
.cm-defaults-saved { order:1; flex-basis:100%; color:#9ed6b4; font-size:12px; text-align:right; }
.cm-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media(max-width:720px) {
  .cm-scenario-layout { grid-template-columns:1fr; gap:12px; }
  .cm-scenario-groups { position:static; display:flex; overflow-x:auto; max-height:none; padding-bottom:4px; }
  .cm-scenario-groups button { flex:0 0 180px; }
  .cm-scenario-message { padding:11px; }
  .cm-scenario-album { grid-template-columns:1fr; }
  .cm-scenario-dialog { width:calc(100vw - 16px); }
  .cm-scenario-delay { flex-wrap:wrap; }
}

/* FAQ launch: reviewed name/photo setup before the first post. */
.cm-scenario-setup-list { display:grid; gap:10px; max-height:520px; overflow:auto; }
.cm-scenario-setup-fields { display:grid; grid-template-columns:minmax(0,1fr) 150px; gap:16px; padding-top:12px; }
.cm-scenario-setup-fields .cm-row input[type=file] { flex:1; min-width:120px; }
.cm-scenario-setup-photo { width:150px; max-width:100%; }
.cm-scenario-setup-photo img { display:block; width:100%; height:auto; aspect-ratio:1; object-fit:cover; border-radius:12px; }
.cm-scenario-setup-photo .cm-scenario-slide-pending { aspect-ratio:1; padding:8px; text-align:center; }
@media(max-width:720px) { .cm-scenario-setup-fields { grid-template-columns:minmax(0,1fr); } }

/* Scenario setup keeps each group's fields mounted while navigating locally. */
.cm-scenario-config-dialog { width:min(1180px,calc(100vw - 36px)); color-scheme:dark; }
.cm-scenario-config-dialog .cm-dialog-body,.cm-scenario-config-dialog .cm-config-nav { scrollbar-color:#484848 #161616; scrollbar-width:thin; }
.cm-config-tabs { margin:0; }
.cm-config-summary { padding:0 2px 12px; border-bottom:1px solid var(--cm-line); color:var(--cm-muted); font-size:12px; line-height:1.6; }
.cm-config-tools { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; }
.cm-config-tools>.cm-sub { flex:1 1 320px; margin:0; }
.cm-settings-section { border:1px solid var(--cm-line); border-radius:10px; background:#131313; min-width:0; }
.cm-settings-section>summary { display:flex; align-items:center; justify-content:space-between; gap:14px; padding:14px 16px; cursor:pointer; list-style:none; }
.cm-settings-section>summary::-webkit-details-marker { display:none; }
.cm-settings-section>summary b,.cm-settings-section>summary small { display:block; }
.cm-settings-section>summary small { color:var(--cm-muted); font-size:11px; margin-top:4px; font-weight:400; line-height:1.5; }
.cm-settings-section>summary>span:last-child { color:var(--cm-muted); transition:transform .15s; }
.cm-settings-section[open]>summary>span:last-child { transform:rotate(180deg); }
.cm-settings-section>.cm-form { padding:2px 16px 16px; }
.cm-settings-section>.cm-form>.cm-faq-intro { padding:0; border:0; background:transparent; }
.cm-config-layout { display:grid; grid-template-columns:220px minmax(0,1fr); gap:18px; align-items:start; }
.cm-config-nav { position:sticky; top:0; display:grid; gap:6px; max-height:65vh; overflow:auto; padding:1px; }
.cm-config-nav>button { display:grid; gap:6px; min-width:0; width:100%; padding:12px; border:1px solid var(--cm-line); border-radius:10px; color:var(--cm-text); background:#111; font:inherit; cursor:pointer; text-align:left; overflow-wrap:anywhere; }
.cm-config-nav>button:hover { border-color:#4d4d4d; }
.cm-config-nav>button.on { border-color:#607b2c; background:#1a2313; }
.cm-config-nav b { font-size:13px; font-weight:600; }
.cm-config-nav small { color:var(--cm-muted); font-size:11px; line-height:1.5; }
.cm-config-nav .cm-tag { justify-self:start; white-space:normal; text-align:left; line-height:1.4; max-width:100%; }
.cm-config-editors,.cm-config-editor { min-width:0; }
.cm-config-editor-head { display:grid; gap:5px; padding:3px 0 4px; }
.cm-config-editor-head h3 { margin:0; font-size:16px; line-height:1.5; overflow-wrap:anywhere; }
.cm-config-editor-head .cm-sub { margin:0; font-size:11px; }
.cm-config-section { padding:16px; border:1px solid var(--cm-line); border-radius:11px; background:#111; min-width:0; }
.cm-config-section>h4 { font-size:13px; margin:0; }
.cm-config-section .cm-scenario-setup-fields { padding-top:14px; grid-template-columns:minmax(0,1fr) 128px; }
.cm-config-section .cm-scenario-setup-photo { width:128px; }
.cm-config-section .cm-input,.cm-config-section .cm-select { min-width:0; }
.cm-config-effective { padding:10px 12px; border-radius:8px; background:#191919; color:#b4b9ad; font-size:11px; line-height:1.7; overflow-wrap:anywhere; }
.cm-scenario-config-dialog .cm-config-invalid { border-color:#f28b82!important; outline:2px solid #f28b8244; outline-offset:1px; }
.cm-scenario-config-dialog [data-config-ready] { margin-right:auto; color:var(--cm-muted); font-size:11px; }
.cm-scenario-config-dialog .cm-scenario-video { margin:0; }
.cm-scenario-config-dialog .cm-scenario-video video { width:min(220px,100%); }
.cm-scenario-group-progress { display:block; height:4px; background:#303030; border-radius:3px; overflow:hidden; margin-top:8px; }
.cm-scenario-group-progress>span { display:block; height:100%; background:var(--cm-accent); }
.cm-preparation-groups { display:grid; gap:9px; margin-top:16px; text-align:left; }
.cm-preparation-group { display:grid; gap:8px; padding:13px 15px; border:1px solid var(--cm-line); border-radius:10px; background:#111; }
.cm-preparation-group .cm-row { justify-content:space-between; }
.cm-preparation-group .cm-sub { margin:0; }
@media(max-width:720px) {
  .cm-scenario-config-dialog { width:calc(100vw - 16px); }
  .cm-config-layout { grid-template-columns:minmax(0,1fr); gap:14px; }
  .cm-config-nav { position:static; display:flex; overflow-x:auto; max-height:none; padding:1px 1px 5px; }
  .cm-config-nav>button { flex:0 0 185px; }
  .cm-config-section { padding:12px; }
  .cm-config-section .cm-scenario-setup-fields { grid-template-columns:minmax(0,1fr); }
  .cm-config-summary { font-size:11px; }
  .cm-settings-section>summary { padding:12px; }
  .cm-settings-section>.cm-form { padding:2px 12px 12px; }
  .cm-scenario-config-dialog [data-config-ready] { flex-basis:100%; }
}
.cm-dialog.cm-assist-media-dialog { width:min(1050px,calc(100vw - 32px)); }
.cm-assist-media-preview { display:flex; justify-content:center; align-items:center; min-width:0; }
.cm-assist-media-preview img,.cm-assist-media-preview video { display:block; max-width:100%; max-height:65vh; height:auto; object-fit:contain; border-radius:8px; }
.cm-assist-media-preview audio { width:min(100%,560px); }
.cm-assist-media-status { color:var(--cm-muted); padding:18px 0; line-height:1.6; }
