class_name ParchmentPanel extends Panel ## Drop-in parchment backdrop (mockups "Dark Bay + Parchment" motif). §2: presentation. ## Uniforms are set at runtime from Palette (deliberate deviation from spec §5.4's ## "baked into the .tscn/material" approach) — keeps Palette the single source of ## truth at the cost of an editor preview; the surface renders once the scene runs. func _ready() -> void: var m := ShaderMaterial.new() m.shader = load("res://assets/theme/shaders/parchment.gdshader") m.set_shader_parameter("top", Palette.SHEET_TOP) m.set_shader_parameter("bottom", Palette.SHEET_BOTTOM) material = m