.shortcuts-guide__modal { position: fixed; z-index: 1200; inset: 0; display: grid; box-sizing: border-box; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; border: 0; padding: var(--space-lg); overflow-y: auto; background: var(--dialog-backdrop); backdrop-filter: blur(var(--dialog-backdrop-blur)); place-items: center; }
.shortcuts-guide__modal::backdrop { background: transparent; }
.shortcuts-guide__modal[hidden] { display: none; }
.shortcuts-guide__surface { display: flex; flex-direction: column; width: min(100%, 960px); max-height: min(820px, calc(100dvh - 48px)); overflow: hidden; color: var(--ink-dark); background: var(--dialog-surface); border: 1px solid var(--dialog-border); border-radius: var(--dialog-radius); box-shadow: var(--dialog-shadow); animation: shortcuts-guide-enter 220ms cubic-bezier(0.22, 1, 0.36, 1) both; }
.shortcuts-guide__header { flex-shrink: 0; padding: var(--space-xl); color: var(--dialog-header-text); background: linear-gradient(135deg, var(--dialog-header-start), var(--dialog-header-end)); border-radius: 19px 19px 0 0; }
.shortcuts-guide__body { min-height: 0; overflow-y: auto; overscroll-behavior: contain; }
.shortcuts-guide__close { display: grid; flex: 0 0 44px; width: 44px; height: 44px; padding: 0; place-items: center; border: 0; border-radius: var(--radius-compact); color: var(--dialog-header-text); background: transparent; cursor: pointer; }
.shortcuts-guide__close:hover { background: var(--dialog-header-end); }
.shortcuts-guide__close:focus-visible { outline: 2px solid currentColor; outline-offset: 2px; }
.shortcuts-guide__header-top, .shortcuts-guide__section-heading, .shortcuts-guide__shortcut, .shortcuts-guide__shortcut dd { display: flex; align-items: center; }
.shortcuts-guide__header-top, .shortcuts-guide__section-heading, .shortcuts-guide__shortcut { justify-content: space-between; gap: var(--space-md); }
.shortcuts-guide__eyebrow, .shortcuts-guide__section-heading h2 { margin: 0; font-family: var(--font-sans); font-size: var(--text-xs); font-weight: 600; letter-spacing: .08em; text-transform: uppercase; }
.shortcuts-guide__eyebrow { color: #e4c783; }
.shortcuts-guide__header h2 { margin: var(--space-xs) 0; font-family: var(--font-serif); font-size: clamp(1.7rem, 3vw, 2.15rem); font-weight: 500; }
.shortcuts-guide__header > p:last-child { max-width: 620px; margin: 0; color: var(--dialog-header-muted); font-size: var(--text-sm); line-height: 1.6; }
.shortcuts-guide__content { display: grid; gap: var(--space-lg); padding: var(--space-lg); }
.shortcuts-guide__section { overflow: hidden; border: 1px solid color-mix(in srgb, var(--sepia-line) 72%, transparent); border-radius: 14px; background: color-mix(in srgb, var(--paper-aged) 84%, #fff); }
.shortcuts-guide__section--featured { border-color: #d5b365; background: linear-gradient(135deg, #fffaf0, #f5ead3); }
.shortcuts-guide__section-heading { padding: var(--space-md) var(--space-lg); border-bottom: 1px solid color-mix(in srgb, var(--sepia-line) 60%, transparent); background: rgb(89 64 45 / 4%); }
.shortcuts-guide__section-heading h2 { color: var(--ink-dark); }
.shortcuts-guide__section-heading p, .shortcuts-guide__shortcut small, .shortcuts-guide__note { margin: var(--space-xs) 0 0; color: var(--ink-muted); font-size: var(--text-xs); line-height: 1.5; }
.shortcuts-guide__section-heading > span { color: #a9782f; font-size: 1.2rem; }
.shortcuts-guide__grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); margin: 0; }
.shortcuts-guide__shortcut { min-height: 84px; padding: var(--space-md) var(--space-lg); }
.shortcuts-guide__shortcut:nth-child(even) { border-left: 1px solid color-mix(in srgb, var(--sepia-line) 55%, transparent); }
.shortcuts-guide__shortcut:nth-child(n + 3) { border-top: 1px solid color-mix(in srgb, var(--sepia-line) 55%, transparent); }
.shortcuts-guide__shortcut dt { min-width: 0; font-size: var(--text-sm); font-weight: 500; line-height: 1.4; }
.shortcuts-guide__shortcut small { display: block; font-weight: 400; }
.shortcuts-guide__shortcut dd { flex: 0 0 auto; justify-content: flex-end; flex-wrap: wrap; gap: 4px; margin: 0; }
.shortcuts-guide kbd { min-width: 27px; padding: 5px 8px; color: var(--ink-dark); background: #fffdf8; border: 1px solid rgb(85 65 48 / 26%); border-bottom: 3px solid rgb(85 65 48 / 32%); border-radius: 7px; box-shadow: 0 1px 0 rgb(255 255 255 / 84%) inset; font-family: var(--font-sans); font-size: var(--text-xs); font-weight: 600; line-height: 1.1; text-align: center; white-space: nowrap; }
.shortcuts-guide__shortcut dd > span { color: var(--ink-muted); font-size: var(--text-xs); }
.shortcuts-guide__note { padding: 0 var(--space-lg) var(--space-lg); text-align: center; }
.shortcuts-guide__trigger:focus-visible { outline: 2px solid var(--action-primary); outline-offset: 2px; }
@keyframes shortcuts-guide-enter { from { opacity: 0; transform: translateY(10px) scale(.985); } to { opacity: 1; transform: translateY(0) scale(1); } }
@media (max-width: 640px) { .shortcuts-guide__modal { padding: var(--space-sm); } .shortcuts-guide__surface { max-height: calc(100dvh - 16px); border-radius: 16px; } .shortcuts-guide__header { padding: var(--space-lg); border-radius: 15px 15px 0 0; } .shortcuts-guide__content { gap: var(--space-md); padding: var(--space-md); } .shortcuts-guide__grid { grid-template-columns: 1fr; } .shortcuts-guide__shortcut { min-height: 72px; padding-inline: var(--space-md); } .shortcuts-guide__shortcut:nth-child(even) { border-left: 0; } .shortcuts-guide__shortcut:nth-child(n + 2) { border-top: 1px solid color-mix(in srgb, var(--sepia-line) 55%, transparent); } .shortcuts-guide__section-heading { padding-inline: var(--space-md); } }
@media (prefers-reduced-motion: reduce) { .shortcuts-guide__surface { animation: none; } }
