/* ═══════════════════════════════════════════════════════════════
   CMDK — Command Palette (Ctrl+K). Estilo Quiet Light por tokens do
   shell (dark automático via :root[data-theme="dark"], sem overrides
   próprios — herda --bg/--text/--line/…). Teclado-primeiro.
   ═══════════════════════════════════════════════════════════════ */

.cmdk-overlay{
  position:fixed; inset:0; z-index:6000;
  display:none;
  align-items:flex-start; justify-content:center;
  padding-top:12vh;
  background:var(--dim);
  -webkit-backdrop-filter:blur(3px); backdrop-filter:blur(3px);
}
.cmdk-overlay.on{ display:flex; }
html.cmdk-lock{ overflow:hidden; }

.cmdk-panel{
  width:min(620px, calc(100vw - 32px));
  max-height:70vh;
  display:flex; flex-direction:column;
  background:var(--bg1);
  border:1px solid var(--line2);
  border-radius:14px;
  box-shadow:var(--shadow-lg);
  overflow:hidden;
  font-family:var(--font-ui);
  animation:cmdk-pop .12s ease-out;
}
@keyframes cmdk-pop{ from{ transform:translateY(-6px); opacity:0 } to{ transform:none; opacity:1 } }
body[data-motion="off"] .cmdk-panel{ animation:none; }

.cmdk-search{
  display:flex; align-items:center; gap:10px;
  padding:12px 14px;
  border-bottom:1px solid var(--line);
}
.cmdk-search-ic{ display:flex; color:var(--text3); flex:0 0 auto; }
.cmdk-search input{
  flex:1 1 auto; min-width:0;
  border:0; outline:0; background:transparent;
  font-size:15px; color:var(--text);
  font-family:inherit;
}
.cmdk-search input::placeholder{ color:var(--text3); }
.cmdk-kbd{
  flex:0 0 auto;
  font-family:var(--font-mono); font-size:10.5px;
  color:var(--text3);
  border:1px solid var(--line2); border-radius:6px;
  padding:2px 6px;
}

.cmdk-list{
  overflow-y:auto; overscroll-behavior:contain;
  padding:6px 0;
}
.cmdk-group{ padding:2px 0 4px; }
.cmdk-group + .cmdk-group{ border-top:1px solid var(--line); }
.cmdk-group-label{
  padding:8px 14px 4px;
  font-family:var(--font-mono); font-size:10px; letter-spacing:.08em;
  color:var(--text3); text-transform:uppercase;
}
.cmdk-item{
  display:flex; align-items:center; gap:10px;
  padding:8px 14px;
  cursor:pointer;
  font-size:13px; color:var(--text);
  scroll-margin:8px;
}
.cmdk-item.sel{ background:var(--sel); }
.cmdk-ic{
  display:flex; flex:0 0 auto; width:18px; height:18px;
  align-items:center; justify-content:center;
  color:var(--text2);
}
.cmdk-ic svg{ width:16px; height:16px; }
.cmdk-item.sel .cmdk-ic{ color:var(--cyan); }
.cmdk-label{
  flex:1 1 auto; min-width:0;
  white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
}
.cmdk-meta{
  flex:0 0 auto; margin-left:auto;
  font-size:11px; color:var(--text3);
  max-width:45%; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;
  font-variant-numeric:tabular-nums;
}
.cmdk-empty{
  padding:22px 14px; text-align:center;
  color:var(--text3); font-size:12.5px;
}
.cmdk-foot{
  border-top:1px solid var(--line);
  padding:7px 14px;
  font-size:11px; color:var(--text3);
  font-family:var(--font-mono); letter-spacing:.02em;
}

/* botão discreto ⌘K na topbar (descoberta) */
.cmdk-topbtn .cmdk-kbd{ margin-left:2px; }

/* ecrãs estreitos: quase full-width, encosta ao topo */
@media (max-width:560px){
  .cmdk-overlay{ padding-top:6vh; }
  .cmdk-panel{ width:calc(100vw - 20px); max-height:80vh; }
  .cmdk-meta{ display:none; }
}

/* 06/10 — grupos na letra da casa (não mono), as letras que casam a negrito
   (sem fundo: é leitura, não marcador) */
.cmdk-group-label{ font-family:var(--font-ui); font-size:11px; font-weight:600; letter-spacing:.04em; }
.cmdk-hit{ background:none; color:inherit; font-weight:700; }
.cmdk-item.sel .cmdk-hit{ color:var(--cyan); }
