/* Buscador global: estilos aislados; conserva la navegación y los tokens Atlas. */
#appHeader .module-search-trigger {
  display:flex; align-items:center; gap:9px; flex:0 0 auto;
  width:clamp(184px, 19vw, 255px); height:36px; padding:0 11px;
  border:1px solid var(--border); border-radius:var(--radius-sm);
  background:var(--bg); color:var(--text-2); font:500 12px var(--font-sans);
  cursor:pointer; white-space:nowrap;
}
#appHeader .module-search-trigger:hover { border-color:var(--accent); background:var(--accent-weak); color:var(--accent-strong); }
.module-search-trigger svg { width:17px; height:17px; flex:none; }
.module-search-trigger kbd { margin-left:auto; font:11px var(--font-code); color:var(--text-3); }
#appHeader .module-search-trigger:focus-visible,
.module-search-close:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
#moduleSearchDialog {
  box-sizing:border-box; width:min(700px, calc(100vw - 40px)); max-width:none;
  max-height:min(740px, 82vh); max-height:min(740px, 82dvh);
  margin:9vh auto auto; padding:0; border:1px solid var(--border); border-radius:var(--radius-lg);
  color:var(--text); background:var(--surface); box-shadow:var(--shadow-modal);
  font:14px/1.5 var(--font-sans); overflow:hidden;
}
#moduleSearchDialog[open] { display:flex; flex-direction:column; }
#moduleSearchDialog::backdrop { background:rgba(22,42,56,.42); }
.module-search-heading { display:flex; align-items:flex-start; gap:16px; padding:20px 20px 12px; flex:none; }
.module-search-heading h2 { font-size:19px; line-height:1.35; margin:0 0 5px; font-weight:700; }
.module-search-heading p { font-size:12px; color:var(--text-2); margin:0; }
.module-search-close { margin-left:auto; width:44px; height:44px; flex:none; border:1px solid var(--border); border-radius:var(--radius-sm); background:var(--surface); color:var(--text-2); font:24px/1 var(--font-sans); cursor:pointer; }
.module-search-field { margin:0 20px 12px; padding:0 12px; display:flex; align-items:center; gap:10px; border:2px solid var(--accent); border-radius:var(--radius-sm); flex:none; }
.module-search-field svg { width:19px; height:19px; color:var(--accent); flex:none; }
#moduleSearchInput { box-sizing:border-box; min-width:0; width:100%; height:48px; padding:0; border:0; outline:0; box-shadow:none; border-radius:0; color:var(--text); background:transparent; font:16px var(--font-sans); }
#moduleSearchInput::placeholder { color:var(--text-3); opacity:1; }
#moduleSearchStatus { margin:0; padding:0 22px 10px; font-size:12px; color:var(--text-2); flex:none; }
#moduleSearchResults { overflow:auto; overscroll-behavior:contain; min-height:0; padding:0 10px 10px; scroll-padding:6px; }
.module-search-option { padding:12px; border:1px solid transparent; border-radius:var(--radius-sm); cursor:pointer; }
.module-search-option + .module-search-option { margin-top:2px; }
.module-search-option:hover { background:var(--hover); }
.module-search-option[aria-selected="true"] { border-color:var(--accent); background:var(--accent-weak); }
.module-search-name { display:block; font-weight:700; font-size:14px; color:var(--text); }
.module-search-path { display:block; font-size:12px; color:var(--text-2); margin-top:4px; overflow-wrap:anywhere; }
#moduleSearchEmpty { margin:0; padding:20px 22px 32px; color:var(--text-2); font-size:14px; }
.module-search-footer { padding:12px 22px; margin:0; border-top:1px solid var(--border); background:var(--bg); color:var(--text-2); font-size:11px; flex:none; }
.module-search-footer kbd { font:11px var(--font-code); color:var(--text); }
.module-search-sr { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
@media (max-width:1100px) and (min-width:769px) {
  #appHeader .header-logo { display:none; }
}
@media (max-width:768px) {
  #appHeader .module-search-trigger { width:44px; height:44px; padding:0; justify-content:center; background:var(--surface); }
  #appHeader .module-search-trigger span, #appHeader .module-search-trigger kbd { display:none; }
  #appHeader .module-search-trigger svg { width:20px; height:20px; }
  #appHeader .header-brand { max-width:calc(100vw - 216px); min-width:0; flex-shrink:1; }
  #moduleSearchDialog { width:calc(100vw - 20px); max-height:calc(100vh - 24px); max-height:calc(100dvh - 24px); margin:12px auto auto; border-radius:var(--radius); }
  .module-search-heading { padding:16px 14px 12px; gap:10px; }
  .module-search-heading h2 { font-size:18px; }
  .module-search-field { margin-left:14px; margin-right:14px; }
  #moduleSearchStatus { padding-left:16px; padding-right:16px; }
  #moduleSearchResults { padding-left:6px; padding-right:6px; }
  .module-search-footer { display:none; }
}
