/* Shared interaction material, extended from the approved review workspace.
   Component mappings intentionally exclude rows, cards, switches and calendars. */
:root {
  --ws-control-radius:999px;
  --ws-line:#e9e9ec;
  --ws-hover:#f7f7f8;
  --ws-shadow:0 2px 4px rgba(24,24,27,.025),0 5px 16px rgba(24,24,27,.045);
  --ws-shadow-surface:0 2px 4px rgba(24,24,27,.025),0 6px 18px rgba(24,24,27,.04);
}
.ui-language .app ::selection { background:#dce7f9; color:#18181b; }
.ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(.btn,.drawer-btn,.ins-btn,.src-add-btn,.src-token-submit,.bp-save-btn,.tpl-save-btn,.cmp-btn-primary,.q-btn,.dr-btn,.dr-foot-btn,.filter-select,.ds-select-trigger,.filter-filters-btn,.ds-icon-button,.ed-hbtn,.ed-tool,.prf-close,.prod-icon-btn,.cmp-ico-btn,.btn-dl--live,.src-connect-action,.advanced-rule-create,.quick-rule-save,.rt-gcard-btn,.team-invite-btn,.api-create-btn,.ask-plan-banner-cta,.ask-gate-cta,.chat-secondary-btn,.chat-primary-btn,.chat-generate-btn,.chat-all-btn,.chat-icon-btn,.chat-select,.chat-settings-select,.ask-chip) {
  border-radius:var(--ws-control-radius);
  box-shadow:var(--ws-shadow);
  transition:background 160ms ease,border-color 160ms ease,color 160ms ease,box-shadow 160ms ease;
}
.ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(.btn.secondary,.btn.icon,.q-btn:not(.q-btn-send),.dr-btn,.dr-foot-btn.cancel,.filter-select,.ds-select-trigger,.filter-filters-btn,.ds-icon-button,.chat-secondary-btn,.chat-generate-btn,.chat-all-btn,.chat-icon-btn,.chat-select,.chat-settings-select,.ask-chip,.src-connect-action,.advanced-rule-create) {
  border:1px solid var(--ws-line); background:#fff; color:var(--ds-ink-secondary);
}
.ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(.btn.secondary,.btn.icon,.q-btn:not(.q-btn-send),.dr-btn,.dr-foot-btn.cancel,.filter-select,.ds-select-trigger,.filter-filters-btn,.ds-icon-button,.chat-secondary-btn,.chat-generate-btn,.chat-all-btn,.chat-icon-btn,.chat-select,.chat-settings-select,.ask-chip,.src-connect-action,.advanced-rule-create):hover:not(:disabled) {
  background:var(--ws-hover); border-color:#dedee2; color:var(--ds-ink); transform:none;
}
.ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(.btn.primary,.q-btn-send,.chat-primary-btn,.quick-rule-save,.ask-gate-cta) { background:#18181b; border-color:#18181b; color:#fff; }
.ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(.btn.primary,.q-btn-send,.chat-primary-btn,.quick-rule-save,.ask-gate-cta):hover:not(:disabled) { background:#303034; border-color:#303034; transform:none; }
.ui-language .app :is(.set-tabs,.cat-tabs,.rv-tabs-segment,.aw-tabs,.aw-chart-switch) { border-radius:999px; border:1px solid var(--ws-line); background:#fafafa; padding:4px; }
.ui-language .app :is(.set-tab,.cat-tab,.rv-tab,.aw-tabs button,.aw-chart-switch button) { border-radius:999px; }
.ui-language .app :is(.set-tab.on,.cat-tab.on,.rv-tab.on,.aw-tabs button[aria-selected="true"],.aw-chart-switch button[aria-pressed="true"]) { background:#fff; color:#18181b; box-shadow:var(--ws-shadow); }
.ui-language .app :is(.dg-chip,.cat-chip,.af-chip,.fchip,.prod-chip,.ins-sel-chip) { border-radius:999px; }
.ui-language .app :is(.dr-pop,.fpick-pop,.ds-select-menu,.ui-select-menu) { border-radius:16px; border-color:var(--ws-line); background:#fff; box-shadow:0 4px 8px rgba(24,24,27,.035),0 12px 32px rgba(24,24,27,.09); }
.ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(.btn,.q-btn,.chat-primary-btn,.chat-secondary-btn,.chat-generate-btn,.chat-icon-btn,.ask-send,.ask-chip,.ds-select-trigger):disabled { box-shadow:none; cursor:not-allowed; }
.ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(button,a,input,select,textarea,[role="button"]):focus-visible { outline:2px solid var(--ds-accent); outline-offset:3px; }

/* Returning to a parent view has one material and one arrow everywhere. */
.ui-language :is(.app,#srcAdd) .ds-back-button {
  display:inline-flex; align-items:center; justify-content:flex-start; gap:8px;
  width:fit-content; max-width:100%; height:auto; min-height:44px; padding:10px 16px;
  border:1px solid var(--ws-line); border-radius:999px; background:#fff;
  color:var(--ds-ink-secondary); box-shadow:var(--ws-shadow);
  font:500 14px/1.4 var(--ds-font); text-align:left; cursor:pointer;
  transform:none; transition:background .16s ease,border-color .16s ease,color .16s ease;
}
.ui-language :is(.app,#srcAdd) .ds-back-button span { min-width:0; overflow-wrap:anywhere; }
.ui-language :is(.app,#srcAdd) .ds-back-button svg {
  width:16px; height:16px; flex:0 0 16px; fill:none; stroke:currentColor;
  stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round;
}
.ui-language :is(.app,#srcAdd) .ds-back-button:hover:not(:disabled) {
  background:var(--ws-hover); border-color:#dedee2; color:var(--ds-ink); transform:none;
}
.ui-language :is(.app,#srcAdd) .ds-back-button:focus-visible { outline:2px solid var(--ds-accent); outline-offset:3px; }
.ui-language :is(.app,#srcAdd) .chat-back-btn { display:none; }
@media(max-width:980px) { .ui-language :is(.app,#srcAdd) .chat-back-btn { display:inline-flex; } }
@media(prefers-reduced-motion:reduce) { .ui-language :is(.app,#srcAdd) .ds-back-button { transition:none; } }

/* The selector primitive owns its material, regardless of the native select's
   copied legacy class. Portaled menus live outside .app. */
.ui-language .ds-select-menu { border-radius:20px; border-color:var(--ws-line); background:#fff; box-shadow:0 4px 8px rgba(24,24,27,.035),0 12px 32px rgba(24,24,27,.09); }
.ui-language .ds-select-trigger:disabled { opacity:.55; }
.ui-language .app :is(#bpCard,#page-profile) .ds-select-trigger:disabled { box-shadow:none; }
.ui-language .app .ui-page-help > summary { border-radius:var(--ws-control-radius); border-color:var(--ws-line); box-shadow:var(--ws-shadow); }

/* Settings: quiet segmented choices and the same raised white material. */
.classification-notice.ds-callout { margin-bottom:20px; }
.classification-notice-copy { flex:1 1 360px; }
#page-settings :is(.settings-sheet,.quick-rule-card,.bp-card,.chat-settings-card) { background:#fff; border-color:var(--ws-line); box-shadow:var(--ws-shadow-surface); }
#page-settings :is(.quick-rule-scope,.quick-rule-ratings,.ai-seg) { border-radius:24px; background:#f8f8f9; border-color:var(--ws-line); padding:4px; }
#page-settings :is(.quick-rule-scope-btn,.quick-rule-rating,.ai-seg-btn,.quick-rule-picker,.rule-card-cta,.rt-gcard-chip,.src-card-btn,.team-card-btn) { border-radius:999px; }
#page-settings :is(.quick-rule-scope-btn.on,.quick-rule-rating.on,.ai-seg-btn.on) { background:#fff; color:#18181b; box-shadow:var(--ws-shadow); }
#page-settings .quick-rule-picker { background:#fff; border-color:var(--ws-line); box-shadow:var(--ws-shadow); }
#page-settings .quick-rule-summary p { color:var(--ds-ink-secondary); }
#page-settings .set-tab { white-space:nowrap; }

/* Questions share the compact product / voice / raised reply composition. */
#page-questions .rv-list { grid-template-columns:1fr; gap:16px; }
#page-questions .rv-thread { border-radius:22px; overflow:visible; background:linear-gradient(180deg,#f7f7f7 0,#fafafa 76px,#fff 140px); box-shadow:var(--ws-shadow-surface); animation:none; opacity:1; transform:none; }
#page-questions .rv-thread.sel { border-color:var(--ds-accent); box-shadow:0 0 0 1px var(--ds-accent); }
#page-questions .rv-th-prod { min-height:64px; padding:14px 20px 22px 54px; background:transparent; border-bottom:0; }
#page-questions .rv-th-check { top:21px; left:20px; }
#page-questions .rv-th-prod-name { white-space:normal; overflow-wrap:anywhere; font:500 13px/1.45 var(--ds-font); }
#page-questions .rv-th-prod-thumb { width:34px; height:34px; border-radius:10px; overflow:hidden; }
#page-questions .rv-product-placeholder { display:grid; place-items:center; width:34px; height:34px; background:#f0f1f3; }
#page-questions .rv-product-placeholder::after { display:none; }
#page-questions .rv-product-placeholder svg { width:20px; height:20px; fill:none; stroke:#898c94; stroke-width:1.4; stroke-linecap:round; stroke-linejoin:round; }
#page-questions .rv-card-review { margin-top:-8px; padding:16px 20px; gap:14px; border-radius:16px 16px 0 0; background:#fff; box-shadow:0 -2px 6px rgba(24,24,27,.015); }
#page-questions .rv-avatar { width:28px; height:28px; background:#f2f2f5; color:#696b74; }
#page-questions .rv-card-text { max-width:none; font-size:14px; line-height:1.65; }
#page-questions .q-kind { background:#f7f7f8; color:var(--ds-ink-secondary); font-weight:500; }
#page-questions .rv-card-reply { margin:0 14px 12px; padding:12px 14px 10px; border:1px solid var(--ws-line); border-radius:18px; background:#fff; box-shadow:var(--ws-shadow-surface); transition:border-color 160ms ease,box-shadow 160ms ease; }
#page-questions .rv-card-reply-lbl { padding:0; margin:0 0 10px; font:600 12px/1.4 var(--ds-font); letter-spacing:0; text-transform:none; color:var(--ds-ink-secondary); }
#page-questions .rv-card-reply-lbl svg,#page-questions .q-answer-type { display:none; }
#page-questions .rv-resp-text { font:400 14px/1.65 var(--ds-font); color:#3c3d43; margin:0; }
#page-questions .rv-resp-actions { margin-top:10px; padding:0; gap:8px; }
#page-questions .q-draft-actions { justify-content:flex-end; gap:16px; }
#page-questions .rv-resp-tools { display:flex; align-items:center; gap:4px; padding:4px 6px; border:1px solid var(--ws-line); border-radius:999px; box-shadow:var(--ws-shadow); }
#page-questions .q-draft-actions .rv-resp-btn { display:grid; place-items:center; padding:0; width:32px; height:32px; min-width:32px; border:0; border-radius:50%; background:transparent; color:var(--ds-ink-secondary); }
#page-questions .q-draft-actions .rv-resp-btn svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
#page-questions .q-draft-actions .rv-resp-btn:hover { background:var(--ws-hover); color:var(--ds-ink); transform:none; }
#page-questions .q-draft-actions .rv-resp-btn.reject:is(:hover,:focus-visible) { background:#fff0f0; color:#c63e43; }
#page-questions .q-draft-actions .rv-resp-btn.approve { margin:0; width:34px; height:34px; background:#18181b; color:#fff; }
#page-questions .q-draft-actions .rv-resp-btn.approve:disabled { background:#eeeef1; color:#9698a0; }
#page-questions .rv-tool-divider { width:1px; height:18px; background:#e6e6e9; margin:0 5px; }
#page-questions .rv-card-reply:has(.q-answer-input:focus) { border-color:#c9ccd3; box-shadow:0 0 0 2px rgba(24,24,27,.025),var(--ws-shadow-surface); }
#page-questions .q-answer-input { margin:0; border:0; padding:0; background:transparent; outline:0; box-shadow:none; font:400 14px/1.65 var(--ds-font); }
#page-questions .rv-resp-text.is-empty { min-height:44px; color:var(--ds-ink-secondary); }
#page-questions #qBulkBar { max-width:calc(100vw - 24px); box-sizing:border-box; gap:12px; border:1px solid var(--ws-line); border-radius:999px; background:#fff; color:var(--ds-ink); box-shadow:0 4px 8px rgba(24,24,27,.035),0 12px 32px rgba(24,24,27,.09); }
#qBulkBar .bulk-count { border-color:var(--ws-line); }
#qBulkBar .bulk-count span,#qBulkBar .bulk-clear { color:var(--ds-ink-secondary); }
#qBulkBar .bulk-count b { color:var(--ds-ink); }
#qBulkBar .bulk-clear { border-radius:50%; }

/* Chats: selected conversation, composer and action material remain distinct. */
#page-chats :is(.chat-toolbar,.chat-workspace,.chat-composer) { background:#fff; border-color:var(--ws-line); box-shadow:var(--ws-shadow-surface); }
#page-chats .chat-search { border-radius:999px; border-color:var(--ws-line); background:#fff; box-shadow:var(--ws-shadow); }
#page-chats .chat-queue,#page-chats .chat-context { background:#fafafa; }
#page-chats .chat-row.on { border-color:#dedee3; background:#fff; box-shadow:var(--ws-shadow); }
#page-chats .chat-row:hover { background:#fff; }
#page-chats .chat-health { border-radius:999px; border-color:var(--ws-line); }
#page-chats .chat-health-card { border-radius:999px; }
#page-chats .chat-health-card.on { border-color:var(--ws-line); background:#fff; color:#18181b; box-shadow:var(--ws-shadow); }
#page-chats .chat-composer { border-radius:22px; }
#page-chats .chat-composer textarea { border:0!important; padding:0!important; min-height:72px; background:transparent; box-shadow:none!important; }
#page-chats .chat-composer:focus-within { border-color:#c9ccd3; box-shadow:0 0 0 2px rgba(24,24,27,.025),var(--ws-shadow-surface); }
#page-chats .chat-composer textarea:focus-visible { outline:0; }
#page-chats .chat-message.marps,#page-chats .chat-message.agent { background:#f4f6fa; }

/* Ask AI: a calm reading canvas and one raised, borderless writing area. */

@media(max-width:760px) {
  .ui-language .app :is(.set-tabs,.cat-tabs,.rv-tabs-segment) { max-width:100%; box-sizing:border-box; overflow-x:auto; }
  #page-settings :is(.quick-rule-scope,.quick-rule-ratings,.ai-seg) { border-radius:18px; }
  #page-questions .rv-card-review { padding:14px 16px; }
  #page-questions .rv-card-reply { margin:0 10px 10px; padding:10px 12px; }
  #page-questions .q-kind { display:none; }
  #page-questions .q-draft-actions .rv-resp-btn { width:44px; height:44px; min-width:44px; }
  #page-questions #qBulkBar { flex-wrap:wrap; justify-content:center; border-radius:24px; }
  #page-questions .q-bulk-actions { flex-wrap:wrap; justify-content:center; }
  #page-chats .chat-health { border-radius:20px; }
  #page-chats .chat-composer-foot,#page-chats .chat-composer-actions { flex-wrap:wrap; }
}
@media(prefers-reduced-motion:reduce) {
  .ui-language :is(.app,.rv-appeal-dialog,.rv-reply-dialog) :is(.btn,.q-btn,.dr-foot-btn,.ds-select-trigger,.set-tab,.rv-tab,.chat-primary-btn,.chat-secondary-btn,.chat-generate-btn,.ask-send,.ask-chip,.ask-sug),#page-questions .rv-card-reply { transition:none; }
}

/* Settings navigation: a single sliding white capsule on a soft gray rail. */
.ui-language .app #page-settings .set-tabs { position:relative; isolation:isolate; border-radius:999px; background:#f5f5f7; border:0; padding:4px; overflow:visible; box-shadow:none; }
.ui-language .app #page-settings .set-tab { position:relative; z-index:1; border:1px solid transparent; border-radius:999px; background:transparent; box-shadow:none; }
.ui-language .app #page-settings .set-tab.on { border-color:transparent; background:#fff; box-shadow:var(--ws-shadow); color:#18181b; }
.ui-language .app #page-settings .set-tabs.has-indicator::before { content:""; position:absolute; top:4px; left:0; z-index:0; box-sizing:border-box; width:var(--set-indicator-width); height:var(--set-indicator-height); border:1px solid var(--ws-line); border-radius:999px; background:#fff; box-shadow:var(--ws-shadow); transform:translateX(var(--set-indicator-x)); transition:transform 240ms cubic-bezier(.22,1,.36,1),width 240ms cubic-bezier(.22,1,.36,1); pointer-events:none; }
.ui-language .app #page-settings .set-tabs.has-indicator .set-tab.on { background:transparent; box-shadow:none; }
@media(prefers-reduced-motion:reduce) { .ui-language .app #page-settings .set-tabs.has-indicator::before { transition:none; } }

/* Settings' sheet rules carry ID specificity; map their local controls here too. */
.ui-language .app #page-settings :is(.src-connect-action,.advanced-rule-create,.quick-rule-save,.ai-card-cta,.src-capability-refresh,.src-source-sync,.src-add-btn,.api-key-revoke,.rt-gcard-btn,.team-card-btn,.tpl-save-btn,.bp-save-btn) { border-radius:999px; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings :is(.src-connect-action,.advanced-rule-create,.ai-card-cta,.src-capability-refresh,.src-source-sync) { border:1px solid var(--ws-line); background:#fff; color:var(--ds-ink-secondary); }
.ui-language .app #page-settings :is(.src-connect-action,.advanced-rule-create,.ai-card-cta,.src-capability-refresh,.src-source-sync):hover:not(:disabled) { background:var(--ws-hover); border-color:#dedee2; color:#18181b; transform:none; }
.ui-language .app #page-settings :is(.quick-rule-save,.src-add-btn) { background:#18181b; border-color:#18181b; color:#fff; }
.ui-language .app #page-settings .set-switch { border-radius:999px; }
#page-questions .rv-resp-actions:not(.q-draft-actions) .rv-resp-btn { border-radius:999px; min-height:36px; padding:6px 14px; box-shadow:var(--ws-shadow); }
#page-questions .rv-resp-actions:not(.q-draft-actions) .rv-resp-btn.approve { background:#18181b; color:#fff; }
#page-chats .chat-toolbar { background:transparent; border:0; box-shadow:none; }
#page-chats .chat-search { min-height:44px; }
@media(max-width:760px) {
  #page-questions .rv-th-prod { padding:12px 14px 20px 46px; gap:10px; }
  #page-questions .rv-th-prod-info { min-width:0; }
  #page-questions .rv-th-prod-name { font-size:12px; }
  #page-questions .rv-th-prod-meta { flex-wrap:wrap; gap:4px 8px; font-size:10px; }
  #page-questions .rv-th-prod-thumb,#page-questions .rv-product-placeholder { width:28px; height:28px; flex:0 0 28px; }
}
.ui-language .app :is(.ins-btn-ico,.ins-btn-next,.prod-card-act,.rv-pagination button,.cat-pagination button) { border-radius:999px; }

/* All navigation rails share the visible gray fill; page overrides must not
   restore the old white rail or blue inset underline in analytics. */
.ui-language .app :is(.page,#page-an-reviews) :is(.aw-tabs,.aw-chart-switch,.rv-tabs-segment,.cat-tabs,.prf-tabs,.chat-filters,.ins-entity-tabs,.chat-health,.chat-mode-switch) {
  background:#f5f5f7; border:0; border-radius:999px; padding:4px;
  box-shadow:none;
  backdrop-filter:none; -webkit-backdrop-filter:none;
}
.ui-language .app :is(.page,#page-an-reviews) :is(.aw-tabs button,.aw-chart-switch button,.rv-tab,.cat-tab,.prf-tab,.chat-filter,.ins-entity-tab,.chat-health-card,.chat-mode-switch button) { border-radius:999px; border-color:transparent; }
.ui-language .app .rv-tab:not(.on) .rv-tab-count { background:#ebebef; }
.ui-language .app :is(.page,#page-an-reviews) .chat-mode-switch button:not(.on) { background:transparent; box-shadow:none; color:var(--ds-ink-secondary); }
.ui-language .app :is(.page,#page-an-reviews) :is(.aw-tabs button[aria-selected="true"],.aw-chart-switch button[aria-pressed="true"],.rv-tab.on,.cat-tab.on,.prf-tab.on,.chat-filter.on,.ins-entity-tab.on,.chat-health-card.on,.chat-mode-switch button.on) { background:#fff; color:#18181b; border-color:var(--ws-line); box-shadow:var(--ws-shadow); }
@media(max-width:760px) {
  .ui-language .app :is(.page,#page-an-reviews) :is(.aw-tabs,.chat-health) { border-radius:24px; }
}

/* Review and question queues respond to their own width, including the sidebar. */
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs {
  container:review-toolbar / inline-size;
  gap:8px 12px; padding:10px; align-items:center;
  background:var(--ds-surface);
}
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-segment {
  flex:0 1 auto; width:auto; min-width:0; max-width:100%;
  overflow-x:auto; overflow-y:hidden; scrollbar-width:none;
}
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-segment::-webkit-scrollbar { display:none; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tab {
  flex:0 0 auto; min-height:36px; height:36px; padding-inline:12px; white-space:nowrap;
}
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tab:focus-visible { outline-offset:-2px; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right {
  flex:0 0 auto; width:auto; margin-left:auto; padding:0; gap:8px;
}
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right > .ds-select { width:132px; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right .filter-select { width:100%; min-width:0; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right .ds-select-trigger { padding-inline:12px; gap:8px; font-size:13px; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .dr-wrap { position:static; min-width:0; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .dr-btn { height:40px; min-height:40px; font-size:13px; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .dr-btn svg { flex-shrink:0; }
.ui-language .app :is(#page-reviews-mp,#page-questions) :is(#drLabel,#qDrLabel) { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ui-language .app :is(#page-reviews-mp,#page-questions) .dr-pop { top:calc(100% + 8px); right:10px; width:640px; min-width:0; max-width:calc(100% - 20px); }
@container review-toolbar (max-width:1000px) {
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-segment { flex-basis:100%; width:100%; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tab { flex:1 0 auto; justify-content:center; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right { margin-left:0; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .dr-pop { left:10px; right:auto; }
}
@container review-toolbar (max-width:620px) {
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right {
    display:grid; grid-template-columns:minmax(112px,1fr) minmax(0,1.1fr) 44px; width:100%;
  }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right > .ds-select { width:100%; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tab { flex:0 0 auto; min-height:44px; height:44px; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right :is(.filter-select,.dr-btn,.filter-filters-btn) { min-height:44px; height:44px; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .dr-btn { width:100%; padding-inline:12px; gap:6px; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .dr-btn-chev { margin-left:auto; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .filter-filters-btn { width:44px; min-width:44px; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .dr-body { grid-template-columns:minmax(0,1fr); }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .dr-presets { flex-direction:row; overflow-x:auto; border-right:0; border-bottom:1px solid var(--ds-line); padding:8px 12px; gap:8px; max-height:none; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .dr-preset { flex:0 0 auto; width:auto; padding:8px 12px; }
}

@container review-toolbar (max-width:360px) {
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right { grid-template-columns:minmax(0,1fr) 44px; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-tabs-right > .ds-select { grid-column:1 / -1; }
}

/* Questions retain their refresh action beside the shared filter controls. */
.ui-language .app #page-questions .q-refresh { display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:40px; padding:0 12px; }
.ui-language .app #page-questions .q-refresh svg { width:16px; height:16px; flex:none; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
@container review-toolbar (max-width:620px) {
  .ui-language .app #page-questions .rv-tabs-right { grid-template-columns:minmax(88px,1fr) minmax(0,1.2fr) 44px 44px; }
  .ui-language .app #page-questions .q-refresh { width:44px; height:44px; padding:0; }
  .ui-language .app #page-questions .q-refresh span { display:none; }
}
@container review-toolbar (max-width:360px) {
  .ui-language .app #page-questions .rv-tabs-right { grid-template-columns:minmax(0,1fr) 44px 44px; }
}

/* Text entry has no second focus contour inside an existing surface. */
.ui-language textarea { border-color:transparent!important; outline:0!important; box-shadow:none!important; }
.ui-language :is(input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="button"]):not([type="submit"]):not([type="color"]),textarea):is(:focus,:focus-visible) { outline:0!important; border-color:transparent!important; box-shadow:none!important; }
.ui-language .ds-field-shell:has(input:focus,textarea:focus) { outline:0!important; border-color:#c9ccd3!important; box-shadow:0 2px 8px rgba(24,24,27,.035)!important; }
#page-questions .rv-resp-text[role="button"] { cursor:text; white-space:pre-wrap; }
#page-questions .rv-card-reply:has(.rv-resp-text[role="button"]:hover),
#page-questions .rv-card-reply:has(.q-answer-input:not([readonly])) { border-color:#c9ccd3; box-shadow:0 0 0 2px rgba(24,24,27,.025),var(--ws-shadow-surface); }
#page-questions .q-answer-input { min-height:48px; max-height:240px; resize:none; overflow-y:auto; border:0; background:transparent; }
#page-questions .q-inline-tools { display:flex; align-items:center; gap:8px; margin-right:auto; }
.ui-language .app :is(#page-reviews-mp,#page-questions) :is(.rv-inline-tools,.q-inline-tools) .btn { min-height:32px; padding:5px 12px; font-size:12px; }
.ui-language .app :is(#page-reviews-mp,#page-questions) :is(.rv-inline-tools,.q-inline-tools) .btn[hidden] { display:none; }
@media(max-width:760px) {
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-resp-actions:has(.rv-inline-tools,.q-inline-tools) { flex-wrap:wrap; row-gap:10px; column-gap:4px; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) .rv-resp-actions:has(.rv-inline-tools,.q-inline-tools) .rv-resp-tools { gap:0; padding:2px; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) :is(.rv-inline-tools,.q-inline-tools) { flex-basis:100%; margin:0; }
  .ui-language .app :is(#page-reviews-mp,#page-questions) :is(.rv-inline-tools,.q-inline-tools) .btn { min-height:40px; }
}
@media(forced-colors:active) {
  .ui-language :is(input,textarea):focus-visible { outline:1px solid Highlight!important; outline-offset:2px!important; }
}
.ui-language input:is(:not([type]),[type="text"],[type="search"],[type="email"],[type="password"],[type="url"],[type="number"]):not(.ds-field-shell input):focus { background:#f6f8fc; }
#page-chats .chat-composer textarea { resize:none; max-height:240px; overflow-y:auto; }
.ui-language .rv-resp-text[role="button"]:focus-visible { outline:0!important; box-shadow:none!important; }
.ui-language :is(#page-reviews-mp,#page-questions) .rv-card-reply:has(.rv-resp-text[role="button"]:focus-visible) { border-color:#c9ccd3; box-shadow:0 0 0 2px rgba(24,24,27,.025),var(--ws-shadow-surface); }

/* The conversation workbench owns scrolling; its surrounding page stays put. */
.ui-language .app:has(#page-chats.on) .main { height:100dvh; min-height:0; }
.ui-language .app:has(#page-chats.on) .main-head { flex-shrink:0; }
.ui-language .app:has(#page-chats.on) .content { display:flex; flex-direction:column; min-height:0; overflow:hidden; padding-bottom:16px; }
.ui-language .app #page-chats.on { display:flex; flex-direction:column; flex:1; min-height:0; overflow:hidden; }
#page-chats :is(.chat-toolbar,.chat-health,.chat-access-state) { flex-shrink:0; }
.ui-language .app #page-chats .chat-workspace { flex:1; height:auto; min-height:0; grid-template-columns:minmax(260px,.68fr) minmax(0,1.7fr); }
#page-chats :is(.chat-list,.chat-messages) { min-height:0; overflow-x:hidden; overflow-y:auto; overscroll-behavior:contain; }
#page-chats :is(.chat-queue-head,.chat-thread-head,.chat-product-line,.chat-composer) { flex-shrink:0; }
#page-chats .chat-composer { max-height:45%; overflow-y:auto; overscroll-behavior:contain; }
@media(max-width:980px) {
  .ui-language .app #page-chats .chat-workspace { grid-template-columns:minmax(210px,.7fr) minmax(0,1.3fr); }
  #page-chats .chat-queue { max-height:none; border-right:1px solid var(--ws-line); border-bottom:0; }
}
@media(max-width:680px) {
  .ui-language .app #page-chats .chat-workspace { grid-template-columns:1fr; grid-template-rows:minmax(100px,.3fr) minmax(0,1fr); }
  #page-chats .chat-queue { border-right:0; border-bottom:1px solid var(--ws-line); }
  #page-chats .chat-queue-head { min-height:0; padding:8px 12px; }
  #page-chats .chat-thread-head { min-height:0; padding:8px 12px; gap:6px; }
  #page-chats .chat-thread-actions { flex-direction:row; }
  #page-chats .chat-product-line { min-height:0; padding:6px 12px; }
  #page-chats .chat-composer { max-height:55%; margin:0 8px 8px; padding:10px; }
  #page-chats .chat-composer textarea { min-height:44px; }
  #page-chats .chat-composer-actions { flex-direction:row; }
}

/* Mobile navigation shows one pane at a time; no space for the hidden pane. */
@media(max-width:680px) {
  .ui-language .app:has(#page-chats.on) .content { overflow-y:auto; }
  .ui-language .app #page-chats.on { display:block; overflow:visible; flex:none; }
  .ui-language .app #page-chats .chat-workspace { min-height:0; grid-template-rows:auto; }
  #page-chats .chat-queue { max-height:none; }
  #page-chats .chat-thread { min-height:560px; }
  #page-chats .chat-messages { min-height:180px; max-height:400px; }
  #page-chats .chat-composer { max-height:none; overflow:visible; }
}

/* Topic response settings use the same quiet surfaces and capsule controls. */
.ui-language .app #page-settings .rule-inline .rt-grid {
  --rt-cols:minmax(160px,.7fr) minmax(420px,1.4fr) minmax(220px,1.1fr) minmax(380px,1.3fr);
  gap:0; padding:0; margin:24px 0 18px;
}
.ui-language .app #page-settings .rule-inline .rt-grid-head {
  padding:0 16px 12px; gap:16px; color:var(--t2); font-size:12px;
  font-weight:500; text-transform:none; letter-spacing:0;
}
.ui-language .app #page-settings .rule-inline .rt-grid-row {
  gap:16px; padding:16px; background:#fff; border:0;
  border-bottom:1px solid var(--ws-line); border-radius:0; box-shadow:none;
  transition:background .16s ease;
}
.ui-language .app #page-settings .rule-inline .rt-grid-head + .rt-grid-row { border-top:1px solid var(--ws-line); }
.ui-language .app #page-settings .rule-inline .rt-grid-row:is(:hover,:has(.rsel.open)) { background:#fafafb; box-shadow:none; }
.ui-language .app #page-settings .rule-inline .rt-theme { gap:12px; }
.ui-language .app #page-settings .rule-inline .rt-theme-emoji {
  width:36px; height:36px; flex:0 0 36px; border-radius:999px; background:#f5f5f7;
  display:inline-flex; align-items:center; justify-content:center;
}
.ui-language .app #page-settings .rule-inline .rt-mode {
  display:flex; width:100%; height:48px; gap:4px; padding:4px;
  border:0; border-radius:999px; background:#f5f5f7; box-shadow:none;
}
.ui-language .app #page-settings .rule-inline .rt-mode-btn {
  flex:1; min-width:0; height:40px; padding:0 8px; gap:8px; border:0;
  border-radius:999px; background:transparent; color:var(--t2); font-size:13px;
  animation:none; transform:none; box-shadow:none;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease;
}
.ui-language .app #page-settings .rule-inline .rt-mode-lbl { display:inline; }
.ui-language .app #page-settings .rule-inline .rt-mode-btn svg { width:16px; height:16px; flex-shrink:0; stroke-width:1.7; }
.ui-language .app #page-settings .rule-inline .rt-mode-btn:hover { color:#18181b; background:#ededf0; }
.ui-language .app #page-settings .rule-inline .rt-mode-btn.on { background:#fff; color:#18181b; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings .rule-inline .rt-mode-btn.on svg { color:var(--a); }
.ui-language .app #page-settings .rule-inline .rt-mode-btn[data-value="ignore"]:hover { color:#c63e43; background:#fff0f0; }
.ui-language .app #page-settings .rule-inline .rsel.chip .rsel-head {
  height:48px; padding:0 16px; border-radius:999px; border:1px solid var(--ws-line);
  background:#fff; color:var(--t); box-shadow:var(--ws-shadow); font-size:13px;
}
.ui-language .app #page-settings .rule-inline .rsel.chip:not(.dim) .rsel-head:hover { background:var(--ws-hover); border-color:#dddde3; }
.ui-language .app #page-settings .rule-inline .rsel.chip.open .rsel-head { background:#fff; border-color:#c9ccd3; }
.ui-language .app #page-settings .rule-inline .rsel.dim .rsel-head { background:#f5f5f7; border-color:transparent; color:var(--t3); box-shadow:none; border-style:solid; }
.ui-language .app #page-settings .rule-inline .rsel-body { border-color:var(--ws-line); border-radius:22px; padding:6px; }
.ui-language .app #page-settings .rule-inline .rsel-opt { border-radius:16px; min-height:44px; }
.ui-language .app #page-settings .rule-inline .rsel-opt:hover { background:#f5f5f7; }
.ui-language .app #page-settings .rule-inline .rsel-opt.on { background:#f0f4ff; }
.ui-language .app #page-settings .rule-inline .rt-cfg-na { background:transparent; color:var(--t2); padding:0 14px; }
.ui-language .app #page-settings .rule-inline .rt-cfg-slot > div { width:100%; min-width:0; }
.ui-language .app #page-settings .rule-inline .rt-cfg-slot .rsel-head { width:100%; gap:12px; }
.ui-language .app #page-settings .rule-inline .rt-cfg-slot .rsel-lbl { flex:1; min-width:0; text-align:left; }
.ui-language .app #page-settings .rule-inline .rt-detail-back { margin-bottom:20px; }
.ui-language .app #page-settings .rule-inline .rt-gcard {
  border-color:var(--ws-line); border-radius:28px; background:#fff; box-shadow:var(--ws-shadow-surface);
  animation:none; transition:border-color .16s ease,box-shadow .16s ease;
}
.ui-language .app #page-settings .rule-inline .rt-gcard:hover { transform:none; border-color:#dddde3; box-shadow:0 6px 20px rgba(24,24,27,.07); }
.ui-language .app #page-settings .rule-inline .rt-gcard-foot { border-color:var(--ws-line); }
.ui-language .app #page-settings .rule-inline .rt-gcard-cta { color:var(--t2); }
.ui-language .app #page-settings .rule-inline .rt-gcard-cta-arrow { border-radius:999px; background:#f5f5f7; color:var(--t2); }
.ui-language .app #page-settings .rule-inline .rt-gcard:hover .rt-gcard-cta-arrow { background:#ededf0; color:#18181b; transform:none; }
.ui-language .app #page-settings .rule-inline :is(.rt-skiprow,.rt-setrow,.rt-stopcard) {
  border-radius:24px; border-color:var(--ws-line); background:#fff; box-shadow:var(--ws-shadow);
}
.ui-language .app #page-settings .rule-inline .rt-setrow:hover { border-color:#dddde3; background:#fafafb; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings .rule-inline .rt-setrow.on { background:#fafafb; border-color:var(--ws-line); }
.ui-language .app #page-settings .rule-inline :is(.rt-setrow-ico,.rt-stopcard-ico) { border-radius:999px; }
.ui-language .app #page-settings .rule-inline .rt-stopcard textarea { background:#f5f5f7; border-radius:18px; padding:14px; }
.ui-language .app #page-settings .rule-inline .rt-custom-add { min-height:44px; border:1px solid var(--ws-line); border-radius:999px; background:#fff; box-shadow:var(--ws-shadow); color:var(--t2); }
.ui-language .app #page-settings .rule-inline .rt-custom-add:hover { background:var(--ws-hover); color:#18181b; }
@container topic-settings (min-width:701px) and (max-width:1259px) {
  .ui-language .app #page-settings .rule-inline .rt-grid-head { display:none; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row { grid-template-columns:minmax(0,1fr) minmax(0,1.3fr); gap:14px 20px; }
}
@container topic-settings (max-width:1259px) {
  .ui-language .app #page-settings .rule-inline .rt-grid-row .rt-cfg-slot { flex-direction:column; align-items:stretch; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row :is(.rt-cfg-slot,.rt-send)::before {
    content:attr(data-label); display:block; margin:0 14px 6px; color:var(--t2); font-size:12px;
  }
}
@media(max-width:760px) {
  .ui-language .app #page-settings .rule-inline .rt-grid { margin-top:16px; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row { gap:14px; padding:18px 0; }
  .ui-language .app #page-settings .rule-inline .rt-mode { height:52px; }
  .ui-language .app #page-settings .rule-inline .rt-mode-btn { height:44px; padding:0 5px; gap:4px; font-size:11px; }
  .ui-language .app #page-settings .rule-inline .rsel-body { width:100%; min-width:0; max-width:100%; }
  .ui-language .app #page-settings .rule-inline .rt-skiprow-text { min-width:0; flex-basis:calc(100% - 64px); }
}
.ui-language .app #page-settings .rule-inline .rt-gcard-name { white-space:normal; line-height:1.4; }
.ui-language .app #page-settings .rule-inline .rt-apply-btn { border-radius:999px; background:#18181b; box-shadow:var(--ws-shadow); transform:none; }
.ui-language .app #page-settings .rule-inline .rt-apply-btn:hover { background:#303034; transform:none; }
.ui-language .app #page-settings .rule-inline .rt-send { position:relative; display:flex; align-items:center; gap:4px; min-width:0; padding:4px; border-radius:999px; background:#f5f5f7; }
.ui-language .app #page-settings .rule-inline .rt-send-btn { flex:1.25; min-width:0; min-height:40px; padding:0 10px; border:0; border-radius:999px; background:transparent; color:var(--t2); font-size:13px; white-space:nowrap; }
.ui-language .app #page-settings .rule-inline .rt-send-btn[data-value="always"] { flex:.65; }
.ui-language .app #page-settings .rule-inline .rt-send-btn.on { background:#fff; color:#18181b; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings .rule-inline .rt-send-btn:not(:disabled):hover { color:#18181b; }
.ui-language .app #page-settings .rule-inline .rt-send .rsel { position:static; flex:1.25; min-width:0; }
.ui-language .app #page-settings .rule-inline .rt-send .rsel .rsel-head { height:40px; min-height:40px; padding:0 10px; gap:6px; border:0; background:transparent; box-shadow:none; font-size:13px; }
.ui-language .app #page-settings .rule-inline .rt-send .rsel.conditional .rsel-head { background:#fff; color:#18181b; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings .rule-inline .rt-send .rsel-body { left:0; right:0; width:100%; min-width:0; max-width:none; }
.ui-language .app #page-settings .rule-inline .rt-send .rsel-opt[hidden] { display:none; }
.ui-language .app #page-settings .rule-inline .rt-send:has(.dim) { opacity:.55; }
@media(max-width:760px) {
  .ui-language .app #page-settings .rule-inline .rt-send-btn,
  .ui-language .app #page-settings .rule-inline .rt-send .rsel .rsel-head { min-height:44px; height:44px; }
}
@container topic-settings (max-width:1259px) {
  .ui-language .app #page-settings .rule-inline .rt-grid-row .rt-send { flex-direction:row; flex-wrap:nowrap; margin-top:22px; align-items:center; }
  .ui-language .app #page-settings .rule-inline .rt-send::before { position:absolute; top:-22px; left:14px; margin:0; }
}
.ui-language .app #page-settings .rule-inline .rt-grid-section { display:flex; flex-direction:column; gap:4px; padding:24px 16px 12px; color:var(--t2); font-size:12px; }
.ui-language .app #page-settings .rule-inline .rt-grid-section strong { font-size:14px; font-weight:600; color:var(--t); }

/* Adapt to the available card width, including an expanded sidebar. */
.ui-language .app #page-settings .quick-rule-card { container-type:inline-size; container-name:quick-rule; }
.ui-language .app #page-settings .quick-rule-scope { display:grid; grid-template-columns:repeat(auto-fit,minmax(80px,1fr)); gap:4px; }
.ui-language .app #page-settings .quick-rule-scope-btn { grid-column:auto; min-height:44px; padding:8px; white-space:normal; }
.ui-language .app #page-settings .quick-rule-scope-btn:first-child,
.ui-language .app #page-settings .quick-rule-scope-btn:nth-child(n+4) { grid-column:auto; }
.ui-language .app #page-settings .rule-inline { container-type:inline-size; container-name:topic-settings; }
.ui-language .app #page-settings .rule-inline .rt-grid-row { container-type:inline-size; container-name:topic-row; }
@container quick-rule (min-width:761px) and (max-width:900px) {
  .ui-language .app #page-settings .quick-rule-scope { grid-template-columns:repeat(6,minmax(0,1fr)); }
  .ui-language .app #page-settings .quick-rule-scope-btn,
  .ui-language .app #page-settings .quick-rule-scope-btn:first-child { grid-column:span 2; }
  .ui-language .app #page-settings .quick-rule-scope-btn:nth-child(n+4) { grid-column:span 3; }
}
@container quick-rule (max-width:760px) {
  .ui-language .app #page-settings .quick-rule-grid { grid-template-columns:minmax(0,1fr); gap:24px; }
  .ui-language .app #page-settings .quick-rule-grid .quick-rule-pane + .quick-rule-pane { padding-left:0; margin-left:0; padding-top:24px; border-left:0; border-top:1px solid var(--ws-line); }
}
@container quick-rule (max-width:380px) {
  .ui-language .app #page-settings .quick-rule-scope { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .ui-language .app #page-settings .quick-rule-scope-btn:first-child { grid-column:1 / -1; }
  .ui-language .app #page-settings .quick-rule-send .ai-seg { flex-wrap:wrap; border-radius:24px; }
  .ui-language .app #page-settings .quick-rule-send .ai-seg-btn { flex-basis:100%; min-height:44px; white-space:normal; }
}
@container topic-settings (max-width:700px) {
  .ui-language .app #page-settings .rule-inline .rt-grid-head { display:none; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row { display:flex; flex-direction:column; align-items:stretch; gap:14px; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row > div { width:100%; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row .rt-cfg-slot { flex-direction:column; align-items:stretch; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row :is(.rt-cfg-slot,.rt-send)::before { content:attr(data-label); display:block; color:var(--t2); font-size:12px; margin:0 14px 6px; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row .rt-send { flex-direction:row; margin-top:22px; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row .rt-send::before { position:absolute; top:-22px; left:14px; margin:0; }
}
@container topic-row (max-width:360px) {
  .ui-language .app #page-settings .rule-inline .rt-grid-row .rt-mode { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); height:auto; border-radius:24px; gap:4px; }
  .ui-language .app #page-settings .rule-inline .rt-mode-btn { min-height:44px; height:44px; font-size:12px; padding:0 10px; gap:8px; }
  .ui-language .app #page-settings .rule-inline .rt-grid-row .rt-send { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-radius:24px; gap:4px; }
  .ui-language .app #page-settings .rule-inline .rt-send-btn { min-height:44px; padding:0 6px; }
  .ui-language .app #page-settings .rule-inline .rt-send .rsel { grid-column:1 / -1; width:100%; }
  .ui-language .app #page-settings .rule-inline .rt-send .rsel .rsel-head { width:100%; min-height:44px; padding:0 12px; }
  .ui-language .app #page-settings .rule-inline .rt-send .rsel .rsel-lbl { overflow:visible; text-overflow:clip; white-space:normal; }
}
@container quick-rule (max-width:550px) {
  .ui-language .app #page-settings .quick-rule-summary { width:100%; flex-direction:column; align-items:stretch; gap:16px; }
}

/* AI editor: quiet capsule choices and raised greeting composers. */
.ui-language .app #page-settings #set-ai.detail-mode { container-type:inline-size; container-name:ai-editor; }
.ui-language .app #page-settings #set-ai .ai-card-trait { border-radius:999px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-section-h { flex-wrap:wrap; gap:10px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-section-num { border-radius:999px; background:#f5f5f7; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-traits { gap:8px; padding:12px; border-radius:28px; background:#f5f5f7; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-trait {
  min-height:44px; max-width:100%; padding:10px 16px; border:1px solid transparent;
  border-radius:999px; background:transparent; color:var(--t2); box-shadow:none;
  font:500 14px/1.35 var(--ds-font); white-space:normal; overflow-wrap:anywhere; text-align:left;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease;
}
.ui-language .app #page-settings #set-ai.detail-mode .ai-trait:hover { background:#ededf0; color:var(--t); transform:none; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-trait.on { background:#fff; color:var(--t); border-color:var(--ws-line); box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-trait-mark { width:18px; height:18px; flex:0 0 18px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-trait.on .ai-trait-mark { color:var(--a); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-trait.lim:hover { background:transparent; color:var(--t2); border-color:transparent; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greetings { gap:12px; margin-bottom:16px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-row {
  grid-template-columns:minmax(0,1fr) 40px; gap:8px; padding:12px;
  border:1px solid var(--ws-line); border-radius:24px; background:#fff; box-shadow:var(--ws-shadow);
  transition:border-color .16s ease,box-shadow .16s ease;
}
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-row:focus-within { border-color:#d4d7de; box-shadow:0 4px 16px rgba(24,24,27,.07); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-input { min-width:0; width:100%; min-height:44px; padding:10px 12px; border:0; border-radius:14px; background:transparent; box-shadow:none; font:500 14px/1.5 var(--ds-font); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-input:focus { outline:0; border:0; background:transparent; box-shadow:none; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-rm { width:40px; height:40px; border-radius:999px; background:#f5f5f7; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-rm:hover { background:#fff0f0; color:#c63e43; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-tools { gap:6px; padding:0 12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-tools-label { font-size:12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-token { min-height:40px; padding:8px 12px; border:0; border-radius:999px; background:#f5f5f7; color:var(--t2); font:500 12px/1.4 var(--ds-font); white-space:normal; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-token:hover { background:#ededf0; color:var(--t); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-greet-example { padding:0 12px; font-size:12px; }
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-greet-add,.ai-hero-actions button,.tpl-save-btn) { border-radius:999px; min-height:44px; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-preview { border-radius:24px; background:#f5f5f7; border-color:transparent; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-seg { border-radius:999px; border-color:transparent; background:#f5f5f7; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-seg-btn { border-radius:999px; }
@container ai-editor (max-width:700px) {
  .ui-language .app #page-settings #set-ai.detail-mode .ai-param-grid { grid-template-columns:minmax(0,1fr); }
  .ui-language .app #page-settings #set-ai.detail-mode .ai-hero-row { grid-template-columns:minmax(0,1fr); }
}
@container ai-editor (max-width:400px) {
  .ui-language .app #page-settings #set-ai.detail-mode .ai-traits { padding:8px; border-radius:24px; }
  .ui-language .app #page-settings #set-ai.detail-mode .ai-trait { width:100%; min-height:44px; padding:10px 12px; }
  .ui-language .app #page-settings #set-ai.detail-mode .ai-seg { flex-wrap:wrap; border-radius:24px; }
  .ui-language .app #page-settings #set-ai.detail-mode .ai-seg-btn { flex-basis:100%; min-height:44px; }
  .ui-language .app #page-settings #set-ai.detail-mode .ai-greet-tools { padding:0; }
}

/* Text entry stays visible at rest; the entire composer responds to focus. */
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-text-composer,.ai-topic) {
  min-width:0; border:1px solid var(--ws-line); border-radius:24px;
  background:#f7f7f9; box-shadow:0 2px 8px rgba(24,24,27,.025); overflow:hidden;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease;
}
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-text-composer,.ai-topic):hover {
  background:#f3f3f6; border-color:#dddfe5;
}
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-text-composer,.ai-topic):focus-within {
  background:#fff; border-color:#c9ccd3; box-shadow:0 6px 22px rgba(24,24,27,.07);
}
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-desc-input,.ai-topic-txt) {
  display:block; width:100%; min-height:112px; padding:18px 20px;
  border:0; border-radius:0; background:transparent; outline:0; box-shadow:none;
  font:400 14px/1.6 var(--ds-font); resize:vertical;
}
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-desc-input,.ai-topic-txt):focus { background:transparent; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-signature-input { min-width:0; min-height:56px; height:56px; box-sizing:border-box; }
/* Each topic contains its instructions and example within one visible boundary. */
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-topic-field,.ai-signature-field) { background:#fff; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-topic-field,.ai-signature-field):hover { background:#fff; }
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-topic-field,.ai-signature-field):focus-within { background:#fff; border-color:#d4d7de; box-shadow:0 4px 16px rgba(24,24,27,.07); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topics-block { display:grid; gap:16px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-group { min-width:0; padding:24px; border:1px solid var(--ws-line); border-radius:24px; background:#f5f5f7; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-group-head { margin-bottom:12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-group-head .ai-topic-name { display:block; margin:0; color:var(--t); font:600 15px/1.5 var(--ds-font); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-group-head .ai-topic-hint { display:block; margin:4px 0 0; color:var(--t2); font:400 13px/1.5 var(--ds-font); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-field .ai-topic-txt { box-sizing:border-box; min-height:72px; max-height:360px; field-sizing:content; resize:none; padding-top:4px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-points { display:grid; gap:12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-point-head { display:flex; align-items:center; justify-content:space-between; padding:8px 12px 0 20px; gap:12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-point-head label { color:var(--t2); font:500 12px/1.5 var(--ds-font); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-point-head .ai-greet-rm { position:static; flex:none; min-width:44px; min-height:44px; background:transparent; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-point-head .ai-greet-rm:hover { background:#fff0f0; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-footer { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-top:12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-count { display:block; flex:none; text-align:right; font:400 12px/1.5 var(--ds-font); color:var(--t3); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-add:disabled { opacity:.5; cursor:default; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example { margin-top:12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example summary { display:flex; align-items:center; justify-content:space-between; gap:12px; min-height:44px; border-radius:12px; outline:none; color:var(--t); cursor:pointer; font:600 16px/1.5 var(--ds-font); list-style:none; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example summary:focus-visible { outline:2px solid var(--a); outline-offset:2px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example summary::-webkit-details-marker { display:none; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example summary svg { width:16px; height:16px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example[open] summary svg { transform:rotate(180deg); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example .ai-text-composer { margin-top:8px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example .ai-topic-txt { min-height:96px; padding-top:18px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-example .ai-topic-count { margin-top:8px; }
@container ai-editor (max-width:400px) {
  .ui-language .app #page-settings #set-ai.detail-mode .ai-topic-group { padding:16px; border-radius:20px; }
}
.ui-language .app #page-settings #set-ai.detail-mode .ai-topics { gap:12px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-head { padding:16px 20px 0; flex-wrap:wrap; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-label { min-width:0; flex:1 1 180px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-topic-state { font:500 11px/1.4 var(--ds-font); text-transform:none; letter-spacing:0; }
@media(prefers-reduced-motion:reduce) {
  .ui-language .app #page-settings #set-ai.detail-mode :is(.ai-text-composer,.ai-topic,.ai-greet-row) { transition:none; }
}

.ui-language .app #page-settings #set-ai.detail-mode .ai-preview-generate { min-height:44px; margin-top:12px; padding:10px 16px; border:0; border-radius:999px; background:#18181b; color:#fff; font:500 12px/1.4 var(--ds-font); cursor:pointer; box-shadow:var(--ws-shadow); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-preview-generate:disabled { opacity:.55; cursor:wait; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-preview-result-status { margin:8px 0; color:var(--t2); font:500 12px/1.5 var(--ds-font); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-preview-sample { border-radius:999px; }

/* Chats keep all queue views in one calm, visibly selected menu. */
.ui-language .app #page-chats { container-type:inline-size; container-name:chat-controls; }
.ui-language .app #page-chats .chat-toolbar-actions { display:flex; flex-direction:row; gap:12px; }
.ui-language .app #page-chats .chat-search { width:auto; min-width:0; flex:1; height:44px; }
.ui-language .app #page-chats .chat-select { width:190px; min-width:0; flex:0 0 190px; height:44px; margin:0; border-color:var(--ws-line); border-radius:999px; font-size:13px; font-weight:500; box-shadow:var(--ws-shadow); }
.ui-language .app #page-chats .chat-health { display:flex; flex-wrap:wrap; gap:4px; padding:6px; border:0; border-radius:28px; background:#eeeef2; overflow:visible; }
.ui-language .app #page-chats .chat-health-card { flex:1 0 auto; min-width:0; min-height:44px; gap:8px; padding:8px 12px; border:0; background:transparent; box-shadow:none; color:var(--t2); }
.ui-language .app #page-chats .chat-health-copy b { font:500 13px/1.35 var(--ds-font); }
.ui-language .app #page-chats .chat-health-icon { color:var(--t2); }
.ui-language .app #page-chats .chat-health-card > strong { min-width:24px; padding:3px 7px; border-radius:999px; background:rgba(24,24,27,.045); color:var(--t2); font:600 12px/1 var(--ds-font); }
.ui-language .app #page-chats .chat-health-card:hover { background:rgba(255,255,255,.55); transform:none; box-shadow:none; }
.ui-language .app #page-chats .chat-health-card.on { background:#fff; color:var(--t); box-shadow:var(--ws-shadow); }
.ui-language .app #page-chats .chat-health-card.on .chat-health-copy { color:var(--t); }
.ui-language .app #page-chats .chat-health-card.on > strong { background:#edf3ff; color:var(--a); }
.ui-language .app #page-chats .chat-health-card.on .chat-health-icon { color:var(--a); }
.ui-language .app #page-chats .chat-health-card[onclick*="error"]:hover .chat-health-icon { color:#c63e43; }
@container chat-controls (max-width:600px) {
  .ui-language .app #page-chats .chat-toolbar-actions { display:grid; grid-template-columns:minmax(0,1fr); gap:8px; }
  .ui-language .app #page-chats .chat-select { width:100%; flex:1 1 auto; }
  .ui-language .app #page-chats .chat-health { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); border-radius:24px; }
  .ui-language .app #page-chats .chat-health-card { min-height:48px; padding:8px; gap:6px; }
  .ui-language .app #page-chats .chat-health-card:first-child { grid-column:1 / -1; }
  .ui-language .app #page-chats .chat-health-copy b { font-size:12px; white-space:normal; }
  .ui-language .app #page-chats .chat-health-icon { width:16px; flex:0 0 16px; }
  .ui-language .app #page-chats .chat-health-card > strong { margin-left:auto; padding:3px 5px; min-width:20px; }
}

/* A denser conversation rhythm: compact navigation, aligned headers, quiet help. */
.ui-language .app #page-chats .chat-health { width:fit-content; max-width:100%; align-self:flex-start; padding:4px; border-radius:999px; }
.ui-language .app #page-chats .chat-health-card { flex:0 0 auto; min-height:40px; padding:8px 14px; }
.ui-language .app #page-chats :is(.chat-queue-head,.chat-thread-head) { min-height:64px; padding:12px 16px; }
.ui-language .app #page-chats .chat-queue-head h2 { font-size:17px; }
.ui-language .app #page-chats .chat-queue-head p { font-size:12px; }
.ui-language .app #page-chats .chat-queue-actions { gap:6px; }
.ui-language .app #page-chats .chat-queue-actions .chat-icon-btn { width:36px; height:36px; }
.ui-language .app #page-chats .chat-row { gap:4px; padding:12px; border-radius:18px; }
.ui-language .app #page-chats .chat-row + .chat-row { margin-top:2px; }
.ui-language .app #page-chats .chat-row-top { grid-template-columns:30px minmax(0,1fr) auto; gap:8px; }
.ui-language .app #page-chats .chat-row-top time { grid-column:auto; margin:0; font-size:11px; }
.ui-language .app #page-chats .chat-row-top b { font-size:14px; font-weight:600; }
.ui-language .app #page-chats .chat-row .chat-mp { width:30px; height:26px; border-radius:9px; font-size:10px; }
.ui-language .app #page-chats .chat-row-store { font-size:12px; line-height:1.4; }
.ui-language .app #page-chats .chat-row-preview { font-size:13px; line-height:1.4; min-height:0; }
.ui-language .app #page-chats .chat-thread-title { gap:10px; }
.ui-language .app #page-chats .chat-thread-title h2 { font-size:17px; font-weight:600; }
.ui-language .app #page-chats .chat-thread-title p { margin-top:3px; font-size:12px; }
.ui-language .app #page-chats .chat-product-line { min-height:52px; padding:8px 16px; }
.ui-language .app #page-chats .chat-messages { padding:16px; }
.ui-language .app #page-chats .chat-message { margin-bottom:10px; padding:10px 12px; border-radius:18px 18px 18px 6px; }
.ui-language .app #page-chats .chat-message p { font-size:14px; }
.ui-language .app #page-chats .chat-message-author { font-weight:500; text-transform:none; letter-spacing:0; }
.ui-language .app #page-chats .chat-assistance { max-width:none; margin:14px 0 0; padding:12px 14px; border:0; border-radius:18px; background:#f5f5f7; }
.ui-language .app #page-chats .chat-assistance.needs-review { border:0; }
.ui-language .app #page-chats .chat-assistance-head { align-items:center; flex-wrap:wrap; gap:6px; }
.ui-language .app #page-chats .chat-assistance-head b { font-weight:600; }
.ui-language .app #page-chats .chat-assistance-head span { padding:3px 7px; border-radius:999px; background:#fff; }
.ui-language .app #page-chats .chat-assistance > p { margin:6px 0 10px; }
.ui-language .app #page-chats .chat-assistance dl > div { grid-template-columns:120px minmax(0,1fr); gap:10px; }
.ui-language .app #page-chats .chat-composer { margin:0 12px 12px; padding:12px 14px; border-radius:24px; }
.ui-language .app #page-chats .chat-composer-label { gap:8px; margin-bottom:8px; flex-wrap:wrap; }
.ui-language .app #page-chats .chat-composer-label span { font-size:11px; }
.ui-language .app #page-chats .chat-composer textarea { min-height:56px; }
.ui-language .app #page-chats .chat-composer-foot { margin-top:8px; }
@container chat-controls (max-width:600px) {
  .ui-language .app #page-chats .chat-health { width:100%; border-radius:24px; }
  .ui-language .app #page-chats .chat-health-card { min-height:44px; padding:8px; }
  .ui-language .app #page-chats .chat-assistance dl > div { grid-template-columns:minmax(0,1fr); gap:3px; }
  .ui-language .app #page-chats :is(.chat-queue-head,.chat-thread-head) { min-height:56px; padding:10px 12px; }
}

@container chat-controls (min-width:601px) and (max-width:900px) {
  .ui-language .app #page-chats .chat-health { border-radius:24px; }
}

@media(min-width:681px) and (max-width:980px) {
  .ui-language .app #page-chats .chat-workspace { grid-template-columns:minmax(0,1fr); }
  .ui-language .app #page-chats :is(.chat-queue,.chat-thread) { grid-column:1 / -1; }
}

/* Shared notices retain one material and their existing behaviour hooks. */
.review-callout { margin-bottom:16px; }
.review-callout-progress { display:flex; align-items:center; gap:8px; }
.review-callout-track { width:100px; height:4px; overflow:hidden; border-radius:999px; background:var(--ds-surface-subtle); }
.review-callout-send { position:relative; overflow:hidden; user-select:none; touch-action:none; }

/* Assortment controls: quiet result count, visible search, grouped filters. */
.ui-language #page-products .prod-filters { display:grid; grid-template-columns:minmax(0,1fr) minmax(220px,320px) 40px 40px; align-items:center; gap:12px 8px; padding:16px; border:1px solid var(--ws-line); border-radius:var(--ds-radius-card); background:var(--ds-surface); box-shadow:var(--ws-shadow-surface); container:assortment-toolbar / inline-size; }
.ui-language #page-products .prod-count-inline { height:auto; padding:0; background:none; color:var(--ds-ink-secondary); font:400 13px/1.5 var(--ds-font); align-self:center; }
.ui-language #page-products .prod-count-inline #prodCount { margin:0 0 0 4px; color:var(--ds-ink); font-weight:600; }
.ui-language #page-products .prod-filter-fields { grid-column:1/-1; grid-row:2; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px; }
.ui-language #page-products .prod-flt { display:block; min-width:0; }
.ui-language #page-products .prod-flt-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.ui-language #page-products .prod-flt :is(.ds-select,.prod-flt-sel) { width:100%; min-width:0; }
.ui-language #page-products .prod-flt-sel { height:40px; min-height:40px; border:1px solid var(--ws-line); border-radius:999px; background-color:var(--ds-surface); font:400 14px/1.4 var(--ds-font); }
.ui-language #page-products .prod-search { grid-column:2; grid-row:1; width:100%; min-width:0; margin:0; height:40px; border:1px solid var(--ws-line); border-radius:999px; background:var(--ds-surface); padding:0; }
.ui-language #page-products .prod-search-input { display:block; min-width:0; width:100%; flex:1; padding:0 12px 0 0; font:400 13px/1.5 var(--ds-font); }
.ui-language #page-products .prod-icon-btn { width:40px; height:40px; margin:0; border-color:var(--ws-line); background:var(--ds-surface); color:var(--ds-ink-secondary); }
.ui-language #page-products .prod-search .prod-icon-btn { border:0; box-shadow:none; flex:0 0 38px; }
@container assortment-toolbar (max-width:520px) {
 .ui-language #page-products .prod-search { grid-column:1/-1; grid-row:2; height:44px; }
 .ui-language #page-products .prod-filter-fields { grid-row:3; grid-template-columns:1fr; }
 .ui-language #page-products .prod-flt-sel { height:44px; min-height:44px; }
 .ui-language #page-products .prod-icon-btn { width:44px; height:44px; }
}
@media(max-width:760px) { .ui-language #page-products .prod-filters { grid-template-columns:minmax(0,1fr) 44px 44px; padding:12px; } }

/* Impact keeps the existing shared filter nodes together on a single surface. */
.ui-language .content:has(#page-an-impact.on) > .filter-bar { padding:12px 16px; margin-bottom:20px; justify-content:flex-start; border-radius:var(--ds-radius-card); }
.ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-controls { display:flex; flex:1; align-items:center; flex-wrap:wrap; gap:8px; }
.ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-item { flex:0 1 auto; min-width:0; }
.ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-label { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.ui-language .content:has(#page-an-impact.on) > .filter-bar :is(.filter-select,.ds-select) { width:168px; height:40px; min-height:40px; border-radius:999px; font:400 14px/1.4 var(--ds-font); }
.ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-item:has(#fSource) :is(.filter-select,.ds-select) { width:210px; }
.ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-btn-w { margin-left:auto; }
.ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-filters-btn { width:40px; height:40px; min-height:40px; }
@media(max-width:760px) {
 .ui-language .content:has(#page-an-impact.on) > .filter-bar { padding:12px; }
 .ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-controls { display:grid; grid-template-columns:minmax(0,1fr) 44px; }
 .ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-item { grid-column:1; }
 .ui-language .content:has(#page-an-impact.on) > .filter-bar :is(.filter-select,.ds-select),.ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-item:has(#fSource) :is(.filter-select,.ds-select) { width:100%; min-height:44px; }
 .ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-btn-w { grid-column:2; grid-row:1; margin:0; }
 .ui-language .content:has(#page-an-impact.on) > .filter-bar .filter-filters-btn { width:44px; height:44px; min-height:44px; }
}

/* Every mobile route keeps the full title below the utility actions. */
@media(max-width:760px) {
 .ui-language .app .main-head { height:auto; min-height:0; grid-template-columns:44px minmax(0,1fr); gap:12px; padding:16px; }
 .ui-language .app .main-head .hamburger { grid-column:1; grid-row:1; width:44px; height:44px; border-radius:50%; }
 .ui-language .app .main-head-right { grid-column:2; grid-row:1; justify-self:end; margin:0; gap:8px; }
 .ui-language .app .main-head .crumbs { grid-column:1/-1; grid-row:2; align-items:baseline; flex-wrap:wrap; gap:6px 10px; }
 .ui-language .app .main-head .crumb-title { display:block; font-size:26px; line-height:1.3; overflow-wrap:anywhere; }
 .ui-language .app .main-head .crumb-sub { display:block; font-size:22px; line-height:1.3; overflow-wrap:anywhere; }
 .ui-language .app .main-head .crumb-sep { display:block; font-size:16px; }
 .ui-language .app .main-head :is(.plan-badge,.ui-page-help>summary) { min-height:44px; height:44px; }
 .ui-language .app .main-head .ui-page-help>summary { gap:6px; padding-inline:12px; }
 .ui-language .app .main-head .ui-page-help>summary svg { display:block; width:16px; height:16px; }
 .ui-language .ui-help-copy { top:72px; max-height:calc(100dvh - 88px); }
}

/* Filter vocabulary: semantic icons on capsule values and shared topic chips. */
.ui-language :is(.ds-select-trigger-icon,.ds-select-option-icon,.fchip-icon,.af-chip-icon,.filter-search-icon) { display:inline-flex; align-items:center; justify-content:center; flex:0 0 16px; width:16px; height:16px; color:var(--ds-ink-tertiary); }
.ui-language :is(.ds-select-trigger-icon,.ds-select-option-icon,.fchip-icon,.af-chip-icon,.filter-search-icon) svg { width:16px; height:16px; display:block; }
.ui-language .ds-select-trigger:has(.ds-select-trigger-icon) { gap:8px; }
.ui-language .ds-select-option-label { white-space:normal; overflow-wrap:anywhere; }
.ui-language .ds-select-option { flex-shrink:0; border-radius:12px; font-weight:400; }
.ui-language .ds-select-option[aria-selected="true"] { font-weight:500; }
.ui-language .ds-select-option[aria-selected="true"] .ds-select-option-icon { color:var(--ds-accent-strong); }
.ui-language :is(#drawer,#prodDrawer) { top:12px; right:12px; height:calc(100dvh - 24px); width:min(460px,calc(100vw - 24px)); max-width:calc(100vw - 24px); border:1px solid var(--ws-line); border-radius:28px; background:#fff; overflow:hidden; box-shadow:0 8px 24px rgba(24,24,27,.08),0 24px 64px rgba(24,24,27,.14); }
.ui-language :is(#drawer,#prodDrawer):not(.on) { visibility:hidden; }
.ui-language :is(#drawer,#prodDrawer) .drawer-head { padding:20px; border-color:var(--ws-line); }
.ui-language :is(#drawer,#prodDrawer) .drawer-title { display:flex; align-items:center; gap:12px; font:600 20px/1.3 var(--font-ui); letter-spacing:-.02em; }
.ui-language .filter-panel-icon { display:flex; align-items:center; justify-content:center; width:36px; height:36px; flex:none; border-radius:50%; color:var(--ds-accent); background:var(--ds-accent-soft); }
.ui-language .filter-panel-icon svg { width:19px; height:19px; }
.ui-language :is(#drawer,#prodDrawer) .drawer-close { width:40px; height:40px; flex:none; border-radius:50%; border:1px solid var(--ws-line); background:#fff; box-shadow:var(--ws-shadow); }
.ui-language :is(#drawer,#prodDrawer) .drawer-body { padding:0 20px 12px; min-height:0; overscroll-behavior:contain; }
.ui-language :is(#drawer,#prodDrawer) .drawer-foot { flex-shrink:0; padding:16px 20px; border-color:var(--ws-line); gap:10px; }
.ui-language :is(#drawer,#prodDrawer) .drawer-btn { flex:1; min-width:0; min-height:44px; padding:10px 18px; border-radius:999px; font:500 14px/1.4 var(--font-ui); box-shadow:var(--ws-shadow); }
.ui-language :is(#drawer,#prodDrawer) .drawer-btn.primary { background:var(--ds-accent); border-color:var(--ds-accent); color:#fff; }
.ui-language :is(#drawer,#prodDrawer) .drawer-btn.primary:hover { background:var(--ds-accent-strong); }
.ui-language :is(#drawer,#prodDrawer) .drawer-btn.secondary { background:#fff; border:1px solid var(--ws-line); color:var(--ds-ink-secondary); }
.ui-language #drawer .fsec { padding:20px 0; border-color:var(--ws-line); }
.ui-language #drawer .fsec-title { justify-content:flex-start; gap:10px; margin:0 0 14px; cursor:default; font:600 14px/1.4 var(--font-ui); letter-spacing:0; }
.ui-language #drawer .fsec-icon { display:flex; flex:none; color:var(--ds-ink-tertiary); }
.ui-language #drawer .fsec-icon svg { width:18px; height:18px; }
.ui-language #drawer .fsec-title-count { margin-left:auto; min-width:22px; padding:2px 7px; border-radius:999px; background:var(--ds-accent-soft); color:var(--ds-accent-strong); text-align:center; font:500 12px/1.4 var(--font-ui); }
.ui-language #drawer .fsec-body { overflow:visible; max-height:none; gap:8px; }
.ui-language #drawer .fchip { min-height:40px; max-width:100%; padding:9px 12px; gap:7px; border-radius:999px; border:1px solid var(--ws-line); background:#fff; color:var(--ds-ink-secondary); box-shadow:var(--ws-shadow); font:400 13px/1.4 var(--font-ui); letter-spacing:0; transform:none; }
.ui-language #drawer .fchip:hover { border-color:#dedee2; background:var(--ws-hover); }
.ui-language #drawer .fchip.on { border-color:#dbe5f6; background:var(--ds-accent-soft); color:var(--ds-accent-strong); box-shadow:none; }
.ui-language #drawer .fchip.on .fchip-icon { color:var(--ds-accent-strong); }
.ui-language #drawer .fchip-label { min-width:0; overflow-wrap:anywhere; text-align:left; }
.ui-language #drawer .fchip-count { font-size:12px; color:var(--ds-ink-tertiary); font-variant-numeric:tabular-nums; }
.ui-language #drawer .fchip-check:empty { display:none; }
.ui-language .filter-empty { margin:0; color:var(--ds-ink-tertiary); font:400 13px/1.5 var(--font-ui); }
.ui-language .filter-load-state { padding:24px 0; }
.ui-language .filter-retry { margin-top:16px; padding:0 20px; }
.ui-language :is(#drawer,#prodDrawer) .drawer-btn:disabled { opacity:.5; box-shadow:none; cursor:not-allowed; }
.ui-language .filter-search-shell { display:flex; align-items:center; gap:10px; width:100%; border:1px solid var(--ws-line); border-radius:999px; padding:0 14px; background:#f7f7f9; }
.ui-language #drawer .filter-search-shell .fsearch { height:44px; min-width:0; padding:0; border:0; background:transparent; border-radius:0; box-shadow:none; font:400 14px/1.4 var(--font-ui); }
.ui-language .filter-search-shell:has(:focus-visible) { outline:2px solid var(--ds-accent); outline-offset:2px; background:#fff; }
.ui-language .filter-toggle-list { width:100%; }
.ui-language #drawer .ftog { gap:16px; padding:8px 0; }
.ui-language #drawer .ftog-label { font:500 13px/1.4 var(--font-ui); }
.ui-language #drawer .ftog-sub { font:400 12px/1.5 var(--font-ui); }
.ui-language .filter-switch { display:flex; align-items:center; justify-content:center; width:48px; height:44px; flex:none; padding:0; border:0; border-radius:12px; background:transparent; cursor:pointer; }
.ui-language #prodDrawer .pf-row { padding:0; }
.ui-language #prodDrawer .pf-lbl { font:500 13px/1.4 var(--font-ui); color:var(--ds-ink-secondary); }
.ui-language #prodDrawer .pf-input { border-radius:999px; border-color:var(--ws-line); background:#f7f7f9; font:400 14px/1.4 var(--font-ui); }
.ui-language .app :is(#page-reviews-mp,#page-an-reviews,#page-an-processing,#page-an-impact) .active-filters { padding:12px 16px; border:1px solid var(--ws-line); border-radius:22px; background:#fff; box-shadow:var(--ws-shadow-surface); }
.ui-language .app .active-filters .af-label { color:var(--ds-ink-tertiary); font:500 12px/1.4 var(--font-ui); text-transform:none; letter-spacing:0; }
.ui-language .app .active-filters .af-chip { border:1px solid #dbe5f6; border-radius:999px; min-height:36px; padding:6px 10px; background:var(--ds-accent-soft); color:var(--ds-accent-strong); font:400 13px/1.4 var(--font-ui); max-width:100%; }
.ui-language .app .active-filters .af-chip-icon { color:inherit; }
.ui-language .af-chip-label { min-width:0; overflow-wrap:anywhere; text-align:left; }
.ui-language .app .active-filters .af-reset { min-height:36px; border:0; background:transparent; color:var(--ds-ink-secondary); font-weight:400; }
@media(max-width:760px) {
 .ui-language :is(#drawer,#prodDrawer) { top:8px; right:8px; height:calc(100dvh - 16px); width:calc(100vw - 16px); max-width:calc(100vw - 16px); border-radius:24px; }
 .ui-language :is(#drawer,#prodDrawer) .drawer-head { padding:16px; }
 .ui-language :is(#drawer,#prodDrawer) .drawer-title { font-size:18px; }
 .ui-language :is(#drawer,#prodDrawer) .drawer-body { padding-inline:16px; }
 .ui-language :is(#drawer,#prodDrawer) .drawer-foot { padding:12px 16px max(12px,env(safe-area-inset-bottom)); }
 .ui-language :is(#drawer,#prodDrawer) .drawer-close { width:44px; height:44px; }
 .ui-language #drawer .fchip { min-height:44px; }
 .ui-language .app .active-filters :is(.af-chip,.af-reset) { min-height:44px; }
 .ui-language #prodDrawer .pf-input { font-size:16px; }
}

.ui-language .filter-inline-icon { display:inline-flex; align-items:center; justify-content:center; flex:none; width:16px; height:16px; color:inherit; }
.ui-language .filter-inline-icon svg { display:block; width:16px; height:16px; }
.ui-language .signal-scope summary > span { display:flex; align-items:center; gap:8px; }
.ui-language .signal-scope > summary { border:1px solid var(--ws-line); border-radius:999px; background:#fff; box-shadow:var(--ws-shadow); }
.ui-language .signal-scope .signal-choice > span { gap:7px; border:1px solid var(--ws-line); background:#fff; box-shadow:var(--ws-shadow); font-weight:400; }
.ui-language .signal-scope .signal-choice input:checked + span { border-color:#dbe5f6; background:var(--ds-accent-soft); color:var(--ds-accent-strong); box-shadow:none; }
.ui-language .signal-scope .signal-choice input:checked + span::before { margin-right:0; }
.ui-language #prodDrawer .filter-search-shell .pf-input { border:0; padding:0; background:transparent; border-radius:0; min-width:0; box-shadow:none; }
.ui-language #page-an-catalog .cat-toolbar .filter-search-shell { width:min(440px,100%); }
.ui-language #page-an-catalog .filter-search-shell .cat-search { width:100%; max-width:none; min-width:0; border:0; border-radius:0; padding:0; background:transparent; box-shadow:none; }
.ui-language :is(#drawer,#prodDrawer) :is(button,input):focus-visible { outline:2px solid var(--ds-accent); outline-offset:2px; }
@media(prefers-reduced-motion:reduce) { .ui-language #drawer .fchip { transition:none; } }

/* Destructive utilities stay quiet beside the main action; names remain accessible. */
.ui-language .app #page-settings :is(#set-ai,#set-sources) .ws-delete-action {
  display: inline-flex; align-items: center; justify-content: center;
  flex: 0 0 44px; width: 44px; min-width: 44px; height: 44px; min-height: 44px;
  padding: 0; border: 0; border-radius: 50%; background: transparent;
  box-shadow: none; color: #85858f; cursor: pointer;
}
.ui-language .app #page-settings :is(#set-ai,#set-sources) .ws-delete-action:is(:hover,:focus-visible) {
  background: #fff1f2; color: #bd3b4f; box-shadow: none;
}

/* Missing product photos remain explicit without changing the card geometry. */
.ui-language #page-products .prod-card-image-empty { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; color:var(--ds-ink-secondary); font:400 13px/1.4 var(--ds-font); }
.ui-language #page-products .prod-card-image-empty svg { width:32px; height:32px; color:var(--ds-ink-tertiary); }
.ui-language #page-products .prod-card-thumb img { position:relative; z-index:1; background:var(--ds-surface-subtle); }
.ui-language #page-products .prod-card-pills { z-index:2; }

/* Review help belongs to the selected AI behavior; reuse its controls and field shells. */
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-settings { margin-top:28px; padding-top:28px; border-top:1px solid var(--ws-line); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-heading h3 { margin:0; font:700 20px/1.3 var(--ds-font); letter-spacing:-.02em; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-mode { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:24px; align-items:center; padding:24px 0; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:12px 24px; align-items:center; padding:24px 0; border-top:1px solid var(--ws-line); }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-row:last-child { padding-bottom:0; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-row .ai-param-h { margin:0; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-row .ai-param-note { max-width:760px; margin-top:6px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-invitation { overflow-wrap:anywhere; }
.ui-language .app #page-settings #set-ai.detail-mode :is(.ai-assistance-scenario,.ai-assistance-extra) { grid-column:1/-1; min-width:0; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-scenario { margin-top:0; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-scenario .ai-desc-input { min-height:120px; resize:vertical; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-scenario .ai-topic-count { display:block; text-align:right; margin-top:8px; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-row .bp-toggle:has(input:disabled) { opacity:.5; cursor:not-allowed; }
.ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-row .bp-toggle input:focus-visible ~ .bp-toggle-slider { outline:2px solid var(--a); outline-offset:3px; }
@media (max-width:760px) {
  .ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-mode { grid-template-columns:minmax(0,1fr); gap:16px; }
  .ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-row { gap:12px 16px; }
  .ui-language .app #page-settings #set-ai.detail-mode .ai-assistance-scenario .ai-desc-input { font-size:16px; }
}
