/* Simon workspace: operational-dashboard density and active theme tokens. */
/* Keep the shared shell outside the builder and independent of Bootstrap's
   body typography. The workspace takes only the height below the real header. */
body.simon-workspace { display:flex; flex-direction:column; height:100dvh!important; min-height:100dvh!important; overflow:hidden; }
body.simon-workspace > .sys-studio-header { flex:none; font-size:13px; line-height:normal; }
body.simon-workspace > #sysimpleAIBuilder { flex:1 1 0; height:auto; min-height:0; }
/* Resolve each studio's local palette from the active organisation theme.
   Local dark/light palettes otherwise mask custom themes such as Jarvis. */
body.simon-workspace[data-theme] :is(#sysimpleAIBuilder, .writing-navigation, #writing-studio) {
    --wr-bg:var(--adm-bg);
    --wr-surface:var(--adm-panel);
    --wr-secondary:var(--adm-surface-2, var(--adm-panel));
    --wr-text:var(--adm-text);
    --wr-muted:var(--adm-text-soft);
    --wr-line:var(--adm-border);
    --wr-accent:var(--adm-primary);
}
body.simon-workspace[data-theme] :is(#learning-studio, #domain-studio, #privacy-studio) {
    --lr-bg:var(--adm-bg);
    --lr-surface:var(--adm-panel);
    --lr-secondary:var(--adm-surface-2, var(--adm-panel));
    --lr-text:var(--adm-text);
    --lr-muted:var(--adm-text-soft);
    --lr-line:var(--adm-border);
    --lr-accent:var(--adm-primary);
}
body.simon-workspace[data-theme] #synonyms-studio {
    --syn-panel:var(--adm-panel);
    --syn-line:var(--adm-border);
    background:var(--adm-bg);
    color:var(--adm-text);
}
body.simon-workspace[data-theme] #writing-studio :is(input, select, textarea) {
    background:var(--adm-input-bg, var(--adm-panel));
    color:var(--adm-text);
    border-color:var(--adm-border);
}
.simon-workspace .ai-conversation-heading { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:10px; margin-bottom:8px; }
.simon-workspace .ai-conversation-actions { display:flex; align-items:center; flex-wrap:wrap; gap:8px; }
.simon-workspace #sysimpleAIBuilder .ai-conversation-heading .ai-workspace-title { margin:0; }
.simon-workspace #sysimpleAIBuilder { font-family:system-ui,-apple-system,"Segoe UI",sans-serif; }
.simon-workspace .sys-studio-module-actions { width:100%; max-width:none; box-sizing:border-box; justify-content:flex-end; gap:8px; padding:8px 18px; }
.simon-workspace #sysimpleAIBuilder :is(.ai-brief-actions button,.ai-domain-actions button,.writing-navigation :is(button, a[data-engine-management-entry])),
.simon-workspace :is(#btnNewChat,#btnExportAi,#btnAiTargetPointer,#send-btn) {
    display:inline-flex!important; align-items:center; justify-content:center; gap:8px;
    min-height:34px; border-radius:3px!important; font-size:13px; line-height:1.3;
}
.simon-workspace #sysimpleAIBuilder .writing-navigation { flex-shrink:0; gap:6px; padding:8px 18px; }
.simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry]) { padding:8px 12px; }
.simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry]) i { color:var(--wr-accent); }
.simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry])[aria-pressed="true"] i { color:inherit; }
.simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry]):hover { border-color:var(--wr-accent)!important; }
.simon-workspace #btnNewChat,
.simon-workspace #sysimpleAIBuilder #leftPane #btnCreateAiDomain,
.simon-workspace #sysimpleAIBuilder #send-btn {
    background:#3c8dbc!important; border:1px solid #367fa9!important; color:#fff!important; box-shadow:none!important;
}
.simon-workspace #sysimpleAIBuilder #btnApplyBrief { background:#008548!important; border-color:#008548!important; color:#fff!important; }
.simon-workspace #sysimpleAIBuilder #btnClearChat { background:var(--wr-surface)!important; border-color:color-mix(in srgb,#dd4b39 55%,var(--wr-line))!important; color:var(--wr-text)!important; }
.simon-workspace #sysimpleAIBuilder #btnClearChat i { color:#dd4b39; }
.simon-workspace #btnNewChat:hover,
.simon-workspace #sysimpleAIBuilder :is(#btnCreateAiDomain,#send-btn,#btnApplyBrief):enabled:hover { filter:brightness(.93); }
.simon-workspace #sysimpleAIBuilder #btnClearChat:hover { background:color-mix(in srgb,#dd4b39 12%,var(--wr-surface))!important; }
.simon-workspace #sysimpleAIBuilder :is(button,input,textarea):focus-visible { outline:2px solid var(--wr-accent)!important; outline-offset:2px; }
.simon-workspace #sysimpleAIBuilder .ai-workspace-title { display:flex; align-items:center; gap:10px; margin:0 0 6px; font-size:16px; }
.simon-workspace .ai-workspace-title img { width:28px; height:28px; object-fit:contain; }
.simon-workspace #sysimpleAIBuilder #rightPane { padding:0!important; gap:14px; border:0!important; background:transparent!important; }
.simon-workspace #rightPane .card { margin:0; flex-shrink:0; }
.simon-workspace #rightPane h3 label { margin:0; font:inherit; }
.simon-workspace .ai-brief-actions { display:flex; flex-wrap:wrap; align-items:center; gap:8px; margin-top:10px; }
.simon-workspace #sysimpleAIBuilder #ai-brief { min-height:140px; height:180px; resize:vertical; line-height:1.6; }
.simon-workspace #sysimpleAIBuilder .ai-chat-footer { border-color:var(--wr-line); padding-top:12px; }
.simon-workspace .ai-composer-label { display:block; margin:0 0 7px; font-size:12px; font-weight:600; color:var(--wr-muted); }
.simon-workspace .ai-composer-row { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:start; gap:8px; }
.simon-workspace .ai-composer-field { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; min-width:0; }
.simon-workspace #sysimpleAIBuilder #user-input { grid-column:1; grid-row:1; float:none; width:100%; min-width:0; height:42px; margin:0; padding:10px 12px; font-size:13px; box-sizing:border-box; }
.simon-workspace #sysimpleAIBuilder #send-btn { height:42px; min-height:42px; margin:0; padding:0 16px; white-space:nowrap; }
.simon-workspace #sysimpleAIBuilder #send-btn:disabled { opacity:.55; cursor:not-allowed; filter:none; }
.simon-workspace #sysimpleAIBuilder .ai-composer-field>.sys-text-trigger { grid-column:2; grid-row:1; width:34px; height:34px; margin:0 0 0 6px; padding:6px; color:var(--wr-accent)!important; background:var(--wr-secondary)!important; border:1px solid var(--wr-line)!important; opacity:1; }
.simon-workspace .ai-composer-field>.sys-text-assistant { grid-column:1/-1; grid-row:2; min-width:0; }
.simon-workspace #sysimpleAIBuilder .direct-chat-info { display:flex; justify-content:space-between; gap:12px; margin-bottom:7px; opacity:1; color:var(--wr-muted); }
.simon-workspace .direct-chat-info::before,.simon-workspace .direct-chat-info::after { display:none; }
.simon-workspace #sysimpleAIBuilder .direct-chat-text { border-radius:4px; line-height:1.6; }
.simon-workspace #sysimpleAIBuilder #chat-messages .right .direct-chat-text { background:color-mix(in srgb,var(--wr-accent) 10%,var(--wr-surface))!important; }
.simon-workspace #sysimpleAIBuilder .ai-domain-item>i:first-child { color:var(--wr-accent); }
@media(max-width:980px) {
    .simon-workspace #sysimpleAIBuilder :is(#leftPane,#rightPane):not(.is-open) { visibility:hidden; pointer-events:none; }
    .simon-workspace #sysimpleAIBuilder :is(#leftPane,#rightPane).is-open { visibility:visible; pointer-events:auto; }
    .simon-workspace #sysimpleAIBuilder #rightPane { padding:12px!important; background:var(--wr-bg)!important; }
    .simon-workspace #sysimpleAIBuilder .writing-navigation { flex-wrap:nowrap; overflow-x:auto; padding:8px 10px; }
    .simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry]) { flex:0 0 auto; white-space:nowrap; }
    .simon-workspace .sys-studio-module-actions { padding:8px 10px; flex-wrap:wrap; }
}
/* Participate in the shared action layer: its important declarations precede legacy CSS. */
@layer sysimple-actions {
    .simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry])[aria-pressed="true"] {
        background:var(--nav-tone)!important; color:var(--nav-on-tone)!important; border-color:var(--nav-tone)!important;
    }
    .simon-workspace #sysimpleAIBuilder button:not(.sys-studio-header button) {
        --action-surface:var(--wr-surface); --action-text:var(--wr-text); --action-line:var(--wr-line);
    }
    .simon-workspace #sysimpleAIBuilder :is(.writing-navigation :is(button, a[data-engine-management-entry]),.ai-domain-item,.ai-domain-free,.ai-mobile-tools button,.ai-mobile-close,#btnRefreshAiDomains) {
        --action-bg:var(--wr-surface); --action-fg:var(--wr-text); --action-border:var(--wr-line);
    }
    .simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry])[aria-pressed="true"],
    .simon-workspace :is(#btnNewChat,#btnCreateAiDomain,#send-btn) {
        --action-bg:var(--action-blue-fill); --action-fg:var(--action-on-fill); --action-border:var(--action-blue);
    }
    .simon-workspace #sysimpleAIBuilder #btnApplyBrief {
        --action-bg:var(--action-green-fill); --action-fg:var(--action-on-fill); --action-border:var(--action-green);
    }
    .simon-workspace #sysimpleAIBuilder #btnClearChat {
        --action-bg:var(--wr-surface); --action-fg:var(--wr-text); --action-border:var(--action-red);
    }
    .simon-workspace #sysimpleAIBuilder #leftPane .ai-domain-item.is-active {
        --action-bg:color-mix(in srgb,var(--wr-accent) 10%,var(--wr-surface)); --action-border:var(--wr-accent);
        box-shadow:inset 3px 0 var(--wr-accent)!important;
    }
}
/* Colour identifies each workspace; the filled tab identifies the current one. */
.simon-workspace .writing-navigation { --nav-on-tone:#10232e; }
.simon-workspace .writing-navigation [data-writing-mode="chat"] { --nav-tone:#5cb8ff; }
.simon-workspace .writing-navigation [data-writing-mode="admin"] { --nav-tone:#52d99a; }
.simon-workspace .writing-navigation [data-writing-mode="domains"] { --nav-tone:#56cdd1; }
.simon-workspace .writing-navigation [data-writing-mode="privacy"] { --nav-tone:#b9a0f5; }
.simon-workspace .writing-navigation [data-writing-mode="learning"] { --nav-tone:#ffb74d; }
body.simon-workspace[data-theme="light"] .writing-navigation { --nav-on-tone:#fff; }
body.simon-workspace[data-theme="light"] .writing-navigation [data-writing-mode="chat"] { --nav-tone:#2f739b; }
body.simon-workspace[data-theme="light"] .writing-navigation [data-writing-mode="admin"] { --nav-tone:#008548; }
body.simon-workspace[data-theme="light"] .writing-navigation [data-writing-mode="domains"] { --nav-tone:#087f86; }
body.simon-workspace[data-theme="light"] .writing-navigation [data-writing-mode="privacy"] { --nav-tone:#7655b5; }
body.simon-workspace[data-theme="light"] .writing-navigation [data-writing-mode="learning"] { --nav-tone:#9a5b05; }
.simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry]) i { display:inline-flex; align-items:center; justify-content:center; width:24px; height:24px; font-size:14px; border-radius:3px; color:var(--nav-tone); background:color-mix(in srgb,var(--nav-tone) 13%,transparent); }
.simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry])[aria-pressed="true"] i { color:inherit; background:color-mix(in srgb,var(--nav-on-tone) 15%,transparent); }
@layer sysimple-actions {
    .simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry]) {
        background:color-mix(in srgb,var(--nav-tone) 8%,var(--wr-surface))!important;
        color:var(--wr-text)!important; border-color:color-mix(in srgb,var(--nav-tone) 45%,var(--wr-line))!important;
    }
    .simon-workspace #sysimpleAIBuilder .writing-navigation :is(button, a[data-engine-management-entry]):hover:not([aria-pressed="true"]) { background:color-mix(in srgb,var(--nav-tone) 17%,var(--wr-surface))!important; border-color:var(--nav-tone)!important; }
}
@media(max-width:520px) {
    .simon-workspace #sysimpleAIBuilder #send-btn { padding:0 10px; gap:6px; }
    .simon-workspace #sysimpleAIBuilder #user-input { padding:10px 8px; }
    .simon-workspace #sysimpleAIBuilder .ai-workspace-title { font-size:14px; }
    .simon-workspace #sysimpleAIBuilder .direct-chat-text { max-width:calc(100% - 40px); padding:10px; }
}

/* Keep Simon actions on the selected workspace palette, not an inherited
   organization primary colour. Explicit organization themes remain supported. */
body.simon-workspace { --simon-action-accent:#5cb8ff; --simon-action-fill:#5cb8ff; --simon-action-on:#10232e; }
body.simon-workspace[data-theme="light"] { --simon-action-accent:#3c8dbc; --simon-action-fill:#2f739b; --simon-action-on:#fff; }
html[data-brand-theme]:not([data-brand-theme=""]) body.simon-workspace { --simon-action-accent:var(--brand-buttonBackground); --simon-action-fill:var(--brand-buttonBackground); --simon-action-on:var(--brand-buttonText); }
@layer sysimple-actions {
    .simon-workspace #sysimpleAIBuilder button:not(.sys-studio-header button) {
        --action-blue:var(--simon-action-accent); --action-blue-fill:var(--simon-action-fill); --action-on-fill:var(--simon-action-on);
    }
    .simon-workspace #sysimpleAIBuilder :is(#btnNewChat,#btnCreateAiDomain,#send-btn,#privacy-studio [data-new],#learning-studio .primary,#writing-studio .primary,#domain-studio .primary) {
        --action-bg:var(--simon-action-fill); --action-fg:var(--simon-action-on); --action-border:var(--simon-action-accent); --action-tone:var(--simon-action-accent);
        background:var(--action-bg)!important; color:var(--action-fg)!important; border-color:var(--action-border)!important;
    }
    .simon-workspace #sysimpleAIBuilder :is(#btnExportAi,#btnAiTargetPointer) {
        --action-bg:var(--wr-surface); --action-fg:var(--wr-text); --action-border:var(--wr-line);
    }
    .simon-workspace #sysimpleAIBuilder :is(#privacy-studio [data-save],#btnApplyBrief) {
        --action-tone:var(--action-green); --action-bg:var(--action-green-fill); --action-fg:var(--action-on-fill); --action-border:var(--action-green);
        background:var(--action-bg)!important; color:var(--action-fg)!important; border-color:var(--action-border)!important;
    }
    .simon-workspace #sysimpleAIBuilder :is(#privacy-studio [data-remove],#btnClearChat) { --action-tone:var(--action-red); }
    .simon-workspace #sysimpleAIBuilder :is(#btnNewChat,#btnCreateAiDomain,#send-btn,#btnApplyBrief,#privacy-studio [data-new],#privacy-studio [data-save]):enabled:hover {
        background:color-mix(in srgb,var(--action-bg) 88%,var(--action-text))!important; filter:none;
    }
}
.simon-workspace .writing-navigation .ai-nav-group-label{align-self:center;flex:0 0 auto;font-size:12px;color:var(--wr-muted);padding:0 4px;white-space:nowrap}
.simon-workspace .writing-navigation .ai-nav-group-label:not(:first-child){border-left:1px solid var(--wr-line);margin-left:6px;padding-left:12px}

/* Engine management is navigation and shares the other workspace controls. */
.simon-workspace .writing-navigation [data-engine-management-entry]{--nav-tone:var(--simon-action-accent);text-decoration:none;white-space:nowrap}
.simon-workspace .writing-navigation [data-engine-management-entry]:focus-visible{outline:2px solid var(--nav-tone);outline-offset:2px}
