/* ── palette.css — the command palette (Ctrl+K), the keyboard sheet (?) and
   the numbers on the function row. Tokens from desk.css; no new colours. ── */

/* the palette */
.gc-pal{ position:fixed; inset:0; z-index:600; background:var(--scrim-1); display:flex; justify-content:center; align-items:flex-start; padding:10vh var(--sp-5) var(--sp-5); }
.gc-pal-box{ width:min(calc(660 * var(--u)),100%); max-height:72vh; display:flex; flex-direction:column; background:var(--panel); border:1px solid var(--line-2); box-shadow:var(--shadow-lift); font:var(--fs-4)/var(--lh-2) var(--sans); color:var(--text); }
.gc-pal-head{ display:flex; align-items:center; gap:var(--sp-2h); height:var(--h-strip); padding:0 var(--sp-3h); border-bottom:1px solid var(--line); flex-shrink:0; }
.gc-pal-head .c-prompt{ color:var(--accent); font:600 var(--fs-4) var(--mono); }
.gc-pal-in{ flex:1; min-width:0; background:transparent; border:0; outline:0; color:var(--text); font:var(--fs-4) var(--mono); padding:0; }
.gc-pal-in::placeholder{ color:var(--dim); }
.gc-pal-list{ flex:1 1 auto; overflow:auto; padding:var(--sp-1) 0 var(--sp-1h); }
.gc-pal-h{ font:var(--fs-1) var(--mono); letter-spacing:.16em; text-transform:uppercase; color:var(--dim); padding:var(--sp-2) var(--sp-3h) var(--sp-1); }
.gc-pal-row{ display:grid; grid-template-columns:calc(76 * var(--u)) minmax(0,1fr) auto; gap:0 var(--sp-3); align-items:baseline; padding:var(--sp-1h) var(--sp-3h) var(--sp-1h) var(--sp-3); border-left:2px solid transparent; cursor:pointer; }
.gc-pal-row.on{ background:var(--panel-2); border-left-color:var(--accent); }
.gc-pal-row .k{ font:var(--fs-1) var(--mono); letter-spacing:.12em; color:var(--dim); }
.gc-pal-row .t{ overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.gc-pal-row .t .s{ color:var(--muted); font-size:var(--fs-2); margin-left:var(--sp-2); }
.gc-pal-row .t .n{ font:var(--fs-1) var(--mono); letter-spacing:.1em; text-transform:uppercase; color:var(--dim); margin-left:var(--sp-2); }
.gc-pal-row .c{ font:var(--fs-2) var(--mono); letter-spacing:.08em; color:var(--accent); }
.gc-pal-row.dim .t{ color:var(--muted); } .gc-pal-row.dim .c{ color:var(--accent-dim); }
.gc-pal mark{ background:transparent; color:var(--accent); font-weight:600; }
.gc-pal-row.dim mark{ color:var(--text); }
.gc-pal-empty{ padding:var(--sp-3h); color:var(--muted); }
.gc-pal-foot{ display:flex; flex-wrap:wrap; gap:var(--sp-1) var(--sp-4); padding:var(--sp-2) var(--sp-3h); border-top:1px solid var(--line); font:var(--fs-1) var(--mono); color:var(--dim); flex-shrink:0; }

/* a key */
kbd.gc-k{ display:inline-block; font:var(--fs-1) var(--mono); color:var(--text); background:var(--panel-2); border:1px solid var(--line-2); border-bottom-width:2px; border-radius:2px; padding:0 var(--sp-1); margin:0; line-height:calc(15 * var(--u)); vertical-align:baseline; white-space:nowrap; }

/* the sheet (a house dialog with a table of keys) */
.gc-sheet .victory-box{ width:min(calc(620 * var(--u)),100%); }
.gc-sheet-t{ border-collapse:collapse; width:100%; }
.gc-sheet-t td{ padding:var(--sp-0) 0; vertical-align:top; }
.gc-sheet-t .gc-sheet-k{ width:calc(190 * var(--u)); white-space:nowrap; padding-right:var(--sp-3); }
.gc-sheet-t .gc-sheet-h{ font:var(--fs-1) var(--mono); letter-spacing:.16em; text-transform:uppercase; color:var(--muted); padding:var(--sp-2h) 0 var(--sp-1); }
.gc-sheet-t tr:first-child .gc-sheet-h{ padding-top:0; }

/* the numbers on the active department's row: Ctrl+Shift+n */
.fn-row .fn[data-gc-n]::before{ content:attr(data-gc-n); font-size:var(--fs-1); color:var(--dim); margin-right:var(--sp-1); letter-spacing:0; }
