/* 桌面对话工作区：阅读优先、导航可读、输入按内容伸缩。 */
body .container-main.legaleasy-unified .legaleasy-service-action,
body .app-shell .top-action { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 40px; padding: 8px 12px; border: 1px solid #dce7f3; border-radius: 12px; background: #f7faff; color: #416b9e; font: inherit; font-size: 14px; line-height: 20px; text-align: center; cursor: pointer; box-shadow: none; }
body .container-main.legaleasy-unified .flex-end.p-b-20 > .legaleasy-service-action--exchange,
body .app-shell .top-action--exchange { border-color: #e7e3ef; background: #fbfaff; color: #746a94; }
body .container-main.legaleasy-unified .flex-end.p-b-20 > .legaleasy-service-action,
body .app-shell .top-action { min-height: 40px; padding: 8px 12px; border-radius: 12px; }
body .container-main.legaleasy-unified .legaleasy-service-action svg,
body .app-shell .top-action > svg { flex: 0 0 18px; width: 18px; height: 18px; }
body .container-main.legaleasy-unified .legaleasy-service-action:hover,
body .app-shell .top-action:hover { transform: none; filter: brightness(.985); box-shadow: none; }
body .container-main.legaleasy-unified .legaleasy-logout,
body .app-shell .account-button { display: inline-grid; place-items: center; flex: 0 0 40px; width: 40px; height: 40px; margin: 0; padding: 9px; border: 1px solid transparent; border-radius: 12px; background: transparent; color: #64748b; cursor: pointer; }
body .container-main.legaleasy-unified .legaleasy-logout svg,
body .app-shell .account-button svg { width: 20px; height: 20px; }
body .container-main.legaleasy-unified .legaleasy-logout:hover,
body .app-shell .account-button:hover { border-color: #e6ebf1; background: #f8fafc; color: #334155; }
body .container-main.legaleasy-unified :is(.legaleasy-service-action,.legaleasy-logout):focus-visible,
body .app-shell :is(.top-action,.account-button):focus-visible { outline: 2px solid #8bb9f1; outline-offset: 3px; }
.legaleasy-feature-details { display: none; }
.legaleasy-enterprise-contact { display: flex; align-items: center; justify-content: center; min-height: 32px; max-width: 100%; margin: 8px auto 0; padding: 4px 8px; border: 0; border-radius: 8px; background: transparent; color: #4775aa; font: inherit; font-size: 13px; line-height: 20px; cursor: pointer; }
.legaleasy-enterprise-contact:hover { background: #f2f7fd; }

body .container-main.legaleasy-unified.legaleasy-desktop-workspace,
body .app-shell.legaleasy-desktop-workspace { --le-sidebar-width: 304px; --le-sidebar-qr: clamp(160px,calc(100dvh - 610px),192px); --le-sidebar-card: 96px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .n-layout-sider { width: var(--le-sidebar-width) !important; min-width: var(--le-sidebar-width) !important; max-width: var(--le-sidebar-width) !important; flex: 0 0 var(--le-sidebar-width) !important; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .x-dna { width: 200px; height: 72px; min-height: 0; margin: 24px 0 0 28px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list { margin-top: 16px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { gap: 8px; padding: 16px 20px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card { align-items: center; min-height: var(--le-sidebar-card); padding: 10px; gap: 12px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .avatar { width: 48px; height: 48px; padding: 0; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-name { margin: 0 0 4px; font-size: 16px; line-height: 24px; font-weight: 650; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-description { margin: 0; color: #748298; font-size: 13px; line-height: 18px; -webkit-line-clamp: 2; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main > div:last-child { flex: 0 0 auto; padding-bottom: 20px !important; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item .qr-code { width: var(--le-sidebar-qr); height: var(--le-sidebar-qr); margin-bottom: 8px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-label { font-size: 14px; line-height: 22px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item > span:last-child,
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-sublabel { font-size: 13px; line-height: 20px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .agent .title { margin-top: 6px; font-size: 12px; line-height: 20px; }

body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-workspace-shell { position: relative; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-topbar-shell { position: absolute; top: 12px; right: max(32px,calc((100% - 840px)/2)); z-index: 30; height: auto; padding: 0 !important; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .n-layout-content:has(.legaleasy-topbar-shell .modal-overlay) { z-index: 2000; overflow: visible !important; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-workspace-shell:has(.modal-overlay) { overflow: visible !important; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .flex-end.p-b-20 { gap: 8px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-conversation-viewport { padding-bottom: 16px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main { max-width: 1160px; padding: 0 32px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conversation-main > .legaleasy-feature-intro { display: none; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conversation-main > .legaleasy-conversation-heading { position: relative; display: flex; justify-content: flex-start; align-items: center; gap: 12px; width: 100%; max-width: 840px; min-height: 64px; margin: 0 auto 16px; padding-right: 288px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conversation-main .avator { flex: 0 0 40px; width: 40px; height: 40px; border-radius: 12px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conversation-main .title { margin-left: 12px; font-size: 22px; line-height: 1.4; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-center > .legaleasy-composer-shell { width: 100%; max-width: 840px; margin: 0 auto; padding: 0 !important; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container { padding: 10px 14px !important; border-radius: 24px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container > .flex-start { align-items: flex-end; gap: 12px; padding: 0 !important; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container .input-field { flex: 1 1 0%; width: 0 !important; min-width: 0; height: var(--le-composer-height,52px) !important; min-height: 52px; max-height: 120px; padding: 2px 0; font-size: 15px; line-height: 24px; overflow-y: auto; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container .input-right { flex: 0 0 auto; width: auto; height: 44px !important; min-height: 44px; margin: 0; padding: 0 !important; flex-direction: row !important; justify-content: flex-end; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-actions { gap: 8px; margin: 0; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .input-actions > div[style*="width:15px"],
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .input-actions > div[style*="width: 15px"] { display: none; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-actions .n-button { width: 44px; min-width: 44px; height: 44px; padding: 0; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .files { max-height: 100px; }
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .opening .qr-item .qr-code { width: 208px; height: 208px; }

:is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-feature-details { display: block; flex: 0 0 auto; margin: 0; color: #64748b; font-size: 13px; line-height: 20px; }
:is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-feature-details summary { display: flex; align-items: center; gap: 7px; min-height: 32px; padding: 6px 8px; border-radius: 9px; list-style: none; white-space: nowrap; cursor: pointer; }
:is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-feature-details summary::-webkit-details-marker { display: none; }
:is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-feature-details summary::after { content: ""; width: 5px; height: 5px; margin-top: -3px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); }
:is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-feature-details[open] summary { background: #eff5fc; color: #416b9e; }
:is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-feature-details > p { position: absolute; top: 64px; right: 0; left: 0; z-index: 60; max-height: min(50vh,340px); margin: 0; padding: 20px 24px; overflow-y: auto; border: 1px solid #e2e9f1; border-radius: 18px; background: #fff; color: #475569; box-shadow: 0 12px 32px rgba(28,53,83,.12); font-size: 14px; line-height: 1.85; white-space: normal; }

/* 静态预览沿用相同尺寸；示例控制仅在预览内容区显示。 */
body .app-shell.legaleasy-desktop-workspace { grid-template-columns: var(--le-sidebar-width) minmax(0,1fr); }
body .app-shell.legaleasy-desktop-workspace .sidebar { padding: 24px 20px 20px; overflow: hidden; }
body .app-shell.legaleasy-desktop-workspace .brand { min-height: 0; padding: 0 8px 32px; }
body .app-shell.legaleasy-desktop-workspace .brand img { width: 200px; }
body .app-shell.legaleasy-desktop-workspace .agent-card { grid-template-columns: 48px minmax(0,1fr); min-height: var(--le-sidebar-card); gap: 12px; padding: 10px; }
body .app-shell.legaleasy-desktop-workspace .agent-card img { width: 48px; height: 48px; }
body .app-shell.legaleasy-desktop-workspace .agent-card strong { font-size: 16px; line-height: 24px; }
body .app-shell.legaleasy-desktop-workspace .agent-card small { font-size: 13px; line-height: 18px; }
body .app-shell.legaleasy-desktop-workspace .side-footer { padding-top: 16px; border-top: 0; }
body .app-shell.legaleasy-desktop-workspace .side-footer img { width: var(--le-sidebar-qr); height: var(--le-sidebar-qr); }
body .app-shell.legaleasy-desktop-workspace .side-footer strong { font-size: 14px; line-height: 22px; }
body .app-shell.legaleasy-desktop-workspace .side-footer :is(p,a) { font-size: 13px; line-height: 20px; }
body .app-shell.legaleasy-desktop-workspace .main-shell { position: relative; }
body .app-shell.legaleasy-desktop-workspace .topbar { position: absolute; top: 12px; right: max(32px,calc((100% - 840px)/2)); z-index: 30; height: auto; padding: 0; }
body .app-shell.legaleasy-desktop-workspace .top-actions { gap: 8px; }
body .app-shell.legaleasy-desktop-workspace .workspace { padding: 0 32px; }
body .app-shell.legaleasy-desktop-workspace .workspace-inner { width: min(100%,1096px); }
body .app-shell.legaleasy-desktop-workspace .agent-heading { position: relative; display: flex; justify-content: flex-start; align-items: center; gap: 12px; width: 100%; max-width: 840px; min-height: 64px; margin: 0 auto 16px; padding: 0 288px 0 0; }
body .app-shell.legaleasy-desktop-workspace .agent-heading__identity { gap: 12px; }
body .app-shell.legaleasy-desktop-workspace .agent-heading__identity img { flex-basis: 40px; width: 40px; height: 40px; border-radius: 12px; }
body .app-shell.legaleasy-desktop-workspace .agent-heading h1 { font-size: 22px; }
body .app-shell.legaleasy-desktop-workspace .content-scroll > .feature-intro { display: none; }
body .app-shell.legaleasy-desktop-workspace .content-scroll > .heading-actions { flex: 0 0 auto; align-self: flex-end; margin: 0 0 16px; }
body .app-shell.legaleasy-desktop-workspace .composer-region { width: min(100%,840px); margin: 0 auto; padding: 0 0 16px; }
body .app-shell.legaleasy-desktop-workspace .composer { display: grid; grid-template-columns: minmax(0,1fr) auto auto; align-items: end; gap: 4px 12px; padding: 10px 14px; border-radius: 24px; }
body .app-shell.legaleasy-desktop-workspace .composer textarea { height: var(--le-composer-height,52px) !important; min-height: 52px; max-height: 120px; font-size: 15px; line-height: 24px; overflow-y: auto; }
body .app-shell.legaleasy-desktop-workspace .composer textarea { grid-column: 1; grid-row: 1; }
body .app-shell.legaleasy-desktop-workspace :is(.composer-bottom,.composer-bottom__left) { display: contents; }
body .app-shell.legaleasy-desktop-workspace .composer .attach-button { grid-column: 2; grid-row: 1; min-height: 44px; }
body .app-shell.legaleasy-desktop-workspace .composer .send-button { grid-column: 3; grid-row: 1; width: 44px; height: 44px; }
body .app-shell.legaleasy-desktop-workspace .composer .key-hint { grid-column: 1 / -1; grid-row: 2; font-size: 11px; line-height: 16px; }
body .app-shell.legaleasy-desktop-workspace .composer .attachment-chip { grid-column: 1 / -1; grid-row: 1; }
body .app-shell.legaleasy-desktop-workspace .composer:has(.attachment-chip:not([hidden])) :is(textarea,.attach-button,.send-button) { grid-row: 2; }
body .app-shell.legaleasy-desktop-workspace .composer:has(.attachment-chip:not([hidden])) .key-hint { grid-row: 3; }

@media (max-height: 860px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace,
  body .app-shell.legaleasy-desktop-workspace { --le-sidebar-card: 80px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .x-dna { width: 192px; height: 69px; margin-top: 16px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list { margin-top: 8px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { padding-top: 12px; padding-bottom: 12px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card { padding: 7px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main > div:last-child { padding-bottom: 14px !important; }
  body .app-shell.legaleasy-desktop-workspace .sidebar { padding-top: 16px; padding-bottom: 16px; }
  body .app-shell.legaleasy-desktop-workspace .brand { padding-bottom: 20px; }
  body .app-shell.legaleasy-desktop-workspace .brand img { width: 192px; }
  body .app-shell.legaleasy-desktop-workspace .agent-card { padding: 7px; }
}
@media (max-height: 700px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace,
  body .app-shell.legaleasy-desktop-workspace { --le-sidebar-card: 64px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .x-dna { width: 176px; height: 64px; margin-top: 12px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { gap: 6px; padding-top: 8px; padding-bottom: 8px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-description { -webkit-line-clamp: 1; }
  body .app-shell.legaleasy-desktop-workspace .agent-card small { -webkit-line-clamp: 1; }
  body .app-shell.legaleasy-desktop-workspace .brand img { width: 176px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main > div:last-child { display: grid; grid-template-columns: 160px minmax(0,1fr); gap: 0 12px; align-items: start; padding: 0 16px 14px !important; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main > div:last-child > div:first-child,
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item { display: contents; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-code { grid-column: 1; grid-row: 1 / 5; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-label { grid-column: 2; grid-row: 1; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item > span:last-child { grid-column: 2; grid-row: 2; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .legaleasy-enterprise-contact { grid-column: 2; grid-row: 3; margin: 4px 0 0; padding: 0; justify-content: flex-start; font-size: 12px; line-height: 18px; text-align: left; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main > div:last-child > div:last-child { grid-column: 2; grid-row: 4; min-width: 0; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .agent .title { margin-top: 4px; line-height: 18px; text-align: left; }
  body .app-shell.legaleasy-desktop-workspace .side-footer { display: grid; grid-template-columns: 160px minmax(0,1fr); gap: 0 12px; align-items: start; }
  body .app-shell.legaleasy-desktop-workspace .side-footer .qr-image-button { grid-column: 1; grid-row: 1 / 5; }
  body .app-shell.legaleasy-desktop-workspace .side-footer strong { grid-column: 2; grid-row: 1; text-align: left; }
  body .app-shell.legaleasy-desktop-workspace .side-footer p { grid-column: 2; grid-row: 2; margin: 0; text-align: left; }
  body .app-shell.legaleasy-desktop-workspace .side-footer .legaleasy-enterprise-contact { grid-column: 2; grid-row: 3; margin: 4px 0 0; padding: 0; font-size: 12px; line-height: 18px; text-align: left; }
  body .app-shell.legaleasy-desktop-workspace .side-footer > a { grid-column: 2; grid-row: 4; font-size: 12px; line-height: 18px; text-align: left; }
}
@media (max-width: 1100px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace,
  body .app-shell.legaleasy-desktop-workspace { --le-sidebar-width: 280px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main,
  body .app-shell.legaleasy-desktop-workspace .workspace { padding-right: 24px; padding-left: 24px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-topbar-shell,
  body .app-shell.legaleasy-desktop-workspace .topbar { right: 24px; }
}
@media (max-width: 1000px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conversation-main > .legaleasy-conversation-heading,
  body .app-shell.legaleasy-desktop-workspace .agent-heading { min-height: 112px; padding-top: 52px; padding-right: 0; }
  :is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-feature-details > p { top: 112px; }
}
/* Shared desktop frame: welcome, notices, history and composer use one axis. */
@media (min-width: 801px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace,
  body .app-shell.legaleasy-desktop-workspace { --le-content-width: 840px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card:hover,
  body .app-shell.legaleasy-desktop-workspace .agent-card:hover { transform: none; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conver-center .opening,
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conver-center > .disclaimer {
    box-sizing: border-box;
    width: 100%;
    max-width: var(--le-content-width);
    margin-inline: auto;
    padding-inline: 0;
    text-align: left;
  }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .opening .oping,
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .opening .conver-item { margin-inline: 0; }
  body .app-shell.legaleasy-desktop-workspace .composer-region > .disclaimer {
    margin-inline: 0;
    padding-inline: 0;
    text-align: left;
  }
}
@media (min-width: 801px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace.legaleasy-reading-focused .conver-main .conversation-main > .legaleasy-conversation-heading,
  body .app-shell.legaleasy-desktop-workspace.legaleasy-reading-focused .agent-heading { display: none; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace.legaleasy-reading-focused .legaleasy-topbar-shell .flex-end,
  body .app-shell.legaleasy-desktop-workspace.legaleasy-reading-focused .topbar { visibility: hidden; pointer-events: none; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace.legaleasy-reading-focused .conver-center,
  body .app-shell.legaleasy-desktop-workspace.legaleasy-reading-focused .content-scroll { padding-top: 12px; }
}

/* Two quiet labels, within the navigation's existing height budget. */
.legaleasy-nav-group-title { display: none; }
@media (min-width: 801px) {
  :is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-nav-group-title { display: block; grid-column: 1 / -1; margin: 0; padding: 0 10px; color: #8491a2; font-size: 12px; font-weight: 500; line-height: 18px; letter-spacing: .04em; }
  :is(body .container-main.legaleasy-unified.legaleasy-desktop-workspace, body .app-shell.legaleasy-desktop-workspace) .legaleasy-nav-group-title:not(:first-child) { margin-top: 4px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { gap: 6px; padding-top: 6px; padding-bottom: 6px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card { min-height: 86px; }
  body .app-shell.legaleasy-desktop-workspace .agent-nav { gap: 6px; }
  body .app-shell.legaleasy-desktop-workspace .agent-card { min-height: 86px; }
}
@media (min-width: 801px) and (max-height: 860px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card,
  body .app-shell.legaleasy-desktop-workspace .agent-card { min-height: 72px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list { margin-top: 0; }
  body .app-shell.legaleasy-desktop-workspace .brand { padding-bottom: 12px; }
}
@media (min-width: 801px) and (max-height: 700px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { gap: 3px; padding-top: 0; padding-bottom: 0; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card,
  body .app-shell.legaleasy-desktop-workspace .agent-card { min-height: 64px; }
  body .app-shell.legaleasy-desktop-workspace .agent-nav { gap: 3px; }
}
@media (min-width: 801px) and (min-height: 701px) and (max-height: 860px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card,
  body .app-shell.legaleasy-desktop-workspace .agent-card { padding: 4px 7px; }
}

/* Preview question suggestions and softly rounded composer, on the native flow. */
.legaleasy-suggestions { flex: 0 0 auto; width: 100%; max-width: 840px; margin: 28px auto 18px; color: #64748b; }
.legaleasy-suggestions summary { width: max-content; max-width: 100%; margin: auto; padding: 7px 12px; border-radius: 10px; color: #4c78ad; font-size: 13px; line-height: 22px; list-style: none; cursor: pointer; }
.legaleasy-suggestions summary::-webkit-details-marker { display: none; }
.legaleasy-suggestions summary::before { content: ''; display: inline-block; width: 6px; height: 6px; margin: 0 10px 3px 0; border-right: 1.5px solid #7aa4d3; border-bottom: 1.5px solid #7aa4d3; transform: rotate(45deg); }
.legaleasy-suggestions[open] summary::before { transform: rotate(225deg); margin-bottom: 0; }
.legaleasy-suggestions summary span { margin-left: 9px; color: #94a3b8; font-size: 12px; }
.legaleasy-suggestions summary:hover { background: #f1f6fc; }
.legaleasy-suggestion-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 20px; margin: 12px 0; border-top: 1px solid #edf1f5; }
.legaleasy-suggestion-grid button { position: relative; min-height: 44px; padding: 12px 22px 12px 3px; border: 0; border-bottom: 1px solid #edf1f5; background: transparent; color: #647a99; text-align: left; font: inherit; font-size: 13px; line-height: 21px; cursor: pointer; }
.legaleasy-suggestion-grid button::after { content: '›'; position: absolute; right: 4px; top: 12px; color: #8aa9ce; font-size: 20px; }
.legaleasy-suggestion-grid button:hover { background: #f8fbff; color: #416b9e; }
.legaleasy-suggestions :is(summary,button):focus-visible { outline: 2px solid #8bb9f1; outline-offset: 2px; }
.legaleasy-input-hint { margin-top: 4px; color: #a1acba; font-size: 11px; line-height: 16px; }
.legaleasy-upload-label { margin-left: 7px; font-size: 12px; }
@media (min-width: 801px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container { padding: 14px 18px 10px !important; border: 1px solid #dfe8f4; border-radius: 30px; background: rgba(255,255,255,.98); }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container:focus-within { border-color: #9fc5f3; box-shadow: 0 12px 32px rgba(27,66,96,.06),0 0 0 3px rgba(147,197,253,.12); }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-actions .legaleasy-upload-action { width: auto; padding: 0 8px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .input-actions .n-button:has(svg):not(.legaleasy-upload-action) { width: 44px; height: 44px; border-radius: 16px; color: white; background: linear-gradient(135deg,#5b9af5,#9678fa 52%,#98d9f4); }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .input-actions .n-button:has(svg):not(.legaleasy-upload-action):hover { box-shadow: 0 5px 14px rgba(65,117,210,.17); }
}
@media (max-width: 800px) {
  .legaleasy-suggestion-grid { grid-template-columns: minmax(0,1fr); }
  .legaleasy-upload-label,.legaleasy-input-hint { display: none; }
}
@media (min-width: 801px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .input-actions .n-button:not(.legaleasy-upload-action) svg { color: #fff; }
}
@media (max-width: 800px) {
  body .container-main.legaleasy-unified .opening > div:has(.qr-item) { display: none; }
}

/* The same send control in preview and production, including the brand artwork. */
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:has(svg[data-le-icon="send"]),
body .app-shell .composer .send-button {
  display: inline-flex; align-items: center; justify-content: center; width: 44px; min-width: 44px; height: 44px; padding: 0; border: 0; border-radius: 18px;
  color: #fff; background: url('/assets/btn-bg-CVPvrzdb.png') center / cover no-repeat, linear-gradient(120deg,#5b9af5,#a78bfa,#98d9f4); box-shadow: none;
}
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:has(svg[data-le-icon="send"]):hover,
body .app-shell .composer .send-button:hover {
  background: url('/assets/btn-bg-CVPvrzdb.png') center / cover no-repeat, linear-gradient(120deg,#4d8ce8,#9680eb,#81c9e9); box-shadow: 0 7px 18px rgba(65,117,210,.15);
}
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button svg[data-le-icon="send"],
body .app-shell .composer .send-button svg { display: block; width: 20px; height: 20px; flex: 0 0 20px; color: #fff; fill: none; stroke: currentColor; stroke-width: 1.7; }
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:has(svg[data-le-icon="send"]) .n-button__content { display: flex; align-items: center; justify-content: center; line-height: 1; }
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:has(svg[data-le-icon="send"]):disabled { opacity: .48; cursor: not-allowed; box-shadow: none; }

/* Keep the preview's brand colour even when an empty draft cannot be sent. */
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:has(svg[data-le-icon="send"]):disabled,
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:has(svg[data-le-icon="send"]):disabled .n-button__content { opacity: 1; }

/* Suggestions appear only after a quiet pause, without interrupting active reading. */
html:not(.legaleasy-suggestions-idle) .legaleasy-suggestions,
html:not(.legaleasy-suggestions-idle) .prompt-details { display: none; }

/* Shared corner standard: the conversation composer is the reference. */
:root { --le-radius: 30px; }
body :is(.container-main.legaleasy-unified,.app-shell) :is(
  .person-card,.agent-card,.input-container,.composer,
  button,.n-button__border,.n-button__state-border,input:not([type="checkbox"]):not([type="radio"]):not([type="file"]),select,
  .modal-container,.n-card,.legaleasy-feature-details > p,.feature-intro,
  .qr-code,.qr-code img,.legaleasy-qr-trigger,.legaleasy-qr-trigger img,
  .contact-card,.legaleasy-contact-card,.enterprise-contact img,.side-footer > img,
  .file-item,.attachment-chip,.user-bubble,.message.user .message-text,
  .avator,.avator img,.avatar,.avatar img,.agent-card > img,.agent-heading__identity img,
  .answer-card,.prompt-card,.legaleasy-suggestions summary,.prompt-details summary,
  .legaleasy-table-scroll,pre,code,blockquote
) { border-radius: var(--le-radius) !important; }
#legaleasy-qr-dialog,
#legaleasy-qr-dialog :is(img,button,a),
body .n-modal :is(.n-card,.n-card-header,.n-card__content,button,input),
body .app-shell :is(.dialog,.dialog-card,.modal,.modal-panel,.purchase-dialog,.redeem-dialog) { border-radius: var(--le-radius) !important; }
body .app-shell :is(.side-footer img,.contact-row img,.agent-heading__identity),
body :is(#qr-dialog,#purchase-dialog,#redeem-dialog,#case-dialog),
body :is(#qr-dialog,#purchase-dialog,#redeem-dialog,#case-dialog) :is(button,input,img) { border-radius: var(--le-radius) !important; }
body .preview-dialog, body .preview-dialog :is(button,input,img,.action-choice-grid > div) { border-radius: var(--le-radius) !important; }

/* Softer navigation corners, centred composer and the original QR copy above it. */
body .container-main.legaleasy-unified .sider-main .person-card,
body .app-shell .sidebar .agent-card { border-radius: 20px !important; }
body .container-main.legaleasy-unified .sider-main .qr-code,
body .container-main.legaleasy-unified .sider-main .qr-code img,
body .app-shell .side-footer img { border-radius: 24px !important; }
body .container-main.legaleasy-unified .sider-main .qr-item .qr-label { margin: 0 0 2px; }
body .container-main.legaleasy-unified .sider-main .qr-item > span:last-of-type { margin: 0 0 12px; }
body .container-main.legaleasy-unified .sider-main .qr-item .qr-code { margin-bottom: 0; }
@media (min-width: 801px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container > .flex-start { align-items: center; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-composer-shell .input-container .input-field,
  body .app-shell.legaleasy-desktop-workspace .composer textarea { box-sizing: border-box; padding: 14px 0; }
  body .app-shell.legaleasy-desktop-workspace .composer { align-items: center; }
}
@media (min-width: 801px) and (max-height: 700px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main > div:last-child { display: flex; flex-direction: column; align-items: center; gap: 0; padding: 0 16px 10px !important; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main > div:last-child > div:first-child { display: block; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item { display: flex; flex-direction: column; align-items: center; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-label,
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item > span:last-child { text-align: center; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .legaleasy-enterprise-contact { margin: 4px auto 0; justify-content: center; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card { min-height: 56px; padding: 3px 7px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item > span:last-of-type { margin-bottom: 6px; }
}
body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,
body .app-shell.legaleasy-desktop-workspace .sidebar .agent-card { border-radius: 20px !important; }
body .container-main.legaleasy-unified .sider-main .qr-item .qr-code,
body .container-main.legaleasy-unified .sider-main .qr-item .qr-code img { border-radius: 24px !important; }
@media (min-width: 801px) and (min-height: 701px) and (max-height: 860px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card { min-height: 68px; padding: 3px 7px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-name { line-height: 22px; margin-bottom: 2px; }
}
@media (min-width: 801px) and (max-height: 700px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .x-dna { height: 58px; margin-top: 6px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { gap: 2px; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-nav-group-title { line-height: 16px; }
}
body #legaleasy-qr-dialog #legaleasy-qr-image, body #qr-dialog #qr-dialog-image { border-radius: 24px !important; }

/* Shared preview / production composer interactions. */
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button,
body .app-shell .composer :is(.send-button,.attach-button) {
  transition: background-color .18s ease,box-shadow .18s ease,transform .18s ease,filter .18s ease;
  transform: translateY(0); box-shadow: none;
}
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:has(svg[data-le-icon="send"]):not(:disabled):hover,
body .app-shell .composer .send-button:not(:disabled):hover {
  transform: translateY(-1px); box-shadow: 0 7px 18px rgba(65,117,210,.15) !important; filter: brightness(1.035);
}
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .legaleasy-upload-action:not([aria-disabled="true"]):hover,
body .app-shell .composer .attach-button:not([aria-disabled="true"]):hover {
  background-color: #eff6ff !important; color: #416b9e; transform: translateY(-1px); box-shadow: 0 4px 12px rgba(65,117,210,.10) !important;
}
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:not(:disabled):not([aria-disabled="true"]):active,
body .app-shell .composer :is(.send-button,.attach-button):not(:disabled):not([aria-disabled="true"]):active {
  transform: translateY(0) scale(.97); filter: brightness(.98); box-shadow: 0 2px 6px rgba(65,117,210,.10) !important;
}
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:focus-visible,
body .app-shell .composer :is(.send-button,.attach-button):focus-visible {
  outline: 2px solid #8bb9f1; outline-offset: 3px;
}
body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button:is(:disabled,[aria-disabled="true"]),
body .app-shell .composer :is(.send-button,.attach-button):is(:disabled,[aria-disabled="true"]) {
  transform: none; filter: none; box-shadow: none !important;
}
@media (prefers-reduced-motion: reduce) {
  body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions .n-button,
  body .app-shell .composer :is(.send-button,.attach-button) { transition: none; transform: none !important; }
}

/* Keyboard help stays available on hover/focus, without a permanent footer row. */
body .container-main.legaleasy-unified .legaleasy-input-hint,
body .app-shell .composer .key-hint { display: none !important; }
body .legaleasy-send-tooltip { position: relative; overflow: visible; }
body .legaleasy-send-tooltip::after { content: attr(data-shortcut-hint); position: absolute; right: 0; bottom: calc(100% + 12px); z-index: 100; width: max-content; max-width: min(280px,calc(100vw - 40px)); padding: 9px 13px; border: 1px solid #e2e8f0; border-radius: 12px; background: #fff; color: #64748b; font-size: 12px; font-weight: 400; line-height: 20px; white-space: normal; box-shadow: 0 6px 20px rgba(28,53,83,.10); pointer-events: none; opacity: 0; visibility: hidden; transform: translateY(3px); transition: opacity .15s ease,transform .15s ease,visibility .15s; }
body .legaleasy-send-tooltip:is(:hover,:focus-visible)::after { opacity: 1; visibility: visible; transform: translateY(0); }

/* Selection is distinct from hover; semantic accents survive navigation grouping. */
body .container-main.legaleasy-unified .person-card[data-le-feature='文书与合同'] { --le-card-accent:#b88748; --card-accent:#b88748; }
.le-feature-capabilities{display:block;font-size:11px;line-height:16px;color:#a18456;margin:0 0 2px;letter-spacing:.03em}
body .container-main.legaleasy-unified .person-card[data-le-feature='文书与合同'] .person-description{-webkit-line-clamp:1}
@media(max-width:800px){.le-feature-capabilities{display:none}}
body :is(.container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,.app-shell .sidebar .agent-card)[data-le-feature='文书起草与审核'] { --le-card-accent: #b88748; --card-accent: #b88748; }
body :is(.container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,.app-shell .sidebar .agent-card)[data-le-feature='问题咨询'] { --le-card-accent: #5d9098; --card-accent: #5d9098; }
body :is(.container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,.app-shell .sidebar .agent-card)[data-le-feature='法律与案例检索'] { --le-card-accent: #4c82bb; --card-accent: #4c82bb; }
body :is(.container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,.app-shell .sidebar .agent-card)[data-le-feature='案情分析和建议'] { --le-card-accent: #8a75b4; --card-accent: #8a75b4; }
body :is(.container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,.app-shell .sidebar .agent-card)[data-le-feature='文书与合同起草'] { --le-card-accent: #4b8b78; --card-accent: #4b8b78; }
body :is(.container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,.app-shell .sidebar .agent-card)[data-le-feature='文书和合同审核'] { --le-card-accent: #b88748; --card-accent: #b88748; }
body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card:not(.active),
body .app-shell.legaleasy-desktop-workspace .sidebar .agent-card:not(.is-active) { background: transparent; border-color: transparent; box-shadow: none; }
body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card:not(.active):hover,
body .app-shell.legaleasy-desktop-workspace .sidebar .agent-card:not(.is-active):hover { background: #f7f9fc; border-color: #e5ebf3; box-shadow: none; }
body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card.active,
body .app-shell.legaleasy-desktop-workspace .sidebar .agent-card.is-active { background: color-mix(in srgb,var(--le-card-accent) 9%,white); border-color: color-mix(in srgb,var(--le-card-accent) 45%,white); box-shadow: inset 3px 0 0 var(--le-card-accent),0 4px 12px rgba(28,53,83,.045); }
body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card.active .person-name,
body .app-shell.legaleasy-desktop-workspace .sidebar .agent-card.is-active strong { color: color-mix(in srgb,var(--le-card-accent) 70%,#1e293b); }
.legaleasy-enterprise-heading { text-align: center; margin: 0 0 14px; }
.legaleasy-enterprise-heading span { color: #7a92b3; font-size: 11px; font-weight: 600; }
.legaleasy-enterprise-heading h2 { margin: 4px 0 0; color: #1e293b; font-size: 17px; line-height: 26px; font-weight: 650; }
@media (min-width: 801px) {
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-content:has(.opening) { display: flex; flex-direction: column; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conver-center .opening { display: flex; flex-direction: column; flex: 1 0 auto; min-height: 100%; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .opening > :is(.oping,.m-t-10) { flex: 0 0 auto; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .opening > div:has(.qr-item) { display: flex; align-items: center; justify-content: center; flex: 1 0 auto; min-height: 310px; padding: 20px 0 !important; }
  body .container-main.legaleasy-unified.legaleasy-desktop-workspace .opening .qr-item { display: flex; flex-direction: column; align-items: center; width: 100%; text-align: center; }
}
@media (max-width: 800px) { .legaleasy-enterprise-heading { display: none; } }

/* Selection colour tracks the lightweight content entrance, without moving layout. */
body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,
body .app-shell .sidebar .agent-card { transition: background-color .22s ease,border-color .22s ease,box-shadow .22s ease,color .22s ease; }
@media (prefers-reduced-motion: reduce) {
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,
  body .app-shell .sidebar .agent-card { transition: none; }
}

@keyframes le-backdrop-in { from { opacity: 0; } to { opacity: 1; } }
@keyframes le-backdrop-out { from { opacity: 1; } to { opacity: 0; } }
body dialog:is(.preview-dialog,#legaleasy-qr-dialog)[open]::backdrop { animation: le-backdrop-in .28s cubic-bezier(.16,1,.3,1) both; }
body dialog:is(.preview-dialog,#legaleasy-qr-dialog).legaleasy-dialog-leaving::backdrop { animation: le-backdrop-out .17s cubic-bezier(.4,0,1,1) both; }
body :is(.legaleasy-suggestions,.prompt-details) summary,
body :is(.legaleasy-suggestion-grid,.prompt-grid) button,
body .legaleasy-feature-details summary { transition: background-color .22s cubic-bezier(.22,1,.36,1),color .22s cubic-bezier(.22,1,.36,1),box-shadow .22s cubic-bezier(.22,1,.36,1); }
@media (prefers-reduced-motion: reduce) {
  body dialog:is(.preview-dialog,#legaleasy-qr-dialog)::backdrop { animation: none !important; }
}

/* Carry the login aurora into the first conversation view. */
.legaleasy-login-wave-transition { position: fixed; inset: 0; z-index: 3000; overflow: hidden; pointer-events: none; }
.legaleasy-login-wave-glow { position: absolute; inset: -20px; opacity: .22; filter: blur(16px); }
.legaleasy-login-wave-ring { position: absolute; width: 180px; height: 180px; margin: -90px 0 0 -90px; border: 1px solid rgba(147,197,253,.55); border-radius: 50%; background: radial-gradient(circle,transparent 55%,rgba(165,180,252,.10) 75%,transparent 100%); }
@media (prefers-reduced-motion: reduce) { .legaleasy-login-wave-transition { display: none; } }

/* Preview service dialog composition, backed by the existing production controls. */
body .container-main.legaleasy-unified .legaleasy-topbar-shell .modal-container.legaleasy-service-panel { width: min(640px,calc(100vw - 32px)); max-width: 640px; max-height: calc(var(--le-viewport-height,100dvh) - 32px); height: auto; padding: 30px !important; overflow-y: auto; box-sizing: border-box; text-align: left; }
body .container-main.legaleasy-unified .legaleasy-topbar-shell .modal-container[data-le-service-design='exchange'] { width: min(520px,calc(100vw - 32px)); }
.legaleasy-service-lead { padding: 3px 30px 14px 0; }
.legaleasy-service-lead > span { color: #4b80c8; font-size: 11px; font-weight: 700; }
.legaleasy-service-lead h2 { margin: 6px 0 8px; color: #1e293b; font-size: 22px; line-height: 1.4; font-weight: 650; }
.legaleasy-service-lead p { margin: 0; color: #64748b; font-size: 12px; line-height: 1.75; }
.legaleasy-purchase-choices { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 13px; margin: 10px 0 0; }
.legaleasy-purchase-choices > section { min-width: 0; padding: 18px; border: 1px solid #e4e9f2; border-radius: 21px; background: #fafcff; }
.legaleasy-purchase-choices > section:last-child { border-color: #dae8f9; background: #f5f9ff; }
.legaleasy-choice-index { color: #9ab0cc; font-size: 11px; font-weight: 600; }
.legaleasy-purchase-choices h3 { margin: 9px 0 7px; color: #1e293b; font-size: 15px; line-height: 22px; font-weight: 650; }
.legaleasy-purchase-choices p { margin: 0 0 15px; color: #64748b; font-size: 12px; line-height: 1.75; }
body .legaleasy-service-panel .legaleasy-purchase-choices .qr-container { display: block; margin: 0; padding: 0; }
body .legaleasy-service-panel .legaleasy-purchase-choices .qr-item { display: flex; flex-direction: column; align-items: center; width: 100%; gap: 4px; font-size: 12px; color: #64748b; }
body .legaleasy-service-panel .legaleasy-purchase-choices .qr-code { width: 160px !important; height: 160px !important; max-width: 100%; margin: 0 auto 8px; border: 1px solid #e2e8f0; border-radius: 24px; background: #fff; }
body .legaleasy-service-panel .legaleasy-purchase-choices .qr-code img { width: 100% !important; height: 100% !important; padding: 8px; box-sizing: border-box; object-fit: contain; border-radius: 24px; }
.legaleasy-enterprise-service-open { padding: 0; min-height: 44px; border: 0; background: transparent; color: #4b80c8; font: inherit; font-size: 12px; line-height: 20px; text-align: left; cursor: pointer; }
.legaleasy-enterprise-service-open::after { content: ' ↗'; }
body .container-main.legaleasy-unified .legaleasy-service-panel .exchange-item { display: flex; justify-content: space-between; gap: 12px; padding: 10px 0; border-bottom: 1px solid #edf1f5; color: #64748b; font-size: 12px; line-height: 20px; }
.legaleasy-redeem-label { display: block; margin: 22px 0 9px; color: #475569; font-size: 13px; }
.legaleasy-redeem-controls { display: grid; grid-template-columns: minmax(0,1fr) 116px; gap: 10px; align-items: center; }
body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-panel .legaleasy-redeem-controls .input-container { width: 100%; margin: 0; padding: 0 !important; border: 0; box-shadow: none; background: transparent; }
body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-panel .legaleasy-redeem-controls input { width: 100%; height: 52px; min-height: 52px; margin: 0; padding: 0 16px; box-sizing: border-box; border: 1px solid #d1d5db; background: #fff; font-size: 14px; }
body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-panel .submit-btn { width: 100%; height: 52px; min-height: 52px; margin: 0; padding: 0 12px; border: 0; color: #fff; font-size: 13px; background: url('/assets/btn-bg-CVPvrzdb.png') center/cover no-repeat,linear-gradient(120deg,#5b9af5,#a78bfa,#98d9f4); }
@media (max-width: 600px) {
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .modal-container.legaleasy-service-panel { padding: 22px 20px !important; }
  .legaleasy-purchase-choices { grid-template-columns: minmax(0,1fr); }
  .legaleasy-service-lead h2 { font-size: 20px; }
  body .legaleasy-service-panel .legaleasy-redeem-controls input { font-size: 16px !important; }
  .legaleasy-redeem-controls { grid-template-columns: minmax(0,1fr) 100px; gap: 8px; }
}

/* Direct purchase QR; the close control matches the preview exactly. */
body .container-main.legaleasy-unified .legaleasy-topbar-shell .modal-container[data-le-service-design='purchase'] { width: min(460px,calc(100vw - 32px)); }
body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-panel .close-btn { position: absolute; top: 16px; right: 16px; display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 0; border-radius: 50% !important; background: #f8fafc !important; color: #728195 !important; box-shadow: none; font-size: 20px; line-height: 1; cursor: pointer; transition: background-color .18s ease; }
body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-panel .close-btn:hover { background: #e7edf5 !important; }
body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-panel .close-btn svg { width: 20px; height: 20px; stroke: currentColor; stroke-width: 1.7; }
body .legaleasy-service-panel .legaleasy-purchase-single-qr { display: block; padding: 0; margin: 18px 0 0; }
body .legaleasy-service-panel .legaleasy-purchase-single-qr .qr-item { display: flex; flex-direction: column; align-items: center; gap: 6px; width: 100%; color: #64748b; font-size: 13px; line-height: 22px; }
body .legaleasy-service-panel .legaleasy-purchase-single-qr .qr-code { width: 240px !important; height: 240px !important; max-width: 100%; margin: 0 auto 10px; border: 1px solid #e2e8f0; border-radius: 24px; background: #fff; }
body .legaleasy-service-panel .legaleasy-purchase-single-qr .qr-code img { width: 100% !important; height: 100% !important; padding: 10px; box-sizing: border-box; object-fit: contain; border-radius: 24px; }
@media (max-width: 600px) {
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-panel .close-btn { top: 5px; right: 5px; width: 44px; height: 44px; }
}

/* Mobile feature tabs: one row, full titles, original click handlers. */
@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  body .container-main.legaleasy-unified .sider-main .sider-top .x-dna { width: 116px; height: 40px; min-height: 0; margin: 8px 0 0 var(--le-inline-space,20px); object-fit: contain; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list { margin-top: 0; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .people-grid,
  body .app-shell .sidebar .agent-nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 6px; overflow: visible; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .people-grid { padding: 8px var(--le-inline-space,20px) 12px; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,
  body .app-shell .sidebar .agent-card { display: flex; flex-direction: row; align-items: center; justify-content: center; width: 100%; min-width: 0; min-height: 52px; height: 52px; gap: 2px; padding: 1px; border-radius: 16px !important; box-sizing: border-box; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .avatar-wrapper { flex: 0 0 24px; width: 24px; height: 24px; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .avatar,
  body .app-shell .sidebar .agent-card :is(img,.agent-icon) { width: 24px; height: 24px; padding: 0; flex: 0 0 24px; border-radius: 6px; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .status-indicator,
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-description,
  body .app-shell .sidebar .agent-card small,
  body .app-shell .sidebar .agent-card::after { display: none; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-info { display: flex; justify-content: center; flex: 0 1 auto; width: auto; min-width: 0; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-name,
  body .app-shell .sidebar .agent-card strong { display: block; width: 4em; flex: 0 0 4em; max-width: none; min-height: 36px; margin: 0; color: inherit; font-size: 13px; line-height: 18px; text-align: left; white-space: normal; word-break: break-all; overflow: visible; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card:hover,
  body .app-shell .sidebar .agent-card:hover { transform: none; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card:not(.active):hover,
  body .app-shell .sidebar .agent-card:not(.is-active):hover { background: transparent; border-color: transparent; box-shadow: none; }
  body .app-shell:has(.agent-nav) .sidebar { padding-top: 8px; padding-bottom: 12px; }
  body .app-shell .sidebar .brand { padding-bottom: 8px; }
  body .app-shell .sidebar .brand img { width: 116px; height: 40px; object-fit: contain; }
}

/* Mobile: brand and original service controls share the first row. */
@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  body .container-main.legaleasy-unified .sider-main .sider-top .x-dna { width: 96px; height: 40px; min-height: 0; margin-top: 8px; }
  body .container-main.legaleasy-unified .legaleasy-topbar-shell { flex: 0 0 0; height: 0; min-height: 0; padding: 0 !important; }
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .flex-end.p-b-20 { position: fixed; top: calc(var(--le-viewport-top,0px) + 8px); right: var(--le-inline-space,20px); z-index: 80; width: max-content; min-height: 40px; margin: 0; padding: 0; gap: 4px; flex-wrap: nowrap; }
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-service-action,
  body .app-shell .topbar .top-action { flex: 0 0 auto; min-height: 40px !important; height: 40px !important; padding: 4px !important; gap: 4px; font-size: 14px; line-height: 20px; white-space: nowrap; border-radius: 12px; }
  body .container-main.legaleasy-unified .legaleasy-service-action svg,
  body .app-shell .topbar .top-action > svg { flex: 0 0 14px; width: 14px; height: 14px; }
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .legaleasy-logout,
  body .app-shell .topbar .account-button { flex: 0 0 32px; width: 32px; height: 40px; min-height: 40px; padding: 6px; }
  body .app-shell:has(.agent-nav) { position: relative; }
  body .app-shell:has(.agent-nav) .main-shell { position: static; }
  body .app-shell:has(.agent-nav) .topbar { position: absolute; top: 8px; right: var(--le-inline-space,20px); z-index: 80; height: 40px; min-height: 0; flex-basis: 0; margin: 0; padding: 0; background: transparent; }
  body .app-shell .topbar .top-actions { gap: 4px; flex-wrap: nowrap; }
  body .app-shell .sidebar .brand img { width: 96px; height: 40px; }
}
@media (max-width: 360px) {
  body .container-main.legaleasy-unified .sider-main .sider-top .x-dna { width: 72px; margin-left: 16px; }
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .flex-end.p-b-20,
  body .app-shell:has(.agent-nav) .topbar { right: 16px; }
  body .app-shell .sidebar .brand { padding-left: 0; }
  body .app-shell .sidebar .brand img { width: 72px; }
}

@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  /* Allow the fixed header controls outside the content panel; its reading
     viewport and composer keep their existing independent overflow rules. */
  body .container-main.legaleasy-unified .n-layout-content { overflow: visible !important; z-index: 2; }
  body .container-main.legaleasy-unified .n-layout-content::before { inset: 0; }
}

@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  body .app-shell:has(.agent-nav) .topbar { width: max-content; }
  body .app-shell .topbar .top-action { width: auto !important; }
}

/* Mobile composer: a single text row and vertically centered actions. */
@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container { position: relative; min-height: 66px; padding: 10px 12px !important; box-sizing: border-box; }
  body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container > .flex-start { display: flex; flex-direction: row; align-items: center; width: 100%; min-width: 0; gap: 8px; padding: 0 !important; }
  body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-field,
  body .app-shell .composer textarea { flex: 1 1 0%; width: 0 !important; min-width: 0; height: var(--le-composer-height,24px) !important; min-height: 24px; max-height: 144px; margin: 0; padding: 0 !important; box-sizing: border-box; resize: none; font-size: 16px; line-height: 24px; overflow-y: var(--le-composer-overflow,hidden); scrollbar-width: none; }
  body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-right { display: flex; flex: 0 0 auto; flex-direction: row !important; align-items: center; justify-content: center; width: auto !important; height: 44px !important; min-height: 44px; margin: 0 !important; padding: 0 !important; }
  body .container-main.legaleasy-unified .input-right > .flex-start { margin: 0; }
  body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container .input-actions { align-items: center; gap: 6px; margin: 0; }
  body .container-main.legaleasy-unified .input-actions .legaleasy-upload-label,
  body .app-shell .composer .attach-button > span { display: none; }
  body .app-shell .composer { position: relative; display: grid; grid-template-columns: minmax(0,1fr) 44px 44px; align-items: center; gap: 6px; min-height: 66px; padding: 10px 12px; box-sizing: border-box; }
  body .app-shell .composer textarea { grid-column: 1; grid-row: 1; width: 100% !important; }
  body .app-shell .composer :is(.composer-bottom,.composer-bottom__left) { display: contents; }
  body .app-shell .composer .attach-button { display: inline-flex; align-items: center; justify-content: center; grid-column: 2; grid-row: 1; width: 44px; height: 44px; min-height: 44px; margin: 0; padding: 0; }
  body .app-shell .composer .send-button { grid-column: 3; grid-row: 1; width: 44px; height: 44px; min-height: 44px; margin: 0; padding: 0; }
  body .app-shell .composer .attachment-chip { grid-column: 1 / -1; grid-row: 1; }
  body .app-shell .composer:has(.attachment-chip:not([hidden])) :is(textarea,.attach-button,.send-button) { grid-row: 2; }
  body .container-main.legaleasy-unified .legaleasy-composer-shell .input-container:has(.input-field:focus:placeholder-shown)::before,
  body .app-shell .composer:has(textarea:focus:placeholder-shown)::before { content: attr(data-le-input-hint); position: absolute; z-index: 20; right: 0; bottom: calc(100% + 8px); left: 0; padding: 10px 12px; border: 1px solid #dce7f3; border-radius: 14px; background: #fff; color: #64748b; box-shadow: 0 6px 20px rgba(28,53,83,.08); font-size: 12px; line-height: 20px; font-weight: 400; white-space: normal; pointer-events: none; }
}

/* Mobile reading chrome follows reading gestures; composer is unaffected. */
@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  body .container-main.legaleasy-unified .n-layout-sider,
  body .app-shell:has(.agent-nav) .sidebar { min-height: 0 !important; max-height: var(--le-mobile-chrome-height,260px) !important; overflow: hidden !important; box-sizing: border-box; opacity: 1; visibility: visible; transform: translateY(0); transition: max-height .38s cubic-bezier(.4,0,.2,1),padding .38s cubic-bezier(.4,0,.2,1),opacity .24s ease,transform .38s cubic-bezier(.4,0,.2,1),visibility 0s; }
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .flex-end.p-b-20,
  body .app-shell:has(.agent-nav) .topbar { opacity: 1; visibility: visible; transform: translateY(0); transition: opacity .24s ease,transform .38s cubic-bezier(.4,0,.2,1),visibility 0s; }
  body .container-main.legaleasy-unified.legaleasy-mobile-reading-focused .n-layout-sider,
  body .app-shell.legaleasy-mobile-reading-focused .sidebar { max-height: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; border-bottom-width: 0; opacity: 0; visibility: hidden; transform: translateY(-10px); pointer-events: none; transition-delay: 0s,0s,0s,0s,.38s; }
  body .container-main.legaleasy-unified.legaleasy-mobile-reading-focused .legaleasy-topbar-shell .flex-end.p-b-20,
  body .app-shell.legaleasy-mobile-reading-focused .topbar { opacity: 0; visibility: hidden; transform: translateY(-10px); pointer-events: none; transition-delay: 0s,0s,.38s; }
}
@media (prefers-reduced-motion: reduce) {
  body .container-main.legaleasy-unified .n-layout-sider,
  body .container-main.legaleasy-unified .legaleasy-topbar-shell .flex-end.p-b-20,
  body .app-shell:has(.agent-nav) :is(.sidebar,.topbar) { transition: none !important; }
}

/* The mobile feature title participates in the same reading transition. */
@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  body .container-main.legaleasy-unified .conversation-main > .legaleasy-conversation-heading,
  body .app-shell:has(.agent-nav) .agent-heading { max-height: var(--le-mobile-title-height,180px); overflow: hidden; box-sizing: border-box; opacity: 1; visibility: visible; transform: translateY(0); transition: max-height .38s cubic-bezier(.4,0,.2,1),min-height .38s cubic-bezier(.4,0,.2,1),padding .38s cubic-bezier(.4,0,.2,1),margin .38s cubic-bezier(.4,0,.2,1),opacity .24s ease,transform .38s cubic-bezier(.4,0,.2,1),visibility 0s; }
  body .container-main.legaleasy-unified.legaleasy-mobile-reading-focused .conversation-main > .legaleasy-conversation-heading,
  body .app-shell.legaleasy-mobile-reading-focused .agent-heading { min-height: 0 !important; max-height: 0 !important; margin-top: 0 !important; margin-bottom: 0 !important; padding-top: 0 !important; padding-bottom: 0 !important; opacity: 0; visibility: hidden; transform: translateY(-10px); pointer-events: none; transition-delay: 0s,0s,0s,0s,0s,0s,.38s; }
}
@media (prefers-reduced-motion: reduce) {
  body .container-main.legaleasy-unified .conversation-main > .legaleasy-conversation-heading,
  body .app-shell:has(.agent-nav) .agent-heading { transition: none !important; }
}

@media (max-width: 800px), (max-width: 1000px) and (max-height: 500px) and (pointer: coarse) {
  body .legaleasy-reading-anchor { scroll-behavior: auto !important; overflow-anchor: none !important; padding-top: calc(var(--le-reading-base-pad,0px) + var(--le-reading-slack,0px)) !important; }
}

@media (max-width:380px) {
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .people-grid { padding-left:0; padding-right:0; gap:0; }
  body .app-shell .sidebar .agent-nav { gap:0; margin-left:-8px; margin-right:-8px; width:calc(100% + 16px); }
  body .app-shell .sidebar { padding-left:8px; padding-right:8px; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .person-card,
  body .app-shell .sidebar .agent-card { gap:2px; padding:1px; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .avatar-wrapper,
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .avatar,
  body .app-shell .sidebar .agent-card :is(img,.agent-icon) { width:20px; height:20px; flex:0 0 20px; }
}

@media (max-width:800px), (max-width:1000px) and (max-height:500px) and (pointer:coarse) {
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .avatar-wrapper { display:flex; align-items:center; justify-content:center; align-self:center; }
  body .container-main.legaleasy-unified .sider-main .sider-top .menu-list .avatar,
  body .app-shell .sidebar .agent-card :is(img,.agent-icon) { align-self:center; object-fit:contain; }
}
body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card[data-le-feature='文书与合同'] .person-description{-webkit-line-clamp:1}
@media(min-width:801px) and (min-height:701px) and (max-height:800px){
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .x-dna{margin-top:8px}
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid{gap:3px;padding-top:4px;padding-bottom:4px}
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-nav-group-title{line-height:16px}
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-nav-group-title:not(:first-child){margin-top:2px}
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .qr-item>span:last-of-type{margin-bottom:6px}
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .legaleasy-enterprise-contact{margin-top:6px}
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main>div:last-child{padding-bottom:10px!important}
}

#le-chat-job-status{max-width:100%;padding:6px 16px 10px;color:#6785a4;font-size:13px;line-height:1.6;text-align:center}#le-chat-job-status[hidden]{display:none}

.input-container.le-file-drop-active{position:relative;outline:2px dashed #78a9df;outline-offset:4px;box-shadow:0 10px 32px rgba(82,134,196,.16)!important}.input-container.le-file-drop-active::after{content:attr(data-drop-hint);position:absolute;inset:0;display:flex;align-items:center;justify-content:center;border-radius:inherit;background:rgba(244,249,255,.94);color:#4979af;font-size:16px;pointer-events:none;z-index:10}

/* Staged image attachments share the existing compact attachment cards. */
body .input-container .files .file-item.le-image-attachment { min-height: 58px; gap: 10px; padding-top: 6px; padding-bottom: 6px; }
body .input-container .le-attachment-thumbnail { width: 44px; height: 44px; flex: 0 0 44px; overflow: hidden; border: 1px solid #e1e9f3; border-radius: 10px; background: #eef4fa; }
body .input-container .le-attachment-thumbnail img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .22s cubic-bezier(.2,.7,.2,1); }
body .input-container .file-item:hover .le-attachment-thumbnail img { transform: scale(1.06); }
body .input-container .files .close { opacity: 1; cursor: pointer; }
body .input-container .files .close:focus-visible { outline: 2px solid #78a9df; outline-offset: 2px; }
body .input-container .le-attachment-file-icon { flex-shrink: 0; }
@media (prefers-reduced-motion: reduce) { body .input-container .le-attachment-thumbnail img { transition: none; } }

body .container-main.legaleasy-unified .input-container .files .file-item { padding-right: 36px; }
body .container-main.legaleasy-unified .input-container .files .file-item .close { opacity: 1 !important; right: 6px; top: 50%; transform: translateY(-50%); width: 24px; height: 24px; display: grid; place-items: center; border-radius: 50%; background: #f0f5fb; color: #72849c; }
body .container-main.legaleasy-unified .input-container .files .file-item .close:hover { background: #e5edf8; }

/* Compact image gallery inside sent user messages; documents keep their cards. */
body .container-main.legaleasy-unified .message.user .show-files { display: flex; flex-wrap: wrap; gap: 8px; max-width: 100%; margin-top: 8px; }
body .container-main.legaleasy-unified .message.user .show-files:has(.le-chat-image-card) { max-height: 250px; overflow-y: auto; overscroll-behavior: contain; }
body .container-main.legaleasy-unified .message.user .show-files > div:has(.le-chat-image-card) { flex: 0 0 auto; }
body .container-main.legaleasy-unified .message.user .show-files .le-chat-image-card { display: flex; flex-direction: column; align-items: stretch; gap: 5px; width: 108px; box-sizing: border-box; padding: 6px; margin: 0; border: 1px solid #e0e9f5; border-radius: 12px; background: #f7faff; cursor: pointer; transition: border-color .2s ease, box-shadow .2s ease; }
body .container-main.legaleasy-unified .message.user .show-files .le-chat-image-card:hover { border-color: #aac6e9; box-shadow: 0 3px 10px rgba(76,120,175,.1); }
body .container-main.legaleasy-unified .message.user .show-files .le-chat-image-card:focus-visible { outline: 2px solid #78a9df; outline-offset: 2px; }
body .container-main.legaleasy-unified .le-chat-image-thumb { display: grid; place-items: center; width: 94px; height: 70px; overflow: hidden; border-radius: 8px; background: #edf3fa; }
body .container-main.legaleasy-unified .le-chat-image-thumb img { display: block; width: 100%; height: 100%; object-fit: cover; }
body .container-main.legaleasy-unified .le-chat-image-placeholder { font-size: 12px; color: #8094ad; }
body .container-main.legaleasy-unified .message.user .le-chat-image-card .file-item-text { width: 94px !important; max-width: 94px; margin: 0; font-size: 11px; line-height: 18px; color: #71849e; }
body .container-main.legaleasy-unified .message.user .le-chat-image-card .m-l-10 { display: none; }
@media (prefers-reduced-motion: reduce) { body .container-main.legaleasy-unified .message.user .show-files .le-chat-image-card { transition: none; } }

/* Reading-first workspace: compact identity, contextual starts, one file toolbar. */
body .container-main.legaleasy-unified .opening > .oping { display: none; }
.le-workspace-start { flex: 0 0 auto; margin: 0 0 12px; }
.le-workspace-start h2 { margin: 0 0 12px; font: inherit; font-size: 19px; line-height: 1.6; font-weight: 600; color: #27374d; }
.le-workspace-start-actions { display: flex; flex-wrap: wrap; gap: 8px; }
.le-workspace-start-actions button { padding: 7px 14px; border: 1px solid #e0e9f5; border-radius: 12px; background: #f8fbff; color: #55799f; font: inherit; font-size: 13px; cursor: pointer; transition: background .2s ease, border-color .2s ease; }
.le-workspace-start-actions button:hover { background: #edf4ff; border-color: #b7cee9; }
.le-workspace-start-tips { margin-top: 12px; font-size: 12px; color: #7b8b9f; }
.le-workspace-start-tips summary { cursor: pointer; }
.le-workspace-start-tips p { margin: 8px 0; font-size: 13px; line-height: 1.8; }
body .container-main.legaleasy-unified .opening:has(.le-workspace-start) > .m-t-10 { display: none; }
.le-workspace-files { display: inline-flex; flex: 0 0 auto; gap: 6px; align-items: center; margin-left: auto; }
.le-workspace-files .le-open-files,.le-workspace-files .le-open-history { margin: 0 !important; min-height: 34px; padding: 6px 10px; border-radius: 12px; font-size: 12px; }
.le-result-file-actions { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 6px 0 8px 8px; vertical-align: middle; }
.le-result-file-actions .le-preview-link-button { margin: 0; padding: 5px 11px; border: 1px solid #dce7f4; border-radius: 10px; background: #f7faff; color: #52799f; font: inherit; font-size: 12px; cursor: pointer; }
.le-result-file-actions .le-preview-link-button:hover { background: #edf4ff; }
.le-file-action-status { flex-basis: 100%; color: #7b8b9f; font-size: 12px; line-height: 1.6; }
@media(min-width:801px) {
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conversation-main > .legaleasy-conversation-heading { min-height: 54px; margin-bottom: 8px; gap: 10px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-workspace-reading .conver-main .conversation-main > .legaleasy-conversation-heading { min-height: 48px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-workspace-reading .conver-main .conversation-main .avator { width: 32px; height: 32px; flex-basis: 32px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-workspace-reading .conver-main .conversation-main .title { font-size: 20px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .opening > div:has(.qr-item) { min-height: 270px; padding-block: 12px !important; }
}
@media(max-width:800px) { .le-workspace-start h2 { font-size: 16px; } .le-workspace-files { gap: 4px; } .le-workspace-files .le-open-files,.le-workspace-files .le-open-history { padding: 5px 8px; } }
@media(prefers-reduced-motion:reduce) { .le-workspace-start-actions button { transition: none; } }

/* Consistent task controls, compact file cards, and explicit loading state. */
/* Calm, colour-coded desktop navigation; QR dimensions remain unchanged. */
@media(min-width:801px) {
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top { flex: 1 1 auto; min-height: 0; overflow-y: auto; overflow-x: hidden; scrollbar-width: thin; scrollbar-color: #dbe4ef transparent; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { gap: 6px; padding: 6px 16px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-nav-group-title { padding: 0 12px; line-height: 18px; margin: 0; color: #8994a5; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-nav-group-title:not(:first-child) { margin-top: 8px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card { min-height: 68px; padding: 10px; gap: 12px; border-radius: 18px !important; border: 1px solid transparent; box-sizing: border-box; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card[data-le-feature='文书与合同'] { --le-card-accent: #b88748; --card-accent: #b88748; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .avatar-wrapper { flex: 0 0 44px; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 14px; background: color-mix(in srgb,var(--le-card-accent) 11%,white); transition: background-color .22s ease,box-shadow .22s ease; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .avatar { width: 44px; height: 44px; object-fit: contain; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-info { min-width: 0; flex: 1 1 0; overflow: hidden; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-name { margin: 0 0 3px; white-space: nowrap; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-description { display: block; width: 100%; margin: 0; line-height: 20px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #8490a1; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card:not(.active) { background: transparent; border-color: transparent; box-shadow: none; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card:not(.active):hover { background: color-mix(in srgb,var(--le-card-accent) 5%,white); border-color: color-mix(in srgb,var(--le-card-accent) 15%,white); }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card.active { background: color-mix(in srgb,var(--le-card-accent) 8%,white); border-color: color-mix(in srgb,var(--le-card-accent) 20%,white); box-shadow: inset 3px 0 0 var(--le-card-accent); }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card.active .avatar-wrapper { box-shadow: 0 2px 8px color-mix(in srgb,var(--le-card-accent) 15%,transparent); }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .le-sidebar-services { position: relative; flex: 0 0 auto; margin: 12px 16px 0; padding: 14px 0 12px !important; border-top: 1px solid #e8edf4; background: linear-gradient(180deg,#f8faff80,transparent 70%); border-radius: 0 0 18px 18px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .le-sidebar-services .qr-label { margin-bottom: 3px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .le-sidebar-services .legaleasy-enterprise-contact { width: 100%; max-width: 252px; min-height: 36px; margin-top: 12px; padding: 6px 8px; box-sizing: border-box; border-color: #e2eaf4; border-radius: 12px; background: #f5f9ff; line-height: 20px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .le-sidebar-services .agent .title { margin-top: 8px; }
}
@media(min-width:801px) and (max-height:800px) {
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .people-grid { gap: 4px; padding-block: 4px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-nav-group-title:not(:first-child) { margin-top: 4px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .sider-top .menu-list .person-card { min-height: 56px; padding-block: 4px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .le-sidebar-services { margin-top: 8px; padding-top: 10px !important; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .sider-main .le-sidebar-services .legaleasy-enterprise-contact { margin-top: 8px; }
}
@media(min-width:801px) {
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-topbar-shell { top: var(--le-actions-top,6px) !important; right: var(--le-actions-right,32px) !important; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .conver-main .conversation-main > .legaleasy-conversation-heading { box-sizing: border-box; flex-wrap: nowrap; padding-right: calc(var(--le-service-reserve,264px) + 218px) !important; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-conversation-heading > .flex-center { flex: 0 0 auto; white-space: nowrap; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-conversation-heading .le-workspace-files { position: absolute; top: 50%; right: var(--le-service-reserve,264px); transform: translateY(-50%); margin: 0; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-feature-details { flex: 0 0 auto; margin-left: 0; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-two-rows .conver-main .conversation-main > .legaleasy-conversation-heading { min-height: 100px; padding: 8px 0 52px !important; align-items: flex-start; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-two-rows .legaleasy-conversation-heading .le-workspace-files { top: 54px; transform: none; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-two-rows :is(.le-workspace-files button,.legaleasy-service-action) { padding-inline: 8px !important; font-size: 12px !important; white-space: nowrap; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-icon-files .le-workspace-files button { width: 36px; padding: 0 !important; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-icon-files .le-workspace-files button span { display: none; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-icon-all .legaleasy-service-action { width: 36px; padding: 0 !important; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-icon-all .legaleasy-service-action span { display: none; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-icon-all .legaleasy-feature-details summary { font-size: 0; width: 30px; padding-inline: 0; text-align: center; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-actions-icon-all .legaleasy-feature-details summary::before { content: 'ⓘ'; font-size: 17px; }
 body.le-file-preview-open .container-main.legaleasy-desktop-workspace .legaleasy-conversation-viewport { padding-top: 0; }
 body.le-file-preview-open .container-main.legaleasy-desktop-workspace .legaleasy-conversation-heading .le-open-files { display: inline-flex; }
}
@media(min-width:801px) {
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace { --le-toolbar-row-height: 54px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace.le-workspace-reading { --le-toolbar-row-height: 48px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-topbar-shell { top: calc((var(--le-toolbar-row-height) - 36px)/2); }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-topbar-shell .flex-end.p-b-20 { height: 36px; min-height: 36px; margin: 0; padding: 0; align-items: center; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace .legaleasy-logout { width: 36px; height: 36px; flex-basis: 36px; box-sizing: border-box; padding: 7px; }
 body .container-main.legaleasy-unified.legaleasy-desktop-workspace :is(.le-workspace-files button,.legaleasy-service-action) svg { display: block; width: 18px; height: 18px; flex: 0 0 18px; }
}
body .container-main.legaleasy-unified .legaleasy-service-action,
body .container-main.legaleasy-unified .le-workspace-files :is(.le-open-files,.le-open-history),
body .container-main.legaleasy-unified .le-result-file-actions .le-preview-link-button { height: 36px !important; min-height: 36px !important; padding: 7px 11px !important; box-sizing: border-box; font-size: 13px !important; line-height: 20px !important; border-radius: 12px; display: inline-flex; align-items: center; justify-content: center; gap: 6px; }
body .container-main.legaleasy-unified .legaleasy-service-action { background: rgba(248,250,253,.7); border-color: #e8edf4; color: #73869c; }
body .container-main.legaleasy-unified .legaleasy-service-action--exchange { background: rgba(250,249,253,.7); color: #817a92; border-color: #ebe8f1; }
body .container-main.legaleasy-unified .le-workspace-files button { color: #4d7199; background: #f5f9ff; border-color: #dce7f4; }
body .container-main.legaleasy-unified .person-card .status-indicator { display: none; }
body .container-main.legaleasy-unified .person-card .person-description { -webkit-line-clamp: 1; line-height: 20px; }
body .container-main.legaleasy-unified .person-card .le-feature-capabilities { display: none; }
body .container-main.legaleasy-unified .person-card:focus-visible { outline: 2px solid #83b0df; outline-offset: 2px; }
.le-history-loading { display: grid; align-content: center; justify-items: center; gap: 12px; min-height: 220px; padding: 30px; color: #7c8fa7; text-align: center; font-size: 14px; line-height: 1.8; }
.le-history-loading p { margin: 0; }
.le-history-loading button { padding: 7px 14px; border: 1px solid #dce7f4; border-radius: 12px; background: #f7faff; color: #52799f; font: inherit; cursor: pointer; }
.le-generated-file-card { display: inline-grid; grid-template-columns: 30px minmax(0,1fr) auto; align-items: center; gap: 10px; width: min(100%,640px); max-width: 100%; box-sizing: border-box; padding: 10px 12px; margin: 8px 0; border: 1px solid #e0e8f3; border-radius: 12px; background: #f8fbff; vertical-align: middle; }
.le-file-result-icon { display: grid; place-items: center; width: 30px; height: 34px; color: #6e8ba9; }
.le-file-result-icon svg { width: 23px; height: 23px; }
body .container-main.legaleasy-unified .le-generated-file-card .le-file-result-name { display: block; padding: 0; min-width: 0; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font: inherit; font-size: 14px; line-height: 22px; color: #4e7198; border: 0; background: transparent; text-align: left; text-decoration: none; cursor: pointer; }
body .container-main.legaleasy-unified .le-generated-file-card .le-file-result-name:hover { color: #356b9f; text-decoration: underline; }
.le-generated-file-card .le-result-file-actions { margin: 0; gap: 6px; }
.le-file-action-status:empty { display: none; }
body .container-main.legaleasy-unified .show-file-item:not(.le-chat-image-card),body .container-main.legaleasy-unified .input-container .file-item:not(.le-image-attachment) { border: 1px solid #e0e8f3; border-radius: 12px; background: #f8fbff; }
body .container-main.legaleasy-unified :is(.le-workspace-files button,.le-result-file-actions button,.legaleasy-service-action,.legaleasy-enterprise-contact,.le-workspace-start-actions button) { transition: background-color .18s ease,border-color .18s ease,box-shadow .18s ease; }
body .container-main.legaleasy-unified :is(.le-workspace-files button,.le-result-file-actions button,.legaleasy-service-action,.legaleasy-enterprise-contact,.le-workspace-start-actions button):hover:not(:disabled) { background-color: #edf4fc; border-color: #c2d5eb; }
body .container-main.legaleasy-unified :is(.le-workspace-files button,.le-result-file-actions button,.legaleasy-service-action,.legaleasy-enterprise-contact,.le-workspace-start-actions button):active:not(:disabled) { background-color: #e4edf9; box-shadow: inset 0 1px 3px #35567814; }
body .container-main.legaleasy-unified :is(.le-workspace-files button,.le-result-file-actions button,.legaleasy-service-action,.legaleasy-enterprise-contact,.le-workspace-start-actions button):focus-visible { outline: 2px solid #83b0df; outline-offset: 3px; }
body .container-main.legaleasy-unified .legaleasy-enterprise-contact { border: 1px solid #e5edf7; padding-inline: 10px; }
body .container-main.legaleasy-unified .legaleasy-enterprise-contact::after { content: '›'; padding-left: 4px; font-size: 17px; }
.le-unified-tooltip { position: relative; }
.le-unified-tooltip::after { content: attr(data-le-tooltip); position: absolute; right: 0; bottom: calc(100% + 9px); width: max-content; max-width: min(300px,75vw); padding: 8px 11px; box-sizing: border-box; border: 1px solid #e0e8f2; border-radius: 10px; background: #fff; color: #62758f; box-shadow: 0 5px 18px #27466a12; font-size: 12px; line-height: 1.7; white-space: normal; pointer-events: none; opacity: 0; visibility: hidden; transform: translateY(3px); transition: opacity .16s ease,transform .16s ease,visibility .16s; z-index: 80; }
.le-unified-tooltip:is(:hover,:focus-visible)::after { opacity: 1; visibility: visible; transform: translateY(0); }
@media(max-width:800px) { body .container-main.legaleasy-unified .le-result-file-actions .le-preview-link-button { min-height: 40px !important; height: 40px !important; } .le-generated-file-card { gap: 7px; padding: 8px; grid-template-columns: 26px minmax(0,1fr) auto; } }
@media(prefers-reduced-motion:reduce) { body .container-main.legaleasy-unified :is(.le-workspace-files button,.le-result-file-actions button,.legaleasy-service-action,.legaleasy-enterprise-contact,.le-workspace-start-actions button),.le-unified-tooltip::after { transition: none; } }
