/* ============================================================================
   The Money Place — tokens + self-hosted faces (tmp-theme 1.0.0, 2026-11-13)
   Stitch direction B "Ledger" (project 9132729726347256848, design system
   assets/10760231119890473509; user pick 2026-11-13): warm paper, ledger
   green #1B5E20 as the ONE link/button hue (7.9:1 white, 7.4:1 paper),
   terracotta #C26238 from the logo's house for rules only (never text),
   ink footer. Noto Serif (display) + IBM Plex Sans (text, tabular figures).
   ========================================================================= */

@font-face {
    font-family: 'Noto Serif';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../fonts/noto-serif-normal-400-700-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Noto Serif';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../fonts/noto-serif-normal-400-700-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'Noto Serif';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/noto-serif-italic-400-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'Noto Serif';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/noto-serif-italic-400-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../fonts/ibm-plex-sans-normal-400-700-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'IBM Plex Sans';
    font-style: normal;
    font-weight: 400 700;
    font-display: swap;
    src: url('../fonts/ibm-plex-sans-normal-400-700-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
    font-family: 'IBM Plex Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/ibm-plex-sans-italic-400-latin-ext.woff2') format('woff2');
    unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C4, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
@font-face {
    font-family: 'IBM Plex Sans';
    font-style: italic;
    font-weight: 400;
    font-display: swap;
    src: url('../fonts/ibm-plex-sans-italic-400-latin.woff2') format('woff2');
    unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

:root {
    color-scheme: light;
    /* --- Palette (contrast checked on --mn-paper) --- */
    --mn-paper:      #FBFAF6;   /* Warm paper ground */
    --mn-sheet:      #FFFFFF;   /* Tables, inputs */
    --mn-tint:       #F3F1EA;   /* Parchment: archive head, newsletter box, table heads */
    --mn-rule:       #D9D4C7;   /* Hairlines + column rules */
    --mn-rule-soft:  #E8E4DA;
    --mn-ink:        #1C1F1A;   /* Text + headlines (16.6:1) */
    --mn-meta:       #5B5F57;   /* Meta (6.2:1 paper, 5.7:1 parchment) */
    --mn-head:       #1C1F1A;
    --mn-blue:       #1B5E20;   /* Ledger green — the one link/button hue (named --mn-blue in the lineage) */
    --mn-blue-dark:  #124417;   /* Hover */
    --mn-on-blue:    #FFFFFF;
    --mn-terra:      #C26238;   /* Logo-house terracotta: rules + numerals' underline only, never text */
    --mn-footer:     #1C1F1A;   /* Ink footer */
    --mn-on-footer:  #E9E6DD;   /* Footer text (14.6:1) */
    --mn-on-footer-muted: #B9B5AA; /* 8.6:1 */
    --mn-shadow:     none;
    --mn-shadow-hover: none;

    /* --- Type --- */
    --mn-display: 'Noto Serif', Georgia, 'Times New Roman', serif;
    --mn-text:    'IBM Plex Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Arial, sans-serif;
    --mn-size-body: clamp(1.0625rem, 1.02rem + 0.25vw, 1.1875rem); /* 17–19px */
    --mn-lh-body:   1.7;
    --mn-lh-head:   1.18;
    --mn-title: clamp(2rem, 1.5rem + 1.6vw, 2.75rem);   /* article H1, caps at 44px */
    --mn-h2:    clamp(1.5rem, 1.3rem + 0.7vw, 1.9rem);
    --mn-h3:    clamp(1.125rem, 1.06rem + 0.3vw, 1.3rem);

    /* --- Shape & metrics --- */
    --mn-radius:    4px;
    --mn-radius-sm: 2px;
    --mn-page-max:  1320px;
    --mn-sidebar:   360px;   /* 320 content + 40 rule gutter: a 300px unit fits */
    --mn-side-gap:  2.5rem;
    --mn-gutter:    clamp(1rem, 3vw, 2rem);
    --mn-tap:       44px;

    /* --- Bridge to main.css --- */
    --font-size-body-min: 1.0625rem;
    --font-size-body-max: 1.1875rem;
    --font-size-body-fluid: calc(1.02rem + 0.25vw);
    --font-size-h1-min: 1.95rem;
    --font-size-h1-max: 2.75rem;
    --font-size-h1-fluid: calc(1.45rem + 1.6vw);
    --font-size-h2-min: 1.5rem;
    --font-size-h2-max: 1.9rem;
    --font-size-h2-fluid: calc(1.28rem + 0.7vw);
    --font-size-h3-min: 1.2rem;
    --font-size-h3-max: 1.4rem;
    --font-size-h3-fluid: calc(1.08rem + 0.4vw);
    --font-size-h4-min: 1.125rem;
    --font-size-h4-max: 1.25rem;
    --font-size-h4-fluid: calc(1.04rem + 0.3vw);
    --font-size-h5-min: 1.0625rem;
    --font-size-h5-max: 1.125rem;
    --font-size-h5-fluid: calc(1rem + 0.2vw);
    --font-size-h6-min: 1rem;
    --font-size-h6-max: 1.0625rem;
    --font-size-h6-fluid: calc(0.96rem + 0.12vw);
    --color-primary:        var(--mn-blue);
    --color-primary-dark:   var(--mn-blue-dark);
    --color-primary-light:  var(--mn-blue);
    --color-secondary:      var(--mn-blue-dark);
    --color-accent:         var(--mn-tint);
    --color-text-primary:   var(--mn-ink);
    --color-text-secondary: var(--mn-ink);
    --color-text-muted:     var(--mn-meta);
    --color-text-light:     var(--mn-meta);
    --color-bg-primary:     var(--mn-paper);
    --color-bg-secondary:   var(--mn-tint);
    --color-bg-light:       var(--mn-paper);
    --color-border:         var(--mn-rule);
    --color-border-light:   var(--mn-rule-soft);
    --font-primary:         var(--mn-text);
    --font-heading:         var(--mn-display);
    --font-body:            var(--mn-text);
}
