diff --git a/index.html b/index.html index 2a63f31..bbdab08 100644 --- a/index.html +++ b/index.html @@ -91,6 +91,146 @@ footer{padding:30px 0 60px;border-top:1.5px solid var(--line2);font:12px/1.7 var .receipts li{grid-template-columns:1fr;gap:4px} .cta{padding:15px 18px} } + +/* .mdeck styles */ +.editor-container { + display: grid; + grid-template-columns: 1fr 1fr; + gap: 20px; + margin: 20px 0; +} +.editor-pane, .preview-pane { + display: flex; + flex-direction: column; +} +.editor-pane label, .preview-pane label { + font-size: 0.78rem; + text-transform: uppercase; + letter-spacing: 0.08em; + color: var(--mute); + margin-bottom: 6px; +} +#src { + flex: 1; + min-height: 220px; + resize: none; + background: rgba(12,35,64,.78); + color: var(--paper); + border: 1px solid var(--line2); + border-radius: 4px; + padding: 14px; + font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; + font-size: 0.9rem; + line-height: 1.55; + outline: none; +} +#src:focus { border-color: var(--amber); } +.toolbar { + display: flex; + align-items: center; + gap: 8px; + margin: 10px 0; + flex-wrap: wrap; +} +.btn { + background: rgba(12,35,64,.78); + color: var(--paper); + border: 1px solid var(--line2); + border-radius: 4px; + padding: 8px 14px; + font-size: 0.85rem; + cursor: pointer; + touch-action: manipulation; +} +.btn:hover { border-color: var(--amber); } +.btn:disabled { opacity: 0.4; cursor: default; } +.btn-primary { + background: var(--amber); + color: #1a1300; + font-weight: 600; + border: none; +} +.counter { + margin-left: auto; + font-variant-numeric: tabular-nums; + color: var(--mute); + font-size: 0.85rem; +} +.progress { + height: 5px; + background: rgba(12,35,64,.78); + border-radius: 99px; + overflow: hidden; + margin: 10px 0; +} +.progress > div { + height: 100%; + width: 0; + background: linear-gradient(90deg, var(--amber), #ff9a3d); + transition: width 180ms ease; +} +.slide-container { + flex: 1; + min-height: 300px; + border: 1px solid var(--line2); + border-radius: 4px; + background: rgba(12,35,64,.78); + overflow-y: auto; + padding: 20px; +} +.slide { + min-height: 100%; + display: flex; + flex-direction: column; + justify-content: center; +} +.slide h1 { + font-size: clamp(1.6rem, 4.5vw, 3rem); + margin: 0 0 0.5em; + line-height: 1.15; +} +.slide h2 { + font-size: clamp(1.2rem, 3vw, 1.9rem); + margin: 0 0 0.6em; + color: var(--mute); + font-weight: 500; +} +.slide ul { + margin: 0; + padding-left: 1.3em; + font-size: clamp(1rem, 2.2vw, 1.35rem); + line-height: 1.7; +} +.slide p { + font-size: clamp(1rem, 2.2vw, 1.35rem); + line-height: 1.7; + margin: 0.3em 0; +} +.slide a { + color: var(--amber); + text-decoration: none; +} +.slide a:hover { + text-decoration: underline; +} +.hint { + margin-top: 8px; + font-size: 0.78rem; + color: var(--mute); + line-height: 1.5; +} +.hint code { + background: rgba(143,211,255,.1); + border: 1px solid var(--line2); + border-radius: 2px; + padding: 1px 5px; + font-size: 0.75rem; +} +.export-note { + font-size: 0.78rem; + color: var(--mute); + margin-top: 8px; +}
@@ -221,6 +361,270 @@ Part of #5 (step 2/2). Depends on #6. +Type markdown-ish slides in the editor, watch a clean navigable preview render live, copy the deck as self-contained HTML. Everything runs in your browser — nothing is saved or sent anywhere.
+ +
+ # Title heading · ## Subtitle · - bullet point ·
+ --- on its own line starts a new slide · inline **bold**, *italic*, `code`.
+ Plain lines become paragraphs.
+
The copied file is a self-contained deck: open it in any browser and use ← / → to present.
+Opens a public GitHub issue. No email, no payment.
+