/* Accesos directos (js/shortcuts.js): barra de botones, lo que se va escribiendo y la ventana de gestión. */
#shortcut-bar { position:fixed; z-index:8100; display:flex; flex-wrap:wrap; border:1px solid #3a3e4a; border-radius:4px; overflow:hidden; }
#shortcut-bar[hidden] { display:none; }
#shortcut-bar button { background:#1a1d24; color:#ccc; border:0; border-right:1px solid #3a3e4a; padding:4px 10px; font:12px 'Segoe UI',sans-serif; cursor:pointer; white-space:nowrap; }
#shortcut-bar button:last-child { border-right:0; }
#shortcut-bar button:hover { background:#2a2f3a; color:#fff; }
#shortcut-bar .shortcut-bar__edit { color:#8a8f9a; }
html.share-mode #shortcut-bar, html.share-mode #shortcut-typed { display:none !important; }

#shortcut-typed { position:fixed; left:50%; bottom:calc(var(--statusbar-h, 28px) + 14px); transform:translateX(-50%); z-index:9000; display:flex; align-items:center; gap:10px;
  padding:6px 12px; border-radius:6px; background:#1a1d24; color:#ddd; font:13px 'Segoe UI',sans-serif; box-shadow:0 4px 14px rgba(0,0,0,.3); pointer-events:none; }
#shortcut-typed[hidden] { display:none; }
#shortcut-typed b { font:600 15px ui-monospace,Consolas,monospace; color:#ff9c3a; }
#shortcut-typed span { opacity:.75; }
#shortcut-typed span.is-hit { opacity:1; color:#fff; }
#shortcut-typed kbd { font:12px ui-monospace,Consolas,monospace; background:#2a2f3a; border-radius:3px; padding:0 4px; }

