<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Appearance on OINK</title>
    <link>https://oink.pgsty.com/categories/appearance/</link>
    <description>Recent content in Appearance on OINK</description>
    <generator>Hugo</generator>
    <language>en-US</language>
    
    
    
      <lastBuildDate>Fri, 14 Aug 2026 21:56:46 +0800</lastBuildDate>
    
    
      <atom:link href="https://oink.pgsty.com/categories/appearance/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
        <title>Typography presets</title>
        <link>https://oink.pgsty.com/docs/appearance/typography/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://oink.pgsty.com/docs/appearance/typography/</guid>
        <description>&lt;p&gt;OINK puts font choices behind &lt;strong&gt;seven semantic CSS custom properties&lt;/strong&gt;. A site&#xA;overrides those roles to change typography, without needing to know which&#xA;selectors the theme uses internally.&lt;/p&gt;&#xA;&lt;p&gt;Hugo compiles the whole mechanism into the same static stylesheet at build time:&#xA;&lt;strong&gt;no JavaScript, no remote font service, and no runtime preset loader&lt;/strong&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;presets&#34;&gt;Two built-in presets&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#presets&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;div class=&#34;td-code td-code--titled&#34; id=&#34;td-code-92917e14-fence-0&#34; data-td-code data-td-code-auto-id&#xA;     data-language=&#34;yaml&#34; data-line-count=&#34;4&#34; role=&#34;group&#34; aria-labelledby=&#34;td-code-92917e14-fence-0-title&#34;&gt;&#xA;  &lt;div class=&#34;td-code__header&#34;&gt;&#xA;    &lt;span class=&#34;td-code__filename&#34; id=&#34;td-code-92917e14-fence-0-title&#34; title=&#34;hugo.yaml&#34;&gt;hugo.yaml&lt;/span&gt;&lt;div class=&#34;td-code__utilities&#34;&gt;&#xA;  &lt;span class=&#34;td-code__language&#34;&gt;YAML&lt;/span&gt;&#xA;&lt;/div&gt;&#xA;  &lt;/div&gt;&#xA;  &lt;div class=&#34;td-code__viewport&#34; id=&#34;td-code-92917e14-fence-0-viewport&#34; data-td-code-viewport&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-yaml&#34; data-lang=&#34;yaml&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nt&#34;&gt;params&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;  &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;ui&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;    &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;typography&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt;&#xA;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;w&#34;&gt;      &lt;/span&gt;&lt;span class=&#34;nt&#34;&gt;preset&lt;/span&gt;&lt;span class=&#34;p&#34;&gt;:&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;l&#34;&gt;technical&lt;/span&gt;&lt;span class=&#34;w&#34;&gt; &lt;/span&gt;&lt;span class=&#34;c&#34;&gt;# technical | system&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;&#xA;&lt;/div&gt;&#xA;&lt;table&gt;&#xA;&#x9;&lt;thead&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th&gt;Preset&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;th&gt;Effect&lt;/th&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/thead&gt;&#xA;&#x9;&lt;tbody&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;code&gt;technical&lt;/code&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;The default. Preserves the Chakra Petch and IBM Plex Mono treatment, with all font files bundled locally&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&#x9;&#x9;&lt;tr&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;&lt;code&gt;system&lt;/code&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&#x9;&#x9;&lt;td&gt;Resets the display, metadata, print, and monospace roles to platform stacks and &lt;strong&gt;requests no OINK brand fonts&lt;/strong&gt;&lt;/td&gt;&#xA;&#x9;&#x9;&#x9;&lt;/tr&gt;&#xA;&#x9;&lt;/tbody&gt;&#xA;&lt;/table&gt;&#xA;&lt;p&gt;The selected value is emitted as &lt;code&gt;data-td-typography&lt;/code&gt; on &lt;code&gt;&amp;lt;html&amp;gt;&lt;/code&gt;. An&#xA;&lt;strong&gt;unsupported value fails the build&lt;/strong&gt; rather than silently changing the site.&lt;/p&gt;</description>
      </item>
    <item>
        <title>Look and feel</title>
        <link>https://oink.pgsty.com/docs/appearance/styling/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://oink.pgsty.com/docs/appearance/styling/</guid>
        <description>&lt;p&gt;OINK ships a complete visual system built on Bootstrap and Docsy, with local&#xA;fonts, icons, styles, and browser code. A consuming site can change tokens and&#xA;project styles without rebuilding a Node dependency tree.&lt;/p&gt;&#xA;&lt;h2 id=&#34;project-styles&#34;&gt;Project styles&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#project-styles&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Hugo Extended compiles the theme&amp;rsquo;s SCSS through Hugo Pipes. Project overrides&#xA;participate in the same bundle, so production builds can minify, fingerprint,&#xA;and integrity-check one same-origin stylesheet.&lt;/p&gt;&#xA;&lt;h3 id=&#34;project-style-files&#34;&gt;Project style files&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#project-style-files&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h3&gt;&#xA;&lt;p&gt;Override these files in the site&amp;rsquo;s &lt;code&gt;assets/scss/&lt;/code&gt; directory:&lt;/p&gt;</description>
      </item>
    <item>
        <title>Advanced customization</title>
        <link>https://oink.pgsty.com/docs/appearance/customize/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://oink.pgsty.com/docs/appearance/customize/</guid>
        <description>&lt;p&gt;OINK provides a small, layered customization contract instead of requiring a&#xA;site to copy component selectors or fork the theme. Everything still passes&#xA;through Hugo Extended and Hugo Pipes: no Node.js, npm, PostCSS, remote font&#xA;service, or client-side preset loader is required.&lt;/p&gt;&#xA;&lt;p&gt;This page documents the supported extension points and the first public&#xA;semantic-token slice: typography. For general color-mode, code-highlighting,&#xA;navbar, and template examples, see &lt;a href=&#34;https://oink.pgsty.com/docs/appearance/styling/&#34;&gt;Look and feel&lt;/a&gt;.&lt;/p&gt;&#xA;&lt;h2 id=&#34;choose-the-right-layer&#34;&gt;Choose the right layer&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#choose-the-right-layer&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Use the highest-level interface that can express the change:&lt;/p&gt;</description>
      </item>
    <item>
        <title>Appearance</title>
        <link>https://oink.pgsty.com/docs/appearance/</link>
        <pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
        
        <guid>https://oink.pgsty.com/docs/appearance/</guid>
        <description>&lt;p&gt;OINK&amp;rsquo;s appearance customization rests on semantic CSS custom properties: a site&#xA;overrides a small number of variables to reskin, without copying the theme&amp;rsquo;s&#xA;component selectors.&lt;/p&gt;&#xA;&lt;h2 id=&#34;in-this-chapter&#34;&gt;In this chapter&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#in-this-chapter&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;ul&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://oink.pgsty.com/docs/appearance/typography/&#34;&gt;Typography presets&lt;/a&gt;: seven semantic font roles and two presets&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://oink.pgsty.com/docs/appearance/styling/&#34;&gt;Styling&lt;/a&gt;: colors, layout, and Sass variables&lt;/li&gt;&#xA;&lt;li&gt;&lt;a href=&#34;https://oink.pgsty.com/docs/appearance/customize/&#34;&gt;Advanced customization&lt;/a&gt;: template overrides and site-owned&#xA;components&lt;/li&gt;&#xA;&lt;/ul&gt;&#xA;&lt;h2 id=&#34;precedence&#34;&gt;Precedence&lt;a class=&#34;td-heading-self-link&#34; href=&#34;#precedence&#34; aria-label=&#34;Heading self-link&#34;&gt;&lt;/a&gt;&lt;/h2&gt;&#xA;&lt;p&gt;Lowest to highest:&lt;/p&gt;&#xA;&lt;ol&gt;&#xA;&lt;li&gt;theme defaults&lt;/li&gt;&#xA;&lt;li&gt;presets (&lt;code&gt;typography.preset&lt;/code&gt;)&lt;/li&gt;&#xA;&lt;li&gt;Sass variables in &lt;code&gt;_variables_project.scss&lt;/code&gt;&lt;/li&gt;&#xA;&lt;li&gt;custom-property overrides in &lt;code&gt;_styles_project.scss&lt;/code&gt;&lt;/li&gt;&#xA;&lt;/ol&gt;&#xA;&lt;p&gt;Site settings always take precedence over preset defaults.&lt;/p&gt;</description>
      </item>
    
  </channel>
</rss>
