.register-shell-page :is(#character-dock,#register-workspace,#role-register) .op-filters{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding:20px 0;border-top:1px solid var(--register-line);border-bottom:1px solid var(--register-line)}
.op-filters label{min-width:0;margin:0!important;display:block}.op-filters input:not([type=checkbox]),.op-filters select{display:block;width:100%;box-sizing:border-box;margin:8px 0;padding:10px;font:inherit;background:#1b2420;color:var(--register-ink);border:1px solid var(--register-line)}
.op-count{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0;color:var(--register-muted)}.op-count button,.op-filters button,.op-rename button{font:inherit;padding:8px 14px;color:var(--register-ink);background:transparent;border:1px solid var(--register-line);cursor:pointer}
.op-rename{display:flex;gap:12px;flex-wrap:wrap;margin:16px 0}.op-rename label{flex:1;min-width:140px}.op-rename input{width:100%;box-sizing:border-box;padding:10px}.op-rename button{align-self:end}.op-rename [role=status]{width:100%}
.dock-config-name{display:block;font-size:13px;color:var(--register-accent);margin-top:8px}.dock-plans{display:flex;flex-direction:column;gap:8px}.dock-plans a{font-size:13px}.dock-score-reason{font-size:12px;color:var(--register-muted)}
#register-workspace .rw-echo-entry{display:grid;grid-template-columns:minmax(0,1fr);border-bottom:1px solid var(--register-line)}#register-workspace .rw-echo-entry .rw-echo-row{grid-area:1/1;border:0;padding-right:12px}#register-workspace .rw-echo-entry>.rw-favorite-toggle{grid-area:1/1;align-self:start;justify-self:end;margin:10px;width:44px;height:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--register-line);border-radius:8px;padding:0;color:var(--register-accent);background:#1b2b2c;font-size:23px}
#register-workspace .rw-index-substats{font-size:12px;line-height:1.7;color:var(--register-muted);display:flex;flex-wrap:wrap;gap:4px 12px}#register-workspace .rw-index-substats .rw-stat-cell{display:inline-flex;gap:5px;border:0;padding:0}#register-workspace .rw-echo-index{max-height:72vh;overflow:auto;scrollbar-gutter:stable;scroll-padding:12px}#register-workspace .rw-inspector{position:sticky;top:16px;max-height:80vh;overflow:auto;scrollbar-gutter:stable;padding-top:12px}
#register-workspace .rw-inspector .rw-echo-preview{padding:12px 0}#register-workspace .rw-inspector section{padding:12px 0}#register-workspace .rw-inspector section h3{font-size:15px}
.register-shell-page .op-back{display:inline-block;margin-bottom:16px;color:var(--register-accent);text-underline-offset:4px}.register-shell-page .op-empty{padding:32px 0;border-top:1px solid var(--register-line);color:var(--register-muted)}
@media(max-width:1100px){.register-shell-page :is(#character-dock,#register-workspace,#role-register) .op-filters{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.register-shell-page :is(#character-dock,#register-workspace,#role-register) .op-filters{grid-template-columns:repeat(2,minmax(0,1fr))}#register-workspace .rw-library-workspace{display:block}#register-workspace .rw-echo-index{max-height:none;overflow:visible}#register-workspace .rw-inspector{position:static;max-height:none;overflow:visible}#register-workspace .rw-library-workspace:has(.rw-inspector.is-open) .rw-echo-index{display:none}#register-workspace .rw-echo-entry .rw-echo-row{padding-left:0;grid-template-columns:48px minmax(0,1fr)}.op-count{flex-wrap:wrap}}
@media(prefers-reduced-motion:reduce){.register-shell-page *{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
.dock-roster li>.dock-plans{grid-column:1/-1;padding:12px 0;border-top:1px solid var(--register-line)}
#character-dock .dock-roster li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:0 16px}#character-dock .dock-roster li>.dock-plans{grid-column:1/-1}
.op-current-config{color:var(--register-accent)!important;font-size:14px!important;margin:8px 0 16px!important}
/* 复用工作台页签的交互层级；仅作用于 Register 的既有按钮。 */
.register-shell-page :is(#character-dock,#register-workspace,#role-register) button:not(:disabled){cursor:pointer;transition:background-color .18s ease,color .18s ease,border-color .18s ease}
.register-shell-page :is(#character-dock,#register-workspace,#role-register) button:not(:disabled):not([data-delete-role]):not([aria-pressed="true"]):not([aria-selected="true"]):hover{background-color:rgba(154,213,195,.05);color:#c2d4ca}
.register-shell-page :is(#register-workspace,#character-dock) button.rw-primary:not(:disabled):hover{background-color:#b3e3d3;color:var(--register-bg);border-color:#b3e3d3}
.register-shell-page :is(#register-workspace,#role-register) button[aria-pressed="true"]{background-color:rgba(154,213,195,.12);color:var(--register-accent);font-weight:600}
.register-shell-page :is(#character-dock,#register-workspace,#role-register) button:focus-visible{outline:2px solid var(--register-accent);outline-offset:-4px}
.register-shell-page :is(#character-dock,#register-workspace,#role-register) button:disabled{cursor:not-allowed;opacity:.5}
.register-shell-page :is(#character-dock,#register-workspace,#role-register)[aria-busy="true"] button:disabled{cursor:wait}
.register-shell-page :is(#character-dock,#register-workspace,#role-register) [aria-busy="true"] button:disabled{cursor:wait}
.register-shell-page :is(#character-dock,#register-workspace,#role-register) [role="status"]:not(:empty){color:var(--register-accent)}
.register-shell-page :is(#character-dock,#register-workspace,#role-register) [role="alert"]:not(:empty){color:#d5b58a}
@media(max-width:700px){}
@media(max-width:700px){.op-keyboard #register-shell nav{display:none}.op-keyboard #register-workspace .rw-actions{position:static}.op-keyboard #role-register .rr-candidate-surface[data-phase=select]{bottom:0;max-height:90dvh}.op-keyboard :is(input,textarea){scroll-margin:40px}}
@media(max-width:700px){html.register-shell-page{scroll-padding-bottom:124px}.register-shell-page :is(input,textarea,a,button){scroll-margin-bottom:124px}}

/* 两层搜索只调整呈现，原控件与页面事件保持原位逻辑。 */
.register-shell-page .sf-search{display:grid;grid-template-columns:minmax(180px,1fr) auto auto auto;align-items:end;gap:12px 16px;margin:20px 0;min-width:0}
#register-workspace>.register-page-heading+[role="alert"]:empty+.sf-search{border-top:0;padding-top:0}
.register-shell-page .sf-query{grid-column:1;grid-row:1;display:block!important;min-width:0;margin:0!important;text-align:left}
.register-shell-page .sf-query input{display:block;box-sizing:border-box;width:100%;max-width:none;margin:6px 0 0!important;padding:11px 12px;font:inherit;border:1px solid var(--register-line);background:#1b2420;color:var(--register-ink);min-height:44px}
.register-shell-page :is(#character-dock,#register-workspace,#role-register,.rw-inventory-dialog) details.sf-advanced{display:contents;max-width:none;text-align:left}
.register-shell-page .sf-advanced>summary{grid-column:2;grid-row:1;display:flex;align-items:center;justify-content:center;gap:8px;min-height:44px;box-sizing:border-box;padding:10px 14px!important;border:1px solid var(--register-line);color:var(--register-muted);white-space:nowrap;cursor:pointer;list-style:none;transition:background-color .18s,color .18s,border-color .18s}
.register-shell-page .sf-advanced>summary::-webkit-details-marker{display:none}
.register-shell-page .sf-advanced>summary:after{content:'⌄';font-size:15px}
.register-shell-page .sf-advanced[open]>summary{background:rgba(154,213,195,.12);color:var(--register-accent);border-color:#638d7f}
.register-shell-page .sf-advanced[open]>summary:after{content:'⌃'}
.register-shell-page .sf-advanced>summary:hover{background:rgba(154,213,195,.05);color:#c2d4ca}
.register-shell-page .sf-advanced>summary:focus-visible{outline:2px solid var(--register-accent);outline-offset:-4px}
.register-shell-page .sf-advanced:not([open])>.sf-panel{display:none!important}
.register-shell-page .sf-panel{grid-column:1/-1;grid-row:2;margin:0!important;animation:sf-reveal .18s ease-out}
.register-shell-page .sf-closing>.sf-panel{animation:none;opacity:0;transform:translateY(-3px);transition:opacity .18s,transform .18s}
.register-shell-page .sf-actions{grid-column:3;grid-row:1;display:flex;gap:8px;align-items:center}
.register-shell-page .sf-actions button{font:inherit;min-height:44px;padding:10px 14px;background:transparent;border:1px solid var(--register-line);color:var(--register-muted);white-space:nowrap}
.register-shell-page .sf-results{grid-column:4;grid-row:1;font-size:13px;color:var(--register-muted);margin:0!important;padding:12px 0;white-space:nowrap}
#character-dock .sf-search .sf-actions button{border:1px solid var(--register-line);padding:10px 14px;font-size:14px}
.rw-inventory-dialog .sf-panel{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding:16px 0;border-top:1px solid var(--register-line)}
@keyframes sf-reveal{from{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:960px){.register-shell-page .sf-search{grid-template-columns:minmax(0,1fr) auto}.register-shell-page .sf-actions{grid-column:2;grid-row:2}.register-shell-page .sf-results{grid-column:1;grid-row:2;white-space:normal}.register-shell-page .sf-panel{grid-row:3}}
@media(max-width:600px){.register-shell-page .sf-search{gap:10px 12px}.register-shell-page .sf-query{grid-column:1/-1}.register-shell-page .sf-advanced>summary{grid-column:1;grid-row:2;font-size:14px;padding:10px!important;white-space:normal;text-align:center}.register-shell-page .sf-actions button{font-size:14px;padding:10px}.register-shell-page .sf-results{grid-column:2;grid-row:1;align-self:start;justify-self:end;padding:0;font-size:11px;line-height:1.5;max-width:170px;text-align:right}.register-shell-page .sf-search:not(:has(.sf-advanced)) .sf-actions{grid-row:2}.register-shell-page .sf-panel{grid-row:3}}
@media(prefers-reduced-motion:reduce){.register-shell-page .sf-panel{animation:none}}

/* 声骸库只使用页面滚动；能完整容纳的详情才启用 sticky。 */
#register-workspace .rw-echo-index{max-height:none;overflow:visible;scrollbar-gutter:auto}
#register-workspace .rw-inspector{position:static;max-height:none;overflow:visible;scrollbar-gutter:auto;align-self:start;padding-top:16px}
#register-workspace .rw-inspector.rw-sticky{position:sticky;top:16px}
#register-workspace .rw-library-workspace{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(0,1fr);align-items:start;gap:14px}
#register-workspace .rw-echo-entry{margin:0;border-bottom:1px solid var(--register-line);grid-template-columns:minmax(0,1fr)}
#register-workspace .rw-echo-row{min-height:114px;padding:14px 12px;border-left:3px solid transparent!important;grid-template-columns:56px minmax(0,1fr) minmax(120px,.7fr);gap:10px 16px;text-align:left}
#register-workspace .rw-echo-row[aria-pressed=true]{border-left-color:var(--register-accent)!important;background:rgba(154,213,195,.12)}
#register-workspace .rw-echo-row .rw-echo-art,#register-workspace .rw-echo-row img{width:56px;height:64px;object-fit:contain}
#register-workspace .rw-echo-row .rw-index-substats{grid-column:2/-1;display:flex;gap:5px 12px;font-size:12px}
#register-workspace .rw-echo-identity strong{font-size:16px}
#register-workspace .rw-inspector-main .rw-main-reading b{font-size:32px;color:var(--register-accent);font-variant-numeric:tabular-nums}
#register-workspace .rw-detail-substats{display:grid;grid-template-columns:1fr;gap:0}
#register-workspace .rw-detail-substats .rw-stat-cell{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border:0;border-bottom:1px solid var(--register-line)}
#register-workspace .rw-inspector-favorite{min-height:44px;margin:8px 0;padding:8px 14px}
#register-workspace .rw-inspector .rw-echo-preview{margin-bottom:12px}
@media(max-width:960px){
 #register-workspace .rw-library-workspace{display:block}
 #register-workspace .rw-inspector.rw-sticky{position:static}
 #register-workspace:has(.rw-inspector.is-open) .sf-search{display:none}
 #register-workspace .rw-echo-row{grid-template-columns:48px minmax(0,1fr);padding:12px 8px;min-height:130px}
 #register-workspace .rw-echo-row .rw-echo-art,#register-workspace .rw-echo-row img{width:48px;height:56px}
 #register-workspace .rw-library-workspace .rw-echo-row>.rw-main-reading{grid-column:2;border:0;padding:0;display:flex;flex-wrap:wrap;gap:4px 12px}
 #register-workspace .rw-echo-row .rw-main-reading small{display:none}
 #register-workspace .rw-echo-row .rw-index-substats{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.6}
 #register-workspace .rw-echo-row .rw-index-substats :is(span,b){font-size:12px}
 #register-workspace .rw-inspector{padding-bottom:24px}
}

/* 清单摘要与工具说明不再降至 12px，仍保持主次读数差异。 */
.register-shell-page #register-workspace .rw-echo-row .rw-index-substats,.register-shell-page #register-workspace .rw-echo-row .rw-index-substats :is(span,b){font-size:14px;line-height:1.55;color:var(--register-muted)}
.register-shell-page #register-workspace #rw-tools :is(.rt-eyebrow,.rt-metrics dt,.rt-context p){font-size:14px;color:var(--register-muted);line-height:1.55}

/* 收藏与整张条目共享网格，不另占操作栏；仅在相邻内容预留触控区域。 */
#register-workspace .rw-library-workspace .rw-echo-row>.rw-main-reading{padding-right:48px}
@media(max-width:960px){#register-workspace .rw-library-workspace .rw-echo-row>.rw-echo-identity{padding-right:48px}#register-workspace .rw-library-workspace .rw-echo-row>.rw-main-reading{padding-right:0}}

/* 装备详情独立分区；保留库双栏、移动返回和原操作标记。 */
#register-workspace .rw-inspector .rw-equipment-hero{text-align:center;padding:12px 12px 18px;border-radius:12px;background:radial-gradient(ellipse at 50% 24%,#294b46 0,transparent 70%)}
#register-workspace .rw-inspector .rw-equipment-hero .rw-echo-preview{display:flex;flex-direction:column;align-items:center;gap:12px;padding:4px 0 0;margin:0;border:0;min-width:0}
#register-workspace .rw-inspector .rw-equipment-hero .rw-echo-art{display:grid;place-items:center;width:132px;height:132px;box-sizing:border-box;padding:12px;border:1px solid var(--register-line);border-radius:12px;background:#122225;overflow:visible}
#register-workspace .rw-inspector .rw-equipment-hero img{width:100%;height:100%;max-width:100%;max-height:100%;min-width:0;min-height:0;object-fit:contain;object-position:center}
#register-workspace .rw-inspector .rw-equipment-hero h3{font-size:23px;line-height:1.4;margin:0;overflow-wrap:anywhere}
#register-workspace .rw-inspector .rw-equipment-hero .rw-echo-preview p{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:0}
#register-workspace .rw-equipment-hero .rw-echo-preview p span{padding:4px 10px;border:1px solid var(--register-line);border-radius:20px;font-size:14px}
#register-workspace .rw-inspector .rw-equipment-hero .rw-completeness{font-size:14px;margin:12px 0 0}
#register-workspace .rw-inspector :is(.rw-equipment-card,.rw-equipment-compare){padding:16px;margin-top:14px;border:1px solid var(--register-line);border-radius:12px;background:#142526}
#register-workspace .rw-inspector .rw-equipment-card h3{font-size:15px;color:var(--register-muted);margin-bottom:10px}
#register-workspace .rw-inspector-main .rw-main-reading{display:grid;gap:5px;text-align:center}
#register-workspace .rw-inspector-main .rw-main-reading small{font-size:13px;color:var(--register-muted)}
#register-workspace .rw-inspector-main .rw-main-reading b{font-size:38px;line-height:1.25}
#register-workspace .rw-inspector .rw-detail-substats{gap:6px}
#register-workspace .rw-inspector .rw-detail-substats .rw-stat-cell{min-height:40px;padding:8px 10px;box-sizing:border-box;border:0;border-radius:7px;align-items:center;background:#1b3030;font-size:15px;line-height:1.5}
#register-workspace .rw-detail-substats .rw-stat-cell b{text-align:right;white-space:nowrap;color:#e0f1eb;font-variant-numeric:tabular-nums}
#register-workspace .rw-inspector .rw-equipment-actions{border:0;margin-top:18px;padding:0}
#register-workspace .rw-equipment-secondary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
#register-workspace .rw-equipment-secondary :is(a,button){display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:44px;margin:0;padding:10px;border:1px solid var(--register-line);border-radius:8px;background:#203635;color:var(--register-text);text-decoration:none;text-align:center;font-size:15px;line-height:1.4}
#register-workspace .rw-inspector .rw-equip-action{margin-top:14px;padding:14px;border:1px solid #456b61;border-radius:12px;background:#1b302d;max-width:none;text-align:left}
#register-workspace .rw-equip-action summary{font-size:16px;font-weight:600;color:#c2eadc;cursor:pointer}
#register-workspace .rw-inspector :is(.rw-equip-action,.rw-equipment-compare) label{display:grid;gap:7px;margin:14px 0;min-width:0}
#register-workspace .rw-inspector :is(.rw-equip-action,.rw-equipment-compare) select{width:100%;min-width:0;max-width:100%;box-sizing:border-box;min-height:44px;margin:0}
#register-workspace .rw-inspector :is([data-equip],[data-library-compare]){width:100%;min-height:44px;box-sizing:border-box;border-radius:8px;font-size:15px;padding:10px}
#register-workspace .rw-inspector [data-equip]:not(:disabled){background:#8dd3be;color:#10231e;border:1px solid #a7e2cf;font-weight:600}
#register-workspace .rw-inspector .rw-equipment-compare h3{font-size:17px}
#register-workspace .rw-inspector :is(.rw-equipment-compare,.rw-equip-action,.rw-equipment-context) p{font-size:14px;line-height:1.6;color:var(--register-muted)}
#register-workspace .rw-inspector .rw-equipment-danger{margin-top:20px;padding:0;border:0}
#register-workspace .rw-equipment-danger [data-remove]{display:block;width:100%;box-sizing:border-box;min-height:44px;margin:0;font-size:15px;line-height:1.4;padding:9px 14px;border:1px solid #78504f;border-radius:8px;background:#35272a;color:#e4bab6}
