Skip to main content

New Commit: updated lessons

Repository: Hestenb62/_legacy_backup

Author: Hesten Berger

Commit Message: updated lessons

URL: https://github.com/Hestenb62/_legacy_backup/commit/9f2524793decac10a4d3ef8adc39a932820b5cce

Code Changes:

diff --git a/assets/css/pages/lesson.css b/assets/css/pages/lesson.css
index 4922053..4069cb7 100644
--- a/assets/css/pages/lesson.css
+++ b/assets/css/pages/lesson.css
@@ -1560,3 +1560,297 @@ main.container {
     transition: all 0.25s ease;
 }
 
+/* ==========================================================================
+   GUIDED EXERCISES, EXPANDABLE SOLUTIONS & COMMON PITFALLS (UDL / WCAG)
+   ========================================================================== */
+.lesson-guided-section {
+    margin: 2.5rem 0;
+    display: flex;
+    flex-direction: column;
+    gap: 1.5rem;
+}
+
+.lesson-guided-header {
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    flex-wrap: wrap;
+    gap: 0.75rem;
+    padding-bottom: 0.75rem;
+    border-bottom: 2px solid color-mix(in srgb, var(--color-primary, #6366f1) 20%, transparent);
+}
+
+.lesson-guided-title {
+    font-size: 1.35rem;
+    font-weight: 800;
+    color: var(--color-text-default, #0f172a);
+    display: inline-flex;
+    align-items: center;
+    gap: 0.6rem;
+    margin: 0;
+}
+
+.lesson-guided-title i {
+    color: var(--color-primary, #6366f1);
+}
+
+.lesson-guided-subtitle {
+    font-size: 0.875rem;
+    color: var(--color-text-secondary, #64748b);
+    margin: 0;
+}
+
+.lesson-exercise-card {
+    background: var(--color-surface, #ffffff);
+    border: 1px solid var(--color-border, #e2e8f0);
+    border-radius: 1.25rem;
+    padding: 1.75rem;
+    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
+    display: flex;
+    flex-direction: column;
+    gap: 1.25rem;
+    transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
+}
+
+.lesson-exercise-card:hover {
+    border-color: color-mix(in srgb, var(--color-primary, #6366f1) 35%, transparent);
+    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.07);
+}
+
+.lesson-exercise-top {
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    flex-wrap: wrap;
+    gap: 0.75rem;
+}
+
+.lesson-exercise-heading {
+    font-size: 1.15rem;
+    font-weight: 800;
+    color: var(--color-text-default, #0f172a);
+    margin: 0;
+    display: flex;
+    align-items: center;
+    gap: 0.5rem;
+}
+
+.lesson-exercise-badges {
+    display: flex;
+    align-items: center;
+    gap: 0.5rem;
+}
+
+.lesson-exercise-badge {
+    font-size: 0.75rem;
+    font-weight: 700;
+    padding: 0.25rem 0.75rem;
+    border-radius: 9999px;
+    text-transform: uppercase;
+    letter-spacing: 0.04em;
+}
+
+.lesson-exercise-badge.guided {
+    background: color-mix(in srgb, var(--color-primary, #6366f1) 12%, transparent);
+    color: var(--color-primary, #6366f1);
+    border: 1px solid color-mix(in srgb, var(--color-primary, #6366f1) 25%, transparent);
+}
+
+.lesson-exercise-badge.difficulty {
+    background: rgba(16, 185, 129, 0.12);
+    color: #059669;
+    border: 1px solid rgba(16, 185, 129, 0.25);
+}
+
+.lesson-exercise-problem {
+    font-size: 1rem;
+    line-height: 1.7;
+    color: var(--color-text-default, #0f172a);
+    background: color-mix(in srgb, var(--color-surface, #ffffff) 50%, var(--color-bg, #f8fafc));
+    border-left: 4px solid var(--color-primary, #6366f1);
+    border-radius: 0 0.75rem 0.75rem 0;
+    padding: 1rem 1.25rem;
+    margin: 0;
+}
+
+.lesson-scaffold-box {
+    display: flex;
+    align-items: flex-start;
+    gap: 0.75rem;
+    background: color-mix(in srgb, var(--color-primary, #6366f1) 6%, transparent);
+    border: 1px solid color-mix(in srgb, var(--color-primary, #6366f1) 15%, transparent);
+    border-radius: 0.75rem;
+    padding: 0.85rem 1.15rem;
+    font-size: 0.9rem;
+    line-height: 1.6;
+    color: var(--color-text-secondary, #475569);
+}
+
+.lesson-scaffold-icon {
+    color: #f59e0b;
+    font-size: 1.1rem;
+    margin-top: 0.15rem;
+    flex-shrink: 0;
+}
+
+/* Accordion for Step-by-Step Solution (Keyboard operable details/summary) */
+.lesson-solution-accordion {
+    border: 1px solid color-mix(in srgb, var(--color-primary, #6366f1) 20%, transparent);
+    border-radius: 0.85rem;
+    overflow: hidden;
+    background: var(--color-surface, #ffffff);
+    transition: all 0.2s ease;
+}
+
+.lesson-solution-accordion[open] {
+    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
+}
+
+.lesson-solution-summary {
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+    padding: 0.9rem 1.25rem;
+    background: color-mix(in srgb, var(--color-primary, #6366f1) 8%, transparent);
+    cursor: pointer;
+    user-select: none;
+    font-weight: 700;
+    font-size: 0.925rem;
+    color: var(--color-primary, #6366f1);
+    list-style: none;
+    transition: background 0.2s ease;
+}
+
+.lesson-solution-summary::-webkit-details-marker {
+    display: none;
+}
+
+.lesson-solution-summary:hover {
+    background: color-mix(in srgb, var(--color-primary, #6366f1) 14%, transparent);
+}
+
+.lesson-solution-summary:focus-visible {
+    outline: 3px solid var(--color-primary, #6366f1);
+    outline-offset: -2px;
+}
+
+.lesson-solution-summary-text {
+    display: inline-flex;
+    align-items: center;
+    gap: 0.5rem;
+}
+
+.lesson-solution-chevron {
+    transition: transform 0.25s ease;
+    font-size: 0.85rem;
+}
+
+.lesson-solution-accordion[open] .lesson-solution-chevron {
+    transform: rotate(180deg);
+}
+
+.lesson-solution-body {
+    padding: 1.25rem;
+    display: flex;
+    flex-direction: column;
+    gap: 1rem;
+    background: color-mix(in srgb, var(--color-surface, #ffffff) 80%, var(--color-bg, #f8fafc));
+}
+
+.lesson-step-list {
+    display: flex;
+    flex-direction: column;
+    gap: 0.85rem;
+}
+
+.lesson-step-item {
+    display: flex;
+    align-items: flex-start;
+    gap: 0.85rem;
+    background: var(--color-surface, #ffffff);
+    border: 1px solid var(--color-border, #e2e8f0);
+    border-radius: 0.75rem;
+    padding: 0.85rem 1rem;
+}
+
+.lesson-step-num {
+    display: flex;
+    align-items: center;
+    justify-content: center;
+    width: 26px;
+    height: 26px;
+    border-radius: 9999px;
+    background: var(--color-primary, #6366f1);
+    color: #ffffff;
+    font-size: 0.75rem;
+    font-weight: 800;
+    flex-shrink: 0;
+    margin-top: 0.15rem;
+}
+
+.lesson-step-content {
+    flex: 1;
+    display: flex;
+    flex-direction: column;
+    gap: 0.35rem;
+}
+
+.lesson-step-label {
+    font-size: 0.875rem;
+    font-weight: 700;
+    color: var(--color-text-default, #0f172a);
+}
+
+.lesson-step-math {
+    font-size: 0.95rem;
+    color: var(--color-primary, #4338ca);
+    overflow-x: auto;
+}
+
+.lesson-final-answer-box {
+    display: flex;
+    align-items: center;
+    gap: 0.75rem;
+    background: rgba(16, 185, 129, 0.12);
+    border: 1px solid rgba(16, 185, 129, 0.3);
+    border-radius: 0.75rem;
+    padding: 0.85rem 1.15rem;
+    color: #065f46;
+    font-weight: 700;
+    font-size: 0.925rem;
+}
+
+.lesson-final-answer-box i {
+    color: #10b981;
+    font-size: 1.15rem;
+}
+
+/* Common Pitfall Alert Box */
+.lesson-pitfall-box {
+    display: flex;
+    align-items: flex-start;
+    gap: 0.85rem;
+    background: rgba(239, 68, 68, 0.07);
+    border: 1px solid rgba(239, 68, 68, 0.25);
+    border-radius: 0.85rem;
+    padding: 1rem 1.25rem;
+    font-size: 0.875rem;
+    line-height: 1.6;
+    color: #991b1b;
+}
+
+.lesson-pitfall-icon {
+    color: #ef4444;
+    font-size: 1.2rem;
+    margin-top: 0.15rem;
+    flex-shrink: 0;
+}
+
+.lesson-pitfall-body strong {
+    color: #b91c1c;
+    display: block;
+    margin-bottom: 0.25rem;
+    font-size: 0.9rem;
+}

Popular Posts

New Commit: fixed theme issues

Repository: Hestenb62/_legacy_backup Author: Hesten Berger Commit Message: fixed theme issues URL: https://github.com/Hestenb62/_legacy_backup/commit/498741f8c633ecaf6e7e594bb0aed02c47e69b39 Code Changes: diff --git a/assessment/index.php b/assessment/index.php index 822865b..5e8b706 100644 --- a/assessment/index.php +++ b/assessment/index.php @@ -264,7 +264,7 @@ include '../src/header.php'; </div> <!-- Hint Modal (Inline) --> - <div id="hintText" class="hint-box" style="display: none;"> + <div id="hintText" class="hint-box hidden"> <strong>Hint:</strong> <span id="hint-content"></span> </div> </div> diff --git a/assets/css/pages/assessment.css b/assets/css/pages/assessment.css index b57e964..7eb0d74 100644 --- a/assets/c...

New Commit: added arura mesh

Repository: Hestenb62/_legacy_backup Author: Hesten Berger Commit Message: added arura mesh URL: https://github.com/Hestenb62/_legacy_backup/commit/d8a9c63f2df943f6e40651985fb1c273c5809dd4 Code Changes: diff --git a/assets/css/level-style.css b/assets/css/level-style.css index ed8b60b..49cddf7 100644 --- a/assets/css/level-style.css +++ b/assets/css/level-style.css @@ -100,6 +100,8 @@ h1, h2, h3, h4 { padding: 4rem 1rem 3rem 1rem; background: linear-gradient(180deg, var(--bg-secondary) 0%, var(--bg-primary) 100%); border-bottom: 1px solid var(--glass-border); + position: relative; + overflow: hidden; } .hero-inner { @@ -111,6 +113,78 @@ h1, h2, h3, h4 { flex-wrap: wrap; gap: 1.5rem; animation: fadeUp 0.6s ease-out; + position: relative; + z-index: 2; +} + +/* Aurora Mesh Background for Level Hero */ +.level-aurora-bg { + position: absolute; + inset: 0; + overflow: hidden; + pointer-events: none; + z-index: 1; +} + +....

New Commit: Add JSON lesson migration and renderer scaffold Introduces a first-pass migration pipeline from PHP lesson files to structured JSON with `migrate_lessons.php`, and adds a generated `assets/data/lessons.json` catalog containing extracted metadata plus manual-migration placeholders for complex interactive content. Adds a new universal `src/lesson_renderer.php` to render lessons from JSON, along with initial component templates (`interactive-ladder` and `teacher-concepts`) for modular block rendering. Also includes `audit_report.html` documenting current security, accessibility, and architecture findings that motivated the move toward a template-driven lesson system.

Repository: Hestenb62/_legacy_backup Author: Hesten Berger Commit Message: Add JSON lesson migration and renderer scaffold Introduces a first-pass migration pipeline from PHP lesson files to structured JSON with , and adds a generated catalog containing extracted metadata plus manual-migration placeholders for complex interactive content. Adds a new universal to render lessons from JSON, along with initial component templates ( and ) for modular block rendering. Also includes documenting current security, accessibility, and architecture findings that motivated the move toward a template-driven lesson system. URL: https://github.com/Hestenb62/_legacy_backup/commit/f0c974b613ed65b7edcb712abb88bfae61ef0df5 Code Changes: diff --git a/assets/data/lessons.json b/assets/data/lessons.json new file mode 100644 index 0000000..0389666 --- /dev/null +++ b/assets/data/lessons.json @@ -0,0 +1,2835 @@ +{ + "lessons": { + "k-ela-m1-a-1": { + ...