diff --git a/BUGFIX_PLAN.md b/BUGFIX_PLAN.md new file mode 100644 index 0000000..afcd554 --- /dev/null +++ b/BUGFIX_PLAN.md @@ -0,0 +1,488 @@ +# BUGFIX_PLAN.md — OpenCD CSS Overhaul + +> **Author:** Colonel John Hannibal Smith (A-Team command) +> **Status:** Approved — execute per work breakdown +> **Context:** Bug analysis of opencd.css + 3 templates against Ludo's 8 critical bugs +> **Date:** 2026-05-25 + +--- + +## Table of Contents + +1. [Bug-by-Bug Analysis](#1-bug-by-bug-analysis) +2. [CSS to Cut — Line-Level Audit](#2-css-to-cut--line-level-audit) +3. [CD Dimension Recalculation](#3-cd-dimension-recalculation) +4. [Reset Strategy](#4-reset-strategy) +5. [Work Breakdown](#5-work-breakdown) + +--- + +## 1. Bug-by-Bug Analysis + +### Bug #1 — Inline ` + diff --git a/templates/demo.css b/templates/demo.css new file mode 100644 index 0000000..2c681f2 --- /dev/null +++ b/templates/demo.css @@ -0,0 +1,116 @@ +/* OpenCD — Demo page chrome (not framework component CSS) + Shared by jewel-case.html, back-tray.html, leaflet.html + All --cd-* tokens defined in opencd.css */ + + +/* ── Shared demo layout ── */ + +body { + min-height: 100dvh; + display: flex; + flex-direction: column; + align-items: center; + justify-content: center; + gap: 2rem; + padding: 2rem; + background: oklch(92% .012 85); + font-family: var(--cd-font-label); +} + +.demo-controls { + display: flex; + gap: 1rem; + align-items: center; + font-size: .875rem; +} + +.demo-controls label { + display: flex; + align-items: center; + gap: .5rem; + cursor: pointer; + user-select: none; +} + +.demo-controls input[type="checkbox"] { + accent-color: var(--cd-advisory-red); +} + +.demo-controls select { + padding: .25rem .5rem; + border: 1px solid var(--cd-text-muted); + border-radius: var(--cd-jewel-radius); + font-family: inherit; +} + +.demo-footnote { + font-size: .75rem; + color: var(--cd-text-muted); + text-align: center; + max-width: 480px; + line-height: 1.5; +} + + +/* ── Back-tray demo wrapper ── */ + +.demo-tray-container { + width: var(--cd-jewel-width); + max-height: var(--cd-tray-height); + border-radius: var(--cd-jewel-radius); + box-shadow: var(--cd-jewel-shadow); + overflow-y: auto; +} + + +/* ── Leaflet-specific demo overrides ── */ + +.demo-controls { + flex-wrap: wrap; +} + +.demo-controls button { + padding: .5rem 1rem; + border: 1px solid var(--cd-text-muted); + border-radius: var(--cd-jewel-radius); + background: var(--cd-surface-0); + font-family: inherit; + cursor: pointer; + transition: background var(--cd-transition-duration); +} + +.demo-controls button:hover { + background: var(--cd-grid-color); +} + +.demo-controls button:disabled { + opacity: .4; + cursor: not-allowed; +} + +.demo-controls .page-indicator { + font-family: var(--cd-font-mono); + font-size: .875rem; + color: var(--cd-text-muted); + min-width: 8ch; + text-align: center; +} + +.leaflet-content--multi { + max-width: calc(var(--cd-leaflet-size) + var(--cd-space-inset) * 2); +} + +.leaflet-pages { + display: flex; + gap: var(--cd-space-stack); + flex-direction: column; + position: relative; +} + +.leaflet-pages .leaflet-page { + display: none; +} + +.leaflet-pages .leaflet-page[data-leaflet-active="true"] { + display: flex; +} \ No newline at end of file diff --git a/templates/jewel-case.html b/templates/jewel-case.html index 47ed3ae..eaa484a 100644 --- a/templates/jewel-case.html +++ b/templates/jewel-case.html @@ -5,54 +5,7 @@ OpenCD · Jewel Case - + diff --git a/templates/leaflet.html b/templates/leaflet.html index b75b41a..8cb79b7 100644 --- a/templates/leaflet.html +++ b/templates/leaflet.html @@ -5,94 +5,16 @@ OpenCD · Leaflet - + -
+
-
+
@@ -107,7 +29,7 @@

Architecture

OpenCD is built on Open Props — a design token framework by Adam Argyle. Every dimension, color, and spacing value maps to a custom property, with fallback values for standalone use. The framework includes:

-
    +
    • CD dimension tokens at 2× scale
    • Semantic color aliases on Open Props
    • ASW-inspired surface layers
    • @@ -119,13 +41,13 @@

      Token System

      The variable layer defines ~40 custom properties organized into semantic groups:

      -
      -
      --cd-jewel-width
      -
      280px × scale
      -
      --cd-surface-1
      -
      oklch(30% .015 265)
      -
      --cd-font-label
      -
      --cd-font-neo-grotesque
      +
      +
      --cd-jewel-width
      +
      280px × scale
      +
      --cd-surface-1
      +
      oklch(30% .015 265)
      +
      --cd-font-label
      +
      --cd-font-neo-grotesque
      Page 3 of 4 · v0.1.0
      @@ -133,15 +55,15 @@

      Credits

      OpenCD is a project of the A-Team design collective — a framework for physical-digital design artifacts that bridge the gap between print packaging and web implementations.

      -

      Design: Hannibal & Face
      Engineering: Murdock & B.A.
      Quality: Amy

      +

      Design: Hannibal & Face
      Engineering: Murdock & B.A.
      Quality: Amy

      Page 4 of 4 · MMXXV
- -