#workspaceHome #wcPanelPool[hidden],#workspaceHome .wc-workspace [hidden] { display:none !important; }
#workspaceHome .main-area .content.workbench-content { padding-top:6px !important; }
#workspaceHome .wc-workspace { min-width:0; margin-top:0; }
#workspaceHome .wc-toolbar { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:6px; padding:3px 0; border-bottom:1px solid #e8e9ed; }
#workspaceHome .wc-templates { display:flex; align-items:center; flex-wrap:wrap; gap:6px; min-width:0; }
#workspaceHome .wc-actions { display:flex; align-items:center; flex-wrap:wrap; gap:6px; }
#workspaceHome .wc-toolbar button,.wc-name-dialog button { min-height:32px; padding:6px 10px; border:1px solid #e5e7eb; border-radius:6px; background:#fff; color:#797c86; font:inherit; font-size:12px; cursor:pointer; }
#workspaceHome .wc-toolbar button:disabled { opacity:.4; cursor:default; }
#workspaceHome .wc-templates button { display:flex; align-items:center; gap:6px; max-width:210px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#workspaceHome .wc-templates button[aria-pressed="true"] { background:#fff1f2; border-color:#d95159; color:#c7353b; font-weight:600; }
#workspaceHome .wc-primary,.wc-name-dialog .wc-primary { border:1px solid #c7353b !important; border-radius:6px; background:#c7353b !important; color:#fff !important; padding:7px 12px; cursor:pointer; }
#workspaceHome #wcDelete { color:#c7353b; }
#workspaceHome .wc-status { display:flex; justify-content:space-between; flex-wrap:wrap; gap:5px; padding:10px 0; font-size:11px; color:#a0a3ad; }
#workspaceHome .wc-workarea { display:flex; align-items:flex-start; gap:14px; min-width:0; }
#workspaceHome .wc-canvas { position:relative; flex:1; min-width:0; min-height:560px; border-radius:10px; }
#workspaceHome .is-editing .wc-canvas { background-color:#faf7f8; background-image:radial-gradient(#decfd2 .8px,transparent .8px); background-size:16px 16px; outline:1px dashed #e4c8cc; outline-offset:5px; }
#workspaceHome .wc-canvas.is-drop-target { outline:2px dashed #c7353b; background-color:#fff0f2; }
#workspaceHome .wc-empty { display:flex; position:absolute; inset:0; min-height:400px; align-items:center; justify-content:center; flex-direction:column; color:#a8a4ad; pointer-events:none; }
#workspaceHome .wc-empty > span { display:grid; width:62px; height:62px; place-items:center; border-radius:16px; background:#fff0f2; color:#c7353b; font-size:32px; }
#workspaceHome .wc-empty h2 { margin:18px 0 8px; font-size:17px; font-weight:500; color:#6e6570; }
#workspaceHome .wc-empty p { font-size:12px; margin:0 0 18px; }
#workspaceHome .wc-empty button { pointer-events:auto; font-size:12px; }
#workspaceHome dialog.wc-library { box-sizing:border-box; position:fixed; inset:0; margin:auto; width:min(680px,calc(100vw - 32px)); max-width:none; max-height:min(600px,calc(100dvh - 64px)); padding:0; border:1px solid #e6e7eb; border-radius:12px; background:#fff; overflow:hidden; box-shadow:0 22px 70px #29202b30; }
#workspaceHome dialog.wc-library[open] { display:flex; flex-direction:column; }
#workspaceHome dialog.wc-library:not([open]) { display:none; }
#workspaceHome .wc-library::backdrop { background:#28232e66; }
#workspaceHome .wc-library > header { display:flex; flex-shrink:0; align-items:center; justify-content:space-between; padding:18px 22px; border-bottom:1px solid #f0f0f3; }
#workspaceHome .wc-library header b { font-size:18px; color:#4b4852; }
#workspaceHome .wc-library header small { display:block; font-size:11px; color:#aaa3ad; margin-top:6px; }
#workspaceHome .wc-library header button { background:transparent; border:0; color:#96919d; cursor:pointer; font-size:24px !important; min-width:28px; min-height:28px; }
#workspaceHome #wcLibraryItems { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; overflow-y:auto; overscroll-behavior:contain; min-height:0; padding:18px 22px; }
#workspaceHome .wc-library > footer { display:flex; flex-shrink:0; align-items:center; justify-content:space-between; padding:14px 22px; border-top:1px solid #f0f0f3; background:#fff; }
#workspaceHome #wcLibraryCount { color:#99929d; font-size:12px; }
#workspaceHome .wc-library footer button { font-size:12px; }
#workspaceHome .wc-library-item { display:flex; align-items:center; gap:9px; width:100%; min-height:82px; padding:14px 10px; border:1px solid #eee9ec; border-radius:8px; background:#fff; text-align:left; cursor:pointer; }
#workspaceHome .wc-library-item:not(:disabled):hover { border-color:#e4b8bd; background:#fff7f8; }
#workspaceHome .wc-library-item i { display:grid; place-items:center; width:36px; height:36px; flex-shrink:0; border-radius:10px; font-style:normal; }
#workspaceHome .wc-library-item > span { flex:1; min-width:0; }
#workspaceHome .wc-library-item b { display:block; color:#605862; font-size:12px; font-weight:600; }
#workspaceHome .wc-library-item small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin-top:4px; font-size:10px; color:#a79faa; }
#workspaceHome .wc-library-item em { flex-shrink:0; font-size:10px; color:#b0a7b0; font-style:normal; }
#workspaceHome .wc-library-item:disabled { opacity:.5; cursor:default; }
#workspaceHome .wc-panel,.wc-max .wc-panel { box-sizing:border-box; position:absolute; display:flex; flex-direction:column; border:1px solid #e4e6eb; border-radius:10px; background:#fff; min-width:0; overflow:hidden; box-shadow:0 2px 6px #24233203; }
#workspaceHome .is-editing .wc-panel { border:1px dashed #d77e87; }
#workspaceHome .wc-panel.is-moving { z-index:5; box-shadow:0 10px 24px #c7353b22; border-color:#c7353b; }
#workspaceHome .wc-panel-head,.wc-max .wc-panel-head { display:flex; flex:0 0 43px; justify-content:space-between; align-items:center; min-width:0; padding:0 9px; border-bottom:1px solid #eeeef2; background:#fff; }
#workspaceHome .is-editing .wc-panel-head { background:#fff6f7; }
#workspaceHome .wc-panel-head button,.wc-max .wc-panel-head button { border:0; background:transparent; color:#9b98a2; cursor:pointer; padding:4px; font:inherit; }
#workspaceHome .wc-panel-head > div,.wc-max .wc-panel-head > div { display:flex; flex-shrink:0; }
#workspaceHome .wc-panel-head .wc-handle,.wc-max .wc-panel-head .wc-handle { display:flex; flex:1; align-items:center; gap:7px; min-width:0; text-align:left; touch-action:none; }
#workspaceHome .is-editing .wc-handle { cursor:grab; }
#workspaceHome .wc-handle span,.wc-max .wc-handle span { color:#bbb4bc; font-size:17px; }
#workspaceHome .wc-handle i,.wc-max .wc-handle i { font-style:normal; color:#c7353b; font-size:19px; }
#workspaceHome .wc-handle b,.wc-max .wc-handle b { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#54505b; font-size:13px; font-weight:600; }
#workspaceHome .wc-panel-body,.wc-max .wc-panel-body { flex:1; min-height:0; min-width:0; overflow:auto; overscroll-behavior:contain; }
#workspaceHome .wc-workspace:not(.is-editing) .wc-edit-control,.wc-max .wc-edit-control { display:none; }
#workspaceHome .wc-resize { position:absolute; bottom:0; right:0; z-index:2; width:22px; height:22px; border:0; border-radius:7px 0 0; background:#fff1f2; color:#c7353b; cursor:nwse-resize; touch-action:none; font-size:13px; }
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body > .wb-panel { display:block !important; border:0 !important; border-radius:0 !important; margin:0 !important; width:100% !important; min-height:0 !important; height:auto !important; box-shadow:none !important; }
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body > .wb-panel > .wb-panel-head { display:none !important; }
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body #wbKpis { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; width:100%; margin:0 !important; padding:6px !important; border:0 !important; border-radius:0 !important; }
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body #wbKpis::before { display:none !important; }
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body #wbKpis .wb-kpi { min-width:0; padding:12px 8px !important; border-bottom:1px solid #f1f1f4 !important; }
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body #wbKpis strong { font-size:20px !important; }
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body .wb-discovery-panel { grid-column:auto !important; }
#workspaceHome .wc-chart-content { display:flex; flex-direction:column; height:100%; min-height:170px; }
#workspaceHome .wc-chart-meta { display:flex; flex-wrap:wrap; align-items:center; gap:8px; padding:10px 12px 0; color:#99929d; font-size:10px; }
#workspaceHome .wc-chart-meta select { max-width:110px; padding:3px 5px; border:1px solid #e8e3e9; border-radius:5px; background:#fff; color:#77717c; font-size:11px; }
#workspaceHome .wc-chart-meta button { border:0; background:transparent; color:#c7353b; cursor:pointer; margin-left:auto; font-size:10px; }
#workspaceHome .wc-chart { flex:1; min-height:120px; width:100%; padding:6px; color:#aaa; font-size:12px; }
body:has(.wc-max[open]) { overflow:hidden; }
.wc-max { box-sizing:border-box; width:calc(100vw - 48px); height:calc(100dvh - 48px); max-width:none; max-height:none; margin:auto; padding:0; border:0; border-radius:12px; background:#fff; }
.wc-max::backdrop,.wc-name-dialog::backdrop { background:#28232e66; }
#workspaceHome .wc-max .wc-panel { position:relative !important; left:0 !important; top:0 !important; width:100% !important; height:100% !important; border:0; }
.wc-name-dialog { position:fixed; inset:0; margin:auto; box-sizing:border-box; width:min(520px,calc(100vw - 32px)); max-height:calc(100dvh - 40px); overflow:auto; border:0; padding:28px 30px; border-radius:12px; background:#fafafa; color:#24242b; }
.wc-name-dialog header { display:flex; justify-content:space-between; align-items:center; margin-bottom:24px; }
.wc-name-dialog h2 { font-size:22px; margin:0; color:#222229; font-weight:650; }
.wc-name-dialog .wc-name-close { border:0; background:transparent; padding:0; width:28px; height:28px; color:#74747d; font-size:30px; line-height:1; cursor:pointer; }
.wc-name-dialog .wc-name-label,.wc-name-dialog legend { display:block; margin-bottom:10px; font-size:16px; font-weight:550; }
.wc-name-dialog input[name="templateName"] { box-sizing:border-box; width:100%; height:46px; padding:10px 13px; border:1px solid #dedee5; border-radius:8px; background:#fff; font:inherit; font-size:16px; outline:none; }
.wc-name-dialog input::placeholder { color:#a4a4af; }
.wc-name-dialog fieldset { border:0; padding:0; margin:24px 0 0; min-width:0; }
.wc-name-dialog fieldset[hidden] { display:none; }
.wc-name-dialog legend { padding:0; }
.wc-name-dialog .wc-copy-options { display:grid; gap:12px; max-height:240px; overflow:auto; padding:3px 0; }
.wc-name-dialog .wc-copy-options label { display:flex; align-items:center; gap:11px; font-size:16px; cursor:pointer; }
.wc-name-dialog .wc-copy-options span { overflow-wrap:anywhere; }
.wc-name-dialog input[type="radio"] { appearance:none; flex:0 0 20px; width:20px; height:20px; border:1px solid #dedee5; border-radius:50%; background:#fff; padding:0; margin:0; cursor:pointer; }
.wc-name-dialog input[type="radio"]:checked { border:6px solid #c7353b; }
.wc-name-dialog input[type="radio"]:focus-visible { outline: none; }
.wc-name-dialog footer { display:flex; justify-content:flex-end; gap:12px; margin-top:32px; }
.wc-name-dialog footer button { min-width:80px; height:44px; padding:8px 18px; font-size:16px; color:#34343d; }
#workspaceHome .wc-workspace button:focus-visible { outline: none; }
@media(max-width:800px) {
 #workspaceHome .wc-workarea { flex-direction:column; }
 #workspaceHome dialog.wc-library { max-height:calc(100dvh - 32px); }
 #workspaceHome #wcLibraryItems { grid-template-columns:1fr; padding:14px; }
 #workspaceHome .wc-canvas { width:100%; }
 #workspaceHome .wc-panel { position:relative; left:auto !important; top:auto !important; width:100% !important; height:420px !important; margin-bottom:12px; }
 #workspaceHome .wc-panel[data-panel="cycle"],#workspaceHome .wc-panel[data-panel="ladder"] { height:560px !important; }
 #workspaceHome .wc-resize { display:none; }
 #workspaceHome .wc-status > span:last-child { display:none; }
 #workspaceHome .wc-toolbar button { font-size:11px; }
}

#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body #wbKpis .wb-kpi { min-height:0 !important; padding:9px 8px !important; }
#workspaceHome .wc-panel-body #wbKpis .wb-kpi-compare { gap:4px; margin:6px 0 4px; }

/* Template switcher: selected pink tab, inline edit, and outlined create action. */
#workspaceHome .wc-template-picker { display:flex; align-items:center; flex-wrap:wrap; gap:10px; min-width:0; }
#workspaceHome .wc-templates { gap:6px; }
#workspaceHome .wc-template-chip { display:inline-flex; align-items:center; border-radius:6px; }
#workspaceHome .wc-template-chip.is-active { background:#ffe5e6; }
#workspaceHome .wc-template-chip button { min-height:30px; height:30px; padding:4px 8px; border:0; border-radius:6px; background:transparent; color:#56565f; font-size:12px; font-weight:550; }
#workspaceHome .wc-template-chip.is-active button { color:#c7353b; background:transparent; }
#workspaceHome .wc-template-chip button[data-template] { gap:7px; max-width:220px; }
#workspaceHome .wc-template-chip button[data-template] > span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
#workspaceHome .wc-template-chip svg { width:15px; height:15px; flex-shrink:0; }
#workspaceHome .wc-template-chip .wc-template-edit { padding-left:3px; padding-right:8px; }
#workspaceHome .wc-template-picker #wcNew { display:inline-flex; align-items:center; gap:4px; min-height:30px; height:30px; padding:4px 10px; border:1px solid #c7353b; border-radius:6px; background:#fff; color:#c7353b; font-size:12px; font-weight:550; }
#workspaceHome #wcNew > span { font-size:17px; line-height:1; font-weight:400; }
#workspaceHome .wc-template-chip:not(.is-active):hover { background:#f0f0f3; }
@media(max-width:600px) { .wc-name-dialog { padding:22px; } #workspaceHome .wc-template-picker { gap:8px; } }

#workspaceHome .wc-name-dialog .wc-name-close { font-size:28px !important; }
#workspaceHome .wc-name-dialog #wcTemplateName:focus { outline:0 !important; }

#workspaceHome .wc-toolbar .wc-actions button { min-height:30px; height:30px; padding:4px 9px; font-size:12px; line-height:20px; }

body:has(#wcLibrary[open]) { overflow:hidden; }

/* 连板梯队默认按 90% 比例展示，随面板宽度重新排布。 */
#workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body > #ladderPanel {
  zoom: .9;
  width: auto !important;
}

/* 梯队按内容收紧，展开后的长列表在已有面板高度内滚动。 */
#workspaceHome .wc-workspace:not(.is-editing) .wc-panel[data-panel="ladder"] {
  height:auto !important;
  max-height:var(--wc-ladder-max-height,516px);
}
#workspaceHome .wc-panel[data-panel="ladder"] .wc-panel-body { flex:0 1 auto; overflow-y:auto; }
#workspaceHome .wc-max[data-type="ladder"] { height:auto; max-height:calc(100dvh - 48px); }
#workspaceHome .wc-max .wc-panel[data-panel="ladder"] { height:auto !important; max-height:calc(100dvh - 48px); }
#workspaceHome #ladderPanel .wb-ladder { padding-bottom:0; }

#workspaceHome .wc-panel .wc-expand { display:grid; place-items:center; width:28px; height:28px; border-radius:4px; }
#workspaceHome .wc-panel .wc-expand svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
#workspaceHome .wc-panel .wc-expand:focus { outline:none !important; box-shadow:none !important; border:0 !important; }
#workspaceHome .wc-panel .wc-expand:focus-visible { background:#eef1f5; }

/* 独立周期看板：收紧日期、图例与绘图区之间的间距。 */
#workspaceHome .wc-chart-content[data-chart-type^="cycle_"] .wc-chart-meta { display:flex; }
#workspaceHome .wc-chart-content[data-chart-type^="cycle_"] .wc-chart { padding-top:2px; }

/* 指数条始终单行；弹层使用 top layer，不受画板裁切和层级影响。 */
#workspaceHome #indexOverviewPanel { display:grid; grid-template-columns:minmax(0,1fr) auto; align-items:center; gap:8px; min-height:64px; height:100%; margin:0; padding:4px 12px 4px 6px; border:0; border-radius:0; box-shadow:none; box-sizing:border-box; }
#workspaceHome .wc-panel[data-panel="index_overview"] > .wc-panel-head .wb-index-customize { display:inline-flex; align-items:center; justify-content:center; align-self:center; margin:0 4px 0 0; padding:4px 9px; height:28px; border:1px solid #e5e8ed; border-radius:6px; background:#fff; color:#737b87; font-size:12px !important; font-weight:500; line-height:18px; white-space:nowrap; }
#workspaceHome #indexOverviewPanel button { font-family:inherit; }
#workspaceHome #indexOverviewPanel button:focus-visible { outline:2px solid #d92d32; outline-offset:-2px; }
#workspaceHome #indexOverviewPanel .wb-tape-track { flex-wrap:nowrap; gap:6px; min-width:0; height:100%; padding:0; overflow-x:auto; overflow-y:hidden; scrollbar-width:thin; }
#workspaceHome #indexOverviewPanel .wb-tape-track::-webkit-scrollbar { display:block; height:3px; }
#workspaceHome #indexOverviewPanel .wb-tape-track::-webkit-scrollbar-thumb { background:#c5cad2; border-radius:3px; }
#workspaceHome #indexOverviewPanel .wb-index-group { flex:var(--wb-index-count,1) 0 auto; min-width:0; padding-top:0; border-radius:6px; }
#workspaceHome #indexOverviewPanel .wb-index-group-items { display:grid; grid-template-columns:repeat(var(--wb-index-count),minmax(134px,1fr)); height:100%; }
#workspaceHome #indexOverviewPanel .wb-index { display:grid; grid-template-columns:auto auto; align-content:center; justify-content:space-between; gap:0 6px; min-width:134px; padding:15px 10px 4px; line-height:18px; }
#workspaceHome #indexOverviewPanel .wb-index span { grid-column:1 / -1; font-size:13px; font-weight:500; white-space:nowrap; }
#workspaceHome #indexOverviewPanel .wb-index b,#workspaceHome #indexOverviewPanel .wb-index em { margin:0; font-size:13px !important; font-weight:500; font-variant-numeric:tabular-nums; white-space:nowrap; }
#workspaceHome #indexOverviewPanel .wb-index.is-active { box-shadow:inset 0 -2px #d92d32; }
#workspaceHome #indexOverviewPanel :is(.wb-index-picker,.wb-index-modal) { position:fixed; inset:auto; left:var(--popover-left,8px); top:var(--popover-top,80px); width:min(560px,calc(100vw - 16px)); max-width:none; max-height:calc(100vh - 16px); margin:0; padding:0; box-sizing:border-box; overflow:auto; z-index:10000; }
#workspaceHome #indexOverviewPanel .wb-index-modal { border:0; background:transparent; }
#workspaceHome #indexOverviewPanel .wb-index-modal::before { display:none; }
#workspaceHome #indexOverviewPanel .wb-index-modal-card { box-sizing:border-box; border-radius:12px; }
#workspaceHome #indexOverviewPanel .wb-index-picker { border:1px solid #e5e8ed; border-radius:10px; box-shadow:0 8px 28px #20375326; }
#workspaceHome #indexOverviewPanel .wb-index-option b { font-size:12px; }
#workspaceHome #indexOverviewPanel .wb-index-option small { font-size:10px; }
#workspaceHome #indexOverviewPanel .wb-index-chart { height:clamp(160px,32vh,240px); }

@media(min-width:801px) {
  #workspaceHome .wc-workspace:not(.em-workspace) .wc-toolbar button { min-height:28px; height:28px; padding-top:3px; padding-bottom:3px; line-height:20px; }
}

/* 模板编辑操作条，与模板铅笔入口共用编辑状态。 */
#workspaceHome .wc-toolbar .wc-actions button { display:inline-flex; align-items:center; justify-content:center; gap:6px; }
#workspaceHome .wc-actions svg { width:17px; height:17px; flex-shrink:0; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
#workspaceHome .is-editing .wc-actions { gap:6px; }
#workspaceHome .is-editing .wc-toolbar .wc-actions button { border:0 !important; border-radius:6px; padding:3px 12px; color:#404149; background:#f4f4f6; font-weight:600; }
#workspaceHome .is-editing .wc-actions #wcLibraryToggle { background:#2860f5 !important; color:#fff !important; }
#workspaceHome .is-editing .wc-actions #wcDelete { color:#f02020; }
#workspaceHome .is-editing .wc-actions #wcSave { background:#bd1717 !important; color:#fff !important; }
#workspaceHome .wc-action-divider { width:1px; height:18px; margin:0 2px; background:#e2e2e8; }

#workspaceHome .wc-toolbar .wc-template-picker #wcNew { width:28px; min-width:28px; padding-left:0; padding-right:0; justify-content:center; }
#workspaceHome .wc-toolbar .wc-template-picker #wcNew[data-member-lock] { width:48px; min-width:48px; flex-shrink:0; gap:4px; padding:0 6px; box-sizing:border-box; }
#workspaceHome .wc-toolbar .wc-template-picker #wcNew > .yp-member-badge { display:inline-flex; align-items:center; justify-content:center; flex:0 0 13px; margin:0; line-height:1; }
#workspaceHome .wc-toolbar .wc-actions #wcFullscreen { width:28px; min-width:28px; padding:4px; border:0; background:transparent; color:#9999a3; }
#workspaceHome .wc-actions #wcFullscreen svg { width:20px; height:20px; stroke-width:1.6; }
#workspaceHome .wc-actions #wcFullscreen:hover { background:#eeeef2; color:#646470; }

/* 所有工作台面板共用紧凑标题栏，普通、编辑及放大视图保持一致。 */
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head {
  box-sizing:border-box; flex:0 0 32px; height:32px; min-height:32px; padding:0 6px;
}
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head .wc-handle {
  height:26px; padding:2px; gap:5px; line-height:20px;
}
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head .wc-handle b {
  font-size:12px; line-height:18px; font-weight:600;
}
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head .wc-handle span { font-size:14px; line-height:18px; }
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head .wc-handle i { display:inline-grid; place-items:center; flex:0 0 24px; width:24px; height:24px; border-radius:7px; font-style:normal; }
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head :is(.wc-expand,.wc-remove,.wc-rtl-help,.rtl-icon) {
  box-sizing:border-box; width:24px; height:24px; min-height:24px; padding:3px; flex-shrink:0;
}
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head :is(.wc-expand,.wc-rtl-help,.rtl-icon) svg { width:16px; height:16px; }
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head .rtl-toolbar { margin-right:3px; gap:3px; }
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel="realtime_ladder"] > .wc-panel-head .wc-handle { margin-right:4px; }
:is(#workspaceHome .wc-workspace, .wc-max) .wc-panel[data-panel] > .wc-panel-head button:focus-visible { outline:2px solid #c7353b !important; outline-offset:-2px; border-radius:4px; }

/* 编辑时标题占用一行，优先完整保留指数名称与报价。 */
#workspaceHome .is-editing #indexOverviewPanel { min-height:0; padding-top:2px; padding-bottom:2px; }
#workspaceHome .is-editing #indexOverviewPanel .wb-index-group-label { display:none; }
#workspaceHome .is-editing #indexOverviewPanel .wb-index { padding-top:2px; padding-bottom:2px; }

/* 面板内容随容器尺寸变化；独立小卡片保持自身排版。 */
:is(#workspaceHome,.wc-max) .wc-panel { --wc-copy-size:12px;--wc-control-size:11px;--wc-title-size:13px;--wc-space:6px; }
:is(#workspaceHome,.wc-max) .wc-panel[data-panel] .wc-panel-head .wc-handle b { font-size:var(--wc-title-size) !important; }
:is(#workspaceHome,.wc-max) .wc-panel-body { font-size:var(--wc-copy-size); }
:is(#workspaceHome,.wc-max) .wc-panel-body :is(td,th,p,li):not(:where(.stock-card-view *, .stock-board-mask *)) { font-size:var(--wc-copy-size); }
:is(#workspaceHome,.wc-max) .wc-panel-body :is(button,select,input):not(:where(.stock-card-view *, .stock-board-mask *)) { font-family:inherit;font-size:var(--wc-control-size); }
:is(#workspaceHome,.wc-max) .wc-chart-content:not([data-chart-type="screening_emotion"]) { height:100%;min-height:0; }
:is(#workspaceHome,.wc-max) .wc-chart-content:not([data-chart-type="screening_emotion"]) > .wc-chart { flex:1;min-height:0;padding:var(--wc-space); }
:is(#workspaceHome,.wc-max) .wc-chart-meta { gap:var(--wc-space);padding:var(--wc-space) var(--wc-space) 0; }
:is(#workspaceHome,.wc-max) #selectedBoardsPanel .wsb-scroll :is(td,th) { font-size:var(--wc-copy-size);padding:var(--wc-space); }
:is(#workspaceHome,.wc-max) .em-panel :is(td,th) { font-size:var(--wc-copy-size); }
:is(#workspaceHome,.wc-max) :is(.wkl-item,.wss-item) { font-size:var(--wc-copy-size);padding:var(--wc-space); }
:is(#workspaceHome,.wc-max) .wc-panel-body :is(.kpl-live-item,.sls-item) { gap:var(--wc-space);padding-top:var(--wc-space);padding-bottom:var(--wc-space); }
:is(#workspaceHome,.wc-max) .wc-panel-body :is(.kpl-live-item p,.sls-item b,.sls-item small,.em-panel td,.em-panel th) { font-size:var(--wc-copy-size) !important; }
:is(#workspaceHome,.wc-max) .wc-panel-body :is(.kpl-live-toolbar,.wsb-grid header) { padding:var(--wc-space);gap:var(--wc-space); }
:is(#workspaceHome,.wc-max) .wc-panel-body > .wsc-stock-panel .scv-mode-tabs button { font-size:var(--wc-control-size) !important; }
:is(#workspaceHome,.wc-max) .wc-panel-body > .wsc-stock-panel .wsc-stock-heading strong { font-size:var(--wc-title-size); }
:is(#workspaceHome,.wc-max) .wc-panel-body > .wsc-stock-panel .point-metrics b { font-size:var(--wc-copy-size); }
#workspaceHome #wbIndexAmount[hidden]{display:none}
#workspaceHome #wbIndexAmount{border-top:1px solid #e5e8ed;margin:0 12px;padding-top:8px}
#workspaceHome .wb-index-amount-head{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;font-size:12px}
#workspaceHome .wb-index-amount-head b{font-weight:600}#workspaceHome #wbIndexAmountMeta{color:#737b87;font-size:10px}
#workspaceHome #wbIndexAmountSummary{font-size:11px;padding:4px 0}
#workspaceHome #wbIndexAmountChart{height:180px;font-size:12px;color:#737b87}

/* Workspace presentation: native fullscreen, with an in-page fallback. */
body.wc-presenting { overflow:hidden !important; }
#workspaceHome.wc-presenting .sidebar,
#workspaceHome.wc-presenting .main-area > .topbar,
#workspaceHome.wc-presenting .yp-mobile-dock { display:none !important; }
#workspaceHome.wc-presenting .main-area { margin:0 !important; width:100% !important; }
/* Entrance transforms otherwise make the centered content the fixed canvas's containing block. */
#workspaceHome.wc-presenting .main-area > .content.workbench-content {
  transform:none !important;
  animation:none !important;
}


#workspaceHome #workspaceCanvas.is-presenting { position:fixed !important; inset:0 !important; z-index:10000; width:100vw !important; height:100dvh !important; max-width:none !important; margin:0 !important; padding:0 !important; overflow:auto; background:#eeeff5; border-radius:0; }
#workspaceHome #workspaceCanvas.is-presenting > .wc-toolbar,#workspaceHome #workspaceCanvas.is-presenting > .wc-status { display:none !important; }
#workspaceHome #workspaceCanvas.is-presenting .wc-workarea { padding:12px 12px 0; }
#workspaceHome #wcFullscreenExit { position:fixed; z-index:10001; right:12px; top:10px; width:30px; height:30px; display:grid; place-items:center; border:0; border-radius:6px; padding:5px; background:#f1f1f5; color:#9395a2; cursor:pointer; }
#workspaceHome #wcFullscreenExit:hover { background:#e5e6ec; color:#555b6a; }
#workspaceHome #wcFullscreenExit svg { width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
#workspaceHome #wcFullscreenHint { position:fixed; z-index:10002; top:18px; left:50%; transform:translateX(-50%); padding:9px 18px; border-radius:8px; background:#303642e8; color:#fff; font:13px/1.5 Arial,"Microsoft YaHei",sans-serif; pointer-events:none; }
#workspaceHome #wcFullscreenExit[hidden],#workspaceHome #wcFullscreenHint[hidden] { display:none !important; }


/* Reuse the working search control in presentation mode without covering panels. */
#workspaceHome #wcFullscreenSearch[hidden] { display:none !important; }
#workspaceHome #wcFullscreenSearch { position:sticky; top:0; z-index:10001; display:flex; justify-content:center; align-items:center; box-sizing:border-box; height:48px; padding:6px 54px; border-bottom:1px solid #e5e8ed; background:#fff; }
#workspaceHome #wcFullscreenSearch #workspaceStockSearch { display:block !important; width:min(520px,100%); min-width:0; margin:0; }
#workspaceHome #wcFullscreenSearch .stock-search-form { height:36px; }
#workspaceHome #wcFullscreenSearch #stockSearchInput { height:34px; min-width:0; font-family:inherit; }
#workspaceHome #wcFullscreenSearch .wh-stock-search-dropdown { width:min(680px,calc(100vw - 24px)); left:50%; transform:translateX(-50%); max-height:calc(100dvh - 64px); }
#workspaceHome #wcFullscreenSearch :is(button,input):focus-visible,
#workspaceHome #wcFullscreenExit:focus-visible { outline:2px solid #d92d32; outline-offset:2px; }
#workspaceHome.wc-presenting #workspaceCanvas.schematic-workspace.is-presenting .wc-workarea { height:auto; }
#workspaceHome.wc-presenting #wcFullscreenHint { top:56px; }
@media(max-width:600px) {
  #workspaceHome #wcFullscreenSearch { padding-left:12px; }
  #workspaceHome #wcFullscreenSearch #stockSearchInput { font-size:12px; }
}
/* Narrow screens stack panels; keep the complete canvas reachable. */
@media(max-width:800px) {
  #workspaceHome.wc-presenting #workspaceCanvas.schematic-workspace.is-presenting { overflow:auto; }
  #workspaceHome.wc-presenting #workspaceCanvas.schematic-workspace.is-presenting .wc-workarea { height:auto; }
}

/* Readable panel typography and bounded dialogs on phones and tablets. */
@media (max-width:1024px) {
  #workspaceHome .wc-workarea { flex-direction:column; }
  #workspaceHome .wc-canvas { width:100%; height:auto !important; min-height:0 !important; }
  #workspaceHome .wc-canvas > .wc-panel { position:relative; left:auto !important; top:auto !important; width:100% !important; margin-bottom:8px; }
  #workspaceHome .wc-resize { display:none; }
  :is(#workspaceHome,.wc-max) .wc-panel { --wc-copy-size:13px !important; --wc-control-size:12px !important; --wc-title-size:14px !important; }
  #workspaceHome .wc-template-picker { max-width:100%; }
  #workspaceHome .wc-templates { min-width:0; max-width:100%; }
  #workspaceHome .wc-toolbar .wc-template-chip { max-width:100%; }
  #workspaceHome .wc-toolbar .wc-template-chip button[data-template] { min-width:0; }
  #workspaceHome .wc-toolbar .wc-template-chip .wc-template-edit { min-width:36px; }
  #workspaceHome .wc-toolbar .wc-template-picker #wcNew,
  #workspaceHome .wc-toolbar .wc-actions #wcFullscreen { width:36px; min-width:36px; }
  #workspaceHome .wc-workspace button:focus-visible { outline:2px solid #c7353b; outline-offset:-2px; }
  #workspaceHome .wc-library > header { padding:12px 14px; }
  #workspaceHome .wc-library header b { font-size:16px; }
  #workspaceHome .wc-library header small { font-size:12px; line-height:1.5; }
  #workspaceHome .wc-library header button { min-width:36px; min-height:36px; }
  #workspaceHome #wcLibraryItems { padding:10px; gap:8px; }
  #workspaceHome .wc-library-item { min-height:72px; padding:10px; }
  #workspaceHome .wc-library-item b { font-size:13px; line-height:1.5; }
  #workspaceHome .wc-library-item small { font-size:12px; line-height:1.5; white-space:normal; }
  #workspaceHome .wc-library-item em { font-size:11px; }
  #workspaceHome .wc-library > footer { padding:10px 14px; }
  #workspaceHome .wc-library footer button { min-height:36px; }
  .wc-max { max-width:100vw; max-height:100dvh; }
  #workspaceHome#workspaceHome .wc-max .wc-panel[data-panel] { height:100% !important; max-height:100% !important; margin:0; }
  #workspaceHome .wc-max .wc-panel-head { flex-shrink:0; }
  #workspaceHome .wc-max .wc-panel-body { flex:1; min-height:0; }
  #workspaceHome #wcFullscreenExit { width:36px; height:36px; }
  #workspaceHome #wcFullscreenSearch #stockSearchInput { font-size:16px; }
  #workspaceHome#workspaceHome#workspaceHome#workspaceHome .wc-panel-body > #ladderPanel { zoom:1; }
  #workspaceHome #ladderPanel .wb-stock-name { font-size:13px !important; }
  #workspaceHome #ladderPanel .wb-stock strong { font-size:13px !important; }
  #workspaceHome #ladderPanel .wb-ladder-level span,
  #workspaceHome #ladderPanel .wb-stock-bottom small { font-size:11px !important; }
}
@media (min-width:881px) and (max-width:1024px) {
  #workspaceHome .wc-canvas > .wc-panel { height:360px !important; }
  #workspaceHome .wc-canvas > .wc-panel[data-panel="index_overview"] { height:120px !important; }
  #workspaceHome .wc-canvas > .wc-panel[data-panel="selected_boards"] { height:420px !important; }
}

/* 面板图标：浅色圆角底、细蓝灰边框与清晰的单色图形。 */
:is(#workspaceHome,.wc-max) .wc-panel-icon[data-tone] { box-sizing:border-box; --panel-icon-bg:#e7f0ff; --panel-icon-ink:#3269ad; background:var(--panel-icon-bg); color:var(--panel-icon-ink); border:1px solid #c8d8e8; }
:is(#workspaceHome,.wc-max) .wc-panel-icon[data-tone="rose"] { --panel-icon-bg:#fde9ed; --panel-icon-ink:#ae3d50; }
:is(#workspaceHome,.wc-max) .wc-panel-icon[data-tone="gold"] { --panel-icon-bg:#fff3d8; --panel-icon-ink:#ab6a09; }
:is(#workspaceHome,.wc-max) .wc-panel-icon[data-tone="teal"] { --panel-icon-bg:#e1f5fa; --panel-icon-ink:#167b96; }
:is(#workspaceHome,.wc-max) .wc-panel-icon svg { display:block; width:16px; height:16px; flex-shrink:0; }
#workspaceHome .wc-library-item .wc-panel-icon svg { width:22px; height:22px; }

/* Modal sizing must win over the mobile per-panel heights and ladder limits. */
@media (max-width:1024px) {
  #workspaceHome#workspaceHome .wc-max[data-type] {
    position:fixed; inset:0; width:100%; height:100dvh;
    max-width:none; max-height:none; margin:0; border-radius:0;
    padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);
  }
  #workspaceHome#workspaceHome#workspaceHome .wc-max[data-type] > .wc-panel[data-panel] {
    width:100% !important; height:100% !important; max-height:none !important;
    margin:0; border-radius:0;
  }
}

/* Mobile templates have one full-width column, including edit mode. */
@media(max-width:1024px) {
 #workspaceHome #wcCanvas { display:flex !important; flex-direction:column; gap:0; }
 #workspaceHome #wcCanvas > .wc-panel { position:relative !important; flex-shrink:0; left:auto !important; top:auto !important; width:100% !important; }
 #workspaceHome #wcCanvas .wc-resize { display:none !important; }
 /* Table panels own a bounded viewport; only their inner lists scroll. */
 #workspaceHome .wc-panel:is([data-panel="selected_boards"],[data-panel="market_performance"],[data-panel="interval_performance"]) > .wc-panel-body { overflow:hidden; }
 #workspaceHome .wc-panel-body :is(.mp-scroll,.ip-scroll,.wsb-scroll,.wsb-mobile-list,.wtm-scroll,.yp-table-scroll-region) {
   min-width:0; max-width:100%; overscroll-behavior:none; touch-action:pan-x pan-y; overflow-anchor:none;
 }
 #workspaceHome#workspaceHome .is-editing #wcCanvas .wc-handle { touch-action:none; user-select:none; -webkit-user-select:none; cursor:grab; min-height:40px !important; }
 #workspaceHome #wcCanvas .is-mobile-dragging { opacity:.55; outline:1px dashed #d92d32; }
 #workspaceHome #wcCanvas .wc-drop-before { box-shadow:0 -3px #d92d32; }
 #workspaceHome #wcCanvas .wc-drop-after { box-shadow:0 3px #d92d32; }
}

/* No placeholder row when there is no template status to report. */
#workspaceHome .wc-status:has(#wcStatus:empty) { display:none; }

/* Mobile index strip fits its content instead of reserving an empty panel. */
@media(max-width:1024px) {
 #workspaceHome#workspaceHome .wc-panel[data-panel="index_overview"] { min-height:0; height:auto !important; margin-bottom:4px; }
 #workspaceHome#workspaceHome .wc-panel[data-panel="index_overview"] > .wc-panel-body { flex:0 0 auto; padding:0; }
 #workspaceHome#workspaceHome #indexOverviewPanel { min-height:0; margin:0 !important; padding:3px 6px 4px !important; gap:0; }
 #workspaceHome#workspaceHome #indexOverviewPanel .wb-index-group { padding-top:14px; }
 #workspaceHome#workspaceHome #indexOverviewPanel .wb-index { min-height:44px !important; padding:3px 8px !important; }
}

/* Give mobile rankings a longer, denser reading area. */
@media(max-width:1024px) {
 #workspaceHome#workspaceHome .wc-panel:is([data-panel="market_performance"],[data-panel="interval_performance"]) { height:clamp(520px,78svh,700px) !important; }
 #workspaceHome #marketPerformancePanel .mp-scopes { gap:16px; padding:0 8px; }
 #workspaceHome #marketPerformancePanel .mp-scopes button { padding:6px 0; }
 #workspaceHome #marketPerformancePanel .mp-toolbar { padding:4px 8px; }
 #workspaceHome #intervalPerformancePanel .ip-metrics { padding:0 8px; }
 #workspaceHome #intervalPerformancePanel .ip-metrics button { padding:6px 0; }
 #workspaceHome #intervalPerformancePanel .ip-days { padding:4px 8px; gap:6px; }
 #workspaceHome #marketPerformancePanel td, #workspaceHome #intervalPerformancePanel td { padding-top:3px !important; padding-bottom:3px !important; }
 #workspaceHome #marketPerformancePanel small, #workspaceHome #intervalPerformancePanel small { margin-top:0; line-height:14px !important; }
 #workspaceHome #marketPerformancePanel th, #workspaceHome #intervalPerformancePanel th { padding-top:5px !important; padding-bottom:5px !important; }
 #workspaceHome #marketPerformancePanel .mp-pages, #workspaceHome #intervalPerformancePanel .ip-pages { padding:3px 8px; gap:8px; }
}
@media(max-width:1024px) {
 #workspaceHome #marketPerformancePanel td button, #workspaceHome #intervalPerformancePanel td button { min-height:32px !important; height:auto !important; padding:0 !important; }
}
