:root{--dual-accent:#0083b3;--dual-accent-dark:#00698f;--dual-ink:#1c2a33;--dual-panel:#fff;--dual-soft:#f8f8f2;--dual-shadow:0 24px 60px rgb(15 30 45 / 18%)}body{opacity:0;transition:opacity .4s ease-in-out}body.page-ready{opacity:1}#dual-n-back-container{padding-bottom:2rem}#dual-n-back-stage{display:flex;flex-direction:column}#dual-n-back-controls .card{border:1px solid rgb(0 0 0 / 4%)}.session-progress .progress{background:#e8edf2}.session-progress .progress-bar{background:var(--dual-accent)}.dual-n-back-shell{display:flex;flex-direction:column;gap:20px;align-items:center;min-height:360px;padding:28px;border-radius:24px;background:#f1f5f9;box-shadow:var(--dual-shadow)}.visual-grid{width:min(360px,100%);display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.grid-cell{aspect-ratio:1/1;border-radius:14px;border:1px solid rgb(0 0 0 / 6%);background:#fff;box-shadow:0 8px 20px rgb(0 0 0 / 8%);transition:transform .2s ease,background-color .2s ease,border-color .2s ease;display:flex;align-items:center;justify-content:center}.grid-cell.is-active{background:var(--dual-accent);border-color:var(--dual-accent);box-shadow:0 12px 24px rgb(0 131 179 / 25%);transform:scale(1.02)}.response-buttons{width:min(360px,100%);display:flex;gap:10px;flex-wrap:nowrap}.response-both{width:min(360px,100%);margin-top:10px}.response-both .icon-pair{display:inline-flex;align-items:center;gap:6px}.response-btn{flex:1 1 0;min-width:0;display:flex;align-items:center;gap:10px;justify-content:center;padding:.65rem 1rem;border:1px solid rgb(0 0 0 / 8%);font-weight:600}.response-btn.feedback-correct{background:#198754;border-color:#198754;color:#fff}.response-btn.feedback-miss{background:#dc3545;border-color:#dc3545;color:#fff}.response-btn.feedback-false{background:#ffc107;border-color:#ffc107;color:#1c2a33}.dual-n-back-panel{background:var(--dual-panel)}.slider{margin-top:6px}.metrics-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.metric-card{padding:12px;border-radius:14px;border:1px solid rgb(0 0 0 / 6%);background:#fff;display:flex;flex-direction:column;gap:6px}.metric-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.12em;color:#6b7b88}.metric-value{font-size:1.2rem;font-weight:700;color:var(--dual-ink)}@media (width <= 992px){.dual-n-back-shell{min-height:320px}}@media (width <= 768px){.dual-n-back-shell{padding:22px}.metrics-grid{grid-template-columns:1fr}}@media (width <= 420px){.response-btn{font-size:.9rem;padding:.6rem .5rem}}