Both index.html (editor) and player.html (hardware-player mockup) now pull
their common code from src/ via a new build-time include marker
(/*@BUILD:include:src/…@*/), resolved by build.sh:
src/engine.js — audio voices (DRUMS×30), Web Audio scheduler primitives,
and the share-language codec (patch/set-list encode+decode)
src/setlists.js — SEED_SETLISTS, so the player ships the SAME default set
lists as the editor (player BUILTIN = SEED_SETLISTS)
src/base.css — reset + VARASYS brand palette + type stack
The editor inlines the CC0 acoustic samples; the player passes an empty
SAMPLES object and the shared playInstrument falls back to its synth voices,
so the device stays faithfully synth-only. Each app keeps its own state
globals, setBpm, advanceMaster/scheduler, and UI. ~400 lines of duplicated
engine code removed; the player's favicon is now the shared @BUILD:favicon@.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
12 lines
467 B
CSS
12 lines
467 B
CSS
/* Shared base — inlined into BOTH index.html and player.html by build.sh.
|
|
Box-sizing reset, the VARASYS brand palette, and the common type stack.
|
|
(Page-specific colours/layout live in each page's own <style>.) */
|
|
* { box-sizing: border-box; }
|
|
:root {
|
|
--cyan: #0AB3F7; /* VARASYS brand cyan */
|
|
--navy: #1C283F; /* VARASYS brand navy */
|
|
}
|
|
body {
|
|
font-family: "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
|
|
-webkit-font-smoothing: antialiased;
|
|
}
|