/* Approved Nordic workbench: tokens and layout are shared by real modules. */
:root {
  font-family: "Segoe UI", "Microsoft YaHei", "PingFang SC", sans-serif;
  --canvas:#faf9f6; --surface:#fff; --surface-soft:#f1f0eb; --surface-green:#e9edf0;
  --ink:#22262b; --muted:#656b72; --line:#e4e3de; --line-strong:#a0a5a9;
  --ui-accent:#506577; --ui-selected:#e9edf0; --ui-success:#35634b; --red-700:#a13a30;
  --text-selection-bg:#2563eb; --text-selection-ink:#fff; --chat-reply-surface:#f1f0ec;
  --soft:var(--surface-soft); --control-line:var(--line-strong); --accent:var(--ui-accent); --selected:var(--ui-selected);
  --green-950:var(--ink); --green-900:var(--ink); --green-700:var(--ui-accent); --green-600:var(--ink);
  --green-100:var(--ui-selected); --green-50:var(--surface-soft);
  --apple-blue:var(--ui-accent); --apple-blue-hover:#404b56; --apple-blue-soft:var(--ui-selected);
  color:var(--ink); background:var(--canvas); accent-color:var(--ui-accent);
}
:root[data-ui-theme="pure"] { --canvas:#f6f7f8; --surface-soft:#f1f3f5; --line:#e0e3e6; --ui-selected:#e9ecef; --ui-accent:#404b56; --chat-reply-surface:#f1f3f5; }
html, body { background:var(--canvas); color:var(--ink); }
::selection { background:var(--text-selection-bg); color:var(--text-selection-ink); text-shadow:none; }
input, textarea { caret-color:var(--ui-accent); }
:where(button,a,summary,input,textarea,select):focus-visible { outline:2px solid var(--ui-accent); outline-offset:3px; }
input:focus,select:focus,textarea:focus { border-color:var(--ui-accent); box-shadow:none; }
input::placeholder,textarea::placeholder { color:var(--muted); }
.button.primary,.action-button,.workspace-business-composer .form-actions .button.primary,.workspace-localize-controls .form-actions .action-button { background:var(--ink); border-color:var(--ink); color:var(--surface); }
.button.primary:hover:not(:disabled),.action-button:hover:not(:disabled),.workspace-business-composer .form-actions .button.primary:hover:not(:disabled) { background:#3a4148; border-color:#3a4148; }
.button.secondary,.quiet-button,.section-copy { color:var(--ink); }
.button.secondary:hover:not(:disabled),.quiet-button:hover:not(:disabled) { background:var(--surface-soft); border-color:var(--line-strong); }
.nav-item.active,.nav-item.active :where(strong,i),.workspace-focus-button.active,.rich-output-view-toggle button.active,.jumia-market-output-tabs button.active,.jumia-market-template-switcher .button.active,.workspace-region-tabs button.active { background:var(--ui-selected); color:var(--ink); border-color:var(--line); }
.nav-item:not(.active):hover,.jumia-market-template-switcher .button.active:hover:not(:disabled) { background:var(--surface-soft); color:var(--ink); }
.brand-mark { background:var(--ink); color:var(--surface); }
.app-shell { grid-template-columns:220px minmax(0,1fr); }
.sidebar { position:sticky; top:0; height:100dvh; padding:22px 14px 12px; display:flex; flex-direction:column; overflow:hidden; background:var(--surface); border-right:1px solid var(--line); }
.sidebar-brand { flex:0 0 auto; margin-bottom:24px; }
.sidebar .main-nav { flex:1 1 auto; min-height:0; overflow-y:auto; display:flex; flex-direction:column; gap:5px; padding-bottom:20px; }
.secondary-nav-group { display:flex; flex-direction:column; gap:5px; margin-top:20px; padding-top:16px; border-top:1px solid var(--line); }
.mobile-workflow-shortcuts { display:none; }
.workspace-region-caption { grid-column:1/-1; font-size:12px; color:var(--muted); }
.nav-item { min-height:46px; padding:11px 12px; border:0; border-radius:8px; background:transparent; color:var(--muted); }
.nav-item strong { color:inherit; font-size:14px; font-weight:550; }
.nav-item small { display:none; }
.nav-item.active strong { font-weight:650; }
.workspace-nav-group { display:grid; gap:8px; margin-bottom:12px; }
.sidebar-region-tabs { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; margin:0 5px; }
.workspace-region-tabs button { min-height:36px; padding:6px; font-size:12px; border:1px solid var(--line); border-radius:6px; color:var(--muted); background:var(--surface); }
.sidebar-workflow-picker { padding:0 5px; gap:6px; }
.sidebar-workflow-picker > span { color:var(--muted); font-size:12px; }
.sidebar-workflow-picker select { width:100%; min-width:0; border-color:var(--line-strong); font-size:13px; }
.sidebar .sidebar-user { position:static; flex:0 0 auto; margin-top:auto; padding:14px 0 0; border-top:1px solid var(--line); background:var(--surface); }
.sidebar-user strong { font-size:13px; }
.sidebar-user span { font-size:12px; }
.user-avatar { color:var(--ink); background:var(--surface-soft); }
.topbar { min-height:72px; padding:14px 32px; background:var(--surface); gap:16px; border-bottom:1px solid var(--line); }
.topbar h1 { font-size:20px; font-weight:650; }
.topbar-actions { flex-wrap:wrap; gap:8px; }
.topbar .status-pill { max-width:190px; font-size:12px; border:0; background:transparent; }
.status-pill.online,.message.success { color:var(--ui-success); background:transparent; }
.workspace-focus-controls { border:1px solid var(--line); border-radius:8px; background:var(--surface-soft); padding:3px; }
.workspace-focus-button { min-height:34px; font-size:13px; }
.workspace-focus-label { display:inline; }
.content { max-width:1680px; margin:0 auto; padding:28px 32px 40px; }
#view-workspace,#view-workspace[data-pane-focus="input"],#view-workspace[data-pane-focus="result"] { display:block; background:transparent; }
#view-workspace > .view-intro { padding:0; margin:0 0 16px; }
.view-intro h2 { font-size:24px; font-weight:650; }
.view-intro p { font-size:14px; }
#view-workspace > .workspace-lifecycle-note { padding:0; margin:0 0 20px; font-size:12px; }
#view-workspace > .workspace-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.03fr); gap:24px; align-items:start; }
#view-workspace > .workspace-grid > .input-card,#view-workspace > .workspace-grid > .result-card { min-height:0; padding:22px; border:1px solid var(--line); border-radius:12px; background:var(--surface); }
#view-workspace > .workspace-grid > .input-card { grid-column:1; grid-row:1; }
#view-workspace > .workspace-grid > .result-card { grid-column:2; grid-row:1; }
.sidebar-region-tabs .workspace-region-tab.active { background:var(--ui-selected); border-color:var(--line); color:var(--ink); }
.card-heading { margin-bottom:20px; padding-bottom:0; }
.card-heading h3 { font-size:16px; }
.current-draft-bar { background:var(--surface-soft); border:0; }
.workspace-business-composer,.jumia-market-source-group { border:0; padding:0; border-radius:0; }
.workspace-business-composer > .field-label > textarea { border:1px solid var(--line-strong); border-radius:8px; min-height:160px; padding:12px; }
.workspace-business-composer > .field-label > textarea:focus-visible { outline:2px solid var(--ui-accent); outline-offset:2px; }
.workspace-composer-controls .field-label select { background:var(--surface); border-color:var(--line-strong); min-height:40px; }
.workspace-composer-controls .field-label > span { font-size:12px; }
.workspace-business-composer .model-selection-controls { grid-template-columns:minmax(0,1.8fr) minmax(100px,1fr); }
.workspace-business-composer .generation-action-bar { flex-basis:auto; }
.workspace-business-composer .form-actions .action-button,.workspace-composer-attach { min-height:40px; font-size:13px; }
.workspace-reference-panel { margin-bottom:20px; }
#view-workspace .advanced-prompt-panel > summary::after { content:""; flex:0 0 6px; width:6px; height:6px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); }
#view-workspace .advanced-prompt-panel[open] > summary::after { content:""; transform:rotate(225deg); }
.workspace-localize-controls { padding-top:16px; margin-top:4px; }
.workspace-language-note { background:var(--surface-soft); color:var(--ink); font-size:13px; }
.jumia-market-source-field textarea { font-size:14px; border-color:var(--line-strong); }
.jumia-market-prompt-panel > summary { display:none; }
.jumia-market-prompt-panel .field-group-header { display:none; }
.jumia-market-prompt-panel .advanced-prompt-panel-body { padding:0; }
.ui-localize-prompt { margin-top:14px; width:100%; }
.ui-localize-prompt summary { display:flex; align-items:center; gap:6px; min-height:40px; cursor:pointer; font-size:13px; color:var(--muted); }
.ui-localize-prompt .field-label { padding-top:12px; }
.jumia-market-prompt-field textarea { min-height:320px; font-size:14px; }
.jumia-market-output-card { padding:0; border:0; background:transparent; }
.jumia-market-output-card + .jumia-market-output-card { margin-top:28px; padding-top:24px; border-top:1px solid var(--line); }
.jumia-market-output-tabs { display:none; }
.jumia-ai-revision,.jumia-market-output-revision { margin-top:20px; background:var(--surface); border-color:var(--line-strong); border-radius:12px; }
.workspace-revision-composer { background:var(--surface); border-color:var(--line-strong); }
.jumia-ai-revision-heading > div > span { font-size:12px; }
.jumia-ai-cost-note { font-size:12px; }
.rich-output-preview { font-size:15px; line-height:1.8; overflow-wrap:anywhere; }
.standard-view,#view-translation,#view-compare,#view-settings,#view-accounts,#view-backups { padding:0; }
.translator-card { padding:0; background:transparent; border:0; }
.translator-language-bar { margin-bottom:20px; padding:0; background:transparent; border:0; }
#view-translation .translator-grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.03fr); gap:24px; }
#view-translation .source-pane,#view-translation .target-pane { grid-column:auto; grid-row:auto; background:var(--surface); border:1px solid var(--line); border-radius:12px; }
.translation-pane { display:flex; flex-direction:column; overflow:visible; }
.translation-pane-head { padding:18px 22px; }
.translation-source-composer { border:0; padding:18px 22px; }
.translation-pane textarea { font-size:15px; min-height:240px; }
.translation-source-composer textarea { padding:10px 0; }
.translation-pane-actions { padding:12px 22px; font-size:12px; }
#view-translation .translation-action-rail { display:flex; flex-direction:row; justify-content:flex-end; margin-top:16px; padding:0; }
#view-translation .translation-run-button { height:auto; min-height:40px; padding:9px 12px; font-size:14px; }
.translation-icon-button { width:auto; padding:9px 12px; }
.translation-model-controls { grid-template-columns:minmax(0,1.7fr) minmax(100px,1fr); gap:10px; }
.translation-add-image-wrap { grid-column:1/-1; }
.translation-result-body { padding:0 8px; }
.ui-pane-tabs { display:none; gap:6px; margin-bottom:16px; }
.task-center-shell,.draft-shell,.account-create-card,.account-list-card,.provider-card,.business-route-card,.compare-setup { border-color:var(--line); background:var(--surface); box-shadow:none; }
.task-center-toolbar,.task-center-filters,.draft-toolbar { background:var(--surface); padding:16px; gap:12px; }
.task-table-wrap,.account-table-wrap,.table-wrap { max-width:100%; overflow-x:auto; }
.task-table,.account-table { font-size:13px; }
.ui-table-scroll-hint { display:none; margin:10px 0; color:var(--muted); font-size:12px; }
.auth-screen { background:var(--canvas); }
.auth-card { box-shadow:none; border:1px solid var(--line); }
.brand-kicker,.eyebrow,.step-label { display:none; }
@media(min-width:1051px) { .workspace-focus-controls { display:none; } }
@media(max-width:1250px) { .app-shell { grid-template-columns:192px minmax(0,1fr); } .content { padding:24px; } .topbar { padding-inline:24px; } #view-workspace>.workspace-grid,#view-translation .translator-grid { gap:16px; } }
@media(max-width:1050px) {
  #view-workspace>.workspace-grid,#view-translation .translator-grid { grid-template-columns:minmax(0,1fr); }
  #view-workspace[data-pane-focus="input"] .result-card,#view-workspace[data-pane-focus="result"] .input-card { display:none; }
  #view-workspace > .workspace-grid > .input-card,#view-workspace > .workspace-grid > .result-card { grid-column:1; grid-row:1; }
  .ui-pane-tabs { display:flex; }
  #view-translation[data-ui-pane="input"] .target-pane,#view-translation[data-ui-pane="result"] .source-pane { display:none; }
  .jumia-market-output-tabs { display:flex; flex-wrap:wrap; }
  .jumia-market-output-card + .jumia-market-output-card { margin:0; padding:0; border:0; }
  .topbar .status-pill { display:none; }
}
@media(max-width:760px) {
  .app-shell { display:block; }
  .sidebar { position:static; height:0; padding:0; border:0; overflow:visible; }
  .sidebar-brand,.sidebar-user,.workspace-nav-group>:not(.nav-item) { display:none!important; }
  .sidebar .main-nav { position:fixed; bottom:0; left:0; right:0; z-index:50; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; min-height:68px; padding:6px 8px calc(6px + env(safe-area-inset-bottom)); background:var(--surface); border-top:1px solid var(--line); overflow:visible; }
  .main-nav>.workspace-nav-group { display:contents; }
  .main-nav>.nav-item,.main-nav>.workspace-nav-group>.nav-item { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; min-height:52px; padding:5px 2px; border-radius:6px; }
  .main-nav .nav-item strong { font-size:11px; }
  .mobile-more-nav { display:flex!important; }
  .secondary-nav-group { display:none; position:fixed; z-index:60; inset:auto 12px calc(78px + env(safe-area-inset-bottom)); max-height:calc(100dvh - 165px); overflow:auto; margin:0; padding:12px; background:var(--surface); border:1px solid var(--line); border-radius:12px; box-shadow:0 12px 36px rgba(25,30,35,.16); }
  .secondary-nav-group.open { display:flex; visibility:visible; }
  .mobile-workflow-shortcuts { display:flex; flex-direction:column; gap:4px; padding-bottom:12px; border-bottom:1px solid var(--line); }
  .secondary-nav-group .nav-item { display:flex; flex-direction:row; align-items:center; justify-content:flex-start; min-height:44px; gap:10px; padding:10px 12px; }
  .secondary-nav-group .nav-item strong { font-size:14px; }
  .topbar { min-height:62px; padding:12px 16px; gap:8px; flex-wrap:wrap; }
  .topbar h1 { font-size:17px; }
  .topbar-actions { gap:6px; }
  .topbar #topbar-draft-status,.topbar #connection-status,.topbar #open-history { display:none!important; }
  .topbar-actions .button.compact { min-height:40px; padding:8px; font-size:12px; }
  .content { padding:20px 16px calc(100px + env(safe-area-inset-bottom)); }
  #view-workspace>.view-intro { padding:0; }
  #view-workspace>.workspace-lifecycle-note { padding:0; }
  #view-workspace>.workspace-grid>.input-card,#view-workspace>.workspace-grid>.result-card { padding:18px 16px; border-radius:10px; }
  .view-intro h2 { font-size:22px; }
  .workspace-mobile-region-tabs { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; margin-bottom:12px; }
  .mobile-workflow-picker { display:grid; margin-bottom:16px; }
  .workspace-composer-controls { flex-wrap:wrap; }
  input,select,textarea,.workspace-business-composer>.field-label>textarea,.jumia-market-source-field textarea { font-size:16px; }
  .button,.button.compact,.section-copy,.language-chip,.workspace-focus-button,.ui-localize-prompt summary { min-height:44px; }
  .translation-pane-head,.translation-source-composer { padding:16px; }
  .translation-pane textarea { font-size:16px; }
  .ui-table-scroll-hint { display:block; }
  .current-draft-bar .current-draft-controls { grid-template-columns:minmax(0,1fr) auto; }
  .current-draft-bar .current-draft-controls #new-draft-button { grid-column:1/-1; }
}
@media(prefers-reduced-motion:reduce) { *,*::before,*::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; } }
