/* DiscoveryVIP visual integration — loaded after the guide's original styles. */
:root{--bg:#fff;--surface:#fff;--surface2:#edf5ff;--line:#d9e3ee;--text:#142033;--muted:#56677d;--cyan:#087f71;--blue:#1769c2;--yellow:#a96700;--danger:#a93643;--shadow:0 10px 30px rgba(29,55,84,.09);--radius:16px}
*[hidden]{display:none!important}
body,body.light{background:#fff;color:var(--text);font-family:system-ui,-apple-system,"Segoe UI",sans-serif}
.topbar,.light .topbar{height:74px;background:rgba(255,255,255,.95);border-bottom:1px solid #e2e9f1;box-shadow:0 5px 18px rgba(29,55,84,.05)}
.brand{color:#142033}.brand-vip{color:#087f71}.brand small{color:#56677d;margin-top:3px}.brand-mark{width:38px;height:38px;border-radius:11px;background:linear-gradient(135deg,#1769c2,#0c9483);color:#fff;font-weight:900}
.guide-home-link{display:inline-flex;align-items:center;padding:.58rem .82rem;border-radius:10px;color:#4d6077;text-decoration:none;font-weight:700}.guide-home-link:hover{color:#12385e;background:#eaf4ff}
.app-shell{max-width:1440px;background:#fff}.sidebar,.utility{top:74px;height:calc(100vh - 74px);background:#f8fafc}.sidebar{border-right-color:#d9e3ee}.utility{border-left-color:#d9e3ee}
main{background:#fff}.progress-card,.tool-card,.exercise,.quiz,.callout,.deep-dive>div,.mastery,.review-list a{background:#fff;border-color:#d9e3ee;box-shadow:var(--shadow)}
.progress-track{background:#e1e9f1}.progress-track span{background:linear-gradient(90deg,#1769c2,#0c9483)}
.lesson-link{color:#53667c}.lesson-link:hover,.lesson-link.active{background:#edf5ff;color:#174d80;border-color:#cbdced}.lesson-link.complete .nav-num{background:#087f71;color:#fff}.nav-num{background:#e7eef5;color:#38526c}
button,.button{background:linear-gradient(135deg,#1769c2,#0c9483);color:#fff;border:0;box-shadow:0 5px 14px rgba(29,55,84,.09)}button:hover{filter:none;transform:translateY(-1px)}
.ghost,.text-btn{background:#fff;color:#17324f;border:1px solid #cbd8e5;box-shadow:none}.ghost:hover,.text-btn:hover{background:#edf5ff}.danger{color:#a93643}.eyebrow,.kicker{color:#087f71}.lesson-title{color:#142033}.lead,.meta,.progress-card small,.tool-card small{color:#56677d}
.content p,.content li{color:#33475e}.content code{color:#087668;background:#edf5ff;padding:2px 5px;border-radius:5px}.code-block,.light .code-block{background:#0b1726;color:#d7fff5;border-color:#233b55}.copy-btn{background:#16314a;color:#d7e7f7}
.callout{background:#fff8e7;border-left-color:#a96700}.exercise{border-top-color:#087f71}.exercise textarea,.prompt-builder input,.tool-card textarea,.tool-input,.light .exercise textarea,.light .prompt-builder input,.light .tool-card textarea,.light .tool-input{background:#fff;color:#142033;border-color:#cfdbe7}.exercise textarea:focus,.prompt-builder input:focus,.tool-card textarea:focus,.tool-input:focus{outline:2px solid #5795d2;outline-offset:1px}
.quiz-option,.light .quiz-option{background:#fff;color:#142033;border:1px solid #cfdbe7;box-shadow:none}.quiz-option.selected,.light .quiz-option.selected{background:#eaf4ff;border-color:#1769c2}.correct{color:#087f71}.incorrect{color:#8b5b00}
.tip-card{background:#eaf8f5;border-color:#a4d6cb}.done-banner{background:#e8f7f2;border-color:#95d2c3;color:#175c50}.stat-grid div{background:#fff;border-color:#d9e3ee}.stat-grid strong{color:#087f71}
.activity-studio,.light .activity-studio{background:#f7f9fc;border-color:#d9e3ee;box-shadow:var(--shadow)}.activity-tab{color:#56677d}.activity-tab.active{background:#fff;color:#174d80;border-color:#cbd8e5}.activity-panel textarea,.mastery textarea,.light .activity-panel textarea,.light .mastery textarea{background:#fff;color:#142033;border-color:#cfdbe7}.xp-badge{background:#e5f6f2;color:#087668}.recall-card,.light .recall-card{background:linear-gradient(145deg,#edf5ff,#fff);color:#142033;border-color:#d9e3ee;box-shadow:none}.recall-card strong{color:#1769c2}.recall-card em{color:#56677d}.myth{background:#fff8e7!important;border-color:#e2c878!important}.myth span{color:#8b5b00}
#toast,.light #toast{background:#142033;color:#fff}.skip{background:#1769c2;color:#fff}.check-row input,.mastery input[type=range]{accent-color:#087f71}
@media(max-width:760px){.topbar{padding:0 .75rem}.brand>span:last-child{font-size:.9rem}.brand small{font-size:.67rem}.guide-home-link{display:none}.top-actions{gap:.35rem}.sidebar{top:74px;height:calc(100vh - 74px);box-shadow:18px 0 38px rgba(29,55,84,.18)}}
@media(max-width:480px){.top-actions #themeBtn{display:none}.brand-mark{width:34px;height:34px}}