.ml-dialog.shortcut-dialog { width:min(760px,calc(100vw - 32px)); }
.shortcut-dialog h4 { margin:6px 0 0; font-size:12px; }
.shortcut-dialog input[type=search] { padding:6px 8px; border:1px solid #ccc; border-radius:3px; font:inherit; width:100%; box-sizing:border-box; }
.sc-results, .sc-list { list-style:none; margin:0; padding:0; display:grid; gap:4px; }
.sc-results { max-height:220px; overflow:auto; }
.sc-results li { display:flex; align-items:center; justify-content:space-between; gap:8px; padding:4px 8px; border:1px solid #e3e3e3; border-radius:4px; }
.sc-results small, .sc-name small { color:#777; }
.sc-head, .sc-item { display:grid; grid-template-columns:minmax(0,1fr) 70px 96px 46px 32px 32px 64px; gap:6px; align-items:center; }
.sc-head { font-size:11px; color:#777; padding:0 8px; }
.sc-head span:nth-child(4) { grid-column:4; }
.sc-item { padding:4px 8px; border:1px solid #e3e3e3; border-radius:4px; }
.sc-item.is-off { opacity:.55; }
.sc-name { display:grid; gap:1px; min-width:0; }
.sc-name input, .sc-alias { padding:3px 6px; border:1px solid #ccc; border-radius:3px; font:inherit; font-size:12px; min-width:0; box-sizing:border-box; }
.sc-alias { font-family:ui-monospace,Consolas,monospace; text-transform:lowercase; width:100%; }
.sc-key { font-family:ui-monospace,Consolas,monospace; }
.sc-key.is-rec { border-color:#e8590c; color:#e8590c; }
.sc-bar { display:flex; justify-content:center; }
.sc-del { color:#b00; }
.sc-empty { color:#777; font-size:12px; padding:4px 8px; }
.sc-hint { margin:0; font-size:12px; color:#1d5f8a; background:#eef6fc; padding:6px 8px; border-radius:3px; }
.sc-hint.is-error { color:#a33; background:#fff0f0; }
.sc-builtin summary { cursor:pointer; font-size:12px; margin:6px 0; }
.sc-builtin .sc-item { grid-template-columns:minmax(0,1fr) auto auto auto; }
.sc-kbd { font:12px ui-monospace,Consolas,monospace; background:#f0eee8; border-radius:3px; padding:1px 6px; }
@media (max-width:620px){ .sc-head { display:none; } .sc-item { grid-template-columns:1fr 60px 80px 30px; } .sc-item > .ml-btn:not(.sc-key) { grid-row:2; } }

[data-theme="dark"] .shortcut-dialog input[type=search], [data-theme="dark"] .sc-name input, [data-theme="dark"] .sc-alias { background:#2a2a2a; color:#e0e0e0; border-color:#444; }
[data-theme="dark"] .sc-results li, [data-theme="dark"] .sc-item { border-color:#3a3a3a; }
[data-theme="dark"] .sc-kbd { background:#2a2a2a; }
[data-theme="dark"] .sc-hint { background:#16324a; color:#9ccbee; }
[data-theme="dark"] .sc-hint.is-error { background:#3a1f1f; color:#f99; }
.sc-item > .ml-btn { padding:4px 0; text-align:center; }
.sc-builtin .sc-item > .ml-btn { padding:4px 10px; }
/* Letras de tus atajos junto a cada opción del menú, y el «Atajo para…» del clic derecho */
.menu-opt .sc-alias-kbd { margin-left:auto; margin-right:6px; padding:0 5px; border-radius:3px; background:#ffe3c9; color:#8a3c00; font:600 11px ui-monospace,Consolas,monospace; }
.menu-opt .sc-alias-kbd + kbd { margin-left:0; }
.sc-pop { position:fixed; z-index:10050; width:260px; display:grid; gap:6px; padding:10px 12px; border:1px solid #bbb; border-radius:6px; background:#fff; color:#222; font:12px 'Segoe UI',sans-serif; box-shadow:0 6px 20px rgba(0,0,0,.25); }
.sc-pop label { display:flex; align-items:center; justify-content:space-between; gap:8px; }
.sc-pop input[type=text] { width:110px; padding:4px 6px; border:1px solid #ccc; border-radius:3px; font:13px ui-monospace,Consolas,monospace; text-transform:lowercase; }
.sc-pop .sc-pop__check { justify-content:flex-start; }
.sc-pop__msg { margin:0; color:#a33; }
.sc-pop__actions { display:flex; gap:6px; align-items:center; }
[data-theme="dark"] .sc-pop { background:#1e1e1e; color:#e0e0e0; border-color:#3a3a3a; }
[data-theme="dark"] .sc-pop input[type=text] { background:#2a2a2a; color:#e0e0e0; border-color:#444; }

/* Fila «Nuevo atajo» con desplegable */
.sc-new { display:grid; grid-template-columns:minmax(0,1fr) 80px 110px auto auto; gap:6px; align-items:center; }
.sc-combo { position:relative; }
.sc-combo input { width:100%; box-sizing:border-box; padding:6px 8px; border:1px solid #ccc; border-radius:3px; font:inherit; }
.sc-new .sc-alias { padding:6px 8px; }
.sc-options { position:absolute; z-index:5; left:0; right:0; top:100%; margin:2px 0 0; padding:2px; list-style:none; max-height:280px; overflow:auto; background:#fff; border:1px solid #bbb; border-radius:4px; box-shadow:0 6px 18px rgba(0,0,0,.18); }
.sc-options li { padding:5px 8px; border-radius:3px; cursor:pointer; display:flex; gap:6px; align-items:baseline; }
.sc-options li small { color:#777; }
.sc-options li.is-active, .sc-options li:hover { background:#e7f1fb; }
[data-theme="dark"] .sc-options { background:#232323; border-color:#444; }
[data-theme="dark"] .sc-options li.is-active, [data-theme="dark"] .sc-options li:hover { background:#16324a; }
[data-theme="dark"] .sc-combo input { background:#2a2a2a; color:#e0e0e0; border-color:#444; }
@media (max-width:620px){ .sc-new { grid-template-columns:1fr 1fr; } .sc-combo { grid-column:1/-1; } }
.ml-dialog .sc-new label.sc-bar { flex-direction:row; align-items:center; gap:4px; }
.sc-note { margin:2px 0 4px; font-size:11px; color:#777; }
.sc-views { list-style:none; margin:0; padding:0; display:grid; grid-template-columns:repeat(auto-fill,minmax(210px,1fr)); gap:2px 10px; }
.ml-dialog .sc-views label { flex-direction:row; align-items:center; gap:4px; font-size:12px; color:inherit; }
.sc-views small { color:#777; }
