[data-navigation-practice] { margin: 1rem 0; }
.navigation-terminal { background: #000; color: #65f58d; border-radius: 8px; padding: 1rem; font-family: monospace; height: 18rem; box-sizing: border-box; display: flex; flex-direction: column; overflow: hidden; }
.navigation-terminal pre { background: transparent; color: inherit; padding: 0; border: 0; min-height: 0; overflow: visible; white-space: pre-wrap; margin: 0; font: inherit; }
.navigation-terminal form { display: flex; gap: .5rem; align-items: center; }
.navigation-terminal label { display: flex; flex: 1; align-items: center; min-width: 0; margin: 0; }
.navigation-prompt { white-space: nowrap; color: #65f58d; }
.navigation-terminal input { min-width: 0; width: 100%; border: 0; background: transparent; color: inherit; font: inherit; padding: .25rem; }
.navigation-terminal input:focus { outline: none; box-shadow: none; }
[data-navigation-practice] button { border: 1px solid #cfd5df; border-radius: 5px; padding: .35rem .7rem; font-size: .8rem; }
.navigation-terminal button { background: #000; color: #65f58d; border-color: #287c40; }
.navigation-terminal > button { margin-top: .75rem; }

.navigation-transcript { flex: 1; min-height: 0; overflow-y: auto; }
.navigation-terminal > button { align-self: flex-start; flex-shrink: 0; }

.navigation-terminal { color-scheme: dark; }
.navigation-terminal input { caret-color: #65f58d; }
.navigation-terminal button:hover { background: #092512; border-color: #65f58d; }
.navigation-terminal ::selection { background: #65f58d; color: #000; }

/* Override the book theme’s preformatted output styling inside this terminal. */
[data-navigation-practice] .navigation-terminal pre { background: #000 !important; color: #65f58d !important; border: 0; box-shadow: none; border-radius: 0; }

.navigation-terminal > button { font-size: .7rem; padding: .15rem .45rem; line-height: 1.3; }

