
body.cb-module{--ink:var(--ui-text);--muted:var(--ui-muted);--line:var(--ui-border);--canvas:var(--ui-bg);--accent:var(--ui-accent);--accent-dark:var(--ui-text)}
.cb-module :is(aside,article,dialog,.ipc-row,.position-fact,.badge,.viewerbar,.toolbar,.table-wrap){background:var(--ui-surface)!important;color:var(--ui-text)!important;border-color:var(--ui-border)!important}
.cb-module :is(button,input,select,a.button){background:var(--ui-raised);color:var(--ui-text);border-color:var(--ui-border);min-height:44px}
.cb-module :is(p,small,.row span,.row em,.notice,.ipc-row span,footer){color:var(--ui-muted)}
.cb-module :is(.row[aria-current=true],tbody tr.table-selected,.tabs button.on){background:var(--ui-tint)!important;color:var(--ui-text)!important}
.cb-module .position-fact strong,.cb-module td button{color:var(--ui-text)}
.cb-module .topin section{min-width:0;flex:1}.cb-module header small{display:none}
.cb-module .mobile-library-bar{overflow-x:auto;justify-content:flex-start}.cb-module .mobile-library-bar a{min-width:56px}
.cb-module :is(.loc-canvas,.canvas,#visual){background:var(--ui-subtle)!important}
html[data-color-mode=dark] .cb-module :is(.loc-art svg,.full-art svg){filter:invert(.9) hue-rotate(180deg)}
.cb-module dialog::backdrop{background:#0009}.cb-module .table-wrap{overflow:auto}.cb-module td{white-space:nowrap}
@media(max-width:800px){.cb-module .filters>*{min-width:0}.cb-module .filters select{flex:1 1 40%}.cb-module article{padding:12px}.cb-module .toolbar{gap:5px;padding:7px}.cb-module .toolbar strong{font-size:13px}.cb-module .topin h1{font-size:17px!important}.cb-module #list{height:30vh}}

/* Neutral graphite and silver palette from the original CLP locator. */
html[data-color-mode="light"] body.cb-module{--ui-bg:#f3f4f6;--ui-surface:#fff;--ui-raised:#fff;--ui-subtle:#f0f1f3;--ui-border:#d3d7dc;--ui-text:#171a1f;--ui-muted:#646a73;--ui-accent:#20242a;--ui-tint:#e9ebee}
html[data-color-mode="dark"] body.cb-module{--ui-bg:#090a0c;--ui-surface:#141619;--ui-raised:#202327;--ui-subtle:#101215;--ui-border:#383d43;--ui-text:#e8e9eb;--ui-muted:#b2b6bd;--ui-accent:#c5cad1;--ui-tint:#2c3036}
html[data-color-mode] body.cb-module #allCb{background:linear-gradient(180deg,#41464e,#171a1f 52%,#090a0c)!important;color:#fff!important;border-color:#555b63!important;box-shadow:inset 0 1px 0 #747981!important}
html[data-color-mode] body.cb-module .tabs button{background:transparent!important;color:var(--ui-muted)!important}
html[data-color-mode] body.cb-module .tabs button.on{color:var(--ui-text)!important;border-bottom-color:var(--ui-accent)!important}
html[data-color-mode] body.cb-module .row[aria-current=true]{background:linear-gradient(145deg,var(--ui-surface),var(--ui-tint))!important;border-color:var(--ui-accent)!important;box-shadow:inset 3px 0 var(--ui-accent)!important}
html[data-color-mode] body.cb-module .fact{background:var(--ui-subtle)!important}
html[data-color-mode] body.cb-module .position-fact{background:linear-gradient(145deg,var(--ui-surface),var(--ui-tint))!important;box-shadow:inset 0 1px 0 #ffffff15,0 5px 14px #0002!important}

/* Plain FIN links and a single understated search focus border. */
html body .all-table td button[data-open-id]{background:transparent!important;color:var(--ink,#20242a)!important;border:0!important;box-shadow:none!important;padding:0;border-radius:0}
html body :is(button,a,select):focus-visible{outline:2px solid #777e87!important;outline-offset:2px}
html body input:is(:focus,:focus-visible){outline:none!important;box-shadow:none!important;border-color:#7b828b!important}
html[data-color-mode="dark"] body input:is(:focus,:focus-visible){border-color:#9198a1!important}
html[data-color-mode="dark"] body #tableSearch{background:#202327!important;color:#e8e9eb!important;caret-color:#e8e9eb}

/* Comfortable compact locator layout. */
html body .layout{gap:12px;grid-template-columns:280px minmax(0,1fr)}
html body #count{padding:11px 14px;font-size:15px}
html body #list{padding:5px;height:calc(100vh - 185px)}
html body #list .row{padding:9px 11px;margin:2px 0;min-height:44px}
html body #list .row strong{font-size:15px;line-height:1.35}
html body #list .row p{font-size:13px;margin:3px 0;line-height:1.3}
html body #list .row em,html body #list .row span{font-size:12px}
html body article{padding:16px}
html body article>h2{font-size:22px;line-height:1.3;margin:0 0 5px;overflow-wrap:anywhere}
html body article>.cb-detail-fin{display:inline-block;margin:0 12px 3px 0;font-size:14px;vertical-align:middle}
html body article>.badge{display:inline-block;margin:0 0 3px;padding:3px 8px;font-size:12px;vertical-align:middle}
html body .tabs{margin:5px 0 12px;gap:3px}
html body .tabs button{padding:8px 13px;min-height:44px;font-size:14px}
html body .facts{gap:10px;margin:10px 0 14px}
html body .fact{min-height:68px;padding:12px 15px}
html body .fact small{margin-bottom:5px;font-size:11px}
html body .fact strong{font-size:18px}
html body .viewerbar{padding:6px 9px;gap:6px}
html body .viewerbar button{min-height:44px;padding:7px 10px}
html body .loc-canvas{height:calc(100vh - 250px)}
@media(max-width:1000px) and (min-width:801px){html body .layout{grid-template-columns:245px minmax(0,1fr)}}
@media(max-width:800px){html body .layout{grid-template-columns:minmax(0,1fr)}html body #list{height:28vh;min-height:160px}html body article{padding:12px}html body article>h2{font-size:20px}html body .loc-canvas{height:55vh}html body .facts{grid-template-columns:repeat(2,minmax(0,1fr))}html body .fact{padding:11px;min-width:0}html body .fact strong{overflow-wrap:anywhere}}

/* Restore comfortable sidebar sizing while retaining compact detail layout. */
html body .layout{grid-template-columns:320px minmax(0,1fr)}
html body #count{padding:16px;font-size:15px}
html body #list{padding:8px}
html body #list .row{padding:13px 12px;margin:3px 0}
html body #list .row strong{font-size:17px;line-height:1.35}
html body #list .row p{font-size:14px;margin:4px 0;line-height:1.5}
html body #list .row em,html body #list .row span{font-size:13px}
@media(max-width:1000px) and (min-width:801px){html body .layout{grid-template-columns:280px minmax(0,1fr)}}
@media(max-width:800px){html body .layout{grid-template-columns:minmax(0,1fr)}}
