:root{--page-bg:var(--md-surface-container-low);--surface-card:var(--md-surface);--surface-nested:var(--md-surface-container);--border:var(--md-outline-variant);--border-input:var(--md-outline);--text:var(--md-on-surface);--text-secondary:var(--md-on-surface-variant);--text-tertiary:var(--md-outline);--accent:var(--md-primary);--accent-muted:var(--md-primary-container);--on-accent:var(--md-on-primary);--module-1:var(--md-mod-1);--module-2:var(--md-mod-2);--module-3:var(--md-mod-3);--module-4:var(--md-mod-4);--module-5:var(--md-mod-5);--danger:var(--md-error);--danger-muted:var(--md-error-container);--drawer-bg:var(--md-surface-container-low);--drawer-bg-top:var(--md-surface-container-low);--drawer-edge:var(--md-outline-variant);--drawer-glow:transparent;--drawer-text:var(--md-on-surface);--drawer-text-mute:var(--md-on-surface-variant);--drawer-hover:var(--md-state-hover);--drawer-active:var(--md-nav-active-bg);--page-texture:none;--radius-tile:var(--md-shape-sm);--radius-card:var(--md-shape-md);--radius-sheet:var(--md-shape-lg);--shadow-card:var(--md-elev-1);--shadow-overlay:var(--md-elev-3);--font:var(--md-font);--sidebar-w:var(--md-nav-width,248px);--sidebar-collapsed-w:var(--md-nav-collapsed-width,52px);}html.vo-page{--md-font:-apple-system,"微信雅黑","微软雅黑","PingFang SC","Microsoft YaHei",system-ui,sans-serif;--md-nav-width:248px;--md-nav-collapsed-width:52px;--md-dur-medium:.22s;--md-dur-short:.15s;--md-ease-standard:ease;--md-s-1:4px;--md-s-2:8px;--md-s-3:12px;--md-s-4:16px;--md-shape-full:6px;--md-shape-xs:4px;--md-shape-sm:6px;--md-shape-md:6px;--md-shape-lg:6px;--md-nav-item-height:40px;--md-label-md:600 12px/16px var(--md-font);--md-label-lg:600 13px/18px var(--md-font);--md-label-sm:600 11px/16px var(--md-font);--md-body-sm:400 12px/16px var(--md-font);--md-primary:#2f2e2b;--md-on-primary:#f4f3f0;--md-primary-container:#efeee8;--md-on-surface:#232220;--md-on-surface-variant:#8f8a80;--md-outline:#b6b1a6;--md-outline-variant:#e0ded6;--md-surface:#fcfbf8;--md-surface-container-low:#f4f3f0;--md-surface-container:#f7f6f1;--md-error:#c25d4f;--md-error-container:#f6ece9;--md-mod-1:#6f8f6a;--md-mod-2:#5f7a99;--md-mod-3:#bd8a4e;--md-mod-4:#b5715a;--md-mod-5:#7d7195;--md-nav-active-bg:rgba(255,255,255,.14);--md-nav-active-fg:#f4f3f0;--md-state-hover:rgba(255,255,255,.10);--md-inverse-surface:#232220;--md-inverse-on-surface:#f4f3f0;--md-elev-1:0 1px 2px rgba(35,34,32,.04),0 4px 16px rgba(35,34,32,.05);--md-elev-2:0 4px 16px rgba(35,34,32,.12);--md-elev-3:0 8px 28px rgba(35,34,32,.16);--page-bg:#f4f3f0;--surface-card:#fcfbf8;--surface-nested:#f7f6f1;--border:#ecebe5;--border-input:#e0ded6;--text:#232220;--text-primary:#232220;--text-secondary:#8f8a80;--text-tertiary:#b6b1a6;--accent:#2f2e2b;--accent-muted:#efeee8;--on-accent:#f4f3f0;--module-1:#6f8f6a;--module-2:#5f7a99;--module-3:#bd8a4e;--module-4:#b5715a;--module-5:#7d7195;--danger:#c25d4f;--danger-muted:#f6ece9;--drawer-bg:#131317;--drawer-bg-top:#1b1b22;--drawer-edge:rgba(255,255,255,.06);--drawer-glow:rgba(255,255,255,.035);--drawer-text:#f4f3f0;--drawer-text-mute:rgba(244,243,240,.55);--drawer-hover:rgba(255,255,255,.10);--drawer-active:rgba(255,255,255,.14);--page-texture:none;--radius-tile:6px;--radius-card:6px;--radius-sheet:6px;--shadow-card:0 1px 2px rgba(35,34,32,.04),0 4px 16px rgba(35,34,32,.05);--shadow-overlay:0 8px 28px rgba(35,34,32,.16);--font:-apple-system,"微信雅黑","微软雅黑","PingFang SC","Microsoft YaHei",system-ui,sans-serif;--sidebar-w:248px;--sidebar-collapsed-w:52px;}html.vo-page #topbar-uilib-host{display:none !important;}html.vo-page .sidebar{background:#131317;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:inset -1px 0 0 var(--drawer-edge);}html.vo-page .topbar{height:42px;background:linear-gradient(180deg,var(--drawer-bg-top),var(--drawer-bg) 56%),var(--drawer-bg);border-bottom:1px solid var(--drawer-edge);backdrop-filter:none;-webkit-backdrop-filter:none;}html.vo-page #vo-thumb-mini{left:0 !important;right:auto !important;}*{box-sizing:border-box;margin:0;padding:0;}html,body{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden !important;scrollbar-width:none;-ms-overflow-style:none;}body{background:var(--page-bg);color:var(--text);font-family:var(--font);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;min-width:1000px;overflow:hidden;}html::-webkit-scrollbar,body::-webkit-scrollbar,.layout::-webkit-scrollbar,.main::-webkit-scrollbar,#screen::-webkit-scrollbar{width:0 !important;height:0 !important;display:none !important;}body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;background-image:var(--page-texture);background-size:cover;background-position:center;opacity:.5;}svg{display:block;}.layout{height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;overflow:hidden;}.sidebar{--drawer-bg:#131317;--drawer-bg-top:#1b1b22;--drawer-edge:rgba(255,255,255,.08);--drawer-text:#f4f3f0;--drawer-text-mute:rgba(244,243,240,.58);--drawer-hover:rgba(255,255,255,.08);--drawer-active:rgba(255,255,255,.14);--md-nav-active-fg:#f4f3f0;--md-state-hover:rgba(255,255,255,.08);--md-outline:rgba(244,243,240,.32);--md-outline-variant:rgba(255,255,255,.12);color-scheme:dark;color:var(--drawer-text);display:flex;flex-direction:column;position:fixed;top:0;left:0;width:var(--sidebar-w);height:100vh;z-index:30;background:#131317;box-shadow:inset -1px 0 0 var(--drawer-edge);transition:width .2s ease;contain:layout paint style;isolation:isolate;}.sidebar::after{display:none;}.sidebar .nav{flex:1;overflow-y:auto;padding:var(--md-s-3) var(--md-s-3) var(--md-s-2);overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent;}.sidebar .nav::-webkit-scrollbar{width:6px;}.sidebar .nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:99px;}.sidebar .nav::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.32);}.sidebar.collapsed{width:var(--sidebar-collapsed-w);}.sidebar.collapsed .navi span,.sidebar.collapsed .nav-group,.sidebar.collapsed .dt-btn span{display:none;}.sidebar.collapsed .navi{justify-content:center;padding:0;}.sidebar.collapsed .data-tools{padding:var(--md-s-2) var(--md-s-2) var(--md-s-3);}.sidebar.collapsed .dt-btn{justify-content:center;padding:var(--md-s-2);}.sidebar.collapsed .nav-children,.sidebar.collapsed .nav-group-wrap.collapsed .nav-children{grid-template-rows:1fr;opacity:1;}.nav-tip{position:fixed;z-index:120;transform:translateY(-50%) translateX(-6px);opacity:0;pointer-events:none;background:var(--md-inverse-surface);color:var(--md-inverse-on-surface);font:var(--md-label-md);padding:6px var(--md-s-2);border-radius:var(--md-shape-xs);box-shadow:var(--md-elev-2);white-space:nowrap;transition:opacity var(--md-dur-short) var(--md-ease-standard) .22s,transform var(--md-dur-short) var(--md-ease-standard) .22s;}.nav-tip.show{opacity:1;transform:translateY(-50%) translateX(0);}.navi{position:relative;display:flex;align-items:center;gap:var(--md-s-3);padding:0 var(--md-s-4);height:var(--md-nav-item-height);border-radius:var(--md-shape-full);cursor:pointer;font:var(--md-label-lg);color:var(--drawer-text-mute);transition:background-color .12s ease,color .12s ease;margin-bottom:2px;-webkit-tap-highlight-color:transparent;}a.navi{text-decoration:none;color:var(--drawer-text-mute);}.navi:hover{background:var(--drawer-hover);color:var(--drawer-text);}.navi:active{background:var(--drawer-active);}.navi:focus-visible{outline:2px solid rgba(244,243,240,.45);outline-offset:-2px;}.navi.active{background:var(--drawer-active);color:var(--drawer-text);font-weight:700;}.navi svg{width:20px;height:20px;flex:0 0 auto;color:inherit;}.navi span{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.nav-group{position:relative;display:flex;align-items:center;gap:var(--md-s-2);padding:0 var(--md-s-3);height:40px;border-radius:var(--md-shape-full);border:1px solid transparent;font:var(--md-label-md);letter-spacing:.06em;color:var(--drawer-text-mute);cursor:pointer;user-select:none;transition:background-color .12s ease,color .12s ease;}.nav-group:hover{background:var(--drawer-hover);color:var(--drawer-text);}.nav-group:focus-visible{outline:2px solid rgba(244,243,240,.45);outline-offset:-2px;}.nav-group[aria-expanded="true"]{color:var(--drawer-text);font-weight:700;}.nav-group .nav-group-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:8px;background:rgba(255,255,255,.08);color:var(--group-color,var(--drawer-text));}.nav-group .nav-group-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.nav-group .nav-chevron{margin-left:auto;transition:transform var(--md-dur-medium) var(--md-ease-standard);color:var(--drawer-text-mute);flex-shrink:0;}.nav-group-wrap.collapsed .nav-chevron{transform:rotate(-90deg);}.nav-group-wrap[data-group="work"]{--group-color:var(--md-mod-2);}.nav-group-wrap[data-group="dev"]{--group-color:var(--md-mod-1);}.nav-group-wrap[data-group="personal"]{--group-color:var(--md-mod-3);}.nav-group-wrap[data-group="research"]{--group-color:var(--md-mod-4);}.nav-group-wrap[data-group="plan"]{--group-color:var(--md-tertiary);}.nav-group-wrap[data-group="stat"]{--group-color:var(--md-mod-5);}.nav-group-wrap[data-group="collab"]{--group-color:var(--md-secondary);}.nav-group-wrap{contain:layout paint;}.nav-children{display:grid;grid-template-rows:1fr;opacity:1;transition:grid-template-rows .2s ease,opacity .16s ease;}.nav-children .nc-inner{overflow:hidden;min-height:0;}.nav-children .navi:last-child{margin-bottom:6px;}.nav-group-wrap.collapsed .nav-children{grid-template-rows:0fr;opacity:0;}.sidebar .foot{padding:var(--md-s-3) var(--md-s-4);font:var(--md-body-sm);color:var(--md-outline);border-top:1px solid var(--drawer-edge);}.sidebar .data-tools{display:flex;flex-direction:column;gap:var(--md-s-1);padding:var(--md-s-2) var(--md-s-3) var(--md-s-3);flex:0 0 auto;border-top:1px solid var(--drawer-edge);background:#101014;}.sidebar .data-tools .dt-btn{display:flex;align-items:center;justify-content:center;gap:var(--md-s-2);height:36px;padding:0 var(--md-s-3);border-radius:var(--md-shape-sm);border:1px solid rgba(255,255,255,.12);background:transparent;color:var(--drawer-text-mute);font:var(--md-label-md);cursor:pointer;width:100%;transition:background-color .12s ease,color .12s ease,border-color .12s ease;}.sidebar .data-tools .dt-btn:hover{background:var(--drawer-hover);color:var(--drawer-text);border-color:rgba(255,255,255,.22);}.sidebar .data-tools .dt-btn:focus-visible{outline:2px solid rgba(244,243,240,.45);outline-offset:-2px;}.topbar{--drawer-bg:#131317;--drawer-bg-top:#1b1b22;--drawer-edge:rgba(255,255,255,.08);--md-on-surface:#f4f3f0;--md-on-surface-variant:rgba(244,243,240,.72);--md-outline:rgba(244,243,240,.55);--md-outline-variant:rgba(255,255,255,.14);--md-state-hover:rgba(255,255,255,.1);--md-primary:#f4f3f0;--md-on-primary:#1b1b22;--md-surface:rgba(255,255,255,.16);--md-surface-container:rgba(255,255,255,.06);color-scheme:dark;position:fixed;top:0;left:var(--sidebar-w);right:0;height:52px;display:flex;align-items:center;justify-content:flex-end;gap:var(--md-s-2);padding:0 var(--md-s-4);background:linear-gradient(180deg,var(--drawer-bg-top),var(--drawer-bg) 56%),var(--drawer-bg);backdrop-filter:none;-webkit-backdrop-filter:none;border-bottom:1px solid var(--drawer-edge);z-index:20;transition:left var(--md-dur-medium) var(--md-ease-standard);}.sidebar.collapsed ~ .topbar{left:var(--sidebar-collapsed-w);}.topbar .dt-btn{display:inline-flex;align-items:center;gap:var(--md-s-1);height:32px;padding:0 var(--md-s-3);border:1px solid var(--md-outline-variant);border-radius:var(--md-shape-sm);background:transparent;color:var(--md-on-surface-variant);font:var(--md-label-md);cursor:pointer;transition:background-color var(--md-dur-short) var(--md-ease-standard),color var(--md-dur-short) var(--md-ease-standard),border-color var(--md-dur-short) var(--md-ease-standard);}.topbar .dt-btn:hover{background:var(--md-state-hover);color:var(--md-on-surface);border-color:var(--md-outline);}.topbar .dt-btn:focus-visible{outline:2px solid var(--md-primary);outline-offset:-2px;}.topbar #foot{color:var(--md-outline);}@media (prefers-reduced-motion:reduce){.sidebar,.main,.embed-viewer,.collapse-btn svg,.navi,.nav-group,.nav-children,.nav-tip{transition:none !important;}}.main{margin-left:var(--sidebar-w);padding:62px 28px 40px;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-height:0;box-sizing:border-box;transition:margin-left .25s ease;overflow-y:auto;overflow-x:hidden;scrollbar-width:none;-ms-overflow-style:none;}.main::-webkit-scrollbar{width:0 !important;height:0 !important;display:none !important;}.main > #screen{width:100%;max-width:none;}.sidebar.collapsed ~ .main{margin-left:var(--sidebar-collapsed-w);}.main.vo-main{--page-bg:#f4f3f0;--surface-card:#fcfbf8;--surface-nested:#f7f6f1;--border:#ecebe5;--border-input:#e0ded6;--text:#232220;--text-primary:#232220;--text-secondary:#8f8a80;--text-tertiary:#b6b1a6;--accent:#2f2e2b;--accent-muted:#efeee8;--on-accent:#f4f3f0;--module-1:#6f8f6a;--module-2:#5f7a99;--module-3:#bd8a4e;--module-4:#b5715a;--module-5:#7d7195;--danger:#c25d4f;--danger-muted:#f6ece9;--radius-card:6px;--radius-tile:6px;--radius-sheet:6px;--shadow-card:0 1px 2px rgba(35,34,32,.04),0 4px 16px rgba(35,34,32,.05);--font:-apple-system,"微信雅黑","微软雅黑","PingFang SC","Microsoft YaHei",system-ui,sans-serif;background:var(--page-bg);color:var(--text);font-family:var(--font);scrollbar-gutter:auto;}.main.vo-main .card{border-radius:6px;box-shadow:var(--shadow-card);}.main.vo-main{--radius-sheet:6px;--font:-apple-system,"微信雅黑","微软雅黑","PingFang SC","Microsoft YaHei",system-ui,sans-serif;}.main.vo-main::selection{background:#2f2e2b;color:#f4f3f0;}.main.vo-main *::-webkit-scrollbar-thumb{background:#d8d5cc;background-clip:content-box;}.main.vo-main *::-webkit-scrollbar-thumb:hover{background:#b6b1a6;background-clip:content-box;}.public-mode .sidebar,.public-mode #topbar{display:none !important;}.public-mode .main{margin-left:0 !important;padding-top:24px !important;}.public-mode .data-tools,.public-mode .collapse-btn{display:none !important;}.embed-viewer{position:fixed;top:0;left:var(--sidebar-w);right:0;bottom:0;z-index:50;background:var(--surface-card);display:none;flex-direction:column;transition:left .25s ease;}.embed-viewer.show{display:flex;}.sidebar.collapsed ~ .embed-viewer{left:var(--sidebar-collapsed-w);}.embed-toolbar{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border);background:var(--surface-card);}.embed-toolbar .embed-title{font-size:14px;font-weight:700;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.embed-toolbar .embed-close{background:none;border:1px solid var(--border);border-radius:6px;padding:6px 12px;cursor:pointer;font-size:12px;font-weight:600;color:var(--text-secondary);display:flex;align-items:center;gap:6px;}.embed-toolbar .embed-close:hover{background:var(--surface-nested);color:var(--text);}.embed-frame{flex:1;width:100%;border:none;background:var(--md-surface);}.collapse-btn{background:transparent;border:none;color:var(--drawer-text-mute);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:8px;border-radius:6px;transition:all .15s;}.collapse-btn:hover{background:var(--drawer-hover);color:var(--drawer-text);}.sidebar.collapsed .collapse-btn svg{transform:rotate(180deg);}.collapse-btn svg{transition:transform .25s ease;}.header{display:flex;align-items:center;gap:16px;margin-bottom:6px;}.header h2{font-size:27px;font-weight:800;letter-spacing:-.03em;}.header p{color:var(--text-secondary);font-size:13px;margin-top:5px;}.header .spacer{flex:1;}.date-chip{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:var(--text-secondary);background:var(--surface-card);border:1px solid var(--border);border-radius:6px;padding:8px 15px;box-shadow:var(--shadow-card);}.date-chip svg{color:var(--text-tertiary);}.card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);}.sec-title{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:800;margin:18px 2px 10px;letter-spacing:-.01em;}.sec-title::before{content:"";width:3px;height:14px;border-radius:6px;background:var(--accent);}.grid{display:grid;gap:16px;}.rings{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;}.ring{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 4px;cursor:pointer;min-width:0;border-radius:var(--radius-card);transition:background .15s;}.ring:hover{background:var(--surface-nested);}.ring .dial{position:relative;width:100%;max-width:128px;aspect-ratio:1;}.ring .dial svg.gauge{transform:rotate(-90deg);width:100%;height:100%;}.ring .dial .mid{position:absolute;inset:0;display:grid;place-items:center;}.ring .pct{font-size:18px;font-weight:800;letter-spacing:-.02em;}.ring .lbl{font-size:14.5px;font-weight:700;}.ring .sub{font-size:12px;color:var(--text-secondary);}.quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}.qbtn{display:flex;align-items:center;gap:12px;padding:14px 15px;border:none;cursor:pointer;border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);text-align:left;transition:all .15s;min-width:0;}.qbtn:hover{border-color:var(--border-input);transform:translateY(-1px);box-shadow:var(--shadow-overlay);}.qbtn .e{position:relative;width:42px;height:42px;border-radius:6px;display:grid;place-items:center;flex:0 0 auto;}.qbtn .e .qplus{position:absolute;right:-3px;bottom:-3px;width:17px;height:17px;border-radius:50%;background:var(--accent);color:var(--on-accent);display:grid;place-items:center;border:2px solid var(--surface-card);}.qbtn .l{font-size:13.5px;font-weight:700;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.trend-svg{width:100%;height:auto;margin-top:14px;display:block;}.trend-x{display:flex;justify-content:space-between;font-size:11px;color:var(--text-secondary);margin-top:4px;padding:0 6px;}.trend-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:168px;color:var(--text-tertiary);font-size:13px;margin-top:8px;}.pin-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;}.pin{display:flex;align-items:center;gap:13px;padding:15px 16px;border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);transition:box-shadow .15s,transform .12s;}.pin:hover{box-shadow:var(--shadow-overlay);transform:translateY(-1px);}.pin-ic{width:38px;height:38px;border-radius:6px;display:grid;place-items:center;flex:0 0 auto;background:var(--surface-nested);border:1px solid var(--border);}.pin-b{flex:1;min-width:0;cursor:pointer;}.pin-t{font-size:14.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.pin-t.done{text-decoration:line-through;color:var(--text-secondary);}.pin-m{font-size:12px;color:var(--text-secondary);margin-top:3px;}.pin-chk{flex:0 0 auto;width:26px;height:26px;border-radius:6px;border:1.6px solid var(--border-input);display:grid;place-items:center;cursor:pointer;background:var(--surface-card);color:var(--on-accent);transition:all .15s;}.pin-chk.on{background:var(--module-1);border-color:var(--module-1);}.pin-chk svg{opacity:0;}.pin-chk.on svg{opacity:1;}.toolbar{display:flex;align-items:center;gap:10px;margin:14px 0 12px;}.btn{background:var(--accent);color:var(--on-accent);border:none;border-radius:6px;padding:10px 18px;font-size:14px;cursor:pointer;font-weight:700;box-shadow:var(--shadow-card);transition:filter .15s,transform .1s;display:inline-flex;align-items:center;gap:7px;}.btn:hover{filter:brightness(1.12);}.btn:active{transform:translateY(1px);}.btn.ghost{background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-input);box-shadow:none;font-weight:500;}.btn.ghost:hover{color:var(--text);}.btn.danger{background:var(--danger);}.btn[disabled]{opacity:.45;cursor:not-allowed;filter:grayscale(.5);box-shadow:none;}.btn[disabled]:hover{filter:grayscale(.5);}.spacer{flex:1;}input,textarea{font-family:var(--font);font-size:14px;border:1px solid var(--border-input);border-radius:6px;padding:9px 12px;background:var(--surface-card);color:var(--text);outline:none;transition:border-color .15s,box-shadow .15s;width:100%;}input:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted);}textarea{resize:vertical;min-height:80px;}.hero{display:flex;align-items:center;gap:13px;padding:12px 16px;border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);margin-bottom:4px;position:relative;overflow:hidden;}.hero.has-cover{padding:0;min-height:96px;}.hero.has-cover .hero-bg{position:absolute;inset:0;background-size:cover;background-position:center;}.hero.has-cover .hero-bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--surface-card) 28%,color-mix(in srgb,var(--surface-card) 60%,transparent) 55%,transparent 80%);}.hero.has-cover > .hero-inner{position:relative;z-index:1;padding:12px 16px;display:flex;align-items:center;gap:13px;}.hero-ic{width:40px;height:40px;border-radius:6px;display:grid;place-items:center;flex:0 0 auto;}.hero-tx{min-width:0;flex:1;}.hero-row{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;}.hero-v{font-size:20px;font-weight:800;letter-spacing:-.02em;line-height:1;}.hero-l{font-size:13px;color:var(--text-secondary);}@media (max-width:768px){.hero{padding:10px 12px;gap:10px;}.hero-ic{width:34px;height:34px;}.hero-v{font-size:17px;}.hero-l{font-size:12px;}.hero-row{gap:6px;}}@media (max-width:480px){.hero{padding:8px 10px;gap:8px;flex-wrap:wrap;}.hero-ic{width:30px;height:30px;}.hero-v{font-size:15px;}.hero-l{font-size:11px;}}.ql-item{display:flex;align-items:center;gap:8px;padding:6px 12px 6px 6px;border-radius:6px;background:var(--surface-card);border:1px solid var(--border);text-decoration:none;color:var(--text);font-size:12.5px;font-weight:600;transition:all .15s;cursor:pointer;}.ql-item:hover{transform:translateY(-1px);box-shadow:var(--shadow-card);border-color:var(--ql-color);}.ql-icon{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--ql-color,var(--accent));color:#fff;font-size:12px;font-weight:700;}.ql-name{white-space:nowrap;}.ql-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px;}.ql-item-card{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);text-decoration:none;color:var(--text);transition:all .15s;cursor:pointer;}.ql-item-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-overlay);border-color:var(--ql-color);}.ql-item-card .ql-icon{width:40px;height:40px;font-size:15px;overflow:hidden;}.ql-item-card .ql-icon img{width:26px;height:26px;object-fit:contain;border-radius:50%;}.ql-item-card .ql-info{flex:1;min-width:0;}.ql-item-card .ql-title{font-size:14px;font-weight:700;margin-bottom:2px;}.ql-item-card .ql-url{font-size:12px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.ql-item-card .ql-arrow{color:var(--text-tertiary);transition:color .15s;}.ql-item-card:hover .ql-arrow{color:var(--ql-color);}.ql-item-card .ql-edit{flex:0 0 auto;width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-tertiary);border-radius:6px;cursor:pointer;transition:background .15s,color .15s;}.ql-item-card .ql-edit:hover{background:var(--surface-nested);color:var(--text);}@media (max-width:480px){.ql-grid{grid-template-columns:1fr;}}.ops-categories{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;}.ops-category{border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);overflow:hidden;}.ops-cat-header{display:flex;align-items:center;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface-nested);}.ops-cat-icon{width:36px;height:36px;border-radius:6px;display:grid;place-items:center;background:linear-gradient(135deg,var(--accent) 0%,var(--module-2) 100%);color:#fff;}.ops-cat-info{flex:1;}.ops-cat-name{font-size:15px;font-weight:700;}.ops-cat-count{font-size:12px;color:var(--text-secondary);}.ops-cat-add{flex:0 0 auto;margin-left:auto;display:flex;align-items:center;gap:5px;padding:6px 12px;border-radius:6px;border:1px solid var(--border-input);background:var(--surface-card);color:var(--text-secondary);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s;}.ops-cat-add:hover{border-color:var(--accent);color:var(--text);background:var(--surface-nested);}.ops-terms{padding:10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:8px;}.ops-term{padding:10px 12px;border-radius:6px;transition:all .15s;cursor:pointer;border:1px solid var(--border);background:var(--surface-card);}.ops-term:hover{background:var(--surface-nested);border-color:var(--accent);box-shadow:0 2px 8px rgba(0,0,0,0.06);transform:translateY(-1px);}.ops-term:focus{outline:2px solid var(--accent);outline-offset:2px;}.ops-term-name{font-size:13px;font-weight:700;color:var(--text);margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.ops-term-desc{font-size:12px;color:var(--text-secondary);line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.ops-modal{width:520px;max-width:92vw;max-height:80vh;padding:0;overflow:hidden;}.ops-modal.show{animation:modalIn .2s ease;}.ops-modal-header{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--surface-nested);border-bottom:1px solid var(--border);}.ops-modal-cat{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);font-weight:600;}.ops-modal-close{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:4px;border-radius:6px;display:grid;place-items:center;}.ops-modal-close:hover{background:var(--surface-card);color:var(--text);}.ops-modal-title{font-size:20px;font-weight:800;letter-spacing:-.02em;margin:0;padding:18px 18px 4px;}.ops-modal-summary{font-size:13.5px;color:var(--text);padding:4px 18px 0;line-height:1.6;}.ops-modal-divider{height:1px;background:var(--border);margin:14px 18px;}.ops-modal-detail{font-size:13px;color:var(--text-secondary);padding:0 18px 20px;line-height:1.8;max-height:260px;overflow-y:auto;white-space:pre-wrap;}.ops-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:16px;}.ops-tabs{display:flex;gap:4px;flex-wrap:wrap;}.ops-tab{padding:6px 14px;border-radius:6px;font-size:12.5px;font-weight:700;cursor:pointer;color:var(--text-secondary);background:var(--surface-card);border:1px solid var(--border);transition:all .15s;}.ops-tab:hover{color:var(--text);border-color:var(--accent);}.ops-tab.on{color:#fff;background:var(--accent);border-color:var(--accent);}.ops-add-btn{display:flex;align-items:center;gap:6px;padding:6px 16px;border-radius:20px;background:var(--module-3);color:#fff;border:none;cursor:pointer;font-size:12.5px;font-weight:700;transition:all .15s;}.ops-add-btn:hover{transform:translateY(-1px);filter:brightness(1.1);}.svc-hero{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);margin-bottom:16px;}.svc-hero-ic{width:48px;height:48px;border-radius:6px;display:grid;place-items:center;background:linear-gradient(135deg,#fa8c16 0%,#fa541c 100%);color:#fff;}.svc-hero-tx{flex:1;}.svc-hero-v{font-size:24px;font-weight:800;letter-spacing:-.02em;}.svc-hero-l{font-size:13px;color:var(--text-secondary);}.svc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px;}.svc-card{border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);overflow:hidden;transition:all .15s;}.svc-card:hover{box-shadow:var(--shadow-overlay);transform:translateY(-2px);}.svc-card-header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface-nested);}.svc-card-icon{width:36px;height:36px;border-radius:6px;display:grid;place-items:center;color:#fff;font-size:15px;font-weight:700;}.svc-card-info{flex:1;min-width:0;}.svc-card-name{font-size:15px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.svc-card-type{font-size:12px;color:var(--text-secondary);}.svc-card-body{padding:14px 16px;}.svc-field{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:12.5px;}.svc-field-label{color:var(--text-secondary);min-width:60px;}.svc-field-value{flex:1;color:var(--text);font-weight:500;font-family:monospace;}.svc-field-copy{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:2px;border-radius:6px;display:flex;}.svc-field-copy:hover{color:var(--accent);background:var(--surface-nested);}.svc-card-actions{display:flex;gap:8px;padding:0 16px 14px;}.svc-card-actions button{flex:1;padding:8px;border-radius:6px;border:1px solid var(--border);background:var(--surface-card);cursor:pointer;font-size:12px;font-weight:600;color:var(--text-secondary);transition:all .15s;display:flex;align-items:center;justify-content:center;gap:5px;}.svc-card-actions button:hover{background:var(--surface-nested);color:var(--text);}.svc-card-actions .svc-del:hover{border-color:var(--danger);color:var(--danger);}@media (max-width:480px){.svc-grid{grid-template-columns:1fr;}}.arch-hero{display:flex;align-items:center;gap:14px;padding:14px 18px;border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);margin-bottom:16px;}.arch-hero-ic{width:48px;height:48px;border-radius:6px;display:grid;place-items:center;background:linear-gradient(135deg,#5f7a99 0%,#3d4f66 100%);color:#fff;}.arch-hero-tx{flex:1;}.arch-hero-v{font-size:24px;font-weight:800;letter-spacing:-.02em;}.arch-hero-l{font-size:13px;color:var(--text-secondary);}.arch-stats{display:flex;gap:8px;flex-wrap:wrap;}.arch-stat{text-align:center;padding:8px 16px;border-radius:6px;background:var(--surface-nested);border:1px solid var(--border);}.arch-stat b{display:block;font-size:18px;font-weight:800;color:var(--text);}.arch-stat span{font-size:11px;color:var(--text-secondary);}.arch-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:16px;}.arch-group{border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);overflow:hidden;transition:all .15s;}.arch-group:hover{box-shadow:var(--shadow-overlay);}.arch-group-header{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border);background:var(--surface-nested);}.arch-group-icon{width:34px;height:34px;border-radius:6px;display:grid;place-items:center;color:#fff;flex:0 0 auto;}.arch-group-name{font-size:15px;font-weight:700;flex:1;}.arch-group-count{font-size:12px;color:var(--text-secondary);}.arch-links{padding:8px;display:flex;flex-direction:column;gap:2px;}.arch-link{display:flex;align-items:center;gap:10px;padding:9px 10px;border-radius:6px;cursor:pointer;transition:background .15s;}.arch-link:hover{background:var(--surface-nested);}.arch-link-ic{width:32px;height:32px;border-radius:6px;display:grid;place-items:center;flex:0 0 auto;color:#fff;}.arch-link-info{flex:1;min-width:0;}.arch-link-name{font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.arch-link-url{font-size:11.5px;color:var(--text-secondary);font-family:monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.arch-link-copy{background:none;border:none;cursor:pointer;color:var(--text-tertiary);padding:4px;border-radius:6px;display:flex;flex:0 0 auto;}.arch-link-copy:hover{color:var(--accent);background:var(--surface-nested);}@media (max-width:768px){.main{padding:56px 16px 30px;}.header h2{font-size:22px;}.ops-categories{grid-template-columns:1fr;}.ops-terms{grid-template-columns:1fr;}.svc-grid{grid-template-columns:1fr;}.arch-grid{grid-template-columns:1fr;}.mod-layout{grid-template-columns:1fr !important;}.mod-side{position:static;}.bento{grid-template-columns:1fr 1fr !important;}#vo-content{padding:14px !important;}#vo-content table{font-size:12px !important;}#vo-content th,#vo-content td{padding:6px 6px !important;}.modal{max-width:94vw !important;width:auto !important;}}@media (max-width:480px){.bento{grid-template-columns:1fr !important;}#vo-content table{display:block;overflow-x:auto;white-space:nowrap;}#vo-tabs .opt{padding:6px 8px !important;font-size:12px;}.seg{flex-wrap:wrap;}}#vo-content{overflow-x:visible;}#vo-content .vo-table{overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;}#vo-content .vo-toolbar{flex-wrap:wrap;width:100%;min-width:0;}#vo-ver-save{display:inline-flex!important;visibility:visible!important;flex:0 0 auto;white-space:nowrap;}#vo-content .vo-table::-webkit-scrollbar{width:0;height:0;display:none};#vo-content td[contenteditable]{outline:none;transition:background .15s,box-shadow .15s;border-radius:4px;}#vo-content td[contenteditable]:hover{background:var(--surface-nested);}#vo-content td[contenteditable]:focus{background:var(--surface-nested);box-shadow:inset 0 0 0 2px var(--accent);}#vo-page-title{border-radius:6px;padding:2px 8px;margin-left:-11px;outline:none;transition:background .15s,box-shadow .15s;}#vo-page-title:hover{background:var(--surface-nested);}#vo-page-title:focus{background:var(--surface-nested);box-shadow:inset 0 0 0 2px var(--accent);}.rec .thumb{width:48px;height:48px;border-radius:var(--radius-tile);object-fit:cover;flex:0 0 auto;margin-right:2px;}.rec .meta-line{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-top:4px;flex:1 0 100%;}.rec .meta-tag{font-size:12px;font-weight:600;color:var(--text-secondary);}.rec .meta-tag::before{content:"·";margin-right:6px;color:var(--text-tertiary);}.rec .meta-tag:first-child::before{display:none;}.mod-layout{display:grid;grid-template-columns:1fr 300px;gap:16px;align-items:start;margin-top:14px;}.mod-layout[style*="grid-template-columns:1fr"]{grid-template-columns:1fr !important;}.mod-side{display:flex;flex-direction:column;gap:12px;position:sticky;top:16px;}.header .hero{padding:0 12px;border-radius:0;background:transparent;min-height:unset;box-shadow:none;border:none;}.side-card{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-tile);box-shadow:var(--shadow-card);padding:14px 15px;}.side-card .sh{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:800;margin-bottom:10px;}.side-card .sh svg{color:var(--text-tertiary);}.stat-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--border);}.stat-row:last-child{border-bottom:none;padding-bottom:0;}.stat-row .k{font-size:12.5px;color:var(--text-secondary);display:flex;align-items:center;gap:7px;}.stat-row .k .kd{width:8px;height:8px;border-radius:50%;flex:0 0 auto;}.stat-row .val{font-size:14px;font-weight:800;letter-spacing:-.01em;}.catbar{margin-top:4px;}.catbar .cbrow{display:flex;align-items:center;gap:9px;padding:7px 0;}.catbar .cbrow .cbn{font-size:12.5px;color:var(--text);width:52px;flex:0 0 auto;}.catbar .cbrow .cbt{flex:1;height:8px;border-radius:6px;background:var(--border);overflow:hidden;}.catbar .cbrow .cbt i{display:block;height:100%;border-radius:6px;}.catbar .cbrow .cbv{font-size:12px;color:var(--text-secondary);width:56px;text-align:right;flex:0 0 auto;}.side-ring{display:flex;flex-direction:column;align-items:center;gap:8px;padding:6px 0 2px;}.side-ring .dial{position:relative;width:120px;height:120px;}.side-ring .dial svg.gauge{transform:rotate(-90deg);width:120px;height:120px;}.side-ring .dial .mid{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;}.side-ring .big{font-size:26px;font-weight:800;letter-spacing:-.02em;}.side-ring .cap{font-size:12px;color:var(--text-secondary);}.cap.hero-l,.hero .cap.hero-l{font-size:14px;color:#000;font-weight:700;}.mod-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:4px;}.mini{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-tile);box-shadow:var(--shadow-card);padding:12px 14px;}.mini .l{font-size:12px;color:var(--text-secondary);}.mini .v{font-size:19px;font-weight:800;margin-top:3px;letter-spacing:-.02em;}.rec-grid{display:flex;flex-direction:column;gap:9px;}.rec{position:relative;background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-tile);box-shadow:var(--shadow-card);padding:14px 16px;transition:border-color .12s,box-shadow .15s;}.rec:hover{border-color:var(--border-input);box-shadow:var(--shadow-overlay);}.rec .top{display:flex;align-items:center;gap:12px;}.rec .chk{flex:0 0 auto;width:23px;height:23px;border-radius:6px;border:1.6px solid var(--border-input);display:grid;place-items:center;cursor:pointer;background:var(--surface-card);color:var(--on-accent);transition:all .15s;}.rec .chk.on{background:var(--module-1);border-color:var(--module-1);}.rec .chk svg{opacity:0;}.rec .chk.on svg{opacity:1;}.rec .body{flex:1;min-width:0;cursor:pointer;display:flex;align-items:center;gap:11px;flex-wrap:wrap;}.rec .rname{font-weight:700;font-size:14.5px;letter-spacing:-.01em;flex:0 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;}.rec .rname.done{text-decoration:line-through;color:var(--text-secondary);}.rec .rnote{flex:1 0 100%;color:var(--text-secondary);font-size:12.5px;margin-top:5px;white-space:pre-wrap;line-height:1.5;overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}.badge{display:inline-flex;align-items:center;gap:5px;padding:2px 9px;border-radius:6px;font-size:11.5px;font-weight:700;}.badge .dot{width:6px;height:6px;border-radius:50%;background:currentColor;}.rec .acts{position:absolute;top:50%;right:8px;transform:translateY(-50%);display:flex;gap:1px;background:var(--surface-nested);border:1px solid var(--border-input);border-radius:8px;padding:2px;box-shadow:0 1px 4px rgba(0,0,0,.08);}.rec .acts button{border:none;background:transparent;color:var(--text-secondary);cursor:pointer;width:28px;height:28px;border-radius:6px;display:grid;place-items:center;transition:all .15s;}.rec .pin-btn:hover{background:var(--surface-nested);color:var(--module-3);}.rec .pin-btn.on{color:var(--module-3);}.rec .pin-btn.on svg{fill:var(--module-3);}.rec .del:hover{background:var(--danger-muted);color:var(--danger);}.rec .pbar{flex:1;min-width:80px;height:6px;border-radius:6px;background:var(--border);overflow:hidden;}.rec .pbar i{display:block;height:100%;border-radius:6px;}.rec .amt{font-size:15px;font-weight:800;letter-spacing:-.02em;white-space:nowrap;margin-left:auto;}.rec .amt.exp{color:var(--danger);}.rec .amt.inc{color:var(--module-1);}.rec .streak{font-size:11.5px;color:var(--module-3);font-weight:700;display:inline-flex;align-items:center;gap:4px;}.rec .rdate{color:var(--text-secondary);font-size:11.5px;margin-left:auto;white-space:nowrap;}.empty{text-align:center;color:var(--text-secondary);padding:50px 20px;}.empty .e{display:inline-grid;place-items:center;width:56px;height:56px;border-radius:6px;background:var(--surface-card);border:1px solid var(--border);color:var(--text-tertiary);margin-bottom:12px;}.overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--text) 44%,transparent);backdrop-filter:blur(3px);z-index:60;display:flex;align-items:center;justify-content:center;animation:fade .16s ease;}body.vo-view .overlay{backdrop-filter:none;-webkit-backdrop-filter:none}@keyframes fade{from{opacity:0;}}.modal{position:relative;background:var(--surface-card);border-radius:6px;padding:26px;width:480px;max-width:92vw;max-height:90vh;overflow-y:auto;box-shadow:0 24px 60px color-mix(in srgb,var(--text) 26%,transparent);animation:pop .18s cubic-bezier(.2,.8,.3,1);}.modal-x{position:absolute;top:16px;right:16px;width:30px;height:30px;border:none;border-radius:6px;background:var(--surface-nested);color:var(--text-secondary);cursor:pointer;display:grid;place-items:center;transition:all .15s;}.modal-x:hover{background:var(--danger-muted);color:var(--danger);}@keyframes pop{from{transform:translateY(10px) scale(.98);opacity:0;}}.modal h3{font-size:19px;font-weight:800;letter-spacing:-.01em;}.modal .sub{color:var(--text-secondary);font-size:13px;margin:5px 0 18px;}.field{margin-bottom:14px;}.field label{display:block;color:var(--text-secondary);font-size:13px;margin-bottom:6px;}.field input + label{margin:6px 0 0;}.frow{display:flex;gap:12px;}.frow .field{flex:1;}h2[contenteditable]{border:1px solid transparent;border-radius:6px;padding:1px 6px;transition:border-color .12s,background .12s,box-shadow .12s;}h2[contenteditable]:focus{border-color:var(--border-input);background:var(--surface-nested);box-shadow:0 0 0 3px rgba(0,0,0,.06);}.seg{display:flex;gap:8px;flex-wrap:wrap;}.seg .opt{flex:1;min-width:64px;text-align:center;padding:10px;border-radius:6px;border:1px solid var(--border-input);cursor:pointer;font-size:13px;font-weight:600;color:var(--text-secondary);transition:all .12s;}.seg .opt.on{background:var(--module-2);border-color:var(--module-2);color:#fff;}.opt.on{background:var(--module-2);border-color:var(--module-2);color:#fff;}.opt{cursor:pointer;font-size:13px;font-weight:600;color:var(--text-secondary);transition:all .12s;border-radius:6px;border:1px solid var(--border-input);}.opt:hover{border-color:var(--module-2);color:var(--module-2);}.opt.on:hover{border-color:var(--module-2);color:#fff;}#vo-tabs .opt{position:relative;overflow:hidden;text-align:center;}#vo-tabs .opt.on{background-image:linear-gradient(110deg,#ff7a3a,#f59e0b,#fbbf24,#fb923c,#ff7a3a);background-size:280% 280%;background-color:transparent;border-color:transparent;color:#fff;font-weight:600;--g1:rgba(232,116,59,.55);--g2:rgba(245,158,11,.32);animation:voTabFlow 5s linear infinite,voTabGlow 1.8s ease-in-out infinite;}#vo-tabs .opt.on[data-stage="1"]{background-image:linear-gradient(110deg,#3a73d4,#06b6d4,#38bdf8,#818cf8,#3a73d4);--g1:rgba(58,115,212,.65);--g2:rgba(34,211,238,.42);}#vo-tabs .opt.on[data-stage="2"]{background-image:linear-gradient(110deg,#2e9e5b,#10b981,#34d399,#a3e635,#2e9e5b);--g1:rgba(46,158,91,.65);--g2:rgba(16,185,129,.42);}#vo-tabs .opt.on::before{content:"";position:absolute;left:10%;right:10%;bottom:3px;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#fff 45%,var(--vo-stage,#a5f3fc) 55%,transparent);filter:drop-shadow(0 0 4px var(--vo-stage,rgba(165,243,252,.9)));animation:voTabLaser 2.2s ease-in-out infinite;pointer-events:none;}#vo-tabs .opt.on::after{content:"";position:absolute;top:0;bottom:0;left:0;width:45%;background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);transform:translateX(-240%) skewX(-18deg);animation:voTabSheen 2.6s ease-in-out infinite;pointer-events:none;border-radius:inherit;}@keyframes voTabFlow{0%{background-position:0% 50%;}100%{background-position:280% 50%;}}@keyframes voTabGlow{0%,100%{box-shadow:inset 0 0 0 2px rgba(255,255,255,.95),inset 0 0 14px rgba(255,255,255,.22),0 0 8px 2px var(--g1),0 0 20px 3px var(--g2);}50%{box-shadow:inset 0 0 0 2px rgba(255,255,255,.95),inset 0 0 22px rgba(255,255,255,.38),0 0 16px 4px var(--g1),0 0 34px 6px var(--g2);}}@keyframes voTabLaser{0%{left:10%;right:80%;opacity:0;}15%{opacity:1;}50%{left:80%;right:10%;opacity:1;}85%{opacity:1;}100%{left:10%;right:80%;opacity:0;}}@keyframes voTabSheen{0%{transform:translateX(-240%) skewX(-18deg);}45%{transform:translateX(360%) skewX(-18deg);}100%{transform:translateX(360%) skewX(-18deg);}}@media (prefers-reduced-motion:reduce){#vo-tabs .opt.on,#vo-tabs .opt.on::before,#vo-tabs .opt.on::after{animation:none;}}.lrow{display:flex;align-items:center;gap:8px;margin-top:10px;}.lrow .llab{flex:0 0 auto;width:auto;min-width:34px;margin:0;color:var(--text-secondary);font-size:13px;cursor:default;}.lrow input{flex:1;min-width:0;}button.llab{cursor:pointer;}.admin-chip{border:none;background:none;padding:0;font-weight:400;transition:color .12s;}.admin-chip.on{color:var(--accent);font-weight:700;}.modal-actions{display:flex;align-items:center;gap:10px;margin-top:22px;}.wp-ed-tools{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}.wp-ed-body{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-start;}.wp-ed-pane{flex:1 1 50%;min-width:0;}.wp-ed-body.single .wp-ed-pane{flex:1 1 100%;}.wp-ed-body.single .wp-ed-pane.hide{display:none;}.wp-ed-split{flex:0 0 6px;align-self:stretch;cursor:col-resize;position:relative;z-index:5;margin:0;border-radius:4px;background:var(--border-input);touch-action:none;}.wp-ed-split:hover,.wp-ed-split.dragging{background:var(--accent);}.wp-ed-split::before{content:"";position:absolute;inset:0 -10px;}.wp-ed-body.dragging{cursor:col-resize;user-select:none;-webkit-user-select:none;}.wp-ed-body.dragging iframe,.wp-ed-body.dragging #wp-live-host,.wp-ed-body.dragging textarea{pointer-events:none!important;}.wp-ed-body.single .wp-ed-split{display:none;}
/* 对齐 WP 后台 #wp-content-editor-container / #content.wp-editor-area 呈现 */
#wp-live-host.wp-editor-container{box-shadow:none}
/* 骨架编辑双栏：强制左右并列（避免 flex-wrap + 50% 被 gap 挤换行） */
.wp-skel-layout{display:flex;flex-direction:column;gap:8px;min-width:0}
.wp-skel-layout > .wp-html-toolbar{flex:0 0 auto;width:100%;margin-bottom:0}
#wp-new-skel-body,#wp-pdp-skel-body,#wp-temp-skel-body,#wp-topic-skel-body{display:flex;flex-wrap:nowrap;gap:12px;align-items:stretch;width:100%;min-width:0}
#wp-new-skel-body .wp-ed-pane,#wp-pdp-skel-body .wp-ed-pane,#wp-temp-skel-body .wp-ed-pane,#wp-topic-skel-body .wp-ed-pane{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:8px}
#wp-new-skel-body .wp-html-toolbar,#wp-pdp-skel-body .wp-html-toolbar,#wp-temp-skel-body .wp-html-toolbar,#wp-topic-skel-body .wp-html-toolbar{flex:0 0 auto;width:100%;margin-bottom:0}
/* pdp：左右栏 + 中间拖拽条；分割条与左右内容区顶部对齐 */
#wp-pdp-skel-body.wp-skel-has-split{gap:0;align-items:flex-start;min-height:0;height:auto}
#wp-pdp-skel-body.wp-skel-has-split .wp-ed-pane{height:auto;min-height:0;align-self:flex-start}
#wp-pdp-skel-body.wp-skel-has-split #wp-pane-text-side .wp-skel-ta-wrap,
#wp-pdp-skel-body.wp-skel-has-split #wp-pane-text .wp-skel-ta-wrap{flex:0 0 auto;height:auto;min-height:0;display:flex;flex-direction:column}
#wp-pdp-skel-body.wp-skel-has-split #wp-pdp-skel-split{margin-left:5px;margin-right:5px;align-self:flex-start;flex:0 0 6px}
#wp-pdp-skel-body.wp-skel-has-split #wp-pdp-skel-src.wp-editor-area,
#wp-pdp-skel-body.wp-skel-has-split #wp-pdp-skel-src.wp-skel-rich{
  flex:0 0 auto;width:100%;height:auto!important;min-height:280px!important;max-height:none!important;
  box-sizing:border-box
}
#wp-pdp-skel-body.dragging{cursor:col-resize;user-select:none;-webkit-user-select:none}
#wp-pdp-skel-body.dragging textarea,
#wp-pdp-skel-body.dragging .wp-pdp-img-list,
#wp-pdp-skel-body.dragging .wp-skel-rich{pointer-events:none!important}
.wp-pdp-img-list{
  flex:0 0 auto;min-height:0;height:auto;margin:0;padding:0;border:1px solid #c3c4c7;border-radius:0;
  background:#fff;color:#2c3338;box-sizing:border-box;overflow:visible;
  scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent
}
.wp-pdp-img-list:empty::before{content:attr(data-placeholder);display:block;padding:12px 14px;color:#9aa0a6;pointer-events:none;font:13px/1.6 var(--font)}
.wp-pdp-img-head{padding:10px 12px 8px;background:#f3f4f5;border-bottom:1px solid #e0e0e0;cursor:default;user-select:none}
.wp-pdp-img-head-t{font:12.5px/1.4 var(--font);font-weight:700;color:#2c3338}
.wp-pdp-img-head-m{font:11.5px/1.4 var(--font);color:var(--text-secondary,#646970);margin-top:3px}
.wp-pdp-img-row{
  display:grid;grid-template-columns:36px minmax(160px,1.5fr) minmax(140px,1fr);
  gap:6px 10px;align-items:start;padding:9px 12px;border-bottom:1px solid #ececec;
  font:12.5px/1.45 Consolas,Monaco,"Microsoft YaHei",monospace;
  cursor:grab;touch-action:none;user-select:none;-webkit-user-select:none
}
.wp-pdp-img-row:last-child{border-bottom:0}
.wp-pdp-img-row:hover{background:#f6f7f7}
.wp-pdp-img-row:active{cursor:grabbing}
.wp-pdp-img-row.is-dragging{opacity:.4;background:var(--surface-nested,#f0f0f1)}
.wp-pdp-img-row.drag-over-above{box-shadow:inset 0 2px 0 0 var(--accent,#2271b1)}
.wp-pdp-img-row.drag-over-below{box-shadow:inset 0 -2px 0 0 var(--accent,#2271b1)}
.wp-pdp-img-no{font-weight:700;color:var(--text-secondary,#646970);font-variant-numeric:tabular-nums}
.wp-pdp-img-file{color:#2c3338;word-break:break-all}
.wp-pdp-img-file a{color:#2271b1;text-decoration:none}
.wp-pdp-img-file a:hover{text-decoration:underline}
.wp-pdp-img-usage{color:#2c3338;font-weight:600;word-break:break-word}
.wp-pdp-img-note{color:#9a6b1f;font-size:11.5px;white-space:nowrap}
/* #话题：上下两块等高可编辑本文 */
#wp-topic-skel-body.wp-skel-stack{
  flex-direction:column;height:clamp(420px,calc(100vh - 180px),860px)
}
#wp-topic-skel-body.wp-skel-stack .wp-ed-pane{
  flex:1 1 auto;height:100%;gap:12px
}
#wp-topic-skel-body.wp-skel-stack .wp-skel-ta-wrap,
#wp-topic-skel-body.wp-skel-stack .wp-skel-below-wrap{
  flex:1 1 0;min-height:0;height:auto;display:flex;flex-direction:column
}
#wp-topic-skel-side.wp-skel-rich,#wp-topic-skel-below.wp-skel-rich,
#wp-topic-skel-side.wp-skel-tags,#wp-topic-skel-below.wp-skel-tags{
  height:100%!important;min-height:0!important;flex:1 1 auto
}
.wp-skel-pair-bar{flex:0 0 auto;display:flex;align-items:center;justify-content:center;gap:8px;min-height:36px}
.wp-skel-pair-bar > .fe-cp{
  appearance:none;-webkit-appearance:none;height:32px;min-height:32px;padding:0 14px;margin:0;
  border:1px solid var(--border-input);border-radius:6px;background:transparent;
  color:var(--text-secondary);font:inherit;font-size:12.5px;font-weight:600;line-height:1;cursor:pointer;
  transition:all .12s;box-sizing:border-box
}
.wp-skel-pair-bar > .fe-cp:hover{border-color:var(--accent);color:var(--accent)}
.wp-skel-pair-bar > .fe-cp.on,.wp-skel-pair-bar > .fe-cp.on:hover{
  background:var(--text,#232220)!important;border-color:var(--text,#232220)!important;color:#fff!important
}
.wp-skel-pair-bar > .wp-skel-pair-meta{font-size:12px;color:var(--text-secondary);font-weight:600}
/* #话题：整词芯片（点删整个 #****）+ 上下栏各自粘贴输入 */
.wp-skel-tags{
  display:flex;flex-direction:column;width:100%;flex:1 1 auto;min-height:0;height:100%;
  margin:0;padding:0;border:1px solid #c3c4c7;border-radius:0;background:#fff;color:#2c3338;
  font:14px/1.7 var(--font);box-sizing:border-box;overflow:hidden
}
.wp-skel-tag-list{
  flex:1 1 auto;min-height:0;display:flex;flex-wrap:wrap;align-content:flex-start;align-items:flex-start;
  gap:8px;padding:12px 14px;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent
}
.wp-skel-tag-list:empty::before{content:attr(data-placeholder);color:#9aa0a6;pointer-events:none}
.wp-skel-tag{
  appearance:none;-webkit-appearance:none;display:inline-flex;align-items:center;gap:6px;
  max-width:100%;padding:4px 8px 4px 10px;margin:0;border:1px solid #c3c4c7;border-radius:6px;
  background:var(--surface-nested,#f0f0f1);color:#2c3338;font:inherit;font-size:13px;font-weight:600;
  line-height:1.35;cursor:pointer;box-sizing:border-box;text-align:left
}
.wp-skel-tag:hover{border-color:#b32d2e;background:#fcf0f1;color:#b32d2e}
.wp-skel-tag > .x{flex:0 0 auto;font-size:14px;font-weight:800;line-height:1;opacity:.7}
.wp-skel-tag:hover > .x{opacity:1}
.wp-skel-tag-paste{
  flex:0 0 auto;width:100%;min-height:56px;max-height:88px;margin:0;padding:8px 12px;
  border:0;border-bottom:1px dashed #c3c4c7;border-radius:0;background:#fafafa;color:#2c3338;
  font:13px/1.5 var(--font);outline:none;resize:none;box-sizing:border-box
}
.wp-skel-tag-paste:focus{background:#fff;box-shadow:inset 0 0 0 1px #2271b1}
.wp-skel-tag-paste::placeholder{color:#9aa0a6}
.wp-skel-left-label,.wp-skel-side-label{flex:0 0 auto;display:flex;align-items:center;gap:8px;min-height:32px;font-size:13px;font-weight:700;color:var(--text);line-height:32px}
.wp-skel-left-label > span,.wp-skel-side-label > span{flex:1 1 auto;min-width:0}
.wp-skel-ta-wrap{position:relative;flex:1 1 auto;min-height:0;display:flex;flex-direction:column}
.wp-skel-corner-copy{flex:0 0 auto;width:28px;height:28px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border-input);border-radius:0;background:var(--surface-card,#fff);color:var(--text-secondary);cursor:pointer;box-shadow:none;transition:background .12s,color .12s,border-color .12s}
.wp-skel-corner-copy:hover{background:var(--surface-nested);color:var(--text);border-color:var(--accent)}
.wp-skel-corner-copy svg{width:14px;height:14px;display:block}
#wp-skel-toolbar .wp-skel-corner-copy{margin-left:auto;align-self:center;border:none;background:transparent;border-radius:6px;box-shadow:none}
#wp-skel-toolbar .wp-skel-corner-copy:hover{background:var(--surface-nested);border:none;color:var(--text)}
.wr-ranking-panel .wrap.vlr > table,
.wr-ranking-panel > .wrap > table,
.wr-ranking-panel .wrap.vlr > .wr-scroll,
.wr-ranking-panel > .wrap > .wr-scroll{margin-left:-5px;margin-right:-5px}
.wr-ranking-panel .wrap.vlr > .wr-scroll>table,
.wr-ranking-panel > .wrap > .wr-scroll>table{width:100%;margin:0}
#wp-new-skel-body .wp-skel-rich,#wp-pdp-skel-body .wp-skel-rich,#wp-temp-skel-body .wp-skel-rich,#wp-topic-skel-body .wp-skel-rich,
#wp-pdp-skel-src.wp-skel-rich,#wp-pdp-skel-side.wp-skel-rich,
#wp-new-skel-src.wp-skel-rich,#wp-new-skel-side.wp-skel-rich,
#wp-temp-skel-src.wp-skel-rich,#wp-temp-skel-side.wp-skel-rich,
#wp-topic-skel-src.wp-skel-rich,#wp-topic-skel-side.wp-skel-rich,#wp-topic-skel-below.wp-skel-rich{
  display:block;width:100%;flex:1 1 auto;min-height:300px;height:clamp(420px,calc(100vh - 220px),860px);
  margin:0;padding:14px 16px;border:1px solid #c3c4c7;border-radius:0;
  background:#fff;color:#2c3338;font:14px/1.7 var(--font);box-sizing:border-box;
  overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent;
  outline:none;white-space:pre-wrap;word-break:break-word
}
#wp-new-skel-body .wp-skel-rich:focus,#wp-pdp-skel-body .wp-skel-rich:focus,#wp-temp-skel-body .wp-skel-rich:focus,#wp-topic-skel-body .wp-skel-rich:focus,
#wp-pdp-skel-src.wp-skel-rich:focus,#wp-pdp-skel-side.wp-skel-rich:focus,
#wp-new-skel-src.wp-skel-rich:focus,#wp-new-skel-side.wp-skel-rich:focus,
#wp-temp-skel-src.wp-skel-rich:focus,#wp-temp-skel-side.wp-skel-rich:focus,
#wp-topic-skel-src.wp-skel-rich:focus,#wp-topic-skel-side.wp-skel-rich:focus,#wp-topic-skel-below.wp-skel-rich:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 1px #2271b1}
#wp-new-skel-body .wp-skel-rich h2,#wp-pdp-skel-body .wp-skel-rich h2,#wp-temp-skel-body .wp-skel-rich h2,#wp-topic-skel-body .wp-skel-rich h2{font-size:1.35em;font-weight:800;margin:0.6em 0 0.35em;line-height:1.35}
#wp-new-skel-body .wp-skel-rich h3,#wp-pdp-skel-body .wp-skel-rich h3,#wp-temp-skel-body .wp-skel-rich h3,#wp-topic-skel-body .wp-skel-rich h3{font-size:1.15em;font-weight:750;margin:0.55em 0 0.3em;line-height:1.35}
#wp-new-skel-body .wp-skel-rich p,#wp-pdp-skel-body .wp-skel-rich p,#wp-temp-skel-body .wp-skel-rich p,#wp-topic-skel-body .wp-skel-rich p{margin:0.4em 0}
#wp-new-skel-body .wp-skel-rich ul,#wp-new-skel-body .wp-skel-rich ol,
#wp-pdp-skel-body .wp-skel-rich ul,#wp-pdp-skel-body .wp-skel-rich ol,
#wp-temp-skel-body .wp-skel-rich ul,#wp-temp-skel-body .wp-skel-rich ol,
#wp-topic-skel-body .wp-skel-rich ul,#wp-topic-skel-body .wp-skel-rich ol{margin:0.4em 0 0.4em 1.2em;padding:0}
#wp-new-skel-body .wp-skel-rich blockquote,#wp-pdp-skel-body .wp-skel-rich blockquote,#wp-temp-skel-body .wp-skel-rich blockquote,#wp-topic-skel-body .wp-skel-rich blockquote{margin:0.5em 0;padding:0.35em 0.8em;border-left:3px solid var(--border-input);color:var(--text-secondary)}
#wp-new-skel-body .wp-skel-rich pre,#wp-pdp-skel-body .wp-skel-rich pre,#wp-temp-skel-body .wp-skel-rich pre,#wp-topic-skel-body .wp-skel-rich pre{margin:0.5em 0;padding:10px 12px;background:var(--surface-nested);border-radius:6px;overflow:auto;font:12.5px/1.55 Consolas,Monaco,monospace}
#wp-new-skel-body .wp-skel-rich table,#wp-pdp-skel-body .wp-skel-rich table,#wp-temp-skel-body .wp-skel-rich table,#wp-topic-skel-body .wp-skel-rich table{border-collapse:collapse;width:100%;margin:0.5em 0}
#wp-new-skel-body .wp-skel-rich th,#wp-new-skel-body .wp-skel-rich td,
#wp-pdp-skel-body .wp-skel-rich th,#wp-pdp-skel-body .wp-skel-rich td,
#wp-temp-skel-body .wp-skel-rich th,#wp-temp-skel-body .wp-skel-rich td,
#wp-topic-skel-body .wp-skel-rich th,#wp-topic-skel-body .wp-skel-rich td{border:1px solid #c3c4c7;padding:6px 8px}
#wp-new-skel-body .wp-skel-rich:empty::before,#wp-pdp-skel-body .wp-skel-rich:empty::before,#wp-temp-skel-body .wp-skel-rich:empty::before,#wp-topic-skel-body .wp-skel-rich:empty::before{content:attr(data-placeholder);color:#9aa0a6;pointer-events:none}
#wp-html-src.wp-editor-area,#wp-new-skel-src.wp-editor-area,#wp-new-skel-side.wp-editor-area,
#wp-pdp-skel-src.wp-editor-area,#wp-pdp-skel-side.wp-editor-area{display:block;width:100%;min-height:300px;height:clamp(640px,calc(100vh - 150px),940px);margin:0;padding:10px 12px;border:1px solid #c3c4c7;border-radius:0;background:#fff;color:#2c3338;font:13px/1.6 Consolas,Monaco,monospace;box-sizing:border-box;resize:none;overflow:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent}
#wp-html-src.wp-editor-area:focus,#wp-new-skel-src.wp-editor-area:focus,#wp-new-skel-side.wp-editor-area:focus,
#wp-pdp-skel-src.wp-editor-area:focus,#wp-pdp-skel-side.wp-editor-area:focus{outline:none;border-color:#2271b1;box-shadow:0 0 0 1px #2271b1}
#wp-pdp-skel-src.wp-editor-area,#wp-pdp-skel-side.wp-editor-area{flex:1 1 auto;height:clamp(420px,calc(100vh - 220px),860px);white-space:pre-wrap;word-break:break-word}
#wp-html-src:focus,#wp-html-view:focus,#wp-live-host.wp-ed-active,#wp-html-view.wp-ed-active{outline:none;border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-muted);}#wp-pane-visual.wp-ed-active #wp-html-view,#wp-pane-visual.wp-ed-active #wp-live-host{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-muted);}.bento{display:grid;grid-template-columns:repeat(12,1fr);gap:16px;align-items:stretch;}.bento > *{min-width:0;}.b4{grid-column:span 4}.b5{grid-column:span 5}.b7{grid-column:span 7}.b8{grid-column:span 8}.b12{grid-column:span 12}.sec-grp{display:flex;align-items:center;gap:12px;margin:26px 2px 14px;}.sec-grp .bar{width:4px;height:19px;border-radius:6px;background:var(--accent);flex:0 0 auto;}.sec-grp .zh{font-size:16px;font-weight:800;letter-spacing:-.02em;}.sec-grp .line{flex:1;height:1px;background:var(--border);}.tile{background:var(--surface-card);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);padding:18px 20px;display:flex;flex-direction:column;}.tile-h{display:flex;align-items:center;gap:9px;margin-bottom:14px;}.tile-h .tic{color:var(--text-tertiary);display:flex;}.tile-h .zh{font-size:14px;font-weight:800;letter-spacing:-.01em;line-height:1.15;}.tile-h .tt{display:flex;flex-direction:column;gap:3px;}.tile-h .r{margin-left:auto;font-size:12px;color:var(--text-secondary);font-weight:700;}.ov2-body{display:grid;grid-template-columns:1fr 300px;gap:22px;flex:1;align-items:stretch;}.ov2-body .rings{align-content:center;}.ov2-body--solo{grid-template-columns:1fr;}.ov2-body--solo .rings{width:100%;}.ov2-side{position:relative;overflow:hidden;border-radius:var(--radius-card);background:linear-gradient(150deg,#33322e 0%,#232220 62%,#1b1a18 100%);box-shadow:var(--shadow-overlay);padding:20px;display:flex;flex-direction:column;justify-content:space-between;gap:12px;}.ov2-side::before{content:"";position:absolute;width:190px;height:190px;border-radius:50%;right:-70px;top:-80px;background:radial-gradient(circle,rgba(95,122,153,.4),transparent 70%);pointer-events:none;}.ov2-side::after{content:"";position:absolute;width:150px;height:150px;border-radius:50%;left:-55px;bottom:-70px;background:radial-gradient(circle,rgba(189,138,78,.32),transparent 70%);pointer-events:none;}.ov2-stat{position:relative;z-index:1;display:flex;align-items:center;gap:13px;cursor:pointer;padding:12px 4px;border-radius:var(--radius-tile);transition:background .15s;}.ov2-stat:hover{background:rgba(244,243,240,.06);}.ov2-stat + .ov2-stat{border-top:1px solid rgba(244,243,240,.09);}.ov2-stat .s-ic{width:40px;height:40px;border-radius:6px;display:grid;place-items:center;flex:0 0 auto;background:rgba(244,243,240,.08);box-shadow:inset 0 0 0 1px rgba(244,243,240,.1);}.ov2-stat .s-tx{min-width:0;}.ov2-stat .s-v{font-size:24px;font-weight:800;letter-spacing:-.03em;line-height:1.05;color:#f4f3f0;font-variant-numeric:tabular-nums;}.ov2-stat .s-l{font-size:11.5px;color:rgba(244,243,240,.55);margin-top:3px;}.clock-card{position:relative;overflow:hidden;border-radius:var(--radius-sheet);background:linear-gradient(140deg,#33322e 0%,#232220 60%,#1c1b19 100%);color:#f4f3f0;padding:26px 28px;box-shadow:var(--shadow-overlay);display:flex;flex-direction:column;justify-content:space-between;min-height:196px;}.clock-card::before{content:"";position:absolute;width:220px;height:220px;border-radius:50%;right:-70px;top:-90px;background:radial-gradient(circle,rgba(189,138,78,.35),transparent 70%);}.clock-card::after{content:"";position:absolute;width:170px;height:170px;border-radius:50%;left:-60px;bottom:-80px;background:radial-gradient(circle,rgba(111,143,106,.28),transparent 70%);}.clock-card > *{position:relative;z-index:1;}.clock-card .hi{font-size:24px;font-weight:800;letter-spacing:-.02em;}.clock-card .sub{font-size:12.5px;opacity:.62;margin-top:5px;max-width:230px;line-height:1.5;}.shutdown-card{justify-content:space-between;}.shutdown-card .sd-top .hi{font-size:12.5px;font-weight:700;opacity:.55;letter-spacing:.05em;}.shutdown-card .sd-title{font-size:21px;font-weight:800;letter-spacing:-.02em;margin-top:3px;}.shutdown-card .sub{max-width:none;margin-top:4px;}.shutdown-card .sd-countdown{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;margin:10px 0;}.shutdown-card .sd-time{font-size:36px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.02em;color:#f4f3f0;}.shutdown-card .sd-label{font-size:11px;opacity:.55;}.sd-ctrl{display:flex;flex-direction:column;gap:10px;margin-top:14px;}.sd-chips{display:flex;gap:7px;flex-wrap:wrap;}.sd-chip{border:1px solid rgba(244,243,240,.22);background:rgba(244,243,240,.07);color:#f4f3f0;border-radius:6px;padding:6px 13px;font-size:12.5px;font-weight:700;cursor:pointer;transition:background .15s,color .15s,border-color .15s;-webkit-tap-highlight-color:transparent;}.sd-chip:hover{background:rgba(244,243,240,.16);}.sd-chip.active{background:#f4f3f0;color:#232220;border-color:#f4f3f0;}.sd-stop{border:1px solid rgba(244,161,146,.5);background:rgba(244,161,146,.12);color:#ffd9d2;border-radius:6px;padding:8px 14px;font-size:12.5px;font-weight:700;cursor:pointer;transition:all .15s;}.sd-stop:hover{background:rgba(244,161,146,.22);}.sd-status{display:flex;align-items:center;gap:8px;margin-top:14px;font-size:12.5px;opacity:.78;min-height:18px;}.sd-status .sdot{width:6px;height:6px;border-radius:50%;background:#9fc78a;flex:0 0 auto;box-shadow:0 0 8px rgba(159,199,138,.8);}.sd-status .sdot.wait{background:rgba(244,243,240,.35);box-shadow:none;}.sd-status .sd-ts{font-weight:800;font-variant-numeric:tabular-nums;color:#f4f3f0;}.fe-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:18px 28px;margin-bottom:10px;border-radius:var(--radius-sheet);border:1px solid var(--border);box-shadow:var(--shadow-card);background:linear-gradient(140deg,#33322e 0%,#232220 60%,#1c1b19 100%);color:#f4f3f0;}.fe-open{display:flex;align-items:center;gap:7px;border:none;background:#f4f3f0;color:#232220;border-radius:6px;padding:10px 18px;font-size:13.5px;font-weight:800;cursor:pointer;transition:background .15s,transform .1s;}.fe-open:hover{background:#fff;transform:translateY(-1px);}.fe-cred{padding:4px 0;}
/* 工作快登：凭据 card box 打散（去外框/阴影/底色，只保留行） */
.card.fe-cred{
  background:transparent;
  border:none;
  box-shadow:none;
  border-radius:0;
  padding-left:0;
  padding-right:0;
}
/* 与上方 fe-hero 同宽对齐的内容面板（统一 14px 边距，不再左右外扩） */
.fe-cred-align{
  width:100%;
  box-sizing:border-box;
  margin:0 0 10px;
  padding:4px 18px;
  border:1px solid var(--border);
  border-radius:var(--radius-sheet);
  background:var(--surface-card);
  box-shadow:var(--shadow-card);
}
.cred-social-summary-grid > .fe-cred-align{margin-bottom:0}
.fe-row{display:flex;align-items:center;gap:14px;padding:14px 0;margin-bottom:10px;border-bottom:1px solid var(--border);}.fe-row:last-child{border-bottom:none;}.fe-lab{width:88px;flex:0 0 auto;font-size:12.5px;color:var(--text-secondary);font-weight:700;}.fe-val{flex:1;min-width:0;font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis;}.fe-val .pwd-plain{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.03em;}.fe-cp{flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border-input);background:var(--surface-nested);color:var(--text-secondary);border-radius:6px;padding:6px 12px;font-size:12px;font-weight:700;cursor:pointer;transition:all .15s;}.fe-cp:hover{color:var(--text);border-color:var(--accent);}.js-pm-link-verify.is-on,.js-pm-link-verify.is-on:hover{background:var(--module-1)!important;border-color:var(--module-1)!important;color:#fff!important;}.vo-ref-row{display:flex;gap:8px;align-items:center;padding:4px 8px;margin:0 -8px;border-radius:6px;transition:background .15s;}.vo-ref-row:hover{background:color-mix(in srgb,var(--accent) 14%,var(--surface-nested));box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--accent) 30%,transparent)}.fe-cp.on{color:var(--on-accent);background:var(--accent);border-color:var(--accent);}.fe-note{margin-top:14px;font-size:12px;color:var(--text-tertiary);}.fe-actions{display:flex;align-items:center;gap:10px;margin-top:18px;flex-wrap:wrap;}.fe-edit{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--border-input);background:var(--surface-nested);color:var(--text);border-radius:6px;padding:9px 16px;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s;}.fe-edit:hover{border-color:var(--accent);color:var(--text);}.fe-form{padding:22px 24px;}.fe-field{margin-bottom:14px;display:flex;align-items:center;gap:10px;}.fe-field label{flex:0 0 80px;font-size:12px;font-weight:700;color:var(--text-secondary);text-align:right;}.fe-field input{flex:1;box-sizing:border-box;border:1px solid var(--border-input);background:var(--surface-card);border-radius:6px;padding:10px 12px;font-size:13.5px;color:var(--text);transition:border-color .15s;}.fe-field input:focus{outline:none;border-color:var(--accent);}#vo-title:focus{background:var(--surface-nested);outline:1.5px solid var(--accent);outline-offset:3px;border-radius:4px;}#vo-content.vo-editing{outline:4px solid #000 !important;outline-offset:-4px !important}.vo-ph{color:#c8c4bb!important}.vo-table{user-select:text;-webkit-user-select:text;}.vo-drag-handle{display:flex;align-items:center;justify-content:center;color:var(--text-tertiary);cursor:grab;user-select:none;-webkit-user-select:none;padding:0 2px;border-radius:4px;transition:color .12s,background .12s;}.vo-drag-handle:hover{color:var(--accent);background:var(--surface-nested);}.vo-drag-handle:active{cursor:grabbing;}.vo-cell.vo-drag{display:flex;align-items:flex-start;justify-content:center;}.vo-table .vo-row-content{align-items:center;}.vo-table .vo-row:not(.vo-head):hover{background:var(--surface-nested);}.vo-table .vo-cell{cursor:text;user-select:text !important;-webkit-user-select:text !important;text-align:left;}.vo-table .vo-drag{text-align:center;}#vo-tabs{pointer-events:none;}#vo-tabs .opt{pointer-events:auto;}#vo-archive-vers{min-width:max-content;flex-shrink:0;}#vo-archive-vers .vo-share-pick{display:inline-flex !important;align-items:center;justify-content:center;white-space:nowrap;height:27px !important;padding:0 8px !important;font-size:12px;font-weight:700;width:max-content !important;}#vo-archive-vers.vo-vers-dock{align-items:flex-end;max-height:45vh;overflow-y:auto;scrollbar-width:none;}#vo-archive-vers.vo-vers-dock::-webkit-scrollbar{display:none;}#vo-archive-vers .vo-ver-btn.on,#vo-archive-vers .vo-ver-btn.on:hover{background:var(--vo-stage-color,#2e9e5b)!important;color:#fff!important;border-color:var(--vo-stage-color,#2e9e5b)!important}#vo-archive-vers .vo-ver-btn{display:inline-flex !important;flex-direction:row !important;flex-wrap:nowrap !important;align-items:center !important;gap:6px;padding:0 8px !important;font-size:12px;font-weight:700;white-space:nowrap !important;line-height:1;width:max-content !important;max-width:none !important;height:27px !important;box-sizing:border-box !important;}#vo-archive-vers .vo-ver-line{white-space:nowrap;flex:0 0 auto;}#vo-archive-vers .vo-ver-del{flex:0 0 auto;cursor:pointer;font-size:11px;line-height:1;padding:0 2px;color:#fff;border-radius:3px;}#vo-archive-vers .vo-ver-del:hover{color:#c25d4f;background:rgba(194,93,79,.12);}.vo-table .vo-cell[contenteditable]{cursor:text;user-select:text;-webkit-user-select:text;}.vo-table .vo-cell[contenteditable="true"]:focus{background:var(--surface-card);box-shadow:inset 0 0 0 1.5px var(--accent);border-radius:4px;}.focus-list{display:flex;flex-direction:column;gap:9px;}.focus-empty{color:var(--text-secondary);font-size:12.5px;line-height:1.7;padding:6px 0;}.ws-row{display:flex;align-items:center;gap:11px;}.ws-row .ws-ic{width:30px;height:30px;border-radius:6px;display:grid;place-items:center;flex:0 0 auto;background:var(--surface-nested);border:1px solid var(--border);}.ws-row .wt{flex:1;min-width:0;}.ws-row .wt div:first-child{font-size:13.5px;font-weight:700;}.ws-row .wm{font-size:11px;color:var(--text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.ws-row .wc{font-size:12.5px;font-weight:800;color:var(--module-2);flex:0 0 auto;}.habit-tb{width:100%;border-collapse:collapse;}.habit-tb th{font-size:10.5px;font-weight:700;color:var(--text-tertiary);padding:0 0 9px;text-align:center;}.habit-tb th.hh{text-align:left;}.habit-tb th.hr{text-align:right;}.habit-tb td{padding:5px 0;text-align:center;vertical-align:middle;}.habit-tb td.hn{text-align:left;font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:118px;}.habit-tb td.hn .hdot{display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:7px;vertical-align:middle;}.habit-tb td.hrate{text-align:right;font-size:12.5px;font-weight:800;letter-spacing:-.02em;}.hcell{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;color:var(--on-accent);cursor:pointer;transition:transform .12s;}.hcell:hover{transform:scale(1.12);}.hcell.on{background:var(--module-1);}.hcell.off{background:var(--surface-nested);border:1px solid var(--border);}.hcell svg{opacity:0;}.hcell.on svg{opacity:1;}.habit-tb .tdcol{background:var(--accent-muted);}.tk-head{display:flex;align-items:center;gap:10px;margin-bottom:8px;}.tk-head .pct{font-size:22px;font-weight:800;letter-spacing:-.03em;}.tk-head .cnt{font-size:12px;color:var(--text-secondary);font-weight:700;}.tk-head .bar{flex:1;height:6px;border-radius:6px;background:var(--border);overflow:hidden;}.tk-head .bar i{display:block;height:100%;border-radius:6px;background:var(--accent);}.tk-list{display:flex;flex-direction:column;}.tk-row{display:flex;align-items:center;gap:11px;padding:8px 0;border-bottom:1px solid var(--border);}.tk-row:last-child{border-bottom:none;}.tk-chk{flex:0 0 auto;width:20px;height:20px;border-radius:6px;border:1.6px solid var(--border-input);display:grid;place-items:center;cursor:pointer;background:var(--surface-card);color:var(--on-accent);transition:all .15s;}.tk-chk.on{background:var(--module-1);border-color:var(--module-1);}.tk-chk svg{opacity:0;}.tk-chk.on svg{opacity:1;}.tk-name{flex:1;min-width:0;font-size:13.5px;font-weight:600;cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.tk-name.done{text-decoration:line-through;color:var(--text-secondary);}.pomo{position:relative;overflow:hidden;border-radius:var(--radius-card);text-align:center;background:linear-gradient(155deg,#302f2c,#1e1d1b);color:#f4f3f0;padding:22px 20px;box-shadow:var(--shadow-overlay);display:flex;flex-direction:column;}.pomo::before{content:"";position:absolute;width:180px;height:180px;border-radius:50%;left:50%;top:-60px;transform:translateX(-50%);background:radial-gradient(circle,rgba(197,93,79,.28),transparent 70%);}.pomo > *{position:relative;z-index:1;}.pomo .pen{font-size:9.5px;font-weight:800;letter-spacing:.16em;opacity:.55;}.pomo .pzh{font-size:13px;font-weight:800;margin-top:3px;}.pomo .ring-wrap{position:relative;width:150px;height:150px;margin:14px auto 12px;}.pomo .ring-wrap svg{transform:rotate(-90deg);}.pomo .ptime{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;}.pomo .ptime .t{font-size:32px;font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:.01em;}.pomo .ptime .s{font-size:11px;opacity:.6;}.pomo .pctl{display:flex;gap:8px;justify-content:center;margin-bottom:14px;}.pomo .pctl button{border:1px solid rgba(244,243,240,.22);background:rgba(244,243,240,.08);color:#f4f3f0;border-radius:6px;padding:8px 16px;font-size:13px;font-weight:700;cursor:pointer;transition:all .15s;}.pomo .pctl button:hover{background:rgba(244,243,240,.16);}.pomo .pctl button.primary{background:#f4f3f0;color:#232220;border-color:#f4f3f0;}.pomo .pstats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}.pomo .pstats .ps{background:rgba(244,243,240,.06);border-radius:6px;padding:9px 4px;}.pomo .pstats .pv{font-size:18px;font-weight:800;letter-spacing:-.02em;}.pomo .pstats .pl{font-size:10.5px;opacity:.55;margin-top:2px;}.book-list{display:flex;flex-direction:column;gap:12px;}.book-row{display:flex;align-items:center;gap:12px;cursor:pointer;}.book-row .spine{width:34px;height:46px;border-radius:6px;flex:0 0 auto;position:relative;box-shadow:var(--shadow-card);display:grid;place-items:center;color:var(--on-accent);}.book-row .spine::after{content:"";position:absolute;left:4px;top:4px;bottom:4px;width:2px;border-radius:6px;background:rgba(255,255,255,.35);}.book-row .bmid{flex:1;min-width:0;}.book-row .btt{font-size:13.5px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}.book-row .bsub{font-size:11px;color:var(--text-secondary);margin-top:3px;}.book-row .bbar{height:5px;border-radius:6px;background:var(--border);overflow:hidden;margin-top:7px;}.book-row .bbar i{display:block;height:100%;border-radius:6px;}.book-row .bpct{font-size:14px;font-weight:800;letter-spacing:-.02em;flex:0 0 auto;}.spend-sum{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:14px;}.spend-total{font-size:26px;font-weight:800;letter-spacing:-.03em;}.spend-cap{font-size:11.5px;color:var(--text-secondary);}.link-tile-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}.link-tile{position:relative;display:flex;flex-direction:column;padding:16px 16px 12px;border-radius:6px;background:var(--surface-card);border:1px solid var(--border);box-shadow:var(--shadow-card);}.link-tile .fav-wrap{width:40px;height:40px;border-radius:6px;display:grid;place-items:center;background:var(--surface-nested);flex:0 0 auto;overflow:hidden;cursor:pointer;transition:background .15s;}.link-tile .fav-wrap:hover{background:var(--surface-hover);}.link-tile .fav-wrap img{width:24px;height:24px;object-fit:contain;}.link-tile .lt-name{flex:1;min-width:0;font-size:13px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;}.ql-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;}.ql-item{display:flex;flex-direction:column;align-items:center;gap:6px;padding:10px 4px;border-radius:var(--radius-tile);cursor:pointer;transition:background .15s;}.ql-item:hover{background:var(--surface-nested);}.ql-item .ql-name{font-size:11px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%;}.hidden{display:none !important;}.auth-screen{position:fixed;inset:0;z-index:200;display:flex;align-items:center;justify-content:center;background:radial-gradient(58% 42% at 84% 110%,color-mix(in srgb,var(--md-primary) 14%,transparent),transparent 62%),radial-gradient(50% 38% at 12% 104%,color-mix(in srgb,var(--md-tertiary) 12%,transparent),transparent 60%),var(--md-surface-container-low);}.auth-screen[hidden]{display:none;}.auth-icp{position:absolute;bottom:18px;left:0;right:0;text-align:center;font-size:12px;color:rgba(0,0,0,.35);letter-spacing:.02em;pointer-events:none;}.auth-card{position:relative;width:384px;max-width:92vw;background:var(--md-surface);border:1px solid var(--md-outline-variant);border-radius:var(--md-shape-lg);padding:34px 32px 24px;box-shadow:var(--md-elev-3);animation:auth-pop .34s cubic-bezier(.2,.8,.3,1) both;}@keyframes auth-pop{from{transform:translateY(14px) scale(.97);opacity:0;}}.auth-brand{text-align:center;margin-bottom:22px;}.auth-card h1{font-size:21px;font-weight:800;letter-spacing:-.01em;}.auth-field{margin-bottom:14px;}.auth-input{display:flex;align-items:center;gap:10px;height:48px;padding:0 8px 0 13px;border:1px solid var(--md-outline);border-radius:var(--md-shape-sm);background:var(--md-surface);box-sizing:border-box;cursor:text;transition:border-color .15s,box-shadow .15s,background .15s;}.auth-input:hover{border-color:color-mix(in srgb,var(--accent) 22%,var(--border-input));}.auth-input:focus-within{border-color:var(--accent);background:var(--surface-card);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent);}.auth-ico{flex:0 0 auto;width:16px;height:16px;color:var(--text-tertiary);transition:color .15s;pointer-events:none;}.auth-input:focus-within .auth-ico{color:var(--accent);}.auth-input input{flex:1;min-width:0;height:100%;padding:0;border:none;background:transparent;font-size:15px;line-height:44px;color:var(--text);outline:none;font-family:var(--font);caret-color:var(--accent);appearance:none;-webkit-appearance:none;box-shadow:none;}.auth-input input::placeholder{color:var(--text-tertiary);opacity:1;}.auth-input input:-webkit-autofill,.auth-input input:-webkit-autofill:hover,.auth-input input:-webkit-autofill:focus{-webkit-text-fill-color:var(--text);caret-color:var(--accent);box-shadow:0 0 0 1000px var(--surface-card) inset;transition:background-color 99999s ease-out;}.auth-input input::-ms-reveal,.auth-input input::-ms-clear{display:none;}.auth-eye{flex:0 0 auto;display:grid;place-items:center;width:32px;height:32px;padding:0;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:8px;transition:color .15s,background .15s;}.auth-eye:hover{color:var(--text-secondary);background:color-mix(in srgb,var(--text) 6%,transparent);}.auth-eye-slash{opacity:0;transition:opacity .15s;}.auth-eye.on .auth-eye-slash{opacity:1;}.auth-row{display:flex;align-items:center;justify-content:space-between;margin:2px 0 14px;}.auth-remember{display:flex;align-items:center;gap:7px;cursor:pointer;user-select:none;}.auth-remember input{width:15px;height:15px;margin:0;accent-color:var(--accent);cursor:pointer;}.auth-remember span{font-size:12.5px;font-weight:500;color:var(--text-secondary);}.auth-remember:hover span{color:var(--text);}.auth-err{color:var(--danger);font-size:12.5px;min-height:18px;margin:0 0 10px;text-align:center;}.auth-btn{position:relative;width:100%;height:44px;border:none;border-radius:var(--md-shape-sm);background:var(--md-primary);color:var(--md-on-primary);font:var(--md-label-lg);letter-spacing:.06em;cursor:pointer;transition:transform var(--md-dur-short) var(--md-ease-standard),box-shadow var(--md-dur-short) var(--md-ease-standard),opacity var(--md-dur-short) var(--md-ease-standard);box-shadow:var(--md-elev-1);}.auth-btn:hover{transform:translateY(-1px);box-shadow:var(--md-elev-2);}.auth-btn:active{transform:translateY(0) scale(.99);}.auth-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none;}.auth-tip{text-align:center;color:var(--text-tertiary);font-size:11.5px;margin-top:18px;letter-spacing:.02em;}

/* ===== 删除字幕段落弹窗 vo-del-modal（与 .overlay/.modal 体系统一） ===== */
#vo-del-modal .modal{padding:22px 22px 16px;border-radius:12px;width:min(580px,92vw);max-height:min(86vh,720px)}
.vo-del-head{padding-right:36px;margin-bottom:14px}
.vo-del-title{font-size:16px;font-weight:800;color:var(--text-primary);letter-spacing:.1px}
.vo-del-tip{font-size:12.5px;color:var(--text-tertiary);margin-top:6px;line-height:1.65}
.vo-del-list{flex:1;min-height:56px;max-height:min(48vh,420px);overflow-y:auto;border:1px solid var(--border-input);border-radius:10px;padding:6px;background:var(--surface-nested)}
.vo-del-row{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:2px 0;border-radius:8px;border:1px solid transparent;cursor:pointer;transition:background .12s,border-color .12s,box-shadow .12s}
.vo-del-row:hover{background:var(--surface-card);border-color:var(--border-input);box-shadow:0 1px 4px rgba(35,34,32,.06)}
.vo-del-idx{min-width:22px;text-align:right;font-size:12px;font-weight:700;color:var(--text-tertiary);font-variant-numeric:tabular-nums}
.vo-del-tm{flex:0 0 auto;min-width:58px;font-size:12px;color:var(--text-secondary);white-space:nowrap;font-variant-numeric:tabular-nums}
.vo-del-zh{flex:1;min-width:0;font-size:13px;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.vo-del-x{flex:0 0 auto;display:inline-flex;color:var(--danger);opacity:.4;transition:opacity .15s}
.vo-del-row:hover .vo-del-x{opacity:1}
.vo-del-row.vo-del-picked{background:var(--danger-muted);border-color:var(--danger)}
.vo-del-row.vo-del-picked .vo-del-x{opacity:1}
.vo-del-confirm{display:block;margin-top:14px;padding-top:14px;border-top:1px solid var(--border-input)}
.vo-del-actions{display:flex;justify-content:flex-end;align-items:center;gap:8px;flex-wrap:wrap}
.vo-del-danger{background:var(--danger)!important;border-color:transparent!important;color:#fff!important}
.vo-del-danger:hover{background:var(--danger)!important;filter:brightness(1.1);border-color:transparent!important;color:#fff!important}
.vo-del-danger:disabled{opacity:.55;filter:none;cursor:default}
#vo-content.vo-editing{outline:4px solid #000 !important;outline-offset:-4px !important}
#vo-edit-fab{position:fixed;right:8px;bottom:8px;left:auto;z-index:70;box-shadow:0 8px 28px rgba(35,34,32,.18)}
body.vo-playing #vo-edit-fab{bottom:52px}
/* 「分享指定本/回收站」固定右下角操作组（堆在编辑 FAB 上方，不占版本 dock 位） */
#vo-fab-actions{position:fixed;right:8px;bottom:52px;left:auto;z-index:70;display:none;flex-direction:column;gap:8px;align-items:flex-end}
#vo-fab-actions .fe-cp{box-shadow:0 8px 28px rgba(35,34,32,.18)}
body.vo-playing #vo-fab-actions{bottom:96px}
#vo-page-progress{display:none;position:fixed;left:0;right:0;bottom:0;z-index:90;background:#161513;color:#f4f3f0;padding:7px 18px 11px;box-shadow:0 -6px 24px rgba(0,0,0,.28)}
#vo-page-progress.vo-pp-on{display:block}
.vo-pp-inner{display:flex;align-items:center;gap:14px;max-width:100%}
#vo-pp-cur,#vo-pp-dur{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:4.4em}
#vo-pp-dur{text-align:right;color:rgba(244,243,240,.72)}
.vo-pp-track{flex:1;height:8px;background:rgba(255,255,255,.18);border-radius:6px;cursor:pointer;position:relative;overflow:hidden}
.vo-pp-fill{height:100%;width:0;background:#2e9e5b;border-radius:6px;pointer-events:none}
.vo-ref-row a{transition:color .15s}
.vo-ref-row:hover a,.vo-ref-row a:hover{color:var(--accent)!important}
/* SEO管理（#seo-manage）：类目分类交互与窄屏堆叠 */
.seo-cat{border-radius:0;align-items:flex-start !important}
.seo-cat:hover{background:var(--surface-nested);border-radius:0}
.seo-cat.on{background:rgba(22,119,255,0.10);box-shadow:inset 3px 0 0 var(--md-primary,#1677ff);border-radius:0}
#seo-pane-host{min-width:0}
#seo-pane-host > [data-seo-pane]{display:none !important}
#seo-pane-host[data-pane="field"] > [data-seo-pane="field"],
#seo-pane-host[data-pane="model"] > [data-seo-pane="model"],
#seo-pane-host[data-pane="mfn"] > [data-seo-pane="mfn"],
#seo-pane-host[data-pane="mcat"] > [data-seo-pane="mcat"]{display:block !important}
.seo-model-jumps{display:flex;align-items:center;gap:2px;margin:4px 8px 6px;padding:3px;background:#fff;border:1px solid #e0ded6;border-radius:8px;box-sizing:border-box;min-height:35px}
.seo-model-jumps.seo-model-jumps--narrow{width:66.666%;max-width:66.666%;margin-left:0;margin-right:0}
.cred-tabs-row{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}
.cred-tabs-row > .seo-model-jumps{margin:0;width:66.666%;max-width:66.666%;flex:none;min-width:0}
.cred-tabs-row > .seo-model-jump.cred-tab-all{flex:none;display:inline-flex;align-items:center;height:35px;padding:0 16px;margin-left:auto;border:1px solid #e0ded6;border-radius:8px;background:#fff;box-sizing:border-box;color:#8f8a80;font-size:12.5px;font-weight:600;line-height:1}
.cred-tabs-row > .seo-model-jump.cred-tab-all:hover{background:#f3f2ee;color:#232220;border-color:#d4d1c8}
.cred-tabs-row > .seo-model-jump.cred-tab-all.on,.cred-tabs-row > .seo-model-jump.cred-tab-all.on:hover{background:var(--md-primary,#1677ff);color:#fff;border-color:var(--md-primary,#1677ff);font-weight:700}
.cred-social-summary{margin:0;padding:0;border:none;background:transparent;box-sizing:border-box}
.cred-social-block{margin-top:14px}
/* 四段间距统一 14px：顶栏→芯片行 14（.main 上内边距 6 + margin 8）、芯片行→hero 14（33→31 与 hero 的 -17 折叠）、hero→凭据卡 14 */
.cred-above-hero{margin:8px 0 31px}
/* fe-hero → 凭据卡 间距 14；margin-top 负值 = hero 与凭据卡整组上移量（-17 与芯片行下边距 31 折叠 = 14） */
.fe-cred-slot > .fe-hero{margin:-17px 0 14px !important;width:100% !important;box-sizing:border-box}
.cred-above-hero > .seo-model-jumps{margin:0;width:66.666%;max-width:66.666%}
/* 社交栏与下方 fe-hero 左对齐（统一 14px 边距，不再外扩） */
.cred-social-tabs-row{margin:0 0 31px}
.cred-social-tabs-row > .seo-model-jumps{margin:0;width:66.666%;max-width:66.666%;flex:none;min-width:0}
.cred-social-summary-hd{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.cred-social-summary-hd .cred-tab-all{display:inline-flex;align-items:center;height:35px;padding:0 16px;border:1px solid #e0ded6;border-radius:8px;background:#fff;color:#8f8a80;font-size:12.5px;font-weight:600;line-height:1;box-sizing:border-box;cursor:default;pointer-events:none}
.cred-social-summary-hd .cred-tab-all.on{background:var(--md-primary,#1677ff);color:#fff;border-color:var(--md-primary,#1677ff);font-weight:700}
.cred-social-summary-grid{display:grid;grid-template-columns:1fr;gap:12px}
.cred-social-summary-grid > .fe-cred-align > .card.fe-cred,
.cred-social-summary-grid > .card.fe-cred{cursor:default}
.link-tile{cursor:grab}
.link-tile.dragging{opacity:.55;cursor:grabbing;box-shadow:0 8px 20px rgba(0,0,0,.12);z-index:2;transform:none}
.link-tile.drag-over{outline:2px dashed var(--accent);outline-offset:-2px}
.link-tile-grid.drag-over-empty{outline:2px dashed var(--accent);outline-offset:4px;min-height:48px;border-radius:8px}
.modal{position:relative}
.modal-corner-del{position:absolute;top:12px;right:12px;z-index:2;padding:4px 10px;font-size:12px}
.modal:has(.modal-corner-del) h3{padding-right:72px}
.fe-cred-slot[data-cred-slot="b"] > .seo-model-jumps,
.fe-cred-slot[data-cred-slot="b"] > .fe-hero,
.fe-cred-slot[data-cred-slot="b"] > .card.fe-cred{display:none !important}
html.share-page,html.share-page body{height:auto !important;max-height:none !important;overflow:auto !important}
html.share-page .layout{height:auto !important;max-height:none !important;overflow:visible !important}
html.share-page .main{height:auto !important;max-height:none !important}
html.share-page .main.seo-lock{height:100dvh !important;max-height:100dvh !important;overflow:hidden !important}
html.share-page .seo-screen{height:calc(100dvh - 24px - 40px);max-height:calc(100dvh - 24px - 40px)}
/* 分享页是手机端主要阅读面：解除工作台 1000px 桌面下限，配合报告内 .wr-scroll 让表格自己横向滚动 */
html.share-page,html.share-page body,html.share-page .layout,html.share-page .main{min-width:0 !important}
@media(max-width:640px){html.share-page #share-ro-tip{font-size:11.5px;padding:6px 10px}}
#share-ro-tip{display:flex;align-items:center;gap:6px;margin:0 0 10px;padding:7px 12px;border:1px solid #f0c36d;background:#fff7e6;border-radius:6px;font-size:12px;color:#8a6d1a}
.seo-model-jump{flex:1 1 0;display:flex;align-items:center;justify-content:center;min-width:0;padding:6px 4px;border-radius:6px;cursor:pointer;font-size:12.5px;font-weight:600;color:#8f8a80;user-select:none;white-space:nowrap}
.seo-model-jump:hover{background:#f3f2ee;color:#232220}
.seo-model-jump.on,.seo-model-jump.on:hover{background:var(--md-primary,#1677ff);color:#fff;font-weight:700}
/* 统一分段导航：WP 站点/返回按钮、AI 指令分类、pr-sites、seo-view-tabs、arch-sites 均引用 .seo-model-jumps 组件样式。
   这里只补齐旧类（.wp-site-flat / .link-chips / .seg）的宽度、间距与选择器权重差异。 */
#wp-site-tabs,#ai-poster-chips,#pr-sites,#seo-view-tabs,#seo-headkw-tabs,#arch-sites{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;align-items:center;width:fit-content;max-width:100%;flex:none;gap:2px;padding:3px;border:1px solid var(--border,#e0ded6);border-radius:8px;background:var(--surface-card,#fff);box-sizing:border-box}
#wp-site-tabs,#pr-sites,#seo-view-tabs,#arch-sites{margin:0}
#wp-site-tabs > .seo-model-jump,
#ai-poster-chips > .seo-model-jump,
#pr-sites > .seo-model-jump,
#seo-view-tabs > .seo-model-jump,
#seo-headkw-tabs > .seo-model-jump,
#arch-sites > .seo-model-jump{border:0;margin:0;padding:6px 12px;border-radius:6px;background:transparent;font:inherit;font-size:12.5px;font-weight:600;line-height:1.4;color:var(--text-secondary);height:auto;box-sizing:border-box}
#wp-site-tabs > .seo-model-jump:hover,
#ai-poster-chips > .seo-model-jump:hover,
#pr-sites > .seo-model-jump:hover,
#seo-view-tabs > .seo-model-jump:hover,
#seo-headkw-tabs > .seo-model-jump:hover,
#arch-sites > .seo-model-jump:hover{background:var(--accent-muted,#f3f2ee);color:var(--text,#232220)}
#wp-site-tabs > .seo-model-jump.on,
#ai-poster-chips > .seo-model-jump.on,
#pr-sites > .seo-model-jump.on,
#seo-view-tabs > .seo-model-jump.on,
#seo-headkw-tabs > .seo-model-jump.on,
#arch-sites > .seo-model-jump.on{background:var(--md-primary,#1677ff);color:#fff;font-weight:700;border-color:transparent}
.seo-mfn{display:flex;flex-direction:column;gap:8px}
.seo-mfn-pair{display:inline-flex;align-items:stretch;gap:0}
.seo-mfn-fn{display:inline-flex;align-items:center;gap:6px;padding:3px 8px;border:1px solid var(--border-input);background:var(--surface-card);color:var(--text);cursor:pointer;font:inherit;border-radius:0;font-size:12px;font-weight:650;line-height:1.3}
.seo-mfn-pair .seo-mfn-fn + .seo-mfn-fn{border-left:0}
.seo-mfn-fn-meta{font-size:11px;font-weight:500;color:var(--text-tertiary)}
.seo-mfn-fn:hover{border-color:var(--accent);color:var(--module-2)}
.seo-mfn-fn-meta:hover{color:var(--accent)}
.seo-mfn-pair.on .seo-mfn-fn{border-color:var(--accent);background:var(--accent-muted);color:var(--accent)}
.seo-mfn-pair.on .seo-mfn-fn-meta{border-color:var(--accent);color:var(--accent)}
.seo-mcat-scenes{display:none}
.seo-mcat-card{display:flex;align-items:flex-start;gap:12px;padding:16px 18px;box-sizing:border-box}
.seo-mcat-main{flex:1;min-width:0;display:flex;flex-direction:column;align-items:stretch;gap:12px}
.seo-mcat-scenes-row{display:flex;align-items:flex-start;gap:10px;width:100%;box-sizing:border-box}
.seo-mcat-scenes-lab{flex:0 0 auto;margin-left:auto;font-size:12px;color:var(--text-secondary);line-height:1.3;white-space:nowrap;align-self:center;display:inline-flex;align-items:center;padding:3px 0}
.seo-mcat-scenes-del{flex:0 0 auto;margin-left:auto;align-self:flex-start;padding:3px 10px;font-size:12px;line-height:1.3;border:1px solid var(--border-input);border-radius:4px;background:var(--surface-nested);color:var(--danger);cursor:pointer;user-select:none;white-space:nowrap}
.seo-mcat-scenes-del:hover{border-color:var(--danger);background:var(--danger-muted)}
.seo-mfn-fns{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-start;flex:1;min-width:0;box-sizing:border-box}
.seo-mcat-title-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}
.seo-mcat-code{font-size:15px;font-weight:700;line-height:1.3}
.seo-mcat-site-tabs{display:inline-flex;gap:4px;align-items:center}
.seo-mcat-site-tabs .opt{padding:3px 10px;font-size:12px;line-height:1.3;border:1px solid var(--border-input);border-radius:4px;background:var(--surface-nested);color:var(--text-secondary);cursor:pointer;user-select:none}
.seo-mcat-site-tabs .opt:hover{border-color:var(--accent);color:var(--accent)}
.seo-mcat-site-tabs .opt.on{background:var(--accent-muted);border-color:var(--accent);color:var(--accent);font-weight:700}
.seo-mcat-site-pane{min-height:0;margin-top:8px}
.seo-mcat-site-pane[hidden]{display:none!important}
.seo-mcat-site-pane .seo-mcat-links{margin-top:0}
.seo-match-models{display:flex;flex-direction:column;align-items:flex-start;gap:6px;min-width:0;width:100%;margin-top:8px}
.seo-match-lab{font-size:11.5px;font-weight:400;color:var(--text-tertiary);line-height:1.3;margin-left:auto;flex:none;white-space:nowrap}
.seo-match-codes{display:flex;flex-wrap:wrap;gap:6px;align-items:center;justify-content:flex-start;min-width:0;width:100%}
.seo-match-code{display:inline-flex;align-items:center;gap:0;flex:0 0 auto;max-width:100%;padding:0;border:1px solid var(--border-input);border-radius:4px;background:var(--surface-nested);color:var(--text);font-size:11.5px;font-weight:650;line-height:1.35;box-sizing:border-box;isolation:isolate;position:relative;z-index:0}
.seo-match-code:hover{border-color:var(--accent);background:var(--accent-muted);z-index:1}
.seo-match-code-go{border:0;background:transparent;color:inherit;font:inherit;font-weight:650;padding:3px 4px 3px 8px;cursor:pointer;line-height:1.35;white-space:nowrap}
.seo-match-code-go:hover{color:var(--accent)}
.seo-match-code.on{border-color:var(--accent);background:var(--accent-muted);z-index:1}
.seo-match-code.on .seo-match-code-go{color:var(--accent)}
.seo-match-hint{font-size:11px;color:var(--text-tertiary);margin-top:6px;line-height:1.4}
.seo-match-x{border:0;background:transparent;color:var(--text-tertiary);font-size:12px;font-weight:700;line-height:1;padding:3px 7px 3px 2px;cursor:pointer;opacity:.55;flex:none}
.seo-match-x:hover{color:var(--danger);opacity:1}
.seo-match-code.is-pending{opacity:.42;filter:grayscale(1);border-style:dashed;background:var(--surface-nested);color:var(--text-tertiary)}
.seo-match-code.is-pending:hover{opacity:.62;border-color:var(--border-input);background:var(--surface-nested)}
.seo-match-code.is-pending .seo-match-code-go{cursor:pointer;padding:2px 8px;color:inherit}
.seo-match-empty{font-size:11.5px;color:var(--text-tertiary)}
.seo-editor-title-row{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;min-width:0;width:100%}
.seo-editor-en{font-size:15px;font-weight:700;line-height:1.3}
.seo-editor-zh{font-size:11.5px;font-weight:400;color:var(--text-tertiary);line-height:1.3}
.seo-cols > .card:first-child{display:flex;flex-direction:column;width:300px;min-width:300px;max-width:300px;box-sizing:border-box;max-height:calc(100vh + 82px);overflow:hidden;position:sticky;top:8px;align-self:start;flex:0 0 300px}
#seo-cat-list{flex:1 1 auto;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.28) transparent}
#seo-cat-list::-webkit-scrollbar{width:3px}
#seo-cat-list::-webkit-scrollbar-track{background:transparent}
#seo-cat-list::-webkit-scrollbar-thumb{background:rgba(0,0,0,.28);border-radius:3px}
#seo-cat-list::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.42)}
.seo-model-search-host{padding:8px 9px 6px;box-sizing:border-box;border-bottom:1px solid var(--border);flex:none}
.seo-model-search-host[hidden]{display:none!important}
.seo-model-search-host input{width:100%;box-sizing:border-box;padding:7px 10px;border:1px solid var(--border-input);border-radius:6px;background:var(--surface-nested);color:var(--text);font:inherit;font-size:12.5px}
.seo-cat:focus-visible{outline:2px solid var(--md-primary,#1677ff);outline-offset:-2px}
.seo-cat.on{background:rgba(22,119,255,0.10);box-shadow:inset 3px 0 0 var(--md-primary,#1677ff)}
.seo-cat b{color:var(--text)}
.seo-cat.on b{color:var(--module-2)}
.seo-cat-zh{color:var(--text-tertiary)}
.seo-cat.on .seo-cat-zh{color:var(--module-2)}
.seo-cat > span:first-child{width:6px;height:6px;border-radius:50%;flex:none;background:var(--border-input);transition:background .15s,box-shadow .15s;margin-top:6.5px}
.seo-cat.on > span:first-child{background:var(--accent);box-shadow:none}
.seo-model-series{display:flex;flex-wrap:wrap;gap:4px;padding:0 9px 8px;position:sticky;top:0;background:var(--surface-card);z-index:1}
#seo-model-series-wrap{margin-left:2px}
.seo-model-series .opt{flex:0 0 auto;padding:3px 7px;font-size:11px;line-height:1.3;border:1px solid var(--border-input);border-radius:4px;background:var(--surface-nested);color:var(--text-secondary);cursor:pointer;user-select:none}
.seo-model-series .opt:hover{border-color:var(--accent);color:var(--accent)}
.seo-model-series .opt.on{background:var(--accent-muted);border-color:var(--accent);color:var(--accent);font-weight:700}
.seo-pool-block{display:flex;flex-direction:row;align-items:center;gap:12px;width:100%;box-sizing:border-box}
.seo-pool-block > b{font-size:13px;flex:1 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seo-pool-block > input{flex:0 1 320px;width:320px;max-width:48%;min-width:160px;margin-left:auto;box-sizing:border-box;padding:8px 10px;border:1px solid var(--border-input);border-radius:6px;background:var(--surface-card);color:var(--text);font:inherit;font-size:12.5px}
.seo-pool-tabs{display:flex;flex-wrap:nowrap;gap:6px;margin-bottom:12px;width:100%;box-sizing:border-box}
.seo-pool-tabs .opt{flex:1 1 0;min-width:0;padding:6px 8px;font-size:12px;border:1px solid var(--border-input);border-radius:6px;background:var(--surface-nested);color:var(--text-secondary);cursor:pointer;user-select:none;line-height:1.2;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seo-pool-tabs .opt:hover{border-color:var(--accent);color:var(--accent)}
.seo-pool-tabs .opt.on{background:var(--accent-muted);border-color:var(--accent);color:var(--accent);font-weight:600}
@media (max-width:1100px){
  .seo-pool-tabs{flex-wrap:wrap}
  .seo-pool-tabs .opt{flex:1 1 calc(33.333% - 6px);min-width:120px}
}
@media (max-width:720px){
  .seo-pool-tabs .opt{flex:1 1 calc(50% - 6px);font-size:11.5px;padding:6px 6px}
}
.wp-back-btn{flex:none;margin-right:2px;align-self:center;height:32px;min-height:32px;box-sizing:border-box;display:inline-flex;align-items:center;padding:0 12px;line-height:1}
.wp-back-btn[hidden]{display:none !important}
/* 文章存档返回：与 #arch-sites .opt（workpress）同款高度/边框/字号 */
.arch-back-opt{flex:0 0 auto;align-self:center;height:32px;min-height:32px;box-sizing:border-box;display:inline-flex;align-items:center;justify-content:center;padding:6px 16px;margin:0;border:1px solid var(--border-input);border-radius:6px;background:var(--surface-card);color:var(--text-secondary);font:inherit;font-size:12.5px;font-weight:600;line-height:1;cursor:pointer;transition:all .12s;user-select:none}
.arch-back-opt:hover{border-color:var(--accent);color:var(--accent)}
.arch-back-opt[hidden]{display:none !important}
.seo-mcat-empty{font-size:12px;color:var(--text-tertiary)}
.seo-pool-panel[hidden]{display:none!important}
.seo-model-card{position:relative;margin-left:0;margin-right:0;width:100%;box-sizing:border-box}
.seo-model-list{display:flex;flex-direction:column;align-items:stretch;gap:12px;width:100%}
.seo-model-code{display:inline-flex;align-items:center;padding:0;border:0;border-radius:0;background:transparent;color:var(--text);font-size:14.5px;font-weight:700;line-height:1.35;letter-spacing:.2px;box-shadow:none;flex:none}
.seo-model-body{display:flex;align-items:flex-start;gap:14px;width:100%}
.seo-model-media{flex:none;width:160px;aspect-ratio:1;background:var(--surface-nested);border:1px solid var(--border-input,#d0d0d0);border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;box-sizing:border-box;position:relative;cursor:pointer}
.seo-model-media img{width:100%;height:100%;object-fit:cover;display:block;position:relative;z-index:1}
.seo-model-media-add{position:absolute;inset:0;z-index:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;border:0;padding:0;margin:0;background:transparent;color:var(--text-tertiary);cursor:pointer;font:inherit;pointer-events:none}
.seo-model-media-add span{font-size:11px;font-weight:600;line-height:1.2}
.seo-model-media:not(.has-img) .seo-model-media-add{z-index:2;color:var(--text-secondary)}
.seo-model-media.has-img:hover .seo-model-media-add{z-index:2;background:rgba(0,0,0,.35);color:#fff}
.seo-model-side{flex:1;min-width:0;display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding-top:0}
.seo-model-zh-row{display:flex;align-items:baseline;gap:8px;min-width:0;flex-wrap:wrap}
.seo-model-zh{font-size:13.5px;color:var(--text-secondary);letter-spacing:.3px;font-weight:700;text-align:left;line-height:1.35}
.seo-model-tpl{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border:1px solid var(--border-input);border-radius:6px;background:var(--surface-nested);color:var(--text);font-size:12.5px;font-weight:600;text-decoration:none;cursor:pointer;transition:border-color .15s,color .15s,background .15s}
button.seo-model-tpl{font:inherit;appearance:none;-webkit-appearance:none}
.seo-model-tpl:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}
.seo-model-tpl-lab{outline:none;cursor:text;min-width:2em;border-radius:3px;padding:0 2px}
.seo-model-tpl-lab:focus{background:var(--surface-card);box-shadow:0 0 0 2px var(--accent-muted)}
.seo-model-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex-wrap:wrap}
.seo-model-head > b{font-size:13px;margin:0;flex:1;min-width:120px}
.seo-model-empty{padding:28px 16px;text-align:center;color:var(--text-tertiary);font-size:13px;border:1px dashed var(--border-input);border-radius:8px;width:100%;box-sizing:border-box}
.seo-model-card.managing{cursor:default}
.seo-model-card.managing .seo-model-media{cursor:pointer;position:relative}
.seo-model-card.managing .seo-model-media::after{display:none}
.seo-model-top-btns{position:absolute;top:8px;right:8px;z-index:2;display:flex;gap:6px;align-items:center}
.seo-model-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}
.seo-model-actions .fe-cp{font-size:12px}
#sm-x.modal-x{box-shadow:none!important;filter:none!important}
.sm-img-box{display:flex;align-items:flex-start;gap:12px}
.sm-img-slot{position:relative;width:96px;height:96px;flex:none}
.sm-img-slot [hidden]{display:none!important}
.sm-img-slot button.sm-img-prev.empty{position:absolute;inset:0}
.seo-mcat-file{position:absolute;inset:0;width:100%;height:100%;opacity:0;cursor:pointer;z-index:3;font-size:0;border:0;padding:0;margin:0}
.seo-mcat-head{display:flex;align-items:flex-start;gap:14px}
.seo-mcat-head .sm-img-slot,.seo-mcat-head .sm-img-prev,.seo-mcat-head button.sm-img-prev.empty{width:112px;height:112px}
.seo-mcat-pages{display:flex;flex-direction:column;gap:8px;margin-top:12px;width:100%;box-sizing:border-box}
.seo-mcat-page{position:relative;display:flex;align-items:stretch;gap:10px;padding:20px 10px 8px;border:1px solid var(--border-input);border-radius:8px;background:var(--surface-nested);box-sizing:border-box;min-width:0;overflow:hidden}
.seo-mcat-page .wp-tpl-badge{position:absolute;top:0;left:0;z-index:2;font-size:10px;font-weight:700;padding:2px 7px;border-radius:0 0 6px 0}
.seo-mcat-page-cover{flex:none;width:56px;height:56px;border-radius:6px;border:1px dashed var(--border-input);background:var(--surface-card);overflow:hidden;display:flex;align-items:center;justify-content:center;color:var(--text-tertiary)}
.seo-mcat-page-cover.has-img{cursor:zoom-in}
.seo-mcat-page-cover img{width:100%;height:100%;object-fit:cover;display:block;pointer-events:none}
.seo-mcat-page-meta{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;justify-content:center}
.seo-mcat-page-en{font-size:12px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.seo-mcat-page-en:hover{color:var(--accent);text-decoration:underline}
.seo-mcat-page-en.has-link{color:var(--accent)}
.seo-mcat-page-zh{font-size:11.5px;font-weight:600;color:var(--text);opacity:.82;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.seo-mcat-lite{position:fixed;inset:0;z-index:12000;background:rgba(0,0,0,.78);display:flex;align-items:center;justify-content:center;padding:24px;cursor:zoom-out}
.seo-mcat-lite img{max-width:min(1100px,94vw);max-height:88vh;object-fit:contain;border-radius:6px;box-shadow:0 12px 40px rgba(0,0,0,.5);background:#111;cursor:zoom-out}
.seo-mcat-page-empty{font-size:12px;color:var(--text-tertiary);padding:4px 0}
.seo-editor-scenes-row{margin:10px 0 4px;padding-top:8px;border-top:1px dashed var(--border)}
.seo-mcat-spec{margin-top:14px;padding:12px 14px;border:1px solid var(--border-input);border-radius:10px;background:linear-gradient(180deg,var(--surface-nested),var(--surface-card));box-sizing:border-box;box-shadow:0 1px 0 rgba(0,0,0,.03)}
.seo-mcat-spec-lab{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:700;color:var(--text-secondary);margin-bottom:10px;letter-spacing:.02em}
.seo-mcat-spec-lab .seo-mcat-spec-code{display:inline-flex;align-items:center;padding:1px 7px;border-radius:999px;font-size:11px;font-weight:700;background:var(--accent-muted);color:var(--accent);border:1px solid color-mix(in srgb,var(--accent) 28%,transparent)}
.seo-mcat-spec-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
.seo-mcat-spec-item{display:flex;flex-direction:column;gap:2px;min-width:0;padding:8px 10px;border-radius:8px;background:var(--surface-card);border:1px solid color-mix(in srgb,var(--border-input) 70%,transparent);box-sizing:border-box}
.seo-mcat-spec-item .k{font-size:10.5px;font-weight:600;color:var(--text-tertiary);letter-spacing:.04em;text-transform:none;white-space:nowrap}
.seo-mcat-spec-item .v{font-size:12.5px;font-weight:650;color:var(--text);line-height:1.4;word-break:break-word}
.seo-mcat-spec-item .seo-mcat-spec-inp{width:100%;box-sizing:border-box;margin:0;padding:7px 0 0;border:0;border-bottom:1px dashed var(--border-input);background:transparent;color:var(--text);font:inherit;font-size:12.5px;font-weight:650;line-height:1.4;outline:none;min-height:25px}
.seo-mcat-spec-item .seo-mcat-spec-inp:focus{border-bottom-color:var(--accent)}
.seo-mcat-spec-item .seo-mcat-spec-inp::placeholder{color:var(--text-tertiary);font-weight:500}
.seo-mcat-spec-actions{display:flex;align-items:center;gap:8px;margin-left:auto}
.seo-mcat-spec-empty{display:none}
.sm-img-slot{position:relative}
.sm-img-del{position:absolute;right:4px;bottom:4px;z-index:5;width:24px;height:24px;padding:0;border:0;border-radius:6px;background:rgba(0,0,0,.55);color:#fff;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .15s}
.sm-img-slot:hover .sm-img-del:not([hidden]){opacity:1;pointer-events:auto}
.sm-img-del:hover{background:var(--danger,#e5484d)}
.sm-img-del[hidden]{display:none!important}
.fe-cp.te-ctype.on{background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important}
.wp-tabbar #wp-field-snap,.wp-tabbar #wp-seo-open,.wp-tabbar #wp-dedupe-snap{margin-left:0}
.seo-mcat-copy{flex:1;min-width:0;margin-left:15px}
.seo-mcat-links{display:flex;flex-direction:column;gap:4px;margin-top:8px}
.seo-mcat-link{display:flex;align-items:flex-start;gap:6px;font-size:12px;line-height:1.45;color:var(--text-secondary);text-decoration:none}
.seo-mcat-link svg{flex:0 0 auto;color:var(--text-secondary);margin-top:1px}
.seo-mcat-link:hover{color:var(--accent)}
.seo-mcat-link:hover svg{color:var(--accent)}
.seo-mcat-link>span{flex:1;min-width:0;word-break:break-word}
.seo-mcat-link-empty{font-size:12px;color:var(--text-tertiary);margin-top:6px}
.sm-img-prev{width:96px;height:96px;aspect-ratio:1/1;border-radius:8px;object-fit:cover;background:var(--surface-nested);border:1px solid var(--border-input);box-sizing:border-box;display:block}
button.sm-img-prev.empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:12px;font-weight:600;color:var(--text-secondary);cursor:pointer;padding:0;font:inherit;line-height:1.2}
button.sm-img-prev.empty:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}
.sm-img-meta{flex:1;min-width:0;font-size:11.5px;color:var(--text-tertiary);line-height:1.45;padding-top:4px}
.seo-kw-tag{display:inline-flex;align-items:center;gap:4px;padding:3px 9px;border-radius:6px;border:1px solid var(--border-input);background:var(--surface-nested);color:var(--text);font-size:12px;cursor:pointer;user-select:none}
.seo-kw-tag:hover{border-color:var(--accent);color:var(--accent)}
.seo-kw-tag .x{opacity:.45;font-size:11px;margin-left:2px}
.seo-kw-tag .x:hover{opacity:1;color:var(--danger)}
.seo-cols{grid-template-columns:300px minmax(0,1fr) !important}
/* 切到词类 tab 时左栏隐藏，grid 自动收为单列，让内容区占满全宽（修复右侧内容"消失"） */
.seo-cols:has(> .card > #seo-model-search-host[hidden]){grid-template-columns:minmax(0,1fr) !important}
/* SEO 管理：顶栏/Tab 固定，内容区跟随整页滚动（不再用内层滚动容器，避免右侧滚动条） */
.main:has(.seo-screen),.main.seo-lock{overflow-y:auto;overflow-x:hidden}
/* 媒体窗口：main 全幅铺开，内置浏览器只呈现 ecer .file-manage */
.main.ecer-lock{padding:52px 0 0 !important;overflow:hidden !important}
.main.ecer-lock #screen{height:calc(100dvh - 52px);max-height:calc(100dvh - 52px);min-height:0;box-sizing:border-box}
.ecer-shell{display:flex;flex-direction:column;height:100%;min-height:0;gap:0}
.ecer-toolbar{display:flex;align-items:center;gap:10px;padding:8px 14px;flex:none;border:none;background:transparent;box-shadow:none;border-radius:0}
.ecer-css-panel{flex:none;padding:10px 14px;border:none;border-bottom:1px solid var(--border-input);background:var(--surface-nested)}
.ecer-frame{flex:1 1 auto;min-height:0;width:100%;border:none;border-radius:0;background:#fff}
.seo-screen{display:flex;flex-direction:column;min-height:0;box-sizing:border-box}
.seo-screen > .wp-tabbar{flex:0 0 auto;margin:0 0 10px;position:relative;z-index:4;background:var(--page-bg);padding-top:2px}
.seo-screen > .wp-tabbar > *{align-self:center}
.seo-screen > .wp-tabbar.seo-view-bar{gap:5px}
.seo-screen > .wp-tabbar #seo-headkw-tabs{margin-left:auto;flex:1 1 auto;min-width:0;max-width:66.6667%}
.seo-mcat-scenes-row > .seo-copy-btn{margin-left:auto}
.seo-mcat-scenes-row > .seo-copy-btn + .seo-mcat-scenes-del{margin-left:0}
/* 头部词行业分组 chips：去掉 A~E 前缀；hover 与 tab hover 一致 */
.seo-hg-chip{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:11.5px;font-weight:600;cursor:pointer;background:var(--surface-card);color:var(--text-secondary);border:1px solid var(--border-light);user-select:none;transition:background .15s,color .15s,border-color .15s}
.seo-hg-chip:hover{background:var(--accent-muted,#f3f2ee);color:var(--text,#232220)}
.seo-hg-chip.on{background:var(--md-primary,#1677ff);color:#fff;border-color:var(--md-primary,#1677ff)}
.seo-headkw-doc{padding:2px 2px 10px}
.seo-headkw-doc-head{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.seo-headkw-doc-head b{font-size:15px;color:var(--text)}
.seo-headkw-doc-head span{font-size:12px;color:var(--text-secondary)}
.seo-headkw-table{width:100%;border-collapse:separate;border-spacing:0;font-size:12.5px;background:var(--surface-card);border:1px solid var(--border-input,#e0ded6);border-radius:8px;overflow:hidden}
.seo-headkw-table thead th{background:var(--surface-subtle,#f8fafc);color:var(--text);font-size:12px;font-weight:700;text-align:left;padding:9px 12px;border-right:1px solid var(--border,#e6e4dc);border-bottom:1px solid var(--border-input,#e0ded6);white-space:nowrap}
.seo-headkw-table thead th:last-child{border-right:none}
.seo-headkw-table tbody td{padding:8px 12px;border-right:1px solid var(--border,#e6e4dc);border-bottom:1px solid var(--border,#e6e4dc);color:var(--text);line-height:1.5;vertical-align:middle}
.seo-headkw-table tbody td:last-child{border-right:none}
.seo-headkw-table tbody tr:last-child td{border-bottom:none}
.seo-headkw-table tbody tr:nth-child(even) td{background:var(--surface-subtle,#f8fafc)}
.seo-headkw-table tbody tr:hover td{background:var(--accent-muted,#f3f2ee)}
.seo-headkw-table tbody td:first-child{font-weight:600;color:var(--text)}
/* 属性词表：与采购词表同款，宽度收窄至 2/3 */
.seo-headkw-table.seo-attr-table{width:66.6667%}
.seo-screen > .seo-cols{flex:1 1 auto;min-height:0;overflow:visible;align-items:stretch !important}
.seo-screen .seo-cols > .card:first-child{position:relative;top:auto;max-height:none;height:100%;align-self:stretch;overflow:visible}
/* 内容区不再内层滚动：去掉右侧滚动条，跟随整页向下滚动 */
.seo-screen #seo-pane-host{min-height:0;height:auto;overflow:visible}
.seo-screen #seo-pane-host > [data-seo-pane]{min-height:min-content}



:root,html.vo-page,html[data-ui-lib],html.is-embed{--md-nav-width:215px;--sidebar-w:215px}
/* 侧栏右侧留白偏大：收紧 nav / 分组 / 子项右内边距，让「自研区」等贴近侧栏右边 */
.nav{padding-left:8px;padding-right:4px}
.nav-group{padding-left:10px;padding-right:6px}
.navi{padding-left:12px;padding-right:6px}
.nav-children .navi{padding-left:28px;padding-right:6px}


/* 页头：标题 + 统计 + 搜索/操作合并为一行（替代独立 hero 行，节省一整行纵向空间） */
.links-head{flex-wrap:wrap;gap:var(--gap-block) var(--sp-6);margin-bottom:var(--sp-2)}
.links-head h2{margin:0}
.lh-left{display:flex;align-items:center;gap:var(--gap-block);min-width:0}
.lh-count{font-size:var(--fs-sm);font-weight:600;color:var(--text-secondary);background:var(--surface-nested);border-radius:var(--md-shape-full);padding:var(--sp-1) var(--sp-4);white-space:nowrap;font-variant-numeric:tabular-nums}
.lh-actions{margin-left:auto;display:flex;align-items:center;gap:var(--sp-4);flex-wrap:nowrap}
.lh-actions .btn{white-space:nowrap;flex:0 0 auto}
.lh-actions .link-search{flex:0 1 240px;min-width:150px;align-self:center;height:39px;box-sizing:border-box;padding:0 var(--sp-5)}
/* 分类快速跳转 chips：按模块 categories 顺序排列，点击平滑滚动到对应分组 */
.link-chips{display:flex;align-items:center;gap:var(--sp-4);flex-wrap:wrap;margin:var(--gap-block) 0 var(--sp-5)}
.lcm-row.dragging{opacity:.4}
.lcm-row.drop-before{box-shadow:0 -2px 0 0 var(--accent)}
.lcm-row.drop-after{box-shadow:0 2px 0 0 var(--accent)}
.lcm-row .lcm-grip:active{cursor:grabbing}
.lc-chip{display:inline-flex;align-items:center;gap:var(--sp-3);padding:var(--sp-2) var(--sp-5);border-radius:var(--md-shape-full);border:1px solid var(--border);background:var(--surface-card);color:var(--text-secondary);font:inherit;font-size:var(--fs-sm);font-weight:600;cursor:pointer;transition:border-color .15s,background .15s,color .15s}
.lc-chip.on,.lc-chip.on:hover{background:var(--accent);color:var(--on-accent,#fff);border-color:var(--accent);font-weight:700}
.lc-chip:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-muted)}
.lc-chip i{font-style:normal;font-size:var(--fs-xs);font-weight:700;color:var(--text-tertiary);font-variant-numeric:tabular-nums}
.lc-chip:hover i{color:var(--accent)}
.lc-chip[draggable="true"]{cursor:grab}
.lc-chip.dragging{opacity:.4;cursor:grabbing}
.lc-chip.drop-before{box-shadow:-2px 0 0 0 var(--accent)}
.lc-chip.drop-after{box-shadow:2px 0 0 0 var(--accent)}
/* 紧凑瓦片：整卡即链接（点击直达），编辑/删除悬停浮现，纵向高度约为旧版一半 */
.link-tile{flex-direction:row;align-items:center;gap:var(--gap-block);padding:10px var(--sp-5);text-decoration:none;color:inherit;transition:border-color .15s,box-shadow .15s,transform .15s}
.link-tile:hover{border-color:var(--accent);box-shadow:0 4px 14px rgba(35,34,32,.1);transform:translateY(-1px)}
.link-tile .fav-wrap{width:30px;height:30px;border-radius:var(--radius-tile)}
.link-tile .fav-wrap img{width:20px;height:20px}
.lt-bd{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.lt-meta{font-size:var(--fs-xs);color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.lt-acts{flex:0 0 auto;display:flex;gap:2px;opacity:0;transition:opacity .15s}
.link-tile:hover .lt-acts,.link-tile:focus-within .lt-acts{opacity:1}
.lt-acts button{border:none;background:transparent;color:var(--text-tertiary);width:26px;height:26px;border-radius:var(--radius-tile);display:grid;place-items:center;cursor:pointer;padding:0;transition:background .12s,color .12s}
.lt-acts button:hover{background:var(--surface-nested);color:var(--text)}
.lt-acts .js-link-del:hover{color:var(--danger)}
/* 搜索框 */
.link-search{display:flex;align-items:center;gap:var(--sp-3);min-width:250px;padding:var(--sp-3) var(--sp-5);border-radius:var(--radius-tile);background:var(--surface-card);border:1px solid var(--border);color:var(--text-tertiary);cursor:text;transition:border-color .15s,box-shadow .15s}
.link-search:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}
.link-search input{flex:1;min-width:0;border:none;outline:none;background:transparent;font:inherit;font-size:var(--fs-md);color:var(--text)}
.link-search input::placeholder{color:var(--text-tertiary)}
.link-search input::-webkit-search-cancel-button{cursor:pointer;opacity:.5}
.link-sec{margin-bottom:var(--sp-6)}
.link-sec:last-child{margin-bottom:0}
.link-sec.dragging{opacity:.45}
.link-sec.drop-before{box-shadow:0 -2px 0 0 var(--accent)}
.link-sec.drop-after{box-shadow:0 2px 0 0 var(--accent)}
#link-body.drop-after{box-shadow:inset 0 -2px 0 0 var(--accent)}
.link-tile-grid:empty{min-height:56px;border:1px dashed var(--border);border-radius:8px;background:var(--surface-nested)}
.link-sec-head{display:flex;align-items:center;gap:var(--sp-4);margin:0 var(--sp-1) var(--sp-4)}
.link-sec-title{font-size:var(--fs-md);font-weight:700;color:var(--text-secondary);letter-spacing:.3px}
.link-sec-n{font-size:var(--fs-xs);font-weight:700;color:var(--text-tertiary);background:var(--surface-nested);border-radius:var(--md-shape-full);padding:1px var(--sp-4);line-height:var(--lh-loose);font-variant-numeric:tabular-nums}
.link-sec-line{flex:1;height:1px;background:var(--border)}
/* 分组后每类条目变少，列数按容器宽度自适应：宽屏仍是 4 列，窄窗口自动降到 3/2/1 列 */
.link-tile-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
.lt-hit{background:var(--accent-muted);color:var(--accent);border-radius:var(--md-shape-xs);padding:0 var(--sp-1)}


/* 快速记录按钮为奇数个时，最后一个横跨整行，避免 2/2/1 悬空 */
.quick-grid .qbtn:nth-child(odd):last-child{grid-column:1/-1}
/* 首页卡片内边距收紧一档，降低空旷感；与全站卡片统一到 12×14 */
.bento .tile{padding:var(--pad-card)}
/* 分组标题间距收敛：与 .sec-title 同节奏（12 / 8） */
.bento ~ .sec-grp,.sec-grp{margin:var(--sp-5) 2px var(--sp-4)}
/* 趋势卡空状态随卡片高度弹性居中，不再固定 168px 留下半截空白 */
.trend-empty{height:auto;min-height:168px;flex:1}
.wp-tabbar{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap;padding:0;background:transparent;border:0;box-shadow:none}
.wp-tabbar--flat{gap:8px}
.wp-tabbar-gap{flex:1 1 auto;min-width:8px}
.wp-tabbar #wp-pdp-to-news,.wp-tabbar #wp-field-snap,.wp-tabbar #wp-seo-open,.wp-tabbar #wp-dedupe-snap,.wp-tabbar #wp-shelve-snap{flex:0 0 auto;margin-left:0}
/* 骨架页顶栏：返回 / tab / 复制 / 保存 高度与字体统一 */
.wp-tabbar.wp-tabbar--flat > .fe-cp,
.wp-tabbar.wp-tabbar--flat > .wp-skel-btn,
.wp-tabbar.wp-tabbar--flat .wp-skel-acts > .fe-cp,
.wp-tabbar.wp-tabbar--flat .wp-skel-acts > .btn,
.wp-tabbar #wp-new-skeleton,.wp-tabbar #wp-shelve-skeleton,.wp-tabbar #wp-wppdp-skeleton,.wp-tabbar #wp-topic-skeleton,.wp-tabbar .wp-skel-btn{
  appearance:none;-webkit-appearance:none;flex:0 0 auto;display:inline-flex !important;visibility:visible !important;
  align-items:center;justify-content:center;gap:6px;height:32px;min-height:32px;padding:0 14px;margin:0;
  border:1px solid var(--border-input);border-radius:6px;background:transparent;
  color:var(--text-secondary);font:inherit;font-size:12.5px;font-weight:600;line-height:1;
  cursor:pointer;transition:all .12s;box-sizing:border-box;order:0;box-shadow:none
}
.wp-tabbar .wp-skel-btn:hover,.wp-tabbar.wp-tabbar--flat > .fe-cp:hover,.wp-tabbar.wp-tabbar--flat .wp-skel-acts > .fe-cp:hover{border-color:var(--accent);color:var(--accent)}
.wp-tabbar .wp-skel-btn.on,.wp-tabbar .wp-skel-btn.on:hover,.wp-tabbar .fe-cp.wp-skel-btn.on{
  background:var(--text,#232220)!important;border-color:var(--text,#232220)!important;color:#fff!important
}
.wp-tabbar .wp-skel-btn svg,.wp-tabbar.wp-tabbar--flat .wp-skel-acts > .fe-cp svg{display:none}
.wp-tabbar .wp-skel-acts{display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;margin-left:auto}
.wp-tabbar .wp-skel-acts #wp-skel-ed-save{
  background:var(--accent);color:var(--on-accent,#fff);border-color:var(--accent);font-size:12.5px;font-weight:600
}
.wp-tabbar .wp-skel-acts #wp-skel-ed-save:hover{filter:brightness(1.08);color:var(--on-accent,#fff)}

/* 站点切换打散：去掉 seg 胶囊底，改成扁平 opt 按钮 */
.wp-site-flat{display:inline-flex;align-items:center;gap:4px;flex:0 0 auto;padding:0;margin:0;border:0;background:transparent;box-shadow:none}
.wp-site-flat-opt{appearance:none;-webkit-appearance:none;height:32px;padding:0 14px;margin:0;border:1px solid var(--border-input);border-radius:6px;background:transparent;color:var(--text-secondary);font:inherit;font-size:12.5px;font-weight:600;line-height:1;cursor:pointer;transition:all .12s}
.wp-site-flat-opt:hover{border-color:var(--accent);color:var(--accent)}
.wp-site-flat-opt.on{background:var(--text,#232220);border-color:var(--text,#232220);color:#fff}
/* WP 指令/骨架本文弹窗：右侧滑入抽屉（收在 main 区域内，不盖侧栏）+ 简易粗体栏 */
.overlay.fs-overlay{align-items:stretch;justify-content:flex-end;padding:0;box-sizing:border-box;overflow:hidden;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;animation:none}
.fs-modal{position:fixed;top:0;right:0;bottom:0;left:auto;width:min(720px,calc(100vw - var(--sidebar-w)))!important;max-width:calc(100vw - var(--sidebar-w))!important;height:100%!important;max-height:100%!important;margin:0;border-radius:0!important;display:flex;flex-direction:column;padding:16px 22px 14px!important;box-sizing:border-box;box-shadow:-10px 0 32px rgba(0,0,0,.18);transform:translateX(105%);transition:transform .25s ease;background:var(--surface-card,#fff)}
.fs-modal.on{transform:translateX(0)}
.fs-modal>h3{flex:0 0 auto;margin:0 28px 12px 0}
.fs-toolbar{flex:0 0 auto;display:flex;align-items:center;gap:8px;padding:0;margin:0 0 10px;border:0;background:transparent}
.fs-toolbar-l{display:flex;align-items:center;gap:8px;flex:1 1 auto;min-width:0}
.fs-toolbar-r{display:flex;align-items:center;gap:8px;flex:0 0 auto;margin-left:auto}
.fs-modal .fs-toolbar .ant-btn,.fs-modal .fs-toolbar .btn{height:32px;box-sizing:border-box;padding:4px 15px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-size:14px;line-height:1.2}
.fs-modal .fs-toolbar .ant-btn.fs-tb-bold,.fs-modal .fs-toolbar .btn.fs-tb-bold{width:auto;min-width:40px;padding:4px 15px;flex:0 0 auto}
.fs-modal .fs-toolbar .ant-btn svg,.fs-modal .fs-toolbar .btn svg{width:14px;height:14px;display:block;flex:none}
.fs-modal>h3{margin-bottom:12px!important;flex:0 0 auto}
.fs-modal>h3[contenteditable="true"]{outline:none;cursor:text;border-radius:4px;padding:0 4px;margin-left:-4px;min-height:29px}
.fs-modal>h3[contenteditable="true"]:hover{background:rgba(15,23,42,.04)}
.fs-modal>h3[contenteditable="true"]:focus{background:rgba(15,23,42,.06);box-shadow:inset 0 -1px 0 #c5cdd8}
.fs-modal #fs-text{flex:1 1 auto;min-height:0;height:auto!important;margin-top:0!important;resize:none;overflow:auto;font:13px/1.65 Consolas,"Microsoft YaHei",sans-serif;white-space:pre-wrap;word-break:break-word;outline:none}
.fs-modal #fs-text:empty:before{content:attr(data-placeholder);color:var(--text-tertiary)}
.fs-modal #fs-text b,.fs-modal #fs-text strong{font-weight:700;color:inherit}
.fs-modal .fs-acts{flex:0 0 auto;display:flex;justify-content:flex-end;gap:10px;margin-top:12px}
/* AI生图·海报指令整页编辑 + 案件整页编辑（布局复用书稿编辑器 .book-editor/.be-page） */
.ai-poster-ed .ape-body{flex:1 1 auto;min-height:0;overflow:auto;outline:none;padding:14px 20px 96px;font:14px/1.9 "Microsoft YaHei",sans-serif;color:var(--text);white-space:pre-wrap;word-break:break-word;background:transparent}
.ai-poster-ed .ape-body b,.ai-poster-ed .ape-body strong{font-weight:800;color:var(--text-primary)}
.ai-poster-ed .ape-body:empty:before{content:attr(data-placeholder);color:var(--text-tertiary)}
.ai-poster-ed .be-actions .btn,.case-ed-page .be-actions .btn{display:inline-flex;align-items:center;gap:6px}
/* AI 指令 · 封面图上传框（三框始终一行不折行，等高顶对齐：1080×1920 宽202、1300×768 宽609、1200×1560 宽277；
   flex 按基准宽等比收缩（基准≈比例×360），容器变窄时三框按同一系数缩小，宽高比与等高关系不变） */
.ai-cover{display:flex;justify-content:flex-start;align-items:flex-start;gap:16px;flex-wrap:nowrap;padding:18px 0 8px}
.ai-cover-box{position:relative;width:202px;flex:0 1 auto;min-width:0;aspect-ratio:1080/1920;border-radius:9px;border:1px dashed #d5d9e0;background:#fafbfc;display:flex;align-items:center;justify-content:center;overflow:hidden;cursor:pointer;transition:border-color .18s,box-shadow .18s,background .18s}
#ai-cover-box-2{width:277px;aspect-ratio:1200/1560}
#ai-cover-box-3{width:609px;aspect-ratio:1300/768}
.ai-cover-box:hover{border-color:var(--accent,#4a7cff);background:#f7f9ff;box-shadow:0 4px 14px rgba(74,124,255,.12)}
.ai-cover-box img{width:100%;height:100%;object-fit:cover;display:block}
.ai-cover-tip{display:flex;flex-direction:column;align-items:center;gap:6px;padding:11px;text-align:center;color:#8b93a1;font-size:12px;line-height:1.5}
.ai-cover-tip em{font-style:normal;font-size:11px;color:#a7aeb9}
.ai-cover-del{position:absolute;top:8px;right:8px;width:26px;height:26px;border:none;border-radius:50%;background:rgba(15,20,30,.55);color:#fff;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer}
.ai-cover-del:hover{background:rgba(15,20,30,.78)}
.case-ed-page .be-layout{flex:1 1 auto;min-height:0;display:flex}
.case-ed-page.be-page .book-editor-head{padding:4px 22px 10px;box-sizing:border-box}
.case-ed-page .case-ed-main{flex:1 1 auto;min-width:0;display:flex;flex-direction:column;padding:6px 22px 20px;overflow:auto}
.case-ed-page .case-ed-prio{flex:0 0 auto;display:flex;align-items:center;gap:12px;padding:2px 12px 12px}
.case-ed-page .case-ed-prio .lb{font-size:12px;font-weight:700;color:var(--text-secondary)}
.case-ed-page .case-ed-note{flex:1 1 auto;min-height:180px;resize:none;border:1px solid var(--border-input);border-radius:10px;background:var(--surface-card);padding:12px 14px;font:13px/1.8 "Microsoft YaHei",sans-serif;color:var(--text);outline:none;box-sizing:border-box}
.case-ed-page .case-ed-note:focus{border-color:var(--accent)}
.wp-tpl-cover-plus{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:26px;line-height:1;font-weight:300;margin:0;padding:0;transform:translateY(-3px);color:var(--text-tertiary);user-select:none}
.wp-tpl-cover-btn:hover .wp-tpl-cover-plus{color:var(--accent)}
.wp-tpl-cover-btn{position:relative}
.wp-tpl-cover-btn .wp-tpl-eye{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:24px;height:24px;border-radius:50%;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.55);cursor:pointer}
.wp-tpl-cover-btn:hover .wp-tpl-eye{display:flex}
.wp-tpl-cover-btn .wp-tpl-eye svg{width:13px;height:13px;color:#fff;display:block}
.rec .body.body-stack{flex-direction:column;align-items:stretch;gap:4px;flex-wrap:nowrap}
.rec .rec-line1{display:flex;align-items:center;gap:8px;min-width:0;width:100%}
.rec .rec-line1 .rname{flex:1 1 auto;min-width:0}
.rec .rec-line1 .rdate{margin-left:auto;flex:none;color:var(--text-tertiary)}
.rec.rec-layout-default{padding:12px 14px}
.rec.rec-layout-default:hover{border-color:color-mix(in srgb,var(--accent) 42%,var(--border));box-shadow:0 2px 10px rgba(0,0,0,.05)}
.rec.rec-layout-default .rnote{margin-top:0;margin-left:5px;-webkit-line-clamp:2;color:var(--text-tertiary);font-size:12px;line-height:1.45}
.seg.wp-compact .opt{flex:0 0 auto;padding:6px 16px;font-size:12.5px}
/* 站点切换用中性色激活，与右侧主题色视图 tab 区分主次 */
.seg.wp-compact.site .opt.on{background:var(--text,#232220);border-color:var(--text,#232220)}
.wp-soon{font-size:10px;font-weight:700;padding:0 5px;border-radius:4px;margin-left:6px;background:rgba(128,128,128,.18);opacity:.8}

/* 口令分享访问验证弹窗（share / 视频审阅共用）
   注意：口令门在应用启动前弹出，CSS 变量尚未注入，必须用字面量颜色 */
.pwg{text-align:center;padding:34px 30px 26px !important;background:#fcfbf8 !important;color:#232220 !important}
.pwg-badge{width:52px;height:52px;margin:0 auto;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(22,119,255,.1);color:#1677ff}
.pwg h3{font-size:17px !important;margin-top:14px;color:#232220 !important}
.pwg-sub{margin:6px auto 18px !important;max-width:310px;line-height:1.65;color:#8a877f !important;font-size:12.5px !important}
.pwg-field{position:relative;display:flex;align-items:center}
.pwg-field .pwg-lock{position:absolute;left:12px;color:#8a877f;pointer-events:none;display:flex}
.pwg-field input{width:100%;box-sizing:border-box;padding:11px 40px 11px 36px;border:1px solid #e0ded6;border-radius:9px;font-size:14px;outline:none;background:#f7f6f1;color:#232220;transition:border-color .15s,box-shadow .15s}
.pwg-field input:focus{border-color:#1677ff;box-shadow:0 0 0 3px rgba(22,119,255,.15)}
.pwg-eye{position:absolute;right:8px;display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:#8a877f;cursor:pointer;border-radius:6px;padding:0;transition:color .15s,background .15s}
.pwg-eye:hover{color:#232220;background:rgba(35,34,32,.06)}
.pwg .pwg-go{width:100%;margin-top:10px;justify-content:center;padding:11px !important;font-size:14px;font-weight:700;border-radius:9px !important;background:#1677ff !important;color:#fff !important;border:none !important;cursor:pointer;transition:background .15s;box-shadow:none !important}
.pwg .pwg-go:hover{background:#0f66e0 !important}
.pwg-err{font-size:12px;color:#e5484d;min-height:18px;margin-top:8px}
.pwg-field.err input{border-color:#e5484d;box-shadow:0 0 0 3px rgba(229,72,77,.12)}
.pwg-remember{display:flex;align-items:center;gap:8px;margin:10px 2px 0;font-size:12.5px;color:#8a877f;cursor:pointer;user-select:none;justify-content:flex-start;text-align:left}
.pwg-remember input{width:15px;height:15px;accent-color:#1677ff;cursor:pointer;flex:none}
.pwg-remember span{line-height:1.3}
@keyframes pwg-shake{0%,100%{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}
.pwg.shake{animation:pwg-shake .28s ease}


.ops-tabs{margin-bottom:14px}
.ops-tab{display:inline-flex;align-items:center;gap:6px}
.ops-tab i{font-style:normal;font-size:11px;font-weight:700;opacity:.6;font-variant-numeric:tabular-nums}
.ops-tab.on i{opacity:.9}
/* 术语卡：描述放宽到两行截断，信息量翻倍；卡高统一避免参差 */
.ops-terms{padding:14px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.ops-term{display:flex;flex-direction:column;gap:4px;min-height:78px;cursor:grab;touch-action:none}
.ops-term.dragging{opacity:.55;cursor:grabbing;box-shadow:0 8px 20px rgba(0,0,0,.12);z-index:2}
.ops-term.drag-over{outline:2px dashed var(--accent);outline-offset:-2px}
.ops-term:hover .ops-term-name{color:var(--accent)}
.ops-term-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;overflow:hidden}
.ops-terms.is-search .ops-term{cursor:pointer}
/* 跨库搜索结果的分类标签 */
.ops-term-cat{align-self:flex-start;font-size:10.5px;font-weight:700;letter-spacing:.2px;color:var(--module-2);background:var(--accent-muted);border-radius:4px;padding:1px 7px}


/* 1) 侧栏 & 顶栏：antd 暗色 Sider/Header（#001529 / #002140） */
.sidebar,.topbar{--drawer-bg:#001529;--drawer-bg-top:#002140;--drawer-text:rgba(255,255,255,.85);--drawer-text-mute:rgba(255,255,255,.65);--drawer-active:#0958d9;--md-nav-active-fg:#ffffff;}
.sidebar{background:#001529;box-shadow:inset -1px 0 0 var(--drawer-edge);}
.topbar{background:linear-gradient(180deg,var(--drawer-bg-top),var(--drawer-bg) 56%),var(--drawer-bg);}
.sidebar .data-tools{background:#000c17;}
/* 2) 导航项 → antd Menu.Item：8px 圆角矩形（非药丸）+ 主色选中 */
.navi{border-radius:8px;}
.navi.active{background:var(--md-primary);color:#fff;font-weight:400;}
.navi.active:hover{background:#4096ff;}
.nav-group{border-radius:8px;}
.nav-group .nav-group-icon{border-radius:6px;}
.topbar .dt-btn{border-radius:6px;}
/* 4) 链接模块搜索框 → antd Input */
.link-search{border-radius:6px;border-color:var(--ant-color-border);background:var(--ant-color-bg-container);}
.link-search:focus-within{border-color:var(--ant-color-primary-hover);box-shadow:0 0 0 2px rgba(5,145,255,.1);}
/* 5) 通用小按钮 → antd Button default */
.fe-cp{border-color:var(--ant-color-border);border-radius:6px;}
.fe-cp:hover{border-color:var(--ant-color-primary-hover);color:var(--ant-color-primary-hover);}
.svc-field .svc-field-input.ant-input{flex:1;min-width:0;height:32px;font-size:12px;color:var(--text-secondary)}
.hero-l-input.ant-input{display:inline-block;vertical-align:middle;min-width:160px}
/* 6) 滚动条 → antd 细滚动条 */
*::-webkit-scrollbar{width:8px;height:8px;}
*::-webkit-scrollbar-thumb{background:rgba(0,0,0,.15);border:none;border-radius:4px;background-clip:padding-box;}
*::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.28);background-clip:padding-box;}
/* 7) SEO管理 · 新增/编辑机型弹窗（2026-09-19 重设计） */
.sm-modal{padding:0;border-radius:14px;border:1px solid var(--border);overflow:hidden}
.modal.sm-modal{border-radius:14px !important}
.sm-head{display:flex;align-items:center;gap:12px;padding:18px 20px 14px}
.sm-head-ico{flex:none;width:40px;height:40px;border-radius:10px;background:var(--accent-muted);color:var(--accent);display:grid;place-items:center}
.sm-head h3{margin:0;font-size:17px}
.sm-cat{display:inline-flex;align-items:center;gap:5px;margin-top:4px;font-size:11.5px;font-weight:600;color:var(--text-secondary);background:var(--surface-nested);border:1px solid var(--border);border-radius:999px;padding:2px 9px;max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sm-body{padding:4px 20px 18px;display:flex;flex-direction:column;gap:14px}
.sm-lab{display:block;font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:6px}
.sm-grid2{display:grid;grid-template-columns:minmax(0,150px) minmax(0,1fr);gap:12px}
.sm-input{display:block;width:100%;padding:9px 12px;border:1px solid var(--border-input);border-radius:8px;font-size:13.5px;background:var(--surface-card);color:var(--text);box-sizing:border-box;transition:border-color .15s,box-shadow .15s;font-family:inherit}
.sm-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}
.sm-input::placeholder{color:var(--text-tertiary)}
.sm-input[readonly]{opacity:.72;cursor:not-allowed}
#sm-code{text-transform:uppercase;font-weight:700;letter-spacing:.06em}
.sm-foot{display:flex;justify-content:flex-end;gap:10px;padding:14px 20px 16px;border-top:1px solid var(--border);background:var(--surface-nested)}
.sm-modal .modal-x{top:14px;right:14px;box-shadow:none!important;filter:none!important}
.sm-modal .sm-img-box{align-items:center}
.sm-modal .sm-img-slot,.sm-modal .sm-img-prev,button.sm-img-prev.empty{width:112px;height:112px}
@media (max-width:560px){.sm-grid2{grid-template-columns:1fr}}


/* ===== ai-log 智能记录 · 对话归档视图 ===== */
.rec.ai-log-card{position:relative;border-left:3px solid var(--module-2);padding-left:16px;transition:border-left-width .15s,box-shadow .15s;}
.rec.ai-log-card.pinned{border-left-width:4px;box-shadow:0 2px 10px rgba(0,0,0,.06);}
/* ai-log 操作按钮：内联在日期右侧，无外框 */
.ai-log-card .acts{position:static;transform:none;flex:0 0 auto;background:transparent;border:none;box-shadow:none;padding:0;border-radius:0;}
.ai-log-header{display:flex;align-items:flex-start;gap:12px;}
.ai-log-avatar{flex:0 0 auto;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;font-size:11px;font-weight:800;color:#fff;letter-spacing:-.2px;background:var(--module-2);box-shadow:0 2px 6px rgba(0,0,0,.08);}
.ai-log-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:5px;}
.ai-log-card .rec-line1{align-items:center;flex-wrap:wrap;margin-bottom:1px;}
.ai-log-card .rec-line1 .rname{max-width:52%;}
.ai-log-preview{display:flex;flex-direction:column;gap:3px;margin-top:1px;}
.ai-log-turn{display:flex;align-items:baseline;gap:8px;font-size:12px;line-height:1.5;color:var(--text-secondary);}
.ai-log-turn-role{flex:0 0 auto;font-size:11px;font-weight:700;color:var(--module-2);min-width:30px;}
.ai-log-turn-text{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.ai-log-turn.assistant .ai-log-turn-text{-webkit-line-clamp:2;display:-webkit-box;-webkit-box-orient:vertical;white-space:normal;}
/* ai-log 移动端响应式适配 */
@media (max-width:768px){
  .ai-log-card .rec-line1 .rname{max-width:100%;flex-basis:100%;}
  .ai-log-card .rec-line1{gap:6px;row-gap:3px;}
  .ai-log-card{padding-left:12px;}
}
@media (max-width:480px){
  .ai-log-header{gap:9px;}
  .ai-log-avatar{width:28px;height:28px;font-size:10px;}
  .ai-log-turn{flex-wrap:wrap;gap:4px 8px;}
  .ai-log-turn-role{min-width:26px;}
  .toolbar{flex-wrap:wrap;row-gap:6px;}
  .toolbar .btn{padding:7px 10px;font-size:12px;}
}

/* ===== 写书（read 模块）· 书稿卡片 + 全屏 Vditor 编辑器 ===== */
.rec.rec-book{display:flex;align-items:center;gap:14px;}
.rec.rec-book .top{flex:1;min-width:0;align-items:center;}
.rec.rec-book .book-meta{display:inline-flex;align-items:center;gap:10px;margin-top:0;flex-wrap:wrap;flex:0 0 auto;}
.rec.rec-book .book-words{font-size:12px;font-weight:600;color:var(--module-2);}
.rec.rec-book > .book-write-btn{flex:0 0 auto;margin:0;display:inline-flex;align-items:center;gap:6px;padding:6px 14px;font-size:12.5px;font-weight:600;border-radius:8px;background:var(--module-2);color:#fff;border:none;cursor:pointer;transition:filter .15s,transform .1s;align-self:center;}
.rec.rec-book > .book-write-btn:hover{filter:brightness(1.07);}
.rec.rec-book > .book-write-btn:active{transform:scale(.98);}
/* 页内编辑器（.main 内边距 62/40，高度撑满可视区） */
.book-editor{display:flex;flex-direction:column;width:100%;height:calc(100dvh - var(--be-top,52px));background:transparent;border:none;border-radius:0;overflow:hidden;box-shadow:none;}.main:has(> #screen > .book-editor),.main.be-full{padding:var(--be-top,52px) 0 0 !important;overflow:hidden;}.main:has(> #screen > .book-editor) #screen,.main.be-full #screen{height:calc(100dvh - var(--be-top,52px));max-height:calc(100dvh - var(--be-top,52px));}
/* 工具栏打散到标题上方独立条；icon 之间竖线分隔；去掉大卡片外框 */
.be-toolbar-slot{flex:0 0 auto;min-height:0;}
.be-toolbar-slot:empty{display:none;}
.be-page .be-toolbar-slot .vditor-toolbar,
.be-page .vditor-toolbar{
  display:flex !important;flex-wrap:wrap;align-items:center;column-gap:2px;row-gap:3px;
  padding:4px 2px !important;margin:0 0 4px;border:none;border-bottom:1px solid var(--border-input);
  border-radius:0;background:transparent;box-sizing:border-box;
}
.be-page .vditor-toolbar__item{margin:0;display:inline-flex;align-items:center;}
.be-page .vditor-toolbar__item>button{width:30px;height:30px;padding:0;display:flex;align-items:center;justify-content:center;}
.be-page .vditor-toolbar__divider{
  display:inline-block !important;margin:0 3px;width:1px !important;min-width:1px;height:18px !important;
  background:var(--border-input,#d9d9d9) !important;border:none;flex:0 0 1px;align-self:center;opacity:1 !important;
}
.be-page .vditor-toolbar__item{margin:0 !important;}
.be-page .vditor-toolbar__item>button{width:28px;height:28px;}
/* 响应式分布：窄屏自动换行（替代旧的单行横滚截断）；撤销组前分隔线推右，视图组贴行尾 */
.be-page .be-toolbar-slot .vditor-toolbar,
.be-page .vditor-toolbar{flex-wrap:wrap;overflow:visible;}
.be-page .vditor-toolbar__divider.be-div-push{margin-left:auto !important;margin-right:7px;}

.be-page .book-editor-body .vditor{border:none;border-radius:0;background:transparent;overflow:hidden;}
.be-page .book-editor-body .vditor .vditor-toolbar{display:none !important;}
.be-page .book-editor-head{background:transparent;border:none;border-bottom:1px solid var(--border-input);padding:4px 2px 10px;margin-bottom:4px;}
.be-page .be-nav{background:transparent;border-right:1px solid var(--border-input);}
/* ===== 书稿编辑内页排版：通栏正文，去掉左右镂空版心 ===== */
.be-page .vditor-ir .vditor-reset,.be-page .vditor-wysiwyg .vditor-reset,.be-page .vditor-sv,
.be-page pre.vditor-reset{padding:14px 20px 96px !important;}
.be-page .vditor-ir .vditor-reset,.be-page .vditor-wysiwyg .vditor-reset{
  max-width:none;margin:0;box-sizing:border-box;
  font-size:15.5px;line-height:1.95;color:var(--text);letter-spacing:0;font-family:inherit;
}
.be-page .vditor-reset>*:first-child{margin-top:0;}
.be-page .vditor-reset>*:last-child{margin-bottom:0;}
/* 正文段落：中文书籍式两端对齐 + 段间距 */
.be-page .vditor-reset p{margin:0 0 14px;text-align:justify;text-justify:inter-ideograph;}
/* 标题层级：一级下划线强调（module-2）、二级细线分隔 */
.be-page .vditor-reset h1,.be-page .vditor-reset h2,.be-page .vditor-reset h3,.be-page .vditor-reset h4,.be-page .vditor-reset h5,.be-page .vditor-reset h6{color:var(--text-primary);font-weight:800;line-height:1.45;letter-spacing:-.012em;}
.be-page .vditor-reset h1{font-size:25px;margin:32px 0 16px;padding-bottom:10px;border-bottom:2px solid var(--module-2);}
.be-page .vditor-reset h2{font-size:20px;margin:30px 0 12px;padding-bottom:7px;border-bottom:1px solid var(--border);}
.be-page .vditor-reset h3{font-size:17px;margin:24px 0 10px;}
.be-page .vditor-reset h4{font-size:15.5px;margin:20px 0 8px;color:var(--text-secondary);}
.be-page .vditor-reset h5,.be-page .vditor-reset h6{font-size:14.5px;margin:18px 0 8px;color:var(--text-secondary);}
/* 列表 */
.be-page .vditor-reset ul,.be-page .vditor-reset ol{margin:0 0 14px;padding-left:1.7em;}
.be-page .vditor-reset li{margin:6px 0;line-height:1.9;}
.be-page .vditor-reset li::marker{color:var(--text-tertiary);}
.be-page .vditor-reset li>ul,.be-page .vditor-reset li>ol{margin:6px 0 0;}
/* 引用：module-2 左边线 + 淡底 */
.be-page .vditor-reset blockquote{margin:0 0 16px;padding:10px 16px;border-left:3px solid var(--module-2);background:color-mix(in srgb,var(--module-2) 7%,var(--surface-nested));border-radius:0 8px 8px 0;color:var(--text-secondary);}
.be-page .vditor-reset blockquote p:last-child{margin-bottom:0;}
/* 代码 */
.be-page .vditor-reset code{font-family:ui-monospace,SFMono-Regular,Consolas,"Courier New",monospace;font-size:.9em;background:var(--surface-nested);border:1px solid var(--border);border-radius:5px;padding:1px 6px;}
.be-page .vditor-reset pre{background:var(--surface-nested);border:1px solid var(--border);border-radius:10px;padding:14px 16px;margin:0 0 16px;overflow:auto;line-height:1.7;}
.be-page .vditor-reset pre code{background:none;border:none;padding:0;font-size:13px;}
/* 链接 / 强调 / 分割线 / 表格 / 图片 */
.be-page .vditor-reset a{color:var(--module-2);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--module-2) 42%,transparent);}
.be-page .vditor-reset a:hover{border-bottom-color:var(--module-2);}
.be-page .vditor-reset strong{font-weight:800;color:var(--text-primary);}
.be-page .vditor-reset hr{border:none;border-top:1px solid var(--border);margin:28px 0;}
.be-page .vditor-reset table{border-collapse:collapse;margin:0 0 16px;font-size:14px;}
.be-page .vditor-reset th,.be-page .vditor-reset td{border:1px solid var(--border);padding:8px 12px;text-align:left;}
.be-page .vditor-reset th{background:var(--surface-nested);font-weight:700;}
.be-page .vditor-reset img{max-width:100%;border-radius:8px;}
/* IR 即时渲染行内标记弱化，降低对阅读的干扰 */
.be-page .vditor-ir__marker{color:color-mix(in srgb,var(--text-tertiary) 85%,transparent);}
@media (max-width:900px){
  .be-page .vditor-ir .vditor-reset,.be-page .vditor-wysiwyg .vditor-reset{font-size:15px;line-height:1.9;padding:12px 14px 84px !important;}
}
/* 写书页：新建按钮移入右侧栏，与统计卡同宽 */
.mod-side .btn-side-new{width:100%;justify-content:center;}
/* 参考文献书录 */
#ref-card .ref-row{display:flex;align-items:center;gap:8px;padding:5px 0;border-bottom:1px dashed var(--border);font-size:12.5px;}
#ref-card .ref-row:last-child{border-bottom:none;}
#ref-card .rt{font-weight:600;color:var(--text);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left;}
#ref-card .ra{color:var(--text-tertiary);font-size:11.5px;flex:0 0 auto;}
#ref-card .ref-del{border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;font-size:12px;padding:2px 5px;border-radius:4px;}
#ref-card .ref-del:hover{color:var(--danger);background:var(--surface-nested);}
#ref-card .ref-empty{font-size:12px;color:var(--text-tertiary);padding:4px 0 6px;}
#ref-card .ref-add{display:flex;gap:6px;margin-top:8px;}
#ref-card .ref-add input{flex:1;min-width:0;border:1px solid var(--border-input);border-radius:6px;padding:6px 9px;font-size:12.5px;background:var(--surface-nested);color:var(--text);outline:none;font-family:inherit;}
#ref-card .ref-add input:focus{border-color:var(--accent);}
#ref-card .ref-add .btn{padding:6px 12px;font-size:12.5px;flex:0 0 auto;}
/* 书卡：图标左侧；书名+元信息同行；摘要在下；「编辑」靠卡片最右 */
.rec.rec-book .body{display:grid;grid-template-columns:45px minmax(0,1fr);grid-template-areas:"icon head" "icon note" "custom custom";column-gap:10px;row-gap:3px;align-items:center;flex:1;min-width:0;cursor:default;}
.rec.rec-book .book-head{grid-area:head;display:flex;align-items:baseline;gap:12px;min-width:0;flex-wrap:wrap;}
.rec.rec-book .rname{font-size:16.5px;flex:0 1 auto;min-width:0;max-width:100%;}
.rec.rec-book .rname-ic{grid-area:icon;width:45px;height:45px;background:var(--ic,#3a73d4);-webkit-mask:url("/assets/icons/book.svg") center/contain no-repeat;mask:url("/assets/icons/book.svg") center/contain no-repeat;align-self:center;}
.rec.rec-book .rnote{grid-area:note;flex:none;-webkit-box-align:start;}
.rec.rec-book .body .meta-line{grid-area:custom;}
.book-editor-head{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid var(--border-input);background:var(--surface-nested);}
.book-editor-head .be-title{display:flex;align-items:center;gap:9px;font-size:17px;font-weight:700;color:var(--text-primary);min-width:0;}
.book-editor-head .be-title-txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.book-editor-head .be-title-ico{flex:0 0 auto;display:inline-grid;place-items:center;width:30px;height:30px;border-radius:8px;background:color-mix(in srgb,var(--module-2) 14%,var(--surface-card));color:var(--module-2);}
.book-editor-head .be-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto;}
.book-editor-head .be-words{font-size:11.5px;font-weight:600;color:var(--text-secondary);font-variant-numeric:tabular-nums;background:var(--surface-card);border:1px solid var(--border);border-radius:999px;padding:3px 11px;white-space:nowrap;}
.book-editor-head .be-back{background:transparent;color:var(--text-secondary);border:1px solid var(--border-input);box-shadow:none;padding:7px 11px;font-weight:700;}
.book-editor-head .be-back:hover{background:var(--surface-card);color:var(--text);border-color:var(--border);}
.book-editor-head .be-save{background:var(--module-2);color:#fff;border:none;box-shadow:var(--shadow-card);}
.book-editor-head .be-save:hover{filter:brightness(1.06);}
.book-editor-head .be-save:disabled{filter:none;opacity:.55;cursor:default;}
.book-editor-body{flex:1;min-height:0;position:relative;overflow:hidden;}
.book-editor-body .be-loading{position:absolute;inset:0;display:grid;place-items:center;font-size:13px;color:var(--text-tertiary);text-align:center;line-height:1.9;padding:20px;}
.book-editor-body .vditor{height:100%!important;border:none;border-radius:0;}
/* 简书式章节导航（左栏）+ 独立标题输入（右主区） */
.be-layout{display:flex;width:100%;flex:1;min-height:0;}
.be-nav{flex:0 0 218px;min-width:0;display:flex;flex-direction:column;border-right:1px solid var(--border);background:var(--surface-nested);min-height:0;}
.be-nav-hd{flex:0 0 auto;display:flex;align-items:center;justify-content:space-between;padding:12px 14px 8px;}
.be-nav-hd .t{font-size:11.5px;font-weight:800;letter-spacing:.08em;color:var(--text-tertiary);}
.be-nav-new{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--module-2);cursor:pointer;padding:4px 9px;border-radius:7px;user-select:none;border:1px solid color-mix(in srgb,var(--module-2) 32%,transparent);background:color-mix(in srgb,var(--module-2) 9%,transparent);transition:background .15s,border-color .15s;}
.be-nav-new:hover{background:color-mix(in srgb,var(--module-2) 16%,transparent);border-color:color-mix(in srgb,var(--module-2) 50%,transparent);}
.be-nav-list{flex:1;overflow-y:auto;padding:4px 8px 14px;min-height:0;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.28) transparent;}
.be-nav-list::-webkit-scrollbar{width:6px;}
.be-nav-list::-webkit-scrollbar-thumb{background:rgba(0,0,0,.22);border-radius:4px;background-clip:padding-box;}
.be-nav-list::-webkit-scrollbar-thumb:hover{background:rgba(0,0,0,.4);background-clip:padding-box;}
.be-nav-item{position:relative;padding:9px 26px 9px 12px;border-radius:8px;cursor:pointer;margin-bottom:3px;transition:background .15s,box-shadow .15s;}
.be-nav-item:hover{background:var(--surface-card);}
.be-nav-item.on{border-radius:0;background:rgba(22,119,255,0.10);box-shadow:inset 3px 0 0 var(--md-primary,#1677ff);}
.book-editor-head .be-sync{font-size:11.5px;font-weight:600;color:var(--text-tertiary);white-space:nowrap;min-width:3.5em}
.be-nav-item .nt{font-size:12.5px;font-weight:700;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.be-nav-item.on .nt{color:var(--module-2);}
.be-nav-item .nw{font-size:10.5px;color:var(--text-tertiary);margin-top:2px;font-variant-numeric:tabular-nums;}
.be-nav-gear{position:absolute;top:7px;right:5px;border:none;background:transparent;color:var(--text-tertiary);font-size:14px;line-height:1;cursor:pointer;opacity:0;padding:2px 4px;border-radius:4px;}
.be-nav-item:hover .be-nav-gear{opacity:1;}
.be-nav-gear:hover{background:var(--surface-nested);color:var(--text);}
.be-nav-menu{display:none;position:absolute;top:26px;right:4px;z-index:20;min-width:108px;background:var(--surface-card);border:1px solid var(--border);border-radius:8px;box-shadow:var(--shadow-overlay);padding:4px;}
.be-nav-menu.open{display:block;}
.be-nav-menu span{display:block;padding:6px 10px;font-size:12px;font-weight:600;color:var(--text-secondary);border-radius:6px;cursor:pointer;white-space:nowrap;}
.be-nav-menu span:hover{background:var(--surface-nested);color:var(--text);}
.be-main{flex:1;min-width:0;display:flex;flex-direction:column;min-height:0;}
/* 章节栏与编辑区之间可拖拽分隔条（参考 wp-ed-split） */
.be-split{flex:0 0 7px;align-self:stretch;cursor:col-resize;position:relative;z-index:5;margin:0 1px;border-radius:5px;background:var(--border-input);touch-action:none;transition:background .15s;}
.be-split:hover,.be-split.dragging{background:var(--module-2);}
.be-split::before{content:"";position:absolute;inset:0 -8px;}
.be-split::after{content:"";position:absolute;top:50%;left:50%;width:3px;height:24px;transform:translate(-50%,-50%);border-radius:3px;background:color-mix(in srgb,var(--text-tertiary) 45%,transparent);pointer-events:none;transition:background .15s;}
.be-split:hover::after,.be-split.dragging::after{background:rgba(255,255,255,.85);}
.be-layout.dragging{cursor:col-resize;user-select:none;-webkit-user-select:none;}
.be-layout.dragging .be-main{pointer-events:none;}
.be-title-input,.be-title-input:focus{flex:0 0 auto;border:none !important;outline:none;box-shadow:none !important;background:transparent;width:100%;max-width:none;margin:0;box-sizing:border-box;padding:8px 12px 8px;font-size:21px;font-weight:800;color:var(--text);font-family:inherit;}
.be-title-input::placeholder{color:var(--text-tertiary);font-weight:700;}
.be-main .book-editor-body{flex:1;min-height:0;}
@media (max-width:900px){.be-nav{flex-basis:164px;}.be-title-input,.be-title-input:focus{font-size:17px;padding:12px 14px 8px;}}
@media (max-width:768px){
  .book-editor-head{padding:8px 10px;gap:8px;}
  .book-editor-head .be-title{font-size:15.5px;}
  .book-editor-head .be-words{display:none;}
  .book-editor-head .be-actions .btn{padding:6px 10px;font-size:12px;}
}

/* ===== wp-front 模板卡：默认一行三列，窄屏自适应两列/单列 + 拖拽重排 ===== */
#wp-tpl-list{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:10px;
  align-items:stretch
}
#wp-tpl-list.wp-tpl-list-collapsed{
  display:none!important;margin:0!important;height:0!important;overflow:hidden;padding:0!important
}
#wp-tpl-list > .wp-tpl-card,
#wp-tpl-list > .wp-tpl-add,
#wp-tpl-list > .wp-tpl-placeholder{
  box-sizing:border-box;
  min-width:0;
  width:auto;
  max-width:none
}
@media (max-width:1100px){
  #wp-tpl-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:700px){
  #wp-tpl-list{grid-template-columns:minmax(0,1fr)}
}
.wp-tpl-card.dragging{
  opacity:1!important;
  transform:scale(1.04) rotate(-1deg);
  box-shadow:0 18px 36px rgba(0,0,0,.18);
  border-color:var(--accent)!important;
  cursor:grabbing;
}
.wp-tpl-card.drop-target{
  outline:2px solid var(--accent);
  outline-offset:2px;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 18%,transparent);
}
.wp-tpl-placeholder{
  border:2px dashed var(--accent);
  border-radius:var(--radius-tile,8px);
  background:color-mix(in srgb,var(--accent) 6%,transparent);
  display:flex;align-items:center;justify-content:center;
  animation:wp-tpl-ph-pulse 1.2s ease-in-out infinite;
}
.wp-tpl-ph-tip{
  font-size:12px;font-weight:700;color:var(--accent);
  background:var(--surface-card);padding:3px 10px;border-radius:20px;
  box-shadow:0 2px 6px rgba(0,0,0,.08);white-space:nowrap;
}
@keyframes wp-tpl-ph-pulse{0%,100%{opacity:.6}50%{opacity:1}}

/* ==========================================================================
   紧凑密度规范（L0 统一层）
   统一各视图的间距刻度、卡片内边距、区块间距、列表行高与表格密度。
   刻度约定：
     间距  2 / 4 / 6 / 8 / 12 / 16 / 20 / 24
     卡片内边距 12×14（标准） 8×10（密集行）
     区块间距 10（同层并列） / 栅格间距 12
     表格单元格 5×8
     字号 11 / 12 / 13 / 14 / 16 / 22
     行高 1.35（紧凑） / 1.5（正文） / 1.7（长文）
   所有页面只引用下列变量，不再逐页硬编码数值。
   ========================================================================== */
:root{
  /* 间距刻度 */
  --sp-1:2px;--sp-2:4px;--sp-3:6px;--sp-4:8px;--sp-5:12px;--sp-6:16px;--sp-7:20px;--sp-8:24px;
  /* 组件密度 */
  --pad-card:12px 14px;
  --pad-card-tight:8px 10px;
  --pad-hero:10px 14px;
  --pad-cell-y:5px;
  --pad-cell-x:8px;
  --gap-block:10px;
  --gap-grid:12px;
  --gap-list:6px;
  /* 字号 / 行高 */
  --fs-xs:11px;--fs-sm:12px;--fs-md:13px;--fs-lg:14px;--fs-xl:16px;--fs-2xl:22px;
  --lh-tight:1.35;--lh-base:1.5;--lh-loose:1.7;
  /* 外壳（主容器与顶栏之间只留 6px 呼吸位） */
  --shell-pad-y:58px;
  --shell-pad-x:14px;
  --shell-pad-b:24px;
}
/* 主容器：顶部 62→58（顶栏 52px 下留 6px），左右 28→20→14（2026-11-13 用户要求距 nav 14px），底部 40→24 */
.main{padding:var(--shell-pad-y) var(--shell-pad-x) var(--shell-pad-b)}
.header{gap:var(--sp-5);margin-bottom:var(--sp-3)}
.header h2{font-size:var(--fs-2xl)}
.header p{margin-top:var(--sp-1)}
.sec-title{gap:var(--sp-4);margin:var(--sp-5) 0 var(--sp-4)}
.toolbar{gap:var(--sp-4);margin:var(--sp-5) 0 var(--sp-4)}
/* 栅格 / 区块间距收敛到 12 / 10 */
.grid,.ops-categories,.svc-grid,.arch-grid{gap:var(--gap-grid)}
.arch-links{gap:var(--sp-1)}
.mod-layout{gap:var(--gap-grid);margin-top:var(--sp-5)}
.mod-side{gap:var(--gap-block)}
.mod-summary{gap:var(--gap-grid)}
.pin-list,.quick-grid{gap:var(--gap-block)}
.ql-grid{gap:var(--gap-block)}
.rec-grid{gap:var(--gap-list)}
.ops-terms{padding:var(--sp-4)}
/* 卡片内边距收敛到 12×14 */
.rec,.side-card,.mini,.qbtn,.pin,.ql-item-card,.svc-card-body{padding:var(--pad-card)}
.qbtn,.pin,.ql-item-card{gap:var(--sp-5)}
.hero,.svc-hero,.arch-hero{padding:var(--pad-hero);gap:var(--sp-5)}
.hero.has-cover>.hero-inner{padding:var(--pad-hero);gap:var(--sp-5)}
.svc-hero,.arch-hero{margin-bottom:var(--gap-grid)}
/* 列表行 / 分组头收敛到 8×10 */
.ops-cat-header,.svc-card-header,.arch-group-header{padding:var(--pad-card-tight)}
.arch-link{padding:7px 8px;gap:var(--sp-4)}
.ops-term{padding:var(--pad-card-tight)}
.svc-card-actions{padding:0 14px 10px}
.stat-row{padding:var(--pad-cell-y) 0}
/* 空态不再用 50px 顶白 */
.empty{padding:32px var(--sp-6)}
/* 移动端保持紧凑，不回落旧值 */
@media (max-width:768px){
  .main{padding:52px 14px 24px}
  .header h2{font-size:var(--fs-xl)}
}

/* ==========================================================================
   首页 bento 列宽修正
   首行原为 时钟(4) + 快速记录(4)，右侧空出 4 列；把「今日概览」从通栏 12 列
   改为 4 列并入首行，两行各 3 张等宽卡片，列宽铺满不留空洞。
   今日概览内部环形由 4 列改为 2 列，避免卡片变窄后圆环被挤压。
   ========================================================================== */
.ov2-body--solo .rings{grid-template-columns:repeat(2,minmax(0,1fr))}
/* 中屏（≤1100）仍为 3 列，仅收紧圆环左右内边距，避免文字换行 */
@media (max-width:1100px){
  .ring{padding:10px 2px}
}
/* 小屏退回两列：原 span 4 的卡片在 2 列栅格中会被撑满整行，需同时重置跨列；
   每组恰好 3 张卡片时，第 3 张独占整行，避免右侧半行空洞 */
@media (max-width:900px){
  .bento{grid-template-columns:repeat(2,minmax(0,1fr)) !important}
  .bento>*{grid-column:span 1 !important;min-width:0}
  .bento>*:nth-child(3):last-child{grid-column:span 2 !important}
}

/* ==========================================================================
   右下角悬浮「置顶」
   工作台的滚动容器是 .main 而不是 window，因此点击时两者都复位。
   按钮挂在 .layout 之外，避免 render() 重写 #screen 时被清掉。
   ========================================================================== */
.wb-back-top{
  position:fixed;right:24px;bottom:24px;z-index:80;
  display:none;align-items:center;justify-content:center;gap:6px;
  width:40px;height:40px;padding:0;border:0;border-radius:50%;
  background:#1b6fe4;color:#fff;cursor:pointer;
  box-shadow:0 6px 20px rgba(16,40,80,.28);
  transition:background .15s,transform .15s,box-shadow .15s;
  -webkit-tap-highlight-color:transparent;
}
body.wr-view .wb-back-top{display:inline-flex}
.wb-back-top:hover{background:#4189ec;transform:translateY(-2px);box-shadow:0 9px 24px rgba(16,40,80,.34)}
.wb-back-top:active{transform:translateY(0)}
.wb-back-top:focus-visible{outline:2px solid #1b6fe4;outline-offset:3px}
.wb-back-top[hidden]{display:none !important}
.wb-back-top svg{width:18px;height:18px;flex:0 0 18px}
/* 登录屏、分享/内嵌态、VO 独立页不显示（VO 页右下角已有 #vo-edit-fab） */
html.is-embed .wb-back-top,
html.share-page .wb-back-top,
html.share-mode .wb-back-top,
html.vo-page .wb-back-top{display:none !important}
@media (max-width:640px){
  .wb-back-top{right:16px;bottom:16px;width:42px;height:42px;padding:0;border-radius:50%}
  .wb-back-top span{display:none}
}
@media (prefers-reduced-motion:reduce){.wb-back-top{transition:none}}

/* ============================================================
   外壳响应式 · shell-drawer-v1（≤1000px）
   解除 body 1000px 桌面下限：侧栏变 off-canvas 抽屉、主区全宽。
   仅窄屏媒体查询内生效，≥1001px 桌面布局零影响。
   交互脚本在 workbench-desktop.html 内联（nav-drawer-open 开关）。
   ============================================================ */
@media (max-width:1000px){
  html,body{min-width:0 !important}
  html .shell-menu-btn{display:inline-flex}
  .topbar{left:0 !important;overflow-x:auto;overflow-y:hidden;scrollbar-width:none}
  .topbar::-webkit-scrollbar{display:none}
  .main{margin-left:0 !important}
  .main:not(.be-full){padding-left:16px;padding-right:16px}
  .embed-viewer{left:0 !important}
  .sidebar,.sidebar.collapsed{width:var(--sidebar-w) !important;transform:translateX(-103%);transition:transform .22s ease;box-shadow:none}
  .sidebar.collapsed .nav-group{display:block}
  .sidebar.collapsed .dt-btn span{display:inline}
  html.nav-drawer-open .sidebar,html.nav-drawer-open .sidebar.collapsed{transform:none;box-shadow:0 12px 40px rgba(0,0,0,.55)}
  .shell-backdrop{position:fixed;inset:0;z-index:25;background:rgba(0,0,0,.45);opacity:0;pointer-events:none;transition:opacity .2s ease}
  html.nav-drawer-open .shell-backdrop{opacity:1;pointer-events:auto}
}
.shell-menu-btn{display:none;align-items:center;justify-content:center;width:32px;height:32px;margin-right:8px;border:1px solid var(--md-outline-variant,rgba(255,255,255,.14));border-radius:6px;background:transparent;color:var(--md-on-surface-variant,#f4f3f0);cursor:pointer;flex:0 0 auto}
.shell-menu-btn:active{background:rgba(255,255,255,.08)}
html.share-mode .shell-menu-btn,html.share-page .shell-menu-btn,html.is-embed .shell-menu-btn,.public-mode .shell-menu-btn{display:none !important}

/* ============================================================
   SEO 管理 · 排版优化 seo-ui-v2（2026-11-13）
   仅排版：统一节奏 / 层级 / 控件一致性，不改结构与交互。
   ============================================================ */
/* 1) 编辑卡头部：标题区与机型选择区两段化 */
.seo-screen .seo-editor-title-row{gap:9px}
.seo-screen .seo-editor-en{font-size:16px;letter-spacing:.1px}
.seo-screen .seo-match-models{margin-top:10px;padding-top:10px;border-top:1px solid var(--border)}
.seo-screen .seo-match-lab{font-weight:600;color:var(--text-secondary);padding-left:12px;border-left:1px solid var(--border-input)}

/* 2) 机型场景行（热急 / 参考 + 复制全部摘要 + 删除）：控件高度统一、行内居中 */
.seo-screen .seo-editor-scenes-row{align-items:center;gap:8px}
.seo-screen .seo-editor-scenes-row > .fe-cp{padding:4px 10px;font-size:12px}
.seo-screen .seo-editor-scenes-row > .seo-mcat-scenes-del{padding:4px 10px;border-radius:6px;font-weight:600}
.seo-screen .seo-mfn-pair{border-radius:6px;overflow:hidden}
.seo-screen .seo-mfn-pair .seo-mfn-fn{font-weight:600}

/* 3) 字段行节奏：去掉 padding+margin 双重间距（仅 SEO 作用域） */
.seo-screen .fe-row{padding:12px 0;margin-bottom:0}

/* 4) 词池 tabs：等宽铺满 → 自适应宽度；窄屏沿用原 3 列 / 2 列断点 */
.seo-pool-tabs{gap:8px;padding-bottom:12px;border-bottom:1px solid var(--border);margin-bottom:14px}
.seo-pool-tabs .opt{flex:0 0 auto;padding:6px 16px}
@media (max-width:1100px){
  .seo-pool-tabs .opt{flex:1 1 calc(33.333% - 6px);min-width:120px}
}
@media (max-width:720px){
  .seo-pool-tabs .opt{flex:1 1 calc(50% - 6px);font-size:11.5px;padding:6px 6px}
}

/* 5) 顶栏右侧词库入口组：去掉「词库」前缀；切到词类 tab 时左栏（搜索+类目）整体隐藏，让内容区全宽 */
.seo-cols > .card:has(> #seo-model-search-host[hidden]){display:none}

/* ============================================================
   SEO 管理 · 第二轮排版优化 seo-ui-v3（2026-11-13）
   纯排版：状态可视化 / 密度 / tab 语义化，不改结构与交互。
   ============================================================ */
/* 1) 类目「已填写」状态点：done 类 JS 一直在加但从未有样式；选中 .on 保持蓝色优先 */
.seo-cat.done:not(.on) > span:first-child{background:#2aa04f;box-shadow:0 0 0 2.5px rgba(42,160,79,.14)}
.seo-cat.done:not(.on) .seo-cat-zh{color:var(--text-secondary)}

/* 2) 左列表密度与分组标题层级（分组头无类名，用 :not(.seo-cat) 圈定；空态提示也顺带收紧） */
.seo-cat{padding:5px 9px !important}
#seo-cat-body > div:not(.seo-cat){padding:10px 9px 4px !important}
#seo-cat-body > div:not(.seo-cat) b{font-size:11.5px !important;color:var(--text-tertiary) !important;font-weight:600 !important;letter-spacing:.5px}
#seo-cat-body > div:not(.seo-cat) span{font-size:10.5px !important;color:var(--text-tertiary)}

/* 3) 编辑字段行：再收紧一档；底部实线分隔改为行间虚线（末行无线） */
.seo-screen .fe-row{padding:10px 0;border-bottom:none}
.seo-screen .fe-row + .fe-row{border-top:1px dashed var(--border)}
.seo-screen .fe-row:last-child{border-top:none}

/* 4) 词池 tabs：描边按钮组 → 下划线式 tab（语义更准、视觉更轻） */
.seo-pool-tabs{gap:2px;padding-bottom:0;border-bottom:1px solid var(--border);margin-bottom:14px}
.seo-pool-tabs .opt{flex:0 0 auto;border:1px solid transparent;background:transparent;border-radius:6px 6px 0 0;padding:7px 14px;position:relative;color:var(--text-secondary)}
.seo-pool-tabs .opt:hover{border-color:transparent;background:var(--surface-nested);color:var(--accent)}
.seo-pool-tabs .opt.on{background:transparent;border-color:transparent;color:var(--accent);font-weight:600}
.seo-pool-tabs .opt.on::after{content:"";position:absolute;left:10px;right:10px;bottom:-1px;height:2px;background:var(--accent);border-radius:2px}
/* 窄屏换行场景回退 pill 样式（下划线在多行时会悬空） */
@media (max-width:1100px){
  .seo-pool-tabs .opt{flex:1 1 calc(33.333% - 6px);min-width:120px;border:1px solid var(--border-input);background:var(--surface-nested);border-radius:6px;padding:6px 8px}
  .seo-pool-tabs .opt.on{background:var(--accent-muted);border-color:var(--accent)}
  .seo-pool-tabs .opt.on::after{display:none}
}
@media (max-width:720px){
  .seo-pool-tabs .opt{flex:1 1 calc(50% - 6px);font-size:11.5px;padding:6px 6px}
}

/* 5) 词块标题：左侧主题色竖条，主次分明 */
.seo-pool-block > b{padding-left:10px;border-left:3px solid var(--accent);line-height:1.25}
.seo-pool-panel + .seo-pool-panel{margin-top:4px}
