.shortcuts-page{background:#0b1118;color:#f2f8fb;--shortcut-line:rgba(125,188,210,.22);font-family:var(--font-body)}
.shortcuts-page .site-header{background:rgba(8,19,27,.94)}
.shortcuts-shell{max-width:1480px;margin:auto;padding:clamp(38px,6vw,84px) clamp(20px,6vw,88px) 100px}
.shortcuts-heading{max-width:980px}.shortcuts-heading h1{font-size:clamp(49px,7vw,100px);line-height:1.05;letter-spacing:-.075em;margin-bottom:22px}.shortcuts-heading h1 em{font-style:normal;color:#76def0}.shortcuts-heading>p:not(.eyebrow){font-size:18px;color:#acc0ca;line-height:1.65;max-width:750px}
.shortcut-controls{display:flex;align-items:end;flex-wrap:wrap;gap:16px;margin:45px 0 16px;padding:22px;border:1px solid var(--shortcut-line);border-radius:14px;background:#13212b}.shortcut-controls label{font:600 13px var(--font-body);color:#c5d7e0;min-width:190px;flex:1}.shortcut-controls label:nth-of-type(1){flex:2 1 265px}.shortcut-controls input[type=search],.shortcut-controls select{display:block;width:100%;margin-top:8px;padding:12px 14px;min-height:46px;background:#0a1720;border:1px solid var(--shortcut-line);border-radius:7px;color:#f2f8fb;font:15px var(--font-body)}.shortcut-controls input:focus-visible,.shortcut-controls select:focus-visible,.shortcuts-page button:focus-visible,.shortcuts-page a:focus-visible{outline:2px solid #76def0;outline-offset:3px}.system-switch{display:flex;gap:5px;border:1px solid var(--shortcut-line);border-radius:9px;padding:4px;background:#091820}.system-switch button{border:0;background:none;color:#a9bac5;padding:12px 15px;border-radius:6px;cursor:pointer;font-weight:700}.system-switch button[aria-pressed=true]{background:#76def0;color:#07171e}.shortcut-controls .favorites-toggle{display:flex;align-items:center;gap:9px;min-width:0;flex:0 0 auto;padding-bottom:12px;cursor:pointer}.favorites-toggle input{accent-color:#76def0;width:17px;height:17px}
.shortcut-overview{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;color:#a9c1cc;font-size:14px;margin:0 0 19px}.shortcut-overview p{margin:0}
.shortcut-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);gap:22px;align-items:start}.shortcut-catalog{min-width:0}.shortcut-row{display:grid;grid-template-columns:minmax(180px,1fr) auto 36px;align-items:center;gap:20px;background:#111d27;border:1px solid var(--shortcut-line);border-radius:10px;padding:16px 18px;margin-bottom:9px}.shortcut-row small{display:block;color:#7fbcd1;font:700 11px var(--font-body);letter-spacing:.06em;margin-bottom:6px}.shortcut-row h3{font:600 16px var(--font-body);margin:0}.shortcut-row p{font-size:12px;line-height:1.4;color:#a3b8c3;margin:7px 0 0}.shortcut-row kbd,.practice-card #practiceAnswer{font:600 14px/1.5 'Cascadia Code','SFMono-Regular',Consolas,monospace;color:#e6faff;background:#172f39;border:1px solid rgba(118,222,240,.3);border-radius:7px;padding:8px 12px;white-space:normal;text-align:center}.shortcut-favorite{border:0;background:none;color:#76def0;font-size:24px;cursor:pointer;line-height:1}.shortcut-favorite:hover{transform:scale(1.12)}#noShortcuts{color:#a9bec8;padding:28px;background:#111d27;border:1px solid var(--shortcut-line);border-radius:10px}#noShortcuts[hidden]{display:none}
.shortcut-practice{position:sticky;top:96px;border:1px solid var(--shortcut-line);background:linear-gradient(160deg,#18303a,#101e27);border-radius:14px;padding:26px}.shortcut-practice h2{font-size:28px;line-height:1.2;letter-spacing:-.035em;margin-bottom:12px}.shortcut-practice #practiceHint,.practice-note{color:#aec4ce;font-size:14px;line-height:1.6}.practice-card{border:1px solid var(--shortcut-line);background:#081820;border-radius:10px;padding:23px;margin:24px 0 13px;min-height:205px}.practice-card>span{color:#76def0;font-size:12px;letter-spacing:.08em;font-weight:700}.practice-card h3{font:600 23px/1.3 var(--font-body);margin:15px 0 20px}.practice-card #practiceAnswer{display:inline-block;margin-bottom:16px}.practice-card #practiceAnswer[hidden]{display:none}.shortcuts-page button{font-family:var(--font-body)}.practice-card button,.practice-actions button,.next-practice{border:1px solid #76def0;background:#76def0;color:#071820;border-radius:7px;padding:10px 13px;font-weight:700;cursor:pointer}.practice-actions{display:flex;gap:8px}.practice-actions button{flex:1;background:transparent;color:#d9f2f6;border-color:var(--shortcut-line)}.practice-actions button:disabled,.practice-card button:disabled{opacity:.4;cursor:not-allowed}.next-practice{width:100%;margin-top:10px;background:#203742;color:#f2f8fb;border-color:var(--shortcut-line)}.next-practice:hover,.practice-actions button:not(:disabled):hover{border-color:#76def0}.practice-note{font-size:12px;margin:16px 0 0}
.shortcut-sources{border-top:1px solid var(--shortcut-line);margin-top:76px;padding:50px 0 35px}.shortcut-sources h2{font-size:32px;letter-spacing:-.04em}.shortcut-sources p{color:#a9bec8;line-height:1.6;max-width:720px}.shortcut-sources>div{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}.shortcut-sources a,.shortcut-back{display:inline-block;color:#76def0;border-bottom:1px solid currentColor;padding:8px 0;font-weight:600;font-size:14px}.shortcut-sources a{margin-right:18px}
@media(max-width:1000px){.shortcut-layout{grid-template-columns:1fr}.shortcut-practice{position:static;grid-row:1}.shortcut-row{grid-template-columns:minmax(160px,1fr) auto 36px}}@media(max-width:600px){.shortcut-controls{padding:16px}.system-switch{width:100%}.system-switch button{flex:1}.shortcut-controls .favorites-toggle{padding:5px 0}.shortcut-row{grid-template-columns:1fr 32px;gap:11px}.shortcut-row kbd{grid-row:2;justify-self:start;text-align:left}.shortcut-row .shortcut-favorite{grid-column:2;grid-row:1}.shortcut-overview{font-size:13px}}

/* Laboratorio interactivo de atajos */
.shortcuts-page .shortcuts-heading h1{font-size:clamp(46px,6vw,78px);line-height:1.06}
.shortcuts-page .shortcut-row h3,.shortcuts-page .practice-card h3{color:#f2f8fb}
.shortcuts-page .shortcut-practice h2{color:#f4fbff}
.shortcut-practice.shortcut-lab{padding:22px}
.shortcut-lab .lab-intro{margin-bottom:16px}
.lab-session{display:grid;grid-template-columns:minmax(120px,1fr) auto;align-items:end;gap:8px}
.lab-session label{grid-column:1/-1;color:#c7d8df;font-size:12px;font-weight:700}
.lab-session select{min-width:0;min-height:42px;padding:9px 10px;border-radius:7px;background:#091820;border:1px solid var(--shortcut-line);color:#f2f8fb}
.lab-session button{min-height:42px;padding:9px 12px;background:#76def0;color:#07171e;border:1px solid #76def0;border-radius:7px;font-weight:800;cursor:pointer}
.lab-session button:disabled{opacity:.65;cursor:default}
.lab-progress{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:14px 0;color:#d8e9ef;font-size:12px}
#labTimer{font:700 18px 'Cascadia Code','SFMono-Regular',Consolas,monospace;color:#76def0}
#labScore{color:#d0e0e7}
.lab-challenge{padding:15px 16px;border:1px solid rgba(118,222,240,.25);background:#0a1720;border-radius:9px}
.lab-category{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:#76def0;font-weight:800}
.lab-challenge h3{font-size:17px;line-height:1.4;color:#f5fbff;margin:9px 0 7px}
.lab-feedback{font-size:12px;line-height:1.45;color:#c3d4dc;margin:0}
.lab-feedback.success{color:#79efb5}.lab-feedback.error{color:#ffaca8}
.lab-capture{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;min-height:100px;margin:12px 0 8px;padding:14px;border:1px dashed rgba(118,222,240,.55);border-radius:9px;background:rgba(24,49,59,.6);text-align:center;cursor:pointer}
.lab-capture:focus-visible{outline:3px solid #76def0;outline-offset:2px}
.lab-capture.is-disabled{opacity:.62;cursor:not-allowed}
.lab-capture-label{font-size:9px;letter-spacing:.12em;color:#91cfe0;font-weight:800}
.lab-capture strong{font-size:13px;color:#f2f8fb}
.lab-capture kbd{font:600 12px 'Cascadia Code','SFMono-Regular',Consolas,monospace;color:#76def0;min-height:16px}
.lab-or{font-size:11px;color:#b9ccd5;text-align:center;margin:9px 0}
.lab-choices{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.lab-choice{min-width:0;min-height:40px;padding:7px;background:#172b35;border:1px solid rgba(125,188,210,.32);border-radius:7px;color:#ecf9fc;cursor:pointer}
.lab-choice:hover:not(:disabled){border-color:#76def0;background:#1c3944}
.lab-choice:disabled{opacity:.55;cursor:not-allowed}
.lab-choice kbd{font:600 11px/1.35 'Cascadia Code','SFMono-Regular',Consolas,monospace;white-space:normal}
.lab-hint{margin-top:9px;padding:6px 0;border:0;background:none;color:#8fe5f2;font-size:12px;font-weight:700;cursor:pointer;text-decoration:underline;text-underline-offset:3px}
.lab-hint:disabled{opacity:.5;cursor:default}
.lab-simulation{margin-top:12px;padding:12px;border-radius:8px;background:#14252d;border:1px solid rgba(125,188,210,.2)}
.lab-simulation>div{display:flex;justify-content:space-between;gap:8px;color:#9fb7c2;font-size:9px;letter-spacing:.08em}
.lab-simulation>div b{color:#76def0;text-align:right;font-size:9px}
.lab-simulation p{color:#e5f1f5;font-size:12px;line-height:1.45;margin:8px 0 0}
.lab-console{margin-top:11px;border:1px solid rgba(125,188,210,.22);border-radius:8px;background:#050d12;overflow:hidden}
.lab-console-head{display:flex;justify-content:space-between;gap:8px;padding:8px 10px;border-bottom:1px solid rgba(125,188,210,.18);font-size:9px;letter-spacing:.08em;color:#9db7c3}
#labConsoleState{color:#76def0;font-weight:800}
#labConsole{max-height:138px;min-height:64px;overflow:auto;padding:8px 10px;font:11px/1.55 'Cascadia Code','SFMono-Regular',Consolas,monospace}
#labConsole p{margin:0 0 4px;color:#d5e3e8;overflow-wrap:anywhere}
#labConsole p:last-child{margin-bottom:0}
#labConsole .console-muted{color:#8299a4}
#labConsole .console-success{color:#79efb5}
#labConsole .console-detail{color:#a7c4cf}
#labConsole .console-error{color:#ffaca8}
.shortcut-lab #labNext{margin-top:10px}
.shortcut-lab .practice-note{color:#c1d2da}
@media(max-width:600px){
 .shortcuts-page .shortcuts-heading h1{font-size:clamp(42px,12vw,60px)}
 .shortcut-practice.shortcut-lab{padding:17px}
 .lab-session{grid-template-columns:1fr}
 .lab-session label{grid-column:auto}
 .lab-session select,.lab-session button{width:100%}
 .lab-capture{min-height:92px}
}

.shortcut-row .shortcut-description{color:#d5e2e7;font-size:13px;line-height:1.55;margin:5px 0 0}
.shortcut-row .shortcut-note{color:#9eb5bf;font-size:11px;line-height:1.45;margin:6px 0 0}
.lab-description{color:#d3e0e6;font-size:13px;line-height:1.55;margin:0 0 10px}
.practice-description{color:#c7d9e0;font-size:13px;line-height:1.55;margin:-8px 0 13px}
.practice-description[hidden]{display:none}
@media(max-width:600px){.shortcut-row .shortcut-description{font-size:12px}.lab-description{font-size:13px}}

/* Mapa visual del teclado español del laboratorio */
.lab-keyboard-panel{margin:13px 0;padding:12px 10px;border:1px solid rgba(118,222,240,.22);border-radius:9px;background:#09151d;overflow:hidden}
.lab-keyboard-heading{display:flex;justify-content:space-between;align-items:center;gap:8px;color:#edf8fb;font-size:12px}
.lab-keyboard-heading span{color:#8eb4c0;font-size:9px;letter-spacing:.08em}
.lab-keyboard-step{min-height:30px;margin:7px 0 9px;color:#a9c6d1;font-size:11px;line-height:1.4}
.lab-keyboard-layout{display:grid;grid-template-columns:minmax(0,1fr) 86px;gap:7px;align-items:center}
.lab-keyboard-main,.lab-keyboard-nav{display:grid;gap:4px;min-width:0}
.lab-key-row{display:flex;gap:3px;min-width:0}
.lab-key{display:flex;align-items:center;justify-content:center;flex:var(--key-wide,1) 1 0;min-width:0;height:27px;padding:2px 1px;border:1px solid #314653;border-radius:4px;background:#14232c;color:#b8cbd3;font:600 8px/1.05 var(--font-body);text-align:center;overflow:hidden}
.lab-key[data-role]{color:#8ab9c8}
.lab-key.is-lit{color:#06151b;background:#72def0;border-color:#a8f5ff;box-shadow:0 0 10px rgba(75,223,255,.65),inset 0 0 0 1px rgba(255,255,255,.28);z-index:1}
.lab-key.is-modifier{color:#fff;background:#986cff;border-color:#c3a7ff;box-shadow:0 0 10px rgba(155,112,255,.65),inset 0 0 0 1px rgba(255,255,255,.22);z-index:1}
.lab-key.is-current-step{animation:lab-key-pulse 1.2s ease-in-out infinite alternate}
.lab-keyboard-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:9px;color:#a9bdc6;font-size:9px}
.lab-keyboard-legend span{display:inline-flex;align-items:center;gap:5px}
.lab-keyboard-legend i{width:9px;height:9px;border-radius:3px;background:#72def0;box-shadow:0 0 5px rgba(75,223,255,.5)}
.lab-keyboard-legend i.modifier-swatch{background:#986cff;box-shadow:0 0 5px rgba(155,112,255,.5)}
@keyframes lab-key-pulse{from{filter:brightness(.85)}to{filter:brightness(1.3)}}
@media(max-width:420px){.lab-keyboard-layout{grid-template-columns:minmax(0,1fr) 64px;gap:4px}.lab-key-row{gap:2px}.lab-key{height:24px;font-size:7px;padding-inline:0}.lab-keyboard-panel{padding:10px 7px}.lab-keyboard-step{font-size:10px}}
@media(prefers-reduced-motion:reduce){.lab-key.is-current-step{animation:none}}

/* Mantiene legible el laboratorio aunque el tema global use fondos claros */
body.shortcuts-page.stannet-global{background:#0b1118!important;color:#f2f8fb!important;color-scheme:dark}
.shortcuts-page.stannet-global .shortcuts-heading h1{color:#f2f8fb!important}
.shortcuts-page.stannet-global .shortcut-lab .lab-intro{color:#acc4ce!important}
