/* ============================================================ * Command palette (Cmd / Ctrl + K). Injected into by * js/app/commandPalette.js. Motion respects reduced-motion via * the global guard; focus rings via the global :focus-visible. * ============================================================ */ .cmdk-overlay { position: fixed; inset: 0; z-index: var(--z-modal); display: flex; align-items: flex-start; justify-content: center; padding: 12vh var(--space-4) var(--space-4); background: var(--color-overlay); backdrop-filter: blur(2px); opacity: 0; transition: opacity var(--motion-base) var(--ease-standard); } .cmdk-overlay.active { opacity: 1; } .cmdk-overlay.hidden { display: none; } .cmdk-panel { width: min(560px, 92vw); background: var(--color-bg-surface); border: 1px solid var(--color-border); border-radius: var(--radius-3xl); box-shadow: var(--shadow-2xl); overflow: hidden; transform: translateY(-8px) scale(0.98); transition: transform var(--motion-base) var(--ease-standard); } .cmdk-overlay.active .cmdk-panel { transform: none; } .cmdk-search { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-4) var(--space-5); border-bottom: 1px solid var(--color-border); } .cmdk-search i { color: var(--color-text-muted); } .cmdk-input { flex: 1; min-width: 0; border: none; background: none; font-size: var(--text-md); color: var(--color-text); outline: none; } .cmdk-input::placeholder { color: var(--color-text-faint); } .cmdk-list { list-style: none; margin: 0; padding: var(--space-1-5); max-height: 56vh; overflow-y: auto; } .cmdk-item { display: flex; align-items: center; gap: var(--space-3); padding: var(--space-2-5) var(--space-3); border-radius: var(--radius-lg); cursor: pointer; color: var(--color-text); } .cmdk-item i { width: 20px; text-align: center; color: var(--color-text-muted); } .cmdk-item.is-active { background: var(--color-accent-bg-sm); } .cmdk-item.is-active i { color: var(--color-accent); } .cmdk-empty { padding: var(--space-5); text-align: center; color: var(--color-text-muted); }