/* Foldsite Documentation Base Styles */ /* Design system extracted from reference designs */ :root { /* Typography Scale */ --fontSize-default: 14.5px; --fontSize-small: 12px; --fontSize-secondary: 13.5px; --fontSize-header: 17px; --fontSize-large: 22px; --lineHeight-default: 1.65; /* Color Swatches - Primary opacity-based system */ --swatch-1: rgba(0, 0, 0, 0.85); --swatch-2: rgba(0, 0, 0, 0.75); --swatch-3: rgba(0, 0, 0, 0.6); --swatch-4: rgba(0, 0, 0, 0.4); --swatch-5: rgba(0, 0, 0, 0.25); --swatch-6: rgba(0, 0, 0, 0.15); /* Base Colors */ --color-default: rgba(0, 0, 0, 0.75); --color-default-secondary: rgba(0, 0, 0, 0.4); --background-1: #FAF9F6; --background-2: #ffffff; --background-3: #fcfcfc; --background-force-dark: #111111; /* Spacing System - Consistent scale */ --spacing-1: 15px; --spacing-half: calc(15px * 0.5); --spacing-2: calc(15px * 2); --spacing-3: calc(15px * 3); --spacing-4: calc(15px * 4); /* Exponential spacing for larger gaps */ --spacing-exp-1: 5px; --spacing-exp-half: calc(5px * 0.5); --spacing-exp-2: calc(5px * 2); --spacing-exp-3: calc(5px * 3); --spacing-exp-4: calc(5px * 5); --spacing-exp-5: calc(5px * 8); --spacing-exp-6: calc(5px * 13); --spacing-exp-7: calc(5px * 21); --spacing-exp-8: calc(5px * 34); /* Typography */ --fontFamily-default: 'Lekton', monospace; --fontFamily-mono: "Lekton", monospace; --fontFamily-display: 'Lekton', monospace; --fontFamily-serif: 'Lekton', monospace; /* UI Elements */ --border-radius-small: 5px; --opacity-downstate-default: 0.7; --ui-border: rgba(0, 0, 0, 0.14); } /* Reset */ *, *::before, *::after { box-sizing: border-box; } .doto-500 { font-family: "Doto", sans-serif; font-optical-sizing: auto; font-weight: 500; font-style: normal; font-variation-settings: "ROND" 0; } .lekton-regular { font-family: "Lekton", monospace; font-weight: 400; font-style: normal; } .lekton-bold { font-family: "Lekton", monospace; font-weight: 700; font-style: normal; } .lekton-regular-italic { font-family: "Lekton", monospace; font-weight: 400; font-style: italic; } html { overflow-anchor: none; text-size-adjust: 100%; } body { margin: 0; padding: 0; font-family: var(--fontFamily-default); font-size: var(--fontSize-default); line-height: var(--lineHeight-default); color: var(--color-default); background-color: var(--background-1); text-rendering: optimizelegibility; -webkit-font-smoothing: antialiased; height: 100vh; overflow: hidden; } /* Typography */ h1, h2, h3, h4, h5, h6 { margin: 0; font-weight: 500; line-height: 1.2; color: var(--swatch-1); font-family: var(--fontFamily-display); } h1 { font-size: 3.8rem; letter-spacing: -0.02em; font-weight: 420; line-height: 1; } h2 { font-size: 2.4rem; letter-spacing: -0.01em; } h3 { font-size: 1.8rem; } h4 { font-size: 1.3rem; } p { margin: 0 0 1em 0; } a { color: var(--swatch-1); text-decoration: underline; text-decoration-color: var(--swatch-5); transition: text-decoration-color 0.2s; } a:hover { text-decoration-color: var(--swatch-1); } /* Code */ code { font-family: 'Menlo', 'Monaco', var(--fontFamily-mono); font-size: 0.9em; background: var(--background-3); padding: 0.2em 0.4em; border-radius: 3px; } pre { background: var(--background-3); border-radius: var(--border-radius-small); overflow-x: auto; line-height: 1.5; } pre code { background: none; padding: 0; } /* Horizontal Rules */ hr { border: 0; height: 1px; background: var(--ui-border); margin: var(--spacing-exp-4) 0; } /* Lists */ ul, ol { margin: 0 0 1em 0; padding-left: 2em; } li { margin: 0.5em 0; } /* Images */ img { max-width: 100%; height: auto; } /* Blockquotes */ blockquote { margin: var(--spacing-2) 0; padding-left: var(--spacing-2); border-left: 3px solid var(--swatch-5); color: var(--swatch-3); font-style: italic; } /* Tables */ table { border-collapse: collapse; width: 100%; margin: var(--spacing-2) 0; } th, td { padding: var(--spacing-half) var(--spacing-1); text-align: left; border-bottom: 1px solid var(--ui-border); } th { font-weight: 600; color: var(--swatch-1); } /* Utilities */ .mono { font-family: var(--fontFamily-mono); font-size: 0.95rem; } .secondary { color: var(--color-default-secondary); } .small { font-size: var(--fontSize-small); } .text-center { text-align: center; } /* Column System - Mimics reference design */ .column-set { display: grid; gap: var(--spacing-2); margin: var(--spacing-2) 0; } .column-set[data-columns="2"] { grid-template-columns: repeat(2, 1fr); } .column-set[data-columns="3"] { grid-template-columns: repeat(3, 1fr); } @media (max-width: 768px) { .column-set { grid-template-columns: 1fr; } }