/* Workspace presentation. Rebuilt from the reviewed design; no legacy style layer. */
/* AI Consultant base elements (the shared Studio stylesheet has no bare element resets). */
*{box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--brand-gray-light) transparent}
html,body{direction:rtl;text-align:right;margin:0;height:100%;background:#fff;font:15px/1.5 var(--font-ui);color:var(--ink)}
h1,h2,h3,p{margin:0}
h1{font-size:22px;font-weight:var(--weight-medium)}
h2{font-size:18px;font-weight:var(--weight-strong)}
h3{font-size:15px;font-weight:var(--weight-strong)}
small{font-size:12px;color:var(--ink-muted)}
a{color:#24657f}
button,input,select,textarea{font:inherit;color:inherit}
button{min-height:var(--control-height);height:var(--control-height);padding:4px 10px!important;border:0!important;border-radius:var(--radius-control)!important;background:transparent!important;box-shadow:none!important;font:var(--weight-medium) 14px/20px var(--font-ui)!important;display:inline-flex;align-items:center;justify-content:center;gap:6px;white-space:nowrap;text-decoration:none;color:var(--ink)!important;transform:none!important;cursor:pointer}
button:hover{background:var(--surface-subtle)!important}
button.btn-primary{background:var(--surface-selected)!important;color:var(--action)!important;font-weight:var(--weight-strong)!important}
button.btn-primary:hover{background:var(--action-hover)!important}
button.btn-delete{color:#983a34!important}
button:disabled{background:#f3f4f3!important;color:#7b817b!important;cursor:not-allowed}
input:not([type=checkbox]):not([type=file]):not([type=hidden]):not([type=search]),select,textarea{width:100%;min-width:0;min-height:36px;padding:8px 10px!important;background:var(--surface-subtle)!important;border:0!important;border-bottom:1px solid var(--line-control)!important;border-radius:var(--radius-control) var(--radius-control) 0 0!important;font:var(--weight-regular) 14px/1.5 var(--font-ui)!important;color:var(--ink)!important}
textarea{resize:vertical;min-height:96px}
input[type=checkbox]{width:16px;height:16px;accent-color:var(--action)}
label{font-size:13px;color:var(--ink-muted)}
svg{vertical-align:middle;flex-shrink:0}
button>svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
:focus-visible{outline:2px solid var(--action)!important;outline-offset:3px}
.btn-chat-send,#btn-assistant-send,#btn-exec-wa-test-send{background:var(--surface-selected)!important;color:var(--action)!important;font-weight:var(--weight-strong)!important}
.wa-btn-del{color:#983a34!important}
.menu-icon:has(use[href="#i-meta-official"]){width:18px;fill:currentColor;stroke:none}
.mobile-only,.mobile-bottom-nav{display:none}
#app-container{height:100dvh;display:flex;flex-direction:column;overflow:hidden}#cloud-status{font-size:12px;color:var(--ink-muted)}#cloud-status:has(>span:empty){position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.sidebar-nested-list{max-height:35vh;overflow:auto}.sidebar-nested-item{font-size:12px;padding:6px;cursor:pointer;overflow-wrap:anywhere}
.app-sidebar.collapsed .sidebar-nested-list{display:none}.resize-handle{position:absolute;inset-inline-end:0;top:0;bottom:0;width:4px;cursor:col-resize}
#workspace-main{flex:1;min-width:0;min-height:0;overflow:hidden;background:white}.tab-content{display:none;height:100%;min-height:0;overflow:auto}.tab-content.active{display:flex;flex-direction:column}.panel{min-width:0;background:white;border:0;box-shadow:none;border-radius:0;padding:24px}.panel-header,.section-title{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap}.panel-header{margin-bottom:20px}.editor-actions{display:flex;gap:6px;flex-wrap:wrap}.ds-page-header{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 28px;border-bottom:1px solid var(--line);background:white;flex-shrink:0}.page-header-main{display:flex;align-items:flex-start;gap:12px;min-width:0}.page-header-icon{width:40px;height:40px;display:grid;place-items:center;flex:0 0 40px;color:var(--ink)}.page-header-icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.page-header-icon svg:has(use[href="#i-meta-official"]){width:28px;fill:currentColor;stroke:none}.page-header-copy{min-width:0}.page-header-title{font-size:22px;font-weight:var(--weight-medium);line-height:1.3}.page-header-subtitle,.page-header-meta{font-size:13px;color:var(--ink-muted);margin-top:4px}.page-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}.page-header-actions .file-badge{align-self:center}
.editor-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;flex:1;min-height:0;gap:20px;padding:0 28px 24px}.editor-container{display:flex;flex-direction:column;padding:0;min-height:0}.skills-sidebar{padding:20px 0 0 0;border-inline-start:1px solid var(--line);padding-inline-start:16px}.editor-textarea{flex:1;min-height:220px}.form-group,.ds-field{display:flex;flex-direction:column;gap:6px;min-width:0}.form-group{margin-bottom:14px}.skills-load-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 0;font-size:12px;color:var(--ink-muted)}#mobile-file-selector-container{display:none}.skill-item{padding:10px;border-radius:var(--radius-control);cursor:pointer}.skill-item.active{background:var(--surface-selected)}.file-badge{font-size:11px;padding:2px 5px;background:var(--surface-subtle);border-radius:3px}
.model-add-group{display:grid;grid-template-columns:minmax(9rem,12rem) minmax(10rem,1fr) auto;align-items:end;gap:12px;max-width:900px;margin-bottom:8px}.model-add-field{margin:0;min-width:0}.model-add-group button{min-height:40px;margin:0}.model-add-group input,.model-provider-select{height:40px;min-width:0}.model-add-group input{direction:ltr;text-align:left}.model-add-section{container-type:inline-size}@container(max-width:640px){.model-add-group{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.model-add-group button{grid-column:1/-1;justify-self:start}}@container(max-width:420px){.model-add-group{grid-template-columns:minmax(0,1fr)}.model-add-group button{justify-self:stretch;min-height:var(--touch-target)}.model-add-group #input-new-model-id,.model-add-group #input-model-provider{min-height:var(--touch-target);font-size:16px!important}}.model-provider-badge{display:inline-flex;align-items:center;min-height:22px;padding:1px 7px;border:1px solid var(--line);border-radius:999px;color:var(--ink-muted);font-size:11px;font-weight:var(--weight-strong)}.model-card-display-name{font-weight:var(--weight-bold)}
.models-container{width:100%;box-sizing:border-box;padding:20px 28px 24px}.models-panel{padding:0}.model-catalogue-section{margin-bottom:24px}.models-intro,.model-help{margin:6px 0 16px;color:var(--ink-muted);font-size:13px;max-width:900px}.model-add-section{padding-top:20px;border-top:1px solid var(--line)}.model-add-label{display:block;margin-bottom:8px;color:var(--ink)}.model-card-item{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px;padding:14px 0;border-bottom:1px solid var(--line)}.model-card-copy{min-width:0}.model-card-title{display:flex;align-items:center;gap:8px;min-width:0;flex-wrap:wrap;font-weight:var(--weight-strong)}.model-card-title.is-default{color:#166534}.model-card-id{max-width:100%;overflow-wrap:anywhere;font-family:'JetBrains Mono',monospace;font-size:14px}.model-default-badge{display:inline-flex;align-items:center;min-height:24px;padding:2px 8px;border-radius:999px;background:#dcfce7;color:#15803d;font-size:12px;font-weight:var(--weight-strong)}.model-card-description{margin-top:4px;font-size:12px;color:var(--ink-muted);overflow-wrap:anywhere}.model-card-description.is-default{color:#15803d}.model-card-actions{min-width:0}.model-actions-row{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
/* Issue #53: the providers' current models as buttons (as Maps #339 W10c Settings). */.model-add-group.model-index-provider{grid-template-columns:minmax(9rem,12rem)}.model-index-offers{display:flex;flex-wrap:wrap;gap:var(--space-2,8px);margin:var(--space-2,8px) 0}.model-index-offers .ds-button{direction:ltr;unicode-bidi:isolate}.model-index-row{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2,8px) var(--space-3,12px);margin:0 0 var(--space-2,8px)}.model-index-row .model-help{margin:0}.model-manual{margin:var(--space-2,8px) 0 var(--space-3,12px)}.model-manual>summary{cursor:pointer;color:var(--ink-muted);font-size:13px;min-height:var(--control-height,32px);display:flex;align-items:center}.model-manual[open]>summary{margin-bottom:var(--space-2,8px)}
.chats-layout{display:flex;flex:1;min-height:0;overflow:hidden}.chats-sidebar-panel{display:flex;flex-direction:column;width:280px;min-width:210px;max-width:45%;min-height:0;border-inline-end:1px solid var(--line);background:white}.chats-sidebar-header{padding:12px 16px!important;display:flex;align-items:center;gap:6px;border-bottom:1px solid var(--line)}.chats-sidebar-list{flex:1;overflow:auto;min-height:0}.chat-list-item{cursor:pointer;border-bottom:1px solid var(--line);padding:12px 16px!important;background:white}.chat-list-item:hover{background:var(--surface-subtle)}.chat-list-item.active{background:var(--surface-selected)}.chat-list-item .chat-avatar,.chat-header .chat-avatar{display:none}.chat-list-info{min-width:0;flex:1}.chat-list-top{display:flex;justify-content:space-between;gap:8px}.chat-list-name{font-size:14px;font-weight:var(--weight-strong)}.chat-list-time,.chat-list-preview{font-size:12px;color:var(--ink-muted)}.chat-list-preview{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chats-resizer{width:4px;flex-shrink:0;cursor:col-resize}
.chat-panel{display:flex;flex-direction:column;flex:1;min-width:0;min-height:0;background:white;border:0!important;border-radius:0;box-shadow:none}.chat-header{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:16px 24px;border-bottom:1px solid var(--line);flex-shrink:0}.chat-profile{display:flex;gap:8px;align-items:center;min-width:0}.chat-name{font-size:18px;font-weight:var(--weight-medium)}.chat-status{font-size:12px;color:var(--ink-muted)}.chats-header-actions,.chats-button-row{display:flex;align-items:center;gap:6px!important;flex-wrap:wrap}.feedback-btn-group{border:0!important;background:transparent!important;padding:0!important}.btn-back-mobile{display:none}
.chat-body{display:flex;flex-direction:column;gap:12px;flex:1;min-height:0;overflow:auto;background:var(--wa-canvas);padding:20px 28px}.chat-bubble{border-radius:var(--radius-panel);padding:9px 12px;max-width:min(80%,650px);width:fit-content;box-shadow:0 1px 1px #00000012;overflow-wrap:anywhere;flex-shrink:0}.bubble-ai{background:var(--wa-incoming);align-self:flex-end}.bubble-user{background:var(--wa-outgoing);align-self:flex-start}.bubble-system{background:var(--wa-system);align-self:center;max-width:min(90%,680px)}.bubble-text{font-size:15px;white-space:pre-wrap;line-height:1.5}.bubble-meta{display:flex;align-items:center;justify-content:flex-end;gap:5px;font-size:11px;color:var(--wa-meta);direction:ltr;margin-top:4px}.chat-date-separator{align-self:center;font-size:12px;padding:3px 10px;background:var(--wa-date);color:#435862;border-radius:6px;margin:4px 0;flex-shrink:0}
.ds-receipt{display:inline-flex;align-items:center;font-size:11px;color:var(--wa-meta);gap:4px}.ds-receipt svg{width:18px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round}.ds-receipt.read{color:var(--wa-read)}.ds-receipt.failed{color:var(--danger)}
.ds-stage{display:inline-flex;font-size:12px!important;background:var(--surface-subtle);color:var(--ink-muted)!important;padding:2px 6px;border-radius:3px}.ds-stage[data-stage=open_inquiry]{background:#edf3f7;color:#345d75!important}.ds-stage[data-stage=active_booking]{background:#edf4ed;color:#326348!important}.ds-stage[data-stage=b2b]{background:#f4eff7;color:#6a497a!important}
.tool-card{background:#fffdf3;border:1px solid #e5ddbd;border-radius:var(--radius-panel);width:min(100%,720px);align-self:center;padding:0;flex-shrink:0;overflow:hidden;overflow-wrap:anywhere;color:var(--ink)}.tool-card-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px;padding:14px 16px}.tool-card-title{font-size:14px;font-weight:var(--weight-bold);line-height:1.35}.tool-card-kind{font-size:11px;line-height:1.4;color:var(--ink-muted);background:#f5f0dc;border-radius:3px;padding:3px 6px;white-space:nowrap}.tool-card-summary{font-size:14px;line-height:1.55;margin:5px 0 0;color:var(--ink)}.tool-card-note{font-size:12px;line-height:1.5;color:var(--ink-muted);padding:0 16px 12px}.tool-card details{font-size:12px;border-top:1px solid #e5ddbd}.tool-card summary{cursor:pointer;color:var(--ink-muted);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;list-style:none}.tool-card summary::-webkit-details-marker{display:none}.tool-card summary:hover{background:#faf7e9}.tool-card details[open]>summary{border-bottom:1px solid #ebe4ca}.tool-args{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px;margin:0;padding:14px 16px 16px}.tool-field{display:grid;align-content:start;gap:4px;min-width:0}.tool-args dt{font-size:11px;color:var(--ink-muted);font-weight:var(--weight-strong)}.tool-args dd{margin:0;padding:8px 10px;min-height:37px;border:1px solid #ebe4ca;border-radius:var(--radius-control);background:#fffef9;font-size:13px;line-height:1.55;white-space:pre-wrap;unicode-bidi:isolate;text-align:start}.tool-args .wide{grid-column:1/-1}.tool-card-empty{grid-column:1/-1;color:var(--ink-muted)}.tool-result-body{display:grid;gap:10px;padding:14px 16px 16px;font-size:14px;line-height:1.55;white-space:pre-wrap}.tool-result-id{display:block;color:var(--ink-muted)}.conversation-meta{margin-top:5px;display:flex;align-items:center;gap:0;flex-wrap:wrap;font-size:11px;color:var(--ink-muted)}.conversation-meta-item{display:inline-flex;align-items:center;gap:3px;line-height:1.4}.conversation-meta-item+.conversation-meta-item::before{content:'·';padding:0 5px;color:var(--brand-gray-light)}.conversation-meta-success{color:var(--success)}.conversation-meta-info{color:#345d75}.conversation-meta-review{color:var(--danger);font-weight:var(--weight-strong)}.chats-empty-state{display:grid;place-items:center;flex:1;min-width:0;width:100%;padding:var(--space-5);color:var(--ink-muted)}.chats-empty-copy{width:100%;max-width:320px;direction:rtl;text-align:right}.chats-empty-copy h2{margin:0 0 var(--space-2);font-size:16px;font-weight:var(--weight-strong);color:var(--ink)}.chats-empty-copy p{margin:0;font-size:14px;line-height:1.6}
.chat-footer{padding:12px 16px;background:white;border-top:1px solid var(--line);flex-shrink:0}.playground-layout,.assistant-layout{display:flex;flex:1;min-height:0;width:100%;max-width:none;margin:0;padding:0}.typing-indicator{align-self:flex-start;display:flex;gap:4px;padding:12px;background:white;border-radius:var(--radius-panel)}.typing-dot{width:5px;height:5px;border-radius:50%;background:var(--brand-gray-light)}#normal-input-bar{gap:8px!important}#normal-input-bar input{border:0!important;background:transparent!important;font-size:15px!important}
#assistant-chat-stream{background:white!important;padding:20px 28px!important;gap:18px!important}.assistant-welcome-message,.assistant-welcome{width:100%;max-width:none;margin:0;padding:16px 0;text-align:start}.assistant-welcome-message h1,.assistant-welcome h3{font-size:22px;line-height:1.4;font-weight:var(--weight-medium);margin:0 0 10px}.assistant-welcome-message p{font-size:15px;color:var(--ink-muted);max-width:85ch}.assistant-welcome-message .eyebrow,.welcome-icon,.assistant-welcome img{display:none}.assistant-start-actions{display:flex;gap:24px;flex-wrap:wrap;margin-top:24px}.assistant-start-actions button{height:auto;min-height:48px;display:flex;flex-direction:column;align-items:flex-start;padding:6px 0!important;background:transparent}.assistant-start-actions small{font-size:12px;font-weight:var(--weight-regular)}.assistant-start-actions svg{display:none}.assistant-msg-user{align-self:flex-start;background:var(--surface-subtle);padding:10px 14px;border-radius:6px;max-width:85%;font-size:15px}.assistant-msg-ai{align-self:stretch;background:white;padding:6px 0;max-width:95ch;font-size:15px;overflow-wrap:anywhere}.assistant-msg-ai h1,.assistant-msg-ai h2{font-size:18px}.assistant-msg-ai p+p{margin-top:10px}.assistant-msg-ai pre{overflow:auto;max-width:100%;padding:12px;background:var(--surface-subtle)}
#workspace-main .message-composer{margin:12px 28px 24px;padding:8px;position:relative;border:1px solid var(--line)!important;border-radius:var(--radius-panel);background:white}.message-composer-grid{display:grid!important;grid-template-columns:36px 36px minmax(0,1fr) 60px;gap:8px!important;align-items:center!important;width:100%}.message-composer-grid[style*="display: none"]{display:none!important}#workspace-main .message-composer-text{grid-column:1/-1;grid-row:1;min-height:70px!important;background:transparent!important;border:0!important;font-size:15px!important;resize:none}.message-composer-grid>button{grid-row:2;height:36px!important;min-height:36px!important;align-self:center!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;padding-block:0!important;margin:0!important}#btn-assistant-file,#btn-assistant-mic,#voice-record-btn{width:36px!important;min-width:36px!important}#voice-record-btn{grid-column:1}#btn-assistant-send,#btn-chat-send{grid-column:4;width:60px!important}#assistant-file-preview{margin:0 28px;font-size:12px}
.ds-filter-tools{position:relative;padding:0 16px 8px;display:flex;align-items:center;gap:8px;font-size:12px}.ds-filter-tools details{position:static;flex-shrink:0}.ds-filter-tools summary{cursor:pointer;padding:4px 8px;border-radius:var(--radius-control);list-style:none}.ds-filter-tools summary:hover,.ds-filter-tools details[open]>summary{background:var(--surface-selected);color:var(--action)}.ds-filter-popover{position:absolute;inset-inline:12px;top:32px;background:white;border:1px solid var(--line);border-radius:6px;padding:16px;box-shadow:0 6px 20px #00000012;z-index:8;display:grid;gap:8px}.ds-filter-tools>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ds-filter-popover .ds-inline{justify-content:space-between}
.wa-manager-wrapper{padding:20px 28px;overflow:auto}.ds-tabs{display:flex;gap:20px;border-bottom:1px solid var(--line);padding:0 0 4px;margin-bottom:20px;flex-wrap:wrap}.ds-tab{border-radius:0!important;height:36px!important;padding:6px 2px!important}.ds-tab[aria-selected="true"]{border-bottom:2px solid var(--action)!important;color:var(--action)!important}.ds-tab:focus-visible{outline:2px solid var(--action);outline-offset:1px}.ds-button.primary:disabled{background:var(--surface-subtle)!important;color:var(--ink-muted)!important}[role="tabpanel"][hidden]{display:none!important}.wa-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.wa-card{min-width:0;border:1px solid var(--line);border-radius:var(--radius-panel);background:white;display:flex;flex-direction:column;overflow:hidden}.wa-card-header{padding:14px 16px;display:flex;gap:12px;align-items:start;flex-wrap:wrap}.wa-tpl-name{font-size:14px;font-weight:var(--weight-strong);direction:ltr;text-align:start;overflow-wrap:anywhere}.wa-tpl-meta{font-size:11px;color:var(--ink-muted);margin-top:4px}.wa-badges-row{display:flex;gap:6px;flex-wrap:wrap}.wa-badge{font-size:10px;padding:2px 6px;border-radius:3px;background:var(--surface-subtle);color:var(--ink-muted)}.wa-badge-approved{color:#326348;background:#eaf3ee}.wa-badge-pending{color:#71561b;background:#fff5d9}.wa-badge-rejected{color:#954040;background:#fbeeee}.wa-bubble-preview{padding:14px;background:var(--wa-canvas);flex:1}.wa-bubble-body{padding:10px 12px;background:white;border-radius:6px;font-size:15px;line-height:1.5;white-space:pre-wrap;overflow-wrap:anywhere}.wa-var-tag{background:#e5f2f8;color:#245e75;border-radius:3px;padding:0 2px;direction:ltr;unicode-bidi:isolate}.wa-bubble-footer{font-size:12px;color:var(--ink-muted);margin-top:6px}.wa-card-actions{display:flex;align-items:center;gap:4px;padding:8px 10px;flex-wrap:wrap}.wa-card-actions button svg{display:none}.wa-card-actions .wa-btn-del svg{display:block}.wa-filters-bar,.wa-toolbar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:16px}.wa-modal-box-large{width:min(900px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:white;border-radius:var(--radius-panel);box-shadow:var(--shadow-dialog)}.wa-create-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;padding:20px 24px}.wa-modal-box-large>div:first-child{padding:16px 24px!important;border-bottom:1px solid var(--line);font-size:18px}.wa-modal-box-large>div:first-child>div{font-size:18px!important}.wa-modal-box-large>div:first-child>div>svg{display:none}.wa-create-split>div:last-child{padding:16px!important;border-radius:6px;background:var(--wa-canvas)}
.modal-overlay,.assistant-modal-overlay{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:16px;z-index:1000;background:#22222255}.modal-overlay.active,.assistant-modal-overlay.active{display:flex}.modal-overlay:not(.active),.assistant-modal-overlay:not(.active){visibility:hidden;pointer-events:none}dialog.modal-overlay,dialog.assistant-modal-overlay{margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;color:var(--ink)}dialog:not([open]){display:none!important}dialog.modal-overlay::backdrop,dialog.assistant-modal-overlay::backdrop{background:transparent}.modal,.assistant-modal{width:min(700px,100%);max-height:calc(100dvh - 32px);overflow:auto;background:#fff;padding:24px!important;border-radius:var(--radius-panel);box-shadow:var(--shadow-dialog)}.modal-header,.assistant-modal-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.modal-actions,.assistant-modal-actions{display:flex;align-items:center;gap:8px;justify-content:flex-end;flex-wrap:wrap;margin-top:20px}
.review-evidence{white-space:pre-wrap;overflow-wrap:anywhere}.ds-delivery{flex-shrink:0;max-height:35vh;overflow:auto;padding:6px 24px;font-size:12px;color:var(--ink-muted);border-bottom:1px solid var(--line)}.ds-delivery summary{cursor:pointer;padding:4px 0}.delivery-content code{display:block;overflow-wrap:anywhere;font-size:11px}.delivery-content li{padding:8px 0;border-bottom:1px solid var(--line)}
.ds-inline{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ds-stack{display:grid;gap:16px}.ds-card{padding:16px;border:1px solid var(--line);border-radius:var(--radius-panel);background:white}.ds-empty{display:grid;place-content:center;text-align:center;gap:8px;padding:32px 16px;color:var(--ink-muted)}.ds-empty h2{font-size:18px}.ds-status{display:inline-flex;padding:2px 6px;border-radius:3px;background:var(--surface-subtle);font-size:12px}.ds-status.success{background:#eaf3ee;color:var(--success)}.ds-status.warning{background:#fff5d9;color:var(--warning)}.ds-status.error{background:var(--surface-selected);color:var(--danger)}.ds-table-wrap{overflow:auto;max-width:100%}.ds-table{width:100%;border-collapse:collapse;text-align:start}.ds-table th,.ds-table td{padding:10px 12px;border-bottom:1px solid var(--line);text-align:start}.ds-table th{font-weight:var(--weight-strong);background:var(--surface-subtle)}.ds-ltr,bdi{unicode-bidi:isolate}.ds-ltr{direction:ltr}.ds-audio{display:flex;flex-direction:column;gap:8px;min-width:0;max-width:360px;width:100%}.ds-audio audio{width:100%;min-width:0}.ds-audio .ds-button{height:auto;min-height:32px;white-space:normal}
.operation-notice{position:static;display:flex;align-items:center;gap:12px;flex-shrink:0;padding:6px 16px;border-bottom:1px solid var(--line);background:var(--surface);color:var(--ink);font-size:14px;overflow-wrap:anywhere}.operation-notice>span{flex:1;min-width:0}.operation-notice>.ds-button{min-width:var(--touch-target);min-height:var(--touch-target);padding:0;flex-shrink:0}.operation-notice-error{color:var(--danger);background:var(--surface-selected)}.tools-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.tools-grid button{justify-content:flex-start;height:auto;min-height:36px;white-space:normal;text-align:start}.tools-note{font-size:13px;color:var(--ink-muted);margin-top:16px}#login-overlay{position:fixed;inset:0;z-index:100;background:white;display:flex;align-items:center;justify-content:center;overflow:auto;padding:24px 16px}.login-card{width:100%;max-width:360px;margin:auto;padding:24px;text-align:center;border:1px solid var(--line);border-radius:12px}.login-card h2{font-size:20px;font-weight:var(--weight-medium)}.login-card p{font-size:14px;color:var(--ink-muted)}.login-card>button{width:100%;margin-top:24px;min-height:40px;height:auto;white-space:normal;background:var(--surface-subtle)!important;border:1px solid var(--line-control)!important}
.login-services{display:flex;flex-direction:column;gap:12px;margin-top:24px}.login-service{width:100%;min-height:72px!important;height:auto!important;padding:12px 16px!important;justify-content:flex-start!important;gap:14px!important;text-align:start;white-space:normal;background:#fff!important;border:1px solid var(--line)!important;border-radius:var(--radius-panel)!important}.login-service:hover{background:var(--surface-subtle)!important}.login-service-icon{width:40px;height:40px;flex:0 0 40px;border-radius:var(--radius-panel);background:var(--surface-selected);color:var(--action);display:grid;place-items:center}.login-service-text{display:flex;flex-direction:column;gap:2px;align-items:flex-start}.login-service-text b{font-size:16px;font-weight:var(--weight-strong)}.login-service-text span{font-size:13px;color:var(--ink-muted);font-weight:var(--weight-regular)}
.login-card>button svg{width:18px;height:18px}.login-card img{width:36px;height:36px}#login-loading-msg,#login-error-msg{font-size:13px;overflow-wrap:anywhere}#login-error-msg{color:var(--danger);background:var(--surface-selected);border-radius:var(--radius-control)}
.feedback-btn-group{display:flex!important;align-items:center;gap:2px!important}.feedback-choice{padding-inline:8px!important}.feedback-choice[aria-pressed=true]{font-weight:var(--weight-bold)!important}.feedback-choice-good[aria-pressed=true]{background:#eaf3ee!important;color:var(--success)!important}.feedback-choice-fix[aria-pressed=true]{background:#fbeeee!important;color:var(--danger)!important}.feedback-save-status{min-width:42px;font-size:11px;color:var(--ink-muted)}.feedback-save-status.is-error{color:var(--danger)}
@media(max-width:1100px){.wa-grid{grid-template-columns:1fr}.chats-header-actions{gap:4px!important}}
@media(max-width:700px){#cloud-status{display:none}.sidebar-nested-list,.resize-handle{display:none!important}.mobile-bottom-nav{display:none!important}#workspace-main{padding:0}.panel{padding:16px}.panel-header h2{flex-basis:100%;font-size:18px}.editor-layout{grid-template-columns:1fr;padding:0 16px 16px;gap:12px}.skills-sidebar{display:none!important}#mobile-file-selector-container{display:block}.chats-sidebar-panel{width:100%!important;max-width:none;min-width:0}.chats-layout:not(.chat-active) .chat-panel{display:none}.chats-layout.chat-active .chats-sidebar-panel{display:none}.chats-resizer{display:none}.btn-back-mobile{display:inline-flex}.chat-header{padding:12px;gap:8px}.chat-name{font-size:16px}.chats-header-actions{width:100%;justify-content:space-between}.chats-button-row{gap:2px!important}.chats-button-row button{font-size:12px!important;padding:4px 6px!important}.chats-button-row .desktop-only{display:initial}.chat-body{padding:14px 12px;gap:10px}.chat-bubble{max-width:90%}.bubble-system{max-width:100%}.tool-card{padding:0}.tool-card-header,.tool-args,.tool-result-body{padding-inline:12px}.tool-card-note{padding-inline:12px}.tool-args{grid-template-columns:1fr;gap:10px}.chat-footer{padding:8px}.chat-header .btn{font-size:12px!important}#assistant-chat-stream{padding:16px!important}.assistant-welcome-message h1,.assistant-welcome h3{font-size:18px}.assistant-welcome-message p{font-size:14px}.assistant-start-actions{flex-direction:column;gap:10px;margin-top:20px}#workspace-main .message-composer{margin:8px 12px 16px}#workspace-main .message-composer-text{min-height:60px!important}.wa-manager-wrapper{padding:16px}.ds-tabs{gap:12px}.ds-tab{font-size:13px!important}.wa-grid{grid-template-columns:1fr}.wa-card-header{padding:12px}.wa-bubble-preview{padding:12px}.wa-create-split{grid-template-columns:1fr;padding:16px;gap:16px}.wa-modal-box-large>div:first-child{padding:12px 16px!important}.wa-modal-box-large>div:first-child>div{font-size:16px!important}.modal,.assistant-modal{padding:16px!important}.modal h2,.assistant-modal h2{font-size:16px}.modal [style*="grid-template-columns"],#tab-whatsapp [style*="grid-template-columns"]{grid-template-columns:minmax(0,1fr)!important}.modal [style*="display: flex"]{flex-wrap:wrap}.modal [style*="min-width"]{min-width:0!important}.modal input,.modal textarea,.modal select,.wa-create-split input,.wa-create-split textarea,.wa-create-split select{font-size:16px!important}.ds-card{padding:12px}.tools-grid{grid-template-columns:1fr}.desktop-only{display:none}.mobile-only{display:inline}#workspace-tools-open,#btn-logout{font-size:12px!important;padding:4px 6px!important}.ds-delivery{padding:6px 12px}}
.wa-templates-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr));gap:18px}.wa-kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;margin:16px 0}.wa-kpi-card{padding:16px;border:1px solid var(--line);border-radius:6px}.wa-kpi-label,.wa-kpi-sub{font-size:12px;color:var(--ink-muted)}.wa-kpi-val{font-size:22px;font-weight:var(--weight-medium);margin:8px 0}.wa-health-container{display:grid;gap:16px}.chat-list-item{display:flex;align-items:center;gap:8px}.chat-list-item-avatar{display:none!important}.chat-list-item-info{min-width:0;flex:1}.chat-list-item-header{display:flex;justify-content:space-between;gap:8px}.chat-list-item-name{font-size:14px;font-weight:var(--weight-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-item-time{font-size:11px;color:var(--ink-muted);flex-shrink:0}.chat-list-item-preview{font-size:13px;color:var(--ink-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-list-item-badge{width:6px;height:6px;border-radius:50%;background:var(--action)}#rec-dot-indicator{background:var(--danger);border-radius:50%}#voice-waveform-bars>span{background:var(--brand-gray-light)}#tab-whatsapp .panel-header{align-items:start}#tab-whatsapp .panel-header p{font-size:13px;color:var(--ink-muted)}
.wa-profile-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:24px;align-items:start;max-width:1200px;margin:0 auto}.wa-profile-split>div:first-child{padding:16px!important;min-width:0}#wa-profile-preview-card{position:sticky;top:16px;min-width:0;padding:16px!important;border-inline-end:1px solid var(--line)}#wa-profile-description{min-height:88px}#wa-profile-website{min-height:56px}.wa-profile-identity{width:100%;margin:0 0 16px;padding:12px;border:1px solid var(--line);border-radius:6px;background:var(--surface-subtle)}.wa-profile-identity>div{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,1.25fr);gap:12px;padding:6px 0}.wa-profile-identity>div+div{border-top:1px solid var(--line)}.wa-profile-identity dt{color:var(--ink-muted);font-size:12px}.wa-profile-identity dd{margin:0;overflow-wrap:anywhere;font-weight:var(--weight-strong)}.wa-kpi-val{overflow-wrap:anywhere}
.wa-analytics-table-tools{display:flex;align-items:center;gap:8px;margin:0 0 8px}.wa-analytics-table-tools select{width:auto;min-width:170px}.wa-analytics-table th{padding:4px 8px;border-bottom:1px solid var(--line)}.wa-analytics-table td{padding:10px 12px;border-bottom:1px solid var(--line)}.wa-sort-button{width:100%;justify-content:flex-start!important;padding:4px!important;font-weight:var(--weight-strong)!important}.wa-sort-button svg{width:14px;height:14px;opacity:.45}.wa-sort-button.is-sorted svg{opacity:1;color:var(--action)}.wa-analytics-empty{padding:24px!important;text-align:center;color:var(--ink-muted)}
.whatsapp-manager-layout{padding:20px 28px 24px;min-height:0}.wa-controls-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:20px}.wa-search-box{flex:1;min-width:200px}.wa-category-filters{display:flex;flex-wrap:wrap;gap:4px}.wa-actions-group{display:flex;gap:4px}
@media(max-width:700px){.whatsapp-manager-layout{padding:16px}.wa-search-box{min-width:0;flex-basis:100%}.wa-controls-bar{gap:8px}.wa-category-filters{gap:2px}.wa-kpi-val{font-size:18px}}
@media(max-width:700px){.models-container{padding:16px}.model-card-item{grid-template-columns:minmax(0,1fr);gap:10px}.model-card-actions{justify-self:start}}
@media(max-width:900px){.wa-profile-split{grid-template-columns:minmax(0,1fr);gap:16px}#wa-profile-preview-card{position:static;width:100%;max-width:420px;justify-self:center;border-inline-end:0;border-top:1px solid var(--line)}}
.tool-card summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto;justify-content:initial}.tool-card summary::after{content:'⌄';font-size:16px;line-height:1;transition:transform .15s ease}.tool-card details[open]>summary::after{transform:rotate(180deg)}
@media(max-width:700px){.ds-page-header{min-height:84px;padding:16px;align-items:flex-start}.ds-page-header:has(.ds-tabs){flex-wrap:wrap}.ds-page-header:has(.ds-tabs) .ds-tabs{order:3;flex-basis:100%;align-self:stretch}.page-header-icon{width:36px;height:36px;flex-basis:36px}.page-header-title{font-size:18px}.page-header-subtitle,.page-header-meta{font-size:12px}.page-header-actions{max-width:48%}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Compact workspace: original controls remain available in named dialogs. */
.workspace-panel-content .page-header-actions{max-width:none;justify-content:flex-start;align-items:flex-start;flex-direction:column}
.workspace-panel-content .page-header-meta,.workspace-panel-content .page-header-subtitle{font-size:14px;overflow-wrap:anywhere}
.workspace-panel-content .chats-header-actions{order:-1;display:flex;flex-direction:column;align-items:stretch!important;gap:16px!important}
.workspace-panel-content .chats-button-row{flex-wrap:wrap;gap:8px!important}
.workspace-panel-content .ds-delivery{max-height:none;padding:0;border:0;font-size:14px}
@media(max-width:700px){
 .compact-mobile-ready .btn-back-mobile,.compact-mobile-ready .human-ownership-action{min-width:var(--touch-target);min-height:var(--touch-target);height:auto}
 .compact-mobile-ready .ds-page-header{min-height:56px;padding:6px 12px;gap:8px;align-items:center}
 .compact-mobile-ready .page-header-main{align-items:center;flex:1;gap:8px}
 .compact-mobile-ready .page-header-icon{display:none}
 .compact-mobile-ready .page-header-title{font-size:18px;line-height:1.25;overflow-wrap:anywhere}
 .compact-mobile-ready #tab-chats:has(.chat-active)>.ds-page-header{display:none}
 .compact-mobile-ready .chat-header{padding:6px 8px;gap:4px;min-height:56px;flex-wrap:nowrap}
 .compact-mobile-ready .chat-profile{min-width:0;flex:1;gap:6px!important}
 .compact-mobile-ready .chat-status-info{min-width:0}
 .compact-mobile-ready .chat-name{font-size:16px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 .compact-mobile-ready .chat-status{font-size:11px}
 .compact-mobile-ready .workspace-panel .sidebar-nested-list{display:none!important}
 .compact-mobile-ready .workspace-panel .chats-header-actions{width:100%;margin:0}
 .compact-mobile-ready .workspace-panel .chats-button-row button{font-size:14px!important;padding:8px 10px!important}
 .compact-mobile-ready .workspace-panel .feedback-btn-group{flex-wrap:wrap}
 .compact-mobile-ready .workspace-panel #btn-logout{align-self:flex-start}
 /* Attention: a 24 px red count inside a 44 px touch target. */
 .compact-mobile-ready .mobile-attention:not([hidden]){flex-shrink:0;width:var(--touch-target);min-width:var(--touch-target);min-height:var(--touch-target);padding:0!important;display:inline-flex!important;align-items:center;justify-content:center;border:0;border-radius:0;background:radial-gradient(circle,var(--danger) 11.5px,transparent 12px)!important;font-size:12px!important;font-weight:var(--weight-bold)!important;line-height:1!important;color:#fff!important}
 /* Header: logo keeps its size and the same visual gap to the menu icon and to the service switcher; the switcher shrinks instead of overlapping. */
 .compact-mobile-ready .assistant-welcome-message{padding:8px 0;text-align:start}
 .compact-mobile-ready .assistant-welcome-message h1{font-size:20px;margin-bottom:8px}
 .compact-mobile-ready .assistant-welcome-message p{font-size:14px;line-height:1.4}
 .compact-mobile-ready .assistant-start-actions{flex-direction:row;flex-wrap:wrap;gap:6px;margin-top:12px}
 .compact-mobile-ready .assistant-start-actions button{min-height:var(--touch-target)!important;height:auto!important;padding:8px!important;font-size:13px!important}
 .compact-mobile-ready .assistant-start-actions small{display:none}
 .compact-mobile-ready #assistant-chat-stream{padding:12px!important}
 .compact-mobile-ready #workspace-main .message-composer{margin:6px 8px max(8px,env(safe-area-inset-bottom))}
 .compact-mobile-ready #workspace-main .message-composer-text{font-size:16px!important;min-height:var(--touch-target)!important}
 .compact-mobile-ready .ds-tabs{flex-wrap:nowrap;overflow-x:auto;gap:14px;margin-bottom:12px}
 .compact-mobile-ready .ds-tab{min-height:var(--touch-target);flex-shrink:0}
 .compact-mobile-ready .chats-sidebar-header{padding:8px 12px!important}
 .compact-mobile-ready .ds-filter-tools{padding-bottom:4px}
}
:root .assistant-change-dialog { width: min(900px, calc(100vw - 24px)); max-height: calc(100dvh - 32px); overflow: auto; padding: 16px; border: 1px solid var(--border-color, #ddd); border-radius: 12px; }
.assistant-change-dialog::backdrop { background: rgb(0 0 0 / 45%); }
.assistant-change-dialog header { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.assistant-change-dialog button { margin: 4px; max-width: calc(100% - 8px); white-space: normal; overflow-wrap: anywhere; height: auto; min-height: 32px; text-align: start; }
.assistant-change-dialog header h2 { min-width: 0; overflow-wrap: anywhere; }
.assistant-change-dialog header button { flex-shrink: 0; }
.assistant-change-dialog .assistant-change-row { display: block; width: calc(100% - 8px); padding: 8px; }
.assistant-change-dialog h3 { overflow-wrap: anywhere; }
.assistant-change-dialog details { margin: 12px 0; padding: 8px; border: 1px solid var(--border-color, #ddd); }
.assistant-change-dialog pre { white-space: pre-wrap; overflow-wrap: anywhere; text-align: start; font: inherit; }
.assistant-change-dialog label { display: block; margin: 12px 0; }
.assistant-change-dialog textarea { display: block; width: 100%; box-sizing: border-box; margin-top: 8px; }
.assistant-change-dialog input[type=checkbox] { width: 20px; height: 20px; vertical-align: middle; }
.message-composer-grid>.composer-clear{grid-column:3;justify-self:start;gap:4px;min-width:0;max-width:100%;padding-inline:8px!important;font-size:12px;white-space:nowrap}
.composer-clear svg{width:16px;height:16px;flex-shrink:0}
.message-composer-text:placeholder-shown~.composer-clear,.message-composer-text:disabled~.composer-clear,.message-composer-text[readonly]~.composer-clear{display:none!important}
@media(max-width:700px){.message-composer-grid{grid-template-columns:var(--touch-target) var(--touch-target) minmax(0,1fr) 52px}.message-composer-grid>button{height:var(--touch-target)!important;min-height:var(--touch-target)!important}#btn-assistant-file,#btn-assistant-mic,#voice-record-btn{width:var(--touch-target)!important;min-width:var(--touch-target)!important}#btn-assistant-send,#btn-chat-send{width:52px!important}}
:root .crm-integration-dialog {
  box-sizing: border-box;
  width: min(680px, 100%);
  max-width: 100%;
  max-height: calc(100dvh - 32px);
  padding: clamp(12px, 3vw, 24px) !important;
  overflow-y: auto;
  overflow-wrap: anywhere;
}
.crm-integration-dialog div { min-width: 0; }
.crm-integration-dialog div[style*="display: flex"] { flex-wrap: wrap; gap: 8px; }
#wa-crm-webhook-url-input { flex: 1 1 240px; min-width: 0; resize: none; overflow-wrap: anywhere; text-align: left; }
#wa-crm-json-code-block { padding: 12px 0; margin: 0; max-width: 100%; white-space: pre-wrap; overflow-wrap: anywhere; text-align: left; line-height: 1.5; }
.wa-bubble-footer, #wa-preview-bubble-footer, #wa-edit-preview-bubble-footer { direction: rtl; unicode-bidi: isolate; text-align: start; overflow-wrap: anywhere; }
.review-case { min-width: 0; overflow-wrap: anywhere; text-align: start; }
.review-case h3, .review-case p { margin: 0; white-space: pre-wrap; }
.review-case button { align-self: start; max-width: 100%; white-space: normal; }
/* Human conversation controls use the existing design tokens. */
.human-control-bar{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:center;padding:10px 16px;border-bottom:1px solid var(--line);flex-shrink:0}.human-control-summary,.human-control-actions{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;min-width:0;max-width:100%}.human-control-actions{margin-inline-start:auto}.human-control-actions .ds-button:disabled,.human-composer .ds-button:disabled,.human-control-dialog .ds-button:disabled,.model-add-group button:disabled{background:var(--surface-subtle)!important;color:var(--ink-muted)!important;opacity:.75}.human-control-unavailable{font-size:12px;color:var(--ink-muted)}
.human-control-bar:empty{display:none}
.human-owner-pill,.human-window-pill{max-width:100%;min-width:0;overflow-wrap:anywhere;font-size:12px}.human-owner-pill{border-radius:var(--radius-control);background:var(--surface-subtle);padding:4px 8px;font-weight:var(--weight-strong)}.human-window-pill{color:var(--ink-muted)}
.human-owner-pill[data-state="human"]{background:var(--surface-subtle);font-weight:var(--weight-strong)}
.human-control-status,.human-unresolved{font-size:12px;flex-basis:100%;overflow-wrap:anywhere}.human-control-status:empty{display:none}
.human-control-status[data-error="true"],.human-unresolved{color:var(--danger)}
.human-composer{display:flex;gap:.5rem;align-items:flex-end;padding-bottom:max(.75rem,env(safe-area-inset-bottom))}
.human-composer[hidden]{display:none!important}
.human-composer textarea{flex:1;min-width:0;min-height:var(--touch-target);max-height:10rem;resize:vertical}
.human-control-dialog{width:min(32rem,calc(100vw - 2rem));max-height:85dvh;overflow:auto;border:1px solid var(--line);border-radius:var(--radius-panel);padding:var(--space-5);box-shadow:var(--shadow-dialog)}
.human-control-dialog form{display:flex;flex-direction:column;gap:.75rem}
.human-field{display:flex;flex-direction:column;gap:.3rem}
.human-field input,.human-field textarea,.human-control-dialog select{width:100%;box-sizing:border-box;min-height:2.5rem;font:inherit}
.human-template-preview{white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;background:var(--surface-subtle);padding:.75rem}
.bubble-author{overflow-wrap:anywhere;font-weight:var(--weight-strong);font-size:.75rem;margin-bottom:.3rem}
@media(max-width:600px){.human-control-bar{padding:8px 12px;gap:8px}.human-control-actions{margin-inline-start:0;flex-basis:100%}.human-control-bar .ds-button,.human-composer .ds-button,.human-control-dialog .ds-button{min-height:var(--touch-target)}.human-composer{flex-wrap:wrap}.human-composer textarea{flex-basis:70%}.human-control-dialog{max-height:80dvh;padding:var(--space-4)}.human-control-dialog input,.human-control-dialog textarea,.human-composer textarea{font-size:16px!important}}
/* Ownership and statuses belong to the contact header, with one compact visual size. */
#chats-viewer-header{flex-wrap:nowrap;gap:12px;min-height:64px}
#chats-viewer-header .chat-profile{min-width:0;flex:1 1 160px}
#chats-viewer-header .chat-status-info{min-width:0}
#chats-viewer-header .chat-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#chats-viewer-header .human-control-bar{display:flex;align-items:center;flex-wrap:wrap;gap:6px 12px;padding:0;border:0;flex:0 1 auto;min-width:0}
#chats-viewer-header .human-control-summary,#chats-viewer-header .human-control-actions,.human-secondary-actions{display:flex;align-items:center;flex-wrap:wrap;gap:6px;margin:0;flex-basis:auto;min-width:0}
#chats-viewer-header .human-owner-pill,#chats-viewer-header .human-window-pill{box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;min-height:26px!important;height:26px;min-width:0;padding:3px 8px!important;border:1px solid var(--line-control);border-radius:var(--radius-control);background:var(--surface);color:var(--ink-muted);font:var(--weight-medium) 12px/18px var(--font-ui)!important;white-space:nowrap}
#chats-viewer-header .human-control-bar button:focus-visible{outline:2px solid var(--action);outline-offset:2px}
#chats-viewer-header .human-control-bar button:disabled{background:var(--surface-subtle)!important;color:var(--ink-muted)!important;opacity:.75}
#chats-viewer-header #conversation-information-open{flex:0 0 32px;margin:0}
.conversation-control-details{display:grid;gap:12px}
.conversation-control-details:empty{display:none}
.conversation-control-details .human-control-summary{font-size:14px;gap:6px 8px}
.conversation-control-details .human-owner-pill,.conversation-control-details .human-window-pill{font:inherit;padding:0;background:transparent}
@media(max-width:700px){#chats-viewer-header{gap:6px;min-height:56px}#chats-viewer-header .chat-profile{flex:1 1 0;gap:4px!important}#chats-viewer-header .human-control-bar{flex:0 0 auto;max-width:44%}#chats-viewer-header .btn-back-mobile{width:26px;min-width:26px;padding:0}}
/* Shared dialog chrome: title on the right, accessible close target on the left. */
.human-dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}
.human-preview-label{font-size:13px;color:var(--ink-muted)}
.human-template-preview{margin:0;border-radius:var(--radius-control);line-height:1.6}
.human-composer[data-window="closed"]{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px 16px;flex-shrink:0}
.human-window-explanation{font-size:13px;line-height:1.45;color:var(--ink-muted)}
.human-template-action{min-height:var(--touch-target);white-space:nowrap;color:var(--action)!important;background:var(--surface-selected)!important}
@media(max-width:700px){.human-composer[data-window="closed"]{padding:8px 12px max(8px,env(safe-area-inset-bottom))}}
.human-template-variables{display:grid;gap:12px}
#chats-viewer-header .human-owner-pill{max-width:180px;overflow:hidden;text-overflow:ellipsis;display:block}
/* Manual template preview shares the fixed conversation composer. */
#chats-viewer-footer[data-window="closed"]:has(.human-template-composer){display:block}
.human-template-composer{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:end;width:100%;margin:0}
.human-template-content{min-width:0;max-height:38dvh;overflow:auto;overscroll-behavior:contain}
.human-template-content .human-template-preview{margin:8px 0 0;padding:10px;white-space:pre-wrap;overflow-wrap:anywhere;font:inherit;background:var(--surface-muted,#f6f7f8)}
.human-template-content .human-field{margin:8px 0}
.human-field small{display:block;color:var(--text-secondary,#595959);font-size:12px;line-height:1.5}
.human-variable-tools{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.human-variable-token{display:inline-flex;align-items:center;gap:4px;direction:ltr}
.human-copy-variable{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border-color,#d5d7da);background:transparent;border-radius:var(--radius-control);color:inherit;cursor:pointer}
.human-copy-variable svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:1.6}
.human-copy-variable:focus-visible{outline:2px solid var(--brand-red,#a82016);outline-offset:2px}
.human-variable-definition{margin:12px 0;padding:12px;border:1px solid var(--border-color,#d5d7da);min-width:0}
.human-variable-definition .human-field{margin-top:8px}
@media(max-width:700px){.human-template-composer{grid-template-columns:minmax(0,1fr)}.human-template-composer>button{justify-self:start}.human-copy-variable{width:40px;height:40px}}
.human-template-settings .ds-dialog-header{position:sticky;top:0;z-index:1;background:var(--surface);padding-block:8px}
.human-template-settings .human-template-enabled{display:flex;align-items:center;gap:10px;min-height:var(--touch-target);cursor:pointer}
.human-template-settings .human-template-enabled input{width:20px!important;height:20px!important;min-height:20px!important;margin:0;flex:0 0 20px}
.human-template-settings .human-template-preview{font:inherit;white-space:pre-wrap;overflow-wrap:anywhere;background:var(--surface-subtle);padding:12px}
/* Compact mobile message preview; variable editing stays outside the conversation footer. */
@media(max-width:700px){
  #chats-viewer-footer .human-template-mobile{display:block}
  .human-template-meta{display:flex;align-items:center;gap:8px;min-height:28px;margin-bottom:4px}
  .human-template-caption{color:var(--ink-muted);font-size:12px;white-space:nowrap}
  .human-template-meta select{min-width:0;max-width:55%;flex:1;min-height:36px;font:inherit;font-size:13px;padding:4px;background:transparent;border:1px solid var(--line-control);border-radius:var(--radius-control)}
  .human-template-message-row{display:flex;align-items:flex-end;gap:8px}
  .human-template-message-row .human-template-preview{flex:1;min-width:0;max-height:25dvh;overflow:auto;overscroll-behavior:contain;margin:0;padding:10px 12px;background:var(--surface-subtle);border:1px solid var(--line);border-radius:var(--radius-control);font:var(--weight-regular) 15px/1.5 var(--font-ui);white-space:pre-wrap;overflow-wrap:anywhere;color:var(--ink)}
  .human-template-send{display:inline-flex;align-items:center;justify-content:center;flex:0 0 var(--touch-target);width:var(--touch-target);height:var(--touch-target);min-height:var(--touch-target);padding:0;border:0;border-radius:var(--radius-control);background:var(--surface-selected);color:var(--action);cursor:pointer}
  .human-template-send svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
  .human-template-send:disabled{color:var(--ink-muted);background:var(--surface-subtle);cursor:default;opacity:.6}
  .human-template-edit{margin-inline-start:auto;border:0;background:transparent;color:var(--action);font:var(--weight-medium) 13px var(--font-ui);padding:8px 2px;min-height:36px;cursor:pointer;white-space:nowrap}
  .human-template-send:focus-visible,.human-template-edit:focus-visible{outline:2px solid var(--action);outline-offset:2px}
  dialog.human-template-fields-dialog{box-sizing:border-box;width:100%;max-width:100%;max-height:92dvh;margin:auto 0 0;padding:0;border-radius:12px 12px 0 0}
  .human-template-fields-dialog form{display:flex;flex-direction:column;max-height:92dvh;gap:0}
  .human-template-fields-dialog .ds-dialog-header{box-sizing:border-box;flex:0 0 auto;padding:10px 16px;border-bottom:1px solid var(--line)}
  .human-template-fields-body{min-height:0;overflow:auto;overscroll-behavior:contain;padding:12px 16px;display:grid;gap:12px}
  .human-template-fields-body .human-field{margin:0}
  .human-template-fields-body .human-template-preview{padding:12px;background:var(--surface-subtle);white-space:pre-wrap;overflow-wrap:anywhere;font:inherit}
  .human-template-fields-dialog .human-dialog-actions{flex:0 0 auto;margin:0;padding:12px 16px max(12px,env(safe-area-inset-bottom));border-top:1px solid var(--line)}
}
/* Keep dismissal available while long dialog content scrolls. */
/* Same inline approved-template composer at desktop and mobile widths. */
#chats-viewer-footer .human-template-inline{display:grid;grid-template-columns:minmax(0,1fr) var(--touch-target);align-items:end;gap:8px}
.human-template-inline .human-template-content{max-height:40dvh;min-width:0}
.human-template-inline-frame{background:var(--surface-subtle);border-radius:var(--radius-control);padding:10px 12px;line-height:1.5;overflow-wrap:anywhere}
.human-template-inline-row{display:flex;direction:rtl;align-items:baseline;gap:4px;min-width:0}.human-template-inline-row input{flex:0 1 18ch;width:18ch;min-width:0}.human-template-inline-row+.human-template-inline-row{margin-top:8px}
.human-template-inline-row textarea{box-sizing:border-box;flex:1;width:100%;min-width:0;min-height:56px;max-height:18dvh;padding:0 4px;border:0;border-bottom:1px solid var(--line-control);border-radius:0;background:transparent;font:inherit;color:var(--ink);resize:vertical}
.human-template-fixed{white-space:pre-wrap;flex-shrink:0}
.human-template-signature{white-space:pre-wrap}
.human-template-input-help{display:block;color:var(--ink-muted);font-size:12px;line-height:1.4;margin-top:4px}
.human-template-inline .human-template-send{display:inline-flex;align-items:center;justify-content:center;width:var(--touch-target);height:var(--touch-target);min-height:var(--touch-target);padding:0;border:0;border-radius:var(--radius-control);background:var(--surface-selected);color:var(--action);cursor:pointer;justify-self:end}
.human-template-inline .human-template-send svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7}
.human-template-inline .human-template-send:disabled{color:var(--ink-muted);background:var(--surface-subtle);cursor:default;opacity:.6}
.human-template-inline .human-template-send:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.human-template-inline select{max-width:100%;min-height:36px;margin-bottom:6px}
@media(max-width:700px){.human-template-inline-row textarea{font-size:16px!important}.human-template-inline .human-window-explanation{font-size:12px;margin:0 0 6px}}
.human-template-collapsed .human-template-content{max-height:none;overflow:visible}.human-template-collapsed .human-window-explanation{margin:0 0 4px;font-size:12px}
.human-template-expand{display:block;box-sizing:border-box;width:100%;min-height:var(--touch-target);padding:8px 12px;text-align:start;background:var(--surface-subtle);border:1px solid var(--line-control);border-radius:var(--radius-control);color:var(--ink-muted);font:inherit;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:text}
.human-template-expand:focus-visible,.human-template-collapse:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.human-template-head{display:flex;align-items:flex-start;gap:8px}.human-template-head .human-window-explanation{flex:1;min-width:0}
/* Undo send (Issue #22): the held message replaces the composer until it is sent or cancelled. */
.human-send-hold{flex:1;display:flex;align-items:flex-start;gap:12px;min-width:0;min-height:var(--touch-target);padding:8px 12px;background:var(--surface-selected);border:1px solid var(--line-control);border-radius:var(--radius-control)}
.human-send-hold-info{flex:1;min-width:0;display:grid;gap:2px;direction:rtl;text-align:right}
.human-send-hold-text{font-weight:var(--weight-strong);color:var(--ink)}.human-send-hold-count{font-variant-numeric:tabular-nums}
.human-send-hold-preview{margin:4px 0 0;font-size:15px;line-height:1.5;color:var(--ink);white-space:pre-wrap;overflow-wrap:anywhere;max-height:40dvh;overflow-y:auto;overscroll-behavior:contain}
.human-send-hold-cancel{flex-shrink:0;min-height:var(--touch-target);font-weight:var(--weight-strong)}.human-send-hold-cancel:focus-visible{outline:2px solid var(--action);outline-offset:2px}
.human-template-collapse{flex:none;min-height:32px;padding:2px 12px}
/* The dashboard uses one RTL reading direction on desktop and mobile.
   Explicit LTR machine identifiers remain isolated, while their labels stay RTL. */
:is(h1,h2,h3,h4,h5,h6,p,label,legend,small,summary,dt,dd,[role="status"],[role="alert"]):not([dir="ltr"]){direction:rtl;unicode-bidi:isolate;text-align:right!important}
:where(input,textarea,select):not([dir="ltr"]){direction:rtl;text-align:right!important}
[dir="rtl"],.human-window-explanation,.human-template-input-help,.human-template-fixed,.page-header-copy,.model-help,.model-card-description,.tool-card-note,.review-evidence{direction:rtl;unicode-bidi:isolate;text-align:right}
[dir="ltr"]{unicode-bidi:isolate;text-align:right}
.human-template-input-help small{display:block}
[dir="auto"]{direction:rtl!important;unicode-bidi:isolate!important;text-align:right!important}
.wa-grid>div,.chats-empty-state,.wa-analytics-empty{direction:rtl;text-align:right!important}
/* Each filter follows its label language; the surrounding panel remains RTL. */
.wa-filter-btn{display:inline-flex;align-items:center;gap:.35em;white-space:nowrap}
/* Assistant modes: assistant chat, simulation and tests share one tab; the switch sits in the page header. */
.ds-page-header .ds-tabs{margin:0;padding:0;border-bottom:0;flex-shrink:0;align-self:flex-end}
#assistant-chat-view[hidden],#assistant-simulation-view[hidden],#assistant-tests-view[hidden]{display:none!important}
.sim-bar{display:flex;align-items:center;gap:8px;padding:6px 16px;border-bottom:1px solid var(--line);background:var(--surface);flex-shrink:0;min-width:0}
.sim-chip{font-size:12px;padding:2px 8px;border-radius:10px;background:var(--surface-selected);color:var(--action);cursor:help;flex-shrink:0}
.sim-bar select{max-width:220px;min-width:0;min-height:32px;border:1px solid var(--line-control);border-radius:6px;background:var(--surface);padding:2px 6px;font:inherit;font-size:13px}
.sim-status{flex:1;min-width:0;font-size:12px;color:var(--ink-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sim-icon{padding:6px!important;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sim-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.7}
.eval-controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px}
.eval-controls label{display:inline-flex;align-items:center;gap:6px}
.eval-controls select{max-width:100%;min-height:36px;border:1px solid var(--line-control);border-radius:6px;background:var(--surface);padding:4px 8px;font:inherit}
.assistant-tests{flex:1;min-height:0;overflow-y:auto;padding:16px 24px}
.assistant-tests-card{display:flex;flex-direction:column;gap:10px}
.eval-case{border-top:1px solid var(--line);padding:8px 0}.eval-case summary{cursor:pointer;font-weight:var(--weight-strong)}
.eval-case p,.eval-finding p{margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}
.eval-turn{border-inline-start:2px solid var(--line);padding-inline-start:8px;margin:6px 0}
@media(max-width:700px){.assistant-tests{padding:12px}.eval-controls label{flex:1 1 100%}.eval-controls select{flex:1;font-size:16px}.sim-bar{padding:6px 8px;gap:6px;flex-wrap:wrap}.sim-bar select{flex:1 1 0;max-width:none;font-size:16px}.sim-chip{display:none}.sim-status{flex-basis:100%;order:9;white-space:normal}.sim-status:not(:has(span:not(:empty))){display:none}}
#login-overlay.login-restoring .login-card{visibility:hidden;animation:login-reveal 0s linear 1.5s forwards}@keyframes login-reveal{to{visibility:visible}}
@media(prefers-reduced-motion:reduce){#login-overlay.login-restoring .login-card{animation:login-reveal 0s linear 1.5s forwards!important}}
/* Chat and test text: each line carries dir="rtl" or dir="ltr" from textDirection() and aligns to its own start. */
.bidi-line{unicode-bidi:isolate}.bidi-line[dir],.chat-list-item-preview[dir],.bidi-text[dir]{text-align:start!important}.bidi-text[dir="ltr"]{direction:ltr}.bidi-gap{height:.75em}
.assistant-msg-ai .bidi-line{margin-bottom:.15rem;line-height:1.5}
/* Voice messages: 360 px player, narrower only when the bubble is. */
.audio-player-wrapper{width:360px;max-width:100%;min-width:0}.audio-player-wrapper audio{display:block;width:100%;height:40px}
/* Test results: Hebrew label, message lines in their own direction. */
.eval-said{margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}.eval-said>strong{display:block;font-weight:var(--weight-strong)}
/* Simulation source: the WhatsApp training is read-only, so its settings, reset and composer are hidden. */
.sim-source{display:inline-flex;gap:2px}
#assistant-simulation-view[data-source="whatsapp"] :is(#sim-profile,#sim-rules,.btn-delete.sim-icon,.message-composer){display:none}
/* Period bar (Issue #36): one component on every report. Period choice first, then on its own line at the start side
   the covered days, directly above the numbers they describe. */
.ds-period-bar{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2);margin-bottom:var(--space-4)}
.ds-period-controls{width:100%;justify-content:space-between;gap:var(--space-3)}
.ds-period-range{margin:0;font-size:14px;color:var(--ink-muted)}
.ds-period-range>bdi{color:var(--ink);font-weight:var(--weight-strong)}
.ds-period-range[data-state="error"],.ds-period-range[data-state="unknown"]{color:var(--warning)}
/* Cost table: source, then model or category, then billed items in one vocabulary. */
.ds-cost-table td:last-child,.ds-cost-table th:last-child{text-align:end;white-space:nowrap}
.ds-cost-table tr.ds-cost-provider>*{background:var(--surface-subtle);font-weight:var(--weight-strong)}
.ds-cost-table tr.ds-cost-model td:first-child{font-weight:var(--weight-strong)}
.ds-cost-table tr.ds-cost-item td:first-child{padding-inline-start:calc(12px + var(--space-4))}
.ds-cost-table tr.ds-cost-zero td{color:var(--ink-muted)}
.ds-cost-raw{display:block;margin-top:2px;font-size:12px;color:var(--ink-muted);text-align:start;overflow-wrap:anywhere}
.costs-container{width:100%;box-sizing:border-box;padding:20px 28px 24px}
@media(max-width:700px){.costs-container{padding:16px}}
