| 1 | # Visual Styles — Index |
| 2 | |
| 3 | A **visual style** is how the deck **looks** — shape language, decoration density, whitespace rhythm, typographic character, texture / elevation. Resolve **one per deck**; Default locks it, while Quick keeps it only in active context. It anchors the aesthetic of the SVG layout itself (cards, dividers, spacing, corner radius, shadow use). |
| 4 | |
| 5 | **Hard rule — capability boundary**: A style governs treatment, visual weight, |
| 6 | density, recurrence, and coherence. It never decides carrier eligibility or |
| 7 | image source, and never narrows the complete primitive, Office-preset, |
| 8 | independent-composition, Boolean, or necessary-freeform authoring vocabulary. |
| 9 | Page purpose selects the carriers and construction; the style makes the chosen |
| 10 | forms belong to one visual system. |
| 11 | |
| 12 | > **Styles carry NO fixed HEX and define no palette.** Default core color identity and recurring role behavior live in `design_spec.colors` / `spec_lock.colors` (confirmation `e`); Quick resolves equivalent palette anchors in active context. A visual style describes how those anchors behave in SVG composition and may call for contextual tints, gradients, effects, or material transitions; it does not substitute an unrelated palette. Generated images follow the same anchor model through [`image-renderings/`](../image-renderings/). [`image-palettes/`](../image-palettes/) is legacy compatibility material only. |
| 13 | > |
| 14 | > A visual style is *not* a mode. **Visual style = how it looks; mode = how you argue** (see [`modes/_index.md`](../modes/_index.md)). Resolve them independently — any style pairs with any mode. |
| 15 | |
| 16 | --- |
| 17 | |
| 18 | ## 1. Catalog |
| 19 | |
| 20 | Each style keeps its own authoritative file with: shape & decoration, typography character, color-usage discipline (no HEX), texture / elevation, and the paired image-rendering. Read this index alone while choosing a direction. Only after a preset or custom bases are fixed may the active role read the selected sibling files: one file for a preset, every exact `visual_style_references` file for a catalog-based custom, and none for a novel custom. Never glob the directory or read an unselected sibling. The catalog mirrors [`image-renderings`](../image-renderings/_index.md): each style's "Paired rendering" names the illustration family that shares its aesthetic. |
| 21 | |
| 22 | > The **`visual_style` value is only ever a first-column `id`** (`swiss-minimal`, `editorial`, …). The "Paired rendering" column lists **image-rendering** names (`flat`, `minimalist-swiss`, `digital-dashboard`, …) — never treat one of those as the `visual_style`. Default records rendering under confirmation h; Quick keeps the selected rendering only in active context and any required image manifest. |
| 23 | > |
| 24 | > The **`Illus.`** column describes illustration's role only after page-carrier selection activates it — `core` (illustration may lead the look), `supportive` (illustration may share the composition), or `sparse` (illustration stays selective so the style's lead visual remains clear). It tunes selected illustration's centrality and recurrence; it never recommends adding illustration, selects an AI source or image row, or narrows eligible page types, element scale, or carrier combinations. An explicit user request to use / skip illustrations overrides it either way, and `image_usage: none` always writes no illustration rows. Full per-style rule in each file's §6. |
| 25 | > |
| 26 | > **Typography character applies to editable native text.** Decorative |
| 27 | > lettering is a separate carrier decision; a selected style informs its |
| 28 | > treatment, never its eligibility. |
| 29 | |
| 30 | ### 1.1 Corporate / product |
| 31 | |
| 32 | | Visual style | Character | Typical context | Paired rendering | Illus. | |
| 33 | |---|---|---|---|---| |
| 34 | | [`swiss-minimal`](./swiss-minimal.md) | Grid-locked, sharp, aggressive whitespace, near-zero ornament | High-end consulting, architecture, type-led | `minimalist-swiss` | sparse | |
| 35 | | [`soft-rounded`](./soft-rounded.md) | Rounded cards, gentle elevation, approachable | Product, SaaS, training, consumer | `flat` | supportive | |
| 36 | | [`glassmorphism`](./glassmorphism.md) | Translucent glass panels, gradient light, floating depth | Modern SaaS, fintech, product launches, AI demos | `glassmorphism` | sparse | |
| 37 | | [`dark-tech`](./dark-tech.md) | Dark canvas, glow accents, geometric precision | Tech, AI, data products, launches | `digital-dashboard` | sparse | |
| 38 | | [`blueprint`](./blueprint.md) | Schematic line work on dark paper, isometric, annotated | Technical briefings, architecture, engineering | `blueprint` | supportive | |
| 39 | |
| 40 | ### 1.2 Editorial / publication |
| 41 | |
| 42 | | Visual style | Character | Typical context | Paired rendering | Illus. | |
| 43 | |---|---|---|---|---| |
| 44 | | [`editorial`](./editorial.md) | Magazine hierarchy, rules & columns, serif/sans interplay | Finance, journalism, analysis, explainers | `editorial` | supportive | |
| 45 | | [`photo-editorial`](./photo-editorial.md) | Full-bleed photography dominates, text points & captions | Architecture, design, fashion, culture, travel / destination, photo-led | `corporate-photo` | sparse | |
| 46 | | [`data-journalism`](./data-journalism.md) | Multi-column micro-charts, sidebars, source lines, dense | Finance, market reviews, research, data reports | `editorial` | sparse | |
| 47 | | [`brutalist`](./brutalist.md) | Newsprint density, ruled boxes, raw structure, flat | Annual reviews, research digests, manifestos | `screen-print` / `editorial` | supportive | |
| 48 | |
| 49 | ### 1.3 Expressive / print |
| 50 | |
| 51 | | Visual style | Character | Typical context | Paired rendering | Illus. | |
| 52 | |---|---|---|---|---| |
| 53 | | [`memphis`](./memphis.md) | Clashing color blocks, geometric confetti, bold outlines | Festivals, consumer, youth, launch hype | `flat` | core | |
| 54 | | [`zine`](./zine.md) | Riso misregistration, halftone, limited palette, print grit | Culture, design talks, indie brands | `screen-print` | core | |
| 55 | | [`vintage-poster`](./vintage-poster.md) | Mid-century flat blocks, halftone, retro-geometric warmth | Heritage brands, historic hospitality identities, cultural retrospectives, anniversaries | `vintage-poster` | core | |
| 56 | | [`paper-cut`](./paper-cut.md) | Layered cut-paper sheets, soft inter-layer shadow, tactile | Cultural / folk, children, festival, sustainability | `paper-cut` | core | |
| 57 | |
| 58 | ### 1.4 Hand-drawn / brush |
| 59 | |
| 60 | | Visual style | Character | Typical context | Paired rendering | Illus. | |
| 61 | |---|---|---|---|---| |
| 62 | | [`sketch-notes`](./sketch-notes.md) | Warm paper, doodle line work, soft pastel blocks | Education, training, onboarding, knowledge | `sketch-notes` | core | |
| 63 | | [`ink-notes`](./ink-notes.md) | Pale field, black hand-ink, sparse semantic accent | Methodology, before/after, manifestos | `ink-notes` | supportive | |
| 64 | | [`chalkboard`](./chalkboard.md) | Dark slate, chalk strokes, powdery pastel accents | Teaching, tutorials, classroom, academic | `chalkboard` | core | |
| 65 | | [`ink-wash`](./ink-wash.md) | Rice-paper whitespace, brush marks, seal accent, still | Cultural, philosophy, heritage, 新中式 | `ink-notes` / `watercolor` | supportive | |
| 66 | |
| 67 | ### 1.5 Specialty |
| 68 | |
| 69 | | Visual style | Character | Typical context | Paired rendering | Illus. | |
| 70 | |---|---|---|---|---| |
| 71 | | [`pixel-art`](./pixel-art.md) | Strict pixel grid, blocky forms, limited palette, flat | Gaming, retro-tech, nostalgic, game-flavored | `pixel-art` | core | |
| 72 | |
| 73 | --- |
| 74 | |
| 75 | ## 2. Selection Boundary |
| 76 | |
| 77 | **Reference — not a constraint**: Resolve the audience task, outcome, delivery |
| 78 | context, required carriers, and artifact afterlife before choosing. Compare the |
| 79 | complete catalog's character, composition language, density, typography, and |
| 80 | texture with the project as a whole. A topic, industry, or style keyword never |
| 81 | selects a row; the same subject may support different visual systems when its |
| 82 | communication job changes. |
| 83 | |
| 84 | | Decision dimension | Evidence to compare | |
| 85 | |---|---| |
| 86 | | Shape and space | Contour language, grid behavior, whitespace, and boundary strength | |
| 87 | | Information texture | Sparse presence, editorial hierarchy, dense evidence, or hand-made expression | |
| 88 | | Carrier integration | How the system accommodates the page's actual photos, illustrations, charts, tables, and native geometry | |
| 89 | | Typography character | The role editable type plays inside the composition, independent of exact font choice | |
| 90 | | Delivery and afterlife | Viewing distance, projection/print behavior, reuse, and expected editing | |
| 91 | |
| 92 | **Default — derive shape language from project fit (may override when a generic |
| 93 | primitive system is itself the clearest identity or communication choice)**: |
| 94 | Before settling on lines, rectangles, circles, or ellipses as the deck's main |
| 95 | shape language, test whether the source material, identity, or communication |
| 96 | job offers a more specific edge, corner, opening, angle, contour, or layering |
| 97 | logic. Retain a primitive-led result when it deliberately fits; do not select |
| 98 | an exact authoring preset here. |
| 99 | |
| 100 | > When the deck has AI images, the "Paired rendering" column exposes an |
| 101 | > aesthetically related option. It does not select the rendering or create an |
| 102 | > AI image job; compare it with the actual image roles before using it. |
| 103 | > |
| 104 | > Not every image-rendering becomes its own visual style. A rendering earns a layout twin only when it defines a whole-page layout language (shape, whitespace, composition, texture) — not merely how an inserted image looks. Purely atmospheric renderings (`nature`, `warm-scene`, `fantasy-animation`) stay imagery-only: they pair with whichever layout style fits rather than being one. (Note the distinction `photo-editorial` draws: photography as a *rendering* is image-look, but photo-*led composition* is a real layout language — so the style exists, paired with `corporate-photo`.) |
| 105 | |
| 106 | --- |
| 107 | |
| 108 | ## 3. Editable `custom` projection |
| 109 | |
| 110 | Each coordinated Default Stage-2 direction authors one visible, non-empty `custom` aesthetic whose paragraph names its executable shape language, composition geometry, decoration density, whitespace, typographic character, and texture — **no HEX, no color names as values**. `custom` is not constrained by its relationship to the catalog: it may use catalog material in any way or none, including carrying one fitting preset unchanged. The three complete directions are plainly different designs; this axis expresses that difference whenever their aesthetics genuinely differ, and catalog bases may coincide. A different name, note, reference count, or palette alone is not another aesthetic. Style behaviors may also coincide when other components carry the direction difference or authoritative user/template truth forbids visual variation; state that boundary in the direction note instead of fabricating difference. Use this index to freeze any catalog bases before reading their detail files. A template-backed direction stays inside the inherited identity and confirmed application plan. Record the confirmed current aesthetic in the Design Spec first, then project `- visual_style: custom` plus `- visual_style_behavior:`. The 18 fixed styles remain lower-level single-select alternatives; do not create a fourth AI-custom proposal. |
| 111 | |
| 112 | Quick does not display a candidate spectrum. It reads this index, resolves one preset or custom behavior, then reads only the selected detail files and persists nothing. |
| 113 | |
| 114 | **Mandatory — select before detail reading**: Freeze every catalog source actually used from this index, then read only those exact files before writing the behavior. One source may supply the complete aesthetic unchanged; when several are named, each contributes a distinct executable job across shape language, composition, decoration, whitespace, typography, or texture. Reference count has no fixed cap; count is an outcome, not a target. A coherent three-basis direction may assign `swiss-minimal` to grid and whitespace, `soft-rounded` to selective surface contours and elevation, and `editorial` to evidence hierarchy and rules. Default persists every actual id as `visual_style_references`; Quick retains them only in active context. Omit every source whose contribution cannot be stated, never add a second merely to imply synthesis, and do not open candidates for comparison after this gate. A custom using no catalog source names and reads none. |
| 115 | |
| 116 | --- |
| 117 | |
| 118 | ## 4. How to use |
| 119 | |
| 120 | | Active profile | Use | |
| 121 | |---|---| |
| 122 | | Default Generate | Strategist reads only this index while mapping three whole solution intents, freezes each custom direction's exact bases, then reads only their deduplicated detail files. Executor reads the confirmed preset file or exact custom references. | |
| 123 | | Quick Generate | The current main agent reads only this index while deciding, then reads the resolved preset or exact custom bases and retains that one direction without Design Spec/lock. | |
| 124 | |
| 125 | **Resolution scope**: deck-wide (one style per deck). It anchors taste as a |
| 126 | **reference**, not a whitelist. Each §1 `Composition geometry` list is |
| 127 | generative vocabulary, not a finite layout menu; pages may synthesize or |
| 128 | deviate when their communication job calls for it. |
| 129 |