/* Blackjack trainer */
.ccc .bjt [hidden] { display: none !important; }
.bjt-head { display: flex; justify-content: space-between; align-items: center; gap: 10px; flex-wrap: wrap; margin-bottom: 12px; }
.ccc .bjt-head .cc-panel__title { margin: 0; }
.bjt-rule { display: flex; flex-direction: column; gap: 4px; font-size: 12px; color: var(--c-muted); font-weight: 600; }
.bjt-head .bjt-rule { flex-direction: row; align-items: center; gap: 8px; }
.ccc .bjt-rule select { background: var(--bg, #0e1014); border: 1px solid var(--c-line); color: var(--text, #e7eaf0); font: 500 14px var(--font, sans-serif); padding: 7px 10px; border-radius: 8px; }
.bjt-rules { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; margin: 6px 0 4px; }
.bjt-felt { background: radial-gradient(ellipse at 50% 0, #1d5a3a, #0f3523 75%); border: 1px solid #24563c; border-radius: 14px; padding: 14px 16px 18px; margin-bottom: 14px; }
.bjt-lbl { font: 600 11.5px var(--font, sans-serif); letter-spacing: .06em; text-transform: uppercase; color: #a7d7b9; margin: 4px 0 8px; }
.bjt-cards { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; min-height: 84px; margin-bottom: 8px; }
.bjt-card { width: 56px; height: 78px; border-radius: 8px; background: #f7f7f5; color: #121417; display: flex; flex-direction: column; justify-content: space-between; padding: 5px 7px; font: 800 20px/1 var(--font, sans-serif); box-shadow: 0 6px 14px -6px #000; animation: bjt-in .25s ease-out; }
.bjt-card i { font-style: normal; align-self: flex-end; font-size: 20px; }
.bjt-card.is-red { color: #c81e33; }
.bjt-card.is-back { background: repeating-linear-gradient(45deg, #263c8c 0 6px, #1d2f70 6px 12px); border: 3px solid #f1f1f1; }
@keyframes bjt-in { from { transform: translateY(-8px); opacity: 0; } to { transform: none; opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .bjt-card { animation: none; } }
.bjt-total { margin-left: 6px; font: 700 14px var(--mono, monospace); color: #10140a; background: var(--c-accent); padding: 5px 9px; border-radius: 6px; }
.bjt-moves { display: grid; grid-template-columns: repeat(5, 1fr); gap: 6px; margin-bottom: 12px; }
.bjt-btn { position: relative; background: var(--surface-2, #1c212a); border: 1px solid var(--c-line); color: var(--text, #e7eaf0); border-radius: 10px; padding: 13px 4px; font: 700 14px var(--font, sans-serif); cursor: pointer; }
.bjt-btn:hover:not(:disabled) { border-color: var(--c-accent); color: var(--c-accent); }
.bjt-btn:disabled { opacity: .35; cursor: default; }
.bjt-btn kbd { position: absolute; top: 3px; right: 5px; font: 600 9.5px var(--mono, monospace); color: var(--c-muted); background: none; border: 0; padding: 0; }
.bjt-fb { min-height: 64px; }
.bjt-q { color: var(--c-muted); margin: 6px 0 0; font-size: 14px; }
.bjt-res { border-radius: 10px; padding: 10px 12px; border: 1px solid var(--c-line); font-size: 14px; color: var(--c-muted); }
.bjt-res strong { display: block; font-size: 16px; margin-bottom: 2px; }
.bjt-res.is-ok { border-color: var(--c-accent); background: rgba(163, 230, 53, .07); } .bjt-res.is-ok strong { color: var(--c-accent); }
.bjt-res.is-bad { border-color: rgba(248, 113, 113, .6); background: rgba(248, 113, 113, .07); } .bjt-res.is-bad strong { color: var(--danger, #f87171); }
.bjt-after { display: flex; flex-wrap: wrap; align-items: center; gap: 10px 16px; margin-top: 12px; }
.bjt-chk { display: inline-flex; align-items: center; gap: 6px; font-size: 13px; color: var(--c-muted); cursor: pointer; }
.bjt-chk input { accent-color: var(--c-accent); width: 16px; height: 16px; }
.bjt-sec { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; margin: 10px 0; }
.bjt-sec span { background: var(--surface-2, #1c212a); border: 1px solid var(--c-line); border-radius: 10px; padding: 8px 10px; font-size: 12px; color: var(--c-muted); }
.bjt-sec b { display: block; font: 700 18px var(--mono, monospace); color: var(--text, #e7eaf0); }
.bjt-link { background: none; border: 0; padding: 0; color: var(--c-accent-2); font: 600 13px var(--font, sans-serif); cursor: pointer; margin-bottom: 6px; }
@media (max-width: 520px) { .bjt-moves { grid-template-columns: repeat(3, 1fr); } .bjt-card { width: 48px; height: 68px; font-size: 18px; } }
