/* ⌘K command palette (csi-palette.js): a single plate near the top, the house's gold edge, groups in small caps,
   the active row in the site blue. */
html.csi-k-open { overflow: hidden; }
.csi-k { position: fixed; inset: 0; z-index: 1002; display: flex; justify-content: center; align-items: flex-start; padding: 14vh 16px 16px; background: rgba(2, 2, 6, 0.6); }
.csi-k[hidden] { display: none; }
.csi-k__panel { display: flex; flex-direction: column; width: min(640px, 100%); max-height: 70vh; border: 1px solid var(--csi-line-gold, rgba(212, 175, 55, 0.58)); border-radius: 16px; background: rgba(10, 10, 16, 0.985); box-shadow: 0 30px 80px rgba(0, 0, 0, 0.6); color: var(--pure-white); font-family: var(--font-body); letter-spacing: 0; overflow: hidden; animation: csi-k-in 0.18s ease-out; }
.csi-k__field { position: relative; display: flex; align-items: center; gap: 0.75rem; padding: 0 1.1rem; border-bottom: 1px solid rgba(255, 255, 255, 0.08); color: var(--noble-gold-light); }
.csi-k__input { flex: 1; min-width: 0; height: 58px; border: 0; background: none; color: var(--pure-white); font: 500 1.05rem/1.2 var(--font-body); letter-spacing: 0; outline: none; }
.csi-k__ph { position: absolute; left: 2.9rem; color: rgba(236, 240, 246, 0.5); font-size: 1.05rem; pointer-events: none; }
.csi-k__input:not(:placeholder-shown) + .csi-k__ph { display: none; }
.csi-k kbd { display: inline-flex; align-items: center; min-width: 22px; height: 22px; padding: 0 0.4rem; border: 1px solid rgba(255, 255, 255, 0.18); border-radius: 6px; color: rgba(236, 240, 246, 0.7); font: 600 0.7rem/1 var(--font-body); }
.csi-k__list { flex: 1; overflow-y: auto; padding: 0.4rem; list-style: none; }
.csi-k__group { padding: 0.8rem 0.75rem 0.35rem; color: var(--noble-gold-light); font-size: 0.64rem; font-weight: 600; letter-spacing: 0.2em; text-transform: uppercase; }
.csi-k__item { display: flex; align-items: center; gap: 0.75rem; min-height: 44px; padding: 0 0.75rem; border-radius: 10px; cursor: pointer; }
.csi-k__item svg { flex-shrink: 0; width: 16px; height: 16px; color: var(--noble-gold-light); }
.csi-k__label { min-width: 0; overflow: hidden; font-size: 0.95rem; text-overflow: ellipsis; white-space: nowrap; }
.csi-k__srch { color: rgba(236, 240, 246, 0.7); }
.csi-k__item.is-active { background: rgba(0, 113, 227, 0.22); box-shadow: inset 0 0 0 1px rgba(0, 163, 255, 0.5); }
.csi-k__item.is-active svg { color: var(--pure-white); }
.csi-k__empty { padding: 1rem 1.2rem; color: rgba(236, 240, 246, 0.7); font-size: 0.9rem; }
.csi-k__empty[hidden] { display: none; }
.csi-k__foot { display: flex; gap: 1.2rem; padding: 0.6rem 1.1rem; border-top: 1px solid rgba(255, 255, 255, 0.08); color: rgba(236, 240, 246, 0.55); font-size: 0.74rem; }
.csi-k__foot span { display: inline-flex; align-items: center; gap: 0.3rem; }
@keyframes csi-k-in { from { opacity: 0; transform: translateY(-6px); } to { opacity: 1; transform: none; } }
@media (max-width: 600px) { .csi-k { padding-top: 8vh; } .csi-k__foot { display: none; } }
@media (prefers-reduced-motion: reduce) { .csi-k__panel { animation: none; } }
/* The ways in without a keyboard: Settings ⚙ → Quick actions (the shortcut shown where there is a keyboard), and a held Search. */
.csi-k-entry { width: 100%; border-left: 0; border-right: 0; border-bottom: 0; background: none; cursor: pointer; text-align: left; flex-wrap: wrap; }
.csi-k-entry__keys { padding: 0.1rem 0.45rem; border: 1px solid rgba(255, 255, 255, 0.22); border-radius: 5px; color: rgba(255, 255, 255, 0.7); font: 600 0.72rem/1.4 var(--font-body); }
.csi-k-entry__hold { display: none; flex-basis: 100%; padding-left: calc(16px + 0.6rem); color: rgba(255, 255, 255, 0.55); font-size: 0.78rem; }
@media (pointer: coarse) { .csi-k-entry__keys { display: none; } .csi-k-entry__hold { display: block; } }
.nav-search[data-ghost-search] { -webkit-touch-callout: none; -webkit-user-select: none; user-select: none; touch-action: manipulation; }
