/* AlgoCrux unified lesson shell — structural presentation shared by every animation */
:root{--lesson-bg:#101218;--lesson-panel:#1a1d27;--lesson-panel-2:#202431;--lesson-border:#30364a;--lesson-text:#edf0f7;--lesson-muted:#949bb0;--lesson-blue:#7886cd;--lesson-violet:#a79bc5;--lesson-teal:#8aacae;--lesson-radius:14px}
body.ac-lesson{background:var(--lesson-bg)!important;color:var(--lesson-text)!important;padding-bottom:72px!important}
.ac-lesson-header,body.ac-lesson header{max-width:1080px;margin:32px auto 0;padding:0 20px 28px!important;border-bottom:1px solid var(--lesson-border)!important;background:transparent!important;box-shadow:none!important}
.ac-lesson-header h1,body.ac-lesson header h1{font-size:clamp(30px,4vw,46px)!important;letter-spacing:-.04em!important;line-height:1.1!important;margin:12px 0 8px!important}
.ac-lesson-header p,body.ac-lesson header p,.subtitle{max-width:72ch!important;color:var(--lesson-muted)!important;line-height:1.65!important}
.ac-metadata,.badges,.badge-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0 0 14px!important}.ac-meta{font:600 11px/1 ui-monospace,monospace;letter-spacing:.06em;text-transform:uppercase;padding:6px 10px;border:1px solid var(--lesson-border);border-radius:999px;background:#1e2230;color:#b8c0db}.ac-meta.pattern{color:#b7abd0;background:#231f31}.ac-meta.difficulty{color:#dbbd7c;background:#282317}
.ac-practice,.practice{max-width:1080px;margin:20px auto 0!important;padding:13px 20px!important;display:flex!important;align-items:center!important;gap:12px!important;flex-wrap:wrap!important;background:linear-gradient(135deg,#1b2631,#1a1d28)!important;border:1px solid var(--lesson-border)!important;border-radius:var(--lesson-radius)!important}.ac-practice-label{font:700 11px/1 ui-monospace,monospace;letter-spacing:.08em;color:var(--lesson-teal);text-transform:uppercase}.ac-practice a{color:var(--lesson-text)!important;font-size:14px;font-weight:650;text-decoration:none;border-bottom:1px solid #66708e;padding:3px 0}.ac-practice a:hover{border-color:var(--lesson-blue)}
body.ac-lesson .wrap,body.ac-lesson main{max-width:1080px!important;margin-left:auto!important;margin-right:auto!important;padding-left:20px!important;padding-right:20px!important}body.ac-lesson section{margin-top:46px!important}.section-label{color:#8490ad!important;letter-spacing:.14em!important}
body.ac-lesson .concept-card,body.ac-lesson .panel,body.ac-lesson .cx-card,body.ac-lesson .complex-card,body.ac-lesson .note-card,body.ac-lesson .notes,body.ac-lesson .code-block{border-color:var(--lesson-border)!important;background:var(--lesson-panel)!important;border-radius:var(--lesson-radius)!important;box-shadow:0 18px 38px -31px #000!important}body.ac-lesson .notes{background:linear-gradient(135deg,#202131,#1a1d27)!important;border-left:3px solid #8b82ac!important}
body.ac-lesson .controls,body.ac-lesson .control-panel{padding:12px!important;border:1px solid var(--lesson-border)!important;border-radius:var(--lesson-radius)!important;background:#171a23!important}body.ac-lesson button,body.ac-lesson .btn,body.ac-lesson .mini-btn,body.ac-lesson .copy-btn{border-color:#3a4158!important;background:#242938!important;color:var(--lesson-text)!important;box-shadow:none!important}body.ac-lesson .primary,body.ac-lesson .btn-primary{background:linear-gradient(135deg,#7684cc,#6875b6)!important;border-color:#8490d0!important}
body.ac-lesson .complexity-grid,body.ac-lesson .cx-grid{gap:14px!important}body.ac-lesson pre{background:#12151d!important;border:1px solid var(--lesson-border)!important;border-radius:10px!important}body.ac-lesson footer{max-width:1080px;margin:64px auto 0!important;padding:22px 20px!important;border-top:1px solid var(--lesson-border)!important;color:#77809a!important}
.ac-notepad{background:var(--lesson-panel)!important;border:1px solid var(--lesson-border)!important;border-radius:var(--lesson-radius)!important;padding:18px!important;box-shadow:0 18px 38px -31px #000!important}.ac-notepad-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.ac-notepad-head h3{font-size:15px;margin:0}.ac-note-status{font-size:12px;color:var(--lesson-muted)}.ac-notepad textarea{width:100%;min-height:155px;resize:vertical;background:#12151d;color:var(--lesson-text);border:1px solid var(--lesson-border);border-radius:10px;padding:12px;font:14px/1.6 Inter,system-ui,sans-serif}.ac-notepad textarea:focus{outline:none;border-color:#7583ca;box-shadow:0 0 0 3px rgba(117,131,202,.12)}.ac-notepad-actions{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:12px;color:var(--lesson-muted)}.ac-note-clear{border:0!important;background:transparent!important;color:var(--lesson-muted)!important;padding:4px 0!important;cursor:pointer}.ac-note-clear:hover{color:#e0a0a0!important}
@media(max-width:700px){.ac-lesson-header,body.ac-lesson header,body.ac-lesson .wrap,body.ac-lesson main{padding-left:16px!important;padding-right:16px!important}.ac-practice{margin-left:16px!important;margin-right:16px!important}.ac-lesson-header h1,body.ac-lesson header h1{font-size:30px!important}}
