/* next: styles for this game only (loaded after /css/core.css). */
.nx-card { display: flex; flex-direction: column; gap: 16px; align-items: center; text-align: center; }
.nx-prompt { font-family: var(--display); font-size: 24px; font-weight: 800; }
.nx-terms { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
.nx-term { min-width: 52px; height: 56px; padding: 0 12px; border-radius: 12px; background: var(--surface-2); border: 2px solid var(--line); display: inline-flex; align-items: center; justify-content: center; font-family: var(--display); font-size: 24px; font-weight: 800; }
.nx-terms.wide .nx-term { font-size: 18px; letter-spacing: -2px; }
.nx-term.ask { border-style: dashed; border-color: var(--select); color: var(--select); }
.nx-term.found { border-style: solid; background: var(--match-bg); color: var(--match-ink); border-color: var(--match-bg); animation: tilepop .35s ease both; }
.nx-choices { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; width: 100%; max-width: 420px; }
.nx-choice { min-height: 60px; border-radius: 14px; border: 2px solid var(--line); background: var(--surface); color: var(--text); font-family: var(--display); font-size: 24px; font-weight: 800; cursor: pointer; padding: 6px; box-shadow: 0 3px 0 var(--line); }
.nx-choice:hover:not(:disabled) { border-color: var(--select); }
.nx-choice:disabled { cursor: default; opacity: .6; }
.nx-choice.right { opacity: 1; background: var(--match-bg); color: var(--match-ink); border-color: var(--match-bg); }
.nx-choice.wrong { opacity: 1; background: color-mix(in srgb, var(--warn) 18%, var(--surface)); border-color: var(--warn); }
.nx-explain { display: flex; flex-direction: column; gap: 8px; align-items: center; }
.nx-explain .good { color: var(--ok); font-weight: 700; font-size: 18px; }
.nx-explain .bad { color: var(--warn); font-weight: 700; font-size: 18px; }
.nx-term { background: var(--tile-top); color: var(--tile-ink); border: 0; box-shadow: 0 4px 0 var(--tile-edge), 0 8px 14px rgba(20, 33, 58, .12); }
.nx-term.ask { background: transparent; box-shadow: inset 0 0 0 2px var(--select); }
.nx-term.found { background: linear-gradient(180deg, #2AA374, #1B8A5E); color: #fff; box-shadow: 0 4px 0 #0F5E3F; }
.nx-choice { background: var(--tile-top); color: var(--tile-ink); border: 0; box-shadow: 0 4px 0 var(--tile-edge), 0 8px 14px rgba(20, 33, 58, .10); transition: transform .08s; }
.nx-choice:hover:not(:disabled) { transform: translateY(-2px); }
.nx-choice:active:not(:disabled) { transform: translateY(3px); box-shadow: 0 1px 0 var(--tile-edge); }
.nx-choice.right { background: linear-gradient(180deg, #2AA374, #1B8A5E); color: #fff; box-shadow: 0 4px 0 #0F5E3F; }
.nx-choice.wrong { background: linear-gradient(180deg, #F0646A, #D9363C); color: #fff; box-shadow: 0 4px 0 #8E1F23; }
.nx-card { border: 0; }

