:root {
  --accent:#3ddc84;--accent2:#6eeaaa;--green:#06d6a0;--teal:#4dd9e0;
  --asphalt:#2a2d3a;--xp-gold:#ffd166;--xp-glow:rgba(255,209,102,.3);
}
code,pre{font-family:'DM Mono','JetBrains Mono','Courier New',monospace}



.sn-blue{background:rgba(96,165,250,.15);color:var(--blue);border:2px solid rgba(96,165,250,.25)}
.code-block{background:#050a05;border:1px solid rgba(61,220,132,.12);border-radius:10px;padding:14px 18px;margin:12px 0;overflow-x:auto}
.code-block pre{font-size:.74rem;line-height:1.65;color:#b8e8c8}
.info-box{background:rgba(155,107,255,.06);border:1px solid rgba(155,107,255,.18);border-radius:10px;padding:11px 15px;margin:10px 0;font-size:.8rem;color:rgba(224,232,224,.75);display:flex;gap:10px}
.info-box::before{content:'ℹ️';flex-shrink:0}
.tip-box{background:rgba(74,158,255,.06);border:1px solid rgba(74,158,255,.18);border-radius:10px;padding:11px 15px;margin:10px 0;font-size:.8rem;color:rgba(224,232,224,.75);display:flex;gap:10px}
.tip-box::before{content:'✅';flex-shrink:0}
.warn-box{background:rgba(245,166,35,.06);border:1px solid rgba(245,166,35,.18);border-radius:10px;padding:11px 15px;margin:10px 0;font-size:.8rem;color:rgba(224,232,224,.75);display:flex;gap:10px}
.warn-box::before{content:'⚠️';flex-shrink:0}
.do-box{background:rgba(61,220,132,.06);border:1px solid rgba(61,220,132,.2);border-radius:10px;padding:11px 15px;margin:10px 0;font-size:.8rem;color:rgba(224,232,224,.8);display:flex;gap:10px}
.do-box::before{content:'▶️';flex-shrink:0}
.check-box{background:rgba(61,220,132,.04);border:1px solid rgba(61,220,132,.15);border-radius:10px;padding:11px 15px;margin:10px 0;font-size:.8rem;color:rgba(224,232,224,.75);display:flex;gap:10px}
.check-box::before{content:'✅';flex-shrink:0}
.tag-pill{display:inline-flex;align-items:center;font-family:'DM Mono',monospace;font-size:.63rem;font-weight:500;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:5px;background:rgba(61,220,132,.08);color:#6eeaaa;border:1px solid rgba(61,220,132,.18);margin:2px}


/* -- CODE CHALLENGE -- */

/* -- CONCEPT FILL -- */

/* -- TRUE/FALSE -- */


.print-btn{display:inline-flex;align-items:center;gap:6px;font-size:.82rem;font-weight:700;padding:10px 18px;border-radius:10px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);color:rgba(232,234,242,.6);cursor:pointer;text-decoration:none;transition:background .15s,color .15s}.print-btn:hover{background:rgba(255,255,255,.09);color:var(--text)}
@media print{.site-header,.progress-wrap,.xp-wrap,.step-card.locked,.quiz-gate,.code-challenge,.finish-banner,.site-footer,.hero-btns,.print-btn{display:none!important}.hero{padding:16px 0 10px;border:none}.step-card{border:1px solid #ccc;break-inside:avoid;margin-bottom:12px}.step-card.completed .step-body,.step-card.active-step .step-body{display:block!important}.step-body{display:block!important}body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}h1,h3,.step-title,.finish-title{color:#111}.hero-sub,.step-blurb,.big-goal-text p{color:#444}}
.skip-link{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}.skip-link:focus{left:50%;transform:translateX(-50%);top:8px;width:auto;height:auto;padding:10px 20px;background:#BC4749;color:white;font-weight:700;font-size:.9rem;border-radius:8px;z-index:9999;text-decoration:none;white-space:nowrap}
body{font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);min-height:100vh;overflow-x:hidden}
/* mobile-nav cascade fix */
.reveal{opacity:1!important;transform:none!important}