/* BluUI_Core → CommandPalette — owning Block stylesheet. */
/* Shared control primitives, scoped to this component's runtime host. */
.blu-command { --blu-widget-primary: var(--bluui-color-primary-solid, #4f46e5); color: var(--bluui-text, #182230); font: 14px/1.5 var(--bluui-font, Inter, ui-sans-serif, system-ui, sans-serif); min-width: 0; width: 100%; }
.blu-command *, .blu-command *::before, .blu-command *::after { box-sizing: border-box; }
.blu-command [hidden] { display: none !important; }
.blu-command .blu-control { display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 36px; padding: 7px 12px; border: 1px solid var(--bluui-border, #dce3ed); border-radius: 8px; background: var(--bluui-surface, #fff); color: var(--bluui-text, #344054); font: inherit; font-weight: 500; line-height: 1.25; cursor: pointer; white-space: nowrap; }
.blu-command .blu-control:hover:not(:disabled) { background: var(--bluui-surface-muted, #f4f5fb); border-color: var(--bluui-primary-border, #a5a1f8); }
.blu-command .blu-control--primary { background: var(--blu-widget-primary); border-color: var(--blu-widget-primary); color: var(--bluui-on-primary, white); }
.blu-command .blu-control--primary:hover:not(:disabled) { background: var(--bluui-color-primary-solid, #4338ca); color: var(--bluui-on-primary, white); }
.blu-command .blu-control--quiet { border-color: transparent; background: transparent; }
.blu-command .blu-control--icon { flex: 0 0 32px; min-width: 32px; min-height: 32px; padding: 3px; font-size: 18px; }
.blu-command .blu-control:disabled { opacity: .5; cursor: default; }
.blu-command .blu-input { min-width: 0; width: 100%; min-height: 38px; padding: 7px 10px; border: 1px solid var(--bluui-control-border, #d5deea); border-radius: 7px; background: var(--bluui-surface, white); color: var(--bluui-text, #182230); font: inherit; }
.blu-command :is(.blu-control, .blu-input):focus-visible { outline: 2px solid var(--blu-widget-primary); outline-offset: 2px; }
.blu-command .blu-component-error { color: var(--bluui-danger-text, #b42318); font-size: 12px; margin: 8px 0; overflow-wrap: anywhere; }
.blu-command .blu-interactive__empty { padding: 24px 12px; color: var(--bluui-text-muted, #667085); text-align: center; }
/* Native design canvas stand-in; runtime content stays in the empty host. */
.blu-command-block > .blu-component-preview { display: none; -servicestudio-display: block; -servicestudio-padding: 18px; -servicestudio-border: 1px dashed var(--bluui-control-border, #c7d0e0); -servicestudio-border-radius: 10px; }

/* Native dialog supplies the top layer, focus containment, and inert backdrop. */
.blu-command__dialog { padding: 0; width: min(620px, calc(100vw - 32px)); max-height: min(650px, calc(100dvh - 48px)); border: 1px solid var(--bluui-border, #dce3ed); border-radius: 14px; color: var(--bluui-text, #182230); box-shadow: 0 28px 90px #10182840; overflow: hidden; }
.blu-command__dialog::backdrop { background: var(--bluui-scrim, #18223066); backdrop-filter: blur(3px); }
.blu-command .blu-command__dialog > .blu-input { height: 60px; padding: 18px 20px; border: 0; border-radius: 0; border-bottom: 1px solid var(--bluui-border, #e6eaf1); font-size: 16px; }
.blu-command__list { list-style: none; margin: 0; padding: 10px; max-height: min(430px, calc(100dvh - 200px)); overflow: auto; }
.blu-command__group { padding: 12px 10px 6px; color: var(--bluui-text-muted, #667085); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.blu-command__option { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 52px; padding: 10px 12px; margin: 3px 0; border-radius: 8px; cursor: pointer; }
.blu-command__option[aria-selected="true"] { background: var(--bluui-primary-soft, #f0edff); color: var(--bluui-primary-text, #4338ca); }
.blu-command__option[aria-disabled="true"] { opacity: .45; cursor: default; }
.blu-command__copy { display: flex; flex-direction: column; }
.blu-command__copy small { color: var(--bluui-text-muted, #667085); font-size: 12px; }
.blu-command kbd { padding: 2px 6px; background: var(--bluui-surface-muted, #f5f6fa); border: 1px solid var(--bluui-border, #dce3ed); border-radius: 4px; font: 11px ui-monospace, monospace; white-space: nowrap; }
.blu-command__footer { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 8px; padding: 8px 14px; border-top: 1px solid var(--bluui-border, #e6eaf1); color: var(--bluui-text-muted, #667085); font-size: 11px; }

/* Runtime validation messages sit beside the interactive root. */
.blu-command-block .blu-component-error { color: var(--bluui-danger-text, #b42318); font-size: 12px; margin: 8px 0; overflow-wrap: anywhere; }
